/* ==========================================================================
   Spilld site v7 -- design tokens.

   THE ONLY FILE ALLOWED TO HOLD A RAW COLOUR VALUE (tests/test_site_v7.py
   enforces it). Everything else reads these custom properties.

   One palette: "Cobalt (bold)" from the approved design file. Jo ruled on
   2026-09-26 that the report moves to Cobalt too, so the site carries no
   alternate (Motor oil, Petrol and the ?palette= switch were removed in
   Revision 1).
   ========================================================================== */

:root {
  color-scheme: light;

  /* ---- palette roles (design spec sheet, "Cobalt (bold)") ---- */
  --paper: #FFFFFF;        /* page background */
  --panel: #EEF0F7;        /* cards, alternate sections */
  --ink: #0E1014;          /* text, dark fields */
  --muted: #50566A;        /* secondary text */
  --rule: #D3D8E2;         /* hairlines */
  --accent: #1F3BD1;       /* colour fields, numerals */
  --on-accent: #FFFFFF;    /* text on accent */
  --drip: #0E1014;         /* the oil */
  --highlight: #FFD84A;    /* answer highlight */

  /* ---- colour fields: [background, text] per block (design "f" map) ---- */
  --card1: var(--accent);     --card1-ink: var(--on-accent);
  --card2: var(--ink);        --card2-ink: var(--paper);
  --card3: var(--highlight);  --card3-ink: var(--ink);
  --door-a: var(--accent);    --door-a-ink: var(--on-accent);
  --stance: var(--accent);    --stance-ink: var(--on-accent);
  --cta: var(--accent);       --cta-ink: var(--on-accent);
  --cta-rule: rgba(255, 255, 255, .5);

  /* ---- effects ---- */
  --drip-shine: #FFFFFF;                      /* specular dots on the oil */
  --shadow-plug: rgba(0, 0, 0, .16);          /* drain plug drop shadow */
  --shadow-soft: rgba(20, 24, 28, .08);       /* report mock, back sheet */
  --shadow-lift: rgba(20, 24, 28, .12);       /* report mock, front sheet */
  --focus: var(--accent);                     /* keyboard focus ring */

  /* ---- status colours kept for the product pages (portal, ledger,
         status, admin); unchanged values from the previous base.html ---- */
  --status-good: #3D6B4F;
  --status-warn: #8A6A1F;
  --status-bad: #A63A20;

  /* ---- type ---- */
  --font-display: "Archivo", "Arial Narrow", Arial, sans-serif;
  --font-body: "Public Sans", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "Martian Mono", ui-monospace, Menlo, Consolas, monospace;

  /* ---- layout (design spec sheet "Spacing & layout") ---- */
  --pad: clamp(20px, 4.2vw, 64px);     /* left gutter */
  --lane: var(--pad);                  /* right gutter (drip off) */
  --lane-drip: clamp(48px, 9vw, 136px);  /* right gutter = the drip lane */
  --header-h: 72px;
  --radius-card: 28px;
  --plug-w: clamp(300px, 40vw, 580px);

  /* ---- aliases: the names the pre-v7 templates use (portal, ledger,
         how, faq, report showcase ...). They inherit the v7 palette. ---- */
  --concrete: var(--paper);
  --line: var(--rule);
  --faint: var(--muted);
  --stamp: var(--status-bad);
  --good: var(--status-good);
  --warn: var(--status-warn);
  --slick: linear-gradient(120deg, var(--accent), var(--ink));
  --serif: var(--font-display);
  --sans: var(--font-body);
  --mono: var(--font-mono);
}
