India extended their winning streak at home to 15 Test series as they beat Sri Lanka by 238 runs in the second Test to claim the two-match series 2-0 in Bengaluru on Monday.
With the tourists chasing a daunting target of 447 for victory after India declared on 303-9, their skipper Dimuth Karunaratne battled hard to bring up his 14th test ton (107) but wickets fell regularly and they were bowled out for 208.
India won the first Test in Mohali by an innings and 222 runs inside three days and Rohit Sharma's side repeated the feat in Bengaluru when Sri Lanka were bowled out in the second session.
"It's been a good run and I've enjoyed it personally and as a team. We wanted to achieve a few things as a team and we've done that," Rohit said.
"Pink ball Tests are challenging. We never knew what it was like to play with the pink ball in India, but we are learning to make those adjustments. The crowd just makes it more special."
Karunaratne and Kusal Mendis had chipped away in the first session and together the pair survived a couple of edges to bring up Sri Lanka's highest partnership of the series (97) while Mendis also brought up his half-century.
However, Sri Lanka then lost three wickets for eight runs as India took charge.
India made the breakthrough when spinner Ravichandran Ashwin enticed Mendis (54) to dance down the track, with the batsman misjudging the line as Pant collected the ball and quickly whipped off the bails.
Angelo Mathews, Sri Lanka's top scorer in the first innings, lasted only five balls as Ravindra Jadeja broke through his defence to knock over his leg stump while Ashwin struck again to have Dhananjaya de Silva caught at forward short leg.
Karunaratne stitched together another 50-run stand with Niroshan Dickwella before India's Axar Patel got in on the act in the second session and opened the gates to the lower order with two wickets.
He first had Dickwella stumped in identical fashion to the Mendis dismissal before Charith Asalanka gave Rohit Sharma an easy catch at backward short leg to leave Sri Lanka at 180/6.
Despite the circumstances, Karunaratne afforded himself a smile when he brought up a well-crafted century, with the crowd at the M Chinnaswamy Stadium giving him a standing ovation.
"I would have been happier if we had won the match. Once I got in, I knew I could get a big one," Karunaratne said.
"We know we are a decent team. We didn't get enough good starts to capitalise. As a bowling unit we gave too many loose balls."
But his stay at the crease was cut short soon after when Bumrah uprooted his middle stump with a delivery that sneaked through the gap between bat and pad.
Suranga Lakmal, playing in his final test, was sent back when Jasprit Bumrah bowled him out and the whole India team went up to shake the 35-year-old veteran's hand as he walked off.
Ashwin picked up the final wicket of Vishwa Fernando and his figures of 4/55 moved him up to eighth on the all-time list of most wickets (442 wickets).
India's Shreyas Iyer was named man of the match for his two half-centuries while wicketkeeper-batsman Rishabh Pant was the player of the series.