Rich "no GPS data" empty state for the Map tab. Replaces the prior
one-line placeholder with a dashed-icon card, headline, a soft
copy block, and a 2-column mono checklist that lists which signals
the session DOES carry so the user can still find the PIDs worth
charting.
Shown when buildRoutePolyline returns null start / end — i.e.
fewer than two GPS-bearing samples — typically OBD-only captures
where the phone's GPS was off.
Rich "no GPS data" empty state for the Map tab. Replaces the prior one-line placeholder with a dashed-icon card, headline, a soft copy block, and a 2-column mono checklist that lists which signals the session DOES carry so the user can still find the PIDs worth charting.
Shown when
buildRoutePolylinereturns null start / end — i.e. fewer than two GPS-bearing samples — typically OBD-only captures where the phone's GPS was off.