/* Arianna — crema, inchiostro, terracotta, verde. Caratteri del sistema (New York / San Francisco su iPhone e Mac):
   niente font scaricati da Google, la pagina si disegna subito. */
:root{--serif:ui-serif,'New York','Iowan Old Style',Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif}
:root{
  --cream:#FBF7F2; --cream-2:#F4EDE4; --card:#FFFFFF; --ink:#191512; --ink-soft:#4A4038;
  --muted:#7C6F63; --line:#E4D9CB;
  --accent:#C0562A; --accent-dark:#9E4420; --accent-soft:#F6E3D8;
  --green:#2C5548; --green-soft:#E2EDE7;
  --warn:#9A6B12; --warn-soft:#F5ECD8; --err:#9C2C1B; --err-soft:#FDECEA;
  --shadow:0 1px 2px rgba(25,21,18,.04),0 8px 28px rgba(25,21,18,.07);
  --shadow-lg:0 2px 4px rgba(25,21,18,.05),0 24px 64px rgba(25,21,18,.12);
  --r:16px; --r-sm:10px;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --cream:#17140F; --cream-2:#211C16; --card:#1F1A15; --ink:#F2ECE4; --ink-soft:#D5CBBF;
  --muted:#A39585; --line:#3A3229; --accent:#E07A4C; --accent-dark:#F09267; --accent-soft:#3A241A;
  --green:#8FC4AF; --green-soft:#1E2E28; --warn:#E0B25A; --warn-soft:#33291A; --err:#F08A78; --err-soft:#3A1E19;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 8px 28px rgba(0,0,0,.25); --shadow-lg:0 24px 64px rgba(0,0,0,.4);
}}
:root[data-theme="dark"]{
  --cream:#17140F; --cream-2:#211C16; --card:#1F1A15; --ink:#F2ECE4; --ink-soft:#D5CBBF;
  --muted:#A39585; --line:#3A3229; --accent:#E07A4C; --accent-dark:#F09267; --accent-soft:#3A241A;
  --green:#8FC4AF; --green-soft:#1E2E28; --warn:#E0B25A; --warn-soft:#33291A; --err:#F08A78; --err-soft:#3A1E19;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 8px 28px rgba(0,0,0,.25); --shadow-lg:0 24px 64px rgba(0,0,0,.4);
}
:root{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--accent-dark);text-decoration:none}a:hover{text-decoration:underline}
h1,h2,h3{font-family:var(--serif);font-weight:600;letter-spacing:-.018em;line-height:1.15;margin:0}
h1{font-size:clamp(1.6rem,3.2vw,2.1rem)}h2{font-size:1.15rem;margin-bottom:12px}h3{font-size:1rem;margin:16px 0 8px}
main{max-width:1080px;margin:0 auto;padding:28px 16px 80px}
.muted{color:var(--muted)}.small{font-size:.84rem}.tiny{font-size:.76rem}

/* ─── barra in alto ─── */
.top{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--cream) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.top-in{max-width:1080px;margin:0 auto;padding:10px 16px;display:flex;gap:14px;align-items:center}
.logo{display:flex;align-items:center;gap:9px;font-family:var(--serif);font-weight:600;font-size:1.2rem;color:var(--ink);letter-spacing:-.02em}
.logo:hover{text-decoration:none}
.logo-mark{width:28px;height:28px;border-radius:8px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:.95rem}
.nav{display:flex;gap:4px;align-items:center;flex:1;overflow-x:auto;scrollbar-width:none}
.nav::-webkit-scrollbar{display:none}
.nav a{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;color:var(--ink-soft);font-size:.9rem;white-space:nowrap}
.nav a:hover{background:var(--cream-2);text-decoration:none}
.nav a.on{background:var(--card);box-shadow:var(--shadow);color:var(--ink)}
.chi{color:var(--muted);font-size:.8rem;white-space:nowrap}
.badge-n{background:var(--accent);color:#fff;border-radius:999px;font-size:.7rem;font-weight:600;padding:0 6px;line-height:18px}

/* ─── avatar persona ─── */
.av{--f:var(--accent);--t:var(--accent-soft);display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;
  background:var(--t);color:var(--f);font-size:.68rem;font-weight:700;letter-spacing:.02em;flex:none}
.av.lg{width:46px;height:46px;font-size:1rem}
.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 3px;border-radius:999px;background:var(--cream-2);font-size:.8rem;color:var(--ink-soft);white-space:nowrap}

/* ─── card e liste ─── */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--shadow);margin-bottom:18px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:820px){.grid2{grid-template-columns:1fr}}
.list{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}
.row{display:flex;gap:14px;align-items:center;padding:13px 16px;border-top:1px solid var(--line)}
.row:first-child{border-top:none}
.row:hover{background:color-mix(in srgb,var(--cream) 60%,var(--card))}
.row .main{flex:1;min-width:0}
.row .t{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row .s{font-size:.82rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.doc-ic{width:38px;height:38px;border-radius:var(--r-sm);background:var(--accent-soft);display:grid;place-items:center;font-size:1.1rem;flex:none}
.num{font-variant-numeric:tabular-nums;white-space:nowrap}
.vuoto{text-align:center;color:var(--muted);padding:40px 16px}
.vuoto b{display:block;font-family:var(--serif);font-size:1.15rem;color:var(--ink);margin-bottom:6px}

/* ─── etichette di stato ─── */
.tag{display:inline-block;font-size:.72rem;font-weight:600;padding:2px 9px;border-radius:999px;white-space:nowrap;background:var(--cream-2);color:var(--muted)}
.tag.ok{background:var(--green-soft);color:var(--green)}.tag.warn{background:var(--warn-soft);color:var(--warn)}
.tag.err{background:var(--err-soft);color:var(--err)}.tag.acc{background:var(--accent-soft);color:var(--accent-dark)}

/* ─── pulsanti ─── */
button,.btn{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--card);color:var(--ink);padding:8px 14px;border-radius:var(--r-sm);font-size:.9rem;transition:background .15s,transform .12s,border-color .15s}
button:hover,.btn:hover{border-color:var(--muted);text-decoration:none}
.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;box-shadow:0 6px 18px rgba(192,86,42,.22)}
.primary:hover{background:var(--accent-dark);border-color:var(--accent-dark);transform:translateY(-1px)}
.ghost{background:transparent;border-color:transparent;color:var(--muted)}.ghost:hover{background:var(--cream-2);border-color:transparent}
.danger{color:var(--err)}.danger:hover{background:var(--err-soft);border-color:var(--err)}
.icon-btn{width:38px;height:38px;padding:0;display:inline-grid;place-items:center;border-radius:50%;background:var(--card);box-shadow:var(--shadow)}
.icon-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-btn:hover{color:var(--accent-dark);border-color:var(--accent)}
.azioni{display:flex;gap:6px;flex:none}
.azioni button{padding:5px 10px;font-size:.8rem}

/* ─── form ─── */
input,select,textarea{font:inherit;width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:var(--r-sm);background:var(--cream);color:var(--ink);transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(192,86,42,.11);background:var(--card)}
label{display:grid;gap:5px;font-size:.84rem;color:var(--ink-soft)}
label small{color:var(--muted);font-size:.72rem}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:600px){.form-grid{grid-template-columns:1fr}}
.inline{display:flex;gap:8px;align-items:center}
.inline input{flex:1}

/* ─── intestazione di pagina ─── */
.head{display:flex;gap:14px;align-items:center;margin-bottom:22px;flex-wrap:wrap}
.head .tit{flex:1;min-width:200px}
.meta{display:flex;gap:6px 14px;flex-wrap:wrap;color:var(--muted);font-size:.84rem;margin-top:4px}
.meta a{color:inherit}.meta .warn{color:var(--warn)}.meta .err{color:var(--err)}
.flash{background:var(--green-soft);color:var(--green);padding:10px 14px;border-radius:var(--r-sm);margin-bottom:16px;font-size:.9rem}
.flash.err{background:var(--err-soft);color:var(--err)}

