Translating this article found on the Accademia della Crusca website:
Masculine
Whenever the team is named after the name of the city it belongs to - or a variant of it, such as Genoa - the masculine genre is used to distinguish it from its toponym, which is generally feminine.
Examples
La magnifica Cagliari → the city
Il magnifico Cagliari → the team
La magnifica Milano → the city
Il magnifico Milan → the team
Feminine
Probably due to the implicit noun squadra (team), is used with names derived from an ethnical adjective (such as Fiorentina or Udinese) and with names not related to a toponym.
Examples
La (squadra) Juventus, The Juventus (team)
La (squadra) Sampdoria, The Sampdoria (team)
Exceptions
The most notable exception to this explanation is la Roma, which is feminine despite being named after the city it belongs to. So
La sorprendente Roma -> the city
but also
La sorprendente Roma -> the team
Translation of the article
Whenever the team is named after the name of the city it belongs to - or a variant of it, such as Genoa - the masculine genre is used to distinguish it from its toponym, which is generally feminine (so la magnifica Cagliari = the city; il magnifico Cagliari = the team). The feminine, probably due to the implicit noun squadra (team), is used with names derived from an ethnical adjective (such as Fiorentina or Udinese) and with names not related to a toponym (such as Atalanta, Juventus, Sampdoria and Lazio, the latter being so distinguished from region name). The main exception to this explanation is la Roma.
original source
Quando la squadra porta lo stesso nome della città di appartenenza - o una sua variante, come nel caso del Genoa - il genere maschile serve a distinguerla dal toponimo, che è normalmente femminile (quindi la magnifica Cagliari = la città; il magnifico Cagliari = la squadra). Il femminile, probabilmente dovuto al sostantivo sottinteso squadra, si adopera con nomi derivati da un aggettivo etnico (la Fiorentina, l'Udinese) e con nomi che non corrispondono a un toponimo (quindi l'Atalanta, la Juventus, la Sampdoria e anche la Lazio, che così si distingue oltretutto dal nome della regione). La principale eccezione, di fronte a una spiegazione del genere, è la Roma.»