.lt-atomic-circular-text {
	position: relative;
	box-sizing: border-box;
	max-width: 100%;
	aspect-ratio: 1 / 1;
	isolation: isolate;
	color: inherit;
	text-decoration: none;
	vertical-align: middle;
}

.lt-atomic-circular-text__outer,
.lt-atomic-circular-text__ring,
.lt-atomic-circular-text__inner {
	position: absolute;
	inset: 0;
	box-sizing: border-box;
	pointer-events: none;
}

.lt-atomic-circular-text__outer {
	border: var(--lt-ct-outer-border, 1px) solid currentColor;
	border-radius: 50%;
}

.lt-atomic-circular-text__ring {
	display: block;
	width: 100%;
	height: 100%;
	overflow: visible;
	transform-origin: 50% 50%;
}

.lt-atomic-circular-text__text,
.lt-atomic-circular-text__metrics {
	font-family: inherit;
	font-weight: inherit;
	font-style: inherit;
	font-variant: inherit;
	font-stretch: inherit;
	letter-spacing: inherit;
	fill: currentColor;
	text-rendering: geometricPrecision;
}

.lt-atomic-circular-text__text {
	text-transform: inherit;
}

.lt-atomic-circular-text__metrics {
	opacity: 0;
	pointer-events: none;
	letter-spacing: 0;
	text-transform: none;
}

.lt-atomic-circular-text__inner {
	inset: 50% auto auto 50%;
	width: var(--lt-ct-inner-size, 62%);
	height: var(--lt-ct-inner-size, 62%);
	transform: translate(-50%, -50%);
	border: var(--lt-ct-inner-border, 1px) solid currentColor;
	border-radius: 50%;
}

.lt-atomic-circular-text__icon {
	position: absolute;
	top: 50%;
	left: 50%;
	width: var(--lt-ct-icon-size, 18%);
	height: var(--lt-ct-icon-size, 18%);
	transform: translate(-50%, -50%);
	margin: 0;
	padding: 0;
	color: currentColor;
	line-height: 0;
}

.lt-atomic-circular-text__icon-artwork {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	margin: 0;
	padding: 0;
	line-height: 0;
	transform: translate(
		var(--lt-ct-icon-visual-offset-x, 0px),
		var(--lt-ct-icon-visual-offset-y, 0px)
	);
}

.lt-atomic-circular-text__icon-artwork > * {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	line-height: 0;
}

.lt-atomic-circular-text__icon-artwork > i {
	font-style: normal;
}

.lt-atomic-circular-text__icon-artwork svg,
.lt-atomic-circular-text__icon-artwork img,
.lt-atomic-circular-text__icon-artwork .e-font-icon-svg {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	object-fit: contain;
	vertical-align: middle;
}

.lt-atomic-circular-text[data-rotate="yes"] .lt-atomic-circular-text__ring {
	animation: lt-atomic-circular-text-spin var(--lt-ct-duration, 18s) linear infinite;
}

.lt-atomic-circular-text[data-rotation-direction="counterclockwise"] .lt-atomic-circular-text__ring {
	animation-direction: reverse;
}

.lt-atomic-circular-text[data-pause-hover="yes"]:hover .lt-atomic-circular-text__ring {
	animation-play-state: paused;
}

.lt-atomic-circular-text:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

@keyframes lt-atomic-circular-text-spin {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
	.lt-atomic-circular-text[data-rotate="yes"] .lt-atomic-circular-text__ring {
		animation: none;
	}
}
