popup UI & behavior update