/* Daisy design tokens — D1 (generated by build_tokens.mjs; do not hand-edit) */
/* WCAG 2.1 AA validated in light + dark; contrast proven by build_tokens.mjs. */
:root{
  color-scheme: light;
  --surface-page: #f9f9f7;
  --surface: #fcfcfb;
  --surface-raised: #ffffff;
  --surface-sunken: #f0efec;
  --ink: #0b0b0b;
  --ink-secondary: #52514e;
  --ink-muted: #6d6c67;
  --border: #e1e0d9;
  --border-strong: #84837c;
  --accent: #1f62b8;
  --accent-solid: #1c5cab;
  --accent-ink: #ffffff;
  --focus: #1c5cab;
  --state-tracked: #1c5cab;
  --state-tracked-chip-bg: #e7eefc;
  --state-tracked-chip-ink: #17497f;
  --state-developing: #5b3fb0;
  --state-developing-chip-bg: #ece8fb;
  --state-developing-chip-ink: #493293;
  --state-mixed: #9a4b16;
  --state-mixed-chip-bg: #fbeadd;
  --state-mixed-chip-ink: #8a4213;
  --state-awaiting: #6d6c67;
  --state-awaiting-chip-bg: #eeece7;
  --state-awaiting-chip-ink: #575651;
  --state-insufficient: #586372;
  --state-insufficient-chip-bg: #eaedf1;
  --state-insufficient-chip-ink: #434b57;
  --state-saved: #006300;
  --state-saved-chip-bg: #e2f3e2;
  --state-saved-chip-ink: #045a04;
  --state-error: #b02626;
  --state-error-chip-bg: #fbe6e6;
  --state-error-chip-ink: #992121;
  --state-suggested: #1f62b8;
  --state-suggested-chip-bg: #eef2f8;
  --state-suggested-chip-ink: #17497f;
  /* type scale (system sans; base 16) */
  --font-sans: system-ui, -apple-system, "Segoe UI", sans-serif;
  --fs-12:.75rem; --fs-14:.875rem; --fs-16:1rem; --fs-18:1.125rem; --fs-22:1.375rem; --fs-28:1.75rem;
  --lh-tight:1.25; --lh-body:1.5;
  /* AAA reading (SC 1.4.8): line height >=1.5 (--lh-body); paragraph spacing >=1.5x line height */
  --space-paragraph:2.25em;
  /* spacing (4px base) */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-6:24px; --sp-8:32px; --sp-12:48px;
  /* radius, focus, target, motion */
  --radius:10px; --radius-sm:7px;
  --focus-width:2px; --focus-offset:2px;
  --target-min:24px; --target-comfortable:44px;
  --dur-fast:120ms; --dur:200ms; --ease:cubic-bezier(.2,.6,.2,1);
}
@media (prefers-reduced-motion: reduce){ :root{ --dur-fast:0ms; --dur:0ms; } }
/* dark: OS setting, overridable by an explicit [data-theme] toggle that wins both ways */
@media (prefers-color-scheme: dark){
  :root:where(:not([data-theme="light"])){
    color-scheme: dark;
  --surface-page: #0d0d0d;
  --surface: #1a1a19;
  --surface-raised: #242423;
  --surface-sunken: #121211;
  --ink: #ffffff;
  --ink-secondary: #c3c2b7;
  --ink-muted: #9a9992;
  --border: #2c2c2a;
  --border-strong: #787771;
  --accent: #5b9bec;
  --accent-solid: #3987e5;
  --accent-ink: #0b1220;
  --focus: #79aef0;
  --state-tracked: #6aa6ee;
  --state-tracked-chip-bg: #16233a;
  --state-tracked-chip-ink: #bcd6f6;
  --state-developing: #9f93ec;
  --state-developing-chip-bg: #231d3d;
  --state-developing-chip-ink: #cfc7f6;
  --state-mixed: #e08a54;
  --state-mixed-chip-bg: #3a2417;
  --state-mixed-chip-ink: #f0b48c;
  --state-awaiting: #9a9992;
  --state-awaiting-chip-bg: #232321;
  --state-awaiting-chip-ink: #c3c2b7;
  --state-insufficient: #93a0b3;
  --state-insufficient-chip-bg: #1f242c;
  --state-insufficient-chip-ink: #c3ccd8;
  --state-saved: #39c439;
  --state-saved-chip-bg: #12250f;
  --state-saved-chip-ink: #7fe07f;
  --state-error: #f07a7a;
  --state-error-chip-bg: #2e1414;
  --state-error-chip-ink: #f4a6a6;
  --state-suggested: #5b9bec;
  --state-suggested-chip-bg: #171d26;
  --state-suggested-chip-ink: #bcd6f6;
  }
}
:root[data-theme="dark"]{
  color-scheme: dark;
  --surface-page: #0d0d0d;
  --surface: #1a1a19;
  --surface-raised: #242423;
  --surface-sunken: #121211;
  --ink: #ffffff;
  --ink-secondary: #c3c2b7;
  --ink-muted: #9a9992;
  --border: #2c2c2a;
  --border-strong: #787771;
  --accent: #5b9bec;
  --accent-solid: #3987e5;
  --accent-ink: #0b1220;
  --focus: #79aef0;
  --state-tracked: #6aa6ee;
  --state-tracked-chip-bg: #16233a;
  --state-tracked-chip-ink: #bcd6f6;
  --state-developing: #9f93ec;
  --state-developing-chip-bg: #231d3d;
  --state-developing-chip-ink: #cfc7f6;
  --state-mixed: #e08a54;
  --state-mixed-chip-bg: #3a2417;
  --state-mixed-chip-ink: #f0b48c;
  --state-awaiting: #9a9992;
  --state-awaiting-chip-bg: #232321;
  --state-awaiting-chip-ink: #c3c2b7;
  --state-insufficient: #93a0b3;
  --state-insufficient-chip-bg: #1f242c;
  --state-insufficient-chip-ink: #c3ccd8;
  --state-saved: #39c439;
  --state-saved-chip-bg: #12250f;
  --state-saved-chip-ink: #7fe07f;
  --state-error: #f07a7a;
  --state-error-chip-bg: #2e1414;
  --state-error-chip-ink: #f4a6a6;
  --state-suggested: #5b9bec;
  --state-suggested-chip-bg: #171d26;
  --state-suggested-chip-ink: #bcd6f6;
}
/* AAA reading defaults (WCAG 2.2 SC 1.4.8): body leading >=1.5, paragraph spacing >=1.5x leading.
   Vendored with the tokens so every surface inherits the reading floor; override per-component only upward. */
body{ line-height: var(--lh-body); }
p{ margin-block: 0 var(--space-paragraph); }
p:last-child{ margin-block-end: 0; }
