/* ============================================================
   FU Money Calculator — Design Tokens
   Bold & punchy, dark-first. Light mode via [data-theme="light"].
   ============================================================ */

:root {
  /* ---- Brand / accent ---- */
  --accent: #C6F432;            /* electric lime — money, CTAs, the result number */
  --accent-hover: #d4ff4a;
  --accent-ink: #0B0B0F;        /* text that sits ON the accent */
  --accent-2: #39FF88;          /* secondary green */
  --warn: #FF5C5C;              /* "not there yet" / alerts */

  /* ---- Dark canvas (default) ---- */
  --bg: #0B0B0F;
  --bg-grad-1: #0B0B0F;
  --bg-grad-2: #121219;
  --surface: #16161D;
  --surface-2: #1E1E27;
  --border: #2A2A36;
  --border-strong: #3A3A48;

  --text: #FAFAFA;
  --text-muted: #9A9AA8;
  --text-faint: #6B6B78;

  --shadow-sm: 0 1px 2px rgba(0,0,0,.4);
  --shadow-md: 0 8px 24px rgba(0,0,0,.45);
  --shadow-lg: 0 20px 60px rgba(0,0,0,.55);
  --glow: 0 0 40px rgba(198,244,50,.18);

  /* ---- Typography ---- */
  --font-display: "Space Grotesk", "Archivo", system-ui, sans-serif;
  --font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --fs-hero: clamp(2.6rem, 6vw, 5rem);
  --fs-result: clamp(3rem, 9vw, 7rem);
  --fs-h1: clamp(2rem, 4vw, 3rem);
  --fs-h2: clamp(1.5rem, 3vw, 2.1rem);
  --fs-h3: 1.25rem;
  --fs-body: 1rem;
  --fs-sm: 0.875rem;
  --fs-xs: 0.75rem;

  --lh-tight: 1.04;
  --lh-snug: 1.25;
  --lh-body: 1.6;

  /* ---- Spacing scale ---- */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.5rem;
  --sp-6: 2rem;
  --sp-7: 3rem;
  --sp-8: 4rem;
  --sp-9: 6rem;

  /* ---- Radius ---- */
  --r-sm: 8px;
  --r-md: 14px;
  --r-lg: 22px;
  --r-pill: 999px;

  /* ---- Layout ---- */
  --maxw: 1120px;
  --maxw-narrow: 760px;
  --header-h: 68px;

  /* ---- Motion ---- */
  --ease: cubic-bezier(.2,.7,.2,1);
  --dur: 220ms;
}

/* ---- Light mode ---- */
[data-theme="light"] {
  --bg: #F7F8FA;
  --bg-grad-1: #FFFFFF;
  --bg-grad-2: #EEF1F6;
  --surface: #FFFFFF;
  --surface-2: #F1F3F8;
  --border: #E2E6EE;
  --border-strong: #CDD3DF;

  --text: #0B0B0F;
  --text-muted: #5A6172;
  --text-faint: #8A91A3;

  --accent: #2FB14A;            /* darker green for contrast on light */
  --accent-hover: #28a142;
  --accent-ink: #FFFFFF;
  --glow: 0 0 0 rgba(0,0,0,0);

  --shadow-sm: 0 1px 2px rgba(16,24,40,.06);
  --shadow-md: 0 8px 24px rgba(16,24,40,.10);
  --shadow-lg: 0 20px 50px rgba(16,24,40,.14);
}

@media (prefers-reduced-motion: reduce) {
  :root { --dur: 0ms; }
}
