/* ═══════════════════════════════════════════════════════════════════════════
   THEME: Neon Esports ⚡
   Vibrant gaming aesthetic with bold gradients and energy
   ═══════════════════════════════════════════════════════════════════════════ */

[data-theme="esports"] {
  /* ─── Core Palette ─────────────────────────── */
  --bg-base:        #0c0818;
  --bg-panel:       #140f24;
  --bg-card:        #1a1430;
  --bg-card-hover:  #221c40;
  --bg-border:      #2e2650;
  --bg-border-dim:  #1e1830;

  /* Team Colors - Neon Vibrant */
  --t-color:        #ec4899;
  --t-dim:          rgba(236,72,153,0.15);
  --t-border:       rgba(236,72,153,0.4);
  --ct-color:       #8b5cf6;
  --ct-dim:         rgba(139,92,246,0.15);
  --ct-border:      rgba(139,92,246,0.4);

  /* Text */
  --text-primary:   #ffffff;
  --text-secondary: #a8a0c0;
  --text-muted:     #504068;

  /* Status - Vibrant */
  --hp-high:        #34d399;
  --hp-mid:         #fbbf24;
  --hp-low:         #f87171;
  --money:          #34d399;

  /* ─── Body & Background ────────────────────── */
  --body-gradient: linear-gradient(135deg, #0c0818 0%, #1a0f30 50%, #0c0818 100%);
}

[data-theme="esports"] body {
  background: var(--body-gradient);
}

[data-theme="esports"] body::after {
  /* Diagonal gradient energy lines */
  background:
    repeating-linear-gradient(
      45deg,
      rgba(139,92,246,0.02) 0px,
      rgba(139,92,246,0.02) 2px,
      transparent 2px,
      transparent 20px
    ),
    repeating-linear-gradient(
      -45deg,
      rgba(236,72,153,0.02) 0px,
      rgba(236,72,153,0.02) 2px,
      transparent 2px,
      transparent 20px
    ),
    linear-gradient(135deg, rgba(139,92,246,0.05) 0%, transparent 50%, rgba(236,72,153,0.05) 100%),
    linear-gradient(135deg, #0c0818 0%, #1a0f30 50%, #0c0818 100%);
  opacity: 0.8;
  z-index: -1;
}

/* ─── Card Effects ──────────────────────────── */
[data-theme="esports"] .player-card {
  border-radius: 10px;
  box-shadow:
    0 4px 20px rgba(139,92,246,0.15),
    inset 0 1px 0 rgba(255,255,255,0.1);
  transition: all 0.2s ease, transform 0.2s ease;
}

[data-theme="esports"] .player-card:hover {
  transform: translateY(-2px) scale(1.01);
  box-shadow:
    0 8px 30px rgba(139,92,246,0.25),
    0 0 40px rgba(236,72,153,0.1),
    inset 0 1px 0 rgba(255,255,255,0.15);
}

[data-theme="esports"] .player-card.t-side {
  box-shadow:
    0 4px 20px rgba(236,72,153,0.15),
    inset 0 1px 0 rgba(255,255,255,0.1);
}

[data-theme="esports"] .player-card.ct-side:hover {
  box-shadow:
    0 8px 30px rgba(139,92,246,0.25),
    0 0 40px rgba(139,92,246,0.1),
    inset 0 1px 0 rgba(255,255,255,0.15);
}

/* ─── Scoreboard ─────────────────────────────── */
[data-theme="esports"] .scoreboard {
  border-radius: 12px;
  box-shadow:
    0 8px 32px rgba(139,92,246,0.2),
    0 0 60px rgba(236,72,153,0.1);
  overflow: hidden;
}

/* ─── Bomb Timer Esports ─────────────────────── */
[data-theme="esports"] [style*="rgba(40,8,8,0.9)"] {
  background: linear-gradient(180deg, #1a0a20 0%, #0f0518 100%) !important;
  box-shadow:
    0 0 30px rgba(248,113,113,0.3),
    inset 0 0 30px rgba(248,113,113,0.1);
}

/* ─── Team Headers Esports ───────────────────── */
[data-theme="esports"] .team-label {
  font-size: 10px;
  letter-spacing: 0.2em;
  font-weight: 900;
  text-transform: uppercase;
}

/* ─── Connecting Ring ═════════════════════════ */
[data-theme="esports"] .connecting-ring {
  border: 3px solid var(--bg-border);
  border-top-color: var(--ct-color);
  border-right-color: var(--t-color);
  border-radius: 50%;
  animation: spin 0.8s linear infinite, connectPulse 2s ease-in-out infinite;
}

@keyframes connectPulse {
  0%, 100% { box-shadow: 0 0 20px var(--ct-color); }
  50% { box-shadow: 0 0 40px var(--t-color); }
}

/* ─── C4 Badge Esports ───────────────────────── */
[data-theme="esports"] [style*="rgba(239,68,68,0.18)"] {
  background: linear-gradient(135deg, rgba(248,113,113,0.2) 0%, rgba(239,68,68,0.1) 100%) !important;
  border: 2px solid transparent !important;
  border-image: linear-gradient(135deg, var(--hp-mid), var(--hp-low)) 1 !important;
}

@keyframes c4pulseEsports {
  0%   { box-shadow: 0 0 0 0 rgba(248,113,113,0.8), 0 0 20px rgba(248,113,113,0.4); opacity: 1; }
  50%  { box-shadow: 0 0 0 8px rgba(248,113,113,0), 0 0 30px rgba(248,113,113,0.2); opacity: 0.85; }
  100% { box-shadow: 0 0 0 0 rgba(248,113,113,0), 0 0 20px rgba(248,113,113,0.4); opacity: 1; }
}

[data-theme="esports"] [style*="c4pulse"] {
  animation: c4pulseEsports 0.8s ease-in-out infinite;
}

/* ─── Phase Pulse Esports ─────────────────────── */
@keyframes phasePulseEsports {
  0%   { opacity: 0.7; transform: scale(1); }
  100% { opacity: 1; transform: scale(1.02); }
}

[data-theme="esports"] [style*="phasePulse"] {
  animation: phasePulseEsports 0.5s ease-in-out infinite alternate;
}

/* ─── Radar Container Esports ────────────────── */
[data-theme="esports"] #radar {
  border-radius: 16px;
  box-shadow:
    0 8px 40px rgba(139,92,246,0.2),
    0 0 80px rgba(236,72,153,0.1);
  overflow: hidden;
}

/* ─── Player Dot Glow ────────────────────────── */
[data-theme="esports"] .player-dot {
  filter: drop-shadow(0 0 5px var(--ct-color));
}

[data-theme="esports"] .player-dot.t-side {
  filter: drop-shadow(0 0 5px var(--t-color));
}

/* ─── Scrollbar Esports ───────────────────────── */
[data-theme="esports"] ::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--ct-color), var(--t-color));
  border-radius: 10px;
}

/* ─── Weapon Icon Esports ─────────────────────── */
[data-theme="esports"] [style*="rgba(245,166,35,0.15)"] {
  background: linear-gradient(135deg, rgba(236,72,153,0.15) 0%, rgba(139,92,246,0.15) 100%) !important;
  border: 1px solid rgba(139,92,246,0.3) !important;
  border-radius: 6px;
}

/* ─── Settings Panel ──────────────────────────── */
[data-theme="esports"] .settings-panel {
  border-radius: 14px;
  box-shadow:
    0 16px 48px rgba(0,0,0,0.7),
    0 0 40px rgba(139,92,246,0.15);
}

/* ─── Fullscreen Bar ───────────────────────────── */
[data-theme="esports"] [style*="rgba(13,17,23,0.92)"] {
  background: linear-gradient(180deg, rgba(20,15,36,0.95) 0%, rgba(12,8,24,0.92) 100%) !important;
}

/* ─── Animations ─────────────────────────────── */
@keyframes pulseEsports {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

[data-theme="esports"] .animate-pulse {
  animation: pulseEsports 1.5s ease-in-out infinite;
}