/* Talenta — stile del modulo Todo (manutenzione 2026-08-21). Il foglio base è style.css.
   Richiesta di Matteo: la sezione Todo con TUTTE le funzioni di Microsoft To Do.
   Tre colonne su desktop (viste+liste · elenco · dettaglio), una alla volta su
   telefono (Matteo la usa da iPhone/iPad come PWA: input a 16px, niente zoom iOS). */

.td-shell{display:grid;grid-template-columns:210px minmax(0,1fr) 340px;gap:14px;
  align-items:start;min-height:calc(var(--app-h,100dvh) - 140px)}
.td-shell.senza-dett{grid-template-columns:210px minmax(0,1fr)}
.td-testa{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.td-testa h1{margin:0}
.td-testa .sub{margin:0}
.td-testa .td-sync{border:0;background:none;color:var(--muted);font-size:13px;padding:2px 6px;
  border-radius:6px}
.td-testa .td-sync:hover{color:var(--fg);background:var(--chip)}
.td-testa .td-sync.gira{animation:gira-refresh .8s linear infinite}

/* ---------- colonna sinistra: viste intelligenti + liste ---------- */
.td-nav{position:sticky;top:0;min-width:0}
.td-nav .card{padding:8px}
.td-nav button.td-voce-nav{display:flex;align-items:center;gap:8px;width:100%;border:0;
  background:none;color:var(--fg);text-align:left;padding:8px 10px;border-radius:9px;font-size:14px}
.td-nav button.td-voce-nav:hover{background:var(--chip)}
.td-nav button.td-voce-nav.attiva{background:var(--chip);font-weight:700}
.td-nav .td-ico{width:20px;text-align:center;flex:none}
.td-nav .td-nome{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.td-nav .td-n{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.td-nav .td-n.tardi{color:var(--err);font-weight:700}
.td-nav .td-sep{border-top:1px solid var(--line);margin:6px 4px}
.td-nav .td-titolo-nav{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);
  padding:8px 10px 4px;font-weight:700}
.td-badge{font-size:10.5px;font-weight:700;border-radius:20px;padding:1px 6px;background:var(--okbg);
  color:var(--ok);flex:none;line-height:1.5}
.td-badge.cond{background:var(--warnbg);color:var(--warn)}
.td-nav .td-menu-btn{border:0;background:none;color:var(--muted);font-size:16px;line-height:1;
  padding:0 4px;opacity:0;border-radius:6px}
.td-nav button.td-voce-nav:hover .td-menu-btn,.td-nav button.td-voce-nav.attiva .td-menu-btn{opacity:.7}
.td-nav .td-menu-btn:hover{opacity:1;background:var(--card)}
.td-nuova-lista{display:flex;gap:6px;padding:6px 4px 2px}
.td-nuova-lista input{flex:1;min-width:0}

/* menu ⋯ di una lista (rinomina / elimina) */
.td-menu{position:absolute;z-index:30;background:var(--card);border:1px solid var(--line);
  border-radius:10px;box-shadow:var(--ombra);padding:6px;min-width:160px}
.td-menu button{display:block;width:100%;border:0;background:none;color:var(--fg);text-align:left;
  padding:7px 10px;border-radius:7px;font-size:13.5px}
.td-menu button:hover{background:var(--chip)}
.td-menu button.pericolo{color:var(--err)}

/* ---------- colonna centrale: la lista ---------- */
.td-centro{min-width:0}
.td-centro .card{padding:12px 14px}
.td-centro-testa{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.td-centro-testa h2{font-size:17px;margin:0;flex:1;min-width:120px}
.td-centro-testa select,.td-centro-testa input[type=search]{padding:6px 9px;border:1px solid var(--line);
  border-radius:8px;background:var(--card);color:var(--fg);font:inherit;font-size:13px}
.td-centro-testa input[type=search]{min-width:140px}

/* aggiunta rapida */
.td-aggiungi{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;
  padding:4px 6px 4px 12px;background:var(--bg);margin-bottom:6px}
.td-aggiungi:focus-within{outline:2px solid var(--accent);outline-offset:-1px;border-color:transparent}
.td-aggiungi .td-piu{color:var(--accent);font-size:20px;line-height:1;flex:none}
.td-aggiungi input{flex:1;min-width:0;border:0;background:none;color:var(--fg);font:inherit;
  font-size:14.5px;padding:8px 0}
.td-aggiungi input:focus{outline:none}
.td-aggiungi .btn{padding:6px 12px;font-size:13px;flex:none}
.td-chips{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px 4px;min-height:0}
.td-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;background:var(--chip);
  color:var(--fg);border-radius:20px;padding:3px 8px 3px 10px}
.td-chip button{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:12px;
  line-height:1;padding:0 2px}
.td-chip button:hover{color:var(--err)}
.td-chip.lista{background:var(--okbg);color:var(--ok)}
.td-proposte{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:0 0 10px 4px;
  font-size:13px;color:var(--muted)}
.td-proposte .btn{padding:5px 10px;font-size:13px}
.td-proposte .btn.primario{font-weight:700}

/* voci */
.td-voci{display:flex;flex-direction:column}
.td-voce{display:flex;align-items:flex-start;gap:10px;padding:9px 6px;border-bottom:1px solid var(--line);
  border-radius:8px;cursor:pointer}
.td-voce:last-child{border-bottom:0}
.td-voce:hover{background:color-mix(in srgb,var(--chip) 55%,transparent)}
.td-voce.sel{background:var(--chip)}
.td-voce.fatta .td-titolo{text-decoration:line-through;color:var(--muted)}
.td-voce.ottimista{opacity:.55}
.td-cerchio{flex:none;width:20px;height:20px;border-radius:50%;border:2px solid var(--muted);
  background:none;margin-top:1px;display:flex;align-items:center;justify-content:center;color:#fff;
  font-size:12px;line-height:1;padding:0}
.td-cerchio:hover{border-color:var(--accent)}
.td-voce.fatta .td-cerchio{background:var(--accent);border-color:var(--accent)}
.td-corpo{flex:1;min-width:0}
.td-titolo{font-size:14.5px;line-height:1.35;word-break:break-word}
.td-meta{display:flex;gap:6px 10px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--muted);
  margin-top:2px}
.td-meta .tardi{color:var(--err);font-weight:700}
.td-meta .oggi{color:var(--accent);font-weight:700}
.td-meta .td-lista-di{font-weight:600}
.td-ric{display:inline-block;font-size:11px;border-radius:20px;padding:0 8px;font-weight:700;
  background:#efe7fb;color:#6d28d9;border:1px solid #d8c8f5;letter-spacing:.2px}
.td-cat{display:inline-block;font-size:11px;border-radius:20px;padding:0 8px;font-weight:600;
  background:var(--chip);color:var(--fg)}
.td-cat.c1{background:#e5f0ff;color:#1d4ed8}.td-cat.c2{background:#e6f6ec;color:#15803d}
.td-cat.c3{background:#fdf1d6;color:#a16207}.td-cat.c4{background:#fce8f3;color:#be185d}
.td-cat.c5{background:#ede9fe;color:#6d28d9}.td-cat.c6{background:#e0f2fe;color:#0369a1}
@media(prefers-color-scheme:dark){
  .td-cat.c1{background:#1e3a8a55;color:#93c5fd}.td-cat.c2{background:#14532d55;color:#86efac}
  .td-cat.c3{background:#713f1255;color:#fcd34d}.td-cat.c4{background:#83184355;color:#f9a8d4}
  .td-cat.c5{background:#4c1d9555;color:#c4b5fd}.td-cat.c6{background:#0c4a6e55;color:#7dd3fc}
}
.td-stella{flex:none;border:0;background:none;font-size:17px;line-height:1;padding:0 2px;
  color:var(--line);margin-top:-1px}
.td-stella:hover{color:#eab308}
.td-stella.on{color:#eab308}
/* bottoni Battle Plan sulle righe (2026-08-25: GG·ST in elenco, MM in Vista Cicli) */
.td-bp{flex:none;border:1px solid var(--line);background:transparent;color:var(--muted);
  border-radius:7px;font-size:10px;font-weight:700;padding:2px 6px;cursor:pointer;
  line-height:1.5;margin-top:1px}
.td-bp:hover{color:var(--fg);border-color:var(--muted)}
.td-bp.on{background:var(--okbg);color:var(--ok);border-color:var(--ok)}
.td-vuoto{color:var(--muted);text-align:center;padding:26px 10px;font-size:14px}
.td-fatte{margin-top:10px}
.td-fatte summary{cursor:pointer;color:var(--muted);font-size:13px;padding:6px;list-style:none;
  display:flex;align-items:center;gap:6px}
.td-fatte summary::-webkit-details-marker{display:none}
.td-fatte summary::before{content:"▸";font-size:12px;transition:transform .15s}
.td-fatte[open] summary::before{transform:rotate(90deg)}
.td-gruppo{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);
  font-weight:700;padding:12px 6px 4px}
.td-gruppo:first-child{padding-top:4px}

/* ---------- colonna destra: dettaglio ---------- */
.td-dett{position:sticky;top:0;max-height:calc(var(--app-h,100dvh) - 120px);overflow-y:auto}
.td-dett .card{padding:14px 16px}
.td-dett-vuoto{color:var(--muted);text-align:center;padding:40px 16px;font-size:13.5px}
.td-dett-testa{display:flex;align-items:flex-start;gap:8px;margin-bottom:10px}
.td-dett-testa .td-cerchio{margin-top:4px}
.td-dett-titolo{flex:1;border:1px solid transparent;border-radius:8px;padding:4px 6px;font:inherit;
  font-size:16px;font-weight:700;color:var(--fg);background:none;resize:none;line-height:1.35;
  overflow:hidden;min-height:30px}
.td-dett-titolo:hover{border-color:var(--line)}
.td-dett-titolo:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:transparent;
  background:var(--bg)}
.td-dett .td-stella{font-size:20px;margin-top:3px}
.td-indietro{display:none}
.td-sez{border-top:1px solid var(--line);padding:10px 0}
.td-sez-titolo{display:flex;align-items:center;gap:8px;font-size:12px;text-transform:uppercase;
  letter-spacing:.05em;color:var(--muted);font-weight:700;margin-bottom:6px}
.td-sez-titolo .td-sez-azione{margin-left:auto;border:0;background:none;color:var(--accent);
  font-size:12px;text-transform:none;letter-spacing:0;font-weight:600;padding:2px 6px;border-radius:6px}
.td-sez-titolo .td-sez-azione:hover{background:var(--chip)}
.td-riga{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:14px}
.td-riga input[type=date],.td-riga input[type=datetime-local],.td-riga select,.td-riga input[type=text],
.td-riga input[type=url],.td-riga input[type=number]{padding:7px 9px;border:1px solid var(--line);border-radius:8px;
  background:var(--bg);color:var(--fg);font:inherit;font-size:14px;min-width:0}
.td-riga input[type=date],.td-riga input[type=datetime-local]{flex:1}
.td-riga select{flex:1}
.td-riga .td-x{border:0;background:none;color:var(--muted);font-size:16px;line-height:1;padding:2px 6px;
  border-radius:6px;flex:none}
.td-riga .td-x:hover{color:var(--err);background:var(--errbg)}
.td-scorcia{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.td-scorcia button{border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:20px;
  padding:3px 10px;font-size:12px}
.td-scorcia button:hover{border-color:var(--accent);color:var(--accent)}
.td-nota-ric{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.4}
.td-nota-ric b{color:var(--warn)}

/* passi (checklist) */
.td-passo{display:flex;align-items:center;gap:8px;padding:4px 0}
.td-passo .td-cerchio{width:17px;height:17px;font-size:10px}
.td-passo.fatto .td-cerchio{background:var(--accent);border-color:var(--accent)}
.td-passo input.td-passo-testo{flex:1;border:1px solid transparent;border-radius:6px;padding:4px 6px;
  font:inherit;font-size:14px;background:none;color:var(--fg);min-width:0}
.td-passo.fatto input.td-passo-testo{text-decoration:line-through;color:var(--muted)}
.td-passo input.td-passo-testo:hover{border-color:var(--line)}
.td-passo input.td-passo-testo:focus{outline:2px solid var(--accent);outline-offset:-1px;background:var(--bg)}
.td-passo .td-x{opacity:0}
.td-passo:hover .td-x{opacity:1}
.td-passo-nuovo{display:flex;align-items:center;gap:8px;padding:4px 0}
.td-passo-nuovo .td-piu{color:var(--accent);font-size:18px;width:17px;text-align:center}
.td-passo-nuovo input{flex:1;border:0;background:none;color:var(--fg);font:inherit;font-size:14px;
  padding:4px 6px;min-width:0}
.td-passo-nuovo input:focus{outline:none;background:var(--bg);border-radius:6px}
.td-barra{height:4px;border-radius:2px;background:var(--line);margin:2px 0 6px;overflow:hidden}
.td-barra i{display:block;height:100%;background:var(--accent);transition:width .2s}

/* ripeti personalizzata */
.td-person{background:var(--chip);border-radius:10px;padding:10px;margin-top:6px;display:flex;
  flex-direction:column;gap:8px}
.td-person .td-riga{padding:2px 0;flex-wrap:wrap}
.td-person label{font-size:13px;display:flex;align-items:center;gap:6px}
.td-giorni{display:flex;gap:4px;flex-wrap:wrap}
.td-giorni button{border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:8px;
  width:38px;padding:5px 0;font-size:12.5px;font-weight:600}
.td-giorni button.on{background:var(--accent);border-color:var(--accent);color:#fff}
.td-person input[type=number]{width:64px}
.td-person select{padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--card);
  color:var(--fg);font:inherit;font-size:14px}

/* categorie */
.td-cats{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.td-cats .td-cat{display:inline-flex;align-items:center;gap:5px;padding:2px 6px 2px 9px;font-size:12px}
.td-cats .td-cat button{border:0;background:none;color:inherit;opacity:.6;font-size:12px;line-height:1;padding:0}
.td-cats .td-cat button:hover{opacity:1}
.td-cats input{border:1px dashed var(--line);border-radius:20px;padding:3px 10px;font:inherit;font-size:13px;
  background:none;color:var(--fg);width:130px}
.td-cats input:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:transparent}

/* allegati e link */
.td-all{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:13.5px}
.td-all .td-all-ico{width:22px;text-align:center;flex:none}
.td-all .td-all-nome{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:var(--accent);cursor:pointer;border:0;background:none;font:inherit;font-size:13.5px;text-align:left;padding:0}
.td-all .td-all-nome:hover{text-decoration:underline}
.td-all .td-all-dim{color:var(--muted);font-size:12px;flex:none}
.td-all a{color:var(--accent);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-size:13.5px}
.td-link-nuovo{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.td-link-nuovo input{flex:1;min-width:120px;padding:6px 9px;border:1px solid var(--line);border-radius:8px;
  background:var(--bg);color:var(--fg);font:inherit;font-size:14px}
.td-link-nuovo .btn{padding:5px 10px;font-size:13px}

/* note */
.td-note{width:100%;min-height:90px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;
  background:var(--bg);color:var(--fg);font:inherit;font-size:14px;line-height:1.5;resize:vertical}
.td-note:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:transparent}
.td-salvato{font-size:11.5px;color:var(--muted);margin-top:3px;min-height:16px;text-align:right}
.td-salvato.ok{color:var(--ok)}

/* piè del dettaglio */
.td-pie{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:10px;
  margin-top:4px;font-size:12px;color:var(--muted)}
.td-pie .spazio{flex:1}
.td-pie button{border:0;background:none;color:var(--muted);font-size:13px;padding:5px 8px;border-radius:7px}
.td-pie button:hover{color:var(--err);background:var(--errbg)}
.td-pie .td-conferma{display:inline-flex;gap:6px;align-items:center}
.td-pie .td-conferma .btn{padding:4px 10px;font-size:12.5px}
.td-pie .td-conferma .btn.pericolo{background:var(--err);border-color:var(--err);color:#fff}

/* toast in basso e spinner discreto */
.td-toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(18px + env(safe-area-inset-bottom));
  z-index:80;background:var(--fg);color:var(--bg);padding:10px 16px;border-radius:10px;font-size:13.5px;
  box-shadow:var(--ombra);max-width:min(92vw,520px);opacity:0;transition:opacity .2s;pointer-events:none}
.td-toast.vis{opacity:1;pointer-events:auto}
.td-toast.errore{background:var(--err);color:#fff}
.td-toast.ok{background:var(--ok);color:#fff}
.td-spin{display:inline-block;width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--accent);
  border-radius:50%;animation:gira-refresh .7s linear infinite;vertical-align:-2px}
.td-caricando{opacity:.6;pointer-events:none}

/* ---------- Vista Cicli (Matteo, 2026-08-23): tutte le liste a blocchi ----------
   La vista a blocchi di prima della manutenzione del 21/08, come seconda modalità:
   bottone «▦ Vista Cicli» / «☰ Vista Elenco» nella testa, scelta ricordata nel
   browser. Niente colonna delle viste: i riquadri SONO le liste; il dettaglio
   compare a destra solo quando si clicca un'attività (classe con-dett). */
.td-testa .td-modo{margin-left:auto;border:1px solid var(--line);background:var(--card);color:var(--fg);
  font:inherit;font-size:12.5px;font-weight:600;padding:5px 10px;border-radius:8px;cursor:pointer;
  white-space:nowrap;align-self:center}
.td-testa .td-modo:hover{background:var(--chip)}
.td-shell.cicli{grid-template-columns:minmax(0,1fr)}
.td-shell.cicli.con-dett{grid-template-columns:minmax(0,1fr) 340px}
.td-shell.cicli .td-nav{display:none}
/* mosaico (2026-08-23): colonne create da todo.js (impaginaBlocchi), ogni riquadro
   nella colonna più corta — niente buchi fra liste lunghe e corte */
.td-griglia{display:flex;gap:14px;align-items:flex-start}
.td-colonna{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:14px}
.td-griglia > .td-blocco{flex:1 1 300px}   /* solo prima della prima impaginazione */
/* trascinamento delle liste per importanza */
.td-grip{cursor:grab;color:var(--muted);font-size:15px;line-height:1;padding:2px 4px;border-radius:6px;flex:none;
  touch-action:none;user-select:none;-webkit-user-select:none;margin-left:-4px}
.td-grip:hover{background:var(--chip);color:var(--fg)}
.td-blocco.td-segnaposto{opacity:.35;outline:2px dashed var(--accent);outline-offset:-2px}
.td-fantasma{position:fixed;z-index:120;pointer-events:none;opacity:.92;margin:0;
  box-shadow:0 14px 36px rgba(0,0,0,.28);transform:rotate(1.2deg);max-height:70vh;overflow:hidden}
.td-velo{position:fixed;inset:0;z-index:110;touch-action:none;cursor:grabbing}
body.td-trascina{user-select:none;-webkit-user-select:none}
.td-blocco h3{font-size:14.5px;margin:0 0 6px;display:flex;align-items:center;gap:8px;min-width:0}
.td-blocco h3 .td-ico{flex:none}
.td-blocco h3 .td-blocco-nome{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.td-blocco h3 .alb-ver{margin-left:auto;flex:none;font-weight:400}
.td-blocco .td-voce{padding:7px 4px}
.td-blocco .td-titolo{font-size:14px}
.td-blocco .td-vuoto{padding:14px 6px;font-size:13px}
.td-blocco .td-fatte{margin-top:6px}
.td-aggiungi.td-aggiungi-blocco{margin:8px 0 0;padding:2px 6px 2px 10px}
.td-aggiungi-blocco input{font-size:13.5px;padding:6px 0}
.td-aggiungi-blocco input:disabled{opacity:.5}

/* ---------- spazio stretto: una colonna alla volta ----------
   Non basta il viewport: su desktop la chat laterale aperta lascia a #main
   ~575px a 1280. todo.js misura #main (ResizeObserver) e mette `td-stretto`
   sul body sotto i 980px o su telefono/tablet. */
body.td-stretto .td-shell,body.td-stretto .td-shell.senza-dett,
body.td-stretto .td-shell.cicli.con-dett{grid-template-columns:minmax(0,1fr);min-height:0}
/* min-width:0: altrimenti la riga delle liste (flex + overflow) detta la larghezza
   della colonna e la pagina scorre in orizzontale */
body.td-stretto .td-nav{position:static;min-width:0}
/* viste e liste su una riga scorrevole */
body.td-stretto .td-nav .card{display:flex;gap:4px;overflow-x:auto;padding:6px;-webkit-overflow-scrolling:touch;
  scrollbar-width:none}
body.td-stretto .td-nav .card::-webkit-scrollbar{display:none}
body.td-stretto .td-nav button.td-voce-nav{width:auto;white-space:nowrap;padding:7px 10px;flex:none;gap:6px}
body.td-stretto .td-nav .td-sep{border-top:0;border-left:1px solid var(--line);margin:4px 2px}
body.td-stretto .td-nav .td-titolo-nav{display:none}
body.td-stretto .td-nav .td-menu-btn{opacity:.7}
body.td-stretto .td-nav .td-nuova-lista{flex:none;padding:0 4px}
body.td-stretto .td-nav .td-nuova-lista input{width:150px}
/* il dettaglio occupa lo schermo */
body.td-stretto .td-dett{position:fixed;inset:0;z-index:40;max-height:none;background:var(--bg);padding:12px;
  padding-top:calc(12px + env(safe-area-inset-top));padding-bottom:calc(12px + env(safe-area-inset-bottom));
  overflow-y:auto;display:none}
body.td-stretto .td-dett.aperto{display:block}
body.td-stretto .td-indietro{display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:var(--accent);
  font-size:15px;font-weight:600;padding:6px 2px 10px}
body.td-stretto .td-dett-vuoto{display:none}
body.td-stretto .td-menu{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));min-width:0;
  top:auto}

/* telefono/tablet: input a 16px, altrimenti iOS zooma sul campo */
@media(max-width:1020px){
  .td-aggiungi input,.td-centro-testa input[type=search],.td-centro-testa select,
  .td-riga input,.td-riga select,.td-note,.td-passo input,.td-passo-nuovo input,.td-cats input,
  .td-link-nuovo input,.td-person select,.td-person input,.td-dett-titolo,.td-nuova-lista input{font-size:16px}
}

/* --- Talenta v3 (23/09/2026) --- */
/* Mac: il riquadro del dettaglio compare solo quando si seleziona un'attività — prima stava
   sempre lì, vuoto, con «Seleziona un'attività…» (apriDett mette .con-dett sulla shell). */
body:not(.td-stretto) .td-shell:not(.con-dett):not(.cicli){grid-template-columns:210px minmax(0,1fr)}
body:not(.td-stretto) .td-shell:not(.con-dett) .td-dett{display:none}
/* iPhone: il campo «Aggiungi un'attività» a tutta larghezza, il bottone sotto; la riga delle
   viste e liste scorre di lato e lo dice con una sfumatura (classe .fade-dx da todo.js) */
@media(max-width:600px){
  .td-aggiungi{flex-wrap:wrap;padding:6px 8px 8px 12px;row-gap:6px}
  .td-aggiungi input{flex:1 1 calc(100% - 32px)}
  .td-aggiungi .btn{margin-left:auto;min-height:38px}
  .td-centro-testa{flex-wrap:wrap}
  .td-centro-testa input[type=search]{flex:1 1 100%;min-width:0}
  /* la sfumatura copre sempre gli ultimi 44px: a fine corsa sono il padding, quindi l'ultima pill resta intera */
  body.td-stretto .td-nav .card{padding-right:48px;scroll-padding-right:48px;
    -webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 44px),transparent);
    mask-image:linear-gradient(90deg,#000 calc(100% - 44px),transparent)}
  body.td-stretto .td-nav .card:not(.fade-dx){-webkit-mask-image:none;mask-image:none}
}
