Governance notes moved off the reference page (#182) · ← token reference
Original audit checked every padding/margin/gap/size in main.css against the 2px grid; snap I landed in d3526f4, snap II resolved chip paddings and light-theme contrast. Odd steps on the ladder stay amber: they are optical/target exceptions, not leftover bugs. A 2026-10-14 recount of padding/margin/gap is ~89.5% even. Do not snap the rows below.
| Finding | Where | Status / suggestion |
|---|---|---|
| chip/badge paddings 0 5px → 0 4px, 3px 9px → 3px 8px | go-down badge, pin-tray count, toast chips, lc-queue chip | resolved — snap II |
| msg media margins ±5px | msg-image, msg-video, msg-audio | exception — half of the bubble's 10px padding, geometric half-bleed |
| bubble 7px 10px 6px · composer-input 13px · btn-primary 11px vertical | bubble, composer, primary buttons | exception — optical centering / 48px target; keep |
| 1 / 3 / 13 / 15px micro-values | bot-chip 1.5px 4px, toast-close, meta gaps 3px, service-msg 3px, composer 13, one 15px | exception — micro-typography below the grid |
| svg icon heights 13/14/16/17/20/22/26 | all icon rules | resolved — --ico-1..5 tokens (14/16/20/22/26): 13→14, 17→16, 18→20, 12→14. Global svg fallback stays 24; display graphics (30/56/168/280) and controls (checkboxes, count badge) deliberately not tokenized |
| radii: pin-tray-count 9px | 18px-tall count bubble | exception — half-height circle (renders as 50%) |
| light theme contrast pass | html[data-theme="light"] | resolved — --text-dim #656a76→#5d626d (5.04 AA), --green #3d9146→#2a7032 (5.51 AA), --danger →#bf2a2a (5.33 AA); --accent-2 stays 3.40 UI-grade; raw --accent 3.01 accepted UI-only — accent text uses --accent-text. Numbers now computed in the pair table above. |
The token cards and the contrast pair table are generated — see the stamp on the reference page; regenerate with node tools/gen-design-tokens.mjs in the app repo, where a test fails on stale output.