London (AFP) - Spain's shock 2-1 home defeat to Switzerland on Saturday leaves La Roja needing to beat Portugal away on Tuesday to progress to the semi-finals of the Nations League.
Portugal went top of Group A2 with a comfortable 4-0 win in the Czech Republic as Diogo Dalot struck twice with Bruno Fernandes and Diogo Jota also on target.
Spain have little time to iron out their flaws ahead of the World Cup in two months' time and a familiar combination of poor finishing and soft defending from set-pieces cost them against the Swiss in Zaragoza.
"Our first half was as imprecise as any since I've been in charge," said Spain boss Luis Enrique after a first defeat in nine games.
"I can't remember a match with so many technical errors, especially on the two corners where we conceded goals."
Manchester City defender Manuel Akanji headed the visitors into a 21st-minute lead.
The hosts responded when Jordi Alba latched onto Marco Asensio's pass to fire high into the net 10 minutes into the second half.
But moments later another Switzerland corner was not properly cleared, allowing Breel Embolo to bundle in from close range.
Portugal moved two points clear of Spain at the top of the group as they enjoyed a far smoother night in Prague.
Dalot was the unlikely hero as he grabbed his first two international goals.
The right-back found himself in a centre-forward's position to slot home the opener from close range before Fernandes rounded off a slick team move in first-half stoppage time.
Dalot then curled brilliantly into the bottom corner on his weaker left foot seven minutes into the second period.
Jota rounded off the scoring by heading in unmarked from a corner late on.
"The result speaks for itself, we played a great game and we deserved to win," said Dalot.
Scotland fight back
Scotland need just a point from their clash with Ukraine in midweek to be promoted to League A after coming from behind to beat the Republic of Ireland 2-1 and stay top of Group B1.
John Egan had fired the Irish into an early lead at Hampden Park.
But Scotland battled back to gain revenge for their 3-0 trouncing in Dublin in June.
Jack Hendry headed in Ryan Christie's cross to level before Christie rolled home the winner from the penalty spot after Alan Browne handled inside his own area.
"I'm battered and bruised", said Scotland captain John McGinn after a physical encounter in Glasgow.
"We'll do what we can to recover.It's like a cup final on Tuesday."
Ukraine kept their chances of topping the group alive with a 5-0 hammering of Armenia with Artem Dovbyk scoring twice.
Norway were made to wait to secure promotion to League A as Erling Haaland was upstaged by one of Europe's other rising stars Benjamin Sesko in a 2-1 defeat to Slovenia.
Haaland pounced to open the scoring with his 21st goal in 22 international appearances, but Salzburg striker Sesko, who has already agreed a move to RB Leipzig next season, teed up Andraz Sporar to equalise before hitting a long-range volley to win the game for the hosts in Ljubljana.
Serbia moved level on points with Norway at the top of Group B4 as Aleksandar Mitrovic scored a hat-trick in a 4-1 thrashing of Sweden.
Israel's late winner to beat Albania 2-1 secured their promotion to League A.
Northern Ireland secured their first ever Nations League win thanks to Josh Magennis' stoppage-time header as Ian Baraclough's men came from a goal down to beat Kosovo 2-1 in Belfast.