The detail body — one chrome, twelve surfaces

structured header everywhere, heroes removed, brand-run checkpoints

25 Aug 2026 · branch feat/detail-body-v2 · captured against propflow-stage · at bc685d1439+local

Data note. Every name and balance below comes from propflow-stage, which is anonymized by construction (ADR-0097/0110 — phones in the impossible +1000 NPA, emails @example.test). The identical capture against prod would carry real tenants' names and balances and is not safe to attach anywhere, which is why the generator refuses to run against one.

1 · Renewal — the big banner is gone

The page the owner named. The gradient hero (radial glows, ping-pulsing pill, AuroraText) is replaced by the standard header: name, lease line, ONE static status pill beside the title. The amber ineligibility notice — when present — rides the banner slot; the stats are ordinary cards; the progress rail rides the brand run.

Asserted in the captured DOMBack to Renewals

Renewal — the big banner is gone

2 · Turnover — the second hero, also gone

TurnoverHero's violet/cyan glow banner is replaced by the structured header + status pill; the lifecycle Stepper rides the brand run — each completed checkpoint on its stop of the violet → sky run, connectors blending between stops.

Asserted in the captured DOMBack to Unit Turnovers

Turnover — the second hero, also gone

3 · Work order — banner tokenized, checkpoints on the run

The liked structure, standardized: structured header (title, WO reference subtitle, sync stamp + kebab right-aligned), the turnover strip on semantic tokens instead of hardcoded orange hex, and the Progress stepper on the brand run.

Asserted in the captured DOMBack to Work Orders

Work order — banner tokenized, checkpoints on the run

4 · Prospect — the reference page joins its own standard

The stage pill moves from the right edge to beside the title — the accessory position every page now shares.

Asserted in the captured DOMBack to Prospects · Activity Log

Prospect — the reference page joins its own standard

5 · Tenant · unit · vendor — the quiet adopters

Structured header with the property · unit subtitle; the conditional Archived pill would sit beside the title. Unit and vendor take the same shape (unit's status strip is the sanctioned banner).

Asserted in the captured DOMBack to Tenants · Summary

Tenant · unit · vendor — the quiet adopters

6 · Property — the hub comes inside

Previously hand-rolled; now hosted: back, upload banner, structured header and the hub sections all through the one component — same order, standard chrome, one loading voice instead of two.

Asserted in the captured DOMBack to Properties

Property — the hub comes inside

7 · Conversation — narrow, hosted, dock untouched

The narrow reader hosts through the standard (variant narrow): host-owned back in the standard slot, caller name + phone through the structured header, ⋮ in the actions position. The dock rendering is byte-identical via the embedded mode.

Asserted in the captured DOMBack

Conversation — narrow, hosted, dock untouched

8 · Demand builder — the label joins the convention

Hosted narrow; the back affordance reads "Back to Collections" — the last stray label on the detail surfaces.

Asserted in the captured DOMBack to Collections

Demand builder — the label joins the convention

9 · Dark mode — the calm holds

The renewal page in dark: tokens everywhere, no gradient grounds, the brand-run rail reading over the dark card.

Asserted in the captured DOMBack to Renewals

Dark mode — the calm holds

What standardized

One header geometry (back / title+subtitle / accessory pill / right-aligned actions) across twelve surfaces; two gradient heroes removed with their facts relocated; one banner species (semantic strips); one progress vocabulary (the brand run for journeys, semantic for failure); two width variants under one host. Compare with the before-state at detail-pages-inventory.

PropFlow Docs