/**
 * Iubenda Privacy Controls – stile identico al sito Libre.
 * Design system: Tailwind cream/brand/ink, Figtree, rounded-2xl/xl, shadow-modal/card.
 * Banner + modale "Scopri di più" + pulsante serratura.
 */

@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@300;400;500;600;700;800&display=swap');

/* ========== VARIABILI LIBRE (da tailwind.config.js) ========== */
:root {
  --libre-cream-50: #FDFCF7;
  --libre-cream-100: #FAF8F0;
  --libre-cream-200: #F5F2E6;
  --libre-cream-300: #EBE7D4;
  --libre-brand-500: #1e787d;
  --libre-brand-600: #186063;
  --libre-ink-200: #d1d1d1;
  --libre-ink-400: #6b6b6b;
  --libre-ink-600: #2a2a2a;
  --libre-ink-700: #1A1A1A;
  --libre-shadow-input: 0px 0px 6px 1.3px rgba(0,0,0,0.05);
  --libre-shadow-card: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.06);
  --libre-shadow-modal: 0 24px 48px rgba(0,0,0,0.16);
  --libre-font: 'Figtree', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ========== BARRA FOOTER IUBENDA NASCOSTA (su richiesta) ========== */
#iubenda-cs-banner,
.iubenda-cs-banner,
[id*="iubenda"][id*="banner"],
.iub__us-widget {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* ========== BANNER COOKIE – regole legacy (banner nascosto sopra) ========== */
#iubenda-cs-banner {
  font-family: var(--libre-font) !important;
}

/* Container: solo wrapper, niente box visibile (evita finestre concentriche) */
#iubenda-cs-banner .iubenda-cs-container {
  font-family: var(--libre-font) !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  transform: translateY(0%) !important;
}

/* .iubenda-cs-content: wrapper trasparente, bordo 0, box-shadow (sovrascrive element.style) */
#iubenda-cs-banner .iubenda-cs-content,
.iubenda-cs-content {
  border: 0 !important;
  border-width: 0 !important;
  background: transparent !important;
  background-color: rgba(0, 0, 0, 0) !important;
  color: var(--libre-ink-700) !important;
  font-family: var(--libre-font) !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  padding: 1.25rem !important;
  border-radius: 1rem !important;
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.16) !important;
  opacity: 0.97 !important;
  transform: translateY(0%) !important;
}

/* Finestra visibile interna: .iubenda-cs-rationale con bordo e sfondo */
#iubenda-cs-banner .iubenda-cs-rationale,
.iubenda-cs-rationale {
  border: 2px solid var(--libre-cream-300) !important;
  border-radius: 1rem !important;
  box-shadow: var(--libre-shadow-modal) !important;
  font-family: var(--libre-font) !important;
  font-weight: 400 !important;
  padding: 1.25rem !important;
  background: var(--libre-cream-50) !important;
  color: var(--libre-ink-700) !important;
}

/* Come richiesto: su title e granular span niente background/color forzati, solo font-size 14px */
#iubenda-cs-banner #iubenda-cs-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--libre-ink-700) !important;
}

.iub-toggle-checkbox.granular-control-checkbox span {
  font-size: 14px !important;
  background-color: transparent !important;
  color: var(--libre-ink-700) !important;
}

/* Toggle granular: unchecked = rosato, checked = verde stessa tonalità opaca */
#iubenda-cs-banner .iubenda-granular-controls-container .granular-control-checkbox input.style1,
#iubenda-cs-banner .iubenda-granular-controls-container input[class="style1"] {
  width: 48px !important;
  height: 24px !important;
  background-position: top 3px left 3px !important;
  background-size: 18px 18px !important;
  background-color: #b46565 !important;
}

#iubenda-cs-banner .iubenda-granular-controls-container .granular-control-checkbox input.style1:checked,
#iubenda-cs-banner .iubenda-granular-controls-container input[class="style1"]:checked {
  background-color: #65b465 !important;
}

#iubenda-cs-banner .iubenda-cs-brand,
#iubenda-cs-banner [class*="brand"] {
  padding: 1rem 1.25rem !important;
  font-family: var(--libre-font) !important;
}

/* Blocco "Created with iubenda": outer trasparente, solo scritta centrata */
#iubenda-cs-banner .iubenda-cs-brand-badge-outer {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 1rem 1.25rem !important;
  text-align: center !important;
}

#iubenda-cs-banner .iubenda-cs-brand-badge-outer::before,
#iubenda-cs-banner .iubenda-cs-brand-badge-outer::after {
  display: none !important;
  content: none !important;
}

#iubenda-cs-banner .iubenda-cs-brand-badge,
#iubenda-cs-banner a.iubenda-cs-brand-badge {
  background: rgba(253, 252, 247, 0.97) !important;
  background-color: rgba(253, 252, 247, 0.97) !important;
  color: var(--libre-ink-600) !important;
  border: none !important;
  box-shadow: none !important;
  display: inline !important;
  text-align: center !important;
  margin-bottom: -30px !important;
}

