/* Banner CSS */
#gcl-overlay { display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.6); z-index:9998; }
#gcl-banner, #gcl-preferences { display:none; position:fixed; top:50%; left:50%; transform:translate(-50%,-50%); background:#fff; padding:30px; border-radius:8px; z-index:9999; width:90%; max-width:500px; }
#gcl-banner h2, #gcl-preferences h2 { margin-top:0; font-size:1.5em; }
#gcl-banner p, #gcl-preferences p { margin:1em 0; }
#gcl-banner button, #gcl-preferences button { margin:5px 8px; padding:10px 20px; border:none; border-radius:4px; cursor:pointer; background:#0073aa; color:#fff; }
.gcl-switch { display:flex; justify-content:space-between; align-items:center; margin:10px 0; }
.toggle { position:relative; }
.toggle input { display:none; }
.slider { width:40px; height:20px; background:#ccc; border-radius:20px; position:relative; display:inline-block; }
.slider:before { content:""; position:absolute; width:16px; height:16px; top:2px; left:2px; background:#fff; border-radius:50%; transition:.2s; }
.toggle input:checked + .slider { background:#0073aa; }
.toggle input:checked + .slider:before { transform:translateX(20px); }
#gcl-fab { display:none; position:fixed; bottom:20px; right:20px; width:45px; height:45px; background:#0073aa; color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; font-size:24px; z-index:10000; }

/* Collapsible description */
.gcl-desc-header {
  cursor: pointer;
  font-weight: bold;
  margin: 8px 0 4px;
  display: flex;
  align-items: center;
}
.gcl-desc-header .arrow {
  margin-left: 8px;
  transition: transform 0.2s;
}
.gcl-desc-content {
  display: none;
  margin: 0 0 10px 0;
  padding-left: 16px;
  color: #555;
}


/* Collapsible descriptions */
.gcl-desc-header { cursor: pointer; display: flex; align-items: center; margin: 8px 0; }
.gcl-desc-header .arrow { margin-left: 8px; transition: transform 0.3s ease; }
.gcl-desc-content { display: none; margin: 0 0 10px 16px; color: #555; }

/* Style enhancements */
.gcl-switch span {
  font-weight: bold;
  font-size: 1.1em;
}
.gcl-desc-content {
  font-weight: normal;
  font-size: 0.95em;
  line-height: 1.5;
}


/* Fix: Descrizione header styling */
.gcl-desc-header {
  font-weight: normal !important;
  font-size: 0.95em !important;
  color: #333 !important;
}
.gcl-desc-header .arrow {
  font-size: 0.85em;
}


/* Smaller fonts for description header and content */
.gcl-desc-header {
  font-size: 0.85em !important;
}
.gcl-desc-content {
  font-size: 0.8em !important;
}


/* Center buttons in banner and preferences */
#gcl-banner { text-align: center; }
#gcl-banner button { display: inline-block; margin: 8px; }
#gcl-preferences .action-buttons { text-align: center; margin-top: 10px; }
#gcl-preferences .action-buttons button { display: inline-block; margin: 8px; }


/* Center preference action buttons inline */
#gcl-preferences .action-buttons {
  text-align: center;
}
#gcl-preferences .action-buttons button {
  display: inline-block;
  margin: 5px;
}

/* Gear icon color white */
#gcl-fab {
  color: #fff !important;
}


/* FAB Dashicon style */
#gcl-fab .dashicons {
    font-size: 24px;
    color: #ffffff !important;
}


/* Center dashicon inside FAB circle */
#gcl-fab {
  display: flex;
  align-items: center;
  justify-content: center;
}


/* Force center FAB icon */
#gcl-fab {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 45px !important;
  height: 45px !important;
}
#gcl-fab .dashicons {
  margin: 0 !important;
  line-height: 1 !important;
}


/* FINAL FAB centering and color override */
#gcl-fab {
  position: fixed !important;
  bottom: 20px !important;
  right: 20px !important;
  width: 48px !important;
  height: 48px !important;
  background: #0073aa !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  z-index: 9999 !important;
}
#gcl-fab .dashicons {
  font-size: 24px !important;
  line-height: 1 !important;
  color: #ffffff !important;
  margin: 0 !important;
}


/* Perfectly center FAB icon */
#gcl-fab {
  /* enforce size */
  width: 48px !important;
  height: 48px !important;
  /* flex centering */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  /* ensure positioning intact */
  position: fixed !important;
  bottom: 20px !important;
  right: 20px !important;
  border-radius: 50% !important;
  background: #0073aa !important;
  z-index: 9999 !important;
}
/* Center the dashicon itself */
#gcl-fab .dashicons {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 24px !important;
  line-height: 1 !important;
  color: #ffffff !important;
  margin: 0 !important;
}


/* UNIVERSAL OVERRIDES: force full opacity and color for all banner elements */
#gcl-root, #gcl-root * {
  color: #222 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
#gcl-banner, #gcl-banner h2, #gcl-banner p, #gcl-banner button {
  color: #222 !important;
  opacity: 1 !important;
}
#gcl-preferences, #gcl-preferences h2, #gcl-preferences p, #gcl-preferences label span {
  color: #222 !important;
  opacity: 1 !important;
}
#gcl-banner a, #gcl-preferences a {
  color: #0073aa !important;
  opacity: 1 !important;
  text-decoration: underline !important;
}
/* Ensure toggles and labels are visible */
.gcl-switch span, .gcl-switch .toggle, .gcl-switch .slider {
  color: #222 !important;
  opacity: 1 !important;
}
/* FAB icon universal override */
#gcl-fab, #gcl-fab * {
  color: #ffffff !important;
  opacity: 1 !important;
}


/* Button text color white */
#gcl-banner button, 
#gcl-preferences button, 
#gcl-root button {
  color: #ffffff !important;
}


/* Center preference buttons container */
#gcl-preferences .action-buttons {
  text-align: center !important;
  margin-top: 20px;
}
#gcl-preferences .action-buttons button {
  display: inline-block !important;
  margin: 5px 10px !important;
}


/* Precise centering of preference buttons */
#gcl-preferences .action-buttons {
  display: flex !important;
  justify-content: center !important;
  gap: 10px !important;
  margin: 20px 0 !important;
}
#gcl-preferences .action-buttons button {
  margin: 0 !important;
}


/* v4.6.5 final: ensure preference buttons are centered */
#gcl-preferences .action-buttons {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin: 20px auto !important;
  padding: 0 !important;
}
#gcl-preferences .action-buttons button {
  flex: none !important;
  margin: 0 10px !important;
}
/* fallback: force text-align center on container */
#gcl-preferences {
  text-align: center !important;
}
