/**
 * Design tokens - single source of truth for colors and font families used
 * across the site's own authored stylesheets (not vendor CSS).
 *
 * Loaded first, before every other site stylesheet, in every layout.
 *
 * Two tiers, deliberately kept separate:
 *
 * 1. "2026 brand" + neutral/utility tokens - the confirmed palette from
 *    this year's redesign (matches resources/js/decorative.js's own
 *    PALETTE object - keep names in sync if either changes) plus the
 *    handful of neutral/semantic colors used alongside it. Safe to reach
 *    for in new work.
 *
 * 2. "Legacy" tokens - pre-2026 colors that are still genuinely in use on
 *    pages this redesign hasn't reached yet (home, the-rules, imagination,
 *    entry-guide, enter-form, submission-details, news-title, and large
 *    parts of main.css). These are named ONLY for consistency and easy
 *    future maintenance - their values are intentionally left exactly as
 *    they were before tokenization. Renaming a repeated hex to a variable
 *    is a no-op visually; reassigning it to a brand color is a real design
 *    decision that hasn't been made for these yet, so don't do that here.
 *    A few near-duplicate pairs below (one hex apart, almost certainly a
 *    historical typo of "the same" color) are called out but were NOT
 *    merged, for the same reason.
 *
 * See docs/design-tokens.md for the full audit this file was built from,
 * including exactly which selectors use each legacy token and where two
 * confirmed 2026 files (blocks.css, competition-overview.css) had a
 * legacy color leak into otherwise on-brand rules - those were the only
 * value changes made alongside introducing this file.
 */

:root {
  /* ---- 2026 brand palette (matches decorative.js PALETTE) ---- */
  --color-navy-blue: #3d3f89;
  --color-light-blue: #94c3f7;
  --color-light-blue-tint: #cee1f6;
  --color-magenta: #f4257a;
  --color-yellow: #ffb800;
  --color-cobalt-blue: #2f52ba;
  --color-white: #ffffff;

  /* ---- neutrals ---- */
  --color-text: #1a1a1a;
  --color-black: #000000;
  --color-gray-300: #ececec;
  --color-gray-400: #d9d9d9;

  /* ---- utility / semantic ---- */
  --color-error: #f32929;
  --color-error-tint: #ffcfcf;

  /* ---- legacy (pre-2026, values intentionally unchanged - see header) ---- */
  --color-legacy-link-blue: #2e54f5; /* main.css's global a/a:hover - known to out-specificity newer navy-styled elements */
  --color-legacy-navy: #0c113f; /* drifted "navy", distinct from --color-navy-blue */
  --color-legacy-purple: #7e36db;
  --color-legacy-pale-yellow: #fdfec4;
  --color-legacy-pastel-purple: #e5d7f8;
  --color-legacy-lavender-tint: #f2ebfb;
  --color-legacy-pink: #ffcce4;
  --color-legacy-pink-tint: #ffdef6;
  --color-legacy-olive: #e2e56f;
  --color-legacy-pale-lime: #edfecc;
  --color-legacy-bright-lime: #cbf74f;
  --color-legacy-lime: #a4f900; /* distinct hue from the other three lime/olive tokens above, not a typo of any of them */
  --color-legacy-pale-blue: #cceffb;
  --color-legacy-sky-blue: #00b1ea;
  --color-legacy-dark-red: #952a2a;
  --color-legacy-amber: #ffa600;
  --color-legacy-hot-pink: #ff0079;
  --color-legacy-charcoal: #283135;
  --color-legacy-peach: #ffe3cd; /* one hex off from --color-legacy-peach-alt below - almost certainly meant to be the same color; kept distinct rather than guessed-merged */
  --color-legacy-peach-alt: #ffe3cc;
  --color-legacy-cream: #fff0e9; /* one hex off from --color-legacy-cream-alt below, same situation as the peach pair */
  --color-legacy-cream-alt: #fff1e9;

  /* ---- fonts ---- */
  --font-heading-bold: "afternoon_0.89bold";
  --font-heading-regular: "afternoon_0.89regular";
  --font-body-bold: "afternoon_0.86bold";
  --font-body-regular: "afternoon_0.86regular";

  /* ---- radius (the two dominant values sitewide; see docs/design-tokens.md
     for the rest of the radius/spacing audit - not mapped in this pass) ---- */
  --radius-pill: 50px;
  --radius-card: 15px;
}
