1.7 KiB
1.7 KiB
Shared Palette Audit (Kiri / Mesh / Void)
Goal
Define a shared semantic color system in web/moto/palette.css and migrate each app incrementally with low risk.
Phase 1 Delivered
- Added shared file:
web/moto/palette.css - Added semantic tokens for
lightanddarkthemes:--color-bg,--color-surface,--color-text,--color-border,--color-accent, etc
- Added compatibility aliases (bridge variables) for Mesh/Void existing CSS vars.
- Wired palette stylesheet into:
web/kiri/index.htmlweb/mesh/index.htmlweb/void/index.html
- Added root attributes:
- Kiri:
data-app="kiri"and earlydata-theme="light|dark"set in head script - Mesh:
data-app="mesh" data-theme="dark" - Void:
data-app="void" data-theme="dark"
- Kiri:
Naming Recommendation (semantic first)
- Surfaces:
--color-bg,--color-bg-elev,--color-bg-subtle--color-surface,--color-surface-2
- Content:
--color-text,--color-text-muted--color-border,--color-border-strong
- Interaction:
--color-accent,--color-accent-hover,--color-focus--color-selection,--color-selection-hover
- Status:
--color-success,--color-warning,--color-danger
Step-wise Migration Plan
- Convert top-level containers/menus/panels in each app to semantic tokens only.
- Convert controls/interactions (hover/focus/selected) to semantic tokens.
- Convert specialty overlays (grids, badges, debug panes) last.
- Remove legacy per-app aliases once selectors are migrated.
Validation Checklist Per Step
- Kiri light unchanged
- Kiri dark unchanged
- Mesh dark unchanged
- Void dark unchanged
- Contrast and hover/focus states still readable