/* ============================================================
   Active Sports FC — Color tokens
   Gold-on-black brand. Hard contrast rule (AA, baked at token stage):
   the golds and yellow are ALL light -> dark text on them, never white;
   and never as text on white. Accessible pairings only (see semantic).
   ============================================================ */

:root {
  /* ---- Brand reference (literal brand values) ---- */
  --brand-black: #000000;     /* kept as literal brand reference */
  --brand-gold: #dbbf74;      /* supporting gold (demoted) */
  --brand-white: #ffffff;
  --brand-yellow: #fee100;    /* RESERVED — sparingly, only where specified, esp. on black */

  /* ---- Featured gold (kickers, fine rules, accents) ---- */
  --gold-light: #eadaa7;      /* THE featured gold — preferred over brand-gold */

  /* ---- Gold tint ramp (spread thin: backgrounds, table striping, fills) ---- */
  /* All light surfaces -> dark text only. Prune unused tints at QA. */
  --gold-tint-50:  #fcf9f2;
  --gold-tint-100: #f8f3e3;
  --gold-tint-200: #f5edd4;
  --gold-tint-300: #f1e7c6;
  --gold-tint-400: #eee1b7;

  /* ---- Warm neutral ramp (anchored to warm near-black #181510) ---- */
  --neutral-0:   #ffffff;
  --neutral-50:  #f7f6f4;
  --neutral-100: #efedea;
  --neutral-200: #e2dfda;
  --neutral-300: #cdc9c2;
  --neutral-400: #a8a39a;
  --neutral-500: #807b72;
  --neutral-600: #5c5852;
  --neutral-700: #403d39;
  --neutral-800: #29261f;
  --neutral-900: #181510;     /* warm near-black */
  --neutral-1000: #000000;

  /* ---- Semantic status (warm-tuned, AA on white) ---- */
  --success: #1f7a43;
  --success-tint: #e7f3ec;
  --error: #c0382b;
  --error-tint: #f8eae8;
  --info: #1d5fb3;
  --info-tint: #e8eff7;

  /* =========================================================
     SEMANTIC ALIASES — components reference these, never raw.
     ========================================================= */

  /* Surfaces */
  --surface-default: var(--neutral-0);     /* page background (light) */
  --surface-subtle:  var(--neutral-50);    /* alternating / muted panels */
  --surface-raised:  var(--neutral-0);     /* cards on light */
  --surface-tint:    var(--gold-tint-50);  /* gold-thin fills, table striping */
  --surface-inverse: var(--neutral-900);   /* dark sections — #181510, NOT pure black */
  --surface-inverse-raised: #211d16;       /* cards on dark */

  /* Text on light */
  --text-default:  #0a0a0a;                /* body */
  --text-heading:  #0a0a0a;                /* near-black headings on light */
  --text-muted:    var(--neutral-600);
  --text-subtle:   var(--neutral-500);

  /* Text on dark */
  --text-inverse:        var(--neutral-0); /* body on dark */
  --text-heading-inverse: var(--neutral-0);/* white headings on dark */
  --text-inverse-muted:  #cdc6b4;          /* muted body on dark (warm light gray) */
  --text-accent:         var(--gold-light);/* gold kicker text on dark only */

  /* Borders */
  --border-default: var(--neutral-200);
  --border-strong:  var(--neutral-300);
  --border-inverse: rgba(234, 218, 167, 0.18); /* hairline gold on dark */
  --border-focus:   #1d5fb3;

  /* Links (no colour-only signalling -> always underlined in components) */
  --link-on-light: #0a0a0a;   /* black + underline on light */
  --link-on-dark:  #ffffff;   /* white + underline on dark */

  /* Accent / rules */
  --accent:        var(--gold-light);  /* fine rules, kickers, dividers */
  --accent-strong: var(--brand-gold);  /* supporting accent where more weight needed */

  /* Focus ring */
  --focus-ring: 0 0 0 3px rgba(29, 95, 179, 0.45);
}
