design language · 10

accessibility.

beauty that stays usable has a floor, and the floor is AA.

the contrast matrix

every text tier against every surface, in each theme.

computing from the live tokens…

ink and muted clear 4.5:1 on every surface. faint does not, on purpose: it is decorative, and marked so. surfaces with a dedicated text role, like a code well, are checked as the pair they ship as: on-sunken on sunken, not ink.

three covenants

the text tier rule

ink and muted are the only roles a fact may be written in, because they are the only two that clear AA on every surface. faint is decorative and never the sole carrier of anything.

the ring stays

the focus ring is never removed, only restyled. every interactive thing shows where the keyboard is, and it shows it in the theme's own accent, not a browser default.

motion asks first

every reveal, every atmosphere, every sula field checks prefers-reduced-motion and holds still when asked. the still frame is composed on purpose, not a broken version of the moving one.