/* Emendando, direzione Studio: fondazione condivisa (specifica esecutiva v3).
   Sezioni: 1 font; 2 token (chiaro, scuro di sistema, scuro esplicito); 3 base; 4 testata e menu;
   5 componenti della sezione 6 con i loro stati; 6 Biblioteca e Carica; 7 Lettore; 8 Collaudo; 9 movimento. */

/* ---------- 1. Font locali (sezione 3.1 e 11): nessun caricamento a runtime da servizi esterni ---------- */
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/eb-garamond-regular.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/eb-garamond-medium.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/eb-garamond-semibold.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/eb-garamond-italic.woff2) format("woff2")}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/atkinson-hyperlegible-regular.woff2) format("woff2")}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/atkinson-hyperlegible-bold.woff2) format("woff2")}

/* ---------- 2. Token (sezioni 2.1, 4, 5) ---------- */
:root{
  color-scheme:light;
  --bg:#EEF1F3; --paper:#FFFFFF; --subtle:#F1F5F6; --hover:#E5ECEF;
  --ink:#1E303B; --muted:#526673; --rule:#CCD7DC; --control:#71808B;
  --chrome:#213942; --chrome-hover:#304F5B; --chrome-active:#162B33; --chrome-ink:#F2F5F4;
  --primary:#213942; --primary-hover:#304F5B; --primary-active:#162B33; --primary-ink:#FFFFFF;
  --focus:#1E303B; --focus-chrome:#F2F5F4;
  --minio:#A8352B; --minio-soft:#F6E3E0;
  --selected:#FFF1C9; --selected-ink:#5A4300; --selected-row:#FCF8EA;
  --link:#1E303B;
  --ed:#24539A; --ed-bg:#E3ECF8; --ver:#256B45; --ver-bg:#E0F1E7;
  --ric:#7A5A06; --ric-bg:#EDE6DA; --pending:#525A67; --pending-bg:#ECEEF2;
  --mecc:#A8352B; --lingua:#7B3FA0; --sign:#8A3B6E; --cong:#9A4A00; --disp:#1E303B;
  --esp:#0E6B78; --grafia:#6B5B4E; --nota:#5E6B2A;
  --logo:#D9E6EC; --brand-bg:#213942;
  --shadow-card:0 3px 14px rgba(24,50,60,.04);
  --shadow-dialog:0 16px 48px rgba(24,50,60,.18);
  --card-border:var(--rule);

  --font-latino:"EB Garamond","Iowan Old Style",Georgia,serif;
  --font-ui:"Atkinson Hyperlegible","Segoe UI",system-ui,sans-serif;
  --font-tec:ui-monospace,SFMono-Regular,Consolas,monospace;
  --lat:1.375rem;              /* 22 px; Lettura: 26 o 30 px */

  --space-micro:2px; --space-focus:3px; --space-control-gap:6px; --space-button-y:10px; --space-proof:14px;
  --space-column:18px; --space-title-top:28px; --space-inline-tablet:36px;
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:20px; --space-6:24px;
  --space-7:32px; --space-8:40px; --space-9:48px; --space-10:64px;
  --radius-xs:3px; --radius-sm:6px; --radius-md:8px; --radius-lg:12px; --radius-cell:4px;
  --radius-witness:6px; --radius-progress:4px; --radius-label:4px;
  --margine:32px; --pannello-pad:24px;
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){
  color-scheme:dark;
  --bg:#14181B; --paper:#1D2327; --subtle:#242C31; --hover:#2E3940;
  --ink:#ECECE5; --muted:#B5BEBD; --rule:#3B454A; --control:#87969C;
  --chrome:#122A33; --chrome-hover:#1C3B46; --chrome-active:#09212B; --chrome-ink:#EAF0EF;
  --primary:#E7ECEB; --primary-hover:#CDDAD6; --primary-active:#B9CCC5; --primary-ink:#19303A;
  --focus:#ECECE5; --focus-chrome:#EAF0EF;
  --minio:#F08A7E; --minio-soft:#3A2422;
  --selected:#44370F; --selected-ink:#FFE6A3; --selected-row:#302C1D;
  --link:#ECECE5;
  --ed:#9DBDF0; --ed-bg:#1F2C42; --ver:#8FD3AA; --ver-bg:#1B3226;
  --ric:#E8C770; --ric-bg:#2F2A22; --pending:#B9C0CC; --pending-bg:#2A2F3A;
  --mecc:#F08A7E; --lingua:#CDA2EC; --sign:#F0A3D2; --cong:#F5A35C; --disp:#ECECE5;
  --esp:#6FD0DC; --grafia:#C9B8A8; --nota:#C5D48A;
  --shadow-card:none; --shadow-dialog:0 16px 48px rgba(0,0,0,.35); --card-border:var(--control);
}}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#14181B; --paper:#1D2327; --subtle:#242C31; --hover:#2E3940;
  --ink:#ECECE5; --muted:#B5BEBD; --rule:#3B454A; --control:#87969C;
  --chrome:#122A33; --chrome-hover:#1C3B46; --chrome-active:#09212B; --chrome-ink:#EAF0EF;
  --primary:#E7ECEB; --primary-hover:#CDDAD6; --primary-active:#B9CCC5; --primary-ink:#19303A;
  --focus:#ECECE5; --focus-chrome:#EAF0EF;
  --minio:#F08A7E; --minio-soft:#3A2422;
  --selected:#44370F; --selected-ink:#FFE6A3; --selected-row:#302C1D;
  --link:#ECECE5;
  --ed:#9DBDF0; --ed-bg:#1F2C42; --ver:#8FD3AA; --ver-bg:#1B3226;
  --ric:#E8C770; --ric-bg:#2F2A22; --pending:#B9C0CC; --pending-bg:#2A2F3A;
  --mecc:#F08A7E; --lingua:#CDA2EC; --sign:#F0A3D2; --cong:#F5A35C; --disp:#ECECE5;
  --esp:#6FD0DC; --grafia:#C9B8A8; --nota:#C5D48A;
  --shadow-card:none; --shadow-dialog:0 16px 48px rgba(0,0,0,.35); --card-border:var(--control);
}
/* Preferenze di Lettura (LET-22): interfaccia 19 px scala l'intera interfaccia in rem */
:root[data-ui="19"]{font-size:17.882px}
:root[data-lat="26"]{--lat:1.625rem}
:root[data-lat="30"]{--lat:1.875rem}

/* ---------- 3. Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:1.0625rem;line-height:1.65;overflow-wrap:break-word}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,p,ul,ol,dl,figure{margin:0}
ul[role="list"],ol[role="list"]{list-style:none;padding:0}
[hidden]{display:none!important}
img,svg{max-width:100%}
a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{text-decoration:underline}
:focus{outline:none}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
::selection{background:var(--selected);color:var(--selected-ink)}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;margin:-1px;padding:0;border:0}
[lang="la"]{letter-spacing:normal;hyphens:manual}
.num{font-variant-numeric:tabular-nums}
.muted{color:var(--muted)}
.meta{font-size:.875rem;line-height:1.5;color:var(--muted)}
.tec{font-family:var(--font-tec);font-size:.875rem;line-height:1.6}
.pagina{width:100%;max-width:calc(1376px + 2*var(--margine));margin:0 auto;padding:0 var(--margine) var(--space-9)}
.sez-t{font-size:.8125rem;line-height:1.5;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 var(--space-2)}
.sez-t.lunga{text-transform:none;letter-spacing:0}

/* Icone Lucide come maschera: il colore segue currentColor (sezione 10) */
.i{display:inline-block;flex:none;width:20px;height:20px;background-color:currentColor;
  -webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat;vertical-align:middle}
.i-16{width:16px;height:16px}
.i-32{width:32px;height:32px}
.i.gira{animation:gira 900ms linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}

/* Skip link (6.19) */
.skip{position:absolute;left:-10000px;top:8px;z-index:100;background:var(--paper);color:var(--link);border:1px solid var(--control);
  border-radius:var(--radius-sm);padding:12px;min-height:48px;display:inline-flex;align-items:center;max-width:calc(100vw - 2*var(--margine))}
.skip:focus{left:var(--margine)}
.skip:active{background:var(--selected);color:var(--selected-ink)}
/* un solo skip link è visibile per volta (quello con il focus): stessa posizione, top 8 px e left pari al margine (6.19) */

/* ---------- 4. Testata (7.1, 11.1, 6.15, 6.16) ---------- */
.testata{position:static;background:var(--chrome);color:var(--chrome-ink);min-height:76px;padding:16px var(--margine);
  display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}
.testata :focus-visible{outline-color:var(--focus-chrome)}
.marca{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:4px 10px 4px 6px;margin-left:-6px;border-radius:var(--radius-sm);
  background:var(--chrome);color:var(--chrome-ink);text-decoration:none}
.marca:hover{background:var(--chrome-hover)}
.marca:active{background:var(--chrome-active)}
.marca picture{display:block;line-height:0}
.marca-logo{height:36px;width:auto;display:block}
@media (min-width:1024px){.marca{padding-block:0}.marca-logo{height:44px}}
.testata-schermata{font-size:1rem;line-height:1.5;color:var(--chrome-ink);padding-left:var(--space-4);border-left:1px solid var(--focus-chrome)}
.testata-comandi{margin-left:auto;display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}
.cmd-testata{min-height:44px;padding:9px 12px;border:1px solid var(--focus-chrome);border-radius:var(--radius-sm);background:var(--chrome);
  color:var(--chrome-ink);display:inline-flex;align-items:center;gap:8px;font-size:1rem;line-height:1.5;text-decoration:none;cursor:pointer}
a.cmd-testata{text-decoration:none}
.cmd-testata:hover{background:var(--chrome-hover)}
.cmd-testata:active,.cmd-testata[aria-expanded="true"],.cmd-testata[aria-current="page"]{background:var(--chrome-active)}
.cmd-testata[aria-current="page"]{text-decoration:underline;text-underline-offset:3px}
.tema-testata{width:160px;height:44px;padding:8px 12px;background:var(--chrome);color:var(--chrome-ink);border:1px solid var(--focus-chrome);border-radius:var(--radius-sm)}
.tema-testata:hover{background:var(--chrome-hover)}
.tema-testata:active{background:var(--chrome-active)}
.tema-testata option{background:var(--paper);color:var(--ink)}
.btn-opzioni{display:none;min-width:88px;white-space:nowrap}
.opzioni-wrap{position:relative;margin-left:auto;display:none}
/* Revisione 6.2: Come si legge discreto sottolineato; Lettura secondario; Collaudo nel menu Strumenti */
.cmd-testata.cmd-discreto{border-color:transparent;text-decoration:underline;text-underline-offset:3px;padding-inline:8px}
.strumenti-wrap{position:relative}
.btn-strumenti{white-space:nowrap}
.btn-strumenti[aria-expanded="true"] .i{transform:rotate(180deg)}
.pop-strumenti{width:220px}
.pop-opzioni{position:absolute;right:0;top:calc(100% + 8px);width:326px;max-width:calc(100vw - 32px);background:var(--paper);color:var(--ink);
  border:1px solid var(--control);border-radius:var(--radius-md);padding:8px;z-index:50;box-shadow:var(--shadow-dialog);display:flex;flex-direction:column;gap:4px}
.pop-opzioni :focus-visible{outline-color:var(--focus)}
.pop-riga{min-height:44px;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-sm);color:var(--link);background:var(--paper);
  border:0;text-align:left;width:100%;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:1rem}
