Boris Johnson has failed his first electoral test as voters backed the Liberal Democrats in the Brecon and Radnorshire by-election.
The Liberal Democrats won the mid-Wales constituency by a margin of 1,425, swinging the vote nearly 12% from the Tories.
The Tory loss will add to the PM’s challenges to steer Brexit through parliament – leaving him with just a majority of one – and may increase the chances of a snap general election.
With the vote coming eight days after Johnson was anointed, it is the quickest by-election defeat for any PM of the post-war period.
The by-election was called following the sacking of Tory MP Chris Davies last month following a recall petition.
The recall petition was triggered after Davies was convicted in March after he admitted submitting two false expenses invoices for nine photographs costing £700 to decorate his new office.
He was fined £1,500, ordered to pay £2,500 towards legal costs and told to carry out 50 hours of community service.
Davies was later selected again by the Conservative Party to fight for the parliamentary seat he lost after more than 10,000 constituents signed a petition to remove him.
In the by-election the Lib Dems secured 43% of the vote, the Tories 39% and the Brexit Party 10%.
Fourth-placed Labour narrowly avoided losing its deposit by securing just over 5% of the share.
The Lib Dems had a narrow victory in part thanks to a “Remain alliance” forged in the constituency, with Plaid Cymru and the Greens agreeing not to field candidates in the by-election.
New leader Jo Swinson also visited the constituency in recent days with her leadership rival Ed Davey visiting on polling day.
The winning candidate, Jane Dodds, immediately challenged Boris Johnson to rule out a no-deal Brexit as she celebrated her victory.
“People are desperately crying out for a different kind of politics. There is no time for tribalism when our country is faced with a Boris Johnson government and the threat of a no-deal Brexit,” she said.
“So my very first act as your MP when I arrive in Westminster will be to find Mr Boris Johnson wherever he is hiding and tell him loud and clear: ‘Stop playing with the future of our communities and rule out a no-deal Brexit now’.”