Debutant Lungi Ngidi claimed two late wickets on a costly day for India captain Virat Kohli, as South Africa closed in on a series victory in the second Test at Centurion.
India were set 287 to win after bowling the Proteas out for 258 on day four, Mohammed Shami (4-49) the pick of the bowlers but a stand of 141 from AB de Villiers (80) and Dean Elgar (61) put the Proteas in command.
Captain Faf du Plessis also weighed in with a patient 48 on a surface offering variable bounce, before Ngidi (2-14) and Kasigo Rabada (1-9) reduced the tourists to 35-3 at stumps - 252 runs short of their target.
Ngidi claimed the huge wicket of Kohli, who was earlier fined 25 per cent of his match fee for poor on-field behaviour on day three and looks set to preside over the top-ranked side's first Test series loss for three years.
De Villiers and Elgar had rescued South Africa from 3-2 to 90-2 on Monday and continued to frustrate India in the morning session, the latter not looking comfortable but gaining his reward for digging in when he drove Ishant Sharma to the extra-cover boundary to reach 50.
The brilliant De Villiers deserved a hundred, but the partnership finally ended when the former skipper gloved a rising Shami delivery through to Parthiv Patel and Elgar soon followed, pulling the same bowler to KL Rahul at deep square-leg.
South Africa were 163-5 - leading by 191 - when a pumped-up Shami removed Quinton de Kock (12), but Du Plessis grafted it out after Rahul put down a difficult chance to remove him and Vernon Philander (26) provided support before Ishant (2-40) sent him on his way.
Rabada hung around following Keshav Maharaj's early dismissal but fell before Du Plessis, who struck only four boundaries, was caught and bowled by Jasprit Bumrah (3-70) soon after the paceman gave him another life.
India found themselves deep in the mire after a first wicket for Ravichandran Ashwin (1-78) ended South Africa's second innings, Murali Vijay the first to go, chopping on to a Rabada delivery which kept low.
Ngidi then took centre stage with a hostile spell of fast bowling, although Rahul gifted the 21-year-old his first wicket, tamely steering a short and wide delivery to Maharaj at point.
The Durban-born new boy then claimed the prized scalp of Kohli, the first-innings centurion falling for only five after playing across the line to a delivery which angled in and unsuccessfully reviewed an lbw decision.
Parthiv (five not out) took a nasty blow in the ribs from a hostile short ball from Ngidi, but the wicketkeeper and Cheteshwar Pujara (11no) were still there at the close.
19 de febrero 2018
|Hummels wary of ´top European team´ as Bayern prepare for Besiktas|
|In-form Kvitova withdraws from Dubai|
|WATCH: ´Crazy´ Evra drives to West Ham training in London cab|
|Barca clash a chance for Chelsea ´to do things right´, proclaims Rudiger|
|Lucas claims Tottenham can win Champions League|
|Federer the ´complete player´ with number-one return - Schuettler|
|LeBron relishes one more link-up with Irving|
|Barcelona tie will not decide Conte´s Chelsea future, says Deco|
|Cordner signs bumper deal with Roosters|
|Lewandowski won´t be distracted by Real Madrid rumours|
|Bennett signs on until 2019 with England|
|Man Utd must not underestimate Sevilla - Navas|
|Coleman demolishes 20-year-old 60m world record|
|Red Bull reveal ´special edition´ livery on 2018 car|
|Iniesta will not be made welcome at Stamford Bridge, warns Azpilicueta|
|Ballack sees ´a big difference´ between Bundesliga and Premier League|
|Karmichael Hunt faces no conviction, but will remain sidelined|
|Betis boss would have preferred to face Madrid´s BBC|
|Chelsea v Barcelona: Messi´s blues against the Blues|
|James leaving Madrid was the best thing, says father|
|He´s looking good – Zidane thrilled with Ronaldo|
|It needs to take 30 seconds – Matic wants quicker VAR|
|Team LeBron edges Team Stephen in thrilling All-Star Game|
|McIlroy sees progress despite failing to contend at Riviera|
|Silver supports NBA players speaking out on social issues|
|Mickelson ready for Masters after third straight top-six finish|
|Gattuso: My job is to be the players´ nightmare until season´s end|
|I wasn´t good enough – Guardiola reveals Wigan rejection|
|Dillon reigns supreme with overtime win at Daytona 500|
|Bubba Watson ends drought with third Genesis Open title|
|Brazilian derby between Vitoria and Bahia abandoned after red-card frenzy|
|Anderson ends barren spell with New York Open triumph|
|It was crazy, but I like that - Zidane revels in eight-goal Betis thriller|
18 de febrero 2018
|Asensio credits Zidane for Madrid´s thrilling Betis comeback|
|Zidane hopeful over Marcelo hamstring injury|
|Overton replaces injured Plunkett for Blacks Caps ODI series|
|Bonaventura claims Milan can catch Inter|
|Bravo for Claudio! Guardiola to pick keeper at Wembley|
|Mourinho hoping for reinforcements at Sevilla|
|´Quick-healer´ Groves hopeful over shoulder injury|
|Real Madrid become first side to score 6,000 goals in LaLiga|
|Real Betis 3 Real Madrid 5: Asensio at the double in LaLiga classic|
|AC Milan 1 Sampdoria 0: Bonaventura makes it 10 unbeaten for Rossoneri|
|Schurrle excited to finally link up with Reus and Gotze|
|Fit-again Hughes included in England squad|
|New number one Federer revels in ´unbelievable´ week|
|Real Madrid defender Marcelo suffers hamstring injury|
|Costa fumes referees ´want to give me a card´, but Simeone plays down penalty row|
|Thiem regains Argentina Open title|
|Stoger makes Dortmund history with Gladbach win|
|Championship Review: Leeds fight back for point, Norwich & Ipswich share derby spoils|
|Racing beat La Rochelle to go second, Castres edge out Bordeaux|
|Borussia Monchengladbach 0 Borussia Dortmund 1: Burki unbeatable as Reus returns to haunt Foals|
|FA Cup ´magic´ no surprise to Pochettino after Rochdale thriller|
|Rochdale hero Davies: This is every kid´s dream|
|Atletico Madrid will not stop in pursuit of Barcelona, promises Gameiro|
|Banks boot pays dividends for Treviso|
|Lucky 13 and second successive title for Kvitova after Muguruza classic|
|´Wrong image´ to blame for VAR confusion in Manchester United´s FA Cup win|
|Rochdale 2 Tottenham 2: Davies denies Kane in FA Cup classic|
|Rieder stretchered off as Wasps extend Chiefs´ slump|
|Atletico Madrid 2 Athletic Bilbao 0: Gameiro and Costa settle cagey clash|
|NHL commissioner Bettman condemns ´reprehensible´ Smith-Pelly abuse|
|Visser, Scott and Nel among six recalled by Scotland|
|Bhuvneshwar and Dhawan inspire India´s Wanderers win|
|Napoli set club record with another Serie A win|
|Froome disappoints in time trial as Wellens wins Ruta del Sol|
|Napoli 1 SPAL 0: Allan sends hosts top of Serie A again|
|Federer makes short work of disappointing Dimitrov|
|Allegri allays Higuain injury fears|