@font-face{font-family:ui-sans;src:local(Segoe UI)}:root{--font-display:"Rajdhani", "ui-sans", "Segoe UI", system-ui, sans-serif;--accent:#d9a441;--accent-dim:#8a6a2e;--ink:#eae2d0;--ink-dim:#a89e88;--panel-bg:#0c0e10db;--panel-border:#d9a44159;--void:#07080a;--success:#7cbf7c;--corrupt:#a05555;--corrupt-dim:#7a3232;--surface:#ffffff08;--surface-border:#ffffff14;--surface-hover:#d9a44117;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}.hud-icon{color:var(--accent-dim);vertical-align:-2px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.hud-icon svg{display:block}html,body{background:var(--void);width:100%;height:100%;color:var(--ink);-webkit-user-select:none;user-select:none;margin:0;padding:0;font-family:ui-sans,Segoe UI,system-ui,sans-serif;overflow:hidden}#app{width:100%;height:100%;position:relative}#app canvas{display:block}#ui-root{pointer-events:none;z-index:10;position:fixed;inset:0}#ui-root .interactive{pointer-events:auto}#crosshair{background:#eae2d0d9;border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;transition:transform .12s,opacity .12s;position:absolute;top:50%;left:50%;box-shadow:0 0 4px #000c}#crosshair.hidden{opacity:0}#crosshair.active{background:var(--accent);transform:scale(2.2)}#interact-prompt{background:var(--panel-bg);border:1px solid var(--panel-border);letter-spacing:.03em;opacity:0;white-space:nowrap;border-radius:4px;padding:8px 16px;font-size:14px;transition:opacity .15s,transform .15s;position:absolute;top:58%;left:50%;transform:translate(-50%)}#interact-prompt.visible{opacity:1;transform:translate(-50%)translateY(-6px)}#interact-prompt kbd{background:var(--accent);color:#1a1408;border-radius:3px;margin-right:8px;padding:1px 6px;font-size:12px;font-weight:700;display:inline-block}#objective-tracker{background:var(--panel-bg);border:1px solid var(--panel-border);letter-spacing:.02em;border-radius:4px;max-width:380px;padding:10px 16px;font-size:13px;position:absolute;top:24px;left:24px}#objective-tracker .label{font-family:var(--font-display);text-transform:uppercase;color:var(--accent);letter-spacing:.12em;align-items:center;gap:6px;margin-bottom:5px;font-size:10px;font-weight:600;display:flex}#objective-tracker .label .hud-icon{color:var(--accent)}#status-bar{color:var(--ink-dim);letter-spacing:.08em;gap:10px;font-size:11px;display:flex;position:absolute;top:24px;right:24px}#status-bar span.badge{border:1px solid var(--panel-border);background:var(--panel-bg);border-radius:4px;align-items:center;gap:6px;padding:4px 10px;display:flex}#toast-stack{flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:90px;left:50%;transform:translate(-50%)}.toast{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:4px;padding:8px 18px;font-size:13px;animation:.3s toast-in,.4s 2.6s forwards toast-out}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{to{opacity:0;transform:translateY(-6px)}}.letterbox-bar{background:var(--void);z-index:20;height:12vh;transition:transform .9s cubic-bezier(.22,1,.36,1);position:absolute;left:0;right:0;transform:translateY(-100%)}.letterbox-bar.top{top:0}.letterbox-bar.bottom{bottom:0;transform:translateY(100%)}.letterbox-bar.visible{transform:translateY(0)}#cinematic-caption{text-align:center;letter-spacing:.04em;text-shadow:0 2px 12px #000000e6;opacity:0;max-width:640px;font-size:17px;line-height:1.6;transition:opacity .6s;position:absolute;bottom:15vh;left:50%;transform:translate(-50%)}#cinematic-caption.visible{opacity:1}.panel-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;background:#0405068c;justify-content:center;align-items:center;transition:opacity .25s;display:flex;position:absolute;inset:0}.panel-overlay.visible{opacity:1;pointer-events:auto}.panel{background:var(--panel-bg);border:1px solid var(--panel-border);color:var(--ink);border-radius:6px;padding:28px 32px;animation:.3s panel-fade-in;box-shadow:0 20px 60px #0009}@keyframes panel-fade-in{0%{opacity:0;transform:scale(.97)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.panel h2{font-family:var(--font-display);letter-spacing:.05em;color:var(--accent);text-transform:uppercase;margin:0 0 4px;font-size:24px;font-weight:600}.panel .subtitle{color:var(--ink-dim);margin-bottom:18px;font-size:12px}.close-hint{color:var(--ink-dim);font-size:11px;position:absolute;bottom:16px;right:20px}.settings-label{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-dim);margin:16px 0 8px;font-size:11px}.settings-tier-row{gap:18px;display:flex}.settings-radio,.settings-checkbox-row{color:var(--ink);cursor:pointer;align-items:center;gap:8px;padding:6px 0;font-size:14px;display:flex}.settings-radio input,.settings-checkbox-row input{accent-color:var(--accent);cursor:pointer;width:15px;height:15px}#dialogue-panel{width:620px}#dialogue-speaker{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:8px;font-size:15px;font-weight:600}#dialogue-text{min-height:70px;margin-bottom:18px;font-size:16px;line-height:1.6}#dialogue-options{flex-direction:column;gap:8px;display:flex}.dialogue-option{text-align:left;background:var(--surface);border:1px solid var(--surface-border);color:var(--ink);cursor:pointer;border-radius:4px;align-items:center;padding:10px 14px;font-size:14px;line-height:1.4;transition:background .15s,border-color .15s;display:flex}.dialogue-option:hover{background:var(--surface-hover);border-color:var(--panel-border)}.dialogue-option.locked{color:var(--ink-dim);border-color:var(--surface-border);cursor:default;background:#ffffff04}.dialogue-option .tag{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;align-items:center;gap:4px;margin-right:8px;font-size:10px;display:inline-flex}.dialogue-option.locked .tag,.dialogue-option.locked .tag .hud-icon{color:var(--ink-dim)}#journal-panel{gap:20px;width:760px;height:74vh;display:flex}.journal-col{flex:1;padding-right:6px;overflow-y:auto}.journal-col::-webkit-scrollbar{width:6px}.journal-col::-webkit-scrollbar-thumb{background:var(--accent-dim);border-radius:3px}.journal-entry{background:var(--surface);border:1px solid var(--surface-border);cursor:pointer;border-radius:4px;margin-bottom:8px;padding:12px;transition:background .15s,border-color .15s}.journal-entry:hover{background:var(--surface-hover);border-color:var(--panel-border)}.journal-entry.selected{background:var(--surface-hover);border-color:var(--accent-dim)}.journal-entry.corrupted{border-color:#a055554d}.journal-entry.corrupted:hover{border-color:var(--corrupt-dim)}.journal-entry .title{margin-bottom:3px;font-size:13px;font-weight:600}.journal-entry .meta{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.06em;font-size:10px}.journal-detail{border-left:1px solid var(--panel-border);flex:1.4;padding:4px 16px;font-size:14px;line-height:1.7;overflow-y:auto}.journal-detail .corrupt-text{color:var(--corrupt);font-style:italic}#evidence-board .clue-node{border:1px solid var(--panel-border);cursor:pointer;background:#d9a44114;border-radius:3px;margin:5px;padding:8px 14px;font-size:12px;transition:background .15s,border-color .15s;display:inline-block}#evidence-board .clue-node:hover{background:var(--surface-hover);border-color:var(--accent)}#evidence-board .clue-node.selected{background:var(--accent);color:#1a1408;border-color:var(--accent)}#evidence-connections{color:var(--ink-dim);margin-top:14px;font-size:12px;line-height:1.6}.map-fade-in{animation:.35s map-fade-in}@keyframes map-fade-in{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.map-canvas{border:1px solid var(--panel-border);background:#05060a;border-radius:6px;width:100%;height:100%;display:block}.map-header{pointer-events:none;position:absolute;top:18px;left:24px}.map-title-row{align-items:center;gap:9px;display:flex}.map-title-row .hud-icon{color:var(--accent);filter:drop-shadow(0 2px 6px #000c)}.map-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);text-shadow:0 2px 10px #000c;font-size:22px;font-weight:700}.map-subtitle{color:var(--ink-dim);text-shadow:0 2px 8px #000c;margin-top:2px;font-size:12px}.map-hint{color:var(--ink-dim);letter-spacing:.04em;pointer-events:none;font-size:11px;position:absolute;bottom:14px;right:22px}#repair-panel{width:560px}.repair-row{border-bottom:1px solid var(--surface-border);border-radius:4px;justify-content:space-between;align-items:center;margin:0 -12px;padding:10px 12px;transition:background .15s;display:flex}.repair-row:hover{background:var(--surface)}.repair-row .name{align-items:center;gap:8px;font-size:14px;display:flex}.repair-row .name .hud-icon{color:var(--accent-dim)}.repair-row .status{color:var(--ink-dim);align-items:center;gap:6px;font-size:11px;display:flex}.repair-row .status .hud-icon{color:var(--ink-dim)}.repair-row .status.done,.repair-row .status.done .hud-icon{color:var(--success)}.repair-row .status.ready .hud-icon{color:var(--accent)}.repair-row .bar-track{background:#ffffff14;border-radius:3px;width:140px;height:5px;margin:0 12px;overflow:hidden}.repair-row .bar-fill{background:var(--accent);height:100%}.repair-row button{background:var(--accent);color:#1a1408;cursor:pointer;border:1px solid #0000;border-radius:3px;padding:5px 12px;font-size:11px;font-weight:600;transition:background .15s,transform .1s}.repair-row button:hover:not(:disabled){background:#ecc06a}.repair-row button:active:not(:disabled){transform:translateY(1px)}.repair-row button:disabled{color:var(--ink-dim);border-color:var(--surface-border);cursor:not-allowed;background:#ffffff0f}#power-puzzle-panel{width:640px}#power-nodes{justify-content:center;gap:16px;margin:20px 0;display:flex}.power-node{border:1px solid var(--panel-border);cursor:pointer;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:120px;height:100px;transition:all .15s;display:flex}.power-node .icon{font-size:22px}.power-node .name{text-transform:uppercase;letter-spacing:.05em;font-size:11px}.power-node .pips{gap:3px;display:flex}.power-node .pip{background:#ffffff26;border-radius:50%;width:8px;height:8px}.power-node .pip.filled{background:var(--accent)}.power-node.selected{border-color:var(--accent);box-shadow:0 0 16px #d9a44166}#threat-indicator{text-align:center;letter-spacing:.04em;margin-bottom:6px;font-size:13px}#threat-timer-track{background:#ffffff14;border-radius:3px;width:100%;height:6px;margin-bottom:16px;overflow:hidden}#threat-timer-fill{background:linear-gradient(90deg,#d9a441,#c25b3f);width:100%;height:100%}.skill-check-result{border:1px solid var(--panel-border);pointer-events:none;background:#000000b3;border-radius:3px;padding:4px 10px;font-size:11px;position:absolute}button.text-btn{background:var(--surface);border:1px solid var(--surface-border);color:var(--accent);cursor:pointer;letter-spacing:.02em;border-radius:4px;padding:7px 14px;font-size:12px;transition:background .15s,border-color .15s}button.text-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent-dim);color:#ecc06a}button.text-btn:disabled{color:var(--ink-dim);cursor:not-allowed;border-color:var(--surface-border);opacity:.6;background:#ffffff04}.dialogue-option:focus-visible,.repair-row button:focus-visible,#menu-panel button.menu-btn:focus-visible,button.text-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.look-prompt{opacity:0;pointer-events:none;cursor:pointer;z-index:15;background:0 0;justify-content:center;align-items:flex-end;padding-bottom:3vh;transition:opacity .25s;display:flex;position:absolute;inset:0}.look-prompt.visible{opacity:1;pointer-events:auto}.look-prompt-inner{background:var(--panel-bg);border:1px solid var(--panel-border);letter-spacing:.04em;text-transform:uppercase;border-radius:20px;align-items:center;gap:10px;padding:10px 22px;font-size:13px;animation:2.2s ease-in-out infinite look-prompt-pulse;display:flex}.look-prompt-icon{color:var(--accent);font-size:18px}@keyframes look-prompt-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}#menu-panel{text-align:center;width:420px}#menu-panel button.menu-btn{border:1px solid var(--panel-border);width:100%;color:var(--ink);letter-spacing:.06em;cursor:pointer;text-transform:uppercase;background:#ffffff0a;border-radius:4px;margin:8px 0;padding:12px;font-size:14px;transition:background .15s,border-color .15s;display:block}#menu-panel button.menu-btn:hover{border-color:var(--accent);background:#d9a44126}.fade-black{background:var(--void);z-index:30;opacity:0;pointer-events:none;transition:opacity 1.2s;position:fixed;inset:0}.fade-black.visible{opacity:1}.loading-indicator{z-index:31;opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:14px;transition:opacity .3s;display:flex;position:fixed;inset:0}.loading-indicator.visible{opacity:1}.loading-spinner{border:2px solid var(--panel-border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite loading-spin}.loading-text{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);font-size:12px}@keyframes loading-spin{to{transform:rotate(360deg)}}