.pop-riga:hover{background:var(--hover)}
.pop-riga:active{background:var(--selected);color:var(--selected-ink)}
.pop-opzioni .campo{padding:4px 0}
.pop-account{border-top:1px solid var(--rule);margin-top:4px;padding-top:4px;display:flex;flex-direction:column;gap:4px}
.pop-nome{margin:4px 12px 0;font-size:.8125rem;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
/* pagine Accedi e Privacy */
.pagina-stretta{max-width:calc(560px + 2*var(--margine))}
.accedi-box{padding:24px;margin-top:24px;display:flex;flex-direction:column;gap:20px}
.accedi-box form{display:flex;flex-direction:column;gap:20px}
.consenso{display:flex;gap:12px;align-items:flex-start;font-size:1rem;line-height:1.5;cursor:pointer}
.consenso input{width:22px;height:22px;margin:2px 0 0;flex:none;accent-color:var(--primary)}
.esito{padding:16px;border-radius:var(--radius-sm);border:1px solid var(--control);background:var(--subtle);font-size:1rem;line-height:1.5;margin:0}
.esito-ok{border-color:var(--primary)}
/* trappola per i programmi automatici: fuori schermo, non display:none */
.vaso{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.privacy h2{font-size:1.125rem;margin:24px 0 8px}
.privacy p,.privacy li{font-size:1rem;line-height:1.6}
.msg-pref{font-size:.875rem;line-height:1.5;color:var(--muted)}
.testata .msg-pref{color:var(--chrome-ink)}

/* ---------- 5. Componenti (sezione 6) ---------- */
/* 6.8 Pulsanti */
.btn{min-height:48px;padding:10px 16px;border:1px solid var(--control);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);
  display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:1rem;line-height:1.5;cursor:pointer;text-decoration:none;text-align:center}
.btn:hover{background:var(--hover)}
.btn:active,.btn[aria-pressed="true"]{background:var(--selected);color:var(--selected-ink)}
.btn-primario{background:var(--primary);color:var(--primary-ink);border-color:var(--primary);font-weight:700}
.btn-primario:hover{background:var(--primary-hover);border-color:var(--primary-hover)}
.btn-primario:active{background:var(--primary-active);border-color:var(--primary-active);color:var(--primary-ink)}
.btn-discreto{background:transparent;border-color:transparent;color:var(--link);text-decoration:underline;text-underline-offset:3px;padding-inline:8px}
.btn-discreto:hover{background:var(--hover)}
.btn:disabled,.btn[aria-disabled="true"]{background:var(--subtle);color:var(--muted);border-color:var(--control);cursor:not-allowed}
.btn[aria-busy="true"]{cursor:progress}
.btn-icona{width:44px;height:44px;min-height:44px;padding:0;border:1px solid var(--control);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.btn-icona:hover{background:var(--hover)}
.btn-icona:active{background:var(--selected);color:var(--selected-ink)}
.btn-icona:disabled{background:var(--subtle);color:var(--muted);cursor:not-allowed}
.azioni{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.link-azione{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;color:var(--link);font-size:1rem;border-radius:var(--radius-sm);
  background:transparent;border:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.link-azione:hover{background:var(--hover)}
/* 6.18 Vai al commento: area utile alta almeno 44 px */
.link-vai{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;border-radius:var(--radius-sm);vertical-align:middle}
.link-vai:hover{background:var(--hover)}
.link-vai:active{background:var(--selected);color:var(--selected-ink)}
.link-azione:active{background:var(--selected);color:var(--selected-ink)}

/* 6.9 Campi */
.campo{display:flex;flex-direction:column;gap:8px}
.campo>label,.campo>.etichetta{font-size:.875rem;line-height:1.5;color:var(--ink);font-weight:700}
.input,.select,.textarea{min-height:48px;padding:12px;font-size:1rem;line-height:1.5;background:var(--paper);color:var(--ink);border:1px solid var(--control);border-radius:var(--radius-sm);width:100%}
.select{padding-block:8px}
.input:hover,.textarea:hover,.select:hover{background:var(--hover)}
.input::placeholder{color:var(--muted);opacity:1}
.input:disabled,.select:disabled,.textarea:disabled{background:var(--subtle);color:var(--muted);cursor:not-allowed}
.input[aria-invalid="true"],.textarea[aria-invalid="true"]{border-style:dashed}
.hint{font-size:.875rem;line-height:1.5;color:var(--muted)}
.errore-campo{display:flex;gap:8px;align-items:flex-start;font-size:.875rem;line-height:1.5;color:var(--ink)}

/* 6.5 Etichette di attendibilità */
.lab{display:inline-block;font-size:.8125rem;line-height:1.45;font-weight:700;padding:3px 8px;border-radius:var(--radius-label);border:1px solid var(--control);letter-spacing:0;max-width:100%}
.lab-ed{color:var(--ed);background:var(--ed-bg)}
.lab-ver{color:var(--ver);background:var(--ver-bg)}
.lab-ric{color:var(--ric);background:var(--ric-bg)}
.lab-sosp{color:var(--pending);background:var(--pending-bg)}
.lab-neutra{color:var(--muted);background:var(--paper);border-style:dashed}

/* Tipi di voce (6.21): pallino e nome */
.tipo{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;line-height:1.5;font-weight:700;color:var(--tc,var(--ink))}
.pallino{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--tc,var(--ink));flex:none}
.pallino.nc{background:transparent;border:1.5px solid var(--control)}
.tipo .pallino{width:9px;height:9px}
.t-mecc{--tc:var(--mecc)} .t-lingua{--tc:var(--lingua)} .t-sign{--tc:var(--sign)} .t-cong{--tc:var(--cong)}
.t-disp{--tc:var(--disp)} .t-esp{--tc:var(--esp)} .t-grafia{--tc:var(--grafia)} .t-nota{--tc:var(--nota)} .t-nc{--tc:var(--ink)}

/* 6.20 Avviso inline e 6.11 errore operativo */
.avviso{background:var(--subtle);color:var(--ink);border:1px solid var(--control);border-left-width:2px;border-radius:var(--radius-sm);padding:16px;display:flex;flex-direction:column;gap:8px}
.avviso-t{display:flex;align-items:center;gap:8px;font-weight:700;font-size:1.0625rem;line-height:1.5}
.avviso p{font-size:1.0625rem;line-height:1.65}
.avviso .rif{font-size:.875rem;line-height:1.5;color:var(--muted)}
.errore-op{background:var(--subtle);color:var(--ink);border:1px dashed var(--control);border-radius:var(--radius-sm);padding:16px;display:flex;flex-direction:column;gap:8px}
.errore-op .avviso-t{font-weight:700}
.stato-riga{display:flex;align-items:center;gap:8px;font-size:1rem;line-height:1.5}

/* 6.6 Prova espandibile */
details.prova{background:var(--paper);border-left:2px solid var(--control);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
details.prova.ver{border-left-color:var(--ver)}
details.prova>summary{min-height:44px;display:flex;align-items:center;gap:8px;padding:8px 14px;cursor:pointer;list-style:none;color:var(--link);
  text-decoration:underline;text-underline-offset:3px;font-size:1rem;line-height:1.5;border-radius:0 var(--radius-sm) var(--radius-sm) 0}
details.prova>summary::-webkit-details-marker{display:none}
details.prova>summary:hover{background:var(--hover)}
details.prova>summary:active{background:var(--hover)}
details.prova>summary .i{transition:none}
details.prova[open]>summary .i{transform:rotate(180deg)}
.prova-corpo{padding:0 14px 14px;display:flex;flex-direction:column;gap:8px}
.cit{font-family:var(--font-latino);font-size:1.25rem;line-height:1.6;color:var(--ink);quotes:none;margin:0}
.cit-ui{font-size:1.0625rem;line-height:1.65}
.rif{font-size:.875rem;line-height:1.5;color:var(--muted)}

/* 6.12 Esiti probatori */
.esito{border-radius:var(--radius-sm);padding:16px;display:flex;flex-direction:column;gap:12px;color:var(--ink)}
.esito-nontrovata{background:var(--paper);border:1px dashed var(--control)}
.esito-nonriuscita{background:var(--subtle);border:1px solid var(--control)}
.esito-t{display:flex;align-items:center;gap:8px;font-weight:700;font-size:1.0625rem;line-height:1.5}
.esito .blocco-cit{background:var(--subtle);padding:14px;border-radius:var(--radius-sm)}
.esito-nonriuscita .blocco-cit{background:var(--paper)}
.blocco-cit .sez-t{margin-bottom:4px}
.riscontro{font-size:.875rem;line-height:1.5;color:var(--muted)}
.punto-rimosso{background:var(--paper)!important;border:1px solid var(--control);border-radius:var(--radius-sm);padding:16px;display:flex;flex-direction:column;gap:0}
.rimossa-riga{display:flex;align-items:center;gap:8px;font-size:.875rem;line-height:1.5;color:var(--muted)}
.rimossa-riga .i{color:var(--ink)}
.punto-rimosso .punto-titolo{margin-top:12px}
.punto-rimosso .punto-testo{margin-top:8px}
.punto-rimosso .esito{margin-top:16px}
details.storico{margin-top:12px;font-size:.875rem;line-height:1.5;color:var(--muted)}
details.storico summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:var(--link);text-decoration:underline;text-underline-offset:3px}

/* 6.7 Scheda */
.scheda{background:var(--paper);border:1px solid var(--control);border-radius:var(--radius-md);padding:20px;display:flex;flex-direction:column;gap:8px;min-height:180px}
.scheda-t{font-size:1.25rem;line-height:1.4;font-weight:700}
.scheda-segno{font-family:var(--font-latino);font-size:1.75rem;line-height:1.2;color:var(--minio)}
.scheda .rif{margin-top:4px}
.scheda .btn{align-self:flex-start;margin-top:8px}

/* 6.25 Dialogo */
dialog.dlg{width:560px;max-width:calc(100vw - 2*var(--margine));max-height:calc(100vh - 64px);padding:0;border:1px solid var(--control);border-radius:var(--radius-lg);
  background:var(--paper);color:var(--ink);box-shadow:var(--shadow-dialog);overflow:hidden}
dialog.dlg[open]{display:flex;flex-direction:column}
@media (max-height:480px){ dialog.dlg{overflow-y:auto} dialog.dlg .dlg-corpo{overflow:visible;flex:none} }
dialog.dlg::backdrop{background:rgba(0,0,0,.5)}
.dlg-testa{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:24px 24px 12px}
.dlg-testa h2{font-size:1.25rem;line-height:1.4;font-weight:700}
.dlg-corpo{padding:4px 24px 12px;overflow-y:auto;min-height:0;display:flex;flex-direction:column;gap:16px}
.dlg-corpo:focus-visible{outline-offset:-3px}
.dlg-piede{padding:12px 24px 24px;display:flex;flex-wrap:wrap;gap:12px}
fieldset.scelte{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
fieldset.scelte legend{font-size:.875rem;font-weight:700;line-height:1.5;margin-bottom:8px;padding:0}
.scelte-riga{display:flex;flex-wrap:wrap;gap:12px}
.radio{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px;border:1px solid var(--control);border-radius:var(--radius-sm);background:var(--paper);cursor:pointer;font-size:1.0625rem;line-height:1.5}
.radio:hover{background:var(--hover)}
.radio input{width:20px;height:20px;margin:0;accent-color:var(--primary)}
.radio:has(input:checked){background:var(--selected);color:var(--selected-ink);border:2px solid var(--selected-ink);padding:11px}
.radio:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}
.radio input:focus-visible{outline:none}

/* 6.10 Barra di avanzamento */
.barra{width:100%;height:8px;appearance:none;-webkit-appearance:none;border:0;border-radius:var(--radius-progress);background:var(--subtle);overflow:hidden}
.barra::-webkit-progress-bar{background:var(--subtle);border-radius:var(--radius-progress)}
.barra::-webkit-progress-value{background:var(--primary);border-radius:var(--radius-progress)}
.barra::-moz-progress-bar{background:var(--primary)}

/* Superfici */
.superficie{background:var(--paper);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}

/* ---------- 6. Biblioteca (7.2, 6.28, 6.29) e Carica (7.3) ---------- */
.titolo-pagina{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:var(--space-title-top)}
.titolo-pagina h1{font-family:var(--font-latino);font-weight:500;font-size:2.375rem;line-height:1.15}
.sottotitolo{font-size:1.0625rem;color:var(--muted);margin-top:4px}
.conteggio{font-size:.875rem;line-height:1.5;color:var(--muted);margin-top:8px}
/* Revisione 7.2: titolo e azione principale sulla stessa riga, centrati; sotto, sottotitolo e numero */
.testa-bib{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t a" "s s" "c c";align-items:center;column-gap:24px;margin-top:var(--space-title-top)}
.testa-bib h1{grid-area:t;font-family:var(--font-latino);font-weight:500;font-size:2.375rem;line-height:1.15}
.testa-bib .azione-bib{grid-area:a}
.testa-bib .sottotitolo{grid-area:s;margin-top:4px}
.testa-bib .conteggio{grid-area:c;margin-top:4px}
.nota-demo{margin-top:20px;max-width:880px;padding:12px 16px}
.nota-demo p{font-size:1rem;line-height:1.5}
.ricerca{width:400px;max-width:100%;margin:24px 0}
.ricerca .input{min-height:48px}
.ricerca .hint{font-size:.8125rem;line-height:1.125rem}
.ricerca-box{position:relative}
.ricerca-box .i{position:absolute;left:14px;top:14px;color:var(--muted);pointer-events:none}
.ricerca-box .input{padding-left:44px}
.griglia-ed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.scheda-ed{position:relative;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);padding:24px;display:flex;flex-direction:column;box-shadow:var(--shadow-card)}
:root[data-theme="dark"] .scheda-ed{border-color:var(--control)}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .scheda-ed{border-color:var(--control)} }
/* Revisione 7.3: struttura della scheda */
.scheda-ed .autore{font-size:.875rem;line-height:1.25rem;color:var(--muted);padding-right:52px;min-height:20px}
.scheda-ed .opera{font-size:1.25rem;line-height:1.75rem;font-weight:700;margin-top:8px;padding-right:52px}
.scheda-ed .opera i{font-family:inherit}
.scheda-ed .curatore{font-size:.875rem;line-height:1.25rem;margin-top:12px}
.scheda-ed .anno{font-size:.875rem;line-height:1.25rem;margin-top:4px}
.scheda-ed .stato{display:flex;align-items:center;gap:8px;font-size:.875rem;line-height:1.25rem;margin-top:16px;font-weight:700}
.scheda-ed .copertura{font-size:.875rem;line-height:1.25rem;margin-top:4px;display:flex;flex-direction:column}
.scheda-ed .apertura{font-size:.875rem;line-height:1.25rem;color:var(--muted);margin-top:12px}
.scheda-ed .btn-primario{margin-top:16px;width:100%;min-height:48px}
.scheda-ed .menu-ed{position:absolute;top:16px;right:16px}
.menu-ed-pop{position:absolute;right:0;top:calc(100% + 8px);width:240px;background:var(--paper);border:1px solid var(--control);border-radius:var(--radius-md);padding:8px;z-index:20;box-shadow:var(--shadow-dialog);display:flex;flex-direction:column;gap:4px}
.menu-ed-pop .motivo{font-size:.875rem;line-height:1.5;color:var(--muted);padding:0 12px 8px}
.vuoto{width:640px;max-width:100%;min-height:320px;padding:48px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;
  background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md)}
.vuoto h2{font-size:1.25rem;line-height:1.4;font-weight:700}
.vuoto.piccolo{min-height:180px;padding:24px}
.segnaposto{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);padding:24px;height:242px;display:flex;flex-direction:column}
.segnaposto span{display:block;background:var(--subtle);border-radius:4px}
.info-import{width:880px;max-width:100%;display:flex;flex-direction:column;gap:20px;margin-top:8px}
.info-import h1{font-family:var(--font-latino);font-weight:500;font-size:2.375rem;line-height:1.15}
.info-import h2{font-size:1.0625rem;line-height:1.5;font-weight:700;margin-bottom:8px}
.info-import ul{margin:0;padding-left:1.25em;display:flex;flex-direction:column;gap:4px}
.info-import .superficie{padding:20px 24px}

