Wasteful Paris Saint-Germain missed the chance to go top of Ligue 1 as they were held to a goalless draw by Lille on Sunday.
Moise Kean wasted several opportunities in a stalemate at Stade Pierre-Mauroy, where the champions ought to have consigned Lille to a first home defeat of the season in the top flight.
Kylian Mbappe was introduced just 13 minutes from time after being named as a substitute on his 22nd birthday and the striker did not have enough time to grab the winner.
The draw instead moved Lille back above Lyon at the summit on goal difference, with PSG only a point off the pace.
Thilo Kehrer headed just wide and Rafinha nodded Angel Di Maria's cross into the side-netting as PSG warmed to the task after a frantic start.
Idrissa Gueye came to the rescue with a great block after Kehrer gave the ball away inside his own penalty area as PSG tried to play out from the back, but Thomas Tuchel's men continued to pose a bigger threat.
Kean was denied by Mike Maignan when he tried to flick home a cross from Di Maria, whose dangerous free-kick was almost turned into his own net by Jose Fonte at the back post but Lille's goalkeeper made another save to keep his side on level terms.
Kean poked Layvin Kurzawa's inviting cross wide of the near post early in the second half and Yusuf Yazici strayed offside before he found the back of the net at the other end.
Di Maria was proving to be a real threat on his return to the starting line-up and his cross from the left flashed across the face of the goal as PSG continued to dominate with no reward.
Burak Yilmaz's long-range drive was tipped around the post by Keylor Navas before Mbappe was finally introduced just prior to Presnel Kimpembe making a brilliant last-ditch tackle when Lille hit PSG on the break.
Kimpembe limped off due to the damage done in that challenge and neither side could grab a late winner.
What does it mean? PSG miss fully-fit birthday boy
Lille and PSG came into the game as the two most free-scoring sides in the division, but could not muster a goal between them.
Mbappe has been troubled by a muscular injury and if he had been fully fit to start, it may well have been a different story.
Lille are now unbeaten in 11 matches at home in the league, a run stretching back to February.
Di Maria provides spark
PSG boss Tuchel this week gave his backing to Di Maria, saying he will never stop believing in the winger despite acknowledging he was lacking a spark.
The Argentina international has now gone 10 games without a goal for club and country, but did not look like a player lacking confidence.
He could have had at least one assist if Kean was more clinical, providing two key passes, 11 crosses - comfortably more than any other player - and making 33 passes in the Lille half in a lively display before he was replaced after 77 minutes.
Kean cannot profit
It was not on-loan striker Kean's night and he could have no complaints about a lack of service.
The Italy international made some great runs, but failed to provide the finishing touch, hitting the target with only one of his four shots.
PSG are at home to Strasbourg in their last match of the year on Wednesday, when Lille travel to Montpellier.