Scottish First Minister Nicola Sturgeon is set for a showdown with Boris Johnson as she insists the SNP's election success gives her a "renewed, refreshed and strengthened" mandate for a second vote on Scottish independence.
Her Scottish National Party made a series of gains north of the border, including ousting Liberal Democrat leader Jo Swinson.
Sturgeon said it had been an "exceptionally good night", with the results leaving Scotland and the rest of the UK on "divergent paths".
'There is a clear endorsement Scotland should get to decide our future and not have it decided for us,' said First Minister and SNP Leader Nicola Sturgeon. (Getty)
The SNP won 47 MPs, up from the 35 they won two years ago, making it the party's second best Westminster result ever. While the Tories made gains south of the border, in Scotland it was a different story: there are now six Tory MPs in Scotland, down from 13 in 2017.
The Tory campaign in Scotland had focused squarely on preventing a second vote on independence, while the SNP had based their campaign on stopping Brexit and pursuing a fresh independence referendum.
"I accept that Boris Johnson after this election has a mandate to take England out of the European Union but he does not have a mandate to take Scotland out of the European Union," Sturgeon said.
"There is a clear endorsement Scotland should get to decide our future and not have it decided for us."
She will write to the prime minister before Christmas to formally demand Holyrood be given the power to hold a second vote on independence.
While Johnson has previously made clear he will block such a ballot, Sturgeon said the Tories must "reflect very carefully" on the result of the election.