/* SignalGro design tokens — single source of truth.
   Change a value here and it propagates. Do not hard-code these hexes in components. */
:root{
  /* Brand */
  --sg-forest-deep:#1B7346;   /* action fill, links on light (6.5:1 on paper) */
  --sg-signal:#34A05C;        /* primary accent (6.0:1 on void) */
  --sg-sprout:#6FCB8E;        /* secondary accent, wordmark "Gro" */
  --sg-signal-light:#8ED8A6;  /* accent text on dark, eyebrows, links */
  --sg-beacon:#E8A24B;        /* warm accent — placeholders, human moments. <3% of surface */

  /* Dark surfaces */
  --sg-void:#070708;
  --sg-panel:#111512;
  --sg-panel-2:#191E1A;

  /* Light surfaces */
  --sg-paper:#FAFCFA;
  --sg-paper-2:#F0F4F1;
  --sg-sand:#EFE7DC;          /* warm surface: people, quotes, approvals */

  /* Text on dark */
  --sg-mist:#F4F4F6;
  --sg-mist-dim:#B4BDB7;
  --sg-moon:#94A39C;
  --sg-muted:#6E7872;

  /* Text on light */
  --sg-ink:#121814;
  --sg-ink-dim:#55605A;
  --sg-ink-mute:#86918A;
  --sg-rule:#E2E7E3;

  /* Hairlines on dark */
  --sg-hairline:rgba(148,163,156,.14);
  --sg-hairline-strong:rgba(148,163,156,.28);

  /* Status */
  --sg-success:#4BB07A; --sg-warning:#E8A24B; --sg-error:#E2565C; --sg-info:#6FA8E8;
  --sg-focus:#8ED8A6;

  /* Type */
  --sg-font-display:"Sora",system-ui,sans-serif;
  --sg-font-body:"Sora",system-ui,sans-serif;
  --sg-font-mono:"IBM Plex Mono",ui-monospace,monospace;

  /* Space — 4px grid */
  --sg-space-1:4px; --sg-space-2:8px; --sg-space-3:12px; --sg-space-4:20px;
  --sg-space-5:32px; --sg-space-6:52px; --sg-space-7:80px; --sg-space-8:120px;

  /* Radius */
  --sg-r-sm:6px; --sg-r-md:10px; --sg-r-lg:16px; --sg-r-full:999px;

  /* Layout */
  --sg-container:1240px;
  --sg-gutter:32px;

  /* Motion */
  --sg-dur-1:120ms; --sg-dur-2:220ms; --sg-dur-3:340ms;
  --sg-ease-out:cubic-bezier(.2,0,0,1);
}
