/* Esports UI Theme - scoped to body.esports-theme */
/* Palette: dark slate base, neon accents (cyan, magenta, lime), soft glass surfaces */

body.esports-theme {
  --bg-1: #0b0f1a;
  --bg-2: #0f1526;
  --glass: rgba(255, 255, 255, 0.06);
  --glass-strong: rgba(255, 255, 255, 0.12);
  --text: #e6e9ef;
  --muted: #8b93a7;
  --primary: #6c5ce7; /* violet */
  --accent-1: #00e5ff; /* cyan */
  --accent-2: #ff2d55; /* magenta */
  --accent-3: #39ff14; /* lime */
  --warning: #ffb020;
  --success: #00d48f;
  --danger: #ff4757;
  --gradient-hero: radial-gradient(1200px 600px at 10% -10%, rgba(255,45,85,.25), transparent 50%),
                   radial-gradient(900px 500px at 110% 0%, rgba(0,229,255,.25), transparent 35%),
                   linear-gradient(160deg, #0b0f1a 0%, #0f1526 60%, #0b0f1a 100%);
  background: var(--bg-1);
  color: var(--text);
}

/* Top header bar with neon edge */
body.esports-theme .header-bar {
  background: linear-gradient(180deg, rgba(18,24,42,0.9), rgba(18,24,42,0.75));
  backdrop-filter: saturate(140%) blur(10px);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  box-shadow: inset 0 -1px 0 rgba(255,255,255,0.05), 0 10px 30px rgba(0,0,0,0.4);
}

/* App brand */
body.esports-theme .navbar-brand span {
  color: var(--text) !important;
  letter-spacing: .5px;
}

/* Badge for notifications */
body.esports-theme .notification-badge {
  background: linear-gradient(135deg, var(--accent-2), #ff6b81);
  box-shadow: 0 0 0 2px #181e31, 0 0 10px rgba(255,45,85,.6);
}

/* Layout glass containers */
body.esports-theme .dashboard-container {
  background: var(--gradient-hero);
}

body.esports-theme .sidebar {
  background: linear-gradient(180deg, rgba(17,23,38,0.9), rgba(17,23,38,0.75));
  border-right: 1px solid rgba(255,255,255,0.08);
  box-shadow: 8px 0 30px rgba(0,0,0,0.35);
}

body.esports-theme .main-content {
  background: linear-gradient(180deg, rgba(18,24,42,0.7), rgba(18,24,42,0.5));
  border-radius: 16px 0 0 0;
  border: 1px solid rgba(255,255,255,0.06);
}

/* Sidebar items */
body.esports-theme .sidebar-item {
  background: transparent;
  color: var(--muted);
  border: 1px solid transparent;
  transition: all 0.3s ease;
  margin-bottom: 5px;
  border-radius: 8px;
}

body.esports-theme .sidebar-item:hover {
  background: rgba(255,255,255,0.05);
  transform: translateX(6px);
  color: var(--text);
}

body.esports-theme .sidebar-item.active {
  background: linear-gradient(135deg, rgba(108,92,231,.25), rgba(0,229,255,.15));
  color: var(--text);
  border: 1px solid rgba(108,92,231,.35);
  box-shadow: 0 0 0 2px rgba(108,92,231,.15) inset, 0 6px 16px rgba(0,0,0,0.35);
}

/* Welcome banner */
body.esports-theme .welcome-section {
  background: linear-gradient(135deg, rgba(108,92,231,.45) 0%, rgba(0,229,255,.35) 100%);
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 15px 40px rgba(0,0,0,0.35), 0 0 60px rgba(0,229,255,.2) inset;
  border-radius: 15px;
  padding: 25px;
  margin-bottom: 25px;
}

/* Stat cards */
body.esports-theme .stats-card {
  background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
  border-radius: 15px;
  transition: all 0.3s ease;
  margin-bottom: 20px;
}

body.esports-theme .stats-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.45);
}

body.esports-theme .stats-card i.text-success { color: var(--accent-3) !important; }
body.esports-theme .stats-card i.text-primary { color: var(--accent-1) !important; }
body.esports-theme .stats-card i.text-warning { color: var(--warning) !important; }

/* Wallet card */
body.esports-theme .wallet-card {
  background: linear-gradient(135deg, rgba(0,212,143,.35), rgba(57,255,20,.2));
  border: 1px solid rgba(57,255,20,.35);
  box-shadow: 0 10px 30px rgba(0,0,0,0.35), 0 0 40px rgba(57,255,20,.15) inset;
  border-radius: 15px;
  transition: all 0.3s ease;
}

body.esports-theme .wallet-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.45), 0 0 50px rgba(57,255,20,.25) inset;
}

/* Action buttons */
body.esports-theme .btn.btn-primary, 
body.esports-theme .btn.btn-success, 
body.esports-theme .btn.btn-danger, 
body.esports-theme .btn.btn-outline-light {
  position: relative;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.1);
  background-clip: padding-box;
  overflow: hidden;
  transition: all 0.3s ease;
}

