cybereality
The script is in my Canvas Layer GUI, and the menu is a Control node child instanced to open. Seems I have to do more reading on focus (and mouse flags?)
The buttons inside the menu grab focus, and I never realized that could mean all input to other control nodes would be lost (though it makes sense since only one node can have focus). That's probably the case then.
Can I ask to clarify something? If it's one of the buttons inside the menu that has focus, does that mean each button should have the code (they are all instances of a single basic button scene, so that's not the issue, just want to understand) to handle the escape/close because the root of the scene won't ever receive it? The menu root never has focus. Something like the focused button emitting a signal to the menu root?
Sorry, I'm still learning a lot. And it seems something that seems as obvious as 'if -> else' isn't always so clear.

Cunningly, the buttons in question are inside the PlayerMenuButtons VBox. Though I suppose that's pretty obvious.