Spain edged into the quarter-finals of Euro 2020 after an enthralling 5-3 victory over Croatia after extra time.
A frenetic opening to the game was punctuated with one of the most bizarre own goals you're ever likely to see from Spain. The impressive Pedri overcooked a pass back to Unai Simon, who took his eye off the ball as it bobbled past his right boot and eventually into the back of the net.
Spain looked shaken by that, but they recovered well, and had the lead within ten minutes of the restart. Pablo Sarabia fired in the equaliser shortly before the break, before the lively Ferran Torres picked out Cesar Azpilicueta, who arrived with a crashing header at the back post to give his team the lead.
It looked as if Spain were going into cruise control mode when Torres stroked home a third, but Croatia weren't lying down and came back into it when Mislav Orsic bundled one over the line to set up a nervy finish.
Six minutes of stoppage time had Spain sweating, and they had every reason to be as Croatia smelled blood. Orsic was causing all sorts of problems, and there were scenes on the Croatia bench when he picked out fellow substitute Mario Pasalic, who bulleted in a dramatic equaliser at the front post.
The game descended even further into madness as extra-time beckoned, and the Croatians were pumping long balls at the Spanish back line hoping for a famous winner. But eventually, Spain's class came to the fore, with Alvaro Morata and Mikel Oyarzabal restoring their two-goal advantage and ensuring penalties would not be required.
Here's how the players fared in a breathless last 16 tie.
Croatia player ratings
1. Goalkeeper & Defenders
Dominik Livakovic (GK) - 7/10 - Great save to deny Gaya right before Sarabia's equaliser for Spain and kept his side alive for long spells. Shame about the five goals he conceded.
Josip Juranovic (RB) - 5/10 - Struggled to deal with the double-up of Gaya and Sarabia and looked panicky with the ball at his feet. Sacrificed for Josip Brekalo as Zlatko Dalic threw the dice.
Domagoj Vida (CB) - 6/10 - A bit rash with his positioning on a few times, though that may just be down to Croatia's needlessly high line.
Duje Caleta-Car (CB) - 6/10 - Looks a step up on Dejan Lovren anyway. Few fragile moments - hardly surprising considering the attacking form Spain were in.
Josko Gvardiol (LB) - 4/10 - His distribution left a lot to be desired and he was culpable for Spain's second and third.
Luka Modric (CM) - 6/10 - Found space efficiently and saw plenty of the ball but struggled to create many real chances for his side.
Marcelo Brozovic (CM) - 5/10 - Very good at fouling people and breaking up the play. Not much beyond that unfortunately.
Mateo Kovacic (CM) - 6/10 - Possibly Croatia's best midfielder on a day they really struggled to get any sort of control in the middle of the park. Withdrawn for the final ten just as Croatia came roaring back into it.
Nikola Vlasic (RW) - 5/10 - Croatia will need him in the years ahead as more and more of their top stars call it a day. But unfortunately he wasn't quite at it here.
Bruno Petkovic (CF) - 4/10 - Bit of a passenger in the first half and went off for the more mobile Andrej Kramaric at the half-time break.
Ante Rebic (LW) - 6/10 - Ran the channels well but struggled to provide the sort of influence that Covid absentee Ivan Perisic normally comes up with. Off for Mislav Orsic as Croatia chased the game.
Andrej Kramaric (Petkovic, 46) - 6/10 - Looked a better fit for the high-pressing game Croatia were trying to play.
Mislav Orsic (Rebic, 67) - 8/10 - Goal and an assist off the bench. You can't ask for much more.
Josip Brekalo (Juranovic, 74) - 5/10 - Helped breathe some life into his team and get them up the park.
Mario Pasalic (Vlasic, 78) - 6/10 - Great commitment to get into the box and head in a hugely dramatic equaliser for his side.
Ante Budmir (Kovacic, 78) - 5/10
Luka Ivanusec (Modric, 114) - N/A
Spain player ratings
5. Goalkeeper & Defenders
Unai Simon (GK) - 6/10 - Oh mate. Horrible mistake for the opener but recovered with some excellent goalkeeping to keep Spain alive.
Cesar Azpilicueta (RB) - 7/10 - Showed some leadership to get his team back up for the fight after going 1-0 down to the most hilarious own goal you're ever likely to see. Great header to put his team ahead - his first international goal.
Eric Garcia (CB) - 6/10 - Almost flawless in possession from the Barcelona youngster. Didn't have too much to defend, but was withdrawn for the last 20 minutes - which proved to be a mistake...
Aymeric Laporte (CB) - 7/10 - Commanded the back line capably and once again looked a good addition to Enrique's defence up until they collapsed towards the end of the 90.
Jose Gaya (LB) - 6/10 - He's not Jordi Alba, but as backups go, he's not the worst option to have. Made himself a nuisance with his endless running and dealt with most of what he had to defensively.
Koke (CM) - 7/10 - Did his job diligently, moving the ball on and keeping Spain moving forward whenever it came to him.
Sergio Busquets (CM) - 6/10 - His return has brought some balance and composure to the Spain midfield.
Pedri (CM) - 8/10 - Took up some dangerous positions and nearly had one of the assists of the tournament with a wonderful early ball for Koke. Put a little too much on the back-pass to Simon for the opener, but was involved in the moves for the first two goals and enjoyed another hugely productive performance.
Ferran Torres (RW) - 8/10 - Some bright dribbles in the early stages, grew into the game and was pulling all the strings by the time the final whistle went. Lovely cross for the crucial second goal, tidy finish for the third.
Alvaro Morata (CF) - 7/10 - Quietly important to his side's build-up play, and while his profligacy in front of goal came to the fore at times, he found a spectacular finish to win the game.
Pablo Sarabia (LW) - 6/10 - Instinctive, powerful finish for his second goal of the tournament. Faded out of the game though and rested for the final 20 of normal time.
Pau Torres (Garcia, 71) - 5/10 - Brought on to provide more of an aerial presence at the back, so obviously lost his man in the box and let him head in the equaliser.
Dani Olmo (Sarabia, 71) - 6/10
Fabian Ruiz (Koke, 78) - 5/10
Jordi Alba (Gaya, 78) - 5/10
Mikel Oyarzabal (Torres, 88) - 6/10