Both browser tiers are blind to `(hover: hover)` gating, in different ways and without failing: CDP media emulation does not reach ui-test's iframe, and e2e's phone specs reach phone width with setViewportSize, which changes no media feature but width. Written down with what does work — a device-descriptor context — because the next person to gate an affordance this way will otherwise re-derive it, and the tempting conclusion from a green suite is that the gate is covered.