/* ─── chiedi ─── */
.ask{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;box-shadow:var(--shadow-lg);margin-bottom:22px;position:relative;overflow:hidden}
.ask::before{content:'';position:absolute;top:-180px;right:-140px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(192,86,42,.09),transparent 65%);pointer-events:none}
.ask form{display:flex;gap:10px;position:relative}
.ask input{font-size:1rem;padding:13px 15px}
.ask button{white-space:nowrap}
.risposta{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.risposta .dom{color:var(--muted);font-size:.84rem;margin-bottom:6px}
.risposta .txt{font-size:1.02rem}
.cite{font-size:.82rem;color:var(--green);background:var(--green-soft);padding:9px 12px;border-radius:9px;margin:6px 0 10px;white-space:pre-wrap}
.risposta.astenuto .txt{color:var(--warn)}
.fonti{list-style:none;padding:0;margin:10px 0 0}
.fonti li{margin:8px 0}
.htmx-indicator{display:none}.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{display:inline}

/* ─── agenda ─── */
.gruppo{margin:26px 0 10px;display:flex;align-items:center;gap:10px}
.gruppo h2{margin:0;font-size:1.05rem}
.gruppo .n{font-size:.78rem;color:var(--muted)}
.gruppo.err h2{color:var(--err)}.gruppo.warn h2{color:var(--warn)}.gruppo.muted h2{color:var(--muted)}
.data{width:52px;text-align:center;flex:none;line-height:1.05}
.data .g{font-family:var(--serif);font-size:1.45rem;font-weight:600}
.data .m{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.row.chiuso{opacity:.55}
.row.task .t,.row.task .s{white-space:normal}
.filtri{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.filtri label{display:inline-flex;flex-direction:row;align-items:center;gap:6px;padding:3px 10px 3px 3px;border-radius:999px;border:1.5px solid var(--line);background:var(--card);cursor:pointer;font-size:.84rem;color:var(--ink-soft)}
.filtri input{display:none}
.filtri label:has(input:checked){border-color:var(--ink-soft);color:var(--ink)}
.filtri label:has(input:not(:checked)) .av{filter:grayscale(1);opacity:.5}

/* ─── documento ─── */
.doc-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:start}
@media(max-width:900px){.doc-grid{grid-template-columns:1fr}}
.anteprima{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden;height:78vh;position:sticky;top:76px}
.anteprima iframe,.anteprima img{width:100%;height:100%;border:0;object-fit:contain;background:var(--cream-2)}
@media(max-width:900px){.anteprima{height:60vh;position:static}}
details{margin-top:10px}summary{cursor:pointer;color:var(--muted);font-size:.86rem}
pre{white-space:pre-wrap;font-size:.76rem;background:var(--cream-2);padding:12px;border-radius:var(--r-sm);max-height:380px;overflow:auto}
.eventi{list-style:none;padding:0;margin:0;font-size:.82rem}.eventi li{padding:4px 0;border-top:1px dashed var(--line)}

/* ─── trascinamento file ─── */
.drop{position:fixed;inset:0;z-index:80;background:rgba(25,21,18,.45);display:none;place-items:center}
.drop.on{display:grid}
.drop div{background:var(--card);border:2px dashed var(--accent);border-radius:var(--r);padding:40px 56px;text-align:center;font-family:var(--serif);font-size:1.3rem;box-shadow:var(--shadow-lg)}

/* ─── login ─── */
.login{max-width:420px;margin:12vh auto 0;text-align:center}
.login .card{padding:34px 30px;box-shadow:var(--shadow-lg)}
.login h1{font-size:2.2rem;margin-bottom:8px}
.login .logo-mark{width:52px;height:52px;border-radius:14px;font-size:1.6rem;margin:0 auto 18px}

@media(max-width:640px){
  main{padding:18px 12px 70px}
  .chi{display:none}
  .ask form{flex-direction:column}
  .row{padding:12px}
  .hide-m{display:none}
  .row.task{flex-wrap:wrap}
  .row.task .azioni{width:100%;padding-left:66px}
  .head .tit{min-width:0}
}
.logo-img{width:30px;height:30px;display:block}
details.scollega{margin:0}details.scollega[open]{flex-basis:100%;background:var(--cream-2);padding:10px;border-radius:var(--r-sm)}

/* ─── incrementi 5-6: profilo, accessi, postazioni, serie ─── */
.solo-m{display:none!important}
@media(max-width:640px){.solo-m{display:inline-flex!important}}
.ok-note{background:var(--green-soft);color:var(--green);border-color:transparent;padding:10px 14px;border-radius:var(--r-sm);margin-bottom:12px}
.err-note{background:var(--err-soft);color:var(--err);border-color:transparent;padding:10px 14px;border-radius:var(--r-sm);margin-bottom:12px}
label.check{display:flex;flex-direction:row;align-items:center;gap:8px;margin-top:6px;font-size:.9rem}
label.check input{width:auto}
.legenda{display:inline-block;margin:0 0 0 8px}.legenda summary{display:inline;font-size:.8rem}
.legenda[open]{display:block;max-width:640px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 14px}
.membro{display:flex;align-items:center;gap:8px;padding:7px 0;border-top:1px dashed var(--line)}
.membro:first-of-type{border-top:none}
.post-head{display:flex;gap:14px;align-items:center}
.post-ic{width:46px;height:46px;border-radius:14px;background:var(--cream-2);display:grid;place-items:center;font-size:1.4rem;flex:none}
details.menu{margin:0;position:relative}details.menu summary{list-style:none;color:var(--ink-soft)}
details.menu summary::-webkit-details-marker{display:none}
.menu-in{position:absolute;right:0;top:44px;z-index:20;background:var(--card);border:1px solid var(--line);border-radius:var(--r);
  box-shadow:var(--shadow-lg);padding:14px;width:min(340px,86vw);display:flex;flex-direction:column;gap:12px}
.menu-in .form-grid{grid-template-columns:1fr}
.lista-web h3{margin-top:0}
.voce{display:flex;align-items:center;gap:10px;padding:5px 0;border-top:1px solid var(--line)}
.voce:first-of-type{border-top:none}.voce form{margin:0}.voce .testo{flex:1}
.voce.fatta .testo{text-decoration:line-through;color:var(--muted)}
.spunta{width:24px;height:24px;padding:0;border-radius:50%;border:2px solid var(--line);font-size:.75rem;line-height:1;color:#fff}
.voce.fatta .spunta{background:var(--green);border-color:var(--green)}
.foto-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:14px}
.foto-grid figure{margin:0;position:relative}
.foto-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r-sm);display:block;background:var(--cream-2)}
.foto-grid figcaption{margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.foto-grid form{position:absolute;top:4px;right:4px;margin:0}
.foto-grid form button{background:rgba(255,255,255,.85);padding:2px 7px}
.qr-card{display:flex;gap:28px;align-items:flex-start;flex-wrap:wrap}
.qr svg{width:240px;height:240px;display:block;border-radius:12px;border:1px solid var(--line)}
.qr-card>div:last-child{flex:1;min-width:240px}
.passi li{margin-bottom:8px}
details.titolo-edit{margin:4px 0 0}details.titolo-edit summary{font-size:.78rem}
details.titolo-edit input{min-width:280px}
details.menu.elimina .menu-in{top:36px;width:min(300px,86vw)}
details.menu.elimina .menu-in button{padding:8px 10px}
details.indirizzo{margin-top:6px}details.indirizzo .inline input{min-width:0}
.qr-mini svg{width:150px;height:150px;margin-top:10px;border-radius:8px;border:1px solid var(--line)}
details.liste-spazio{margin-top:18px}details.liste-spazio>summary{list-style:none;cursor:pointer;display:flex;gap:10px;align-items:baseline}
.tab-risposta{border-collapse:collapse;margin:10px 0;font-size:.9rem;font-variant-numeric:tabular-nums}
.tab-risposta th,.tab-risposta td{padding:5px 14px 5px 0;text-align:left;border-bottom:1px solid var(--line)}
.tab-risposta th{font-weight:600;color:var(--muted);font-size:.78rem}
.tab-risposta td:not(:first-child),.tab-risposta th:not(:first-child){text-align:right}
.task-blocco+.task-blocco{border-top:1px solid var(--line)}
.task-blocco .row{border-top:none}
.passi{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.passo{font-size:.74rem;padding:2px 9px;border-radius:999px;background:var(--cream-2);color:var(--muted);white-space:nowrap;max-width:320px;overflow:hidden;text-overflow:ellipsis}
.passo.fatto{background:var(--green-soft);color:var(--green)}
.passo.corrente{background:var(--accent-soft);color:var(--accent-dark);font-weight:600;outline:1.5px solid var(--accent)}
details.processo-scelta{margin:0 16px 8px 82px}details.processo-scelta summary{font-size:.74rem}
details.processo-scelta form{margin-top:6px}
.prossimo{margin:0 16px 12px 82px;padding:12px 14px;background:var(--accent-soft);border-radius:var(--r-sm)}
.prossimo form{margin-top:8px}.prossimo-testa{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0}.prossimo .sugg{align-items:center}.prossimo .sugg .chip{text-align:left;white-space:normal}.scrivi-passo{margin-top:8px}.scrivi-passo>summary{list-style:none;display:inline-flex}.scrivi-passo>summary::-webkit-details-marker{display:none}.scrivi-passo textarea{width:100%;box-sizing:border-box;font:inherit;margin:8px 0}.prossimo .inline{flex-wrap:wrap}.prossimo .entro{display:flex;align-items:center;gap:6px;flex:1 1 auto}.prossimo .entro input{flex:1;min-width:0;min-height:44px}.prossimo .sugg{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.chip{border-radius:999px;padding:4px 12px;font-size:.8rem;background:var(--card)}
.passi-lista{margin:10px 0 6px;padding-left:22px}.passi-lista li{margin:3px 0}
section.bozza{border:2px solid var(--accent)}
details.nuova-task,section.nuova-task{margin-top:16px;padding:14px 18px}details.nuova-task summary{list-style:none;cursor:pointer}
@media(max-width:640px){details.processo-scelta,.prossimo{margin-left:12px}}
pre.lettera{font-family:inherit;font-size:.92rem;background:var(--cream);border:1px solid var(--line);white-space:pre-wrap;max-height:none;margin:12px 0}
.cat-riga{display:flex;gap:10px;align-items:center;padding:5px 0;border-top:1px dashed var(--line)}
.cat-riga input:not([type=checkbox]){flex:1;padding:5px 9px;font-size:.84rem}
details.contatto{display:block;padding:0}details.contatto>summary{list-style:none;display:flex;gap:14px;align-items:center;padding:13px 16px;cursor:pointer}
details.contatto>summary::-webkit-details-marker{display:none}
.contatto-dett{padding:0 16px 14px 68px}

/* ─── cellulare: titoli e sintesi leggibili, a capo invece che tagliati ─── */
@media(max-width:640px){
  .row .t{white-space:normal;overflow:visible;line-height:1.3}
  .row .s{white-space:normal;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .row{align-items:flex-start}
  .row .doc-ic{width:32px;height:32px;font-size:.95rem}
  .row .num{font-size:.8rem}
  .contatto-dett{padding-left:16px}
  .cat-riga{flex-wrap:wrap}
}
.tipi{display:flex;flex-wrap:wrap;gap:6px}

/* ─── navigazione: menu utente, spazi a tendina, barra in basso su cellulare ─── */
details.utente{margin-left:auto}
details.utente summary,details.spazi-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:.9rem}
details.utente summary::-webkit-details-marker,details.spazi-menu summary::-webkit-details-marker{display:none}
details.spazi-menu summary{padding:6px 11px;border-radius:999px}
details.spazi-menu summary.on{background:var(--card);box-shadow:var(--shadow);color:var(--ink)}
details.utente .menu-in,details.spazi-menu .menu-in{top:42px;gap:2px;padding:10px;width:240px}
details.spazi-menu .menu-in{left:0;right:auto}
details.utente .menu-in a,details.spazi-menu .menu-in a{display:flex;gap:8px;align-items:center;padding:8px 10px;border-radius:var(--r-sm);color:var(--ink)}
details.utente .menu-in a:hover,details.spazi-menu .menu-in a:hover{background:var(--cream-2);text-decoration:none}
.av.io{width:32px;height:32px;font-size:.8rem;background:var(--ink);color:var(--cream)}
.tabbar{display:none}
@media(max-width:640px){
  .top .nav{display:none}
  details.utente{display:none}
  .top-in{justify-content:center}
  .logo .hide-m{display:inline}
  main{padding-bottom:96px}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:color-mix(in srgb,var(--card) 94%,transparent);
    backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
  .tabbar>a,.tabbar>details>summary{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.7rem;color:var(--muted);
    padding:4px 0;position:relative;list-style:none;cursor:pointer}
  .tabbar>details{flex:1;display:flex;margin:0}
  .tabbar>details>summary::-webkit-details-marker{display:none}
  .tabbar svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .tabbar .on{color:var(--accent-dark)}
  .tabbar .badge-n{position:absolute;top:0;left:55%}
  .tabbar a:hover{text-decoration:none}
  .foglio-in{position:fixed;left:8px;right:8px;bottom:72px;background:var(--card);border:1px solid var(--line);border-radius:18px;
    box-shadow:var(--shadow-lg);padding:10px;max-height:70vh;overflow:auto;display:flex;flex-direction:column}
  .foglio-in a{display:flex;gap:10px;align-items:center;padding:12px;border-radius:12px;color:var(--ink);font-size:1rem}
  .foglio-tit{font-size:.75rem;color:var(--muted);padding:4px 12px 6px}
}
.schede{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line);margin:-6px 0 18px}
.schede::-webkit-scrollbar{display:none}
.schede a{padding:9px 14px;color:var(--muted);font-size:.9rem;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}
.schede a.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}
.schede a:hover{text-decoration:none;color:var(--ink)}
.filtro-doc input{width:100%;margin-bottom:10px}
.chips-cat{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-bottom:12px;padding-bottom:2px}
.chips-cat::-webkit-scrollbar{display:none}
.chips-cat a{white-space:nowrap;padding:4px 11px;border-radius:999px;border:1.5px solid var(--line);background:var(--card);font-size:.8rem;color:var(--ink-soft)}
.chips-cat a span{color:var(--muted);font-size:.72rem}
.chips-cat a.on{border-color:var(--ink-soft);color:var(--ink)}
.chips-cat a:hover{text-decoration:none}
dl.dati{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:0 0 12px}
dl.dati dt{color:var(--muted);font-size:.85rem}dl.dati dd{margin:0}
.warn-t{color:var(--warn);font-size:.74rem;margin-left:6px}
details.correggi>summary{list-style:none;display:inline-block}details.correggi>summary::-webkit-details-marker{display:none}
details.correggi[open]>summary{display:none}
section.piegabile>h2{cursor:pointer;display:flex;align-items:center;gap:8px}
section.piegabile>h2::after{content:"▾";font-size:.8rem;color:var(--muted);transition:transform .15s}
section.piegabile.chiusa>h2::after{transform:rotate(-90deg)}
section.piegabile.chiusa>h2{margin-bottom:0}
section.piegabile.chiusa>*:not(h2){display:none}
section.setup{border:1.5px dashed var(--accent);background:color-mix(in srgb,var(--accent-soft) 40%,var(--card));margin-top:16px}
.setup-passo{display:block;padding:6px 0;color:var(--ink)}
/* v4.8: righe cartelle e anteprima su telefono */
@media(max-width:640px){
  .fonte-row{flex-wrap:wrap;gap:6px 10px}
  .fonte-row .main{flex:1 1 calc(100% - 90px);min-width:0}
  .fonte-row>form,.fonte-row>details{flex:none}
  .fonte-row .main .t,.fonte-row .main .s{word-break:break-word}
  .doc-grid .anteprima{order:2;height:45vh}
}
.risposte-ovunque .da-spazio{font-size:.8rem;font-weight:600;margin:14px 0 -4px;color:var(--muted)}
.risposte-ovunque .da-spazio a{color:inherit}

/* v4.9: su telefono bottoni e campi più comodi da toccare (almeno 44px), testo dei campi a 16px (niente zoom su iPhone) */
@media(max-width:640px){
  button,.btn,summary.btn{min-height:44px;padding:10px 16px}
  .azioni button,.azioni .btn,.azioni summary.btn{min-width:44px}
  .icon-btn{min-width:44px;min-height:44px}
  input,select,textarea{font-size:16px;min-height:44px}
  input[type=checkbox],input[type=radio]{min-height:0;width:22px;height:22px}
  .chips-cat a,.chip,.filtri label{min-height:36px;display:inline-flex;align-items:center}
  .menu-in a,.foglio-in a{padding-top:12px;padding-bottom:12px}
  .spunta{width:30px;height:30px}
}
details.menu.sposta .menu-in{left:0;right:auto;top:36px;width:min(300px,86vw)}

/* v4.10 — sul telefono ogni menu a tendina (Elimina, Sposta, Prenotato…) si apre come foglio dal basso:
   non esce mai dallo schermo, ha i bottoni larghi e si chiude toccando fuori */
.show-m{display:none}
.sotto-tit{font-size:.84rem;color:var(--muted);margin-top:2px}
.row .s.sintesi{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:640px){
  .show-m{display:inline}
  details.menu:not(.utente):not(.spazi-menu):not(.io-menu)>.menu-in{position:fixed;left:8px;right:8px;top:auto;
    bottom:calc(76px + env(safe-area-inset-bottom));width:auto;max-height:70vh;overflow:auto;z-index:70;
    border-radius:18px;padding:14px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:10px}
  details.menu:not(.utente):not(.spazi-menu):not(.io-menu)[open]::after{content:"";position:fixed;inset:0;
    background:rgba(20,16,12,.38);z-index:65}
  details.menu:not(.utente):not(.spazi-menu):not(.io-menu)>.menu-in button,details.menu:not(.utente):not(.spazi-menu):not(.io-menu)>.menu-in .btn{width:100%}
  details.menu.elimina .menu-in button{padding:12px 14px}
}
/* v4.10 — dettagli */
.intro-tab{font-size:.86rem;color:var(--muted);margin:-8px 0 16px}
.chips-cat a span{margin-left:4px}
.apri-m{display:none}
.azioni-doc{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap;align-items:center}
.azioni-processo{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap;align-items:center}
.azioni-processo details[open]{flex-basis:100%}
.schede{mask-image:linear-gradient(90deg,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent)}
@media(max-width:640px){
  .ask{padding:12px}
  .ask form{flex-direction:row}
  .ask input{padding:10px 12px;min-width:0;flex:1}
  .ask button{width:auto;flex:none;padding:10px 14px}
  .head>.doc-ic{display:none}
  .doc-grid .anteprima:has(iframe){height:auto;border:0;box-shadow:none;background:none;overflow:visible}
  .anteprima iframe{display:none}
  .apri-m{display:flex;flex-direction:column;gap:2px;padding:16px 18px;background:var(--card);border:1px solid var(--line);
    border-radius:var(--r);box-shadow:var(--shadow);color:var(--ink)}
  .apri-m span{font-size:.8rem;color:var(--muted)}
  .azioni-doc{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
  .azioni-doc>*,.azioni-doc form button,.azioni-doc details>summary{width:100%;justify-content:center;text-align:center}
  .azioni-doc details>summary{display:flex;align-items:center}
  .filtri select{margin-top:0}
}
@media(max-width:640px){
  .doc-grid .anteprima:has(iframe){order:0}
  .azioni-doc button,.azioni-doc summary{white-space:nowrap;font-size:.85rem;padding:10px 6px;border:1px solid var(--line);
    background:var(--card);border-radius:var(--r-sm);min-height:44px}
}
@media(min-width:641px){details.menu.su>.menu-in{top:auto;bottom:calc(100% + 6px)}}
.list .row .t{font-weight:600}
/* v4.14 — miniature delle pagine con ↻ */
.col-anteprima{min-width:0}
.pagine{display:flex;gap:10px;overflow-x:auto;padding:12px 2px 4px;scrollbar-width:thin}
.pagine figure{margin:0;flex:none;width:120px;text-align:center}
.pagine img{width:120px;height:150px;object-fit:contain;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm)}
.pagine figcaption{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.75rem;color:var(--muted);margin-top:4px}
.pagine figcaption form{margin:0}
.pagine button.ruota{padding:4px 8px;font-size:.8rem;min-height:0}
@media(max-width:640px){
  .doc-grid .col-anteprima{order:0}
  .pagine button.ruota{min-height:36px}
}
.nota-smistamento{background:var(--cream-2);border-radius:var(--r-sm);padding:8px 12px;margin:-4px 0 12px}
@media(min-width:901px){.col-anteprima .anteprima{height:64vh}}

/* v4.15 — sul telefono l'anteprima è l'immagine della prima pagina; tocco → Drive */
@media(max-width:640px){
  .apri-m{padding:10px;gap:8px;align-items:center}
  .apri-m img{width:100%;max-height:60vh;object-fit:contain;border-radius:var(--r-sm);background:var(--cream-2)}
  .apri-m span{font-size:.85rem;color:var(--accent-dark)}
}
/* v4.16 — spazio corrente accanto al logo, con menu per cambiarlo */
details.spazio-corrente{flex:none}
details.spazio-corrente summary{gap:8px;background:var(--cream-2);border:1px solid var(--line);font-size:.92rem}
details.spazio-corrente summary.on{background:var(--card)}
details.spazio-corrente summary b{font-weight:600;color:var(--ink);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
details.spazio-corrente .menu-in a.on{background:var(--cream-2);font-weight:600}
@media(max-width:640px){
  .top-in{justify-content:space-between}
  details.spazio-corrente .menu-in{position:absolute;left:auto;right:0;top:44px;width:min(280px,86vw)}
  details.spazio-corrente summary b{max-width:150px}
}
/* v4.16 — fascicoli: selezione nella lista, barra in basso, chips sul documento */
.filtro-riga{display:flex;gap:8px;align-items:flex-start}
.filtro-riga .filtro-doc{flex:1;min-width:0}
.seleziona-btn{flex:none;white-space:nowrap}
.sel{display:none;width:22px;height:22px;flex:none;margin:0}
body.seleziona .sel{display:block}
body.seleziona .list a.row{cursor:pointer}
.barra-sel{display:none}
body.seleziona .barra-sel{display:flex;position:fixed;left:50%;transform:translateX(-50%);bottom:18px;z-index:80;
  background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);padding:10px 12px;
  gap:8px;align-items:center;flex-wrap:wrap;width:min(760px,calc(100vw - 16px))}
.barra-sel select,.barra-sel input{width:auto;flex:1;min-width:140px}
.chips-fasc{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.chips-fasc a.tag{text-decoration:none}
details.fasc-agg summary{cursor:pointer}
details.fasc-agg .menu-in{left:0;right:auto;top:30px;width:min(300px,86vw);display:flex;flex-direction:column;gap:8px}
@media(max-width:640px){ body.seleziona .barra-sel{bottom:calc(76px + env(safe-area-inset-bottom))} }

/* v4.17 */
.head-spazio{margin-bottom:10px}
.smistare-row{flex-wrap:wrap}
@media(max-width:640px){
  .smistare-row form{flex-basis:100%;display:flex;gap:6px;flex-wrap:wrap}
  .smistare-row form select{flex:1 1 100%;min-width:0}
  .smistare-row form button{flex:1}
}
.bozza{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:4px}
.bozza button{padding:6px 12px;font-size:.84rem}
.ok-t{color:var(--green)}
.pagine figcaption form{display:flex;gap:4px}
/* v4.18 — sezione e spazio in alto */
details.sezione-corrente{flex:none}
details.sezione-corrente summary{gap:6px;background:var(--cream-2);border:1px solid var(--line);font-size:.92rem}
details.sezione-corrente summary b{font-weight:600;color:var(--ink)}
details.sezione-corrente .menu-in a.on{background:var(--cream-2);font-weight:600}
details.spazi-menu .menu-in a.sep{border-top:1px solid var(--line);margin-top:4px;padding-top:10px}
.tab-emoji{font-size:1.25rem;line-height:22px;height:22px}
/* v4.19 — profilo in alto a destra, voci del profilo */
.profilo-ic{margin-left:auto;flex:none;display:flex;align-items:center}
.profilo-ic img{width:34px;height:34px;border-radius:50%;object-fit:cover;display:block;border:1px solid var(--line)}
.profilo-ic:hover{text-decoration:none}
.foto-profilo{width:56px;height:56px;border-radius:50%;object-fit:cover}
.voci-profilo{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin-bottom:16px}
.voci-profilo a.card{padding:14px 16px;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:8px;margin:0}
.voci-profilo a.card:hover{border-color:var(--accent)}
.admin-profilo{margin-bottom:16px}
.ruota-uno{display:flex;gap:6px;align-items:center;justify-content:flex-end;margin-top:8px}

.ic-in svg{width:16px;height:16px;vertical-align:-3px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.elimina-2{display:inline-flex;gap:6px;flex-wrap:wrap}
.elimina-2 form{margin:0}
.smistare-anteprima{flex:none;display:block;width:64px;height:84px;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#F4EDE4}
.smistare-anteprima img{width:100%;height:100%;object-fit:cover;display:block}
.elimina-2 button{border:1px solid color-mix(in srgb,var(--err) 35%,transparent);background:transparent;color:var(--err);border-radius:999px;padding:6px 12px;white-space:nowrap}
.elimina-2 button:hover{background:color-mix(in srgb,var(--err) 8%,transparent)}
@media (max-width:640px){
  .rev-row{flex-wrap:wrap}
  .rev-row>a{flex:1 1 100%!important}
  .rev-row .elimina-2{flex:1 1 100%;justify-content:flex-end}
  .rev-row .elimina-2 form{flex:1}
  .rev-row .elimina-2 button{width:100%;min-height:40px}
}
@media (max-width:640px){
  .elimina-2{flex:1 1 100%;width:100%}
  .elimina-2 form{flex:1}
  .elimina-2 button{width:100%;min-height:40px}
}
@media (max-width:640px){
  .azioni-doc{grid-template-columns:1fr 1fr}
  .azioni-doc .elimina-2{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .azioni-doc .elimina-2 button{border-color:color-mix(in srgb,var(--err) 35%,transparent);color:var(--err)}
}
input[type=checkbox],input[type=radio]{width:auto;flex:none}
.apri-sel{display:none;flex:none}
body.seleziona .apri-sel{display:inline-flex}
.cestino-btn{display:inline-grid;place-items:center;padding:6px 10px}
.cestino-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cestino-btn:hover{color:var(--err)}
.modi-email{display:grid;gap:6px}
.totali-costi{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}
.totali-costi .card{padding:14px 16px}
.num.grande{font-size:1.5rem;display:block;margin-top:4px}
@media(max-width:640px){.totali-costi{grid-template-columns:1fr 1fr 1fr;gap:8px}.totali-costi .card{padding:10px}.num.grande{font-size:1.1rem}}
.pp-riga{display:flex;gap:14px;align-items:flex-start}
.pp-anteprima{flex:none;width:84px;height:110px;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#F4EDE4;display:block}
.pp-anteprima img{width:100%;height:100%;object-fit:cover;display:block}
button.verde,.btn.verde{background:#2E7D4F;border-color:#2E7D4F;color:#fff}
button.verde:hover{filter:brightness(1.08)}
/* v4.24 — azioni: icone ✓ 🗑 ⋯, menu, avviso */
.azioni{display:flex;gap:6px;align-items:center;flex-wrap:nowrap}
.icona-az{width:38px;height:38px;min-width:38px;padding:0;display:inline-grid;place-items:center;border-radius:50%;
  background:transparent;border:1px solid var(--line);color:var(--ink-soft);font-size:1.05rem;line-height:1}
.icona-az svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fatto-az{color:#2E7D4F;border-color:#9CC9AE}.fatto-az:hover{background:#2E7D4F;color:#fff;border-color:#2E7D4F}
.cestino-btn.icona-az:hover{color:var(--err);border-color:var(--err);background:transparent}
details.menu.puntini>summary{font-size:1.2rem;letter-spacing:1px}
.voci-menu{gap:4px!important;padding:8px!important;width:min(290px,90vw)!important}
.voci-menu>button,.voci-menu>a.btn,.voci-menu>form:not(.fasc-menu)>button{display:block;font-size:.95rem;width:100%;text-align:left;background:transparent;border:none;
  border-radius:10px;padding:10px 12px;color:var(--ink);font-weight:500;text-decoration:none;box-shadow:none}
.voci-menu>button:hover,.voci-menu>a.btn:hover,.voci-menu>form:not(.fasc-menu)>button:hover{background:var(--cream)}
.voci-menu hr{border:none;border-top:1px solid var(--line);margin:4px 0}
.t-link{color:inherit;text-decoration:none}.t-link:hover{text-decoration:underline}
.chi{white-space:nowrap}
.chip-mie{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid var(--line);border-radius:999px;font-size:.86rem;cursor:pointer}
.chip-mie.on{background:var(--ink);color:var(--card);border-color:var(--ink)}
#avviso-aria{position:fixed;left:50%;bottom:24px;transform:translate(-50%,40px);opacity:0;transition:.25s;z-index:200;
  background:var(--ink);color:var(--card);padding:10px 16px;border-radius:999px;font-size:.9rem;max-width:90vw;text-align:center}
#avviso-aria.su{opacity:1;transform:translate(-50%,0)}
@media(max-width:640px){#avviso-aria{bottom:calc(86px + env(safe-area-inset-bottom))}
  .task .azioni{flex-wrap:wrap;justify-content:flex-end}}
.barra-azione{display:flex;gap:8px;flex-wrap:wrap;margin:-6px 0 16px}
.bozza-testo{white-space:pre-wrap;font-family:inherit;font-size:.9rem;background:var(--cream);border:1px solid var(--line);border-radius:10px;padding:10px 12px;max-height:320px;overflow:auto}
fieldset.dettagli-tipo{border:1px dashed var(--line);border-radius:12px;padding:10px 14px;margin:12px 0 0}
.doc-riga{display:flex;align-items:center;gap:10px}
.doc-link{display:flex;gap:14px;align-items:center;flex:1;min-width:0;color:inherit;text-decoration:none}
.doc-riga .azioni .icona-az{text-decoration:none;font-size:1rem}
@media(max-width:640px){.doc-riga{padding-right:8px}.doc-riga .azioni{gap:4px}.doc-riga .icona-az{width:34px;height:34px;min-width:34px}}
.fasc-menu{display:flex;flex-direction:column;gap:6px;padding:4px 12px}
.fasc-menu select,.fasc-menu input{font-size:.9rem}
.sez-decidere{display:flex;align-items:center;gap:8px;margin:26px 0 6px;font-size:1.15rem}
.sez-decidere .n{font-size:.8rem;background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;padding:2px 9px;font-family:inherit}
.richiamo-decidere{display:block;padding:12px 16px;margin:12px 0;text-decoration:none;color:inherit;border:1px dashed var(--accent)}
@media(max-width:640px){
  .barra-doc{overflow-x:auto;flex-wrap:nowrap;margin-left:-16px;margin-right:-16px;padding:0 16px 4px;scrollbar-width:none}
  .barra-doc>*{flex:none;white-space:nowrap}
  .apri-m img{max-height:300px;object-fit:contain;width:100%}
}
.doc-link:hover{text-decoration:none}.doc-link:hover .t{text-decoration:underline}
.fonte-row{flex-wrap:nowrap}.fonte-row .main{min-width:0}
@media(max-width:640px){.fonte-row .main{flex:1 1 auto}}
@media(max-width:640px){details.menu>.menu-in.voci-menu{width:auto!important;left:8px;right:8px}}
.fasc-menu button.primary{align-self:flex-start}
/* v4.25 — serie */
.serie-lista{display:grid;gap:12px}
.serie-card>summary{list-style:none;cursor:pointer}.serie-card>summary::-webkit-details-marker{display:none}
.serie-testa{display:flex;gap:10px;align-items:flex-start}.serie-testa .main{flex:1;min-width:0}
.serie-testa .t{font-weight:600}.serie-testa .s{font-size:.84rem;color:var(--muted)}
.serie-numeri{display:grid;grid-template-columns:auto auto 1fr;gap:18px;align-items:end;margin-top:10px}
.serie-numeri>div{display:flex;flex-direction:column;gap:2px}
.serie-trend{color:var(--accent)}.spark{display:block;max-width:100%}
.serie-dettaglio{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}
.tab-valori{width:100%;border-collapse:collapse;font-size:.9rem}
.tab-valori th{text-align:left;font-weight:500;color:var(--muted);font-size:.8rem}
.tab-valori td,.tab-valori th{padding:6px 6px;border-top:1px solid var(--line)}
@media(max-width:640px){.serie-numeri{grid-template-columns:1fr 1fr}.serie-trend{grid-column:1/-1}}
/* aiuto */
.aiuto-ic{width:30px;height:30px;border-radius:50%;display:inline-grid;place-items:center;border:1px solid var(--line);
  color:var(--ink-soft);text-decoration:none;font-weight:700;margin-left:auto;margin-right:8px;font-size:.9rem}
.aiuto-ic+.profilo-ic{margin-left:0}
.aiuto-schema{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.sch-riga{display:flex;gap:10px;justify-content:center;width:100%}
.sch-box{border:1px solid var(--line);border-radius:14px;padding:10px 14px;background:var(--card);display:flex;flex-direction:column;
  gap:2px;min-width:150px;max-width:260px;flex:1}
.sch-box span{font-size:.8rem;color:var(--muted)}
.sch-doc{border-color:var(--accent);background:var(--accent-soft)}.sch-dec{border-style:dashed;border-color:var(--accent)}
.sch-freccia{font-size:.8rem;color:var(--muted)}
.sch-freccia.sch-tre{display:flex;justify-content:space-around;width:100%}
.aiuto-lista li{margin:6px 0}
@media(max-width:640px){.sch-riga.sch-tre{flex-direction:column;align-items:center}.sch-freccia.sch-tre{display:none}.sch-box{width:100%}}
/* v4.26 — sezioni sullo stesso livello */
.sezioni{display:flex;gap:2px;align-items:center;margin-left:8px}
.sezioni a{padding:7px 12px;border-radius:999px;color:var(--ink-soft);text-decoration:none;font-weight:500;font-size:.93rem;white-space:nowrap}
.sezioni a:hover{background:var(--cream-2,var(--accent-soft))}
.sezioni a.on{background:var(--ink);color:var(--card)}
@media(max-width:1100px) and (min-width:641px){.sezioni a{padding:6px 8px;font-size:.86rem}.top-in .nav a{font-size:.86rem}}
.tabbar.tab6 a span:not(.tab-emoji){font-size:.66rem}
.tabbar.tab6 .tab-emoji{font-size:1.05rem;line-height:22px}
@media(max-width:640px){.sezioni{display:none!important}}
.indietro{width:34px;height:34px;min-width:34px;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--card);
  color:var(--ink);font-size:1.5rem;line-height:1;display:inline-grid;place-items:center;margin-right:6px;cursor:pointer}
.indietro:hover{background:var(--accent-soft)}
/* v4.28 — visore dei documenti dentro l'app, «✕» nei menu */
html.visore-aperto,html.visore-aperto body{overflow:hidden}
#visore{position:fixed;inset:0;z-index:200;background:#1d1915;display:flex;flex-direction:column}
#visore .visore-testa{display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top)) 12px 10px;
  background:#1d1915;color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}
#visore .visore-tit{flex:1;min-width:0;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#visore .visore-scarica{color:#fff;background:transparent;border-color:rgba(255,255,255,.3)}
#visore .visore-x{width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:#1d1915;font-size:1.25rem;
  font-weight:700;padding:0;flex:none;cursor:pointer}
#visore .visore-corpo{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;padding:10px 10px calc(20px + env(safe-area-inset-bottom));
  display:flex;flex-direction:column;align-items:center;gap:10px}
#visore .visore-corpo img{width:100%;max-width:1000px;height:auto;background:#fff;border-radius:4px}
#visore .visore-vuoto{color:#eee;margin-top:30vh;text-align:center;padding:0 20px}
.menu-in>.menu-x{position:absolute!important;top:6px;right:6px;width:32px!important;height:32px!important;min-height:0!important;
  padding:0!important;border-radius:50%!important;border:1px solid var(--line);background:var(--card);color:var(--ink-soft);
  font-size:1rem;line-height:1;z-index:2;flex:none;display:flex;align-items:center;justify-content:center}
details.menu:not(.utente):not(.spazi-menu):not(.io-menu)>.menu-in{padding-top:44px!important}
@media(max-width:640px){
  details.menu:not(.utente):not(.spazi-menu):not(.io-menu)>.menu-in{padding-top:56px!important}
  details.menu:not(.utente):not(.spazi-menu):not(.io-menu)>.menu-in>.menu-x{top:10px;right:10px;width:40px!important;height:40px!important;font-size:1.15rem}
}
.motivo-rev{color:var(--warn);font-size:.82rem}
.buone-t{color:var(--green)}
/* sul computer un menu ⋯ aperto non viene più tagliato dal bordo della lista (si apriva «dietro» alle schede sopra) */
.list:has(details.menu[open]){overflow:visible}
.list:has(details.menu[open]) .row:has(details.menu[open]){position:relative;z-index:25}
/* v4.30 — selezione con gli stessi comandi del menu, decidere in un tocco, visore con i comandi */
body.seleziona{padding-bottom:220px}
.row.scelta{background:var(--cream-2)}
.row>.sel{align-self:center;margin-right:2px}
.barra-sel{flex-direction:column;align-items:stretch!important}
.barra-sel-testa{display:flex;align-items:center;gap:10px}
.barra-sel-testa .sel-x{position:static!important;margin-left:auto}
.sel-comandi{margin:0}
.sel-gruppo{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sel-cosa{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);flex:1 1 100%}
.sel-gruppo>button,.sel-gruppo .sel-piu>summary{padding:7px 12px;font-size:.88rem}
details.sel-piu{position:relative}details.sel-piu>summary{list-style:none;cursor:pointer}
details.sel-piu>summary::-webkit-details-marker{display:none}
details.sel-piu[open]{flex:1 1 100%}
.sel-campo{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.sel-campo select,.sel-campo input{flex:1;min-width:140px;width:auto}
@media(max-width:640px){ .sel-gruppo>button{flex:1 1 auto} }
/* cosa ha capito Arianna: nero sicuro, rosso dubbio */
.capiti{display:inline-flex;flex-wrap:wrap;gap:4px 10px}
.capiti .dato{color:var(--ink)}
.capiti .dato.dubbio,.dubbio-t{color:var(--err);font-weight:600}
.capiti.grande{gap:8px 18px;font-size:1rem}
.capiti.grande .dato small{display:block;font-size:.68rem;font-weight:400;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.capiti-riga{white-space:normal!important}
.rev-row{align-items:stretch}
.rev-corpo{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.rev-corpo .doc-link{display:flex;gap:12px;align-items:flex-start;text-decoration:none;color:inherit}
.rev-tasti{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
form.decidi{display:flex;gap:6px;flex-wrap:wrap;margin:0}
form.decidi button{padding:6px 12px;font-size:.86rem}
form.decidi.grande button{padding:10px 16px;font-size:.95rem}
@media(max-width:640px){ form.decidi{flex:1} form.decidi button{flex:1 1 auto;min-height:40px} }
.card.decisione{border-color:var(--warn);background:var(--warn-soft);display:flex;flex-direction:column;gap:12px;margin-bottom:12px}
.decisione-testa{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.card.decisione .capito{background:var(--card);border-radius:var(--r-sm);padding:10px 12px}
/* visore: i comandi subito sotto il titolo */
#visore .visore-comandi{display:flex;gap:6px;padding:8px 12px;overflow-x:auto;background:#26211c;border-bottom:1px solid rgba(255,255,255,.1)}
#visore .visore-comandi[hidden]{display:none}
#visore .visore-comandi button,#visore .visore-comandi .btn{background:transparent;color:#fff;border-color:rgba(255,255,255,.3);
  white-space:nowrap;padding:7px 12px;font-size:.88rem;flex:none}
.flash.avviso-top{margin-bottom:14px}
[hidden]{display:none!important}
/* v4.31 — testata: 🔍 al posto dei riquadri «Chiedi», ? solo sul computer, spazio più compatto sul telefono */
.cerca-ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.cerca-ic + .aiuto-ic{margin-left:0}
@media(max-width:640px){
  .top-in{gap:6px}
  details.spazio-corrente summary{padding:5px 9px;font-size:.88rem}
  details.spazio-corrente summary b{max-width:96px}
  .aiuto-ic{width:34px;height:34px;margin-right:4px}
}
.head .tit{flex:1;min-width:0}
.head-azioni{display:flex;gap:8px;align-items:center;margin-left:auto;flex:none}
.head{margin-bottom:16px}
details.ricorrenti{margin-top:22px}
/* schede (Da decidere) */
.schede{display:flex;gap:6px;overflow-x:auto;margin:0 0 14px;padding-bottom:2px;scrollbar-width:none}
.schede::-webkit-scrollbar{display:none}
.schede a{flex:none;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink-soft);
  text-decoration:none;font-size:.9rem;white-space:nowrap}
.schede a.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.schede a .n{font-size:.78rem;opacity:.8;margin-left:2px}
.schede{border-bottom:0;mask-image:none;-webkit-mask-image:none}
.schede a{margin-bottom:0}
.schede a.on{font-weight:600}
/* anteprima del documento: immagine della prima pagina (niente PDF incorporato), un tocco apre il visore */
.anteprima:has(.anteprima-pag){height:auto;max-height:78vh;position:sticky}
.anteprima-pag{display:block;position:relative;background:var(--cream-2)}
.anteprima-pag img{display:block;width:100%;height:auto!important;max-height:78vh;object-fit:contain}
.anteprima-tocca{position:absolute;right:12px;bottom:12px;background:var(--ink);color:var(--cream);border-radius:999px;padding:6px 12px;font-size:.85rem}
@media(max-width:900px){.anteprima:has(.anteprima-pag){position:static}.anteprima-pag img{max-height:55vh}}
@media(max-width:640px){ .aiuto-ic.hide-m{display:none!important} }
/* 7 linguette: un po' più strette */
.tabbar.tab7 a{padding-left:0;padding-right:0;min-width:0}
.tabbar.tab7 a span:not(.tab-emoji){font-size:.6rem;letter-spacing:-.01em}
.tabbar.tab7 .tab-emoji{font-size:1.02rem;line-height:22px}
.tabbar.tab7 svg{width:21px;height:21px}
/* farmaci */
.farmaco .scorta{display:flex;align-items:center;gap:8px;margin-top:4px}
.barra-scorta{flex:0 0 90px;height:6px;border-radius:999px;background:var(--cream-2);overflow:hidden}
.barra-scorta i{display:block;height:100%;border-radius:999px;background:var(--green)}
.barra-scorta.giallo i{background:var(--warn)}.barra-scorta.rosso i{background:var(--err)}
.farmaco .giorni.rosso{color:var(--err);font-weight:600}.farmaco .giorni.giallo{color:var(--warn);font-weight:600}
.gruppo-farmaci{margin:18px 0 8px;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.proposta-farmaco{border-left:3px solid var(--accent)}
.farmaco .scorta{flex-wrap:wrap;white-space:normal!important}
.farmaco .scorta span{white-space:nowrap}

.sotto-menu{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--line,#e5ddd3);border-radius:10px;margin:2px 0 6px}
.sotto-menu[hidden]{display:none}.sotto-testa{display:flex;align-items:center;justify-content:space-between}
.sotto-menu textarea{width:100%;font:inherit}
.nre{font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap}
.sotto-testa .menu-x,.sotto-testa button{width:auto!important;flex:0 0 auto;padding:4px 10px;min-height:0;border:0;background:none}
.anteprima-testo{display:block;text-decoration:none;color:inherit}
.anteprima-testo pre{margin:0;padding:14px 16px;max-height:520px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:.82rem;line-height:1.45;background:#fff;border-radius:10px}
.msg-pagina{margin:6px 0 10px}.msg-pagina>button{background:none;border:1px solid var(--line,#e5ddd3);border-radius:999px;padding:6px 14px}
.msg-pagina .sotto-menu{max-width:520px;background:#fff}
.natura-scelta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0 2px}
.rev-tasti.quattro{display:flex;gap:6px;align-items:center;margin:0}
.cal-form{display:flex;flex-direction:column;gap:6px}.cal-form label{display:flex;flex-direction:column;gap:2px}
.farmaco-scelta{cursor:pointer;align-items:center}.farmaco-scelta input{width:auto;margin-right:6px}
.icona-az:disabled,button:disabled{opacity:.35;cursor:not-allowed}
.registro-giorno{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--soft,#6b625a);margin:18px 0 6px}
.registro-voce{display:grid;grid-template-columns:44px 22px 1fr;gap:6px;padding:7px 0;border-bottom:1px solid var(--line,#eee);font-size:.9rem}
.registro-voce .ora{color:var(--soft,#6b625a);font-variant-numeric:tabular-nums}.registro-voce a{color:inherit;text-decoration:none}
/* v4.38 — icone più grandi, senza contorno, con lo sfondo che dice cosa fanno */
.icona-az{width:46px;height:46px;min-width:46px;border:none!important;font-size:1.3rem;box-shadow:none;
  background:#EEEAE5;color:#3C3631}
.icona-az svg{width:22px;height:22px}
.conferma-az,.fatto-az{background:#D6EFD9!important;color:#1F6B3A!important}
.az-mod{background:#FBEFC0!important;color:#7A5A00!important}
.cestino-btn.icona-az,.icona-az.cestino-btn{background:#F8D6D3!important;color:#A3271E!important}
.az-vedi{background:#D5E8F7!important;color:#1D5A8C!important}
details.puntini>summary.icona-az,.icona-az[aria-label="Altro"],.icona-az[aria-label="Modifica"]{background:#E6E3DF!important;color:#3C3631!important}
.icona-az:hover{filter:brightness(.95)}
.fatto-az:hover,.conferma-az:hover{background:#BFE5C5!important;color:#1F6B3A!important}
.cestino-btn.icona-az:hover{background:#F2BFBA!important}
@media(max-width:640px){.icona-az,.doc-riga .icona-az{width:42px;height:42px;min-width:42px;font-size:1.2rem}}
#processo form.inline{flex-wrap:wrap}#processo form.inline select{flex:1 1 180px;min-width:0}
.icona-az,.icona-az.conferma-az,.icona-az.fatto-az,.icona-az.cestino-btn{font-size:1.3rem!important;line-height:1}
.barra-azione,.barra-doc{flex-wrap:wrap}
/* v4.38 — pagine di dettaglio a «scheda»: tasti grandi con lo stesso colore delle icone */
.tasto{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:0 18px;border-radius:14px;
  border:none!important;font-weight:600;font-size:.98rem;text-decoration:none;cursor:pointer;box-shadow:none;color:#3C3631;background:#EEEAE5}
.tasto-ok{background:#D6EFD9;color:#1F6B3A}.tasto-mod{background:#FBEFC0;color:#7A5A00}.tasto-del{background:#F8D6D3;color:#A3271E}
.tasto-vedi{background:#D5E8F7;color:#1D5A8C}.tasto-altro{background:#E6E3DF;color:#3C3631;min-width:46px;padding:0 14px;font-size:1.3rem}
.tasto:hover{filter:brightness(.96)}
.tasto-azione{background:#2C5548;color:#fff;font-size:1.05rem;min-height:52px;width:100%}
.tasti-pagina{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;align-items:center}
.tasti-pagina details.menu{position:relative}.tasti-pagina details.menu>summary{list-style:none}
.scheda-riga{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:start}
.anteprima-mini{max-height:150px;overflow:hidden;border-radius:10px}.anteprima-mini img{width:100%;display:block}
.anteprima-mini .anteprima-tocca,.anteprima-mini .vuoto b{display:none}
.anteprima-mini .anteprima-testo pre{max-height:150px;font-size:.6rem;padding:6px}
.in-breve{margin:0 0 8px;font-size:1.02rem;line-height:1.45}
.dati-semplici{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:0;font-size:.92rem}
.dati-semplici dt{color:var(--ink-soft)}.dati-semplici dd{margin:0}
.dettagli-tecnici>summary{cursor:pointer}.dettagli-tecnici[open]>summary{margin-bottom:10px}
@media(max-width:640px){.scheda-riga{grid-template-columns:84px 1fr}.anteprima-mini{max-height:120px}}
.da-doc{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit;margin-bottom:12px}
.da-doc img{width:56px;height:72px;object-fit:cover;object-position:top;border-radius:8px;background:#fff;border:1px solid var(--line)}
.scheda-az .tasto-azione{margin:10px 0 2px}
.passi-scelta{margin-top:16px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
#modifica>summary{cursor:pointer}#modifica[open]>summary{margin-bottom:12px}
.az-doc{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.az-doc .main{flex:1;min-width:0}.az-doc a{color:inherit;text-decoration:none}.az-doc.chiusa{opacity:.6}
.az-doc .icona-az{width:40px;height:40px;min-width:40px;font-size:1.1rem!important}
/* v4.39 — disegni delle icone più grandi dentro il cerchio; 💬 commenti in lilla */
.icona-az,.icona-az.conferma-az,.icona-az.fatto-az,.icona-az.cestino-btn{font-size:1.6rem!important;font-weight:700}
.icona-az svg{width:26px;height:26px}
details.puntini>summary.icona-az{font-size:1.7rem!important;letter-spacing:0}
.tasto{font-size:1.02rem}.tasto-altro{font-size:1.6rem}
@media(max-width:640px){.icona-az,.icona-az.conferma-az,.icona-az.fatto-az,.icona-az.cestino-btn,.doc-riga .icona-az{font-size:1.45rem!important}}
.az-commenti,.tasto-commenti{background:#E9E1F7!important;color:#5B3F8C!important;position:relative}
.az-commenti{font-size:1.3rem!important}
.n-commenti{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#5B3F8C;color:#fff;
  font-size:.72rem;font-weight:700;line-height:20px;text-align:center;font-family:inherit}
.tasto-commenti .n-commenti{position:static;margin-left:2px}
.serie-testa .az-commenti{margin-left:6px;flex:none}
dialog.dialogo-commenti{border:none;border-radius:18px;padding:0;width:min(560px,94vw);max-height:84vh;background:var(--cream,#FBF7F2);
  box-shadow:0 20px 60px rgba(0,0,0,.25)}
dialog.dialogo-commenti::backdrop{background:rgba(25,21,18,.35)}
.dc-testa{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line,#e5ddd3);position:sticky;top:0;background:inherit}
.dc-testa .menu-x{border:none;background:none;font-size:1.1rem}
.dc-corpo{padding:14px 18px 18px;overflow:auto;max-height:calc(84vh - 56px)}
.commento-nuovo{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.commento-nuovo textarea{width:100%;font:inherit}
.commento-nuovo button{align-self:flex-start}
.commento{display:flex;gap:10px;padding:12px 0;border-top:1px solid var(--line,#e5ddd3)}
.av-c{flex:none;width:34px;height:34px;border-radius:50%;background:#E9E1F7;color:#5B3F8C;display:grid;place-items:center;font-weight:700;font-size:.8rem}
.commento-corpo{flex:1;min-width:0}.commento-testa{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.commento-testo{white-space:pre-wrap;margin-top:2px}
.link-x{background:none;border:none;padding:0;color:var(--err,#A3271E);cursor:pointer;margin-left:auto}
.task .s .chi{display:inline}
details.puntini>summary.icona-az{padding-bottom:8px}
.registro-filtri{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:10px 0}
.registro-filtri input[type=search]{flex:1 1 220px;min-width:0}
.registro-voce .chi{font-weight:600}.trovati{margin:10px 0}
.commento-allegato{display:inline-block;margin-top:4px}
.serie-verifica{margin-top:14px;padding:10px 12px;border-radius:10px;background:var(--bg2,#f6f3ee)}
.serie-verifica h3{margin:0 0 4px}.serie-verifica .sugg{margin-top:8px;font-size:.9rem}
.serie-verifica .sugg ul{margin:4px 0 6px 18px;padding:0}.inline-f{display:inline;margin:0 0 0 6px}
/* v4.45 commenti nuovi, campanella, 📌 da fare */
.campanella{position:relative}.campanella>summary{list-style:none;cursor:pointer;position:relative}
.campanella>summary::-webkit-details-marker{display:none}
.badge-campana{position:absolute;top:-4px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#d93636;color:#fff;font-size:.7rem;line-height:18px;text-align:center}
.novita-menu{right:0;left:auto;width:min(360px,92vw);max-height:70vh;overflow:auto;padding:10px}
details.menu.campanella:not(.utente):not(.spazi-menu)>.menu-in{padding:10px!important}
.novita-voce{display:grid;grid-template-columns:26px 1fr;gap:6px;padding:8px 6px;border-bottom:1px solid var(--line,#eee);color:inherit;text-decoration:none;font-size:.88rem}
.novita-voce:hover{background:var(--bg2,#f6f3ee)}.nv-testo{display:block;color:var(--soft,#6b625a)}
.novita-fondo{margin:6px 0 0;text-align:right}.vedi-tutti{display:block;text-align:center;margin-top:6px}
.commento.nuovo{background:#eef4ff;border-radius:10px;padding:6px}
.tag-nuovo{background:#2f6fde;color:#fff;border-radius:6px;padding:0 6px;font-size:.7rem;margin-left:4px}
.commento-azione{display:inline-block;margin-top:4px;padding:2px 8px;border-radius:8px;background:#fff6d6;color:inherit;text-decoration:none}
.commento-azione.fatta{background:#e3f4e1;text-decoration:line-through}
.commento-dafare{margin-top:4px}.commento-dafare summary{cursor:pointer;color:#8a6d00;list-style:none;display:inline-block}
.commento-dafare form{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.riga-dafare{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.n-commenti.nuovi{background:#d93636;color:#fff}
@media(max-width:640px){
  details.menu.campanella:not(.utente):not(.spazi-menu)>.menu-in{position:absolute;left:auto;right:-96px;top:44px;bottom:auto;
    width:min(340px,94vw);max-height:70vh;padding:10px!important;display:block}
  details.menu.campanella:not(.utente):not(.spazi-menu)[open]::after{display:none}
}
/* v4.46 📅 data, ora e invito */
.tasto-cal{background:#dfeefb;color:#1f4f7a}
.data-ora{margin-top:14px;padding:12px;border-radius:12px;background:var(--bg2,#f6f3ee);display:flex;flex-direction:column;gap:8px}
.riga-dataora{display:flex;flex-wrap:wrap;gap:8px}.riga-dataora label{flex:0 1 auto}.riga-dataora .luogo{flex:1 1 220px}
.data-ora input[type=email]{max-width:360px}.data-ora button.primary{align-self:flex-start}
/* v4.46: «Da decidere» in testata non si taglia più (col 🔔 lo spazio è poco): sotto i 1300px diventa «Decidere» */
.top .nav{flex:0 0 auto;overflow:visible}
@media(max-width:1300px){.top .nav .nav-lungo{display:none}}
.top-in>.aiuto-ic,.top-in>.profilo-ic,.top-in>.campanella{flex-shrink:0}
@media(min-width:641px) and (max-width:1300px){.top-in{gap:8px}.sezioni a{padding-left:8px;padding-right:8px}}
/* v4.47 */
.task .data .ora-t{font-size:.78rem;font-weight:700;color:var(--acc,#b8562e);margin-top:2px;font-variant-numeric:tabular-nums}
.confronto{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 0}
.conf-card{display:flex;gap:8px;align-items:flex-start;padding:8px;border:1px solid var(--line,#e6e0d8);border-radius:10px;background:var(--card,#fff);color:inherit;text-decoration:none;min-width:0}
.conf-card:hover{border-color:var(--acc,#b8562e)}
.conf-card img{width:64px;height:84px;object-fit:cover;object-position:top;border-radius:6px;border:1px solid var(--line,#eee);flex-shrink:0}
.conf-noimg{width:64px;height:84px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;background:var(--bg2,#f6f3ee);border-radius:6px;flex-shrink:0}
.conf-t{font-size:.82rem;min-width:0;overflow-wrap:anywhere}
@media(max-width:520px){.confronto{grid-template-columns:1fr}}
/* v4.47: al telefono la testata non esce più dallo schermo (col 🔔): via la scritta «Arianna», icone più strette */
@media(max-width:640px){
  .top-in{gap:6px;padding-left:10px;padding-right:10px}
  .logo .hide-m{display:none}
  .top-in>.aiuto-ic,.top-in>.campanella>summary{width:34px;height:34px}
  .spazio-corrente>summary{max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
@media(max-width:360px){.top-in>.aiuto-ic[href^="/aiuto"]{display:none}}
/* v4.48 Oggi e ricerca unica */
.oggi{margin:10px 0 14px}.oggi h2{margin:0 0 6px;font-size:1.15rem}.oggi-testa{display:flex;align-items:center;gap:8px}
.oggi-riga{display:grid;grid-template-columns:52px 1fr;gap:8px;padding:7px 0;border-bottom:1px solid var(--line,#eee);color:inherit;text-decoration:none;align-items:baseline}
.oggi-riga:hover{background:var(--cream-2,#f6f3ee)}.oggi-ora{font-weight:700;font-variant-numeric:tabular-nums;color:var(--acc,#b8562e)}
.oggi-sotto{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:12px 0 2px}
.oggi-piede{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px}.oggi-link{display:inline-flex;gap:6px;align-items:center}
.cerca-trovati{margin:10px 0}.cerca-gruppo{margin:12px 0}.cerca-gruppo h3{font-size:.85rem;margin:0 0 4px;color:var(--muted)}
.cerca-gruppo .n{font-weight:400}.cerca-voce{display:block;padding:7px 4px;border-bottom:1px solid var(--line,#eee);color:inherit;text-decoration:none}
.cerca-voce:hover{background:var(--cream-2,#f6f3ee)}.cerca-tel{display:inline-block;margin:0 0 6px 4px;font-size:.85rem}
.lotto{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:6px 0 10px}
.gruppo-spazio{font-weight:600;font-size:.85rem;padding:10px 4px 4px;color:var(--ink-soft,#5d544b);display:flex;gap:6px;align-items:center}
.gruppo-vecchie>summary{list-style:none;cursor:pointer;display:flex;align-items:center}
.gruppo-vecchie>summary::-webkit-details-marker{display:none}
.filtri-in{width:min(320px,92vw);display:flex;flex-direction:column;gap:6px;padding:12px}
.filtri-cat{flex-wrap:wrap;overflow:visible}
/* v4.48 scorrere le righe al telefono */
.task-blocco{position:relative}
.row.task.scorrendo{transition:none;position:relative;z-index:1;background:var(--card,#fff)}
.row.task[data-scorri]{transition:transform .2s ease;touch-action:pan-y}
.scorri-sfondo{position:absolute;inset:0;display:flex;align-items:center;padding:0 18px;font-weight:700;color:#fff;border-radius:var(--r,12px)}
.scorri-sfondo.fatta{background:#9fc9a4;justify-content:flex-start}.scorri-sfondo.cancella{background:#e3a3a0;justify-content:flex-end}
.scorri-sfondo.fatta.pronta{background:#2f8a46}.scorri-sfondo.cancella.pronta{background:#c43c35}
.scorri-aiuto{background:#fff6d6;border-radius:10px;padding:8px 10px;font-size:.88rem;margin:6px 0}
.toast-annulla{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(84px + env(safe-area-inset-bottom));z-index:90;background:#2b2520;color:#fff;
  border-radius:12px;padding:10px 14px;display:flex;gap:16px;align-items:center;box-shadow:0 6px 24px rgba(0,0,0,.25);font-size:.92rem}
.toast-annulla button{background:none;border:0;color:#ffd27a;font-weight:700;padding:4px}
/* v4.48 leggibilità e accessibilità: testi grigi più scuri (contrasto ≥ 5,4:1 anche sul beige), tasti dei menu
   alti almeno 44px, il fuoco della tastiera sempre visibile, i caratteri più piccoli non sotto i 12px */
:root:not([data-theme="dark"]){--muted:#6A5E53}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--muted:#B3A595}}
.tiny{font-size:max(.76rem,12px)}
.voci-menu>a,.voci-menu>button,.voci-menu>form>button,.menu-in>a.btn{min-height:44px}
:focus-visible{outline:3px solid var(--accent,#b8562e);outline-offset:2px;border-radius:6px}
.icona-az,.tasto{min-width:44px;min-height:44px}
/* v4.49 Cerca con filtri */
.cerca-riga{display:flex;gap:8px}.cerca-riga input{flex:1;min-width:0}
.chips-filtri{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px;align-items:center}
.chip-f>summary.chip-s{list-style:none;cursor:pointer;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:6px 12px;font-size:.86rem;white-space:nowrap}
.chip-f>summary.chip-s::-webkit-details-marker{display:none}
.chip-f>summary.chip-s.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.f-in{width:min(300px,92vw);display:flex;flex-direction:column;gap:2px;padding:10px;left:0;right:auto}
.f-tipi{max-height:60vh;overflow:auto}.f-piede{display:flex;gap:12px;margin-top:6px}
.cerca-modo{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:8px 10px;font-size:.88rem;margin:6px 0 10px}
.cerca-modo button{margin-left:auto}.cerca-modo.ai{background:linear-gradient(135deg,#fff6ec,#f3ecff);border-color:#e3d4f5}
.cerca-voce mark{background:#ffe9a8;color:inherit;padding:0 1px;border-radius:3px}
@media(prefers-color-scheme:dark){.cerca-modo.ai{background:var(--card)}.cerca-voce mark{background:#6b5410}}
.cerca-pagina form#cerca-form{display:block;padding:0;border:0;background:none;box-shadow:none}
.cerca-pagina .cerca-riga input{font-size:16px;padding:12px 14px;border:1.5px solid var(--accent,#b8562e);border-radius:12px;background:var(--card)}
.cerca-pagina .cerca-riga button{flex:0 0 auto}
/* v4.50 aiuto contestuale */
.vai{font-size:.86rem;margin:-4px 0 12px;padding:6px 10px;background:var(--cream-2,#f4ede4);border-radius:8px}
.vai a{font-weight:600}
.dialogo-aiuto .card{box-shadow:none;border:0;padding:0;margin:0 0 10px}
.dialogo-aiuto h2{font-size:1.1rem}
.aiuto-altri{border-top:1px solid var(--line);padding-top:10px;margin-top:6px}
.chip-aiuto{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:5px 10px;margin:3px 2px;font-size:.82rem;cursor:pointer}
.aiuto-indice{display:flex;flex-wrap:wrap;gap:6px}.aiuto-indice a{border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:.85rem}
.passi-inoltro li{margin:6px 0}.copia{user-select:all;background:var(--cream-2);padding:1px 6px;border-radius:6px}
[id]{scroll-margin-top:84px}
/* v4.51 farmaci: ordine e scelta di più farmaci */
.farmaci-filtri{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0 10px}
.farmaci-filtri .chip-mie{text-decoration:none}
.sel-f{display:none;width:22px;height:22px;margin-right:4px;flex-shrink:0}
body.sel-farmaci .sel-f{display:inline-block}
.barra-farmaci{display:none}
body.sel-farmaci .barra-farmaci{display:flex;flex-wrap:wrap;gap:8px;align-items:center;position:sticky;top:64px;z-index:30;background:var(--card);
  border:1px solid var(--line);border-radius:14px;padding:8px 10px;margin:0 0 10px;box-shadow:var(--shadow)}
@media(max-width:640px){body.sel-farmaci .barra-farmaci{position:fixed;left:8px;right:8px;top:auto;bottom:calc(76px + env(safe-area-inset-bottom));margin:0}}
/* v4.52 modalità semplice: caratteri più grandi, solo Azioni / Documenti / Farmaci, un tasto per riga */
body.semplice{font-size:18px}
body.semplice .tabbar>a:not([href*="sezione=agenda"]):not([href*="sezione=documenti"]):not([href*="sezione=farmaci"]){display:none}
body.semplice .sezioni>a:not([href*="sezione=agenda"]):not([href*="sezione=documenti"]):not([href*="sezione=farmaci"]){display:none}
body.semplice .top .nav,body.semplice .campanella{display:none}
body.semplice .tabbar.tab7 a span:not(.tab-emoji){font-size:.85rem}
body.semplice .filtri,body.semplice .seleziona-btn,body.semplice #da-dove-iniziare,body.semplice #ricorrenti,
body.semplice .gruppo-vecchie,body.semplice .sel,body.semplice .chips-cat,body.semplice .liste-spazio,
body.semplice .scorri-aiuto,body.semplice .farmaci-filtri{display:none}
body.semplice .row details.menu.puntini{display:none}
body.semplice .az-commenti:has(.n-commenti[hidden]){display:none}
body.semplice .fatto-az,body.semplice .conferma-az{width:auto!important;height:auto!important;min-height:46px;padding:6px 18px!important;font-size:1.1rem;white-space:nowrap;display:inline-flex;align-items:center;gap:4px;border-radius:24px}
body.semplice .row .azioni{flex-shrink:0}
body.semplice .fatto-az::after{content:" Fatto";font-weight:700}
body.semplice .conferma-az::after{content:" Va bene";font-weight:700}
body.semplice .row .t{font-size:1.1rem}
.flash .annulla-form{display:inline;margin:0 0 0 10px}
.flash .annulla-form button{font-weight:700;text-decoration:underline}
.modificabile{cursor:text;border-bottom:1px dashed transparent}
.modificabile:hover{border-bottom-color:var(--muted,#999)}
.modifica-qui{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0;font-size:1rem;font-weight:400}
.modifica-qui input{flex:1;min-width:160px;font-size:1.05rem}
/* v4.53 righe più calme: un tasto solo (✓ o ⋯); 💬 compare, piccolo, solo se ci sono commenti; la riga si apre col tocco */
.row .azioni .az-commenti:has(.n-commenti[hidden]){display:none}
.row .azioni .az-commenti{width:auto;min-width:0;height:30px;padding:0 9px;border-radius:15px;font-size:.82rem;gap:3px;
  background:color-mix(in srgb,var(--acc,#b5532e) 10%,transparent)}
.row .azioni .az-commenti .n-commenti{position:static;background:none;color:inherit;font-weight:700;min-width:0;padding:0;height:auto;line-height:1}
.row[data-apri]{cursor:pointer}
.row .azioni .az-commenti:has(.n-commenti.nuovi){background:#d93636;color:#fff}
/* v4.53 testata più leggera: la 🔔 solo se ci sono commenti nuovi; il «?» al telefono sta nel menu della foto */
details.campanella:has(.badge-campana[hidden]){display:none}
details.io-menu>summary{list-style:none;cursor:pointer}
details.io-menu>summary::-webkit-details-marker{display:none}
details.io-menu .io-email{padding:2px 10px 6px;display:block;overflow:hidden;text-overflow:ellipsis}
@media(min-width:641px){ details.io-menu>.menu-in{right:0;left:auto;width:240px} }
/* v4.53 tre livelli di tasto, in chiaro e in scuro:
   1. principale pieno (uno per schermata: .primary, «✓ Fatto / Va bene» della pagina);
   2. tutti gli altri neutri;
   3. il rosso solo come testo, per togliere. Nelle righe ✓ resta verde chiaro: è l'unico tasto della riga. */
.icona-az,.az-vedi,.az-mod,.tasto-commenti,.az-commenti{background:var(--cream-2)!important;color:var(--ink-soft)!important}
.conferma-az,.fatto-az,.icona-az.conferma-az,.icona-az.fatto-az{background:var(--green-soft)!important;color:var(--green)!important}
.fatto-az:hover,.conferma-az:hover{filter:brightness(.95)}
.cestino-btn.icona-az,.icona-az.cestino-btn{background:transparent!important;color:var(--err)!important;border:1px solid var(--line)!important}
.tasto,.tasto-vedi,.tasto-mod,.tasto-altro,.tasto-commenti{background:var(--card)!important;color:var(--ink)!important;border:1px solid var(--line)!important}
.tasto-ok,.tasto-azione{background:var(--green)!important;color:#fff!important;border-color:var(--green)!important}
.tasto-del{background:transparent!important;color:var(--err)!important;border:none!important}
button.danger,.btn.danger,.ghost.danger{background:transparent;border-color:transparent;color:var(--err)}
.row .azioni .az-commenti:has(.n-commenti.nuovi){background:#d93636!important;color:#fff!important}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .tasto-ok,:root:not([data-theme="light"]) .tasto-azione{color:#14211c!important}}
:root[data-theme="dark"] .tasto-ok,:root[data-theme="dark"] .tasto-azione{color:#14211c!important}
.av.con-foto{padding:0;overflow:hidden;background:none}
.av.con-foto img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}

@media(min-width:1301px){.top .nav .nav-corto{display:none}}
/* il menu della foto si apre sotto la foto, come quello degli spazi (la testata ha il suo sfondo sfocato) */
details.io-menu{position:relative;flex:none}
details.io-menu>.menu-in{position:absolute;right:0;left:auto;top:44px;width:250px;max-width:calc(100vw - 24px);z-index:70}
details.io-menu>.menu-in{display:flex;flex-direction:column;gap:2px;padding:10px;background:var(--card);border:1px solid var(--line);
  border-radius:var(--r,14px);box-shadow:var(--shadow)}
details.io-menu>.menu-in .btn{justify-content:flex-start;text-align:left;border:none;background:none;padding:9px 10px}
details.io-menu>.menu-in .btn:hover{background:var(--cream-2)}
/* v4.56 pagina dell'azione: i campi subito, data/ora/dove in una riga, l'invito sotto */
.form-azione form>label{display:block}
.form-azione .riga-dataora{margin-top:10px}
.form-azione .invito{margin-top:8px}
.form-azione .invito-a{max-width:360px;margin-top:4px}
.form-azione .altro-azione{margin-top:12px}
.form-azione .dettagli-tipo{border:none;padding:0;margin:10px 0 0}
.tutti-passi{margin:4px 0 8px}.tutti-passi summary{cursor:pointer;color:var(--muted)}.tutti-passi div{padding:2px 0}
/* v4.57 da smistare: prima il testo, largo quanto la pagina; i tasti tutti sotto, su una riga */
.smistare-row{flex-wrap:wrap;align-items:flex-start}
.smistare-row>.main{flex:1 1 0;min-width:0}
.smistare-row>.main .t{white-space:normal;overflow-wrap:anywhere}
.smistare-row>form.smistare-tasti{flex:1 1 100%;display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0 0}
.smistare-row>form.smistare-tasti select{flex:1 1 180px;width:auto;min-width:0}
.smistare-row>form.smistare-tasti button{flex:none}
@media(max-width:640px){.smistare-row>form.smistare-tasti select{flex-basis:100%}.smistare-row>form.smistare-tasti button{flex:1}}
.farmaci-az h2{margin:0 0 6px;font-size:1.1rem}.farmaco-az+.farmaco-az{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}
.tasti-farmaco{display:flex;flex-direction:column;gap:8px}.tasti-farmaco form{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin:0}
.tasti-risposta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0}
.tasti-risposta .primary{white-space:normal;text-align:left}
.gruppi-profilo{display:grid;gap:12px;margin-bottom:14px}.gruppi-profilo h2{margin:0 0 8px;font-size:1.05rem}
.gruppi-profilo .voci-profilo{margin:0}.aiuto-profilo{display:block}

/* v4.63: lavori in sottofondo e pagina errori */
.lavoro{display:flex;gap:10px;align-items:center;margin:10px 0;padding:10px 12px;border-radius:12px;background:var(--card, #fff);border:1px solid var(--line, #e7dfd4);font-size:.92rem}
.lavoro.errore{border-color:#e3a39a;background:color-mix(in srgb, #e3a39a 14%, transparent)}
.lavoro.fatto{border-color:#9cc9a3}
.giro{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:giro .8s linear infinite;flex:none;opacity:.7}
@keyframes giro{to{transform:rotate(360deg)}}
.pre-errore{white-space:pre-wrap;word-break:break-word;font-size:.75rem;max-height:260px;overflow:auto;background:rgba(0,0,0,.04);padding:8px;border-radius:8px}
.versione-app{text-align:center;margin:18px 0 8px}

/* v4.63: componenti comuni — chip di scelta, stati vuoti, Oggi, guida, «una alla volta» */
.chip-radio{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 0;-webkit-overflow-scrolling:touch}
.chip-radio::-webkit-scrollbar{display:none}
.chip-radio label{flex:none;display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--card);font-size:.86rem;cursor:pointer;white-space:nowrap;margin:0;color:var(--ink-soft)}
.chip-radio label.on,.chip-radio label:has(input:checked){background:var(--ink);color:var(--cream);border-color:var(--ink)}
.chip-radio input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}
.filtri-chip{display:flex;flex-direction:column;gap:8px;margin:10px 0}
.filtri-chip input[type=search]{width:100%}
.vuoto .vuoto-ic{display:block;font-size:2rem;margin-bottom:6px}
.vuoto .vuoto-t{margin:4px auto 0;max-width:420px;font-size:.92rem;line-height:1.45}
.vuoto .vuoto-tasto{display:inline-block;margin-top:14px}
.controlla-ora{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;margin-bottom:14px;border-color:var(--accent)}
.controlla-ora .controlla-n{flex:none;min-width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:700;font-size:1.15rem}
.controlla-ora > span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:2px}
.guida{border-color:var(--accent)}
.guida-testa{display:flex;justify-content:space-between;align-items:center}
.guida-testa h2{margin:0}
.guida-testa form{margin:0}
.guida-passi{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-direction:column;gap:12px}
.guida-passi li{display:flex;gap:12px;align-items:flex-start}
.guida-passi li .btn{margin-top:6px;display:inline-block}
.guida-n{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--accent);color:var(--accent);font-weight:700;font-size:.9rem}
.guida-passi li.fatto{opacity:.6}
.guida-passi li.fatto .guida-n{background:var(--accent);color:#fff}
.arrivati h2{margin:0 0 6px}
.oggi-altro{margin:16px 0;text-align:center}
.una-barra{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:6px 0 10px}
.una-barra .una-n{flex:1;font-size:.9rem;color:var(--muted)}
.una-barra .una-fine{flex:1;font-weight:600}
body.una-alla-volta .una-nascosta{display:none !important}
body.una-alla-volta section.scheda .gruppo-spazio{display:none}
body.una-alla-volta section.scheda .list > :not(.una-nascosta){box-shadow:0 6px 24px rgba(0,0,0,.07);border-radius:16px}
.row.si-apre{cursor:pointer}
.filtri-chip input[type=search]{flex:none !important;height:auto;min-height:0;width:100%;max-width:100%;box-sizing:border-box}
.filtri-chip > *{min-width:0;max-width:100%}
.controlla-ora{flex-wrap:wrap}
.controlla-ora > span:nth-child(2){flex:1 1 150px}
@media (max-width:520px){.controlla-ora .btn{flex:1 1 100%;text-align:center}}

/* v4.64: in testa a ogni scheda cosa è (documento o cosa da fare), e di cosa sono i tasti */
.kicker{font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin:0 0 3px;display:inline-block;padding:2px 8px;border-radius:6px}
.kicker.k-doc{color:#2f5d8a;background:color-mix(in srgb,#2f5d8a 12%,transparent)}
.kicker.k-az{color:var(--accent-dark,#b5532a);background:var(--accent-soft,#fbe8de)}
.tasti-di{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:14px 0 4px}

/* v4.64: console */
.kpi-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:10px;margin-top:10px}
.kpi{display:flex;flex-direction:column;gap:3px;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--card);text-decoration:none;color:inherit}
.kpi.fuori{border-color:#d9776a;background:color-mix(in srgb,#d9776a 10%,var(--card))}
.kpi-v{font-family:var(--serif);font-size:1.5rem;font-weight:700}
.kpi-v small{font-size:.8rem;font-weight:400;color:var(--muted)}
.kpi-n{font-size:.86rem}
.kpi-s{font-size:.75rem;color:var(--muted)}
.kpi.fuori .kpi-s{color:#b4473a}
.kpi-griglia.piccoli .kpi-v{font-size:1.2rem}
.barra-db{height:10px;border-radius:6px;background:var(--cream-2);overflow:hidden}
.barra-db span{display:block;height:100%;background:var(--accent)}
.barra-db span.alta{background:#c4473a}
.tabella-scorre{overflow-x:auto}
.tabella-db{border-collapse:collapse;width:100%;min-width:520px}
.tabella-db th{text-align:left;font-weight:600;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--line)}
.tabella-db td{padding:6px 8px;border-bottom:1px solid var(--line)}
.tabella-db td.num{text-align:right;font-variant-numeric:tabular-nums}
/* v4.65: l'invito in calendario ha il suo riquadro e il suo tasto */
.invito-box{margin:10px 0 4px;padding:10px 12px;border:1px dashed var(--line);border-radius:12px}
.invito-box summary{cursor:pointer}
.invito-box .invito-ore{margin-top:8px}
.web-trovato{margin:12px 0 0;border-color:#9ab7d6;background:color-mix(in srgb,#9ab7d6 8%,var(--card))}
.web-trovato label.check{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:baseline;margin:4px 0;min-width:0}
.web-trovato a{overflow-wrap:anywhere}
/* v4.68: «Come ti posso aiutare oggi?», insegnare i comandi */
.chiedi{padding:18px 18px 14px}
.chiedi h2{margin:0 0 10px;font-family:Fraunces,Georgia,serif;font-size:1.35rem}
.chiedi form{display:flex;gap:8px;align-items:flex-end}
.chiedi textarea{flex:1;min-height:3.2em;max-height:12em;resize:vertical;font:inherit;font-size:1.05rem;padding:12px 14px;
  border-radius:var(--r-sm);border:1.5px solid var(--line, #d8d0c0);background:var(--bg-card, #fff)}
.chiedi button.primary{min-height:48px;padding:0 18px}
.chiedi .esempi{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px}
.chiedi .esempi button{font-size:.8rem;padding:4px 10px;border-radius:999px;min-height:0;line-height:1.3}
.chiedi-risposta{margin-top:12px;line-height:1.5}.chiedi-risposta .msg{white-space:pre-line}
.chiedi-risposta .tu{color:var(--muted, #777);font-size:.85rem;margin-bottom:4px}
.chiedi-risposta .tasti{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;white-space:normal}
.passo-ins{display:flex;gap:8px;align-items:center;margin:6px 0;flex-wrap:wrap}
.passo-ins select{max-width:100%}.passo-ins input{flex:1;min-width:180px}
/* v4.85: in «Da controllare» quello a cui si è appena risposto sbiadisce e sparisce; le schede finite si spengono */
section.scheda .via{opacity:.45;transition:opacity .6s}
section.scheda .via.sparita{display:none !important}
.schede a.vuota{opacity:.5}
/* v4.86: le risposte di Arianna con una tabella di valori e le fonti */
.tab-risposta{border-collapse:collapse;margin:8px 0;font-size:.95em;white-space:normal}
.tab-risposta th,.tab-risposta td{border-bottom:1px solid var(--line, #e5e0d5);padding:4px 10px;text-align:left}
.tab-risposta th{font-weight:600;color:var(--muted, #777)}
.fonti-risposta{display:flex;flex-direction:column;gap:2px;margin-top:6px;white-space:normal}
.fonti-risposta .fonte{font-size:.9em}
.chiedi form{flex-wrap:wrap}
.chiedi form .chips-filtri{flex-basis:100%;margin-top:2px}

.chiedi-attesa{margin-top:10px;padding:8px 12px;border-radius:10px;background:var(--soft, #f4efe6);font-size:.95em}
@media (max-width:760px){
  .tabbar.tab5>a span,.tabbar.tab5 summary span{white-space:nowrap;font-size:.66rem}
  /* v4.87: ingresso compatto al telefono: casella larga con il tasto dentro la riga, filtri su una riga che scorre,
     esempi solo quando la casella è vuota e in uso */
  .chiedi{padding:14px 14px 10px}
  .chiedi h2{font-size:1.15rem;margin-bottom:2px}
  .chiedi form{gap:6px;align-items:stretch}
  .chiedi form textarea{flex:1 1 0;min-width:0;min-height:52px;font-size:16px}
  .chiedi form>button.primary{padding:0 14px;min-width:0}
  .chiedi form .chips-filtri{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:6px;padding-bottom:2px}
  .chiedi form .chips-filtri::-webkit-scrollbar{display:none}
  .chiedi form .chips-filtri .chip-s{white-space:nowrap}
  .chiedi .esempi{display:none}
  .chiedi:focus-within .esempi:has(~ #chiedi-esito:empty){display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .chiedi .esempi button{white-space:nowrap}
}
.row .data .gs{font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);line-height:1}
.cat-ic{margin-right:.3em}
/* v4.87: «✎ Correggi» è uno solo (in alto); il riquadro in fondo compare quando lo si apre */
details.correggi.via-tasto:not([open]){display:none}
section.card:has(> details.correggi.via-tasto:not([open])){display:none}
.commento.in-invio{opacity:.7}.commento.in-invio .stato-invio{color:var(--accent-dark)}
/* v4.91: la riga che si scorre sta sempre sopra il suo colore */
[data-scorri]{position:relative;z-index:1}
/* v4.95: «Da fare» (confermare) e «Fatto» si distinguono: giallo chiaro con lista e spunta / verde scuro pieno */
.conferma-az,.icona-az.conferma-az,button.conferma-az{background:#FFEBB0!important;color:#6E4F00!important;border:1px solid #E3C462!important}
.conferma-az:hover,.icona-az.conferma-az:hover{background:#FFE08A!important;color:#5A4000!important}
.fatto-az,.icona-az.fatto-az,button.fatto-az{background:#2E7D4F!important;color:#fff!important;border:1px solid #2E7D4F!important}
.fatto-az:hover,.icona-az.fatto-az:hover{background:#246640!important;color:#fff!important}
.ic-dafare{width:1.05em;height:1.05em;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.15em}
body.semplice .conferma-az::after{content:" Da fare"}

/* v5.00: il nome di una cosa da fare prende sempre la riga intera (anche sul telefono); a capo se è lungo */
.campo-intero{grid-column:1 / -1}
.nuova-az{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.nuova-az label,.campo-intero{display:block}
.nuova-az textarea,.campo-intero textarea,textarea.titolo-az{width:100%;box-sizing:border-box;font-size:1.05rem;resize:vertical;min-height:2.6em}
.riga-dafare{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}
.riga-dafare input[type=date]{width:auto}
.agg-az-btn{margin-top:8px;display:inline-block}

/* v5.20: pratiche — termine con cosa succede dopo, «Cosa serve» da spuntare */
.termine{color:var(--warn,#9a5b00);font-weight:600}.termine.vicino{color:var(--err,#b3261e)}
.card.serve{margin:12px 0;padding:12px 16px}
.serve-voce{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--line,#eee)}
.serve-voce:first-of-type{border-top:0}.serve-voce.fatta .serve-nome>:first-child,.serve-voce.fatta{color:var(--muted,#777)}
.serve-spunta{margin:0}.spunta{font-size:1.5rem;line-height:1;min-width:44px;min-height:44px;background:none;border:0;padding:0;cursor:pointer}
.serve-nome{flex:1;min-width:0;padding-top:10px}

/* v5.22: Console → Anomalie */
.anomalia { border-top: 1px solid var(--line); padding: 10px 0; }
.anomalia:first-of-type { border-top: 0; }
.an-testa { font-size: .95rem; overflow-wrap: anywhere; }
.anomalia .small, .anomalia .tiny { overflow-wrap: anywhere; }
.an-azioni { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 8px; }
.an-azioni form { margin: 0; }
.an-azioni button, .an-azioni .btn, .an-azioni select { min-height: 40px; }
.an-azioni select { max-width: 100%; flex: 1 1 160px; }
