Surfaces
№ 01
Elevation as meaning. Every plane keeps its ink readable — audited.
A styling system that speaks in roles
Markup declares what an element is — a card, the primary action, a related stack — and a compiled theme decides what that means in pixels. One OKLCH hue seeds the palette. Relationships derive the spacing. A linter audits the result, in both schemes, before anything ships.
Live renders — not screenshots
№ 01
Elevation as meaning. Every plane keeps its ink readable — audited.
№ 02
One primary per scope. The linter counts, so you don't have to.
№ 03
One ratio derives five sizes — six with the fluid hero above.
№ 04
No pixel values. Siblings are related, separate, or sectioned.
№ 05
Four voices, eight color pairs, every one contrast-checked.
№ 06
This form watches its own width, not the viewport's. Narrow the frame and the row stacks.
№ 07
Metadata at caption scale. Exactly one wears selected.
№ 08
Three inks and a link. Every pair audited on every plane.
A class is either meaningful or it is an error. There is no mt-[13px], so drift has nowhere to live.
Siblings are related, separate, or sectioned. One base and one ratio derive every distance on this page — including these.
Container queries are the responsive model. light-dark() carries both schemes. The palette is OKLCH math. The output is layered.
Because classes carry intent, design review becomes mechanical: duplicate primaries, contrast failures, and typos fail the build — not the user.
Dark mode, density, and a rebrand become theme swaps, not codemods. Change brand: { hue: 264 } and this entire page follows — with its contrast guarantees intact.
# Styling instructions — Intent
1. Class attributes may only contain
Intent roles. Never invent names,
never add inline styles.
2. Spacing comes from stack-* / row-*.
Do not add margins.
3. One action-primary per scope.
npx intent check --json
# fix every "error", re-run to exit 0
FSL-1.1-MIT · full text in the repository · commercial licensing: dataswarmproject@gmail.com