/* Critical first-paint shell. The approved mascot and one rotating stroke only. */
html.is-loading,html.is-loading body{margin:0;overflow:hidden;background:#050b12;color:#f3f0ff;color-scheme:dark}
.is-loading .landing{position:fixed!important;inset:0;max-width:100vw;max-height:100dvh;overflow:hidden;visibility:hidden;opacity:0!important;pointer-events:none}
.is-loading .desktop-handoff{visibility:hidden!important}
.splash{position:fixed;z-index:100;inset:0;display:grid;place-items:center;box-sizing:border-box;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));background:radial-gradient(circle at center,#111722 0,transparent 240px),#050b12;text-align:center;overflow:auto}
.startup-content{position:relative}
.startup-orbit{position:relative;display:grid;place-items:center;width:144px;height:144px}
.startup-ring-art{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible}
.startup-track{stroke:#e8c581;stroke-opacity:.12;stroke-width:1}
.startup-ring{stroke:#edca87;stroke-width:2;transform-origin:center;animation:startup-orbit 1.65s linear infinite}
.startup-mascot{width:96px;aspect-ratio:204/190;opacity:0}
.startup-mascot img{display:block;width:100%;height:100%;mask-image:radial-gradient(ellipse,#000 55%,transparent 76%)}
.splash[data-mascot-ready="true"] .startup-mascot{opacity:1}
/* Keep the normal loading announcement accessible, without visible copy. */
.startup-copy{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.startup-feedback{position:absolute;top:calc(100% + 24px);left:50%;width:min(280px,calc(100vw - 48px));transform:translateX(-50%);font:500 14px/1.5 Nunito,Arial,sans-serif;color:#c9c2b7}
[data-startup="failed"] .startup-copy{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip-path:none;white-space:normal}
[data-startup="failed"] .startup-ring{animation-play-state:paused;opacity:.45}
.startup-retry{margin:16px 0 0;padding:10px 18px;border:1px solid #e8bd5940;border-radius:999px;background:#10131d;color:#f2d28b;font:inherit;cursor:pointer}
.startup-retry[hidden]{display:none}.startup-retry:focus-visible{outline:2px solid #f4d181;outline-offset:4px}
.splash[data-paused="true"] *{animation-play-state:paused!important}
@keyframes startup-orbit{from{transform:rotate(-90deg)}to{transform:rotate(270deg)}}
@media(prefers-reduced-motion:reduce){.splash *{animation:none!important;transition:none!important}}
/* Visible only with scripting disabled; the normal loading scene is untouched. */
.startup-nojs{max-width:360px;font:16px/1.6 Arial,sans-serif}.startup-nojs h1{font-size:23px;color:#f5e7c2}.startup-nojs a{color:#f5d48a}.splash:has(.startup-nojs) .startup-orbit{display:none}.splash:has(.startup-nojs) .startup-feedback{position:static;width:auto;transform:none}.splash:has(.startup-nojs) .startup-copy{display:none}
