/********  COOKIE BANNER & PREFERENCES  **************************/

/* -------       banner compatto in basso       ------- */
#cookieBanner{
  position:fixed;
  left:50%; bottom:1.5rem;
  transform:translateX(-50%);
  width:min(92%, 460px);
  background:#fff;
  color:#000;
  font-family: var(--font-body);
  font-size:.95rem;
  line-height:1.45;
  border-radius:14px;
  box-shadow:0 6px 16px rgba(0,0,0,.12);
  padding:1.4rem 1.6rem 1.2rem;
  z-index:99999;
}
#cookieBanner.hidden{display:none;}

#cookieBanner p{margin:0 0 1rem;}

#cookieBanner .btn-row{
  display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap;
}

/* pulsanti */
.cb-btn, #cookieBanner button, #cookiePrefs button{
  cursor:pointer;
  font:600 .9rem/1.2 "IBM Plex Sans",sans-serif;
  padding:.55rem 1.2rem;
  border-radius:6px;
  border:0;
  background:#e8e8e8;
  color:#000;
  transition:background .2s;
}
.cb-btn:hover, #cookieBanner button:hover{background:#d4d4d4;}

.cb-btn.primary, #cookieBanner button.primary{
  background:#395934;
  color:#fff;
}
.cb-btn.primary:hover{background:#2d4529;}

/* -------       modal preferenze       ------- */
#cookiePrefs{
  position:fixed;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.55);
  z-index:99999;
}
#cookiePrefs.hidden{display:none;}

#cookiePrefs .prefs-card{
  background:#fff;
  width:clamp(320px, 92%, 420px);
  border-radius:16px;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
  padding:1.8rem 1.6rem;
  font-family:"IBM Plex Sans",system-ui,sans-serif;
}

#cookiePrefs h3{
  margin:0 0 1.2rem;
  font-size:1.3rem;
  color:#395934;
}

#cookiePrefs label{
  display:block;
  margin:.55rem 0;
  font-size:.95rem;
}

#cookiePrefs input[type=checkbox]{
  transform:translateY(2px);
  margin-right:.5rem;
}

/* btn row */
#cookiePrefs .btn-row{
  margin-top:1.4rem;
  text-align:right;
}

/* ------- generiche (se mancavano) ------- */
.hidden{display:none}

/* riduce gap fra banner e sezione successiva (fallback) */
#cookieBanner + section{margin-top:0}
