/**
 * Chez Nous Cookies — bandeau (reprend les couleurs du thème chez-nous-child).
 * « Tout refuser » et « Tout accepter » ont exactement le même style (exigence CNIL).
 * Les !important sur les boutons neutralisent la couleur de bouton du thème parent (OceanWP).
 */

.cn-cookies {
	--cn-marron: var(--marron, #724731);
	--cn-cream: var(--cream, #f7f0e2);
	--cn-beige: var(--beige, #dac7ad);
	--cn-terra: var(--terracotta, #974315);

	position: fixed;
	right: 1rem;
	bottom: 1rem;
	left: 1rem;
	z-index: 9000;
	display: flex;
	justify-content: center;
	pointer-events: none;
}

.cn-cookies[hidden] { display: none; }

.cn-cookies__carte {
	width: min(100%, 44rem);
	max-height: calc(100vh - 2rem);
	overflow-y: auto;
	padding: clamp(1.25rem, 1rem + 1vw, 1.75rem);
	border: 1px solid rgba(114, 71, 49, .2);
	border-radius: 6px;
	background: var(--cn-cream);
	color: var(--cn-marron);
	box-shadow: 0 24px 60px -24px rgba(44, 32, 21, .55);
	font: 400 .9375rem / 1.6 var(--sans, Poppins, system-ui, sans-serif);
	pointer-events: auto;
	animation: cn-monter .5s ease both;
}

@keyframes cn-monter { from { opacity: 0; transform: translateY(1.5rem); } }

.cn-cookies__titre {
	margin: 0 0 .5rem;
	color: var(--cn-marron);
	font: 400 1.35rem / 1.3 var(--serif, Soria, Georgia, serif);
}

.cn-cookies__titre:focus { outline: none; }

.cn-cookies__texte { max-width: none; margin: 0 0 1rem; font-size: .9rem; line-height: 1.6; color: var(--cn-marron); }

.cn-cookies a { color: var(--cn-terra); text-decoration: underline; text-underline-offset: .2em; }

.cn-cookies__details { margin: 0 0 1rem; padding: .75rem 1rem; border-radius: 4px; background: rgba(218, 199, 173, .35); }

.cn-cookies__choix { display: flex; align-items: flex-start; gap: .75rem; margin: .5rem 0; }

.cn-cookies__choix input { flex: none; width: 1.25rem; height: 1.25rem; margin: .15rem 0 0; accent-color: var(--cn-marron); }

.cn-cookies__choix label { font-size: .88rem; }

.cn-cookies__actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }

body .cn-cookies .cn-cookies__bouton {
	flex: 1 1 10rem;
	min-height: 2.75rem;
	padding: .6rem 1.25rem;
	border: 2px solid var(--cn-marron) !important;
	border-radius: 2px;
	background: var(--cn-marron) !important;
	color: var(--cn-cream) !important;
	font: 500 .9rem var(--sans, Poppins, system-ui, sans-serif);
	letter-spacing: .02em;
	box-shadow: none;
	cursor: pointer;
}

body .cn-cookies .cn-cookies__bouton:hover {
	background: var(--cn-terra) !important;
	border-color: var(--cn-terra) !important;
	color: var(--cn-cream) !important;
}

body .cn-cookies .cn-cookies__lien {
	min-height: 2.75rem;
	padding: 0 .5rem;
	border: 0;
	background: none !important;
	color: var(--cn-marron) !important;
	font: 500 .9rem var(--sans, Poppins, system-ui, sans-serif);
	text-decoration: underline;
	text-underline-offset: .2em;
	box-shadow: none;
	cursor: pointer;
}

.cn-cookies__bouton[hidden],
.cn-cookies__lien[hidden] { display: none !important; }

.cn-cookies :focus-visible {
	outline: 3px solid var(--cn-terra);
	outline-offset: 3px;
}

/* Tableau de la page de confidentialité. */
.cn-cookies-tableau { width: 100%; margin: 1.5rem 0; border-collapse: collapse; font-size: .9rem; }
.cn-cookies-tableau th,
.cn-cookies-tableau td { padding: .6rem .75rem; border-bottom: 1px solid rgba(114, 71, 49, .2); text-align: left; vertical-align: top; }

@media (prefers-reduced-motion: reduce) {
	.cn-cookies__carte { animation: none; }
}
