Teenager Mirra Andreeva fought support to overcome world number one Aryna Sabalenka 2-6, 6-4, 6-3 in the Indian Wells final.