*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0a;--amber:#ffb000;--amber-dim:#996a00;--amber-glow:#ffb00066;--red:#ff2020;--green:#0c6;--blue:#08f;--text-shadow-glow:0 0 4px #ffb00099, 0 0 12px #ffb00026;--font-mono:"IBM Plex Mono", "Courier New", monospace}html,body{background:var(--bg);height:100%;color:var(--amber);font-family:var(--font-mono);font-size:16px;line-height:1.6;overflow:hidden}a{color:var(--amber);text-underline-offset:3px;text-decoration:underline}a:visited{color:var(--amber-dim)}a:hover{text-shadow:var(--text-shadow-glow)}body{position:relative}#app{z-index:1;flex-direction:column;max-width:100vw;height:100dvh;display:flex;position:relative;overflow-x:hidden}#crt-overlay{z-index:1000;pointer-events:none;width:100%;height:100%;animation:.15s infinite alternate crt-flicker;position:fixed;top:0;left:0}#crt-overlay:after{content:"";background:repeating-linear-gradient(#0000 0 2px,#00000026 2px 4px);width:100%;height:100%;position:absolute;top:0;left:0}@keyframes crt-flicker{0%{opacity:.97}50%{opacity:1}to{opacity:.98}}.reading-mode #crt-overlay{opacity:.98;animation:none}#glitch-overlay{z-index:999;pointer-events:none;opacity:0;width:100%;height:100%;position:fixed;top:0;left:0}#glitch-overlay.active{animation:.2s steps(4,end) forwards glitch-effect}@keyframes glitch-effect{0%{opacity:1;clip-path:inset(0 0 85%);background:var(--bg)}20%{clip-path:inset(20% 0 50%);background:var(--bg);transform:translate(-4px)}40%{clip-path:inset(60% 0 10%);background:var(--bg);transform:translate(6px)}60%{clip-path:inset(30% 0 40%);background:var(--bg);transform:translate(-2px)}80%{clip-path:inset(70% 0 5%);background:var(--bg);transform:translate(3px)}to{opacity:0;clip-path:inset(0);transform:translate(0)}}.boot-screen{flex-direction:column;flex:1;justify-content:center;padding:40px 60px;display:flex;overflow:hidden}.boot-line{opacity:0;white-space:pre;text-shadow:var(--text-shadow-glow);font-size:14px;line-height:1.8}.boot-line.visible{opacity:1}.boot-line.warn{color:var(--red)}.boot-line.ok{color:var(--green)}.boot-line.highlight{color:var(--amber);font-weight:700}.terminal-container{flex-direction:column;height:100dvh;padding:20px 40px 32px;display:flex;overflow:hidden}.terminal-header{border-bottom:1px solid var(--amber-dim);color:var(--amber-dim);text-shadow:var(--text-shadow-glow);white-space:pre;flex-shrink:0;margin-bottom:16px;padding-bottom:8px;font-size:13px}.terminal-header .session-warn{color:var(--red)}.terminal-content{scrollbar-width:thin;scrollbar-color:var(--amber-dim) var(--bg);flex:1;padding-bottom:16px;overflow:hidden auto}.terminal-content::-webkit-scrollbar{width:6px}.terminal-content::-webkit-scrollbar-track{background:var(--bg)}.terminal-content::-webkit-scrollbar-thumb{background:var(--amber-dim)}.module-box{white-space:pre;text-shadow:var(--text-shadow-glow);font-size:15px;line-height:1.7}.module-entry{cursor:pointer;transition:color .1s}.module-entry:hover{color:#ffe080;text-shadow:0 0 6px #ffe080b3,0 0 16px #ffb0004d}.module-status-partial{color:var(--amber-dim)}.module-status-open{color:var(--green)}.command-line{text-shadow:var(--text-shadow-glow);flex-shrink:0;align-items:center;padding:12px 0;font-size:15px;display:flex}.command-line .prompt{white-space:pre;margin-right:1ch}.command-line input{width:0;color:var(--amber);font-family:var(--font-mono);caret-color:#0000;text-shadow:var(--text-shadow-glow);background:0 0;border:none;outline:none;flex:none;padding:0;font-size:15px}.blinking-cursor{color:var(--amber);font-weight:700;animation:1s step-end infinite blink;display:inline-block}.cmd-error{color:var(--red);opacity:0;margin-left:2ch;transition:opacity .5s}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.status-bar{color:var(--amber-dim);border-top:1px solid var(--amber-dim);z-index:500;background:#0a0a0af2;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 40px;font-size:12px;display:flex;position:fixed;bottom:0;left:0;right:0}.status-bar .path{text-shadow:var(--text-shadow-glow)}.status-bar .access-level{color:var(--red)}.status-bar .session-time{color:var(--green)}.scanner-alert{width:100%;color:var(--amber);border-bottom:1px solid var(--amber-dim);text-shadow:var(--text-shadow-glow);white-space:normal;word-break:break-word;z-index:999;pointer-events:none;opacity:0;background:#0a0a0af2;padding:6px 40px;font-size:15px;position:fixed;top:0;left:0;transform:translateY(-100%)}.scanner-alert.warn{color:var(--red);border-bottom-color:var(--red);text-shadow:0 0 4px #ff202099,0 0 12px #ff202026}.scanner-alert.warn .scanner-alert-tag{color:var(--red)}.scanner-alert-tag{color:var(--amber-dim);margin-right:1ch}.scanner-alert.active{animation:7s ease-in-out forwards scanner-stripe}@keyframes scanner-stripe{0%{opacity:0;transform:translateY(-100%)}5%{opacity:1;transform:translateY(0)}85%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}.case-box{white-space:pre;text-shadow:var(--text-shadow-glow);font-size:15px;line-height:1.7}.fragment-entry{cursor:pointer;transition:color .1s}.fragment-entry:hover{color:#ffe080;text-shadow:0 0 6px #ffe080b3,0 0 16px #ffb0004d}.reader-container{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.reader-header{color:var(--amber-dim);border-bottom:1px solid var(--amber-dim);text-shadow:var(--text-shadow-glow);flex-shrink:0;padding:20px 40px 12px;font-size:13px}.reader-body{scrollbar-width:thin;scrollbar-color:var(--amber-dim) var(--bg);flex:1;justify-content:center;padding:40px 0;display:flex;overflow-y:auto}.reader-body::-webkit-scrollbar{width:6px}.reader-body::-webkit-scrollbar-track{background:var(--bg)}.reader-body::-webkit-scrollbar-thumb{background:var(--amber-dim)}.reader-text{width:100%;max-width:65ch;color:var(--amber);text-shadow:0 0 3px #ffb0004d;padding:0 40px;font-size:17px;line-height:1.8}.reader-text p{margin-bottom:1.4em}.reader-text em{color:var(--amber-dim);font-style:italic}.reader-text strong{color:var(--green);font-weight:400}.reader-text .section-break{text-align:center;color:var(--amber-dim);letter-spacing:.5em;margin:.5em 0;display:block}.reader-text .fragment-title{color:var(--amber-dim);text-transform:uppercase;letter-spacing:.1em;margin-bottom:2em;font-size:14px}.reader-nav{border-top:1px solid var(--amber-dim);flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:28px;padding:12px 40px;display:flex}.reader-nav-btn{cursor:pointer;color:var(--amber);border:1px solid var(--amber-dim);font-family:var(--font-mono);text-shadow:var(--text-shadow-glow);background:0 0;padding:6px 16px;font-size:13px;transition:all .15s}.reader-nav-btn:hover{border-color:var(--amber);text-shadow:0 0 8px #ffb00080;background:#ffb0000d}.reader-nav-btn:disabled{opacity:.3;cursor:default}.reader-nav-btn:disabled:hover{border-color:var(--amber-dim);text-shadow:var(--text-shadow-glow);background:0 0}.reader-progress{color:var(--amber-dim);font-size:12px}.reader-progress-bar{letter-spacing:2px}.lore-container{white-space:pre-wrap;text-shadow:var(--text-shadow-glow);max-width:75ch;font-size:15px;line-height:1.8}.lore-title{color:var(--amber);margin-bottom:8px;font-size:16px;font-weight:700}.lore-subtitle{color:var(--amber-dim);margin-bottom:24px;font-size:13px}.lore-section{margin-bottom:24px}.lore-section-title{color:var(--green);margin-bottom:8px;font-size:14px}.lore-section-title.warn{color:var(--red)}.lore-text{color:var(--amber);font-size:15px}.lore-entry{cursor:pointer;padding:4px 0;transition:color .1s}.lore-entry:hover{color:#ffe080;text-shadow:0 0 6px #ffe080b3}.node-link{color:#0c6;text-underline-offset:3px;cursor:pointer;text-decoration:underline;display:block}.node-link:hover{color:#3f9;text-shadow:0 0 8px #0c69}.back-btn{cursor:pointer;color:var(--amber-dim);text-shadow:var(--text-shadow-glow);margin-bottom:16px;font-size:13px;transition:color .1s;display:inline-block}.back-btn:hover{color:var(--amber)}.text-red{color:var(--red)}.text-green{color:var(--green)}.text-blue{color:var(--blue)}.text-dim{color:var(--amber-dim)}.text-amber{color:var(--amber)}.text-bold{font-weight:700}.type-hidden{opacity:0}.type-visible{opacity:1}::selection{color:#ffe080;background:#ffb0004d}@media (width<=600px){.terminal-container{padding:12px 12px 48px;padding-top:max(12px, env(safe-area-inset-top));padding-left:max(12px, env(safe-area-inset-left));padding-right:max(12px, env(safe-area-inset-right))}.boot-screen{padding:20px 16px}.boot-line{white-space:pre-wrap;font-size:12px}.terminal-header{white-space:pre-wrap;word-break:break-word;color:var(--amber);font-size:13px}.back-btn{color:var(--amber);margin-bottom:12px;padding:8px 0;font-size:15px;display:block}.module-box,.case-box{font-size:clamp(9px,2.92398vw - .701754px,15px);overflow-x:hidden}@media (pointer:coarse){.command-line{display:none}}.command-line{font-size:13px}.command-line .prompt{white-space:normal}.status-bar{padding:6px 12px;padding-bottom:max(6px, env(safe-area-inset-bottom));grid-template-columns:1fr 1fr;gap:2px 0;font-size:10px;display:grid}.status-bar .path{grid-column:1/-1}.status-bar .access-level{text-align:left}.status-bar .session-time{text-align:right}.scanner-alert{padding:6px 12px;font-size:11px}.reader-header{color:var(--amber);white-space:normal;padding:12px 16px 8px;font-size:13px}.reader-text{padding:0 16px;font-size:15px}.reader-nav{margin-bottom:48px;padding:8px 12px}.reader-nav-btn{padding:6px 10px;font-size:12px}.lore-container{font-size:14px}}
