/* Design tokens and the light/dark palettes.
 *
 * Every colour on the site resolves through these. A page that needs a new
 * shade adds a token here rather than a literal, so the two themes cannot
 * drift apart — and so a single value changes the whole console.
 *
 * Three blocks, deliberately: the bare :root carries the complete light
 * palette; the media query handles a viewer who has expressed no preference;
 * the [data-theme] block lets an explicit choice win in both directions.
 * A colour defined only inside a media query has no value when the toggle
 * says otherwise, which is how half-dark pages happen.
 */
:root{
  --paper:#F5F3EE; --raise:#EFEBE1; --sunk:#E6E1D3; --card:#FAFBF9;
  --ink:#1A1F1B; --ink2:#4A554E; --ink3:#7E8A81;
  --rule:#D8D1BE; --rule2:#E6E1D3;
  --brand:#1B5A37; --brand-ink:#FBFCFA; --brand-soft:#E4EEE8;
  --dept:#2E4A63; --dept-soft:#E3EAF1;
  --ok:#2E7D4F; --lost:#8F3A22; --warn:#A87A15;
  --lost-soft:#F6E7E1; --warn-soft:#F6EFDD;
  --canvas:#EDEAE0;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#111412; --raise:#181B18; --sunk:#1E221E; --card:#1A1E1B;
  --ink:#E8EDE9; --ink2:#9BB3A0; --ink3:#6E8172;
  --rule:#2A3129; --rule2:#22281F;
  --brand:#5DB97E; --brand-ink:#0F1311; --brand-soft:#16261B;
  --dept:#7FA6C7; --dept-soft:#16222D;
  --ok:#5DB97E; --lost:#D4654A; --warn:#D4B86A;
  --lost-soft:#241610; --warn-soft:#221C0E;
  --canvas:#0A0D0B;
}}
:root[data-theme="dark"]{
  --paper:#111412; --raise:#181B18; --sunk:#1E221E; --card:#1A1E1B;
  --ink:#E8EDE9; --ink2:#9BB3A0; --ink3:#6E8172;
  --rule:#2A3129; --rule2:#22281F;
  --brand:#5DB97E; --brand-ink:#0F1311; --brand-soft:#16261B;
  --dept:#7FA6C7; --dept-soft:#16222D;
  --ok:#5DB97E; --lost:#D4654A; --warn:#D4B86A;
  --lost-soft:#241610; --warn-soft:#221C0E;
  --canvas:#0A0D0B;
}
