AC Milan missed the chance to automatically secure a place in the last-16 of the Champions League by losing 2-1 to Dinamo Zagreb.
Dinamo started on the front foot knowing that anything but a victory would see them eliminated.
Martin Baturina gave the Croatian champions the lead when he pounced on a loose touch from Matteo Gabbia and slotted past Milan goalkeeper Mike Maignan.
Milan, already assured of a place in the next round but chasing a top-eight finish, were reduced to 10 men when Yunus Musah was shown a second yellow card for pulling back Luka Stojkovic at the edge of the penalty area.
Dinamo should have doubled their lead before half-time but Sandro Kulenovic side-footed wide with only Maignan to beat.
Stojkovic thought he had scored a second moments into the second half but play was pulled back for a handball in the build-up.
Milan went up the other end and equalised through Christian Pulisic, whose low strike squirmed under the hand of Dinamo goalkeeper Ivan Nevistic.
Dinamo regained the lead on the hour mark when Marko Pjaca rifled into the bottom far corner from a tight angle, and two minutes later a Milan penalty was chalked off as Rafael Leao fouled a defender before he was brought down by Nevistic.
Victory was not enough for Dinamo to reach the knock-out stages of the competition for the first time in their history, while defeat means Milan will enter the play-off round where they will face either Feyenoord or Serie A rivals Juventus.