/* ==========================================================================
   Pairchute — design tokens
   Same token family as Parquetbay / DumpReader. These static palettes are
   the no-oklch / no-JS fallback; the generative theme engine overrides every
   token on :root at runtime.
   ========================================================================== */

:root {
  --accent:      #0069c0;
  --accent-deep: #00559c;
  --accent-soft: #e8f0fe;
  --accent-wash: #f3f7ff;
  --on-accent:   #ffffff;

  --ink:       #16233b;
  --ink-soft:  #4a5975;
  --ink-faint: #62708a;
  --paper:     #f6f8fc;
  --card:      #ffffff;
  --line:      #e3e9f4;
  --line-soft: #eef2f9;
  --line-strong: #c9d4e8;
  --head:      #fbfcff;

  --danger:      #c62f2f;
  --danger-soft: #fdeeee;
  --warn:        #9a6b00;
  --warn-soft:   #fff7e0;
  --ok:          #1a7f4b;
  --ok-soft:     #e6f6ec;

  --radius:    10px;
  --radius-sm: 10px;
  --shadow: 0 2px 4px rgba(22, 35, 59, .05), 0 16px 40px -16px rgba(22, 35, 59, .18);
  --shadow-sm: 0 1px 2px rgba(22, 35, 59, .08), 0 4px 12px -6px rgba(22, 35, 59, .14);

  --sans: system-ui, "Segoe UI", sans-serif;
  --mono: ui-monospace, "Cascadia Mono", Consolas, monospace;

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --accent:      #2f6fe4;
    --accent-deep: #4d8dff;
    --accent-soft: #16243f;
    --accent-wash: #101c33;

    --ink:       #e8eefc;
    --ink-soft:  #a9b8d8;
    --ink-faint: #6d84b8;
    --paper:     #0b1220;
    --card:      #121c30;
    --line:      #223252;
    --line-soft: #1a2740;
    --line-strong: #2b3d61;
    --head:      #0e1728;

    --danger:      #ff7a6b;
    --danger-soft: #33171b;
    --warn:        #f5c451;
    --warn-soft:   #2c2410;
    --ok:          #35d07f;
    --ok-soft:     #0e2e1e;

    --shadow: 0 2px 4px rgba(0, 0, 0, .3), 0 16px 40px -16px rgba(0, 0, 0, .5);
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 12px -6px rgba(0, 0, 0, .5);
  }
}

:root[data-theme="light"] {
  --accent: #0069c0; --accent-deep: #00559c; --accent-soft: #e8f0fe; --accent-wash: #f3f7ff;
  --ink: #16233b; --ink-soft: #4a5975; --ink-faint: #62708a;
  --paper: #f6f8fc; --card: #ffffff; --line: #e3e9f4; --line-soft: #eef2f9;
  --line-strong: #c9d4e8; --head: #fbfcff;
  --danger: #c62f2f; --danger-soft: #fdeeee; --warn: #9a6b00; --warn-soft: #fff7e0;
  --ok: #1a7f4b; --ok-soft: #e6f6ec;
  --shadow: 0 2px 4px rgba(22, 35, 59, .05), 0 16px 40px -16px rgba(22, 35, 59, .18);
  --shadow-sm: 0 1px 2px rgba(22, 35, 59, .08), 0 4px 12px -6px rgba(22, 35, 59, .14);
}

:root[data-theme="dark"] {
  --accent: #2f6fe4; --accent-deep: #4d8dff; --accent-soft: #16243f; --accent-wash: #101c33;
  --ink: #e8eefc; --ink-soft: #a9b8d8; --ink-faint: #6d84b8;
  --paper: #0b1220; --card: #121c30; --line: #223252; --line-soft: #1a2740;
  --line-strong: #2b3d61; --head: #0e1728;
  --danger: #ff7a6b; --danger-soft: #33171b; --warn: #f5c451; --warn-soft: #2c2410;
  --ok: #35d07f; --ok-soft: #0e2e1e;
  --shadow: 0 2px 4px rgba(0, 0, 0, .3), 0 16px 40px -16px rgba(0, 0, 0, .5);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 12px -6px rgba(0, 0, 0, .5);
}
