.ol-textanimate-char {
	display: inline-block;
	white-space: pre;
}

.ol-textanimate-fade .ol-textanimate-char {
	animation: ol-textanimate-fade 500ms ease both;
	animation-delay: var(--ol-textanimate-delay);
}

.ol-textanimate-slide-up .ol-textanimate-char {
	animation: ol-textanimate-slide-up 500ms ease both;
	animation-delay: var(--ol-textanimate-delay);
}

.ol-textanimate-scale .ol-textanimate-char {
	animation: ol-textanimate-scale 500ms ease both;
	animation-delay: var(--ol-textanimate-delay);
}

.ol-textanimate-typewriter .ol-textanimate-char {
	opacity: 0;
}

.ol-textanimate-typewriter .ol-textanimate-visible {
	opacity: 1;
}

@keyframes ol-textanimate-fade {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes ol-textanimate-slide-up {
	from {
		opacity: 0;
		transform: translateY(0.65em);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes ol-textanimate-scale {
	from {
		opacity: 0;
		transform: scale(0.5);
	}

	to {
		opacity: 1;
		transform: scale(1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.ol-textanimate-char {
		animation: none !important;
	}
}
