Gold falls to Rs 31,540 on weak demand; silver recovers by Rs 60 per kg