:root{--bg-color: #0D1117;--bg-surface: #121212;--accent-green: #00FF41;--accent-red: #FF003C;--ui-surface: #1E242C;--text-main: #E0E0E0;--text-dim: #8A929E;--font-ui: "Roboto", "Inter", system-ui, sans-serif;--font-code: "JetBrains Mono", "Fira Code", monospace;--transition-fast: .2s ease}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-ui);background-color:var(--bg-color);color:var(--text-main);min-height:100vh;min-width:100vw;overflow-x:hidden}button{cursor:pointer;border:none;font-family:var(--font-ui)}.terminal-text{font-family:var(--font-code)}.glow-green{box-shadow:0 0 10px #00ff4166}.glow-green:hover{box-shadow:0 0 20px #00ff41b3}.glow-red{box-shadow:0 0 10px #ff003c66}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:var(--ui-surface);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}:root[data-theme=dark]{--bg-primary: #0d1117;--accent-green: #22c55e;--accent-red: #ef4444;--text-main: #e5e7eb}:root[data-theme=light]{--bg-primary: #f9fafb;--accent-green: #10b981;--accent-red: #dc2626;--text-main: #111827}:root[data-theme=neon]{--bg-primary: #1a001a;--accent-green: #00ff99;--accent-red: #ff0066;--text-main: #ffffff}.glow-green{box-shadow:0 0 8px var(--accent-green)}.glow-red{box-shadow:0 0 8px var(--accent-red)}.shake{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.pulse{animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.6}to{opacity:1}}.theme-switcher{background:transparent;border:none;cursor:pointer;color:var(--text-main);display:flex;align-items:center;justify-content:center;padding:8px;border-radius:50%;transition:all .3s}.theme-switcher:hover{background:#ffffff1a}.smart-hint-container{margin-top:1rem}.smart-hint .hint-btn{background:var(--accent-green);border:none;color:#fff;padding:.5rem 1rem;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s;font-family:inherit}.smart-hint .hint-btn:hover{transform:scale(1.02);filter:brightness(1.2)}.hint-content{margin-top:10px;padding:10px;background:#00000080;border:1px solid var(--accent-green);border-radius:4px;color:var(--text-main);font-family:monospace}.page-container{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100vw;background-color:var(--bg-color);background-image:radial-gradient(circle at 50% 50%,rgba(0,255,65,.05),transparent 60%)}.text-green{color:var(--accent-green)}.glow-green{text-shadow:0 0 8px rgba(0,255,65,.6)}.text-red{color:var(--accent-red)}.text-main{color:var(--text-main)}.text-dim{color:var(--text-dim)}.landing .hero-section{text-align:center}.typing-text{font-size:2.2rem;margin-bottom:2.5rem;min-height:3rem}.cursor{animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.cta-btn{background-color:transparent;color:var(--accent-green);border:1px solid var(--accent-green);padding:1rem 2rem;font-size:1.2rem;text-transform:uppercase;letter-spacing:2px;transition:all var(--transition-fast);border-radius:4px}.cta-btn:hover{background-color:#00ff411a;box-shadow:0 0 15px #00ff4180}.clearance-box{background-color:var(--ui-surface);border:1px solid rgba(255,0,60,.3);padding:3rem;border-radius:8px;width:450px;box-shadow:0 0 20px #ff003c1a}.title-glitch{font-size:1.5rem;margin-bottom:.5rem;letter-spacing:1px}.sub-title{margin-bottom:2rem;font-size:.9rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.terminal-input{background-color:var(--bg-surface);border:1px solid var(--text-dim);color:var(--text-main);padding:.8rem;outline:none;font-size:1rem;border-radius:4px}.terminal-input:focus{border-color:var(--accent-red);box-shadow:0 0 5px #ff003c4d}.password-input{letter-spacing:3px}.auth-btn{background-color:transparent;color:var(--accent-red);border:1px solid var(--accent-red);padding:1rem;font-size:1rem;letter-spacing:2px;margin-top:1rem;border-radius:4px;transition:all var(--transition-fast)}.auth-btn:hover{background-color:#ff003c1a;box-shadow:0 0 15px #ff003c80}.mission-control{flex-direction:column;justify-content:flex-start;padding:4rem 2rem}.mission-header{text-align:center;margin-bottom:3rem}.glitch-effect{font-size:2.5rem;margin-bottom:.5rem}.network-map-container{width:100%;max-width:1200px;margin:0 auto;overflow-x:auto;overflow-y:hidden;background-image:linear-gradient(rgba(0,255,65,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,65,.05) 1px,transparent 1px);background-size:30px 30px;border:1px solid rgba(0,255,65,.2);border-radius:8px;padding:10px 20px 40px;box-shadow:inset 0 0 50px #000c}.network-map-container::-webkit-scrollbar{height:8px}.network-map-container::-webkit-scrollbar-thumb{background:#00ff4180;border-radius:4px}.network-map-container::-webkit-scrollbar-track{background:#0000004d}.network-path{display:flex;align-items:center;gap:80px;min-width:max-content;padding:120px 40px}.map-node-wrapper{position:relative;display:flex;justify-content:center;align-items:center}.diagonal-line{position:absolute;top:50%;left:50%;width:208px;height:3px;background-color:#ffffff0d;transform-origin:0 50%;z-index:0;transition:all .5s ease}.diagonal-line.unlocked-line{background-color:#00ff414d}.diagonal-line.completed-line{background-color:var(--accent-green);box-shadow:0 0 10px var(--accent-green)}.mission-node{width:90px;height:90px;background-color:var(--bg-surface);border:2px solid var(--text-dim);border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;position:relative;z-index:10;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.mission-node.locked{border-color:#ff003c4d;background-color:#000c}.mission-node.unlocked{border-color:#00ff4180;background-color:#00ff410d;box-shadow:0 0 15px #00ff411a inset}.mission-node.completed{border-color:var(--accent-green);background-color:#00ff4126;box-shadow:0 0 20px #00ff414d}.mission-node:hover.unlocked{transform:scale(1.15);box-shadow:0 0 30px #00ff4180}.mission-node:hover.locked{transform:scale(1.05);border-color:#ff003c99}.node-icon{margin-bottom:2px}.node-level{font-family:JetBrains Mono,monospace;font-size:.6rem;font-weight:700;color:var(--text-dim);background-color:var(--bg-color);padding:1px 4px;border-radius:6px;border:1px solid var(--text-dim)}.mission-node.unlocked .node-level{color:var(--text-main);border-color:#00ff4180}.mission-node.completed .node-level{color:var(--accent-green);border-color:var(--accent-green)}.node-tooltip{position:absolute;top:110%;left:50%;transform:translate(-50%) translateY(10px);width:200px;background-color:#000000f2;border:1px solid var(--text-dim);border-radius:4px;padding:10px;font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-main);text-align:center;opacity:0;visibility:hidden;transition:all .3s ease;z-index:20;pointer-events:none}.mission-node.unlocked .node-tooltip{border-color:var(--accent-green);box-shadow:0 0 15px #00ff4133}.mission-node.locked .node-tooltip{border-color:var(--accent-red)}.mission-node:hover .node-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.lab-container{display:flex;height:100vh;width:100vw;background-color:var(--bg-color);position:relative}.editor-panel{width:70%;border-right:1px solid var(--text-dim);display:flex;flex-direction:column}.target-panel{width:30%;display:flex;flex-direction:column;background-color:var(--bg-surface)}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background-color:var(--ui-surface);border-bottom:1px solid var(--text-dim)}.header-left{display:flex;align-items:center;gap:.8rem}.run-btn{background-color:transparent;color:var(--accent-green);border:1px solid var(--accent-green);padding:.5rem 1rem;font-size:.9rem;border-radius:4px}.run-btn:hover:not(:disabled){background-color:#00ff411a}.run-btn:disabled{opacity:.5;cursor:not-allowed}.objective-box{padding:1rem 1.5rem;background-color:#00ff410d;border-bottom:1px solid var(--text-dim)}.monaco-wrapper{flex:1;padding-top:1rem;direction:ltr;text-align:left}.visual-target{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;border-bottom:1px solid var(--text-dim)}.server-icon{animation:pulse 2s infinite ease-in-out}.server-icon.success{animation:glow-pulse-green 2s infinite ease-in-out}.server-icon.fail{animation:glow-pulse-red 2s infinite ease-in-out}@keyframes pulse{0%{transform:scale(1);opacity:.8}50%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:.8}}@keyframes glow-pulse-green{0%{filter:drop-shadow(0 0 10px rgba(0,255,65,.4))}50%{filter:drop-shadow(0 0 25px rgba(0,255,65,.8))}to{filter:drop-shadow(0 0 10px rgba(0,255,65,.4))}}@keyframes glow-pulse-red{0%{filter:drop-shadow(0 0 10px rgba(255,0,60,.4))}50%{filter:drop-shadow(0 0 25px rgba(255,0,60,.8))}to{filter:drop-shadow(0 0 10px rgba(255,0,60,.4))}}.status-text{font-size:1.5rem;letter-spacing:2px;font-weight:700}.terminal-logs{height:35%;background-color:#000;padding:1rem;overflow-y:auto;border-top:2px solid var(--ui-surface)}.log-header{margin-bottom:.8rem;font-size:.9rem}.log-scroll{display:flex;flex-direction:column;gap:.5rem}.log-line{font-size:.85rem;margin:0}.blink{animation:blink 1s step-end infinite}.hacker-bot-container{position:absolute;bottom:2rem;right:2rem;z-index:100}.bot-fab{width:60px;height:60px;border-radius:50%;background-color:var(--ui-surface);border:1px solid var(--accent-green);display:flex;align-items:center;justify-content:center;box-shadow:0 0 15px #00ff414d;transition:transform var(--transition-fast)}.bot-fab:hover{transform:scale(1.1)}.chat-window{width:350px;background-color:var(--bg-surface);border:1px solid var(--accent-green);border-radius:8px;box-shadow:0 0 20px #00ff4133;display:flex;flex-direction:column;overflow:hidden}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:var(--ui-surface);border-bottom:1px solid var(--accent-green)}.close-icon{cursor:pointer;transition:opacity var(--transition-fast)}.close-icon:hover{opacity:.7}.chat-body{padding:1rem;flex:1;max-height:350px;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.bot-message{background-color:#00ff410d;border-left:3px solid var(--accent-green);padding:.8rem;border-radius:0 8px 8px 0}.bot-message p{font-size:.9rem;line-height:1.4}.chat-warning{font-size:.8rem;color:var(--accent-red);background-color:#ff003c0d;padding:.8rem;border-radius:4px}.inline-icon{vertical-align:middle;margin-top:-2px;margin-right:5px}.chat-footer{padding:1rem;border-top:1px solid var(--ui-surface);background-color:var(--bg-surface)}.hint-btn{width:100%;background-color:transparent;color:var(--accent-green);border:1px solid var(--accent-green);padding:.8rem;font-size:.9rem;border-radius:4px}.hint-btn:disabled{border-color:var(--text-dim);color:var(--text-dim);box-shadow:none}.hint-btn:not(:disabled):hover{background-color:#00ff411a}.briefing-box{background-color:var(--ui-surface);border:1px solid var(--text-dim);padding:3rem;border-radius:8px;width:900px;max-width:95vw;display:flex;flex-direction:column;gap:2rem;box-shadow:0 0 20px #00ff410d}.briefing-header{border-bottom:1px solid var(--text-dim);padding-bottom:1rem}.briefing-content{display:flex;flex-direction:column;gap:1.5rem}.intel-section{background-color:var(--bg-surface);padding:1.5rem;border-radius:4px;border-left:3px solid var(--accent-green)}.intel-section h3{margin-bottom:.8rem;display:flex;align-items:center;gap:.5rem}.intel-section p{line-height:1.6}.intel-section code{font-family:var(--font-code);background-color:#00000080;padding:.2rem .4rem;border-radius:3px;color:var(--text-main)}.warning-section{border-left-color:var(--accent-red);background-color:#ff003c0d}.briefing-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--text-dim);padding-top:2rem}.deploy-btn{background-color:#00ff411a;color:var(--accent-green);border:1px solid var(--accent-green);padding:1rem 2.5rem;font-size:1.1rem;letter-spacing:1px;border-radius:4px;transition:all var(--transition-fast)}.deploy-btn:hover{background-color:#00ff4133;box-shadow:0 0 15px #00ff4180}.back-btn{background-color:transparent;color:var(--text-dim);border:1px solid var(--text-dim);padding:.8rem 1.5rem;border-radius:4px}.back-btn:hover{color:var(--text-main);border-color:var(--text-main)}.fade-in{animation:fadeIn .5s ease-in-out forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.progress-bar{width:100%;height:4px;background-color:var(--bg-surface);border-radius:2px;margin-top:1rem;overflow:hidden}.progress-fill{height:100%;background-color:var(--accent-green);transition:width .3s ease-in-out;box-shadow:0 0 10px #00ff4180}@keyframes shake{0%{transform:translate(1px,1px) rotate(0)}10%{transform:translate(-1px,-2px) rotate(-1deg)}20%{transform:translate(-3px) rotate(1deg)}30%{transform:translate(3px,2px) rotate(0)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0)}70%{transform:translate(3px,1px) rotate(-1deg)}80%{transform:translate(-1px,-1px) rotate(1deg)}90%{transform:translate(1px,2px) rotate(0)}to{transform:translate(1px,-2px) rotate(-1deg)}}.shake{animation:shake .3s cubic-bezier(.36,.07,.19,.97) both;transform:translateZ(0);border:2px solid rgba(255,0,60,.8)!important}.top-bar-stats{display:flex;justify-content:flex-end;gap:15px;width:100%;max-width:800px;margin-bottom:-15px}.stat-box{display:flex;align-items:center;gap:8px;background-color:var(--bg-color);padding:8px 15px;border-radius:4px;border:1px solid var(--border-color);font-size:.9rem}.glow-stat{border-color:var(--accent-green);box-shadow:0 0 10px #00ff4133}.completed-card{border-color:#00ff414d!important;background-color:#00ff410d!important}.completed-icon{filter:drop-shadow(0 0 5px var(--accent-green))}.reward-banner{animation:fadeIn .5s ease-in-out forwards}.boss-node-wrapper{z-index:20}.boss-node{width:140px;height:140px;border-width:3px}.boss-node.locked{border-color:#ff003c99;background-color:#000000e6;box-shadow:inset 0 0 20px #ff003c33}.boss-node.unlocked{border-color:var(--accent-red);background-color:#ff003c1a;box-shadow:0 0 30px #ff003c66,inset 0 0 20px #ff003c33}.boss-node:hover.unlocked{transform:scale(1.15);box-shadow:0 0 50px #ff003c99;border-color:#f33}.boss-node.completed{border-color:gold;background-color:#ffd7001a;box-shadow:0 0 30px #ffd7004d,inset 0 0 20px #ffd7001a}.boss-node.completed .node-level{color:gold;border-color:gold}@media screen and (max-width:768px){.page-container{padding:1rem}.typing-text{font-size:1.5rem}.clearance-box,.briefing-box{width:100%;max-width:100%;padding:1.5rem;box-sizing:border-box}.glitch-effect,.title-glitch{font-size:1.8rem!important}.cta-btn,.auth-btn,.deploy-btn{width:100%;padding:1rem;font-size:1rem;text-align:center}.lab-container{flex-direction:column;height:100vh;overflow:hidden}.editor-panel{width:100%;height:60vh;border-right:none;border-bottom:2px solid var(--accent-green)}.target-panel{width:100%;height:40vh}.terminal-logs{height:50%}.visual-target{padding:1rem;gap:1rem}.top-bar-stats{flex-direction:row;flex-wrap:wrap;justify-content:center;margin-bottom:1rem}.stat-box{font-size:.8rem;padding:5px 10px}.chat-window{width:300px;right:10px;bottom:80px}.bot-fab{width:50px;height:50px}.cookie-consent-bar{flex-direction:column;text-align:center;gap:10px}}
