Spain booked a last-16 World Cup clash with host Russia after a last-gasp 2-2 draw against already eliminated Morocco in Kaliningrad.
The 2010 champion started Monday on top of Group B but seemed certain to slip below its Iberian rival in the final table as both matches entered stoppage-time with Portugal and Morocco leading.
Spain went behind when Andres Iniesta and captain Sergio Ramos somehow allowed Khalid Boutaib to seize upon a loose ball and run clear to score Morocco's first goal at the finals since 1998.
Iniesta soon made amends, though, skipping through the Morocco defence to set up Isco for a quickfire leveller, with La Roja unable to break down its opponent despite dominating.
When Morocco substitute Youssef En-Nesyri got up highest to thump home a brilliant header from a Faycal Fajr corner with nine minutes to go, Herve Renard's men looked set to claim a memorable victory.
But after another substitute, Iago Aspas, tucked in a superbly improvised finish that survived a lengthy VAR review for offside, while Iran struck a late penalty, La Roja somehow finished top of the group.
Spain showed signs of its bewitching best in possession but Fernando Hierro's side must show serious improvement in the knockout stages if it has ambitions to claim a second World Cup.
A testy start to the game saw Gerard Pique perhaps fortunate to avoid punishment for a two-footed lunge on Boutaib.
Morocco's lone forward then gave his side a shock lead in the 14th minute, capitalising on a terrible mix-up between Ramos and Iniesta.
The duo's shared lapse in concentration allowed Boutaib to steal possession on the halfway line, burst through on goal and slot a neat finish through the legs of David de Gea.
That goal proved Spain's wake-up call, Iniesta and Diego Costa combining quite brilliantly to set up Isco for a slammed close-range finish that levelled the scores five minutes later.
Boutaib scampered clear again in the 25th minute when Morocco took a quick throw-in, but De Gea - beaten from all four shots on target he had faced at the World Cup - stayed tall to save.
Morocco threatened to lose its discipline with Nordin Amrabat, Manuel da Costa and Moubarak Boussoufa all booked in a tempestuous three-minute period before Sergio Busquets planted a free header from Isco's corner over the crossbar.
Pique was lucky again early in the second half when the defender appeared to handle the ball in the box, with Morocco agonisingly close to regaining the lead in the 55th minute.
Given space to let fly from at least 25 yards out, Amrabat's strike had De Gea completely beaten but the goalkeeper gratefully saw the ball bounce off the woodwork.
Isco thought he had added to his nine Spain goals scored since the start of 2017 with his looping header dipping under the crossbar, but Romain Saiss made a sensational clearance, Pique heading wide from the resulting Isco corner.
Hierro introduced Marco Asensio and Iago Aspas as Spain sought a late winner but Morocco's determined defending held them at bay.
Although only Iran shocking Portugal could have dumped Spain out, En-Nesyri thundered home a stunning header that left De Gea helpless again.
And when Aspas turned home Dani Carvajal's cross after a short corner - the goal given by VAR after a long delay, Spain was level in the first minute of added time.
With more high drama elsewhere - Karim Ansarifard smashing home an equalising spot-kick for Iran - Spain leapfrogged Portugal to Group B's summit and will now play Russia in the last 16.
Latest on Sportstar
- Indian sports news wrap, June 5
- TEST Pro Kabaddi PKL 8: Match 78 Highlights: Fazel takes down Pawan as U Mumba thumps Bengaluru Bulls 45-34
- Pro Kabaddi
- Sportstar South Sports Conclave: Chess and Chennai ft. Viswanathan Anand and RB Ramesh
- Sports academy in Ranchi grooming talent from economically backward communities