/**
 * Strategic Lens Cursor — optional desktop-only enhancement.
 *
 * Scoped to the runtime class added by 54__strategic-lens-cursor.js after
 * client-side safety checks pass. The native cursor stays available so text
 * selection, forms, iframes, and keyboard focus remain safe.
 */

.mht-strategic-cursor {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2147483000;
	width: 34px;
	height: 34px;
	margin: -17px 0 0 -17px;
	pointer-events: none;
	opacity: 0;
	transform: translate3d(-120px, -120px, 0);
	transition: opacity 160ms ease;
	contain: layout style size;
	will-change: transform;
}

html.mht-strategic-cursor-enabled .mht-strategic-cursor {
	opacity: .82;
}

html.mht-strategic-cursor-hidden .mht-strategic-cursor,
html.mht-strategic-cursor-media .mht-strategic-cursor {
	opacity: 0;
}

.mht-strategic-cursor__ring,
.mht-strategic-cursor__dot,
.mht-strategic-cursor__halo {
	position: absolute;
	inset: 0;
	border-radius: 999px;
	transition:
		transform 180ms ease,
		opacity 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease,
		background 180ms ease;
}

.mht-strategic-cursor__halo {
	inset: -12px;
	opacity: .26;
	background:
		radial-gradient(circle at 50% 50%, rgba(183, 140, 255, .20), rgba(197, 166, 211, .08) 42%, rgba(183, 140, 255, 0) 68%);
	filter: blur(10px);
}

.mht-strategic-cursor__ring {
	border: 1px solid rgba(197, 166, 211, .62);
	background:
		radial-gradient(circle at 50% 50%, rgba(246, 242, 247, .10), rgba(183, 140, 255, .07) 44%, rgba(13, 13, 13, 0) 70%);
	box-shadow:
		0 0 0 1px rgba(44, 37, 50, .18),
		0 10px 28px rgba(183, 140, 255, .14);
}

.mht-strategic-cursor__dot {
	inset: 14px;
	opacity: .95;
	background: #e6d8ff;
	box-shadow: 0 0 14px rgba(183, 140, 255, .46);
}

html.mht-strategic-cursor-interactive .mht-strategic-cursor__ring {
	transform: scale(1.34);
	border-color: rgba(183, 140, 255, .82);
	box-shadow:
		0 0 0 1px rgba(183, 140, 255, .16),
		0 14px 34px rgba(183, 140, 255, .20);
}

html.mht-strategic-cursor-interactive .mht-strategic-cursor__halo {
	transform: scale(1.12);
	opacity: .38;
}

html.mht-strategic-cursor-interactive .mht-strategic-cursor__dot {
	transform: scale(.72);
	opacity: .82;
}

html.mht-strategic-cursor-text .mht-strategic-cursor__ring {
	transform: scale(.56);
	opacity: .24;
	border-color: rgba(197, 166, 211, .36);
	box-shadow: none;
}

html.mht-strategic-cursor-text .mht-strategic-cursor__halo {
	opacity: 0;
}

html.mht-strategic-cursor-text .mht-strategic-cursor__dot {
	inset: 15px;
	opacity: .52;
	box-shadow: none;
}

html[data-mht-theme-effective="light"].mht-strategic-cursor-enabled .mht-strategic-cursor__halo,
html[data-mht-theme="light"].mht-strategic-cursor-enabled .mht-strategic-cursor__halo {
	opacity: .20;
	background:
		radial-gradient(circle at 50% 50%, rgba(183, 140, 255, .18), rgba(142, 99, 163, .07) 42%, rgba(183, 140, 255, 0) 70%);
}

html[data-mht-theme-effective="light"].mht-strategic-cursor-enabled .mht-strategic-cursor__ring,
html[data-mht-theme="light"].mht-strategic-cursor-enabled .mht-strategic-cursor__ring {
	border-color: rgba(142, 99, 163, .58);
	background:
		radial-gradient(circle at 50% 50%, rgba(246, 242, 247, .32), rgba(230, 216, 255, .22) 42%, rgba(246, 242, 247, 0) 72%);
	box-shadow:
		0 0 0 1px rgba(76, 52, 93, .08),
		0 10px 26px rgba(76, 52, 93, .12);
}

html[data-mht-theme-effective="light"].mht-strategic-cursor-enabled .mht-strategic-cursor__dot,
html[data-mht-theme="light"].mht-strategic-cursor-enabled .mht-strategic-cursor__dot {
	background: #4c345d;
	box-shadow: 0 0 12px rgba(183, 140, 255, .26);
}

@media (prefers-reduced-motion: reduce), (hover: none), (pointer: coarse) {
	.mht-strategic-cursor {
		display: none !important;
	}
}
