- Navbar: remove theme switcher, clean nav icons (no text labels),
active state is accent dot underline + icon color — no pill bg
- useTheme: drop 'system' from stored type; first visit = auto
by system preference, stays unset until user explicitly clicks
- ThemeBubble: fixed bottom-right pill with Sun/Moon icon + label,
hover lift, click toggles light ↔ dark and persists to localStorage
- App.tsx: render ThemeBubble inside ThemeProvider
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- button.tsx: primary gets gradient + shadow + hover glow + -translate-y-px
lift; outline gets border-2 for visibility on dark bg; all variants
get active:scale-[0.96] press feel; lg size h-12 for auth forms
- Remove hardcoded bg-[var(--accent)] overrides from Login, Register,
Feed, Profile, Upload — variants now handle all coloring
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- CSS: refined shadows with border ring, dark bg #0A0A0A, larger card
radius (16/22px), modal-backdrop blur, scrollbar styling, new
dropzone + profile-grid CSS classes
- Navbar: paw emoji logo, labels under icons, accent gradient bar,
active-state ring on avatar
- Login / Register: auth card with decorative background blobs,
form wrapped in card, cleaner spacing
- CatModal: two-column layout on desktop (photo left, info right),
modal-backdrop blur, comment input with user avatar, like label
- ProfilePage: 88px avatar with camera overlay, inline stat bar with
icons, grid section divider, Stat helper component
- CatCard: points badge in header (amber), caption text secondary
color, ring on avatar
- FeedSidebar: color-coded rank badges, hover rows, star icon
- UploadPage: new dropzone-idle/dropzone-active CSS classes,
filename chip on preview, UserAvatar in caption row, HEIC/AVIF in
accepted formats hint, 500-char counter
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>