/* CBC design tokens — engineering-drawing language.
   Mirrors the palette used by the CiSMA app next door. */
:root {
  --c-ink:        #252119;
  --c-ink-soft:   #4a403a;
  --c-paper:      #f8f4ee;
  --c-paper-2:    #f2ece2;
  --c-rule:       #5c4e46;
  --c-accent:     #b65a1f;
  --c-accent-dk:  #763510;
  --c-sand:       #e7e8d1;
  --c-sage:       #a7beae;
  --c-ok:         #2f6f46;
  --c-warn:       #8f6a1d;
  --c-err:        #9a2e1f;

  --f-serif:      'IBM Plex Serif', Georgia, serif;
  --f-sans:       'IBM Plex Sans', -apple-system, system-ui, 'Segoe UI',
                  Helvetica, Arial, sans-serif;
  --f-mono:       'IBM Plex Mono', 'Consolas', ui-monospace, monospace;

  --r-sm: 2px;
  --r-md: 4px;

  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 24px;
  --s-6: 32px;
  --s-7: 48px;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: var(--f-sans);
  color: var(--c-ink);
  background: var(--c-paper);
  font-size: 15px;
  line-height: 1.5;
}

a { color: var(--c-accent-dk); text-decoration: none; }
a:hover { text-decoration: underline; }

h1, h2, h3, h4 { font-family: var(--f-serif); color: var(--c-ink); margin: 0; }
h1 { font-size: 32px; font-weight: 600; }
h2 { font-size: 22px; font-weight: 600; margin-top: var(--s-6); }
h3 { font-size: 17px; font-weight: 600; }

code, pre, .mono { font-family: var(--f-mono); }

.label-s {
  font-family: var(--f-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--c-accent-dk);
}
