The admissions card measured 1503px on a live school page — half the height
of every section put together, and nearly three times the next largest — with
its default view rendering as four tiles adrift in about 1080px of blank card.
The cause was a layout trick meeting content it was never sized for. The
admissions views are stacked in one grid cell so switching them never shifts
layout, and the hidden ones keep their box: only visibility is dropped. That
works while the views are comparable. The distance view added in #102 carries
a chart, a table and a map, came to 1402px against the tile grid's 316px, and
pinned every other view to its height — including the one that renders by
default, which nobody had clicked.
Rather than only unpinning it, the detail moves out. Every other topic on the
page is a section with a nav entry, and "how close did we need to live, and
would we have got in?" is a topic, not a variant reading of the intake
figures. The headline number stays on the Admissions tile where the intake
story is; the record behind it now lives in a Distance section directly below.
admissions 1503px -> 554px
distance new -> 743px (median section on the page is ~528px)
Three further changes, each of which also makes the content better rather
than only shorter:
* The map renders on request. Before a postcode is entered it is a circle
drawn round a school, and it costs a Leaflet bundle and 240px to say so;
a successful check opens it automatically, which is the point at which it
starts answering something. Map height 320px -> 240px.
* The chart appears only at the four published years that let the summary
state a direction. Below that we already refuse to call the series a
trend, and a line through three points asserts one regardless of what the
sentence beneath it admits. The table carries those years anyway, with
the reasons a line cannot show.
* Three caveat paragraphs become one. They said walking-route twice and
made the same point about priorities in two voices. It now sits in
CutoffDistanceDetail rather than inside the check, so it still renders
for a school with coordinates missing, where there is a table but no map
and no check.
The new e2e guard asserts no section exceeds 2.5x the median section height.
Measuring the card's internals cannot catch this: the tile grid is flex: 1,
so it absorbs the stretch and every box still looks full. The first version
of this test targeted an arbitrary primary, passed against the live bug, and
proved nothing; pointed at a school that actually holds cut-off history it
fails on staging with "#admissions is 1459px against a 526px median".
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WDvkyqqHABm4bmth2kjAxE