AB de Villiers crafted an unbeaten half-century to put South Africa in a promising position on a third day of the second Test which was cut short by bad light after India captain Virat Kohli lit up Centurion with a sublime hundred.
A magnificent 21st Test century from Kohli (153) got the tourists up to 307 all out on Monday, Morne Morkel taking 4-60 as the Proteas earned a first-innings advantage of 28.
An intriguing contest appeared to be swinging India's favour when Jasprit Bumrah reduced South Africa to 3-2, but De Villiers (50 not out) and Dean Elgar (36no) came to the rescue with an unbroken third-wicket stand of 87 on a deteriorating pitch.
South Africa were 90-2 when the players were taken off 10 overs into the final session under dark skies, leading by 118 as they strive to wrap up the series with one match to play.
Kohli carried on where he left off on day two after India resumed on 183-5, the skipper adding the 15 runs he needed to raise his bat yet again, reaching three figures by working debutant Lungi Ngidi into the leg side for two.
Hardik Pandya had shown restraint, but gifted South Africa his wicket when he ambled through for a single but was run out by Vernon Philander, the all-rounder failing to ground his bat or a foot despite being beyond the crease.
Kohli found another able partner in Ravichandran Ashwin (38), who dispatched Kagiso Rabada for three consecutive boundaries as Kohli continued to look untroubled.
Ashwin struck seven boundaries and put on a much-needed 71 with Kohli for the seventh wicket before edging Philander, steaming in with the new ball, to Faf du Plessis at second slip.
Morkel removed Mohammed Shami and Ishant Sharma cheaply, but Kohli was able to bring up 150 by pulling the paceman to the midwicket boundary before the innings was ended when he holed out to the same bowler.
Bumrah (2-30) set the alarm bells ringing for South Africa when he trapped Aiden Markram and Hashim Amla leg before, but De Villiers showed positive intent and Elgar grafted for his runs on a tricky surface, indifferent bounce making life difficult for the batsmen.
De Villiers found the ropes six times and reached his 50 before play ended prematurely due to the failing light, a rain delay having also brought the players off after tea.
|Hamilton´s title chances enhanced by Vettel´s grid penalty|
|Deja vu for Enisei as La Rochelle inflict another thrashing|
|Five-star Jovic makes Bundesliga history|
|Liverpool´s scoring slump no concern for cautious Klopp|
|He´s the Special One - Sarri insists he is not on Mourinho´s level yet|
|Second-half blitz guides Leicester to European success|
|Sheffield Wednesday 1 Middlesbrough 2: Besic, Assombalonga see off Owls|
|Goerges rallies to reach Luxembourg Open final, Jabeur makes history|
|Howe: Transfer speculation will not disrupt Ake|
|´Do we really want opera every night?´ - Klopp not changing Nations League view|
|Vile and abhorrent – Chelsea´s Carney responds to online abuse|
|Giants WR Beckham Jr. explains why he might cramp up: ´I really don´t like water´|
|Man City pay training-pitch tribute to Joe Hart|
|Neymar to be rested as Tuchel rubbishes Ballon d´Or concerns|
|Sarri ´not interested´ in Christensen father´s quit threat|
|Cardinals fire offensive coordinator McCoy after 1-6 start|
|Neymar return unlikely, but anything can happen – Valverde|
|Bairstow a doubt for fourth ODI|
|Manchester United fined for late arrival and delayed kick-off against Valencia|
|Australia-Pakistan chat not ´especially polite´ - Sarfraz|
|Pogba relishing ´pressure game´ against in-form Hazard|
|Don´t bet on Cardiff survival, warns Warnock|
|Buffon enjoying Tuchel´s methods at PSG|
|RIP to Wimbledon epics! Isner feels like The Undertaker following final-set tie-break rule|
|Sevilla performance sealed Bernat´s Bayern exit - Hoeness|
|Keita set to miss out as Liverpool monitor injured stars|
|He didn´t want to be here – Guardiola doubts Sancho will return to Manchester City|
|Sarri: Manchester United are the best in the Premier League|
|Mourinho salutes ´brave´ Shaw for ´best possible´ response to criticism|
|No Ballon d´Or distractions for Griezmann, insists Simeone|
|Wigan stand by Hardaker as full-back prepares to undergo rehabilitation|
|Barcelona deny Neymar talk|
|Hazard can win the Ballon d´Or as a Chelsea player, insists Sarri|
|De Bruyne in contention to start in Manchester City´s clash with Burnley|
|Neymar needs to mature to reach Messi levels - Xavi|
|We have a hell of a lot to do - Paine slams Australia batting|
|Kerber and Osaka to meet at WTA Finals|
|Lorenzo out of Japanese MotoGP|
|Real Madrid handed Africa trip in Copa del Rey|
|Allegri: Ronaldo has sharpened Juventus focus|
|No Wade in Wasps squad amid NFL reports|
|Rooney: Five of us controlled Man United dressing room|
|Bayern bosses launch scathing attack on ´disrespectful´ media|
|Saints lock in Lawes to new deal|
|Adelaide United 1 Sydney 1: Debutant Le Fondre rescues a point|
|Madrid can´t look back, only forward - Lopetegui confident of revival|
|Wimbledon to introduce final-set tie-breaks|
|Abbas inspires Pakistan to series victory|
|Madrid boss Lopetegui hopeful on Bale availability|
|Mood is positive at Bayern, insists under-pressure Kovac|
|LeBron offers food for thought after losing Lakers debut|
|Bolt future not an immediate concern for Mariners|
|Hazard: I could finish my career at Chelsea|
|Buffon hoping to avoid Champions League final against Juventus|
|Wilshere not ready for West Ham return|
|Chelsea v Manchester United: Hazard better under Sarri than he ever was with Mourinho|
|The big Friday Premier League quiz|
|Khawaja suffers meniscal tear, doubt for India series|
|Babbel: Klopp must win trophies now at Liverpool|
|LeBron makes spectacular start on Lakers debut, but LA fall to Trail Blazers|
|Broncos thrash Cardinals to end losing streak|
|Price leads Red Sox past Astros and into World Series|
|LeBron makes fast start on Lakers debut with two massive dunks|
|Real Salt Lake 4 New England Revolution 1: Hosts boost play-off chances|
|Simmons gets triple-double in win over Bulls|
|´Ambitious´ Maguire wants Champions League football|
|Henry praises ´charismatic leader´ Falcao|
|WATCH: Cardinals WR Fitzgerald tackles former QB Warner on sidelines|
|Spurs right not to make signings – Pochettino|
|Icardi happy at Inter, close to contract renewal|