/* =====================================================================
   Chiamate scuole · beta con il disegno di «Mercato SSV»
   Token, guscio (barra, pannello, scheda a lato) e componenti copiati da Mercato SSV (stile.css), con il logo
   Sale. Si carica dopo assets/css/app.css: i token della piattaforma prendono i valori di Mercato, così anche le
   schermate riusate (chiamata, obiezioni, smistamento, utenti, import...) hanno lo stesso aspetto.
   ===================================================================== */

:root{
--font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display",Inter,"Helvetica Neue",Helvetica,Arial,sans-serif;
--mono:ui-monospace,"SF Mono",Menlo,monospace;
--t10:10.5px;--t11:11.5px;--t12:12px;--t13:13px;--t14:14px;--t15:15px;--t17:17px;--t20:20px;--t24:24px;--t28:28px;--t34:34px;
--r-sm:6px;--r-md:10px;--r-lg:16px;--r-pill:999px;
--barra-l:236px;--peek-l:620px;--rientro:10px;
--pav:#f4f5f7;--sup:#ffffff;--sup2:#fafbfc;--sup3:#f1f3f6;--sup4:#e9ecf1;
--testo:#213856;--testo2:#4f5d73;--testo3:#7a8598;--testo4:#a3acba;
--filo:#eceef2;--filo2:#dcdfe5;--filo3:#c9ced8;
--acc:#316bff;--acc-sup:#e9f0ff;--acc-sup2:#d6e2ff;--acc-testo:#1f55e6;--acc-forte:#2255e8;--su-acc:#fff;
--ok:#00c758;--ok-testo:#00953f;--ok-sup:#e4f9ec;--ok-pieno:#0a8f44;
--att:#f05100;--att-testo:#c94300;--att-sup:#fff0e6;
--no:#e40014;--no-testo:#c4000f;--no-sup:#ffe8ea;
--ciano:#0891b2;--ciano-sup:#e0f7fb;--ciano-testo:#0e7490;--ambra:#d97706;--ambra-sup:#fff4dc;--ambra-testo:#b45309;
--verde2:#0d9488;--verde2-sup:#dcf6f3;--verde2-testo:#0f766e;--rosa:#e30076;--rosa-sup:#ffe6f2;--rosa-testo:#be185d;--grigio-t:#6b7280;--grigio-sup:#eef0f3;
--anello:0 0 0 1px var(--filo2);--anello-su:0 0 0 1px var(--filo3);
--ombra-galleggia:0 0 0 1px rgba(33,56,86,.08),0 10px 30px -12px rgba(33,56,86,.22),0 2px 6px -2px rgba(33,56,86,.08);
--vetro:rgba(255,255,255,.82);--riga-hover:color-mix(in oklab,var(--acc) 4%,var(--sup));--focus:color-mix(in srgb,var(--acc) 35%,transparent);
--quad:cubic-bezier(.25,.46,.45,.94);--expo:cubic-bezier(.16,1,.3,1);--d1:120ms;--d2:200ms;
--s1:#316bff;--s2:#0d9488;--s3:#d97706;--s4:#e30076;--s5:#0891b2;--media:#94a3b8;
color-scheme:light;

/* I token della piattaforma (app.css) con i valori di Mercato: le schermate riusate cambiano vestito da sole. */
--arancio:var(--acc);--arancio-pieno:var(--acc);--arancio-scuro:var(--acc-testo);--arancio-soft:var(--acc-sup2);
--pesca:var(--acc-sup);--pesca-chiara:var(--sup2);--giallo:var(--ambra-sup);
--petrolio:var(--testo);--petrolio-scuro:var(--testo);--petrolio-chiaro:var(--sup3);
--azzurro:var(--filo2);--azzurro-box:var(--sup4);--azzurro-fondo:var(--filo3);--cielo:var(--sup3);
--ardesia:var(--testo2);--inchiostro:var(--testo);--carta:var(--sup);--linea:var(--filo);--linea-forte:var(--filo2);
--errore:var(--no-testo);--errore-chiaro:var(--no-sup);--attenzione:var(--ambra-testo);--attenzione-chiaro:var(--ambra-sup);
--f-titoli:var(--font);--f-mano:var(--font);--f-cond:var(--font);--f-testo:var(--font);--f-mono:var(--mono);
--r-s:8px;--r:12px;--r-l:14px;--r-xl:16px;
--ombra:var(--anello);--ombra-alta:var(--ombra-galleggia);
--laterale:0px;
}
:root[data-tema="scuro"]{
/* nella piattaforma il petrolio è sia testo sia fondo con la scritta bianca: al buio diventa il blu dell'accento */
--petrolio:var(--acc);--petrolio-scuro:var(--acc-forte);--petrolio-chiaro:var(--acc-sup);
--pav:#0a0a0b;--sup:#111113;--sup2:#151517;--sup3:#1b1b1f;--sup4:#232327;
--testo:#f6f6f6;--testo2:rgba(246,246,246,.74);--testo3:rgba(246,246,246,.52);--testo4:rgba(246,246,246,.34);
--filo:rgba(255,255,255,.08);--filo2:rgba(255,255,255,.12);--filo3:rgba(255,255,255,.2);
--acc:#5b8cff;--acc-sup:#182860;--acc-sup2:#213a80;--acc-testo:#cfe0ff;--acc-forte:#7aa3ff;--su-acc:#0a0a0b;
--ok-testo:#b7fbd1;--ok-sup:#003c1c;--att-testo:#ffd9b0;--att-sup:#442800;--no-testo:#ffc9cd;--no-sup:#4a0c14;
--ciano-sup:#083344;--ciano-testo:#c6f3fb;--ambra-sup:#3a2a00;--ambra-testo:#dfc784;--verde2-sup:#042f2e;--verde2-testo:#b8f0e8;--rosa-sup:#500c3c;--rosa-testo:#ffd2ff;--grigio-sup:#26262b;
--anello:0 0 0 1px rgba(255,255,255,.1);--anello-su:0 0 0 1px rgba(255,255,255,.18);
--ombra-galleggia:0 0 0 1px rgba(255,255,255,.08),0 16px 40px -12px rgba(0,0,0,.7);--vetro:rgba(17,17,19,.82);--riga-hover:rgba(255,255,255,.04);
--s1:#5b8cff;--media:#64748b;color-scheme:dark}

/* ── la base ── */
html{scroll-padding-top:0}
body{font:400 var(--t13)/1.45 var(--font);color:var(--testo);background:var(--pav);-webkit-font-smoothing:antialiased;letter-spacing:-.004em;font-variant-numeric:tabular-nums;text-rendering:optimizeLegibility;margin:0}
:where(#barra,#peek,.m,.testata-m) button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;letter-spacing:inherit;text-align:inherit;padding:0}
:where(#barra,#peek,.m) input,:where(#barra,#peek,.m) select{font:inherit;color:inherit}
:where(#barra,#peek,.m,.testata-m) a{color:inherit;text-decoration:none}
:where(#barra,#peek,.m) :where(ul,ol,dl,dd,figure,p,h1,h2,h3,h4){margin:0}
svg{display:block;flex:none}
b,strong{font-weight:600}
::selection{background:var(--acc-sup2)}
:focus-visible{outline:none;box-shadow:0 0 0 4px var(--focus);border-radius:6px}
h1,h2,h3{font-weight:700;letter-spacing:-.014em;text-wrap:balance;color:var(--testo)}
.muto{color:var(--testo3)}.due{color:var(--testo2)}.mono{font-family:var(--mono);font-size:11.5px;letter-spacing:0}
svg.ico .icf{display:none}svg.ico{flex:none;overflow:visible}
.voce svg.ico{color:var(--acc)}
.voce.viva svg.ico .icr,.tessera.viva svg.ico .icr{display:none}
.voce.viva svg.ico .icf,.tessera.viva svg.ico .icf{display:inline}
.tess svg.ico .icr{display:none}.tess svg.ico .icf{display:inline}.tess svg.ico{width:62%;height:62%}

/* ── il guscio: tre carte sul pavimento ── */
.app{position:fixed;inset:0;min-height:0}
#barra{position:fixed;top:var(--rientro);left:var(--rientro);bottom:var(--rientro);width:var(--barra-l);z-index:20;display:flex;flex-direction:column;background:var(--sup);border-radius:var(--r-lg);box-shadow:var(--anello);padding:12px 10px 10px}
#barra .cliente{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--r-md);width:100%;text-align:left;transition:background var(--d1) var(--quad)}
#barra .cliente:hover,#barra .cliente.viva{background:var(--sup3)}
#barra .cliente .logo{width:28px;height:28px;border-radius:8px;background:var(--testo);display:grid;place-items:center;flex:none}
#barra .cliente .logo .vela{width:17px;height:auto}
:root[data-tema="scuro"] #barra .cliente .logo{background:#fff}
#barra .cliente b{display:block;font-weight:700;font-size:var(--t13);line-height:1.2;letter-spacing:-.01em}
#barra .cliente small{display:block;color:var(--testo3);font-size:var(--t11);line-height:1.3;margin-top:1px}
.stato-l{display:flex;align-items:center;gap:6px;padding:6px 10px 0;font-size:var(--t11);color:var(--testo2);font-weight:600;min-width:0}
.stato-l i{width:6px;height:6px;border-radius:50%;background:var(--att);flex:none}
.stato-l.pronto i{background:var(--ok-pieno,#1f9d55)}
.stato-l span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
a.stato-l:hover{color:var(--testo)}
/* Senza rete (2.24.0): la riga sotto il logo dice che si usano i dati del dispositivo e quanti esiti aspettano. */
button.stato-l{background:none;border:0;font:inherit;font-size:var(--t11);cursor:pointer;text-align:left;width:100%}
button.stato-l:hover{color:var(--testo)}
.stato-l.senza-rete{color:var(--att-testo)}
.stato-l.senza-rete i{background:var(--att)}
.stato-l.da-inviare{color:var(--acc-testo)}
.stato-l.da-inviare i{background:var(--acc)}
.invii{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.invii small{color:var(--testo3)}
.invii .invii__errore{color:var(--no-testo)}
.tessere{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0 12px}
.tessera{position:relative;height:56px;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--testo2);font-size:var(--t11);font-weight:600;transition:background var(--d1) var(--quad),color var(--d1) var(--quad),transform var(--d1) var(--quad)}
.tessera:hover{background:var(--sup3);color:var(--testo)}
.tessera:active{transform:scale(.96)}
.tessera.viva{color:var(--acc-testo);background:var(--acc-sup)}
.tessera.viva svg{color:var(--acc)}
.tessera .pallino{position:absolute;top:7px;right:9px;min-width:16px;height:16px;padding:0 5px;border-radius:var(--r-pill);background:var(--acc);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center}
.tessera .pallino:empty{display:none}
.voci{display:flex;flex-direction:column;gap:1px;overflow:auto;min-height:0;scrollbar-width:none}
.voci .capo-v{font-size:var(--t10);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--testo3);padding:12px 10px 4px}
.voce{position:relative;height:34px;display:flex;align-items:center;gap:10px;padding:0 8px 0 10px;border-radius:var(--r-md);color:var(--testo2);width:100%;text-align:left;font-weight:500;flex:none;transition:color var(--d1) var(--quad),background var(--d1) var(--quad)}
.voce:hover{color:var(--testo);background:var(--sup2)}
.voce.viva{color:var(--testo);font-weight:600;background:var(--sup3)}
.voce .n{margin-left:auto;font-size:var(--t11);color:var(--testo3);font-weight:500}
.voce .n b{font-weight:700;color:var(--acc-testo);min-width:18px;height:18px;padding:0 6px;border-radius:var(--r-pill);background:var(--acc-sup);display:inline-grid;place-items:center;font-size:10.5px}
.voce .n:empty{display:none}
.carta-blu{margin-top:auto;border-radius:14px;padding:14px 14px 12px;color:#fff;background:linear-gradient(160deg,#4a82ff,#2458e6);box-shadow:0 10px 24px -14px rgba(36,88,230,.8);display:block}
a.carta-blu{color:#fff}
.carta-blu .t{display:flex;justify-content:space-between;align-items:center;font-size:var(--t12);font-weight:600;opacity:.95}
.carta-blu .grande{font-size:38px;font-weight:300;letter-spacing:-.03em;line-height:1.05;margin-top:6px}
.carta-blu .sotto{font-size:var(--t12);font-weight:600}
.carta-blu .piccolo{font-size:var(--t11);opacity:.85;line-height:1.45;margin-top:2px}
.carta-blu .barra-p3{height:5px;border-radius:3px;background:rgba(255,255,255,.28);margin-top:8px;overflow:hidden}.carta-blu .barra-p3 i{display:block;height:100%;background:#fff;border-radius:3px;transition:width 600ms var(--expo)}
#barra .fondo{display:flex;align-items:center;gap:6px;padding:10px 2px 0}
.tema{display:flex;background:var(--sup3);border-radius:var(--r-pill);padding:2px;flex:none}
.tema button{width:28px;height:24px;display:grid;place-items:center;border-radius:var(--r-pill);color:var(--testo3)}
.tema button.viva{color:var(--testo);background:var(--sup);box-shadow:var(--anello)}
#barra .fondo .spazio{flex:1}
#barra .fondo .tondo{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:var(--testo3);flex:none}
#barra .fondo .tondo:hover{background:var(--sup3);color:var(--testo)}
#barra .fondo .tondo>svg:not(.ico){width:16px;height:16px}
#barra .fondo .io{display:flex;align-items:center;gap:6px;border-radius:var(--r-pill);padding:2px;flex:none}
#barra .fondo .io:hover{background:var(--sup3)}
#barra .fondo .io .avatar{width:26px;height:26px;font-size:11px;font-weight:700;background:var(--acc);color:#fff}
#barra .fondo .io.viva{box-shadow:0 0 0 2px var(--acc)}
#barra .versione{display:block;width:100%;padding:8px 8px 0;font-size:10.5px;color:var(--testo4);text-align:left}
#barra .versione:hover{color:var(--testo2)}
#barra .versione a{text-decoration:underline;text-underline-offset:2px}

#pannello{position:fixed;top:var(--rientro);bottom:var(--rientro);left:calc(var(--barra-l) + var(--rientro)*2);right:var(--rientro);z-index:15;display:flex;flex-direction:column;background:var(--sup);border-radius:var(--r-lg);box-shadow:var(--anello);overflow:hidden;transition:right 380ms var(--expo)}
body.peek-aperto #pannello{right:calc(var(--peek-l) + var(--rientro)*2)}
body.in-chiamata #pannello{right:var(--rientro)}
#pannello>.lista{flex:1;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--filo3) transparent;position:relative}
.testa{padding:22px 24px 8px;display:flex;flex-direction:column;gap:4px}
.testa .occhiello{font-family:var(--font);font-size:var(--t11);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--testo3);margin:0}
.testa h1{font-size:var(--t28);line-height:1.1;letter-spacing:-.02em;font-weight:700;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0}
.testa h1 .conto{font-size:var(--t15);font-weight:600;color:var(--testo3);letter-spacing:-.005em}
.testa .sotto{color:var(--testo2);font-size:var(--t13);line-height:1.5;max-width:80ch;margin-top:2px}
.testa .sotto b{color:var(--testo)}
.testa .azioni{margin-top:8px}
.testa-r{display:flex;align-items:flex-start;gap:16px;justify-content:space-between;flex-wrap:wrap}
.testa-r>div:first-child{min-width:0;flex:1 1 380px;display:flex;flex-direction:column;gap:4px}
.attrezzi{position:sticky;top:0;z-index:6;display:flex;flex-direction:column;gap:8px;padding:8px 24px 10px;background:var(--vetro);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 1px 0 var(--filo)}
.fila-a{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.fila-a .spazio{flex:1}
.conto-f{font-size:var(--t12);color:var(--testo3)}.conto-f b{color:var(--testo);font-weight:700}
.seg{position:relative;display:flex;padding:2px;border-radius:9px;background:var(--sup3);flex:none;max-width:100%;overflow-x:auto;scrollbar-width:none}
.seg button{height:28px;padding:0 12px;border-radius:7px;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--testo2);white-space:nowrap;transition:color var(--d1),background var(--d1)}
.seg button .n{color:var(--testo3);font-weight:500;font-size:12px}
.seg button.viva{color:var(--testo);font-weight:600;background:var(--sup);box-shadow:0 1px 2px rgba(33,56,86,.12),0 0 0 .5px rgba(33,56,86,.06)}
.cerca{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px;border-radius:var(--r-md);background:var(--sup3);color:var(--testo3);flex:1 1 220px;min-width:180px;max-width:420px;transition:box-shadow var(--d1),background var(--d1)}
.cerca:focus-within{background:var(--sup);box-shadow:0 0 0 1px var(--acc),0 0 0 4px var(--acc-sup)}
.cerca input{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--testo);font-size:var(--t13);box-shadow:none;padding:0;height:auto}
.cerca input:focus-visible{box-shadow:none}
.cerca input::placeholder{color:var(--testo3)}
.cerca kbd{font:500 10.5px/1 var(--font);color:var(--testo3);border:1px solid var(--filo2);border-radius:4px;padding:2px 4px;opacity:1;margin:0}
.chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border-radius:var(--r-pill);font-family:var(--font);font-size:var(--t12);font-weight:600;line-height:1;color:var(--testo2);background:var(--sup);box-shadow:var(--anello);white-space:nowrap;flex:none;border:0;max-width:none;overflow:visible;transition:background var(--d1),color var(--d1),box-shadow var(--d1)}
button.chip{cursor:pointer}
.chip:hover{color:var(--testo);box-shadow:var(--anello-su);background:var(--sup2)}
.chip.viva{background:var(--testo);color:var(--sup);box-shadow:none}
.chip .n{font-weight:600;opacity:.6}
select.chip{appearance:none;-webkit-appearance:none;padding-right:26px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 256 256'%3E%3Cpath fill='%237a8598' d='M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer;outline:0;border:0;max-width:260px;text-overflow:ellipsis}
select.chip.viva{background-color:var(--testo);color:var(--sup)}
select.chip{width:auto;min-height:0;height:30px;line-height:30px;padding-top:0;padding-bottom:0}
select.chip:focus{box-shadow:0 0 0 1px var(--acc),0 0 0 4px var(--acc-sup)}
.corpo-p{padding:4px 24px 80px}

/* ── le righe della lista ── */
.rn{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 12px 11px 10px;border-radius:12px;cursor:pointer;transition:background var(--d1) var(--quad)}
.rn::after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:1px;background:var(--filo)}
.rn:hover::after,.rn.viva::after,.rn:has(+.rn:hover)::after,.rn:has(+.rn.viva)::after{opacity:0}
.rn:hover{background:var(--riga-hover)}
.rn.viva{background:color-mix(in oklab,var(--acc) 10%,var(--sup))}
.rn.spenta{opacity:.62}
.rn .cr{min-width:0}
.rn .t1{display:flex;align-items:baseline;gap:8px;min-width:0}
.rn .t1 b{display:block;font-size:var(--t15);font-weight:600;color:var(--testo);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.rn.due .t1 b{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3}
.rn .t2{margin-top:2px;font-size:var(--t12);color:var(--testo3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rn .t2 span+span::before{content:"·";margin:0 7px;color:var(--testo4)}
.rn .t2 em{font-style:normal;color:var(--testo2)}
.rn .t3{display:flex;flex-wrap:wrap;align-items:center;gap:5px 6px;margin-top:6px;min-width:0}
.rn .t3 .forn{display:inline-flex;align-items:center;gap:5px;font-size:var(--t12);color:var(--testo3);min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:2px}
.rn .t3 .forn svg{color:var(--testo4);flex:none}
.rn .dx{text-align:right;line-height:1.2;min-width:84px;display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.rn .dx b{display:block;font-size:var(--t15);font-weight:700;color:var(--testo);letter-spacing:-.01em}
.rn .dx small{font-size:var(--t11);color:var(--testo3);white-space:nowrap}
.rn .chiama-r{margin-top:4px;opacity:0;transition:opacity var(--d1)}
.rn:hover .chiama-r,.rn.viva .chiama-r,.rn:focus-within .chiama-r{opacity:1}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips .chip{flex:none}
.attrezzi .cerca{max-width:none}
.chips .chip{height:28px;padding:0 10px}
.chips .chip svg{color:var(--testo3)}.chips .chip.viva svg{color:currentColor}
.tess{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:#fff;flex:none;font-size:11.5px;font-weight:700;letter-spacing:.01em;background-image:linear-gradient(180deg,rgba(255,255,255,.2),rgba(255,255,255,0) 70%)}
.tess.chiara{background-image:none;box-shadow:inset 0 0 0 1px rgba(33,56,86,.08)}
.tess.xl{width:56px;height:56px;border-radius:15px;font-size:18px}
.tess.sm{width:24px;height:24px;border-radius:7px;font-size:9.5px}
.tess.tondo{border-radius:50%}
.g-blu{background-color:var(--acc)}.g-verde{background-color:var(--ok-pieno)}.g-teal{background-color:var(--verde2)}.g-ambra{background-color:var(--ambra)}.g-ciano{background-color:var(--ciano)}.g-rosa{background-color:var(--rosa)}.g-navy{background-color:var(--testo)}.g-grigio{background-color:var(--testo4)}.g-rosso{background-color:var(--no)}
.c-blu{background:var(--acc-sup);color:var(--acc-testo)}.c-verde{background:var(--ok-sup);color:var(--ok-testo)}.c-teal{background:var(--verde2-sup);color:var(--verde2-testo)}.c-ambra{background:var(--ambra-sup);color:var(--ambra-testo)}.c-ciano{background:var(--ciano-sup);color:var(--ciano-testo)}.c-rosa{background:var(--rosa-sup);color:var(--rosa-testo)}.c-grigio{background:var(--grigio-sup);color:var(--grigio-t)}.c-rosso{background:var(--no-sup);color:var(--no-testo)}.c-att{background:var(--att-sup);color:var(--att-testo)}
.past{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:var(--r-pill);font-size:11.5px;font-weight:600;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.past i{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.past.tag{font-weight:600;border-radius:6px;padding:0 8px}
a.past:hover{filter:brightness(.97);text-decoration:none}
.m .vuoto,#peek .vuoto{padding:44px 20px;text-align:center;color:var(--testo3);font-size:var(--t13)}
.m .vuoto h2{font:700 var(--t17)/1.3 var(--font);text-transform:none;color:var(--testo);margin-bottom:6px;letter-spacing:-.015em}
.m .vuoto p{max-width:56ch;margin:0 auto 12px}
.piu{display:block;margin:16px auto;height:32px;padding:0 16px;border-radius:var(--r-pill);background:var(--sup);box-shadow:var(--anello);font-weight:600;font-size:var(--t12);color:var(--testo)}
.piu:hover{box-shadow:var(--anello-su)}

/* ── il peek: la scheda che scorre da destra ── */
#peek{position:fixed;top:var(--rientro);right:var(--rientro);bottom:var(--rientro);width:var(--peek-l);z-index:30;display:flex;flex-direction:column;background:var(--sup);border-radius:var(--r-lg);box-shadow:var(--ombra-galleggia);overflow:hidden;transition:transform 320ms var(--expo),opacity 160ms var(--quad),width 480ms var(--expo)}
#peek.via{transform:translateX(24px);opacity:0;pointer-events:none}
#peek.pagina{width:calc(100vw - var(--barra-l) - var(--rientro)*3);box-shadow:var(--anello)}
#peek .scorri{flex:1;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--filo3) transparent;position:relative}
.pill-p{position:absolute;top:10px;right:12px;z-index:9;display:inline-flex;gap:2px;padding:3px;border-radius:var(--r-pill);background:var(--vetro);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:var(--anello)}
.pill-p button,.pill-p a{width:28px;height:28px;border-radius:var(--r-pill);display:grid;place-items:center;color:var(--testo2)}
.pill-p button:hover,.pill-p a:hover{background:var(--sup3);color:var(--testo)}

/* ── le panoramiche ── */
.pano{padding:6px 24px 80px;display:flex;flex-direction:column;gap:14px;container-type:inline-size}
.striscia-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:8px}
.sl{display:flex;flex-direction:column;gap:3px;padding:11px 14px 12px;min-width:0;background:var(--sup2);border-radius:12px;box-shadow:inset 0 0 0 1px var(--filo)}
button.sl,a.sl{text-align:left;cursor:pointer;transition:box-shadow var(--d1)}
button.sl:hover,a.sl:hover{box-shadow:inset 0 0 0 1px var(--filo3)}
.sl .k{font-size:var(--t11);font-weight:600;color:var(--testo3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sl .v{font-size:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;letter-spacing:-.02em;color:var(--testo);line-height:1.1}
.sl .s{font-size:var(--t11);color:var(--testo3)}
.sl.acc .v{color:var(--acc-testo)}
.sl.att .v{color:var(--att-testo)}
.griglia-p{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@container (max-width:820px){.griglia-p{grid-template-columns:minmax(0,1fr)}}
.blocco{background:var(--sup);border-radius:14px;box-shadow:var(--anello);padding:16px 18px;min-width:0}
.blocco.largo{grid-column:1/-1}
.blocco h2{font-size:var(--t15);font-weight:700;letter-spacing:-.012em;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.blocco h2 .muto{font-size:var(--t12);font-weight:500;margin-left:auto}
.blocco .sotto-b{font-size:var(--t12);color:var(--testo3);margin:2px 0 10px}
.blocco>h2+:not(.sotto-b){margin-top:10px}
.m code{font-family:var(--mono);font-size:11px;letter-spacing:0;background:var(--sup3);color:var(--testo2);padding:1px 5px;border-radius:5px}
.tav td.data{white-space:nowrap}
.fatti{list-style:none;padding:0;display:flex;flex-direction:column}
.fatti li{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;padding:10px 0;border-top:1px solid var(--filo);font-size:var(--t13);line-height:1.5;color:var(--testo2)}
.fatti li:first-child{border-top:0;padding-top:4px}
.fatti li b{color:var(--testo);font-weight:650}
.fatti li a{color:var(--acc-testo);font-weight:600}
.fatti li .tess{width:28px;height:28px;border-radius:8px}
.fatti li .fonte{display:block;font-size:var(--t11);color:var(--testo4);margin-top:2px}
.tre{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.porta{background:var(--sup);border-radius:14px;box-shadow:var(--anello);padding:16px 18px;display:flex;flex-direction:column;gap:10px;cursor:pointer;transition:box-shadow 260ms var(--expo),transform 320ms var(--expo)}
.porta:hover{transform:translateY(-2px);box-shadow:0 0 0 1px var(--filo2),0 12px 24px -16px rgba(33,56,86,.42)}
.porta .capo{display:flex;align-items:center;gap:10px}.porta .capo b{font-size:var(--t17);font-weight:700;letter-spacing:-.015em}
.porta .capo .freccia{margin-left:auto;color:var(--testo3)}
.porta .num-g{font-size:var(--t34);font-weight:700;letter-spacing:-.03em;line-height:1}
.porta .num-g small{font-size:var(--t13);font-weight:500;color:var(--testo3);letter-spacing:0;margin-left:6px}
.porta .righe-p{display:flex;flex-direction:column;gap:4px;font-size:var(--t12);color:var(--testo2)}
.porta .righe-p div{display:flex;justify-content:space-between;gap:8px}.porta .righe-p b{color:var(--testo)}
.rank{display:flex;flex-direction:column;gap:4px}
.rank__r{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;font-size:var(--t12)}
.rank__r.link{cursor:pointer}.rank__r.link:hover .rank__t{color:var(--acc-testo)}
.rank__b{position:relative;height:26px;border-radius:7px;background:var(--sup3);overflow:hidden;min-width:0}
.rank__b i{position:absolute;left:0;top:0;bottom:0;border-radius:7px;background:color-mix(in oklab,var(--s1) 22%,var(--sup))}
.rank__r.ssv .rank__b i{background:color-mix(in oklab,var(--ok-pieno) 35%,var(--sup))}
.rank__t{position:relative;display:block;padding:0 10px;line-height:26px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--testo);font-weight:550}
.rank__n{font-family:var(--mono);font-size:11.5px;color:var(--testo2);min-width:64px;text-align:right}
.chartwrap{position:relative}
.chartwrap svg.chart{display:block;width:100%;height:auto;overflow:visible}
.ch-grid{stroke:var(--filo);stroke-width:1}
.ch-axis{fill:var(--testo3);font-size:10.5px;font-family:var(--mono)}
.ch-val{fill:var(--testo2);font-size:10.5px;font-family:var(--mono);font-weight:500}
.ch-bar{transition:opacity var(--d1)}.ch-bar:hover{opacity:.8}
.chtip{position:absolute;top:0;display:none;pointer-events:none;z-index:6;background:var(--sup);border-radius:10px;padding:8px 11px;box-shadow:var(--ombra-galleggia);font-size:12px;line-height:1.45;white-space:nowrap}
.chtip .tt{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--testo3);margin-bottom:3px}
.torta-riga{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.legenda{display:flex;flex-direction:column;gap:6px;font-size:var(--t12);min-width:180px;flex:1}
.legenda div{display:grid;grid-template-columns:10px 1fr auto auto;gap:8px;align-items:center}
.legenda i{width:10px;height:10px;border-radius:3px}
.legenda b{font-family:var(--mono);font-weight:500;font-size:11.5px}.legenda small{color:var(--testo3);font-family:var(--mono);font-size:11px;min-width:36px;text-align:right}
.fascia{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:10px 2px 0}
.fascia:not(:first-child){margin-top:14px;padding-top:18px;border-top:1px solid var(--filo)}
.fascia .tess{width:32px;height:32px;border-radius:9px;flex:none}
.fascia b{display:block;font-size:var(--t17);font-weight:700;letter-spacing:-.015em}
.fascia small{display:block;font-size:var(--t12);color:var(--testo3);margin-top:1px}

/* ── le tabelle ── */
.tw{overflow-x:auto;border-radius:12px;box-shadow:var(--anello);background:var(--sup)}
table.tav{border-collapse:collapse;width:100%;font-size:var(--t13)}
.tav thead th{position:sticky;top:0;background:var(--sup2);font-family:var(--font);font-size:12px;font-weight:500;color:var(--testo3);text-align:left;height:34px;padding:0 12px;white-space:nowrap;border-bottom:1px solid var(--filo);text-transform:none;letter-spacing:0}
.tav td{padding:9px 12px;border-bottom:1px solid color-mix(in oklab,var(--filo) 72%,transparent);vertical-align:top;color:var(--testo2)}
.tav tbody tr:last-child td{border-bottom:0}
.tav tbody tr:hover td{background:var(--riga-hover)}
.tav td b{color:var(--testo);font-weight:600}
.tav .n,.tav th.n{text-align:right;white-space:nowrap}
.tav a{color:var(--testo)}.tav a:hover{color:var(--acc-testo)}
.tav tr.link{cursor:pointer}
/* 2.32.1: «Vedi come…» in una finestrella che si sposta (prima era una fascia in alto che copriva la piattaforma) */
.anteprima-barra.anteprima-finestra{position:fixed;top:auto;left:auto;right:18px;bottom:18px;width:260px;display:block;padding:0;border-radius:14px;background:var(--testo);color:var(--sup);box-shadow:var(--ombra-galleggia);z-index:60;font-size:var(--t12)}
.anteprima-finestra__testa{display:flex;align-items:center;gap:8px;padding:9px 10px 6px 12px;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none;font-size:var(--t13)}
.anteprima-finestra--presa .anteprima-finestra__testa{cursor:grabbing}
.anteprima-finestra__testa svg{width:16px;height:16px;flex:none}
.anteprima-finestra__presa{margin-left:auto;opacity:.55;font-size:14px;line-height:1}
.anteprima-barra.anteprima-finestra p{margin:0;padding:0 12px 9px;line-height:1.4;flex:none}
.anteprima-finestra__azioni{display:flex;gap:6px;padding:0 10px 10px}
.anteprima-finestra__azioni .bottone{flex:1;justify-content:center}
.app.app--anteprima .contenuto{padding-top:0;padding-bottom:0}
/* 2.32.1: il nome della scuola in testa alla scheda a lato porta alla sua pagina in Scuole */
.testata-s h1 a.nome-scuola{color:inherit;text-decoration:none}
.testata-s h1 a.nome-scuola:hover,.testata-s h1 a.nome-scuola:focus-visible{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
/* 2.31: Andamento commerciali — i due gruppi di colonne (nel periodo / adesso) e la riga della squadra */
.squadra-tav td:first-child{min-width:170px}
.squadra-tav th.gruppo-th{text-align:center;font-weight:600;color:var(--testo2);height:28px}
.squadra-tav .sep{box-shadow:inset 1px 0 0 var(--filo)}
.squadra-tav tfoot td{background:var(--sup2);border-top:1px solid var(--filo);color:var(--testo)}
.squadra-tav .att{color:var(--att-testo)}
.attrezzi .chip input[type=date]{border:0;background:transparent;font:inherit;color:inherit;height:26px;padding:0;min-width:0}
td.muto{color:var(--testo3);font-size:var(--t12)}
.tav td.muto{max-width:420px}

/* ── i bottoni ── */
.b{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 12px;border-radius:8px;font-family:var(--font);font-size:var(--t12);font-weight:600;white-space:nowrap;background:var(--sup);color:var(--testo);box-shadow:var(--anello);border:0;cursor:pointer;text-decoration:none;transition:box-shadow var(--d1),background var(--d1),filter var(--d1)}
.b:hover{box-shadow:var(--anello-su);background:var(--sup2);text-decoration:none;color:var(--testo)}
.b svg{color:var(--testo3)}
.b.tinto{background:var(--acc-sup);color:var(--acc-testo);box-shadow:none}.b.tinto svg{color:var(--acc)}
.b.tinto:hover{background:var(--acc-sup2)}
.b.pieno{background:var(--acc);color:#fff;box-shadow:0 6px 14px -8px color-mix(in srgb,var(--acc) 80%,transparent)}.b.pieno svg{color:#fff}
.b.pieno:hover{background:var(--acc-forte);color:#fff}
:root[data-tema="scuro"] .b.pieno{color:#0a0a0b}:root[data-tema="scuro"] .b.pieno svg{color:#0a0a0b}
.b.grande{height:38px;padding:0 16px;font-size:var(--t13);border-radius:10px}
.b[disabled]{opacity:.5;cursor:default}
.azioni{display:flex;flex-wrap:wrap;gap:6px;align-items:center}

/* ── la scheda (dentro il peek) ── */
.dentro{max-width:1080px;margin:0 auto;padding:18px 28px 72px}
.testata-s{display:flex;flex-direction:column;gap:12px;padding:18px 0 4px}
.testata-r{display:flex;align-items:flex-start;gap:14px;padding-right:76px}
.testata-t{min-width:0;flex:1}
.testata-r .occhiello{font-family:var(--font);font-size:var(--t11);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--testo3);margin-bottom:3px}
.testata-s h1{font-size:var(--t24);line-height:1.15;letter-spacing:-.02em;font-weight:700}
.testata-s .sub{color:var(--testo2);font-size:var(--t13);margin-top:4px}
.pastiglie{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sez h3{font-size:var(--t12);font-weight:600;color:var(--testo3);margin:16px 2px 8px;letter-spacing:.02em}
.nota{font-size:var(--t11);color:var(--testo3);margin-top:8px}
.pr{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px;align-items:start;padding:10px 6px;border-bottom:1px solid var(--filo)}
.pr:last-child{border-bottom:0}
.pr .tess{width:30px;height:30px;font-size:10.5px;margin-top:1px}
.pr-c{min-width:0}
.pr .nome{font-size:var(--t14);font-weight:600;color:var(--testo)}
.pr .ruolo{font-size:var(--t12);color:var(--testo2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pr .ruolo span{color:var(--testo3)}
.pr .con{display:flex;flex-wrap:wrap;gap:3px 16px;margin-top:5px;font-size:var(--t12)}
.pr .con a{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;color:var(--testo2)}.pr .con a:hover{color:var(--acc-testo)}
.pr .con svg{color:var(--testo4);flex:none}
.pr .fonti{font-size:var(--t11);color:var(--testo4);margin-top:3px}
.gruppo-p{background:var(--sup);border-radius:12px;box-shadow:var(--anello);padding:2px 12px;margin-bottom:10px}
.gruppo-p .capo-g{display:flex;justify-content:space-between;font-size:var(--t11);font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--testo3);padding:10px 6px 4px}
.fatti-s{list-style:none;display:flex;flex-direction:column;background:var(--sup);border-radius:12px;box-shadow:var(--anello);padding:4px 14px}
.fatti-s li{display:grid;grid-template-columns:22px 1fr;gap:10px;padding:9px 0;border-top:1px solid var(--filo);font-size:var(--t13);line-height:1.5;color:var(--testo2)}
.fatti-s li:first-child{border-top:0}
.fatti-s li svg{color:var(--acc);margin-top:2px}
.fatti-s li b{color:var(--testo);font-weight:650}
.fatti-s li a{color:var(--acc-testo);font-weight:600}
.anni{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.anno{background:var(--sup);border-radius:12px;box-shadow:var(--anello);padding:10px 12px}
.anno .capo-a{font-size:var(--t12);font-weight:700;color:var(--testo);margin-bottom:6px;display:flex;justify-content:space-between;gap:8px}
.anno .capo-a span{color:var(--testo3);font-weight:500}
.anno .riga{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:var(--t12);padding:3px 0}
.anno .riga span:last-child{color:var(--testo2);white-space:nowrap}
.anno .riga>span:first-child{min-width:0;flex:1;overflow:hidden}
details.doc{background:var(--sup);border-radius:10px;box-shadow:var(--anello);margin:6px 0}
details.doc>summary{cursor:pointer;padding:9px 12px;list-style:none;display:flex;gap:10px;align-items:baseline;font-size:var(--t13)}
details.doc>summary::-webkit-details-marker{display:none}
details.doc>summary:before{content:"›";color:var(--testo3);transition:transform .2s var(--expo);display:inline-block;width:8px}
details.doc[open]>summary:before{transform:rotate(90deg)}
details.doc>summary b{color:var(--testo)}
details.doc>summary .muto{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
details.doc>summary a{color:var(--acc-testo);font-weight:600;font-size:var(--t12)}
details.doc>div{padding:0 14px 12px 30px}
dl.kv{display:grid;grid-template-columns:minmax(120px,200px) 1fr;gap:4px 14px;font-size:var(--t12)}
dl.kv dt{color:var(--testo3)}dl.kv dd{margin:0;color:var(--testo2);overflow-wrap:anywhere}
dl.kv dd a{color:var(--acc-testo)}
.filtri-a{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.filtri-a button{height:26px;padding:0 10px;border-radius:var(--r-pill);font-size:var(--t12);font-weight:600;color:var(--testo2);background:var(--sup3)}
.filtri-a button.viva{background:var(--testo);color:var(--sup)}
.testo-lungo{white-space:pre-wrap;font-size:var(--t13);line-height:1.55;color:var(--testo2);background:var(--sup2);border-radius:10px;box-shadow:inset 0 0 0 1px var(--filo);padding:10px 12px;max-height:260px;overflow:auto}
nav.sez-nav{position:sticky;top:0;z-index:6;transition:top 260ms var(--expo),box-shadow 160ms;display:flex;align-items:center;gap:12px;margin:16px -28px 0;padding:0 28px;height:50px;background:var(--vetro);backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border-bottom:1px solid var(--filo)}
.nav-tag{display:flex;gap:2px;min-width:0;flex:1;overflow-x:auto;scrollbar-width:none;padding:0 2px}
.nav-tag::-webkit-scrollbar{display:none}
.nav-tag a{position:relative;flex:none;height:32px;padding:0 11px;border-radius:8px;display:inline-flex;align-items:center;gap:6px;font-size:var(--t12);font-weight:560;color:var(--testo2);white-space:nowrap;overflow:hidden}
.nav-tag a:hover{background:var(--sup3);color:var(--testo);text-decoration:none}
.nav-tag a .n{color:var(--testo3);font-weight:500}
.nav-tag a.viva{background:var(--acc-sup);color:var(--acc-testo);font-weight:650}
.nav-tag a.viva .n{color:var(--acc-testo);opacity:.7}
.sez{min-width:0;scroll-margin-top:116px;margin-top:36px;padding-top:28px;border-top:1px solid var(--filo);position:relative}
.sez::before{content:"";position:absolute;top:-1px;left:0;width:44px;height:2px;border-radius:2px;background:var(--acc)}
nav.sez-nav+.sez{border-top:0;margin-top:22px;padding-top:0}nav.sez-nav+.sez::before{display:none}
.sez-t{display:flex;align-items:center;gap:10px;margin:0 2px 14px;min-width:0}
.sez-i{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--acc-sup);color:var(--acc)}
.sez-t h2{font-size:20px;line-height:1.2;font-weight:720;letter-spacing:-.024em;flex:none}
.sez-n{margin-left:auto;min-width:0;font-size:var(--t12);color:var(--testo3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.barra-fissa{position:absolute;top:0;left:0;right:0;z-index:8;height:52px;background:var(--vetro);backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);box-shadow:0 1px 0 var(--filo);transform:translateY(-100%);opacity:0;pointer-events:none;transition:transform 260ms var(--expo),opacity 160ms var(--quad)}
.barra-fissa>div{max-width:1080px;height:100%;margin:0 auto;padding:0 110px 0 28px;display:flex;align-items:center;gap:10px;min-width:0}
.barra-fissa b{font-size:var(--t15);font-weight:700;letter-spacing:-.012em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#peek.fisso .barra-fissa{transform:none;opacity:1;pointer-events:auto}
#peek.fisso nav.sez-nav{top:52px;box-shadow:0 8px 20px -18px rgba(33,56,86,.5)}
.due-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:18px;align-items:start}
@container (max-width:820px){.due-col{grid-template-columns:minmax(0,1fr)}}
#peek .dentro{container-type:inline-size}
.maniglia{position:absolute;top:14px;bottom:14px;width:12px;cursor:col-resize;z-index:40;touch-action:none}
#barra .maniglia{right:-11px}
#peek .maniglia{left:0}
.maniglia::after{content:"";position:absolute;left:50%;top:50%;width:3px;height:40px;margin:-20px 0 0 -1.5px;border-radius:2px;background:var(--acc);opacity:0;transition:opacity 140ms,height 180ms var(--expo),margin 180ms var(--expo)}
.maniglia:hover::after{opacity:1}
body.trascino .maniglia::after{opacity:1;height:72px;margin-top:-36px}
body.trascino{cursor:col-resize;user-select:none;-webkit-user-select:none}
body.trascino #pannello{pointer-events:none}
body.trascino #peek,body.trascino #pannello,body.trascino #barra{transition:none}
#peek.pagina .maniglia{display:none}
html.tema-cerchio::view-transition-old(root){animation:none;mix-blend-mode:normal}
html.tema-cerchio::view-transition-new(root){animation:tema-cerchio 640ms var(--quad);mix-blend-mode:normal}
@keyframes tema-cerchio{from{clip-path:circle(0px at var(--vt-x,50%) var(--vt-y,50%))}to{clip-path:circle(var(--vt-r,150vmax) at var(--vt-x,50%) var(--vt-y,50%))}}
html.tema-cerchio *,html.tema-cerchio *::before,html.tema-cerchio *::after{transition-property:none!important}
@media (prefers-reduced-motion:reduce){html.tema-cerchio::view-transition-new(root){animation:none}}
:root[data-tema="scuro"] .g-navy{background-color:#3b4b68}

/* ── i pezzi della beta ── */
.carica{padding:16px 24px;display:flex;flex-direction:column;gap:10px}
.carica i{display:block;height:58px;border-radius:12px;background:linear-gradient(90deg,var(--sup3),var(--sup2),var(--sup3));background-size:200% 100%;animation:luccica 1.4s linear infinite}
.carica i:first-child{height:90px}
@keyframes luccica{to{background-position:-200% 0}}
.avviso-b{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:var(--ambra-sup);color:var(--ambra-testo);font-size:var(--t12);line-height:1.5}
.avviso-b.blu{background:var(--acc-sup);color:var(--acc-testo)}
.avviso-b svg{margin-top:1px}
.avviso-b b{color:inherit}
.avviso-b a{text-decoration:underline;text-underline-offset:2px;font-weight:600}
.riga-kv{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:var(--t12);color:var(--testo3)}
.riga-kv b{color:var(--testo2);font-weight:600}
.beta-pill{display:inline-grid;place-items:center;height:16px;padding:0 6px;border-radius:var(--r-pill);background:var(--acc-sup);color:var(--acc-testo);font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-left:6px;vertical-align:1px}
.scelte-b{display:flex;flex-direction:column;gap:8px}
.scelte-b label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;box-shadow:var(--anello);cursor:pointer;background:var(--sup)}
.scelte-b label:has(input:checked){box-shadow:0 0 0 1.5px var(--acc);background:color-mix(in oklab,var(--acc) 5%,var(--sup))}
.scelte-b input{margin-top:3px;accent-color:var(--acc)}
.scelte-b small{display:block;color:var(--testo3);font-size:var(--t12);margin-top:1px}
.storia{display:flex;flex-direction:column}
.storia>div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;padding:9px 2px;border-top:1px solid var(--filo);font-size:var(--t13)}
.storia>div:first-child{border-top:0}
.storia .q{font-size:var(--t12);color:var(--testo3);line-height:1.35}
.storia .q b{display:block;color:var(--testo2);font-weight:600}
.storia p{color:var(--testo2);line-height:1.5;margin-top:3px;white-space:pre-wrap}
.coda-vuota{padding:48px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--testo3)}
.coda-vuota .vela{width:54px;height:auto;opacity:.9;margin-bottom:6px}
.coda-vuota h2{font-size:var(--t17);color:var(--testo)}

/* il telefono: niente barra, il pannello a tutto schermo e il menu che scende */
.testata-m{display:none}
.velo-m{display:none}
@media (max-width:1300px){.tre{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .tre{grid-template-columns:1fr}
  .testata-m{position:fixed;top:0;left:0;right:0;height:52px;z-index:25;display:flex;align-items:center;gap:10px;padding:0 12px;background:var(--vetro);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 1px 0 var(--filo)}
  .testata-m button{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:var(--testo2)}
  .testata-m b{font-size:var(--t15)}
  #barra{transform:translateX(calc(-100% - 20px));transition:transform 280ms var(--expo);z-index:40;box-shadow:var(--ombra-galleggia)}
  body.menu-aperto #barra{transform:none}
  body.menu-aperto .velo-m{display:block;position:fixed;inset:0;z-index:35;background:rgba(10,10,11,.35)}
  #pannello{left:var(--rientro);top:60px}
  body.peek-aperto #pannello{right:var(--rientro)}
  #peek{width:calc(100vw - 20px);top:60px}
  .dentro{padding:12px 16px 48px}.testata-r{padding-right:80px}dl.kv{grid-template-columns:1fr}
  nav.sez-nav{margin:16px -16px 0;padding:0 16px}.barra-fissa>div{padding-left:16px}
  .testa{padding:18px 16px 8px}.attrezzi{padding:8px 16px 10px}.corpo-p{padding:4px 12px 80px}.pano{padding:6px 16px 80px}
  .rn{grid-template-columns:32px minmax(0,1fr);gap:10px}.rn .dx{grid-column:2;align-items:flex-start;text-align:left;flex-direction:row;gap:8px;min-width:0}
}

/* =====================================================================
   Il ponte: le schermate della piattaforma dentro il pannello, con l'aspetto di Mercato
   ===================================================================== */
.vecchia{font-size:var(--t13);color:var(--testo);min-height:100%}
.vecchia .pagina{max-width:1180px;padding:22px 24px 80px;animation:none}
.vecchia a{color:var(--acc-testo)}
.vecchia a:hover{color:var(--acc-forte)}
.vecchia .intestazione{margin-bottom:16px;align-items:flex-end}
.vecchia .occhiello,.vecchia .mano{font:600 var(--t11)/1.3 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--testo3);margin-bottom:4px}
.vecchia .titolo{font:700 var(--t28)/1.1 var(--font);letter-spacing:-.02em;text-transform:none;color:var(--testo)}
.vecchia .sottotitolo{color:var(--testo2);font-size:var(--t13);line-height:1.5}
.vecchia h1,.vecchia h2,.vecchia h3,dialog h2,.vecchia .sezione>h2,.vecchia .sezione__testa h2,.vecchia .vuoto h2,.dialogo__corpo h2{font-family:var(--font);text-transform:none;letter-spacing:-.014em;font-weight:700;color:var(--testo)}
.vecchia .sezione>h2,.vecchia .sezione__testa h2{font-size:var(--t15)}
.vecchia .vuoto h2,.dialogo__corpo h2{font-size:var(--t17)}
/* le carte della piattaforma hanno già l'anello e gli angoli di Mercato dai token (--ombra, --r-l); qui solo i titoli */
.vecchia .sezione>h2,.vecchia .sezione__testa h2{margin-bottom:10px}
.vecchia .numero{border-radius:12px;box-shadow:inset 0 0 0 1px var(--filo);background:var(--sup2)}
.vecchia .numero__valore{font:700 22px/1.1 var(--font);letter-spacing:-.02em;color:var(--testo)}
.vecchia .numero__etichetta{font:600 var(--t11)/1.3 var(--font);color:var(--testo3);text-transform:none;letter-spacing:0}
.vecchia .numero--accento{background:var(--acc-sup);box-shadow:none}.vecchia .numero--accento .numero__valore{color:var(--acc-testo)}
.vecchia .numero--allarme{background:var(--att-sup);box-shadow:none}.vecchia .numero--allarme .numero__valore{color:var(--att-testo)}
.vecchia .numero--petrolio{background:var(--ok-sup);box-shadow:none}.vecchia .numero--petrolio .numero__valore{color:var(--ok-testo)}
.bottone{font-family:var(--font);font-size:var(--t12);font-weight:600;letter-spacing:0;text-transform:none;border-radius:8px;min-height:30px;padding:6px 12px;background:var(--sup);color:var(--testo);border:0;box-shadow:var(--anello);gap:6px}
.bottone:hover{background:var(--sup2);box-shadow:var(--anello-su);color:var(--testo);transform:none}
.bottone svg{width:14px;height:14px;color:var(--testo3)}
.bottone--primario,.bottone--petrolio{background:var(--acc);color:#fff;box-shadow:none}
.bottone--primario:hover,.bottone--petrolio:hover{background:var(--acc-forte);color:#fff}
.bottone--primario svg,.bottone--petrolio svg{color:#fff}
.bottone--pericolo{background:var(--no-sup);color:var(--no-testo);box-shadow:none}
.bottone--testo{background:none;box-shadow:none;color:var(--acc-testo)}
.bottone--grande{min-height:38px;font-size:var(--t13);padding:8px 16px;border-radius:10px}
.bottone--piccolo{min-height:26px;padding:3px 10px;font-size:var(--t12)}
.bottone-icona{border-radius:50%;color:var(--testo2)}
.bottone-chiama{font-family:var(--font);font-weight:600;border-radius:8px;background:var(--acc);color:#fff}
.pastiglia{font:600 11.5px/1 var(--font);letter-spacing:0;text-transform:none;border-radius:var(--r-pill);padding:5px 9px;background:var(--grigio-sup);color:var(--grigio-t)}
.pastiglia--nuovo,.pastiglia--notizia{background:var(--acc-sup);color:var(--acc-testo)}
.pastiglia--richiamo{background:var(--ambra-sup);color:var(--ambra-testo)}
.pastiglia--scaduto,.pastiglia--errore{background:var(--no-sup);color:var(--no-testo)}
.pastiglia--ok{background:var(--ok-sup);color:var(--ok-testo)}
.pastiglia--no{background:var(--grigio-sup);color:var(--grigio-t)}
.pastiglia--occupata{background:var(--att-sup);color:var(--att-testo)}
.pastiglia--arancio{background:var(--acc);color:#fff}
.vecchia input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),.vecchia select,.vecchia textarea,dialog input:not([type=checkbox]):not([type=radio]):not([type=file]),dialog select,dialog textarea{font-family:var(--font);font-size:var(--t13);color:var(--testo);background:var(--sup3);border:0;border-radius:10px;box-shadow:none}
.vecchia input:focus,.vecchia select:focus,.vecchia textarea:focus,dialog input:focus,dialog select:focus,dialog textarea:focus{background:var(--sup);box-shadow:0 0 0 1px var(--acc),0 0 0 4px var(--acc-sup);outline:0}
.vecchia .campo>span,dialog .campo>span{font:600 var(--t12)/1.3 var(--font);color:var(--testo2);text-transform:none;letter-spacing:0}
.vecchia table{font-size:var(--t13)}
.vecchia th{font:500 12px/1.3 var(--font);color:var(--testo3);text-transform:none;letter-spacing:0;background:var(--sup2)}
.vecchia td{color:var(--testo2)}
.vecchia .chip{height:24px;padding:0 9px;font-size:11.5px}
.vecchia kbd{border-color:var(--filo2);color:var(--testo3)}
dialog{border-radius:16px;box-shadow:var(--ombra-galleggia);background:var(--sup);color:var(--testo)}
dialog::backdrop{background:rgba(10,12,16,.38);backdrop-filter:blur(3px)}
.toast{font-family:var(--font);font-size:var(--t13);border-radius:12px;background:var(--testo);color:var(--sup);box-shadow:var(--ombra-galleggia)}
.toast--errore{background:var(--no);color:#fff}
.avvisi{left:50%;transform:translateX(-50%)}
.avatar{font-family:var(--font)}
.chiamata__barra{background:var(--vetro);backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);box-shadow:0 1px 0 var(--filo);border:0}
.vecchia .elenco{border-radius:14px;box-shadow:var(--anello)}
.anteprima-barra{left:calc(var(--barra-l) + var(--rientro)*3);background:var(--testo);color:var(--sup);border-radius:12px;font-size:var(--t13)}
.vecchia .scheletro i{background:linear-gradient(90deg,var(--sup3),var(--sup2),var(--sup3));background-size:200% 100%}
/* la chiamata e le pagine lunghe: il pannello scorre, le colonne fisse restano dentro */
.vecchia .chiamata{min-height:100%}
/* niente onde e cerchi del catalogo e niente aloni arancio: in Mercato le carte sono piatte */
.vecchia .scheda-scuola::after,.vecchia .copione::before,.vecchia .bando-card::after,.vecchia .numero--accento::after{display:none}
/* Il pulsante di chiamata è un link tel: e i link del pannello sono blu: qui il numero resta bianco, su un blu
   abbastanza scuro da leggerlo bene nei due temi (contrasto oltre 5:1). */
.vecchia a.telefono,.vecchia a.telefono:hover,.vecchia a.telefono:visited,.vecchia a.telefono:focus-visible{color:#fff}
.telefono{background:#2458e6;box-shadow:0 10px 24px -14px rgba(36,88,230,.8)}
.telefono:hover{background:#1f4fd3;box-shadow:0 14px 28px -14px rgba(36,88,230,.85)}
.telefono .telefono__numero{color:#fff}
.telefono .telefono__nota{color:rgba(255,255,255,.9);opacity:1}
.telefono .telefono__icona{background:rgba(255,255,255,.18);color:#fff}
.bottone--primario:hover,.bottone--petrolio:hover{box-shadow:none}
.riga-scuola:hover .bottone-chiama{box-shadow:none}
.pastiglia--no,.esito--non_interessati{background:var(--grigio-sup);color:var(--testo2)}
.wa{font-family:var(--font);border-color:transparent;background:var(--ok-sup);color:var(--ok-testo)}
.campagna__anteprima{background:var(--sup3)}
.novita__marchio{box-shadow:none}
.chip--tema-memoria,.chip--tema-lingue,.chip--tema-erasmus{border:0}
/* i fondi chiari scritti a mano nella piattaforma: con i token funzionano anche al buio */
.riga-scuola:hover,.vecchia tbody tr:hover{background:var(--riga-hover)}
.fatto{background:var(--sup2);box-shadow:inset 0 0 0 1px var(--filo)}
.fatto__valore,.fatto__etichetta{font-family:var(--font)}
.fatto__etichetta{letter-spacing:.06em;color:var(--testo3)}
.copione__traccia,.copione__fase{color:var(--testo2)}
.obiezione[open]{background:var(--sup2)}
.codice-script{background:var(--sup3)}
.dash-chip,.chip-scelta span{background:var(--sup);border-color:var(--filo2);color:var(--testo2);font-family:var(--font)}
.chip-scelta input:checked+span{background:var(--testo);border-color:var(--testo);color:var(--sup)}
.esito{font-family:var(--font);border-radius:12px}
.esito--da_richiamare{background:var(--acc);color:#fff}
.esito--non_interessati{background:var(--grigio-sup);color:var(--testo2)}
.esito--nessuna_risposta{background:var(--ambra-sup);color:var(--ambra-testo)}
.esito:hover{box-shadow:0 8px 18px -10px rgba(0,0,0,.35)}
.evidenzia{background:linear-gradient(transparent 58%,color-mix(in oklab,var(--ambra) 35%,transparent) 58%,color-mix(in oklab,var(--ambra) 35%,transparent) 92%,transparent 92%)}
.interruttore input{background:var(--sup4)}
:root[data-tema="scuro"] .copione__testo{color:var(--testo)}
.chip--tema-memoria{background:var(--ambra-sup);color:var(--ambra-testo)}.chip--tema-lingue{background:var(--verde2-sup);color:var(--verde2-testo)}.chip--tema-erasmus{background:var(--acc-sup);color:var(--acc-testo)}
.vecchia .accesso{min-height:100%}

/* l'avvio e l'accesso (pagina intera, senza guscio) */
.avvio{background:var(--pav)}
.avvio__testo{font:600 12px/1 var(--font);letter-spacing:.12em;color:var(--testo3)}
.accesso{background:var(--sup)}
.accesso h1{font:700 var(--t28)/1.1 var(--font);letter-spacing:-.02em;text-transform:none;color:var(--testo)}
.accesso__claim{font-family:var(--font);text-transform:none;letter-spacing:-.02em;font-weight:700}
.chiusa{position:fixed;inset:0;display:grid;place-items:center;padding:20px}
.chiusa .blocco{max-width:480px;padding:24px 26px;display:flex;flex-direction:column;gap:10px}
.chiusa .vela{width:48px;height:auto;margin-bottom:4px}
.chiusa h1{font-size:var(--t20)}
.chiusa p{color:var(--testo2);line-height:1.55}

/* ── la cartina dei viaggi (beta/cartina.js) e la sezione «Viaggi» della scheda ── */
:root{--mare:#eef3fb;--terra:#ffffff;--terra-it:#f3f6fb;--confine:#d3dae6;--bolla:color-mix(in oklab,var(--acc) 42%,transparent)}
:root[data-tema="scuro"]{--mare:#0d1320;--terra:#1b1b1f;--terra-it:#232833;--confine:rgba(255,255,255,.14);--bolla:color-mix(in oklab,var(--acc) 50%,transparent)}
.cartina{margin:10px 0 4px}
.cartina__svg{display:block;width:100%;height:auto;max-height:560px;background:var(--mare);border-radius:var(--r-md);box-shadow:var(--anello)}
.cartina .paese{fill:var(--terra);stroke:var(--confine);stroke-width:.8;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.cartina .paese.it{fill:var(--terra-it)}
.cartina .bolla{fill:var(--bolla);stroke:var(--acc);stroke-width:1;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill var(--d1)}
.cartina .bolla:hover,.cartina .bolla:focus-visible{fill:color-mix(in oklab,var(--acc) 70%,transparent);outline:none}
.cartina .bolla.viva{fill:color-mix(in oklab,var(--att) 70%,transparent);stroke:var(--att)}
.cartina .etichetta{fill:var(--testo);font-weight:600;paint-order:stroke;stroke:var(--mare);stroke-width:3px;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}
.cartina__fuori{margin:8px 2px 0;font-size:var(--t12);color:var(--testo2);line-height:1.7}
.cartina__fuori .collega{color:var(--acc-testo);font-weight:600;text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--acc) 35%,transparent)}
.cartina__legenda{margin:6px 2px 0;font-size:var(--t11);color:var(--testo3)}
.viaggi-attrezzi{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:2px 0 8px}
.viaggi-sintesi{margin:4px 2px 6px;color:var(--testo2);line-height:1.6}
.viaggi-sintesi .muto{margin-right:2px}
.viaggi-filtro{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 2px 8px;color:var(--testo2)}
.viaggi-elenco{margin-top:12px}
.viaggi-elenco .forn,.cartina-scuole .forn{display:inline-flex;align-items:center;gap:5px;font-size:var(--t12);color:var(--testo3)}
.viaggi-elenco .forn svg{color:var(--testo4)}
#peek .nota,.cartina-pagina .nota{margin-top:10px;font-size:var(--t11);color:var(--testo3);line-height:1.5}
.cartina-pagina .griglia-c{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}
.cartina-pagina .griglia-c .blocco{min-width:0}
@container (max-width:980px){.cartina-pagina .griglia-c{grid-template-columns:minmax(0,1fr)}}
.cartina-scuole .rn{cursor:pointer}

/* ── scegli le scuole da chiamare (beta/viste/scegli.js) ── */
.rn.scegli{cursor:pointer;grid-template-columns:20px 36px minmax(0,1fr)}
@media (max-width:760px){.rn.scegli{grid-template-columns:20px 32px minmax(0,1fr)}}
.rn.scegli input[type=checkbox]{width:17px;height:17px;margin:0 2px 0 0;accent-color:var(--acc);cursor:pointer;align-self:center}
.rn.scegli.viva{background:var(--acc-sup)}
.scegli-elenco{padding-bottom:110px}
.barra-scegli{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;gap:10px;margin:0 16px 12px;padding:10px 12px 10px 16px;background:var(--vetro);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--r-lg);box-shadow:var(--ombra-galleggia);color:var(--testo2)}
.barra-scegli.viva{color:var(--testo)}
.barra-scegli .spazio{flex:1}
.b[disabled]{opacity:.45;pointer-events:none}
.avviso-scegli{display:flex;align-items:center;gap:12px;margin-top:6px}
.avviso-scegli div{flex:1;min-width:0}.avviso-scegli small{display:block;color:var(--testo3);margin-top:2px}

/* ── tabelle delle schermate di sempre (Utenti, Smistamento…): i nomi lunghi dei bandi vanno a capo e la colonna
   dei pulsanti («Modifica») resta sempre a vista, anche quando la tabella è più larga del pannello ── */
.vecchia td .riga-azioni{flex-wrap:wrap;min-width:0}
.vecchia td .chip{white-space:normal;height:auto;min-height:24px;padding:4px 9px;line-height:1.3;max-width:300px;min-width:0;flex:0 1 auto;text-align:left;overflow-wrap:anywhere}
.vecchia .tabella-contenitore th.stretta,.vecchia .tabella-contenitore td.stretta{position:sticky;right:0;z-index:1;background:var(--sup);box-shadow:-10px 0 12px -12px rgba(0,0,0,.35)}
.vecchia .tabella-contenitore thead th.stretta{background:var(--sup2)}
/* 2.27: Smistamento, lo stato del bando: il filtro accanto al titolo e un filo del colore dello stato a sinistra della riga */
.vecchia .stato-bandi{width:auto;min-width:220px;min-height:34px;padding:6px 34px 6px 12px}
.vecchia .copertura tr[data-stato="graduatoria"]>td:first-child{box-shadow:inset 3px 0 0 var(--ok)}
.vecchia .copertura tr[data-stato="aperto"]>td:first-child{box-shadow:inset 3px 0 0 var(--acc)}
.vecchia .copertura tr[data-stato="attesa"]>td:first-child{box-shadow:inset 3px 0 0 var(--ambra)}
.vecchia .copertura td .pastiglia{white-space:nowrap}
/* 2.30: i bandi conclusi (viaggio entro già passato): filo grigio e riga più tenue; nella scheda della scuola, lo storico */
.vecchia .copertura tr[data-stato="concluso"]>td:first-child{box-shadow:inset 3px 0 0 var(--filo3)}
.vecchia .copertura tr[data-stato="concluso"]>td{color:var(--testo3)}
.tav tr.concluso td{color:var(--testo3)}
/* 2.43: Smistamento, la colonna «Stato» scelta dalla responsabile (una tendina colorata) e la ricerca dei bandi */
.vecchia .stato-scelta{display:inline-flex}
.vecchia .stato-scelta select{width:auto;min-width:150px;min-height:32px;padding:5px 30px 5px 10px;font-weight:600;border-radius:999px;border:1px solid var(--filo2);cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath fill='%236b7280' d='M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px}
.vecchia .stato-scelta--attivo select{background-color:var(--ok-sup);color:var(--ok-testo);border-color:transparent}
.vecchia .stato-scelta--da_verificare select{background-color:var(--ambra-sup);color:var(--ambra-testo);border-color:transparent}
.vecchia .stato-scelta--concluso select{background-color:var(--grigio-sup);color:var(--grigio-t);border-color:transparent}
.vecchia .stato-scelta--archiviato select{background-color:var(--sup2);color:var(--testo3);border-style:dashed}
.vecchia .copertura tr[data-scelta="da_verificare"]>td:first-child{box-shadow:inset 3px 0 0 var(--ambra)}
.vecchia .copertura tr[data-stato="archiviato"]>td{color:var(--testo3)}
.vecchia .copertura tr[data-stato="archiviato"]>td:first-child{box-shadow:inset 3px 0 0 var(--filo3)}
.vecchia .copertura td.cella-stato{min-width:180px}
.vecchia .filtri--bandi{grid-template-columns:minmax(220px,1.6fr) minmax(220px,1fr)}
@media (max-width:760px){.vecchia .filtri--bandi{grid-template-columns:1fr}}
/* 2.28: anche nella lista Scuole il filo del colore dello stato (grigio: la graduatoria è uscita e la scuola non c'è) */
.vecchia .tabella-contenitore tr[data-riga][data-stato="graduatoria"]>td:first-child{box-shadow:inset 3px 0 0 var(--ok)}
.vecchia .tabella-contenitore tr[data-riga][data-stato="aperto"]>td:first-child{box-shadow:inset 3px 0 0 var(--acc)}
.vecchia .tabella-contenitore tr[data-riga][data-stato="attesa"]>td:first-child{box-shadow:inset 3px 0 0 var(--ambra)}
.vecchia .tabella-contenitore tr[data-riga][data-stato="fuori"]>td:first-child{box-shadow:inset 3px 0 0 var(--filo3)}

/* 2.20: lo script della chiamata, le note dei bandi (giallo) e il bando in breve (blu), due colori ben diversi */
.script{list-style:none;margin:12px 0 6px;padding:0;display:grid;gap:8px;counter-reset:passo}
.script__passo{position:relative;padding:10px 12px 10px 42px;border-radius:12px;background:var(--sup2);counter-increment:passo}
.script__passo::before{content:counter(passo);position:absolute;left:12px;top:10px;width:20px;height:20px;border-radius:50%;background:var(--testo);color:var(--sup);font-size:11px;font-weight:700;line-height:20px;text-align:center}
.script__passo--cuore{box-shadow:inset 3px 0 0 var(--testo)}
.script__nome{display:block;font-size:var(--t11);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--testo3);margin-bottom:4px}
.script__passo p{margin:0 0 6px;line-height:1.55}
.script__consiglio{display:block;color:var(--testo3);font-size:var(--t12);line-height:1.45}
.script__pausa{display:inline-block;font-size:var(--t11);color:var(--testo3);border:1px dashed var(--filo);border-radius:6px;padding:0 6px;margin-left:4px;vertical-align:1px}
.script__domande{margin:0;padding-left:18px;display:grid;gap:3px;line-height:1.5}
.note-bando{margin:12px 0;padding:10px 12px;border-radius:12px;background:var(--ambra-sup);box-shadow:inset 4px 0 0 var(--ambra);color:var(--testo)}
.note-bando__testa{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;flex-wrap:wrap}
.note-bando__titolo{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--ambra-testo)}
.note-bando__titolo svg{width:16px;height:16px}
.note-bando__titolo small{font-weight:500}
.note-bando__elenco{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.note-bando__elenco li{padding:8px 10px;border-radius:10px;background:color-mix(in oklab,var(--sup) 72%,transparent)}
.note-bando__elenco p{margin:0 0 4px;line-height:1.5}
.note-bando__elenco small{color:var(--testo3)}
.note-bando__vuoto{margin:0;color:var(--ambra-testo);font-size:var(--t12);line-height:1.45}
.recap-bando{padding:12px 14px;border-radius:12px;background:var(--acc-sup);box-shadow:inset 4px 0 0 var(--acc);color:var(--testo)}
.recap-bando__titolo{display:flex;align-items:center;gap:6px;font-weight:700;color:var(--acc-testo);margin-bottom:8px}
.recap-bando dl{display:grid;grid-template-columns:minmax(118px,max-content) 1fr;gap:6px 14px;margin:0}
.recap-bando dt{color:var(--acc-testo);font-size:var(--t12);font-weight:600;padding-top:1px}
.recap-bando dd{margin:0;line-height:1.45}
.recap-bando__fonte{margin:8px 0 0;font-size:var(--t12);color:var(--testo3)}
.recap-e-note{display:grid;gap:10px;margin:14px 0 4px}
.recap-e-note .note-bando{margin:0}
.note-coda{display:flex;gap:10px;align-items:flex-start;padding:0 24px;margin:2px 0 6px}
.note-coda .note-bando{flex:1;margin:0}
@media (max-width:720px){.note-coda{padding:0 12px;flex-direction:column}.recap-bando dl{grid-template-columns:1fr}}
.copione__bando{cursor:pointer;border:0;font:inherit}
.copione__bando:hover{text-decoration:underline;text-underline-offset:2px}
.nome-bando{padding:0;text-align:left;font:inherit;color:inherit}
.nome-bando:hover b{text-decoration:underline;text-underline-offset:2px}

/* ── Leggibilità nei due temi (2.21) ──────────────────────────────────────────────────────────────────────
   Al buio l'accento è un blu chiaro: sopra ci va il testo scuro (--su-acc), come nei pulsanti pieni di Mercato. I fondi
   che di giorno sono scuri con la scritta bianca (petrolio scuro, errore) al buio diventerebbero chiari: qui restano
   scuri. I grigi dei testi secondari salgono quanto basta a leggerli sul fondo delle carte (almeno 4,5:1). */
:root[data-tema="scuro"]{--testo3:rgba(246,246,246,.62);--testo4:rgba(246,246,246,.48);--grigio-t:#a1a1aa}
/* avvisi e barra di «Vedi come…»: i pulsanti prendono il colore del testo dell'avviso (chiaro di giorno, scuro al buio) */
.toast__azioni a,.toast__azioni button:not(.toast__chiudi){color:inherit;border-color:color-mix(in srgb,currentColor 40%,transparent)}
.toast__azioni a:hover,.toast__azioni button:not(.toast__chiudi):hover{background:color-mix(in srgb,currentColor 14%,transparent)}
.toast__chiudi{color:inherit}
.anteprima-barra .bottone:not(.bottone--primario){color:inherit;border-color:color-mix(in srgb,currentColor 45%,transparent)}
/* i link del pannello sono blu: non sui pulsanti pieni né su quello di Google (bianco, scritta scura) */
.vecchia a:is(.bottone--primario,.bottone--petrolio),.vecchia a:is(.bottone--primario,.bottone--petrolio):hover{color:#fff}
.vecchia a.bottone-google,.vecchia a.bottone-google:hover{color:#1f1f1f}
/* «Interessati»: il verde acceso con la scritta bianca non si leggeva (2,3:1); di giorno un verde più pieno */
.esito--interessati{background:#08803d;color:#fff}
:root[data-tema="scuro"] .esito--interessati{background:var(--ok)}
:root[data-tema="scuro"] :is(.bottone--primario,.bottone--petrolio,.bottone-chiama,.pastiglia--arancio,.esito--interessati,.esito--da_richiamare,.scorciatoia[aria-pressed="true"],.linguette button[aria-selected="true"],.dash-chip[aria-pressed="true"],.dash-voce__conto:not(.dash-voce__conto--grigio,.dash-voce__conto--rosso),.diretta__conto:not(.diretta__conto--rosso),.probabilita--alta,.radar__priorita--alta,.menu a[aria-current="page"],.menu__conta[data-conta-menu="monitoraggio"],.avatar,.tessera .pallino),
:root[data-tema="scuro"] :is(.bottone--primario,.bottone--petrolio,.bottone-chiama) svg,
:root[data-tema="scuro"] :is(.dash-numero--arancio,.dash-numero--petrolio) :is(b,span),
:root[data-tema="scuro"] .vecchia a:is(.bottone--primario,.bottone--petrolio),
:root[data-tema="scuro"] .vecchia a:is(.bottone--primario,.bottone--petrolio):hover,
:root[data-tema="scuro"] #barra .fondo .io .avatar,
:root[data-tema="scuro"] .obiezione[open] summary::before{color:var(--su-acc)}
:root[data-tema="scuro"] :is(.dash-numero--rosso,.dash-voce__conto--rosso,.diretta__conto--rosso){background:var(--no)}
:root[data-tema="scuro"] .barra-selezione{background:var(--acc-sup2)}
:root[data-tema="scuro"] .diretta__comandi{background:var(--vetro)}
/* riquadri tenui con il testo scritto a mano scuro */
:root[data-tema="scuro"] .nessun-numero{color:var(--ambra-testo)}
:root[data-tema="scuro"] :is(.avviso--rosso,.fascia-verifica){color:var(--no-testo)}
:root[data-tema="scuro"] .note-bando .collegamento{color:var(--ambra-testo);text-decoration-color:currentColor}
:root[data-tema="scuro"] .gruppo-obiezioni__conta{color:var(--acc-testo)}
/* i tasti rapidi e i numeri dei filtri: tenui ma leggibili */
.vecchia kbd{opacity:.9}
.esito kbd{color:inherit;opacity:.7}
.chip .n{opacity:.8}
/* Nella chiamata gli avvisi stanno in basso a sinistra, sulla colonna della scuola, e non coprono gli esiti: senza
   lo spostamento a metà che serve dove sono centrati (prima uscivano tagliati dal bordo dello schermo). */
@media (min-width:1024px){body.in-chiamata .avvisi{left:calc(var(--barra-l) + var(--rientro)*3);transform:none;width:min(560px,calc((100vw - var(--barra-l))*.52 - 40px))}}
/* «Segnala un problema» sempre in vista in fondo alla barra, sopra tema e profilo (prima stava solo dentro Aiuto) */
#barra .segnala-barra{display:flex;align-items:center;gap:8px;width:100%;margin-top:8px;padding:7px 10px;border-radius:var(--r-md);font-size:var(--t13);font-weight:500;color:var(--testo2);box-shadow:var(--anello);transition:background var(--d1) var(--quad),color var(--d1) var(--quad)}
#barra .segnala-barra:hover{background:var(--sup3);color:var(--testo)}
#barra .segnala-barra svg{color:var(--acc)}

/* =====================================================================
   2.37 · «Chiedi ai cataloghi»: il pulsante nel menu e la pagina del chatbot. Non c'entra con i bandi: usa
   l'arancione dei cataloghi Sale al posto del blu della piattaforma.
   ===================================================================== */
:root{--cat:#e0591c;--cat-forte:#c24a10;--cat-testo:#a53e0b;--cat-sup:#fff1e6;--cat-sup2:#ffe2cc;--cat-pav:#fff8f2;--cat-filo:#f6d3bb}
:root[data-tema="scuro"]{--cat:#ff8a4c;--cat-forte:#ff9d68;--cat-testo:#ffd2b8;--cat-sup:#2c1a0f;--cat-sup2:#3d2414;--cat-pav:#15100c;--cat-filo:rgba(255,138,76,.28)}
#barra .chiedi-cataloghi{display:flex;align-items:center;justify-content:center;gap:8px;height:38px;margin:10px 0 0;border-radius:var(--r-md);background:var(--cat);color:#fff;font-size:var(--t13);font-weight:700;letter-spacing:-.005em;transition:background var(--d1) var(--quad),transform var(--d1) var(--quad),box-shadow var(--d1) var(--quad)}
#barra .chiedi-cataloghi:hover{background:var(--cat-forte)}
#barra .chiedi-cataloghi:active{transform:scale(.98)}
#barra .chiedi-cataloghi.viva{background:var(--cat-forte);box-shadow:0 0 0 3px var(--cat-sup2)}
#barra .chiedi-cataloghi svg{color:#fff}
:root[data-tema="scuro"] #barra .chiedi-cataloghi,:root[data-tema="scuro"] #barra .chiedi-cataloghi svg{color:#1b0f08}
#barra .chiedi-cataloghi:focus-visible{outline:2px solid var(--cat);outline-offset:2px}

body.in-cataloghi #pannello{background:var(--cat-pav)}
.cat{--acc:var(--cat);--acc-forte:var(--cat-forte);--acc-testo:var(--cat-testo);--acc-sup:var(--cat-sup);--acc-sup2:var(--cat-sup2);--focus:color-mix(in srgb,var(--cat) 35%,transparent);display:flex;flex-direction:column;min-height:100%}
.cat .testa .occhiello{color:var(--cat-testo)}
.cat .testa h1{color:var(--cat-testo)}
.cat__corpo{flex:1;display:flex;flex-direction:column;gap:12px;max-width:860px;width:100%;padding:8px 24px 40px}
.cat__chat{display:flex;flex-direction:column;gap:12px}
.cat__io{align-self:flex-end;max-width:80%;background:var(--cat);color:#fff;border-radius:16px 16px 4px 16px;padding:9px 14px;font-size:var(--t14);line-height:1.45}
:root[data-tema="scuro"] .cat__io{color:#1b0f08}
.cat__io p{margin:0}
.cat__risposta{align-self:flex-start;max-width:100%;background:var(--sup);border:1px solid var(--cat-filo);border-radius:4px 16px 16px 16px;padding:12px 16px 10px;font-size:var(--t14);line-height:1.5;color:var(--testo)}
.cat__risposta p{margin:0 0 8px}
.cat__risposta ul{margin:0 0 8px;padding-left:18px;display:grid;gap:4px}
.cat__risposta--no{border-style:dashed}
.cat__errore{color:var(--no-testo)}
.cat__fonti{display:grid;gap:6px;margin:10px 0 8px}
.cat__fonte{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--cat-sup);border-radius:var(--r-md);padding:8px 10px 8px 12px}
.cat__fonte-testo{display:flex;flex-direction:column;min-width:0;flex:1 1 220px}
.cat__fonte-testo b{color:var(--cat-testo);font-size:var(--t13)}
.cat__fonte-testo span{font-size:var(--t13);color:var(--testo)}
.cat__fonte-testo small{font-size:var(--t11);color:var(--testo2);margin-top:1px}
.cat__fonte-azioni{display:flex;gap:6px;flex:none}
.cat__apri,.cat__copia{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border-radius:var(--r-pill);font-size:var(--t12);font-weight:600;white-space:nowrap}
.cat__apri{background:var(--cat);color:#fff}
.cat__apri:hover{background:var(--cat-forte)}
:root[data-tema="scuro"] .cat__apri{color:#1b0f08}
.cat__copia{background:var(--sup);color:var(--cat-testo);box-shadow:0 0 0 1px var(--cat-filo)}
.cat__copia:hover{background:var(--cat-sup2)}
.cat__avviso{font-size:var(--t11);color:var(--testo3);margin:0 !important}
.cat__attesa{margin:0}
.cat__attesa i{background:var(--cat) !important}
.cat__domanda{display:flex;align-items:flex-end;gap:8px;background:var(--sup);border-radius:var(--r-lg);padding:8px 8px 8px 14px;box-shadow:0 0 0 1px var(--cat-filo),0 6px 20px -12px rgba(224,89,28,.45)}
.cat__domanda:focus-within{box-shadow:0 0 0 2px var(--cat),0 6px 20px -12px rgba(224,89,28,.45)}
.cat__domanda textarea{flex:1;min-width:0;border:0;outline:0;background:transparent;resize:none;font:inherit;font-size:var(--t15);line-height:1.45;color:var(--testo);padding:6px 0;max-height:140px}
.cat__domanda textarea::placeholder{color:var(--testo4)}
.cat__invia{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 16px;border-radius:var(--r-md);background:var(--cat);color:#fff;font-weight:700;font-size:var(--t13);flex:none}
.cat__invia:hover{background:var(--cat-forte)}
.cat__invia:disabled{opacity:.45;cursor:default}
:root[data-tema="scuro"] .cat__invia{color:#1b0f08}
.cat__esempi{display:flex;flex-wrap:wrap;gap:6px}
.cat__esempio{height:30px;padding:0 12px;border-radius:var(--r-pill);background:var(--cat-sup);color:var(--cat-testo);font-size:var(--t12);font-weight:600}
.cat__esempio:hover{background:var(--cat-sup2)}
.cat__esempio--nuova{background:transparent;box-shadow:0 0 0 1px var(--cat-filo)}
.cat__nota{font-size:var(--t12);color:var(--testo3);line-height:1.5;margin:0}
.cat__nota a{color:var(--cat-testo);text-decoration:underline}
@media (max-width:900px){.cat__corpo{padding:6px 16px 32px}.cat__io{max-width:92%}}

/* 2.38 · la pagina «Preventivi» */
.prev-tav td:first-child{min-width:200px}
.prev-tav td:nth-child(4){min-width:170px;max-width:340px}
.prev-tav td.data{white-space:normal;min-width:118px}
/* 2.41: Da chiarire al telefono */
.chiarire{display:grid;gap:10px;margin-top:12px}
.chiarire__testa{display:grid;gap:3px}
.chiarire__testa h2{margin:0}
.chiarire__candidati{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.chiarire-cand{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:10px;box-shadow:var(--anello);background:var(--sup)}
.chiarire-cand__chi{display:grid;gap:3px;min-width:0}
.chiarire-cand .con{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:var(--t12)}
.chiarire-cand .numero-linkus{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-weight:600}
.chiarire-cand .codice{font-family:var(--mono,ui-monospace,monospace);font-size:var(--t12)}
.chiarire__azioni{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.chiarire__azioni input[type=text]{flex:1 1 260px;height:30px;padding:0 10px;border-radius:8px;border:0;box-shadow:var(--anello);background:var(--sup);color:var(--testo);font:inherit;font-size:var(--t12)}
.chiarire__nome{display:flex;gap:6px;align-items:center;font-size:var(--t12);cursor:pointer}
.chiarire .collegamento{background:none;border:0;padding:0;color:var(--acc);cursor:pointer;font:inherit;text-decoration:underline}
/* 2.39: Email mandate */
.email-tav td{vertical-align:top}
.email-tav td.data{white-space:nowrap}
.email-tav td:nth-child(2){min-width:136px}
.email-tav td:nth-child(3){min-width:170px;max-width:340px;overflow-wrap:anywhere}
.email-tav td:nth-child(4){min-width:124px}
.email-tav td:nth-child(5){min-width:92px}
.email-tav th,.email-tav td{padding-left:10px;padding-right:10px}
.email-tav .collegamento{text-align:left;background:none;border:0;padding:0;color:inherit;cursor:pointer;font:inherit}
.email-tav .collegamento:hover b{text-decoration:underline}
.email-tav tr.prova td{opacity:.62}
.email-tav td.prev-azioni{white-space:nowrap;text-align:right}
.email-tav td.prev-azioni{width:1%}
.email-tav td.prev-azioni .b + .b{margin-left:4px}
.email-tav td.prev-azioni .b{height:28px;padding:0 8px;font-size:var(--t12)}
.email-tav td a{color:inherit}
.email-tav td a:hover b{text-decoration:underline}
.pano b.att{color:var(--no-testo)}
.prev-tav td.prev-azioni{white-space:nowrap;text-align:right}
.prev-tav td.prev-azioni .b{margin-left:4px;height:28px;padding:0 10px;font-size:var(--t12)}
.prev-tav td a{color:inherit}
.prev-tav td a:hover b{text-decoration:underline}
.prev-tav b.att{color:var(--no-testo)}

/* 2.43: Gestione → Novità sui bandi: le novità non ancora viste hanno il fondo ambra */
.novita-resp li.nuova{background:var(--ambra-sup);border-radius:10px;padding-left:8px;padding-right:8px}
.correggi-esito{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}
.cat--piattaforma{--cat:#316bff;--cat-forte:#2255e8;--cat-testo:#1f55e6;--cat-sup:#e9f0ff;--cat-sup2:#d6e2ff;--cat-pav:#f6f8ff;--cat-filo:#c9d8fb}
:root[data-tema="scuro"] .cat--piattaforma{--cat:#5b8cff;--cat-forte:#7aa3ff;--cat-testo:#cfe0ff;--cat-sup:#182860;--cat-sup2:#213a80;--cat-pav:#0f1424;--cat-filo:rgba(91,140,255,.3)}
.cat--piattaforma .cat__domanda{box-shadow:0 0 0 1px var(--cat-filo),0 6px 20px -12px rgba(49,107,255,.45)}
.tag-ente{font-weight:700}
.vecchia .tipo-istituto{margin:-4px 0 6px}
.vecchia .pastiglia--ente{background:var(--verde2-sup);color:var(--verde2-testo);font-weight:700}
