/* Theme system — colour, spacing and type-scale foundations.
 *
 * Copied VERBATIM from docs/design/CRM.dc.html (lines 13-49, the design's
 * <style> block: the three :root variants plus the base rules that use
 * them). Do not re-derive these values — the design file is the authority;
 * if a colour looks wrong, fix the design file's own build, not this copy.
 *
 * Three themes, selected by [data-theme] on <html> (see app.js setTheme()):
 *   (none) / "grey" — the default, :root with no attribute
 *   "paper"          — :root[data-theme="paper"]
 *   "console"        — :root[data-theme="console"]
 * Each variant only overrides what differs from the default; unset vars
 * (e.g. --never/--due/... in "paper") fall through to the default block.
 */
:root{
  --bg:oklch(0.97 0.003 250); --pane:oklch(1 0 0); --pane2:oklch(0.985 0.003 250);
  --line:oklch(0.90 0.005 250); --line2:oklch(0.94 0.004 250);
  --fg:oklch(0.24 0.01 250); --fg2:oklch(0.50 0.012 250); --fg3:oklch(0.63 0.012 250);
  --accent:oklch(0.52 0.13 250); --accent-bg:oklch(0.95 0.03 250);
  --never:oklch(0.60 0.02 250); --due:oklch(0.56 0.19 25); --await:oklch(0.66 0.14 75);
  --interested:oklch(0.55 0.13 155); --recent:oklch(0.63 0.06 230); --closed:oklch(0.68 0.01 250);
  --map:oklch(0.945 0.006 230); --shadow:0 1px 2px oklch(0.2 0.02 250 / .10), 0 8px 24px oklch(0.2 0.02 250 / .08);
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
}
:root[data-theme="paper"]{
  --bg:oklch(0.955 0.012 85); --pane:oklch(0.985 0.008 85); --pane2:oklch(0.972 0.010 85);
  --line:oklch(0.885 0.014 80); --line2:oklch(0.925 0.012 80);
  --fg:oklch(0.26 0.015 70); --fg2:oklch(0.50 0.018 70); --fg3:oklch(0.63 0.016 70);
  --accent:oklch(0.50 0.10 45); --accent-bg:oklch(0.94 0.03 60);
  --map:oklch(0.93 0.015 85);
}
:root[data-theme="console"]{
  --bg:oklch(0.19 0.012 255); --pane:oklch(0.235 0.014 255); --pane2:oklch(0.215 0.013 255);
  --line:oklch(0.32 0.018 255); --line2:oklch(0.28 0.016 255);
  --fg:oklch(0.94 0.008 250); --fg2:oklch(0.74 0.014 250); --fg3:oklch(0.60 0.016 250);
  --accent:oklch(0.72 0.14 235); --accent-bg:oklch(0.30 0.05 240);
  --never:oklch(0.62 0.02 250); --due:oklch(0.68 0.18 25); --await:oklch(0.79 0.15 80);
  --interested:oklch(0.74 0.15 155); --recent:oklch(0.70 0.08 230); --closed:oklch(0.48 0.01 250);
  --map:oklch(0.215 0.013 255);
  --shadow:0 1px 2px oklch(0 0 0 / .4), 0 10px 30px oklch(0 0 0 / .35);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
input,select,textarea,button{font:inherit;color:inherit}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:var(--line);border-radius:6px;border:3px solid transparent;background-clip:content-box}