/* ---------- 7. Lettore (7.6-7.13) ---------- */
/* Revisione 3.2: intestazione compatta. Il ritorno ha area utile di 44 px: i 12 px di area sopra e sotto il testo
   sono compensati dai margini, così il testo dista 20 px dalla testata e 8 px dal titolo. */
.lettore-testa{margin-top:8px;display:flex;flex-direction:column}
.ritorno{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 8px;margin:0 0 -4px -8px;border-radius:var(--radius-sm);color:var(--link);font-size:.875rem;line-height:1.25rem}
.ritorno .i{width:16px;height:16px}
.ritorno:hover{background:var(--hover)}
.titolo-opera h1{font-family:var(--font-latino);font-weight:400;font-style:italic;font-size:2.25rem;line-height:2.5rem}
.titolo-opera h1 .autore{font-style:normal}
.titolo-opera .sezione{font-size:.9375rem;line-height:1.375rem;color:var(--ink)}
.fonte-breve{font-size:.875rem;line-height:1.25rem;color:var(--muted);margin-top:4px}
.fonte-azioni{display:flex;flex-wrap:wrap;align-items:center;column-gap:16px}
/* area utile di 44 px: 8 px sopra il testo dentro la distanza dalla fonte, 12 px sotto dentro la distanza dalla navigazione */
.fonte-azioni .link-azione{font-size:.875rem;line-height:1.25rem;margin:-8px 0 -12px -8px}
.nota-commenti{font-size:.875rem;line-height:1.25rem;color:var(--muted)}
.rif-integrale{font-size:1rem;line-height:1.6;background:var(--subtle);border-radius:var(--radius-sm);padding:12px;user-select:text}
.macro{display:flex;flex-direction:column;gap:16px;margin-top:16px}

/* Striscia (6.3, 6.21, 7.12) */
/* Revisione 3.4: riga 1 Scena e Vai al verso (gap 12); riga 2 paginazione (distanza 8) e verso corrente */
.striscia{background:var(--paper);border:1px solid var(--card-border);border-radius:var(--radius-md);padding:12px;display:flex;flex-direction:column;gap:0;box-shadow:var(--shadow-card)}
.striscia-comandi{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}
.striscia-comandi .campo-scena{width:320px;max-width:100%}
.striscia-comandi .campo{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 12px}
.striscia-comandi .campo>label{white-space:nowrap}
.striscia-comandi .campo-scena .select{flex:1;min-width:0;width:auto}
.salto .campo .input{flex:1;min-width:0;width:auto}
.striscia .input{padding-block:11px}
.salto{display:flex;align-items:flex-end;gap:12px}
.salto .campo{width:260px}
.salto .btn{width:64px;padding-inline:0}
.riga-blocchi{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;margin-top:8px}
.blocchi{display:flex;align-items:center;gap:12px}
.blocchi .btn{min-height:44px;padding-block:9px}
.blocco-desc{font-size:.875rem;line-height:1.25rem;color:var(--ink);white-space:nowrap}
.striscia .errore-campo{margin-top:8px}
.striscia .celle{margin-top:8px}
.celle{display:grid;grid-template-columns:repeat(var(--colonne,21),minmax(44px,1fr));gap:4px}
.cella{min-width:44px;min-height:48px;padding:4px;border:0;border-bottom:2px solid transparent;border-radius:var(--radius-cell);background:var(--subtle);color:var(--ink);
  display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;cursor:pointer}
.cella:hover{background:var(--hover)}
.cella:active{background:var(--selected)}
.cella[aria-current="true"]{background:var(--selected);color:var(--selected-ink);border-bottom-color:var(--selected-ink)}
.cella .n{font-size:.8125rem;line-height:1.5;font-variant-numeric:tabular-nums}
/* pallini: a capo quando la cella è stretta (390 e 320 px), mai oltre il bordo; al massimo 8 per riga */
.cella .punti{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;max-width:calc(8*7px + 7*3px)}
.cella .punti>.pallino{width:7px;height:7px}
.cella .punti{width:100%}
.verso-corrente{font-size:.875rem;line-height:1.25rem;min-height:20px;display:flex;flex-wrap:wrap;align-items:center;column-gap:4px}
/* Revisione 4.2: nomi sempre visibili in griglia di 5 colonne; definizioni in un elemento espandibile chiuso */
.legenda-griglia{margin-top:12px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px 16px;align-items:center}
.legenda{list-style:none;margin:0;padding:0;display:contents}
.b-def{font-size:.875rem;line-height:1.25rem;gap:6px;justify-self:start;margin:-13px 0 -13px -8px}
.b-def[aria-expanded="true"] .i{transform:rotate(180deg)}
.def-box{margin-top:12px;padding-top:12px;border-top:1px solid var(--rule)}
.legenda li{display:flex;align-items:flex-start;min-width:0}
.legenda .tipo{font-size:.8125rem;line-height:1.125rem;align-items:flex-start;gap:6px}
.legenda .tipo .pallino,.def-tipi .tipo .pallino{width:8px;height:8px;margin-top:5px}
.def-tipi{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
.def-tipi div{min-width:0}
.def-tipi dt{margin:0}
.def-tipi dd{margin:2px 0 0 14px;font-size:.875rem;line-height:1.25rem;color:var(--muted)}
details.legenda-tel{display:none}

/* Banco (7.6) */
.banco{display:grid;grid-template-columns:minmax(0,952fr) minmax(0,400fr);gap:24px;align-items:start}
.lettore{background:var(--paper);border:1px solid var(--card-border);border-radius:var(--radius-md);min-width:0;box-shadow:var(--shadow-card)}
.testa-ab{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1fr);gap:0 18px;padding:16px 24px 11px;border-bottom:1px solid var(--rule);
  background:var(--paper);border-radius:var(--radius-md) var(--radius-md) 0 0;z-index:5;align-items:start}
.testa-ab.sticky{position:sticky;top:0}
.testa-col{display:flex;flex-direction:column;gap:0;min-width:0}
.testa-col .sez-t{margin:0;line-height:1.125rem}
.testa-col .nome{font-weight:700;font-size:1.0625rem;line-height:1.5}
.testa-col .det{font-size:.875rem;line-height:1.25rem;color:var(--muted)}
.testa-col .nome .det{font-weight:400}
.riga-ms{display:flex;align-items:center;gap:12px;margin-top:0;min-width:0}
.testa-ab .nota-col{grid-column:2 / 4;margin-top:0;line-height:1.25rem}
.riga-ms .det{min-width:0}
.sel-ms{display:flex;flex-wrap:wrap;gap:6px;flex:none}
.sel-ms button{min-width:44px;min-height:44px;padding:0 10px;border:1px solid var(--control);border-radius:var(--radius-witness);background:var(--paper);color:var(--ink);
  font-family:var(--font-latino);font-size:1.25rem;line-height:1.5;cursor:pointer}
.sel-ms button:hover{background:var(--hover)}
.sel-ms button:active{background:var(--primary-active);color:var(--primary-ink)}
.sel-ms button[aria-pressed="true"]{background:var(--primary);color:var(--primary-ink);border-color:var(--primary)}
.nota-col{font-size:.875rem;line-height:1.5;color:var(--muted)}
.scena{font-family:var(--font-latino);font-size:1rem;line-height:1.5rem;color:var(--muted);letter-spacing:.12em;text-align:center;padding:12px 24px 0;margin:0 0 12px}
.testa-ab+div .scena:first-child{padding-top:0}
.versi{list-style:none;margin:0;padding:0 0 12px}
.verso{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1fr);gap:0 18px;padding:10px 24px;align-items:baseline;min-height:53px;border-left:3px solid transparent;scroll-margin-top:24px}
.verso.cur{background:var(--selected-row);border-left-color:var(--selected-ink)}
.vn{font-size:.8125rem;line-height:1.5;color:var(--muted);font-variant-numeric:tabular-nums;text-align:right}
.verso.cur .vn{color:var(--ink)}
.vt{font-family:var(--font-latino);font-size:var(--lat);line-height:1.5;min-width:0}
.mk{display:none}
.loc{border:0;background:transparent;padding:0 2px;margin:0 -2px;font:inherit;color:var(--ink);cursor:pointer;border-radius:var(--radius-xs);
  text-decoration:underline;text-decoration-color:var(--control);text-decoration-thickness:1px;text-underline-offset:5px;text-decoration-skip-ink:none}
