@font-face{font-family:Outfit;src:url('/space-assets/outfit-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--ink:#060b13;--white:#f2f3ee;--muted:#bbc5cd;--edge:rgba(220,235,239,.22);--gutter:clamp(24px,4.7vw,80px);--ship-width:min(66vw,1120px)}
*{box-sizing:border-box}
html,body{margin:0;background:var(--ink);width:100%;min-height:100%;color:var(--white)}
body{font-family:Outfit,Arial,sans-serif;overflow:hidden;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit;cursor:pointer}
button:focus-visible,a:focus-visible{outline:2px solid #f2f3ee;outline-offset:6px}
button:disabled{cursor:default;opacity:.5}
.voyage{position:fixed;inset:0;isolation:isolate;min-height:100dvh;height:100dvh;overflow:clip;background:var(--ink)}
/* Layer order: environment 0, ship 1, foreground dust 2, vignette 3, controls 4/5. */
.sky{position:absolute;inset:-4%;background:url('/space-assets/nebula.webp') center/cover no-repeat;opacity:.75;will-change:transform}
.planet-fallback{position:absolute;width:45%;height:auto;top:1%;left:54%;opacity:.85;pointer-events:none}
.canvas-ready .planet-fallback{display:none}
canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#universe{z-index:0}
#stardust{z-index:2}
.ship-frame{position:absolute;z-index:1;left:55%;top:47%;width:var(--ship-width);aspect-ratio:3/2;transform:translate(-50%,-50%);pointer-events:none;will-change:transform}
.ship-frame img{display:block;width:100%;height:auto;filter:drop-shadow(0 20px 25px rgba(2,7,12,.3))}
.vignette{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(0deg,rgba(4,8,15,.91),transparent 36%),linear-gradient(180deg,rgba(4,8,15,.45),transparent 22%),radial-gradient(ellipse at 53% 43%,transparent 42%,rgba(2,5,11,.33) 100%)}
.masthead{position:absolute;z-index:4;top:max(34px,env(safe-area-inset-top));left:var(--gutter);display:flex;align-items:center;gap:30px}
.wordmark{font-size:31px;font-weight:500;letter-spacing:-1.8px;text-decoration:none;color:var(--white);line-height:1}
.wordmark span{color:#98bec8}
.masthead-caption{margin:2px 0 0;font-size:12px;letter-spacing:.035em;color:var(--muted)}
.view-toggle{position:absolute;z-index:5;right:var(--gutter);top:max(30px,env(safe-area-inset-top));padding:10px 0 10px 15px;border:0;background:transparent;color:var(--muted);font-size:12px;transition:color .2s ease}
.view-toggle span{margin-left:8px;font-size:17px}
.view-toggle:hover{color:var(--white)}
.bottom-panel{position:absolute;z-index:4;left:var(--gutter);right:var(--gutter);bottom:max(48px,calc(env(safe-area-inset-bottom) + 24px));display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.introduction h1{font-size:clamp(36px,4.7vw,74px);font-weight:350;letter-spacing:-.055em;line-height:1.08;margin:0 0 16px;white-space:nowrap}
.introduction p{margin:0;font-size:15px;font-weight:350;letter-spacing:.025em;color:var(--muted)}
.flight-deck{display:flex;align-items:flex-end;flex-direction:column;gap:15px;padding-bottom:1px}
.flight-status{font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin:0;color:#cad4da}
.controls{display:flex;gap:8px;align-items:center}
.control-button,.warp-button{border:1px solid var(--edge);background:rgba(9,18,27,.67);border-radius:6px;min-height:47px;padding:0 17px;font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap;transition:background .2s,border-color .2s,transform .2s}
.control-button:hover{background:rgba(35,51,61,.9);border-color:rgba(235,243,245,.55);transform:translateY(-2px)}
.control-button:active,.warp-button:active{transform:translateY(0)}
.warp-button{background:var(--white);color:#132029;border-color:var(--white);padding:0 19px;gap:20px;min-width:151px;font-weight:500}
.warp-button:hover:not(:disabled){background:#d5e4e8;border-color:#d5e4e8;transform:translateY(-2px)}
.warp-button[aria-pressed=true]{background:#a7d4df;border-color:#a7d4df}
.warp-arrow{font-size:20px;font-weight:300}
.sound-bars{display:flex;height:13px;align-items:center;gap:2px}
.sound-bars i{display:block;width:2px;height:4px;border-radius:1px;background:currentColor}
.sound-bars i:nth-child(2){height:10px}.sound-bars i:nth-child(3){height:13px}.sound-bars i:nth-child(4){height:7px}
#sound-toggle[aria-pressed=false] .sound-bars{opacity:.55}
.interaction-hint{font-size:11px;color:#a7b4bf;margin:0;letter-spacing:.025em}
.interaction-hint span{padding:0 8px;color:#647581}
kbd{font:inherit;font-size:10px;border:1px solid #52616b;padding:1px 4px;border-radius:3px;color:#d2dce1}
.interface{transition:opacity .45s ease,transform .45s ease}
.view-only .interface{opacity:0;pointer-events:none;transform:translateY(10px)}
.view-only .view-toggle{opacity:.38}.view-only .view-toggle:hover,.view-only .view-toggle:focus-visible{opacity:1}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.no-script{position:absolute;z-index:5;bottom:8px;left:var(--gutter);font-size:12px;color:var(--muted)}
@media(min-width:1700px){.ship-frame{left:56%}.introduction h1{font-size:78px}}
@media(max-width:1050px){:root{--gutter:32px;--ship-width:78vw}.ship-frame{left:53%;top:43%}.introduction h1{font-size:44px}.bottom-panel{gap:20px}.controls{gap:6px}.control-button{padding:0 12px}.warp-button{min-width:134px;padding:0 14px;gap:12px}.masthead-caption{display:none}}
@media(max-width:700px){:root{--gutter:24px;--ship-width:98vw}.masthead{top:max(27px,env(safe-area-inset-top))}.wordmark{font-size:29px}.view-toggle{top:max(21px,env(safe-area-inset-top))}.ship-frame{top:40%;left:51%}.planet-fallback{width:85%;left:43%;top:9%}.bottom-panel{bottom:max(27px,calc(env(safe-area-inset-bottom) + 18px));flex-direction:column;align-items:stretch;gap:28px}.introduction h1{font-size:45px;letter-spacing:-.05em;margin-bottom:10px}.introduction p{font-size:13px}.flight-deck{align-items:stretch;gap:12px}.flight-status{font-size:10px;letter-spacing:.09em}.controls{display:grid;grid-template-columns:1fr .75fr 1.4fr;gap:7px}.control-button,.warp-button{min-width:0;padding:0 11px;height:46px;font-size:11px}.warp-button{gap:12px}.interaction-hint{display:none}}
@media(max-width:380px){.introduction h1{font-size:38px}.sound-bars{display:none}.controls{grid-template-columns:1fr .8fr 1.4fr}.bottom-panel{gap:22px}}
@media(max-height:550px) and (min-width:701px){:root{--gutter:28px;--ship-width:58vw}.masthead{top:23px}.view-toggle{top:15px}.ship-frame{top:48%;left:53%}.bottom-panel{bottom:22px}.introduction h1{font-size:32px;margin-bottom:8px}.introduction p{font-size:12px}.flight-deck{gap:9px}.interaction-hint{display:none}.control-button,.warp-button{min-height:40px}.flight-status{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.interface,.control-button,.warp-button,.view-toggle{transition:none}.control-button:hover,.warp-button:hover:not(:disabled){transform:none}}
