/* Baner zgod (modul cmp). Telefon: waski pasek przy dolnej krawedzi, nie okno na srodku (CookieScript zaslanial
   zdjecie, nazwe i cene). Pulpit: karta w lewym dolnym rogu. Oba przyciski decyzji wygladaja identycznie. */
.kd-cmp {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 300; /* nad paskiem zakupu (150) i szuflada koszyka (200) */
	padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
	background: var(--kd-color-background, #fff);
	color: var(--kd-color-text);
	border-top: 1px solid var(--kd-color-border);
	box-shadow: var(--kd-shadow-sticky, 0 -2px 12px rgba(0, 0, 0, .08));
	font-family: var(--kd-font-body);
	font-size: var(--kd-caption-size, 13px);
	line-height: 1.45;
}
.kd-cmp[hidden] { display: none; }
/* Szuflada koszyka jest oknem modalnym (inert na tle): baner nie moze lezec na jej przycisku do kasy. */
html.kd-drawer-open .kd-cmp { display: none; }
/* Dopoki baner wisi, koniec strony (stopka z „Ustawienia cookies”) da sie przewinac spod niego. */
html.kd-cmp-open body { padding-bottom: 200px; }
/* Telefon, karta produktu: baner stoi NAD paskiem zakupu (sticky-atc, 64 px + bezpieczna strefa iOS), nie na nim.
   Do 13.10.2026 z-index 300 chowal cene i „Do koszyka” do chwili decyzji, a ok. polowa sesji z karta jej nie podejmuje. */
@media (max-width: 767px) {
	html.kd-cmp-open body:has(.kd-stickybar:not([hidden])) .kd-cmp {
		bottom: calc(64px + env(safe-area-inset-bottom, 0px));
		padding-bottom: 10px;
	}
	html.kd-cmp-open body:has(.kd-stickybar:not([hidden])) .kd-cmp--panel { max-height: calc(85vh - 64px); }
	html.kd-cmp-open body:has(.kd-stickybar) { padding-bottom: 280px; }
}
.kd-cmp__box { max-width: var(--kd-container, 1200px); margin: 0 auto; }
.kd-cmp__text { margin: 0 0 8px; }
/* Odnosniki w zdaniu: wyjatek „Inline” z WCAG 2.5.8, wiersz tekstu nie rosnie do 40 px. */
.kd-cmp__link { color: var(--kd-color-primary); text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.kd-cmp__actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}
.kd-cmp__btn {
	min-height: 44px;
	padding: 8px 6px;
	border: 1px solid var(--kd-color-primary);
	border-radius: var(--kd-radius-button, 6px);
	background: var(--kd-color-primary);
	color: var(--kd-color-text-on-primary, #fff);
	font: inherit;
	font-size: var(--kd-body-sm-size, 14px);
	font-weight: 600;
	text-transform: none; /* przyciski motywu maja wersaliki z rozstrzeleniem: tu lamaly sie na dwa wiersze */
	letter-spacing: normal;
	line-height: 1.2;
	white-space: nowrap;
	cursor: pointer;
}
.kd-cmp__btn--save { grid-column: 1 / -1; }
.kd-cmp__btn[hidden] { display: none; }
.kd-cmp__more {
	display: inline;
	margin: 0 12px 0 0;
	padding: 0;
	border: 0;
	background: none;
	color: var(--kd-color-text);
	font: inherit;
	font-weight: 600;
	text-transform: none;
	letter-spacing: normal;
	text-decoration: underline;
	text-underline-offset: 3px;
	white-space: nowrap;
	cursor: pointer;
}
.kd-cmp__more[hidden] { display: none; }
.kd-cmp :is(button, a, input):focus-visible { outline: 2px solid var(--kd-color-primary); outline-offset: 2px; }

.kd-cmp--panel { max-height: 85vh; overflow-y: auto; }
.kd-cmp__panel { margin: 0 0 10px; }
.kd-cmp__panel[hidden] { display: none; }
.kd-cmp__cats { margin: 0; padding: 0; border: 0; }
.kd-cmp__legend { padding: 0; margin: 0 0 6px; font-weight: 600; }
.kd-cmp__cat {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	padding: 8px 0;
	border-top: 1px solid var(--kd-color-border);
	cursor: pointer;
}
.kd-cmp__cat input { flex: 0 0 auto; width: 20px; height: 20px; margin: 1px 0 0; accent-color: var(--kd-color-primary); }
.kd-cmp__cat strong { display: block; }

@media (min-width: 768px) {
	.kd-cmp {
		left: 16px;
		right: auto;
		bottom: 16px;
		width: 420px;
		max-width: calc(100vw - 32px);
		padding: 16px;
		border: 1px solid var(--kd-color-border);
		border-radius: var(--kd-radius-md, 8px);
		box-shadow: var(--kd-shadow-overlay, 0 8px 32px rgba(0, 0, 0, .12));
	}
}

/* Stopka: przycisk wyglada jak odnosniki obok. */
.kd-footer__cookies {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
}
.kd-footer__cookies[hidden] { display: none; }
.kd-footer__cookies:hover { text-decoration: underline; text-underline-offset: 4px; }
