/* A short, skippable startup sequence before the desktop. */
.boot-screen{display:none}
.is-booting .boot-screen{position:fixed;inset:0;z-index:30000;display:flex;flex-direction:column;justify-content:space-between;overflow:auto;background:#c6d7ed;color:var(--navy);font-family:var(--mono);background-image:radial-gradient(ellipse at 50% 42%,#f9fbff 0%,#e8eff9 35%,#b5ccec 78%,#9db9e3 100%)}
.is-booting #desktop-shell{visibility:hidden}
.boot-screen::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.18;background-image:radial-gradient(#284b8b .65px,transparent .65px);background-size:3px 3px}
.boot-top,.boot-footer,.boot-center{position:relative}
.boot-top{display:flex;justify-content:space-between;gap:20px;padding:26px 32px;font-size:11px;letter-spacing:.15em}
.boot-top span:first-child::before{content:'■';margin-right:10px;color:var(--blue)}
.boot-center{width:min(760px,90vw);margin:auto;display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 0 38px}
.boot-edition{font:18px/1.2 var(--pixel);letter-spacing:.2em;text-transform:uppercase}
.boot-logo{display:block;width:100%;height:auto;object-fit:contain;margin:-28px 0 -35px}
.boot-tagline{font:clamp(23px,3.2vw,30px)/1.2 var(--pixel);letter-spacing:.035em}
.boot-loader{width:min(320px,82vw);margin-top:46px}
.boot-track{height:23px;border:1px solid #65768d;box-shadow:inset 2px 2px #8b9ab0,1px 1px #fff;padding:4px;background:#e9eef5}
.boot-fill{height:100%;width:4%;max-width:100%;background:repeating-linear-gradient(90deg,var(--blue) 0,var(--blue) 10px,transparent 10px,transparent 13px);transition:width .35s steps(6,end)}
.boot-status{margin-top:14px;min-height:36px;font:12px/1.5 var(--mono)}
.boot-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 32px;background:var(--navy);color:#e0eaff;border-top:2px solid #fff;font:11px/1.5 var(--mono)}
.boot-footer p{letter-spacing:.035em}
.boot-skip{min-height:40px;padding:8px 14px;background:transparent;color:inherit;border:1px solid #8ea4d5;font:12px/1.3 var(--mono);cursor:pointer;white-space:nowrap}
.boot-skip:hover{background:var(--blue-surface)}.boot-skip:focus-visible{outline:1px dotted white;outline-offset:3px}
.boot-skip kbd{font:inherit;opacity:.7;margin-left:12px}
@media(max-width:600px){.boot-top{padding:20px 18px;font-size:9px;letter-spacing:.08em}.boot-center{padding-bottom:30px}.boot-edition{font-size:15px}.boot-logo{margin:-8px 0 -10px}.boot-tagline{font-size:22px}.boot-loader{margin-top:34px;width:min(280px,80vw)}.boot-footer{padding:13px 18px;flex-direction:column;gap:10px}.boot-footer p{font-size:10px}.boot-skip{min-height:44px}.boot-status{font-size:11px}}
@media(max-height:520px) and (min-width:601px){.boot-top{padding:12px 24px}.boot-center{width:420px;padding:0}.boot-logo{margin:-20px 0 -26px}.boot-loader{margin-top:15px}.boot-status{min-height:22px;margin-top:8px}.boot-footer{padding:8px 24px}}
@media(prefers-reduced-motion:reduce){.boot-fill{transition:none}}
