Russian President Vladimir Putin claimed victory on Thursday in the biggest battle of the Ukraine war, declaring the port city of Mariupol "liberated," although hundreds of Ukrainian troops and civilians were still holding out inside a giant steel works.
The United States disputed Putin's claim and said it believed Ukrainian forces still held ground in the city. Putin ordered his troops to blockade the steel complex, where Ukrainians were told earlier to either surrender or die.
Ukraine said Putin wanted to avoid a final clash with its forces in Mariupol, as he lacked troops to defeat them. But Ukrainian officials also appealed for help to evacuate civilians and wounded soldiers.
In a televised meeting at the Kremlin, Putin congratulated his defence minister and Russian troops for having "successfully completed the combat effort to liberate Mariupol".
He said it was unnecessary to storm the industrial zone containing the Azovstal steel plant.
"There's no need to climb into these catacombs and crawl underground through these industrial facilities... Block off this industrial area so that not even a fly can get through," Putin said.
Mariupol, a major port in Ukraine's eastern Donbas region, sits between areas held by Russian separatists and Crimea, the Black Sea peninsula Moscow seized in 2014. Capturing the city would allow Russia to link the two areas as it intensifies its offensive in Ukraine's east.
Even as Putin claims his first big prize since his forces were driven away from the capital Kyiv and northern Ukraine last month, it falls short of the unambiguous victory Moscow has sought after months of combat in a city reduced to rubble.
In a late-night address, Ukraine's President Volodymyr Zelenskiy said Russia was doing all it could "to talk about at least some victories", including mobilising new battalion tactical groups.
"They can only postpone the inevitable - the time when the invaders will have to leave our territory, including from Mariupol, a city that continues to resist Russia regardless of what the occupiers say," Zelenskiy said.
Russia calls its invasion a "special military operation" to demilitarise Ukraine. Kyiv and its Western allies reject that as a false pretext for a war that has killed thousands and uprooted a quarter of Ukraine's population.
Moscow stepped up its attacks in eastern Ukraine this week and made long-distance strikes at other targets including Kyiv and the western city of Lviv, where missiles killed seven people on Monday.
Heeding continued Ukrainian calls for new weapons, Washington authorized another $800 million in military aid for Ukraine on Thursday, including heavy artillery.
Asked about Putin's victory declaration in Mariupol, US State Department spokesman Ned Price said it was "yet more disinformation from their well-worn playbook".
Mariupol, once home to 400,000 people, has seen not only the most intense battle of the war that started when Russian forces invaded on February 24, but also its worst humanitarian catastrophe.
Ukraine estimates tens of thousands of civilians have died in Mariupol. The United Nations and Red Cross say the civilian toll is at least in the thousands.
Journalists who reached Mariupol during the siege found streets littered with corpses, nearly all buildings destroyed, and residents huddled freezing in cellars, venturing out to cook scraps on makeshift stoves or to bury bodies in gardens.
Ukrainian fighters remain inside the Azovstal steel complex, one of the biggest metallurgical facilities in Europe, covering 11 sq km with huge buildings, underground bunkers and tunnels.
Mariupol's mayor, Vadym Boichenko, told Reuters on Thursday that Putin alone can decide the fate of the 100,000 civilians still trapped in the city.
"It's important to understand that the lives that are still there, they are in the hands of just one person - Vladimir Putin. And all the deaths that will happen after now will be on his hands too," Boichenko said in an interview.
Ukrainian Deputy Prime Minister Iryna Vereshchuk said 1,000 civilians and 500 wounded soldiers needed to be brought out from the plant immediately, blaming Russian forces for the failure to establish a safe corridor that she said had been agreed.
Moscow says Russia has taken in 140,000 civilians from Mariupol in humanitarian evacuations. Kyiv says some were deported by force, in what would constitute a war crime.