:root{--bg:#07080f;--ink:#e8e4d9;--mute:#8a8578;--gold:#d4af6c;--gold-2:#e8c07a;--cyan:#7ec8d4;--line:#d4af6c38;--glass:#0a0c149e;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Outfit", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);width:100%;height:100%;color:var(--ink);font-family:var(--sans);letter-spacing:.02em;-webkit-user-select:none;user-select:none;font-weight:300;overflow:hidden}#stage{cursor:crosshair;width:100%;height:100%;display:block;position:fixed;inset:0}#vignette{pointer-events:none;z-index:2;background:radial-gradient(#0000 42%,#04050ab8 100%),linear-gradient(#07080f59 0%,#0000 18% 82%,#07080f80 100%);position:fixed;inset:0}#grain{pointer-events:none;z-index:3;opacity:.07;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:.4s steps(2,end) infinite grain;position:fixed;inset:-20%}@keyframes grain{0%{transform:translate(0)}to{transform:translate(-3%,2%)}}#boot{z-index:40;background:#05060c;place-items:center;transition:opacity .8s,visibility .8s;display:grid;position:fixed;inset:0}#boot.out{opacity:0;visibility:hidden}.boot-inner{text-align:center;min-width:280px}.boot-mark{font-family:var(--serif);letter-spacing:.42em;color:var(--gold-2);padding-left:.42em;font-size:42px}.boot-sub{font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;color:var(--mute);margin-top:6px;font-size:11px}.boot-rule{background:linear-gradient(90deg, transparent, var(--gold), transparent);width:0;height:1px;margin:22px auto 16px;animation:1.1s forwards rule}@keyframes rule{to{width:220px}}#boot-log{font-family:var(--mono);color:var(--mute);text-align:left;min-height:88px;font-size:11px;list-style:none}#boot-log li{opacity:0;margin:4px 0;animation:.35s forwards fadein}#boot-log li.ok{color:#b7c9a3}@keyframes fadein{to{opacity:1}}#topbar{z-index:10;pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:end;padding:22px 28px 0;display:grid;position:fixed;top:0;left:0;right:0}.brand-mark{font-family:var(--serif);letter-spacing:.34em;color:var(--gold-2);font-size:22px}.brand-sub{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mute);margin-top:2px;font-size:10px;display:block}.top-center{text-align:center}#scenario-latin{font-family:var(--serif);color:var(--ink);font-size:20px;font-style:italic;display:block}#scenario-name{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-top:2px;font-size:10px;display:block}.clock{text-align:right}.clock-label,.mini-label,.panel-kicker,.spawn-label,.hint{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mute);font-size:10px}#mission-clock{font-family:var(--mono);color:var(--ink);margin-top:2px;font-size:13px;display:block}.panel{z-index:10;background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);width:248px;padding:18px 18px 16px;position:fixed;top:78px}#panel-left{left:22px}#panel-right{right:22px}.panel h2{font-family:var(--serif);margin:4px 0 14px;font-size:22px;font-weight:500}.panel-kicker{margin-bottom:2px}#scenario-list{flex-direction:column;gap:2px;display:flex}.sc-btn{appearance:none;color:var(--mute);text-align:left;font-family:var(--mono);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;border-left:1px solid #0000;padding:7px 8px;font-size:11px}.sc-btn:hover{color:var(--ink)}.sc-btn.on{color:var(--gold-2);border-left-color:var(--gold);background:#d4af6c0f}.panel-foot{margin-top:16px}.mini-wrap{border:1px solid var(--line);background:#00000059;padding:6px}#minimap{width:100%;height:auto;display:block}.mini-label{margin-top:6px;display:block}.inspector{min-height:118px;font-family:var(--mono);color:var(--ink);margin-bottom:14px;font-size:11px;line-height:1.55}.inspector.empty .ghost{color:var(--mute);font-style:italic;font-family:var(--serif);font-size:15px}.inspector .name{font-family:var(--serif);color:var(--gold-2);margin-bottom:6px;font-size:20px}.inspector .row{color:var(--mute);justify-content:space-between;display:flex}.inspector .row b{color:var(--ink);font-weight:500}.stat-grid{grid-template-columns:1fr 1fr;gap:10px 12px;margin-bottom:14px;display:grid}.stat span{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-size:10px;display:block}.stat b{font-family:var(--mono);color:var(--ink);font-size:13px;font-weight:500}.energy span{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:6px;font-size:10px;display:block}.energy-bar{background:#ffffff14;height:3px;overflow:hidden}#energy-fill{background:linear-gradient(90deg, var(--cyan), var(--gold));width:40%;height:100%;transition:width .2s linear;display:block}#dock{z-index:10;background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);align-items:center;gap:18px;max-width:calc(100% - 40px);padding:10px 16px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.dock-group{align-items:center;gap:8px;display:flex}.dock-group.grow{flex:1;min-width:280px}.dock-btn,.chip,#help-close{appearance:none;border:1px solid var(--line);color:var(--ink);font-family:var(--mono);letter-spacing:.08em;cursor:pointer;background:0 0;padding:6px 10px;font-size:11px}.dock-btn:hover,.chip:hover,#help-close:hover{border-color:var(--gold);color:var(--gold-2)}.chip.on{border-color:var(--gold);color:var(--gold-2);background:#d4af6c1f}.slider{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);align-items:center;gap:8px;font-size:10px;display:flex}.slider input{width:110px;accent-color:var(--gold)}.slider b{color:var(--ink);min-width:36px;font-weight:500}.toggles{flex-wrap:wrap;gap:6px;display:flex}.hint{white-space:nowrap;position:absolute;top:-22px;right:16px}#help{z-index:30;background:#05060cb8;place-items:center;display:grid;position:fixed;inset:0}#help.hidden{display:none}.help-card{border:1px solid var(--line);background:#0c0e18;width:min(420px,90vw);padding:28px}.help-card h3{font-family:var(--serif);margin-bottom:14px;font-size:26px;font-weight:500}.help-card ul{margin-bottom:14px;list-style:none}.help-card li{font-family:var(--mono);color:var(--mute);margin:6px 0;font-size:12px}.help-card p{font-family:var(--serif);color:var(--ink);margin-bottom:16px;font-size:15px;font-style:italic}kbd{border:1px solid var(--line);min-width:18px;color:var(--gold-2);font-family:var(--mono);padding:1px 5px;font-size:11px;display:inline-block}#toast{z-index:20;font-family:var(--mono);letter-spacing:.12em;color:var(--gold-2);opacity:0;pointer-events:none;font-size:12px;transition:opacity .3s;position:fixed;top:78px;left:50%;transform:translate(-50%)}#toast.show{opacity:1}@media (width<=980px){.panel{display:none}#dock{flex-wrap:wrap;width:calc(100% - 24px);bottom:10px}.hint{display:none}}
