Measured across the app: buttons rendered at 25 heights, 452 of them
at the browser's default 13.33px font, with 19 radii and 22 shadows.
- Controls: 28/32/40 tokens; buttons, inputs and selects default to
32px (the dense-product norm), 28 small, 40 large. Buttons and form
fields inherit the page font.
- Radii: four theme-driven tokens (badge 4, control 6, card 8,
overlay 12). Theme radius now reaches every corner, not ~10%.
- Spacing: every padding/margin/gap is a $space-* token on the 4px
grid, with 2px and 6px half steps; odd values snapped.
- Flat primary button and status dots: no gradient, glow or inner
highlight. Badges are 20px with a 4px radius.
check-geometry rejects the legacy names and ratchets the raw shadows
and control heights that still need a judgment pass.