@font-face{font-family:Inter;src:url(./inter-Dx4kXJAl.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Jost;src:url(./jost-ObQm3Zd1.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--ui:#cfe9ff;--ui-dim:#cfe9ff8c;--ui-line:#96d7ff59;--ui-panel:#08101c6b;--accent:#7fe0ff;--warm:#ffb45e;--danger:#ff5a48;--good:#7dffb0;--font:"Inter", "Segoe UI", system-ui, sans-serif;--display:"Jost", var(--font)}html,body{height:100%;color:var(--ui);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;overscroll-behavior:none;background:#000;margin:0;overflow:hidden}#app canvas{display:block}#ui{pointer-events:none;z-index:2;position:fixed;inset:0}:root{--z:1}@media (min-width:2400px) and (min-height:1300px){:root{--z:1.25}}@media (min-width:3200px) and (min-height:1800px){:root{--z:1.5}}.hud-tl,.hud-center,.target-info,.prompt,.hint,.banner,.center-msg,.hud-bottom,.feed,.dcard,.photo-hint,.photo-status,.marker>*,.menus .screen>*,.gmap-title,.gmap-legend,.gmap-info{zoom:var(--z)}.loc-system,.loc-body,.obj-title,.ti-name,.prompt,kbd,.photo-hint b,.photo-status,.banner,.center-msg,.flight-mode,.readout,.suit-label,.feed-item,.marker-label,.dcard-kicker,.dcard-name,.dcard-tags{font-family:var(--display)}.hud{--ui-dim:#daeeffcc;text-shadow:0 0 2px #000000bf,0 1px 3px #000000e6,0 0 12px #0006;position:absolute;inset:0}.hud-tl{max-width:min(380px, calc(100vw / var(--z) - 56px));position:absolute;top:22px;left:28px}.loc-system{letter-spacing:.2em;text-transform:uppercase;color:var(--ui-dim);font-size:12px;font-weight:500}.loc-body{letter-spacing:.02em;font-size:26px;font-weight:500;line-height:1.15}.loc-sub{color:var(--ui-dim);letter-spacing:.01em;font-size:13px}.objective{border-left:2px solid var(--warm);background:linear-gradient(90deg,#140e0673,#0000);margin-top:16px;padding:8px 12px 10px}.obj-title{color:var(--warm);letter-spacing:.16em;text-transform:uppercase;font-size:12.5px;font-weight:600}.obj-text{color:#f3e7d6;font-size:13.5px;line-height:1.45}.obj-text b{color:#fff}.obj-text .done{color:var(--good)}.hud-center{width:0;height:0;position:absolute;top:50%;left:50%}.crosshair{background:#e6f5ffd9;border-radius:50%;width:6px;height:6px;position:absolute;top:-3px;left:-3px;box-shadow:0 0 6px #78dcffe6}.hud[data-orbit="1"] .crosshair{display:none}.hud[data-mode=ship] .crosshair{width:24px;height:24px;box-shadow:none;background:0 0;border:2px solid #c8f0ff99;top:-14px;left:-14px}.nose{border:2px solid var(--warm);transform-origin:50%;width:10px;height:10px;display:none;position:absolute;top:-5px;left:-5px;rotate:45deg}.hud:not([data-mode=ship]) .nose{display:none!important}.fpm{width:0;height:0;display:none;position:absolute;top:50%;left:50%}.fpm:before,.fpm:after{content:"";position:absolute}.fpm:before{border:2px solid #9dffb0d9;border-radius:50%;width:8px;height:8px;top:-6px;left:-6px}.fpm:after{background:linear-gradient(90deg,#9dffb0d9 30%,#0000 30% 70%,#9dffb0d9 70%);width:32px;height:2px;top:-1px;left:-16px}.hud:not([data-mode=ship]) .fpm{display:none!important}.scan-ring{opacity:0;border:2px solid #78e6ffe6;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;position:absolute;top:0;left:0}.scan-ring.go{animation:1.4s ease-out scanring}@keyframes scanring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(60)}}.target-info{opacity:0;min-width:160px;transition:opacity .2s;position:absolute;top:calc(50% + 14px);left:calc(50% + 34px)}.target-info.show{opacity:1}.ti-name{font-size:16px;font-weight:500}.ti-sub{color:var(--ui-dim);letter-spacing:.02em;font-size:12px}.ti-bar{width:150px;margin-top:4px}.prompt{letter-spacing:.05em;background:var(--ui-panel);border:1px solid var(--ui-line);opacity:0;width:max-content;max-width:calc(100vw / var(--z) - 32px);box-sizing:border-box;text-align:center;border-radius:3px;padding:6px 16px;font-size:16px;font-weight:500;transition:opacity .15s;position:absolute;top:62%;left:50%;transform:translate(-50%)}.prompt.show{opacity:1}.hud[data-mode=ship] .prompt{top:auto;bottom:150px}kbd{color:#0b1522;background:var(--ui);text-align:center;min-width:18px;text-shadow:none;border-radius:2px;margin-right:6px;padding:0 6px;font-family:inherit;font-size:.9em;font-weight:600;display:inline-block}.hint{max-width:300px;color:var(--ui-dim);text-align:right;opacity:0;font-size:13px;line-height:1.8;transition:opacity .4s;position:absolute;top:24px;right:28px}.hint.show{opacity:1}.dcard.show~.hint{opacity:0}.photo-hint{box-sizing:border-box;text-align:center;width:max-content;max-width:calc(100vw - 40px);color:var(--ui-dim);background:var(--ui-panel);border:1px solid var(--ui-line);text-shadow:0 1px 3px #000c;opacity:0;border-radius:3px;padding:6px 14px;font-size:13px;line-height:1.9;transition:opacity .6s;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.photo-hint.show{opacity:1}.photo-hint b{color:var(--ui);letter-spacing:.12em;text-transform:uppercase}.photo-hint span{white-space:nowrap;margin-left:16px}.photo-status{letter-spacing:.2em;text-transform:uppercase;color:var(--ui);background:var(--ui-panel);border:1px solid var(--ui-line);opacity:0;border-radius:3px;padding:4px 16px;font-size:14px;font-weight:500;transition:opacity .3s;position:absolute;top:36px;left:50%;transform:translate(-50%)}.photo-status.show{opacity:1}.banner{text-align:center;opacity:0;pointer-events:none;padding:0 16px;position:absolute;top:24%;left:0;right:0}.banner.show{animation:4s forwards banner}@keyframes banner{0%{opacity:0;letter-spacing:.5em}15%{opacity:1;letter-spacing:.28em}80%{opacity:1}to{opacity:0;letter-spacing:.26em}}.banner-title{text-transform:uppercase;letter-spacing:.28em;font-size:32px;font-weight:500}.banner-sub{letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-top:4px;font-size:14px;font-weight:500}.center-msg{letter-spacing:.22em;text-transform:uppercase;color:var(--warm);opacity:0;width:max-content;max-width:calc(100vw / var(--z) - 32px);text-align:center;font-size:15px;font-weight:500;transition:opacity .3s;position:absolute;top:38%;left:50%;transform:translate(-50%)}.center-msg.show{opacity:1}.hud-bottom{align-items:flex-end;gap:40px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.flight,.suit{display:none}.hud[data-mode=ship] .flight,.hud[data-mode=foot] .suit{display:block}.flight{text-align:center;width:260px}.flight-mode{letter-spacing:.28em;text-transform:uppercase;color:var(--accent);font-size:12px;font-weight:500}.flight.pulsing .flight-mode{color:#fff;text-shadow:0 0 12px var(--accent)}.flight-sub{letter-spacing:.02em;min-height:16px;color:var(--ui-dim);font-size:12px}.flight.orbiting .flight-mode{color:#9dffb0}.flight-row{justify-content:space-between;margin:2px 0 6px;display:flex}.readout{text-align:center;min-width:110px}.readout-val{font-variant-numeric:tabular-nums;font-size:30px;font-weight:400;line-height:1}.readout-label{letter-spacing:.2em;text-transform:uppercase;color:var(--ui-dim);font-size:11px;font-weight:500}.bar{background:#ffffff1f;height:5px;margin-top:4px;position:relative;overflow:hidden}.bar-fill{background:var(--ui);width:50%;position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 8px #a0e6ff99}.bar.energy .bar-fill{background:var(--accent)}.bar.throttle .bar-fill{background:var(--warm)}.bar.hazard .bar-fill{background:#6fd0ff}.bar.health .bar-fill{background:#ff7a6a}.bar.jet .bar-fill{background:#ffd36a}.suit{width:300px}.suit-row{align-items:center;gap:10px;margin:3px 0;display:flex}.suit-row .bar{flex:1;margin:0}.suit-label{letter-spacing:.16em;text-transform:uppercase;width:86px;color:var(--ui-dim);text-align:right;font-size:11.5px;font-weight:500}.suit-row.warn .suit-label{color:var(--danger);animation:.8s steps(2,end) infinite blink}@keyframes blink{50%{opacity:.3}}.hazard-vignette{opacity:0;background:radial-gradient(ellipse at center, #0000 55%, rgba(var(--vig), .55) 100%);transition:opacity .4s;position:absolute;inset:0}.feed{flex-direction:column;align-items:flex-end;gap:4px;display:flex;position:absolute;bottom:120px;right:28px}.feed-item{border-right:3px solid var(--c);opacity:0;background:linear-gradient(270deg,#0a121e99,#0000);padding:3px 12px;font-size:15px;font-weight:500;transition:opacity .25s,transform .25s;transform:translate(20px)}.feed-item.show{opacity:1;transform:none}.feed-item.hide{opacity:0}.feed-item .hl{color:var(--c)}.markers{position:absolute;inset:0;overflow:hidden}.marker{--mc:#cfe9ff;white-space:nowrap;position:absolute;top:0;left:0}.marker-icon{border:2px solid var(--mc);width:8px;height:8px;box-shadow:0 0 6px var(--mc);border-radius:50%;position:absolute;top:-6px;left:-6px}.marker.poi .marker-icon{border-radius:0;rotate:45deg}.marker.ship .marker-icon{border-radius:2px}.marker.signal .marker-icon{border-width:2px;width:12px;height:12px;animation:1.6s ease-in-out infinite pulse;top:-8px;left:-8px}@keyframes pulse{50%{opacity:.6;transform:scale(1.5)}}.marker-label{color:var(--mc);font-size:14px;font-weight:500;position:absolute;top:-12px;left:12px}.marker-sub{color:var(--ui-dim);font-size:11.5px;position:absolute;top:3px;left:12px}.marker.apsis .marker-icon{background:var(--mc);border-radius:50%;width:6px;height:6px;top:-5px;left:-5px}.marker.land .marker-icon{border-style:dashed;border-radius:50%;width:22px;height:22px;animation:1.6s ease-in-out infinite pulse;top:-13px;left:-13px}.prompt .dim{color:var(--ui-dim);font-weight:400}.marker.edge .marker-label,.marker.edge .marker-sub{display:none}.dcard{border:1px solid var(--ui-line);opacity:0;background:linear-gradient(#0a1422d1,#080e18b3);border-radius:3px;width:280px;padding:14px 16px 12px;transition:opacity .45s,transform .45s;position:absolute;top:150px;right:28px;transform:translate(24px);box-shadow:0 8px 30px #00000059}.dcard.show{opacity:1;transform:none}.dcard-kicker{letter-spacing:.2em;text-transform:uppercase;color:var(--warm);margin-bottom:10px;font-size:11px;font-weight:600}.dcard-head{align-items:center;gap:12px;margin-bottom:10px;display:flex}.dcard-orb{border-radius:50%;flex:none;width:46px;height:46px;box-shadow:0 0 14px #a0dcff40,inset -6px -8px 14px #00000073}.dcard-name{font-size:22px;font-weight:500;line-height:1.05}.dcard-type{color:var(--accent);letter-spacing:.02em;font-size:13px}.dcard-rows div{align-items:baseline;gap:6px;padding:2px 0;font-size:13px;display:flex}.dcard-rows div:after{content:"";border-bottom:1px dotted #96d7ff38;flex:1;order:1;min-width:12px;transform:translateY(-3px)}.dcard-rows span{color:var(--ui-dim);flex:none}.dcard-rows b{text-align:right;font-variant-numeric:tabular-nums;order:2;font-weight:500}.dcard-tags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.dcard-tags i{letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--ui-line);color:var(--ui);border-radius:2px;padding:2px 8px;font-size:11px;font-style:normal;font-weight:500}.loc-route{color:#ffd28a;margin-top:2px;font-size:13px}.loc-route b{color:#ffe6b8}@media (max-width:1100px),(max-height:700px){.dcard{width:220px;padding:10px 12px 8px;top:118px;right:14px}.dcard-name{font-size:18px}.dcard-orb{width:36px;height:36px}.dcard-rows div{padding:2px 0;font-size:13px}.dcard-rows div:nth-child(n+5),.dcard-tags{display:none}}@media (max-width:700px),(max-height:480px){.dcard-rows{display:none}.dcard-head{margin-bottom:0}}@media (max-height:500px),(max-width:600px){.hud-tl{top:12px;left:16px}.loc-system{font-size:10.5px}.loc-body{font-size:20px}.loc-sub,.loc-route{font-size:12px}.objective{margin-top:8px;padding:5px 10px 6px}.obj-title{font-size:11.5px}.obj-text{font-size:12.5px;line-height:1.35}.hud-bottom{gap:24px}.flight{width:210px}.readout{min-width:90px}.readout-val{font-size:24px}.suit{width:220px}.suit-label{width:62px;font-size:10.5px}.banner{top:20%}.banner-title{font-size:24px}.banner-sub{font-size:13px}.center-msg{letter-spacing:.16em;font-size:13.5px}.feed-item{font-size:13.5px}.ti-name{font-size:15px}.marker-label{font-size:12px}.marker-sub{font-size:11px}}.panel h2,.title-name,.pause-main h4,.controls-panel h4,.journal h4,.ctl-grid kbd,.tab,.inv-status,.res-name,.res-count,.card-title,.upg-name,.j-stat,.j-chips i,.j-lore-title,.dlg-title,.gmap-title,.gi-name,.gi-goal,.gmap-hover b,.death-title{font-family:var(--display)}.menus{pointer-events:none;position:absolute;inset:0}.menus .screen{pointer-events:auto;display:none;position:absolute;inset:0}.menus[data-open=title] .title-screen,.menus[data-open=pause] .pause-screen,.menus[data-open=inventory] .inv-screen,.menus[data-open=dialog] .dialog-screen,.menus[data-open=death] .death-screen{justify-content:center;align-items:center;display:flex}.pause-screen,.inv-screen,.dialog-screen{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#02060c8c}.panel{max-height:calc(88vh / var(--z));background:#080f1adb;border:1px solid #96d7ff38;border-radius:3px;padding:22px 26px;overflow:auto;box-shadow:0 20px 60px #00000080}.menus .screen,.panel,.inv-body{scrollbar-width:thin;scrollbar-color:#96d7ff4d transparent}.panel.pause{width:min(960px, calc(94vw / var(--z)));grid-template-columns:330px 1fr;align-items:start;gap:34px;display:grid}.pause-main{flex-direction:column;gap:10px;display:flex}.pause-main h4,.controls-panel h4{letter-spacing:.18em;text-transform:uppercase;color:var(--warm);margin:0 0 6px;font-size:11.5px;font-weight:600}.pause-main h4{margin:14px 0 0}.panel.wide{width:min(1100px, calc(94vw / var(--z)));height:min(720px, calc(88vh / var(--z)));flex-direction:column;padding:0;display:flex}.panel h2{letter-spacing:.3em;text-transform:uppercase;margin:0 0 6px;font-size:20px;font-weight:500}.btn{letter-spacing:.04em;color:var(--ui);border:1px solid var(--ui-line);cursor:pointer;background:#14283c80;border-radius:3px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s,border-color .15s;box-shadow:inset 0 1px #ffffff0f}.btn.on{border-color:var(--accent);background:#3c78a073}@media (hover:hover){.btn:hover:not([disabled]){border-color:var(--accent);background:#3c78a073}.btn.primary:hover:not([disabled]){border-color:var(--warm);background:#8c50148c}.tab:hover,.inv-close:hover,.gmap-close:hover{color:var(--ui)}}.btn:active:not([disabled]){box-shadow:inset 0 2px 6px #00000073}.btn.primary{border-color:var(--warm);color:#ffe7c7;background:#502d0a73}.btn:focus-visible,.tab:focus-visible,.inv-close:focus-visible,.settings input:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.btn.warn,.btn.warn:hover{border-color:var(--danger);color:#ffd2cc;background:#6e18108c}.btn[disabled]{opacity:.35;cursor:default}.btn.small{padding:6px 14px;font-size:12.5px}.title-screen{--ui-dim:#d6ecffb8;box-sizing:border-box;background:radial-gradient(at 50% 60%,#0000 0%,#0000008c 100%);padding:8vh 16px;overflow-y:auto}.menus[data-open=title] .title-screen{justify-content:safe center;align-items:safe center}.title-inner{text-align:center;margin-top:calc(-6vh / var(--z))}.title-name{font-size:clamp(26px, calc(7.2vw / var(--z)), 100px);letter-spacing:.42em;color:#f4f8ff;text-shadow:0 0 40px #8cd2ff73;margin-bottom:36px;margin-right:-.42em;font-weight:300}.title-buttons{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.title-buttons .btn{min-width:170px}.save-info{letter-spacing:.02em;min-height:19px;color:var(--ui-dim);text-shadow:0 1px 6px #000000e6;margin-top:12px;font-size:13px}.save-info.warn{color:#ffb1a6}.seed-row{color:var(--ui-dim);letter-spacing:.04em;text-shadow:0 1px 6px #000000e6;justify-content:center;align-items:center;gap:10px;margin-top:10px;font-size:13px;display:flex}.seed-input{font-variant-numeric:tabular-nums;border:1px solid var(--ui-line);width:90px;color:var(--ui);text-align:center;background:#0a141e99;border-radius:3px;padding:3px 8px;font-family:inherit;font-size:14px}.seed-input:focus{border-color:var(--accent);outline:none}.title-foot{text-align:center;color:var(--ui-dim);letter-spacing:.03em;text-shadow:0 1px 6px #000000e6;font-size:12.5px;position:absolute;bottom:22px;left:16px;right:16px}@media (max-height:900px){.title-screen.ctl-open .title-foot{display:none}}.title-pwa{gap:8px;display:flex;position:absolute;top:20px;right:22px}.controls-panel{text-align:left;max-width:calc(94vw / var(--z));box-sizing:border-box;background:#060c14b3;border:1px solid #96d7ff38;border-radius:3px;flex-wrap:wrap;justify-content:center;gap:18px 34px;margin:26px auto 0;padding:16px 22px;display:flex}.controls-panel.small{background:0 0;border:none;grid-template-columns:1fr 1fr;gap:18px 26px;margin:4px 0 0;padding:0;display:grid}@media (max-height:500px){.pause-main{grid-template-columns:1fr 1fr;gap:8px;display:grid}.pause-main h2,.pause-main h4,.pause-main .settings{grid-column:1/-1}.pause-main .btn{padding:6px 10px;font-size:13px}}@media (max-width:760px){.panel.pause{grid-template-columns:1fr;gap:22px}}@media (max-width:520px){.controls-panel.small{grid-template-columns:1fr}.panel{padding:18px 16px}}.ctl-grid{grid-template-columns:auto 1fr;align-items:center;gap:5px 10px;font-size:13px;display:grid}.ctl-grid kbd{justify-self:start;min-width:22px;margin:0}.settings{gap:8px;font-size:13.5px;display:grid}.settings label{grid-template-columns:1fr 140px 42px;align-items:center;gap:10px;display:grid}.settings input{cursor:pointer;margin:0}.settings input[type=range]{appearance:none;background:0 0;width:100%;height:22px}.settings input[type=range]::-webkit-slider-runnable-track{background:#96d7ff4d;height:1px}.settings input[type=range]::-moz-range-track{background:#96d7ff4d;height:1px}.settings input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--warm);border:none;border-radius:1px;width:3px;height:16px;margin-top:-7.5px;box-shadow:0 0 8px #ffb45e73}.settings input[type=range]::-moz-range-thumb{background:var(--warm);border:none;border-radius:1px;width:3px;height:16px;box-shadow:0 0 8px #ffb45e73}.settings input[type=checkbox]{appearance:none;border:1px solid #96d7ff4d;border-radius:3px;justify-self:start;width:32px;height:18px;transition:border-color .18s,background .18s;position:relative}.settings input[type=checkbox]:after{content:"";background:#cfe9ff73;border-radius:1px;width:10px;height:10px;transition:transform .18s,background .18s;position:absolute;top:3px;left:3px}.settings input[type=checkbox]:checked{border-color:var(--warm);background:#ffb45e24}.settings input[type=checkbox]:checked:after{background:var(--warm);transform:translate(14px)}.settings output{font-variant-numeric:tabular-nums;color:var(--ui-dim);text-align:right;font-size:12.5px}.inv-head{border-bottom:1px solid #96d7ff2e;flex-wrap:wrap;align-items:center;gap:4px;padding:14px 20px 0;display:flex}.tab{letter-spacing:.16em;text-transform:uppercase;color:var(--ui-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 14px;font-family:inherit;font-size:13.5px;font-weight:500;transition:color .15s}.tab.on{color:var(--ui);border-bottom-color:var(--warm)}.inv-status{gap:18px;margin-left:auto;font-size:14px;font-weight:500;display:flex}.inv-status .data{color:#9fe8ff}.inv-status .cells{color:var(--warm)}.inv-close{color:var(--ui-dim);cursor:pointer;background:0 0;border:none;margin-left:18px;padding:4px 0;font-family:inherit;font-size:12px}.inv-body{flex:1;padding:18px 20px;overflow:auto}@media (max-width:560px){.inv-head{padding:10px 10px 0}.tab{letter-spacing:.1em;padding:8px;font-size:12.5px}.inv-body{padding:14px 12px}}.res-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.res{border-left:3px solid var(--c);background:#141e2d80;border-radius:0 3px 3px 0;padding:10px 12px 10px 44px;position:relative}.res.empty{opacity:.45}.res-icon{background:var(--c);clip-path:polygon(50% 0,100% 35%,80% 100%,20% 100%,0 35%);width:20px;height:20px;box-shadow:0 0 10px var(--c);position:absolute;top:12px;left:12px}.res-name{font-size:15px;font-weight:500}.res-count{font-variant-numeric:tabular-nums;font-size:17px;font-weight:400;position:absolute;top:9px;right:12px}.res-count span{color:var(--ui-dim);font-size:12px}.res .bar-fill{background:var(--c)}.res-desc{color:var(--ui-dim);margin-top:5px;font-size:12.5px;line-height:1.3}.cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.card{background:#141e2d80;border:1px solid #96d7ff26;border-radius:3px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.card-title{font-size:18px;font-weight:500}.card-desc{color:var(--ui-dim);font-size:13px}.card-note{color:var(--warm);font-size:12.5px}.card .btn{align-self:flex-start;margin-top:4px}.costs{flex-wrap:wrap;gap:6px;display:flex}.cost{font-variant-numeric:tabular-nums;background:#0000004d;border:1px solid #ffffff1a;border-radius:2px;padding:2px 8px;font-size:12px}.cost i{background:var(--c);width:8px;height:8px;margin-right:5px;display:inline-block;rotate:45deg}.cost em{color:var(--ui-dim);font-style:normal}.cost.short{color:#ffb1a6;border-color:#ff5a4899}.upgrades{flex-direction:column;gap:8px;display:flex}.upg{background:#141e2d80;border-radius:3px;grid-template-columns:200px 1fr 110px;align-items:center;gap:14px;padding:10px 14px;display:grid}.upg-name{font-size:16px;font-weight:500}.pips{gap:4px;margin-top:4px;display:flex}.pips i{background:#ffffff26;width:16px;height:4px}.pips i.on{background:var(--warm)}.upg-next b{font-size:14px;font-weight:600}@media (max-width:720px){.upg{grid-template-columns:1fr;gap:8px}.upg .btn{justify-self:start}}.journal{grid-template-columns:1fr 1fr 1.4fr;gap:24px;display:grid}.journal h4{letter-spacing:.18em;text-transform:uppercase;color:var(--warm);margin:0 0 8px;font-size:11.5px;font-weight:600}.j-stats{gap:10px;margin-bottom:18px;display:flex}.j-stat{background:#96d7ff0a;border:1px solid #96d7ff24;border-radius:3px;flex-direction:column;flex:1;align-items:center;padding:8px 4px;display:flex}.j-stat b{color:var(--ui);font-variant-numeric:tabular-nums;font-size:22px;font-weight:400;line-height:1.1}.j-stat span{letter-spacing:.16em;text-transform:uppercase;color:var(--ui-dim);font-size:11px;font-weight:500}.j-world{border-bottom:1px solid #ffffff0f;align-items:center;gap:12px;padding:8px 0;display:flex}.j-orb{border-radius:50%;flex:none;width:34px;height:34px;box-shadow:inset -4px -6px 10px #00000073}.j-world-text{flex-direction:column;display:flex}.j-world-text span{color:var(--ui-dim);font-size:12.5px}.j-chips{flex-wrap:wrap;gap:5px;margin-top:4px;display:flex}.j-chips i{letter-spacing:.06em;color:var(--ui-dim);border:1px solid #96d7ff40;border-radius:2px;padding:1px 7px;font-size:10.5px;font-style:normal;font-weight:500}.j-chips i.done{border-color:var(--good);color:var(--good)}.j-col h4:not(:first-child){margin-top:18px}.j-row{border-bottom:1px solid #ffffff0f;flex-direction:column;padding:4px 0;display:flex}.j-row span{color:var(--ui-dim);font-size:12.5px}.j-empty{color:var(--ui-dim);font-size:13px}.j-lore{margin-bottom:14px;font-size:13.5px;line-height:1.45}.j-lore p{margin:3px 0}.j-lore-title{color:#e6d4ff;font-size:15px;font-weight:500}.panel.dialog{width:min(620px, calc(90vw / var(--z)));text-align:left}.dlg-title{letter-spacing:.18em;text-transform:uppercase;color:#e6d4ff;margin-bottom:10px;font-size:22px;font-weight:500}.dlg-body{font-size:15px;line-height:1.65}.dlg-body i{color:#fff3d6}.dlg-reward{color:var(--good);margin:12px 0 14px;font-size:14px}.gmap{pointer-events:none;display:none;position:absolute;inset:0}.gmap.open{display:block}.gmap-title{letter-spacing:.3em;text-transform:uppercase;font-size:24px;font-weight:500;position:absolute;top:22px;left:28px}.gmap-legend{color:var(--ui-dim);font-size:13px;line-height:1.8;position:absolute;bottom:24px;left:28px}.gmap-legend i{background:var(--c);width:9px;height:9px;box-shadow:0 0 6px var(--c);border-radius:50%;margin-right:8px;display:inline-block}.gmap-legend i.ring{width:7px;height:7px;box-shadow:none;background:0 0;border:1px solid #bfe0ff}.gmap-keys{margin-top:8px}.gmap-keys kbd{margin-left:8px}.gmap-close{font:inherit;color:inherit;cursor:pointer;pointer-events:auto;background:0 0;border:none;padding:0}.gmap-close:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.gmap-info{width:320px;max-height:calc(100vh / var(--z) - 78px);pointer-events:auto;scrollbar-width:thin;scrollbar-color:#96d7ff4d transparent;background:#080f1ad1;border:1px solid #96d7ff38;border-radius:3px;flex-direction:column;gap:6px;padding:16px 18px;display:flex;position:absolute;top:22px;right:28px;overflow-y:auto}@media (max-width:720px){.gmap-title{font-size:20px;top:14px;left:16px}.gmap-info{width:auto;max-height:calc(60vh - 84px);top:50px;left:16px;right:16px}.gmap-legend{bottom:14px;left:16px}}@media (max-height:480px){.gmap-legend>div:not(.gmap-keys){display:none}}.gi-here{color:var(--ui-dim);border-bottom:1px solid #ffffff14;padding-bottom:8px;font-size:12.5px}.gi-name{color:var(--c);text-shadow:0 0 12px var(--c);font-size:24px;font-weight:500}.gi-goal{letter-spacing:.2em;text-transform:uppercase;color:#e6d4ff;vertical-align:middle;text-shadow:none;border:1px solid #b58cff;border-radius:2px;padding:1px 6px;font-size:11px;font-weight:500}.gi-row{font-size:13.5px}.gi-why{color:#ffb1a6;font-size:13px}.gi-route{color:#ffd28a;margin-top:4px;font-size:13.5px}.gi-route b{color:#ffe6b8}.gi-hint{color:var(--ui-dim);font-size:13.5px}.gi-core{color:#ffe9b0;border-top:1px solid #ffffff14;flex-direction:column;gap:6px;margin-top:8px;padding-top:8px;font-size:13px;display:flex}.gi-cells{color:var(--warm);margin-top:4px;font-size:12.5px}.gmap-info .btn{margin-top:6px}.gmap-hover{letter-spacing:.04em;color:var(--ui-dim);border:1px solid var(--ui-line);white-space:nowrap;background:#080f1ad1;border-radius:3px;padding:5px 10px 6px;font-size:12.5px;display:none;position:absolute;top:0;left:0}.gmap-hover.show{display:block}.gmap-hover b{color:var(--c);font-size:15px;font-weight:500;display:block}.fade{opacity:0;pointer-events:none;background:#000;transition:opacity .6s;position:absolute;inset:0}.death-screen{background:#28000080}.death-inner{text-align:center}.death-title{letter-spacing:.3em;text-transform:uppercase;color:var(--danger);font-size:36px;font-weight:500}.death-text{color:var(--ui);font-size:15px}@media (max-width:700px){.j-stats{flex-wrap:wrap}.j-stat{flex:30%}.journal{grid-template-columns:1fr}}:root{--sl:env(safe-area-inset-left,0px);--sr:env(safe-area-inset-right,0px);--st:env(safe-area-inset-top,0px);--sb:env(safe-area-inset-bottom,0px)}.touch .no-touch,html:not(.touch) .only-touch{display:none!important}#app,#ui{touch-action:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.menus .screen,.panel,.inv-body,.gmap-info{touch-action:pan-y;overscroll-behavior:contain}.touch-ui{pointer-events:none;display:none;position:absolute;inset:0}.touch .touch-ui:not([data-state=""]){display:block}.touch-zone{pointer-events:auto;position:absolute;inset:0}.tbtn{box-sizing:border-box;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--ui);text-shadow:0 1px 3px #000c;background:#08101c61;border:1px solid #96d7ff66;padding:0;font-size:11px;font-weight:600;transition:background .12s,border-color .12s,opacity .2s,transform .12s;position:absolute}.tbtn.on{color:#fff;border-color:var(--accent);background:#3c78a08c;transform:scale(.94)}.tbtn[hidden]{display:none}.tbtn.off{opacity:0;pointer-events:none}.tbtn.round{width:var(--s);height:var(--s);border-radius:50%}.tbtn.pill{border-radius:3px;height:40px;padding:0 16px;font-size:12px;position:static}.tbtn.icon{border-radius:3px;place-items:center;width:44px;height:44px;display:grid;position:static}.tbtn.icon svg{width:22px;height:22px}.touch-top{top:calc(10px + var(--st));right:calc(12px + var(--sr));gap:8px;display:flex;position:absolute}.touch-actions{right:var(--sr);bottom:var(--sb);width:190px;height:180px;position:absolute}.slot1{--s:76px;font-size:12px;bottom:22px;right:20px}.slot2{--s:62px;bottom:16px;right:108px}.slot3{--s:62px;bottom:108px;right:30px}.slot4{--s:50px;font-size:10px;bottom:92px;right:104px}.touch-context{right:calc(20px + var(--sr));bottom:calc(196px + var(--sb));flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute}.tbtn.ctx{color:#ffe7c7;border-color:var(--warm);background:#502d0a80;height:44px;font-size:13px;animation:.2s ease-out ctx-in}.tbtn.ctx.on{background:#8c5014a6}@keyframes ctx-in{0%{opacity:0;transform:translateY(6px)}}.ctx-note{letter-spacing:.08em;color:var(--ui-dim);text-shadow:0 1px 3px #000000e6;font-size:13px}.stick{opacity:0;pointer-events:none;background:radial-gradient(circle,#08101c4d,#08101c1f);border:1px solid #96d7ff47;border-radius:50%;width:116px;height:116px;margin:-58px 0 0 -58px;transition:opacity .15s;position:absolute;top:0;left:0}.stick:not(.active){left:calc(34px + var(--sl));top:auto;bottom:calc(30px + var(--sb));margin:0}.touch-ui:is([data-state=foot],[data-state=fly],[data-state=orbit],[data-state=photo]) .stick:not(.steer){opacity:.45}.stick.active{opacity:1!important}.stick-knob{background:#cfe9ff38;border:1px solid #cfe9ff99;border-radius:50%;width:46px;height:46px;margin:-23px 0 0 -23px;position:absolute;top:50%;left:50%}.stick.steer:not(.active){display:none}.stick.steer{border-style:dashed}.touch-photo,.shutter,.photo-exit,.touch-ui[data-state=photo] .touch-top,.touch-ui[data-state=photo] .touch-actions,.touch-ui[data-state=photo] .touch-context{display:none}.touch-ui[data-state=photo] .touch-photo{top:calc(10px + var(--st));left:calc(12px + var(--sl));right:calc(96px + var(--sr));flex-wrap:wrap;justify-content:center;gap:8px;display:flex;position:absolute}.touch-photo .tbtn.pill{height:36px;padding:0 12px}.touch-ui[data-state=photo] .photo-exit{top:calc(10px + var(--st));right:calc(12px + var(--sr));color:#ffe7c7;border-color:var(--warm);display:block;position:absolute}.touch-ui[data-state=photo] .shutter{--s:72px;right:calc(26px + var(--sr));bottom:calc(26px + var(--sb));background:#f0f8ff2e;border:3px solid #f0f8ffd9;display:block;box-shadow:inset 0 0 0 5px #08101c59}.touch .prompt,.touch .photo-hint{display:none}.touch .hud-tl{left:calc(16px + var(--sl));top:calc(12px + var(--st));max-width:min(340px,42vw)}.touch .hint{top:calc(64px + var(--st));right:calc(16px + var(--sr));max-width:260px;font-size:13px;line-height:1.5}.touch .dcard{top:calc(64px + var(--st));right:calc(14px + var(--sr))}.touch .feed{left:calc(16px + var(--sl));right:auto;bottom:calc(164px + var(--sb));align-items:flex-start}.touch .feed-item{border-right:none;border-left:3px solid var(--c);background:linear-gradient(90deg,#0a121e99,#0000);transform:translate(-20px)}.touch .feed-item.show{transform:none}.touch .feed-item:nth-last-child(n+5){display:none}.touch .hud-bottom{bottom:calc(14px + var(--sb))}.touch .photo-status{top:calc(60px + var(--st))}@media (orientation:portrait){.touch .hud-bottom{bottom:calc(262px + var(--sb))}.touch-context{left:12px;right:12px;bottom:calc(200px + var(--sb));flex-flow:wrap;justify-content:center}.touch .feed{bottom:calc(350px + var(--sb))}.touch .hud-tl{top:calc(64px + var(--st));max-width:calc(100vw - 32px)}.touch .dcard{top:calc(236px + var(--st));width:min(300px,100vw - 32px);margin:0 auto;left:0;right:0}.touch .banner{top:45%}.touch .hint{display:none}}.touch .btn{min-height:44px}.touch .btn.small{min-height:38px}.touch .tab{padding:12px 14px}.touch .inv-close{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--ui);border:1px solid var(--ui-line);border-radius:3px;margin-bottom:6px;padding:6px 14px;font-size:12px;font-weight:600}.touch .inv-close kbd{display:none}@media (max-width:560px){.touch .inv-close{order:4;margin:0 0 8px auto;padding:2px 12px;font-size:0}.touch .inv-close:before{content:"×";font-size:22px;line-height:1}.touch .inv-status{flex-basis:calc(100% - 64px);order:3;gap:14px;margin:2px 0 8px;padding:0 6px;font-size:13px}.touch .tab{padding:10px 6px}}.touch .settings label{min-height:36px}.touch .settings input[type=range]{height:32px}.touch .seed-input{padding:6px 8px;font-size:16px}.gmap-touch,.touch .gmap-keys,.touch .gmap-hover{display:none}.touch .gmap-touch{right:calc(16px + var(--sr));bottom:calc(16px + var(--sb));pointer-events:auto;gap:8px;display:flex;position:absolute}.touch .gmap-legend{left:calc(16px + var(--sl));bottom:calc(16px + var(--sb))}@media (orientation:portrait){.touch .gmap-legend{bottom:calc(66px + var(--sb))}}@media (min-width:721px){.touch .gmap-info{right:calc(16px + var(--sr));top:calc(14px + var(--st));max-height:calc(100vh - 110px)}}
