@import"https://fonts.googleapis.com/css2?family=VT323&family=IBM+Plex+Mono:wght@400;500;700&display=swap";.crt-container{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:#111;overflow:hidden}.crt-bezel{position:relative;padding:20px;background:linear-gradient(145deg,#2a2a2a,#1a1a1a);border-radius:20px;box-shadow:0 0 0 4px #333,0 0 0 8px #222,0 20px 40px #000c,inset 0 2px 4px #ffffff1a}.crt-container.fullscreen .crt-bezel{padding:0;background:none;border-radius:0;box-shadow:none}.crt-screen{position:relative;width:80vw;max-width:1200px;height:80vh;max-height:800px;background:#000;overflow:hidden;border-radius:25px;box-shadow:inset 0 0 60px #000c,inset 0 0 20px #000000e6}.crt-container.fullscreen .crt-screen{width:100vw;max-width:none;height:100vh;max-height:none;border-radius:0;box-shadow:none}.crt-container.fullscreen .crt-content{padding:20px 40px}.crt-container.fullscreen .crt-vignette{box-shadow:inset 0 0 100px #00000080,inset 0 0 50px #0000004d}.crt-content{position:relative;z-index:1;width:100%;height:100%;padding:40px;overflow-y:auto}.crt-scanlines{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.4),rgba(0,0,0,.4) 1px,transparent 1px,transparent 2px)}@keyframes flicker{0%{opacity:.97}5%{opacity:.95}10%{opacity:.98}15%{opacity:.96}20%{opacity:.99}25%{opacity:.95}30%{opacity:.98}35%{opacity:.97}40%{opacity:.99}45%{opacity:.96}50%{opacity:.98}55%{opacity:.97}60%{opacity:.99}65%{opacity:.95}70%{opacity:.98}75%{opacity:.97}80%{opacity:.99}85%{opacity:.96}90%{opacity:.98}95%{opacity:.97}to{opacity:.99}}.crt-screen:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;pointer-events:none;animation:flicker .3s infinite}.crt-glare{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.03) 0%,transparent 40%,transparent 60%,rgba(255,255,255,.02) 100%)}.crt-vignette{position:absolute;top:0;left:0;width:100%;height:100%;z-index:4;pointer-events:none;box-shadow:inset 0 0 150px #000000e6,inset 0 0 80px #0009;border-radius:inherit}@keyframes textShadowPulse{0%,to{text-shadow:0 0 2px #33ff33,0 0 5px #33ff33,0 0 10px rgba(51,255,51,.5)}50%{text-shadow:0 0 3px #33ff33,0 0 8px #33ff33,0 0 15px rgba(51,255,51,.6)}}.crt-content{animation:textShadowPulse 4s ease-in-out infinite}.crt-screen:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:5;pointer-events:none;background:radial-gradient(ellipse at center,transparent 60%,rgba(255,0,0,.02) 80%,rgba(255,0,0,.05) 100%),radial-gradient(ellipse at center,transparent 60%,rgba(0,0,255,.02) 80%,rgba(0,0,255,.05) 100%);mix-blend-mode:screen}@keyframes powerOn{0%{transform:scaleY(.01) scaleX(.5);filter:brightness(10)}20%{transform:scaleY(.01) scaleX(1);filter:brightness(5)}40%{transform:scaleY(1) scaleX(1);filter:brightness(1.5)}to{transform:scaleY(1) scaleX(1);filter:brightness(1)}}.crt-screen{animation:powerOn .5s ease-out forwards}.crt-content::-webkit-scrollbar{width:8px}.crt-content::-webkit-scrollbar-track{background:#0a0a0a}.crt-content::-webkit-scrollbar-thumb{background:#3f3;border-radius:4px}.crt-content::-webkit-scrollbar-thumb:hover{background:#6f6}.barrel-outer{position:relative;width:100%;height:100%;overflow:hidden;border-radius:20px}.barrel-perspective{width:100%;height:100%;perspective-origin:center center;transform-style:preserve-3d}.barrel-content{width:100%;height:100%;transform-origin:center center;transform-style:preserve-3d;backface-visibility:hidden}.barrel-edge-shadow{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:100;background:radial-gradient(ellipse 80% 70% at 50% 50%,transparent 0%,transparent 50%,rgba(0,0,0,.15) 70%,rgba(0,0,0,.4) 85%,rgba(0,0,0,.7) 100%);box-shadow:inset 0 0 100px 20px #0000004d,inset 0 0 200px 50px #00000026;border-radius:inherit}.barrel-outer:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:100%;pointer-events:none;z-index:101;background:radial-gradient(ellipse 30% 20% at 30% 20%,rgba(255,255,255,.06) 0%,transparent 50%);transform:rotate(-15deg)}.barrel-outer:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:99;border:2px solid transparent;border-radius:inherit;background:linear-gradient(to right,rgba(0,0,0,.3) 0%,transparent 3%,transparent 97%,rgba(0,0,0,.3) 100%),linear-gradient(to bottom,rgba(0,0,0,.3) 0%,transparent 3%,transparent 97%,rgba(0,0,0,.3) 100%);background-origin:border-box;background-clip:padding-box}.crt-flicker-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:15;pointer-events:none;mix-blend-mode:screen}.boot-sequence{display:flex;flex-direction:column;height:100%;padding:1rem;overflow:hidden}.boot-terminal{flex:1;overflow-y:auto;font-family:IBM Plex Mono,Courier New,monospace;font-size:.85rem;line-height:1.4}.boot-line{white-space:pre-wrap;animation:bootFadeIn .1s ease-out}@keyframes bootFadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.boot-normal{color:var(--color-primary)}.boot-header{color:var(--color-primary-bright);text-shadow:0 0 10px var(--color-primary-glow)}.boot-ok{color:var(--color-primary)}.boot-ok:before{content:""}.boot-warn{color:var(--color-amber)}.boot-error{color:#f44;text-shadow:0 0 5px rgba(255,68,68,.5)}.boot-progress{color:var(--color-primary)}.boot-terminal::-webkit-scrollbar{width:6px}.boot-terminal::-webkit-scrollbar-track{background:#0a0a0a}.boot-terminal::-webkit-scrollbar-thumb{background:var(--color-primary-dim);border-radius:3px}.boot-skip-hint{margin-top:1rem;color:var(--color-primary-dim);animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:.3}}.generating-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:2rem}.generating-content{max-width:700px;width:100%}.generating-title{font-size:1.8rem;letter-spacing:.15em;margin-bottom:1.5rem;color:var(--color-primary);text-transform:uppercase}.progress-container{margin:1.5rem 0}.progress-bar{height:8px;background:var(--color-background-secondary, rgba(0, 255, 0, .1));border:1px solid var(--color-primary, #0f0);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:var(--color-primary, #0f0);transition:width .5s ease-out;box-shadow:0 0 10px var(--color-primary, #0f0)}.progress-text{font-size:.9rem;opacity:.7;font-family:monospace}.step-info{margin:1.5rem 0;padding:1rem;border:1px solid var(--color-border, rgba(0, 255, 0, .3));border-radius:4px;background:var(--color-background-secondary, rgba(0, 0, 0, .3))}.step-title{font-size:1.2rem;margin-bottom:.5rem;color:var(--color-primary, #0f0);letter-spacing:.1em}.step-description{font-size:.95rem;line-height:1.5;opacity:.8;font-style:italic}.activity-container{margin:1rem 0}.activity-bar{height:4px;background:var(--color-background-secondary, rgba(0, 255, 0, .1));border-radius:2px;overflow:hidden;position:relative}.activity-pulse{position:absolute;height:100%;width:30%;background:linear-gradient(90deg,transparent,var(--color-primary, #0f0),transparent);animation:activity-sweep 1.5s ease-in-out infinite}@keyframes activity-sweep{0%{left:-30%}to{left:100%}}.log-container{margin:1rem 0;padding:.75rem;background:#00000080;border:1px solid var(--color-border, rgba(0, 255, 0, .2));border-radius:4px;font-family:Courier New,monospace;font-size:.75rem;text-align:left;max-height:180px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-primary, #0f0) transparent}.log-container::-webkit-scrollbar{width:6px}.log-container::-webkit-scrollbar-track{background:transparent}.log-container::-webkit-scrollbar-thumb{background:var(--color-primary, #0f0);border-radius:3px}.log-entry{padding:.15rem 0;color:var(--color-text-dim, rgba(0, 255, 0, .7));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:log-appear .3s ease-out}.log-entry:last-child{color:var(--color-primary, #0f0)}.log-entry.log-done{color:var(--color-success, #0f0);font-weight:700}.log-entry.log-boot{color:var(--color-highlight, #0ff);font-weight:700}@keyframes log-appear{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.sub-progress-container{margin:1rem 0}.sub-progress-bar{height:6px;background:var(--color-background-secondary, rgba(0, 255, 0, .1));border:1px solid var(--color-border, rgba(0, 255, 0, .3));border-radius:3px;overflow:hidden;margin-bottom:.25rem}.sub-progress-fill{height:100%;background:var(--color-secondary, #0ff);transition:width .3s ease-out;box-shadow:0 0 8px var(--color-secondary, #0ff)}.sub-progress-text{font-size:.8rem;opacity:.6;font-family:monospace}.completion-text{margin-top:1.5rem;font-size:1.1rem;color:var(--color-primary, #0f0);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.generating-error{text-align:center}.error-title{font-size:1.4rem;color:var(--color-error, #f44);margin-bottom:1rem}.error-message{font-size:.9rem;opacity:.7;margin-bottom:2rem;font-family:monospace}.retry-button{padding:.75rem 1.5rem;background:transparent;border:1px solid var(--color-primary, #0f0);color:var(--color-primary, #0f0);font-family:inherit;font-size:1rem;cursor:pointer;transition:all .2s}.retry-button:hover{background:var(--color-primary, #0f0);color:var(--color-background, #000)}.game-sidebar{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.5rem;height:100%;padding:.5rem;font-family:IBM Plex Mono,Courier New,monospace;font-size:.825rem;color:var(--color-primary);border-left:1px solid var(--color-primary-dim);overflow:hidden}.sidebar-loading,.sidebar-error{display:flex;align-items:center;justify-content:center;grid-column:1 / -1;height:100%;color:var(--color-primary-dim)}.sidebar-error{color:var(--color-amber)}.sidebar-column{display:flex;flex-direction:column;min-height:0;overflow:hidden}.sidebar-left,.sidebar-middle{border-right:1px solid var(--color-primary-dim);padding-right:.5rem}.sidebar-section{margin-bottom:.5rem}.sidebar-section:last-child{margin-bottom:0}.character-section{text-align:center;padding-bottom:.5rem;border-bottom:1px solid var(--color-primary-dim);flex-shrink:0}.sidebar-title{margin:0 0 .25rem;font-size:1rem;font-weight:700;color:var(--color-primary-bright);text-shadow:0 0 8px var(--color-primary-glow)}.character-traits{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem}.trait-tag{padding:.1rem .3rem;font-size:.6rem;background:#33ff331a;border:1px solid var(--color-primary-dim);border-radius:2px}.section-header{margin:0 0 .25rem;font-size:.66rem;font-weight:700;color:var(--color-primary-dim);letter-spacing:.1em;text-shadow:0 0 1px var(--color-primary-dim)!important;animation:none!important}.empty-section{font-size:.66rem;color:var(--color-primary-dim);font-style:italic;opacity:.6}.abilities-section{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.abilities-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.ability-item{display:grid;grid-template-columns:1fr auto auto;gap:.2rem;align-items:center;margin-bottom:.2rem;font-size:.66rem}.ability-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ability-level{color:var(--color-primary-dim);font-size:.6rem;text-shadow:0 0 1px var(--color-primary-dim)!important;animation:none!important}.ability-progress{width:1.5rem;height:3px;background:#3f33;border-radius:1px;overflow:hidden}.ability-progress-bar{height:100%;background:var(--color-primary);transition:width .3s ease}.inventory-section{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;border-bottom:1px solid var(--color-primary-dim);padding-bottom:.5rem}.inventory-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.inventory-item{padding:.15rem .25rem;font-size:.66rem;margin-bottom:.15rem;background:#33ff330d;border-left:2px solid var(--color-primary-dim);cursor:default;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-item:hover{background:#33ff3326;border-left-color:var(--color-primary)}.objectives-section{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.objectives-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.objective-item{padding:.15rem 0;font-size:.66rem;margin-bottom:.15rem;display:flex;align-items:flex-start;gap:.25rem}.objective-item{margin-bottom:.5rem}.objective-name{font-size:.72rem;font-weight:700;color:var(--color-primary);margin-bottom:.2rem}.objective-steps{list-style:none;margin:0;padding:0;padding-left:.25rem}.objective-step{display:flex;align-items:flex-start;gap:.2rem;font-size:.72rem;margin-bottom:.1rem;color:var(--color-primary-dim)}.objective-step.completed{opacity:.5}.step-checkbox{flex-shrink:0;font-family:IBM Plex Mono,Courier New,monospace;color:var(--color-primary-dim)}.step-text-completed{text-decoration:line-through}.map-section{flex:1;min-height:0;display:flex;flex-direction:column;height:100%}.map-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.map-header .section-header{margin:0}.map-zoom-controls{display:flex;gap:.25rem}.zoom-button{width:1.25rem;height:1.25rem;padding:0;background:#33ff331a;border:1px solid var(--color-primary-dim);border-radius:2px;color:var(--color-primary);font-family:IBM Plex Mono,Courier New,monospace;font-size:.875rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.zoom-button:hover:not(:disabled){background:#33ff3340;border-color:var(--color-primary)}.zoom-button:disabled{opacity:.3;cursor:not-allowed}.ascii-map{margin:0;padding:.25rem;font-size:.93rem;line-height:1.15;font-family:IBM Plex Mono,Courier New,monospace;background:#0000004d;border:1px solid var(--color-primary-dim);border-radius:2px;overflow:hidden;white-space:pre;flex:1;display:flex;flex-direction:column;justify-content:center}.ascii-map div{min-height:1.29rem}.map-legend{display:flex;justify-content:space-around;margin-top:.25rem;padding-top:.2rem;font-size:.93rem;color:var(--color-primary-dim);flex-shrink:0;text-shadow:0 0 1px var(--color-primary-dim)!important;animation:none!important}.map-legend span{display:flex;align-items:center;gap:.15rem}.abilities-list::-webkit-scrollbar,.inventory-list::-webkit-scrollbar,.objectives-list::-webkit-scrollbar{width:3px}.abilities-list::-webkit-scrollbar-track,.inventory-list::-webkit-scrollbar-track,.objectives-list::-webkit-scrollbar-track{background:#33ff331a}.abilities-list::-webkit-scrollbar-thumb,.inventory-list::-webkit-scrollbar-thumb,.objectives-list::-webkit-scrollbar-thumb{background:var(--color-primary-dim);border-radius:2px}.abilities-list::-webkit-scrollbar-thumb:hover,.inventory-list::-webkit-scrollbar-thumb:hover,.objectives-list::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.game-screen.game-screen-with-sidebar{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden}.game-screen-with-sidebar .game-main{flex:0 0 50%;min-height:0;overflow:hidden}.game-screen-with-sidebar .game-sidebar-container{width:100%;flex:1;min-height:200px;max-height:none;flex-shrink:0;overflow:hidden;border-top:1px solid var(--color-primary-dim)}.game-main .terminal-container{height:100%}.game-screen-with-sidebar .game-sidebar{border-left:none;overflow:hidden}.game-screen-with-sidebar .sidebar-column{overflow-y:auto}.game-screen-with-sidebar .abilities-list,.game-screen-with-sidebar .inventory-list,.game-screen-with-sidebar .objectives-list{max-height:none}.admin-panel{position:fixed;top:0;left:0;width:350px;height:100vh;background:#0a0a0a;border-right:2px solid #ff3333;z-index:9999;display:flex;flex-direction:column;font-family:IBM Plex Mono,Courier New,monospace;font-size:.85rem;color:#f33;transform:translate(-100%);transition:transform .3s ease-out;box-shadow:4px 0 20px #ff33334d}.admin-panel.open{transform:translate(0)}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #ff3333;background:linear-gradient(180deg,#1a0000,#0a0a0a)}.admin-header h2{margin:0;font-size:1rem;letter-spacing:.2em;text-shadow:0 0 10px rgba(255,51,51,.5)}.admin-close{background:transparent;border:1px solid #ff3333;color:#f33;width:24px;height:24px;cursor:pointer;font-family:inherit;font-weight:700}.admin-close:hover{background:#f33;color:#0a0a0a}.admin-tabs{display:flex;border-bottom:1px solid #330000}.admin-tabs button{flex:1;padding:.75rem;background:transparent;border:none;border-bottom:2px solid transparent;color:#633;cursor:pointer;font-family:inherit;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;transition:all .2s}.admin-tabs button:hover{color:#f33;background:#ff33330d}.admin-tabs button.active{color:#f33;border-bottom-color:#f33;background:#ff33331a}.admin-content{flex:1;overflow-y:auto;padding:1rem}.admin-actions .action-group{margin-bottom:1.5rem}.admin-actions h3{margin:0 0 .75rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#933}.action-btn{display:block;width:100%;padding:.75rem;margin-bottom:.5rem;background:#ff33331a;border:1px solid #663333;color:#f33;cursor:pointer;font-family:inherit;font-size:.8rem;text-align:left;transition:all .2s}.action-btn:hover:not(:disabled){background:#f333;border-color:#f33}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn.warning{border-color:#c60;color:#fa0}.action-btn.warning:hover:not(:disabled){background:#fa03;border-color:#fa0}.action-btn.danger{border-color:red;color:#f44}.action-btn.danger:hover:not(:disabled){background:#f003;border-color:#f44}.action-desc{display:block;font-size:.65rem;color:#666;margin-top:.25rem}.admin-message{padding:.75rem;margin-bottom:1rem;border:1px solid;font-size:.75rem}.admin-message.success{border-color:#3f3;color:#3f3;background:#33ff331a}.admin-message.error{border-color:#f33;color:#f33;background:#ff33331a}.session-list .list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:.5rem}.status-filter{flex:1;background:#0a0a0a;border:1px solid #663333;color:#f33;padding:.25rem .5rem;font-family:inherit;font-size:.7rem;cursor:pointer}.status-filter:focus{outline:none;border-color:#f33}.session-list button,.refresh-btn{background:transparent;border:1px solid #663333;color:#f33;padding:.25rem .5rem;cursor:pointer;font-family:inherit;font-size:.7rem}.session-list button:hover,.refresh-btn:hover{background:#f333}.list-hint{font-size:.6rem;color:#444;margin-bottom:.5rem;text-align:center}.no-sessions,.no-transcript{text-align:center;color:#666;padding:2rem}.session-item{padding:.75rem;margin-bottom:.5rem;background:#ff33330d;border:1px solid #330000;cursor:pointer;transition:all .2s}.session-item:hover{background:#ff33331a;border-color:#633}.session-item.in_progress{border-left:3px solid #33ff33}.session-item.completed{border-left:3px solid #3399ff}.session-item.abandoned{border-left:3px solid #666}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem;gap:.5rem}.session-title{font-size:.85rem;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.use-interview-btn{background:#39f3;border:1px solid #3399ff;color:#39f;padding:.2rem .5rem;font-size:.6rem;font-family:inherit;cursor:pointer;transition:all .2s;white-space:nowrap}.use-interview-btn:hover:not(:disabled){background:#39f6;border-color:#66b3ff;color:#66b3ff}.use-interview-btn:disabled{opacity:.5;cursor:not-allowed}.status-badge{font-size:.55rem;padding:.15rem .4rem;border-radius:2px;font-weight:700;letter-spacing:.05em}.status-badge.in_progress{background:#3f3;color:#000}.status-badge.completed{background:#39f;color:#000}.status-badge.abandoned{background:#666;color:#000}.session-meta{display:flex;gap:1rem;font-size:.65rem;color:#666}.session-viewer{display:flex;flex-direction:column;height:100%}.viewer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;gap:.5rem}.viewer-header button{background:transparent;border:1px solid #663333;color:#f33;padding:.25rem .75rem;cursor:pointer;font-family:inherit;flex-shrink:0}.viewer-title{flex:1;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#999}.live-indicator{display:inline-block;padding:.2rem .5rem;background:#f33;color:#000;font-size:.6rem;font-weight:700;letter-spacing:.1em;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.transcript-view{flex:1;overflow-y:auto;padding:.5rem;background:#000;border:1px solid #330000;font-size:.7rem;line-height:1.4}.transcript-entry{margin-bottom:.5rem;padding:.25rem 0;border-bottom:1px solid #1a0000}.entry-time{color:#444;margin-right:.5rem}.entry-speaker{font-weight:700;margin-right:.5rem}.transcript-entry.player .entry-speaker{color:#6f6}.transcript-entry.narrator .entry-speaker{color:#3f3}.transcript-entry.system .entry-speaker{color:#666}.entry-content{color:#ccc}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem}.stat-item{padding:.75rem;background:#ff33330d;border:1px solid #330000;text-align:center}.stat-value{display:block;font-size:1.5rem;font-weight:700;color:#f33;text-shadow:0 0 10px rgba(255,51,51,.5)}.stat-label{display:block;font-size:.6rem;color:#666;text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem}.loading{text-align:center;color:#666;padding:2rem}.admin-footer{display:flex;justify-content:space-between;padding:.5rem 1rem;border-top:1px solid #330000;font-size:.6rem}.dev-mode{color:#f33;font-weight:700;letter-spacing:.1em}.hint{color:#444}.admin-content::-webkit-scrollbar,.transcript-view::-webkit-scrollbar{width:6px}.admin-content::-webkit-scrollbar-track,.transcript-view::-webkit-scrollbar-track{background:#0a0a0a}.admin-content::-webkit-scrollbar-thumb,.transcript-view::-webkit-scrollbar-thumb{background:#300;border-radius:3px}.admin-content::-webkit-scrollbar-thumb:hover,.transcript-view::-webkit-scrollbar-thumb:hover{background:#600}.interview-section{margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #333}.interview-header{text-align:center;color:#666;font-size:.65rem;letter-spacing:.2em;margin:.75rem 0}.interview-exchange{margin-bottom:.5rem}.interview-section .transcript-entry{border-bottom:none;margin-bottom:.25rem;padding:.15rem 0}.interview-section .entry-content{color:#aaa}.navbar-container{position:fixed;top:0;left:0;right:0;z-index:10000;pointer-events:none}.navbar-trigger{height:20px;pointer-events:auto}.navbar{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;background:#0a0a0af2;border-bottom:1px solid #33ff33;font-family:IBM Plex Mono,Courier New,monospace;font-size:.75rem;color:#3f3;transform:translateY(-100%);transition:transform .2s ease-out;pointer-events:auto}.navbar-container.visible .navbar{transform:translateY(0)}.navbar-brand{font-weight:700;letter-spacing:.2em;font-size:.8rem}.navbar-controls{display:flex;gap:1.5rem;align-items:center}.navbar-item{display:flex;align-items:center;gap:.5rem}.navbar-item label{display:flex;align-items:center;gap:.3rem;cursor:pointer;color:#1a8c1a}.navbar-item select{background:#0a0a0a;border:1px solid #1a8c1a;color:#3f3;padding:.25rem .5rem;font-family:inherit;font-size:.7rem;cursor:pointer}.navbar-item select:focus{outline:none;border-color:#3f3}.navbar-item select option{background:#0a0a0a;color:#3f3}.navbar-item input[type=checkbox]{accent-color:#33ff33;cursor:pointer}.navbar-divider{width:1px;height:20px;background:#1a8c1a;margin:0 .5rem}.slider-item{min-width:120px}.slider-item input[type=range]{width:60px;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#1a8c1a;border-radius:2px;cursor:pointer}.slider-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;background:#3f3;border-radius:50%;cursor:pointer}.slider-item input[type=range]::-moz-range-thumb{width:12px;height:12px;background:#3f3;border-radius:50%;cursor:pointer;border:none}.slider-value{display:inline-block;width:1.5em;text-align:right;color:#3f3;font-size:.7rem}:root{--color-primary: #33ff33;--color-primary-dim: #1a8c1a;--color-primary-bright: #66ff66;--color-primary-glow: rgba(51, 255, 51, .5);--color-bg: #000000;--color-bg-elevated: #0a0a0a;--color-amber: #ffaa00;--color-error: #ff3333;--color-success: #33ff33;--font-terminal: "IBM Plex Mono", "Courier New", monospace;--font-mono: "IBM Plex Mono", "Courier New", monospace;--terminal-padding: 40px;--line-height: 1.6}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font-terminal);font-size:1.25rem;line-height:var(--line-height);color:var(--color-primary);background-color:var(--color-bg)}.terminal{min-height:100%;display:flex;flex-direction:column}.terminal-content{flex:1}h1,h2,h3,h4,h5,h6{font-family:var(--font-terminal);font-weight:400;color:var(--color-primary-bright);margin-bottom:1rem}.title{font-size:3rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem}.subtitle{font-size:1.5rem;color:var(--color-primary-dim);margin-bottom:2rem}p{margin-bottom:1rem}.dim{color:var(--color-primary-dim)}.bright{color:var(--color-primary-bright)}.amber{color:var(--color-amber)}.error{color:var(--color-error)}.blink{animation:blink 1s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}input,textarea{font-family:var(--font-terminal);font-size:1.25rem;color:var(--color-primary);background:transparent;border:none;outline:none;caret-color:var(--color-primary)}input::placeholder,textarea::placeholder{color:var(--color-primary-dim)}.prompt{display:flex;align-items:center;gap:.5rem}.prompt-symbol{color:var(--color-primary-bright)}.prompt-input{flex:1}a{color:var(--color-primary-bright);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}a:hover{border-bottom-color:var(--color-primary-bright)}::selection{background:var(--color-primary);color:var(--color-bg)}.home{margin-top:2rem}.home p{margin-bottom:.5rem}.typewriter{overflow:hidden;white-space:nowrap;animation:typing 2s steps(40,end)}@keyframes typing{0%{width:0}to{width:100%}}.loading{display:inline-block}.loading:after{content:"";animation:loadingDots 1.5s infinite}@keyframes loadingDots{0%{content:"."}33%{content:".."}66%{content:"..."}to{content:""}}.ascii-art{font-family:var(--font-mono);font-size:.75rem;line-height:1.2;white-space:pre;color:var(--color-primary-dim)}.divider{border:none;border-top:1px solid var(--color-primary-dim);margin:2rem 0}.divider-double{border-top:2px double var(--color-primary-dim)}.menu-item{display:block;padding:.5rem 0;cursor:pointer;transition:color .2s}.menu-item:hover,.menu-item.active{color:var(--color-primary-bright)}.menu-item:before{content:"> ";opacity:0;transition:opacity .2s}.menu-item:hover:before,.menu-item.active:before{opacity:1}.text-center{text-align:center}.text-right{text-align:right}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-4{margin-bottom:2rem}.no-crt-container{width:100vw;height:100vh;background:#000;display:flex;align-items:center;justify-content:center}.game-container{width:100%;height:100%;display:flex;flex-direction:column}.title-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;text-align:center;padding:2rem}.ascii-title{font-family:Courier New,Courier,monospace;font-size:.4rem;line-height:1;white-space:pre;color:var(--color-primary);margin-bottom:1rem;text-shadow:none;animation:none!important;letter-spacing:0;text-align:left}@media (min-width: 900px){.ascii-title{font-size:.6rem}}@media (min-width: 1200px){.ascii-title{font-size:.75rem}}.title-screen .subtitle{font-size:1.25rem;margin-bottom:.5rem}.title-screen .version{font-size:1rem;margin-bottom:0}.title-spacer{height:4rem}.title-footer{margin-top:4rem;font-size:.9rem}.title-footer p{margin-bottom:.25rem}.press-any-key{font-size:1.25rem}.interview-screen,.game-screen{display:flex;flex-direction:column;height:100%}.terminal-container{display:flex;flex-direction:column;height:100%;padding:1rem 0}.terminal-messages{flex:1;overflow-y:auto;padding-bottom:1rem}.terminal-message{margin-bottom:.75rem;line-height:1.5;word-wrap:break-word}.terminal-message.narrator{color:var(--color-primary)}.terminal-message.player{color:var(--color-primary-bright)}.terminal-message.system{color:var(--color-primary-dim);font-size:.9em}.terminal-message.character{color:var(--color-amber)}.character-name{color:var(--color-amber);font-weight:700}.typing-cursor{animation:blink .7s step-end infinite;margin-left:2px}.terminal-input-container{display:flex;align-items:center;padding:.5rem 0;border-top:1px solid var(--color-primary-dim);margin-top:auto}.terminal-input-container .prompt-symbol{margin-right:.5rem;color:var(--color-primary-bright)}.terminal-input{flex:1;background:transparent;border:none;outline:none;color:var(--color-primary);font-family:var(--font-terminal);font-size:1.25rem}.terminal-input:disabled{opacity:.5}.terminal-input-container .cursor{animation:blink 1s step-end infinite}.terminal-input-container .cursor.hidden{visibility:hidden}.generating-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center}.analysis-screen{display:flex;flex-direction:column;height:100%;padding:2rem 0}.analysis-header{text-align:center;margin-bottom:2rem}.analysis-header h2{font-size:2rem;letter-spacing:.2em;margin:1rem 0}.analysis-content{flex:1;overflow-y:auto}.analysis-section{margin-bottom:2rem}.analysis-section.archetype h3{font-size:1.75rem;margin-top:.5rem}.analysis-section.scores{font-family:var(--font-mono);font-size:.9rem}.scores-container{margin-top:1rem}.score-row{margin-bottom:.75rem}.score-label{color:var(--color-primary-bright);margin-bottom:.25rem}.score-bar{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.score-bar .bar{color:var(--color-primary);flex-shrink:0}.score-value{color:var(--color-primary-bright);margin-top:.25rem;font-size:.9rem}.analysis-section.summary .summary-text{line-height:1.8;max-width:60ch}.analysis-footer{margin-top:2rem;text-align:center}.terminal-messages::-webkit-scrollbar,.analysis-content::-webkit-scrollbar{width:8px}.terminal-messages::-webkit-scrollbar-track,.analysis-content::-webkit-scrollbar-track{background:var(--color-bg)}.terminal-messages::-webkit-scrollbar-thumb,.analysis-content::-webkit-scrollbar-thumb{background:var(--color-primary-dim);border-radius:4px}.terminal-messages::-webkit-scrollbar-thumb:hover,.analysis-content::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.title-image-container{max-width:480px;margin:0 auto 1.5rem;border:2px solid var(--color-primary-dim);border-radius:4px;overflow:hidden;box-shadow:0 0 20px var(--color-primary-glow)}.title-image{width:100%;height:auto;display:block;image-rendering:pixelated;filter:contrast(1.1) saturate(.9)}.loading-text{font-size:.9rem;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}
