Themes
Light, dark and user preference
Use one semantic theme contract for light, dark, system, print and forced-colour modes, and preserve the visitor's explicit choice.
Approved decision
Application guidance
Theme contract
Components must use semantic theme tokens rather than assuming a light surface. The shared Theme Control records light, dark or system preference without attaching identity.
- Test every stable component in light and dark modes.
- Respect operating-system preference when system mode is selected.
- Keep print and forced-colour output readable without decorative dependence.
Provenance
Evidence source
corporate-identity/docs/UJ_DESIGN_SYSTEM_RESEARCH_2026.md; @uj/design theme contract 1.3.0
