/* ============================================================
   tokens.css — Ironclad Excavating, Inc. (design concept)
   Archetype D — Data / big-numeral heritage.
   Direction (each choice traces to dossier.md):
     • Palette: dark iron + warm earth/clay + hi-viz SAFETY-AMBER accent
       — heavy equipment, moved dirt, and hazard-stripe hi-viz, NOT a soft
       consumer look. "Ironclad" = iron/steel base; the amber is the machine.
     • Type: Archivo Black display carries the numerals (48 years, 1M yds,
       1993) — the number IS the page; mono for survey/station spec labels.
     • Motif: survey stakes, dimension lines, cut/fill grade lines.
   Single source of design values — styles.css consumes ONLY these.
   ============================================================ */

:root {
  /* ---------- color — LIGHT (warm bone / iron ink + safety amber + clay) ---------- */
  --bg:          #e9e6e0;   /* warm bone — dust/aggregate, not clinical white */
  --surface:     #f3f1ec;
  --surface-2:   #dcd7ce;   /* raised earth panel */
  --text:        #17150f;   /* near-black warm iron ink */
  --text-muted:  #5b544a;
  --rule:        #cbc4b8;
  --rule-strong: #a99f8e;

  --accent:      #9e5008;   /* burnt-amber / rust — AA (4.68:1) on bone for small text + UI */
  --accent-soft: #c9781f;   /* hi-viz amber — large text / fills only */
  --accent-ink:  #fbf3e8;   /* ink that sits on an amber fill */
  --clay:        #7c4a2b;   /* secondary earth-clay / soil */

  /* fixed-dark iron band — identical in BOTH themes (never theme-variable) */
  --band:        #17150f;
  --on-band:     #e9e6e0;
  --band-2:      #211d15;   /* raised cell inside a dark band */
  --accent-on-band: #f0a842;/* theme-INDEPENDENT hi-viz amber, AA on iron band both themes */
  --clay-on-band:   #d99a6c;/* theme-INDEPENDENT clay for the dark band */

  /* fixed-dark photo/scrim tokens — must NOT lighten in dark mode */
  --scrim-ink:   17,21,17;  /* fixed dark rgb for every duotone caption scrim */
  --accent-photo:#f0a842;   /* fixed amber, AA over the photo scrim */

  /* verification hierarchy (Iron Law made visual) */
  --ok:          #2f6f3e;   /* sourced / verified */
  --sample:      #7d621b;   /* labeled sample — "confirm at intake" — AA (4.64:1) on bone */

  /* ---------- type ---------- */
  --font-display: "Display", "Archivo Black", "Arial Black", "Helvetica Neue", Arial, sans-serif;
  --font-body:   -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono:   ui-monospace, "SF Mono", Menlo, "Cascadia Mono", Consolas, "Liberation Mono", monospace;

  /* fluid type scale */
  --step--2: 0.72rem;
  --step--1: 0.83rem;
  --step-0:  1.03rem;
  --step-1:  clamp(1.16rem, 1.02rem + 0.7vw, 1.5rem);
  --step-2:  clamp(1.42rem, 1.2rem + 1.1vw, 2rem);
  --step-3:  clamp(1.8rem, 1.4rem + 2vw, 2.9rem);
  --step-4:  clamp(2.4rem, 1.7rem + 3.6vw, 4.4rem);
  --numeral: clamp(4.5rem, 2.2rem + 11vw, 13rem);  /* the giant hero numeral (D) */
  --numeral-sm: clamp(2.6rem, 1.6rem + 4.6vw, 4.6rem); /* proof-strip numerals */

  --tracking-label: 0.16em;   /* mono spec-label tracking */

  /* ---------- space / radius / line ---------- */
  --sp-1: 0.35rem;
  --sp-2: 0.7rem;
  --sp-3: 1.1rem;
  --sp-4: 1.7rem;
  --sp-5: 2.6rem;
  --sp-6: 4rem;
  --sp-7: 6rem;
  --measure: 68ch;

  --radius:    3px;   /* tight, machined — not soft consumer radii */
  --radius-lg: 5px;
  --border:    1.5px solid var(--rule);
  --border-strong: 2px solid var(--text);

  --shadow:    0 1px 0 rgba(23,21,15,.05), 0 10px 30px -18px rgba(23,21,15,.45);
  --shadow-lg: 0 24px 60px -30px rgba(23,21,15,.5);

  --ease: cubic-bezier(.2,.7,.2,1);
  --dur:  .5s;

  --maxw: 1140px;
}

/* ---------- color — DARK (iron night: charcoal earth + brighter amber) ---------- */
:root[data-theme="dark"] {
  --bg:          #131210;
  --surface:     #1b1915;
  --surface-2:   #232019;
  --text:        #ece7dd;
  --text-muted:  #a49b8b;
  --rule:        #37332b;
  --rule-strong: #514a3e;

  --accent:      #e59433;   /* brighter amber for dark UI text/links (AA on dark) */
  --accent-soft: #f0a842;
  --accent-ink:  #17150f;
  --clay:        #d99a6c;

  /* band tokens stay FIXED across themes (declared in :root) — do not override */

  --ok:          #6fbf82;
  --sample:      #d9b64f;

  --shadow:    0 1px 0 rgba(0,0,0,.4), 0 12px 34px -18px rgba(0,0,0,.7);
  --shadow-lg: 0 26px 64px -30px rgba(0,0,0,.75);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg:#131210; --surface:#1b1915; --surface-2:#232019;
    --text:#ece7dd; --text-muted:#a49b8b; --rule:#37332b; --rule-strong:#514a3e;
    --accent:#e59433; --accent-soft:#f0a842; --accent-ink:#17150f; --clay:#d99a6c;
    --ok:#6fbf82; --sample:#d9b64f;
    --shadow:0 1px 0 rgba(0,0,0,.4),0 12px 34px -18px rgba(0,0,0,.7);
    --shadow-lg:0 26px 64px -30px rgba(0,0,0,.75);
  }
}
