@import"https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400;700&family=Orbitron:wght@500;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}body{background-color:#111;color:#0f0;font-family:Roboto Mono,monospace;line-height:1.6;padding:20px;min-height:100vh;text-shadow:0 0 5px #0f0;background-image:radial-gradient(circle at 20% 30%,rgba(0,255,0,.05) 0%,transparent 30%),radial-gradient(circle at 80% 70%,rgba(0,255,0,.05) 0%,transparent 30%)}.btn,.input,.message{box-shadow:0 0 8px #00ff004d;border-color:#0f0!important;outline:none;transition:all .3s ease}.btn:hover{box-shadow:0 0 15px #0f09;transform:translateY(-1px)}.input:focus{box-shadow:0 0 15px #00ff00b3}h1,h2,h3{font-family:Orbitron,sans-serif;color:#0f0}a{color:#0f0;text-decoration:underline}.container{max-width:900px;margin:0 auto}.login-container,.game-container{background:#1a1a1a;padding:30px;border-radius:12px;border:1px solid #0f0;max-width:600px;margin:30px auto;box-shadow:0 0 10px #00ff001a}.input{width:100%;padding:14px;margin:10px 0;background:#111;color:#0f0;border:1px solid #0f0;border-radius:6px;font-size:16px}.btn{padding:12px 24px;margin-top:10px;border:none;border-radius:6px;cursor:pointer;font-family:Orbitron,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:1px}.btn.primary{background:#001f00;color:#0f0}.btn.success{background:#020;color:#0f0}.error{background:#300;color:red;padding:10px;border-radius:6px;margin:10px 0;border:1px solid #f00}.success{background:#020;color:#0f0;padding:10px;border-radius:6px;margin:10px 0}.timer{font-size:1.5rem;text-align:center;margin:20px 0;font-family:Orbitron,sans-serif;color:#0f8}.team-badge{font-size:.9rem;background:#001a00;padding:4px 10px;border-radius:12px;float:right;border:1px solid #0a0}.puzzle-content{background:#161616;padding:20px;border-radius:8px;border:1px dashed #0a0;margin:20px 0;font-size:1rem}.code-form{display:flex;gap:10px;flex-wrap:wrap}.code-form .input{flex:1;min-width:200px}@media (max-width: 600px){body{padding:10px;font-size:14px}.login-container,.game-container{padding:20px}.btn{width:100%}}.home-container{text-align:center;padding:40px 20px 80px;max-width:800px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:30px;position:relative;overflow-y:auto}.glitch-title{font-family:Orbitron,sans-serif;font-size:4rem;color:#0f0;text-shadow:0 0 10px #0f0,0 0 20px #0f0;position:relative;animation:glow 2s infinite alternate;margin:0;line-height:1.2}@media (max-width: 600px){.glitch-title{font-size:2.2rem;text-shadow:0 0 8px #0f0,0 0 16px #0f0}.tagline{font-size:1.1rem}.mission-brief{font-size:1rem;padding:16px}}.glitch-title:before{content:attr(data-text);position:absolute;left:2px;text-shadow:-2px 0 #f0f;top:0;clip:rect(44px,450px,76px,0);animation:glitch 5s infinite linear alternate-reverse}.glitch-title:after{content:attr(data-text);position:absolute;left:-2px;text-shadow:2px 0 #0ff;top:0;clip:rect(20px,450px,50px,0);animation:glitch 7s infinite linear alternate}@keyframes glow{0%{text-shadow:0 0 10px #0f0,0 0 20px #0f0}to{text-shadow:0 0 20px #0f0,0 0 40px #0f0,0 0 60px #0f8}}@keyframes glitch{0%{clip:rect(26px,450px,86px,0)}20%{clip:rect(10px,450px,60px,0)}40%{clip:rect(40px,450px,90px,0)}60%{clip:rect(5px,450px,70px,0)}80%{clip:rect(30px,450px,80px,0)}to{clip:rect(20px,450px,75px,0)}}.tagline{font-family:Roboto Mono,monospace;font-size:1.3rem;color:#0f8}.mission-brief{background:#111;padding:20px;border-radius:10px;border:1px dashed #0a0;max-width:500px;font-size:1.1rem}.actions{margin-top:20px}.btn.large{padding:16px 32px;font-size:1.2rem;letter-spacing:1px}.home-footer{margin-top:40px;font-size:.9rem;color:#0a0}.exit-container{text-align:center;padding:40px;max-width:600px;margin:40px auto}.exit-container h1{color:red;text-shadow:0 0 10px rgba(255,0,0,.5);margin-bottom:20px}.exit-actions{margin-top:30px}.app-header{position:relative;z-index:100;padding:15px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #0a0;margin-bottom:20px;background:#111}.logo{font-family:Orbitron,sans-serif;font-size:1.5rem;color:#0f0;text-decoration:none;text-shadow:0 0 5px #0f0}.logout{background:#300;color:red;padding:8px 16px;font-size:.9rem}.club-name{font-size:1rem;font-weight:500;color:#a15cff;margin-top:.5rem;text-shadow:0 0 6px rgba(161,92,255,.6)}.social-links{margin:20px 0;display:flex;justify-content:center;gap:25px}.social-links a{color:#0f9;transition:all .3s ease}.social-links a:hover{color:#fff;text-shadow:0 0 12px #00ff99;transform:scale(1.1)}.roadmap-vertical{padding:20px;max-width:100%;margin:0 auto;text-align:center;background:#000;min-height:100vh;position:relative;overflow-x:hidden;z-index:1}.roadmap-vertical h2{color:#0f0;font-family:Orbitron,sans-serif;margin-bottom:10px}.roadmap-vertical p{color:#0f8;margin-bottom:20px}.roadmap-svg{width:100%;height:auto;max-width:400px;margin:0 auto;display:block}.node-circle{fill:#111;stroke:#0f0;stroke-width:3;filter:drop-shadow(0 0 8px #0f0);transition:all .3s ease}.node-text{font-family:Roboto Mono,monospace;font-size:14px;fill:#0f0;font-weight:700}.node-label{font-family:Orbitron,sans-serif;font-size:12px;fill:#0f8;white-space:nowrap}.node-circle.completed{fill:#0a0;stroke:#0f0;filter:drop-shadow(0 0 15px #0f0)}.node-circle.completed+.node-text{fill:#fff}.node-circle.current{fill:#0ff;stroke:#0ff;animation:pulse 1.5s infinite;filter:drop-shadow(0 0 20px #0ff)}.node-circle.current+.node-text{fill:#000}.leaderboard-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:1rem}.map-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.map-header h2{color:#0f0;font-family:Orbitron,sans-serif;margin:0}.player-stats{display:flex;gap:10px;font-size:.8rem;color:#0f8;white-space:nowrap;flex-wrap:wrap;justify-content:center}.player-stats .stat{background:#111;padding:4px 8px;border-radius:6px;border:1px solid #0a0;display:flex;align-items:center;gap:4px;font-family:Roboto Mono,monospace;min-width:70px;text-align:center}.player-stats .timer{font-family:Orbitron,sans-serif;color:#0f8;font-weight:700;text-shadow:0 0 5px #0f8;background:#111;padding:4px 8px;border-radius:6px;border:1px solid #0a0;min-width:70px;text-align:center}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:#111;border:1px solid #0f0;border-radius:12px;padding:20px;max-width:400px;text-align:center;box-shadow:0 0 20px #00ff004d}.modal h3{color:#0f8;margin-bottom:10px}.modal p{margin:8px 0;color:#ccc}.modal-actions{display:flex;gap:10px;justify-content:center;margin-top:20px}.victory-screen{text-align:center;padding:40px 20px;max-width:600px;margin:40px auto}.victory-screen h2{color:#0f8;margin-bottom:20px}.victory-screen p{margin:10px 0;font-size:1.1rem}.admin-login{text-align:center;padding:40px 20px;max-width:400px;margin:100px auto;font-family:Orbitron,sans-serif}.admin{padding:20px;max-width:1000px;margin:0 auto;font-family:Roboto Mono,monospace}.admin h2{color:#0f8;text-align:center;margin-bottom:20px}.admin-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.progress-bar{width:120px;height:10px;background:#333;border-radius:5px;overflow:hidden;display:inline-block;margin-right:10px}.progress-fill{height:100%;transition:width .3s ease}.leaderboard-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:.95rem}.leaderboard-table th{background:#0a0;color:#000;padding:12px;text-align:left}.leaderboard-table td{padding:10px;border-bottom:1px dashed #0a0}.leaderboard-table tr:hover{background:#111}.leaderboard-table code{background:#000;padding:2px 6px;border-radius:4px;font-size:.9em}@media (max-width: 480px){.player-stats{flex-direction:column;align-items:center;gap:6px}.player-stats .stat,.player-stats .timer{width:100%;justify-content:center;font-size:.9rem;padding:6px}.map-header{flex-direction:column;gap:10px;text-align:center}.map-header h2{margin:0}}@media (max-width: 360px){.player-stats .stat,.player-stats .timer{font-size:.8rem;padding:4px}.node-text{font-size:12px}.node-label{font-size:10px}}@keyframes pulse{0%{r:25}50%{r:30}to{r:25}}
