/* CAPX colour — three voices: ink, paper, and the logo orange.
   Orange is surgical. No gradients, no blues, no purples, no shadows. */
:root{
  /* Base — ink & accent */
  --ink:#181715;
  --orange:#FA5014;
  --orange-press:#E04510;

  /* Base — paper */
  --paper-greige:#F7F5F0;
  --paper-white:#FFFFFF;
  --paper-tint:#F2EEE6;   /* the one hover fill */
  --paper-graphic:#F2EFE9; /* inert fill inside structural graphics */

  /* Base — neutral text ramp (measured on greige) */
  --grey-article:#302D28; /* 13.3:1 — long-form body only */
  --grey-body:#54514A;    /*  7.3:1 — supporting body text */
  --grey-muted:#6B665C;   /*  5.2:1 — labels, captions, fine print */
  --grey-faint:#8B8578;   /*  counts and inline meta beside a label */

  /* Base — rules */
  --line-hairline:#E4E0D6;
  --line-firm:#C9C4B8;

  /* Base — dark-surface set (the single ink band per page) */
  --ink-fg:#F7F5F0;
  --ink-fg-muted:#ABA69B; /* 7.4:1 on ink */
  --ink-line:#45423B;

  /* Semantic — surfaces */
  --surface-page:var(--paper-greige);
  --surface-alt:var(--paper-white);
  --surface-card:var(--paper-white);
  --surface-field:var(--paper-white);
  --surface-hover:var(--paper-tint);
  --surface-dark:var(--ink);

  /* Semantic — text */
  --text-primary:var(--ink);
  --text-body:var(--grey-body);
  --text-longform:var(--grey-article);
  --text-muted:var(--grey-muted);
  --text-on-dark:var(--ink-fg);
  --text-on-dark-muted:var(--ink-fg-muted);
  --text-on-accent:var(--ink); /* 5.31:1 — never white */

  /* Semantic — accent */
  --accent:var(--orange);
  --accent-hover:var(--orange-press);

  /* Semantic — borders */
  --border-hairline:var(--line-hairline);
  --border-firm:var(--line-firm);
  --border-rule:var(--ink);      /* 2px table/matrix header rule */
  --border-field:var(--line-firm);
  --border-focus:var(--ink);
  --border-on-dark:var(--ink-line);
}
