Use expandedCalendarHeightPx to preserve full height during collapse animation,
and compute cardTopPx based on collapse state instead of offset arithmetic.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
ViewModel now exposes onDrag/onDragEnd so BottomCard drives the
collapse animation via detectVerticalDragGestures instead of a
discrete collapse() call. Drag maps to 0–1 progress over 200dp;
on release the animatable snaps to the nearest end with spring.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Add isCollapsed/collapseProgress state to CalendarViewModel for toggling
between month and week views. CalendarMonthPage animates non-selected
weeks out with offset and alpha. Introduce WeekPager for single-week
HorizontalPager and BottomCard with drag-to-collapse gesture.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Remove foojay-resolver-convention plugin to avoid downloading JDK from
foojay.io. Simplify gradle-daemon-jvm.properties to only specify
toolchainVersion=21. Upgrade JVM target from 11 to 17 in composeApp.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>