*{box-sizing:border-box;margin:0;padding:0}body{color:#fff;cursor:default;background:#0a0a0a;font-family:Inter,sans-serif;overflow:hidden}#game-canvas{width:100vw;height:100vh;display:block;position:fixed;top:0;left:0}.overlay{z-index:10;width:100vw;height:100vh;position:fixed;top:0;left:0}#main-menu{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05000ad9;justify-content:center;align-items:center;display:flex}.menu-content{text-align:center}.game-title{letter-spacing:.08em;color:#f24;text-shadow:0 0 20px #f249,0 0 60px #ff22444d,0 0 120px #ff224426;font-family:Bebas Neue,sans-serif;font-size:clamp(4rem,12vw,10rem);animation:3s infinite glitch;position:relative}.game-title:before,.game-title:after{content:attr(data-text);width:100%;height:100%;position:absolute;top:0;left:0}.game-title:before{color:#0ff;clip-path:inset(0 0 60%);animation:3s infinite glitch-shift}.game-title:after{color:#f0f;clip-path:inset(60% 0 0);animation:3s infinite glitch-shift-2}@keyframes glitch{0%,92%,to{transform:translate(0)}93%{transform:translate(-3px,1px)}94%{transform:translate(3px,-1px)}95%{transform:translate(-2px,-1px)}96%{transform:translate(2px,1px)}}@keyframes glitch-shift{0%,92%,to{transform:translate(0)}93%{transform:translate(4px,-2px)}95%{transform:translate(-4px,2px)}}@keyframes glitch-shift-2{0%,92%,to{transform:translate(0)}94%{transform:translate(-4px,2px)}96%{transform:translate(4px,-2px)}}.tagline{color:#ffffff80;letter-spacing:.2em;text-transform:uppercase;margin-top:.5rem;font-size:1.1rem}.menu-buttons{flex-direction:column;align-items:center;gap:1rem;margin-top:2.5rem;display:flex}.btn{letter-spacing:.1em;cursor:pointer;text-transform:uppercase;border:none;border-radius:4px;padding:.8rem 2.5rem;font-family:Bebas Neue,sans-serif;font-size:1.4rem;transition:all .15s}.btn-primary{color:#fff;background:#f24;box-shadow:0 0 20px #f246}.btn-primary:hover{background:#f35;transform:scale(1.05);box-shadow:0 0 30px #f249}.btn-secondary{color:#ccc;background:#ffffff14;border:1px solid #ffffff26}.btn-secondary:hover{color:#fff;background:#ffffff26;transform:scale(1.05)}.btn-small{color:#aaa;pointer-events:all;background:#ffffff1a;border:1px solid #ffffff26;padding:.4rem 1rem;font-size:.9rem}.btn-small:hover{color:#fff;background:#fff3}.hint{color:#ffffff4d;letter-spacing:.05em;margin-top:2rem;font-size:.8rem}#hud-score{color:#fff;text-shadow:0 0 15px #ff224480;letter-spacing:.05em;font-family:Bebas Neue,sans-serif;font-size:3rem;position:absolute;top:1.5rem;left:50%;transform:translate(-50%)}#hud-combo{color:#f80;text-shadow:0 0 10px #ff880080;font-family:Bebas Neue,sans-serif;font-size:1.8rem;animation:.3s combo-pulse;position:absolute;top:4.5rem;left:50%;transform:translate(-50%)}@keyframes combo-pulse{0%{transform:translate(-50%)scale(1.5)}to{transform:translate(-50%)scale(1)}}#crosshair{color:#fff9;text-shadow:0 0 4px #ffffff4d;-webkit-user-select:none;user-select:none;font-size:1.8rem;font-weight:100;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#weapon-bar{pointer-events:all;gap:.5rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.weapon-slot{text-align:center;cursor:pointer;background:#0009;border:1px solid #ffffff26;border-radius:6px;min-width:70px;padding:.5rem 1rem;transition:all .15s}.weapon-slot.active{background:#ff224426;border-color:#f24;box-shadow:0 0 10px #ff22444d}.weapon-slot:hover{border-color:#fff6}.weapon-key{color:#ffffff80;font-family:Bebas Neue,sans-serif;font-size:1.2rem;display:block}.weapon-name{color:#ffffffb3;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;display:block}#btn-reset{position:absolute;bottom:2rem;right:1.5rem}.btn-menu-return{position:absolute;top:1.5rem;right:1.5rem}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b3;position:absolute;inset:0}.modal-content{text-align:center;background:#1a1a2e;border:1px solid #ffffff1a;border-radius:12px;width:90%;max-width:400px;padding:2.5rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.modal-close{color:#ffffff80;cursor:pointer;background:0 0;border:none;font-size:1.5rem;transition:color .15s;position:absolute;top:1rem;right:1rem}.modal-close:hover{color:#fff}.modal-content h2{letter-spacing:.05em;margin-bottom:.5rem;font-family:Bebas Neue,sans-serif;font-size:2rem}.modal-content p{color:#fff9;margin-bottom:1.5rem;font-size:.9rem}.price-tag{color:#f24;margin-bottom:1.5rem;font-family:Bebas Neue,sans-serif;font-size:2.5rem}.card-form{flex-direction:column;gap:.8rem;display:flex}.card-input{color:#fff;background:#ffffff0f;border:1px solid #ffffff26;border-radius:6px;outline:none;width:100%;padding:.7rem 1rem;font-family:Inter,sans-serif;font-size:.95rem;transition:border-color .15s}.card-input:focus{border-color:#ff224480}.card-input.small{width:100%}.card-row{gap:.8rem;display:flex}.card-form .btn-primary{margin-top:.5rem}#photo-success{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05000ad9}.success-content{text-align:center;animation:.4s success-pop;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.success-content h2{color:#0f8;text-shadow:0 0 20px #00ff8880;font-family:Bebas Neue,sans-serif;font-size:3rem}.success-content p{color:#fff9;margin:.5rem 0 1.5rem}@keyframes success-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.screen-shake{animation:.15s shake}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(-4px,2px)}50%{transform:translate(4px,-2px)}75%{transform:translate(-2px,4px)}to{transform:translate(0)}}.score-popup{color:#fc0;text-shadow:0 0 8px #ffc80080;pointer-events:none;z-index:20;opacity:1;font-family:Bebas Neue,sans-serif;font-size:1.6rem;transition:all .7s ease-out;position:fixed;transform:translate(-50%)}.respawn-notice{color:#0f8;text-shadow:0 0 20px #00ff8880,0 0 60px #0f83;pointer-events:none;z-index:25;opacity:0;letter-spacing:.1em;font-family:Bebas Neue,sans-serif;font-size:3rem;transition:all .4s;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(1.3)}.auth-status{color:#ffffff80;justify-content:center;align-items:center;gap:.6rem;margin-top:1rem;font-size:.85rem;display:flex}.auth-status .user-nickname{color:#f24;border-bottom:1px dashed #f246;font-weight:600}.btn-link{color:#f24;cursor:pointer;font-family:Inter,sans-serif;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline;transition:color .15s}.btn-link:hover{color:#f57}.btn-text{color:#ffffff80;cursor:pointer;background:0 0;border:none;padding:.2rem .5rem;font-family:Inter,sans-serif;font-size:.8rem;transition:color .15s}.btn-text:hover{color:#fff}.auth-form{flex-direction:column;gap:.8rem;display:flex}.auth-error{color:#f68;background:#ff224426;border:1px solid #ff22444d;border-radius:6px;margin-bottom:.5rem;padding:.6rem 1rem;font-size:.85rem}.auth-toggle{color:#ffffff80;margin-top:1rem;font-size:.85rem}.leaderboard{max-width:340px;margin-top:2rem;margin-left:auto;margin-right:auto}.leaderboard-title{letter-spacing:.12em;color:#fff6;margin-bottom:.6rem;font-family:Bebas Neue,sans-serif;font-size:1.1rem}.leaderboard-list{flex-direction:column;gap:0;display:flex}.lb-row{border-radius:4px;align-items:center;padding:.35rem .8rem;font-size:.82rem;transition:background .15s;display:flex}.lb-row:nth-child(odd){background:#ffffff08}.lb-rank{color:#ffffff59;text-align:left;flex-shrink:0;width:1.8rem;font-family:Bebas Neue,sans-serif;font-size:1rem}.lb-row:first-child .lb-rank{color:gold}.lb-row:nth-child(2) .lb-rank{color:silver}.lb-row:nth-child(3) .lb-rank{color:#cd7f32}.lb-name{text-align:left;color:#ffffff8c;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.lb-score{color:#f24;text-shadow:0 0 6px #ff22444d;flex-shrink:0;margin-left:.8rem;font-family:Bebas Neue,sans-serif;font-size:1rem}.lb-empty{color:#ffffff40;padding:.5rem 0;font-size:.8rem}.footer-links{margin-top:2rem;font-size:.75rem}.footer-links a{color:#ffffff59;text-decoration:none;transition:color .15s}.footer-links a:hover{color:#ffffffb3}.footer-sep{color:#fff3;margin:0 .4rem}@media (width<=600px){.game-title{font-size:3.5rem}.btn{padding:.6rem 1.5rem;font-size:1.1rem}.weapon-slot{min-width:55px;padding:.3rem .6rem}#hud-score{font-size:2rem}.modal-content{padding:1.5rem}}
