/* Tarteaucitron Custom Styles - AdressFinder CI */
/* Centered modal popup with stacked full-width buttons */

#tarteaucitronRoot *,
#tarteaucitronAlertBig * {
  font-family: 'Inter', sans-serif !important;
}

/* ===== Dimmed backdrop overlay ===== */
#tarteaucitronRoot.tarteaucitronBeforeVisible::before {
  content: '' !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: rgba(0, 0, 0, 0.4) !important;
  z-index: 2147483640 !important;
  pointer-events: all !important;
}

/* ===== Main banner → centered modal card ===== */
#tarteaucitronAlertBig {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  bottom: auto !important;
  right: auto !important;
  width: 560px !important;
  max-width: calc(100vw - 32px) !important;
  background: #ffffff !important;
  color: #212529 !important;
  border-radius: 12px !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15) !important;
  padding: 36px 40px 32px !important;
  border: none !important;
  z-index: 2147483641 !important;
  text-align: center !important;
  flex-direction: column !important;
  align-items: center !important;
  margin: 0 !important;
}

/* Use flex layout only when banner is visible (don't override display:none) */
#tarteaucitronAlertBig[style*="display: block"] {
  display: flex !important;
}

/* Hide default emoji title from tarteaucitron */
#tarteaucitronRoot.tarteaucitronSize-middle #tarteaucitronAlertBig::before,
#tarteaucitronRoot.tarteaucitronSize-popup #tarteaucitronAlertBig::before {
  content: none !important;
  display: none !important;
}

/* ===== Disclaimer text ===== */
#tarteaucitronDisclaimerAlert {
  color: #212529 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  text-align: center !important;
  display: block !important;
  margin-bottom: 28px !important;
  padding: 0 !important;
}

/* Title above disclaimer text */
#tarteaucitronDisclaimerAlert::before {
  content: 'Diese Webseite verwendet Cookies' !important;
  display: block !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #212529 !important;
  margin-bottom: 12px !important;
  line-height: 1.3 !important;
}

/* ===== All buttons: full-width stacked ===== */
#tarteaucitronAlertBig .tarteaucitronCTAButton,
#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronCloseAlert {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  border-radius: 8px !important;
  padding: 14px 28px !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  margin: 0 0 10px 0 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

/* Alle akzeptieren — primary blue button (order 1, top) */
#tarteaucitronAlertBig #tarteaucitronPersonalize2 {
  background: #003a5d !important;
  color: #ffffff !important;
  border: 2px solid #003a5d !important;
  order: 1 !important;
}

#tarteaucitronAlertBig #tarteaucitronPersonalize2:hover {
  background: #00304d !important;
  border-color: #00304d !important;
}

/* Hide Deny All button */
#tarteaucitronAlertBig #tarteaucitronAllDenied2 {
  display: none !important;
}

/* Cookie-Einstellungen — white/outline button (order 2) */
#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronCloseAlert {
  background: #ffffff !important;
  color: #212529 !important;
  border: 1.5px solid #d1d5db !important;
  order: 2 !important;
}

#tarteaucitronAlertBig #tarteaucitronPersonalize:hover,
#tarteaucitronAlertBig #tarteaucitronCloseAlert:hover {
  background: #f3f4f6 !important;
  border-color: #9ca3af !important;
}

/* Hide the privacy URL link in the banner */
#tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
  display: none !important;
}

/* Hide the percentage bar */
#tarteaucitronPercentage {
  display: none !important;
}

/* Hide the checkmark/cross icons in buttons */
#tarteaucitronAlertBig .tarteaucitronCheck,
#tarteaucitronAlertBig .tarteaucitronCross {
  display: none !important;
}

/* ===== Services settings panel ===== */
#tarteaucitron {
  font-family: 'Inter', sans-serif !important;
}

#tarteaucitronBack {
  background: rgba(0, 0, 0, 0.5) !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronTitle {
  background: #003a5d !important;
  color: #ffffff !important;
  border-radius: 6px 6px 0 0 !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronTitle button {
  color: #ffffff !important;
}

#tarteaucitron .tarteaucitronAllow {
  background: #003a5d !important;
  color: #ffffff !important;
  border-radius: 4px !important;
}

#tarteaucitron .tarteaucitronAllow:hover {
  background: #00304d !important;
}

#tarteaucitron .tarteaucitronDeny {
  background: #e2e8f0 !important;
  color: #212529 !important;
  border-radius: 4px !important;
}

#tarteaucitron .tarteaucitronDeny:hover {
  background: #d1d5db !important;
}

/* ===== Mobile responsive ===== */
@media (max-width: 480px) {
  #tarteaucitronAlertBig {
    padding: 24px 20px 20px !important;
    width: calc(100vw - 24px) !important;
  }

  #tarteaucitronAlertBig .tarteaucitronCTAButton,
  #tarteaucitronAlertBig #tarteaucitronPersonalize,
  #tarteaucitronAlertBig #tarteaucitronCloseAlert {
    padding: 12px 20px !important;
  }
}
