/* Cookies page (page-cookies.php) — hero + preferences panel + toggle switch.
   .prose (content sections, FAQ) is styled by dlmv2-article, enqueued alongside this. */

.cookies-hero {
	background: var(--color-primary-dark);
	color: #fff;
	padding-block: clamp(2.5rem, 6vw, 4.5rem) clamp(2rem, 5vw, 3rem);
}
.cookies-hero__eyebrow {
	color: var(--color-accent);
	margin-bottom: 0.75rem;
}
.cookies-hero h1 {
	font-family: var(--font-display);
	font-size: clamp(2rem, 4vw, 2.75rem);
	color: #fff;
	margin: 0 0 1rem;
}
.cookies-hero__lead {
	color: #bcccdc;
	max-width: 42rem;
	font-size: 1.05rem;
	line-height: 1.6;
	margin: 0;
}

.cookies-panel {
	margin-top: -1.75rem;
}
.cookies-panel__card {
	background: #fff;
	border: 1px solid var(--color-border, #e2e8f0);
	border-radius: var(--radius-lg, 16px);
	box-shadow: var(--shadow-md);
	padding: clamp(1.25rem, 3vw, 2rem);
}
.cookies-panel__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	padding-block: 1.1rem;
}
.cookies-panel__row + .cookies-panel__row {
	border-top: 1px solid var(--color-border, #e2e8f0);
}
.cookies-panel__row-text h3 {
	margin: 0 0 0.25rem;
	font-size: 1.05rem;
}
.cookies-panel__row-text p {
	margin: 0;
	color: var(--color-muted, #64748b);
	font-size: 0.9rem;
	line-height: 1.5;
}
.cookies-panel__status {
	margin: 1rem 0 0;
	padding-top: 1rem;
	border-top: 1px solid var(--color-border, #e2e8f0);
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--color-primary-dark);
}

/* Toggle switch */
.cookies-toggle {
	flex-shrink: 0;
	position: relative;
	display: inline-flex;
	cursor: pointer;
}
.cookies-toggle input {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
}
.cookies-toggle__track {
	width: 3rem;
	height: 1.65rem;
	background: #cbd5e1;
	border-radius: 999px;
	position: relative;
	transition: background-color 0.15s ease;
}
.cookies-toggle__thumb {
	position: absolute;
	top: 2px;
	left: 2px;
	width: 1.35rem;
	height: 1.35rem;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
	transition: transform 0.15s ease;
}
.cookies-toggle input:checked + .cookies-toggle__track {
	background: var(--color-primary-dark);
}
.cookies-toggle input:checked + .cookies-toggle__track .cookies-toggle__thumb {
	transform: translateX(1.35rem);
}
.cookies-toggle input:disabled + .cookies-toggle__track {
	background: var(--color-accent);
	opacity: 0.7;
}
.cookies-toggle input:focus-visible + .cookies-toggle__track {
	outline: 3px solid var(--color-accent);
	outline-offset: 2px;
}
.cookies-toggle--locked {
	cursor: not-allowed;
}

.cookies-content {
	padding-block: clamp(2.5rem, 6vw, 4rem);
}
.cookies-content .prose {
	max-width: 46rem;
	margin-inline: auto;
}
.cookies-faq {
	margin-top: 1rem;
}

@media (max-width: 640px) {
	.cookies-panel__row {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.75rem;
	}
}
