Bayern Munich strengthened their grip on a fourth straight Bundesliga title with a 3-0 win over Schalke which put the ball back in Borussia Dortmund's court in the two-team race for the title.
Robert Lewandowski was on target twice with Arturo Vidal also scoring for Pep Guardiola's men, who have a 10-point lead at the top of the table ahead of Dortmund's clash with Hamburg tomorrow.
The title could be theirs as soon as next weekend, if Dortmund fail to beat their northern Germany rivals.
Behind them, the scramble for places in the Champions League is now being led by Bayer Leverkusen after they put three goals past Eintracht Frankfurt without reply.
Kevin Kampl, Julian Brandt and Karim Bellarabi ensured Roger Schmidt's men moved above Hertha Berlin into third place with a comfortable win at the BayArena.
Hertha slipped out of the top three for the first time since before Christmast after being beaten 2-1 at Hoffenheim.
Niklas Stark gave the Old Lady the lead, but Fabian Schar and Mark Uth turned the game around to extend Hoffenheim's unbeaten streak to five games, including four wins, and all but mathematically ensure their place in the Bundesliga next season.
Darmstadt and Ingolstadt can also look forward to remaining in the Bundesliga next season after Konstantin Rausch and Sandro Wagner scored in a 2-0 win for the former.
Stuttgart still have work to do to preserve their Bundesliga status, though, after falling to a 1-0 defeat at Augsburg, with Alfred Finnbogason on target for the fifth time since joining the Bavarians in the winter.
That win took Augsburg ahead of Stuttgart on goal difference.
Werder Bremen are still within striking distance of both, but remain inside the relegation play-off berth despite winning 3-2 against Wolfsburg.
Claudio Pizarro, Fin Bartels and Sambou Yatabare eased the pressure on Bremen coach Viktor Skripnik and shifted it onto Wolfsburg coach Dieter Hecking, who got nothing for goals from Josuha Guilavogui and Bas Dost goals.
With four games of the season remaining, the Wolves are six points adrift of a place in the Europa League next season.