An own goal saw Juventus go through to the knockout stages of the Champions League as Group E winners as they edged out Shakhtar Donetsk in Ukraine.
Olexander Kucher inadvertently turned Stephan Lichtsteiner's cross into his own net in the 56th minute, seeing Juve leapfrog Shakhtar at the top and rendering Chelsea's 6-1 thrashing of FC Nordsjaelland meaningless.
Both teams struck the post but Juventus could just about claim to be worthy winners as they had the better of the chances and ensured most of the game was played in Shakhtar territory.
News of the result killed any party at Stamford Bridge, where Rafael Benitez claimed his first win in charge of Chelsea and Fernando Torres scored twice.
A bizarre first half saw both sides miss penalties before David Luiz nailed the third spot-kick - all given for handball - in the space of seven minutes to put Chelsea in front.
Torres added a second before Joshua John pulled one back, but goals from Gary Cahill, Torres again, Juan Mata and substitute Oscar saw Chelsea cruise.
Kris Commons' dramatic late penalty gave Celtic a 2-1 victory over Spartak Moscow at Parkhead and secured the Hoops a place in the last 16.
Striker Gary Hooper opened the scoring in the 21st minute when he capitalised on a mistake by Spartak defender Juan Insaurralde, but that lead was cancelled out in the 39th minute by Ari, after good work by the impressive Emmanuel Emenike.
But the Scottish champions were not to be denied and, after defender Marek Suchy conceded a penalty in the 80th minute for a clumsy barge on Georgios Samaras, up stepped Commons to slam the ball in off the bar.
Kim Kallstrom was shown a late red card for a clumsy challenge on Commons, his second bookable offence.
There was then a nervous wait at the finish as Celtic, who needed to better Benfica's result to progress from Group G, listened for news from the Portuguese side's goalless draw at Barcelona.
With no goals, the major incident at the Nou Camp was an injury to Lionel Messi, who was taken off on a cart after appearing as a second-half substitute, leaving Barca to finish with 10 men.
Bayern Munich sealed top spot in Group F as they coasted to a 4-1 victory over BATE Borisov at the Allianz Arena.
BATE never threatened a repeat of their 3-1 upset earlier in the competition as a much-changed Bayern side did more than enough to ensure they will avoid the likes of Barcelona and Manchester United in the next round.
Mario Gomez, one of seven changes, opened the scoring on 21 minutes before Thomas Muller and Xherdan Shaqiri netted shortly after half-time to ensure a nerveless second period.
Substitute David Alaba completed the rout with seven minutes remaining before Egor Filipenko grabbed a BATE consolation.
By then, both sides had been reduced to 10 men with Bayern's Jerome Boateng seeing red for a poor challenge on Artem Kontsevoy in the 51st minute and Denis Polyakov following 18 minutes later for a second bookable offence.
The win saw Bayern pip Valencia to top spot, despite the Spaniards winning 1-0 in Lille thanks to a 37th-minute penalty from Oliveira Jonas after Marko Basa had impeded him.
In Group G, CFR Cluj took a 1-0 win over Manchester United courtesy of Luis Alberto's wonder goal, but were denied second place as Galatasaray came back to beat Braga 2-1.
Marcio Mossoro's curling shot gave Braga a first-half lead, but Burak Yilmaz and namesake Aydin struck in the second half to turn it around.