A submenu's close() marked every close it caused as recent, so the 250ms guard meant to stop a trigger's own click reopening a popover the same press just light-dismissed also blocked a deliberate keyboard reopen (Enter/Space right after ArrowLeft) that happened to land within that window. Only a close the browser made on its own now counts toward the guard; close() marks its own hidePopover() call explicit so it never seeds it. Fixes the "opens a submenu with Right, Enter or Space" browser test (plan step 36, actions group). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Qwx5USif3wFFmxtHg5U1g9