:root {
  color-scheme: dark;
  --color-workbench: #0f172a;
  --color-paper: #f8fafc;
  --color-sheet: #64748b;
  --color-cut: #ef4444;
  --color-engrave: #0ea5e9;
  --color-valid: #10b981;
  --color-text: #f8fafc;
  --color-muted: #cbd5e1;
  --color-error: #f87171;
  --color-stale: #fbbf24;
  --font-ui: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-measure: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --grid-unit: 8px;
  --focus-ring: 0 0 0 3px var(--color-workbench), 0 0 0 5px var(--color-engrave);
  --transition-state: opacity 150ms ease;
}
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--color-workbench); color: var(--color-text); font-family: var(--font-ui); }
button, a, input, select { font: inherit; }
:focus-visible { outline: none; box-shadow: var(--focus-ring); }
.mono, [data-measurement] { font-family: var(--font-measure); font-variant-numeric: tabular-nums; }
.panel { border: 1px solid var(--color-sheet); border-radius: 4px; padding: 16px; }
.status { display: inline-flex; align-items: center; gap: 8px; border: 1px solid currentColor; padding: 4px 8px; }
.status[data-state="ready"] { color: var(--color-valid); }
.status[data-state="empty"] { color: var(--color-muted); }
.status[data-state="error"] { color: var(--color-error); }
.status[data-state="stale"] { color: var(--color-stale); }
.status[data-state="running"] { color: var(--color-engrave); }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; } }
@media print { body { background: white; color: #0f172a; } .no-print { display: none !important; } }
