Spain, winner of the last two European championships, will find their road to a third successive title much trickier after losing 2-1 to Croatia , ceding first place in Group D to the Balkan side.
Finishing second in the group means that La Roja will have to get past Group E winner Italy in the first match of the knockout stage to have any chance of repeating, EFE news agency reported.
Though playing without injured stars Luka Modric and Mario Mandzukic, Croatia started the match aggressively and Spain, as they have done so many times before, made the opponents pay for their boldness.
David Silva worked his magic, directing an exquisite ball to an unmarked Cesc Fabregas, whose cross was hammered home by Alvaro Morata to make it 1-0 for the Spaniards.
La Roja settled into their customary possession game, but the execution was not up the usual standard and a mistake by Sergio Ramos put the ball at the feet of Nikola Kalinic and while Spanish keeper David De Gea dealt with the threat, his poor clearance set up a chance for Ivan Rakitic, whose shot clanged off the crossbar and the post before Gerard Pique dispatched the danger.
Still, Spain continued to sparkle on offence and had several opportunities to put the match to bed.
Croatia netminder Danijel Subasic turned aside a hard strike from Silva and Nolito watched his shot go wide, while Ramos missed the net with a header and Morata was unable to exploit a great pass from Fabregas.
In the final moments of the first half, Ivan Perisic delivered a cross to Kalinic and the Croatian striker scored the first goal conceded by Spain in 734 minutes of Euro play going back to Summer 2012.
Spain regained their equilibrium after some initial sloppiness in their own end at the start of the second half prompted coach Vicente del Bosque to make some tactical adjustments.
La Roja had an opportunity to snatch the win when they were awarded a penalty in the 72nd minute.
While Silva and Fabregas expressed interest, team captain Ramos pulled rank and strode to the spot, letting fly with a powerful shot, but Subasic guessed right and made the stop.
With three minutes left in regulation, Perisic raced forward on the counterattack and beat De Gea with a low shot to the far post to put Croatia up 2-1.