.loc:hover{background:var(--hover)}
.loc.diff{text-decoration-color:var(--minio)}
.vt.b .loc.diff{color:var(--minio);background:var(--minio-soft)}
.vt.b .loc.diff:hover{background:var(--hover)}
.loc:active{background:var(--selected);color:var(--selected-ink)}
.loc[aria-pressed="true"],.vt.b .loc.diff[aria-pressed="true"]{background:var(--selected);color:var(--selected-ink);text-decoration-color:var(--selected-ink);text-decoration-thickness:2px}
.segno{border:0;background:transparent;font:inherit;color:var(--minio);cursor:pointer;padding:0 2px;border-radius:var(--radius-xs);text-decoration:underline dotted;text-decoration-thickness:1px;text-underline-offset:5px}
.segno:hover{background:var(--hover)}
.segno[aria-expanded="true"]{background:var(--selected);color:var(--minio)}
.nd{font-family:var(--font-ui);font-size:.875rem;line-height:1.5;color:var(--muted);background:var(--paper);border-bottom:1px dotted var(--control)}
.vuoto-copista{display:inline-block;font-family:var(--font-ui);font-size:.875rem;line-height:1.5;font-weight:400;color:var(--muted);background:var(--paper);border:1px dashed var(--control);
  border-radius:var(--radius-xs);padding:2px 4px;min-height:27px;max-width:100%;vertical-align:baseline}
.ospite-inline{list-style:none;padding:8px 36px 16px;background:var(--selected-row)}
.ospite-guida{padding:16px 36px}
.commento-host{position:sticky;top:16px;min-width:0}
.commento-host:empty{display:none}
.commento{background:var(--paper);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);max-height:calc(100vh - 32px);overflow-y:auto;min-width:0}
.ospite-inline .commento{border-top:3px solid var(--selected-ink);max-height:none}
.ospite-inline .c-testa,.ospite-inline .c-lemma,.ospite-inline .scheda{scroll-margin-top:var(--sm-ab,24px)}
/* Revisione 5.2: geometria e tipografia del commento */
.commento-in{padding:20px;display:flex;flex-direction:column;gap:0}
.commento-in>*{min-width:0}
.commento-in>*+*{margin-top:20px}
.commento-in>.blocco{margin-top:16px}
.c-testa{display:flex;flex-direction:column}
.c-dove{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.8125rem;line-height:1.125rem;color:var(--muted);margin-bottom:8px}
.nav-voci{display:flex;gap:6px;flex:none}
.c-lemma{font-family:var(--font-latino);font-weight:600;font-size:1.875rem;line-height:2.125rem;overflow-wrap:anywhere}
.c-lemma.ui{font-family:var(--font-latino)}
.c-testa>.tipo{margin-top:4px;line-height:1.125rem}
.class-proposta{font-size:.875rem;line-height:1.5;color:var(--muted);margin-top:4px}
.blocco{background:var(--subtle);border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;gap:8px}
.blocco .sez-t{margin:0}
.testo-commento{max-width:40ch;width:100%}
.commento .testo-commento,.commento .punto-testo{font-size:1.0625rem;line-height:1.625rem}
.c-sez>.sez-t{font-size:.875rem;line-height:1.25rem;margin:0 0 8px}
.lezioni{border-collapse:collapse;width:100%}
.lezioni th{font-weight:400;font-size:.875rem;color:var(--muted);text-align:left;padding:8px;vertical-align:baseline;min-width:80px;width:1%;white-space:nowrap}
.lezioni td{font-family:var(--font-latino);font-size:1.25rem;line-height:1.5;padding:8px;vertical-align:baseline;overflow-wrap:anywhere}
.lezioni tr+tr{border-top:1px solid var(--rule)}
.lezioni tr.ed td{font-weight:600}
.lezioni tr.scelto{background:var(--selected-row)}
.lezioni td.diff{color:var(--minio)}
.lezioni td.att,.lezioni td.nd-t{font-family:var(--font-ui);font-size:.875rem;color:var(--muted)}
.apparato{font-family:var(--font-latino);font-size:1.25rem;line-height:1.75rem;background:var(--subtle);border-radius:var(--radius-sm);padding:12px;overflow-wrap:anywhere}
.c-sez .apparato+.rif{margin-top:4px}
.sigla{border:0;background:transparent;padding:0 1px;font:inherit;font-style:italic;color:var(--link);cursor:pointer;text-decoration:underline dotted;text-decoration-thickness:1px;text-underline-offset:3px;border-radius:2px}
.sigla:hover{background:var(--hover)}
.sigla:active,.sigla[aria-expanded="true"]{background:var(--selected);color:var(--selected-ink)}
.c-sez{display:flex;flex-direction:column;gap:0}
.c-sez>*+*:not(.sez-t){margin-top:12px}
.c-sez>.sez-t+*{margin-top:0}
.punti-arg{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.punto{background:var(--subtle);border-radius:var(--radius-sm);padding:16px;display:flex;flex-direction:column;gap:8px}
.commento details.prova>summary{padding:8px 12px}
.commento .prova-corpo{padding:0 12px 12px}
.cit{user-select:text}
.punto-titolo{font-weight:700;font-size:1.0625rem;line-height:1.5}
.punto-testo{font-size:1.0625rem;line-height:1.65}
.studiosi{display:flex;flex-wrap:wrap;gap:8px}
.studiosi button{min-height:44px;padding:10px 12px;border:1px solid var(--control);border-radius:var(--radius-sm);background:var(--paper);color:var(--link);font-size:.875rem;line-height:1.5;
  text-decoration:underline;text-underline-offset:3px;cursor:pointer;max-width:100%}
.studiosi button:hover{background:var(--hover)}
.studiosi button:active,.studiosi button[aria-expanded="true"]{background:var(--selected);color:var(--selected-ink)}
.chiave-etichette{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;align-items:start;margin:0}
.chiave-etichette dt{margin:0}
.chiave-etichette dd{margin:0;font-size:1rem;line-height:1.5}
.gen{background:var(--subtle);border-radius:var(--radius-sm);padding:16px;display:flex;flex-direction:column;gap:8px;min-height:200px}
.costo{font-size:.875rem;line-height:1.5;color:var(--muted)}
.gen .btn-primario{align-self:flex-start}
.attesa{display:flex;align-items:center;gap:8px;font-weight:700}
.versione-prec{font-size:.875rem;color:var(--muted)}
.versione-prec summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:var(--link);text-decoration:underline;text-underline-offset:3px}

