At least 24 people have died in overnight strikes across central and eastern Ukraine, in what Volodymyr Zelensky has described as one of Russia's "most vile" attacks.
Ukraine's president said a residential building in Pryluky in the Chernihiv region was destroyed as a "birthday 'gift' to Putin", who turns 74 on Wednesday. Strikes also hit Kyiv, Dnipro, Kremenchuk, Zaporizhzhia and Oleksandriya.
Zelensky said Ukraine had struck targets in attacks on Russia's Perm, Samara and Astrakhan regions in the past 24 hours, adding there was "also a response in the Black Sea", without providing further details.
Moscow is yet to comment on the latest strikes.
"The Russians wanted to strike painfully and demonstratively," Zelensky said, adding that 70 missiles were fired in total.
In a social media post on Wednesday afternoon Zelensky said 18 people, including four children, had been killed in one strike on a five-storey apartment building in Pryluky.
State Emergency Service of Ukraine says there had also been 50 people injured in the attack, including seven children.
Zelensky renewed a call for allies to provide air defence support packages to Ukraine, saying its military only managed to shoot down "some" of the missiles launched by Russia overnight.
According to Zelensky, one of the "key targets" of the attack was the country's energy infrastructure, which Moscow earlier said it would intensify strikes on following Ukraine's strikes on Moscow's energy facilities.
In a separate post on Wednesday, Zelensky said Ukraine had struck four targets in retaliatory attacks in the past 24 hours, including two oil facilities and a training ground in the Perm, Samara and Astrakhan regions.
"There is also a response in the Black Sea," the Ukrainian president wrote.
On Tuesday evening, footage emerged showing a huge plume of smoke engulfing an oil tanker off the coast of Sochi, along the Black Sea in southern Russia.
The Russian transport ministry later said unmanned boats had attacked the Liberian-flagged Aframax Rio oil tanker. Authorities claim the crew was rescued.
Separately, Bulgaria has halted a search for the missing crew of a ship that sank after being hit by a drone on Tuesday, Vice-Admiral Rumen Nikolov from the Maritime Administration Executive Agency said, as reported by Bulgaria's BTA news agency. No details of the crew are known, but Nikolov said it was assumed there were Syrians on board.
Tracking data shows the ship was anchored at the southern end of the Bosphorus strait until Monday when it entered the Black Sea heading north. Its last reported position on ship-tracking site MarineTraffic was at 23:43 GMT on Monday in what is known as the Bulgarian exclusive economic zone of the Black Sea.
Bulgarian specialist news outlet Maritime.bg reported the Alfa Watan was attacked by a drone and sank 70nm (130km) east of Byala.
As well as the civilian cargo ship, a second vessel - carrying grain - was also hit within Bulgaria's exclusive economic zone, its Prime Minister Rumen Radev said on Tuesday. The 18 crew members on the second vessel were rescued.
Bulgaria has not said who it believes was behind the attacks.
It comes as Russia intensifies strikes in the Black Sea, particularly the eastern side, as part of its war against Ukraine.
In an evening address on Tuesday, Zelensky claimed Russia was responsible for the attacks.
Moscow has not commented on the latest incident.
Additional reporting by BBC Verify