[ ] The KPI row (src/web/studio/kpi_row.ts) wraps its tiles. The row allows wrapping, and each tile can shrink (min-width: 0), through existing §5 utilities or a class named in docs/design/areas/home.md.
[ ] A tile whose value has six digits (e.g. $123,456.78) keeps the value on one line and the label wraps under it.
[ ] A server-render test asserts the row's wrapping class is present and that a six-digit value renders inside the tile. It fails on main.
[ ] bun scripts/design-lint.ts passes.
Risk: a layout shift when tiles reflow. The row keeps a fixed tile height.
Part of closed pull #6032, re-scoped.
Done when:
min-width: 0), through existing §5 utilities or a class named in docs/design/areas/home.md.$123,456.78) keeps the value on one line and the label wraps under it.bun scripts/design-lint.tspasses.Risk: a layout shift when tiles reflow. The row keeps a fixed tile height.