@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700;900&family=Rajdhani:wght@300;400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:#000;font-family:Rajdhani,Courier New,monospace;color:#fff;cursor:none;user-select:none}#game-container{position:relative;width:100%;height:100%}#game-canvas{display:block;width:100%;height:100%}#ui-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}body.menu-active{cursor:default}body.menu-active #ui-overlay{pointer-events:auto}:root{--neon-pink: #ff2060;--neon-cyan: #00ffff;--neon-orange: #ff6600;--neon-green: #39ff14;--bg-dark: rgba(5, 5, 15, .85);--bg-darker: rgba(2, 2, 8, .95);--font-display: "Orbitron", monospace;--font-body: "Rajdhani", sans-serif;--glow-pink: 0 0 10px #ff2060, 0 0 20px #ff206066;--glow-cyan: 0 0 10px #00ffff, 0 0 20px #00ffff66;--glow-orange: 0 0 10px #ff6600, 0 0 20px #ff660066;--glow-green: 0 0 10px #39ff14, 0 0 20px #39ff1466}.hud{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;font-family:var(--font-body);opacity:0;transition:opacity .3s ease;z-index:5}.hud.visible{opacity:1}.hud-wave{position:absolute;top:24px;left:24px;display:flex;flex-direction:column;gap:4px}.hud-wave-label{font-family:var(--font-display);font-size:26px;font-weight:900;color:var(--neon-cyan);text-shadow:var(--glow-cyan),0 0 40px rgba(0,255,255,.2);letter-spacing:4px;text-transform:uppercase;transition:transform .3s cubic-bezier(.16,1,.3,1),text-shadow .3s ease}.hud-enemies{font-family:var(--font-body);font-size:14px;font-weight:500;color:#fff9;letter-spacing:1px;text-transform:uppercase}.hud-enemies span{color:var(--neon-orange);text-shadow:var(--glow-orange);font-weight:700}.hud-timer{position:absolute;top:24px;right:24px;font-family:var(--font-display);font-size:18px;font-weight:400;color:#ffffff80;text-shadow:0 0 6px rgba(255,255,255,.15);letter-spacing:2px}.hud-killfeed{position:absolute;top:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;min-width:280px}.hud-killfeed-entry{font-family:var(--font-body);font-size:14px;font-weight:500;color:#ffffffd9;text-shadow:0 0 8px rgba(255,255,255,.2);background:#05050f80;border-left:2px solid var(--neon-pink);padding:3px 12px 3px 10px;letter-spacing:.5px;animation:killfeedSlideIn .35s cubic-bezier(.16,1,.3,1) forwards;white-space:nowrap}.hud-killfeed-entry.fading{animation:killfeedOut .5s ease forwards}.hud-killfeed-entry.killfeed-kill{color:#ffffffe6;border-left-color:var(--neon-pink);text-shadow:0 0 6px rgba(255,255,255,.3)}.hud-killfeed-entry.killfeed-headshot{color:#ff2020;border-left-color:#ff2020;text-shadow:0 0 10px rgba(255,32,32,.6),0 0 20px rgba(255,32,32,.2);font-weight:700;background:#ff000014}.hud-killfeed-entry.killfeed-environmental{color:#f80;border-left-color:#f80;text-shadow:0 0 8px rgba(255,136,0,.5);background:#ff88000f}.hud-killfeed-entry.killfeed-barrel{color:#f60;border-left-color:#f40;text-shadow:0 0 10px rgba(255,68,0,.6),0 0 20px rgba(255,68,0,.2);font-weight:700;background:#ff440014}.hud-killfeed-entry.killfeed-combo{color:gold;border-left-color:gold;text-shadow:0 0 10px rgba(255,215,0,.6),0 0 20px rgba(255,215,0,.3);font-weight:700;background:#ffd7000f}.hud-killfeed-entry.killfeed-pickup{color:#39ff14;border-left-color:#0fc;text-shadow:0 0 8px rgba(57,255,20,.5);background:#00ff800f}.hud-killfeed-entry.killfeed-upgrade{color:#0ff;border-left-color:#0ff;text-shadow:0 0 10px rgba(0,255,255,.5),0 0 20px rgba(0,255,255,.2);font-weight:700;background:#00ffff0f}@keyframes killfeedSlideIn{0%{opacity:0;transform:translate(40px) scale(1.1)}60%{opacity:1;transform:translate(-4px) scale(1.02)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes killfeedOut{to{opacity:0;transform:translate(30px)}}.hud-health{position:absolute;bottom:28px;left:24px;display:flex;flex-direction:column;gap:6px}.hud-health-text{font-family:var(--font-display);font-size:28px;font-weight:700;color:#fff;text-shadow:var(--glow-pink);letter-spacing:1px}.hud-health-text .health-current{color:var(--neon-pink)}.hud-health-text .health-divider{color:#ffffff4d;font-size:20px;margin:0 2px}.hud-health-text .health-max{color:#fff6;font-size:20px}.hud-health-bar-container{width:220px;height:6px;background:#ff206026;border:1px solid rgba(255,32,96,.3);border-radius:1px;overflow:hidden;position:relative}.hud-health-bar{height:100%;background:linear-gradient(90deg,#ff2060,#ff4080);border-radius:1px;transition:width .5s cubic-bezier(.25,.46,.45,.94);position:relative;box-shadow:0 0 12px #ff206080,inset 0 0 4px #fff3}.hud-health-bar.critical{animation:healthPulse .6s ease-in-out infinite;background:linear-gradient(90deg,red,#ff2060)}@keyframes healthPulse{0%,to{opacity:1}50%{opacity:.5}}.hud-ammo{position:absolute;bottom:28px;left:50%;transform:translate(-50%);text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px}.hud-weapon-name{font-family:var(--font-body);font-size:13px;font-weight:500;color:#fff6;text-transform:uppercase;letter-spacing:3px}.hud-ammo-count{font-family:var(--font-display);font-size:36px;font-weight:700;color:var(--neon-cyan);text-shadow:var(--glow-cyan);letter-spacing:2px;line-height:1}.hud-ammo-count .ammo-divider{color:#ffffff40;font-size:22px;margin:0 4px}.hud-ammo-count .ammo-reserve{color:#0ff6;font-size:22px}.hud-reload-container{width:160px;height:4px;background:#ffffff1a;border:1px solid rgba(0,255,255,.2);border-radius:2px;overflow:hidden;margin-top:6px;opacity:0;transform:scaleY(0);transition:opacity .15s ease,transform .15s ease}.hud-reload-container.active{opacity:1;transform:scaleY(1)}.hud-reload-bar{height:100%;width:0%;background:linear-gradient(90deg,#0ff,#0cf);box-shadow:0 0 8px #0ff9,inset 0 0 4px #ffffff4d;border-radius:2px;transition:width .05s linear}.hud-reload-text{font-family:var(--font-display);font-size:11px;font-weight:700;color:var(--neon-cyan);text-shadow:var(--glow-cyan);letter-spacing:3px;text-transform:uppercase;margin-top:4px;opacity:0;transition:opacity .15s ease}.hud-reload-text.active{opacity:1;animation:reloadPulse .6s ease-in-out infinite}@keyframes reloadPulse{0%,to{opacity:1}50%{opacity:.4}}.hud-score{position:absolute;bottom:28px;right:24px;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.hud-score-label{font-family:var(--font-body);font-size:12px;font-weight:500;color:#ffffff59;text-transform:uppercase;letter-spacing:3px}.hud-score-value{font-family:var(--font-display);font-size:30px;font-weight:700;color:var(--neon-orange);text-shadow:var(--glow-orange);letter-spacing:2px;transition:transform .15s cubic-bezier(.34,1.56,.64,1)}.hud-score-value.pop{transform:scale(1.12);text-shadow:var(--glow-orange),0 0 30px rgba(255,102,0,.5)}.hud-combo{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--neon-green);text-shadow:var(--glow-green);letter-spacing:2px;opacity:0;transition:opacity .2s ease,transform .2s ease;transform:translateY(4px)}.hud-combo.active{opacity:1;transform:translateY(0)}.crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;opacity:0;transition:opacity .2s ease;z-index:6}.crosshair.visible{opacity:1}.crosshair-inner{position:relative;width:28px;height:28px}.crosshair-line{position:absolute;background:#ffffffe6;box-shadow:0 0 4px #ffffff80;transition:all .12s cubic-bezier(.25,.46,.45,.94)}.crosshair-line-top{width:2px;height:8px;top:0;left:50%;transform:translate(-50%);transform-origin:center bottom}.crosshair-line-bottom{width:2px;height:8px;bottom:0;left:50%;transform:translate(-50%);transform-origin:center top}.crosshair-line-left{width:8px;height:2px;left:0;top:50%;transform:translateY(-50%);transform-origin:right center}.crosshair-line-right{width:8px;height:2px;right:0;top:50%;transform:translateY(-50%);transform-origin:left center}.crosshair-dot{position:absolute;width:2px;height:2px;background:#fff;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 3px #fff9}.crosshair.expanded .crosshair-line-top{transform:translate(-50%) translateY(-5px)}.crosshair.expanded .crosshair-line-bottom{transform:translate(-50%) translateY(5px)}.crosshair.expanded .crosshair-line-left{transform:translateY(-50%) translate(-5px)}.crosshair.expanded .crosshair-line-right{transform:translateY(-50%) translate(5px)}.crosshair-hitmarker{position:absolute;top:50%;left:50%;width:20px;height:20px;transform:translate(-50%,-50%);opacity:0;pointer-events:none}.crosshair-hitmarker.active{animation:hitmarkerFlash .2s ease-out forwards}.crosshair-hitmarker-line{position:absolute;width:8px;height:2px;background:#fff;box-shadow:0 0 6px #fffc}.crosshair-hitmarker-line:nth-child(1){top:2px;left:2px;transform:rotate(45deg)}.crosshair-hitmarker-line:nth-child(2){top:2px;right:2px;transform:rotate(-45deg)}.crosshair-hitmarker-line:nth-child(3){bottom:2px;left:2px;transform:rotate(-45deg)}.crosshair-hitmarker-line:nth-child(4){bottom:2px;right:2px;transform:rotate(45deg)}@keyframes hitmarkerFlash{0%{opacity:1;transform:translate(-50%,-50%) scale(.6)}50%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.2)}}.crosshair-hitmarker.headshot .crosshair-hitmarker-line{background:#ff2020;box-shadow:0 0 10px #ff2020e6,0 0 20px #ff202066}.crosshair-hitmarker.headshot.active{animation:hitmarkerHeadshot .35s ease-out forwards}@keyframes hitmarkerHeadshot{0%{opacity:1;transform:translate(-50%,-50%) scale(.4)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.3)}60%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.crosshair.headshot-flash .crosshair-line,.crosshair.headshot-flash .crosshair-dot,.crosshair.headshot-flash .crosshair-circle-ring,.crosshair.headshot-flash .crosshair-circle-dot,.crosshair.headshot-flash .crosshair-slash{background:#ff2020!important;border-color:#ff2020!important;box-shadow:0 0 12px #ff2020cc!important;transition:all .05s ease}.dash-cooldown-indicator{position:absolute;bottom:80px;left:50%;transform:translate(-50%);width:60px;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;pointer-events:none;z-index:10;transition:opacity .3s ease}.dash-cooldown-indicator-fill{height:100%;background:linear-gradient(90deg,#0ff,#08f);border-radius:2px;box-shadow:0 0 6px #00ffff80;transition:width .05s linear}.dash-cooldown-indicator.ready .dash-cooldown-indicator-fill{background:linear-gradient(90deg,#0ff,#0f8);box-shadow:0 0 10px #0ffc}.main-menu{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-darker);z-index:100;pointer-events:none;opacity:0;transition:opacity .5s ease;overflow:hidden}.main-menu.visible{opacity:1;pointer-events:auto}.main-menu:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,255,.015) 2px,rgba(0,255,255,.015) 4px);pointer-events:none;z-index:1;animation:scanlineScroll 8s linear infinite}@keyframes scanlineScroll{0%{transform:translateY(0)}to{transform:translateY(4px)}}.menu-bg-shapes{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:0}.menu-shape{position:absolute;border:1px solid;opacity:.08;animation:shapeFloat linear infinite}.menu-shape:nth-child(1){width:120px;height:120px;border-color:var(--neon-pink);top:10%;left:8%;animation-duration:20s;transform:rotate(45deg)}.menu-shape:nth-child(2){width:80px;height:80px;border-color:var(--neon-cyan);top:70%;right:12%;animation-duration:25s;animation-delay:-5s;border-radius:50%}.menu-shape:nth-child(3){width:200px;height:200px;border-color:var(--neon-orange);bottom:15%;left:15%;animation-duration:30s;animation-delay:-10s;transform:rotate(30deg)}.menu-shape:nth-child(4){width:60px;height:60px;border-color:var(--neon-cyan);top:20%;right:25%;animation-duration:18s;animation-delay:-3s;transform:rotate(60deg)}.menu-shape:nth-child(5){width:140px;height:140px;border-color:var(--neon-pink);bottom:30%;right:8%;animation-duration:22s;animation-delay:-8s;border-radius:50%}.menu-shape:nth-child(6){width:90px;height:90px;border-color:var(--neon-green);top:50%;left:5%;animation-duration:28s;animation-delay:-14s;transform:rotate(15deg)}@keyframes shapeFloat{0%{transform:rotate(0) translateY(0);opacity:.04}25%{opacity:.1}50%{transform:rotate(180deg) translateY(-30px);opacity:.06}75%{opacity:.1}to{transform:rotate(360deg) translateY(0);opacity:.04}}.main-menu:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,transparent 30%,rgba(0,0,0,.6) 100%);pointer-events:none;z-index:1}.menu-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:0;animation:menuContentIn .8s cubic-bezier(.16,1,.3,1) .2s both}@keyframes menuContentIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.menu-title{font-family:var(--font-display);font-size:clamp(28px,5vw,56px);font-weight:900;color:#fff;text-shadow:0 0 20px rgba(255,32,96,.6),0 0 40px rgba(255,32,96,.3),0 0 80px rgba(255,32,96,.15);letter-spacing:6px;text-align:center;text-transform:uppercase;line-height:1.1;margin-bottom:4px}.menu-title-line{display:block}.menu-version{font-family:var(--font-display);font-size:clamp(18px,2.5vw,32px);font-weight:400;color:var(--neon-cyan);text-shadow:var(--glow-cyan);letter-spacing:12px;text-transform:uppercase;margin-bottom:16px}.menu-dedication{font-family:var(--font-body);font-size:clamp(13px,1.5vw,17px);font-weight:500;color:var(--neon-orange);text-shadow:var(--glow-orange);letter-spacing:6px;text-transform:uppercase;margin-bottom:48px;opacity:.85;position:relative}.menu-dedication:before,.menu-dedication:after{content:"---";margin:0 12px;color:#ff66004d;letter-spacing:4px}.menu-dedication-text{position:relative;display:inline-block;background:linear-gradient(90deg,var(--neon-orange) 0%,var(--neon-orange) 40%,#fff 50%,var(--neon-orange) 60%,var(--neon-orange) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:dedicationShimmer 4s ease-in-out infinite;filter:drop-shadow(0 0 6px rgba(255,102,0,.4))}@keyframes dedicationShimmer{0%,to{background-position:200% center}50%{background-position:-200% center}}.menu-separator{width:200px;height:1px;background:linear-gradient(90deg,transparent,var(--neon-cyan),transparent);margin-bottom:40px;opacity:.4}.menu-buttons{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:40px}.menu-btn{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:4px;border:none;cursor:pointer;position:relative;overflow:hidden;transition:all .25s cubic-bezier(.16,1,.3,1);outline:none;background:none;min-height:44px;min-width:44px}.menu-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);transition:left .4s ease}.menu-btn:hover:before{left:100%}.menu-btn-primary{font-size:clamp(16px,2vw,22px);padding:16px 48px;background:linear-gradient(135deg,#ff206026,#ff20600d);color:#fff;border:1px solid var(--neon-pink);text-shadow:var(--glow-pink);box-shadow:0 0 20px #ff206033,inset 0 0 20px #ff20600d}.menu-btn-primary:hover{background:linear-gradient(135deg,#ff20604d,#ff20601a);box-shadow:0 0 40px #ff206080,0 0 80px #ff206026,inset 0 0 30px #ff20601a;transform:scale(1.04) translateY(-2px)}.menu-btn-primary:active{transform:scale(.98)}.menu-btn-secondary{font-size:clamp(11px,1.2vw,14px);padding:10px 28px;color:#ffffff80;border:1px solid rgba(255,255,255,.15);background:#ffffff05}.menu-btn-secondary:hover{color:var(--neon-cyan);border-color:#0ff6;text-shadow:var(--glow-cyan);background:#00ffff0a;box-shadow:0 0 20px #00ffff1f,0 0 40px #00ffff0f;transform:translateY(-1px)}.menu-controls{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1),opacity .3s ease;opacity:0;width:100%;display:flex;justify-content:center}.menu-controls.open{max-height:300px;opacity:1}.menu-controls-inner{display:grid;grid-template-columns:repeat(2,auto);gap:8px 32px;padding:20px 24px;background:var(--bg-dark);border:1px solid rgba(0,255,255,.1);backdrop-filter:blur(10px)}.menu-control-row{display:flex;align-items:center;gap:12px}.menu-control-key{font-family:var(--font-display);font-size:11px;font-weight:700;color:var(--neon-cyan);text-shadow:var(--glow-cyan);background:#00ffff0f;border:1px solid rgba(0,255,255,.2);padding:3px 10px;min-width:40px;text-align:center;letter-spacing:1px}.menu-control-desc{font-family:var(--font-body);font-size:13px;font-weight:400;color:#ffffff80;letter-spacing:.5px}.gameover{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-darker);z-index:100;pointer-events:none;opacity:0;transition:opacity .4s ease}.gameover.visible{opacity:1;pointer-events:auto}.gameover-content{display:flex;flex-direction:column;align-items:center;gap:0}.gameover-title{font-family:var(--font-display);font-size:clamp(32px,5vw,60px);font-weight:900;color:var(--neon-pink);text-shadow:0 0 20px rgba(255,32,96,.7),0 0 40px rgba(255,32,96,.4),0 0 80px rgba(255,32,96,.2);letter-spacing:8px;text-transform:uppercase;text-align:center;animation:glitchIn .6s cubic-bezier(.16,1,.3,1) both;margin-bottom:32px}@keyframes glitchIn{0%{opacity:0;transform:scale(1.5) translateY(-10px);filter:blur(8px)}30%{opacity:1;transform:scale(.98) translate(5px);filter:blur(0)}40%{transform:scale(1.01) translate(-3px);text-shadow:3px 0 var(--neon-cyan),-3px 0 var(--neon-pink),0 0 20px rgba(255,32,96,.7)}50%{transform:scale(1) translate(2px);text-shadow:-2px 0 var(--neon-cyan),2px 0 var(--neon-pink),0 0 20px rgba(255,32,96,.7)}60%{transform:scale(1) translate(0)}to{text-shadow:0 0 20px rgba(255,32,96,.7),0 0 40px rgba(255,32,96,.4),0 0 80px rgba(255,32,96,.2)}}.gameover-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 48px;margin-bottom:40px;animation:fadeSlideUp .5s ease .3s both}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.gameover-stat{display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;padding:12px 16px 8px}.gameover-stat-label{font-family:var(--font-body);font-size:12px;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:3px}.gameover-stat-value{font-family:var(--font-display);font-size:30px;font-weight:700;color:var(--neon-orange);text-shadow:var(--glow-orange);letter-spacing:2px;transition:transform .3s ease}.gameover-stat-value.gameover-stat-reveal{animation:statRevealPop .3s cubic-bezier(.16,1,.3,1)}.gameover-stat-value.gameover-stat-shake{animation:statShake .5s ease}.gameover-stat-value.gameover-stat-score,.gameover-stat:first-child .gameover-stat-value{font-size:42px;color:var(--neon-cyan);text-shadow:var(--glow-cyan),0 0 40px rgba(0,255,255,.3)}.gameover-score-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:120px;height:60px;background:radial-gradient(ellipse,rgba(0,255,255,.2) 0%,transparent 70%);border-radius:50%;pointer-events:none;animation:scoreGlowPulse 2s ease-in-out infinite alternate;z-index:-1}@keyframes statRevealPop{0%{transform:scale(1)}40%{transform:scale(1.15)}to{transform:scale(1)}}.gameover-best-badge{font-family:var(--font-display);font-size:10px;color:#ff2060;text-shadow:0 0 6px #ff2060,0 0 12px #ff206066;letter-spacing:2px;margin-top:2px;animation:bestPulse 1s ease-in-out infinite alternate,badgeFadeIn .4s cubic-bezier(.16,1,.3,1) forwards}.gameover-buttons{display:flex;gap:16px;animation:fadeSlideUp .5s ease .5s both}.pause-menu{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#020208cc;backdrop-filter:blur(6px);z-index:100;pointer-events:none;opacity:0;transition:opacity .25s ease}.pause-menu.visible{opacity:1;pointer-events:auto}.pause-content{display:flex;flex-direction:column;align-items:center;gap:0;animation:pauseIn .3s cubic-bezier(.16,1,.3,1) both}@keyframes pauseIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.pause-title{font-family:var(--font-display);font-size:clamp(28px,4vw,48px);font-weight:900;color:#fff;text-shadow:0 0 20px rgba(255,255,255,.2);letter-spacing:12px;text-transform:uppercase;margin-bottom:16px}.pause-info{display:flex;gap:32px;margin-bottom:32px}.pause-info-item{display:flex;flex-direction:column;align-items:center;gap:2px}.pause-info-label{font-family:var(--font-body);font-size:11px;font-weight:500;color:#ffffff59;text-transform:uppercase;letter-spacing:3px}.pause-info-value{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--neon-cyan);text-shadow:var(--glow-cyan);letter-spacing:2px}.pause-buttons{display:flex;flex-direction:column;gap:14px;align-items:center;min-width:220px}.pause-scanlines{position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,#fff0 0px 2px,#ffffff05 2px 4px);pointer-events:none;z-index:0;animation:pauseScanlineScroll 8s linear infinite}@keyframes pauseScanlineScroll{0%{background-position:0 0}to{background-position:0 200px}}.damage-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:8;opacity:0;transition:opacity .08s ease;background:radial-gradient(ellipse at center,transparent 40%,rgba(255,0,0,.5) 100%)}.damage-overlay.flash{opacity:1;animation:damageFlash .35s ease-out forwards}@keyframes damageFlash{0%{opacity:var(--flash-intensity, .6)}to{opacity:0}}.damage-overlay.low-health{animation:lowHealthPulse 1.2s ease-in-out infinite;background:radial-gradient(ellipse at center,transparent 50%,rgba(255,0,0,.35) 100%)}@keyframes lowHealthPulse{0%,to{opacity:.2}50%{opacity:.5}}.damage-edge-glow{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9;opacity:0;background:radial-gradient(ellipse at 50% 0%,rgba(200,0,0,.7) 0%,transparent 50%),radial-gradient(ellipse at 50% 100%,rgba(200,0,0,.7) 0%,transparent 50%),radial-gradient(ellipse at 0% 50%,rgba(200,0,0,.6) 0%,transparent 45%),radial-gradient(ellipse at 100% 50%,rgba(200,0,0,.6) 0%,transparent 45%)}.damage-edge-glow.active{animation:edgeGlowFlash .5s ease-out forwards}@keyframes edgeGlowFlash{0%{opacity:var(--edge-intensity, .6)}30%{opacity:calc(var(--edge-intensity, .6) * .7)}to{opacity:0}}.damage-low-health-edge{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:7;opacity:0;background:radial-gradient(ellipse at 50% 0%,rgba(180,0,0,.4) 0%,transparent 40%),radial-gradient(ellipse at 50% 100%,rgba(180,0,0,.4) 0%,transparent 40%),radial-gradient(ellipse at 0% 50%,rgba(180,0,0,.35) 0%,transparent 35%),radial-gradient(ellipse at 100% 50%,rgba(180,0,0,.35) 0%,transparent 35%);transition:opacity .5s ease}.damage-low-health-edge.active{animation:lowHealthEdgePulse 2s ease-in-out infinite}@keyframes lowHealthEdgePulse{0%,to{opacity:.15}50%{opacity:.4}}.weapon-intro{position:absolute;top:25%;right:24px;text-align:right;pointer-events:none;z-index:15;opacity:0;transform:translate(30px);transition:opacity .4s ease,transform .4s cubic-bezier(.16,1,.3,1)}.weapon-intro.visible{opacity:1;transform:translate(0)}.weapon-intro.hiding{opacity:0;transform:translate(20px);transition:opacity .5s ease,transform .5s ease}.weapon-intro-name{font-family:var(--font-display);font-size:24px;font-weight:900;letter-spacing:5px;color:var(--weapon-color, #ffffff);text-shadow:0 0 14px var(--weapon-glow, rgba(255, 255, 255, .5)),0 0 30px var(--weapon-glow, rgba(255, 255, 255, .2));margin-bottom:4px;animation:weaponIntroNamePop .4s cubic-bezier(.16,1,.3,1) forwards}.weapon-intro-desc{font-family:var(--font-body);font-size:13px;font-weight:400;letter-spacing:2px;color:#ffffff80;text-shadow:0 0 6px rgba(255,255,255,.15);text-transform:uppercase}@keyframes weaponIntroNamePop{0%{transform:scale(1.3);opacity:0}50%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:1}}.wave-announcement{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;z-index:50;opacity:0}.wave-announcement.active{animation:waveAnnouncementCycle 3s ease both}@keyframes waveAnnouncementCycle{0%{opacity:0;transform:translate(-50%,-50%) scale(1.4);filter:blur(10px)}8%{opacity:1;transform:translate(-50%,-48%) scale(1);filter:blur(0)}12%{transform:translate(-50%,-50%) scale(1.02) translate(3px);text-shadow:3px 0 var(--neon-cyan),-3px 0 var(--neon-pink)}16%{transform:translate(-50%,-50%) scale(1) translate(-2px);text-shadow:-2px 0 var(--neon-cyan),2px 0 var(--neon-pink)}20%{transform:translate(-50%,-50%) scale(1) translate(0)}75%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) translateY(-15px) scale(.97)}}.wave-announcement-number{font-family:var(--font-display);font-size:clamp(48px,8vw,96px);font-weight:900;color:#fff;text-shadow:0 0 30px rgba(0,255,255,.6),0 0 60px rgba(0,255,255,.3),0 0 100px rgba(0,255,255,.15);letter-spacing:12px;text-transform:uppercase;line-height:1}.wave-announcement-subtitle{font-family:var(--font-body);font-size:clamp(14px,2vw,20px);font-weight:500;color:#ffffff80;letter-spacing:6px;text-transform:uppercase;margin-top:8px}.killstreak-announcement{position:absolute;top:35%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;z-index:55;opacity:0}.killstreak-announcement.active{animation:killstreakSlideIn 2s cubic-bezier(.16,1,.3,1) forwards}.killstreak-text{font-family:var(--font-display);font-weight:900;letter-spacing:8px;text-transform:uppercase;line-height:1;white-space:nowrap}@keyframes killstreakSlideIn{0%{opacity:0;transform:translate(-120%,-50%) scale(.8)}8%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}12%{transform:translate(-50%,-50%) scale(1)}15%{transform:translate(-48%,-50%) scale(1);filter:blur(0)}17%{transform:translate(-52%,-50%) scale(1)}20%{transform:translate(-50%,-50%) scale(1)}70%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-60%) scale(.95)}}.killstreak-announcement.rainbow .killstreak-text{background:linear-gradient(90deg,#ff2060,#f60,#ff0,#39ff14,#0ff,#ff40ff,#ff2060);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:rainbowShift 1s linear infinite;filter:drop-shadow(0 0 20px rgba(255,255,255,.5))}@keyframes rainbowShift{0%{background-position:0% 50%}to{background-position:300% 50%}}.wave-countdown{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;z-index:48}.wave-countdown-number{font-family:var(--font-display);font-size:clamp(60px,10vw,120px);font-weight:900;color:#fff;text-shadow:0 0 30px rgba(0,255,255,.5),0 0 60px rgba(0,255,255,.25);letter-spacing:4px;animation:countdownPulse .9s ease-out;opacity:.9}@keyframes countdownPulse{0%{opacity:0;transform:scale(2);filter:blur(8px)}30%{opacity:1;transform:scale(1);filter:blur(0)}to{opacity:.4;transform:scale(.95)}}.tutorial-hint{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;z-index:45;max-width:90vw}.tutorial-hint-text{font-family:var(--font-body);font-size:clamp(16px,2.2vw,24px);font-weight:600;color:#fff;text-shadow:0 0 8px rgba(255,255,255,.4),0 0 20px rgba(255,255,255,.15);letter-spacing:2px;text-transform:uppercase;padding:12px 32px;background:#05050fb3;border:1px solid rgba(255,255,255,.12);border-radius:4px;backdrop-filter:blur(6px);white-space:nowrap}.dedication-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;z-index:200;opacity:0;font-family:var(--font-display);font-size:clamp(28px,5vw,56px);font-weight:900;color:var(--neon-pink);text-shadow:0 0 20px rgba(255,32,96,.8),0 0 40px rgba(255,32,96,.5),0 0 80px rgba(255,32,96,.3),0 0 120px rgba(255,32,96,.15);letter-spacing:6px;text-transform:uppercase;white-space:nowrap}.dedication-overlay.active{animation:dedicationCycle 4.8s ease both}@keyframes dedicationCycle{0%{opacity:0;transform:translate(-50%,-50%) scale(.9);filter:blur(6px)}16.7%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}79.2%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.05);filter:blur(4px)}}.gameover-stat.full-width{grid-column:1 / -1}.crosshair-weapon-porkblaster .crosshair-line{background:#ff2060e6;box-shadow:0 0 4px #ff206080;width:2px}.crosshair-weapon-porkblaster .crosshair-line-left,.crosshair-weapon-porkblaster .crosshair-line-right{width:8px;height:2px}.crosshair-weapon-porkblaster .crosshair-dot{background:#ff2060;box-shadow:0 0 3px #ff206099}.crosshair-chopcannon{width:40px;height:40px;position:relative}.crosshair-circle-ring{position:absolute;top:0;left:0;width:100%;height:100%;border:2px solid rgba(255,102,0,.75);border-radius:50%;box-shadow:0 0 6px #ff66004d,inset 0 0 6px #ff660026;transition:transform .15s cubic-bezier(.25,.46,.45,.94)}.crosshair-circle-tick{position:absolute;width:2px;height:5px;background:#f60c;top:-1px;left:50%;transform-origin:center 21px;margin-left:-1px}.crosshair-circle-dot{position:absolute;width:3px;height:3px;background:#f60;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 4px #f609}.crosshair.expanded .crosshair-circle-ring{transform:scale(1.25);border-color:#f60;box-shadow:0 0 12px #ff660080,inset 0 0 10px #ff660040}.crosshair-bonesaw{width:32px;height:32px;position:relative}.crosshair-slash{position:absolute;width:3px;height:18px;background:#00ffffd9;border-radius:2px;box-shadow:0 0 6px #0ff6;top:50%;transition:transform .1s ease-out}.crosshair-slash-left{left:8px;transform:translateY(-50%) rotate(-30deg);transform-origin:center}.crosshair-slash-right{right:8px;transform:translateY(-50%) rotate(30deg);transform-origin:center}.crosshair.expanded .crosshair-slash-left{transform:translateY(-50%) rotate(-10deg) translate(3px)}.crosshair.expanded .crosshair-slash-right{transform:translateY(-50%) rotate(10deg) translate(-3px)}.combo-meter{position:absolute;left:24px;top:50%;transform:translateY(-50%);width:100px;height:100px;pointer-events:none;opacity:0;transition:opacity .3s ease;z-index:6}.combo-meter.visible{opacity:1}.combo-meter-svg{position:absolute;top:0;left:0;width:100%;height:100%}.combo-meter-fill-ring{transition:stroke-dashoffset .2s ease-out,stroke .3s ease}.combo-meter-timer-ring{transition:stroke-dashoffset .05s linear}.combo-meter-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.combo-meter-number{font-family:var(--font-display);font-size:24px;font-weight:700;color:#0ff;text-shadow:0 0 10px #00ffff,0 0 20px #00ffff66;letter-spacing:1px;line-height:1;transition:color .3s ease,text-shadow .3s ease}.combo-meter-label{font-family:var(--font-display);font-size:8px;font-weight:400;color:#ffffff80;letter-spacing:3px;text-transform:uppercase;margin-top:2px}.combo-meter-number.combo-pop{animation:comboPop .2s ease-out}@keyframes comboPop{0%{transform:scale(1.4)}60%{transform:scale(.95)}to{transform:scale(1)}}.combo-meter-intense .combo-meter-number{animation:comboPulse .6s ease-in-out infinite alternate}@keyframes comboPulse{0%{transform:scale(1);filter:brightness(1)}to{transform:scale(1.1);filter:brightness(1.4)}}.combo-meter-reset{animation:comboReset .4s ease-out forwards}@keyframes comboReset{0%{opacity:1;transform:translateY(-50%) scale(1)}50%{opacity:.8;transform:translateY(-50%) scale(1.15);filter:brightness(2)}to{opacity:0;transform:translateY(-50%) scale(.8);filter:brightness(.5)}}.combo-meter-sparks{position:absolute;top:50%;left:50%;width:0;height:0;pointer-events:none}.combo-meter-spark{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--spark-color, #00ffff);box-shadow:0 0 4px var(--spark-color, #00ffff);animation:sparkFly .5s ease-out var(--spark-delay, 0s) forwards}@keyframes sparkFly{0%{opacity:1;transform:rotate(var(--spark-angle, 0deg)) translateY(0)}to{opacity:0;transform:rotate(var(--spark-angle, 0deg)) translateY(calc(-1 * var(--spark-distance, 30px)))}}.wave-announcement-boss{font-family:var(--font-display);font-size:clamp(16px,2.5vw,24px);font-weight:900;color:#ff2020;text-shadow:0 0 15px rgba(255,32,32,.8),0 0 30px rgba(255,32,32,.4),0 0 60px rgba(255,0,0,.2);letter-spacing:6px;text-transform:uppercase;margin-bottom:6px;animation:bossFlicker .15s ease infinite alternate}@keyframes bossFlicker{0%{opacity:.85}to{opacity:1}}.wave-announcement.boss-wave .wave-announcement-number{color:#ff4040;text-shadow:0 0 30px rgba(255,32,32,.7),0 0 60px rgba(255,0,0,.4),0 0 100px rgba(255,0,0,.2)}.wave-announcement-subwave{font-family:var(--font-display);font-size:clamp(12px,1.8vw,18px);font-weight:700;color:var(--neon-orange);text-shadow:var(--glow-orange);letter-spacing:4px;text-transform:uppercase;margin-top:6px;animation:subwavePulse .6s ease-in-out infinite alternate}@keyframes subwavePulse{0%{opacity:.7;transform:scale(1)}to{opacity:1;transform:scale(1.03)}}.wave-announcement-enemy-preview{display:flex;justify-content:center;gap:8px;margin-top:10px}.wave-announcement-enemy-dot{display:inline-block;width:10px;height:10px;border-radius:50%;animation:dotPop .3s ease forwards;opacity:0}.wave-announcement-enemy-dot:nth-child(1){animation-delay:.3s}.wave-announcement-enemy-dot:nth-child(2){animation-delay:.45s}.wave-announcement-enemy-dot:nth-child(3){animation-delay:.6s}.wave-announcement-enemy-dot:nth-child(4){animation-delay:.75s}@keyframes dotPop{0%{opacity:0;transform:scale(0)}60%{opacity:1;transform:scale(1.3)}to{opacity:1;transform:scale(1)}}.wave-announcement-difficulty{font-family:var(--font-display);font-size:10px;font-weight:400;letter-spacing:3px;text-transform:uppercase;margin-top:12px;opacity:.6}.announcer-text{position:absolute;top:12%;left:50%;transform:translate(-50%);font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:3px;text-transform:uppercase;pointer-events:none;z-index:45;opacity:0;white-space:nowrap;transition:none}.announcer-text.announcer-visible{animation:announcerIn .25s ease forwards}.announcer-text.announcer-fadeout{animation:announcerOut .4s ease forwards}@keyframes announcerIn{0%{opacity:0;transform:translate(-50%) translateY(6px) scale(.95);filter:blur(4px)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1);filter:blur(0)}}@keyframes announcerOut{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-8px)}}@media(hover:none)and (pointer:coarse){.menu-btn-primary:active{background:linear-gradient(135deg,#ff20604d,#ff20601a);box-shadow:0 0 30px #ff206066,inset 0 0 30px #ff20601a;transform:scale(.97)}.menu-btn-secondary:active{color:var(--neon-cyan);border-color:#00ffff4d;text-shadow:var(--glow-cyan)}.menu-btn-primary:hover,.menu-btn-secondary:hover{transform:none;box-shadow:0 0 20px #ff206033,inset 0 0 20px #ff20600d}.menu-btn-secondary:hover{color:#ffffff80;border-color:#ffffff26;text-shadow:none}}@media(max-width:640px){.hud-wave{top:12px;left:12px}.hud-wave-label{font-size:max(16px,3.5vw);letter-spacing:2px}.hud-timer{top:12px;right:12px;font-size:max(14px,3vw)}.hud-health{bottom:16px;left:12px}.hud-health-text{font-size:max(22px,5vw)}.hud-health-bar-container{width:min(220px,50vw)}.menu-title-line{font-size:max(32px,8vw)!important}.menu-btn-primary{font-size:max(14px,3.5vw);padding:14px 32px;width:100%;max-width:280px}.menu-btn-secondary{font-size:max(10px,2.5vw);padding:10px 20px;width:100%;max-width:280px}.pause-info{gap:16px;flex-wrap:wrap;justify-content:center}.gameover-stats{gap:16px;flex-wrap:wrap}.gameover-buttons{flex-direction:column;align-items:center;gap:10px}}@media(min-width:641px)and (max-width:1024px){.hud-wave-label{font-size:max(18px,2.5vw)}.hud-timer{font-size:max(16px,2vw)}.hud-health-text{font-size:max(24px,3vw)}}.hud-enemies,.hud-killfeed-entry{font-size:clamp(12px,1.5vw,14px)}.hud-panel{background:#02020a73;border:1px solid rgba(255,255,255,.06);border-radius:4px;padding:10px 14px;backdrop-filter:blur(4px)}.menu-scanline-bar{position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(0,255,255,.03) 20%,rgba(0,255,255,.15) 50%,rgba(0,255,255,.03) 80%,transparent 100%);z-index:3;pointer-events:none;animation:scanBarMove 6s ease-in-out infinite}@keyframes scanBarMove{0%{top:-2px;opacity:0}5%{opacity:1}95%{opacity:1}to{top:100%;opacity:0}}.menu-particles{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:1}.menu-particle{position:absolute;border-radius:50%;background:hsl(var(--particle-hue, 180),100%,70%);box-shadow:0 0 4px hsla(var(--particle-hue, 180),100%,70%,.4);opacity:0;animation:particleDrift linear infinite}@keyframes particleDrift{0%{opacity:0;transform:translateY(0) translate(0)}10%{opacity:.4}50%{opacity:.15;transform:translateY(-30vh) translate(15px)}90%{opacity:.35}to{opacity:0;transform:translateY(-60vh) translate(-10px)}}.menu-credits{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1),opacity .3s ease;opacity:0;width:100%;display:flex;justify-content:center}.menu-credits.open{max-height:260px;opacity:1}.menu-credits-inner{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 36px;background:var(--bg-dark);border:1px solid rgba(0,255,255,.1);backdrop-filter:blur(10px)}.menu-credits-line{font-family:var(--font-body);font-size:13px;font-weight:400;color:#ffffff73;letter-spacing:1.5px;text-transform:uppercase;text-align:center}.menu-credits-accent{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--neon-pink);text-shadow:0 0 8px rgba(255,32,96,.5),0 0 20px rgba(255,32,96,.2);letter-spacing:3px;margin-bottom:4px}
