With MV3, it's possible to register a content script running in the "MAIN" world. This is more reliable than injecting a script tag.
I'm not entirely sure what the best way to deal with the content script order is. Can we assume that both content scripts will be loaded simultaneously "enough" so that none of the events will be missed?