closes #1: ensure popover doesn't overlap element