To fix this, there could be a new `X-Frame-Options`: `compose-over`. The browser rendering context will compose the frame separately, and always place it on the top of the rendering context, above every other element; regardless of the host page element's z-index, opacity, whatever.
It's kind of like how an app cannot draw over system UI; like the permissions dialog.
I'm surprised this is not how X-Frame-Options worked in the first place.