/**
 * T4 — baner zgód na pliki cookies (niezaprojektowany; z tokenów projektu). Logika: S1 (window.rcZgody).
 * Desktop: karta 440 px w lewym dolnym rogu (WhatsApp zostaje po prawej), telefon: dolny arkusz.
 * Biała karta r22, ramka #EBEEF1, cień panelu; przyciski równorzędne: ciemny „Akceptuję wszystkie”
 * i obrysowany „Tylko niezbędne” (ten sam rozmiar — bez wyróżniania zgody).
 */

.rc-zgody {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 120;
	padding: 0;
	pointer-events: none;
}

.rc-zgody[hidden] {
	display: none;
}

/* Pierwsze wejście bez wyboru: S1 dodaje klasę na <html> w <head> — baner widoczny od pierwszego malowania. */
html.rc-zgody-brak-wyboru .rc-zgody[hidden] {
	display: block;
}

html.rc-zgody-brak-wyboru .rc-zgody .rc-zgody__karta {
	transform: none;
	opacity: 1;
}

.rc-zgody__karta {
	pointer-events: auto;
	max-height: calc(100vh - 24px);
	overflow-y: auto;
	padding: 20px var(--rc-margines) calc(18px + env(safe-area-inset-bottom, 0px));
	border-top: 1px solid var(--rc-ramka-karta);
	border-radius: var(--rc-r-22) var(--rc-r-22) 0 0;
	background: var(--rc-bialy);
	box-shadow: var(--rc-cien-pasek-dolny);
	font-family: var(--rc-font-tekst);
	transform: translateY(16px);
	opacity: 0;
	transition: transform var(--rc-czas-karta) var(--rc-ease-karta), opacity var(--rc-czas-karta) ease;
}

.rc-zgody.is-widoczny .rc-zgody__karta {
	transform: none;
	opacity: 1;
}

.rc-zgody__tytul {
	margin: 0 0 8px;
	font-family: var(--rc-font-naglowki);
	font-size: 17px;
	font-weight: 600;
	line-height: normal;
	letter-spacing: -0.018em;
	color: var(--rc-tekst);
}

.rc-zgody__tekst {
	margin: 0;
	font-size: 13.5px;
	line-height: 1.6;
	color: var(--rc-tekst-2);
}

.rc-zgody__tekst a {
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Ustawienia: kategorie z przełącznikami */
.rc-zgody__ustawienia {
	margin-top: 16px;
}

.rc-zgody__ustawienia[hidden] {
	display: none;
}

.rc-zgody__lista {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--rc-ramka);
}

.rc-zgody__kategoria {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 12px 0;
	border-bottom: 1px solid var(--rc-ramka);
}

.rc-zgody__kategoria-opis {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	cursor: pointer;
}

.rc-zgody__kategoria-nazwa {
	font-family: var(--rc-font-naglowki);
	font-size: 14.5px;
	font-weight: 600;
	line-height: normal;
	color: var(--rc-tekst);
}

.rc-zgody__kategoria-tekst {
	font-size: 12.5px;
	line-height: 1.5;
	color: var(--rc-tekst-meta);
}

.rc-zgody__zawsze {
	flex: none;
	font-size: 12.5px;
	font-weight: 500;
	color: var(--rc-zielony-tekst);
}

/* Przełącznik (checkbox role=switch) — 40×24, włączony niebieski #0E89EA */
.rc-zgody__przelacznik {
	position: relative;
	flex: none;
	width: 40px;
	height: 24px;
	margin: 0;
	border: 0;
	border-radius: var(--rc-r-pill);
	background: var(--rc-tekst-meta);
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	transition: background var(--rc-czas-pill) ease;
}

.rc-zgody__przelacznik::after {
	content: "";
	position: absolute;
	top: 3px;
	left: 3px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--rc-bialy);
	box-shadow: 0 1px 3px rgba(var(--rc-cien-rgb), 0.25);
	transition: transform var(--rc-czas-pill) ease;
}

.rc-zgody__przelacznik:checked {
	background: var(--rc-niebieski);
}

.rc-zgody__przelacznik:checked::after {
	transform: translateX(16px);
}

.rc-zgody__przelacznik:focus-visible {
	outline: 2px solid var(--rc-niebieski);
	outline-offset: 2px;
	box-shadow: none;
}

/* Przyciski: równorzędne, pill, Archivo 14 / 500–600, wysokość 42 */
.rc-zgody__przyciski {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin-top: 16px;
}

.rc-zgody__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 12px 14px;
	border: 1px solid var(--rc-tekst);
	border-radius: var(--rc-r-pill);
	font-family: var(--rc-font-naglowki);
	font-size: 14px;
	font-weight: 500;
	line-height: normal;
	text-align: center;
	cursor: pointer;
	transition: background var(--rc-czas-pill) ease, color var(--rc-czas-pill) ease;
}

.rc-zgody__btn[hidden] {
	display: none;
}

.rc-zgody__btn--ciemny {
	background: var(--rc-tekst);
	color: var(--rc-bialy);
}

.rc-zgody__btn--obrys {
	background: var(--rc-bialy);
	color: var(--rc-tekst);
}

.rc-zgody__btn--obrys:hover {
	background: var(--rc-tekst);
	color: var(--rc-bialy);
}

.rc-zgody__link {
	grid-column: 1 / -1;
	justify-self: center;
	margin: 2px 0 0;
	padding: 6px 4px;
	border: 0;
	background: none;
	font-family: var(--rc-font-tekst);
	font-size: 13.5px;
	line-height: normal;
	color: var(--rc-niebieski-ciemny);
	cursor: pointer;
}

.rc-zgody__link[hidden] {
	display: none;
}

.rc-zgody__link:hover {
	color: var(--rc-niebieski);
}

/* W trybie ustawień: „Zapisz wybór” na całą szerokość pod dwoma przyciskami */
.rc-zgody.is-ustawienia .rc-zgody__btn[data-rc-zgody-akcja="zapisz"] {
	grid-column: 1 / -1;
	order: -1;
}

@media (min-width: 640px) {
	.rc-zgody {
		left: 24px;
		right: auto;
		bottom: 24px;
		width: 440px;
		max-width: calc(100vw - 48px);
	}

	.rc-zgody__karta {
		padding: 24px 24px 20px;
		border: 1px solid var(--rc-ramka-karta);
		border-radius: var(--rc-r-22);
		box-shadow: var(--rc-cien-wyszukiwarka);
	}

	.rc-zgody__przyciski {
		margin-top: 18px;
	}
}

@media print {
	.rc-zgody {
		display: none !important;
	}
}
