/* ===================================================================
   DOFNY — Color tokens
   Extracted verbatim from "Nouvelle version DOFNY.fig".
   Base palette + semantic aliases. Hex values are exact transcriptions
   of the rgb() fills used across the homepage, listing and product pages.
=================================================================== */

:root {
  /* ---- Brand blue ---------------------------------------------- */
  --dofny-blue: #2681cf;          /* rgb(38,129,207)  primary — links, CTAs, announcement bar */
  --dofny-blue-600: #266bad;      /* rgb(38,107,173)  darker blue fill */
  --dofny-blue-700: #1a6bad;      /* rgb(26,107,173)  accent underline / hover */
  --dofny-blue-400: #408ccc;      /* rgb(64,140,204)  lighter blue */
  --dofny-blue-tint: #dbe9f5;     /* rgb(219,233,245) category card background */
  --dofny-blue-tint-2: #eaf3fb;   /* rgb(234,243,251) soft blue surface */
  --dofny-blue-band-1: #0e386e;   /* rgb(14,56,110)  trust-band gradient edge */
  --dofny-blue-band-2: #154f94;   /* rgb(21,79,148)  trust-band gradient center */
  --dofny-blue-band-text: #bfd6ed;/* rgb(191,214,237) muted text on blue band */

  /* ---- Ink / text ---------------------------------------------- */
  --dofny-ink: #2e363c;           /* rgb(46,54,60)  primary heading & UI text */
  --dofny-ink-strong: #222222;    /* rgb(34,34,34)  strongest body text */
  --dofny-navy: #1a2433;          /* rgb(26,36,51)  dark heading on light */
  --dofny-slate: #4a5668;         /* rgb(74,86,104)  secondary text */
  --dofny-slate-2: #344155;       /* rgb(52,65,85)  slate variant */
  --dofny-gray: #a6a6a6;          /* rgb(166,166,166) tertiary / placeholder */
  --dofny-gray-2: #636b75;        /* rgb(99,107,117) muted body */
  --dofny-gray-3: #98a3b3;        /* rgb(152,163,179) footer muted */
  --dofny-mute-70: #70706e;       /* rgb(112,112,112) search placeholder / icons */

  /* ---- Surfaces ------------------------------------------------ */
  --dofny-white: #ffffff;
  --dofny-surface: #f1f2f5;       /* rgb(241,242,245) fields, image wells, pills */
  --dofny-surface-2: #f6f6f6;     /* rgb(246,246,246) */
  --dofny-surface-3: #f4f6f9;     /* rgb(244,246,249) */
  --dofny-surface-4: #f7f9fb;     /* rgb(247,249,251) */

  /* ---- Borders ------------------------------------------------- */
  --dofny-border: #e0e0e0;        /* rgb(224,224,224) */
  --dofny-border-2: #e4e8ed;      /* rgb(228,232,237) */
  --dofny-border-3: #e2e7ec;      /* rgb(226,231,236) */

  /* ---- Semantic ------------------------------------------------ */
  --dofny-green: #02bc34;         /* rgb(2,188,52)  in-stock / add-to-cart */
  --dofny-green-600: #0f9351;     /* rgb(15,147,81)  check bullets */
  --dofny-green-tint: #e0f8eb;    /* rgb(224,248,235) green surface */
  --dofny-amber: #c59015;         /* rgb(197,144,21) "tarif pro" note */
  --dofny-amber-tint: #fbf1d3;    /*                  price highlight well */
  --dofny-red: #e5341f;           /*                  "Promotions" nav accent */

  /* ---- Dark footer / CTA band ---------------------------------- */
  --dofny-footer-1: #101115;      /* rgb(16,17,21) */
  --dofny-footer-2: #485766;      /* rgb(72,87,102) */
  --dofny-footer-3: #313741;      /* rgb(49,55,65) */

  /* ================= SEMANTIC ALIASES ========================== */
  --color-primary: var(--dofny-blue);
  --color-primary-hover: var(--dofny-blue-700);
  --color-accent: var(--dofny-blue-700);
  --color-cta: var(--dofny-green);
  --color-cta-hover: var(--dofny-green-600);

  --text-heading: var(--dofny-ink);
  --text-body: var(--dofny-ink);
  --text-muted: var(--dofny-gray-2);
  --text-placeholder: var(--dofny-mute-70);
  --text-on-dark: var(--dofny-white);
  --text-link: var(--dofny-blue);

  --surface-page: var(--dofny-white);
  --surface-card: var(--dofny-white);
  --surface-field: var(--dofny-surface);
  --surface-category: var(--dofny-blue-tint);
  --surface-well: var(--dofny-surface);

  --border-default: var(--dofny-border);
  --border-subtle: var(--dofny-border-2);
}
