@font-face{font-family:Instrument;src:url('./shared/fonts/instrument-serif.ttf') format('truetype');font-display:swap}
@font-face{font-family:Instrument;src:url('./shared/fonts/instrument-serif-italic.ttf') format('truetype');font-style:italic;font-display:swap}
@font-face{font-family:DM;src:url('./shared/fonts/dm-sans.ttf') format('truetype');font-display:swap}
:root{--cream:#f0e7cf;--ink:#183b3f;--muted:#becac1;--line:rgba(230,221,189,.23);--sans:DM,Arial,sans-serif;--gold:#c5ad78}
body,button,select,input{font-family:var(--sans);font-weight:400}body{background:#10292f;color:var(--cream)}
button{transition:background .2s,color .2s,border-color .2s;cursor:pointer}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #dfcf9c;outline-offset:5px}
.topbar{padding:28px 36px;background:linear-gradient(#122d3848,transparent);pointer-events:none}.topbar .tools{pointer-events:auto}.brand{font-size:10px;letter-spacing:.24em;opacity:.8}.brand svg{width:25px;color:#e5d19b}.coordinates{font-size:9px;letter-spacing:.2em;opacity:.7}.tools button{border:none;background:#19383a66;font-size:10px;border-radius:0;letter-spacing:.1em;padding:10px 13px}
.start-screen{background:linear-gradient(90deg,rgba(12,33,39,.88),rgba(12,33,39,.54) 34%,rgba(12,33,39,.02) 75%);padding:0 7.5vw;align-items:center}.start-copy{width:490px;max-width:48vw;padding:0;margin-top:-1vh}.start-copy .eyebrow{font-size:9px;letter-spacing:.34em;color:#d6caab;margin-bottom:28px}.start-copy h1{font-family:Instrument,Georgia,serif;font-size:clamp(64px,7.5vw,124px);font-weight:400;letter-spacing:-.025em;line-height:.92;margin:0 0 28px;text-wrap:balance}.start-copy h1 em{font-weight:400;color:var(--cream)}.start-copy .intro{font-size:14px;font-weight:400;line-height:1.7;color:#e0e2d5;margin-bottom:32px}.primary{border-radius:0;background:transparent;color:var(--cream);border:0;border-block:1px solid var(--line);padding:15px 5px;font-size:17px;font-weight:400;min-width:280px;box-shadow:none}.primary:hover{background:#c7ba8020;border-color:#d9c999}.primary span:last-child{color:#d9cda4;font-size:18px}.start-copy .primary{width:360px;max-width:100%}.text-button{font-size:13px;color:#d6dfd5;padding:14px 5px;font-weight:400;letter-spacing:.02em}.save-copy{font-size:10px;opacity:.7}.loadline{background:#b9c4b228;height:1px;max-width:360px}.loadline i{background:#d3bb81}.start-foot{font-size:9px;letter-spacing:.16em;margin-top:25px}.start-foot span{color:#c6c9b7}.location-stamp{font-size:10px;letter-spacing:.2em;right:36px;bottom:36px;opacity:.8}.location-stamp>span{font-family:Instrument;font-size:44px;font-weight:400}
body:has(#start:not([hidden])) .topbar{visibility:hidden}body:has(#start:not([hidden])) .location-stamp{display:none}
.mission,.speed-panel,.mini,.target-marker,.keyboard-hint,.weapon-status,.combat-controls,.crosshair,.record-strip,.look-hint{display:none!important}
.camera-tools{left:36px;right:auto;bottom:28px;transform:none;border:0;background:none;padding:0;gap:20px;box-shadow:none;backdrop-filter:none}.camera-tools button{padding:7px 0;min-width:0;background:none;border:0;border-radius:0;font-size:9px;letter-spacing:.16em;color:#f0e7cf;opacity:.75}.camera-tools button:hover{opacity:1;background:none;color:#fff}.camera-tools #journalButton,.camera-tools #recoverButton{display:none}.camera-tools #displayButton{display:none}.camera-tools #lookCenter{display:none}#inventoryButton{display:inline-flex}.walk-view .camera-tools #inventoryButton{display:inline-flex}#mapShortcut{display:inline-flex}
.bottom-center{bottom:30px;gap:10px;max-width:480px}.interaction{background:#12373b90;border:1px solid #eadcb43b;border-radius:2px;box-shadow:none;backdrop-filter:blur(12px);padding:12px 18px;min-height:42px;font-size:12px;font-weight:400;color:#f0eadb}.interaction kbd{font-family:DM;color:#e8d8aa;border-color:#e8d8aa66;margin-left:15px}#notice{font-size:11px;border:0;border-radius:2px;background:#1b373acc;box-shadow:none;padding:10px 16px;line-height:1.5}#notice:not(.show){display:none}#touchControls{display:none!important}
#transition{background:#102d33e8;backdrop-filter:blur(12px)}#transition h2{font-family:Instrument;font-size:64px;font-weight:400;letter-spacing:-.02em}#transitionKicker{font-size:9px;letter-spacing:.3em;color:#c8b580}.transition-line{background:#c5ba8330}.transition-line i{background:#c5ad78}
dialog{border-radius:0;box-shadow:0 25px 100px #0008;color:var(--cream);border:1px solid #e3d9b62b;background:#18373bd9;backdrop-filter:blur(28px)}dialog::backdrop{background:#06191f7d;backdrop-filter:blur(5px)}dialog h2{font-family:Instrument,Georgia,serif;letter-spacing:-.01em;font-weight:400;line-height:1.03}#pause{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;border:0;padding:10vh 11vw;background:linear-gradient(90deg,#112d35ed,#112d35b8)}#pause .dialog-head{max-width:100%;margin-bottom:5vh}#pause h2{font-size:clamp(44px,5vw,76px);margin:0 0 16px}#pause #resume{width:330px;margin-top:26px;min-width:0}#pause .setting-row{width:330px;font-size:12px;border-color:var(--line);padding:14px 0}#pause .setting-row button,#pause select{background:none;border:0;color:#f0e7cf;font-size:12px}#pause .controls-help{position:absolute;top:31vh;left:58vw;width:29vw;padding:0;background:none;color:#cbd6cb;border:0;font-size:12px;line-height:1.8}#pause .controls-help b{font-size:10px;letter-spacing:.13em;color:#e3ce9e;text-transform:uppercase}#pause .controls-help p{margin-bottom:20px}#pause .touch-help{display:none}#pause .prototype-note{font-size:9px;letter-spacing:.18em;position:absolute;bottom:35px;color:#aaaF9e}#pause .setting-row:has(#replayMission){display:none}.close-dialog{background:none;border:0;color:#e4d7b9;border-radius:0}#saveStatus{font-size:11px;color:#c6d1c5}#restartConfirm{display:none}
#map{width:900px;max-width:90vw;background:#e4ddc5;color:#24464a;padding:40px 48px;border:8px solid #d4ccb0;box-shadow:0 0 0 1px #fff5,0 30px 100px #0007;backdrop-filter:none}#map h2{font-size:48px;margin:25px 0}#map .eyebrow,#map .close-dialog{color:#345256}#map .map-tabs{border-bottom:1px solid #a1a38e}#map .map-tabs button{border-radius:0;color:#60746c;background:none;font-size:10px;letter-spacing:.16em}#map .map-tabs .active{color:#21484b;border-color:#21484b;background:#a8b5a735}#map #followMission{display:none}#map #destinations{display:grid;grid-template-columns:1fr 1fr;gap:12px}#map #destinations button{background:#d6d2bce0;color:#284647;border-color:#a6b29e;padding:18px;border-radius:0;text-align:left}#map #destinations button:hover{background:#c3cebb}#map #destinations p{color:#5d726a}#map .map-foot{color:#5c7069;font-size:11px}.mission-follow{display:none}
.station-panel{font-family:DM}.station-panel h2{font-family:Instrument;font-weight:400}.station-panel,.inventory-panel{background:#17383bea!important;border-color:#ded0a936!important;border-radius:0!important}.station-panel button{border-radius:0}.inventory-slot,.item-card{background:#e1d9be;color:#26464b;border-radius:0;box-shadow:inset 0 0 0 1px #9eac9755}
@media(max-width:900px){.start-copy{max-width:72vw}.start-copy h1{font-size:78px}#pause{padding:6vh 8vw}#pause .controls-help{left:56vw;width:35vw;font-size:10px}.camera-tools{gap:12px;left:18px}.topbar{padding:20px}.coordinates{display:none}.bottom-center{bottom:72px}#map{padding:25px}#map h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}button{transition:none}}

.navigating .target-marker:not([hidden]){display:block!important;background:#183b3f77;border:1px solid #e0d1a855;border-radius:2px;font-size:11px}#interact:disabled{visibility:hidden}#pause input[type=range]{width:130px;accent-color:#d2bd87}#navigationButton{color:#e5cc99;opacity:1}.camera-tools [hidden]{display:none!important}

/* Explicitly supersede the old per-mode HUD layout. */
body .camera-tools,body.walk-view .camera-tools,body.cockpit-view .camera-tools{left:36px;right:auto;bottom:26px;transform:none;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;gap:20px;padding:0;max-width:calc(100% - 72px)}
body .camera-tools button,body.walk-view .camera-tools button{font-size:10px!important;padding:7px 0!important;letter-spacing:.12em;background:none;border:0;color:#f0e7cf;border-radius:0;min-height:38px}
body:not(.walk-view) #inventoryButton{display:inline-flex!important}body .camera-tools #exploreButton,body .camera-tools #cockpitButton,body .camera-tools #inventoryButton{background:none;color:#f0e7cf}
body .bottom-center,body.walk-view .bottom-center,body.cockpit-view .bottom-center{bottom:28px}body.walk-view #interact,body .interaction{border-radius:2px;background:#183b3fb0;border:1px solid #e0d1a866;box-shadow:none;font-size:12px;min-height:40px}
body .topbar{top:0;left:0;right:0;height:92px}.start-copy h1 em{font-style:italic}
@media(max-width:1050px){body .camera-tools,body.walk-view .camera-tools{left:20px;gap:13px}body .bottom-center,body.walk-view .bottom-center{bottom:78px}}
