Mass vouch — “vouch for several at once”, everywhere
The real /vouch + /network surfaces (VouchPageClient · DegreeRows · the one canonical mass-vouch modal), rendered with demo data. Every state asserted for no phone overflow + the 12px font floor. Checks passed: 32/32.
On a phone (390px, device emulation)
mobile: /vouch → “Waiting on you” — the collapsed “Vouch them all back” control at the top (demo person excluded from the count)mobile: opened — each person a checkbox pre-filled to mirror their vouch, Select all/Deselect all, live count, one confirm CTAmobile: one person unchecked — the confirm CTA count follows the selectionmobile: /vouch → “2nd degree” — the collapsed “Vouch for several at once” control above the listmobile: opened — the fresh-vouch flow sets one starting level, then a per-person confirm listmobile: exactly one person in the list → the control is absent (the ≥2 rule)mobile: an empty list → “Nobody here yet”, no controlmobile: /network → “2nd degree” — the same control at the top (browse-only rows below)
On desktop (1280px)
desktop: /vouch → “Waiting on you” — the collapsed “Vouch them all back” control at the top (demo person excluded from the count)desktop: opened — each person a checkbox pre-filled to mirror their vouch, Select all/Deselect all, live count, one confirm CTAdesktop: one person unchecked — the confirm CTA count follows the selectiondesktop: /vouch → “2nd degree” — the collapsed “Vouch for several at once” control above the listdesktop: opened — the fresh-vouch flow sets one starting level, then a per-person confirm listdesktop: exactly one person in the list → the control is absent (the ≥2 rule)desktop: an empty list → “Nobody here yet”, no controldesktop: /network → “2nd degree” — the same control at the top (browse-only rows below)
Automated checks
✓ mobile · waiting-on-you shows mass control
✓ mobile · waiting-on-you collapsed · no h-overflow — scrollW=390 clientW=390
✓ mobile · waiting-on-you collapsed · font ≥12px — min=12px ("Dev ↗")
✓ mobile · vouch-back confirm · no h-overflow — scrollW=390 clientW=390
✓ mobile · vouch-back confirm · font ≥12px — min=12px ("Dev ↗")
✓ mobile · 2nd-degree shows mass control
✓ mobile · 2nd-degree collapsed · no h-overflow — scrollW=390 clientW=390
✓ mobile · 2nd-degree collapsed · font ≥12px — min=12px ("Dev ↗")
✓ mobile · degree modal step 1 · no h-overflow — scrollW=390 clientW=390
✓ mobile · degree modal step 1 · font ≥12px — min=12px ("Dev ↗")
✓ mobile · 1 person → no vouch-back control — count=0
✓ mobile · one-person waiting-on-you · no h-overflow — scrollW=390 clientW=390
✓ mobile · one-person waiting-on-you · font ≥12px — min=12px ("Dev ↗")
✓ mobile · /network 2nd-degree shows mass control — count=1
✓ mobile · network 2nd-degree · no h-overflow — scrollW=390 clientW=390
✓ mobile · network 2nd-degree · font ≥12px — min=12px ("Dev ↗")