Every token choice — a radius, a typeface, a color temperature — communicates something before the user reads a word. This repo maps those signals across 9 profiles, and shows what happens when they conflict.
Users feel a design before they read it.
That feeling lives in your tokens.
border-radius: 0 votes for precision.
border-radius: 24px votes for warmth.
font-family: Georgia votes for editorial tradition.
None of these are wrong in isolation. But when tokens vote against each other — a cold accent on a warm background, a rigid radius paired with a friendly typeface — the interface fights itself. Users feel the contradiction even when they can't name it.
"Something feels off" isn't a layout problem or a component problem. It's a token problem — visible in the variables before a single element is built.
This makes tokens the earliest possible intervention point. Catching a signal conflict at the token layer is cleaner and cheaper than discovering it in production. The dissonance is already there in the :root.
Nine profiles. One HTML structure. Every demo is identical underneath — same layout, same content hierarchy, same components.
Only the tokens change. But "only the tokens" turns out to mean: the implied audience, the emotional register, the level of formality, and the trust signals of the entire product. Token coherence is brand coherence.