/* pannello amministratore e area patronato (29/09) */
.largo-admin{max-width:1520px;padding-top:20px}
table.modifica td{vertical-align:middle;padding:6px 8px}
table.modifica input:not([type=checkbox]),table.modifica select{height:34px;padding:0 8px;border:1px solid var(--linea);border-radius:5px;background:var(--carta);width:100%;min-width:90px;font:inherit}
table.modifica input.num{max-width:90px}
table.modifica td.chiave{white-space:nowrap}
table.modifica tr.cambiata td{background:var(--accento-tenue)}
table.modifica tr.nuova td{background:var(--carta-2);border-top:2px solid var(--linea)}
.spunta-riga{display:inline-flex;gap:6px;align-items:center;white-space:nowrap}
.codice-accesso{font-size:28px;letter-spacing:.12em;text-align:center;padding:14px;border:1px dashed var(--accento);border-radius:8px;margin:14px 0;user-select:all}
.passi{padding-left:20px;line-height:1.6}
.passi li{margin-bottom:6px}
.scheda-patr .campi{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
table.modifica input[type=checkbox]{width:18px;height:18px}
table.modifica td:last-child{white-space:nowrap}
.dati-reg{display:grid;grid-template-columns:minmax(160px,max-content) 1fr;gap:4px 16px;margin:0}
.dati-reg dt{color:var(--inchiostro-2);font-size:13px}
.dati-reg dd{margin:0;font-weight:600}
.registrazione.decisa{opacity:.75}
.accessi{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:12px}
.accessi .pannello{margin:0;display:flex;flex-direction:column}
.accessi .pannello .btn{align-self:flex-start}
.richiesta-studio{border:1px solid var(--manca-bordo);background:var(--manca);border-radius:8px;padding:10px 12px;margin-bottom:10px}
.richiesta-studio ul{margin:0;padding-left:18px}
.richiesta-studio li{margin-bottom:6px}
.rispondi{display:inline-flex;gap:6px}
.rispondi input{height:30px;padding:0 8px;border:1px solid var(--linea);border-radius:5px;min-width:180px}
table.modifica textarea{width:100%;min-width:280px;padding:6px 8px;border:1px solid var(--linea);border-radius:5px;background:var(--carta);font:inherit}
/* 01/10: pannello con le sezioni in alto (in orizzontale) */
.largo-admin .con-rail{grid-template-columns:1fr;gap:10px}
.largo-admin .rail{position:static;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px;background:var(--carta);border:1px solid var(--linea);border-radius:8px;padding:8px 10px}
.largo-admin .rail .rail-tit{margin:0 2px 0 8px !important;flex-basis:auto}
.largo-admin .rail .rail-tit:first-child{margin-left:0 !important}
.largo-admin .rail #sezioni{display:contents}
.largo-admin .rail .rail-btn{width:auto;padding:5px 10px;font-size:13px;min-height:0}
.largo-admin .rail .rail-btn small{margin-left:6px}
/* Messaggi WhatsApp: tabella a larghezza fissa, niente barra per scorrere */
table.modifica.tab-messaggi_rapidi{table-layout:fixed;width:100%}
table.modifica.tab-messaggi_rapidi th:nth-child(1){width:12%} table.modifica.tab-messaggi_rapidi th:nth-child(2){width:15%}
table.modifica.tab-messaggi_rapidi th:nth-child(3){width:12%} table.modifica.tab-messaggi_rapidi th:nth-child(4){width:9%}
table.modifica.tab-messaggi_rapidi th:nth-child(5){width:auto} table.modifica.tab-messaggi_rapidi th:nth-child(6){width:64px}
table.modifica.tab-messaggi_rapidi th:nth-child(7){width:70px} table.modifica.tab-messaggi_rapidi th:nth-child(8){width:150px}
table.modifica.tab-messaggi_rapidi input:not([type=checkbox]),table.modifica.tab-messaggi_rapidi select,table.modifica.tab-messaggi_rapidi textarea{min-width:0;width:100%}
table.modifica.tab-messaggi_rapidi textarea{min-height:110px}
table.modifica.tab-messaggi_rapidi td:last-child{white-space:normal}
.largo-admin .tabella{overflow-x:auto}
.largo-admin .rail .rail-btn{flex-direction:row;align-items:center}
table.modifica.tab-messaggi_rapidi th{white-space:normal}

/* (02/10) area patronato: sezioni Assegnati / Da verificare / Consulta, avvisi e due macro riquadri */
.schede-testata{min-height:0 !important;padding-bottom:6px}
.schede-testata nav{display:flex;gap:4px;flex-wrap:wrap;flex:1 1 100%;min-width:0}
.nota-tipo .chip{white-space:normal}
.schede-testata nav a{color:var(--testata-ink);text-decoration:none;padding:6px 12px;border-radius:6px;opacity:.85;border:1px solid rgba(255,255,255,.18)}
.schede-testata nav a.attivo,.schede-testata nav a:hover{background:rgba(255,255,255,.14);opacity:1;border-color:rgba(255,255,255,.35)}
.conta-nav{opacity:.75;font-size:12px}
.patr-testa{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.patr-testa .patr-tit{flex:1 1 320px;min-width:0}
.patr-testa .azioni{margin-left:auto;align-self:flex-end}
.patr-avvisi{display:flex;flex-direction:column;align-items:center;justify-content:center;width:84px;height:64px;border:2px solid #D97A2B;border-radius:8px;text-decoration:none;color:var(--inchiostro);background:var(--carta);flex:0 0 auto}
.patr-avvisi span{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--inchiostro-2);font-weight:600}
.patr-avvisi b{font-size:22px;line-height:1.1}
.patr-avvisi.con{background:#FCEBDD}
.patr-avvisi.con b{color:#9A4A0C}
@media (prefers-color-scheme: dark) and (min-width: 100000px){ .patr-avvisi.con{background:#3A2A1C} .patr-avvisi.con b{color:#F2B98A} }
.macro{border:1px solid var(--linea);border-radius:12px;padding:14px 16px 6px;margin-bottom:22px;background:var(--carta-2)}
.macro-testa{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.macro-testa h2{margin:0;font-size:14px;color:var(--inchiostro)}
.macro-testa .conta{margin-left:auto}
.macro-n{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--accento);color:var(--accento-ink);font-weight:700;font-size:13px}
.macro .vuoto{padding:14px}
.caso{font-size:15px;margin:14px 0 4px}
.sottocaso{font-size:13px;margin:12px 0 8px;color:var(--inchiostro-2);text-transform:uppercase;letter-spacing:.06em}
.patr-scheda-testa{margin-bottom:10px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}
/* (18/10, collaudo v7 16.P2) icona della cartella generale della pratica nella testa di ogni scheda del patronato */
.cartella-patr{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}
.nome-pratica{margin:0;font-size:17px;text-transform:none;letter-spacing:0;color:var(--inchiostro)}
.nota-tipo{font-size:13px;font-weight:700;color:var(--avviso-ink)}
.azioni-scheda{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:10px}
.btn.scarica{display:inline-flex;align-items:center;gap:6px}
input.sola{background:var(--carta-2);color:var(--inchiostro-2);cursor:default}
.stato-salva{font-size:12px;color:var(--inchiostro-3);min-height:16px}
.stato-salva.ok{color:var(--ok-ink)}
.stato-salva.no{color:var(--errore-ink)}
.patr-dettagli{margin-top:12px;border-top:1px solid var(--linea-2);padding-top:8px}
.patr-dettagli summary{cursor:pointer;font-weight:600;color:var(--inchiostro-2)}
.patr-cliente{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px 18px;margin-top:10px}
.patr-gruppo h3{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--accento);margin:0 0 6px}
.patr-gruppo .dati{grid-template-columns:1fr;gap:6px}
@media (max-width:760px){
  .patr-avvisi{width:72px;height:54px}
  .patr-testa{gap:10px}
  .macro{padding:12px 10px 4px;border-radius:10px}
  .azioni-scheda .btn{flex:1 1 100%;justify-content:center}
  .patr-cliente{grid-template-columns:1fr}
  .testata .schede-testata nav{flex-wrap:wrap;overflow:visible;margin:0;padding:0 0 2px}
  .testata .schede-testata nav a{padding:6px 9px;font-size:13px;white-space:normal}
}

/* (03/10) area patronato: testo piu' grande e piu' leggibile */
.scheda-patr .sotto{font-size:14px;color:var(--inchiostro-2)}
.scheda-patr .campo label{font-size:13.5px}
.scheda-patr .campo input,.scheda-patr .campo select{font-size:15px}
.patr-gruppo h3{font-size:12.5px;margin-bottom:8px}
.patr-cliente .dato span{font-size:11.5px;color:var(--inchiostro-2);font-weight:600;letter-spacing:.04em}
.patr-cliente .dato b{font-size:15px;font-weight:600;color:var(--inchiostro)}
.patr-cliente .dati{gap:8px}
.nota-tipo{font-size:13.5px}
.patr-dettagli summary{font-size:14.5px;color:var(--inchiostro)}
.elenco-patr td{font-size:14.5px}
.patr-cliente .dato b span{font-size:inherit;font-weight:inherit;color:inherit;letter-spacing:.02em;text-transform:none}
.patr-cliente .dato b span.chip{font-size:12px}
.patr-testa .azioni input[type=search]{height:40px;padding:0 12px;border:1px solid var(--linea);border-radius:8px;background:var(--carta);font-size:15px;min-width:260px}
@media (max-width:760px){ .patr-testa .azioni{width:100%} .patr-testa .azioni input[type=search]{width:100%;min-width:0} }

/* (03/10 sera) etichette piu' leggibili nelle viste patronato, medico, struttura e nel pannello */
.patr-cliente .dato > span{font-size:13.5px;font-weight:700;letter-spacing:0;text-transform:none;color:var(--etichetta)}
.scheda-patr .campo label{font-size:15px}
.patr-avvisi span,.sottocaso,.patr-gruppo h3{font-size:12.5px;letter-spacing:.04em}

/* (03/10 sera) richieste fuori elenco e richieste da rifare nella vista patronato */
.richiesta-studio.da-rifare{border-left:4px solid var(--errore-ink);padding-left:10px}
.voce-libera{margin:6px 0}
.risposta-libera{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:6px}
.risposta-libera .rispondi{flex:1 1 280px;display:flex;gap:6px}
.risposta-libera .rispondi input{flex:1;min-width:0}
.nota-studio{margin:4px 0 8px;padding:8px 10px;border-radius:6px;background:var(--accento-tenue);color:var(--accento-tenue-ink);font-size:15px}
.nota-risposta{margin-top:8px}
.nota-risposta textarea{width:100%;min-height:56px;padding:8px 10px;border:1px solid var(--linea);border-radius:6px;background:var(--carta);font:inherit}
.allegati-studio{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0 8px}

/* (04/10) scheda «Modelli dei ricorsi» */
.schede-modelli{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.aiuto-modelli{margin:0 0 12px;border:1px solid var(--linea);border-radius:8px;padding:8px 12px;background:var(--carta)}
.aiuto-modelli summary{cursor:pointer;font-weight:600}
.aiuto-modelli li{margin:4px 0}
.modelli-griglia{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:14px;align-items:start}
.elenco-modelli ul,.scelte-pratica{list-style:none;margin:0;padding:0}
.voce-modello{display:block;width:100%;text-align:left;background:none;border:1px solid transparent;border-radius:8px;padding:8px 10px;margin:2px 0;color:inherit;font:inherit;cursor:pointer}
.voce-modello:hover,.voce-modello:focus-visible{border-color:var(--linea);background:var(--accento-tenue)}
.voce-modello.attiva{border-color:var(--accento);background:var(--accento-tenue)}
.voce-modello.nuova b{color:var(--etichetta)}
.campi-modello{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.campi-modello .campo{flex:1 1 220px}
.barra-modello{margin:0 0 6px}
.barra-modello select{max-width:100%}
#mp-testo{width:100%;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13.5px;line-height:1.5;min-height:360px}
.testo-avvocato textarea{width:100%}
.azioni-modello{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0}
.prova-modello{margin-top:18px;border-top:1px solid var(--linea);padding-top:12px}
.scelte-pratica{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
@media (max-width:820px){.modelli-griglia{grid-template-columns:1fr}}
.voce-modello b,.voce-modello .aiuto.blocco{display:block}
.voce-modello .aiuto.blocco{font-weight:400;margin-top:2px}
/* (04/10) prova importazione AppSheet */
.prova-testa{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.numeri-prova{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin-top:10px}
.numeri-prova div{border:1px solid var(--linea);border-radius:8px;padding:8px 10px;background:var(--carta-2);display:flex;flex-direction:column}
.numeri-prova span{font-size:12px;color:var(--inchiostro-3)}
.numeri-prova b{font-size:20px}
.righe-prova{font-variant-numeric:tabular-nums;word-break:break-word}
tr.scaduta td{background:var(--manca, #FDEEEE)}

/* (04/10) pannello: le tabelle stanno nella pagina (niente barra per scorrere a destra e sinistra), menu delle sezioni sempre in alto */
.largo-admin .rail{position:sticky;top:var(--alto-testata,54px);z-index:9;box-shadow:0 2px 6px rgba(0,0,0,.06)}
.largo-admin .tabella{overflow-x:visible}
.largo-admin .tabella table{width:100%}
.largo-admin .tabella td,.largo-admin .tabella th{word-break:break-word;overflow-wrap:anywhere}
.largo-admin table.modifica{table-layout:fixed;width:100%}
.largo-admin table.modifica th{white-space:normal}
.largo-admin table.modifica td.chiave{white-space:normal}
.largo-admin table.modifica input:not([type=checkbox]),.largo-admin table.modifica select,.largo-admin table.modifica textarea{min-width:0;width:100%;max-width:100%}
.largo-admin table.modifica input.num{max-width:100%}
.largo-admin table.modifica th.t-sino{width:92px}
.largo-admin table.modifica th.t-numero{width:96px}
.largo-admin table.modifica th.t-azioni{width:172px}
.largo-admin table.modifica td.azioni-riga{white-space:normal}
.largo-admin table.modifica td.azioni-riga .btn{margin:2px 0}
.largo-admin .spunta-riga{white-space:normal}
/* schermi stretti: ogni riga diventa una scheda con le etichette */
@media (max-width:900px){
  .largo-admin table.modifica,.largo-admin table.modifica tbody,.largo-admin table.modifica tr,.largo-admin table.modifica td{display:block;width:100%}
  .largo-admin table.modifica thead{display:none}
  .largo-admin table.modifica tr{border:1px solid var(--linea);border-radius:8px;margin:0 0 10px;padding:6px 8px;background:var(--carta)}
  .largo-admin table.modifica td{padding:4px 0;border:0}
  .largo-admin table.modifica td[data-etichetta]::before{content:attr(data-etichetta);display:block;font-size:12.5px;font-weight:700;color:var(--etichetta);margin-bottom:2px}
  .largo-admin .rail{position:static}
}
.largo-admin table.modifica th,.largo-admin table.modifica td{word-break:normal;overflow-wrap:break-word}
.largo-admin table.modifica .btn{white-space:nowrap;word-break:keep-all}
.largo-admin table.modifica.schede td.azioni-riga{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
/* elenchi con molte colonne (CTU, referenti, voci dei file): ogni riga e' una scheda con i campi affiancati */
.largo-admin table.modifica.schede,.largo-admin table.modifica.schede tbody{display:block;width:100%}
.largo-admin table.modifica.schede thead{display:none}
.largo-admin table.modifica.schede tr{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px 12px;border:1px solid var(--linea);border-radius:8px;margin:0 0 10px;padding:8px 10px;background:var(--carta)}
.largo-admin table.modifica.schede td{display:block;padding:0;border:0;width:auto}
.largo-admin table.modifica.schede td[data-etichetta]::before{content:attr(data-etichetta);display:block;font-size:12.5px;font-weight:700;color:var(--etichetta);margin-bottom:2px}
.largo-admin table.modifica.schede td.chiave b{font-size:15px}
.largo-admin table.modifica.schede td.azioni-riga{grid-column:1/-1;justify-content:flex-end}
.largo-admin table.modifica.schede tr.nuova{border-style:dashed}
/* (04/10) area patronato: INAIL (Caso 3 e Caso 4) */
.denuncia-patr{border:1px solid var(--linea);border-radius:10px;padding:10px 12px;margin:8px 0;background:var(--carta)}
.denuncia-patr .testa-den{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:6px}
.scheda-patr .avviso-15{background:#FFF4E5;border-color:#F0B35A;color:#5A3A00}
@media (prefers-color-scheme: dark) and (min-width: 100000px){ .scheda-patr .avviso-15{background:#3A2A12;border-color:#8A6420;color:#F5D9A8} }
/* (25/10, LOGICA BASE 1.70 passaggio 53) campo di una riga che va a capo (campi.js, regola 5) */
table.modifica textarea.campo-a-capo{min-width:140px}
.largo-admin table.modifica textarea.campo-a-capo,table.modifica.tab-messaggi_rapidi textarea.campo-a-capo{min-width:0}

/* (28/10/2026, LOGICA BASE 1.95 passaggio 79) «Scorciatoie delle patologie» */
table.tab-scorciatoie{table-layout:fixed;width:100%}
table.tab-scorciatoie .sc-c-pat{width:34%}
table.tab-scorciatoie .sc-c-az{width:118px}
table.tab-scorciatoie td{vertical-align:top}
table.tab-scorciatoie input{width:100%;min-width:0;height:32px;padding:0 8px;border:1px solid var(--linea);border-radius:5px;background:var(--carta);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
table.tab-scorciatoie input[data-sc-testo]{text-align:center;font-weight:600}
.sc-auto{position:relative}
.sc-sug{position:absolute;z-index:30;left:0;right:0;top:34px;max-height:280px;overflow:auto;background:var(--carta);border:1px solid var(--linea);border-radius:6px;box-shadow:0 8px 20px rgba(0,0,0,.15)}
.sc-sug button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--linea-2);background:none;padding:7px 10px;font-size:12.5px;cursor:pointer;color:var(--inchiostro)}
.sc-sug button:hover{background:var(--accento-tenue)}
.sc-az{display:flex;gap:4px;margin-top:4px;flex-wrap:wrap}
.sc-mini{font:inherit;font-size:11px;border:1px solid var(--linea);border-radius:4px;padding:1px 6px;background:var(--carta);color:var(--inchiostro-2);cursor:pointer}
.sc-mini.sc-rosso{color:var(--manca-ink);border-color:var(--manca-bordo)}
.sc-spento input{opacity:.45;text-decoration:line-through}
tr.sc-modificata td:first-child{box-shadow:inset 3px 0 0 var(--accento)}
table.tab-scorciatoie td.azioni-riga{display:table-cell;white-space:nowrap}
table.tab-scorciatoie td.azioni-riga .btn{display:block;width:100%;margin:0 0 6px;white-space:nowrap;word-break:normal}
@media (max-width:900px){table.tab-scorciatoie{table-layout:auto} table.tab-scorciatoie colgroup{display:none}}

/* (29/10/2026, preparazione della messa online) Proprietà intellettuale: data certa del codice e voci con documenti */
.dc-box{margin-bottom:14px}
.dc-passi{margin:0 0 10px 18px;padding:0;font-size:13px;line-height:1.6}
.dc-impronta{font-size:11px;word-break:break-all;white-space:normal;background:var(--carta-2);padding:2px 4px;border-radius:4px;display:inline-block;max-width:300px}
tr.dc-nuovo td{background:var(--accento-tenue)}
table.dc-tab td{vertical-align:top}
.dc-azioni{display:flex;flex-direction:column;gap:5px;align-items:stretch;min-width:170px}
.dc-azioni .btn{text-align:center}
.dc-pec{display:flex;gap:4px}.dc-pec input{width:96px;height:28px;padding:0 6px;border:1px solid var(--linea);border-radius:5px;font-size:12px}
.pv-voce{display:grid;grid-template-columns:70px minmax(0,1fr) minmax(0,360px);gap:14px;border-top:1px solid var(--linea-2);padding:12px 0}
.pv-campo{display:block;margin:0 0 8px;font-size:12px;color:var(--inchiostro-2)}
.pv-campo span{display:block;margin-bottom:3px}
.pv-campo input,.pv-campo select{width:100%;max-width:420px;height:32px;padding:0 8px;border:1px solid var(--linea);border-radius:5px;background:var(--carta);color:var(--inchiostro);font-size:13px}
.pv-doc{font-size:12px;border:1px dashed var(--linea);border-radius:6px;padding:8px}
.pv-file{margin:3px 0;word-break:break-word}
@media (max-width:900px){.pv-voce{grid-template-columns:1fr}}
