get_schedule_for_date, show_items_for_deletion, and send_reminders were
querying events with Event.date == date_str, which only matches one-off
events or a recurring event's anchor date. Recurring events on later
occurrences (and any per-date exception overrides) were silently
skipped, so /today could show just one event when several were
scheduled. Switched all three to materialize_events, already used by
the web frontends, which correctly expands recurring events.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Admins can now pick a color per event from a Catppuccin Mocha palette;
existing events default to blue. Colors flow through to both the admin
timeline and the new "Неделя" tab in the user view, which reuses the
admin's weekly grid in a read-only mode. Also reworks event blocks to
show a single-line "start–end title" so short events no longer overflow,
tidies the admin toolbar, and expands mobile responsiveness across both
frontends.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>