Lyon's hopes of playing Champions League football next season receded sharply on Wednesday after a 3-0 loss at Toulouse left them six points behind third-placed Lille in Ligue 1 with only six games remaining.
Lyon were bidding to bounce back from Saturday's extra-time loss to Marseille in the League Cup final but another sterile performance saw them undone by goals from Pantxi Sirieix, Emmanuel Riviere and substitute Umut Bulut.
Victory for Toulouse, meanwhile, drew them level on points with fourth-placed Lyon, who now face a battle just to hold on to the consolation prize of a Europa League place.
However, OL can secure a Europa League berth by beating third-tier Quevilly in the French Cup final on April 28, while the fact that Lille must still play Montpellier and Paris Saint-Germain gives them a glimmer of hope in the battle for third.
Lyon coach Remi Garde dropped Lisandro Lopez to the bench in order to match Toulouse's 4-1-4-1 but his side fell behind in the ninth minute when Sirieix volleyed home after Mouhamadou Dabo failed to deal with Adrien Regattin's cross.
Sirieix turned provider in the 22nd minute, shaping a cross into the box from the right that Riviere met with a firm header into the top-left corner.
Garde introduced Lisandro and Michel Bastos at half-time, while Yoann Gourcuff came on in the 63rd minute to make his first league appearance since December 21 following a spell on the sidelines with a groin injury.
The substitutes did not make the required impact, however, and Bulut broke the visitors' offside trap in the 91st minute before lifting the ball over Hugo Lloris to seal Lyon's 11th defeat of the season.
Marseille's run of games without victory in Ligue 1 now stands at 11 after they were held to a 1-1 draw at home to Caen that left OM 10th and took the visitors a point clear of the relegation zone.
Caen went ahead in the 11th minute, with M'Baye Niang intercepting Nicolas N'Koulou's attempted pass and crossing for Frederic Bulot to score at the second attempt.
Loic Remy equalised 15 minutes later, claiming his 11th league goal of the season from the penalty spot after a handball by Alexandre Raineau.