Rainbow aims for operational clarity: interfaces should be easy to scan, easy to act on, and consistent across features.
Developer reference: cloud/rainbow/DESIGN.md
This page is intentionally condensed. The full guidance and rationale live in DESIGN.md.
Use typography and spacing to make priority obvious at a glance.
Colors should communicate state, not decoration.
Prefer compact layouts while preserving legibility and rhythm.
Use semantic classes so palette tweaks do not require template rewrites.
_text-heading and _bg-surface.
Common semantic tokens used in templates.
See cloud/rainbow/DESIGN.md for full guidance and rationale.
Review visual consistency before shipping this stage.
The semantic token layer keeps this UI readable while allowing palette changes in one place.
This block demonstrates how error background, text, and border tokens combine.
Use shadows sparingly for functional elevation only. Prefer border-first structure and add shadow only when depth improves hierarchy or interaction clarity.
Hairline lift for subtle separation.
Default small lift for section cards.
Use only for focused/active overlays.
Avoid stacking neutral borders and shadows at every nesting level.