Multi-Dimensional Theming
Multi-dimensional theming is the practice of layering multiple independent theme axes — brand, light/dark mode, density level, accessibility — and mixing them without forking components or token definitions. A single Design System can render in dozens of combinations: brand-a + dark + compact, brand-b + light + comfortable, each with its own token set.
The math is simple: instead of one set of semantic tokens per theme, you define tokens per dimension and compose them at runtime. If you have 3 brands, 2 modes (light/dark), and 3 densities, you have 18 possible combinations — but you only maintain the building blocks. Tools like Tokens Studio handle the permutation; CSS custom properties and platform equivalents apply them.
Common dimensions:
Brand: Customer variants, white-label, subsidiary brands. Each has its own colour palette and sometimes typography.
Mode: Light, dark, high-contrast, reduced-motion. The same semantic token (color-surface) resolves to different values.
Density: Comfortable (spacious), normal, compact (condensed). Spacing tokens adjust; components stay the same.
Accessibility: Dyslexia-friendly fonts, large text, enhanced contrast. A separate axis from mode.
The temptation is to bake all permutations into the system upfront. Resist it. Start with one or two dimensions (usually brand + mode), then add others as needed. The token architecture has to support composition cleanly — if your naming convention breaks when mixing dimensions, you'll spend more time refactoring than designing.
CSS custom properties excel here because you can set them at any specificity level.
The Design System team manages the token definitions; product teams compose them. Done right, it feels seamless.
Related: Theming · Design tokens · Semantic tokens · Dark mode · CSS custom properties · Multi-brand Design System