One thing I noticed is that you are using the login_head action. I use the login_enqueue_scripts action to add a background image to my /wp-admin/ login pages.
I do this in my cme plugin. Feel free to review the code, fork it, or install the zip from the release tag.
If you follow this approach and you want to get that darkened effect back, then you’ll need to darken (i.e., reduce brightness) the image using your photo editor instead of using CSS. I hope that makes sense.
In fact, I don’t talk about the gradient effect. It looks great.
But I talk about a total grey screen which pops up and covers the screen when you log out or when you refresh the page. This grey screen appears briefly before our background image shows up.
Sorry. I’ll try to be more clear. The grey flash you are referring to is the gradient background being loaded. If you follow my instructions, you should notice that the grey flash will be replaced by a white flash (default browser background colour).
Please give my suggestions above a try if you still want to remove that flash of the grey background colour.