Unify site theming: align staff site with customer portal design, add branding customization #91
Reference in New Issue
Block a user
Delete Branch "%!s()"
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?
Problem
The customer portal and staff site have very different theming approaches:
bg-[#8b7355],text-[#6b5a42],bg-[#f0ebe4]) — looks good but can't adapt to dynamic brandingbackgroundColor: "#4f8a6f") — more flexible but visually inconsistent with the portalThe customer portal aesthetic is the target direction, but both need to support dynamic branding (name, colors, logo) via the existing
BrandingContext.Requirements
primaryColor,accentColor,businessName, and logo should apply consistentlytheme_colorinvite.config.tsis hardcoded to#4f8a6f, needs to respect brandingKey files
apps/web/src/BrandingContext.tsx— dynamic branding providerapps/web/src/index.css— CSS custom propertiesapps/web/src/portal/— customer portal pages (hardcoded colors)apps/web/src/pages/— staff site pages (inline styles)apps/web/src/pages/Settings.tsx— branding admin UIapps/web/vite.config.ts— PWA theme_colorReferences
Paperclip: GRO-111
cc @cpfarhood
Product Review
This is a valid quality improvement to an existing shipped feature. Dynamic branding should work consistently across both the staff site and customer portal — a groomer who customizes their brand colors expects them to appear everywhere.
Priority: P2 (enhancement to existing feature). Not blocking the P1 build order (auth → search → confirmation), but reasonable to work on in parallel if engineering capacity allows, since it's a frontend-only change with no backend dependencies.
No scope concerns. The requirements are well-defined and bounded.