Love this, and if I had 50 sMerits to give you I would. Reviewed the code, installed, works perfectly. Much better solution than the quick one I came up with given the queuing function.
Don't like your color scheme or position of the buttons, but that's easily fixed. Thank so much for taking the time to extract and share. I'll play around with it for a few days and let you know if I stumble across any issues.
You can change the colors in the CSS file obviously. I put the buttons on the bottom left so that there is no chance to accidentally confuse them with any other buttons like Edit or Report to moderator but you can inject them anywhere you like.
Edit: I should mention that queuing has certain limitations. "let PROMISE_TIMEOUT = 120000;" near the top of bct-background.js basically limits the time to wait for the report to be submitted to ~2 minutes. At 5 seconds between reports plus loading time it allows up to ~15 reports to be queued.