/* Pannello di gestione — pensato per chi non è pratico di computer:
   caratteri grandi, un'azione per volta, nessuna parola tecnica. */
body.pannello{background:var(--travertino-2)}
/* Da telefono niente deve poter scappare di lato: con cinque linguette la barra
   diventava più larga dello schermo e si portava dietro tutta la pagina.
   Si usa «clip» e NON «hidden»: hidden trasforma il body in un contenitore di
   scorrimento e spegne la testata fissa in cima. Verificato: con hidden la barra
   scorreva via, con clip resta al suo posto. */
body.pannello{overflow-x:clip;max-width:100%}
/* l'attributo hidden deve vincere sulle classi che impostano display */
[hidden]{display:none!important}

.entrata{min-height:100dvh;display:grid;place-items:center;padding:20px}
.entrata-box{max-width:420px;width:100%;text-align:center;display:grid;gap:14px;justify-items:center}
.entrata-box img{margin-bottom:4px}
.entrata-box h1{font-size:26px}
.entrata-box .campo{width:100%;text-align:left}
.entrata-box .bottone{width:100%;justify-content:center}
.aiuto{font-size:14px;color:var(--ombra);margin:0}
.errore{color:#B3261E;font-size:14.5px;font-weight:600;margin:0;min-height:1.2em}

.barra{
  position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  background:var(--basalto);padding:12px clamp(14px,3vw,28px)
}
.barra img{height:34px;width:auto}
.schede{display:flex;gap:4px;margin-left:8px;min-width:0;flex-wrap:wrap}
.scheda{
  font:inherit;font-size:15px;font-weight:600;background:none;border:none;color:#A7A197;
  padding:9px 15px;border-radius:var(--r);cursor:pointer
}
.scheda:hover{color:var(--travertino);background:#2A2825}
.scheda.attiva{background:var(--arancio);color:#fff}
.pallino{background:#fff;color:var(--bruciato);border-radius:99px;padding:1px 7px;font-size:12px;margin-left:5px}
.stato-salva{margin-left:auto;color:var(--arancio);font-size:14px;font-weight:600}
.esci{color:#A7A197;font-size:14.5px;text-decoration:none;border-bottom:1px solid #4A463F}
.esci:hover{color:var(--travertino)}

.vista{display:none;max-width:1080px;margin-inline:auto;padding:clamp(20px,4vw,34px) clamp(14px,3vw,28px) 70px}
.vista.attiva{display:block}
.intestazione{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.intestazione h2{font-size:clamp(23px,3vw,31px);margin:0 0 4px}
.intestazione .bottone{margin-left:auto}
.cerca{
  font:inherit;font-size:16px;width:100%;padding:12px 14px;border:1px solid var(--linea);
  border-radius:var(--r);margin-bottom:16px;background:var(--carta)
}

.elenco{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.riga-imm{
  display:grid;grid-template-columns:78px 1fr auto;gap:15px;align-items:center;
  background:var(--carta);border:1px solid var(--linea);border-radius:var(--r);padding:12px 15px
}
.riga-imm.spento{opacity:.55;background:#F7F5F1}
.riga-imm .mini{width:78px;height:auto}
.riga-imm .mini .dis .traccia{stroke-dashoffset:0!important;animation:none!important}
.riga-imm .mini .dis .insegna,.riga-imm .mini .dis .vetro,.riga-imm .mini .dis text{opacity:1!important;animation:none!important}
.riga-imm h3{font-size:17px;margin:0 0 3px}
.riga-imm .meta{font-size:13px;color:var(--ombra);margin:0}
.riga-imm .meta b{color:var(--testo-2)}
.riga-imm .azioni{display:flex;gap:8px;align-items:center}
.viste{font-size:13px;color:var(--ombra);white-space:nowrap}
.viste b{font-family:var(--tit);font-size:18px;color:var(--bruciato)}
.mini-bottone{
  font:inherit;font-size:14px;font-weight:600;background:var(--travertino-2);border:1px solid var(--linea);
  color:var(--testo);padding:8px 14px;border-radius:var(--r);cursor:pointer
}
.mini-bottone:hover{background:var(--travertino);border-color:var(--ombra)}
@media(max-width:640px){
  .riga-imm{grid-template-columns:60px 1fr;gap:11px}
  .riga-imm .mini{width:60px}
  .riga-imm .azioni{grid-column:1/-1;justify-content:space-between}
}

.riga-msg{background:var(--carta);border:1px solid var(--linea);border-radius:var(--r);padding:14px 16px}
.riga-msg.nuovo{border-left:4px solid var(--arancio)}
.riga-msg h3{font-size:17px;margin:0 0 2px}
.riga-msg .quando{font-size:12.5px;color:var(--ombra)}
.riga-msg p{margin:9px 0 0;color:var(--testo-2)}
.riga-msg .contatti-msg{margin-top:8px;display:flex;gap:14px;flex-wrap:wrap;font-size:15px;font-weight:600}

dialog#scheda,dialog#scheda-pagina{
  border:none;border-radius:6px;padding:0;max-width:760px;width:calc(100% - 24px);
  max-height:calc(100dvh - 40px);background:var(--travertino-2);color:var(--testo)
}
dialog#scheda::backdrop,dialog#scheda-pagina::backdrop{background:rgba(20,19,17,.62)}
/* La finestra è una colonna: testa in alto, piede in basso, il corpo prende
   quello che resta. Prima l'altezza del corpo era un numero fisso e col piede
   a due righe i pulsanti finivano tagliati fuori dallo schermo. */
dialog#scheda>form,dialog#scheda-pagina>form{
  display:flex;flex-direction:column;max-height:calc(100dvh - 40px)
}
dialog#scheda .scheda-testa,dialog#scheda-pagina .scheda-testa,
dialog#scheda .scheda-piede,dialog#scheda-pagina .scheda-piede{flex:0 0 auto}
.scheda-testa{display:flex;align-items:center;gap:14px;padding:18px 22px;background:var(--basalto);color:var(--travertino)}
.scheda-testa h2{font-size:21px;color:var(--travertino-2);margin:0}
.chiudi{margin-left:auto;background:none;border:none;color:#A7A197;font-size:28px;line-height:1;cursor:pointer;padding:0 4px}
.chiudi:hover{color:#fff}
.scheda-corpo{padding:20px 22px;overflow:auto;flex:1 1 auto;min-height:0}
.scheda-corpo fieldset{border:1px solid var(--linea);border-radius:var(--r);padding:14px 16px 16px;margin:0 0 15px;background:var(--carta)}
.scheda-corpo legend{font-family:var(--tit);font-size:17px;font-weight:600;padding:0 7px}
.griglia-campi{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.campo-largo{grid-column:1/-1}
.scheda-corpo .campo input,.scheda-corpo .campo select,.scheda-corpo .campo textarea{font-size:16px}
.interruttore{display:flex;gap:10px;align-items:flex-start;font-size:15px;margin-bottom:9px}
.interruttore input{width:19px;height:19px;margin-top:2px;accent-color:var(--bruciato);flex:0 0 auto}
.anteprima{background:var(--carta);border:1px solid var(--linea);border-radius:var(--r);padding:12px;margin-bottom:16px}
.anteprima .dis{max-width:300px;margin-inline:auto}
.anteprima .dis .traccia{stroke-dashoffset:0!important;animation:none!important}
.anteprima .dis .insegna,.anteprima .dis .vetro,.anteprima .dis text{opacity:1!important;animation:none!important}
.scheda-piede{display:flex;gap:10px;padding:15px 22px;border-top:1px solid var(--linea);background:var(--travertino)}
.scheda-piede .bottone{flex:0 0 auto}
.bottone.elimina{background:none;color:#B3261E;border:1.5px solid #E0C0BC;margin-left:auto}
.bottone.elimina:hover{background:#B3261E;color:#fff;border-color:#B3261E}


/* ── LE FOTOGRAFIE ─────────────────────────────────────── */
.foto-elenco{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:9px;margin-bottom:12px}
.foto-elenco:empty{display:none}
.foto-voce{position:relative;aspect-ratio:4/3;border:1px solid var(--linea);border-radius:var(--r);overflow:hidden;background:#EFEDE8}
.foto-voce img{width:100%;height:100%;object-fit:cover;display:block}
.foto-voce .prima{position:absolute;left:0;top:0;background:var(--arancio);color:#fff;font-size:10px;
  font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 7px}
.foto-voce .togli{position:absolute;right:4px;top:4px;width:26px;height:26px;border-radius:50%;
  border:none;background:rgba(20,19,17,.78);color:#fff;font-size:17px;line-height:1;cursor:pointer;padding:0}
.foto-voce .togli:hover{background:#B3261E}
.foto-voce .sposta{position:absolute;left:4px;bottom:4px;border:none;background:rgba(20,19,17,.78);
  color:#fff;font-size:12px;border-radius:var(--r);cursor:pointer;padding:3px 8px}
.foto-voce .sposta:hover{background:var(--arancio)}
.foto-voce.in-corso{display:grid;place-items:center;font-size:12px;color:var(--ombra)}
.scegli-foto{display:inline-block;cursor:pointer}
.scegli-foto .bottone{pointer-events:none}

/* Il tuo studio: recapiti, password, copia di sicurezza */
.blocco-studio{padding:18px 18px 14px;margin:0 0 16px}
.blocco-studio h3{margin:0 0 12px;font-size:19px}
.blocco-studio .bottone{margin-top:4px}


/* ── IL PANNELLO DAL TELEFONO ──────────────────────────────────────────
   Claudio lo usa in macchina e davanti al negozio: qui è dove deve
   funzionare meglio, non peggio. Le linguette vanno a capo tutte intere,
   nessuna scompare di lato. */
@media(max-width:820px){
  .barra{gap:10px;padding:10px 14px;row-gap:10px}
  .barra img{height:28px}
  .stato-salva{margin-left:auto;font-size:13px}
  .esci{margin-left:0}
  .schede{order:5;width:100%;margin-left:0;gap:6px}
  .scheda{flex:1 1 auto;font-size:14.5px;padding:9px 10px;text-align:center;white-space:nowrap}
}
@media(max-width:480px){
  .scheda{font-size:14px;padding:9px 8px;flex:1 1 40%}
  .intestazione .bottone{margin-left:0;width:100%;justify-content:center}
  .blocco-studio{padding:14px 13px 12px}
  .scheda-piede{flex-wrap:wrap;padding:12px 14px;gap:8px}
  .scheda-piede .bottone{justify-content:center}
  .scheda-piede .bottone:not(.vuoto):not(.elimina){order:1;flex:1 1 100%}
  .scheda-piede .bottone.vuoto{order:2;flex:1 1 0}
  .bottone.elimina{order:3;flex:1 1 0;margin-left:0}
}

/* ── LE STATISTICHE ────────────────────────────────────────────────────
   Chi è passato non si può sapere. Quello che si vede qui è quando
   guardano un annuncio, da dove arrivano, e cosa cercano senza trovarlo. */
.viste{
  font:inherit;font-size:13px;color:var(--ombra);background:none;border:1px dashed var(--linea);
  border-radius:var(--r);padding:6px 10px;cursor:pointer;white-space:nowrap
}
.viste:hover{border-style:solid;border-color:var(--arancio);color:var(--bruciato)}
.viste b{color:var(--bruciato);font-size:14.5px}
.dettaglio-viste{grid-column:1/-1;border-top:1px dashed var(--linea);margin-top:10px;padding-top:12px}
/* attenzione: «barra» è già il nome della testata del pannello — qui si chiamano «colonna» */
.barre{display:flex;align-items:flex-end;gap:2px;height:52px;margin-bottom:6px}
.barre .colonna{flex:1 1 0;height:var(--h);min-height:2px;background:var(--arancio);
  border-radius:2px 2px 0 0;opacity:.85;padding:0;display:block}
.barre .colonna:hover{opacity:1;background:var(--bruciato)}
.da-dove{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0 0;font-size:13.5px;color:var(--testo-2)}
.da-dove b{color:var(--bruciato)}

.ricerche-vuote{padding:14px 16px;margin-bottom:14px;border-left:4px solid var(--arancio)}
.ricerche-vuote summary{font-weight:600;font-size:16px;cursor:pointer}
.ricerche-vuote summary b{color:var(--bruciato)}
.ricerche-vuote[open] summary{margin-bottom:6px}
.elenco-ricerche{list-style:none;margin:10px 0 12px;padding:0;display:grid;gap:7px}
.elenco-ricerche li{
  background:var(--travertino);border-radius:var(--r);padding:9px 12px;font-size:14.5px;
  display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline
}
.elenco-ricerche .quando{margin-left:auto;font-size:12.5px;color:var(--ombra)}
.titolo-dadove{margin:12px 0 5px;font-size:13px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--ombra)}
ul.da-dove{list-style:none;margin:0;padding:0;display:grid;gap:3px;font-size:14.5px;color:var(--testo-2)}
ul.da-dove li b{color:var(--bruciato);font-size:15.5px}

/* le richieste già fatte: si vedono, ma spente */
.riga-msg.archiviata{opacity:.72;border-left:4px solid var(--linea)}
.riga-msg.archiviata:hover{opacity:1}
.azioni-msg{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0 0}
.mini-bottone.elimina-msg{color:#B3261E;border-color:#E0C0BC}
.mini-bottone.elimina-msg:hover{background:#B3261E;color:#fff;border-color:#B3261E}
/* i menu a tendina non devono mai tagliare il testo a metà */
.scheda-corpo .campo select{max-width:100%;text-overflow:ellipsis}

/* i pulsanti sopra l'editor: si preme, non si ricorda un simbolo */
.ferri{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.ferro{
  font:inherit;font-size:14px;background:var(--travertino);border:1px solid var(--linea);
  color:var(--testo);padding:7px 12px;border-radius:var(--r);cursor:pointer;line-height:1
}
.ferro:hover{background:#fff;border-color:var(--arancio);color:var(--bruciato)}
/* il pulsante stampa nell'elenco: è un link, quindi va allineato come gli altri */
a.mini-bottone{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
