/* Design tokens — The Dentist Is In
   Single source of truth. No hard-coded colours or sizes anywhere else. */
:root{
  /* Surfaces — slightly warm, not clinical-cold grey */
  --surface:#FFFFFF;
  --surface-sunken:#F5F7FA;
  --surface-hover:#EEF2F7;
  --surface-raised:#FBFCFE;

  /* Ink — deeper than slate for stronger contrast */
  --ink:#0B1220;
  --ink-secondary:#475569;
  --ink-muted:#8A99AC;

  /* Structure */
  --rule:#E4E9F0;
  --rule-strong:#C9D2DE;

  /* Accent */
  --accent:#1D4ED8;
  --accent-hover:#1E3A8A;
  --accent-subtle:#EEF3FF;
  --accent-border:#BFD0FF;

  /* Status — meanings FIXED, never change between screens */
  --danger:#C62828;  --danger-subtle:#FDECEC;  --danger-border:#F5C2C2;
  --success:#15803D; --success-subtle:#ECFAF0; --success-border:#B7E4C7;
  --warning:#B45309; --warning-subtle:#FFF6E8; --warning-border:#FAD9A5;
  --neutral:#64748B; --neutral-subtle:#F1F4F8; --neutral-border:#DDE3EC;

  /* Type */
  --text-title:22px; --text-section:15px; --text-body:14px;
  --text-dense:13px; --text-large:16px; --text-caption:12px; --text-micro:11px;

  /* Spacing */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px;

  /* Shape */
  --radius-sm:4px; --radius:6px; --radius-lg:8px; --radius-pill:999px;

  /* Tap targets */
  --tap-min:48px; --tap-clinical:56px;

  --shadow-sm:0 1px 2px rgba(11,18,32,.06);
  --shadow:0 2px 8px rgba(11,18,32,.08);
  --shadow-lg:0 12px 32px rgba(11,18,32,.14);
  --font:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Roboto,sans-serif;
}

/* Base reset — present in the styleguide's own <style> block (docs/dental-os-styleguide.html
   lines 57-62) but missed during the original tokens/components copy, since it's neither a
   :root token nor a COMPONENT · block and so fell outside the handoff notes' literal
   copy/delete instruction. Genuinely foundational (box-sizing, body margin, heading/paragraph
   spacing), not STYLEGUIDE CHROME — found via an actual full-height page layout overflowing
   by the browser's default 8px body margin. */
*{box-sizing:border-box}
body{margin:0;font-family:var(--font);font-size:var(--text-body);color:var(--ink);
     background:var(--surface-sunken);-webkit-font-smoothing:antialiased;line-height:1.5}
h1,h2,h3,h4{margin:0;font-weight:650;letter-spacing:-.01em}
p{margin:0 0 var(--s3)}
.num,td.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}
