/* ===================================
   STATS PAGE – PLAgeOfEmpires
   Cinematic | Imperial | Tactical
=================================== */

/* Hero section */
.stats-hero {
  padding-top: var(--space-24);
  padding-bottom: var(--space-24);
  background: linear-gradient(135deg, var(--color-bg-primary) 0%, var(--color-bg-secondary) 100%);
  position: relative;
  overflow: hidden;
}
.stats-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url('/assets/images/stats-hero-elo-leaderboard.webp') center/cover no-repeat;
  opacity: 0.08;
  pointer-events: none;
}

/* Data tables */
.data-table {
  font-size: var(--font-size-sm);
  white-space: nowrap;
}
.data-table th,
.data-table td {
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--border-color);
}
.data-table th {
  font-family: var(--font-primary);
  font-weight: var(--font-weight-semibold);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-gold);
  background-color: var(--color-bg-tertiary);
}
.data-table tbody tr:hover {
  background-color: rgba(212, 175, 55, 0.05);
}

/* Leaderboard badges */
.win-streak-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  padding: var(--space-1) var(--space-2);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  border-radius: var(--radius-full);
  background: var(--color-success);
  color: var(--color-text-primary);
}
.win-streak-badge::before {
  content: '🔥';
}

.delta-positive {
  color: var(--color-success);
}
.delta-negative {
  color: var(--color-danger);
}

/* Heat-map legend */
#matrix-legend .badge {
  width: 48px;
  justify-content: center;
}

/* Tech tree canvas */
#tech-canvas {
  background-image: 
    linear-gradient(rgba(107, 101, 88, 0.1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(107, 101, 88, 0.1) 1px, transparent 1px);
  background-size: 20px 20px;
}

/* Radar chart */
#radar-chart {
  max-width: 100%;
  height: auto;
}

/* Patch timeline */
#timeline-chart {
  position: relative;
}
.patch-card {
  background: var(--color-bg-tertiary);
  border-left: 4px solid var(--color-gold);
  padding: var(--space-3);
  border-radius: var(--radius-base);
  font-size: var(--font-size-sm);
}

/* Poll donut */
#donut-chart {
  max-width: 280px;
  margin: 0 auto;
}

/* Sticky sidebar */
.sticky {
  position: sticky;
  top: var(--space-6);
}

/* Responsive tweaks */
@media (max-width: 768px) {
  .data-table {
    font-size: var(--font-size-xs);
  }
  .data-table th,
  .data-table td {
    padding: var(--space-2) var(--space-3);
  }
  #radar-chart,
  #donut-chart {
    max-width: 240px;
  }
}