Nair's unbeaten 148 ensured Karnataka take a vital 109-run first innings lead over Vidarbha.
Resuming at the overnight score of 36 for three, Nair hit 20 fours and one six in his stellar knock and batted all the three sessions.
Nair thwarted an onslaught from young Vidarbha pacer Rajneesh Gurbani, who returned with his third successive five-wicket haul (5/90).
The second Indian to score a triple century in Tests, Nair, found a fine ally in his skipper R Vinay Kumar (20 not out) as the duo batted sensibly amid the ruins in an unbroken 69-run ninth wicket partnership that took Karnataka's lead past 100.
Karnataka were 294 for eight when bad light stopped play at 93 overs with three more days left in play.
Bowling with a short run-up, South Africa-bound India pacer Umesh Yadav (2/71) gave Vidarbha their first breakthrough at the stroke of lunch ending Nair's overnight partnership with CM Gautam (73 off 139 balls).
The Karnataka wicketkeeper slashed a delivery straight to deep point after a fine knock that was laced with eight boundaries.
Karnataka looked to go the Vidarbha way in the post-lunch session as Gurbani hit the deck hard and swung the ball to take three wickets for 24 runs in his superb third spell of 9-0-49-3.
Stuart Binny (4), Shreyas Gopal (7) and K Gowtham (1) were all dismissed cheaply as Karnataka were tottering at 198 for seven at one stge in reply to Vidarbha's 185.
Binny lasted 12 balls and edged a beautiful outswinger behind the stumps, while Gowtham was deceived brilliantly by a slower one as the batsman mistimed a drive straight to gully.
But Nair stood tall to brighten the eight-time champions' bid for their third final in five seasons.
Nair remained cool amid Gurbani's incisive spell. He counter-attacked the pacer with an effortless pull for a six over square leg boundary for the only six of the match.
In the 90s, Nair took time and chose to deal with singles. He brought up his third century of the season, and 13th overall, in 181 balls.
Nair's only minor in an otherwise chanceless knock was when he got an edge off Siddhesh Neral but the ball flew past Wasim Jaffer at second slip as he raced to 96 with a boundary.
Under fading lights, Nair chose to play it safe along with Vinay Kumar as the duo saw through the day.
Brief Scores: Vidarbha: 185 vs Karnataka 294 for eight in 93 overs (Karun Nair 148 batting, C M Gautam 73; Rajneesh Gurbani 5/90).
C M Gautameden gardenskarnatakakarun nairRajneesh Gurbaniranji trophyStuart BinnyUmesh Yadavvidarbha
First Published: December 19, 2017, 7:50 AM IST