Health Card — Mobility Modality

Mobility Tooltip

Three static tooltip states — no hero (current data), duration hero (future), header only (minimal)

Variant A — No Hero

locked · location body / no duration hero

[WIREFRAME] Static — current data: duration_min = NULL, location present. Notes excluded.

Location — truncated label

MOBILITY
ATAscent Orange St

Location — verbose string (ellipsis behavior)

MOBILITY
ATAscent Orange St (post-climb)

Variant B — Duration Hero

future state · hero number / AT row

[WIREFRAME] Static — shows behavior when duration_min is logged. Not in current DB.

Duration + location

MOBILITY18 min
ATAscent Orange St

Duration only — no body, no hairline

MOBILITY25 min

Variant C — Header Only

minimal state · no data fields

[WIREFRAME] Static — tooltip renders as presence confirmation when all optional fields absent.

No duration, no location — label only

MOBILITY

Degradation matrix

location, no duration (current)header MOBILITY · hairline · AT row
duration + location (future)header MOBILITY + hero · hairline · AT row
duration, no locationheader MOBILITY + hero · no hairline, no body
no fields at allheader MOBILITY only · no hairline, no body
no data (cell = zero)tooltip suppressed entirely — cell is empty
notes fieldnever surfaced — excluded from display contract
exercise count from notesnever parsed — notes are a journal, not metrics

Accent — mobility vs other modalities

MOBILITY#a8c5b4sage · recovery
WALK#fde68awarm yellow · casual
BIKE#0a9396teal · N1
LIFT#f59e0bamber · strength

/health-mobility-tooltip-lab

2026-05-29