/* QCRM design tokens — "Quantum Ledger". Light is the default; dark via [data-theme="dark"]. */
@import url("https://fonts.googleapis.com/css2?family=Golos+Text:wght@400;500;600;700&family=Noto+Sans+Armenian:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");

:root,
[data-theme="light"] {
  --font-ui: "Golos Text", "Noto Sans Armenian", system-ui, sans-serif;
  --font-hy: "Noto Sans Armenian", "Golos Text", system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, monospace;

  --bg: oklch(0.982 0.004 85);
  --surface: oklch(0.997 0.002 85);
  --surface-2: oklch(0.962 0.005 85);
  --surface-3: oklch(0.935 0.006 85);
  --line: oklch(0.905 0.006 85);
  --line-strong: oklch(0.84 0.008 85);
  --text: oklch(0.22 0.012 275);
  --text-2: oklch(0.42 0.012 275);
  --muted: oklch(0.54 0.01 275);
  --accent: oklch(0.5 0.19 278);
  --accent-hover: oklch(0.45 0.19 278);
  --accent-ink: oklch(0.99 0.005 278);
  --accent-soft: oklch(0.95 0.03 278);
  --accent-line: oklch(0.85 0.07 278);
  --ok: oklch(0.52 0.13 155);
  --ok-soft: oklch(0.95 0.04 155);
  --warn: oklch(0.58 0.13 70);
  --warn-soft: oklch(0.96 0.05 80);
  --danger: oklch(0.53 0.19 25);
  --danger-soft: oklch(0.96 0.03 25);
  --platform: oklch(0.55 0.14 50);
  --platform-soft: oklch(0.95 0.04 60);
  --shadow-1: 0 1px 2px oklch(0.2 0.02 275 / 0.06), 0 1px 1px oklch(0.2 0.02 275 / 0.04);
  --shadow-2: 0 8px 24px oklch(0.2 0.02 275 / 0.08), 0 2px 6px oklch(0.2 0.02 275 / 0.05);
  --shadow-3: 0 24px 64px oklch(0.2 0.02 275 / 0.16), 0 4px 12px oklch(0.2 0.02 275 / 0.06);
  --scrim: oklch(0.2 0.02 275 / 0.36);

  /* stage colours: same lightness/chroma, varying hue */
  --st-1: oklch(0.6 0.12 250);
  --st-2: oklch(0.6 0.12 200);
  --st-3: oklch(0.6 0.12 300);
  --st-4: oklch(0.62 0.12 75);
  --st-5: oklch(0.58 0.12 155);
  --st-6: oklch(0.58 0.14 25);

  /* chart series (categorical, fixed order; validated for colour-blind separation, light surface) */
  --viz-1: #2a78d6; --viz-2: #eb6834; --viz-3: #1baf7a; --viz-4: #eda100;
  --viz-5: #e87ba4; --viz-6: #008300; --viz-7: #6250d6; --viz-8: #e34948;
  --r-1: 6px;
  --r-2: 10px;
  --r-3: 14px;
  --r-4: 20px;
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 20px;
  --s-6: 24px;
  --s-8: 32px;
  --s-10: 40px;
  --fs-xs: 12px;
  --fs-s: 13px;
  --fs-m: 14px;
  --fs-l: 16px;
  --fs-xl: 20px;
  --fs-2xl: 26px;
  --fs-3xl: 34px;
  --ease: cubic-bezier(0.2, 0.7, 0.2, 1);
  --t-fast: 120ms;
  --t-med: 220ms;
  --tap: 44px;
  /* document preview paper (generate_document): stays light in both themes */
  --paper: oklch(0.995 0.002 85);
  --paper-ink: oklch(0.22 0.012 275);
  --paper-line: oklch(0.86 0.006 85);
}

[data-theme="dark"] {
  --bg: oklch(0.165 0.008 275);
  --surface: oklch(0.2 0.009 275);
  --surface-2: oklch(0.235 0.01 275);
  --surface-3: oklch(0.27 0.011 275);
  --line: oklch(0.29 0.01 275);
  --line-strong: oklch(0.36 0.012 275);
  --text: oklch(0.95 0.005 85);
  --text-2: oklch(0.8 0.008 275);
  --muted: oklch(0.67 0.01 275);
  --accent: oklch(0.7 0.15 278);
  --accent-hover: oklch(0.76 0.13 278);
  --accent-ink: oklch(0.18 0.03 278);
  --accent-soft: oklch(0.29 0.06 278);
  --accent-line: oklch(0.45 0.1 278);
  --ok: oklch(0.74 0.13 155);
  --ok-soft: oklch(0.28 0.05 155);
  --warn: oklch(0.8 0.12 80);
  --warn-soft: oklch(0.3 0.05 80);
  --danger: oklch(0.72 0.15 25);
  --danger-soft: oklch(0.3 0.06 25);
  --platform: oklch(0.76 0.12 60);
  --platform-soft: oklch(0.3 0.05 60);
  --shadow-1: 0 1px 2px oklch(0 0 0 / 0.3);
  --shadow-2: 0 8px 24px oklch(0 0 0 / 0.35);
  --shadow-3: 0 24px 64px oklch(0 0 0 / 0.5);
  --scrim: oklch(0 0 0 / 0.55);
  --st-1: oklch(0.72 0.11 250);
  --st-2: oklch(0.72 0.11 200);
  --st-3: oklch(0.72 0.11 300);
  --st-4: oklch(0.76 0.11 75);
  --st-5: oklch(0.72 0.11 155);
  --st-6: oklch(0.7 0.13 25);
  /* chart series stepped for the dark surface */
  --viz-1: #3987e5; --viz-2: #d95926; --viz-3: #199e70; --viz-4: #c98500;
  --viz-5: #d55181; --viz-6: #008300; --viz-7: #9085e9; --viz-8: #e66767;
  --paper: oklch(0.94 0.004 85);
  --paper-ink: oklch(0.2 0.012 275);
  --paper-line: oklch(0.8 0.006 85);
}
