:root{--bg:#06090f;--border:#1b2736;--text:#e6edf3;--muted:#7d8b9c;--buy:#10b981;--sell:#ef4444;--cyan:#06b6d4;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}.battle-body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}#arena{width:100%;height:100%;display:block;position:fixed;inset:0}.hud-top{z-index:10;pointer-events:none;background:linear-gradient(#06090fe6,#06090f00);align-items:center;gap:16px;padding:12px 18px;display:flex;position:fixed;top:0;left:0;right:0}.hud-back{pointer-events:auto;color:var(--muted);letter-spacing:1.5px;border:1px solid var(--border);background:#0c121bcc;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:700;text-decoration:none;transition:color .2s}.hud-back:hover{color:var(--text)}.hud-score{align-items:center;gap:26px;margin:0 auto;display:flex}.score{text-align:center;min-width:130px}.score-name{letter-spacing:2px;font-size:11px;font-weight:800}.buy-side .score-name{color:var(--buy)}.sell-side .score-name{color:var(--sell)}.score-vol{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.buy-side .score-vol{color:var(--buy);text-shadow:0 0 12px #10b98180}.sell-side .score-vol{color:var(--sell);text-shadow:0 0 12px #ef444480}.score-kills{letter-spacing:1px;color:var(--muted);font-size:10px}.score-kills b{color:var(--text);font-family:var(--mono)}.hud-price-box{text-align:center}.hud-price{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:34px;font-weight:800;transition:color .2s,text-shadow .2s}.hud-price.up{color:var(--buy);text-shadow:0 0 20px #10b98180}.hud-price.down{color:var(--sell);text-shadow:0 0 20px #ef444480}.hud-price-sub{color:var(--muted);font-size:11px;font-family:var(--mono)}.hud-price-sub .up{color:var(--buy)}.hud-price-sub .down{color:var(--sell)}.live-dot-mini{background:#f59e0b;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.live-dot-mini.live{background:var(--buy);box-shadow:0 0 6px var(--buy);animation:1.6s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.hud-sound{pointer-events:auto;border:1px solid var(--border);cursor:pointer;background:#0c121bcc;border-radius:8px;padding:7px 11px;font-size:16px;transition:border-color .2s}.hud-sound:hover{border-color:var(--cyan)}.frontline-meter{border:1px solid var(--border);z-index:10;background:#ef444459;border-radius:999px;width:min(480px,70vw);height:8px;position:fixed;top:78px;left:50%;overflow:visible;transform:translate(-50%)}.frontline-fill{background:linear-gradient(90deg, var(--buy), #10b98199);border-radius:999px 0 0 999px;width:50%;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.frontline-tick{background:var(--text);width:2px;height:16px;transition:left .5s cubic-bezier(.4,0,.2,1);position:absolute;top:-4px;left:50%;box-shadow:0 0 8px #e6edf3cc}.killfeed{z-index:10;font-family:var(--mono);pointer-events:none;flex-direction:column-reverse;gap:4px;font-size:12px;list-style:none;display:flex;position:fixed;bottom:16px;left:16px}.killfeed li{border:1px solid var(--border);background:#0c121bd9;border-radius:8px;padding:5px 10px;animation:.25s feedIn}.killfeed li.buy{border-left:3px solid var(--buy)}.killfeed li.sell{border-left:3px solid var(--sell)}.killfeed li.whale{border-color:var(--cyan);box-shadow:0 0 14px #06b6d44d}@keyframes feedIn{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}.whale-alert{z-index:20;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.whale-alert[hidden]{display:none}[hidden]{display:none!important}.frenzy-vignette{z-index:8;pointer-events:none;animation:.5s ease-in-out infinite alternate frenzyPulse;position:fixed;inset:0;box-shadow:inset 0 0 140px 40px #ef444466}@keyframes frenzyPulse{0%{box-shadow:inset 0 0 100px 20px #ef444440}to{box-shadow:inset 0 0 180px 60px #ef444480}}.event-banner{z-index:15;pointer-events:none;font-family:var(--mono);letter-spacing:2px;border:1px solid var(--border);white-space:nowrap;background:#0c121be6;border-radius:10px;padding:10px 24px;font-size:16px;font-weight:800;animation:.3s cubic-bezier(.2,1.5,.4,1) bannerIn;position:fixed;top:104px;left:50%;transform:translate(-50%)}@keyframes bannerIn{0%{opacity:0;transform:translate(-50%)translateY(-14px)scale(.85)}to{opacity:1;transform:translateX(-50%) none}}.event-banner.liq{color:#ffd28a;border-color:#f59e0b99;box-shadow:0 0 24px #f59e0b59}.event-banner.frenzy{color:#ffb4b4;border-color:#ef4444b3;animation:.3s cubic-bezier(.2,1.5,.4,1) bannerIn,.4s infinite alternate frenzyText;box-shadow:0 0 24px #ef444466}@keyframes frenzyText{0%{transform:translate(-50%)scale(1)}to{transform:translate(-50%)scale(1.05)}}.event-banner.nuke{color:#fff;border-color:#ffffffb3;font-size:22px;box-shadow:0 0 40px #ffffff80}.event-banner.drop{color:#a7f3d0;border-color:#10b98180}.event-banner.drop.sell{color:#fecaca;border-color:#ef444480}.event-banner.dom{color:#aef1ff;border-color:#06b6d499;box-shadow:0 0 24px #06b6d459}.combo-box{z-index:10;pointer-events:none;font-family:var(--mono);border:1px solid var(--border);background:#0c121bd9;border-radius:12px;padding:10px 18px;font-size:18px;font-weight:800;position:fixed;bottom:18px;right:18px}.combo-box.buy{color:var(--buy);text-shadow:0 0 12px #10b98199;border-color:#10b98180}.combo-box.sell{color:var(--sell);text-shadow:0 0 12px #ef444499;border-color:#ef444480}.combo-box.pop{animation:.2s comboPop}@keyframes comboPop{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}.whale-alert-inner{font-family:var(--mono);letter-spacing:3px;color:#aef1ff;text-shadow:0 0 30px #06b6d4cc;background:#060c14bf;border:2px solid #06b6d499;border-radius:16px;padding:18px 36px;font-size:clamp(22px,4vw,42px);font-weight:800;animation:.4s cubic-bezier(.2,1.6,.4,1) whaleSlam}.whale-alert-inner b.buy{color:var(--buy)}.whale-alert-inner b.sell{color:var(--sell)}@keyframes whaleSlam{0%{opacity:0;transform:scale(2.2)}to{opacity:1;transform:scale(1)}}@media (width<=720px){.hud-score{gap:12px}.score{min-width:90px}.hud-price{font-size:24px}}
