The 2010 World Cup winner had to chase the game twice in the second half, with Dani Ceballos cancelling out Andrej Kramaric’s opener and captain Sergio Ramos leveling from the penalty spot after Tin Jedvaj had made it 2-1 to the host, Reuters reported.
There were left with virtually no time to respond, though, when left back Jedvaj struck again in stoppage-time.
“We created a lot of chances, some of them where it looked impossible that the ball would not go in, we hit the crossbar, and football has been unfair to us,” Luis Enrique told a news conference.
“In their first goal we made a mistake, their second came from a set-piece and they were lucky at the end. In the second half we deserved a lot more, we certainly didn’t deserve defeat but this is football and we need to accept it.”
Spain has experienced a slump since thumping Croatia 6-0 in September and beating England.
La Roja’s place in the finals of the new competition now hangs in the balance after losing 3-2 at home to England and defeat in Zagreb.
Spain still tops Group 4 with six points after four games but to reach the final round it needs England to draw with Croatia in the group finale on Sunday.
Luis Enrique appeared resigned to his side not making it through, turning his attention to the qualifying campaign for Euro 2020.
“I would love to qualify for the final four but our top objective is the European Championships,” he said.
“We knew we were in a group with two of the best teams in the world but I’m not worried about my team. I can see areas we need to improve in, but I think today’s result is completely unfair.”
Croatia had taken one point from its previous two Nations League games after appearing to suffer a hangover from reaching the this year’s World Cup final.
But Jedvaj’s late winner now means victory at Wembley over England, which it beat 2-1 in the World Cup semifinals, would put the Croats in the final phase.
“I am sure we have it in us to beat England,” Croatia coach Zlatko Dalic said. “The best of this new-look team is yet to come.”