* feat(theme): visual theme system with presets, custom themes, and AI tools
Runtime theming engine with 10 preset palettes, user custom themes
persisted to D1, animated circle-reveal transitions via View Transition
API, and AI agent tools for generating/editing themes incrementally.
- Theme library: types, presets, CSS injection, font loading, animation
- Theme provider with localStorage cache for instant load (no FOUC)
- Server actions for theme CRUD and user preference persistence
- Agent tools: listThemes, setTheme, generateTheme, editTheme
- Appearance tab extracted from settings modal
- Migration 0015: custom_themes + user_theme_preference tables
- Developer documentation in docs/theme-system.md
* fix(db): make migration 0016 idempotent
tables were already created as 0015 before renumber.
use IF NOT EXISTS so the migration is safe to re-run.
---------
Co-authored-by: Nicholai <nicholaivogelfilms@gmail.com>