@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700;900&family=Rajdhani:wght@300;400;600;700&display=swap";:root{--neon-cyan: #00ffff;--neon-purple: #b026ff;--neon-pink: #ff00ff;--neon-blue: #0066ff;--dark-bg: #0a0a0f;--darker-bg: #050508;--card-bg: rgba(15, 15, 25, .8);--glass-bg: rgba(255, 255, 255, .05);--border-glow: rgba(0, 255, 255, .3)}*{box-sizing:border-box}body{margin:0;font-family:Rajdhani,sans-serif;background:var(--dark-bg);color:#fff;overflow-x:hidden}.app{display:flex;flex-direction:column;height:100vh;background:var(--darker-bg);position:relative;overflow:hidden}.app:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(0,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,255,.03) 1px,transparent 1px);background-size:50px 50px;animation:gridMove 20s linear infinite;pointer-events:none;z-index:0}@keyframes gridMove{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.app:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,255,.03) 2px,rgba(0,255,255,.03) 4px);pointer-events:none;z-index:1;animation:scanline 8s linear infinite}@keyframes scanline{0%{transform:translateY(0)}to{transform:translateY(10px)}}.app-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3rem;background:#0a0a0fe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:2px solid var(--border-glow);box-shadow:0 0 30px #0ff3;position:relative;z-index:10}.app-header:before{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--neon-cyan),var(--neon-purple),var(--neon-cyan),transparent);animation:borderFlow 3s linear infinite}@keyframes borderFlow{0%{background-position:0% 50%}to{background-position:200% 50%}}.app-header h1{margin:0;font-size:2rem;font-family:Orbitron,sans-serif;font-weight:900;background:linear-gradient(135deg,var(--neon-cyan),var(--neon-purple),var(--neon-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 30px rgba(0,255,255,.5);letter-spacing:2px;position:relative;animation:textGlow 2s ease-in-out infinite alternate}@keyframes textGlow{0%{filter:drop-shadow(0 0 5px rgba(0,255,255,.5))}to{filter:drop-shadow(0 0 20px rgba(182,38,255,.8))}}.header-controls{display:flex;align-items:center;gap:1.5rem}.mode-toggle{display:flex;background:#0009;border-radius:12px;padding:6px;border:1px solid rgba(0,255,255,.2);box-shadow:0 0 20px #00ffff1a}.mode-toggle button{padding:10px 20px;border:none;background:transparent;color:#fff9;cursor:pointer;border-radius:8px;transition:all .3s ease;font-family:Rajdhani,sans-serif;font-weight:600;font-size:.95rem;text-transform:uppercase;letter-spacing:1px;position:relative;overflow:hidden}.mode-toggle button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,255,255,.2),transparent);transition:left .5s}.mode-toggle button:hover:before{left:100%}.mode-toggle button.active{background:linear-gradient(135deg,#0ff3,#b626ff33);color:var(--neon-cyan);box-shadow:0 0 15px #0ff6,inset 0 0 15px #00ffff1a;border:1px solid rgba(0,255,255,.5)}.mode-toggle button:hover:not(.active){color:#fff;text-shadow:0 0 10px rgba(255,255,255,.5)}.app-main{flex:1;overflow:hidden;position:relative;z-index:2}.connect-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:3rem;position:relative}.connect-prompt:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:500px;height:500px;background:radial-gradient(circle,rgba(0,255,255,.1),transparent 70%);border-radius:50%;animation:pulse 3s ease-in-out infinite}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.8}}.connect-prompt h2{font-size:3.5rem;margin-bottom:1rem;font-family:Orbitron,sans-serif;font-weight:900;background:linear-gradient(135deg,var(--neon-cyan),var(--neon-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;z-index:1;text-shadow:0 0 40px rgba(0,255,255,.5);animation:titleFloat 3s ease-in-out infinite}@keyframes titleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.connect-prompt p{color:#ffffffb3;font-size:1.3rem;margin-bottom:4rem;font-weight:300;letter-spacing:1px;position:relative;z-index:1}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1200px;position:relative;z-index:1}.feature{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2.5rem;border-radius:20px;text-align:center;border:2px solid rgba(0,255,255,.2);transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.feature:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(0,255,255,.1),transparent);opacity:0;transition:opacity .4s}.feature:hover:before{opacity:1}.feature:hover{transform:translateY(-10px) scale(1.02);border-color:var(--neon-cyan);box-shadow:0 10px 40px #00ffff4d,0 0 30px #0ff3,inset 0 0 30px #00ffff1a}.feature .icon{font-size:4rem;display:block;margin-bottom:1.5rem;filter:drop-shadow(0 0 10px rgba(0,255,255,.5));animation:iconFloat 2s ease-in-out infinite}@keyframes iconFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(5deg)}}.feature h3{margin:0 0 1rem;color:var(--neon-cyan);font-family:Orbitron,sans-serif;font-weight:700;font-size:1.3rem;text-transform:uppercase;letter-spacing:2px}.feature p{margin:0;font-size:1rem;color:#ffffffb3;line-height:1.6}.game-list{padding:3rem;max-width:1400px;margin:0 auto}.game-list h2{margin-bottom:2rem;font-family:Orbitron,sans-serif;font-weight:700;font-size:2rem;color:var(--neon-cyan);text-transform:uppercase;letter-spacing:3px;text-shadow:0 0 20px rgba(0,255,255,.5)}.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.game-card{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(0,255,255,.2);border-radius:16px;padding:2rem;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.game-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,255,255,.1),transparent);transition:left .6s}.game-card:hover:before{left:100%}.game-card:hover{transform:translateY(-8px) scale(1.02);border-color:var(--neon-cyan);box-shadow:0 15px 50px #00ffff4d,0 0 40px #0ff3,inset 0 0 30px #00ffff1a}.game-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.game-card h3{margin:0;font-size:1.4rem;font-family:Orbitron,sans-serif;font-weight:700;color:#fff;text-shadow:0 0 10px rgba(0,255,255,.5)}.game-status{padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:600;font-family:Rajdhani,sans-serif;text-transform:uppercase;letter-spacing:1px;border:1px solid;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.game-status.lobby{background:#00ff6426;color:#00ff64;border-color:#00ff6466;box-shadow:0 0 15px #00ff644d}.game-status.active{background:#00ffff26;color:var(--neon-cyan);border-color:#0ff6;box-shadow:0 0 15px #00ffff4d}.game-status.ended{background:#ff006426;color:#ff0064;border-color:#ff006466;box-shadow:0 0 15px #ff00644d}.game-card-info{display:flex;gap:1.5rem;color:#ffffffb3;font-size:1rem;font-weight:500}.game-card-info span{display:flex;align-items:center;gap:.5rem}button{font-family:Rajdhani,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:1px;transition:all .3s ease}button:not(.mode-toggle button){padding:12px 24px;background:linear-gradient(135deg,#0ff3,#b626ff33);border:2px solid var(--neon-cyan);border-radius:10px;color:var(--neon-cyan);cursor:pointer;font-size:1rem;box-shadow:0 0 20px #00ffff4d;position:relative;overflow:hidden}button:not(.mode-toggle button):before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#00ffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}button:not(.mode-toggle button):hover:before{width:300px;height:300px}button:not(.mode-toggle button):hover{color:#fff;box-shadow:0 0 30px #0ff9;transform:translateY(-2px)}button:not(.mode-toggle button):active{transform:translateY(0)}.spectator-view{padding:3rem;height:100%;display:flex;flex-direction:column;overflow:auto}.spectator-view h2{margin-bottom:2rem;font-family:Orbitron,sans-serif;font-weight:700;font-size:2rem;color:var(--neon-purple);text-transform:uppercase;letter-spacing:3px;text-shadow:0 0 20px rgba(182,38,255,.5)}.god-view-container{flex:1;background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2.5rem;overflow:auto;border:2px solid rgba(182,38,255,.3);box-shadow:0 0 40px #b626ff33}.player-roles{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.player-role-card{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:1.5rem;border:2px solid transparent;transition:all .3s ease}.player-role-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0ff3}.player-role-card.good{border-color:#00ff6466;background:#00ff641a;box-shadow:0 0 20px #00ff6433}.player-role-card.evil{border-color:#ff006466;background:#ff00641a;box-shadow:0 0 20px #ff006433}.player-role-card .role{font-weight:700;font-size:1.3rem;font-family:Orbitron,sans-serif;margin-bottom:.5rem}.player-role-card.good .role{color:#00ff64;text-shadow:0 0 10px rgba(0,255,100,.5)}.player-role-card.evil .role{color:#ff0064;text-shadow:0 0 10px rgba(255,0,100,.5)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:#0000004d}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--neon-cyan),var(--neon-purple));border-radius:6px;border:2px solid rgba(0,0,0,.3)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--neon-purple),var(--neon-pink))}.loading{display:inline-block;width:20px;height:20px;border:3px solid rgba(0,255,255,.3);border-radius:50%;border-top-color:var(--neon-cyan);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.app-header{flex-direction:column;gap:1rem;padding:1rem}.app-header h1{font-size:1.5rem}.features{grid-template-columns:1fr;gap:1rem}.games-grid{grid-template-columns:1fr}.connect-prompt h2{font-size:2rem}.connect-prompt{padding:2rem 1rem}.spectator-view{padding:1rem}.spectator-view h2{font-size:1.5rem}.god-view-container{padding:1.5rem}.player-roles{grid-template-columns:1fr}}@media (max-width: 480px){.app-header{padding:.75rem}.app-header h1{font-size:1.2rem;letter-spacing:1px}.mode-toggle{flex-wrap:wrap;gap:.5rem}.mode-toggle button{padding:8px 12px;font-size:.8rem}.connect-prompt h2{font-size:1.5rem}.connect-prompt p{font-size:1rem;margin-bottom:2rem}.feature{padding:1.5rem}.feature .icon{font-size:3rem}.feature h3{font-size:1.1rem}.spectator-view{padding:.75rem}.spectator-view h2{font-size:1.2rem;letter-spacing:2px}}
