/* =====================================================
   IKIGAI COMBAT - Página Ranking
   Tema dark / Combat
   ===================================================== */

.ranking-page-dark {
  background-color: #111;
  color: #f8f9fa;
  min-height: 100vh;
  padding: 2rem 0 3rem;
}
.ranking-page-dark .section-title {
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #f8f9fa;
}
.banner-ranking {
  background: linear-gradient(135deg, rgba(17,17,17,0.98) 0%, rgba(31,31,31,0.95) 100%);
  border-bottom: 3px solid #d32f2f;
  padding: 2rem 0;
  margin-bottom: 2rem;
}
.banner-ranking h1 {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #f8f9fa;
}
.banner-ranking .lead {
  color: rgba(248,249,250,0.85);
}
.ranking-filters-dark {
  background: #1a1a1a;
  border: 1px solid #2a2a2a;
  border-radius: 0.5rem;
}
.ranking-filters-dark .form-label { color: #f8f9fa; }
.ranking-filters-dark .form-select {
  background: #1f1f1f;
  border-color: #2a2a2a;
  color: #f8f9fa;
}
.ranking-filters-dark .form-select:focus { border-color: #d32f2f; }
.ranking-filters-dark .btn-primary {
  background: #d32f2f;
  border-color: #d32f2f;
  font-weight: 700;
  text-transform: uppercase;
}
.ranking-filters-dark .btn-primary:hover {
  background: #b71c1c;
  border-color: #b71c1c;
}
.ranking-page-dark .nav-tabs { border-color: #2a2a2a; }
.ranking-page-dark .nav-tabs .nav-link {
  color: #adb5bd;
  border-color: transparent;
  background: #1a1a1a;
}
.ranking-page-dark .nav-tabs .nav-link:hover {
  border-color: #2a2a2a;
  color: #f8f9fa;
}
.ranking-page-dark .nav-tabs .nav-link.active {
  background: #111;
  color: #d32f2f;
  border-color: #2a2a2a #2a2a2a #111;
  font-weight: 700;
}
.podium-card-dark {
  background: #1a1a1a;
  border: 2px solid #2a2a2a;
  border-radius: 0.5rem;
  padding: 1.5rem;
  text-align: center;
  transition: transform 0.2s ease;
}
.podium-card-dark:hover { transform: translateY(-4px); }
.podium-card-dark.podium-ouro {
  border-color: #f1c40f;
  box-shadow: 0 0 20px rgba(241,196,15,0.2);
}
.podium-card-dark.podium-ouro .podium-rank { color: #f1c40f; }
.podium-card-dark.podium-prata {
  border-color: #bdc3c7;
  box-shadow: 0 0 15px rgba(189,195,199,0.2);
}
.podium-card-dark.podium-prata .podium-rank { color: #bdc3c7; }
.podium-card-dark.podium-bronze {
  border-color: #cd7f32;
  box-shadow: 0 0 15px rgba(205,127,50,0.2);
}
.podium-card-dark.podium-bronze .podium-rank { color: #cd7f32; }
.podium-card-dark .podium-rank {
  font-size: 1.5rem;
  font-weight: 800;
}
.podium-card-dark .podium-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #2a2a2a;
}
.podium-card-dark .podium-name {
  color: #f8f9fa;
  font-weight: 700;
  margin-top: 0.5rem;
}
.podium-card-dark .podium-team {
  color: #adb5bd;
  font-size: 0.875rem;
}
.podium-card-dark .podium-points-value {
  color: #d32f2f;
  font-weight: 800;
  font-size: 1.25rem;
}
.ranking-list-card-dark {
  background: #1a1a1a;
  border: 1px solid #2a2a2a;
  border-radius: 0.5rem;
  overflow: hidden;
}
.ranking-page-dark .table-dark {
  background: #1a1a1a;
  color: #f8f9fa;
  --bs-table-bg: #1a1a1a;
  --bs-table-border-color: #2a2a2a;
}
.ranking-page-dark .table-dark th {
  border-color: #2a2a2a;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #f8f9fa;
}
.ranking-page-dark .table-dark td {
  border-color: #2a2a2a;
  vertical-align: middle;
}
.ranking-page-dark .table-dark tbody tr:hover { background: #222; }
.ranking-page-dark .table-dark a {
  color: #d32f2f;
  text-decoration: none;
}
.ranking-page-dark .table-dark a:hover { color: #f1c40f; }
.ranking-avatar-sm {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
}
.ranking-page-dark .pagination .page-link {
  background: #1a1a1a;
  border-color: #2a2a2a;
  color: #f8f9fa;
}
.ranking-page-dark .pagination .page-link:hover {
  background: #2a2a2a;
  border-color: #d32f2f;
  color: #d32f2f;
}
.ranking-page-dark .pagination .page-item.active .page-link {
  background: #d32f2f;
  border-color: #d32f2f;
}
.ranking-page-dark .pagination .page-item.disabled .page-link {
  color: #6c757d;
}
.ranking-page-dark .btn-outline-danger {
  border-color: #d32f2f;
  color: #d32f2f;
}
.ranking-page-dark .btn-outline-danger:hover {
  background: #d32f2f;
  color: #fff;
}
.ranking-page-dark .text-muted { color: #adb5bd !important; }
