Sri Lanka assumed complete control of the second Test in Colombo as another shoddy batting display left South Africa facing the prospect of a heavy defeat and a 2-0 series loss.
Having been rolled out for 126 and 73 en route to a 278-run hammering in the first Test in Galle last week, the Proteas surrendered meekly to 124 all out in reply to the hosts' 338 on Saturday's second day in the capital.
Akila Dananjaya (5-52) and Dilruwan Perera (4-40) were the tormentors-in-chief, while captain Faf du Plessis' counter-punching 48 from 51 balls provided the only evidence of resistance as the tourists lost their final five wickets for just 10 runs in the space of 27 deliveries.
Despite clearly having the measure of a batting line-up bereft of confidence and conviction, Sri Lanka opted against enforcing the follow-on and reached stumps on 151-3, a mammoth lead of 365 - already more than South Africa have amassed in their three innings combined in this series.
Danushka Gunathilaka thumped two maximums in his 61 from only 68 balls, while the in-form Dimuth Karunaratne followed up his prior scores of 158, 60 and 53 with an unbeaten 59, taking his own personal tally beyond that of his beleaguered opponents as a collective.
STUMPS, DAY 2: End of a tough day for South Africa. Sri Lanka lead by 365. Karunaratne 59*, Mathews 12*. Maharaj 2/90.— Cricket South Africa (@OfficialCSA) July 21, 2018
This session: 34 overs, 151 runs, 3 wickets, run rate 4.44.
Day summary: 87 overs, 336 runs, 14 wickets. pic.twitter.com/OTPtL64uw9
The tone for South Africa's torrid day was set by Sri Lanka's last-wicket pair Dananjaya (43 not out) and Rangana Herath (35), who hung around for 18 overs adding a further 61, before Keshav Maharaj dismissed the latter to finish with 9-129.
And the writing was on the wall inside nine overs of the reply as the Proteas fell to 15-3 - Dean Elgar, Theunis de Bruyn and Aiden Markram all departing cheaply.
Du Plessis decided attack was the best form of defence, taking Dananjaya for three consecutive fours at the end of the first over following lunch, and crunching Herath over long-off for six in the next.
But a 50 stand was ended when Hashim Amla - dropped on two as he passed 9,000 Test runs - perished in familiar circumstances, offering a catch to a close fielder on the leg side from Dilruwan, as he had in both innings in Galle.
Du Plessis was next to fall, getting a faint under edge behind in trying to sweep Dilruwan, who, along with Dananjaya, ran through the tail in ruthless fashion.
After tea, Gunathilaka and Karunaratne made hay - the former eventually holing out off Maharaj, who also picked up Dhananjaya de Silva lbw, but even the run out of Kusal Mendis did not raise much of a smile on South African faces at the end of another day of toil.
|Djokovic on course for Masters 1000 history after Cilic victory|
|It´s on! - Wilder fight confirmed after Fury defeats Pianeta|
|Like Cruyff before him, Guardiola favouring Foden´s style over substance|
|Ronaldo tweets debut delight after Juve win|
|Chelsea are not title contenders yet, claims Sarri|
|Bayern Munich boss Kovac planning for Boateng stay|
|Championship Review: West Brom crush QPR as Leeds stay perfect|
|Allegri pleased with Ronaldo despite goalless Juventus debut|
|Chelsea can produce magic with Sarri in charge - Hazard|
|Emery ´happy without the result´ as Arsenal comeback falls short|
|Gordon confirms Cleveland Browns return|
|Eight shots and only 30 passes - Ronaldo´s Juventus debut in Opta numbers|
|Cristiano Ronaldo´s debuts: Best impressed, scoring a penalty & a blank for Juventus|
|Old boy Escare haunts Catalans in big Wigan win|
|Preston North End 2 Stoke City 2: Super sub Crouch salvages a point|
|Pochettino vows not to discuss Alderweireld future before five-minute answer|
|Waring, Aiken lead the way as Olesen stays in the hunt|
|Linking play, forcing saves and clashing with goalkeeper - Cristiano Ronaldo´s Juventus debut|
|Chelsea 3 Arsenal 2: Alonso snatches win after Gunners comeback|
|West Ham still haunted by last season - Pellegrini|
|Puel defends Vardy after Wolves red card|
|Chievo 2 Juventus 3: Ronaldo´s debut ends in dramatic win|
|Mbappe: Neymar is Paris Saint-Germain´s superstar|
|Pickford should have seen red - Hughes fumes over challenge on Ings|
|Kohli and Rahane star as India edge day one|
|AC Milan´s Strinic sidelined by heart problem|
|Kane happy to banish August goal hoodoo|
|Guingamp 1 Paris Saint-Germain 3: Mbappe returns to inspire comeback|
|Springboks´ second-half revival punishes Pumas|
|Finally! Kane scores a Premier League goal in August|
|Warnock enjoyed ´poetic justice´ of Kenedy´s penalty woe|
|Holders Eintracht Frankfurt stunned by Ulm in DFB-Pokal|
|West Ham 1 Bournemouth 2: Wilson, Cook condemn Hammers to successive losses|
|Tottenham 3 Fulham 1: Trippier and Kane help Spurs avoid Wembley wobble|
|Leicester City 2 Wolves 0: Lucky Foxes win despite Vardy red card|
|Everton 2 Southampton 1: Richarlison continues fine start|
|Drochtersen/Assel 0 Bayern Munich 1: Lewandowski spares Bayern´s blushes|
|Violent hack, no passes, missed penalty - Kenedy´s Cardiff nightmare|
|Ronaldo handed Juventus debut against Chievo|
|Cheika and Hooper frustrated by second-half slump|
|Hansen issues warning after All Blacks win Wallabies ´prizefight´|
|Stuttgart stay good for Pavard, says Reschke|
|You can´t buy class - United boss Mourinho blasts City documentary|
|Cardiff City 0 Newcastle United 0: Penalty miss rounds off abject day for Kenedy|
|Lopetegui open to rotating Real Madrid goalkeepers|
|´World´s best´ Alisson will be difficult to replace, says Roma boss Di Francesco|
|Dragons and Sharks pounce on Panthers after four get sin-binned|
|AC Milan situation has proved FFP works - UEFA president Ceferin|
|Marseille´s Garcia uninterested in striker despite Balotelli link|
|Goodhue sparkles on debut as All Blacks thump Wallabies|
|I feel like chicken tonight - Saunders game for a laugh after Wilder fowl play|
|Aubameyang-Lacazette partnership possible for Arsenal|
|Pant handed debut as India ring changes at Trent Bridge|
|Pochettino pledges to protect Kane|
|Federer relieved to ´hang tough´ in Cincinnati|
|De Bruyne injury: Can Foden or Diaz replace Man City playmaker?|
|Furyk confident as Team USA takes shape|
|Neymar´s behaviour deserves praise, Tite claims|
|Scherzer, Harper lead Nationals past Marlins|
|Djokovic and Federer join Cilic, Goffin in Cincinnati semis|
|Federer outlasts recovering Wawrinka|
|WATCH: Djokovic wins match, loses car|
|Bolt arrives in Sydney for A-League trial|
|Red-hot Bertens beats Svitolina, Halep marches on|
|Snedeker preserves Wyndham lead|
|Halep hits back to torment Tsurenko|
|Raonic fails to break Djokovic stranglehold|
|Emery seeks more ´demanding´ Ozil|
|CAF Champions League Review: Wydad, Al Ahly & TP Mazembe qualify|
|Stephen Curry wants to finish his career with Warriors|