UI overhaul and bug fix