Nine-man Rangers met their match in the Europa League as Slavia Prague crushed Steven Gerrard's quarter-final dreams.
Kemar Roofe and Leon Balogun were both sent off as the Czech champions claimed a 2-0 win at Ibrox to smash Gers' 12-game unbeaten run in Europe.
Peter Olayinka headed Slavia ahead early on but Gers felt they could still turn it around.
However, Roofe's dismissal for a brutal boot to the face of Prague keeper Ondrej Kolar was a fatal setback which was quickly compounded by Balogun, who picked up a second yellow as he handed Nicolae Stanciu a set-piece chance which he expertly swept home to extend the visitors' lead.
There was another flashpoint just before the end as the Gers players seemed to accuse Slavia's Ondrej Kudela of an offensive comment.
A barrage of fireworks sparked by fans outside the ground lit up the Ibrox sky as the game kicked-off but it was Slavia who exploded forward 14 minutes in.
Skipper Jan Boril's cross found Olayinka, who got ahead of Connor Goldson to head home. Allan McGregor was the hero in the Eden Arena with last week's wonder save but this time the veteran keeper will be disappointed at allowing the ball to squirm through his grasp.
At the other end, Ryan Kent brought a good save out of Kolar before Alfredo Morelos headed a golden chance over.
Israeli referee Orel Grinfeeld was taking a lenient approach with Prague's repeated fouls but chose to show Glen Kamara a yellow which rules him out of Gers' first Champions League qualifier next season for merely standing his ground while bouncing into Alexander Bah.
Balogun survived a VAR check just before the break as he scrambled back to recover his own mistake after gifting the ball to Abdallah Sima.
It was clear Gerrard needed to change something. He gave it 10 minutes into the second period before introducing Roofe for Scott Arfield.
But the former Leeds striker was only on for seven minutes before he was heading off again as he saw red for his shocking challenge on Kolar.
Chasing a long Goldson pass, Roofe lunged forward with a high boot that flew into the keeper's face - leaving blood gushing from a huge head wound.
As Roofe made his way for the tunnel, Kolar was stretchered off to be replaced by 18-year-old debutant Matyas Vagner.
But Rangers did not get a chance to test the youngster's nerve as Balogun followed up his booking for a first-half foul on Lukas Provod with another after a crunching tackle into Boril.
And Rangers' remarkable continental run was finally killed off as Stanciu swept home a stunning free-kick.
A bad tempered affair threatened to boil over just before the end when Kudela whispered something in Kamara's ear, drawing a furious reaction from the Rangers players.
RANGERS: McGregor, Patterson (Simpson, 78 mins), Balogun, Goldson, Barisic, Arfield (Roofe, 55 mins), Davis (Itten 83), Kamara, Aribo, Morelos (Zungu, 83 mins), Kent (Wright, 83 mins). Unused subs: Bassey, Helander, Hagi, Stewart, McLaughlin, King.
SLAVIA PRAGUE: Kolar (Vagner, 65 mins), Kudela, Deli, Boril, Bah, Stanciu (Lingr, 90 mins), Hromada (Holes, 58 mins), Dorley (Kuchta, 58 mins), Sima, Oladeji Olayinka (Masopust, 58 mins), Provod. Unused subs: Tecl, Kovar, Visinsky.
Referee: Orel Grinfeld (Israel)
Man of the match: Nicolae Stanciu
Match rating: 7/10