/* ============================================================
   ZMIENNE CSS – edytuj tutaj kolory i style przycisków
   ============================================================

   PRZYCISK "AKCEPTUJĘ"          |  PRZYCISK "ODRZUĆ OPCJONALNE"
   --cb-accept-*                 |  --cb-reject-*

   ============================================================ */
:root {

	/* ----------------------------------------------------------
	   PRZYCISK: Akceptuję
	   ---------------------------------------------------------- */
	--cb-accept-bg:            var(--color-primary);              /* 1. kolor tła */
	--cb-accept-bg-hover:      var(--color-primary-dark);              /* 7. kolor tła po hover */
	--cb-accept-text-hover:    #ffffff;              /* 8. kolor tekstu po hover */
	--cb-accept-text:          #ffffff;              /* 5. kolor tekstu */
	--cb-accept-border-width:  0;                  /* 2. grubość obramowania */
	--cb-accept-border-color:  #00a4ff;              /* 4. kolor obramowania */
	--cb-accept-border-radius: 0;                /* 3. zaokrąglenie rogów */
	--cb-accept-shadow:        0 2px 8px rgba(0, 164, 255, 0.40); /* 6. cień */

	/* ----------------------------------------------------------
	   PRZYCISK: Odrzuć opcjonalne
	   ---------------------------------------------------------- */
	--cb-reject-bg:            #888888;              /* 1. kolor tła */
	--cb-reject-bg-hover:      #555555;              /* 7. kolor tła po hover */
	--cb-reject-text-hover:    #ffffff;              /* 8. kolor tekstu po hover */
	--cb-reject-text:          #ffffff;              /* 5. kolor tekstu */
	--cb-reject-border-width:  0;                  /* 2. grubość obramowania */
	--cb-reject-border-color:  #888888;              /* 4. kolor obramowania */
	--cb-reject-border-radius: 0;                /* 3. zaokrąglenie rogów */
	--cb-reject-shadow:        0 2px 8px rgba(0, 0, 0, 0.20);    /* 6. cień */

	/* ----------------------------------------------------------
	   OKNO COOKIE
	   ---------------------------------------------------------- */
	--cb-window-border-radius: 0;                /* zaokrąglenie rogów całego okna */

	/* ----------------------------------------------------------
	   IKONKA MINIMALIZACJI
	   ---------------------------------------------------------- */
	--cb-mini-icon-opacity: 1;                      /* przezroczystość ikonki ciasteczka (0–1) */

}

/* ============================================================
   GŁÓWNY KONTENER
   ============================================================ */
.cookieBubble {
	position: fixed;
	width: 580px;
	max-width: calc(100vw - 20px);
	min-height: 100px;
	border-radius: var(--cb-window-border-radius);
	background-color: #fff;
	-webkit-box-shadow: 0 2px 15px rgba(0,0,0,.2);
	box-shadow: 0 2px 15px rgba(0,0,0,.2);
	z-index: 9999;
	font-family: sans-serif;
	box-sizing: border-box;
	-webkit-transition: opacity 0.35s ease, -webkit-transform 0.35s ease, visibility 0.35s;
	transition: opacity 0.35s ease, transform 0.35s ease, visibility 0.35s
}

/* ============================================================
   POZYCJONOWANIE
   ============================================================ */
.cookieBubble.top-left {
	top: 10px;
	left: 10px
}
.cookieBubble.top-right {
	top: 10px;
	right: 10px
}
.cookieBubble.top-center {
	top: 10px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%)
}
.cookieBubble.bottom-left {
	bottom: 10px;
	left: 10px
}
.cookieBubble.bottom-right {
	bottom: 10px;
	right: 10px
}
.cookieBubble.bottom-center {
	bottom: 10px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%)
}

/* ============================================================
   ANIMACJE WEJŚCIA
   ============================================================ */
.cookieBubble.show.top-center, .cookieBubble.show.top-left, .cookieBubble.show.top-right {
	-webkit-animation-name: popInTop;
	animation-name: popInTop;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
	-webkit-animation-timing-function: cubic-bezier(.19, 1, .22, 1);
	animation-timing-function: cubic-bezier(.19, 1, .22, 1);
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}
.cookieBubble.show.bottom-center, .cookieBubble.show.bottom-left, .cookieBubble.show.bottom-right {
	-webkit-animation-name: popInBottom;
	animation-name: popInBottom;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
	-webkit-animation-timing-function: cubic-bezier(.19, 1, .22, 1);
	animation-timing-function: cubic-bezier(.19, 1, .22, 1);
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}
.cookieBubble.hide {
	opacity: 0;
	visibility: hidden;
	-webkit-transform: translateY(20px) scale(0.95);
	transform: translateY(20px) scale(0.95);
	pointer-events: none
}
.cookieBubble.show {
	opacity: 1;
	visibility: visible;
	-webkit-transform: translateY(0) scale(1);
	transform: translateY(0) scale(1);
	pointer-events: auto
}

