:root {
  /* ── Ink: the navy pulled from VYRE vial + pen label bands ─────────────── */
  --ink-900: #0e1729;
  --ink-800: #131e33;
  --ink-700: #1b2a47;
  --ink-600: #26375a;
  --ink-500: #3a4c72;
  --ink-400: #6b7a97;
  --ink-300: #9aa6bc;
  --ink-200: #c6cdda;
  --ink-100: #e3e7ee;

  /* ── Indigo: the violet label band (Ipamorelin, MOTS-c, MEND+) ─────────── */
  --indigo-700: #2e2c6e;
  --indigo-600: #3b3a94;
  --indigo-500: #4e4cb0;
  --indigo-100: #e6e5f4;

  /* ── Paper: warm ivory canvas of the storefront (v2 — warmer than v1) ──── */
  --paper-000: #ffffff;
  --paper-050: #fbf9f4;
  --paper-100: #f5f2ea;
  --paper-200: #eeeadf;
  --paper-300: #e3ded0;
  --paper-400: #cfc9b9;

  /* ── Gold: the champagne accent of v2 — eyebrows, CTAs, orbit ring ─────── */
  --gold-700: #4f6b12;
  --gold-600: #8fa714;
  --gold-500: #c2d520;
  --gold-400: #d9ec2b;
  --gold-300: #dcee93;
  --gold-100: #f1f8d4;

  /* ── Line accents: one hue per product line, taken from the packaging ──── */
  --lime-600: #c2d520;   /* MOTS-c cap */
  --lime-500: #d9ec2b;   /* MEND+ dose block */
  --lime-100: #f4fac9;
  --azure-600: #2159c4;
  --azure-500: #2e6fe0;  /* SHIFT+ / Retatrutide */
  --azure-400: #6ba3de;
  --azure-100: #e2ecfb;
  --cyan-500: #3cdcda;   /* PRIME+ */
  --cyan-100: #dcf7f7;
  --amber-500: #f0791f;  /* PULSE+ */
  --amber-100: #fdead9;
  --olive-700: #454c25;  /* IGF-1 LR3 band */
  --sage-400: #a8b58a;
  --sage-100: #eaeee1;
  --sand-500: #c7c077;   /* Ipamorelin */
  --sand-100: #f3f1dd;
  --crimson-500: #d94167; /* MEND */
  --crimson-100: #fbe4ea;
  --coral-500: #e0685a;  /* SHIFT 15 mg */
  --coral-100: #fbe8e4;
  --red-500: #d93a2b;    /* SHIFT 30 mg / Tirzepatide */
  --red-100: #fbe3e0;
  --green-500: #4de04a;  /* PULSE */
  --green-100: #e4fae2;
  --violet-500: #a563d8; /* PRIME */
  --violet-100: #f0e5f9;
  --rose-400: #d98a95;   /* Thymosin α-1 */
  --rose-100: #f9e9eb;

  /* ── Semantic surfaces ─────────────────────────────────────────────────── */
  --surface-page: var(--paper-100);
  --surface-card: var(--paper-000);
  --surface-sunken: var(--paper-200);
  --surface-tint: var(--paper-050);
  --surface-ink: var(--ink-900);
  --surface-ink-soft: var(--ink-800);
  --surface-accent: var(--gold-400);
  --surface-overlay: rgba(14, 23, 41, 0.44);
  --surface-glass: rgba(255, 255, 255, 0.72);

  /* ── Semantic text ─────────────────────────────────────────────────────── */
  --text-strong: var(--ink-900);
  --text-body: #2a3548;
  --text-muted: var(--ink-400);
  --text-faint: var(--ink-300);
  --text-inverse: var(--paper-000);
  --text-inverse-muted: rgba(255, 255, 255, 0.64);
  --text-link: var(--ink-900);
  --text-link-hover: var(--azure-600);

  /* ── Semantic lines ───────────────────────────────────────────────────── */
  --border-hairline: rgba(14, 23, 41, 0.1);
  --border-soft: rgba(14, 23, 41, 0.16);
  --border-strong: rgba(14, 23, 41, 0.32);
  --border-inverse: rgba(255, 255, 255, 0.18);
  --focus-ring: var(--azure-500);

  /* ── Status ───────────────────────────────────────────────────────────── */
  --status-success: #3e7d53;
  --status-success-bg: #e7f0e9;
  --status-warn: #a8681a;
  --status-warn-bg: #fbf0dd;
  --status-danger: #b4341f;
  --status-danger-bg: #fae8e4;
  --status-info: var(--azure-600);
  --status-info-bg: var(--azure-100);

  /* ── Interaction ──────────────────────────────────────────────────────── */
  --action-primary-bg: var(--ink-900);
  --action-primary-bg-hover: #223257;
  --action-primary-fg: var(--paper-000);
  --action-accent-bg: var(--gold-400);
  --action-accent-bg-hover: var(--gold-500);
  --action-accent-fg: var(--ink-900);
  --action-quiet-bg: rgba(14, 23, 41, 0.06);
  --action-quiet-bg-hover: rgba(14, 23, 41, 0.11);
}

/* VYRE electric-green accent ramp (matches storefront design) */
:root{--gold-100:#F1F8D4;--gold-300:#DCEE93;--gold-400:#D9EC2B;--gold-500:#C2D520;--gold-600:#8FA714;--gold-700:#4F6B12;}
