Alessio Cerci spurned a last-ditch chance for AC Milan as the Rossoneri's bid for a fourth consecutive league win was thwarted by Atalanta in a scoreless draw at the San Siro on Saturday.
Seven-time European champions Milan are one of several teams looking to clinch a Champions League spot this season and Sinisa Mihajlovic's men have signalled their interest by winning their past three games.
But a defence-minded Atalanta side had other ideas, namely claiming at least a point on what was their second consecutive away trip following last week's shock 3-0 defeat to Bologna.
M'Baye Niang started his first league game of the season alongside Milan's top scorer, striker Carlos Bacca, who has hit six goals so far.
But despite some early promise the pair failed to spark in what was a match of few real opportunities.
Niang showed intelligence when he found Bacca with a fine pass behind the Atalanta defence on 21 minutes but the Colombian's effort was blocked as the visitors piled men behind the ball.
Niang then burst down the left flank and tested Marco Sportiello in the visitors' goal but there were no takers when the Atalanta 'keeper spilled the Frenchman's angled drive.
It was all Milan had to show for a frustrating first half but Mihajlovic's men were to endure worse after the interval.
Just after the hour mark, Atalanta moved up a gear and spurned a series of chances.
Sixteen-year-old Gianluigi Donnarumma's performances have kept Milan's Spanish 'keeper Diego Lopez on the bench and the teenager showed why when he parried Luca Cigarini's header from Maxi Moralez's cross on 63 minutes.
Moments later, Donnarumma got down low to smother Alberto Grazzi's angled drive and then looked on as Marten De Roon fired a first-timer just wide of the upright.
Atalanta should have taken the lead on 69 minutes but Donnarumma again came to the rescue, the towering teenager saving Grazzi's first-timer from the edge of the area with his legs.
Sensing the danger, Mihajlovic went for broke by replacing midfielder Juraj Kucka with striker Luiz Adriano and the switch almost paid off, only for the Brazilian's header from a corner to be cleared off the goalline with 11 minutes remaining.
Milan spurned a great chance to snatch victory at the death after a promising counter-attack that saw Andrea Poli find Cerci to the left of the area, but the former Torino striker drove his effort into the side netting despite having options to his right.
Earlier, on-loan Sunderland forward Emanuele Giaccherini opened the scoring and Godfred Donsah added a second as Bologna climbed up the Serie A table with a 2-0 win at fellow relegation candidates Verona.
Bologna, promoted at the start of the season, sacked their coach Delio Rossi last week following a string of poor results that had left them third from bottom.
Former Parma handler Roberto Donadoni was handed the reins and in the space of two games has turned the club's fortunes around to see the club move two points ahead of the drop zone before the remaining weekend fixtures.
Verona, still the only team in Serie A without a win amid the continued absence of injured striker Luca Toni, sit second from bottom ahead of Carpi on goal difference.