/* On-call rota — design tokens. Drop in as-is; set data-theme="light|dark" on <html>.
   Default to the OS preference, let the user override and persist in localStorage. */
:root, [data-theme=light]{
  color-scheme:light;
  --bg:#f3f5f7; --surface:#fff; --surface-2:#eceff3; --surface-3:#e2e7ec;
  --line:#d3dae1; --line-2:#b3bec9;
  --text:#121c24; --text-2:#45525e; --text-3:#5f6c78;
  --primary:#1f4b6e; --on-primary:#fff; --link:#1f5f95;
  --slate:#5c7085; --slate-2:#34485b; --slate-bg:#e4eaf0; --overlap:#34485b;
  --draft:#2563d9; --draft-bg:#e2ebfc; --draft-text:#1b4fb5;
  --warn:#d99a0b; --warn-bg:#fdf3dc; --warn-text:#7a4f00; --warn-line:#e7b443;
  --danger:#c8362a; --danger-bg:#fce9e7; --danger-text:#9d2318; --danger-line:#eea49c;
  --now-line:#d9540b;
  --focus:#2563d9;
  --shadow:0 1px 2px rgba(16,24,32,.06),0 4px 16px rgba(16,24,32,.06);
  --scrim:rgba(18,28,36,.45);
}
[data-theme=dark]{
  color-scheme:dark;
  --bg:#11171c; --surface:#182027; --surface-2:#1f2930; --surface-3:#28343d;
  --line:#2c3843; --line-2:#40505d;
  --text:#e4eaef; --text-2:#a7b4bf; --text-3:#8b99a5;
  --primary:#a9c4da; --on-primary:#0d1821; --link:#8fbbe0;
  --slate:#7f95a9; --slate-2:#b5c7d8; --slate-bg:#24313c; --overlap:#4f657a;
  --draft:#5c95ff; --draft-bg:#152846; --draft-text:#9cbfff;
  --warn:#e9a920; --warn-bg:#2e2410; --warn-text:#f3c45e; --warn-line:#8a6516;
  --danger:#ff6a5c; --danger-bg:#381917; --danger-text:#ff9b90; --danger-line:#7a2f28;
  --now-line:#ff8a4c;
  --focus:#7fb0ff;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 6px 20px rgba(0,0,0,.25);
  --scrim:rgba(0,0,0,.6);
}
:root{
  --font:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --fs-display:36px; --fs-h1:28px; --fs-h2:18px; --fs-body:16px; --fs-body-desk:14px; --fs-small:13px; --fs-label:12px;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:20px; --s6:24px; --s7:32px;
  --r-bar:6px; --r-ctl:8px; --r-card:12px; --r-card-m:14px; --r-sheet:18px;
  --tap:44px; --tap-primary:48px; --ctl-desk:36px;
  --stripe-warn:repeating-linear-gradient(135deg,var(--warn) 0 4px,var(--warn-bg) 4px 8px);
  --stripe-danger:repeating-linear-gradient(135deg,var(--danger) 0 4px,var(--danger-bg) 4px 8px);
}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-body);line-height:1.4}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.num,time{font-variant-numeric:tabular-nums}
