Cheteshwar Pujara stood firm to guide India to 151 for three at stumps on Day 3 for an overall lead of 166 runs.
The sun took a break but India shone to stay ahead of Australia in the opening Test after sporadic rain intrusions, K L Rahul's enterprise and Cheteshwar Pujara's obduracy culminated in a 166-run lead in Adelaide on Saturday.
Virat Kohli was dismissed late in the final session as India reached 151 for three at stumps on day three for an overall lead of 166 runs.
The Indian skipper was caught at short leg off Nathan Lyon after an uncharacteristic knock of 34 from 104 balls.
At close of play, Cheteshwar Pujara was unbeaten on 40, while Ajinkya Rahane was on one.
Post tea, Kohli and Pujara batted patiently during their third-wicket partnership of 71 runs from 197 balls.
Pujara survived early in the last session, courtesy DRS again, as the ball seemed to miss the stumps on account of bounce in the 40th over by Lyon.
At the other end, Kohli became the fourth Indian batsman after Sachin Tendulkar, VVS Laxman and Rahul Dravid to score 1000-plus runs in Test cricket against Australia.
The hosts though cut off most of his scoring opportunities, and Kohli was happy to play for time as he didn't dominate the bowling for once.
India's lead swelled past 150 shortly thereafter, and just when it appeared to be smooth sailing for the visitors, Lyon struck to remove Kohli before stumps and put the match in balance again.
K L Rahul scored a quick-fire 44 off 67 balls to give India a brisk start. Rain had further caused delays post lunch and another 23 minutes were lost before play could finally get underway, with 61 overs remaining for the day.
As opposed to the first innings, Rahul and Murali Vijay (18) were more careful and negotiated the Australian pace battery without much discomfort. They left well and looked to cut out any high-risk shots as India were placed at 19 for no loss in 10 overs.
Suddenly, Rahul cut loose and smacked Pat Cummins all over the park as the score sped to 35-0 in the next two overs. His attacking display gave India the impetus as 50 came up in the 15th over.
Vijay was the first to go, out driving again, and caught at second slip off Mitchell Starc. It fizzled out the Indian momentum, even as Rahul continued playing his shots.
Pujara survived a scare in the 24th over, using DRS to overturn a caught-behind decision off Lyon. But two balls later, Australia's desperation for a wicket paid off as Rahul edged behind off Josh Hazlewood.
Kohli walked out to boos from the Australian fans but made sure there was no further loss until tea as India's lead crossed 100.
Earlier, rain hampered play on day three as India took a 15-run lead in the first innings after Australia were bowled out for 235 in reply to the visitors' 250.
Inclement weather first delayed play by 45 minutes in the morning session, and then there were two more delays in the first session before lunch was taken.
During the first 20 minutes of play, starting from overnight 191 for seven, Australia crossed 200 in the 91st over but India managed to sneak in a breakthrough before rain came again. Mitchell Starc (15) was caught behind off Jasprit Bumrah (3-47) as covers came on.
Both Bumrah and Ishant Sharma (2-47) were guilty of bowling shorter to the tail-enders, and it didn't change this morning either. Nathan Lyon (24 not out) made good use of this, hitting two fours and a six, as he put on 31 runs for the ninth wicket with Travis Head (72).
Head's immaculate knock came to an end when he edged Mohammed Shami (2-58) behind, and the very next ball, the pacer finished things off with Josh Hazlewood out caught similarly for a first-ball duck.
Wicketkeeper Rishabh Pant finished with six catches, while Head faced 167 deliveries in all, inclusive of six fours.
Australia were then happier of the two sides having added 44 runs in just 10.4 overs of play. In their bid to get the lower order out quickly, India were guilty of leaking easy runs.