/* ============================================================
   Color tokens — generated from Value.tokens.json
   Two layers: primitives (literal hex) → semantic (reference primitives).
   Naming: lowercase, single dash, mirrors the Figma token path
   (text/primary → --text-primary). Scope: color only. Typography
   is a separate layer, not in the source file provided.
   ============================================================ */

:root {
  /* ---- Primitives : neutrals ---------------------------------- */
  --white: #ffffff;

  --paper-50: #fff7e6;
  --paper-100: #f5eedf;

  --sand-50: #eeeeec;
  --sand-100: #d6d6d3;
  --sand-200: #bebeba;
  --sand-300: #a7a7a1;
  --sand-400: #91918b;
  --sand-500: #7d7d77;
  --sand-600: #696963;
  --sand-700: #52524c;
  --sand-800: #3d3d38;
  --sand-900: #2b2b26;

  /* ---- Primitives : chromatic --------------------------------- */
  --copper-50: #f1ded5;
  --copper-100: #ebd0c3;
  --copper-200: #dfb5a1;
  --copper-300: #d29a7f;
  --copper-400: #c5805f;
  --copper-500: #bf6b40;
  --copper-600: #aa5a30;
  --copper-700: #903d15;
  --copper-800: #782609;
  --copper-900: #5d0800;

  --red-50: #fbdfda;
  --red-100: #f7cdc6;
  --red-200: #efaea3;
  --red-300: #e69083;
  --red-400: #dc7264;
  --red-500: #d15448;
  --red-600: #bf3024;
  --red-700: #a60b05;
  --red-800: #820000;
  --red-900: #600000;

  --green-50: #e1efe8;
  --green-100: #bfddce;
  --green-200: #97c8b1;
  --green-300: #6fb596;
  --green-400: #44a17d;
  --green-500: #268d67;
  --green-600: #0a7452;
  --green-700: #005f3e;
  --green-800: #00482a;
  --green-900: #003417;

  /* ---- Semantic : text ---------------------------------------- */
  --text-primary: var(--sand-900);
  --text-secondary: var(--sand-700);
  --text-placeholder: var(--sand-500);
  --text-disabled: var(--sand-300);
  --text-on-inverse-primary: var(--sand-50);
  --text-on-inverse-secondary: var(--sand-200);

  /* ---- Semantic : surface ------------------------------------- */
  --surface-default: var(--paper-50);
  --surface-section: var(--paper-100);
  --surface-card: var(--sand-50);
  --surface-inverse: var(--sand-900);

  /* ---- Semantic : border -------------------------------------- */
  --border-subtle: var(--sand-100);
  --border-default: var(--sand-500);
  --border-strong: var(--sand-700);
  --border-primary: var(--sand-900);
  --border-accent: var(--accent-default);

  /* ---- Semantic : accent -------------------------------------- */
  --accent-subtle: var(--copper-50);
  --accent-soft: var(--copper-200);
  --accent-default: var(--copper-600);  /* path-mirrored; codeSyntax --accent-primary intentionally not used */
  --accent-strong: var(--copper-700);   /* path-mirrored; codeSyntax --accent-hover intentionally not used */
  --accent-focus: var(--copper-400);
  --accent-on-accent: var(--white);

  /* ---- Semantic : error --------------------------------------- */
  --error-primary: var(--red-600);
  --error-text: var(--red-600);  /* same value as --error-primary */
  --error-base: var(--red-500);
  --error-soft: var(--red-100);
  --error-on-error: var(--white);

  /* ---- Semantic : success ------------------------------------- */
  --success-primary: var(--green-600);
  --success-text: var(--green-600);  /* same value as --success-primary */
  --success-base: var(--green-500);
  --success-soft: var(--green-50);
  --success-on-success: var(--white);
}
