:root {
  /* Base — dark stadium night */
  --bg: #0b1220;
  --surface: #152033;
  --surface-1: #152033;
  --surface-2: #243247;
  --text: #f1f5f9;
  --muted: #94a3b8;
  --text-muted: #94a3b8;

  /* Brand — college turf green (distinct from sleeper-brain sky) */
  --accent: #4ade80;
  --accent-2: #fbbf24;

  /* Semantic */
  --success: #34d399;
  --warn: #fbbf24;
  --warning: #fbbf24;
  --danger: #f87171;

  /* Layout */
  --radius: 8px;
  --shadow: 0 12px 36px rgba(0, 0, 0, 0.4);
  --shell-max: 1200px;

  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 12px;
  --space-lg: 16px;
  --space-xl: 24px;

  /* Player / school / position badges — roster lineup look. Used by
     .pos-mark, .school-mark, .conference-mark, and <cfb-pos-mark> /
     <cfb-school-mark> / <cfb-conference-mark>. */
  --badge-font-size: 10px;
  --badge-font-weight: 700;
  --badge-letter-spacing: 0.04em;
  --badge-line-height: 1.3;
  --badge-pad-y: 1px;
  --badge-pad-x: 6px;
  --badge-radius: 999px;
  --badge-icon-size: 12px;
  --badge-gap: 3px;
  --pos-qb: #fbbf24;
  --pos-rb: #60a5fa;
  --pos-wr: #4ade80;
  --pos-te: #2dd4bf;
  --pos-k: #94a3b8;
  --pos-dst: #c084fc;
  --pos-flex: #fbbf24;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: "Segoe UI", ui-sans-serif, system-ui, -apple-system, sans-serif;
  background:
    radial-gradient(1200px 600px at 10% -10%, rgba(74, 222, 128, 0.12), transparent 55%),
    radial-gradient(900px 500px at 100% 0%, rgba(251, 191, 36, 0.08), transparent 50%),
    var(--bg);
  color: var(--text);
  line-height: 1.45;
  min-height: 100vh;
}
