/* Cookie consent banner — GDPR + Consent Mode v2 (compatto, accessibile) */
#efmCookieBanner {
	position: fixed;
	left: 50%;
	bottom: 12px;
	transform: translateX(-50%);
	width: calc(100% - 24px);
	max-width: 1100px;
	max-height: calc(100vh - 60px);
	overflow-y: auto;
	background: #ffffff;
	color: #222;
	box-shadow: 0 8px 28px rgba(0,0,0,0.25);
	border-radius: 8px;
	z-index: 9999;
	font-family: 'Open Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	border-top: 3px solid #148914;
}
#efmCookieBanner .efm-cc-inner { padding: 12px 16px; }
#efmCookieBanner h3 {
	margin: 0 0 4px;
	font-size: 14px;
	font-weight: 700;
	color: #148914;
}
#efmCookieBanner p {
	margin: 0 0 10px;
	font-size: 12px;
	line-height: 1.4;
	color: #333;
}
#efmCookieBanner a { color: #148914; text-decoration: underline; }
#efmCookieBanner a:focus-visible { outline: 2px solid #148914; outline-offset: 2px; }

#efmCookieBanner .efm-cc-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	justify-content: flex-end;
	align-items: center;
}
#efmCookieBanner .efm-cc-btn {
	padding: 8px 14px;
	border-radius: 4px;
	border: 1px solid transparent;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
	flex: 0 1 auto;
	min-width: 100px;
	transition: opacity 0.15s, transform 0.05s;
	font-family: inherit;
	line-height: 1.2;
}
#efmCookieBanner .efm-cc-btn:hover  { opacity: 0.88; }
#efmCookieBanner .efm-cc-btn:active { transform: translateY(1px); }
#efmCookieBanner .efm-cc-btn:focus-visible { outline: 2px solid #148914; outline-offset: 2px; }
/* 3 pulsanti di pari prominenza (GDPR Garante 2021) */
#efmCookieBanner .efm-cc-btn-accept { background: #148914; color: #fff; border-color: #0f6e0f; }
#efmCookieBanner .efm-cc-btn-reject { background: #6c757d; color: #fff; border-color: #5a6268; }
#efmCookieBanner .efm-cc-btn-custom { background: #ffffff; color: #148914; border-color: #148914; }

/* Preferenze: checkbox in riga (responsive wrap) */
#efmCookieBanner .efm-cc-prefs {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #eee;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 22px;
}
#efmCookieBanner .efm-cc-prefs label {
	font-size: 12px;
	color: #333;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
}
#efmCookieBanner .efm-cc-prefs input[type=checkbox] { margin: 0; }
#efmCookieBanner .efm-cc-prefs button {
	margin-left: auto;
	padding: 7px 14px;
	font-size: 12px;
	min-width: 110px;
}

@media (max-width: 575px) {
	#efmCookieBanner { left: 8px; right: 8px; bottom: 8px; transform: none; width: auto; max-width: none; }
	#efmCookieBanner .efm-cc-btn { font-size: 12px; padding: 7px 10px; min-width: 0; flex: 1 1 30%; }
	#efmCookieBanner .efm-cc-prefs { gap: 8px 14px; }
	#efmCookieBanner .efm-cc-prefs label { font-size: 11px; }
	#efmCookieBanner .efm-cc-prefs button { width: 100%; margin-left: 0; margin-top: 4px; }
}
