Paris St Germain knocked holders Bayern Munich out of the Champions League on away goals despite losing the second leg of their quarter-final 1-0 at Parc des Princes.
Mauricio Pochettino's men had edged a thrilling first-leg clash 3-2 in Munich, and saw Neymar denied by the woodwork twice before Eric Maxim Choupo-Moting bundled the Germans in front on the night with a close-range header just before half-time.
Bayern, though, could not find another away goal as the Ligue 1 side, who had Mbappe's late effort ruled out for offside, progressed to the semi-finals.
Mbappe, who had scored twice in the first leg, forced an early chance when he drilled a low shot across the face of goal after being played in by Neymar down the right.
The France forward then saw a low cross deflected through to Neymar, but his effort was blocked by goalkeeper Manuel Neuer.
Bayern, again without injured Poland forward Robert Lewandowski, finally threatened at the other end when Leroy Sane curled an effort wide before Joshua Kimmich drilled a low shot wide.
PSG, beaten by Bayern in the final of last season's rescheduled tournament, were soon back on the offensive as Mbappe got away down the left to pick out Neymar.
Neuer, though, again showed quick reactions to close the angle and make a block.
Neymar then almost crafted the opening goal in the 37th minute when a clever drag back turned past Kingsley Coman on the edge of the Bayern penalty area and his curling shot dropped onto the crossbar.
Amazingly the Brazil forward was again denied by the woodwork just moments later after being played in by Mbappe when his shot came back off the post.
Bayern rode their luck and went straight up the other end to break the deadlock five minutes before half-time.
Coman's run found David Alaba in the PSG penalty area, and his low shot was saved by Keylor Navas.
However, the ball spun back up into the air and Choupo-Moting held off PSG defender Presnel Kimpembe to nod in from close range.
Navas then redeemed himself to deny Alaba, whose left-foot drive appeared destined for the top-left corner, before Sane shot straight at the PSG keeper shortly ahead of half-time.
PSG went on the offensive again at the start of the second half, Neymar's half-volley dipping over before Angel Di Maria's sent a dangerous low cross through the Bayern six-yard box.
With time running out for the holders, Thomas Muller forced a decent stop from Navas after being played clear by Sane.
Mbappe thought he had put the tie to bed when he broke clear into the Bayern half to fire the ball past Neuer into the top corner, but was correctly ruled offside.
Bayern continued to throw everything forward, leaving themselves vulnerable on the break, but could not force any late drama as Sane's low cross into the six-yard box was smothered by Navas.