Bayern Munich were held to a draw by Nurnberg but still extended their lead at the top of the Bundesliga after Schalke slumped to defeat.
Bayern had won 10 of their 11 league matches heading into their trip to the Frankenstadion and looked set to add another victory when Mario Mandzukic put them ahead in the third minute.
However, Nurnberg drew level through Markus Feulner's 46th-minute equaliser and even had chances to go ahead before losing Timo Gebhart to a red card in the 76th minute, at which stage they got everybody behind the ball and defended successfully for a point.
Despite that result, though, Bayern moved eight points clear at the summit after second-placed Schalke were beaten 2-0 by Bayer Leverkusen.
Andre Schurrle and Stefan Kiessling scored the goals for Leverkusen, who also missed a penalty late on when Kiessling's effort was saved by Lars Unnerstall.
To add salt to Schalke's wounds, they finished with 10 men after losing Kyriakos Papadopoulos to a second yellow card with eight minutes remaining.
Eintracht Frankfurt took advantage of Schalke's slip to move level with them on 23 points with a 4-2 home win over bottom side Augsburg.
In-form Alexander Meier took his tally to nine for the season with a brace, while Frankfurt's other efforts came from Stefan Aigner and a Sascha Molders own goal.
Augsburg replied through Ja-cheol Koo and a goal from Molders at the right end.
Reigning champions Borussia Dortmund are a point further back in fourth following a 3-1 home win over Greuther Furth.
Robert Lewandowski put Dortmund ahead in the third minute and then restored his side's lead with a 15th-minute penalty after Furth had equalised through Zoltan Stieber during an action-packed start.
Mario Gotze further increased his side's advantage in the 42nd minute before Dortmund appeared to take their foot off the accelerator in the second half with what could be a decisive Champions League fixture against Ajax coming in midweek.
In Monchengladbach, Martin Stranzl put hosts Borussia ahead in the seventh minute against Stuttgart but the visitors hit back to claim the points thanks to an equaliser from Martin Harnik and a 72nd-minute own goal from Roel Brouwers.
Elsewhere, Hamburg claimed a 1-0 home win over Mainz, Heung-min Song netting the only goal in the 63rd minute, while Freiburg picked up a 2-1 triumph at Hannover.
Jan Rosenthal struck the winner in the 56th minute after Mohammed Abdellaoue's penalty had cancelled out Jonathan Schmid's 12th-minute opener for Freiburg.