/* Colour — the Magic Patterns palette.
   Warmer and browner than the Claude Design system this replaced: the ink is
   brown-black rather than green-black, and the paper is a deeper cream. The
   brand hues barely moved, because both were sampled from the same butterfly
   mark (ember #ee7c1f vs the old #ef7f1a; frond #00a24c vs #00a04e).

   Variable names are unchanged from the previous system on purpose, so the
   switch was a values-only edit and nothing downstream had to move. */
:root{
  /* --- Brand base --- */
  --orange-500:#ee7c1f; /* ember — mark outline, primary brand colour */
  --leaf-500:#8cc63f;   /* frond leaf — inner leaves */
  --green-500:#00a24c;  /* frond — wordmark and solid leaves */

  /* --- Ember ramp --- */
  --orange-50:#fdf5ec;
  --orange-100:#fbe9d7; /* ember wash */
  --orange-200:#f6d2ab;
  --orange-300:#f2b878;
  --orange-400:#f19b46;
  --orange-600:#c85f0c; /* ember deep */
  --orange-700:#a44c07;
  --orange-800:#7d3a05;

  /* --- Leaf ramp --- */
  --leaf-50:#f3f8e8;
  --leaf-100:#e6f1cb;
  --leaf-200:#d1e5a2;
  --leaf-300:#b9d675;
  --leaf-600:#74a72f;
  --leaf-700:#5b8423;

  /* --- Frond ramp --- */
  --green-50:#e9f2e2;  /* frond wash */
  --green-100:#c9e6d3;
  --green-200:#95d4ae;
  --green-300:#4dbd80;
  --green-600:#008a41;
  --green-700:#0a6b3a;
  --green-800:#0d3b2a; /* frond deep — the dark ground */

  /* --- Warm neutrals (paper + ink) --- */
  --paper-0:#ffffff;
  --paper-50:#faf6ee;  /* paper */
  --paper-100:#f3ecdd; /* paper deep */
  --paper-200:#ebe2d0;
  --paper-300:#ded4c1; /* rule */
  --paper-400:#c9bda4;
  --ink-900:#241f17;   /* ink */
  --ink-800:#3a3327;
  --ink-700:#5c5344;   /* ink soft */
  --ink-600:#6f6555;
  --ink-500:#8b8271;   /* ink faint */
  --ink-400:#a89f8d;

  /* --- Semantic: surfaces --- */
  --surface-page:var(--paper-50);
  --surface-card:var(--paper-0);
  --surface-sunken:var(--paper-100);
  --surface-inverse:var(--ink-900);
  --surface-forest:var(--green-800);
  --surface-accent-soft:var(--orange-100);
  --surface-leaf-soft:var(--leaf-50);
  --surface-green-soft:var(--green-50);

  /* --- Semantic: text --- */
  --text-heading:var(--ink-900);
  --text-body:var(--ink-700);
  --text-muted:var(--ink-500);
  --text-inverse:var(--paper-50);
  --text-inverse-muted:#b3ac9c;
  --text-accent:var(--orange-700);
  --text-link:var(--green-700);
  --text-link-hover:var(--orange-700);

  /* --- Semantic: lines --- */
  --border-hairline:var(--paper-300);
  --border-strong:var(--paper-400);
  --border-inverse:#3d3527;
  --rule-accent:var(--orange-500);

  /* --- Semantic: interactive --- */
  --action-primary:var(--orange-500);
  --action-primary-hover:var(--orange-600);
  --action-primary-active:var(--orange-700);
  --action-primary-text:#ffffff;
  --action-secondary-text:var(--green-700);
  --action-secondary-border:var(--green-700);
  --action-secondary-hover-bg:var(--green-50);
  --focus-ring:var(--orange-500);

  /* --- Semantic: status (forms only) --- */
  --status-success:var(--green-600);
  --status-error:#b3341f;
  --status-error-soft:#fbecea;
}
