.text-ticker-wrap {
	width: 100%;
	overflow: hidden;
	position: relative;
	box-sizing: border-box;
}

.text-ticker-wrap * {
	box-sizing: border-box;
}

.text-ticker-horizontal {
	-webkit-mask-image: linear-gradient(to right, transparent 0, #000 5%, #000 95%, transparent 100%);
	mask-image: linear-gradient(to right, transparent 0, #000 5%, #000 95%, transparent 100%);
}

.text-ticker-vertical {
	-webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%);
	mask-image: linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%);
}

.text-ticker-track {
	display: flex;
	align-items: center;
	gap: var(--tt-gap, 60px);
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	animation-duration: var(--tt-speed, 30s);
}

.text-ticker-horizontal .text-ticker-track {
	flex-direction: row;
	width: max-content;
	animation-name: text-ticker-scroll-x;
}

.text-ticker-vertical .text-ticker-track {
	flex-direction: column;
	height: max-content;
	animation-name: text-ticker-scroll-y;
}

.text-ticker-pause-hover:hover .text-ticker-track {
	animation-play-state: paused;
}

.text-ticker-item {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.text-ticker-horizontal .text-ticker-item {
	flex-basis: var(--tt-item-size, auto);
	width: var(--tt-item-size, auto);
}

.text-ticker-vertical .text-ticker-item {
	flex-basis: var(--tt-item-size, auto);
	width: 100%;
}

.text-ticker-text {
	display: block;
	width: 100%;
	color: var(--tt-text-color, #333333);
	font-size: var(--tt-text-size, 18px);
	font-weight: var(--tt-text-weight, 600);
	line-height: 1.4;
	text-align: center;
	white-space: normal;
	overflow-wrap: break-word;
	word-break: break-word;
}

a.text-ticker-item .text-ticker-text {
	text-decoration: none;
}

a.text-ticker-item:hover .text-ticker-text {
	text-decoration: underline;
}

/* Divider */
.text-ticker-divider {
	flex: 0 0 auto;
	background: var(--tt-divider-color, #dddddd);
	align-self: stretch;
}

.text-ticker-horizontal .text-ticker-divider {
	width: 1px;
	min-height: 20px;
}

.text-ticker-vertical .text-ticker-divider {
	height: 1px;
	width: 100%;
}

@keyframes text-ticker-scroll-x {
	from { transform: translateX(0); }
	to   { transform: translateX(calc(-50% - (var(--tt-gap, 60px) / 2))); }
}

@keyframes text-ticker-scroll-y {
	from { transform: translateY(0); }
	to   { transform: translateY(calc(-50% - (var(--tt-gap, 60px) / 2))); }
}

@media (prefers-reduced-motion: reduce) {
	.text-ticker-track {
		animation: none;
	}
	.text-ticker-horizontal .text-ticker-track {
		flex-wrap: wrap;
		justify-content: center;
	}
}

/* Admin preview box */
.text-ticker-preview-box {
	border: 1px solid #dcdcde;
	background: #fff;
	padding: 30px 20px;
	margin: 1rem 0 2rem;
	border-radius: 4px;
}
