Unified page header, neutral palette, and a footer
- Unified every view's header into one element — the title sits in the same place and style on Home, Explorer, Favorites, and Changelog; the eyebrow and descriptive sub-text were dropped for a cleaner read.
- Folded the Explorer search and category filters into that shared header, and removed the sort options — results default to most popular.
- Made page headers line up with the cards at every width, and the changelog header line up with its narrower card column.
- Repainted the whole site in a neutral near-black, with the nav blending into the page.
- Settled on a single amber highlight for active controls (filter pills, the voice gear), keeping the red as a small accent.
- Added a global footer with the license and a GitHub link — it sits below the content, or at the bottom of short pages.
- Gave the light voice pop-up bold labels and trimmed its heading.
Key files
- app/components/ui/PageHeader.tsx — the one shared page header
- app/components/ui/GridAlign.tsx — pins headers to the centered card block
- app/components/Footer.tsx + app/layout.tsx — the global footer and sticky-footer layout
- app/components/BrowseView.tsx — Explorer in the unified layout (filters in header, no sort)
- lib/card-themes.ts — neutral PAGE_THEME background + the HIGHLIGHT accent
- app/components/TypographicVoiceModal.tsx — bold light-mode labels