LC-566: six-palette theme system foundation (redesign P1) #528
Loading…
Reference in a new issue
No description provided.
Delete branch "docs/LC-541-redesign-p1-foundation"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Phase 1 (Foundation) of the Let's Chat UI/UX redesign (umbrella LC-541, this phase LC-566): a six-palette theme system on an orthogonal
data-theme(palette) +data-mode(light/dark/hc-light/hc-dark) model, with a live appearance picker. No product surface is redesigned in P1; the default look (Blue Harbor) is unchanged and existing users keep their theme with zero data transform.What changed
users.themetousers.theme_modeand addusers.theme_palette(migration 0037); existing values map straight across, palette defaults to blue-harbor.data-theme= palette (blue-harbor default plus cobalt, ink-ice, arctic, deep-sea, royal-navy),data-mode= light/dark/hc-light/hc-dark. Tailwind darkMode keyed on[data-mode$="dark"].main.csssplit into a palette-constant layer (status + actor-badge, keyed by mode) and a palette-varying layer (surface/content/border/accent/ring/rail/sidebar, keyed by palette x mode) = 24 blocks. Status and actor-badge colors stay palette-independent.base.htmlresolves palette and mode before paint; adds__lcSetPalette/__lcSetMode; keeps the sidebar quick-toggle, density, and sidebar-collapse bootstraps.lc-mode/lc-palette) in the locale middleware; routespost_appearance(mode + palette + density) andpost_palette(fire-and-forget from the picker); the sidebar quick-toggle writeslc-mode./dev/theme-gallery(release-gated to 404) renders all 24 combos; a WCAG contrast script (server/scripts/contrast-check.mjs) verifies AAA for every high-contrast block and AA for every light/dark block..lc-tablefamily; conservative radius and card-shadow retune.Verification (automated, all green)
just check(both feature sets, clippy-D warnings, fmt) clean;just test1456 passed / 0 failed / 1 ignored.Needs manual (browser) verification before merge
Design docs
docs/superpowers/specs/2026-07-09-lets-chat-redesign-p1-foundation-design.mddocs/superpowers/plans/2026-07-09-lets-chat-redesign-p1-foundation.mdTracked as LC-566 (relates LC-541). Later phases (P2 core chat pixel-match, P3 utility-page migration, P4 remaining-surface sweep, P5 public/brand, P6 accessibility regression) get their own specs and PRs.