html,body{background:#000;width:100%;height:100%;margin:0;padding:0;overflow:hidden}#renderCanvas{touch-action:none;outline:none;width:100%;height:100%;position:fixed;inset:0}#app,#hud{pointer-events:none;color:#f2e2c4;-webkit-user-select:none;user-select:none;width:100%;height:100%;font-family:Courier New,Courier,monospace;position:fixed;inset:0}#crosshair{background:#f2e2c4d9;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 3px #000c}#damageFlash{opacity:0;background:radial-gradient(#b4000000 55%,#b4000073 100%);position:absolute;inset:0}#damageFlash.active{opacity:1;animation:.4s ease-out forwards damageFlashFade}@keyframes damageFlashFade{0%{opacity:1}to{opacity:0}}.hud-wave{text-align:center;text-shadow:0 2px 4px #000c;white-space:nowrap;font-size:1.1rem;position:absolute;top:16px;left:50%;transform:translate(-50%)}.hud-bottom{justify-content:center;align-items:center;gap:24px;display:flex;position:absolute;bottom:20px;left:0;right:0}.hud-health{background:#0006;border:2px solid #f2e2c499;width:220px;height:22px;position:relative}.hud-health-fill{background:linear-gradient(90deg,#7a1f1f,#c23a3a);height:100%;transition:width .15s ease-out}.hud-health-text{text-shadow:0 1px 3px #000000e6;justify-content:center;align-items:center;font-size:.85rem;display:flex;position:absolute;inset:0}.hud-ammo{text-align:center;text-shadow:0 2px 4px #000c;min-width:140px;font-size:1.1rem}.hud-powerup{text-align:center;color:#d9a3ff;text-shadow:0 2px 4px #000c;min-width:160px;font-size:.95rem}.hud-boss-wrap{background:#00000080;border:2px solid #f2e2c499;width:360px;height:20px;display:none;position:absolute;top:52px;left:50%;transform:translate(-50%)}.hud-boss-fill{background:linear-gradient(90deg,#5a2d0c,#b5541a);height:100%;transition:width .15s ease-out}.hud-boss-text{letter-spacing:.1em;text-transform:uppercase;text-shadow:0 1px 3px #000000e6;justify-content:center;align-items:center;font-size:.8rem;display:flex;position:absolute;inset:0}.hud-radar{background:#00000059;border:2px solid #f2e2c499;border-radius:50%;width:150px;height:150px;position:absolute;top:16px;right:16px}
