@import url(https://fonts.googleapis.com/css2?family=Ubuntu+Mono:wght@400;700&display=swap);:root{--terminal-green:#3f3;--terminal-amber:#ffb000;--terminal-cyan:#0ff;--terminal-red:#f33;--terminal-dim:#393;--terminal-bg:#0a0a0a;--terminal-border:#3f3;--crt-glow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;--font-main:"Ubuntu Mono","Courier New",monospace}*{box-sizing:border-box;margin:0;padding:0}.terminal-container{align-items:center;background:#000;display:flex;font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:16px;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.terminal-container:before{background:radial-gradient(ellipse at center,#0000 0,#0003 80%,#0009 100%);z-index:100}.terminal-container:after,.terminal-container:before{bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.terminal-container:after{background:repeating-linear-gradient(0deg,#0000,#0000 2px,#33ff3308 0,#33ff3308 4px);z-index:99}.scanlines{animation:scanlines .05s linear infinite;background:repeating-linear-gradient(180deg,#0000 0,#0000 1px,#0006 0,#0006 2px);height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1000}@keyframes scanlines{0%{transform:translateY(0)}to{transform:translateY(2px)}}@keyframes flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.8}94%{opacity:1}}.terminal-window{animation:flicker 5s infinite;background:#0a0a0a;border:3px solid #3f3;border:3px solid var(--terminal-green);box-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a,inset 0 0 100px #33ff330d;box-shadow:var(--crt-glow),inset 0 0 100px #33ff330d;display:flex;flex-direction:column;max-height:85vh;max-width:900px;position:relative;width:100%;z-index:1}.terminal-header{align-items:center;background:#000;border-bottom:2px solid #3f3;border-bottom:2px solid var(--terminal-green);display:flex;flex-shrink:0;justify-content:center;padding:10px 16px}.terminal-buttons{height:0!important;visibility:hidden!important;width:0!important}.btn-green,.btn-red,.btn-yellow,.terminal-buttons{display:none!important}.terminal-title{color:#3f3;color:var(--terminal-green);font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:18px;font-weight:700;letter-spacing:3px;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow);text-transform:uppercase}.terminal-body{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:20px}.terminal-body::-webkit-scrollbar{width:8px}.terminal-body::-webkit-scrollbar-track{background:#0a0a0a;border-left:1px solid #393;border-left:1px solid var(--terminal-dim)}.terminal-body::-webkit-scrollbar-thumb{background:#3f3;background:var(--terminal-green)}.cursor{animation:blink .7s step-end infinite;color:#3f3;color:var(--terminal-green);text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}@keyframes blink{50%{opacity:0}}.glitch-text{position:relative;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.glitch-text.glitching:after,.glitch-text.glitching:before{content:attr(data-text);height:100%;left:0;position:absolute;top:0;width:100%}.glitch-text.glitching:before{animation:glitch-1 .1s linear;-webkit-clip-path:polygon(0 0,100% 0,100% 45%,0 45%);clip-path:polygon(0 0,100% 0,100% 45%,0 45%);color:#ff0040}.glitch-text.glitching:after{animation:glitch-2 .1s linear;-webkit-clip-path:polygon(0 55%,100% 55%,100% 100%,0 100%);clip-path:polygon(0 55%,100% 55%,100% 100%,0 100%);color:#0ff}@keyframes glitch-1{0%{transform:translateX(-2px)}to{transform:translateX(2px)}}@keyframes glitch-2{0%{transform:translateX(2px)}to{transform:translateX(-2px)}}.intro-screen{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:450px;text-align:center}.title-section{margin-bottom:20px;text-align:center}.main-title{color:#3f3;color:var(--terminal-green);font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:48px;font-weight:700;letter-spacing:8px;margin:0;padding:20px 0;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.main-title.complete{font-size:36px;letter-spacing:6px}.title-underline{background:#3f3;background:var(--terminal-green);box-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;box-shadow:var(--crt-glow);height:3px;margin:0 auto;max-width:400px;width:80%}@media (max-width:600px){.main-title{font-size:28px;letter-spacing:4px}.main-title.complete{font-size:24px;letter-spacing:3px}}.ascii-art{color:#3f3;color:var(--terminal-green);font-family:monospace;font-size:7px;line-height:1.1;overflow:hidden;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow);white-space:pre}.ascii-art.small{font-size:5px}.intro-text{color:#3f3;color:var(--terminal-green)}.tagline{font-size:20px;font-weight:700;letter-spacing:3px;margin-bottom:12px;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.mission-brief,.tagline{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main)}.mission-brief{color:#393;color:var(--terminal-dim);font-size:18px;line-height:1.8}.mission-brief p{transition:color .3s,text-shadow .3s}.mission-brief p:hover{color:#3f3;color:var(--terminal-green);text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.author{color:#393;color:var(--terminal-dim);font-size:14px;margin-top:8px}.start-btn{background:#0000;border:2px solid #3f3;border:2px solid var(--terminal-green);color:#3f3;color:var(--terminal-green);cursor:pointer;font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:18px;font-weight:700;letter-spacing:2px;overflow:hidden;padding:14px 28px;position:relative;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow);text-transform:uppercase;transition:all .3s}.start-btn:hover{background:#3f3;background:var(--terminal-green);box-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;box-shadow:var(--crt-glow);color:#000;text-shadow:none}.start-btn .btn-glow{animation:glow-slide 2s infinite;background:linear-gradient(90deg,#0000,#3f36,#0000);height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes glow-slide{to{left:100%}}.boot-sequence{max-width:500px;text-align:left;width:100%}.boot-line{animation:fadeIn .5s ease;font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:16px;margin:6px 0;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.boot-line,.boot-line.success{color:#3f3;color:var(--terminal-green)}.boot-line.success{font-weight:700}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.status-bar{background:#000;border:1px solid #3f3;border:1px solid var(--terminal-green);gap:10px;justify-content:space-between;margin-bottom:16px;padding:10px 12px}.status-bar,.status-left,.status-right{align-items:center;display:flex;flex-wrap:wrap}.status-left,.status-right{gap:12px}.level-indicator{color:#3f3;color:var(--terminal-green);font-size:16px;font-weight:700;letter-spacing:2px;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.level-indicator,.type-badge{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main)}.type-badge{align-items:center;background:#000;border:1px solid var(--badge-color);color:var(--badge-color);display:flex;font-size:13px;gap:6px;padding:4px 10px}.badge-icon{font-size:14px}.difficulty{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:13px;font-weight:700;padding:2px 8px}.difficulty.easy{color:#3f3;color:var(--terminal-green)}.difficulty.medium{color:#ffb000;color:var(--terminal-amber)}.difficulty.hard{color:#f33;color:var(--terminal-red)}.score-display{color:#0ff;color:var(--terminal-cyan);font-size:16px;letter-spacing:1px}.score-display,.timer{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-weight:700}.timer{color:#3f3;color:var(--terminal-green);font-size:20px;letter-spacing:2px;min-width:70px;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.timer.critical{animation:pulse .5s infinite;color:#f33;color:var(--terminal-red)}@keyframes pulse{50%{opacity:.5}}.challenge-content{color:#aaa}.challenge-title{color:#3f3;color:var(--terminal-green);font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:22px;font-weight:700;letter-spacing:1px;margin-bottom:12px;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.setup-section{margin-bottom:16px}.setup-text{color:#999;font-size:16px;line-height:1.5;margin-bottom:12px}.code-block,.setup-text{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main)}.code-block{background:#000;border:1px solid #393;border-left:3px solid #3f3;border:1px solid var(--terminal-dim);border-left:3px solid var(--terminal-green);font-size:14px;line-height:1.4;margin:12px 0;max-height:150px;overflow-x:auto;overflow-y:auto;padding:12px}.code-block code{color:#3f3;color:var(--terminal-green);font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);white-space:pre}.test-cases{background:#000;border:1px solid #393;border:1px solid var(--terminal-dim);margin:12px 0;max-height:120px;overflow-y:auto;padding:12px}.test-case{color:#3f3;color:var(--terminal-green);font-size:15px;padding:3px 0}.requirements-block,.test-case{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main)}.requirements-block{background:#000;border:1px solid #393;border-left:3px solid #0ff;border:1px solid var(--terminal-dim);border-left:3px solid var(--terminal-cyan);color:#0ff;color:var(--terminal-cyan);font-size:14px;line-height:1.5;margin:12px 0;max-height:150px;overflow-y:auto;padding:12px;white-space:pre-wrap}.question-section{margin:16px 0}.question-text{color:#3f3;color:var(--terminal-green);font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:18px;font-weight:700;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.options-grid{display:flex;flex-direction:column;gap:8px}.option-btn{align-items:flex-start;background:#000;border:1px solid #444;color:#999;cursor:pointer;display:flex;font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:16px;gap:10px;padding:12px;text-align:left;transition:all .2s}.option-btn:hover:not(:disabled){text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.option-btn.correct,.option-btn:hover:not(:disabled){border-color:#3f3;border-color:var(--terminal-green);color:#3f3;color:var(--terminal-green)}.option-btn.correct{background:#33ff331a}.option-btn.incorrect{background:#ff33331a;border-color:#f33;border-color:var(--terminal-red);color:#f33;color:var(--terminal-red)}.option-btn.disabled{cursor:default;opacity:.4}.option-key{color:#0ff;color:var(--terminal-cyan);flex-shrink:0;font-weight:700}.ai-section{background:#00000080;border:1px dashed #ffb000;border:1px dashed var(--terminal-amber);margin-top:16px;padding:12px}.ai-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.ai-status{color:#393;color:var(--terminal-dim);font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:14px;font-weight:700}.ai-status.available{color:#ffb000;color:var(--terminal-amber)}.ai-status.depleted{color:#f33;color:var(--terminal-red)}.hint-btn{background:#0000;border:1px solid #ffb000;border:1px solid var(--terminal-amber);color:#ffb000;color:var(--terminal-amber);cursor:pointer;font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:14px;font-weight:700;padding:6px 14px;transition:all .2s}.hint-btn:hover:not(:disabled){background:#ffb000;background:var(--terminal-amber);color:#000}.hint-btn:disabled{cursor:not-allowed;opacity:.4}.hint-btn.loading{animation:pulse .5s infinite}.hint-display{border-left:2px solid #ffb000;border-left:2px solid var(--terminal-amber);color:#ffb000;color:var(--terminal-amber);font-size:15px;line-height:1.5;margin-top:10px;padding:10px}.ai-error,.hint-display{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main)}.ai-error{color:#f33;color:var(--terminal-red);font-size:14px;margin-top:8px}.popup-overlay{align-items:center;animation:fadeIn .2s ease;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.popup-alert{animation:popIn .3s ease;background:#0a0a0a;border:3px solid #3f3;border:3px solid var(--terminal-green);box-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;box-shadow:var(--crt-glow);max-width:550px;padding:0;width:100%}.popup-alert.correct{border-color:#3f3;border-color:var(--terminal-green)}.popup-alert.incorrect{border-color:#f33;border-color:var(--terminal-red)}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.popup-header{border-bottom:1px solid #393;border-bottom:1px solid var(--terminal-dim);padding:16px 20px;text-align:center}.popup-header.correct{background:#33ff331a;border-bottom-color:#3f3;border-bottom-color:var(--terminal-green)}.popup-header.incorrect{background:#ff33331a;border-bottom-color:#f33;border-bottom-color:var(--terminal-red)}.popup-result{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:24px;font-weight:700;letter-spacing:3px}.popup-result.correct{color:#3f3;color:var(--terminal-green);text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.popup-result.incorrect{color:#f33;color:var(--terminal-red);text-shadow:0 0 10px #ff333380}.popup-body{max-height:300px;overflow-y:auto;padding:20px}.popup-explanation{color:#ccc;font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:15px;line-height:1.6;margin-bottom:16px}.popup-takeaway{background:#000;border-left:3px solid #ffb000;border-left:3px solid var(--terminal-amber);padding:12px}.popup-takeaway-label{color:#ffb000;color:var(--terminal-amber);display:block;font-size:12px;font-weight:700;letter-spacing:2px;margin-bottom:6px}.popup-takeaway-label,.popup-takeaway-text{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main)}.popup-takeaway-text{color:#ccc;font-size:14px;line-height:1.5;margin:0}.popup-footer{border-top:1px solid #393;border-top:1px solid var(--terminal-dim);display:flex;gap:12px;padding:16px 20px}.popup-btn{background:#0000;border:2px solid #3f3;border:2px solid var(--terminal-green);color:#3f3;color:var(--terminal-green);cursor:pointer;flex:1 1;font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:16px;font-weight:700;letter-spacing:1px;padding:12px 20px;transition:all .2s}.popup-btn:hover{box-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;box-shadow:var(--crt-glow)}.popup-btn.primary,.popup-btn:hover{background:#3f3;background:var(--terminal-green);color:#000}.popup-btn.primary:hover{box-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;box-shadow:var(--crt-glow);transform:scale(1.02)}.next-case-section{border-top:1px solid #393;border-top:1px solid var(--terminal-dim);display:flex;justify-content:center;margin-top:20px;padding-top:16px}.next-case-btn{background:#3f3;background:var(--terminal-green);border:none;color:#000;cursor:pointer;font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:18px;font-weight:700;letter-spacing:2px;padding:14px 32px;transition:all .2s}.next-case-btn:hover{box-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;box-shadow:var(--crt-glow);transform:scale(1.02)}.complete-screen{align-items:center;flex-direction:column;min-height:450px;text-align:center}.complete-screen,.results-grid{display:flex;gap:20px;justify-content:center}.results-grid{flex-wrap:wrap}.result-box{background:#000;border:1px solid #393;border:1px solid var(--terminal-dim);display:flex;flex-direction:column;gap:6px;padding:16px 28px}.result-label{color:#393;color:var(--terminal-dim);font-size:12px}.result-label,.result-value{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-weight:700;letter-spacing:2px}.result-value{color:#3f3;color:var(--terminal-green);font-size:32px;text-shadow:0 0 10px #33ff3380,0 0 20px #33ff334d,0 0 30px #33ff331a;text-shadow:var(--crt-glow)}.result-value.score{color:#0ff;color:var(--terminal-cyan);text-shadow:0 0 10px #00ffff80}.rank-display{background:#000;border:2px solid var(--rank-color);padding:16px 32px}.rank-label{color:#393;color:var(--terminal-dim);display:block;font-size:12px;margin-bottom:8px}.rank-label,.rank-value{font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-weight:700;letter-spacing:2px}.rank-value{color:var(--rank-color);font-size:24px;text-shadow:0 0 20px var(--rank-color)}.level-summary{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.level-dot{height:20px;width:20px}.level-dot.correct{background:#3f3;background:var(--terminal-green);box-shadow:0 0 10px #33ff3380}.level-dot.incorrect{background:#f33;background:var(--terminal-red);box-shadow:0 0 10px #ff333380}.complete-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.action-btn{background:#0000;border:2px solid #3f3;border:2px solid var(--terminal-green);color:#3f3;color:var(--terminal-green);cursor:pointer;font-family:Ubuntu Mono,Courier New,monospace;font-family:var(--font-main);font-size:16px;font-weight:700;letter-spacing:1px;padding:12px 24px;text-decoration:none;transition:all .3s}.action-btn:hover{background:#3f3;background:var(--terminal-green);color:#000}.action-btn.secondary{border-color:#393;border-color:var(--terminal-dim);color:#393;color:var(--terminal-dim)}.action-btn.secondary:hover{background:#0000;border-color:#0ff;border-color:var(--terminal-cyan);color:#0ff;color:var(--terminal-cyan)}@media (max-width:600px){.terminal-body{padding:12px}.ascii-art{font-size:4px}.ascii-art.small{font-size:3px}.status-bar{flex-direction:column;gap:8px}.status-left,.status-right{justify-content:space-between;width:100%}.results-grid{flex-direction:column}.result-box{width:100%}.popup-alert{margin:10px}.popup-footer{flex-direction:column}}
/*# sourceMappingURL=main.1ad3f08b.css.map*/