Match ends, Nottingham Forest 3, Middlesbrough 0.
Joe Lolley scored twice as Middlesbrough's Championship play-off bid was dealt a blow by Nottingham Forest at the City Ground.
Lolley blasted in a penalty after Karim Ansarifard was fouled from behind by Ryan Shotton, who was fortunate to escape with only a yellow card.
Alexander Milosevic volleyed home Nottingham Forest's second - his first goal for the club - after Matty Cash had crossed from the left.
Joao Carvalho hit the post shortly before setting up Lolley's late third.
Derby County's 2-0 win against QPR at Pride Park, where both goals were scored deep into injury time, meant the Rams replaced Boro in sixth place with two matches of the campaign remaining.
With his team trailing to Lolley's 39th-minute spot-kick, Boro boss Tony Pulis made a double substitution at half-time, replacing Muhamed Besic and Ashley Fletcher with Jordan Hugill and Marcus Tavernier.
But the change made little difference and Boro would have gone two down soon after the interval had keeper Darren Randolph not produced a stunning save to deny Ansarifard at point-blank range after the Iranian had been superbly found by Carvalho.
Randolph also saved from Carvalho and Cash to prevent the visitors suffering an even heavier defeat.
Nottingham Forest manager Martin O'Neill:
"It's a question of saying 'this is a performance where we were terrific, the best performance of the season', and the players have to go and earn that right to do a little trick on the ball in the 75th minute when you're 2-0 up.
"You don't want to be brittle, you don't want to be a fair-weather team.
"That was us at our best, but what we want is at times when we're not at our best to be able to cut it. That's something that's been missing at this club for a long, long time."
Middlesbrough boss Tony Pulis:
"It was always going to be difficult - we've only got two real defenders on the pitch. We're trying to put square pegs in round holes and it really caught us out today.
"I'm disappointed. We played with forwards on the pitch today, more forward-thinking players than I've ever played, and you want them to do a lot more going forward.
"We've still got a chance. We've got to dust ourselves down and we need all the players to be together and try and get a result Saturday."
- 14CashBooked at 45mins
- 28Tuncará GomesSubstituted forYacobat 84'minutes
- 10CarvalhoSubstituted forGuédiouraat 88'minutes
- 37AnsarifardSubstituted forGrabbanat 62'minutes
- 5ShottonBooked at 38mins
- 37BesicSubstituted forTavernierat 45'minutes
- 22SavilleSubstituted forDowningat 65'minutes
- 18FletcherSubstituted forHugillat 45'minutes
- Peter Bankes
- Shots on Target
Second Half ends, Nottingham Forest 3, Middlesbrough 0.
Attempt saved. Lewis Grabban (Nottingham Forest) right footed shot from the centre of the box is saved in the bottom left corner. Assisted by Matthew Cash with a headed pass.
Jack Robinson (Nottingham Forest) wins a free kick in the defensive half.
Foul by Jordan Hugill (Middlesbrough).
Delay over. They are ready to continue.
Delay in match Marcus Tavernier (Middlesbrough) because of an injury.
Substitution, Nottingham Forest. Adlène Guédioura replaces João Carvalho.
Offside, Middlesbrough. Paddy McNair tries a through ball, but Britt Assombalonga is caught offside.
Goal! Nottingham Forest 3, Middlesbrough 0. Joe Lolley (Nottingham Forest) left footed shot from the centre of the box to the bottom left corner. Assisted by João Carvalho.
Substitution, Nottingham Forest. Claudio Yacob replaces Pelé.
Pelé (Nottingham Forest) wins a free kick in the defensive half.
Foul by Marcus Tavernier (Middlesbrough).
Attempt blocked. Lewis Grabban (Nottingham Forest) right footed shot from the left side of the box is blocked. Assisted by Ben Osborn.
João Carvalho (Nottingham Forest) hits the right post with a right footed shot from the left side of the box.
Molla Wagué (Nottingham Forest) wins a free kick on the right wing.
Foul by Jordan Hugill (Middlesbrough).
Attempt blocked. Ryan Yates (Nottingham Forest) left footed shot from the centre of the box is blocked. Assisted by Ben Osborn with a cross.
Corner, Nottingham Forest. Conceded by Jonny Howson.
Corner, Nottingham Forest. Conceded by Darren Randolph.