#iubenda-cs-banner .iubenda-cs-brand-badge > span {
  border-right: 0 !important;
  padding-right: 12px !important;
}

#iubenda-cs-banner .iubenda-cs-brand-badge::before,
#iubenda-cs-banner .iubenda-cs-brand-badge::after {
  display: none !important;
  content: none !important;
}

#iubenda-cs-banner .iubenda-cs-brand-badge img,
#iubenda-cs-banner .iubenda-cs-brand-badge svg,
#iubenda-cs-banner .iubenda-cs-brand-badge [class*="icon"],
#iubenda-cs-banner .iubenda-cs-brand-badge-outer img,
#iubenda-cs-banner .iubenda-cs-brand-badge-outer svg {
  display: none !important;
}

#iubenda-cs-banner .iubenda-banner-content,
#iubenda-cs-banner #iubenda-cs-title,
#iubenda-cs-banner .iubenda-banner-content *,
.iubenda-banner-content,
.iubenda-banner-content * {
  color: var(--libre-ink-700) !important;
  font-family: var(--libre-font) !important;
}


/* Pulsanti – come nel sito: pill (rounded-full), border-2, shadow input */
#iubenda-cs-banner .iubenda-cs-opt-group,
.iubenda-cs-opt-group {
  color: var(--libre-ink-700) !important;
  gap: 0.5rem !important;
}

#iubenda-cs-banner .iubenda-cs-opt-group button,
.iubenda-cs-opt-group button {
  font-family: var(--libre-font) !important;
  font-weight: 600 !important;
  font-size: 0.9375rem !important;
  border-radius: 9999px !important;  /* rounded-full */
  padding: 0.5rem 1.25rem !important;
  min-height: 48px !important;
  transition: background-color 0.2s, box-shadow 0.2s !important;
  border: 2px solid transparent !important;
  box-shadow: var(--libre-shadow-input) !important;
}

/* Primario: brand-500 come CTA del sito */
#iubenda-cs-banner .iubenda-cs-opt-group button.iubenda-cs-btn-primary,
.iubenda-cs-opt-group button.iubenda-cs-btn-primary,
button.iubenda-cs-btn-primary,
.iubenda-cs-accept-btn,
#iubenda-cs-banner [class*="accept"],
[id*="iubenda"] button[class*="primary"] {
  background: var(--libre-brand-500) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 2px 8px rgba(30, 120, 125, 0.3) !important;
}

#iubenda-cs-banner .iubenda-cs-opt-group button.iubenda-cs-btn-primary:hover,
.iubenda-cs-opt-group button.iubenda-cs-btn-primary:hover {
  background: var(--libre-brand-600) !important;
  box-shadow: 0 4px 12px rgba(30, 120, 125, 0.35) !important;
}

/* Secondari: come bottoni outline del sito (bianco + bordo brand) */
#iubenda-cs-banner .iubenda-cs-opt-group button:not(.iubenda-cs-btn-primary),
.iubenda-cs-opt-group button:not(.iubenda-cs-btn-primary),
.iubenda-cs-reject-btn,
.iubenda-cs-customize-btn,
#iubenda-cs-banner [class*="reject"],
#iubenda-cs-banner [class*="customize"] {
  background: #fff !important;
  color: var(--libre-brand-500) !important;
  border: 2px solid var(--libre-brand-500) !important;
  box-shadow: var(--libre-shadow-input) !important;
}

#iubenda-cs-banner .iubenda-cs-opt-group button:not(.iubenda-cs-btn-primary):hover,
.iubenda-cs-opt-group button:not(.iubenda-cs-btn-primary):hover {
  background: var(--libre-cream-100) !important;
  border-color: var(--libre-brand-600) !important;
  color: var(--libre-brand-600) !important;
}

/* Link = colore brand come nel sito */
#iubenda-cs-banner .iubenda-banner-content a,
#iubenda-cs-banner a[href*="cookie"],
#iubenda-cs-banner a[href*="privacy"],
#iubenda-cs-banner a {
  color: var(--libre-brand-500) !important;
  text-decoration: underline !important;
  font-weight: 500 !important;
}

#iubenda-cs-banner .iubenda-banner-content a:hover,
#iubenda-cs-banner a:hover {
  color: var(--libre-brand-600) !important;
}

/* Pulsante chiudi (X) */
#iubenda-cs-banner .iubenda-cs-close-btn {
  color: rgba(255,255,255,0.9) !important;
  font-size: 1.25rem !important;
  padding: 0.75rem !important;
}

#iubenda-cs-banner .iubenda-cs-close-btn:hover {
  color: #fff !important;
  opacity: 0.9 !important;
}