body.esports-theme .btn.btn-primary {
  background: linear-gradient(135deg, var(--primary), var(--accent-1));
  box-shadow: 0 8px 22px rgba(0,229,255,.25);
}

body.esports-theme .btn.btn-primary:hover { 
  filter: brightness(1.05) saturate(1.05); 
  transform: translateY(-1px); 
  box-shadow: 0 10px 25px rgba(0,229,255,.35);
}

body.esports-theme .btn.btn-success {
  background: linear-gradient(135deg, var(--success), var(--accent-3));
  box-shadow: 0 8px 22px rgba(57,255,20,.25);
}

body.esports-theme .btn.btn-success:hover { 
  filter: brightness(1.05) saturate(1.05); 
  transform: translateY(-1px); 
  box-shadow: 0 10px 25px rgba(57,255,20,.35);
}

/* Tournament card style for future cards */
body.esports-theme .tournament-card {
  background: linear-gradient(135deg, rgba(255,45,85,.35), rgba(108,92,231,.35));
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 15px;
  transition: all 0.3s ease;
}

body.esports-theme .tournament-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
}

/* Headings + text */
body.esports-theme h2, 
body.esports-theme h3, 
body.esports-theme h4, 
body.esports-theme h5 {
  color: var(--text);
  letter-spacing: .3px;
}

body.esports-theme .text-muted { color: var(--muted) !important; }

/* Announcements & Ads containers */
body.esports-theme #announcementsContainer .card,
body.esports-theme #adsContainer .card {
  background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 15px;
}

/* Mobile bottom nav */
body.esports-theme .mobile-bottom-nav {
  background: linear-gradient(180deg, rgba(18,24,42,0.95), rgba(18,24,42,0.85));
  border-top: 1px solid rgba(255,255,255,0.08);
}

body.esports-theme .mobile-nav-item { color: var(--muted); }
body.esports-theme .mobile-nav-item.active { color: var(--accent-1); }

/* Subtle animated borders */
@keyframes neonBorder {
  0%, 100% { box-shadow: 0 0 0 0 rgba(0,229,255,.0), 0 0 0 0 rgba(255,45,85,.0); }
  50% { box-shadow: 0 0 20px 0 rgba(0,229,255,.25), 0 0 30px 0 rgba(255,45,85,.15) inset; }
}

body.esports-theme .welcome-section,
body.esports-theme .stats-card,
body.esports-theme .wallet-card {
  animation: neonBorder 6s ease-in-out infinite;
}

/* Scrollbar for webkit */
body.esports-theme ::-webkit-scrollbar { width: 10px; height: 10px; }
body.esports-theme ::-webkit-scrollbar-thumb { background: linear-gradient(180deg, var(--primary), var(--accent-2)); border-radius: 10px; }
body.esports-theme ::-webkit-scrollbar-track { background: #101626; }

/* Table/Modal overrides */
body.esports-theme .modal-content {
  background: linear-gradient(180deg, rgba(18,24,42,0.95), rgba(18,24,42,0.85));
  color: var(--text);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 15px;
}

/* Cards inside transactions or lists */
body.esports-theme .card {
  background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
  color: var(--text);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 15px;
}

/* Links */
body.esports-theme a { color: var(--accent-1); }
body.esports-theme a:hover { color: #7ee9ff; }

/* Header counters */
body.esports-theme #headerWalletBalance { color: var(--accent-3); }

/* Ensure bootstrap defaults don't enforce white backgrounds */
body.esports-theme .bg-light { background-color: rgba(255,255,255,0.05) !important; }
body.esports-theme .text-dark { color: var(--text) !important; }

/* Form Controls */
body.esports-theme .form-control, 
body.esports-theme .form-select {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  color: var(--text);
  border-radius: 8px;
}

body.esports-theme .form-control:focus, 
body.esports-theme .form-select:focus {
  background: rgba(255,255,255,0.08);
  border-color: var(--accent-1);
  box-shadow: 0 0 0 0.25rem rgba(0,229,255,.15);
  color: var(--text);
}

body.esports-theme .form-control:disabled, 
body.esports-theme .form-control[readonly] {
  background: rgba(255,255,255,0.03);
  color: var(--muted);
}

/* List Group */
body.esports-theme .list-group-item {
  background: transparent;
  border-color: rgba(255,255,255,0.08);
  color: var(--text);
}

/* Wallet Info */
body.esports-theme .wallet-info {
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 5px 10px;
  border-radius: 20px;
  background: rgba(255,255,255,0.05);
}

body.esports-theme .wallet-info:hover {
  background: rgba(255,255,255,0.1);
  transform: translateY(-2px);
}

body.esports-theme .wallet-info i {
  color: var(--accent-2);
}

body.esports-theme .wallet-info span {
  font-weight: 600;
  color: var(--accent-1);
}