Unit Tests / test (push) Successful in 5s
## Summary Closes #32. - Keep an event on Upcoming until its end date is over. If `end_time` is set, it drops off once that time passes on the end date, so an in-progress multi-day event stays visible. - Render the Past tab from `past_events` instead of `future_events`. - Show the start–end date range when the dates differ. ## Test plan - [ ] Multi-day event that started yesterday and ends tomorrow appears under Upcoming - [ ] Event whose end time has already passed appears under Past - [ ] Future single-day event still appears under Upcoming - [ ] Past tab lists finished events only - [ ] `uv run python manage.py test schasite.tests.CalendarEventTests` Reviewed-on: #33