Pallekele - Opener Rohit Sharma's sublime century combined with a maiden five-wicket haul by paceman Jasprit Bumrah powered India to a series-clinching win against Sri Lanka in the third one-day international on Sunday.
Chasing 218 for victory, Sharma hit a 145-ball 124 not out to steer the visitors home in 45.1 overs, although unruly crowd behaviour delayed their six-wicket win in Pallekele.
Angry home fans threw water bottles onto the field and play stopped as players walked off with India needing eight runs to win.
The visitors rode on an unbeaten 157-run fifth-wicket stand between Sharma and Mahendra Singh Dhoni, who made 67, to take an uassailable 3-0 lead in the five-match series.
But it was Bumrah who set up the win for India after his career-best figures of 5-27 restricted Sri Lanka to 217-9 in 50 overs.
Sri Lankan fast bowlers hurt India's reply with two early strikes including skipper Virat Kohli for one, leaving the visitors at 19-2.
Sharma and Lokesh Rahul, who made 17, then tried to steady the chase with their 42-run partnership before spinner Akila Dananjaya turned on the heat.
Dananjaya got Rahul and Kedar Jadhav for nought in his first two overs.
But Sharma, who made 54 in the team's previous win, kept his cool amid the madness to register his 12th ODI hundred as he paired with Dhoni to thwart the Sri Lankan bowling attack.
Earlier, Sri Lanka's Lahiru Thirimanne scored a 105-ball 80 to give the total some respect after stand-in-captain Chamara Kapugedera elected to bat first.
The fourth ODI is slated for Thursday in Colombo.