While the Rossoneri sweat over their chances of competing in next season's Champions League, Juve can seal a second straight Scudetto by winning next Sunday's derby meeting with Torino, should second-placed Napoli fail to beat Pescara.
A Vidal penalty in the second half was the difference between the two sides, who are now separated by 18 points with five games remaining.
The result means the Bianconeri are assured of their place in the Champions League next season while, with an 11-point cushion over Napoli, they could wrap up the title with four games to spare.
Earlier, a last-gasp goal from substitute Lorenzo Insigne settled a 3-2 victory over Cagliari to keep Napoli's faint title hopes alive.
When Victor Ibarbo edged the Sardinians ahead midway through the first half, it looked like Napoli had finally been thwarted in their bid to catch Juve.
A double salvo from Marek Hamsik and Edinson Cavani just after the interval briefly made amends until Cagliari's Marco Sau made it 2-2.
But Insigne dutifully climbed off the bench to salvage all three points at the death.
A late strike from Tommaso Rocchi lifted some of the pressure off Inter Milan and under fire boss Andrea Stramaccioni as they beat Parma 1-0 at the San Siro.
The home side looked set for another disappointing day until the veteran popped up in the 81st minute with the only goal as Inter ended a run of three consecutive defeats to move them up to fifth in the Serie A standings ahead of Sunday's later matches.
Roma slipped out of the European places after being held to a disappointing 1-1 home draw by rock-bottom Pescara, who picked up only their second point in 14 matches.
Gianluca Caprari gave Pescara a shock 14th-minute lead at the Stadio Olimpico and although Roma got back on level terms at the start of the second half through Mattia Destro, the home side could not force a winner.
The result leaves Roma in sixth place, a point behind Inter Milan who climbed into the top five with their 1-0 win over Parma earlier on Saturday.
Romulo's 86th-minute strike spared Fiorentina's blushes, who won 4-3 after plucky 10-man Torino had looked to have earned a share of the spoils by fighting back from three goals down.
La Viola needed the Brazilian to come to their rescue despite appearing on course for a thumping win as goals from Juan Cuadrado, Alberto Aquilani and Adem Ljajic put them 3-0 ahead just after the opening half hour.
Barreto gave the visitors hope just before the interval and strikes from Mario Santana and Alessio Cerci put them back on an even keel, but Romulo ensured their endeavour was not rewarded late on.
To compound their misery, Matteo Darmian was sent off in injury time for a second bookable offence.
Sergio Pellissier virtually secured Chievo's Serie A status for next season with the only goal of a 1-0 victory at struggling Siena, who remain one point above the relegation zone.
The Flying Donkeys opened a 10-point gap over the bottom three as 17th-placed Siena failed to respond to Pellissier's effort on the stroke of half-time.
With five games remaining Chievo are unlikely to be sucked back into a scrap to survive but the Tuscans have both Genoa and Palermo snapping at their heels.
Josip Ilicic scored at the death in Sunday's Sicilian derby secure a 1-1 draw against 10-man Catania and keep Palermo within touching distance of a future in Serie A.
Defeat at the Stadio Angelo Massimino, which seemed inevitable following Pablo Barrientos' opener midway through the second half, would have left the Rosanero second from bottom and three points from safety.
Ilicic had other ideas, though, sparing his side's blushes and dragging the club to within a point of 17th-placed Siena with a confident finish four minutes into second half stoppage time.
Two mid-table clubs, Bologna and Sampdoria, played out a 1-1 draw at the Renato Dall'Ara after Gianluca Sansone cancelled out Alberto Gilardino's first half strike.
Udinese moved level on points with Roma and Lazio in the Serie A table after Antonio Di Natale's goal decided a 1-0 victory over the Biancocelesti.
Di Natale's acrobatic finish in the 19th minute kept the Friulians firmly in the hunt for Europa League football with Roma's superior goal difference the only factor keeping Francesco Guidolin's men out of fifth place.
Lazio started brightly at the Stadio Friuli but visiting goalkeeper Zeljko Brkic was wise to efforts from Antonio Candreva and Miroslav Klose before Di Natale netted his 18th league goal of the season with a scissor kick from the edge of the area.
The veteran might have killed the game off with a second goal after the break but Michael Ciani produced an excellent tackle when the Italian's first touch let him down.
Genoa remain in the bottom three of Serie A with one fewer game to play after being held at home 1-1 by Atalanta.
Antonio Floro Flores gave the Grifone an early lead, but Cristiano Del Grosso replied within two minutes to earn the Nerazzurri a point and maintain a nine-point gap over their rivals with five games of the season remaining.
Sunday's Serie A Results
Saturday's Serie A Results