html.booting{overflow:hidden}
html.booting body > :not(#bootScreen){visibility:hidden!important;opacity:0!important;pointer-events:none!important}
#bootScreen[hidden],#bootActions[hidden]{display:none}
#bootScreen{display:grid;position:fixed;inset:0;z-index:2147483646;place-items:center;background:#060c20;color:#edf6f5;overflow:auto;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;padding:24px;box-sizing:border-box}
.boot-grid{position:absolute;inset:0;pointer-events:none;background:none;background-size:auto,52px 52px,52px 52px}
.boot-card{position:relative;text-align:center;width:min(100%,480px)}
.boot-orbit{width:clamp(140px,35vw,188px);aspect-ratio:1;margin:0 auto 36px;display:grid;place-items:center;position:relative;border-radius:50%;background:#fff;box-shadow:0 12px 65px #001e7940}
.boot-orbit:after{content:'';position:absolute;inset:-9px;border:1px solid transparent;border-top-color:#edc46a;border-bottom-color:#245ad3;border-radius:50%;animation:boot-spin 7s linear infinite;pointer-events:none}
.boot-logo{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:50%}
.boot-eyebrow{font-size:9px;letter-spacing:.3em;color:#a6b6d5;margin-bottom:18px}
#bootBrand{font-family:ui-monospace,monospace;font-size:clamp(26px,7vw,44px);font-weight:500;letter-spacing:.14em;margin:0}
#bootBrand span{display:block;font-size:10px;letter-spacing:.6em;color:#e7bf6d;margin:13px 0 36px}
.boot-credit{font-size:12px;color:#d7deee;line-height:1.7}
.boot-track{height:2px;background:#223457;max-width:240px;margin:35px auto 17px;overflow:hidden}
#bootBar{display:block;width:4%;height:100%;background:#eac16a;transition:width .3s}
#bootStatus{font-size:10px;color:#a2b3d2;line-height:1.8;min-height:36px}
#bootActions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:20px}
#bootActions button{font:11px/1.5 ui-monospace,monospace;border:1px solid #d3ac6080;background:#111f3c;color:#f5ddb0;padding:12px 16px;border-radius:8px;cursor:pointer}
#bootActions button:focus-visible{outline:2px solid #fff;outline-offset:4px}
@keyframes boot-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.boot-orbit:after{animation:none}#bootBar{transition:none}}

/* A fully opaque boot surface prevents independently visible portrait layers
   from painting through while assets settle. */
#bootScreen{opacity:1;isolation:isolate;transition:opacity .28s ease}
html.boot-revealing #bootScreen{opacity:0;pointer-events:none}
html.boot-departing{overflow:hidden}
html.boot-departing #bootScreen{opacity:1;pointer-events:auto}
@media(prefers-reduced-motion:reduce){#bootScreen{transition:none}}
