Fatti

Parti e procedura: Il ricorrente (assicurato, rappresentato da avvocato) era vincolato da un contratto quadro di lavoro con l'impresa di prestito di personale [C. AG] . Era impiegato come muratore presso la [D. AG] (dal 18 maggio 2015) e presso la [E. AG] (dal 3 agosto 2015). La [C. AG] aveva stipulato per lui un'assicurazione collettiva d'indennità giornaliera in caso di malattia presso la [B. AG] (convenuta, assicuratore). L'assicurato ha promosso causa il 27 febbraio 2018 presso il Tribunale delle assicurazioni sociali del Cantone di Zurigo, chiedendo prestazioni d'indennità giornaliera di Fr. 88'185.10 oltre interessi al 5% dal 1° settembre 2017. Il Tribunale delle assicurazioni sociali ha respinto la causa con sentenza del 4 marzo 2020. L'assicurato impugna la decisione con ricorso in materia civile al Tribunale federale, chiedendo l'annullamento e l'accoglimento della causa, in via subordinata il rinvio, nonché il patrocinio a spese dello Stato.

Infortunio e prestazioni della Suva: Il 12 agosto 2015 l'assicurato è caduto sul lavoro riportando lesioni alla colonna cervicale e lombare nonché alla gamba sinistra e al piede. La Suva ha riconosciuto l'obbligo di prestazione, ha erogato cure e indennità giornaliere e, con decisione del 13 settembre 2016, le ha sospese con effetto al 31 agosto 2016, poiché i disturbi residui non erano più riconducibili all'infortunio. La decisione non è stata impugnata.

Notifica e rifiuto da parte dell'assicuratore: Il 3 novembre 2016 la [C. AG] ha comunicato all'assicuratore che l'assicurato era incapace al lavoro al 100% dal 1° settembre 2016. L'assicuratore ha acquisito referti medici e una perizia psichiatrica, ha escluso il 20 dicembre 2016 un'incapacità lavorativa per malattia e il 17 febbraio 2017 ha rifiutato le prestazioni, motivando che il caso non era coperto dal contratto d'assicurazione.

Questioni controverse: Il caso assicurato (insorgenza dell'incapacità lavorativa per malattia), la questione se l'assicurato fosse ancora assicurato al momento dell'insorgenza (impiego a termine presso la [E. AG] ), l'interpretazione della polizza e delle Condizioni generali d'assicurazione (CGA, edizione luglio 2010), nonché la lamentata constatazione arbitraria dei fatti riguardo allo stato di salute e alla fine dell'impiego.

Istanza inferiore: Il Tribunale delle assicurazioni sociali ha considerato che il contratto di impiego presso la [E. AG] era limitato a tre mesi ed era terminato il 3 novembre 2015. Il caso assicurato si era verificato solo il 1° settembre 2016, quando era iniziata l'incapacità lavorativa per malattia.

Diritto

Ammissibilità: Le controversie derivanti da assicurazioni complementari all'assicurazione malattia sociale sono disciplinate dalla LCA e hanno natura di diritto privato, per cui il ricorso in materia civile secondo gli art. 72 segg. LTF è ammissibile. La decisione del Tribunale delle assicurazioni sociali, quale unica istanza cantonale, è una decisione finale (art. 90 LTF) impugnabile indipendentemente dal valore litigioso (art. 74 cpv. 2 lett. b LTF). Il ricorso è stato presentato tempestivamente. Il Tribunale federale esamina solo le censure sufficientemente motivate (art. 42 cpv. 2 LTF) e pone a fondamento l'accertamento dei fatti dell'istanza inferiore, salvo che sia manifestamente inesatto (arbitrario) (art. 105 LTF).

Interpretazione del contratto e caso assicurato: Le CGA vanno interpretate secondo i principi generali di interpretazione dei contratti: anzitutto la reale volontà concordante delle parti, in subordine il principio dell'affidamento. Nell'assicurazione d'indennità giornaliera in caso di malattia il caso assicurato non si verifica con la malattia in sé, ma solo con l'incapacità lavorativa per malattia (DTF 142 III 671 consid. 3.6 segg.). Questa concezione corrisponde alle nozioni dell'art. A4 CGA, che si richiamano agli art. 3 e 6 LPGA, e allo scopo dell'assicurazione facoltativa d'indennità giornaliera secondo gli art. 67 segg. LAMal. L'istanza inferiore ha quindi interpretato il contratto in modo conforme al diritto federale.

Cerchia delle persone assicurate: La polizza comprende il personale proprio e il personale prestato della [C. AG] . Per il personale prestato la copertura non inizia già con il contratto quadro di lavoro, bensì solo con il contratto con un'impresa utilizzatrice, poiché si può parlare di personale prestato solo quando esso è stato effettivamente prestato. Altrimenti la distinzione nella polizza non avrebbe senso. L'interpretazione dell'istanza inferiore non è quindi censurabile.

Stato di salute e nesso causale: Fino al 31 agosto 2016 la Suva aveva riconosciuto come causalmente dovuta all'infortunio l'incapacità lavorativa derivante dal quadro dolorifico, nonché gli effetti della problematica depressiva riattivatasi, e aveva erogato indennità giornaliere. Un'incapacità lavorativa per malattia poteva quindi insorgere solo il 1° settembre 2016, come deciso nella sentenza 4A_447/2017 e 4A_459/2017 del 20 febbraio 2018 consid. 3.7. Un accertamento dei fatti non è già arbitrario perché una…