:root{color-scheme:dark;--ink:#f4f4ff;--muted:#a5afcd;--soft:#697797;--line:#ffffff1b;--glass:#141b37d9;--peach:#ffc6a1;--blue:#a8caff;--mint:#a7ebd8;--font:Inter,'Avenir Next','Segoe UI',Arial,sans-serif;--mono:ui-monospace,Consolas,monospace;font-family:var(--font);background:#040715;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;overflow:hidden}button,a,input,select{font:inherit;touch-action:manipulation}button{color:inherit;border:0;background:none;cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--peach);outline-offset:5px}button{transition:background .2s,transform .2s,border-color .2s}button:hover:not(:disabled){background:#ffffff12}button:active:not(:disabled){transform:scale(.97)}a{color:inherit;text-decoration:none}input,select,button{min-height:44px}[hidden]{display:none!important}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-1.5px}small{font-size:11px}.game,.space-stage{position:fixed;inset:0;width:100%;height:100dvh}.space-stage canvas{display:block;width:100%;height:100%;touch-action:none}.space-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#04071599,transparent 28%,transparent 67%,#040715aa),linear-gradient(90deg,#04071550,transparent 36%,transparent 70%,#04071525)}.hud-header{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:27px clamp(18px,3vw,48px)}.brand{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:3px;line-height:1.5;font-weight:500;min-width:150px}.brand b{font-weight:750;letter-spacing:3.1px}.brand-icon{display:grid;place-items:center;width:44px;height:44px;font-size:44px;color:var(--peach);line-height:1}.chapter-chip{display:flex;align-items:center;gap:13px;padding:10px 19px;background:#151b33b8;border:1px solid var(--line);border-radius:50px;backdrop-filter:blur(15px);font-size:12px;min-width:225px;text-align:left}.chapter-chip svg{color:var(--blue);width:19px}.chapter-chip small{display:block;font:8px var(--mono);letter-spacing:1.4px;color:var(--soft);margin-top:5px}.chip-chevron{margin-left:auto;color:var(--muted)}.hud-actions{display:flex;gap:9px;justify-content:flex-end;min-width:150px}.round{width:43px;height:43px;min-height:43px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:#11162c80;backdrop-filter:blur(12px);color:#c6cce1;font-size:22px;padding:0}.round svg{width:17px;height:17px}.mission-copy{position:absolute;z-index:2;left:clamp(20px,3vw,48px);top:132px;width:min(315px,32vw);pointer-events:none;transition:opacity .5s}.overline{font:10px var(--mono);letter-spacing:2px;color:var(--muted)}.mission-copy .overline{color:var(--peach);letter-spacing:2.6px}.mission-copy .overline>span{color:#6b7897;margin-left:7px}.mission-copy h1{font-size:clamp(28px,3.2vw,48px);line-height:1.08;margin:16px 0 20px;font-weight:550;letter-spacing:-2px;text-wrap:balance}.mission-copy h1>span{color:var(--peach)}.mission-copy p{font-size:12px;color:#c5cce0;line-height:1.5}.cargo-stamp{display:block;font:8px var(--mono);letter-spacing:1.8px;color:#6f7e9e;margin-top:7px}.mission-copy.quiet{opacity:.22}.body-tag{position:absolute;z-index:2;transform:translate(-50%,0);padding:8px 14px;text-align:center;min-height:44px;white-space:nowrap;pointer-events:auto;border-radius:10px;text-shadow:0 2px 8px #000b;background:radial-gradient(ellipse,#060c2199,transparent 80%)}.body-tag:hover{background:#121e3aee}.body-tag>span{display:block;font:7px var(--mono);letter-spacing:1.4px;color:#9faeca;margin-bottom:5px}.body-tag strong{font-size:12px;font-weight:500;letter-spacing:.5px}.destination-tag>span{color:var(--mint)}.destination-tag strong{color:#dbfff3}.body-tag.selected{border:1px solid #c6dbff44;background:#132342aa}.scene-controls{position:absolute;z-index:3;right:31px;top:46%;display:flex;flex-direction:column;gap:7px}.scene-controls .round{width:36px;height:36px;min-height:36px;background:#13192e99;font-size:21px}.orbit-help{position:absolute;z-index:2;left:50%;top:calc(100% - 168px);transform:translateX(-50%);white-space:nowrap;font:8px var(--mono);letter-spacing:1px;color:#7484a6;display:flex;gap:11px;align-items:center}.orbit-help i{display:block;width:3px;height:3px;background:#7e89a7;border-radius:50%}.launch-dock,.flight-dock{position:absolute;z-index:4;bottom:38px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:17px;width:min(470px,calc(100vw - 220px));padding:19px 20px;border:1px solid #ffffff21;border-radius:21px;background:linear-gradient(135deg,#202743dc,#12192ddd);box-shadow:0 15px 60px #0003,inset 0 1px 0 #ffffff08;backdrop-filter:blur(24px)}.gesture-icon{flex:none;display:grid;place-items:center;width:43px;height:43px;background:#c1d4ff14;border-radius:14px;color:var(--blue);font-size:29px}.launch-instruction{min-width:0;flex:1}.launch-instruction strong{font-weight:500;font-size:13px;letter-spacing:-.15px}.launch-instruction p{color:var(--muted);font-size:10px;line-height:1.6;margin-top:6px}.launch-button{flex:none;width:43px;height:43px;min-height:43px;border-radius:50%;background:var(--peach);color:#31293c;display:grid;place-items:center}.launch-button:hover:not(:disabled){background:#ffdabf}.launch-button svg{width:21px;height:21px;fill:#31293c;stroke-width:1}.bottom-left{position:absolute;z-index:4;bottom:40px;left:clamp(18px,3vw,48px);display:flex;gap:23px;align-items:center}.level-link{display:flex;align-items:center;gap:12px;border-radius:13px;padding:9px 12px 9px 0;text-align:left}.level-link>svg{width:22px;height:22px;color:var(--blue)}.level-link>span{display:block;font:8px var(--mono);letter-spacing:1.5px;color:var(--muted)}.level-link b{display:block;font-family:var(--font);font-size:21px;font-weight:400;letter-spacing:-.7px;color:var(--ink);margin-top:5px}.level-link i{font-style:normal;font-size:11px;color:var(--soft);margin-left:4px;letter-spacing:0}.progress-stars{font-size:16px;color:var(--peach);white-space:nowrap}.progress-stars b{color:#e4e8fa;font-size:13px;font-weight:500;margin-left:3px}.progress-stars small{font-size:9px;color:var(--soft);margin-left:4px}.bottom-right{position:absolute;z-index:4;right:31px;bottom:43px;display:flex;gap:10px}.flight-dock{width:405px;padding:16px 20px;justify-content:space-between}.fuel-label>span{font:7px var(--mono);letter-spacing:1.2px;color:var(--muted);display:block}.fuel-label strong{font-size:22px;font-weight:400;display:block;margin:5px 0 6px}.fuel-dots{display:flex;gap:3px}.fuel-dots i{width:10px;height:4px;border-radius:2px;background:var(--mint)}.fuel-dots .empty{background:#ffffff20}.flight-buttons{display:flex;gap:6px}.flight-buttons button{width:48px;min-height:56px;font-size:25px;border-radius:12px;background:#ffffff06;border:1px solid #ffffff10}.flight-buttons small{display:block;font:6px var(--mono);letter-spacing:1px;color:var(--muted);margin-top:5px}.breadcrumbs{position:absolute;z-index:7;top:103px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:10px;padding:5px 15px;border:1px solid var(--line);border-radius:30px;background:#141a31c9;font-size:11px;max-width:calc(100vw - 32px);backdrop-filter:blur(15px);white-space:nowrap}.breadcrumbs button{min-height:30px;font-size:11px;color:var(--muted);padding:0 4px}.breadcrumbs span{color:var(--soft)}.breadcrumbs strong{font-weight:500;color:var(--peach)}.inspector{position:absolute;z-index:6;right:clamp(20px,3vw,48px);top:130px;bottom:135px;width:300px;overflow:auto;padding:24px;border:1px solid #ffffff20;border-radius:21px;background:linear-gradient(135deg,#202540e8,#12192ded);box-shadow:0 20px 70px #0004;backdrop-filter:blur(28px);scrollbar-width:thin;scrollbar-color:#ffffff30 transparent}.inspector-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.inspector-head .overline{font-size:8px}.small-round{display:grid;place-items:center;min-height:30px;width:30px;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--muted)}.small-round svg{width:13px;height:13px}.inspector h2{font-size:37px;letter-spacing:-1.5px;margin:12px 0 14px}.inspector h2 span{color:var(--peach)}.inspector>p{font-size:11px;line-height:1.85;color:var(--muted);margin-bottom:22px}.body-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:0 0 23px}.body-facts dt{font:7px var(--mono);letter-spacing:1.3px;color:var(--soft);margin-bottom:8px}.body-facts dd{margin:0;font-size:12px;line-height:1.6}.body-facts small{font-size:9px;color:var(--muted)}.body-facts button{color:var(--blue);padding:0;min-height:20px;font-size:12px}.moon-list>.overline{font-size:8px;letter-spacing:1.4px;display:block;margin-bottom:9px}.moon-list>.overline small{display:block;font:6px var(--mono);margin-top:6px;color:var(--soft)}.moon-list>button{display:flex;align-items:center;gap:13px;padding:13px 0;border-top:1px solid #ffffff0d;width:100%;text-align:left}.moon-list>button>span{flex:1;font-size:12px}.moon-list>button small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.moon-list b{font-size:14px;font-weight:400;color:var(--blue)}.moon-dot{display:block;width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 25% 25%,#ebded1,#8b8b9f 55%,#333b5c);box-shadow:0 0 15px #c9d9f51a}.moon-1{background:radial-gradient(circle at 25% 25%,#dff5ff,#80a5bd 55%,#343653)}.parent-link{width:100%;border:1px solid #ffffff15;border-radius:10px;padding:12px;font-size:11px;color:var(--blue)}.celestial-note{color:var(--muted);font-size:11px;line-height:1.8;margin-bottom:17px}.inspector>.text-button{width:100%;margin-top:15px;font-size:10px}.text-button{min-height:40px;color:var(--muted);font-size:11px;padding:8px 12px;border-radius:8px}.primary{min-height:47px;background:var(--peach);color:#302b3b;border-radius:12px;font-size:12px;font-weight:600;padding:13px 25px}.primary:hover:not(:disabled){background:#ffdbbf}.result-screen,.pause-screen{position:absolute;inset:0;z-index:10;display:grid;place-items:center;background:#05081855;backdrop-filter:blur(9px)}.result-card,.pause-card{width:min(410px,calc(100vw - 32px));padding:34px;border:1px solid #ffffff26;border-radius:28px;background:linear-gradient(140deg,#252b47f5,#111a31f5);box-shadow:0 30px 100px #0006;text-align:center}.result-card .overline,.pause-card .overline{font-size:8px}.result-orbit{width:75px;height:75px;border:1px solid #ffdaae33;outline:1px solid #ffdaae0e;outline-offset:9px;border-radius:50%;display:grid;place-items:center;margin:33px auto 29px;color:var(--peach);font-size:39px;background:radial-gradient(circle,#ffd9aa12,transparent)}.result-card h2,.pause-card h2{font-size:31px;letter-spacing:-1.3px;line-height:1.1;margin:0 0 17px}.result-card>p,.pause-card>p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:20px}.stars{font-size:25px;color:var(--peach);letter-spacing:9px;margin:16px 0 20px}.result-metrics{display:flex;justify-content:center;gap:45px;padding:18px 0 25px;font:7px var(--mono);letter-spacing:1px;color:var(--soft)}.result-metrics b{display:block;font-family:var(--font);font-weight:400;font-size:23px;letter-spacing:-.5px;margin-bottom:7px;color:var(--ink)}.result-buttons{display:grid;gap:8px}.pause-card h2{margin-top:24px}.pause-card .text-button{display:block;width:100%;margin-top:10px}.render-note{position:absolute;inset:25% 20%;z-index:3;padding:35px;background:#17203b;border-radius:25px;text-align:center}.render-note h2{font-size:30px;margin-bottom:20px}.render-note p{line-height:1.8;color:var(--muted)}
/* Campaign and settings share one accessible native dialog. */
dialog{color:var(--ink);background:#10182d;border:1px solid #ffffff24;border-radius:24px;width:min(520px,calc(100vw - 28px));max-height:calc(100dvh - 40px);padding:30px;box-shadow:0 30px 120px #0008;scrollbar-width:thin;scrollbar-color:#ffffff22 transparent}dialog::backdrop{background:#030715b9;backdrop-filter:blur(15px)}dialog.wide-dialog{width:min(770px,calc(100vw - 28px))}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.dialog-head .overline{font-size:7px;color:#7485aa}.dialog-head h2{font-size:29px;line-height:1.1;margin-top:10px;letter-spacing:-1.2px}.dialog-head .round{width:34px;height:34px;min-height:34px;flex:none}.dialog-head .round svg{width:15px}dialog>p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:20px}.map-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:8px 0 25px}.map-intro p{font-size:11px;color:var(--muted);line-height:1.6}.map-intro>span{font-size:27px;font-weight:400;white-space:nowrap}.map-intro>span small{display:block;font:6px var(--mono);letter-spacing:1px;color:var(--soft);margin-top:5px}.galaxy-tabs{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;margin-bottom:20px}.galaxy-tabs button{font:10px var(--mono);border:1px solid #ffffff10;border-radius:10px;padding:4px;min-height:38px;color:var(--muted)}.galaxy-tabs [aria-pressed=true]{background:#c9d5ff1c;border-color:#becaff4d;color:var(--ink)}.galaxy-preview{display:flex;align-items:center;gap:26px;min-height:143px;padding:18px 26px;border-radius:17px;border:1px solid #ffffff10;background:radial-gradient(ellipse at 20% 50%,color-mix(in srgb,var(--galaxy-color) 12%,transparent),transparent 65%),#080e20;margin-bottom:25px}.galaxy-preview h3{font-size:28px;letter-spacing:-1px;margin:10px 0}.galaxy-preview p{font-size:11px;line-height:1.7;color:var(--muted)}.galaxy-preview .overline{font-size:7px;letter-spacing:1.4px;color:var(--galaxy-color)}.galaxy-graphic{position:relative;flex:none;width:130px;height:100px;transform:rotate(-23deg);perspective:200px}.galaxy-graphic i{position:absolute;left:0;top:8px;width:130px;height:80px;border:2px dotted color-mix(in srgb,var(--galaxy-color) 60%,transparent);border-radius:50%;box-shadow:0 0 14px color-mix(in srgb,var(--galaxy-color) 15%,transparent);transform:rotateX(35deg)}.galaxy-graphic i:nth-child(2){left:15px;top:18px;width:100px;height:60px;transform:rotateX(35deg) rotate(-25deg)}.galaxy-graphic i:nth-child(3){left:30px;top:28px;width:70px;height:40px;transform:rotateX(35deg) rotate(25deg)}.galaxy-graphic b{position:absolute;left:48px;top:35px;width:35px;height:24px;background:radial-gradient(ellipse,#fff8e6,var(--galaxy-color) 12%,transparent 70%);border-radius:50%;box-shadow:0 0 28px var(--galaxy-color)}.level-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.level-node{min-height:92px;border:1px solid #ffffff16;border-radius:15px;background:#1c2541;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.level-node>span{font-size:24px;font-weight:400;letter-spacing:-.7px}.level-node small{font-size:10px;color:#596b8b;letter-spacing:3px}.level-node.complete small{color:var(--peach)}.level-node.current{border-color:#b9ceff8c;background:#c6d5ff16;box-shadow:0 0 22px #8aaeff09}.map-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:19px}.map-footer>span{font-size:9px;line-height:1.5;color:var(--soft)}.setting{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);font-size:12px}.setting small{display:block;font-size:9px;line-height:1.6;color:var(--soft);margin-top:6px}.setting input{width:19px;accent-color:var(--peach)}.setting select{font-size:11px;color:var(--ink);background:#19233d;border:1px solid var(--line);border-radius:9px;padding:8px 11px}.settings-actions{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:20px}.settings-actions button{text-align:left;color:var(--muted);font-size:11px;padding:10px 0}.settings-actions .danger{color:#d6a1a5}.setting-note{font:7px/1.8 var(--mono);letter-spacing:1px;color:var(--soft);margin-top:20px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:27px 23px;margin:27px 0}.help-grid section>b{font:10px var(--mono);color:var(--peach)}.help-grid h3{font-size:16px;letter-spacing:-.5px;margin:9px 0}.help-grid p{font-size:11px;color:var(--muted);line-height:1.8}.keyboard-note{font:9px/1.9 var(--mono);color:var(--soft)}.flight-log{display:grid;gap:12px}.flight-log article{display:flex;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.flight-log article>span{color:var(--peach);font-size:22px}.flight-log article>div{flex:1;min-width:0}.flight-log strong{font-size:12px;font-weight:500}.flight-log small{display:block;font:7px var(--mono);color:var(--soft);margin-top:6px;line-height:1.6}.flight-log button{font-size:10px;color:var(--blue);white-space:nowrap}.confirm-buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
@media(max-width:900px){.mission-copy{width:230px}.mission-copy h1{font-size:34px}.launch-dock{width:390px;bottom:27px}.bottom-left{gap:10px;bottom:28px}.progress-stars{display:none}.bottom-right{bottom:31px;right:22px;gap:7px}.bottom-right .round{width:36px;height:36px;min-height:36px}.launch-dock{width:min(390px,calc(100vw - 190px));padding:16px;gap:12px}.gesture-icon{display:none}.launch-instruction strong{font-size:12px}.launch-instruction p{font-size:9px}.orbit-help{top:calc(100% - 147px);font-size:7px}.inspector{top:125px;right:22px;width:270px;bottom:125px;padding:21px}.inspector>p{font-size:10px}.scene-controls{right:22px}}
@media(max-width:650px){.hud-header{padding:21px 19px;gap:12px}.brand{min-width:0;font-size:9px;gap:7px;letter-spacing:2px}.brand b{letter-spacing:2.1px}.brand-icon{width:29px;height:29px;font-size:31px}.chapter-chip{min-width:0;max-width:190px;padding:9px 13px;gap:9px;font-size:10px}.chapter-chip small{font-size:6px;letter-spacing:1px}.chapter-chip svg{width:16px}.chip-chevron{display:none}.hud-actions{min-width:0;gap:7px}.hud-actions .round{width:33px;height:33px;min-height:33px}.hud-actions .help-button{display:none}.hud-actions>button[data-action=pause]{display:none}.hud-actions .round svg{width:15px}.mission-copy{top:101px;left:23px;width:210px}.mission-copy h1{font-size:30px;letter-spacing:-1.4px;margin:12px 0}.mission-copy .overline{font-size:8px;letter-spacing:1.8px}.mission-copy p{font-size:10px}.cargo-stamp{font-size:6px;letter-spacing:1.4px;margin-top:6px}.launch-dock{bottom:91px;width:calc(100vw - 38px);max-width:410px;padding:15px 17px;border-radius:18px;gap:13px}.gesture-icon{display:grid;width:35px;height:35px;font-size:26px;border-radius:11px}.launch-instruction strong{font-size:11px}.launch-instruction p{font-size:9px}.launch-button{width:36px;height:36px;min-height:36px}.launch-button svg{width:18px}.orbit-help{top:auto;bottom:190px;font-size:6px;gap:7px}.bottom-left{left:22px;bottom:20px;gap:22px}.level-link>svg{width:20px}.level-link>span{font-size:7px}.level-link b{font-size:18px}.level-link i{font-size:9px}.progress-stars{display:block;font-size:15px}.progress-stars b{font-size:12px}.progress-stars small{font-size:8px}.bottom-right{right:20px;bottom:25px}.bottom-right .round{width:36px;height:36px;min-height:36px}.scene-controls{right:19px;top:42%;gap:6px}.scene-controls .round{width:32px;height:32px;min-height:32px;font-size:19px}.flight-dock{bottom:92px;width:calc(100vw - 38px);max-width:410px;padding:15px 17px}.flight-buttons button{width:43px;min-height:50px;font-size:23px}.fuel-label strong{font-size:19px}.fuel-label>span{font-size:6px}.flight-buttons{gap:5px}.body-tag{padding:7px 9px;min-height:35px}.body-tag>span{font-size:6px;letter-spacing:1px;margin-bottom:3px}.body-tag strong{font-size:10px}.inspector{top:auto;right:19px;left:19px;bottom:89px;width:auto;max-height:43dvh;padding:20px 22px;border-radius:20px}.inspector h2{font-size:28px;margin:6px 0 9px}.inspector>p{font-size:10px;line-height:1.7;margin-bottom:15px}.body-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 9px;padding:15px 0;margin-bottom:17px}.body-facts dt{font-size:6px;letter-spacing:.8px}.body-facts dd{font-size:10px;line-height:1.5}.body-facts small{font-size:8px}.moon-list>button{padding:10px 0}.moon-list>.overline small{display:inline;margin-left:8px;font-size:6px}.moon-list>button>span{font-size:11px}.moon-list>button small{font-size:8px}.moon-dot{width:22px;height:22px}.inspector>.text-button{margin-top:6px;min-height:34px}.breadcrumbs{top:81px;font-size:9px;padding:3px 12px;gap:7px}.breadcrumbs button{font-size:9px}.mission-copy.quiet{opacity:0}.render-note{inset:20% 5%;padding:24px}.render-note h2{font-size:23px}dialog{padding:23px 20px;border-radius:21px;max-height:calc(100dvh - 24px)}.dialog-head h2{font-size:24px}.dialog-head .round{width:30px;height:30px;min-height:30px}.dialog-head{gap:13px}.map-intro{gap:14px;margin-bottom:19px}.map-intro p{font-size:10px}.map-intro>span{font-size:22px}.map-intro>span small{font-size:5px}.galaxy-tabs{gap:4px}.galaxy-tabs button{font-size:8px;min-height:31px;border-radius:7px}.galaxy-preview{gap:16px;padding:15px;min-height:119px;margin-bottom:18px}.galaxy-graphic{width:86px;height:80px;transform:scale(.7) rotate(-23deg);transform-origin:left center;margin-right:-17px}.galaxy-preview h3{font-size:21px;letter-spacing:-.8px}.galaxy-preview p{font-size:9px}.galaxy-preview .overline{font-size:6px}.level-grid{gap:7px}.level-node{min-height:69px;border-radius:11px;gap:6px}.level-node>span{font-size:20px}.level-node small{font-size:7px;letter-spacing:1px}.map-footer{margin-top:14px;gap:7px}.map-footer>span{font-size:8px;max-width:65%}.map-footer .text-button{font-size:9px;white-space:nowrap;padding:5px}.help-grid{gap:22px 17px}.help-grid h3{font-size:14px}.help-grid p{font-size:10px}.result-card,.pause-card{padding:28px}.result-card h2,.pause-card h2{font-size:28px}.result-card>p{font-size:11px}.result-metrics{gap:35px}.result-metrics b{font-size:21px}}
@media(max-width:370px){.hud-header{padding:18px 15px;gap:7px}.brand{gap:5px;font-size:8px}.brand-icon{width:25px;font-size:28px}.chapter-chip{max-width:153px;font-size:9px;padding:8px 10px;gap:7px}.chapter-chip small{font-size:5px}.chapter-chip svg{width:13px}.hud-actions .round{width:31px;height:31px;min-height:31px}.mission-copy{left:19px;top:95px}.mission-copy h1{font-size:27px}.launch-dock{gap:10px;padding:14px}.gesture-icon{display:none}.flight-dock{gap:10px;padding:14px}.flight-buttons button{width:39px}.body-facts{grid-template-columns:1fr 1fr;gap:12px}.inspector{padding:18px;max-height:42dvh}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

@media(max-width:650px){.hud-actions .round{width:44px;height:44px;min-height:44px}.scene-controls .round{width:44px;height:44px;min-height:44px}.bottom-right .round{width:44px;height:44px;min-height:44px}.bottom-right{gap:7px}.flight-buttons button{width:44px;min-height:51px}.fuel-label{width:52px;flex:none}.fuel-dots i{width:8px}.fuel-label>span{line-height:1.5;letter-spacing:.5px}.galaxy-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.galaxy-tabs button{min-height:44px;font-size:10px}.chapter-chip{max-width:170px}.launch-button{width:44px;height:44px;min-height:44px}}
@media(max-width:370px){.chapter-chip{max-width:145px}.flight-buttons button{width:44px}.flight-dock{gap:9px;padding:13px}.brand{gap:5px}.hud-header{padding:17px 13px;gap:5px}}
.payload-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 19px;border-radius:13px;background:#d0dcff0a;border:1px solid var(--line);margin:22px 0}.payload-strip>span{font:7px var(--mono);letter-spacing:1px;color:var(--soft)}.payload-strip strong{display:block;font:12px var(--font);color:var(--ink);letter-spacing:0;margin-top:7px}.payload-strip>b{font-size:23px;font-weight:400;color:var(--peach);white-space:nowrap}.ship-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:4px 0 16px}.ship-stats>span{font:7px var(--mono);letter-spacing:.7px;color:var(--soft)}.ship-stats b{display:block;font:18px var(--font);color:var(--ink);margin-top:9px;letter-spacing:-.5px}.payload-warning{font-size:11px!important;padding:12px 14px;border-radius:10px;background:#f3949a10;color:#efafb2!important;border:1px solid #f3949a25}.payload-warning.ok{color:var(--mint)!important;background:#a0f1ca08;border-color:#a0f1ca22}.parts-list{display:grid;gap:23px;margin:25px 0}.parts-list h3{font-size:13px;letter-spacing:-.2px;margin-bottom:12px}.parts-list h3>span{font:8px var(--mono);color:var(--soft);margin-right:9px}.part-options{display:flex;gap:8px}.part-options button{flex:1;min-width:0;text-align:left;min-height:95px;padding:14px 12px;border-radius:12px;border:1px solid var(--line);background:#19223b}.part-options [aria-pressed=true]{border-color:#bbd0ff85;background:#bbd0ff12}.part-options strong{font-size:12px;font-weight:500;display:block}.part-options small{font-size:8px;color:var(--blue);line-height:1.5;display:block;margin:7px 0}.part-options span{font-size:8px;color:var(--soft);display:block}.workshop-note{font-size:10px!important;line-height:1.8!important;color:var(--muted);margin:22px 0!important}.workshop-button{font-size:25px}.workshop-button:after{content:'SHIP';font:6px var(--mono);position:absolute;bottom:-16px;letter-spacing:1px;color:var(--muted)}.workshop-button{position:relative}@media(max-width:900px){.bottom-left{gap:14px}.progress-stars{display:none!important}}@media(max-width:650px){.bottom-left{gap:20px}.workshop-button{width:40px;height:40px;min-height:40px}.part-options{gap:6px}.part-options button{padding:12px 9px;min-height:92px}.part-options strong{font-size:11px}.part-options small,.part-options span{font-size:7px}.ship-stats>span{font-size:6px}.ship-stats b{font-size:16px}.payload-strip{padding:13px}.payload-strip strong{font-size:11px}.payload-strip>b{font-size:21px}}
.body-tag:before{content:'';position:absolute;top:0;left:50%;height:var(--leader-length,0px);width:1px;background:linear-gradient(#b4cfff35,#b4cfff12);transform:rotate(var(--leader-angle,0rad));transform-origin:top center;pointer-events:none;z-index:-1}.body-tag:active:not(:disabled){transform:translate(-50%,0) scale(.97)}@media(max-width:650px){.body-tag{min-height:44px}}

/* Immersive flight HUD. Space owns the viewport; tools float above it. */
:root{color-scheme:dark;--ink:#eef3f7;--muted:#97a7b9;--soft:#6d8094;--line:#c2dcf225;--peach:#ffac63;--blue:#a3c7db;--mint:#89d9bb;background:#03070d}
.game,.space-stage{position:fixed;inset:0;width:100%;height:100dvh;background:#03070d}.space-stage{border-radius:0;overflow:hidden}.space-shade{background:linear-gradient(180deg,#02060ddb,transparent 20%,transparent 75%,#02060ddb),linear-gradient(90deg,#02060d45,transparent 30%,transparent 80%,#02060d45)}
.hud-header{padding:23px 30px;align-items:center;pointer-events:none}.hud-header>*{pointer-events:auto}.brand{font-size:9px;letter-spacing:2.8px;min-width:180px;gap:12px}.brand-icon{color:#ffae70;font-size:37px}.brand b{letter-spacing:3px}.chapter-chip{min-width:0;width:47px;height:47px;min-height:47px;padding:0;display:grid;place-items:center;border-radius:14px;background:#0b1421b0;border:1px solid #abc9e62a;backdrop-filter:blur(12px)}.chapter-chip>span{display:none}.chapter-chip svg{width:21px;color:#b5cddd}.hud-actions{min-width:180px;gap:8px}.round{width:46px;height:46px;min-height:46px;border-radius:14px;background:#0b1421b0;border:1px solid #abc9e62a;color:#c2d4df;backdrop-filter:blur(12px)}.round:hover:not(:disabled){background:#233447db;border-color:#b9d7e76b}.round svg{width:18px;height:18px}.mission-copy{pointer-events:auto;left:auto;right:30px;top:91px;width:300px;padding:24px;background:#0b1524ed;border:1px solid #b8cfe02b;border-radius:18px;box-shadow:0 20px 70px #0007;backdrop-filter:blur(22px)}.mission-copy h1{font-size:30px;line-height:1.1;letter-spacing:-1px;margin:14px 0}.mission-copy>p{font-size:12px;line-height:1.7;color:#b6c6d6}.mission-copy.quiet{display:none}.cargo-stamp{color:#91a9ba;font-size:8px}.difficulty-pill{display:block;margin:10px 0 0!important;color:#8ac5d2!important;font-size:10px;letter-spacing:.5px}.mission-note{margin-top:20px;border-top:1px solid #b6cde025;padding-top:18px;display:flex;gap:12px}.mission-note-icon{color:#ffb777}.mission-note strong{font-size:12px;font-weight:500;display:block}.mission-note div>span{display:block;color:#8297ab;font-size:11px;line-height:1.8;margin-top:6px}
.contract-strip{position:absolute;z-index:3;left:50%;top:28px;transform:translateX(-50%);display:flex;gap:18px;align-items:center;pointer-events:none;font-size:10px;color:#869caf}.contract-strip>span{display:flex;align-items:center;gap:7px;white-space:nowrap}.contract-strip i{font-style:normal;color:#ffbd79;font-size:17px}.contract-strip b{color:#d7e8ec;font:11px var(--mono)}.contract-strip .challenge-caption{display:none}.contract-strip>span:last-child{display:none}.chapter-chip{position:absolute;left:226px;top:23px}.hud-header:after{content:'ORBITAL COURIER / FLIGHT SYSTEMS';position:absolute;left:31px;top:81px;font:7px var(--mono);letter-spacing:1.7px;color:#668094}
.scene-controls{right:30px;top:50%;transform:translateY(-50%);gap:9px}.scene-controls .round{width:44px;height:44px;min-height:44px;background:#0b1421a6;font-size:22px}.body-tag{background:none;text-shadow:0 2px 10px #000;color:#e4ebf0;border-radius:9px}.body-tag strong{font-size:11px;font-weight:500;letter-spacing:.3px}.body-tag>span{font-size:6px;letter-spacing:1.8px;color:#708fa7}.body-tag:hover,.body-tag.selected{background:#112236da;border-color:#a4c2db3b}.destination-tag strong{color:#baf1db}.destination-tag>span{color:#6ac0a0}.body-tag:before{background:linear-gradient(#99bed633,#99bed611)}
.launch-dock,.flight-dock{left:50%;bottom:25px;width:440px;max-width:calc(100vw - 440px);border-radius:18px;background:#0b1421cb;border:1px solid #b7d4e32a;box-shadow:0 12px 55px #0005;backdrop-filter:blur(22px);padding:15px 17px;gap:13px}.gesture-icon{display:none}.launch-instruction strong{font-size:12px;letter-spacing:.2px;color:#e6edf1}.launch-instruction p{font-size:10px;line-height:1.5;color:#7890a5;margin-top:6px}.launch-button{width:52px;height:52px;min-height:52px;border-radius:15px;background:#ffa867;color:#261b16;box-shadow:0 0 30px #ff8f3d18}.launch-button:hover:not(:disabled){background:#ffc591}.launch-button svg{fill:#34221a}.bottom-left{left:30px;bottom:30px;gap:13px}.level-link{position:relative;display:grid;place-items:center;width:49px;height:49px;padding:0;border:1px solid #b0cee32b;border-radius:14px;background:#0b1421ad}.level-link>svg{width:19px}.level-link>span{font-size:0;color:transparent;position:absolute;right:-6px;top:-8px;background:#213347;border-radius:6px;padding:2px 5px;line-height:1}.level-link b{font:9px var(--mono);letter-spacing:0;margin:0;color:#d3e1ea}.level-link i{display:none}.workshop-button:after{display:none}.progress-stars{display:none!important}.bottom-right{right:30px;bottom:31px;gap:9px}.orbit-help{left:50%;top:auto;bottom:130px;font:7px var(--mono);letter-spacing:1.3px;color:#5f7b92}.flight-buttons button{background:#a8c8e109;border-color:#a8c8e11b;border-radius:11px}.fuel-dots i{background:#7acdb5}.fuel-dots .empty{background:#d0e5f01a}.fuel-label strong{font-size:21px}.flight-dock{padding:13px 18px}
.inspector{right:30px;top:105px;bottom:135px;width:300px;background:#0a1525ed;border-color:#b4cde329;border-radius:18px;box-shadow:0 20px 80px #0006;backdrop-filter:blur(22px)}.inspector h2{font-size:32px}.inspector>p{color:#94a9bc}.small-round{width:44px;min-height:44px;border-radius:12px}.breadcrumbs{top:29px;background:#0b1524df;border-color:#bdd4e328;max-width:40vw;backdrop-filter:blur(15px)}.body-facts{border-color:#b6cde020}.body-facts dt{color:#647f95}.body-facts button{color:#96c5d7}.moon-list>button{border-color:#bad5e517}.parent-link{border-color:#a6c7dd25;color:#9bbdcc}.planet-mood{display:none}
dialog,.result-card,.pause-card{background:linear-gradient(145deg,#142238,#091422);border-color:#bed3e42b;border-radius:22px;box-shadow:0 30px 100px #0009}.result-screen,.pause-screen{background:#02070d70;backdrop-filter:blur(14px)}.primary{background:#ffad70;color:#2c2018;border-radius:12px}.primary:hover:not(:disabled){background:#ffc28e}.galaxy-preview{background:#050d1d}.galaxy-tabs button[aria-pressed=true]{border-color:#84b1c55e;background:#89b4cb14}.part-options button{background:#111f32}.part-options [aria-pressed=true]{background:#91bdd416;border-color:#9acfe76b}.level-node.current{border-color:#f8b27477}.level-node.complete{background:#77bba912}.contract-results{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin:18px 0}.contract-results>span{padding:7px 10px;font-size:9px;border-radius:7px;border:1px solid #a6c3d51b;color:#617e95}.contract-results .earned{color:#a2dfc5;background:#85c5ae0d;border-color:#8dcbb42b}.level-badges{font-size:6px;color:#ffc080;letter-spacing:2px}.render-note{background:#101e32}
@media(max-width:900px) and (min-width:651px){.brand{min-width:155px;font-size:8px}.chapter-chip{left:195px}.hud-actions{min-width:150px}.contract-strip{top:85px}.launch-dock,.flight-dock{max-width:calc(100vw - 340px)}.launch-instruction strong{font-size:11px}}
@media(max-width:650px){.hud-header{padding:16px;gap:8px}.brand{min-width:28px;width:28px}.brand>span:last-child{display:none}.brand-icon{width:28px;font-size:31px}.chapter-chip{left:56px;top:16px;width:44px;height:44px;min-height:44px;border-radius:12px}.hud-actions{min-width:0;gap:7px}.hud-actions>button[data-action=pause]{display:grid}.hud-actions>button[data-action=help]{display:none}.hud-actions .round{width:44px;height:44px;min-height:44px;border-radius:12px}.hud-header:after{display:none}.contract-strip{top:79px;gap:15px;font-size:9px}.contract-strip i{font-size:14px}.contract-strip b{font-size:10px}.contract-strip>span:last-child{display:none}.mission-copy{left:16px;right:16px;top:110px;width:auto;padding:23px;max-height:55dvh;overflow:auto}.mission-copy h1{font-size:28px;max-width:none}.mission-copy>p{font-size:12px}.mission-note{display:flex}.mission-copy .overline{font-size:8px}.difficulty-pill{width:auto;font-size:9px}.cargo-stamp{display:block;font-size:8px;margin:7px 0 0}.scene-controls{right:16px;top:45%;gap:8px}.scene-controls .round{width:44px;height:44px;min-height:44px}.launch-dock,.flight-dock{left:50%;bottom:82px;width:calc(100vw - 32px);max-width:none;border-radius:17px;padding:13px 14px;gap:12px}.launch-instruction strong{font-size:11px}.launch-instruction p{font-size:9px}.launch-button{width:48px;height:48px;min-height:48px}.bottom-left{left:16px;bottom:18px;gap:10px}.bottom-right{right:16px;bottom:19px;gap:8px}.level-link{width:44px;height:44px;border-radius:12px}.bottom-right .round,.workshop-button{width:44px;height:44px;min-height:44px;border-radius:12px}.orbit-help{bottom:178px;font-size:6px;gap:6px;letter-spacing:1px}.body-tag{min-height:44px}.body-tag strong{font-size:10px}.body-tag>span{font-size:6px}.inspector{top:auto;left:16px;right:16px;bottom:83px;width:auto;max-height:38dvh;padding:20px;border-radius:18px}.inspector h2{font-size:27px}.inspector>p{font-size:10px;line-height:1.7}.body-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 8px}.breadcrumbs{top:112px;left:50%;max-width:calc(100vw - 32px);padding:3px 10px}.breadcrumbs button{min-height:36px}.flight-dock{padding:12px}.flight-buttons button{width:44px;min-height:50px}.flight-buttons{gap:5px}.fuel-label{width:48px}.fuel-label strong{font-size:19px}.result-card{padding:26px}.result-card h2{font-size:28px}.contract-results>span{font-size:8px;padding:6px}.dialog-head .round{width:44px;height:44px;min-height:44px}.round:focus-visible{outline-color:#ffbd85}}
@media(max-width:370px){.hud-header{padding:14px 12px}.chapter-chip{left:51px;top:14px}.hud-actions{gap:6px}.mission-copy{left:12px;right:12px}.body-facts{grid-template-columns:1fr 1fr}.launch-dock,.flight-dock{width:calc(100% - 24px)}.flight-buttons{gap:4px}.flight-dock{gap:9px}.scene-controls{right:12px}.contract-strip{font-size:8px;gap:13px}}
/* Frontier discovery and flight feedback. */
.galaxy-navigation{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:20px 0}.galaxy-navigation>span{font:10px var(--mono);letter-spacing:1.5px;color:#c8dae7}.galaxy-navigation i{font-style:normal;color:#66839a;font-size:8px}.frontier-preview{min-height:185px;border-color:color-mix(in srgb,var(--galaxy-color) 28%,transparent);background:radial-gradient(ellipse at 10% 80%,color-mix(in srgb,var(--galaxy-color) 17%,transparent),transparent 70%),#060e1c}.frontier-preview h3{color:var(--galaxy-color);font-size:31px}.frontier-preview .galaxy-graphic{filter:drop-shadow(0 0 22px var(--galaxy-color))}.next-frontier{display:flex;align-items:center;gap:15px;margin-top:21px;padding:16px 18px;border:1px dashed #94bdd22b;border-radius:13px;background:#a6c1d205}.next-frontier>span{font-size:30px;color:#7296ac}.next-frontier strong{display:block;color:#b1c7d7;font-size:12px;font-weight:500}.next-frontier small{display:block;color:#6d899e;font-size:10px;line-height:1.7;margin-top:6px}.level-node{transition:transform .18s,border-color .18s,box-shadow .18s}.level-node:hover:not(:disabled){transform:translateY(-3px);border-color:#adcfe266;box-shadow:0 8px 20px #0005}.level-node.complete{box-shadow:inset 0 -2px #89ceb82a}.galaxy-arrival{position:absolute;z-index:2;left:50%;top:23%;transform:translateX(-50%);text-align:center;pointer-events:none;white-space:nowrap;animation:sector-arrival 3s both}.galaxy-arrival span{display:block;font:8px var(--mono);letter-spacing:3px;color:#88adc0;margin-bottom:12px}.galaxy-arrival strong{font-size:clamp(23px,4vw,46px);font-weight:300;letter-spacing:3px;color:#e1f0f3;text-shadow:0 0 35px #8ecfe26b}.gate-pulse .stamp-progress{animation:gate-feedback 1.2s}.launch-pulse .launch-button{animation:launch-feedback .5s}.game[data-mode=flying] .body-tag:not(.destination-tag){opacity:.48}.game[data-mode=flying] .destination-tag{background:#082b2580;border:1px solid #a5e4c63b}.body-tag{transition:opacity .25s,background .25s,border-color .25s}.body-tag:hover{box-shadow:0 0 25px #77bad214}.space-stage canvas{cursor:crosshair}.game[data-mode=success] .space-stage{filter:saturate(1.12)}
@keyframes sector-arrival{0%{opacity:0;letter-spacing:5px}18%,62%{opacity:1}100%{opacity:0;transform:translate(-50%,-8px)}}@keyframes gate-feedback{0%{color:#ffe1a3;filter:drop-shadow(0 0 12px #ffcc7d);transform:scale(1.14)}100%{filter:none;transform:scale(1)}}@keyframes launch-feedback{50%{box-shadow:0 0 55px #77caff99;transform:scale(.9)}}
@media(max-width:650px){.galaxy-navigation>span{font-size:9px;letter-spacing:.7px}.galaxy-navigation i{font-size:7px}.frontier-preview{min-height:150px}.frontier-preview h3{font-size:24px}.next-frontier{padding:13px;gap:12px}.next-frontier strong{font-size:11px}.next-frontier small{font-size:9px}.galaxy-arrival{top:21%}.galaxy-arrival strong{font-size:24px;letter-spacing:1px}.galaxy-arrival span{font-size:6px;letter-spacing:2px}}
@media(prefers-reduced-motion:reduce){.galaxy-arrival{display:none}.gate-pulse .stamp-progress,.launch-pulse .launch-button{animation:none}.level-node:hover{transform:none}}
.boot-screen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;background:radial-gradient(ellipse at center,#0c1b2a,#02060d);color:#9db8c9}.boot-screen>span{font-size:45px;color:#ffb67d;animation:chart-pulse 1.7s ease-in-out infinite}.boot-screen p{font:10px var(--mono);letter-spacing:2px}@keyframes chart-pulse{50%{opacity:.4;transform:rotate(35deg) scale(.9)}}
.level-node>span{font-size:clamp(14px,calc(33px - var(--digits,2)*2.4px),28px)}@media(max-width:650px){.level-node>span{font-size:clamp(10px,calc(29px - var(--digits,2)*2.8px),22px)}}
/* Expedition HUD and scrolling, sequential journey. */
:root{--ink:#eef3f5;--muted:#a0b5c4;--soft:#718b9c;--peach:#ffd09a;--glass:#102330ed;--line:#a7c9df24}
.space-shade{background:linear-gradient(#050d1870,transparent 23%,transparent 70%,#050d1880)}
.hud-header{padding:20px 25px}.brand{font-size:10px;min-width:125px}.brand-icon{font-size:30px;width:30px}.chapter-chip{background:#0a1b29ad;min-width:200px}.round{background:#102331b0;border-color:#bfd8e128;border-radius:14px}.hud-actions{gap:7px}.galaxy-arrival{display:none}.contract-strip{top:100px;left:25px;right:auto;transform:none;padding:12px 15px;background:#0c1d2ba6;border:1px solid var(--line);border-radius:12px;font-size:10px;gap:15px;max-width:calc(100vw - 50px)}.challenge-caption{display:none}.target-chip{position:absolute;right:25px;top:100px;z-index:5;min-width:205px;text-align:left;padding:13px 17px;background:#0b2030c9;border:1px solid #bfd8e12c;border-radius:14px;backdrop-filter:blur(16px)}.target-chip>span{display:block;font:9px var(--mono);letter-spacing:1.5px;color:var(--peach);margin-bottom:6px}.target-chip strong{font-size:17px;font-weight:550;display:flex;justify-content:space-between;gap:30px}.target-chip small{display:block;font-size:8px;letter-spacing:1px;color:var(--muted);margin-top:7px}.target-chip b{color:var(--peach)}.camera-bar{position:absolute;z-index:5;left:50%;bottom:118px;transform:translateX(-50%);padding:4px;display:flex;gap:3px;background:#0a1b29c9;border:1px solid var(--line);border-radius:12px}.camera-bar button{min-height:32px;font-size:10px;letter-spacing:.7px;padding:6px 14px;border-radius:8px;color:#b7c8d4}.camera-bar button[aria-pressed=true]{background:#d4e5ec20;color:#fff}.launch-dock{bottom:27px;left:50%;transform:translateX(-50%);width:min(440px,calc(100vw - 260px));background:#0b1e2ce8;border:1px solid var(--line);border-radius:18px;padding:12px 13px 12px 20px}.launch-button{border-radius:13px;background:#ffd09a;color:#233647;width:53px;height:53px}.launch-instruction strong{font-size:13px}.launch-instruction p{font-size:10px;line-height:1.6;max-width:300px}.gesture-icon{display:none}.bottom-left{left:25px;bottom:28px}.bottom-right{right:25px;bottom:28px}.flight-dock{bottom:25px;border-radius:18px;background:#0b1e2ce8}.scene-controls{right:25px;bottom:155px}.orbit-help{display:none}#minimap{position:absolute;left:25px;bottom:110px;width:220px;height:144px;border:1px solid var(--line);border-radius:14px;z-index:4;box-shadow:0 12px 40px #0005}.mission-copy{left:25px;top:160px;padding:20px;background:#0d2332e8;border:1px solid var(--line);border-radius:16px;backdrop-filter:blur(15px);pointer-events:auto}.mission-copy h1{font-size:28px}.mission-copy p{font-size:12px}.inspector{background:#0b1e2cf0;border-color:var(--line);backdrop-filter:blur(16px)}.body-label{background:#0c1c2aab!important;border-color:#c1d9ea22!important}.game[data-mode=flying] .contract-strip{opacity:.8}.game[data-mode=flying] .target-chip{max-width:230px}
dialog{background:#0b1b29f7;border:1px solid #b6d7ec26;border-radius:24px;box-shadow:0 30px 120px #000b;color:var(--ink)}dialog::backdrop{background:#020711a3;backdrop-filter:blur(12px)}.dialog-head h2{font-size:28px;font-weight:550}.dialog-head .overline{color:var(--peach)}.primary{background:var(--peach);color:#193242;border-radius:12px}.journey-dialog{width:min(760px,calc(100vw - 24px));height:min(900px,calc(100dvh - 30px));max-width:none;padding:24px 28px;overflow:hidden}.journey-dialog .dialog-head{margin-bottom:14px}.journey-toolbar{display:flex;align-items:center;justify-content:space-between;font-size:13px;gap:10px}.journey-toolbar small{font-size:8px;color:var(--muted);letter-spacing:1px}.journey-toolbar button{border:1px solid var(--line);border-radius:10px;padding:9px 14px;font-size:11px;color:var(--peach)}.journey-status{font-size:11px;color:var(--muted);margin:10px 0 17px;min-height:16px}.journey-scroll{height:calc(100% - 200px);overflow-y:auto;overscroll-behavior:contain;border-radius:18px;background:radial-gradient(ellipse at 20% 20%,#22405466,transparent 50%),radial-gradient(ellipse at 80% 60%,#342e5366,transparent 65%),#07141f;scrollbar-width:thin;scrollbar-color:#416071 #0b1923}.journey{position:relative;max-width:550px;margin:auto;background-image:radial-gradient(#d0eaff70 1px,transparent 1px),radial-gradient(#d0eaff30 1px,transparent 1px);background-size:93px 113px,157px 171px;background-position:13px 29px,43px 77px}.journey-path{position:absolute;inset:0;width:100%;height:100%;overflow:visible;stroke:#abcadd33;stroke-width:1;fill:none;stroke-dasharray:2 2}.journey-node{position:absolute;width:68px;height:68px;min-height:68px;transform:translate(-50%,-50%);padding:0;border-radius:50%;background:none;isolation:isolate}.journey-node:hover:not(:disabled){background:none;transform:translate(-50%,-50%) scale(1.1)}.mini-world{position:absolute;inset:5px;border-radius:50%;background:radial-gradient(ellipse at 30% 25%,#b8d8a9 0%,#438c77 25%,#24687c 47%,#122e44 79%);box-shadow:inset -9px -8px 12px #020c22b3,0 0 0 1px #86c9c03d,0 7px 15px #0009;z-index:-1}.mini-world:before{content:'';position:absolute;inset:12px 6px 20px 6px;transform:rotate(-25deg);border-top:5px solid #edf4ee7a;border-bottom:3px solid #e4eeee50;border-radius:45%}.deep .mini-world{background:radial-gradient(ellipse at 30% 25%,#bfdce6,#648d9f 35%,#454a64 65%,#1d2d43)}.neon .mini-world{background:radial-gradient(ellipse at 30% 25%,#e0adf5,#8e66b1 35%,#315579 65%,#191d3d)}.journey-node strong{font-size:17px;text-shadow:0 2px 5px #000;position:relative}.journey-node small{position:absolute;top:57px;left:50%;transform:translateX(-50%);font-size:10px;color:#ffe2ae;white-space:nowrap;letter-spacing:2px}.journey-node.locked .mini-world{filter:saturate(.45);opacity:.65}.journey-node.locked strong{color:#c1cad0}.journey-node.current:after{content:'';position:absolute;inset:-5px;border:2px solid var(--peach);border-radius:50%;box-shadow:0 0 18px #ffc47d33}.journey-node em{position:absolute;left:80px;top:20px;width:130px;font:9px var(--mono);letter-spacing:1px;color:var(--peach);text-align:left}.journey-galaxy{position:absolute;left:20px;right:20px;text-align:center;pointer-events:none;background:linear-gradient(90deg,transparent,#183344e8,transparent);padding:8px}.journey-galaxy span{display:block;font:8px var(--mono);letter-spacing:1.6px;color:var(--peach)}.journey-galaxy b{font-size:14px;display:block;margin-top:4px;font-weight:500}.journey-galaxy.deep{background:linear-gradient(90deg,transparent,#31364ee8,transparent)}.journey-galaxy.neon{background:linear-gradient(90deg,transparent,#352445e8,transparent)}.journey-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}.journey-footer button{font-size:11px;color:var(--peach)}.journey-footer span{font:8px var(--mono);color:var(--muted);letter-spacing:1px}.target-dialog{width:min(680px,calc(100vw - 24px))}.target-dialog>p{font-size:12px;line-height:1.7;color:var(--muted)}.target-list{margin:20px 0;display:grid;gap:7px}.target-option{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:10px 12px;border-radius:13px;background:#142a3a66}.target-option.selected{border-color:#ffd09a66}.target-option>div{flex:1}.target-option strong{font-size:13px;font-weight:550}.target-option small{font-size:8px;color:var(--muted)}.target-option p{font-size:10px;margin-top:5px;color:var(--muted)}.target-option button{padding:8px 12px;border:1px solid var(--line);border-radius:9px;font-size:11px;min-height:38px}.target-option button[data-operation=attack]{color:#ffb8a1}.target-orb{width:30px;height:30px;flex-shrink:0;border-radius:50%;background:radial-gradient(circle at 30% 25%,#a1c6ae,#3c8e96 40%,#1d384f 80%)}.target-orb.moon{width:22px;height:22px;margin-left:8px;background:radial-gradient(circle at 30% 25%,#bec8d3,#697c91 45%,#263a50 80%)}.target-status{color:var(--peach)!important;position:sticky;bottom:0;background:#0b1b29;padding:12px 0}.render-note{z-index:10}
@media(max-width:700px){.hud-header{padding:14px}.brand{min-width:auto}.brand>span:last-child{display:none}.chapter-chip{min-width:auto;padding:8px 12px;font-size:10px}.chapter-chip small{font-size:7px;letter-spacing:.5px}.hud-actions{min-width:auto}.hud-actions .help-button{display:none}.hud-actions .round{width:36px;height:36px;min-height:36px;border-radius:11px}.contract-strip{top:77px;left:14px;font-size:9px;padding:9px;gap:10px}.target-chip{top:119px;right:14px;min-width:165px;padding:10px 12px}.target-chip strong{font-size:14px}.target-chip>span,.target-chip small{font-size:7px}.target-chip small{letter-spacing:.6px}.launch-dock{bottom:82px;left:14px;right:14px;transform:none;width:auto;padding:9px 10px 9px 15px}.camera-bar{bottom:167px;left:50%;gap:0}.camera-bar button{padding:5px 12px}.bottom-left{left:14px;bottom:15px;gap:10px}.bottom-right{right:14px;bottom:15px}.scene-controls{right:14px;bottom:230px}.flight-dock{bottom:80px;width:calc(100vw - 28px)}#minimap{left:14px;bottom:225px;width:150px;height:98px}.mission-copy{left:14px;top:180px;width:calc(100vw - 28px);max-width:320px}.journey-dialog{padding:18px 14px;border-radius:18px}.journey-dialog .dialog-head h2{font-size:24px}.journey-toolbar{font-size:11px}.journey-toolbar small{display:none}.journey-toolbar button{padding:6px 9px;font-size:10px}.journey-scroll{height:calc(100% - 185px)}.journey-node em{width:95px;left:65px;font-size:7px}.journey-footer span{font-size:7px;letter-spacing:0}.target-dialog{padding:20px 15px}.target-option{gap:7px;padding:9px 8px}.target-option button{padding:8px;font-size:10px}.target-option strong{font-size:12px}.target-orb{width:24px;height:24px}.target-option p{font-size:9px}.game[data-mode=flying] .target-chip{top:119px}.inspector{max-height:calc(100dvh - 245px);top:175px}.breadcrumbs{top:135px}.progress-stars{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.chapter-chip>span:not(.chip-chevron){display:block}.chapter-chip .chip-chevron{display:block}.game:before{display:none}.journey-path{max-width:none}.game[data-mode=success] .camera-bar,.game[data-mode=failure] .camera-bar{display:none}
.chapter-chip{display:flex;align-items:center;height:auto;min-height:48px}.chapter-chip>svg{display:block;position:static}.chapter-chip>span:not(.chip-chevron){text-align:left;line-height:1.4;position:static;opacity:1;max-width:none;overflow:visible}.chapter-chip small{position:static}.chapter-chip .chip-chevron{display:none}
dialog.journey-dialog[open]{display:flex;flex-direction:column}.journey-dialog .dialog-head,.journey-toolbar,.journey-status,.journey-footer{flex-shrink:0}.journey-scroll{flex:1;min-height:0;height:auto;overflow-x:hidden}.journey-footer{min-height:38px}.journey-node:active{transform:translate(-50%,-50%) scale(.97)}
@media(max-width:700px){.journey-node em{left:50%;top:-24px;transform:translateX(-50%);width:130px;text-align:center;font-size:7px}.journey-status{font-size:10px;line-height:1.6;margin:9px 0 12px}.journey-dialog .dialog-head{gap:8px}.journey-dialog .dialog-head h2{font-size:22px;letter-spacing:-.7px}.journey-dialog .dialog-head .round{flex-shrink:0}.chapter-chip{max-width:150px;min-height:44px}.chapter-chip small{font-size:6px}.chapter-chip>svg{display:none}}
.chapter-chip{width:200px;flex-direction:row;overflow:hidden}.chapter-chip>span:not(.chip-chevron){white-space:nowrap;min-width:0}.chapter-chip small{white-space:nowrap}
@media(max-width:700px){.chapter-chip{width:155px;max-width:155px;height:44px;padding:7px 11px}.chapter-chip>span:not(.chip-chevron){font-size:10px}.chapter-chip small{font-size:6px;letter-spacing:.4px}.hud-actions{gap:6px}}
.about-hero{display:flex;align-items:center;gap:18px;margin:6px 0 20px}.about-hero img{border-radius:17px}.about-hero strong{font-size:18px;line-height:1.5;font-weight:500}.about-hero p{font:10px var(--mono);color:var(--muted);margin-top:8px}.about-copy{font-size:13px;color:var(--muted);line-height:1.8;margin:12px 0 20px}.app-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.app-actions button{border:1px solid var(--line);padding:12px 14px;border-radius:11px;text-align:left;font-size:12px;background:#15304255}.app-actions [data-dialog=apply-update]{background:var(--peach);color:#163246}.app-status{color:var(--peach);font-size:12px;line-height:1.7;margin:18px 0}.legal-links{display:flex;flex-wrap:wrap;gap:16px;border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:var(--muted)}.copyright{display:block;color:var(--soft);margin-top:20px;font-size:10px}.support-form{display:grid;gap:17px}.support-form>label{display:grid;gap:8px;font-size:12px;color:var(--muted)}.support-form input:not([type=checkbox]),.support-form textarea{width:100%;background:#08141e;color:var(--ink);border:1px solid #b0c8d43b;border-radius:10px;padding:12px;font:13px/1.6 var(--font);resize:vertical}.support-form .diagnostic-choice{display:flex;align-items:center;gap:10px;font-size:11px}.diagnostic-choice input{min-height:24px;width:20px;accent-color:var(--peach)}.support-form>p{font-size:11px;line-height:1.8;color:var(--muted)}.support-form .app-status{color:var(--peach);margin:0}.support-form a{color:var(--peach)}
/* Reference-led mission cockpit: image board's plan and follow states. */
.hud-header{height:58px;padding:8px 28px;background:linear-gradient(90deg,#031020e8,#06152a99);border-bottom:1px solid #68a3c37d}.brand{min-width:0}.reference-title{display:block;white-space:nowrap;font-size:20px;font-weight:700;letter-spacing:4px;color:#f4f5fa}.reference-title i{font-style:normal;color:#ffd47f;font-weight:600;margin-left:10px;font-size:18px;letter-spacing:3px}.chapter-chip{display:none}.hud-actions{margin-left:auto;min-width:0}.hud-actions .round{width:34px;height:34px;min-height:34px;background:#0b172a8c;border-radius:50%}.reference-heading{position:absolute;left:28px;top:77px;z-index:3;border-bottom:1px solid #a6bbd950;padding-bottom:10px;letter-spacing:4px;font-size:25px;font-weight:700;pointer-events:none;text-shadow:0 2px 12px #000}.game:after{display:none}.contract-strip{top:137px;left:28px;max-width:400px;background:#05132499;border-radius:7px}.target-chip{top:78px;right:28px;border-color:#a0d5e359;min-width:185px;background:#031423c4}.route-card{position:absolute;left:28px;bottom:80px;width:min(440px,37vw);z-index:5;padding:20px 20px 14px;border-radius:19px;background:linear-gradient(145deg,#0b2034e8,#031323f5);border:1px solid #85bfdcd4;box-shadow:0 12px 60px #0006;backdrop-filter:blur(12px)}.route-card>span{font-size:10px;letter-spacing:2px;color:#bac9d9}.route-card h2{font-size:23px;letter-spacing:.5px;margin-top:6px;font-weight:600;border-bottom:1px solid #829eb344;padding-bottom:12px}.route-card h2 i{font-style:normal;color:#9daec0;margin:0 10px}.route-facts{padding:9px 0 12px}.route-facts p{font-size:12px;letter-spacing:.8px;line-height:1.8;color:#e0e8f1}.route-actions{display:flex;gap:10px;padding-top:12px;border-top:1px solid #829eb344}.route-actions button{flex:1;border:1px solid #b2c3d444;background:#ffffff08;border-radius:12px;font-size:12px;letter-spacing:1.3px;font-weight:650;min-height:47px;color:#acb9c8}.route-actions .selected{color:white;border-color:#a5ffaf;box-shadow:0 0 12px #70ff6c44,inset 0 0 14px #63f96a33;background:#1a773e22}.route-confirm{display:flex;justify-content:space-between;gap:8px;margin-top:14px;align-items:center}.route-confirm>button:first-child{font-size:10px;letter-spacing:.5px;color:#e0e9f3;padding:0;min-height:40px}.route-confirm .confirm-route{padding:12px 16px;background:linear-gradient(#ffdc85,#e9ad44);border:1px solid #fff1be;box-shadow:0 0 13px #f4c76c65,inset 0 0 8px #fff3ce88;border-radius:12px;letter-spacing:1px;font-size:12px;font-weight:800;color:#1c160e}.route-card>small{display:block;font-size:8px;letter-spacing:.5px;color:#8da5b9;margin-top:12px}.launch-dock{bottom:23px;left:calc(50% + 170px);width:380px;padding:8px 12px 8px 16px;background:#031423c4;border:1px solid #8197aa66;border-radius:12px}.launch-dock .launch-button{width:42px;height:42px;min-height:42px}.launch-instruction strong{font-size:11px}.launch-instruction p{font-size:9px}.camera-bar{left:28px;transform:none;bottom:20px;z-index:6;background:#071528dd;border-color:#6e879c77;border-radius:30px;padding:4px}.camera-bar button{padding:4px 12px;border-radius:25px;font-size:9px;text-transform:uppercase;letter-spacing:1px}.bottom-left{left:auto;right:160px;bottom:25px}.bottom-right{right:28px;bottom:25px}.scene-controls{right:28px;bottom:110px}.flight-dock{left:50%;bottom:25px;transform:translateX(-50%);border-radius:40px;background:#081528ba;border-color:#a8b8cd66}.flight-buttons button{border:1px solid #c9d6e3bb;background:#15203366;border-radius:50%;font-size:25px;width:55px;height:55px}.flight-buttons small{font-size:7px;letter-spacing:1px}.fuel-dots i{background:#ffd35b;box-shadow:0 0 8px #ffbc4b88}.fuel-dots i.empty{background:transparent;box-shadow:none;border:1px solid #a9b3c16b}#minimap{left:auto;right:28px;bottom:110px;width:250px;height:165px;border-radius:23px;border-color:#a5b9dccc}.space-shade{background:linear-gradient(#01081345,transparent 24%,transparent 70%,#01081766)}
@media(max-width:700px){.hud-header{padding:9px 14px;height:56px}.reference-title{font-size:12px;letter-spacing:1.6px;white-space:normal;line-height:1.7;max-width:240px}.reference-title i{font-size:10px;letter-spacing:1px;margin-left:0;display:block}.hud-actions .round{width:31px;height:31px;min-height:31px}.hud-actions [data-action=briefing],.hud-actions [data-action=pause]{display:none}.reference-heading{left:14px;top:72px;font-size:19px;letter-spacing:3px}.contract-strip{top:116px;left:14px;right:14px;max-width:none;font-size:8px}.target-chip{top:158px;right:14px;min-width:155px;padding:9px 12px}.route-card{left:14px;bottom:72px;width:calc(100vw - 28px);padding:13px 14px 10px;border-radius:16px}.route-card h2{font-size:18px;padding-bottom:7px}.route-card>span{font-size:8px}.route-facts{padding:5px 0 8px;display:flex;gap:14px}.route-facts p{font-size:10px;line-height:1.5}.route-actions{padding-top:8px}.route-actions button{min-height:39px;font-size:10px}.route-confirm{margin-top:8px}.route-confirm .confirm-route{font-size:11px;padding:11px 13px}.route-card>small{font-size:7px;margin-top:7px}.launch-dock{display:none}.camera-bar{bottom:16px;left:14px;max-width:215px}.camera-bar button{font-size:7px;padding:5px 9px}.bottom-left{left:auto;right:60px;bottom:13px}.bottom-left .workshop-button{display:none}.bottom-right{right:14px;bottom:13px}.bottom-right [data-action=hint]{display:none}.bottom-right .round{height:36px;width:36px;min-height:36px}.scene-controls{right:14px;bottom:330px;gap:5px}.scene-controls .round{width:33px;height:33px;min-height:33px}#minimap{right:14px;bottom:145px;width:150px;height:98px}.flight-dock{bottom:70px;width:calc(100vw - 28px);padding:10px}.flight-buttons button{width:44px;height:44px;min-height:44px}.fuel-label{width:55px}.game[data-mode=flying] .target-chip{top:158px}.game[data-mode=flying] .scene-controls{bottom:260px}.mission-copy{top:158px}}
.route-change{float:right;font:8px var(--mono);letter-spacing:1px;color:#a4f4a8;min-height:20px;padding:0}.approach-heading{display:none}
@media(min-width:851px){.game[data-camera=destination][data-mode=planning] .reference-heading{left:28px}.game[data-camera=destination][data-mode=planning] .approach-heading{display:block;position:absolute;left:calc(42% + 25px);top:77px;font-size:25px;font-weight:700;letter-spacing:4px;z-index:3}.approach-heading small{font-size:8px;letter-spacing:1.5px;font-weight:400;display:block;margin-top:8px;color:#bec8db}.game[data-camera=destination][data-mode=planning] .space-shade:after{content:'';position:absolute;left:42%;top:58px;bottom:0;border-left:1px solid #8bb4d68a}.game[data-camera=destination][data-mode=planning] .route-card{width:calc(42% - 48px)}.game[data-camera=destination][data-mode=planning] .target-chip{display:none}.game[data-camera=destination][data-mode=planning] .launch-dock{display:none}.game[data-camera=destination][data-mode=planning] .camera-bar{bottom:18px}.game[data-camera=destination][data-mode=planning] .body-tag{font-size:9px}.game[data-camera=destination][data-mode=planning] .contract-strip{max-width:calc(42% - 48px);font-size:9px}}
.hud-actions [data-action=assist][aria-pressed=true]{color:#b5ffbd;border-color:#b5ffbd88;box-shadow:inset 0 0 9px #66c98233}
@media(max-width:700px){.camera-bar{max-width:none;width:calc(100vw - 125px)}.camera-bar button{font-size:6px;padding:5px 7px}.reference-heading{font-size:17px;letter-spacing:2px}.route-confirm .confirm-route{font-size:10px}}
/* One view at a time. Planning prepares the flight; live flight is the game. */
.approach-heading{display:none!important}.space-shade:after{display:none!important}.launch-dock{display:none!important}.reference-heading{font-size:19px;letter-spacing:2px}.contract-strip{top:122px;padding:9px 12px;border-radius:9px;font-size:9px;max-width:360px}.route-card{width:310px;bottom:28px;left:24px;padding:16px;border-color:#a8bbc24d;background:#0a1926e3;border-radius:16px;box-shadow:0 12px 40px #0005}.route-card>span{font-size:9px;letter-spacing:1.4px;color:#a7bdca}.route-card h2{font-size:19px;letter-spacing:0;font-weight:550;padding-bottom:10px}.route-card h2 i{margin:0 5px}.route-facts{display:flex;flex-wrap:wrap;gap:4px 12px;padding:9px 0}.route-facts p{font-size:10px;letter-spacing:0}.aim-readout{display:flex;gap:22px;padding:11px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.aim-readout span{font:8px var(--mono);letter-spacing:1px;color:#9db3c3;display:flex;align-items:center;gap:10px}.aim-readout b{color:#f1f5f7;font:14px var(--font);letter-spacing:0}.route-confirm{margin-top:12px;justify-content:flex-end}.route-confirm>button:first-child:not([hidden]){margin-right:auto;color:#a7b8c5;font-size:9px}.route-confirm .confirm-route{min-width:130px;font-size:12px;background:#eabf79;border:1px solid #f1d5a4;box-shadow:none;min-height:43px;border-radius:10px;color:#15222c}.route-card>small{font-size:9px;line-height:1.6;letter-spacing:0;color:#a1b5c4;margin-top:11px}.bottom-left{left:354px;right:auto;bottom:28px;gap:8px}.bottom-right{right:24px;bottom:28px}.camera-bar{left:50%;transform:translateX(-50%);bottom:172px;border-radius:30px;padding:3px}.camera-bar button{min-height:28px;font-size:8px;padding:6px 13px}.target-chip{top:82px;right:24px;padding:10px 14px;background:#071724bd;border-color:#a7bcc33d;min-width:170px}.scene-controls{right:24px;bottom:108px}.scene-controls .round{width:35px;height:35px;min-height:35px;border-radius:12px}.flight-dock{left:24px;right:24px;bottom:24px;transform:none;width:auto;display:grid;grid-template-columns:160px minmax(140px,220px) 180px;align-items:end;justify-content:space-between;gap:20px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;pointer-events:none}.flight-dock>*{pointer-events:auto}.live-stick{position:relative;width:142px;height:142px;touch-action:none;user-select:none;border-radius:50%;background:radial-gradient(#273b4b99,#091827b3);border:1px solid #a4c1cf6b;box-shadow:inset 0 0 20px #06101dcc,0 7px 30px #0004}.stick-ring{position:absolute;inset:15px;border:1px dashed #b0ced139;border-radius:50%;pointer-events:none}.stick-cross:before,.stick-cross:after{content:'';position:absolute;background:#bed7df2b;pointer-events:none}.stick-cross:before{left:50%;top:16px;bottom:16px;width:1px}.stick-cross:after{top:50%;left:16px;right:16px;height:1px}.stick-knob{position:absolute;left:50%;top:50%;width:49px;height:49px;transform:translate(-50%,-50%);background:radial-gradient(at 35% 25%,#aec8d1,#597282 70%);border:1px solid #c6dde49c;border-radius:50%;box-shadow:0 5px 15px #0007,inset 0 2px 6px #e8f7ff44;pointer-events:none}.live-stick>small{position:absolute;bottom:-18px;left:0;right:0;text-align:center;font:8px var(--mono);letter-spacing:1.5px;color:#b2c6d2}.flight-telemetry{background:#071725bd;border:1px solid #a0bac344;border-radius:14px;min-width:0;padding:12px 15px;display:grid;grid-template-columns:1fr auto;gap:10px 15px;backdrop-filter:blur(12px)}.flight-telemetry .fuel-label{width:auto;min-width:0}.fuel-label>span{font-size:8px;letter-spacing:1.3px}.fuel-label strong{font-size:15px;font-weight:500}.fuel-dots{gap:4px;margin-top:8px}.fuel-dots i{width:13px;height:4px;border-radius:2px;box-shadow:none;background:#e4c38c}.live-speed{display:flex;flex-direction:column;text-align:right;justify-content:center;gap:4px}.live-speed>span{font:7px var(--mono);letter-spacing:1px;color:#9cb5c6}.live-speed b{font-size:20px;font-weight:500}.flight-telemetry p{grid-column:1/-1;font-size:8px;line-height:1.5;color:#a4bdc9;max-width:190px}.live-throttle{display:flex;gap:12px;align-items:end;justify-content:flex-end}.live-throttle button{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:76px;min-height:96px;border:1px solid #d9bd8e8c;border-radius:23px;background:#342b20bd;touch-action:none;user-select:none;box-shadow:inset 0 0 15px #e6b85c13,0 8px 20px #0004}.live-throttle button span:not(.brake-icon){font-size:9px;letter-spacing:1px;font-weight:650}.live-throttle button small{font-size:6px;letter-spacing:1px;color:#bbc3c9}.live-throttle svg{height:25px;width:25px;color:#f1d19c}.live-throttle button[data-throttle='-1']{border-color:#a8ccdd6b;background:#122533bd}.brake-icon{font-size:29px;color:#c2dfec;height:29px;line-height:1}.live-throttle button.held{background:#b2752bbd;box-shadow:inset 0 0 22px #ffd58d66,0 0 20px #e6af5744;border-color:#ffdb9c}.live-throttle button[data-throttle='-1'].held{background:#23566fbd;border-color:#acf1ff;box-shadow:inset 0 0 20px #7bd9ef44}.game[data-mode=flying] .bottom-left,.game[data-mode=paused] .bottom-left,.game[data-mode=resolving] .bottom-left{display:none}.game[data-mode=flying] .bottom-right,.game[data-mode=paused] .bottom-right,.game[data-mode=resolving] .bottom-right{bottom:190px}.game[data-mode=flying] .scene-controls,.game[data-mode=paused] .scene-controls{bottom:260px}#minimap{right:24px;left:auto;top:173px;bottom:auto;width:190px;height:124px;border-radius:14px;border-color:#a7bcc34d;opacity:.9}.flight-alert{position:absolute;z-index:7;left:50%;top:38%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;width:min(580px,80vw);text-shadow:0 3px 22px #000,0 1px 3px #000}.flight-alert strong{display:block;font-size:clamp(26px,4vw,50px);letter-spacing:4px;font-weight:750;color:#ffbc9a}.flight-alert span{display:block;margin:12px auto 0;font-size:13px;line-height:1.8;max-width:400px;color:#f5ddd1}.flight-alert[data-result=delivered] strong{color:#baf5c7}.game[data-mode=resolving] .contract-strip,.game[data-mode=resolving] .camera-bar,.game[data-mode=resolving] .reference-heading{display:none}.flight-alert[data-result=lost] strong,.flight-alert[data-result=timeout] strong{color:#b8daf3}.game[data-mode=flying] .reference-heading{font-size:15px;letter-spacing:3px}.game[data-mode=flying] .contract-strip{font-size:8px;padding:8px 10px}.hud-header:after{display:none}
@media(max-width:700px){.route-card{left:14px;bottom:73px;width:calc(100vw - 28px);padding:13px 14px}.route-card h2{font-size:18px;padding-bottom:7px}.route-facts{padding:6px 0}.aim-readout{padding:8px 0;gap:25px}.route-confirm{margin-top:8px}.route-card>small{font-size:8px;line-height:1.5;margin-top:8px;min-height:12px}.bottom-left{left:14px;right:auto;bottom:14px}.bottom-left .workshop-button{display:grid}.bottom-right{right:14px;bottom:14px}.bottom-right [data-action=hint]{display:grid}.scene-controls{right:14px;bottom:330px}.target-chip{top:77px;right:14px;min-width:155px}.reference-heading{top:76px;font-size:16px;max-width:200px}.contract-strip{top:117px;left:14px;right:14px;max-width:none;font-size:8px}.flight-dock{left:14px;right:14px;bottom:28px;width:auto;grid-template-columns:90px minmax(72px,1fr) 94px;gap:9px;align-items:end}.live-stick{width:88px;height:88px}.stick-ring{inset:10px}.stick-knob{width:34px;height:34px}.live-stick>small{font-size:6px;letter-spacing:1px;bottom:-15px}.flight-telemetry{padding:8px;gap:6px;display:flex;flex-wrap:wrap;justify-content:space-between;border-radius:11px}.flight-telemetry p{font-size:7px;line-height:1.5;width:100%;margin-top:2px}.fuel-label strong{font-size:12px}.fuel-label>span{font-size:6px}.fuel-dots{gap:2px}.fuel-dots i{width:8px;height:3px}.live-speed span{font-size:6px}.live-speed b{font-size:14px}.live-throttle{gap:6px;flex-wrap:wrap;justify-content:flex-end}.live-throttle button{width:44px;min-height:75px;border-radius:15px;gap:4px}.live-throttle button span:not(.brake-icon){font-size:6px;letter-spacing:.5px}.live-throttle button small{font-size:5px}.live-throttle svg{width:22px;height:22px}.live-throttle .brake-icon{font-size:24px;height:24px}.camera-bar{bottom:148px;left:50%;transform:translateX(-50%);max-width:230px;width:auto}.camera-bar button{font-size:7px;padding:5px 10px;min-height:27px}#minimap{right:14px;top:163px;width:130px;height:85px}.game[data-mode=flying] .target-chip{top:77px;min-width:150px}.game[data-mode=flying] .reference-heading{font-size:12px;max-width:130px}.game[data-mode=flying] .contract-strip{top:123px;font-size:7px;max-width:190px;right:auto;gap:8px}.game[data-mode=flying] .bottom-right,.game[data-mode=paused] .bottom-right{bottom:200px}.game[data-mode=flying] .scene-controls,.game[data-mode=paused] .scene-controls{bottom:260px}.flight-alert{width:85vw;top:36%}.flight-alert strong{font-size:25px;letter-spacing:2px}.flight-alert span{font-size:11px}}
@media(min-width:701px){.game[data-mode=planning] .route-card{top:184px;bottom:auto}.game[data-mode=planning] .bottom-left{left:24px;bottom:24px}.game[data-mode=planning] .route-card{width:292px}.game[data-mode=planning] .route-card h2{font-size:18px}}
@media(max-width:700px){.game[data-mode=planning] .space-stage{height:calc(100dvh - 280px);min-height:270px;bottom:auto}.game[data-mode=planning] .route-card{bottom:70px}.game[data-mode=success] .reference-heading,.game[data-mode=failure] .reference-heading{display:none}}
.game[data-mode=success] .reference-heading,.game[data-mode=failure] .reference-heading{display:none}

/* An upward expedition, with the next playable stop near the bottom. */
dialog.journey-dialog{width:min(920px,100vw);height:100dvh;max-height:100dvh;border-radius:0;padding:22px 28px}.journey-scroll{border-radius:14px}.journey-status{line-height:1.6}.journey-node .mini-world{box-shadow:inset -8px -7px 14px #071727aa,0 0 0 1px #b7dfdb44,0 7px 18px #0008}.journey-node.locked{cursor:default}.journey-node.current:after{border-width:3px}.journey-galaxy{padding:6px;line-height:1.15}.journey-galaxy b{font-size:12px}.journey-galaxy span{font-size:7px}.live-speed b{white-space:nowrap}
@media(max-width:700px){dialog.journey-dialog{width:100vw;padding:16px 12px}.journey-node{width:62px;height:62px;min-height:62px}.journey-node em{top:-24px}.journey-galaxy{left:6px;right:6px}.journey-footer button{min-height:44px}.game[data-mode=flying] .contract-strip{max-width:165px;overflow:hidden;white-space:nowrap}}

.brand{width:auto;min-width:0;gap:10px;display:flex;align-items:center}.brand-mark{width:30px;height:30px;border-radius:8px;flex:none}.brand .reference-title{display:block!important}.brand:focus-visible{outline:2px solid var(--peach);outline-offset:5px;border-radius:6px}
@media(max-width:700px){.brand{width:auto;max-width:220px;letter-spacing:1px;gap:8px}.brand .reference-title{display:block!important;font-size:10px;letter-spacing:1px;line-height:1.6}.brand .reference-title i{display:block;font-size:8px}.brand-mark{width:28px;height:28px}.hud-header{gap:8px}.hud-actions{gap:5px}.hud-actions .round{width:34px;height:34px;min-height:34px}.about-hero{gap:12px}.app-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:370px){.brand .reference-title{font-size:8px;letter-spacing:.5px}.brand{gap:5px}.brand-mark{width:24px;height:24px}}
/* Orbix: tactile expedition controls and illustrated game panels. */
:root{--font:'Trebuchet MS',system-ui,sans-serif;--peach:#ffd582}
button,a{ -webkit-tap-highlight-color:transparent }button{transition:filter .15s,transform .12s,box-shadow .15s}button:hover:not(:disabled){filter:brightness(1.12)}button:active:not(:disabled){filter:brightness(.95)}
.round,.small-round{border-radius:50%;background:radial-gradient(circle at 30% 20%,#476386,#1c3553 70%);border:2px solid #9dc5e64f;box-shadow:inset 0 2px 2px #e9f4ff3b,0 3px 0 #091426,0 5px 12px #0006;color:#e8f2ff}.round:active{transform:translateY(2px);box-shadow:inset 0 2px 5px #0004,0 1px 0 #091426}
.primary,.confirm-route,.launch-button{background:linear-gradient(#ffe4a1,#ffc35d 55%,#f4a641);border:2px solid #ffedba;box-shadow:inset 0 2px 2px #fff8,0 5px 0 #a86425,0 7px 17px #0007;border-radius:18px;color:#453018!important;font-weight:800;text-shadow:0 1px #fff6}.primary:active,.confirm-route:active{transform:translateY(3px);box-shadow:inset 0 2px 4px #bb852e66,0 2px 0 #a86425}.primary:hover:not(:disabled){background:linear-gradient(#fff0bf,#ffd278 60%,#ffba55)}
.route-card,.inspector,.result-card,.pause-card,dialog{border:2px solid #8eaecb78;border-radius:25px;background:linear-gradient(155deg,#294a6bed,#142942f5 48%,#0b1b31fa);box-shadow:inset 0 2px 0 #bce2ff35,0 7px 0 #071526,0 22px 55px #0009}.route-card h2,.dialog-head h2,.result-card h2,.pause-card h2{font-weight:800;color:#fff2d1;text-shadow:0 2px 0 #081829;letter-spacing:.1px}.route-card .route-change{border:1px solid #a5d3ec55;border-radius:10px;padding:6px;background:#214464}.route-facts{color:#d0e6ee}.route-status{color:#c2d6e9!important}
dialog{background-image:linear-gradient(#152d4bee,#102138f5),url('/journey-space.svg');background-size:cover}.dialog-head{padding-bottom:14px;border-bottom:1px solid #b6d7e52b}.dialog-head .overline{color:#ffdb93;letter-spacing:2px}.dialog-head h2{font-size:28px}.setting{background:#38608426;padding:14px 12px;border-radius:13px;margin:7px 0;border:1px solid #82adce20}.app-actions button,.part-options button,.target-option button{border-radius:14px;border:1px solid #94c7e66b;background:linear-gradient(#41678b,#244665);box-shadow:inset 0 1px #d0eeff44,0 3px 0 #0b2339;min-height:46px;color:#eaf5ff;font-weight:700}.app-actions button:active,.target-option button:active{transform:translateY(2px)}.app-actions{gap:11px}.legal-links{justify-content:center;gap:18px}.about-hero{background:#06213a77;border-radius:18px;padding:15px;border:1px solid #a2d9ec33}.about-hero img{filter:drop-shadow(0 5px 8px #0006)}
dialog.journey-dialog{max-width:960px;background:linear-gradient(#122b4bf5,#0a1b34f5);border-color:#8eafcf77}.journey-scroll{background-image:linear-gradient(#10244622,#14254855),url('/journey-space.svg');background-size:100% auto;border:2px solid #57769577;box-shadow:inset 0 0 50px #050e2990}.journey{max-width:660px;background:none}.journey-path{stroke:#c1b9ed77;stroke-width:1.2;stroke-dasharray:1.7 1.5;filter:drop-shadow(0 2px 2px #020b2490)}.journey-node{width:76px;height:76px;min-height:76px;border:3px solid #9ee0db;border-radius:50%;box-shadow:inset 0 -6px 2px #08345388,0 7px 0 #102c4d,0 11px 20px #020b27a0;background:radial-gradient(circle at 33% 20%,#aaf0de,#459c9c 40%,#285777 75%);color:white}.journey-node .mini-world{inset:0;border-radius:50%;background:radial-gradient(ellipse at 30% 25%,#b2f0d3,#3b9b9d 38%,#1d4c78 80%);opacity:.72;box-shadow:inset -10px -10px 12px #061d4599}.journey-node .mini-world:before{border-top:6px solid #dcece688;border-bottom:4px solid #dcece650;inset:15px 5px 20px;transform:rotate(-25deg)}.journey-node strong{font-size:23px;font-weight:900;letter-spacing:-1px;text-shadow:0 2px 0 #103655,0 3px 8px #001}.journey-node small{top:66px;background:#0b2443e8;border:1px solid #709acb77;padding:3px 7px;border-radius:10px;color:#ffe395;font-size:10px}.journey-node.current{border-color:#ffe9a0;box-shadow:inset 0 3px #fff8,0 7px 0 #96652d,0 0 25px #ffe7a355;background:linear-gradient(#ffe9aa,#f7af4a)}.journey-node.current:after{inset:-9px;border:2px dashed #ffe8aa;box-shadow:0 0 20px #ffda8b44}.journey-node.current em{background:#153554ed;padding:7px 10px;border-radius:10px;border:1px solid #ffc87188;font-weight:800;left:90px;top:17px;white-space:nowrap;width:auto;color:#ffe1a2}.journey-node.locked{border-color:#737fa37a;box-shadow:inset 0 2px #d7e4ff1f,0 5px 0 #111f3e,0 9px 13px #020a2580;background:#455578}.journey-node.locked .mini-world{filter:saturate(.35);opacity:.6}.journey-node.complete{border-color:#afefcd}.journey-node:hover:not(.locked){transform:translate(-50%,-50%) scale(1.07)}.journey-galaxy{background:linear-gradient(90deg,transparent,#345174d9,transparent);border-top:1px solid #b1d1ee33;border-bottom:1px solid #b1d1ee22;z-index:0}.journey-galaxy b{font-weight:800;color:#e1efff}.journey-toolbar button,.journey-footer button{border:1px solid #a2c3e766;border-radius:14px;background:linear-gradient(#365e85,#1c3d60);padding:10px 16px;box-shadow:inset 0 1px #d7edff33,0 3px 0 #071c34;font-weight:700}.journey-footer button:disabled{opacity:.35}.journey-status{text-align:center;color:#b9d4ed}.journey-toolbar{font-weight:700;color:#ffe8ad}.journey-footer{padding-top:7px}.journey-dialog .dialog-head{text-align:center}.journey-dialog .dialog-head>div{flex:1}
.flight-dock{grid-template-columns:170px 220px 170px;gap:25px;bottom:28px}.live-stick{width:160px;height:160px;background:radial-gradient(circle,#33506a,#152d45 55%,#71879a 56%,#b5c3c9 58%,#324a60 61%,#172e46 65%,#071a2a 70%);border:3px solid #a4c2d27a;box-shadow:inset 0 3px 8px #0008,0 6px 0 #061322,0 10px 20px #0006;overflow:visible}.stick-knob{width:48px;height:48px;background:radial-gradient(circle at 30% 20%,#c8e3e9,#7198aa 55%,#29495f);border:2px solid #b3d4dc99;box-shadow:0 5px 0 #102b3c,0 9px 13px #0009}.live-stick>small{bottom:-21px;font-size:9px;font-weight:800;color:#c4dfeb;letter-spacing:1px}.orbit-trim{position:absolute;top:49px;width:48px;height:52px;border-radius:50%;border:2px solid #99c4d5;background:linear-gradient(#4d7491,#284861);box-shadow:inset 0 2px #ccecff55,0 4px 0 #061d30;z-index:3;padding:9px;touch-action:none}.orbit-trim svg{width:100%;height:100%;fill:none;stroke:#fff0bd;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}.trim-left{left:-17px}.trim-right{right:-17px}.orbit-trim.held{background:linear-gradient(#ffe9a3,#dc9d49);border-color:#ffecc3;transform:translateY(3px)}.orbit-trim.held svg{stroke:#4a3623}.orbit-trim:disabled{opacity:.4}.live-throttle button{border-radius:20px;border:2px solid #a6c7db9c;box-shadow:inset 0 2px #ecf8ff3b,0 5px 0 #07182a;background:linear-gradient(#426181,#263e5e)}.live-throttle button[data-throttle="1"]{border-color:#f0d39b;background:linear-gradient(#997545,#5f492c)}.live-throttle button.held{transform:translateY(3px);box-shadow:inset 0 2px 7px #0018,0 2px 0 #07182a}.flight-telemetry{background:linear-gradient(#1a3552e6,#10273be8);border:2px solid #89b2cf66;border-radius:18px;box-shadow:inset 0 2px #d4efff22,0 4px 0 #06182a}.camera-bar{bottom:212px;box-shadow:0 3px 0 #06182a;border:1px solid #87b6d177;background:#142f49}.camera-bar button[aria-pressed=true]{background:linear-gradient(#688aaa,#3f6384);color:#fff4cf}
.approach-hud{position:absolute;z-index:4;left:26px;top:177px;width:230px;padding:13px 15px;border-radius:17px;border:1px solid #94c6df77;background:linear-gradient(130deg,#183e59e8,#0a2136dd);box-shadow:inset 0 1px #c4f0ff33,0 4px 0 #06172a;pointer-events:none}.approach-hud>strong{font-size:12px;color:#ffe5a5;letter-spacing:1.5px}.approach-hud>div:not(.alignment-track){display:flex;gap:22px;margin-top:13px}.approach-hud span{display:block;font-size:7px;color:#a3c7df;letter-spacing:1px}.approach-hud b{display:block;font-size:15px;color:#eff8ff;margin-top:5px;letter-spacing:0}.approach-hud p{font-size:10px;line-height:1.6;color:#b9d6e7;margin:11px 0}.alignment-track{height:5px;border-radius:10px;background:linear-gradient(90deg,#73553a,#73c5ac 42%,#73c5ac 58%,#73553a);position:relative}.alignment-track i{position:absolute;top:-3px;width:4px;height:11px;background:#fff0be;box-shadow:0 0 8px #fceeb2;border-radius:2px;transition:left .15s}.approach-hud[data-phase=clouds]{border-color:#d9f2ff}.approach-hud[data-phase=landing]{border-color:#bdf5cf;box-shadow:0 0 22px #76edb322}
@media(max-width:700px){.flight-dock{grid-template-columns:112px minmax(75px,1fr) 94px;gap:12px;bottom:27px;left:20px;right:14px}.live-stick{width:105px;height:105px}.stick-knob{width:36px;height:36px}.orbit-trim{top:31px;width:35px;height:40px;padding:7px}.trim-left{left:-13px}.trim-right{right:-13px}.live-stick>small{font-size:6px;bottom:-17px}.live-throttle button{border-radius:14px}.flight-telemetry{padding:7px;border-radius:13px}.camera-bar{bottom:163px}.camera-bar button{font-size:7px}.approach-hud{left:12px;top:172px;width:155px;padding:10px}.approach-hud>strong{font-size:9px;letter-spacing:.5px}.approach-hud>div:not(.alignment-track){gap:13px;margin-top:9px}.approach-hud b{font-size:12px}.approach-hud p{font-size:8px;margin:8px 0}.approach-hud span{font-size:6px}.journey-node{width:64px;height:64px;min-height:64px;border-width:2px}.journey-node strong{font-size:20px}.journey-node small{top:55px;font-size:8px}.journey-node.current em{top:-30px;left:50%;transform:translateX(-50%);font-size:7px}.journey-toolbar button{padding:8px;font-size:9px}.journey-footer button{padding:8px;font-size:9px}.dialog-head h2{font-size:25px}}
@media(max-width:350px){.flight-dock{grid-template-columns:100px minmax(65px,1fr) 82px;gap:9px;left:14px;right:9px}.live-stick{width:94px;height:94px}.orbit-trim{top:25px}.live-throttle{gap:5px}.live-throttle button{width:38px;padding:7px 3px}.flight-telemetry .live-speed b{font-size:10px}.flight-telemetry p{font-size:6px}.fuel-label strong{font-size:10px}.journey-toolbar small{display:none}}
@media(max-height:550px) and (min-width:701px){.flight-dock{bottom:20px;grid-template-columns:110px 180px 150px}.live-stick{width:100px;height:100px}.orbit-trim{top:25px;width:40px;height:44px}.camera-bar{bottom:150px}.approach-hud{top:105px;width:180px}.game[data-mode=flying] .contract-strip{display:none}.game[data-mode=planning] .route-card{top:140px;padding:12px}.game[data-mode=planning] .contract-strip{top:99px}}
/* Only the individual controls have glass; the flight viewport stays clear. */
.flight-dock{backdrop-filter:none;max-width:none}