/* ---------- 8. Collaudo (7.10, 7.11) ---------- */
.area-tecnica{display:inline-flex;align-items:center;gap:8px;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.config{padding:24px;display:flex;flex-direction:column;gap:16px}
.config-righe{display:grid;grid-template-columns:260px 260px 300px 180px;gap:24px;align-items:end}
.config-righe .campo-codice{grid-column:1 / span 2}
.config .btn{width:100%}
.fonte-comune{padding:24px;min-height:180px;display:flex;flex-direction:column;gap:8px}
.fonte-comune p{max-width:85ch}
.metriche{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.metriche div{background:var(--subtle);border-radius:var(--radius-sm);padding:8px 12px}
.metriche dt{font-size:.875rem;line-height:1.5;color:var(--muted)}
.metriche dd{margin:0;font-size:1.0625rem;font-weight:700;font-variant-numeric:tabular-nums}
.risultati{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:24px}
.voce-col{padding:24px;display:flex;flex-direction:column;gap:16px}
.voce-col h2{font-family:var(--font-latino);font-weight:600;font-size:1.75rem;line-height:1.2}
.confronto{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.risposta{border:1px solid var(--rule);border-radius:var(--radius-md);padding:24px;display:flex;flex-direction:column;gap:12px;min-width:0}
.risposta h3{font-size:1.0625rem;font-weight:700}
.risposta .pts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.risposta .pts li{background:var(--subtle);border-radius:var(--radius-sm);padding:16px;display:flex;flex-direction:column;gap:8px}
.chk{display:flex;gap:8px;align-items:flex-start;font-size:.875rem;line-height:1.5}
.chk.ok{color:var(--ink)} .chk.nv{color:var(--muted)}
.chk.ko{font-weight:700;color:var(--ink);background:var(--paper);border:1px dashed var(--control);border-radius:var(--radius-sm);padding:12px}
.diagnostica{font-family:var(--font-tec);font-size:.875rem;line-height:1.375rem;white-space:pre-wrap;overflow-x:auto;background:var(--subtle);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:20px;width:100%;min-height:160px;color:var(--ink);resize:vertical}

/* ---------- Breakpoint ---------- */
@media (max-width:1079px){
  :root{--margine:24px}
  .titolo-pagina h1,.testa-bib h1{font-size:2.125rem}
  .titolo-opera h1{font-size:2rem;line-height:2.375rem}
  .c-lemma{font-size:1.75rem}
  .striscia-comandi{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
  .striscia-comandi .campo-scena{width:auto}
  .salto .campo{flex:1;width:auto}
  .griglia-ed{grid-template-columns:repeat(2,minmax(0,1fr))}
  .banco{grid-template-columns:minmax(0,1fr)}
  .commento{max-height:none;overflow-y:visible}
  .commento-host{position:static}
  .testo-commento{max-width:60ch}
  .config-righe{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .config-righe .campo-voce{grid-column:1}
  .confronto{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:879px){
  .testata-schermata{display:none}
}
@media (max-width:719px){
  :root{--margine:16px}
  .testata{min-height:64px;padding:10px 16px}
  .titolo-pagina{flex-direction:column;align-items:stretch;gap:16px;margin-top:20px}
  .titolo-pagina .btn{width:100%}
  .titolo-pagina h1,.testa-bib h1{font-size:2rem}
  .testa-bib{grid-template-columns:minmax(0,1fr);grid-template-areas:"t" "s" "c" "a";row-gap:12px;margin-top:20px}
  .testa-bib .sottotitolo,.testa-bib .conteggio{margin-top:0}
  .testa-bib .azione-bib{width:100%}
  .nota-demo{margin-top:16px}
  .titolo-opera h1{font-size:1.75rem;line-height:2.125rem}
  .lettore-testa{margin-top:4px}
  .macro{gap:16px}
  .ricerca{width:100%}
  .griglia-ed{grid-template-columns:minmax(0,1fr);gap:24px}
  .scheda-ed{padding:20px;min-height:208px}
  .scheda-ed .menu-ed{top:20px;right:20px}
  .menu-ed-pop{width:302px;max-width:calc(100vw - 56px)}
  .vuoto{padding:20px;min-height:280px}
  .azioni{flex-direction:column;align-items:stretch}
  .azioni .btn{width:100%}
  .striscia{padding:12px}
  .striscia-comandi{display:flex;flex-direction:column;align-items:stretch;gap:12px}
  .striscia-comandi .campo-scena{width:100%}
  .salto .campo{flex:1;width:auto}
  .riga-blocchi{flex-direction:column;align-items:stretch}
  .blocchi{width:100%}
  .blocchi{flex-wrap:wrap}
  .blocchi .btn{flex:1 1 auto;padding-inline:8px}
  .legenda-desk{display:none}
  details.legenda-tel{display:block;margin-top:8px}
  details.legenda-tel>summary{min-height:44px;display:flex;align-items:center;gap:8px;padding:0 8px;cursor:pointer;list-style:none;color:var(--link);text-decoration:underline;text-underline-offset:3px;border-radius:var(--radius-sm)}
  details.legenda-tel>summary::-webkit-details-marker{display:none}
  details.legenda-tel>summary:hover{background:var(--hover)}
  details.legenda-tel>summary:active{background:var(--selected);color:var(--selected-ink)}
  details.legenda-tel[open]>summary .i{transform:rotate(180deg)}
  details.legenda-tel .def-tipi{grid-template-columns:minmax(0,1fr);gap:12px;background:var(--paper);padding:12px}
  details.legenda-tel .def-tipi dd{font-size:.9375rem;line-height:1.375rem}
  details.legenda-tel .def-tipi .tipo{font-size:.9375rem;line-height:1.375rem}
  details.legenda-tel .def-tipi .tipo .pallino{margin-top:7px}
  .testa-ab{grid-template-columns:minmax(0,1fr);padding:12px 16px 11px;gap:12px}
  .testa-ab .nota-col{grid-column:auto;margin-top:-4px}
  .striscia-comandi .campo{flex-direction:column;align-items:stretch;gap:4px}
  .striscia-comandi .campo-scena .select{flex:none;width:100%}
  .salto .campo .input{flex:none;width:100%}
  .testa-ab .h-n{display:none}
  .testa-ab.sticky{position:static}
  .verso{grid-template-columns:20px minmax(0,1fr);gap:8px 10px;padding:12px 12px 12px 9px;min-height:98px}
  .verso .vt.a,.verso .vt.b{grid-column:2}
  .verso .vn{grid-row:1}
  .mk{display:block;position:absolute;left:0;top:calc((var(--lat)*1.5 - 1.21875rem)/2 + 1px);font-family:var(--font-ui);font-size:.8125rem;line-height:1.5;font-weight:700;color:var(--muted)}
  .vt{position:relative;padding-left:18px}
  .vuoto-copista{max-width:286px}
  .ospite-inline{padding:8px 8px 16px}
  .ospite-guida{padding:16px 8px}
  .commento-in{padding:16px}
  .testo-commento{max-width:100%}
  dialog.dlg{max-height:calc(100vh - 32px)}
  .dlg-testa{padding:20px 20px 12px}.dlg-corpo{padding:4px 20px 12px}.dlg-piede{padding:12px 20px 20px;flex-direction:column}
  .dlg-piede .btn{width:100%}
  .config{padding:20px}
  .config-righe{grid-template-columns:minmax(0,1fr);gap:16px}
  .config-righe .campo-codice{grid-column:auto}
  .fonte-comune,.voce-col{padding:20px}
  .risposta{padding:20px}
  .metriche{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scelte-riga{flex-direction:column}
  .chiave-etichette{grid-template-columns:minmax(0,1fr);gap:4px}
  .chiave-etichette dd{margin-bottom:8px}
}
/* Lettura con latino 30 px e colonne strette: A e B in sequenza (7.6) */
.lettore.seq .testa-ab{grid-template-columns:minmax(0,1fr)}
.lettore.seq .testa-ab .h-n{display:none}
.lettore.seq .verso{grid-template-columns:28px minmax(0,1fr);gap:8px 18px}
.lettore.seq .verso .vt.a,.lettore.seq .verso .vt.b{grid-column:2}
.lettore.seq .verso .vn{grid-row:1}
.lettore.seq .mk{display:block;position:absolute;left:0;top:calc((var(--lat)*1.5 - 1.21875rem)/2 + 1px);font-family:var(--font-ui);font-size:.8125rem;line-height:1.5;font-weight:700;color:var(--muted)}
.lettore.seq .vt{position:relative;padding-left:18px}

/* ---------- 9. Movimento (sezione 9) ---------- */
@media (prefers-reduced-motion: no-preference){
  .btn,.btn-icona,.cella,.loc,.segno,.sigla,.cmd-testata,.marca,.pop-riga,.studiosi button,.sel-ms button,.link-azione,details>summary{transition:background-color 120ms ease-out,color 120ms ease-out}
  .verso{transition:background-color 120ms ease-out}
  .scheda.entra{animation:entra 140ms cubic-bezier(.2,0,0,1)}
  dialog.dlg[open]{animation:entra 140ms ease-out}
  @keyframes entra{from{opacity:0}to{opacity:1}}
}
/* Cambio tema atomico in 0 ms (6.16, 9): durante il cambio nessuna transizione di colore */
:root.senza-transizioni *,:root.senza-transizioni *::before,:root.senza-transizioni *::after{transition:none!important}
@media (prefers-reduced-motion: reduce){
  .i.gira{animation:none}
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
/* Revisione 3.4: etichette lunghe e corte della paginazione */
.lab-corto{display:none}
@media (max-width:719px){ .lab-lungo{display:none} .lab-corto{display:inline} }

/* ---------- 10. Risultati nel sito: analisi a regole, lettura dei manoscritti, foto, collazione ---------- */
/* Etichetta dei punti a regole: distinta dalle quattro etichette del commento, bordo control come le altre */
.lab-regola{color:var(--ink);background:var(--paper)}
.regole-frase{font-size:.875rem;line-height:1.25rem;color:var(--muted);margin-bottom:4px}
.c-sez.sez-regole>.regole-frase{margin-top:0}
.prova-dati{display:flex;flex-direction:column;margin:0;font-size:.875rem;line-height:1.25rem;min-width:0}
.prova-dati dt{color:var(--muted);margin:0;overflow-wrap:anywhere}
.prova-dati dd{margin:0 0 8px;overflow-wrap:anywhere}
.prova-regola .prova-corpo>*{min-width:0;overflow-wrap:anywhere}
.commento details.prova-regola{background:var(--paper)}
details.note-generali{background:var(--paper);border-radius:var(--radius-sm)}
details.note-generali>summary{min-height:44px;display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;list-style:none;color:var(--link);text-decoration:underline;text-underline-offset:3px}
details.note-generali>summary::-webkit-details-marker{display:none}
details.note-generali>summary:hover{background:var(--hover)}
details.note-generali[open]>summary .i{transform:rotate(180deg)}
details.note-generali>*:not(summary){margin:0 12px 12px}
.note-lista{display:flex;flex-direction:column;gap:12px}
.note-lista p:not(.meta){font-size:.9375rem;line-height:1.375rem}

/* Modo della colonna B: due comandi sulla riga della nota (area utile 44 px compensata dai margini, come «Dati dell'edizione») */
.testa-ab .nota-col{display:flex;flex-wrap:wrap;align-items:center;column-gap:8px;row-gap:12px}
.modo-lab{font-weight:700;color:var(--ink)}
.modo-b{display:inline-flex;flex-wrap:wrap;column-gap:4px;row-gap:24px}
.modo-btn{min-height:44px;margin:-12px 0;padding:0 8px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--link);font-size:.875rem;line-height:1.25rem;
  text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.modo-btn:hover{background:var(--hover)}
.modo-btn[aria-pressed="true"]{color:var(--ink);text-decoration:none;font-weight:700}
.modo-btn[aria-pressed="true"] .modo-t{background:var(--selected);color:var(--selected-ink);border-bottom:2px solid var(--selected-ink);padding:0 4px;border-radius:var(--radius-xs)}
.modo-btn[aria-pressed="true"]:hover{background:transparent}
.modo-nota .lab{padding:0 6px;line-height:1.125rem}
.ms-diff{color:var(--minio);background:var(--minio-soft);text-decoration:underline;text-decoration-color:var(--minio);text-decoration-thickness:1px;text-underline-offset:5px;border-radius:var(--radius-xs)}
.ms-diff.ms-grafica{color:var(--ink);background:transparent;text-decoration-style:dotted;text-decoration-color:var(--control)}
/* luogo da verificare sull'originale: segno distinto (riquadro tratteggiato in ink e icona), non solo colore */
.ms-verif{color:var(--ink);background:var(--paper);text-decoration:none;outline:1.5px dashed var(--ink);outline-offset:1px;padding:0 2px}
.ms-verif-i{margin-left:2px;vertical-align:baseline;position:relative;top:2px}
.ms-acapo{color:var(--muted);font-family:var(--font-ui);font-size:.875rem;padding:0 2px}
.btn-foto{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 8px;margin:-8px 0;vertical-align:middle;border:0;border-radius:var(--radius-sm);
  background:transparent;color:var(--link);font-family:var(--font-ui);font-size:.875rem;line-height:1.25rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;white-space:nowrap}
.btn-foto:hover{background:var(--hover)}
.btn-foto:active{background:var(--selected);color:var(--selected-ink)}
.modo-ms .verso{min-height:53px}
/* «Righe a confronto»: il rigo del verso in B, C, D, ritagliato, sotto il verso */
.righe-conf{grid-column:1/-1;margin:12px 0 4px;padding:12px;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:12px;min-width:0;font-family:var(--font-ui)}
.righe-conf-riga{display:grid;grid-template-columns:24px minmax(0,1fr);gap:0 10px;align-items:start;min-width:0}
.righe-conf-riga + .righe-conf-riga{border-top:1px solid var(--rule);padding-top:12px}
.righe-conf-s{font-family:var(--font-latino);font-weight:600;font-size:1.25rem;line-height:1.2;color:var(--minio)}
.righe-conf-imm{display:flex;flex-direction:column;gap:8px;min-width:0}
.righe-conf-fig{margin:0;min-width:0}
.righe-conf-fig img{display:block;width:100%;height:auto;border-radius:var(--radius-xs);background:var(--subtle)}
.righe-conf-fig figcaption{font-size:.8125rem;line-height:1.4;color:var(--muted);margin-top:4px}
.righe-conf-msg{margin:0;font-size:.875rem;line-height:1.4;color:var(--muted)}
.righe-conf-msg a{color:var(--link)}
.righe-conf-attesa{display:flex;align-items:center;gap:8px;min-height:24px}
.righe-conf-piede{margin:0;border-top:1px solid var(--rule);padding-top:12px}
.righe-conf-piede .btn-foto{margin:0 0 0 -8px;white-space:normal}

/* Vista «Foto della riga»: dialogo a schermo intero */
dialog.dlg.dlg-foto{width:100vw;height:100vh;max-width:100vw;max-height:100vh;border:0;border-radius:0;margin:0}
.dlg-foto .dlg-testa{border-bottom:1px solid var(--rule);padding:12px 24px;align-items:center}
.dlg-foto .foto-corpo{padding:16px 24px 24px;overflow-y:auto;flex:1}
.foto-griglia{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"area lato" "info lato";gap:16px 24px;align-items:start}
.foto-area{grid-area:area;display:flex;flex-direction:column;gap:8px;min-width:0}
.foto-lato{grid-area:lato;min-width:0;position:sticky;top:0;max-height:calc(100vh - 120px);overflow-y:auto;border-radius:var(--radius-sm)}
.foto-info{grid-area:info;display:flex;flex-direction:column;gap:12px;min-width:0}
.foto-barra{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}
.foto-campo-sorgente{flex:1 1 280px;max-width:520px}
.foto-zoom{display:flex;align-items:center;gap:6px}
.foto-zoom-val{min-width:64px;text-align:center;font-size:.875rem;font-variant-numeric:tabular-nums}
.foto-zoom .btn{min-height:44px}
.foto-viewport{position:relative;height:max(360px,calc(100vh - 300px));background:var(--subtle);border:1px solid var(--control);border-radius:var(--radius-sm);overflow:hidden;touch-action:none;cursor:grab}
.foto-viewport:active{cursor:grabbing}
.foto-viewport:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.foto-canvas{display:block}
.bav .foto-canvas{-webkit-user-drag:none;user-select:none}
.foto-testa-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.foto-sotto{font-size:.9375rem;line-height:1.375rem;color:var(--muted)}
/* sfoglio del codice: sotto l'immagine */
.foto-sfoglia{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 16px}
.foto-sf-passi{display:flex;gap:8px}
.foto-sf-btn:disabled{color:var(--muted);cursor:not-allowed}
.foto-sf-breve{display:none}
.foto-sf-altro{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 16px}
.foto-vai{display:flex;flex-direction:column;gap:4px}
.foto-vai label{font-size:.875rem;line-height:1.25rem;font-weight:700}
.foto-vai-riga{display:flex;gap:8px}
.foto-vai .foto-vai-campo{width:9rem}
.foto-vai-msg{flex:1 1 100%}
.foto-vai-msg:empty{display:none}
.foto-stato{font-size:.875rem;line-height:1.25rem;color:var(--muted);min-height:20px}
.foto-url{font-family:var(--font-tec);overflow-wrap:anywhere;user-select:text}
.foto-attr{font-size:.875rem;line-height:1.375rem}
.foto-attr-t{font-weight:700}
.foto-pannello{display:flex;flex-direction:column;gap:16px;background:var(--subtle);border-radius:var(--radius-sm);padding:16px}
.foto-pannello .sez-t{margin:0}
.foto-btn-pannello{display:none}
.foto-cursore{gap:4px}
.foto-cur-testa{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.foto-cur-testa label{font-size:.875rem;font-weight:700}
.foto-val{font-size:.875rem;font-variant-numeric:tabular-nums;color:var(--ink)}
.foto-pannello input[type=range],#foto-tendina{width:100%;min-height:44px;margin:0;accent-color:var(--primary);background:transparent}
.foto-pannello input[type=range]:disabled{opacity:1;filter:grayscale(1)}
.foto-check{display:flex;align-items:center;gap:12px;min-height:44px;font-size:1rem;line-height:1.5;cursor:pointer}
.foto-check input{width:20px;height:20px;margin:0;flex:none;accent-color:var(--primary)}
.foto-preset .radio{min-height:44px;padding:8px 12px}
.foto-preset .radio:has(input:checked){padding:7px 11px}
.foto-preset .radio:has(input:disabled){color:var(--muted);cursor:not-allowed}
.foto-pannello .azioni{flex-direction:column;align-items:stretch}
.foto-nota-pixel{font-size:.9375rem}
.foto-lab{align-self:flex-start}
.foto-riga-info{background:var(--subtle);border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;gap:4px}
.foto-riga-t{font-weight:700}
.foto-trascr{font-family:var(--font-latino);font-size:1.25rem;line-height:1.6}
.foto-migliorata{border-top:1px solid var(--rule);margin-top:8px;padding-top:8px;display:flex;flex-direction:column;gap:4px}
.foto-dubbi,.foto-controlli{margin:0;padding-left:1.25em;display:flex;flex-direction:column;gap:4px}
.foto-versioni{margin:4px 0 0;display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:4px 12px;font-size:.875rem}
.foto-versioni dt{font-weight:700}
.foto-versioni dd{margin:0}
.foto-info .sez-t{margin:8px 0 0}

/* Biblioteca: comando Collazione nella scheda */
.scheda-ed .btn-coll{margin-top:8px;width:100%;min-height:48px}

/* Pagina Collazione */
.coll-ritorni{display:flex;flex-wrap:wrap;gap:0 16px;margin-top:8px}
.coll-titolo{font-family:var(--font-latino);font-weight:500;font-size:2.375rem;line-height:1.15;margin-top:4px}
.coll-intro{margin-top:20px;padding:24px;display:flex;flex-direction:column;gap:12px;max-width:960px}
.coll-intro p{max-width:75ch}
.coll-h2{font-size:1.25rem;line-height:1.4;font-weight:700}
.coll-intro .coll-h2{font-size:1.0625rem}
.coll-passi{margin:0;padding-left:1.25em;display:flex;flex-direction:column;gap:4px;max-width:75ch}
.coll-sez{margin-top:32px;display:flex;flex-direction:column;gap:12px}
.coll-filtri{padding:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 24px;align-items:end}
.coll-filtri .btn{justify-self:start}
.coll-tab-wrap{max-width:100%}
.coll-tab{border-collapse:collapse;width:100%;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md)}
.coll-tab th,.coll-tab td{padding:8px;text-align:left;vertical-align:top;border-top:1px solid var(--rule);font-size:.875rem;line-height:1.25rem}
.coll-tab thead th{border-top:0;color:var(--muted);font-weight:700;background:var(--subtle)}
.coll-tab tbody th{font-weight:700;white-space:nowrap}
.coll-tab td.coll-lett,.coll-tab td.coll-ed{font-family:var(--font-latino);font-size:1.125rem;line-height:1.5rem;overflow-wrap:break-word;hyphens:none}
.coll-tab td.coll-ed{font-weight:600}
.coll-tab tr.tot{font-weight:700}
.coll-tab .num-forte{font-weight:700}
.coll-mini{margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.coll-foto-btns{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.coll-foto .btn-foto{margin:0}
.coll-acc td,.coll-acc th{font-variant-numeric:tabular-nums}
.coll-casi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.coll-caso{padding:16px;display:flex;flex-direction:column;gap:8px}
.coll-caso-t{font-weight:700}
.coll-caso .btn-foto{align-self:flex-start;margin:0}
.bozza{margin:0;padding:0;display:flex;flex-direction:column;gap:6px;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);padding:16px}
.bozza li{font-family:var(--font-latino);font-size:1.125rem;line-height:1.6}
.bozza-v{font-family:var(--font-ui);font-weight:700;font-size:.875rem;display:inline-block;min-width:3.5em}

@media (max-width:1079px){
  .foto-griglia{grid-template-columns:minmax(0,1fr) 300px}
  .coll-filtri{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1279px){
  /* tabella delle differenze: nove colonne leggibili solo da 1280 px; sotto diventa un elenco di schede */
  .coll-tab-diff .coll-tab,.coll-tab-diff .coll-tab tbody,.coll-tab-diff .coll-tab tr,.coll-tab-diff .coll-tab th,.coll-tab-diff .coll-tab td{display:block}
  .coll-tab-diff .coll-tab{border:0;background:transparent}
  .coll-tab-diff .coll-tab thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .coll-tab-diff .coll-tab tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .coll-tab-diff .coll-tab tr{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);padding:12px}
  /* 162 schede: il browser impagina solo quelle vicine alla vista (apertura più rapida sul telefono) */
  .coll-tab-diff .coll-tab tbody tr{content-visibility:auto;contain-intrinsic-size:auto 280px}
  .coll-tab-diff .coll-tab th,.coll-tab-diff .coll-tab td{border:0;padding:4px 0;display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:8px}
  .coll-tab-diff .coll-tab [data-label]::before{content:attr(data-label);font-family:var(--font-ui);font-size:.8125rem;line-height:1.5rem;color:var(--muted);font-weight:400}
  .coll-tab-diff .coll-foto-btns{flex-direction:row;flex-wrap:wrap;column-gap:8px}
}
@media (max-width:719px){
  .dlg-foto .dlg-testa{padding:8px 16px}
  .dlg-foto .dlg-testa h2{font-size:1.0625rem;line-height:1.5rem}
  .dlg-foto .foto-corpo{padding:12px 16px 20px}
  .foto-griglia{grid-template-columns:minmax(0,1fr);grid-template-areas:"area" "lato" "info"}
  .foto-viewport{height:60vh;min-height:300px}
  /* telefono: i pulsanti di sfoglio restano raggiungibili in fondo allo schermo finché si guarda l'immagine */
  .foto-sfoglia{display:contents}
  .foto-sf-passi{position:sticky;bottom:0;z-index:2;background:var(--paper);padding:8px 0;margin:-8px 0 0}
  .foto-sf-btn{flex:1 1 0;justify-content:center;padding-inline:8px}
  .foto-sf-lungo{display:none}
  .foto-sf-breve{display:inline}
  .foto-sf-altro{flex-direction:column;align-items:stretch}
  .foto-vai-riga .foto-vai-campo{flex:1;width:auto;min-width:0}
  .foto-torna{justify-content:center}
  .foto-lato{position:static;max-height:none;overflow:visible}
  .foto-btn-pannello{display:inline-flex;width:100%}
  .foto-btn-pannello[aria-expanded="true"] .i{transform:rotate(180deg)}
  .foto-pannello{display:none;margin-top:8px}
  .foto-pannello.aperto{display:flex}
  .foto-zoom .btn{padding-inline:10px}
  .coll-titolo{font-size:2rem}
  .coll-intro{padding:20px}
  .coll-filtri{grid-template-columns:minmax(0,1fr)}
  .coll-tab-diff .coll-tab tbody{grid-template-columns:minmax(0,1fr)}
  .coll-casi{grid-template-columns:minmax(0,1fr)}
  .coll-acc,.coll-acc tbody,.coll-acc tr,.coll-acc th,.coll-acc td{display:block}
  .coll-acc{border:0;background:transparent}
  .coll-acc thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .coll-acc tbody{display:flex;flex-direction:column;gap:8px}
  .coll-acc tr{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);padding:8px 12px}
  .coll-acc th,.coll-acc td{border:0;padding:2px 0;display:flex;justify-content:space-between;gap:8px}
  .coll-acc td::before{content:attr(data-label);color:var(--muted)}
}
@media (prefers-reduced-motion: no-preference){
  .modo-btn,.btn-foto{transition:background-color 120ms ease-out,color 120ms ease-out}
}

/* ---------- 11. Manoscritti a confronto (vista sinottica) e comando «Manoscritti» del lettore ---------- */
.titolo-opera{display:flex;flex-wrap:wrap;align-items:center;column-gap:24px;row-gap:8px}
.titolo-opera .titolo-testo{min-width:0}
.btn-manoscritti{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:10px 20px;font-size:1.0625rem;text-decoration:none}
.btn-manoscritti .i{width:22px;height:22px}
.c-manoscritto{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;text-decoration:none;margin-top:4px}
.coll-sinossi{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 8px;border-radius:var(--radius-sm);color:var(--link);font-weight:700;font-size:.9375rem}
.coll-sinossi:hover{background:var(--hover)}
/* Pagina «Manoscritti a confronto». Strumenti sempre a portata di mano durante lo scorrimento:
   da 1080 px colonna a destra fissa (320 px da 1280, 280 px da 1080 a 1279, così B, C, D restano larghi almeno 220 px);
   da 720 a 1079 px barra compatta fissa sotto la testata e pannello laterale destro «Strumenti»;
   sotto 720 px barra fissa in basso e pannello dal basso. La testata resta fissa da 720 px in su. */
.body-sin{--testata-h:76px;--barra-h:72px;--str-top:calc(var(--testata-h) + var(--barra-h))}
/* con la colonna a destra lo spazio finale sta dentro la griglia: così la colonna fissa non risale sotto la testata a fine pagina */
.pagina-sin{padding-bottom:16px}
.sin-titolo{font-family:var(--font-latino);font-weight:500;font-size:2.125rem;line-height:1.15;margin-top:4px}
.sin-layout{display:grid;grid-template-columns:minmax(0,1fr) 12px var(--str-w,320px);gap:6px;align-items:start;margin-top:16px}
.sin-sx{grid-column:1;grid-row:1;min-width:0;padding-bottom:32px}
.sin-maniglia-str{grid-column:2;grid-row:1;align-self:stretch}
.sin-dx{grid-column:3;grid-row:1;position:sticky;top:calc(var(--testata-h) + 16px);max-height:calc(100vh - var(--testata-h) - 32px);overflow-y:auto;overscroll-behavior:contain;
  display:flex;flex-direction:column;gap:16px;padding:16px;background:var(--paper);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
.sin-dx{scroll-padding-top:calc(var(--nav-h,140px) - 8px)}
/* i comandi dei versi restano in cima alla colonna anche quando la colonna scorre al suo interno */
.sin-barretta{display:flex;flex-direction:column;gap:12px;position:sticky;top:-16px;z-index:2;margin:-16px -16px 0;padding:16px 16px 12px;background:var(--paper);border-bottom:1px solid var(--rule)}
.sin-versi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"n n" "p s";gap:8px}
#sin-prec{grid-area:p}
#sin-succ{grid-area:s}
.sin-vnum{grid-area:n;font-size:1.375rem;line-height:1.4;font-weight:700;font-variant-numeric:tabular-nums}
.sin-vbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding-inline:10px;font-weight:700;line-height:1.3}
.sin-btn-str{display:none}
.sin-str{display:flex;flex-direction:column;gap:16px;min-width:0}
.sin-str-testa{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;margin:-1px;padding:0;border:0}
.sin-str-t{font-size:1.125rem;line-height:1.4;font-weight:700}
.sin-str-chiudi{flex:none}
.sin-ed{font-size:1rem;line-height:1.6;padding-bottom:16px;border-bottom:1px solid var(--rule)}
.sin-ed-l{display:block;font-weight:700;font-size:.875rem;line-height:1.5}
.sin-ed-t{font-family:var(--font-latino);font-size:1.375rem;line-height:1.45}
.sin-ed-flusso{display:none}
.sin-vai{display:flex;flex-direction:column;gap:4px}
.sin-vai label{font-size:.875rem;font-weight:700;line-height:1.25rem}
.sin-vai-riga{display:flex;gap:8px}
.sin-vai .input{flex:1;width:auto;min-width:0}
.sin-opzioni{display:flex;flex-direction:column;gap:4px}
.sin-switch{font-weight:700}
.sin-reg{display:flex;flex-direction:column;gap:12px}
.sin-btn-reg{justify-content:flex-start;font-weight:700;text-align:left}
.sin-btn-reg[aria-expanded="true"] .i{transform:rotate(180deg)}
.sin-pannello{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--subtle);border-radius:var(--radius-sm)}
.sin-pannello[hidden]{display:none}
.sin-pannello .foto-check,.sin-pannello .radio{background:var(--paper);border-radius:var(--radius-sm);padding-inline:8px}
.sin-pann-griglia{display:flex;flex-direction:column;gap:12px}
.sin-pann-cur{display:flex;flex-direction:column;gap:8px}
.sin-pann-cur input[type=range]{width:100%;min-height:44px;margin:0;accent-color:var(--primary);background:transparent}
.sin-pann-cur .btn{align-self:flex-start}
/* «Riallinea» (tasto R) e «Disposizione» */
.sin-riallinea{justify-content:flex-start;gap:8px;font-weight:700;min-height:48px}
.sin-tasto{margin-left:auto;font:inherit;font-size:.8125rem;line-height:1.5;padding:0 6px;border:1px solid var(--control);border-radius:var(--radius-xs);color:var(--muted)}
.sin-disp legend{font-size:.875rem}
.sin-disp-scelte{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.sin-disp-r{min-height:52px;padding:10px 12px;gap:10px;font-weight:700}
.sin-disp-r:has(input:checked){padding:9px 11px}
.sin-stretto{display:none}
.sin-legenda{display:flex;gap:10px;align-items:flex-start;font-size:.875rem;line-height:1.5;color:var(--ink);padding-top:12px;border-top:1px solid var(--rule)}
.sin-legenda-segno{flex:none;width:26px;height:16px;margin-top:3px;border:3px solid var(--minio);border-radius:2px}
.sin-schede{display:none}
.sin-colonne{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sin-colonne:focus{outline:none}
.sin-col{display:flex;flex-direction:column;gap:8px;min-width:0;padding:12px;background:var(--paper);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
.sin-col-testa{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.sin-h{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 10px;font-weight:400}
.sin-sigla{font-family:var(--font-latino);font-size:2.75rem;line-height:1;font-weight:500;color:var(--minio)}
.sin-segn{font-size:1.0625rem;line-height:1.4;font-weight:700}
.sin-dove{font-size:1rem;line-height:1.5;font-weight:700;min-height:3em}
.fuori-verso .sin-dove{font-weight:400;color:var(--muted)}
.sin-vista-wrap{position:relative}
.sin-vista{height:max(360px,calc(100vh - 300px))}
/* «angolino»: un solo pulsante da 28 px in un angolo dell'immagine (scelto dal lettore, uguale per tutti i codici); al clic si
   espande nei comandi di ingrandimento. Trascinandolo si aggancia all'angolo più vicino; Alt+frecce da tastiera. */
.sin-ang{position:absolute;z-index:3;display:flex;align-items:center;gap:4px;right:6px;bottom:6px}
.body-sin[data-ang=tl] .sin-ang{left:6px;top:6px;right:auto;bottom:auto}
.body-sin[data-ang=tr] .sin-ang{right:6px;top:6px;left:auto;bottom:auto;flex-direction:row-reverse}
.body-sin[data-ang=bl] .sin-ang{left:6px;bottom:6px;right:auto;top:auto}
.body-sin[data-ang=br] .sin-ang,.body-sin:not([data-ang]) .sin-ang{flex-direction:row-reverse}
.sin-ang-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;min-height:28px;padding:0;margin:0;
  background:color-mix(in srgb,var(--paper) 85%,transparent);color:var(--ink);border:1px solid var(--control);border-radius:var(--radius-xs,4px);cursor:grab;touch-action:none;font:inherit}
.sin-ang-btn .i{width:16px;height:16px}
.sin-ang-btn:hover{background:var(--paper)}
.sin-ang-btn:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.sin-ang-btn[aria-expanded="true"]{background:var(--selected);color:var(--selected-ink)}
.sin-ang.trascina{z-index:30;opacity:.85}
.sin-ang.trascina .sin-ang-btn{cursor:grabbing}
.sin-zoom{display:flex;gap:4px}
.sin-zoom[hidden]{display:none}
.sin-zoom .btn-icona{width:36px;height:36px;min-height:36px;background:var(--paper);box-shadow:var(--shadow-card)}
.sin-fogli{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.sin-comandi{display:flex;flex-wrap:wrap;gap:8px}
.sin-comandi .btn{flex:1 1 auto}
.sin-fbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding-inline:10px}
.sin-cstato{font-size:.875rem;line-height:1.25rem;color:var(--muted);min-height:20px}
.sin-attr{font-size:.8125rem;line-height:1.25rem}
.sin-trascr{background:var(--subtle);border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;gap:8px}
.sin-tr-t,.sin-tr-d{font-size:.9375rem;line-height:1.4;font-weight:700}
.sin-tr-testo{font-family:var(--font-latino);font-size:1.3125rem;line-height:1.7}
.sin-diff{margin:0;padding-left:1.25em;display:flex;flex-direction:column;gap:4px}
.sin-diff .ms-diff,.sin-rif{font-family:var(--font-latino);font-size:1.125rem}
.sin-nongen{margin-top:16px}
/* comandi che servono solo in «Uno sotto l'altro» */
.sin-azioni{display:contents}
.sin-intera-btn,.sin-diff-btn{display:none}
.sin-diff-btn[aria-expanded="true"] .i{transform:rotate(180deg)}
/* Maniglie di ridimensionamento: area attiva 12 px, segno centrale, cursore col-resize o row-resize */
.sin-maniglia{position:relative;display:none;touch-action:none;user-select:none;-webkit-user-select:none;border-radius:var(--radius-sm);background:transparent}
.sin-maniglia::before{content:"";display:block;border-radius:2px;background:var(--control)}
.sin-maniglia:hover,.sin-maniglia.attiva{background:var(--hover)}
.sin-maniglia:hover::before,.sin-maniglia.attiva::before,.sin-maniglia:focus-visible::before{background:var(--ink)}
.sin-maniglia:focus-visible{outline:3px solid var(--focus);outline-offset:1px}
.sin-maniglia-v{width:12px;cursor:col-resize;flex-direction:column;align-items:center}
.sin-maniglia-v::before{width:4px;height:56px;position:sticky;top:calc(var(--testata-h) + 45vh);margin-top:160px}
.sin-maniglia-h{height:12px;width:100%;cursor:row-resize;align-items:center;justify-content:center;margin-top:-4px}
.sin-maniglia-h::before{width:56px;height:4px}
@media (min-width:1080px){
  .sin-maniglia-str{display:flex}
  body:not(.sin-righe) .sin-colonne{grid-template-columns:minmax(200px,var(--fB,1fr)) 12px minmax(200px,var(--fC,1fr)) 12px minmax(200px,var(--fD,1fr));gap:2px}
  body:not(.sin-righe) .sin-maniglia-col{display:flex}
}
/* «Uno sotto l'altro»: ogni codice è una riga con le note a sinistra (260 px) e la fascia dell'immagine a destra, aperta sulla
   riga del verso; tra un codice e l'altro solo un filo e la maniglia dell'altezza, così le tre fasce si leggono attaccate */
.sin-note,.sin-fascia{min-width:0}
.sin-tr-btn{display:none}
.sin-righe .sin-colonne{grid-template-columns:minmax(0,1fr);gap:0;border-top:1px solid var(--rule)}
.sin-righe .sin-col{display:grid;grid-template-columns:260px minmax(0,1fr);gap:0;padding:0;background:transparent;border:0;border-bottom:1px solid var(--rule);border-radius:0;box-shadow:none}
.sin-righe .sin-note{display:flex;flex-direction:column;gap:6px;padding:8px 12px 8px 0}
.sin-righe .sin-fascia{display:flex;flex-direction:column}
.sin-righe .sin-vista-wrap{flex:1 1 auto;display:flex;flex-direction:column}
.sin-righe .sin-vista{flex:1 1 auto;height:clamp(160px,15.28vw,280px);min-height:0}
.sin-righe .sin-intera .sin-vista{height:max(360px,calc(100vh - var(--testata-h) - 140px))}
.sin-righe .sin-col:not(.sin-intera) .sin-maniglia-h{display:flex}
.sin-righe .sin-maniglia-h{margin-top:0;height:10px}
.sin-righe .sin-col-testa{gap:0}
.sin-righe .sin-h{gap:0 8px}
.sin-righe .sin-sigla{font-size:2.25rem}
.sin-righe .sin-segn{font-size:.9375rem}
.sin-righe .sin-dove{min-height:0;font-size:.9375rem;line-height:1.4}
/* comandi: pulsanti a icona da 40 px (area attiva 44 px), nome completo in aria-label e title */
.sin-righe .sin-etic{display:none}
.sin-righe .sin-azioni,.sin-righe .sin-fogli,.sin-righe .sin-comandi{display:flex;flex-wrap:wrap;gap:4px}
.sin-righe .sin-azioni .btn{position:relative;flex:none;width:40px;height:40px;min-height:40px;min-width:40px;padding:0;justify-content:center;align-items:center}
.sin-righe .sin-azioni .btn::after{content:"";position:absolute;inset:-2px}
.sin-righe .sin-intera-btn{display:inline-flex}
.sin-righe .sin-col:not(.fuori-verso) .sin-torna{display:none}
.sin-righe .sin-trascr{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:0;background:transparent}
.sin-righe .sin-trascr .lab{font-size:.75rem;padding:1px 6px}
.sin-righe .sin-tr-t{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;margin:-1px;padding:0;border:0}
.sin-righe .sin-tr-testo{font-size:1.125rem;line-height:1.45;overflow-wrap:anywhere}
.sin-righe .sin-diff-btn{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 8px;font-size:.875rem;font-weight:700;position:relative}
.sin-righe .sin-diff-btn::after{content:"";position:absolute;inset:-4px 0}
.sin-righe .sin-diff-box:not(.aperta){display:none}
.sin-righe .sin-diff-box{display:flex;flex-direction:column;gap:4px;font-size:.875rem}
.sin-righe .sin-diff .ms-diff,.sin-righe .sin-rif{font-size:1rem}
.sin-righe .sin-cstato,.sin-righe .sin-attr{font-size:.75rem;line-height:1.1rem;min-height:0}
.sin-righe .sin-cstato{color:var(--muted)}
.sin-righe .sin-cstato:empty{display:none}
@media (min-width:1080px) and (max-width:1279px){
  .sin-righe .sin-col{grid-template-columns:220px minmax(0,1fr)}
}
/* sotto i 1080 px: la fascia sopra, le note sotto in una riga compatta; trascrizione e differenze richiudibili */
@media (max-width:1079px){
  .sin-righe .sin-col{grid-template-columns:minmax(0,1fr)}
  .sin-righe .sin-note{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 8px;padding:6px 0 8px}
  .sin-righe .sin-col-testa{grid-column:1;grid-row:1;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:0 8px}
  .sin-righe .sin-sigla{font-size:1.75rem}
  .sin-righe .sin-azioni{grid-column:2;grid-row:1;flex-wrap:nowrap}
  .sin-righe .sin-fogli,.sin-righe .sin-comandi{flex-wrap:nowrap}
  .sin-righe .sin-tr-btn{grid-column:1/-1;grid-row:2;display:inline-flex;justify-self:start;align-items:center;gap:6px;min-height:44px;font-size:.9375rem;font-weight:700}
  .sin-righe .sin-tr-btn[aria-expanded="true"] .i{transform:rotate(180deg)}
  .sin-righe .sin-trascr{grid-column:1/-1}
  .sin-righe .sin-trascr:not(.aperta){display:none}
  .sin-righe .sin-note>.errore-op,.sin-righe .sin-cstato,.sin-righe .sin-attr{grid-column:1/-1}
}
@media (max-width:479px){
  .sin-righe .sin-note{grid-template-columns:minmax(0,1fr)}
  .sin-righe .sin-azioni{grid-column:1;grid-row:2}
  .sin-righe .sin-tr-btn{grid-row:3}
}
/* «Uno sotto l'altro» con colonna note stretta (72 px): sigla grande e pulsante «Note»; il pannello delle note si sovrappone
   alla fascia senza spostare né ridimensionare nulla. La colonna non dà altezza alla riga: comanda sempre la fascia. */
.sin-note-btn,.sin-pop{display:none}
.sin-righe-opz{display:flex;flex-direction:column;gap:4px}
.sin-righe-opz[hidden]{display:none}
.sin-solo-rigo{justify-content:flex-start;font-weight:700}
.sin-note-strette .sin-note{position:relative}
.sin-note-strette .sin-note-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:0;width:56px;min-width:56px;min-height:44px;padding:2px 4px;font-size:.8125rem;font-weight:700;line-height:1.1}
.sin-note-seg{font-size:1.125rem;line-height:.8}
.sin-note-btn[aria-expanded="true"]{background:var(--selected);color:var(--selected-ink)}
.sin-note-strette .sin-pop:not([hidden]){display:flex}
.sin-pop{flex-direction:column;gap:8px;padding:12px 14px 14px;margin:8px 0;background:var(--paper);color:var(--ink);border:1px solid var(--control);border-radius:var(--radius-md);text-align:left}
.sin-pop.in-colonna{display:flex;margin:0;padding:0 0 16px;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:transparent}
.sin-pop[hidden]{display:none!important}
.sin-pop.in-colonna:not(.fuori-verso) .sin-torna{display:none}
.sin-str[hidden]{display:none!important}
.sin-pop-testa{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.sin-pop-t{display:flex;flex-direction:column;font-size:1rem;line-height:1.35;font-weight:700}
.sin-pop-t:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.sin-pop-s{font-family:var(--font-latino);font-size:1.25rem;color:var(--minio);font-weight:500}
.sin-pop-segn{font-weight:400;font-size:.9375rem}
.sin-pop-chiudi{flex:none;min-height:44px;gap:6px}
.sin-pop-dove{font-size:.9375rem;line-height:1.4}
.sin-pop-corpo{display:flex;flex-direction:column;gap:10px}
.sin-righe .sin-pop .sin-trascr,.sin-righe .sin-pop .sin-trascr:not(.aperta){display:flex}
.sin-righe .sin-pop .sin-diff-btn{display:none}
.sin-righe .sin-pop .sin-diff-box,.sin-righe .sin-pop .sin-diff-box:not(.aperta){display:flex}
.sin-righe .sin-pop .sin-azioni,.sin-righe .sin-pop .sin-fogli,.sin-righe .sin-pop .sin-comandi{display:flex;flex-direction:column;flex-wrap:nowrap;gap:6px;align-items:stretch}
.sin-righe .sin-pop .sin-azioni .btn{width:auto;height:auto;min-height:44px;padding:6px 10px;justify-content:flex-start;gap:8px}
.sin-righe .sin-pop .sin-etic{display:inline}
.sin-righe .sin-pop .sin-attr{font-size:.8125rem;line-height:1.25rem;overflow-wrap:anywhere}
@media (min-width:1080px){
  .sin-righe.sin-note-strette .sin-col{grid-template-columns:72px minmax(0,1fr)}
  .sin-righe.sin-note-strette .sin-note{contain:size;min-height:0;align-items:center;gap:4px;padding:6px 8px 6px 0}
  .sin-righe.sin-note-strette .sin-segn,.sin-righe.sin-note-strette .sin-dove{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;margin:-1px;padding:0;border:0}
  .sin-righe.sin-note-strette .sin-col-testa{align-items:center}
  .sin-righe.sin-note-strette .sin-sigla{font-size:2.25rem}
  /* fascia bassa: sigla e pulsante affiancati, più piccoli */
  .sin-righe.sin-note-strette .sin-bassa .sin-note{flex-direction:row;justify-content:center;gap:2px;padding:4px 4px 4px 0}
  .sin-righe.sin-note-strette .sin-bassa .sin-sigla{font-size:1.375rem}
  .sin-righe.sin-note-strette .sin-bassa .sin-note-btn{width:44px;min-width:44px;min-height:40px;font-size:.75rem;padding:2px}
}
@media (max-width:1079px){
  .sin-righe.sin-note-strette .sin-note{grid-template-columns:minmax(0,1fr) auto}
  .sin-righe.sin-note-strette .sin-note-btn{grid-column:2;grid-row:1;flex-direction:row;gap:6px;width:auto;min-height:44px;padding:4px 12px;font-size:.9375rem}
}
@media (max-width:719px){
}
@media (min-width:720px){
  .body-sin .testata{position:sticky;top:0;z-index:40}
  .body-sin{scroll-padding-top:calc(var(--testata-h) + 16px)}
}
@media (max-width:1279px){
  .sin-layout{grid-template-columns:minmax(0,1fr) 12px var(--str-w,280px);gap:4px}
  .sin-colonne{gap:12px}
  .sin-col{padding:10px}
  .sin-fogli{grid-template-columns:minmax(0,1fr)}
  .sin-sigla{font-size:2.25rem}
}
/* da 720 a 1079 px: barra compatta sotto la testata e pannello laterale destro */
@media (max-width:1079px){
  .pagina-sin{padding-bottom:48px}
  .sin-layout{display:block;margin-top:0}
  .sin-sx{padding-bottom:0}
  .sin-dx{display:contents}
  .sin-barretta{position:sticky;top:var(--testata-h);z-index:30;flex-direction:row;align-items:center;gap:12px;margin:12px 0 16px;padding:8px 12px;
    background:var(--paper);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
  .sin-versi{flex:1;min-width:0;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"p n s";align-items:center}
  .sin-vnum{font-size:1.125rem;text-align:center}
  .sin-di{display:none}
  .sin-btn-str{display:inline-flex;font-weight:700;flex:none}
  .sin-btn-str[aria-expanded="true"]{background:var(--selected);color:var(--selected-ink)}
  .sin-str{position:fixed;z-index:35;top:var(--str-top);right:0;bottom:0;width:min(380px,calc(100vw - 32px));overflow-y:auto;overscroll-behavior:contain;
    padding:16px;background:var(--paper);border:1px solid var(--control);border-right:0;border-radius:var(--radius-md) 0 0 var(--radius-md);box-shadow:var(--shadow-dialog)}
  .sin-str:not(.aperto){display:none}
  .sin-str-testa{position:static!important;width:auto;height:auto;overflow:visible;clip:auto;clip-path:none;white-space:normal;margin:0;
    display:flex;align-items:center;justify-content:space-between;gap:12px}
  .sin-str .sin-ed{display:none}
  .sin-ed-flusso{display:block;margin-top:12px;padding:12px 16px;border:1px solid var(--card-border);border-radius:var(--radius-md);background:var(--paper)}
  .sin-ed-flusso .sin-ed-l{display:inline;margin-right:6px}
  .sin-vista{height:max(360px,calc(100vh - 380px))}
  .sin-fogli{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:719px){
  .titolo-opera .btn-manoscritti{padding:8px 16px}
  .body-sin{--testata-h:0px}
  .pagina-sin{padding-bottom:calc(var(--barra-h) + 24px)}
  .pagina-sin .sottotitolo{display:none}
  .sin-titolo{font-size:1.75rem}
  .sin-ed-flusso{padding:10px 12px}
  .sin-ed-t{font-size:1.25rem}
  .sin-barretta{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:30;margin:0;gap:8px;
    padding:8px max(12px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));
    border:0;border-top:1px solid var(--control);border-radius:0;box-shadow:var(--shadow-dialog)}
  .sin-versi{gap:6px}
  .sin-vbtn{width:48px;padding:0}
  .sin-lungo{display:none}
  .sin-vnum{font-size:1.0625rem;white-space:nowrap}
  .sin-btn-str{padding-inline:12px}
  .sin-str{top:auto;left:0;right:0;bottom:var(--barra-h);width:auto;max-height:min(80vh,calc(100vh - var(--barra-h) - 48px));
    padding:16px max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left));
    border:1px solid var(--control);border-bottom:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0}
  .sin-largo,.sin-tasto{display:none}
  .sin-stretto{display:inline}
  /* sul telefono le due scelte stanno affiancate, così le regolazioni restano visibili all'apertura del pannello */
  .sin-disp-scelte{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sin-disp-r{min-height:52px;padding:6px 8px;gap:8px;line-height:1.25;font-size:1rem}
  .sin-disp-r:has(input:checked){padding:5px 7px}
  .sin-disp-r .i{display:none}
  .sin-schede{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:4px;position:sticky;top:0;z-index:3;background:var(--bg);padding:8px 0}
  .sin-scheda{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:64px;padding:4px;border:2px solid var(--control);border-radius:var(--radius-md);background:var(--paper);color:var(--ink);cursor:pointer}
  .sin-scheda-s{font-family:var(--font-latino);font-size:2rem;line-height:1;font-weight:500}
  .sin-scheda-n{font-size:.75rem;line-height:1.1rem}
  .sin-scheda[aria-pressed="true"]{background:var(--selected);color:var(--selected-ink);border-color:var(--selected-ink)}
  .sin-scheda:hover{background:var(--hover)}
  .sin-scheda[aria-pressed="true"]:hover{background:var(--selected)}
  .sin-righe .sin-schede{display:none}
  .sin-colonne{grid-template-columns:minmax(0,1fr);margin-top:8px}
  .sin-nascosta{display:none}
  .sin-dove{min-height:0}
  .sin-vista{height:46vh;min-height:260px}
}
@media (max-width:359px){
  .sin-vnum{font-size:1rem}
  .sin-versi{gap:4px}
  .sin-barretta{gap:6px}
}
@media (prefers-reduced-motion: no-preference){
  .sin-str.aperto{animation:entra 140ms ease-out}
}

/* interruttori del tema (tutte le pagine, in basso a destra) */
.tema-toggle{display:flex;gap:2px;padding:3px;border:1px solid var(--rule);border-radius:999px;background:var(--paper)}
.tema-toggle button{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer}
.tema-toggle button:hover{background:var(--hover,var(--subtle))}
.tema-toggle button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.tema-toggle button:focus-visible{outline:2px solid var(--focus,var(--ink));outline-offset:2px}
.tema-toggle .i{width:20px;height:20px}
.tema-fisso{position:fixed;right:16px;bottom:16px;z-index:40}
@media print{.tema-fisso{display:none}}
/* nella testata scura */
.tema-testata-wrap .tema-toggle{background:var(--chrome);border-color:var(--focus-chrome)}
.tema-testata-wrap .tema-toggle button{width:36px;height:36px;color:var(--chrome-ink)}
.tema-testata-wrap .tema-toggle button:hover{background:var(--chrome-hover)}
.tema-testata-wrap .tema-toggle button[aria-pressed="true"]{background:var(--chrome-ink);color:var(--chrome)}
.tema-testata-wrap .tema-toggle button:focus-visible{outline-color:var(--chrome-ink)}
.pop-opzioni .tema-toggle{width:max-content}
.campo-titolo{display:block;font-weight:700;margin-bottom:6px}

/* rotella della testata */
.rotella-wrap{position:relative}
.btn-rotella{width:44px;height:44px;padding:0;display:inline-grid;place-items:center}
.btn-rotella .i{width:22px;height:22px;transition:transform 200ms ease}
.btn-rotella[aria-expanded="true"] .i{transform:rotate(60deg)}
@media (prefers-reduced-motion:reduce){.btn-rotella .i{transition:none}}
.testata-comandi{flex-wrap:nowrap}
