/* Banner dei consensi (tracciamento.js, specifica comunicazioni §2.4 e §5.6). Leggero e chiaro: una scheda in basso che
   non copre la pagina, due scelte della stessa grandezza, collegamenti alla privacy e alla cookie policy.
   Colori e misure di ev.css (con i valori di riserva, se una pagina non lo carica). Telefono prima di tutto:
   a tutta larghezza meno 12 px; dal computer in basso a sinistra, larga al massimo 26 rem. */

#ev-consenso {
  position: fixed;
  z-index: 2147483000;
  left: 12px;
  right: 12px;
  bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  max-width: 26rem;
  margin: 0 auto;
  padding: 1rem 1rem 0.85rem;
  background: var(--superficie, #120D21);
  color: var(--inchiostro, #F7F4FF);
  border: 1px solid var(--linea-forte, rgba(196, 181, 253, 0.30));
  border-radius: var(--r-grande, 22px);
  box-shadow: 0 14px 44px rgba(0, 0, 0, 0.55);
  font-family: var(--testo, "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif);
  line-height: 1.45;
  text-align: left;
}
@media (min-width: 700px) {
  #ev-consenso { left: 20px; right: auto; bottom: 20px; margin: 0; }
}
#ev-consenso h2 {
  margin: 0 0 0.3rem;
  font-family: var(--titoli, "Fraunces", Georgia, serif);
  font-size: 1.05rem;
  font-weight: 520;
  line-height: 1.25;
  letter-spacing: -0.005em;
  color: var(--inchiostro, #F7F4FF);
}
#ev-consenso p {
  margin: 0 0 0.85rem;
  max-width: none;
  font-size: 0.8rem;
  color: var(--tenue, #A6A0BC);
}
#ev-consenso .ev-c-bott { display: flex; flex-wrap: wrap; gap: 0.5rem; }
#ev-consenso button {
  flex: 1 1 9rem;
  min-height: 48px;
  margin: 0;
  padding: 0.55rem 1rem;
  border-radius: 999px;
  font-family: inherit;
  font-size: 0.85rem;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
#ev-consenso .ev-c-si { background: var(--viola, #7B2D8E); color: #fff; border: 1px solid var(--viola, #7B2D8E); }
#ev-consenso .ev-c-si:hover { background: var(--viola-hover, #9134A8); border-color: var(--viola-hover, #9134A8); }
#ev-consenso .ev-c-no {
  background: transparent;
  color: var(--inchiostro, #F7F4FF);
  border: 1px solid var(--linea-forte, rgba(196, 181, 253, 0.30));
}
#ev-consenso .ev-c-no:hover { border-color: var(--lavanda, #C4B5FD); }
#ev-consenso button:active { transform: translateY(1px); }
#ev-consenso button:focus-visible,
#ev-consenso a:focus-visible { outline: 3px solid var(--lavanda, #C4B5FD); outline-offset: 2px; }
#ev-consenso .ev-c-link {
  margin: 0.7rem 0 0;
  font-size: 0.75rem;
  text-align: center;
  color: var(--tenue, #A6A0BC);
}
#ev-consenso .ev-c-link a {
  display: inline-block;
  padding: 0.3rem 0.2rem;
  color: var(--lavanda, #C4B5FD);
  text-decoration: none;
}
#ev-consenso .ev-c-link a:hover { text-decoration: underline; }

/* Telefono: più bassa (collaudo 120, A1-03: alta 311 px su 844 copriva «Continua al pagamento» della cassa). Le due scelte
   restano della stessa grandezza, sempre su una riga; tracciamento.js aggiunge in fondo alla pagina uno spazio alto quanto
   la scheda, così niente resta nascosto sotto. */
@media (max-width: 699px) {
  #ev-consenso { left: 8px; right: 8px; bottom: calc(8px + env(safe-area-inset-bottom, 0px)); padding: 0.7rem 0.8rem 0.55rem; }
  #ev-consenso h2 { font-size: 0.95rem; margin-bottom: 0.15rem; }
  #ev-consenso p { margin-bottom: 0.55rem; font-size: 0.78rem; line-height: 1.35; }
  #ev-consenso button { flex: 1 1 0; min-width: 0; min-height: 44px; padding: 0.45rem 0.6rem; }
  #ev-consenso .ev-c-link { margin-top: 0.35rem; }
}
#ev-consenso-spazio { display: block; width: 100%; pointer-events: none; }
@media (prefers-reduced-motion: no-preference) {
  #ev-consenso { animation: ev-consenso-entra 0.22s ease-out; }
}
@keyframes ev-consenso-entra {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: none; }
}
@media print {
  #ev-consenso { display: none; }
}
