body {
  margin: 0;
  background: linear-gradient(135deg, #0f172a, #020617);
  color: #fff;
  font-family: 'Poppins', sans-serif;
}

/* Container */
.container-fluid,
.content {
  max-width: 1400px;
  margin: auto;
}

/* NAVBAR */
.navbar {
  background: rgba(15, 23, 42, 0.9) !important;
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.navbar-brand {
  font-weight: bold;
  font-size: 22px;
  color: #00e5ff !important;
}

/* NAV LINKS */
.nav-link {
  color: #cbd5f5 !important;
  margin-right: 10px;
  transition: 0.3s;
}

.nav-link:hover {
  color: #00e5ff !important;
}

.nav-link.active {
  color: #00e5ff !important;
  font-weight: 600;
  border-bottom: 2px solid #00e5ff;
}

/* CARDS */
.card {
  background: rgba(30, 41, 59, 0.6);
  border: none;
  border-radius: 14px;
  backdrop-filter: blur(8px);
  box-shadow: 0 8px 25px rgba(0,0,0,0.4);
  transition: 0.3s;
}

.card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 35px rgba(0,0,0,0.6);
}

/* SCROLL AREAS */
#game-content {
  position: sticky;
  top: 80px;
  overflow-y: auto;
}

#game-content api-sports-widget {
  max-height: calc(100vh - 120px);
}

/* SIDE PANELS */
#standings-content api-sports-widget,
#team-content api-sports-widget {
  margin-bottom: 1rem;
  max-height: 50vh;
}

/* LEFT SIDEBAR */
#leagues-list {
  position: sticky;
  top: 80px;
  overflow-y: auto;
}

/* SCROLLBAR */
::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-thumb {
  background: #00e5ff;
  border-radius: 10px;
}

/* MOBILE FIX */
@media(max-width: 768px) {
  .col-3, .col-4, .col-5 {
    width: 100%;
  }
}