/* SCOTUS Analytics — Responsive Breakpoints */

@media (max-width: 1024px) {
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .method-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
  html { font-size: 15px; }

  h1 { font-size: 2rem; }
  h2 { font-size: 1.5rem; }

  .container, .container-narrow { padding: 0 var(--space-md); }

  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }
  .method-grid { grid-template-columns: 1fr; }

  .nav-links { gap: var(--space-md); }
  .nav-links a { font-size: 0.85rem; }

  .data-xl { font-size: 2.5rem; }
  .data-lg { font-size: 1.5rem; }

  .gauge-value { font-size: 2.5rem; }

  .vote-block { width: 24px; height: 24px; }
  .vote-split-label { font-size: 1.2rem; }

  .hero-grid { grid-template-columns: 1fr !important; }

  .data-table { font-size: 0.85rem; }
  .data-table th, .data-table td { padding: var(--space-xs) var(--space-sm); }

  .section { padding: var(--space-xl) 0; }

  /* Heatmap responsive */
  .heatmap-table { min-width: 600px; }
  .heatmap-row-label { font-size: 0.8rem; width: 80px; min-width: 80px; }
  .heatmap-cell { min-width: 40px; padding: var(--space-xs); }
  .heatmap-col-header { height: 60px; }
  .heatmap-legend { flex-wrap: wrap; }
  .legend-bar { width: 200px; }

  .case-panel-table th:nth-child(6),
  .case-panel-table td:nth-child(6) { display: none; }

  .case-card-prediction { flex-direction: column; gap: var(--space-xs); }
}

@media (max-width: 480px) {
  .nav-inner { padding: 0 var(--space-md); }
  .nav-logo { font-size: 1.2rem; }
  .nav-links { gap: var(--space-sm); }
  .nav-links a { font-size: 0.8rem; }

  .card { padding: var(--space-md); }
  .card-elevated { padding: var(--space-lg); }

  .justice-grid { grid-template-columns: repeat(2, 1fr) !important; }

  .heatmap-cell-count { font-size: 0.65rem; }
  .heatmap-col-label { font-size: 0.6rem; }
  .nav-links a { font-size: 0.7rem; }
}
