Changelog (iOS) — 0.8.5

Training Load
Added a new Training Load section using TRIMP values, which are calculated automatically after each activity tracked with Milo.
Displays ATL (Acute Training Load), CTL (Chronic Training Load), and TSB (Training Stress Balance) to help monitor fitness and fatigue.
Includes interactive charts for each metric with explanations, visual warnings when at risk of overtraining, and color-coded guidance.
Updated Charts
Major chart update across the app: elevation, heart rate, and training load visuals all improved.
Unified chart interaction and tooltips for a consistent, smooth UX.
The elevation chart is now visible during live activities on phone when a route is selected, allowing scrubbing to inspect distance and elevation along the route.
Route Tracking
Milo now shows both the selected route and the actual route taken in different colors on maps (watch + phone).
Added a second polyline for live maps so you can see real progress vs. planned route in real time.

Improvements
Added a new permissions check before starting activities:
Refreshed Data tab UI for cleaner presentation and easier navigation.
Broad dark mode fixes for list views and overlays.
Improved Bluetooth reconnection logic — watch now re-establishes connections automatically before a run.
Cleaned up several settings pages for consistency and clarity.
Bug Fixes
Fixed a bug that caused Strava uploads to get stuck.
Fixed Strava route import failures.
Fixed a sync issue that prevented updates after activity processing.
Fixed Google Auth button display for dark mode.
Fixed a bug causing some activities to display “Unknown location.”