The US Congress on Friday dealt Donald Trump a humiliating blow in his last days in office with the Senate voting overwhelmingly to override his veto of a sweeping defense bill -- the first time lawmakers have done so during his presidency.
By a lopsided vote of 81-13, well more than the two-thirds of the 100-member chamber required, the Republican-controlled Senate approved the $740.5 billion National Defense Authorization Act to fund the military for fiscal year 2021.
The Democratic-led House of Representatives had voted 322 to 87 on Monday to override Trump's veto.
Both houses of Congress had easily passed the legislation in early December by strong majorities, but Trump, citing a litany of objections, vetoed it on December 23.
"It's time for us to deliver this bill," Republican Senate majority leader Mitch McConnell said at the start of Friday's session.
"It's our chance to remind brave service members and their families that we have their backs."
The vote completed a stunning rebuke in the waning weeks of Trump's presidency.
It came in an extraordinary New Year's Day session necessitated by his veto, possibly the final act of the outgoing Congress.
New members will be sworn in on Sunday, just 17 days before Democrat Joe Biden is inaugurated to succeed Trump.
- Trump's complaints -
Breaking with members of his party, Trump had criticized the defense bill on numerous grounds.
He called it a "gift" to China and Russia and said it restricted his ability to lower troop numbers in Afghanistan, South Korea and elsewhere.
Trump had bristled at language to rename military installations that currently honor leaders of the breakaway Civil War-era, pro-slavery Confederacy.
He also insisted the bill should include a repeal of a federal law, known as Section 230, that provides liability protection to internet companies such as Facebook, Twitter and Google, which he regularly accuses of anti-conservative bias.
"Our Republican Senate just missed the opportunity to get rid of Section 230, which gives unlimited power to Big Tech companies," Trump tweeted after the vote. "Pathetic!!!"
Referring to the Senate's refusal to vote first on a motion to increase pandemic aid checks, he added, "Now they want to give people ravaged by the China Virus $600, rather than the $2000 which they so desperately need," using a term he applies to the coronavirus that has been widely decried as racist and fanning conspiracy theories.
But members of the president's own Republican Party -- which traditionally prides itself as strong on defense -- underscored the importance of the bill.
"It's absolutely vital to our national security and our troops," said Republican Senator Jim Inhofe, chairman of the Armed Services Committee.
"Our men and women who volunteer to wear the uniform shouldn't be denied what they need -- ever."
Democrats in both chambers had slammed Trump's veto.
House Speaker Nancy Pelosi hailed the "resounding rebuke" that both houses of Congress delivered by overwhelmingly overriding Trump's veto.
"Instead of keeping Americans safe, the President continues to use his final moments in office to sow chaos and undermine our security," she said in a statement.
Senator Jack Reed, the ranking Democrat on the Armed Services Committee, said Friday on the Senate floor that the bill was "essential" in bolstering the nation's cybersecurity against the type of widespread targeted attack that recently hit both the government and some private companies.
As to Trump's remark that Moscow and Beijing might approve of the bill, Reed said that any such suggestion was "completely baseless."
On the Senate floor Friday, Inhofe and Reed repeatedly congratulated each other for their months-long collaboration on the sweeping bill -- a rare instance of cross-aisle cooperation in the deeply divided Congress.