:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#d9ebf1;background:#07111c}*{box-sizing:border-box}body{margin:0}.app{height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) 310px}.radar{position:relative;min-height:0;overflow:hidden;background:#060f19}.radar canvas{display:block}.top-label{position:absolute;left:20px;top:18px;pointer-events:none;color:#79f5cc;letter-spacing:.12em;font-weight:700}.top-label span{color:#8babb8;font-size:11px;margin-left:14px;font-weight:400}.legend{position:absolute;bottom:20px;left:20px;background:#07111cbb;padding:10px 14px;border:1px solid #1d4350;font-size:11px;color:#74e8c9;pointer-events:none}.legend span{color:#f0b763}.edge-layer{position:absolute;inset:0;pointer-events:none}.edge{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;white-space:nowrap;padding:5px 7px!important;font-size:10px!important;border-color:#387c83!important;color:#9df5e5!important;background:#071c28ed!important}aside{background:#0d1d2b;border-left:1px solid #244252;padding:24px;overflow:auto}h1{font-size:19px;letter-spacing:.14em;margin:0 0 8px;color:#9cf3dd}h2{font-size:13px;color:#9bc5cf;font-weight:600;text-transform:uppercase;display:flex;justify-content:space-between}p{line-height:1.5}.muted{font-size:12px;color:#8eabb8}.stat{display:flex;justify-content:space-between;gap:15px;margin:13px 0;font-size:12px}.stat span{color:#849eac}.stat strong{text-align:right;font-variant-numeric:tabular-nums;font-size:11px}hr{border:0;border-top:1px solid #284251;margin:23px 0}button{font:inherit;border:1px solid #376174;color:#d8ebf0;background:#163247;border-radius:5px;padding:9px 12px;cursor:pointer;touch-action:none}button:hover{background:#24475a}button:focus-visible{outline:2px solid #95ecdb}button.action{width:100%;background:#155c59;color:#e3fff7;font-weight:700}.pad{display:flex;flex-direction:column;align-items:center;gap:5px;-webkit-user-select:none;user-select:none}.pad>div{display:flex;gap:5px}.pad button{min-width:55px;font-size:19px}input[type=range]{width:100%;accent-color:#65d9c5}.foot{margin-top:24px;color:#7897a8}@media(max-width:750px){.app{grid-template-columns:1fr;grid-template-rows:55vh 1fr;height:auto;min-height:100dvh}.radar{height:55vh}aside{border-left:0;border-top:1px solid #244252}.top-label span{display:block;margin-left:0;margin-top:6px}.legend{bottom:8px;left:8px;font-size:9px}}.contact-menu{max-height:250px;overflow:auto}.contact-menu button{display:block;width:100%;margin:4px 0}label{display:block;font-size:12px;color:#9bc5cf;margin:10px 0 5px}h2 label{margin:0;font:inherit}input[type=search],select{width:100%;min-height:44px;background:#102737;color:#d9ebf1;border:1px solid #376174;border-radius:5px;padding:8px;font:inherit;font-size:13px}button{min-height:44px}button:disabled{opacity:.5;cursor:default}input:focus-visible,select:focus-visible,.radar:focus-visible{outline:2px solid #95ecdb;outline-offset:-2px}.scan-status,.target-status{font-size:12px;line-height:1.5;color:#a0e7d9}.warnings p{color:#f6cb79;font-size:12px}.contact-status{font-size:13px;line-height:1.5}.contact-status button{display:block;margin-top:8px}.camera-actions,.contact-pages{display:flex;flex-wrap:wrap;gap:6px}.camera-actions button{font-size:12px;flex:1;padding:6px}.stat strong{overflow-wrap:anywhere;min-width:0}.contact-pages{font-size:12px;align-items:center}.edge{max-width:180px;white-space:normal;overflow-wrap:anywhere}.radar:focus{outline-offset:-2px}@media(max-width:750px){.edge{max-width:100px;font-size:10px!important}.legend{max-width:calc(100% - 16px)}aside{padding:20px}.top-label{left:12px}.top-label span{max-width:calc(100vw - 24px)}}.edge{--edge-inset:95px}@media(max-width:750px){.edge{--edge-inset:55px}}.edge{width:max-content}.ship-vectors{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.ship-vectors line{stroke-linecap:butt}.ship-vectors [data-vector=heading]{stroke:#ffe36a;stroke-width:3}.ship-vectors [data-vector=velocity]{stroke:#b6f5a2;stroke-width:1.5;stroke-dasharray:9 5}.legend b{color:#ffe36a;font-weight:500}.legend span{color:#b6f5a2;margin-left:8px}.top-label,.legend{z-index:1}dialog{max-width:520px;max-height:85vh;overflow:auto;background:#0d1d2b;color:#d9ebf1;border:1px solid #376174;border-radius:8px;padding:24px}dialog::backdrop{background:#020911aa}dialog h2{font-size:16px}dialog dt{font-size:13px;color:#9cf3dd;margin-top:14px}dialog dd{font-size:13px;line-height:1.5;margin:4px 0 0}dialog form{margin-top:20px}.expedition-ui{--ui-void: #09141c;--ui-panel: #192b30;--ui-surface: #314e52;--ui-text: #e8e1d1;--ui-muted: #afc2c8;--ui-active: #69d3dd;--ui-mechanical: #ebc076;--ui-danger: #e77f73;--ui-heading: #ffe36a;--ui-velocity: #b6f5a2;--ui-font: Inter, system-ui, sans-serif;--ui-mono: ui-monospace, monospace;--ui-body: 1rem;--ui-small: .8125rem;--ui-readout: 1.25rem;--ui-space-1: 4px;--ui-space-2: 8px;--ui-space-3: 12px;--ui-space-4: 16px;--ui-space-6: 24px;--ui-radius: 6px;--ui-press-time: 90ms;--ui-hover-time: .12s;--ui-panel-time: .18s;color:var(--ui-text);font:var(--ui-body)/1.5 var(--ui-font);font-variant-numeric:tabular-nums;color-scheme:dark}@media(prefers-reduced-motion:reduce){.expedition-ui{--ui-press-time: 0ms;--ui-hover-time: 0ms;--ui-panel-time: 0ms}}.expedition-ui .ui-button{box-sizing:border-box;min-height:44px;padding:var(--ui-space-2) var(--ui-space-4);border:1px solid var(--ui-active);border-radius:var(--ui-radius);background:var(--ui-surface);color:var(--ui-text);font:inherit;cursor:pointer;transition:background-color var(--ui-hover-time),transform var(--ui-press-time)}.expedition-ui .ui-button--secondary{background:var(--ui-panel);border-color:var(--ui-muted)}.expedition-ui .ui-button--danger{border-color:var(--ui-danger);color:var(--ui-danger);background:var(--ui-void)}.expedition-ui .ui-button:hover{background:var(--ui-void)}.expedition-ui .ui-button:active:not([aria-disabled=true]){transform:translateY(1px)}.expedition-ui .ui-button[aria-pressed=true]{box-shadow:inset 0 -3px var(--ui-active)}.expedition-ui :focus-visible{outline:2px solid var(--ui-active);outline-offset:3px}.expedition-ui .ui-button[aria-disabled=true]{border-style:dashed;cursor:default;color:var(--ui-muted)}.expedition-ui .ui-control{display:inline-flex;flex-direction:column;vertical-align:top;gap:var(--ui-space-1)}.expedition-ui .ui-reason{color:var(--ui-muted);font-size:var(--ui-small);max-width:24ch}.expedition-ui .ui-icon-button{min-width:44px}.expedition-ui .ui-panel,.expedition-ui .ui-dialog{box-sizing:border-box;padding:var(--ui-space-4);border:1px solid var(--ui-muted);border-radius:var(--ui-radius);background:var(--ui-panel);color:var(--ui-text)}.expedition-ui .ui-panel--equipment{border-top:2px solid var(--ui-mechanical)}.expedition-ui .ui-panel--utility{background:var(--ui-void);border-top:2px solid var(--ui-active)}.expedition-ui .ui-panel h2,.expedition-ui .ui-dialog h2{font-size:var(--ui-readout);margin:0 0 var(--ui-space-3)}.expedition-ui .ui-eyebrow{color:var(--ui-mechanical);font-size:var(--ui-small);letter-spacing:.08em;text-transform:uppercase;margin:0}.expedition-ui .ui-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;font:inherit}.expedition-ui .ui-dialog::backdrop{background:#09141ccc}.expedition-ui .ui-meter{display:grid;gap:var(--ui-space-1);margin-block:var(--ui-space-3)}.expedition-ui .ui-meter meter,.expedition-ui .ui-meter progress{width:100%;accent-color:var(--ui-active)}.expedition-ui .ui-key{padding:var(--ui-space-1) var(--ui-space-2);border:1px solid var(--ui-muted);border-radius:4px;background:var(--ui-void);font-family:var(--ui-mono)}.expedition-ui .ui-status{border-left:3px solid var(--ui-muted);padding-left:var(--ui-space-2)}.expedition-ui .ui-status--error{border-color:var(--ui-danger);color:var(--ui-danger)}.expedition-ui .ui-status--warning{border-color:var(--ui-mechanical);color:var(--ui-mechanical)}.expedition-ui .ui-status--confirmation,.expedition-ui .ui-status--pending{border-color:var(--ui-active)}.expedition-ui .ui-meter meter::-webkit-meter-bar{background:var(--ui-surface)}.expedition-ui .ui-meter meter::-webkit-meter-optimum-value,.expedition-ui .ui-meter meter::-webkit-meter-suboptimum-value,.expedition-ui .ui-meter meter::-webkit-meter-even-less-good-value{background:var(--ui-active)}.expedition-ui .ui-meter meter::-moz-meter-bar{background:var(--ui-active)}.expedition-ui .ui-dialog--equipment{border-top:3px solid var(--ui-mechanical);padding:var(--ui-space-6);animation:ui-equipment-enter var(--ui-panel-time) ease-out}.expedition-ui .ui-dialog--equipment .ui-dialog-identity{border-bottom:1px solid var(--ui-surface);margin-bottom:var(--ui-space-4)}.expedition-ui .ui-dialog--equipment .ui-dialog-identity h2{margin-block:var(--ui-space-1)}.expedition-ui .ui-dialog-actions{display:flex;flex-wrap:wrap;gap:var(--ui-space-2);margin-top:var(--ui-space-4)}@keyframes ui-equipment-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.expedition-ui .ui-dialog--equipment{max-width:calc(100vw - 32px)}.expedition-ui .ui-dialog--equipment h2{color:var(--ui-text);text-transform:none;display:block;font-weight:600}.panoramic{position:relative;width:100%;height:100dvh;overflow:hidden;background:var(--ui-void);font-size:var(--ui-small);line-height:1.4;isolation:isolate}.panoramic *{box-sizing:border-box}.panoramic canvas{display:block}.panoramic p{margin:5px 0}.panoramic label{display:block}.panoramic .ui-button{min-height:36px;padding:7px 10px;font-size:inherit}.panoramic .ui-button:disabled{color:var(--ui-muted);border-color:var(--ui-muted);border-style:dashed;background:var(--ui-void);cursor:default}.panoramic .ui-panel{padding:var(--ui-space-2) var(--ui-space-3);font-size:inherit}.panoramic-status{position:absolute;top:12px;left:12px;max-width:calc(100% - 310px);pointer-events:none}.panoramic-status strong{color:var(--ui-active);font-size:11px;letter-spacing:.14em}.panoramic-status span{font-family:var(--ui-mono);font-size:12px}.observation-reticle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:20px var(--ui-mono);color:var(--ui-active);pointer-events:none}.panoramic-contacts{position:absolute;right:12px;top:12px;width:270px;pointer-events:auto;display:flex;flex-direction:column;gap:var(--ui-space-2)}.panoramic-contacts .contacts-toggle{align-self:flex-end}.panoramic .selected-contact{border-top-color:var(--ui-muted)}.selected-contact button{margin:4px 4px 0 0}.scanned-browser{max-height:calc(100dvh - 340px);overflow:auto;scrollbar-gutter:stable}.scanned-browser input{font:inherit;width:100%;min-height:36px;margin:6px 0;padding:var(--ui-space-2);background:var(--ui-void);color:var(--ui-text);border:1px solid var(--ui-muted);border-radius:var(--ui-radius)}.scanned-browser ul{list-style:none;margin:6px 0;padding:0}.scanned-browser li button{width:100%;text-align:left;margin:2px 0}.panoramic-instruments{position:absolute;bottom:82px;left:12px;pointer-events:none}.orientation-compass{width:164px;margin:0;background:var(--ui-void);border:1px solid var(--ui-surface);padding:5px;border-radius:var(--ui-radius)}.orientation-compass svg{display:block;width:114px;margin:auto}.orientation-compass figcaption{font-size:10px;text-align:center}.orientation-compass span{color:var(--ui-active)}.orientation-compass b{color:var(--ui-heading);font-weight:400}.orientation-compass em{color:var(--ui-velocity);font-style:normal}.panoramic-controls{position:absolute;bottom:12px;left:12px;right:12px;display:flex;align-items:center;gap:var(--ui-space-2);padding:var(--ui-space-2);background:var(--ui-void);border:1px solid var(--ui-surface);border-radius:var(--ui-radius)}.panoramic-controls label{min-width:130px;font-size:12px}.panoramic-controls input{display:block;width:130px;accent-color:var(--ui-active)}.panoramic-telemetry{position:absolute;left:244px;bottom:82px;max-width:calc(100% - 544px);max-height:calc(100dvh - 290px);overflow:auto;overflow-wrap:anywhere}.panoramic-priority{position:absolute;left:12px;right:300px;top:112px;z-index:4;max-height:96px;overflow:auto;pointer-events:none;color:var(--ui-mechanical)}.panoramic-priority:not(:empty){background:var(--ui-void);border:1px solid var(--ui-mechanical);border-left-width:3px;border-radius:var(--ui-radius);padding:var(--ui-space-2)}.panoramic-priority button{pointer-events:auto}.panoramic[data-mode=destroyed] .panoramic-priority{color:var(--ui-danger);border-color:var(--ui-danger)}.panoramic .ui-dialog{max-width:520px;max-height:85dvh;padding:var(--ui-space-6)}.panoramic dialog dt{color:var(--ui-active);margin-top:var(--ui-space-3)}.panoramic dialog dd{margin:4px 0 0}.panoramic dialog form{margin-top:18px}@media(max-width:1000px){.panoramic-status{max-width:calc(100% - 300px);font-size:12px}.panoramic-controls{gap:5px}.panoramic-controls .ui-button{font-size:11px;padding:6px}.orientation-compass{width:150px}.panoramic-telemetry{left:244px;max-width:calc(100% - 544px)}}.resource-container .ui-dialog{width:min(640px,calc(100vw - 32px));font-size:14px}.resource-container .container-note{font-size:var(--ui-small);color:var(--ui-muted);margin:12px 0}.resource-container .container-state{font-size:var(--ui-small);color:var(--ui-muted);margin:8px 0 16px}.resource-container .container-state--pending{color:var(--ui-mechanical)}.resource-container .container-state--confirmation{color:var(--ui-active)}.resource-container .container-state--error{color:var(--ui-danger)}.resource-container .container-capacities{display:grid;grid-template-columns:1fr 1fr;gap:16px}.resource-container .container-capacities>div{background:var(--ui-void);padding:12px;border:1px solid var(--ui-surface);border-radius:var(--ui-radius)}.resource-container .container-capacities p{font-size:20px;margin:4px 0}.resource-container .container-capacities small{font-size:var(--ui-small);color:var(--ui-muted)}.resource-container .ui-meter{font-size:var(--ui-small);margin-block:8px}.resource-container table{width:100%;border-collapse:collapse;margin:16px 0}.resource-container th,.resource-container td{border-bottom:1px solid var(--ui-surface);padding:8px 4px;text-align:right;font-weight:400;font-variant-numeric:tabular-nums}.resource-container th:first-child{text-align:left}.resource-container thead{font-size:var(--ui-small);color:var(--ui-muted)}.resource-container .container-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.resource-container .container-fields label{display:flex;flex-direction:column;gap:8px;color:var(--ui-muted)}.resource-container input,.resource-container select{box-sizing:border-box;min-width:0;min-height:44px;width:100%;font:inherit;color:var(--ui-text);background:var(--ui-void);border:1px solid var(--ui-muted);padding:8px 12px;border-radius:var(--ui-radius);transition:border-color var(--ui-hover-time)}.resource-container input:hover,.resource-container select:hover{border-color:var(--ui-active)}.resource-container .container-actions{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.resource-container .container-confirm{border-left:3px solid var(--ui-mechanical);padding-left:12px}.resource-container .container-feedback{margin:16px 0 0;border-left:3px solid var(--ui-muted);padding-left:12px}.resource-container .container-feedback--pending{border-color:var(--ui-mechanical)}.resource-container .container-feedback--confirmation{border-color:var(--ui-active)}.resource-container .container-feedback--error{color:var(--ui-danger);border-color:var(--ui-danger)}.resource-container .container-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:600px){.resource-container .ui-dialog{padding:16px}.resource-container .container-fields{grid-template-columns:1fr;gap:12px}.resource-container .container-capacities{gap:8px}}.top-down-app{position:relative;height:100dvh;width:100%;overflow:hidden;background:#b5a58b;color:#e8e1d1;font-family:system-ui,sans-serif;isolation:isolate}.top-down-stage{position:absolute;inset:0;overflow:hidden;background:#b5a58b}.top-down-scene{display:block;position:absolute;inset:0;width:100%;height:100%}.top-down-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.top-down-bottom{position:absolute;z-index:2;bottom:12px;left:12px;width:min(650px,calc(100% - 248px));max-height:45%;overflow:auto;border:1px solid #496062;border-radius:6px;background:#233437ed}.top-down-interaction{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:0;background:transparent;overflow:visible}.top-down-interaction>div{min-width:0}.top-down-interaction button{flex-shrink:0}.top-down-app footer{padding:0 12px 8px;color:#b7c2bc;font-size:11px;pointer-events:none}.top-down-app footer p{margin:2px 0;line-height:16px}.top-down-app footer strong{color:#e8e1d1}.top-down-interaction p{font-size:12px;margin:4px 0;color:#c9dad4}.top-down-interaction [role=status]{color:#96b4b5;font-size:11px}.top-down-interaction button{background:#314e52;border:1px solid #87b7b8;color:#e4e7d6;border-radius:4px;padding:10px 14px;cursor:pointer}.top-down-interaction button:disabled{opacity:.45;cursor:default}.top-down-interaction button:focus-visible{outline:2px solid #bce9df;outline-offset:3px}.top-down-app[hidden]{display:none}.cockpit-exit{position:fixed;top:12px;left:12px;z-index:10}.power-fixture{position:fixed;bottom:8px;left:8px;z-index:10}.top-down-scene [data-depleted]{opacity:.4}.resource-hud{position:absolute;top:12px;right:12px;z-index:2;box-sizing:border-box;font-size:12px;line-height:18px}.resource-hud p{margin:4px 0}.resource-hud ul{list-style:none;padding:0}.resource-hud li{display:flex;justify-content:space-between;gap:8px}.resource-hud button{width:100%;border:1px solid var(--ui-active);border-radius:4px;color:var(--ui-text);background:var(--ui-surface);padding:8px;cursor:pointer}.resource-hud button:disabled{opacity:.5;cursor:default}.resource-hud .resource-note{font-size:12px;line-height:16px;color:var(--ui-muted);margin-top:8px}.resource-hud .count-item{display:block;margin:8px 0}.resource-hud .count-item span{display:block}.survival-hud{position:fixed;top:12px;left:12px;z-index:12;font:12px/18px system-ui,sans-serif;max-height:calc(100dvh - 24px);overflow:auto}.survival-hud button{color:var(--ui-text);background:var(--ui-surface);border:1px solid var(--ui-active);border-radius:4px;min-height:36px;padding:6px;cursor:pointer}.survival-hud p:empty{display:none}body:has(.panoramic) .power-fixture{bottom:82px;left:auto;right:12px}.expedition-ui .survival-hud,.expedition-ui .resource-hud,.expedition-ui .top-down-bottom{background:var(--ui-void);color:var(--ui-text);border:1px solid var(--ui-surface);border-radius:var(--ui-radius);font-size:12px}.expedition-ui .survival-hud{width:280px;padding:8px;box-sizing:border-box}.vital-meters{display:flex;gap:10px}.vital-meters .ui-meter{min-width:0;flex:1;margin:0;font-size:12px}.vital-meters .ui-meter span{display:block;line-height:18px}.expedition-ui .survival-hud .ui-button{min-height:32px;padding:4px 8px}.expedition-ui .survival-hud p{margin:6px 0;color:var(--ui-mechanical)}.expedition-ui .resource-hud{width:224px;padding:8px;overflow:visible;max-height:none}.expedition-ui .resource-hud button{min-height:36px;font-size:12px}.expedition-ui .resource-hud ul{margin:8px 0}.hud-utility{position:absolute;top:calc(100% + 8px);right:0;width:280px;max-height:calc(100dvh - 190px);overflow:auto;background:var(--ui-void);border:1px solid var(--ui-active);border-radius:4px}.hud-utility:focus-visible{outline:2px solid var(--ui-active);outline-offset:2px}.hud-utility .ui-panel{margin:0;padding:12px}.expedition-ui .top-down-bottom{width:max-content;max-width:calc(100% - 24px);min-width:280px;max-height:35%;font-size:12px}.expedition-ui .top-down-interaction{padding:6px 10px;gap:10px}.expedition-ui .top-down-interaction:has([data-prompt][hidden]):has([role=status]:empty){display:none}.source-summary,.gathering-status{margin:0;padding:0 10px 6px;font-size:12px}.gathering-status .ui-meter{margin:0}.gathering-status p{margin:4px 0}.expedition-ui .top-down-app footer{font-size:11px;padding:4px 10px}body:has(.panoramic) .expedition-ui .survival-hud{width:220px;top:220px;max-height:calc(100dvh - 470px);font-size:12px;line-height:16px}body:has(.panoramic) .vital-meters{gap:6px}@media(max-width:1000px){.expedition-ui .survival-hud{width:260px}.expedition-ui .resource-hud{width:208px}}
