/* ══════════════════════════════════════════════════════════
   RegNovaIQ — Design System Tokens (SSOT)
   Landing page tokens are the canonical source of truth.
   Unified brand palette — emerald / forest / cream + teal + gold.
   Shared across the landing page and both V2 portals.
   ══════════════════════════════════════════════════════════ */

:root {
  /* Ink scale — warm-neutral text/structure (light theme).
     Anchored on ink #101820 (forest-leaning charcoal). */
  --ink-950: #101820;
  --ink-900: #16241d;
  --ink-800: #1f3329;
  --ink-700: #2c463a;
  --ink-600: #3f5a4d;
  --ink-500: #5a6660;
  --ink-400: #76827b;
  --ink-300: #9aa49d;
  --ink-200: #c4ccc4;
  --ink-100: #e4e1d4;
  --ink-50: #eef0e8;
  --white: #fcfbf6;

  /* ── Unified brand palette ──
     forest #0E1A14 · emerald-deep #1F7A4D · emerald-bright #3FB477
     teal #0F6E7A · teal-bright #2E8B9E · gold #C9A24B · gold-soft #E2C88A */
  --brand-forest: #0e1a14;
  --brand-emerald: #1f7a4d;
  --brand-emerald-light: #3fb477;
  --brand-teal: #0f6e7a;
  --brand-teal-light: #2e8b9e;
  --brand-gold: #c9a24b;
  --brand-gold-soft: #e2c88a;
  --brand-cream: #f7f6ef;

  /* Legacy aliases retained for back-compat across styles.css usage.
     amber* now map onto gold; emerald/cyan onto emerald/teal. */
  --brand-amber: #c9a24b;
  --brand-amber-mid: #0f6e7a;
  --brand-amber-light: #3fb477;
  --brand-cyan: #0f6e7a;
  --brand-cyan-light: #2e8b9e;

  /* Accent roles (drive every rgba() usage via the *-rgb tokens). */
  --accent-primary: #1f7a4d;        /* emerald-deep — PRIMARY */
  --accent-secondary: #0f6e7a;      /* teal — SECONDARY */
  --accent-tertiary: #c9a24b;       /* gold — ACCENT */
  --accent-quaternary: #3fb477;     /* emerald-bright — supporting */
  --accent-primary-rgb: 31, 122, 77;
  --accent-secondary-rgb: 15, 110, 122;
  --accent-tertiary-rgb: 201, 162, 75;
  --accent-quaternary-rgb: 63, 180, 119;

  /* Surfaces — warm cream backdrop, near-white cards. */
  --surface-card: #fcfbf6;
  --surface-page: #f7f6ef;
  --surface-alt: #f0eee2;
  --border-soft: rgba(var(--accent-primary-rgb), 0.1);
  --border-med: rgba(var(--accent-primary-rgb), 0.2);
  --shadow-sm: 0 1px 3px rgba(14, 26, 20, 0.08);
  --shadow-md: 0 8px 30px rgba(14, 26, 20, 0.12);
  --shadow-lg: 0 20px 60px rgba(14, 26, 20, 0.14);
  --shadow-brand: 0 12px 40px rgba(var(--accent-primary-rgb), 0.22);
  --font-display: "Playfair Display", "Times New Roman", serif;
  --font-body: "Outfit", "Segoe UI", system-ui, sans-serif;
  --font-ui: "Manrope", "Outfit", "Segoe UI", system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --radius-xl: 28px;
  --radius-lg: 20px;
  --radius-md: 14px;
  --radius-sm: 10px;
  --max-width: 1200px;
  --layout-max-width: var(--max-width);
  --layout-gutter: 24px;
  --transition-fast: 0.15s ease;
  --transition-med: 0.3s ease;
  --transition-slow: 0.6s ease;
  /* Brand gradient: emerald → teal → gold. */
  --gradient-brand: linear-gradient(135deg, #1f7a4d, #2e8b9e, #c9a24b);
}

/* ══════════════════════════════════════════════════════════
   Dark Theme Overrides — forest-anchored
   ══════════════════════════════════════════════════════════ */
:is([data-theme="dark"], [data-theme="zenith"]),
.dark {
  --brand-forest: #0a130e;
  --brand-emerald: #3fb477;
  --brand-emerald-light: #5fce93;
  --brand-teal: #2e8b9e;
  --brand-teal-light: #5cb6c6;
  --brand-gold: #d9b86a;
  --brand-gold-soft: #e9d39a;
  --brand-cream: #0e1a14;

  /* Legacy aliases (dark). */
  --brand-amber: #d9b86a;
  --brand-amber-mid: #2e8b9e;
  --brand-amber-light: #5fce93;
  --brand-cyan: #2e8b9e;
  --brand-cyan-light: #5cb6c6;

  --accent-primary: #3fb477;        /* emerald-bright reads on forest */
  --accent-secondary: #2e8b9e;      /* teal-bright */
  --accent-tertiary: #d9b86a;       /* gold */
  --accent-quaternary: #5fce93;
  --accent-primary-rgb: 63, 180, 119;
  --accent-secondary-rgb: 46, 139, 158;
  --accent-tertiary-rgb: 217, 184, 106;
  --accent-quaternary-rgb: 95, 206, 147;

  /* Forest surfaces. */
  --surface-page: #0a130e;
  --surface-card: #0e1a14;
  --surface-alt: #122318;
  --white: #0e1a14;
  --border-soft: rgba(var(--accent-primary-rgb), 0.18);
  --border-med: rgba(var(--accent-primary-rgb), 0.3);
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.2);
  --shadow-md: 0 8px 30px rgba(0, 0, 0, 0.25);
  --shadow-lg: 0 20px 60px rgba(0, 0, 0, 0.3);
  --shadow-brand: 0 12px 40px rgba(var(--accent-primary-rgb), 0.36);
  --ink-950: #eef4ee;
  --ink-900: #e3ecde;
  --ink-800: #d5e2d0;
  --ink-700: #bcd0bc;
  --ink-600: #97b39c;
  --ink-500: #85a08c;
  --ink-400: #5f7f68;
  --ink-300: #4d6b56;
  --ink-200: #36503f;
  --ink-100: #233a2c;
  --ink-50: #18291f;
}
