:root{--bg:#050907;--panel:#0b120e;--panel2:#101a14;--green:#8dffb2;--dim:#5c7966;--amber:#ffd36a;--red:#ff5b5b;--line:rgba(141,255,178,.18);--ink:#d8e8dc}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:"Courier New",monospace}body{overflow-x:hidden;background:radial-gradient(circle at 45% 25%,#0d1b12,transparent 45%),#050907}
button,input{font:inherit}.grain{position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.flash{position:fixed;inset:0;background:#d9ffe6;opacity:0;pointer-events:none;z-index:30}.flash.hit{animation:flash .3s}@keyframes flash{20%{opacity:.28}100%{opacity:0}}
header{height:76px;padding:0 28px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:rgba(5,9,7,.9)}.wordmark{display:flex;align-items:center;gap:13px;color:var(--ink);text-decoration:none}.wordmark>i{width:28px;height:28px;border:2px solid var(--green);transform:rotate(45deg);box-shadow:inset 0 0 12px rgba(141,255,178,.2)}.wordmark span{display:grid;font:700 18px/1 Arial,sans-serif;letter-spacing:.15em}.wordmark b{color:var(--green)}.wordmark small{font:8px/1.4 monospace;color:var(--dim);margin-top:5px}.header-status{display:flex;align-items:center;gap:10px;color:var(--dim);font-size:10px;letter-spacing:.1em}.header-status>span{width:7px;height:7px;border-radius:50%;background:var(--amber);box-shadow:0 0 8px currentColor}.header-status>span.online{background:var(--green)}#accountButton{border:1px solid var(--line);background:transparent;color:var(--green);padding:9px 12px;cursor:pointer;margin-left:10px}
main{max-width:1600px;margin:auto;padding:20px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px}.station,.sidebar>section{border:1px solid var(--line);background:rgba(8,14,10,.92)}.console-head{min-height:62px;padding:12px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.console-head>div:first-child{display:grid;gap:5px}.console-head span,.stability label{font-size:9px;letter-spacing:.14em;color:var(--dim)}.console-head b{font-size:13px}.console-head b i{color:var(--green);font-style:normal}.stability{display:grid;grid-template-columns:auto 150px 38px;align-items:center;gap:10px}.stability>div{height:8px;background:#17211a}.stability i{display:block;width:100%;height:100%;background:var(--green);box-shadow:0 0 10px rgba(141,255,178,.3);transition:width .3s}
.scope-panel{position:relative;padding:12px 18px 0}.scope-labels,.scope-readout{display:flex;justify-content:space-between;color:var(--dim);font-size:9px;letter-spacing:.08em}.scope-labels span:last-child{color:var(--green)}#scope{display:block;width:100%;height:300px;margin-top:8px;background:#030705;border:1px solid rgba(141,255,178,.12)}.scope-readout{padding:7px 2px 12px}.interference{position:absolute;inset:32px 18px 23px;pointer-events:none;opacity:0;background:repeating-linear-gradient(0deg,transparent 0 4px,rgba(255,255,255,.15) 5px 6px)}.interference.active{animation:static .18s steps(2) infinite}@keyframes static{50%{transform:translateX(3px);opacity:.25}}
.controls{display:grid;grid-template-columns:1.1fr 1fr .75fr;border-top:1px solid var(--line)}.controls>section{padding:18px;border-right:1px solid var(--line);min-height:260px}.controls>section:last-child{border-right:0}.panel-title{display:flex;gap:11px;align-items:flex-start}.panel-title>span{color:var(--green);font-size:10px}.panel-title div{display:grid;gap:4px}.panel-title b{font-size:11px;letter-spacing:.08em}.panel-title small{color:var(--dim);font-size:9px}#frequency{display:block;margin:24px 0 9px;font:700 38px/1 Arial,sans-serif;color:var(--green);text-shadow:0 0 16px rgba(141,255,178,.25)}#frequency small{font:10px monospace;color:var(--dim)}input[type=range]{width:100%;accent-color:var(--green)}.meter{height:26px;margin:15px 0;position:relative;background:#121c16;border:1px solid var(--line);overflow:hidden}.meter i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--green),var(--amber),var(--red));transition:width .08s}.meter span{position:absolute;inset:0;display:grid;place-items:center;color:#e9fff0;font-size:9px;letter-spacing:.12em;text-shadow:0 1px 2px #000}.action{width:100%;padding:12px;border:1px solid var(--green);background:rgba(141,255,178,.08);color:var(--green);cursor:pointer}.action:disabled{opacity:.3;cursor:not-allowed}.action.locking{background:var(--green);color:#071009}
.decode-screen{height:90px;margin:22px 0 12px;border:1px solid var(--line);background:#030705;display:grid;place-items:center;text-align:center}.decode-screen span{font-size:9px;color:var(--dim);letter-spacing:.13em}.decode-screen div{font-size:28px;color:var(--green);letter-spacing:.25em}.glyphs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.glyphs button{height:48px;border:1px solid var(--line);background:#0e1812;color:var(--green);font-size:22px;cursor:pointer}.glyphs button:disabled{opacity:.3}.glyphs button:hover:not(:disabled),.glyphs button.pulse{background:var(--green);color:#061008;box-shadow:0 0 20px rgba(141,255,178,.35)}
.radar{width:150px;height:150px;border:1px solid var(--line);border-radius:50%;margin:20px auto 14px;position:relative;background:repeating-radial-gradient(circle,transparent 0 24px,rgba(141,255,178,.1) 25px 26px),linear-gradient(90deg,transparent 49.5%,var(--line) 50%,transparent 50.5%),linear-gradient(0deg,transparent 49.5%,var(--line) 50%,transparent 50.5%)}.radar i{position:absolute;inset:8px;border-top:1px solid var(--green);border-radius:50%;animation:spin 4s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#bearingNeedle{position:absolute;width:2px;height:62px;background:var(--amber);left:74px;top:13px;transform-origin:bottom;opacity:.1;transition:transform .5s,opacity .3s}#bearingReadout{position:absolute;left:0;right:0;bottom:24px;text-align:center;color:var(--amber);font-size:12px}.crew{text-align:center;color:var(--dim);font-size:8px}
.sidebar{display:grid;grid-template-rows:auto minmax(280px,1fr) auto;gap:18px}.sidebar>section{padding:20px}.eyebrow{color:var(--green);font-size:9px;letter-spacing:.15em;margin:0 0 12px}.mission h1{font:800 24px/1.05 Arial,sans-serif;text-transform:uppercase;margin:0}.mission>p:not(.eyebrow){color:#91a197;font:12px/1.6 Arial,sans-serif}.progress-row,.aside-title{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:13px;font-size:9px;color:var(--dim)}.progress-row b{color:var(--green)}.aside-title{border:0;padding:0 0 13px}.aside-title b{color:var(--ink)}.aside-title span{color:var(--green)}#incidentLog{list-style:none;padding:0;margin:0;display:flex;flex-direction:column-reverse;gap:9px;max-height:380px;overflow:hidden}#incidentLog li{border-left:2px solid var(--dim);padding-left:10px;color:#8aa091;font-size:9px;line-height:1.45}#incidentLog li b{color:var(--green);display:block;margin-bottom:2px}#incidentLog li.danger{border-color:var(--red);color:#d3a1a1}.evidence #evidenceGrid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.evidence article{min-height:70px;border:1px solid var(--line);padding:10px;display:grid;align-content:end;background:#080d0a}.evidence article span{font-size:9px;color:var(--green)}.evidence article small{font-size:8px;color:var(--dim);margin-top:3px}
.start-overlay,.result-overlay{position:fixed;inset:0;z-index:25;background:rgba(2,5,3,.94);display:grid;place-items:center;padding:20px}.start-card,.result-card{width:min(700px,100%);border:1px solid var(--line);background:linear-gradient(135deg,rgba(141,255,178,.06),transparent),#09100c;padding:45px;box-shadow:0 0 80px #000}.start-card h1,.result-card h2{font:900 clamp(48px,8vw,82px)/.85 Arial,sans-serif;letter-spacing:-.05em;margin:0}.start-card h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px var(--green)}.start-card>p:not(.eyebrow){color:#9aaba0;font:15px/1.7 Arial,sans-serif;max-width:590px}.start-card label{display:grid;gap:7px;color:var(--dim);font-size:9px;margin:25px 0 14px}.start-card input{padding:14px;border:1px solid var(--line);background:#030705;color:var(--green);outline:none;text-transform:uppercase}.start-actions{display:grid;grid-template-columns:1.4fr .6fr;gap:8px}.start-actions button,.result-card button{padding:14px;border:1px solid var(--green);background:var(--green);color:#061009;font-weight:bold;cursor:pointer}.start-actions button+button{background:transparent;color:var(--green)}.instructions{margin-top:12px;padding:15px;border:1px solid var(--line);color:#9bae9f;font-size:10px;line-height:1.8}.instructions b{color:var(--green)}.start-card>small{display:block;color:var(--dim);font-size:8px;margin-top:16px}.result-overlay[hidden]{display:none}.result-card{text-align:center}.result-card h2{color:var(--green)}.result-card>p{color:#9aaba0;line-height:1.6}.result-card>div{display:grid;grid-template-columns:repeat(3,1fr);margin:25px 0;border:1px solid var(--line)}.result-card>div span{padding:16px;font-size:9px;color:var(--dim);border-right:1px solid var(--line)}.result-card>div span:last-child{border:0}.result-card>div b{display:block;color:var(--green);font-size:18px;margin-top:5px}
body.haunted{animation:haunt 3s ease}@keyframes haunt{20%,24%{filter:invert(.12) hue-rotate(80deg)}22%{transform:translateX(2px)}}
@media(max-width:1100px){main{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr 1fr;grid-template-rows:auto}.log-panel{grid-row:span 2}.controls{grid-template-columns:1fr 1fr}.bearing{grid-column:span 2}.controls>section:nth-child(2){border-right:0}}
@media(max-width:680px){header{height:66px;padding:0 15px}.wordmark span{font-size:14px}.header-status>b{display:none}#accountButton{padding:8px;font-size:8px}main{padding:10px}.console-head{align-items:flex-start}.stability{grid-template-columns:auto 70px 32px}.stability label{display:none}#scope{height:200px}.controls{grid-template-columns:1fr}.controls>section{border-right:0;border-bottom:1px solid var(--line)}.bearing{grid-column:auto}.sidebar{grid-template-columns:1fr}.log-panel{grid-row:auto}.start-card,.result-card{padding:27px 22px}.start-actions{grid-template-columns:1fr}.start-card h1{font-size:52px}.result-card>div{grid-template-columns:1fr}.result-card>div span{border-right:0;border-bottom:1px solid var(--line)}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important}}
.start-card,.result-card{max-height:94vh;overflow:auto}
