Leicester City battled manfully for virtually the entire 90 minutes with just 10 men but were undone by Alan Dunne's late strike at the King Power Stadium last night.
Wes Morgan was shown a straight red card after just three minutes, but City produced a spirited performance and deserved at least a point from this game.
However, their play-off hopes were dealt a massive blow when Dunne ghosted into the City box with four minutes left to grab the winner for Millwall.
After a run of one win from nine league games, City were clinging on to a top-six spot by the slenderest of margins, and desperately needed a win to get back on track, but it was a cruel night for Nigel Pearson's side.
After the run City have been on, the last thing they needed was an early setback, but they were reduced to 10 men when captain Morgan was dismissed very early on.
Andy Keogh was sent clear on goal by Richard Chaplow's pass and Morgan was in hot pursuit but, as they tangled, Keogh went down and the red card was virtually jumping out of referee Stuart Attwell's pocket as Morgan was deemed to have denied a certain scoring opportunity.
Despite this setback, there was no evidence of City's crisis of confidence as the 10 men took the game to the Lions and created some great opportunities, notably when Chris Wood's header was cleared off the line and Danny Shittu had to block Ritchie De Laet's strike.
At the other end, without their defensive rock, City were opened up on a number of occasions.
Millwall found Kasper Schmeichel in imperious form as he pulled off great saves to deny Lowry and Keogh twice from close range.
But this wasn't a rearguard action by City, who continued to press for that vital first goal and they came so close late on when Liam Trotter almost deflected Anthony Knockaert's free-kick into his own net but David Forde produced a great save.
However, Dunne's goal proved decisive and dealt City's play-off hopes another severe blow.