The label that vanished when the wrapper became visible
A search field was labelled by reference to another element, and it worked. Somebody then made the surrounding wrapper visible — a purely visual change, no markup moved — and the field lost its name entirely.
The team wrote up what they had learned. Six rules went onto the accessibility guide. Four of them are false, and each false one is a rule somebody currently relies on.
Boundaries, outermost first: The accessibility guide: title names it (for an icon button), References chain (A to B to C), Clipped text counts (the sr-only pattern), opacity: 0 hides it (from the computation), Hidden text counts (in every reference), labelledby wins (over aria-label) Outside every boundary: Search field (labelled by reference; FAILED: no name) This diagram draws no connections between its components.