Six tasks: remove dead Backfill/IncrementalSync wrappers, add ActivitiesMissingWorkout/CountActivitiesMissingWorkout, split FillPendingDetails into phase-aware activities/workouts passes, reshape GET /api/sync/status, add SyncModal, wire it into GarminConnection.tsx.