:root{
  --bg:#0f1216; --pan:#171b21; --pan2:#1f252d; --bord:#2a313b; --txt:#e6e9ee; --mut:#8b95a3;
  --acc:#4ea1ff; --ok:#3ccf8e; --ko:#ff6b6b; --warn:#f5b84a;
  --ok-bg:#12301f; --ko-bg:#3a1717; --warn-bg:#3a2e12; --pan-trasp:rgba(23,27,33,.92);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:var(--bg);color:var(--txt)}
[hidden]{display:none!important}
button,input,select,textarea{font:inherit;color:inherit}
button{background:var(--pan2);border:1px solid var(--bord);border-radius:6px;padding:6px 10px;cursor:pointer}
button:hover{border-color:var(--acc)}
button.on{background:var(--acc);border-color:var(--acc);color:#04111f}
button.primary{background:var(--acc);border-color:var(--acc);color:#04111f;font-weight:600;padding:9px 14px}
button.primary:disabled{opacity:.5;cursor:default}
button.ghost{background:transparent}
input,select,textarea{background:var(--pan2);border:1px solid var(--bord);border-radius:6px;padding:6px 8px}
.muted{color:var(--mut)} .small{font-size:.85em}

.top{display:flex;align-items:center;gap:14px;height:48px;padding:0 16px;background:var(--pan);border-bottom:1px solid var(--bord)}
.logo{font-weight:700;color:var(--txt);text-decoration:none}
.sub{color:var(--mut)} .spacer{flex:1}
.nome{font-size:.85em;color:var(--mut);display:flex;gap:6px;align-items:center}
.nome input{width:160px}

.elenco{max-width:900px;margin:0 auto;padding:24px 16px}
.lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.card{background:var(--pan);border:1px solid var(--bord);border-radius:10px;padding:16px;cursor:pointer}
.card:hover{border-color:var(--acc)}
.card h3{margin:0 0 6px} .card .tag{font-size:.8em;color:var(--mut)}

.caso{display:grid;grid-template-columns:200px 1fr 360px;height:calc(100vh - 48px)}
.serie{background:var(--pan);border-right:1px solid var(--bord);padding:10px;overflow:auto}
.serie h3{margin:4px 0 10px;font-size:.9em;color:var(--mut);text-transform:uppercase;letter-spacing:.05em}
.serie .s{display:block;width:100%;text-align:left;margin-bottom:6px;padding:8px}
.serie .s small{display:block;color:var(--mut)}
.serie .s.on small{color:#04111f}

.viewer{display:flex;flex-direction:column;min-width:0;padding:8px;gap:6px}
.toolbar{display:flex;flex-wrap:wrap;gap:10px}
.grp{display:flex;gap:4px;flex-wrap:wrap}
.stage{position:relative;flex:1;background:#000;border-radius:6px;overflow:hidden;min-height:200px}
.stage canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none}
.caricamento{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#000a;padding:8px 14px;border-radius:6px}
#slider{width:100%}
.aiuto{margin:0;font-size:.78em;color:var(--mut)}

.quiz{background:var(--pan);border-left:1px solid var(--bord);padding:16px;overflow:auto}
.quiz h2{margin:0 0 10px}
.anamnesi{white-space:pre-wrap;background:var(--pan2);border-radius:8px;padding:10px;margin-bottom:12px;line-height:1.45}
.opz{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid var(--bord);border-radius:8px;margin-bottom:8px;cursor:pointer;background:var(--pan2)}
.opz input{margin-top:3px;width:18px;height:18px}
.opz.corretta{border-color:var(--ok);background:var(--ok-bg)}
.opz.errata{border-color:var(--ko);background:var(--ko-bg)}
.opz.mancata{border-color:var(--warn);border-style:dashed}
.opz .esito{display:block;font-size:.8em;margin-top:4px}
.opz.corretta .esito{color:var(--ok)}.opz.errata .esito{color:var(--ko)}.opz.mancata .esito{color:var(--warn)}
#q-esito{margin-top:14px}
.punteggio{font-size:1.4em;font-weight:700;margin:6px 0}
.spiegazione{white-space:pre-wrap;background:var(--pan2);border-radius:8px;padding:10px;line-height:1.45}

.editor{max-width:820px;margin:0 auto;padding:20px 16px 60px;display:flex;flex-direction:column;gap:12px}
.editor label{display:flex;flex-direction:column;gap:4px;color:var(--mut);font-size:.9em}
.editor label input,.editor label textarea,.editor label select{color:var(--txt);font-size:1rem}
.riga{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.riga label{flex:1}
#ed-aggiungi{align-self:flex-start}
.ed-opz{display:grid;grid-template-columns:auto 1fr 1fr auto;gap:8px;align-items:center;margin-bottom:6px}

@media (max-width:1100px){
  .caso{grid-template-columns:1fr;height:auto}
  .serie{border-right:0;display:flex;gap:6px;overflow:auto}
  .serie h3{display:none}.serie .s{width:auto;white-space:nowrap}
  .stage{height:65vh;flex:none}
  .quiz{border-left:0}
}

a.btn{display:inline-block;border:1px solid var(--bord);border-radius:6px;padding:6px 10px;color:var(--txt);text-decoration:none;font-size:.95em}
a.btn:hover{border-color:var(--acc)}
.accesso{display:flex;justify-content:center;padding:12vh 16px}
.accesso-scheda{background:var(--pan);border:1px solid var(--bord);border-radius:12px;padding:28px;width:100%;max-width:420px;display:flex;flex-direction:column;gap:12px}
.accesso form,.accesso [data-pannello]{display:flex;flex-direction:column;gap:12px}
.accesso [hidden]{display:none!important}
.accesso h1{margin:0}.accesso h2{margin:4px 0 0;font-size:1.15rem}
.accesso input:not([type=checkbox]),.accesso select{font-size:1.05rem;padding:10px}
.link-accesso{margin:0;font-size:.92em;color:var(--mut)}.link-accesso.forte{font-size:1em}
.campo{display:flex;flex-direction:column;gap:4px;font-size:.9em;color:var(--mut)}
.campo input,.campo select{color:var(--txt)}
.nascosto{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.profilo-form{display:flex;flex-direction:column;gap:10px;max-width:560px}
.profilo-sez{margin-top:26px;max-width:720px}
.profilo-sez h2{font-size:1.1rem;margin-bottom:4px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.chips .chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--acc);border-radius:16px;padding:3px 4px 3px 10px;font-size:.9em}
.chips .chip button{padding:0 6px;font-size:.85em}
.pr-docenti-lista{max-height:220px;overflow:auto;border:1px solid var(--bord);border-radius:8px;margin-top:6px}
.pr-docenti-lista button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--bord);border-radius:0;background:none;padding:8px 10px}
.pr-docenti-lista button:hover{background:var(--hov,rgba(127,127,127,.12))}
.acc-codici{margin-top:28px}.acc-codici summary{cursor:pointer;color:var(--mut)}
.tab-account tr.richiesta{background:var(--warn-bg)}
.errore{color:var(--ko);min-height:1.2em;margin:0}
.card a{color:var(--acc)}

.chi{font-size:.85em;color:var(--mut)}
.account{max-width:1000px;margin:0 auto;padding:24px 16px 60px}
.account form input{flex:1;min-width:200px}
.codice-box{margin:14px 0;padding:14px;border:1px solid var(--ok);background:var(--ok-bg);border-radius:10px;line-height:1.5}
.codice-box code{font-size:1.35em;font-weight:700;letter-spacing:.04em;color:#fff}
.tab-account{width:100%;border-collapse:collapse;margin-top:16px;font-size:.95em}
.tab-account th,.tab-account td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--bord)}
.tab-account th{color:var(--mut);font-weight:500}
.tab-account td button{font-size:.85em;padding:4px 8px;margin:2px}
.tab-account tr.off td{opacity:.5}
.tab-account td button.pericolo{border-color:var(--ko);color:var(--ko)}
@media (max-width:700px){main:not(#vista-account) .tab-account th:nth-child(4),main:not(#vista-account) .tab-account td:nth-child(4),main:not(#vista-account) .tab-account th:nth-child(5),main:not(#vista-account) .tab-account td:nth-child(5){display:none}
  #vista-account .tab-account th:nth-child(n+7):not(:last-child),#vista-account .tab-account td:nth-child(n+7):not(:last-child),#vista-account .tab-account th:nth-child(4),#vista-account .tab-account td:nth-child(4){display:none}}

.testa-elenco{align-items:center}.testa-elenco h1{margin:0}
a.btn.primario{background:var(--acc);border-color:var(--acc);color:#04111f;font-weight:600}
.badge{display:inline-block;font-size:.72em;padding:2px 7px;border-radius:10px;background:var(--warn);color:#2a1d00;margin-left:6px;vertical-align:middle}
.nuovo{max-width:1000px;margin:0 auto;padding:24px 16px 60px;display:flex;flex-direction:column;gap:14px}
.nuovo label{display:flex;flex-direction:column;gap:4px;color:var(--mut);font-size:.9em}
.nuovo label input{color:var(--txt);font-size:1rem}
.nuovo .largo{flex:2}
label.btn{display:inline-block;flex-direction:row;cursor:pointer;color:var(--txt);border:1px solid var(--bord);border-radius:6px;padding:8px 14px;background:var(--pan2);font-size:.95rem}
label.btn:hover{border-color:var(--acc)}
.zona{border:2px dashed var(--bord);border-radius:12px;padding:26px;text-align:center;background:var(--pan)}
.zona.sopra{border-color:var(--acc);background:#13243a}
.zona p{margin:0 0 10px}.centro{justify-content:center}
.stato{background:var(--pan);border:1px solid var(--bord);border-radius:10px;padding:12px 14px;line-height:1.5}
.stato.errore{border-color:var(--ko);background:var(--ko-bg)}.stato.ok{border-color:var(--ok);background:var(--ok-bg)}
.barra{height:8px;background:var(--pan2);border-radius:4px;overflow:hidden;margin-top:8px}
.barra>div{height:100%;background:var(--acc);width:0;transition:width .2s}
.serie-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.serie-card{background:var(--pan);border:1px solid var(--bord);border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:6px;cursor:pointer}
.serie-card.off{opacity:.45}
.serie-card canvas{width:100%;aspect-ratio:1;background:#000;border-radius:6px}
.serie-card .tit{display:flex;gap:6px;align-items:flex-start;font-size:.9em}
.serie-card small{color:var(--mut)}
.avviso{background:var(--warn-bg);color:var(--txt);border:1px solid var(--warn);border-radius:8px;padding:10px;margin:0}
label.spunta{flex-direction:row!important;align-items:flex-start;gap:8px;color:var(--txt)!important}
label.spunta input{width:18px;height:18px;margin-top:2px}
.zona .riga label{flex:0 0 auto}

.modi{display:flex;gap:4px}
.modi button{border-radius:6px}
.mpr{position:relative;flex:1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:4px;min-height:300px}
.mpr-cella{position:relative;background:#000;border-radius:6px;overflow:hidden;min-height:140px}
.mpr-vp{position:absolute;inset:0}
.mpr-et{position:absolute;top:6px;left:8px;font:12px ui-monospace,Menlo,monospace;color:#d8e2ee;text-shadow:0 0 3px #000;pointer-events:none;z-index:2}
#mpr-stato{z-index:5;max-width:80%;text-align:center}
@media (max-width:1100px){.mpr{height:75vh;flex:none}}

.opz-corpo{display:flex;flex-direction:column;gap:6px;flex:1}
.conf{display:flex;gap:4px;flex-wrap:wrap}
.conf button{font-size:.78em;padding:3px 8px;border-radius:12px;background:transparent}
.conf button.on{background:var(--acc);border-color:var(--acc);color:#04111f}
.ed-opz{grid-template-columns:auto 1fr 1fr auto}
.ed-opz select{font-size:.9em}

.analisi{max-width:1150px;margin:0 auto;padding:24px 16px 60px;display:flex;flex-direction:column;gap:14px}
label.spunta.piccola{font-size:.9em;align-items:center}
.schede{display:flex;gap:6px;border-bottom:1px solid var(--bord);padding-bottom:8px}
.an-caso{background:var(--pan);border:1px solid var(--bord);border-radius:10px;margin-bottom:10px}
.an-caso>summary{list-style:none;cursor:pointer;padding:12px 14px;display:grid;grid-template-columns:2.2fr repeat(5,1fr);gap:10px;align-items:center}
.an-caso>summary::-webkit-details-marker{display:none}
.an-caso[open]>summary{border-bottom:1px solid var(--bord)}
.an-caso .tit b{display:block}.an-caso .tit small{color:var(--mut)}
.kpi{display:flex;flex-direction:column;font-size:.8em;color:var(--mut)}
.kpi b{font-size:1.25rem;color:var(--txt);font-weight:600}
.an-dett{padding:14px;display:flex;flex-direction:column;gap:16px}
.an-dett h4{margin:0 0 6px}
.tab{width:100%;border-collapse:collapse;font-size:.92em}
.tab th,.tab td{text-align:left;padding:7px 6px;border-bottom:1px solid var(--bord);vertical-align:middle}
.tab th{color:var(--mut);font-weight:500;font-size:.88em}
.tab td.num{white-space:nowrap}
.mini{display:inline-block;width:70px;height:7px;background:var(--pan2);border-radius:4px;overflow:hidden;vertical-align:middle;margin-left:6px}
.mini>i{display:block;height:100%;background:var(--acc)}
.mini.ok>i{background:var(--ok)}.mini.ko>i{background:var(--ko)}.mini.warn>i{background:var(--warn)}
.tag-tipo{font-size:.75em;padding:2px 7px;border-radius:10px;white-space:nowrap}
.tag-tipo.principale{background:var(--ok-bg);color:var(--ok)}.tag-tipo.secondario{background:#13243a;color:var(--acc)}.tag-tipo.distrattore{background:var(--ko-bg);color:var(--ko)}
.d-buona{color:var(--ok)}.d-discreta{color:var(--txt)}.d-scarsa{color:var(--mut)}.d-negativa{color:var(--ko);font-weight:600}
.griglia2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.an-persone tr.cliccabile{cursor:pointer}.an-persone tr.cliccabile:hover td{background:var(--pan2)}
.an-persona-dett td{background:var(--pan)}
.vuoto{color:var(--mut);padding:20px;text-align:center;background:var(--pan);border-radius:10px}
.legenda{color:var(--mut);font-size:.88em}.legenda summary{cursor:pointer}
svg.spark{vertical-align:middle}
@media (max-width:800px){.an-caso>summary{grid-template-columns:1fr 1fr 1fr}.griglia2{grid-template-columns:1fr}}

/* strumenti di analisi: ROI, confronto tra fasi */
.toolbar label.check{display:inline-flex;align-items:center;gap:5px;font-size:.9em;color:var(--mut);padding:0 6px}
.serie .s{position:relative}
.serie .s[data-pannello="A"]::after,.serie .s[data-pannello="B"]::after{content:attr(data-pannello);position:absolute;top:6px;right:8px;font:600 11px ui-monospace,Menlo,monospace;background:#04111f;color:#fff;border-radius:4px;padding:1px 5px}
.misure-roi{flex:none;max-height:24vh;overflow:auto;padding:6px 10px;border:1px solid var(--bord);border-radius:8px}
.misure-roi p{margin:6px 0 0}
.tab-roi th,.tab-roi td{padding:4px 6px}
.tab-roi th[scope=row]{color:var(--txt,inherit);font-weight:600;white-space:nowrap}
.tab-roi th[scope=row] small{display:block;font-weight:400}
.tab-roi td.picco b{color:#ffb86b}
.tab-roi td.curva{color:var(--acc,#4ea1ff);padding:2px 6px}
.mini-curva{display:block}.mini-curva circle{fill:currentColor}.mini-curva circle.b{fill:#7fb4ff}.mini-curva circle.p{fill:#ffb86b}
.tab-roi td.origine{background:rgba(95,225,255,.08)}
.tab-roi small.su{color:#ffb86b;margin-left:4px}.tab-roi small.giu{color:#7fb4ff;margin-left:4px}
@media (max-width:900px){.misure-roi{max-height:none}}

.zona-pericolo{margin-top:28px;padding:12px 14px;border:1px solid var(--ko);border-radius:10px}
.zona-pericolo h3{margin:0 0 4px;color:var(--ko)}
button.pericolo{border-color:var(--ko);color:var(--ko)}
button.pericolo:disabled{opacity:.45}
#ed-elimina-conferma{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}
#ed-elimina-conferma[hidden]{display:none}
.avviso-ok{padding:8px 12px;border:1px solid var(--ok,#3fb950);border-radius:8px;color:var(--ok,#3fb950)}

/* elenco per metodica */
.barra-elenco{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 14px}
.schede{display:flex;flex-wrap:wrap;gap:6px}
.schede button small{opacity:.7;margin-left:3px}
.gruppo-metodica{margin-bottom:22px}
.gruppo-metodica h2{font-size:1.1em;margin:0 0 8px}
.casuale-info{font-size:.9em;color:var(--mut);margin:6px 0}
#btn-prossimo{margin-top:12px;width:100%}

/* doppio clic: una sola vista MPR */
.mpr.solo{grid-template-columns:1fr;grid-template-rows:1fr}
.mpr.solo .mpr-cella:not(.scelta){display:none}
.viewer:fullscreen{background:var(--bg,#0d1117);padding:8px}

.ed-serie-box{border:1px solid var(--bord);border-radius:10px;padding:8px 12px;margin:10px 0}
.ed-serie-voce{display:flex;gap:8px;align-items:center;margin:2px 0}
.ed-disp-griglia{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.ed-disp-griglia select{max-width:100%}
.serie .s.nascosta{opacity:.55;border-style:dashed}
/* elenco delle serie sotto il visualizzatore: una striscia orizzontale */
.caso{grid-template-columns:1fr 360px;grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"viewer quiz" "serie quiz"}
.caso>.viewer{grid-area:viewer;min-height:0}
.caso>.quiz{grid-area:quiz}
.caso>.serie{grid-area:serie;border-right:0;border-top:1px solid var(--bord);display:flex;align-items:stretch;gap:8px;padding:6px 8px;overflow-x:auto;overflow-y:hidden}
.caso>.serie h3{writing-mode:vertical-rl;transform:rotate(180deg);margin:0;align-self:center;font-size:.75em}
#lista-serie{display:flex;gap:6px}
.caso>.serie .s{width:auto;min-width:130px;max-width:190px;margin:0;padding:6px 26px 6px 8px;white-space:normal;line-height:1.25;font-size:.88em;flex:none}
.serie .s[data-pannello]:not([data-pannello=""])::after{content:attr(data-pannello);position:absolute;top:6px;right:8px;font:600 11px ui-monospace,Menlo,monospace;background:#04111f;color:#fff;border-radius:4px;padding:1px 5px}
@media (max-width:1100px){.caso{grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:"viewer" "serie" "quiz"}}
/* linguette degli studi (esame attuale e pregressi) sopra la striscia delle serie */
.serie-corpo{display:flex;flex-direction:column;gap:0;min-width:0;flex:1}
.tab-studi{display:flex;gap:2px;align-items:flex-end;border-bottom:2px solid var(--acc,#5aa2ff);margin-bottom:6px;overflow-x:auto}
.tab-studi[hidden]{display:none}
.tab-studi button{flex:none;border-radius:8px 8px 0 0;border-bottom:0;padding:5px 12px;font-size:.85em;background:var(--pan);color:var(--mut)}
.tab-studi button.attuale{font-weight:600}
.tab-studi button.pregresso{font-style:italic}
.tab-studi button.on{background:var(--acc,#5aa2ff);color:#04111f}
#lista-serie .s[hidden]{display:none}
/* elementi di gioco */
.gioco-chip{display:inline-flex;gap:4px;align-items:center;padding:4px 10px;border:1px solid var(--bord);border-radius:999px;font-size:.85em;color:inherit;text-decoration:none;white-space:nowrap}
.gioco-chip:hover{border-color:var(--acc)}
.gioco-chip[hidden]{display:none}
.fuoco{color:var(--warn);font-weight:600}
.gioco-card{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;background:var(--pan);border:1px solid var(--bord);border-radius:12px;padding:12px 16px;margin:4px 0 14px}
.gioco-card[hidden]{display:none}
.gioco-liv{display:flex;gap:12px;align-items:center;flex:1 1 280px;min-width:240px}
.gioco-liv>div:last-child{flex:1;display:flex;flex-direction:column;gap:3px}
.gioco-n{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:1.35em;font-weight:700;background:var(--acc);color:#04111f;flex:none}
.gioco-dato{display:flex;flex-direction:column;align-items:center;min-width:64px}
.gioco-dato b{font-size:1.3em}.gioco-dato small{color:var(--mut);font-size:.78em}
.gioco-barra{height:7px;border-radius:4px;background:var(--bord);overflow:hidden;margin-top:3px}
.gioco-barra span{display:block;height:100%;background:linear-gradient(90deg,var(--acc),var(--ok))}
.gioco-regole{flex-basis:100%;font-size:.85em;color:var(--mut)}
.gioco-regole summary{cursor:pointer}
.gioco-esito{border:1px solid var(--bord);border-radius:10px;padding:10px 12px;margin:10px 0;display:flex;flex-direction:column;gap:5px;background:var(--pan)}
.gioco-esito.salito{border-color:var(--ok);box-shadow:0 0 0 2px color-mix(in srgb,var(--ok) 35%,transparent)}
.gioco-salito{color:var(--ok);font-weight:700}
.gioco-piu{font-size:1.3em;color:var(--ok)}
.badge.fatto{background:var(--bord);color:inherit;margin-left:6px}
.badge.fatto.esatto{background:var(--ok);color:#04111f}
/* disposizioni (workspace) per la mammografia */
.ws-mg{display:flex;flex-wrap:wrap;gap:4px;align-items:center;flex-basis:100%}
.ws-mg[hidden]{display:none}
.ws-tit{font-size:.8em;color:var(--mut);text-transform:uppercase;letter-spacing:.05em;margin-right:4px}
.ws-mg kbd{font:600 10px ui-monospace,Menlo,monospace;border:1px solid var(--bord);border-radius:4px;padding:0 4px;margin-left:4px;opacity:.7}
.ws-mg button.on kbd{border-color:#04111f}
/* ricerca per sospetto clinico */
.cerca-quesito{display:flex;flex-direction:column;gap:8px;margin:6px 0 12px}
.cerca-quesito input{width:100%;padding:10px 12px;font-size:1em;border-radius:10px}
.cerca-quesito{position:relative;max-width:640px}
.cerca-riga{display:flex;align-items:center;gap:8px}
.cerca-riga input{flex:1;min-width:0}
.cerca-riga span{white-space:nowrap}
.sugg-quesiti{position:absolute;top:100%;left:0;right:0;z-index:30;margin-top:2px;background:var(--pan);border:1px solid var(--bord);border-radius:10px;box-shadow:0 8px 24px #0008;max-height:320px;overflow:auto;padding:4px}
.sugg-quesiti button{display:flex;justify-content:space-between;gap:10px;width:100%;text-align:left;background:none;border:0;border-radius:6px;padding:7px 10px;color:inherit;font-size:.92em;cursor:pointer}
.sugg-quesiti button:hover,.sugg-quesiti button.on{background:var(--pan2)}
.sugg-quesiti small{opacity:.6}
.quesito-card{font-size:.78em;color:var(--acc);text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}
/* percorsi tematici e ripasso */
.percorsi h2{font-size:1.05em;margin:6px 0 8px}
.percorsi-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin-bottom:14px}
.percorso{background:var(--pan);border:1px solid var(--bord);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px}
.percorso.ripasso{border-color:var(--warn)}
.p-tit{font-weight:600}.p-desc{font-size:.85em;color:var(--mut);flex:1}
.p-piede{display:flex;justify-content:space-between;align-items:center;gap:8px}
.docente-vista{margin-top:14px;padding-top:10px;border-top:1px dashed var(--bord);display:flex;flex-direction:column;gap:4px}
.docente-vista[hidden]{display:none}
#btn-reperto{margin-top:8px}
.badge.giudizio.facile{background:var(--ok);color:#04111f}.badge.giudizio.difficile{background:var(--ko);color:#fff}.badge.giudizio.ambiguo{background:var(--warn)}
/* anteprime delle serie */
.caso>.serie .s{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center}
.caso>.serie .s canvas.anteprima{grid-row:1 / span 2;width:46px;height:46px;border-radius:4px;background:#000}
.caso>.serie .s small{grid-column:2}
.caso>.serie .s:not(:has(canvas)) small{grid-column:1 / -1}
/* classi e compiti */
.classi{padding:16px 20px;max-width:1300px;margin:0 auto}
.classe{background:var(--pan);border:1px solid var(--bord);border-radius:12px;padding:12px 14px;margin-bottom:14px}
.classe h2{margin:0 10px 0 0;font-size:1.1em}
.cl-stato td.ok{color:var(--ok);font-weight:600}.cl-stato td.tardi{color:var(--warn)}.cl-stato td.ko{color:var(--ko)}
.cl-membri{display:flex;flex-wrap:wrap;gap:6px 16px}
.cl-compito{border:1px dashed var(--bord);border-radius:10px;padding:8px;margin:8px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cl-compito .cl-tit{flex:1;min-width:220px}.cl-casi{flex-basis:100%}
.cl-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;max-height:340px;overflow:auto;margin-top:6px}
.cl-griglia>div{display:flex;flex-direction:column;gap:2px;font-size:.88em}
.cl-caso[hidden]{display:none}
#cl-nome{flex:1;font-size:1.05em}
.percorso.compito{border-color:var(--acc)}.percorso.compito.scaduto{border-color:var(--ko)}
/* referto guidato per distretti */
.q-passi{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}
.q-passi button{background:var(--pan2);border:1px solid var(--bord);border-radius:16px;padding:4px 10px;font-size:.82em;color:inherit;cursor:pointer}
.q-passi button.fatto{border-color:var(--ok)}
.q-passi button.on{background:var(--acc);border-color:var(--acc);color:#fff}
.q-passi .num,.sezione legend .num,.ed-sez .num{display:inline-block;min-width:1.4em;text-align:center;font-weight:700}
.sezione{border:1px solid var(--bord);border-radius:10px;padding:8px 10px 4px;margin:0 0 10px}
.sezione legend{font-weight:600;padding:0 6px}
.sez-domanda{margin:2px 0 8px;font-size:.92em}
.sez-esito{font-size:.8em;margin-left:6px;padding:1px 7px;border-radius:10px}
.sez-esito.ok,.sez-punteggi .ok{background:var(--ok-bg);color:var(--ok)}
.sez-esito.medio,.sez-punteggi .medio{background:var(--warn-bg);color:var(--warn)}
.sez-esito.ko,.sez-punteggi .ko{background:var(--ko-bg);color:var(--ko)}
.sez-punteggi{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.sez-punteggi span{padding:2px 8px;border-radius:10px;font-size:.85em}
.referto-atteso{padding-left:1.3em;line-height:1.5}
.q-nav{display:flex;gap:8px;justify-content:space-between;margin:4px 0 10px}
.ed-sezioni-box{border:1px solid var(--bord);border-radius:10px;padding:8px 12px;margin:10px 0}
.ed-sez{display:grid;grid-template-columns:auto 1fr 2fr 1fr auto auto auto;gap:6px;align-items:center;margin-bottom:6px}
.ed-opz{grid-template-columns:auto 1fr 1fr auto auto}
@media (max-width:800px){.ed-sez{grid-template-columns:auto 1fr auto auto}.ed-sez .ed-sez-dom,.ed-sez .ed-sez-serie{grid-column:2/-1}}
/* grafico (profilo / istogramma) e immagini chiave */
.grafico{position:absolute;right:8px;bottom:8px;width:min(560px,62%);z-index:5;padding:6px 8px;border:1px solid var(--bord);border-radius:8px;background:var(--pan-trasp)}
.grafico #grafico-chiudi{position:absolute;top:2px;right:4px;padding:0 6px;border:0;background:none;color:inherit;cursor:pointer}
.grafico-tit{font-size:.88em;margin-bottom:4px}
.stage .grafico canvas{position:static;display:block;width:100%;height:140px;cursor:default}
.grafico-tit{padding-right:20px}
@media (max-width:700px){.grafico{width:calc(100% - 16px)}}
.chiavi{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0;font-size:.85em}
.chiavi .chiave{display:inline-flex;border:1px solid var(--bord);border-radius:14px;overflow:hidden;background:var(--pan2)}
.chiavi .chiave button{background:none;border:0;color:inherit;padding:3px 8px;cursor:pointer;font-size:1em}
.chiavi .chiave .vai{color:var(--warn)}
.chiavi .chiave .via{border-left:1px solid var(--bord);opacity:.7}
#btn-sott.on,#btn-chiave:active{background:var(--acc);color:#fff}
.tab a{color:var(--acc)}
/* barra unica: modalità, strumenti e comandi in una sola fila di icone */
.barra-unica{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;padding-bottom:2px}
.barra-unica .toolbar{flex-wrap:nowrap;gap:6px;align-items:center}
.barra-unica .toolbar[hidden]{display:none}
.barra-unica .grp{flex-wrap:nowrap;align-items:center;gap:3px;padding-left:6px;border-left:1px solid var(--bord)}
.barra-unica .grp:first-child{border-left:0;padding-left:0}
.barra-unica .modi{flex:none}
.barra-unica .modi button{padding:5px 9px}
.barra-unica span[hidden]{display:none}
.barra-unica #fusione-wrap,.barra-unica #sott-wrap,.barra-unica #sincro-wrap,.barra-unica #fusione-controlli{display:inline-flex;gap:3px;align-items:center}
button.ico{padding:5px 7px;display:inline-flex;align-items:center;justify-content:center;line-height:0;flex:none}
button.ico svg{display:block}
.barra-unica select.compatto{width:auto;max-width:110px;padding:4px 6px}
.barra-unica select{max-width:150px}
.barra-unica .ws-mg{flex-basis:auto;flex-wrap:nowrap}
.barra-unica .ws-mg button{padding:4px 7px;white-space:nowrap}
.barra-unica .ws-tit{display:none}
.ico-check{cursor:pointer;border:1px solid var(--bord);border-radius:6px;padding:5px 7px !important;line-height:0}
.ico-check input{position:absolute;opacity:0;width:0;height:0}
.ico-check:has(input:checked){background:var(--acc);border-color:var(--acc);color:#04111f}
.barra-unica label.check input[type=range]{width:70px}
.barra-unica .schermo{margin-left:auto}
button[hidden],select[hidden]{display:none !important}
/* menù Gestione */
.menu-gestione{position:relative}
.menu-gestione[hidden]{display:none}
.menu-gestione>summary{list-style:none;cursor:pointer}
.menu-gestione>summary::-webkit-details-marker{display:none}
.menu-voci{position:absolute;right:0;top:calc(100% + 6px);z-index:50;min-width:290px;background:var(--pan);border:1px solid var(--bord);border-radius:10px;box-shadow:0 10px 30px #0009;padding:6px;display:flex;flex-direction:column}
.menu-voci a{padding:8px 10px;border-radius:6px;color:inherit;text-decoration:none;font-size:.95em}
.menu-voci a:hover{background:var(--pan2)}
.menu-voci a[hidden]{display:none}
.gc-barra input{flex:1;min-width:200px}
.tab-account a{color:var(--acc)}

/* tema chiaro (il visualizzatore resta nero, come in refertazione) */
:root[data-tema="chiaro"]{--bg:#f4f6f9;--pan:#ffffff;--pan2:#eef1f5;--bord:#cfd6df;--txt:#16202b;--mut:#5d6b7a;
  --acc:#1f6fd1;--ok:#13804f;--ko:#c62f2f;--warn:#a96a00;--ok-bg:#e3f5ea;--ko-bg:#fbe5e5;--warn-bg:#fdf1d8;--pan-trasp:rgba(255,255,255,.95)}
:root[data-tema="chiaro"] button.on{color:#fff}
:root[data-tema="chiaro"] .menu-voci{box-shadow:0 10px 30px #0003}
.nitid{position:relative}
.nitid b{position:absolute;right:2px;bottom:1px;font-size:9px;line-height:1}
/* aiuto */
.aiuto-pagina{max-width:900px;margin:0 auto;padding:20px;line-height:1.55}
.aiuto-pagina h2{margin-top:28px;border-bottom:1px solid var(--bord);padding-bottom:4px}
.aiuto-pagina kbd{font:600 12px ui-monospace,Menlo,monospace;border:1px solid var(--bord);border-radius:4px;padding:0 5px}
.aiuto-indice{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}
.aiuto-indice a{padding:4px 10px;border:1px solid var(--bord);border-radius:14px;color:inherit;text-decoration:none;font-size:.9em}
:root[data-tema="chiaro"] .grafico{background:rgba(23,27,33,.92);color:#e6e9ee;border-color:#2a313b}
.referto-libero{margin:8px 0}
.referto-libero summary{cursor:pointer;color:var(--acc);font-size:.92em}
.referto-libero textarea{width:100%;margin-top:6px;resize:vertical}
.referto-cfr{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.referto-check{padding-left:0;list-style:none;font-size:.9em}
.referto-check li.ok{color:var(--ok)}.referto-check li.ko{color:var(--mut)}
.aspects{margin:6px 0;padding:8px 10px;border:1px solid var(--bord);border-radius:8px;background:var(--pan)}
.aspects-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px;margin:6px 0}
@media (max-width:800px){.referto-cfr{grid-template-columns:1fr}}
.logo{display:inline-flex;align-items:center;gap:8px}.logo img{display:block;border-radius:6px}
.logo-grande{display:block;margin:0 auto 10px}
.accesso a{color:var(--acc)}
.profilo-form .check,.accesso .check{display:flex;flex-direction:row;gap:8px;align-items:flex-start;color:var(--txt)}
.profilo-form .check input,.accesso .check input{width:auto;min-width:0;flex:none;margin-top:3px}
#pr-docenti-cerca{width:100%;max-width:560px}
.profilo-form button[type=submit]{align-self:flex-start;min-width:140px}
.accesso{gap:40px;align-items:flex-start;flex-wrap:wrap}
.acc-presenta{max-width:460px;padding-top:8px}
.acc-presenta h1{margin:0 0 12px;font-size:1.9rem;line-height:1.2}
.acc-presenta p{line-height:1.5}
.acc-presenta ul{padding-left:18px;line-height:1.5}.acc-presenta li{margin:8px 0}
.pw-campo{display:flex;gap:6px}.pw-campo input{flex:1;min-width:0}.pw-mostra{padding:0 10px}
.pw-info.ok{color:var(--ok)}.pw-info.ko{color:var(--ko)}
@media (max-width:900px){.accesso{padding-top:4vh}.acc-presenta{order:2}}
.badge-poc{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:6px;border:1px solid var(--warn);color:var(--warn);font-size:.72rem;font-weight:700;letter-spacing:.06em;vertical-align:middle;cursor:help}
h1 .badge-poc{font-size:.8rem;vertical-align:super}
.poc-avviso{margin:0 0 14px;padding:8px 12px;border-left:3px solid var(--warn);background:var(--warn-bg);border-radius:6px;font-size:.9em;line-height:1.45}
.schede.aree{border-bottom:0;padding-bottom:2px;margin-bottom:4px}
.schede.aree:empty{display:none}
.schede.aree button{font-weight:600;padding:8px 14px}

/* difficoltà dei casi */
.diff{font-weight:600}
.diff-base{color:#2e7d4f}.diff-intermedio{color:#b26a00}.diff-avanzato{color:#c0392b}
:root[data-tema="scuro"] .diff-base{color:#6fcf97}:root[data-tema="scuro"] .diff-intermedio{color:#f2b04c}:root[data-tema="scuro"] .diff-avanzato{color:#ff7b6b}

/* esame simulato */
.pagina-esame{max-width:960px;margin:0 auto;padding:24px 16px}
.esame-form{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin:18px 0}
.esame-form label{display:flex;flex-direction:column;gap:4px}
.esame-sintesi{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:18px 0}
.esame-sintesi>div{border:1px solid var(--bordo,#ccd);border-radius:10px;padding:14px;text-align:center}
.esame-sintesi .grande{font-size:2rem;font-weight:700}
.tab-esame{width:100%;border-collapse:collapse;margin:12px 0}
.tab-esame th,.tab-esame td{padding:8px;border-bottom:1px solid var(--bordo,#dde);text-align:left;vertical-align:top}
.corr-opz{margin:6px 0 10px;padding-left:18px}.corr-opz li.corretta{color:var(--ok)}.corr-opz li.errata{color:var(--ko)}.corr-opz li.mancata{color:var(--warn)}
.crono{font-variant-numeric:tabular-nums;font-weight:700}.crono.poco{color:var(--ko)}

/* domanda sulla figura */
.q-loc{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;border:1px dashed var(--accento,#3b82f6);border-radius:10px;padding:10px 12px;margin:10px 0}
canvas.punta{cursor:crosshair}
.loc-esito.centrato{color:var(--ok)}.loc-esito.vicino{color:var(--warn)}.loc-esito.mancato,.loc-esito.assente{color:var(--ko)}

/* caricamento: testo impresso */
.serie-card.sospetta{outline:2px solid #ff3b30}
.nc-testo{font-size:.82rem;padding:6px 8px;display:flex;flex-direction:column;gap:3px;color:var(--testo)}
.nc-testo label{display:flex;flex-direction:row;gap:6px;align-items:flex-start;cursor:pointer;margin:0;font-weight:400}
.nc-testo input{width:auto;margin-top:2px;flex:none}

/* suggerimento sotto i tasti del visualizzatore */
.tip-barra{position:fixed;z-index:1000;max-width:320px;padding:6px 9px;border-radius:7px;font-size:.78rem;line-height:1.3;
  background:#1f2933;color:#f5f7fa;box-shadow:0 4px 14px rgba(0,0,0,.25);pointer-events:none}
.tip-barra::before{content:"";position:absolute;top:-5px;left:calc(var(--freccia,50%) - 5px);border:5px solid transparent;border-top:0;border-bottom-color:#1f2933}
:root[data-tema="scuro"] .tip-barra{background:#e8edf2;color:#111}
:root[data-tema="scuro"] .tip-barra::before{border-bottom-color:#e8edf2}

/* CPR e segmentazione in MPR */
.cpr-pannello{position:absolute;inset:0;z-index:6;background:#000;display:flex;flex-direction:column}
.cpr-barra{display:flex;gap:8px;align-items:center;padding:4px 8px;background:rgba(20,24,30,.9);color:#e8edf2;font-size:.8rem;flex-wrap:wrap}
.cpr-barra .check input{width:110px}
#cpr-tela{flex:1;width:100%;min-height:0;cursor:ns-resize}
.cpr-guida{position:absolute;left:50%;top:6px;transform:translateX(-50%);z-index:8;background:rgba(20,24,30,.92);color:#f5f7fa;border-radius:8px;padding:6px 10px;font-size:.82rem;display:flex;gap:8px;align-items:center}
.mpr-info{position:absolute;left:8px;bottom:8px;z-index:7;max-width:46%;background:rgba(20,24,30,.88);color:#f5f7fa;border-radius:7px;padding:5px 9px;font-size:.8rem;pointer-events:none}
.mpr-info:empty{display:none}
.cpr-barra select{color:#111;background:#e8edf2}

/* scale internazionali */
.scale-testa{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.scala-campi{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px 14px;margin:6px 0}
.scala-nome{font-weight:600;font-size:.86rem;margin-bottom:2px}
.scala-campo .check{display:flex;gap:6px;align-items:flex-start;font-size:.84rem;margin:2px 0}
.scala-campo .check input{flex:none;margin-top:3px}
.scala-esito{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:6px}
.scala-valore{font-weight:600}
button.piccolo{padding:2px 6px;font-size:.78rem}
.versione-sito{margin:-8px 0 14px;font-size:.8em;color:var(--muted,#888)}
.versione-sito:empty{display:none}
.scala-mappa{width:100%;max-width:460px;display:block;margin:4px 0;user-select:none}
.scala-mappa .sm-s{fill:var(--bg-2,#20262e);stroke:var(--testo,#ccc);stroke-width:.8;cursor:pointer}
.scala-mappa .sm-s.sm-TZ{fill:#2b3442}.scala-mappa .sm-s.sm-AF{fill:#3a3530}.scala-mappa .sm-s.sm-CZ{fill:#2f3a33}
.scala-mappa .sm-s:hover{fill:#4d6a8f}.scala-mappa .sm-s.on{fill:#e0533d}
.scala-mappa .sm-et{font-size:7px;fill:#ddd;text-anchor:middle;pointer-events:none}
.scala-mappa .sm-tit{font-size:10px;fill:currentColor;text-anchor:middle}
.scala-mappa .sm-or{font-size:9px;fill:currentColor;opacity:.7;text-anchor:middle}
.scala-mappa .sm-uretra{fill:#111;stroke:#888;stroke-width:.6;pointer-events:none}
.sm-mammella{cursor:crosshair}
.scala-mappa .sm-mamm{fill:#e8c9b8;fill-opacity:.18;stroke:currentColor;stroke-width:1}
.scala-mappa .sm-coda{fill:#e8c9b8;fill-opacity:.12;stroke:currentColor;stroke-width:.8;stroke-dasharray:3 2}
.scala-mappa .sm-areola{fill:#c98f78;fill-opacity:.45;stroke:currentColor;stroke-width:.6}
.scala-mappa .sm-asse{stroke:currentColor;stroke-width:.5;stroke-dasharray:3 3;opacity:.5}
.scala-mappa .sm-ora{font-size:8px;fill:currentColor;opacity:.6;text-anchor:middle}
.scala-mappa .sm-q{font-size:10px;fill:currentColor;opacity:.75;text-anchor:middle;font-weight:600}
.scala-mappa .sm-punto{fill:#e0533d;stroke:#fff;stroke-width:1.5}
.scala-campo:has(.scala-mappa){grid-column:1/-1}
.scala-campo .scala-mappa{max-width:560px}
.cpr-analisi{background:#0d1117;color:#e8edf2;font-size:.78rem;padding:4px 8px 6px}
.cpr-analisi canvas{width:100%;height:90px;display:block}
.cpr-analisi .piccolo{color:#e8edf2;padding:1px 6px}
/* pannello delle domande a scomparsa */
.caso{position:relative}
.btn-pannello{position:absolute;top:50%;right:360px;transform:translate(50%,-50%);z-index:20;width:22px;height:56px;padding:0;border-radius:11px;border:1px solid var(--bord);background:var(--pan);color:inherit;font-size:16px;line-height:1;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.btn-pannello:hover{background:var(--bord)}
.caso.senza-quiz{grid-template-columns:1fr 0}
.caso.senza-quiz>.quiz{display:none}
.caso.senza-quiz .btn-pannello{right:0;transform:translate(0,-50%);border-radius:11px 0 0 11px}
@media (max-width:1100px){.btn-pannello{display:none}.caso.senza-quiz>.quiz{display:block}}
/* editor: immagini del caso */
.ed-serie-riga{display:flex;align-items:center;gap:8px;justify-content:space-between}
.ed-serie-riga .ed-serie-voce{flex:1}
.ed-immagini-azioni{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0}
.ed-immagini{border:1px solid var(--bord);border-radius:8px;padding:8px;margin:8px 0;background:var(--pan)}
.ed-imm-testa{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.ed-imm-bottoni{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.ed-imm-corpo{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,360px);gap:10px}
.ed-imm-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px;max-height:440px;overflow:auto;align-content:start}
.ed-imm{background:#000;border:2px solid transparent;border-radius:6px;padding:2px;cursor:pointer;color:#ddd;font-size:.75rem}
.ed-imm canvas{width:100%;aspect-ratio:1;display:block}
.ed-imm label{display:flex;gap:4px;align-items:center;padding:2px}
.ed-imm.vista{border-color:#4ea1ff}.ed-imm.scelta{border-color:#e0533d;opacity:.7}.ed-imm.errore{outline:2px dashed #e0533d}
.ed-imm-grande canvas{width:100%;aspect-ratio:1;background:#000;border-radius:6px;display:block}
@media (max-width:800px){.ed-imm-corpo{grid-template-columns:1fr}}
/* gestione dei casi */
.gc-riepilogo{display:flex;gap:18px;flex-wrap:wrap;margin:6px 0 10px;font-size:.9rem}
.gc-riepilogo .gc-avviso b{color:var(--ko)}
.gc-tabella{overflow-x:auto}
.gc-tab th[data-ord]{cursor:pointer;user-select:none;white-space:nowrap}
.gc-tab th.ord::after{content:" " attr(data-verso);font-size:.7em}
.gc-tab .gc-prob{background:var(--warn-bg,#fff3cd);color:var(--warn,#8a6d00);cursor:help}
.gc-tab .gc-ok{color:var(--ok,#2a9d4b);font-weight:700}
.gc-azioni{white-space:nowrap}
/* scritte di attesa sopra le immagini: sempre leggibili, anche col tema chiaro */
.caricamento{color:#fff;background:rgba(0,0,0,.82);z-index:30;font-size:.95rem;box-shadow:0 2px 8px rgba(0,0,0,.4)}
/* barra delle serie a scomparsa */
.btn-serie{all:unset;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;padding:4px 2px;border-radius:4px}
.btn-serie:hover{background:var(--bord)}
.btn-serie:focus-visible{outline:2px solid #4ea1ff}
.caso.senza-serie>.serie .serie-corpo{display:none}
.caso.senza-serie>.serie{padding:2px 8px}
.caso.senza-serie>.serie h3{writing-mode:horizontal-tb;transform:none}
/* istruzioni compatte (testo intero nel suggerimento o con un clic) */
.aiuto.compatto{cursor:help;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px 0}
.aiuto.compatto.aperto{white-space:normal;cursor:pointer}
/* ritorno all'elenco dei casi */
.btn-indietro{margin-left:10px;padding:4px 10px;border:1px solid var(--bord);border-radius:6px;text-decoration:none;color:inherit;font-size:.88rem;white-space:nowrap}
.btn-indietro:hover{background:var(--bord)}
@media (max-width:700px){.btn-indietro{font-size:0;padding:4px 8px}.btn-indietro::before{content:"←";font-size:1rem}}
/* scale: richieste dal caso e confronto con la scheda del docente */
.q-scale{background:var(--warn-bg,#fff7e0);border-left:3px solid var(--warn,#c90);padding:6px 10px;border-radius:6px;font-size:.88rem}
.q-scale .link,.scala-autore .link{background:none;border:0;padding:0;color:var(--acc,#2563eb);text-decoration:underline;cursor:pointer;font:inherit}
.scala-autore{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:6px;padding-top:6px;border-top:1px dashed var(--bord)}
.sc-confronto{border:1px solid var(--bord);border-radius:8px;padding:8px 10px;margin:6px 0}
.sc-tit{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.sc-tab{width:100%;border-collapse:collapse;font-size:.82rem}
.sc-tab th,.sc-tab td{text-align:left;padding:3px 6px;border-bottom:1px solid var(--bord);vertical-align:top}
.sc-ok{color:var(--ok,#2a9d4b)}.sc-no{color:var(--ko,#c0392b)}.sc-vicino{color:var(--warn,#b7791f)}.sc-manca{color:var(--mut,#888)}
tr.sc-ok .sc-segno,tr.sc-no .sc-segno,tr.sc-vicino .sc-segno{font-weight:700}
/* il contenuto del visualizzatore scorre dentro la sua colonna, senza coprire la barra delle serie */
.caso>.viewer{overflow-y:auto}
.scale-testa .link{background:none;border:0;padding:0;color:var(--acc,#2563eb);text-decoration:underline;cursor:pointer;font:inherit;font-size:.82rem}

/* scheda delle scale sotto le immagini: le immagini mantengono l'altezza, il visualizzatore scorre */
.caso>.viewer.con-scheda .stage,.caso>.viewer.con-scheda .mpr{flex:none;height:var(--alt-img,60vh)}
.caso>.viewer .scale{flex:none;scroll-margin-top:8px}
/* fegato: segmenti di Couinaud */
.scala-mappa.sm-fegato{max-width:460px}
.scala-mappa .sm-contorno{fill:none;stroke:var(--testo,#ccc);stroke-width:1.4;pointer-events:none}
.scala-mappa .sm-vena{stroke:#5b9bd5;stroke-width:1;stroke-dasharray:4 3;pointer-events:none}
.scala-mappa .sm-vena.porta{stroke:#c78a3b}
.scala-mappa .sm-seg{font-size:13px;font-weight:600}
.scala-mappa .sm-caudato{stroke-dasharray:3 2}
.scala-man{margin:6px 0;font-size:.88rem}.scala-man summary{cursor:pointer;color:var(--acc,#2563eb)}
.scala-man textarea{display:block;width:100%;margin:4px 0;font:inherit}

.ia-voce{display:inline-flex;align-items:center;gap:4px;margin-right:8px;white-space:nowrap}.ia-voce i{display:inline-block;width:10px;height:10px;border-radius:2px}
.gc-ia{display:flex;gap:8px;align-items:flex-start;margin:6px 0 10px}
/* con la scheda delle scale aperta il visualizzatore scorre: la barra degli strumenti resta sempre in alto,
   niente scorrimento orizzontale (tabelle larghe scorrono dentro la scheda) */
.caso>.viewer{overflow-x:hidden}
.caso>.viewer>.barra-unica{position:sticky;top:0;z-index:6;background:var(--bg)}
.caso>.viewer .scale{max-width:100%;min-width:0;overflow-x:auto;box-sizing:border-box}
.caso>.viewer>.barra-unica{flex:none}
.caso>.viewer.con-scheda>*{flex-shrink:0}
.referto-ia{border:1px solid var(--bord);border-radius:8px;padding:8px 12px;margin:10px 0;background:var(--pan2)}
.referto-ia ul{margin:2px 0 8px 18px;padding:0}.ria-voto{font-size:.95em;padding:1px 8px;border-radius:10px;margin-left:6px}
.ria-voto.ok{background:#2a9d4b33;color:var(--ok)}.ria-voto.medio{background:#b7791f33;color:var(--warn)}.ria-voto.ko{background:#c0392b33;color:var(--ko)}
p.ria-manca,ul.ria-manca{color:var(--warn)}p.ria-errore,ul.ria-errore{color:var(--ko)}
/* modo «solo referto»: niente opzioni, referto libero grande */
.q-modo{display:flex;gap:4px;margin:6px 0 8px}.q-modo button{flex:1;font-size:.85rem;padding:5px 8px}.q-modo button.on{background:var(--acc,#2563eb);color:#fff;border-color:transparent}
.quiz.solo-referto #q-form,.quiz.solo-referto #q-passi,.quiz.solo-referto #q-nav,.quiz.solo-referto #q-piu,.quiz.solo-referto #q-domanda{display:none!important}
.quiz.solo-referto #q-referto-box>summary{pointer-events:none;list-style:none}.quiz.solo-referto #q-referto-box>summary::-webkit-details-marker{display:none}
.quiz.solo-referto #q-referto{min-height:320px}
.proposta{display:block;margin:3px 0}
.vert-strato{position:absolute;inset:0;pointer-events:none;z-index:4}
.vert-et{position:absolute;color:#ffd34d;font:700 13px system-ui,sans-serif;text-shadow:0 0 3px #000,0 0 3px #000,0 0 2px #000}
.avviso-breve{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:var(--pan2);color:var(--txt);border:1px solid var(--bord);border-radius:8px;padding:8px 14px;z-index:50;box-shadow:0 4px 16px rgba(0,0,0,.3);max-width:90vw}

/* lesione seguita nel tempo */
.chiavi .chiave .segui{border-left:1px solid var(--bord);color:var(--acc,#4ea1ff)}
.traccia{border:1px solid var(--bord);border-radius:10px;background:var(--pan2);padding:8px 10px;margin:6px 0;font-size:.85em}
.traccia .tr-testa{display:flex;gap:8px;align-items:baseline}.traccia .tr-chiudi{margin-left:auto}
.traccia .tr-corpo{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;margin-top:6px}
.traccia .tr-corpo>div{flex:1 1 300px;min-width:0;overflow-x:auto}
.tr-graf{max-width:100%;height:auto;background:var(--pan,transparent);border-radius:6px}
.tr-graf text{font-size:9px}.tr-griglia{stroke:var(--bord);stroke-width:.5}
.tr-ld{fill:none;stroke:#ff9a5a;stroke-width:2}.tr-lv{fill:none;stroke:#4ea1ff;stroke-width:2;stroke-dasharray:4 3}
.tr-pd{fill:#ff9a5a}.tr-pd.pd{fill:#ff4d4d;stroke:#fff;stroke-width:1}.tr-pv{fill:#4ea1ff}
.tr-d{fill:#ff9a5a}.tr-v{fill:#4ea1ff}.tr-x{fill:currentColor;opacity:.75}
.tr-tab{border-collapse:collapse;width:100%}.tr-tab th,.tr-tab td{padding:2px 6px;text-align:left;border-bottom:1px solid var(--bord);white-space:nowrap}
.tr-tab tr.manca td{opacity:.7;font-style:italic}.tr-tab tr.dubbio td{background:rgba(255,180,0,.08)}
.tr-tab button{padding:1px 6px;font-size:.95em}
.tr-avviso{color:var(--warn)}
.anatomia{background:var(--pan2);border:1px solid var(--bord);border-radius:10px;padding:6px 10px;gap:10px}
.anatomia .anat-chi{color:#5ad1ff;font-size:1.1em}.anatomia .anat-msg{font-weight:600}.anatomia button{padding:2px 8px}
/* referti degli studenti (analisi docenti) */
.ref-filtri{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}
.ref-card{background:var(--pan);border:1px solid var(--bord);border-radius:10px;margin-bottom:10px;padding:10px 12px}
.ref-testa{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline}.ref-testa .ref-punti{margin-left:auto;font-weight:700}
.ref-corpo{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px;margin-top:8px;align-items:start}
@media (max-width:800px){.ref-corpo{grid-template-columns:1fr}}
.ref-testo{background:var(--pan2);border-radius:8px;padding:8px 10px;font-size:.92em;line-height:1.45;white-space:normal}
.ref-lista ul{margin:4px 0 8px 18px;padding:0;font-size:.88em}.ref-lista.ko b{color:var(--ko)}
.ref-rev{display:flex;flex-direction:column;gap:6px;margin-top:6px}.ref-rev textarea{width:100%;box-sizing:border-box}.ref-voto{width:80px}
.q-revisione{border:1px solid var(--acc);border-radius:10px;padding:8px 10px;margin:8px 0;background:var(--pan2);font-size:.9em}.q-revisione>div+div{margin-top:8px}.q-rev-comm{margin-top:4px;white-space:normal}
.gioco-rev{flex-basis:100%;font-size:.9em}
.radiomica{border:1px solid var(--bord);border-radius:10px;background:var(--pan2);padding:8px 10px;margin:6px 0;font-size:.85em}
.radiomica .tr-testa{display:flex;gap:8px;align-items:baseline}.radiomica .rad-chiudi{margin-left:auto}
.radiomica .tr-corpo{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;margin-top:6px}.radiomica .tr-corpo>div{flex:1 1 320px;min-width:0;overflow-x:auto}
.rad-graf{max-width:100%;height:auto;background:var(--pan,transparent);border-radius:6px}.rad-graf text{font-size:9px}
.ia-andamento{margin:6px 0}
/* sezioni richiudibili della pagina iniziale */
details.sezione-home{border:1px solid var(--bord);border-radius:10px;background:var(--pan);padding:2px 12px;margin:0 0 10px}
details.sezione-home>summary{list-style:none;cursor:pointer;padding:8px 0;display:flex;align-items:center;gap:8px}
details.sezione-home>summary::-webkit-details-marker{display:none}
details.sezione-home>summary::before{content:'▸';font-size:.9em;color:var(--muted,#888);transition:transform .15s}
details.sezione-home[open]>summary::before{transform:rotate(90deg)}
details.sezione-home>summary h2{margin:0;font-size:1.05em}
details.sezione-home[open]>summary{border-bottom:1px solid var(--bord);margin-bottom:10px}
/* funzioni del caso per gli studenti (editor, solo amministratore) */
.ed-funzioni { border: 1px solid var(--bordo, #ccd); border-radius: 8px; padding: 6px 10px 2px; margin: 8px 0; }
.ed-funzioni legend { font-weight: 600; padding: 0 4px; }
.ed-funzioni input:disabled + span { opacity: .6; }
/* riquadro informazioni dell'MPR lungo (misure IA): scorre, si riduce a una riga o si chiude */
.mpr-info.lunga{max-height:42%;overflow:auto;pointer-events:auto;padding-top:4px}
.mpr-info.lunga.ridotta{max-height:2.2em;overflow:hidden}
.mpr-info .info-com{position:sticky;top:0;float:right;display:flex;gap:4px;margin:0 0 2px 8px;z-index:1}
.mpr-info .info-com button{background:#2c3440;color:#fff;border:1px solid #4a5566;border-radius:5px;font-size:.75rem;line-height:1;padding:3px 7px;cursor:pointer}
/* percorsi didattici dei docenti */
.pd-gruppo{margin:18px 0 6px}
.pd-fissi>summary{cursor:pointer;list-style:none}.pd-fissi>summary h2{display:inline}
.pd-elenco summary{cursor:pointer;font-size:.9rem}
.pd-ordine{padding-left:22px}.pd-ordine li{display:flex;align-items:center;gap:4px;margin:2px 0}.pd-ordine li>span{flex:1}
.pd-ordine button{padding:1px 7px;font-size:.8rem}
.editor-percorso textarea{width:100%;margin:6px 0}
.percorso.del-docente{border-left:3px solid var(--accento,#2b7de9)}
/* percorso su misura ed esami di livello */
.percorso.su-misura{border-left:3px solid var(--ok,#2e9d5b)}
.esame-livello{border:1px solid var(--bordo,#ccd);border-radius:10px;padding:10px 14px;margin:10px 0 18px}
.esame-livello .es-liv{min-width:130px;line-height:1.2}
.es-storico .spark{color:var(--accento,#2b7de9);vertical-align:middle}.es-storico circle{fill:currentColor}
/* ---- telefono: uso con una mano. Il pannello delle domande è un «foglio» in basso (ridotto, metà, pieno),
   le immagini restano sopra; pulsanti grandi a portata di pollice. */
.q-maniglia{display:none}
@media (max-width:700px){
  body.foglio-attivo .caso>.quiz{position:fixed;left:0;right:0;bottom:0;z-index:40;height:var(--foglio,48dvh);max-height:92dvh;
    border-top:1px solid var(--bord);border-radius:14px 14px 0 0;box-shadow:0 -6px 18px rgba(0,0,0,.25);padding:0 14px 0;overflow:auto;background:var(--pan);
    transition:height .2s ease;overscroll-behavior:contain}
  body.foglio-attivo .caso{padding-bottom:var(--foglio,48dvh)}
  body.foglio-attivo .stage{height:calc(100dvh - var(--foglio,48dvh) - 150px);min-height:180px}
  body.foglio-attivo .q-maniglia{display:flex;position:sticky;top:0;z-index:2;background:var(--pan);margin:0 -14px 6px;padding:8px 14px 6px;
    align-items:center;gap:10px;border-bottom:1px solid var(--bord);cursor:pointer;touch-action:none}
  .q-maniglia::before{content:"";position:absolute;top:4px;left:50%;width:42px;height:4px;margin-left:-21px;border-radius:2px;background:var(--bord)}
  .q-maniglia .qm-tit{flex:1;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:6px}
  .q-maniglia button{min-width:44px;min-height:40px}
  body.foglio-attivo .quiz #q-nav,body.foglio-attivo .quiz #btn-conferma{position:sticky;bottom:0;z-index:2}
  body.foglio-attivo .quiz #q-nav{background:var(--pan);padding:8px 0 10px;margin:0;box-shadow:0 -8px 10px -6px rgba(0,0,0,.18)}
  body.foglio-attivo .quiz #q-nav button,body.foglio-attivo .quiz #btn-conferma{min-height:48px;font-size:1rem}
  body.foglio-attivo .quiz #btn-conferma{width:100%;margin-top:8px}
}
@media (pointer:coarse){
  .ico{min-width:40px;min-height:40px}
  #q-form .opz{padding:10px 8px}
  #q-form .opz label{min-height:32px}
  #q-form input[type=checkbox],#q-form input[type=radio]{width:22px;height:22px}
  .conf button,[data-conf]{min-height:36px;min-width:44px}
  input,select,textarea{font-size:16px}       /* niente zoom automatico di iOS sui campi */
  .q-passi button{min-height:36px}
}
/* telefono: l'intestazione non deve allargare la pagina (Safari altrimenti rimpicciolisce tutto) */
@media (max-width:700px){
  /* niente scorrimento nascosto: l'intestazione va a capo e i pulsanti diventano icone (prima «Esci» e «Modifica
     caso» finivano fuori dallo schermo) */
  .top{gap:6px;padding:4px 8px;flex-wrap:wrap;height:auto;min-height:48px;row-gap:4px;overflow:visible}
  .top .chip-extra{display:none}
  #btn-profilo,#btn-editor,#menu-gestione>summary{font-size:0;min-width:40px;min-height:36px;padding:4px 8px}
  #btn-profilo::before{content:"👤";font-size:1.05rem}
  #btn-editor::before{content:"✎";font-size:1.15rem}
  #menu-gestione>summary::before{content:"☰";font-size:1.2rem}
  .top .logo{font-size:0;gap:0}.top .logo img{margin:0}
  .top .badge-poc,.top .sub,.top .chi,.top #campo-nome{display:none}
  .top>*{flex:none}.top .spacer{flex:1 0 4px}
  .menu-gestione .menu-voci{position:fixed;top:50px;right:8px;left:auto;max-width:calc(100vw - 16px);box-sizing:border-box}
}
/* statistiche d'uso */
.sp-stat{margin-top:28px;border-top:1px solid var(--bord);padding-top:12px}
.sp-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:10px 0}
.sp-tile{border:1px solid var(--bord);border-radius:10px;padding:10px;text-align:center}.sp-tile .grande{font-size:1.6rem;font-weight:700}
/* revisione delle bozze */
.rv-nota{white-space:pre-wrap;background:var(--pan2);border-radius:8px;padding:8px 10px;font:inherit;font-size:.9rem;margin:8px 0}
.rv-caso.rv-fatto{opacity:.55}

/* ---- profili, percorsi con livello e obiettivi, test d'ingresso/finale (10/2026) */
.badge.liv { background: var(--accento-tenue, #e8f0fe); }
.badge.prof { background: #fdf2e0; color: #8a5a00; }
.p-obiettivi { font-size: .85em; margin: 2px 0 6px; }
.p-obiettivi summary { cursor: pointer; color: var(--muted, #666); }
.p-obiettivi ul { margin: 4px 0 0 18px; padding: 0; }
.p-test { font-size: .85em; margin: 2px 0 6px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.p-test .ok { color: var(--ok); font-weight: 600; } .p-test .ko { color: var(--ko); font-weight: 600; }
.filtro-profilo { display: block; margin: 0 0 8px; }
.percorso.cerca-errore { border-style: dashed; }
/* cerca l'errore */
.err-frasi li { padding: 6px 8px; margin: 4px 0; border-radius: 6px; cursor: pointer; border: 1px solid transparent; }
.err-frasi:not(.fatto) li:hover { background: var(--hover, rgba(127,127,127,.12)); }
.err-frasi li.ko { border-color: var(--ko); background: rgba(220, 53, 69, .08); }
.err-frasi li.scelta-sbagliata { text-decoration: line-through; opacity: .7; }
.err-alt { display: flex; flex-direction: column; gap: 6px; max-width: 760px; }
.err-alt button { text-align: left; white-space: normal; }
.err-alt button.ok { border-color: var(--ok); background: rgba(40, 167, 69, .12); }
.err-alt button.ko { border-color: var(--ko); background: rgba(220, 53, 69, .1); }
/* doppia lettura */
.annota-barra { position: fixed; left: 50%; bottom: 14px; transform: translateX(-50%); z-index: 60; background: var(--sfondo, #fff); color: inherit;
  border: 2px solid var(--accento, #2a6fdb); border-radius: 10px; padding: 8px 12px; box-shadow: 0 6px 24px rgba(0,0,0,.25); max-width: min(96vw, 900px); font-size: .9em; }
.annota-barra button { margin-left: 6px; }
/* lezione e schede di teoria */
.lezione { border-left: 4px solid var(--warn); padding: 4px 10px; margin: 8px 0; background: rgba(255, 193, 7, .08); }
.scheda-teoria { border: 1px solid var(--bordo, #ddd); border-radius: 8px; padding: 6px 10px; margin: 6px 0; }
.scheda-teoria summary { cursor: pointer; font-weight: 600; }
.scheda-teoria ul { margin: 2px 0 6px 18px; padding: 0; }
.ed-funzioni textarea { width: 100%; }
#ed-schede { width: 100%; }
/* esito del caso, confronto con i colleghi, proposte (1.79) */
.esito-clinico { border-left: 4px solid var(--ok); padding: 4px 10px; margin: 8px 0; background: var(--ok-bg); }
.cf-tab td { vertical-align: middle; }
.cf-tab .cf-val { font-weight: 600; }
.cf-mammo td:first-child::after { content: ' ★'; color: var(--warn); }
.cf-perc { position: relative; height: 8px; border-radius: 4px; background: linear-gradient(90deg, var(--ko), var(--warn), var(--ok)); min-width: 120px; margin: 4px 0; opacity: .8; }
.cf-perc span { position: absolute; top: -3px; width: 4px; height: 14px; margin-left: -2px; background: var(--txt); border-radius: 2px; }
.rv-rifiuta { gap: 6px; margin: 4px 0; }
.rv-rifiuta .rv-motivo { flex: 1; min-width: 0; }
#nc-proposta textarea, #nc-proposta input:not([type=checkbox]) { width: 100%; }
/* bull's eye del ventricolo sinistro */
.sm-bullseye .be-s{stroke:var(--bg,#111);stroke-width:1.2}
.sm-bullseye .be-s.be-on:hover{opacity:.85}
.sm-bullseye .be-n{font-size:8px;fill:#fff;font-weight:600}
.sm-bullseye .be-p{cursor:pointer}
.sm-bullseye .be-p rect{stroke:transparent;stroke-width:2}
.sm-bullseye .be-p.on rect{stroke:var(--txt);stroke-width:2.5}
.sm-bullseye .be-p.on text{font-weight:700;opacity:1}
.cine-fps{height:30px;padding:0 4px;font-size:12px;width:auto;max-width:76px;margin-left:2px;align-self:center}
/* misure ecocardiografiche */
.eco-pannello{position:fixed;left:14px;bottom:14px;z-index:55;width:min(380px,calc(100vw - 28px));max-height:70vh;overflow:auto;background:var(--pan);color:var(--txt);border:1px solid var(--bord);border-radius:10px;padding:10px 12px;box-shadow:0 8px 28px rgba(0,0,0,.35)}
.eco-pannello .riga{display:flex;align-items:center;gap:6px}
.eco-pannello .eco-testa{cursor:move;touch-action:none}
.eco-pannello .eco-scelte{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.eco-pannello .eco-scelte select{flex:1;min-width:0}
.eco-pannello .eco-fase button{padding:4px 8px}
.eco-pannello .eco-fase button.on{background:var(--acc);color:#fff}
.eco-pannello .eco-tab td,.eco-pannello .eco-tab th{font-size:12px;padding:2px 6px}
.eco-pannello .eco-ris{margin:6px 0;padding-left:18px}
.eco-pannello .eco-semi{margin:6px 0;padding:6px 8px;border:1px dashed var(--bord);border-radius:8px}
.eco-pannello .eco-semi button.on{background:var(--acc);color:#fff}
.eco-pannello .eco-curva{display:block;width:100%;height:44px;margin:6px 0 2px;color:var(--acc)}

/* pannello «Misure cardiache»: sul telefono non copre l'immagine; si può ridurre all'intestazione */
.eco-pannello .eco-breve{display:none}
.eco-pannello.ridotto>:not(.eco-testa){display:none}
.eco-pannello.ridotto .eco-breve{display:inline;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:700px){.eco-pannello{left:8px;right:8px;bottom:8px;width:auto;max-height:46vh}}
/* caselle in riga con il loro testo nei moduli */
.account form input[type=checkbox]{flex:none;min-width:0;width:auto;margin:0}

/* iscritti e docenti */
.acc-riepilogo{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 12px}.acc-riepilogo span{border:1px solid var(--bord,#d9dee6);border-radius:8px;padding:4px 10px;font-size:.9rem}
.acc-riepilogo b{font-size:1.05rem}
.acc-filtri select{min-width:0}
.tab-account th[data-ord]{cursor:pointer;user-select:none}.tab-account th[data-ord]:hover{text-decoration:underline}
.tab-account th.ord-su::after{content:" ▲";font-size:.7em}.tab-account th.ord-giu::after{content:" ▼";font-size:.7em}
.acc-docenti-ed{display:flex;flex-direction:column;gap:4px;margin-top:6px;padding:8px;border:1px solid var(--bord,#d9dee6);border-radius:8px;max-height:220px;overflow:auto;min-width:200px}
.acc-docenti-ed label{display:flex;align-items:center;gap:6px;font-size:.9rem}.acc-docenti-ed input{flex:none;min-width:0;width:auto;margin:0}
.acc-docenti-ed .riga{gap:6px;margin-top:4px}
.scorri-x{overflow-x:auto}
@media (max-width:700px){.acc-filtri>*{flex:1 1 45%}}
#vista-account{max-width:1400px}#vista-account .tab-account td:last-child{min-width:150px}
.regola{border-left:3px solid var(--acc,#3b82f6);padding:2px 12px;margin:12px 0}.regola h3,.rassegna h3{margin:6px 0}
.rassegna ul{margin:4px 0;padding-left:18px}.rassegna li{margin:4px 0}
#lista-serie .s.chiusa{opacity:.45;cursor:not-allowed}#lista-serie .s.chiusa small::after{content:" · 🔒 si apre più avanti"}
/* istanza: vetrina pubblica o piattaforma di un'azienda (accesso su invito) */
.solo-azienda{display:none!important}
body.azienda .solo-azienda{display:revert!important}
body.azienda .solo-vetrina{display:none!important}
.acc-invito{gap:8px;flex-wrap:wrap;margin:12px 0 4px}.acc-invito input{flex:1 1 200px}

/* attribuzione delle immagini da archivi pubblici (TCIA, CC BY) */
.fonte-img { margin: 4px 0 8px; }
div.fonte-img h3 { margin: 8px 0 2px; }
.fonte-img a { color: inherit; text-decoration: underline; }
/* origine dei casi: Polime e archivi pubblici (TCIA) separati */
.schede.origine { margin-bottom: 6px; }
.schede.origine button { font-weight: 600; }
.badge.tcia { background: var(--acc); color: #04111f; }
.fonte-alto { border-left: 4px solid var(--acc); background: var(--pan2); padding: 6px 10px; border-radius: 6px; margin: 8px 0; }