/* ============================================================
   WRAPPER I TREŚĆ
   ============================================================ */
.cookieBubble .cb-wrapper {
	position: relative;
	display: block;
	padding: 15px;
	box-sizing: border-box;
	width: 100%
}
.cookieBubble .cb-wrapper .cb-row {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	text-align: left
}
.cookieBubble .cb-wrapper .cb-row .cb-message {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1
}
.cookieBubble .cb-wrapper .cb-row .cb-message span {
	position: relative;
	width: 100%;
	display: inline-block;
	color: #000;
	font-size: 14px;
	margin-top: 0
}
.cookieBubble .cb-wrapper .cb-row .cb-image {
	padding-right: 23px;
	-ms-flex-negative: 0;
	flex-shrink: 0
}
.cookieBubble .cb-wrapper .cb-row .cb-image .cookie-inner {
	fill: #00a4ff
}
.cookieBubble .cb-wrapper .cb-row .cb-image svg {
	width: 75px
}

/* ============================================================
   WIERSZ PRZYCISKÓW – responsywny (flex-wrap)
   ============================================================ */
.cookieBubble .cb-wrapper .cb-buttons-row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	gap: 8px;
	margin-top: 12px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

/* ============================================================
   PRZYCISK "AKCEPTUJĘ"
   ============================================================ */
.cookieBubble .cb-wrapper .cb-buttons-row .agreement-btn {
	margin: 0;
	text-decoration: none;
	color: var(--cb-accept-text);
	background: var(--cb-accept-bg);
	padding: 10px 20px;
	display: inline-block;
	border-radius: var(--cb-accept-border-radius);
	font-size: 13px;
	opacity: 1;
	border: var(--cb-accept-border-width) solid var(--cb-accept-border-color);
	-webkit-box-shadow: var(--cb-accept-shadow);
	box-shadow: var(--cb-accept-shadow);
	cursor: pointer;
	text-transform: uppercase;
	font-weight: 600;
	white-space: nowrap;
	box-sizing: border-box
}
.cookieBubble .cb-wrapper .cb-buttons-row .agreement-btn:hover {
	background-color: var(--cb-accept-bg-hover);
	border-color: var(--cb-accept-bg-hover);
	color: var(--cb-accept-text-hover)
}

/* ============================================================
   PRZYCISK "ODRZUĆ OPCJONALNE"
   ============================================================ */
.cookieBubble .cb-wrapper .cb-buttons-row .reject-btn {
	margin: 0;
	text-decoration: none;
	color: var(--cb-reject-text);
	background: var(--cb-reject-bg);
	padding: 10px 20px;
	display: inline-block;
	border-radius: var(--cb-reject-border-radius);
	font-size: 13px;
	opacity: 1;
	border: var(--cb-reject-border-width) solid var(--cb-reject-border-color);
	-webkit-box-shadow: var(--cb-reject-shadow);
	box-shadow: var(--cb-reject-shadow);
	cursor: pointer;
	text-transform: uppercase;
	font-weight: 600;
	white-space: nowrap;
	box-sizing: border-box
}
.cookieBubble .cb-wrapper .cb-buttons-row .reject-btn:hover {
	background-color: var(--cb-reject-bg-hover);
	border-color: var(--cb-reject-bg-hover);
	color: var(--cb-reject-text-hover)
}

/* ============================================================
   LINK "POLITYKA PRYWATNOŚCI"
   ============================================================ */
.cookieBubble .cb-wrapper .cb-buttons-row .cookie-policy-btn {
	margin: 0;
	color: #000;
	padding: 10px;
	display: inline-block;
	border-radius: var(--cb-btn-border-radius);
	font-size: 14px;
	opacity: .95;
	border: none;
	cursor: pointer;
	font-weight: 400;
	background: transparent;
	text-decoration: none
}
.cookieBubble .cb-wrapper .cb-buttons-row .cookie-policy-btn:hover {
	opacity: 1;
	text-decoration: underline
}

/* ============================================================
   COPYRIGHT
   ============================================================ */
.cookieBubble .copyright-wrapper {
	margin-top: 20px
}
.cookieBubble .copyright-wrapper a.copyright {
	position: absolute;
	width: 80px;
	height: 16px;
	bottom: 8px;
	right: 7px;
	margin-top: 30px;
	background: url(../img/cb_copyright.svg);
	background-size: cover
}

/* ============================================================
   PASEK STATUSU (pod przyciskami)
   ============================================================ */
.cookieBubble .cb-status-row {
	margin-top: 10px;
	min-height: 18px;
	text-align: left
}
.cookieBubble .cb-status-row .cb-status-text {
	font-size: 12px;
	color: #555;
	font-style: italic
}

/* ============================================================
   IKONKA MINIMALIZACJI (ciasteczko w rogu)
   ============================================================ */
