Russia said its troops had cleared the urban area of Mariupol and only a small contingent of Ukrainian fighters remained inside a steelworks in the besieged southern port on Saturday, as missile strikes hit Ukraine's capital Kyiv and other cities.
Moscow's claim to have all but taken control of Mariupol, scene of the war's heaviest fighting and worst humanitarian catastrophe, could not be independently verified. It would be the first major city to have fallen to Russian forces since the Feb. 24 invasion.
"The situation is very difficult" in Mariupol, President Volodymyr Zelenskiy told the Ukrainska Pravda news portal. "Our soldiers are blocked, the wounded are blocked. There is a humanitarian crisis ... Nevertheless, the guys are defending themselves."
Russia's Defence Ministry said if Ukrainian forces in the Azovstal steelworks lay down their arms starting at 0300 GMT on Sunday, their lives would be spared, Tass news agency said. A senior Russian officer was quoted as saying the offer, made after weeks of fierce fighting, was prompted by "the catastrophic situation" in the steelworks as well as "purely humane principles".
There was no immediate response from Kyiv.
As Moscow launched long-range missile attacks across the country following the sinking of its Black Sea flagship, Moscow said its warplanes had struck a tank repair factory in Kyiv on Saturday. An explosion was heard and smoke rose over the southeastern Darnytskyi district. The mayor said at least one person was killed and medics were fighting to save others.
The Ukrainian military said Russian warplanes that took off from Belarus had fired missiles at the Lviv region near the Polish border and four cruise missiles were shot down by Ukrainian air defences.
The western city has been relatively unscathed so far and serves as a haven for refugees and international aid agencies.
In Mariupol, Reuters journalists reached the Ilyich steelworks, one of two metals plants where defenders had held out in underground tunnels and bunkers. Moscow claimed to have captured it on Friday.
The factory was reduced to a ruin of twisted steel and blasted concrete, with no sign of defenders present. Several bodies of civilians lay scattered on nearby streets.
The Russian defence ministry said its troops had "completely cleared" Mariupol's urban area of Ukrainian forces and blockaded the "remnants" in the Azovstal steelworks, RIA news agency said. It said that as of Saturday, Ukrainian forces in the city had lost more than 4,000 personnel.
Later on Saturday, Zelenskiy accused Russia of "deliberately trying to destroy everyone" in Mariupol and said his government was in touch with the defenders. But he did not address Moscow's claim that Ukrainian forces were no longer in urban districts.
The governor of Kharkiv province in the east said at least one person was killed and 18 injured in a missile strike. Smoke billowed from burning cars and the remains of what appeared to be an office building in the city.
In Mykolaiv, a city close to the southern front, Russia said it had struck a military vehicle repair factory.
The attacks followed Russia's announcement on Friday it would intensify long-range strikes in retaliation for unspecified acts of "sabotage" and "terrorism", hours after it confirmed the sinking of its Black Sea flagship, the Moskva.
Kyiv and Washington say the ship, whose sinking has become a symbol of Ukrainian defiance, was hit by Ukrainian missiles. Moscow says it sank after a fire and its crew of around 500 were evacuated.
Russia's Defence Ministry published video of the head of the navy, Admiral Nikolai Yevmenov, meeting on a parade ground with about a hundred sailors it said were members of the crew.
A month and a half into President Vladimir Putin's invasion of Ukraine, Russia is trying to capture territory in the south and east after withdrawing from the north following an assault on Kyiv that was repelled at the capital's outskirts.
Russian troops that pulled out of the north left behind towns littered with bodies of civilians, evidence of what U.S. President Joe Biden this week called genocide.
Russia denies targeting civilians and says the aim of its "special military operation" is to disarm its neighbour, defeat nationalists and protect separatists in the southeast.
If Mariupol falls it would be Russia's biggest prize of the war so far. It is the main port of the Donbas, a region of two provinces in the southeast which Moscow demands be fully ceded to separatists.
Ukraine says it has so far held off Russian advances elsewhere in the Donbas regions of Donetsk and Luhansk, where at least one person was killed in shelling overnight.
Ukraine gained the upper hand in the early phase of a war, in part by successfully deploying mobile units armed with anti-tank missiles supplied by the West against Russian armoured convoys confined to roads by muddy terrain.
But Putin appears determined to capture more Donbas territory to claim victory in a war that has left Russia subject to increasingly punitive Western sanctions and with few allies.
The European Union's forthcoming round of sanctions on Russia will target banks, including Sberbank SBER.MM, as well as oil, the head of the European Commission Ursula von der Leyen told the German newspaper Bild am Sonntag.
The Ukrainian military command in the east of the country, where Kyiv says it expects a major assault, said in a Facebook post it had repelled 10 attacks on Saturday, destroying 15 tanks, 24 other armoured vehicles and three artillery systems. Reuters could not independently verify the report.
Zelenskiy told Ukrainian reporters the world should prepare for the possibility Russia might use nuclear weapons. He did not give evidence for the assertion.
Last month, Kremlin spokesman Dmitry Peskov said Russia would resort to nuclear weapons only in the case of a "threat to the existence" of the country - and not as a result of the Ukraine conflict. Read full story
An advisor to Zelenskiy said the country needed a swifter supply of weapons from its European Union partners.
The Russian defence ministry said its anti-aircraft systems in the Odesa region shot down a Ukrainian transport plane delivering weapons supplied by Western governments. It did not provide any evidence. There was no immediate comment from Kyiv.
Zelenskiy said about 2,500-3,000 Ukrainian troops have been killed so far and up to 20,000 Russian troops.
Moscow has given no updates on its casualties since March 25, when it said 1,351 had died. Western estimates of Russian losses are many times higher.
Ukraine says civilian deaths are impossible to count, estimating at least 20,000 killed in Mariupol alone.
Overall, around a quarter of Ukrainians have been driven from their homes, including a tenth of the population that has fled abroad.