/* Overlay con opacity (come richiesto) */
#iubenda-cs-banner.iubenda-cs-overlay::before {
  background: rgba(0, 0, 0, 0.45) !important;
  opacity: 0.95 !important;
}

/* Override stili inline (element.style) su pulsanti – forzare brand e bianco */
#iubenda-cs-banner button[style],
#iubenda-cs-banner .iubenda-cs-btn-primary[style],
#iubenda-cs-banner button[class*="accept"][style],
[id*="iubenda"] button.iubenda-cs-btn-primary[style] {
  background: var(--libre-brand-500) !important;
  color: #fff !important;
}

/* ========== MODALE "SCOPRI DI PIÙ" / PREFERENZE ========== */
/* Wrapper generico modale/consent (stesso look del banner) */
#iubenda-cs-container,
#iubenda-cs-container .iubenda-cs-content,
#iubenda-cs-container .iubenda-cs-rationale,
[id*="iubenda"][id*="container"],
[id*="iubenda"][id*="container"] .iubenda-cs-content,
[class*="iubenda-cs-"][class*="container"],
[class*="iubenda"][class*="modal"] .iubenda-cs-content,
[class*="iubenda"][class*="consent"] {
  font-family: var(--libre-font) !important;
  background: var(--libre-cream-50) !important;
  color: var(--libre-ink-700) !important;
  border: 2px solid var(--libre-cream-300) !important;
  border-radius: 1rem !important;
  box-shadow: var(--libre-shadow-modal) !important;
}

#iubenda-cs-container *,
[id*="iubenda"][id*="container"] *,
[class*="iubenda-cs-container"] *,
[class*="iubenda"][class*="modal"] * {
  font-family: var(--libre-font) !important;
  color: var(--libre-ink-700) !important;
}

#iubenda-cs-container .iubenda-cs-opt-group button.iubenda-cs-btn-primary,
[id*="iubenda"] .iubenda-cs-opt-group button.iubenda-cs-btn-primary,
[id*="iubenda"] button.iubenda-cs-btn-primary {
  background: var(--libre-brand-500) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 9999px !important;
  box-shadow: var(--libre-shadow-input) !important;
}

#iubenda-cs-container .iubenda-cs-opt-group button:not(.iubenda-cs-btn-primary),
[id*="iubenda"] .iubenda-cs-opt-group button:not(.iubenda-cs-btn-primary) {
  background: #fff !important;
  color: var(--libre-brand-500) !important;
  border: 2px solid var(--libre-brand-500) !important;
  border-radius: 9999px !important;
}

/* Container iframe preferenze (la finestra "Scopri di più" può essere in iframe) */
#iubenda,
#iubenda-iframe,
[id^="iubenda"],
div[id*="iubenda"] {
  font-family: var(--libre-font) !important;
}

/* Wrapper dell'iframe: bordo e ombra come le modali Libre */
#iubenda,
#iubenda-iframe,
[id^="iubenda"][id$="iframe"],
div[id*="iubenda"] iframe {
  border-radius: 1rem !important;
  border: 2px solid var(--libre-cream-300) !important;
  box-shadow: var(--libre-shadow-modal) !important;
  overflow: hidden !important;
}

/* Il div che contiene l'iframe: sfondo cream per coerenza */
#iubenda,
#iubenda-iframe,
.iubenda-iframe-top-container,
[class*="iubenda-iframe"] {
  background: var(--libre-cream-50) !important;
}

/* Titoli e testi nella modale preferenze */
#iubenda-cs-container h1,
#iubenda-cs-container h2,
#iubenda-cs-container [class*="title"],
[id*="iubenda"] h1,
[id*="iubenda"] h2,
[id*="iubenda"] [class*="title"] {
  color: var(--libre-ink-700) !important;
  font-weight: 700 !important;
  font-family: var(--libre-font) !important;
}

#iubenda-cs-container p,
#iubenda-cs-container span,
[id*="iubenda"] p,
[id*="iubenda"] span {
  color: var(--libre-ink-600) !important;
}

#iubenda-cs-container a,
[id*="iubenda"] a {
  color: var(--libre-brand-500) !important;
  font-weight: 500 !important;
}

/* Toggle / checkbox = accent brand */
#iubenda-cs-container input[type="checkbox"],
[id*="iubenda"] input[type="checkbox"],
[id*="iubenda"] [class*="toggle"] {
  accent-color: var(--libre-brand-500) !important;
}

/* ========== PULSANTE SERRATURA (floating) ========== */
/* Pulsante serratura/preferenze: niente background in element.style per non coprire l'icona Iubenda */
.iubenda-tp-btn,
.iubenda-tp-btn[data-tp-float],
[class*="iubenda-tp-btn"],
button[class*="iubenda-tp"],
a[class*="iubenda-tp"] {
  background: transparent !important;
  background-color: transparent !important;
  color: inherit !important;
  border: none !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  font-family: var(--libre-font) !important;
}

