/* Essential entry readiness only. The validated photo and scenes stay unchanged. */
html[data-game420-visual]:not([data-game420-entry=ready]) body.auth-entry{background:#030604!important;}
html[data-game420-visual]:not([data-game420-entry=ready]) :is(main.game420-console,#game420-immersive-host),
html[data-game420-visual][data-game420-resume] :is(main.game420-console,#game420-immersive-host){visibility:hidden!important;pointer-events:none!important;}
html[data-game420-visual] #game420-entry-status{position:fixed;inset:0;z-index:850;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;padding:24px;background:#030604;color:#c7fa9a;text-align:center;font:16px/1.5 monospace;}
html[data-game420-visual] #game420-entry-status h1{margin:0;color:#c7fa9a;font:700 30px/1.3 monospace;}
html[data-game420-visual] #game420-entry-status p{max-width:30em;margin:0;}
html[data-game420-visual] #game420-entry-status button{padding:12px 24px;border:2px solid #c7fa9a;border-radius:4px;background:#11131a;color:#c7fa9a;font:inherit;cursor:pointer;}
html[data-game420-visual] #game420-entry-status[hidden],html[data-game420-visual] #game420-entry-status button[hidden]{display:none!important;}
/* Intro already owns the screen until it is removed; readiness then owns it. */
html[data-game420-visual] body:has(#video-intro) #game420-entry-status{visibility:hidden;pointer-events:none;}
