Kohli's 45th ODI hundred powers India to victory
Dasun Shanaka hit a hundred of his own, but Sri Lanka were never really in the chase of 374
India 373 for 7 (Kohli 113, Rohit 83, Gill 70, Rajitha 3-88) beat Sri Lanka 306 for 8 (Shanaka 108*, Nissanka 72, Malik 3-57, Siraj 2-30) by 67 runs
A scintillating 143-run opening stand between Shubman Gill and Rohit Sharma put India into overdrive. Then Virat Kohli smoked a 45th ODI century to take the total into high altitude.
Sri Lanka replied gamely, Pathum Nissanka, Dhananjaya de Silva, and Dasun Shanaka producing half-decent innings. But India had set a monster target of 374. And when Sri Lanka slipped to 23 for 2 then 64 for 3 against some excellent India seam bowling, the chase took on a permanently-doomed quality. Still, Sri Lanka didn't fold cheaply - they pushed to 306 for 8 - Shanaka completing a second ODI hundred in the final over.
Between them, India's seamers took seven wickets, Umran Malik claiming the most, with 3 for 57. It was the hosts' top three that defined the contours of this game, however. Gill smote 70 off 60, Rohit 83 off 67, and Kohli's 113 off 87 was imperious for the most part. There were contributions from the likes of Shreyas Iyer and KL Rahul as well, who did not allow the run-rate to flag in the middle overs.
There were times at which India seemed like they could push for 400, but Sri Lanka's bowlers didn't fall apart completely - Kasun Rajitha (who took three wickets), and Chamika Karunaratne bowling decently at the death. Everyone's figures were still a mess of course - Rajitha going for 88 from his 10, his opening partner Dilshan Madushanka going at over seven an over. It was not a particularly kind pitch for spinners. On top of which the outfield was rapid.
Of all India's outstanding innings, Gill's was the purest, reliant as it was on his glorious timing, particularly through the off side. And it was the knock that first signalled a monster total was in the making. He creamed not-particularly-wide, not-particularly-short deliveries square through the offside in the early overs.
By the end of the fifth, Gill had raced to 25 off 17, but then Rohit took over. In one particularly disheartening sequence for Sri Lanka, he walloped Rajitha for two sixes and a four - all using his famed pull shot, one of those sixes coming after he had charged the bowler. His was an increasingly dismissive innings.
They raced to their fiftes, the spreading of the field and the arrival of serious spin barely tempering the pair's scoring rate. The partnership was not without a little luck - both batters could have been out in their 40s, had the standing umpire given them out lbw (the reviews were denied because of umpire's call).
Kohli had some luck too, dropped once on 52, and another time on 81, Rajitha the bowler on both occasions. Otherwise, he blazed his way through the middle overs. He charged Shanaka to pound him through mid-on to fetch his first boundary, was brutal on errors of length from the spinners, and was strong down the ground against the quicks.
He got to his half-century with a six over wide mid-on off Dhananjaya de Silva, having come down the track. By this stage, with roughly 35 overs bowled, he and Rahul were deep into a partnership that reaped 90 off 70 balls. Kohli scored especially heavily in the arc between mid-on and midwicket, but had shots everywhere, of course. When he got to his hundred off his 80th ball, India were already pushing 350.
Thanks partly to Kohli not quite exploding in the death as he would have wished, however, India made only 70 runs in their last nine overs. At 303 for 3 after 41 overs, a total of 400 was conceivable.
Despite Nissanka's fetching offside boundaries in the Powerplay, Sri Lanka's start was dismal. They never had the measure of this ultra-steep chase. Mohammed Siraj removed Avishka Fernando for 5, before bowling Kusal Mendis off the inside edge in his next over. India had been 75 for 0 at the end of the first powerplay. Sri Lanka were 38 for 2, their required rate already more than eight an over. When Charith Asalanka failed to review a wrong caught behind decision against Malik in the 14th over, Sri Lanka's chances of winning seemed infinitesimal.
There were those who tried to revive the chase though. De Silva and Nissanka put on 72 off 65 for the fourth wicket, de Silva hitting a pleasing 47 off 40. Nissanka's 72 off 80 was probably a little slow given the circumstances, but will perhaps be a further stepping stone on the journey of his growth.
But then Sri Lanka lost four wickets for 45, leaving Shanaka only in the company of the tail, and the whole enterprise became about getting Shanaka as big a score as possible, the victory having long since slipped. He took his sweet time getting in, making only 31 off his first 41 balls, striking just the single four and six in that period.
Soon though, he started smashing it. He got to his 50 off 50 balls, then turning down many singles in order to give No. 10 Rajitha only the last two balls of most overs, he strode to a century off 87 deliveries, moving to triple-figures off the penultimate ball of the innings.
Andrew Fidel Fernando is ESPNcricinfo's Sri Lanka correspondent. @afidelf