Russian teenager Mirra Andreeva has fought back after losing the first set to stun world No.1 Aryna Sabalenka and claim the Indian Wells singles title.