Styles
The decisions underneath every component. Follow them in your own markup and it will match.
- Colour: a neutral core, a primary from the pack, and contrast enforced by the build.
- Typography: system fonts, 16px body, a scale that stays readable on a small phone.
- Spacing and layout: a 4px scale, 48px targets, one column of text.
- Images: how heavy each kind may be, which format, and how to send each screen the size it needs.
- Language and script: diacritics, lang attributes, right-to-left.
- Tokens: every custom property, with its value and what it is for.
The five rules
- Links are always underlined. Colour alone is not a signal.
- Focus is a double ring, yellow inside and ink outside, visible on any background.
- Nothing interactive is under 48px tall. Thumbs on cheap phones are the test.
- Meaning never depends on colour. Alerts have titles, errors have text, badges have words.
- Everything works without JavaScript. The script only improves what already works.