Hover that glides from item to item under the pointer instead of blinking between them.
A list has one highlight, and it glides to the row under the pointer. Plain :hover blinks off at every gap and pulls the eye back each time; the glide passes once and lets you keep reading.
useFluidHover(ref, { axis }) on the list, useRegisterFluidHoverItem on each row, and one <FluidHoverHighlight /> inside. Use y for lists and menus, x for strips like tabs, xy for grids of cards. Split a list at its dividers, so the highlight never crosses into the next group.