/* ============================================
   Z+ STYLE für CookieAdmin Cookie-Banner
   ============================================ */

/* ============= BANNER (unten, volle Breite) ============= */
.cookieadmin_law_container {
	position: fixed !important;
	bottom: 0 !important;
	left: 0 !important;
	right: 0 !important;
	top: auto !important;
	transform: none !important;
	max-width: none !important;
	width: 100% !important;
	z-index: 9999 !important;
	background: var(--w) !important;
	box-shadow: 0 -4px 20px rgba(0, 0, 0, .12) !important;
	border-radius: 0 !important;
	border: none !important;
	font-family: var(--font) !important;
	overflow: hidden;
}

/* Innerer Layout-Container: flex, mittig ausgerichtet */
.cookieadmin_law_container .cookieadmin_consent_inside {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 32px !important;
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 16px 40px !important;
	background: transparent !important;
}

/* Titel/Header ausblenden im schmalen Banner */
.cookieadmin_law_container #cookieadmin_notice_title,
.cookieadmin_law_container .cookieadmin_header {
	display: none !important;
}

/* Description-Container: nimmt verfügbaren Platz */
.cookieadmin_law_container .cookieadmin_notice_con,
.cookieadmin_law_container #cookieadmin_notice {
	flex: 1 1 auto !important;
	margin: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
	border: none !important;
	background: transparent !important;
	color: var(--za) !important;
	font-family: var(--font) !important;
	font-size: 14px !important;
	line-height: 1.55 !important;
	position: static !important;
}

.cookieadmin_law_container .cookieadmin_notice_con p,
.cookieadmin_law_container #cookieadmin_notice {
	color: var(--za) !important;
}

.cookieadmin_law_container .cookieadmin_notice_con strong,
.cookieadmin_law_container #cookieadmin_notice strong {
	color: var(--zs) !important;
	font-weight: 700 !important;
}

/* Button-Container: rechts, nicht schrumpfen */
.cookieadmin_law_container .cookieadmin_consent_btns {
	flex-shrink: 0 !important;
	margin-top: 0 !important;
	display: flex !important;
	gap: 10px !important;
	align-items: center !important;
}

/* ============= BUTTONS im Z+ Style ============= */
.cookieadmin_btn,
button.cookieadmin_btn {
	font-family: var(--font) !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	padding: 12px 24px !important;
	border-radius: 999px !important;
	border: none !important;
	cursor: pointer !important;
	transition: all .15s ease !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

/* Primary: "Alle akzeptieren" */
.cookieadmin_accept_btn,
button.cookieadmin_accept_btn,
.cookieadmin_save_btn {
	background: var(--zg) !important;
	color: var(--zs) !important;
	border: none !important;
}
.cookieadmin_accept_btn:hover,
button.cookieadmin_accept_btn:hover,
.cookieadmin_save_btn:hover {
	background: #b8bc0e !important;
	transform: translateY(-1px);
}

/* Secondary: "Alle ablehnen", "Anpassen" — Outline */
.cookieadmin_reject_btn,
.cookieadmin_customize_btn,
button.cookieadmin_reject_btn,
button.cookieadmin_customize_btn {
	background: transparent !important;
	color: var(--zs) !important;
	border: 1.5px solid var(--za20) !important;
	padding: 10.5px 22px !important;
}
.cookieadmin_reject_btn:hover,
.cookieadmin_customize_btn:hover {
	border-color: var(--zs) !important;
	background: var(--w) !important;
	transform: translateY(-1px);
}

/* ============= FLOATING RE-CONSENT BUTTON =============
   Mobile: unten rechts (funktioniert gut, Footer-Links sind
   dort schmal genug). Desktop: rechts vertikal mittig, weil
   die Footer-Link-Zeile (FAQ/Kontakt/Impressum/Datenschutz)
   dort bis nah an den Bildschirmrand reicht und sonst mit
   "Datenschutz" kollidiert. */
.cookieadmin_re_consent {
	background: var(--za) !important;
	top: auto !important;
	left: auto !important;
	right: 15px !important;
	bottom: 15px !important;
	transform: none !important;
}
@media (min-width: 769px) {
	.cookieadmin_re_consent {
		top: 50% !important;
		bottom: auto !important;
		transform: translateY(-50%) !important;
	}
}
.cookieadmin_re_consent:hover {
	background: var(--zs) !important;
}

/* "Powered by CookieAdmin" verstecken */
.cookieadmin-poweredby,
.cookieadmin_poweredby {
	display: none !important;
}

/* ============= GROSSES PREFERENCES-MODAL (bleibt zentriert) ============= */
.cookieadmin_cookie_modal {
	font-family: var(--font) !important;
	background: var(--w) !important;
	color: var(--zs) !important;
	border-radius: 20px !important;
	box-shadow: 0 12px 40px rgba(0, 0, 0, .15) !important;
	border: none !important;
	overflow: hidden;
}
.cookieadmin_cookie_modal .cookieadmin_consent_inside {
	padding: 24px 28px !important;
}
.cookieadmin_mod_head,
.cookieadmin_preference_title,
.cookieadmin_preference h4 {
	color: var(--zs) !important;
	font-family: var(--font) !important;
	font-weight: 700 !important;
}
.cookieadmin_desc,
.cookieadmin_desc *,
.cookieadmin_preference_details,
.cookieadmin_remark {
	color: var(--za) !important;
	font-family: var(--font) !important;
	font-size: 14px !important;
	line-height: 1.55 !important;
}
.cookieadmin_desc strong {
	color: var(--zs) !important;
	font-weight: 700 !important;
}
.cookieadmin_close_pref {
	color: var(--za) !important;
	background: transparent !important;
}
.cookieadmin_close_pref:hover {
	color: var(--zs) !important;
}
.cookieadmin_preference {
	background: var(--bg, #f4f4f0) !important;
	border-radius: 12px !important;
	padding: 16px 18px !important;
	margin-bottom: 10px !important;
	border: none !important;
}
.cookieadmin_modal_footer,
.cookieadmin_modal_footer_links {
	border-top: 1px solid rgba(56, 70, 73, .1) !important;
	background: var(--w) !important;
}
.cookieadmin_modal_footer_links a {
	color: var(--za) !important;
	text-decoration: none !important;
}
.cookieadmin_modal_footer_links a:hover {
	color: var(--zs) !important;
}

/* ============= MOBILE ============= */
@media (max-width: 720px) {
	.cookieadmin_law_container .cookieadmin_consent_inside {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 14px !important;
		padding: 16px 20px !important;
	}
	.cookieadmin_law_container .cookieadmin_consent_btns {
		justify-content: flex-start !important;
		flex-wrap: wrap !important;
	}
	.cookieadmin_btn {
		font-size: 13px !important;
		padding: 11px 20px !important;
	}
}
