/**
 * Esteem page progress — local only, no external deps.
 * Thin top bar only; never hides page content (SEO / LCP safe).
 */
.esteem-page-progress {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	z-index: 100000;
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease, visibility .2s ease;
}

.esteem-page-progress.is-active {
	opacity: 1;
	visibility: visible;
}

.esteem-page-progress.is-done {
	opacity: 0;
	visibility: hidden;
	transition: opacity .35s ease .15s, visibility .35s ease .15s;
}

.esteem-page-progress__bar {
	height: 100%;
	width: 0;
	background: linear-gradient(90deg, #0e76bb 0%, #39a0e0 55%, #0e76bb 100%);
	background-size: 200% 100%;
	box-shadow: 0 0 6px rgba(14, 118, 187, 0.45);
	transition: width .25s ease-out;
	will-change: width;
}

.esteem-page-progress.is-active .esteem-page-progress__bar {
	animation: esteem-progress-shimmer 1.1s linear infinite;
}

@keyframes esteem-progress-shimmer {
	0% { background-position: 100% 0; }
	100% { background-position: -100% 0; }
}

@media (prefers-reduced-motion: reduce) {
	.esteem-page-progress,
	.esteem-page-progress.is-active .esteem-page-progress__bar {
		animation: none !important;
	}
	.esteem-page-progress {
		display: none !important;
	}
}

/* Legacy full-page overlay — keep disabled if stale markup reappears */
.preloader {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}
