- Theme primary now the iOS brand green (#20A050), fixed app-wide (was tied
to the server's blue primary_color)
- Launcher icon generated from the iOS AppIcon across all densities;
dropped the placeholder adaptive icon
- PasswordField: eye toggle + brief last-character reveal; used on login,
profile and CalDAV password inputs
- Login now surfaces the server's actual error detail (verified the JSON
contract against the live server; a 401 is a genuine credential mismatch)
- CLAUDE.md: correct prod base URL to calendar.scarriffle.com
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>