An unbroken 164-run partnership between Jacques Kallis and AB de Villiers kept South Africa’s slim hopes of saving the second Test against Australia alive after it reached stumps on day four at 2-244.
The home side, which is chasing an improbable 546 to win, lost openers Neil McKenzie and Hashim Amla before tea, with an inspired Peter Siddle doing the damage, but the intact third-wicket stand saw no damage done in the final session and left it with realistic hopes of keeping the series alive.
There is also still an outside chance of the host winning the game with the target having now been reduced to 302 but there is no doubt Kallis, not out on 84, and De Villiers (68) will have their initial thoughts on batting the team to safety.
The Proteas began the chase confidently enough, reaching lunch at 35 without loss after visiting captain Ricky Ponting had declared Australia’s second innings at 5-331.
There was only one scare early on, which came when umpire Billy Bowden sent McKenzie on his way after giving him out leg before wicket off a Ben Hilfenhaus delivery.
However, after asking for the decision to be referred, the call was reversed by Steve Bucknor as the ball looked to be going over the stumps.
After the break, McKenzie and Amla, who was shifted one place up the order following captain Graeme Smith’s broken finger, began steadily, raising the 50 partnership in the 19th over, before the former was out for 31.
A good ball from Siddle bowled just on the line of off stump nipped back and left the opener uncertain as he edged behind to Brad Haddin, ending a 63-run stand.
And off the next delivery, Kallis was enticed into playing at an out swinger that was edged to Marcus North, who reacted late and failed to hang on at first slip.
But Siddle was rewarded for his fine spell of bowling when Amla lost his concentration and chased a wide seaming delivery that was snapped up by Ponting at second slip for 43.
But De Villiers and Kallis held firm and brought up the 50 stand off only 71 balls to leave their team 2-145 at tea.
And they continued to build on that momentum, going through the final session without losing any further wickets.
The century stand was brought up in the 59th over, before Kallis reached his 50 when he squeezed Mitchell Johnson through the covers for two.
That was followed by De Villiers’ half-century from 106 balls as the pair looked relatively comfortable against a tiring Australian attack and took their partnership through to the close.
Earlier, the host was set the daunting chase after Ponting’s declaration came just under eight overs into the day.
However, it did not stop Phillip Hughes from crossing the 150 mark as he continued to pile on the misery for the Proteas, before eventually being dismissed by Makhaya Ntini for 160.
Resuming on 3-292, and with Hughes unbeaten on 136, the opener added another 38 runs in his partnership with Michael Clarke.
The New South Wales batsman had already been dropped on 142 by wicketkeeper Mark Boucher but Morne Morkel fared better at third man after Ntini’s delivery had looped up from a top edge.
Hughes’ replacement, North, failed to trouble the scorers and his dismissal for a duck, which saw De Villiers pluck the ball out of the air at second slip, was quickly followed by Australia’s declaration.
Clarke was unbeaten on 23 when the innings was ended, leaving South Africa with a huge task to level the series after the 162-run loss in Johannesburg.