/* SyncWeave design tokens — v1.0 · June 2026
   Philosophy: color marks the sync point. 90/9/1 — field / ink / pulse. */

:root {
  /* ── core ── */
  --sw-ink: #10131A;
  --sw-paper: #F8F9FB;
  --sw-pulse: #2E5BFF;          /* the node. B500. never changes. */

  /* ── neutrals (slate, cast from ink) ── */
  --sw-n0: #FFFFFF;   /* card */
  --sw-n50: #F8F9FB;  /* paper */
  --sw-n100: #EFF1F5; /* inset */
  --sw-n200: #E1E5EC; /* hairline */
  --sw-n300: #C9CFDA; /* border */
  --sw-n400: #9FA7B7; /* disabled */
  --sw-n500: #747E92; /* muted text */
  --sw-n600: #535D72; /* body text */
  --sw-n700: #3B4456; /* strong text */
  --sw-n800: #252C3C; /* dark border */
  --sw-n900: #161C2A; /* dark card */
  --sw-n950: #0C1322; /* navy field */

  /* ── pulse ramp ── */
  --sw-b50: #EFF3FF;  /* tint fill */
  --sw-b100: #DCE5FF; /* selected */
  --sw-b200: #B9CBFF; /* focus ring */
  --sw-b300: #8CA9FF; /* blue text on navy */
  --sw-b400: #5C80FF; /* hover (dark) */
  --sw-b500: #2E5BFF; /* PULSE */
  --sw-b600: #2349D6; /* hover (light) */
  --sw-b700: #1B38A8; /* pressed */

  /* ── signals (light mode) — state, never decoration ── */
  --sw-synced: #2E5BFF;       --sw-synced-tint: #EFF3FF;
  --sw-lag: #A8700F;          --sw-lag-tint: #FBF3E2;
  --sw-drift: #C2403A;        --sw-drift-tint: #FCEEEC;
  --sw-idle: #747E92;         --sw-idle-tint: #EFF1F5;

  /* ── routes (data palette; pulse is always series 1) ── */
  --sw-route-1: #2E5BFF;
  --sw-route-2: #1E9AB8;
  --sw-route-3: #6E59D9;
  --sw-route-4: #2E9C84;
  --sw-route-5: #B98A2E;
  --sw-route-6: #747E92;

  /* ── type ── */
  --sw-font-voice: "Source Serif 4", Georgia, serif;       /* wordmark · headlines · pull quotes */
  --sw-font-ui: "Geist", -apple-system, "Segoe UI", sans-serif; /* UI · nav · body · buttons */
  --sw-font-data: "Geist Mono", ui-monospace, SFMono-Regular, monospace; /* tables · numerals · status */
}

/* dark mode: same tokens, swapped values */
[data-theme="dark"] {
  --sw-paper: #0C1322;        /* navy, never black */
  --sw-n0: #161C2A;
  --sw-n200: #252C3C;
  --sw-synced: #8CA9FF;       --sw-synced-tint: rgba(92,128,255,0.14);
  --sw-lag: #E5A13C;          --sw-lag-tint: rgba(229,161,60,0.13);
  --sw-drift: #F08379;        --sw-drift-tint: rgba(240,131,121,0.13);
  --sw-idle: #9FA7B7;         --sw-idle-tint: rgba(159,167,183,0.12);
}
