Brazil's presidential front-runner, Jair Bolsonaro, lost 40% of his blood after he was stabbed on Thursday, hospital officials say.

The far-right politician was attacked at a campaign rally in Minas Gerais.

Doctors say he suffered a deep and life-threatening wound in his intestines, but is now recovering well.

His son, Flavio Bolsonaro, said it was unlikely that his father would be able to return to campaigning before next month's election.

He said his father was still weak and had trouble speaking, adding: "He cannot go to the streets, but we can."

The controversial politician has won supporters for his tough stance on crime, but has outraged many in Brazil with racist and homophobic comments.

Polls suggest he will get the most votes in the first round of the October presidential elections if former President Luis Inácio Lula da Silva remains blocked from standing, but is unlikely to win a run-off.

Left-wing Lula had been the long-standing favourite but he is currently in prison, appealing against a ban on his candidacy that was imposed after his conviction for corruption.

What's the latest on Mr Bolsonaro?
Hospital director Eunice Dantas told reporters on Friday that Mr Bolsonaro had lost more than two litres of blood, and was in shock, when he arrived.

He is now stable and "in excellent clinical condition" after being operated on, she added, although he will need to spend at least a week in hospital.

Mr Bolsonaro's family say the knife had penetrated 12cm (4.7in) into his abdomen, Reuters news agency reports.

He has now been transferred to a hospital in São Paulo.

In a video circulated on social media on Friday, Mr Bolsonaro gave a brief message from his hospital bed.

In a hoarse voice, he thanked God and his medical team and compared the stabbing to the shock of being hit hard by a ball in football match. He said the pain had been "intolerable" but he knew could face risks. He added that he had "never hurt anyone".

Flavio Bolsonaro also tweeted a photo of his father giving the thumbs-up gesture from his hospital bed.

Police have arrested a suspect, 40-year-old Adelio Obispo de Oliveira, and say they are investigating his mental health.

He was manhandled and beaten by angry supporters of Mr Bolsonaro before being taken into custody.

What has been the reaction?
Mr Bolsonaro's electoral rivals have all condemned the stabbing. Fernando Haddad, who is expected to replace Lula on the Workers' Party ticket, said the attack was "absurd and regrettable".

Speaking in the capital Brasilia, President Michel Temer said such an attack was "intolerable" in a democratic state and that he hoped Mr Bolsonaro recovered soon.

Some observers believe the attack may improve Mr Bolsonaro's chances at next month's election.

Correspondents have described the attack as a dramatic twist in one of Brazil's most uncertain presidential elections in decades.

What do we know about the suspect?
Adélio Bispo de Oliveira, 40, is a left-wing supporter who has been very vocal in his criticism of Mr Bolsonaro. He posted many messages on Facebook denouncing his policies. Between 2007 and 2014 he was affiliated to the left-leaning PSOL party.

He had campaigned for the release of former President Lula, but in recent months he had expressed on Facebook his disillusionment with all politicians and declared that he did not intend to vote for any of the presidential candidates.

His relatives said that he seemed to have mental problems and that they had lost contact with him.

They told O Globo newspaper that he was very religious and spent most of this time alone, reading the Bible.

Why is Mr Bolsonaro so polarising?
The 63-year-old, who is representing the Social Liberal Party (PSL), is followed by millions of Brazilians on social media, and many refer to him as the "Brazilian Trump".

He also supports loosening gun control laws, and is backed by millions of evangelical Christians for his uncompromising anti-abortion stance.

However some of Mr Bolsonaro's past comments have caused uproar, including equating homosexuality with paedophilia, and saying a congresswoman was too ugly to be raped.

He is currently being investigated for alleged racism over derogatory remarks he made about Afro-Brazilians.

Who will be Brazil's next president?
President Temer, an unpopular leader, is not standing for re-election, and millions of voters remain undecided.

Mr Bolsonaro is expected to have a strong first round but lose a run-off to leftist Ciro Gomes, environmentalist Marina Silva or ex-Governor of Sao Paulo Geraldo Alckmin, according to leading research company Ibope.

A race against Lula's likely replacement, Fernando Haddad, could be much narrower. Ibope said its most recent survey showed Mr Bolsonaro losing to him by just one percentage point.

Mr Haddad was charged with corruption earlier this week and, like Lula, denies any wrongdoing.

On Thursday, the Supreme Court rejected Lula's latest appeal to run. The Workers' Party has until the end of Tuesday to register Mr Haddad as its presidential candidate.