La Liga: Real Sociedad 1 Granada 1
Odion Ighalo scored in the third minute of second-half stoppage time to earn Granada a point in San Sebastian, which kept Villarreal's slim hopes of playing in next season's Europa League alive.
Both teams finished the match with 10 players after Granada's Recio and Sociedad's Mikel Gonzalez were red-carded early in the second half.
Jagoba Arrasate's Sociedad could have wrapped up sixth spot on Monday, and the accompanying berth in next season's Europa League, but the draw leaves them five points ahead of seventh-placed Villarreal with two rounds left in La Liga.
If Villarreal beat Rayo Vallecano on Saturday and Sociedad lose the Basque derby to Athletic Bilbao on Sunday, Villarreal will take on Arrasate's men in a winner-takes-all encounter in San Sebastian on the final day of the season.
Sociedad dominated the goal-scoring opportunities against Granada with 21 shots - six on target - compared to the visitors' 15, three of which were goal-bound.
But the home side had to wait until deep in the second half to finally break open Granada's defence through Carlos Vela.
Before Vela's opening goal, Recio was shown a second yellow card for dissent in the 54th minute, while Gonzalez was given his marching orders three minutes later for a lunge on Granada midfielder Manuel Iturra.
In the 78th minute, Vela opened the scoring with a sharp first-time finish from Alberto De La Bella's cutback from the left side and Sociedad were on track for a vital three points.
But the hosts were unable to maintain their advantage until the final whistle, with Granada attacking down the right through Jeison Murillo and Ighalo converted, although the Nigerian striker appeared to be offside.
The draw took Granada to 38 points in 15th, three points clear of the relegation zone.
Granada will take on fellow relegation candidates in their final two games; 16th-placed Almeria at home on Sunday and 19th-placed Real Valladolid a week later.