Wales kept alive their flagging hopes of reaching Euro 2020 by holding Croatia to a 1-1 home draw after Gareth Bale cancelled out an early Nikola Vlasic opener for the visitors in a bruising Group E qualifier on Sunday.
The result left Croatia top of the group on 14 points from seven games, two more than Hungary who ground out a fortuitous 1-0 home win over Azerbaijan in the day's early fixture.
Third-placed Slovakia have 10 points from six games and Wales in fourth have eight from six. Bottom team Azerbaijan are on one point from six matches.
Vlasic fired Croatia ahead in the ninth minute after Josip Brekalo's jinking run allowed Bruno Petkovic to tee up the ball for the midfielder, who beat keeper Wayne Hennessey with a crisp low shot which went in off the post.
Hennessey kept Wales afloat with a superb save which denied Ivan Perisic before Bale capitalised on good work by Ben Davies in first-half stoppage time, as he rounded Dejan Lovren before driving the ball past goalkeeper Dominik Livakovic.
The equaliser came after a chilling moment midway through the first half, when Wales winger Daniel James suffered a concussion as a result of a reckless tackle by Croatia centre back Domagoj Vida.
Then early in the second half, Wales midfielder Ethan Ampadu had to be helped off the pitch by team doctors and was substituted by Joseff Morrell after a clumsy aerial challenge from Petkovic left him out for the count on the turf of Cardiff City's stadium.
Livakovic smothered a James shot before a dangerous Wales raid left three players from either side lying on the pitch following a series of crunching collisions, with Croatia captain Luka Modric unable to carry on.
The Hungarians scrambled a lifeline win over Azerbaijan thanks to a sublime 10th-minute volley from left back Mihaly Korhut, who blasted in the winner from 30 metres after the visitors half-cleared a cross from the left.
The home side were let off the hook in stoppage time when referee Dennis Higler disallowed an Azerbaijan goal for perceived handball, although video replays showed the ball went in off Bahlul Mustafazade's chest.