Manchester City will have to wait to secure their place in the last-16 after an eventful 1-1 draw with Atalanta. Raheem Sterling struck early for the Premier League champions in Milan but Gabriel Jesus missed a penalty before Mario Pasalic levelled in a dramatic second half that saw Man City reduced to 10 men.
Defender Kyle Walker had to play in goal for the closing stages as Manchester City held on to draw with Atalanta in the Champions League.
Walker replaced substitute goalkeeper Claudio Bravo, who was sent off for a sliding tackle on Josip Ilicic outside the box, having replaced first-choice keeper Ederson at half-time.
Raheem Sterling had given the visitors a 1-0 lead in the first half of their group-stage game before Chelsea loannee Mario Pasalic equalised four minutes after the restart.
Man City striker Gabriel Jesus also missed a first-half penalty in a bizarre game at the San Siro.
A victory would have sent City through to the last 16 but they remain five points clear at the top of Group C despite failing to win for the first time in the group stages this season.
Things went to plan after seven minutes when Sterling coolly slotted into the bottom corner after a brilliant backheel flick from Jesus.
But the Brazilian forward's penalty miss and Pasalic's thumping header early in the second half rocked the boat - City were no longer in control and Atalanta were posing a threat.
With Ederson substituted at half-time for a suspected injury, there was nervousness at the back and Bravo's rash tackle meant an outfield player was forced to go in goal.
Up stepped Walker, after a six-minute delay while Bravo's red card was checked by the Video Assistant Referee, and his first action was to make a smart save from Ruslan Malinovskyi's free-kick.
Walker, only the third outfield player to go in goal during a Champions League match, actually made more saves than both of Man City's recognised keepers during the game.