/* ATHENA AVOCAT — Color tokens
   Base values pulled from the firm's own brand guidelines (deep green #173C3D, ivory
   #F7F4EC) and the live TET questionnaire product (stone/taupe text, warm borders).
   Beige, charcoal and brass are extended from that anchor with oklch to stay harmonious —
   the brief calls for ivory / beige / charcoal / soft grey / brass alongside the confirmed
   forest green, and only forest green + ivory existed in the source material. */

:root {
  /* ---- Base palette ---- */

  /* Forest green — primary brand color, confirmed via brand guidelines + product */
  --green-900: #0e2627;
  --green-800: #173c3d; /* brand primary */
  --green-700: #1f4d4e;
  --green-600: #2a6062;
  --green-500: #3c7678;
  --green-100: #d9e0da; /* confirmed: "avis légal" body copy on dark green */

  /* Ivory / paper — confirmed page + card backgrounds from the product */
  --ivory-100: #fffdf8; /* card / input surface */
  --ivory-200: #f7f4ec; /* page background, brand mark background */
  --ivory-300: #f0ebde;

  /* Warm beige — extended from ivory toward a deeper parchment tone */
  --beige-100: #ece3d0;
  --beige-200: #ded1b3;
  --beige-300: #cfc3a8; /* confirmed: input / pill border */

  /* Charcoal / stone — confirmed body text + muted label colors from the product */
  --charcoal-900: #211f1c;
  --charcoal-800: #3a3630;
  --stone-700: #5c5647; /* confirmed: body copy, active field labels */
  --stone-500: #7a7462; /* confirmed: muted field labels, helper text */
  --stone-400: #8a8473; /* confirmed: eyebrow / meta text */

  /* Soft grey — neutral, used sparingly for dividers/disabled */
  --grey-300: #cbd0cb;
  --grey-200: #e2e5e1;

  /* Brass / gold accent — extended from the green anchor via oklch; used only as a rare
     accent (dividers, seals, quiet emphasis) — never as a primary action color */
  --brass-700: oklch(52% 0.07 75);
  --brass-500: oklch(64% 0.085 78);
  --brass-300: oklch(84% 0.045 82);

  /* ---- Semantic aliases ---- */
  --color-bg: var(--ivory-200);
  --color-surface: var(--ivory-100);
  --color-surface-sunken: var(--beige-100);
  --color-border: var(--beige-300);
  --color-border-subtle: var(--grey-200);

  --color-text: var(--charcoal-900);
  --color-text-body: var(--stone-700);
  --color-text-muted: var(--stone-500);
  --color-text-faint: var(--stone-400);

  --color-primary: var(--green-800);
  --color-primary-hover: var(--green-700);
  --color-primary-active: var(--green-900);
  --color-on-primary: var(--ivory-200);
  --color-on-primary-muted: var(--green-100);

  --color-accent: var(--brass-500);
  --color-accent-hover: var(--brass-700);

  --color-danger: #8c3b2e;
  --color-danger-bg: #f4e6e0;
  --color-success: #3c5a3a;
}
