Vite's "spa" appType adds its own SPA fallback middleware that serves index.html directly, bypassing the custom catch-all route that calls applyUiBranding(). Changing to "custom" lets our route handle HTML serving, which injects the worktree-colored favicon and banner meta tags. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>