What to check on focus
The ring is at least 2px, has a 3:1 contrast ratio against what is behind it, and is never conveyed by color alone. Those three numbers are what an audit measures.
Focus is the state that says 'this is where I am'. It is invisible by default in many designs, which makes a keyboard user lose their place. The fix is one rule: never remove the outline without drawing something else.
About 1 min of reading
Prove the ring survives a restyle
Find the removals
Before you run it, say out loud what it will print. Then open the answer.
Add a compliant ring
Before you run it, say out loud what it will print. Then open the answer.
Bump the cache token
Before you run it, say out loud what it will print. Then open the answer.
Tab to the extremes
Before you run it, say out loud what it will print. Then open the answer.
The ring is at least 2px, has a 3:1 contrast ratio against what is behind it, and is never conveyed by color alone. Those three numbers are what an audit measures.
Use :focus-visible for the ring so a mouse click does not draw it. But keep a fallback for browsers or contexts where focus-visible does not match, or the ring disappears for keyboard users.
:focus { outline: none } deletes the only visual cue. If you restyle it, draw a 2px ring with enough contrast against both the background and the element.
A ring drawn with box-shadow is clipped by an ancestor with overflow hidden. Use outline, or ensure the container has room, and check by tabbing to the first and last item.
Tab order is document order. If the visual layout uses flex order or a grid that reorders, the tab path no longer matches the eyes. Keep the source order honest.
Each one is defined here on this site. Open the entry for the full definition and the other words it points at.