tooltip redesigin and smart positioning