.iubenda-tp-btn:hover,
.iubenda-tp-btn[data-tp-float]:hover,
[class*="iubenda-tp-btn"]:hover {
  background: transparent !important;
  background-color: transparent !important;
}

/* Pulsante floating a sinistra per non sovrapporsi al pulsante invio nella chat */
.iubenda-tp-alert-btn[data-tp-float][data-tp-float=bottom-right],
.iubenda-tp-alert-btn[data-tp-float][data-tp-float=top-right],
.iubenda-tp-btn:not(.iubenda-floatable-tb-btn)[data-tp-float][data-tp-float=bottom-right],
.iubenda-tp-btn:not(.iubenda-floatable-tb-btn)[data-tp-float][data-tp-float=top-right],
.iubenda-uspr-btn[data-tp-float][data-tp-float=bottom-right],
.iubenda-uspr-btn[data-tp-float][data-tp-float=top-right] {
  left: 0 !important;
  right: auto !important;
}

/* ========== FALLBACK GLOBALI (qualsiasi elemento Iubenda) ========== */
[id*="iubenda"] {
  font-family: var(--libre-font) !important;
}

[id*="iubenda"] [class*="content"] {
  background-color: var(--libre-cream-50) !important;
  color: var(--libre-ink-700) !important;
}

[id*="iubenda"] [class*="btn"][class*="primary"],
[id*="iubenda"] button[class*="accept"] {
  background: var(--libre-brand-500) !important;
  color: #fff !important;
  border-radius: 9999px !important;
}

[id*="iubenda"] input[type="checkbox"],
[id*="iubenda"] [class*="toggle"] {
  accent-color: var(--libre-brand-500) !important;
}

/* Se "Scopri di più" resta bianca: il contenuto è in iframe (cross-origin).
   Dashboard Iubenda → Impostazioni avanzate → Custom CSS URL:
   inserisci l’URL pubblico di questo file (es. https://tuosito.com/iubenda-overrides.css). */

/* ========== OVERRIDE FINALE – una sola finestra, centrata, translateY(0%) ========== */
body #iubenda-cs-banner,
html body #iubenda-cs-banner {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 1rem !important;
}

/* Container Iubenda: niente background né colore (solo wrapper, niente doppia scatola) */
body #iubenda-cs-banner .iubenda-cs-container,
html body #iubenda-cs-banner .iubenda-cs-container {
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  color: inherit !important;
  transform: translateY(0%) !important;
}

/* .iubenda-cs-content: sovrascrive element.style – bordo 0, background trasparente, box-shadow */
body #iubenda-cs-banner .iubenda-cs-content,
html body #iubenda-cs-banner .iubenda-cs-content {
  border: 0 !important;
  border-width: 0 !important;
  background: transparent !important;
  background-color: rgba(0, 0, 0, 0) !important;
  color: #1A1A1A !important;
  padding: 1.25rem !important;
  border-radius: 1rem !important;
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.16) !important;
  opacity: 0.97 !important;
  transform: translateY(0%) !important;
}

/* Finestra visibile: .iubenda-cs-rationale */
body #iubenda-cs-banner .iubenda-cs-rationale,
html body #iubenda-cs-banner .iubenda-cs-rationale {
  border: 2px solid #EBE7D4 !important;
  border-radius: 1rem !important;
  padding: 1.25rem !important;
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.16) !important;
  background: #FDFCF7 !important;
  color: #1A1A1A !important;
}

/* Overlay con opacity */
body #iubenda-cs-banner.iubenda-cs-overlay::before,
html body #iubenda-cs-banner.iubenda-cs-overlay::before {
  background: rgba(0, 0, 0, 0.45) !important;
  opacity: 0.92 !important;
}

/* Toggle granular: false = rosso opaco, true = verde opaco (sovrascrive inline ogni volta) */
body #iubenda-cs-banner .iubenda-granular-controls-container input.style1[type="checkbox"],
html body #iubenda-cs-banner .iubenda-granular-controls-container input.style1[type="checkbox"] {
  background-color: #b46565 !important;
}
body #iubenda-cs-banner .iubenda-granular-controls-container input.style1[type="checkbox"]:checked,
html body #iubenda-cs-banner .iubenda-granular-controls-container input.style1[type="checkbox"]:checked {
  background-color: #65b465 !important;
}

/* Pulsante serratura: niente background per non coprire l'icona Iubenda (sovrascrive element.style) */
body .iubenda-tp-btn,
body button.iubenda-tp-btn,
html body .iubenda-tp-btn,
html body button.iubenda-tp-btn {
  background: transparent !important;
  background-color: transparent !important;
}