.cb-mini-icon {
	position: fixed;
	bottom: 15px;
	left: 15px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-color: #fff;
	-webkit-box-shadow: 0 2px 10px rgba(0,0,0,.25);
	box-shadow: 0 2px 10px rgba(0,0,0,.25);
	cursor: pointer;
	z-index: 9999;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-transition: opacity 0.35s ease, -webkit-transform 0.35s ease, visibility 0.35s, -webkit-box-shadow 0.2s ease;
	transition: opacity 0.35s ease, transform 0.35s ease, visibility 0.35s, box-shadow 0.2s ease
}
.cb-mini-icon img {
	width: 34px;
	height: 34px;
	display: block
}
.cb-mini-icon:hover {
	-webkit-transform: scale(1.12);
	transform: scale(1.12);
	-webkit-box-shadow: 0 4px 16px rgba(0,0,0,.30);
	box-shadow: 0 4px 16px rgba(0,0,0,.30)
}
.cb-mini-icon.hide {
	opacity: 0;
	visibility: hidden;
	-webkit-transform: scale(0.5);
	transform: scale(0.5);
	pointer-events: none
}
.cb-mini-icon.show {
	opacity: var(--cb-mini-icon-opacity);
	visibility: visible;
	-webkit-transform: scale(1);
	transform: scale(1);
	pointer-events: auto
}

/* ============================================================
   RESPONSYWNOŚĆ – Bootstrap 5 breakpointy:
   xs: < 576px  |  sm: 576–767px  |  md: 768–991px
   lg: 992–1199px  |  xl: 1200–1399px  |  xxl: ≥ 1400px
   ============================================================ */

/* XS – telefony pionowo (< 576px) */
@media (max-width: 575.98px) {
	.cookieBubble {
		width: calc(100vw - 20px);
		left: 10px !important;
		right: 10px !important;
		bottom: 10px !important;
		top: auto !important;
		-webkit-transform: none !important;
		transform: none !important
	}

	.cookieBubble .cb-wrapper {
		padding: 12px
	}

	/* Ikona ciasteczka ukrywa się na bardzo małym ekranie */
	.cookieBubble .cb-wrapper .cb-row .cb-image {
		display: none
	}

	/* Przyciski w kolumnę, pełna szerokość */
	.cookieBubble .cb-wrapper .cb-buttons-row {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
		gap: 6px
	}

	.cookieBubble .cb-wrapper .cb-buttons-row .agreement-btn,
	.cookieBubble .cb-wrapper .cb-buttons-row .reject-btn,
	.cookieBubble .cb-wrapper .cb-buttons-row .cookie-policy-btn {
		width: 100%;
		text-align: center;
		white-space: normal;
		font-size: 14px
	}
}

/* SM – telefony poziomo / małe tablety (576px – 767px) */
@media (min-width: 576px) and (max-width: 767.98px) {
	.cookieBubble {
		width: calc(100vw - 20px);
		max-width: 540px;  /* odpowiada Bootstrap container-sm */
		left: 10px !important;
		right: auto !important;
		bottom: 10px !important;
		top: auto !important;
		-webkit-transform: none !important;
		transform: none !important
	}

	.cookieBubble .cb-wrapper .cb-buttons-row {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
		gap: 6px
	}

	.cookieBubble .cb-wrapper .cb-buttons-row .agreement-btn,
	.cookieBubble .cb-wrapper .cb-buttons-row .reject-btn,
	.cookieBubble .cb-wrapper .cb-buttons-row .cookie-policy-btn {
		width: 100%;
		text-align: center;
		white-space: normal;
		font-size: 14px
	}
}

/* MD – tablety (768px – 991px) */
@media (min-width: 768px) and (max-width: 991.98px) {
	.cookieBubble {
		width: 580px;
		max-width: calc(100vw - 20px)
	}

	.cookieBubble.top-center,
	.cookieBubble.bottom-center {
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%)
	}
}

/* LG i wyżej (≥ 992px) – układ pełny, bez zmian */

/* ============================================================
   KEYFRAMES
   ============================================================ */
@-webkit-keyframes popInBottom {
0% {
-webkit-transform: translateY(120%);
transform: translateY(120%)
}
100% {
-webkit-transform: translateY(0);
transform: translateY(0)
}
}
@keyframes popInBottom {
0% {
-webkit-transform: translateY(120%);
transform: translateY(120%)
}
100% {
-webkit-transform: translateY(0);
transform: translateY(0)
}
}
@-webkit-keyframes popInTop {
0% {
-webkit-transform: translateY(-120%);
transform: translateY(-120%)
}
100% {
-webkit-transform: translateY(0);
transform: translateY(0)
}
}
@keyframes popInTop {
0% {
-webkit-transform: translateY(-120%);
transform: translateY(-120%)
}
100% {
-webkit-transform: translateY(0);
transform: translateY(0)
}
}
