#site-loader {
    position: fixed; inset: 0; z-index: 3000;
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 28px;
    background: radial-gradient(ellipse at 50% 45%, #0b1626 0%, #05080f 62%);
    color: #e0f2fe; font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
    transition: opacity .7s cubic-bezier(.22,1,.36,1), visibility .7s, transform .9s cubic-bezier(.22,1,.36,1);
    animation: sl-failsafe .6s ease 10s forwards;
}
#site-loader.is-done { opacity: 0; visibility: hidden; transform: scale(1.08); pointer-events: none; }
#site-loader.is-done .sl-mark { transform: scale(.6); opacity: 0; }
.sl-mark { width: 168px; height: 168px; overflow: visible; transition: transform .7s cubic-bezier(.22,1,.36,1), opacity .5s ease; filter: drop-shadow(0 0 18px rgba(56,189,248,.35)); }
.sl-comet { filter: drop-shadow(0 0 4px #fbbf24); }
.sl-brand { display: flex; gap: .32em; font-size: 13px; font-weight: 700; letter-spacing: .42em; padding-left: .42em; }
.sl-brand span { opacity: 0; transform: translateY(10px); animation: sl-letter .6s cubic-bezier(.22,1,.36,1) forwards; }
.sl-brand span:nth-child(1)  { animation-delay: .05s; }
.sl-brand span:nth-child(2)  { animation-delay: .10s; }
.sl-brand span:nth-child(3)  { animation-delay: .15s; }
.sl-brand span:nth-child(4)  { animation-delay: .20s; }
.sl-brand span:nth-child(5)  { animation-delay: .25s; }
.sl-brand span:nth-child(6)  { animation-delay: .30s; }
.sl-brand span:nth-child(7)  { animation-delay: .35s; }
.sl-brand span:nth-child(8)  { animation-delay: .40s; }
.sl-brand span:nth-child(9)  { animation-delay: .45s; }
.sl-brand span:nth-child(11) { animation-delay: .55s; }
.sl-brand span:nth-child(12) { animation-delay: .60s; }
.sl-brand span:nth-child(13) { animation-delay: .65s; }
.sl-brand span:nth-child(14) { animation-delay: .70s; }
.sl-brand .sl-gap { width: .5em; }
.sl-bar { position: relative; width: 180px; height: 2px; border-radius: 2px; background: rgba(56,189,248,.14); overflow: hidden; }
.sl-bar span { position: absolute; inset: 0; transform-origin: left; transform: scaleX(var(--sl-progress, .04)); background: linear-gradient(90deg, #38bdf8, #a5f3fc); box-shadow: 0 0 12px #38bdf8; transition: transform .35s ease; }
.sl-bar::after { content: ""; position: absolute; inset: 0; width: 40%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent); animation: sl-sheen 1.4s ease-in-out infinite; }
.sl-pct { font-size: 11px; letter-spacing: .2em; color: rgba(165,243,252,.6); font-variant-numeric: tabular-nums; margin-top: -16px; }
@keyframes sl-letter { to { opacity: 1; transform: none; } }
@keyframes sl-sheen { from { transform: translateX(-100%); } to { transform: translateX(260%); } }
@keyframes sl-failsafe { to { opacity: 0; visibility: hidden; pointer-events: none; } }
@media (prefers-reduced-motion: reduce) { .sl-brand span { animation-duration: .01s; } .sl-bar::after { animation: none; } }
