/* =========================================================================
   CHOINKARIUM – arkusz UX sklepu
   Ładowany po stylach Oxygena i wtyczek. Wartości z marki (paleta Oxygena,
   kroje Subjectivity / Siri, przyciski-pigułki). Reguły odwołują się
   do zmiennych z sekcji 01.
   ========================================================================= */

/* ===== 01. Zmienne marki ============================================== */
:root {
	--choinkariu-green: #013A23;
	--choinkariu-green-deep: #002915;
	--choinkariu-green-soft: #025432;
	--choinkariu-sand: #E8D2AD;
	--choinkariu-cream: #FFFDF7;
	--choinkariu-cream-warm: #FEF8EB;
	--choinkariu-burgundy: #6D0E16;
	--choinkariu-taupe: #A28A79;
	--choinkariu-text: #4d4d4d;
	--choinkariu-line: #E9E1D3;

	--choinkariu-font-head: "Subjectivity", sans-serif;
	--choinkariu-font-body: "Siri", sans-serif;

	--choinkariu-btn-h: 48px;
	--choinkariu-btn-fs: 15px;
	--choinkariu-btn-fw: 600;
	--choinkariu-btn-ls: 0.02em;
	--choinkariu-radius-pill: 9999px;
	--choinkariu-radius-card: 14px;
	--choinkariu-radius-field: 4px;

	--choinkariu-gap-xs: 6px;
	--choinkariu-gap-s: 10px;
	--choinkariu-gap-m: 16px;
	--choinkariu-gap-l: 24px;
}
/* ===== /01 ============================================================ */


/* ===== 02. Przyciski akcji – jeden styl =============================== */
html body .single_add_to_cart_button,
html body .woocommerce-mini-cart__buttons .button,
html body #place_order,
html body .woocommerce .button.wc-backward,
html body .return-to-shop .button,
html body .woocommerce-form-coupon .button,
html body .woocommerce-form-login .button,
html body .breakdance-form-button.button-atom--primary,
html body .choinkariu-btn {
	font-family: var(--choinkariu-font-body);
	font-size: var(--choinkariu-btn-fs);
	font-weight: var(--choinkariu-btn-fw);
	letter-spacing: var(--choinkariu-btn-ls);
	text-transform: uppercase;
	line-height: 1;
	min-height: var(--choinkariu-btn-h);
	padding: 0 24px;
	border-radius: var(--choinkariu-radius-pill);
	border: 1px solid var(--choinkariu-green);
	background: var(--choinkariu-green);
	color: var(--choinkariu-cream-warm);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: clip;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	cursor: pointer;
	transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
html body .single_add_to_cart_button:hover,
html body .woocommerce-mini-cart__buttons .button:hover,
html body #place_order:hover,
html body .woocommerce .button.wc-backward:hover,
html body .return-to-shop .button:hover,
html body .woocommerce-form-coupon .button:hover,
html body .woocommerce-form-login .button:hover,
html body .breakdance-form-button.button-atom--primary:hover,
html body .choinkariu-btn:hover {
	background: var(--choinkariu-green-deep);
	border-color: var(--choinkariu-green-deep);
	color: var(--choinkariu-cream-warm);
}
/* Przycisk drugorzędny (np. „Zobacz koszyk”): obrys w kolorze marki */
html body .woocommerce-mini-cart__buttons .button:not(.checkout),
html body .woocommerce-form-coupon .button {
	background: transparent;
	color: var(--choinkariu-green);
}
html body .woocommerce-mini-cart__buttons .button:not(.checkout):hover,
html body .woocommerce-form-coupon .button:hover {
	background: var(--choinkariu-green);
	color: var(--choinkariu-cream-warm);
}
/* Na ciemnym tle (stopka, sekcje zielone): wariant piaskowy */
html body .choinkariu-on-dark .choinkariu-btn,
html body .button-footer {
	background: var(--choinkariu-sand);
	border-color: var(--choinkariu-sand);
	color: var(--choinkariu-green-deep);
	border-radius: var(--choinkariu-radius-pill);
	white-space: nowrap;
}
/* Fokus z klawiatury */
html body .single_add_to_cart_button:focus-visible,
html body .woocommerce-mini-cart__buttons .button:focus-visible,
html body #place_order:focus-visible,
html body .breakdance-form-button:focus-visible,
html body .choinkariu-btn:focus-visible,
html body .button-footer:focus-visible,
html body .bde-mini-cart-toggle:focus-visible {
	outline: 2px solid var(--choinkariu-sand);
	outline-offset: 3px;
	box-shadow: 0 0 0 5px var(--choinkariu-green);
}
/* Stan ładowania / potwierdzenia */
html body .choinkariu-is-busy {
	pointer-events: none;
	opacity: .85;
}
html body .choinkariu-is-busy::before {
	content: "";
	width: 14px;
	height: 14px;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	animation: choinkariu-spin .7s linear infinite;
	flex: 0 0 auto;
}
html body .choinkariu-is-done {
	background: var(--choinkariu-green-soft);
	border-color: var(--choinkariu-green-soft);
}
@keyframes choinkariu-spin { to { transform: rotate(360deg); } }
/* ===== /02 ============================================================ */


/* ===== 03. Mobile i drobne poprawki =================================== */
/* Pigułka „Złożona w mniej niż minutę” – tekst w jednej linii */
html body .container-82 .text-36 {
	white-space: nowrap;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
}
/* Nazwy produktów bez dzielenia słów */
html body .product_title,
html body .bde-mini-cart-item-title,
html body .woocommerce-loop-product__title,
html body .cart_item .product-name {
	hyphens: manual;
	overflow-wrap: normal;
	word-break: normal;
}
@media (max-width: 479px) {
	html body .bde-mini-cart-item-title { font-size: 15px; line-height: 1.25; }
}
/* Komunikat „Usunięto … Cofnij?” – czytelny link */
html body .woocommerce-message a.restore-item,
html body .woocommerce-message a:not(.button) {
	color: var(--choinkariu-green);
	text-decoration: underline;
	text-underline-offset: 3px;
	font-weight: 600;
}
/* Popup z regulaminem w kasie (snippet „checbox 2”) */
.choinkariu-modal {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: var(--choinkariu-gap-m);
	background: rgba(0, 41, 21, .45);
}
.choinkariu-modal__box {
	width: 100%;
	max-width: 400px;
	max-height: calc(100vh - 32px);
	overflow: auto;
	padding: 28px 24px 24px;
	border-radius: var(--choinkariu-radius-card);
	background: var(--choinkariu-cream);
	text-align: center;
	color: var(--choinkariu-text);
	font-family: var(--choinkariu-font-body);
}
.choinkariu-modal__title {
	margin: 0 0 10px;
	font-family: var(--choinkariu-font-head);
	font-size: 22px;
	line-height: 1.2;
	color: var(--choinkariu-green);
}
.choinkariu-modal__text { margin: 0 0 20px; font-size: 16px; line-height: 1.5; }
.choinkariu-attention {
	outline: 2px solid var(--choinkariu-burgundy);
	outline-offset: 6px;
	border-radius: var(--choinkariu-radius-field);
}
/* ===== /03 ============================================================ */


/* ===== 04. Koszyk boczny ============================================== */
html body .bde-mini-cart-offcanvas-title {
	font-family: var(--choinkariu-font-head);
	color: var(--choinkariu-green);
}
html body .bde-mini-cart-offcanvas__close-button {
	color: var(--choinkariu-green);
	font-size: 28px;
	min-width: 40px;
	min-height: 40px;
}
/* Stan „dodaję” – koszyk otwarty od razu, wskaźnik zamiast zawartości */
html body .choinkariu-mc-loading .widget_shopping_cart_content > * { visibility: hidden; }
html body .choinkariu-mc-loading .widget_shopping_cart_content {
	position: relative;
	min-height: 160px;
}
html body .choinkariu-mc-loading .widget_shopping_cart_content::after {
	content: attr(data-choinkariu-loading);
	position: absolute;
	top: 48px;
	left: 0;
	right: 0;
	padding-top: 44px;
	text-align: center;
	font-family: var(--choinkariu-font-body);
	font-size: 15px;
	color: var(--choinkariu-green);
	background:
		radial-gradient(circle at 50% 14px, transparent 9px, var(--choinkariu-green) 10px, var(--choinkariu-green) 12px, transparent 13px) no-repeat top center / 28px 28px;
	animation: choinkariu-pulse 1s ease-in-out infinite;
}
@keyframes choinkariu-pulse { 50% { opacity: .45; } }

/* Cena przed rabatem przekreślona obok ceny po rabacie */
.choinkariu-price { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
.choinkariu-price del { color: var(--choinkariu-taupe); font-weight: 400; font-size: .88em; }
.choinkariu-price ins { text-decoration: none; }

/* Pole oszczędności */
html body .choinkariu-mc-saving {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin: 0 0 var(--choinkariu-gap-m);
	padding: 10px 14px;
	border-radius: var(--choinkariu-radius-field);
	background: var(--choinkariu-cream-warm);
	color: var(--choinkariu-green);
	font-family: var(--choinkariu-font-body);
	font-size: 15px;
}
html body .choinkariu-mc-saving strong { font-weight: 700; color: var(--choinkariu-burgundy); }

/* Główny przycisk do kasy na pełną szerokość */
html body .bde-mini-cart-offcanvas .woocommerce-mini-cart__buttons { display: flex; flex-direction: column; gap: var(--choinkariu-gap-s); margin: 0; }
html body .bde-mini-cart-offcanvas .woocommerce-mini-cart__buttons .button { width: 100%; }

/* Przewidywana data dostawy */
html body .choinkariu-mc-eta {
	display: block;
	margin: 12px 0 0;
	font-family: var(--choinkariu-font-body);
	font-size: 14px;
	line-height: 1.35;
	color: var(--choinkariu-green);
	text-align: center;
}
html body .choinkariu-mc-eta[hidden] { display: none; }
.choinkariu-mc-eta__dot {
	display: inline-block;
	vertical-align: 1px;
	margin-right: 8px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--choinkariu-green-soft);
	box-shadow: 0 0 0 3px rgba(2, 84, 50, .18);
}

/* Pasek zaufania */
html body .choinkariu-trust {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px 18px;
	margin: 14px 0 0;
	padding: 12px 0 0;
	border-top: 1px solid var(--choinkariu-line);
	list-style: none;
	font-family: var(--choinkariu-font-body);
	font-size: 13px;
	color: var(--choinkariu-text);
}
html body .choinkariu-trust li { display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 0; }
html body .choinkariu-trust svg { width: 18px; height: 18px; flex: 0 0 18px; color: var(--choinkariu-green); }
/* ===== /04 ============================================================ */


/* ===== 05. Strona produktu ============================================ */
/* Pole ilości węższe, przycisk na resztę szerokości, ta sama wysokość */
html body form.cart:not(.variations_form) ,
html body form.variations_form .woocommerce-variation-add-to-cart {
	display: flex;
	align-items: stretch;
	gap: 12px;
}
html body form.cart .quantity {
	flex: 0 0 auto;
	min-width: 0;
	margin: 0;
}
html body form.cart .quantity input.qty { min-width: 0; }
html body form.cart .single_add_to_cart_button {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	height: var(--choinkariu-btn-h);
}
html body form.cart .quantity,
html body form.cart .quantity input.qty { height: var(--choinkariu-btn-h); }

/* Odznaka procentowej obniżki */
html body .onsale.choinkariu-sale {
	font-family: var(--choinkariu-font-body);
	font-weight: 700;
	letter-spacing: .02em;
	text-transform: none;
	color: var(--choinkariu-cream-warm);
	background: var(--choinkariu-burgundy);
	border-radius: var(--choinkariu-radius-pill);
}

/* Dodatki YITH – czytelne, ale nie dominujące na telefonie */
@media (max-width: 767px) {
	html body #yith-wapo-container .yith-wapo-option .label,
	html body #yith-wapo-container .yith-wapo-option label { font-size: 15px; hyphens: manual; word-break: normal; }
	html body #yith-wapo-container .yith-wapo-option .option-price { font-size: 14px; white-space: nowrap; }
}

/* Przyklejony pasek zakupu (telefon) */
.choinkariu-buybar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9990;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
	background: var(--choinkariu-cream);
	border-top: 1px solid var(--choinkariu-line);
	box-shadow: 0 -6px 18px rgba(0, 41, 21, .08);
	transform: translateY(110%);
	transition: transform .25s ease;
}
.choinkariu-buybar.is-visible { transform: none; }
.choinkariu-buybar__info { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.choinkariu-buybar__name {
	font-family: var(--choinkariu-font-head);
	font-size: 14px;
	line-height: 1.2;
	color: var(--choinkariu-green);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.choinkariu-buybar__price { font-family: var(--choinkariu-font-body); font-size: 15px; font-weight: 700; color: var(--choinkariu-green); white-space: nowrap; }
.choinkariu-buybar__price del { color: var(--choinkariu-taupe); font-weight: 400; margin-right: 6px; }
.choinkariu-buybar__price ins { text-decoration: none; }
html body .choinkariu-buybar .choinkariu-btn { flex: 0 0 auto; min-height: 44px; padding: 0 18px; font-size: 14px; }
html.is-breakdance-mini-cart-open .choinkariu-buybar { transform: translateY(110%); }
@media (min-width: 768px) { .choinkariu-buybar { display: none; } }
@media (prefers-reduced-motion: reduce) {
	.choinkariu-buybar, html body .choinkariu-is-busy::before { transition: none; animation: none; }
}
/* ===== /05 ============================================================ */


/* ===== 06. Kasa ======================================================= */
/* Sekcja płatności nieprzyklejona */
html body.woocommerce-checkout #payment,
html body.woocommerce-checkout #order_review {
	position: static;
	top: auto;
}
/* Podsumowanie w kolumnie flex – elementy się nie ściskają */
html body.woocommerce-checkout #order_review > *,
html body.woocommerce-checkout .woocommerce-checkout-review-order > * { flex-shrink: 0; }
html body.woocommerce-checkout #order_review,
html body.woocommerce-checkout .woocommerce-checkout-review-order { height: auto; min-height: 0; }

/* Komunikaty nad formularzem w proporcjach pól */
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
	/* Te same proporcje co pozostałe komunikaty sklepu (np. „Twój koszyk jest pusty”) */
	display: block;
	position: relative;
	min-height: 0;
	margin: 0 0 var(--choinkariu-gap-l);
	padding: 24px 24px 24px 52px;
	border-radius: var(--choinkariu-radius-field);
	font-size: 16px;
	line-height: 1.4;
	text-transform: none;
}
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before,
html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before {
	top: 50%;
	left: 24px;
	transform: translateY(-50%);
}
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a { color: var(--choinkariu-green); text-decoration: underline; text-underline-offset: 3px; font-weight: 600; text-transform: none; }
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a::after { content: none; }

/* Metody wysyłki jako karty na pełną szerokość */
html body.woocommerce-checkout #shipping_method { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; }
html body.woocommerce-checkout #shipping_method li {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 12px 14px;
	border: 1px solid var(--choinkariu-line);
	border-radius: var(--choinkariu-radius-field);
	background: #fff;
	cursor: pointer;
}
html body.woocommerce-checkout #shipping_method li:has(input:checked) {
	border-color: var(--choinkariu-green);
	box-shadow: inset 0 0 0 1px var(--choinkariu-green);
	background: var(--choinkariu-cream);
}
html body.woocommerce-checkout #shipping_method li input { margin: 0; flex: 0 0 auto; accent-color: var(--choinkariu-green); }
html body.woocommerce-checkout #shipping_method li label { margin: 0; flex: 1 1 auto; min-width: 0; white-space: normal; text-align: left; cursor: pointer; line-height: 1.35; }
html body.woocommerce-checkout #shipping_method li .inpost_pl-shipping-method-meta-wrap { flex: 0 0 auto; margin-left: auto; }
html body.woocommerce-checkout #shipping_method li img { max-width: 52px; height: auto; }
html body.woocommerce-checkout #shipping_method li label::after { content: ""; position: absolute; inset: 0; }

/* Podsumowanie zamówienia: wiersze elastyczne, wysyłka na pełną szerokość */
html body.woocommerce-checkout .woocommerce-checkout-review-order-table,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table thead,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot {
	display: block;
	width: 100%;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr > th,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr > td {
	display: block;
	flex: 1 1 auto;
	min-width: 0;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr > :last-child:not(:first-child) {
	flex: 0 0 auto;
	text-align: right;
	white-space: nowrap;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals {
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > * {
	width: 100%;
	text-align: left;
	white-space: normal;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .includes_tax {
	display: block;
	font-size: 13px;
	font-weight: 400;
	white-space: nowrap;
}

/* Zgody: jeden układ (pole wyboru + tekst), równy odstęp do przycisku */
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { margin: var(--choinkariu-gap-m) 0 var(--choinkariu-gap-l); }
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row { margin: 0; padding: 0; }
html body.woocommerce-checkout .woocommerce-privacy-policy-text p { margin: 0 0 var(--choinkariu-gap-s); font-size: 14px; line-height: 1.5; }
html body.woocommerce-checkout .woocommerce-form__label-for-checkbox,
html body.woocommerce-checkout .payment_box label:has(input[type="checkbox"]) {
	display: block;
	position: relative;
	margin: 0;
	padding-left: 28px;
	font-size: 15px;
	line-height: 1.45;
	overflow-wrap: break-word;
	cursor: pointer;
}
html body.woocommerce-checkout .payment_box label:has(input[type="checkbox"]) { font-size: 14px; }
html body.woocommerce-checkout .woocommerce-form__label-for-checkbox input[type="checkbox"],
html body.woocommerce-checkout .payment_box label input[type="checkbox"] {
	position: absolute;
	left: 0;
	top: 2px;
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--choinkariu-green);
}
html body.woocommerce-checkout abbr.required,
html body.woocommerce-checkout .required { color: var(--choinkariu-burgundy); text-decoration: none; border: 0; }
html body.woocommerce-checkout .place-order noscript,
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions:empty { display: none; }
html body.woocommerce-checkout #place_order { width: 100%; margin: 0; }
html body.woocommerce-checkout .form-row.place-order { margin: 0; padding-top: 0; }

/* Metody płatności: pole wyboru i nazwa w jednej linii, opis pod spodem */
html body.woocommerce-checkout .wc_payment_methods .wc_payment_method { display: flex; flex-wrap: wrap; align-items: center; column-gap: 10px; }
html body.woocommerce-checkout .wc_payment_methods .wc_payment_method > input.input-radio { flex: 0 0 auto; margin: 0; accent-color: var(--choinkariu-green); }
html body.woocommerce-checkout .wc_payment_methods .wc_payment_method > label { flex: 1 1 0; min-width: 0; margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; text-align: left; }
html body.woocommerce-checkout .wc_payment_methods .wc_payment_method > .payment_box { flex: 0 0 100%; }

/* Faktura: pola firmy po zaznaczeniu */
html body .choinkariu-is-hidden { display: none !important; }
html body .choinkariu-invoice { margin: var(--choinkariu-gap-s) 0 var(--choinkariu-gap-m); }
html body .choinkariu-invoice label { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 16px; color: var(--choinkariu-green); cursor: pointer; }
html body .choinkariu-invoice input { width: 18px; height: 18px; margin: 0; accent-color: var(--choinkariu-green); }

/* ===== /06 ============================================================ */

/* ===== 07. Zgoda Przelewy24 w regulaminie (jak na skinmi.pl) ========== */
html body.woocommerce-checkout .payment_box label:has(input[name^="regulation_"]),
html body.woocommerce-checkout .payment_box .form-row:has(input[name^="regulation_"]) { display: none !important; }
html body.woocommerce-checkout .wc_payment_methods .wc_payment_method[class*="payment_method_p24-online-payments-"] > .payment_box { display: none !important; }
/* ===== /07 ============================================================ */


/* ===== 08. Propozycje: koszyk boczny i kasa =========================== */
/* Koszyk boczny – kompaktowy kafelek */
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer {
	margin: 0 0 var(--choinkariu-gap-m);
	padding: 12px;
	border: 1px solid var(--choinkariu-line);
	border-radius: var(--choinkariu-radius-field);
	background: #fff;
}
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__label {
	margin: 0 0 8px;
	font-family: var(--choinkariu-font-body);
	font-size: 13px;
	line-height: 1.3;
	color: var(--choinkariu-taupe);
}
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__item { display: flex; align-items: center; gap: 12px; }
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__img { flex: 0 0 52px; width: 52px; height: 52px; object-fit: cover; border-radius: var(--choinkariu-radius-field); }
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__info { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__name {
	font-family: var(--choinkariu-font-body);
	font-size: 14px;
	line-height: 1.25;
	color: var(--choinkariu-green);
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__price { font-family: var(--choinkariu-font-body); font-size: 14px; font-weight: 700; color: var(--choinkariu-green); }
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__price del { color: var(--choinkariu-taupe); font-weight: 400; margin-right: 6px; }
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__price ins { text-decoration: none; }
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__add {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 36px;
	padding: 0 16px;
	border: 1px solid var(--choinkariu-green);
	border-radius: var(--choinkariu-radius-pill);
	background: transparent;
	color: var(--choinkariu-green);
	font-family: var(--choinkariu-font-body);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: var(--choinkariu-btn-ls);
	text-transform: uppercase;
	white-space: nowrap;
	cursor: pointer;
}
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__add:hover { background: var(--choinkariu-green); color: var(--choinkariu-cream-warm); }
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__add:focus-visible { outline: 2px solid var(--choinkariu-sand); outline-offset: 2px; }

/* Kasa – propozycja podporządkowana formularzowi */
html body.woocommerce-checkout .choinkariu-co-offer { margin: 0 0 var(--choinkariu-gap-m); }
html body.woocommerce-checkout .choinkariu-co-offer[hidden] { display: none; }
html body.woocommerce-checkout .choinkariu-co-offer__card {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 12px 14px;
	border: 1px dashed var(--choinkariu-green);
	border-radius: var(--choinkariu-radius-field);
	background: var(--choinkariu-cream-warm);
	cursor: pointer;
}
html body.woocommerce-checkout .choinkariu-co-offer__card:has(input:checked) { border-style: solid; background: var(--choinkariu-cream); box-shadow: inset 0 0 0 1px var(--choinkariu-green); }
html body.woocommerce-checkout .choinkariu-co-offer__check { flex: 0 0 18px; width: 18px; height: 18px; margin: 0; accent-color: var(--choinkariu-green); }
html body.woocommerce-checkout .choinkariu-co-offer__img { flex: 0 0 56px; width: 56px; height: 56px; object-fit: cover; border-radius: var(--choinkariu-radius-field); }
html body.woocommerce-checkout .choinkariu-co-offer__body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
html body.woocommerce-checkout .choinkariu-co-offer__title { font-family: var(--choinkariu-font-body); font-size: 15px; font-weight: 600; line-height: 1.3; color: var(--choinkariu-green); }
html body.woocommerce-checkout .choinkariu-co-offer__price { font-family: var(--choinkariu-font-body); font-size: 15px; font-weight: 700; color: var(--choinkariu-burgundy); }
html body.woocommerce-checkout .choinkariu-co-offer__price del { color: var(--choinkariu-taupe); font-weight: 400; margin-right: 6px; }
html body.woocommerce-checkout .choinkariu-co-offer__price ins { text-decoration: none; }
html body.woocommerce-checkout .choinkariu-co-offer__note { font-family: var(--choinkariu-font-body); font-size: 13px; line-height: 1.35; color: var(--choinkariu-text); }
html body.woocommerce-checkout .choinkariu-co-offer.is-busy { opacity: .6; pointer-events: none; }
/* ===== /08 ============================================================ */

/* ===== 09. Bez linku „Zobacz koszyk” przy przyciskach dodawania ======= */
html body form.cart .added_to_cart.wc-forward,
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer .added_to_cart { display: none !important; }
/* ===== /09 ============================================================ */


/* ===== 10. Black Weeks, ceny promocyjne, dostawa, „Dodaj do zestawu” = */
/* Etykieta Black Weeks – zawieszka prezentowa: ścięty bok i „dziurka” na sznurek. */
.choinkariu-bw-tag {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 7px 14px 7px 15px;
	background: var(--choinkariu-burgundy);
	color: var(--choinkariu-cream-warm);
	font-family: var(--choinkariu-font-body);
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.02em;
	white-space: nowrap;
	clip-path: polygon(9px 0, 100% 0, 100% 100%, 9px 100%, 0 50%);
	border-radius: 0 6px 6px 0;
}
.choinkariu-bw-tag__dot {
	flex: 0 0 6px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--choinkariu-cream);
}
.oxy-shortcode:has(> .choinkariu-bw-tag--product) { margin: 0 0 12px; line-height: 0; }
.oxy-shortcode:empty { display: none; }
.choinkariu-bw-tag--loop { margin: 0 0 8px; }

/* Pasek górny w czasie akcji */
.choinkariu-topbar { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.choinkariu-topbar .choinkariu-bw-tag__dot { background: var(--choinkariu-sand); }
.choinkariu-topbar strong { font-weight: 700; color: var(--choinkariu-sand); }
@media (max-width: 600px) { .choinkariu-topbar__date { display: none; } }

/* Cena przed obniżką przekreślona, cena promocyjna w kolorze akcji */
.bde-wooproductprice .price del,
.woocommerce-variation-price .price del,
.products .price del,
#yith-wapo-container .option-price del {
	color: var(--choinkariu-taupe);
	font-weight: 400;
	font-size: 0.78em;
	text-decoration: line-through;
	text-decoration-thickness: 1px;
	margin-right: 0.35em;
	opacity: 1;
}
.bde-wooproductprice .price ins,
.woocommerce-variation-price .price ins,
.products .price ins {
	text-decoration: none;
	color: var(--choinkariu-burgundy);
	font-weight: 700;
}
.choinkariu-from { font-size: 0.7em; font-weight: 400; color: var(--choinkariu-text); margin-right: 0.15em; }
.bde-wooproductprice .price { display: inline-flex; flex-wrap: wrap; align-items: baseline; column-gap: 0.15em; }

/* Linia dostawy pod przyciskiem dodania do koszyka */
.choinkariu-eta-line { display: flex; flex-direction: column; gap: 2px; line-height: 1.35; }
.choinkariu-eta-line strong { font-family: var(--choinkariu-font-body); font-size: 15px; font-weight: 700; color: var(--choinkariu-green); }
.choinkariu-eta-line span { font-size: 13px; color: var(--choinkariu-text); }
*:has(> .choinkariu-eta-line) { align-items: flex-start; }
*:has(> .choinkariu-eta-line) > svg, *:has(> .choinkariu-eta-line) > .oxy-svg-icon { margin-top: 3px; }

/* „Dodaj do zestawu” – lista dodatków jako karty z wyborem */
html body #yith-wapo-container .yith-wapo-addon {
	margin: 0;
	padding: 18px 16px 16px;
	background: var(--choinkariu-cream) !important;
	border: 1px solid var(--choinkariu-line);
	border-radius: 16px;
}
html body #yith-wapo-container .addon-header { margin: 0; padding: 0; }
html body #yith-wapo-container .wapo-addon-title {
	margin: 0;
	font-family: var(--choinkariu-font-head);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
	color: var(--choinkariu-green);
}
html body #yith-wapo-container .wapo-addon-description { margin: 4px 0 14px; font-size: 14px; line-height: 1.4; color: var(--choinkariu-taupe); }
html body #yith-wapo-container .options { gap: 10px !important; }
html body #yith-wapo-container .yith-wapo-option { margin: 0; padding: 0; position: relative; }
html body #yith-wapo-container .yith-wapo-option .product-container {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr) 22px;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 10px 14px 10px 10px;
	background: #fff;
	border: 1px solid var(--choinkariu-line);
	border-radius: 12px;
	cursor: pointer;
	transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}
html body #yith-wapo-container .yith-wapo-option .product-container::after {
	content: "";
	width: 22px;
	height: 22px;
	box-sizing: border-box;
	border-radius: 50%;
	border: 1.5px solid var(--choinkariu-taupe);
	background: #fff center / 12px 12px no-repeat;
}
html body #yith-wapo-container .yith-wapo-option .product-container:hover { border-color: var(--choinkariu-taupe); }
html body #yith-wapo-container .yith-wapo-option.selected .product-container {
	border-color: var(--choinkariu-green);
	background: var(--choinkariu-cream-warm);
	box-shadow: inset 0 0 0 1px var(--choinkariu-green);
}
html body #yith-wapo-container .yith-wapo-option.selected .product-container::after {
	border-color: var(--choinkariu-green);
	background-color: var(--choinkariu-green);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2 5 8.6l4.5-5' fill='none' stroke='%23FEF8EB' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
html body #yith-wapo-container .yith-wapo-option .product-image { margin: 0; width: 64px; }
html body #yith-wapo-container .yith-wapo-option .product-image img { display: block; width: 64px; height: 64px; object-fit: cover; border-radius: 8px; margin: 0; }
html body #yith-wapo-container .yith-wapo-option .product-info { display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 0; min-width: 0; }
html body #yith-wapo-container .yith-wapo-option .product-name { font-family: var(--choinkariu-font-body); font-size: 15px; font-weight: 600; line-height: 1.3; color: var(--choinkariu-green); }
html body #yith-wapo-container .yith-wapo-option .option-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 6px; font-size: 15px; line-height: 1.2; }
html body #yith-wapo-container .yith-wapo-option .option-price > .amount,
html body #yith-wapo-container .yith-wapo-option .option-price ins { color: var(--choinkariu-burgundy); font-weight: 700; text-decoration: none; }
html body #yith-wapo-container .yith-wapo-option .option-add-to-cart:empty { display: none; }
html body #yith-wapo-container .yith-wapo-option .product-container:focus-visible { outline: 2px solid var(--choinkariu-green); outline-offset: 2px; }
/* ===== /10 ============================================================ */


/* ===== 11. Kasa – czytelne sekcje i pola =============================== */
/* Komunikaty: białe karty z obrysem w kolorze piasku */
html body.woocommerce-checkout .woocommerce-message,
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
	background: #fff;
	border: 1px solid var(--choinkariu-sand);
	border-radius: 12px;
	color: var(--choinkariu-green-deep);
	box-shadow: none;
}
html body.woocommerce-checkout .woocommerce-message {
	position: relative;
	display: block;
	margin: 0 0 12px;
	padding: 18px 20px 18px 52px;
	font-size: 15px;
	line-height: 1.4;
}
html body.woocommerce-checkout .woocommerce-message::before { left: 20px; top: 20px; color: var(--choinkariu-green); }
html body.woocommerce-checkout .woocommerce-message a.button.wc-forward {
	all: unset;
	display: block;
	margin-top: 4px;
	font-weight: 600;
	color: var(--choinkariu-green);
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}
html body.woocommerce-checkout .woocommerce-notices-wrapper:empty { display: none; }
html body.woocommerce-checkout .woocommerce-form-coupon-toggle { margin: 0 0 12px; }
html body.woocommerce-checkout .wt_coupon_wrapper:not(:has(*:not(style):not(script))) { display: none; }

/* Sekcje formularza jako karty */
html body.woocommerce-checkout #customer_details .col-1,
html body.woocommerce-checkout #customer_details .col-2,
html body.woocommerce-checkout #order_review {
	background: #fff;
	border: 1px solid var(--choinkariu-line);
	border-radius: 16px;
	padding: 22px 18px;
	box-sizing: border-box;
}
html body.woocommerce-checkout #customer_details { display: flex; flex-direction: column; gap: 16px; }
html body.woocommerce-checkout #customer_details .col-1,
html body.woocommerce-checkout #customer_details .col-2 { width: 100%; float: none; margin: 0; }
html body.woocommerce-checkout .woocommerce-billing-fields > h3,
html body.woocommerce-checkout #order_review_heading {
	margin: 0 0 16px;
	font-family: var(--choinkariu-font-head);
	font-size: 24px;
	line-height: 1.2;
	color: var(--choinkariu-green);
}
html body.woocommerce-checkout #order_review_heading { margin-top: 8px; }

/* Pola: pełny obrys, zaokrąglenie, wyraźny fokus */
html body.woocommerce-checkout form.checkout .form-row { margin: 0 0 14px; }
html body.woocommerce-checkout form.checkout .form-row > label:not(.checkbox) {
	display: block;
	margin: 0 0 6px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--choinkariu-green-deep);
}
html body.woocommerce-checkout form.checkout .form-row .input-text,
html body.woocommerce-checkout form.checkout .form-row select,
html body.woocommerce-checkout form.checkout .form-row .select2-selection--single {
	width: 100%;
	min-height: 48px;
	box-sizing: border-box;
	padding: 12px 14px;
	background: #fff;
	border: 1px solid #D9CCB6;
	border-radius: 8px;
	font-size: 16px;
	color: var(--choinkariu-green-deep);
	box-shadow: none;
	transition: border-color .15s ease, box-shadow .15s ease;
}
html body.woocommerce-checkout form.checkout .form-row textarea.input-text { min-height: 96px; }
html body.woocommerce-checkout form.checkout .form-row .input-text::placeholder { color: #9C9087; }
html body.woocommerce-checkout form.checkout .form-row .input-text:focus,
html body.woocommerce-checkout form.checkout .form-row select:focus {
	outline: none;
	border-color: var(--choinkariu-green);
	box-shadow: 0 0 0 3px rgba(232, 210, 173, .7);
}
html body.woocommerce-checkout form.checkout .form-row.woocommerce-invalid .input-text { border-color: var(--choinkariu-burgundy); }

/* Faktura i inny adres: pola wyboru w delikatnym kontenerze */
html body.woocommerce-checkout .choinkariu-invoice,
html body.woocommerce-checkout #ship-to-different-address {
	margin: 4px 0 14px;
	padding: 0;
	font-family: var(--choinkariu-font-body);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--choinkariu-green-deep);
}
html body.woocommerce-checkout .choinkariu-invoice > label,
html body.woocommerce-checkout #ship-to-different-address > label {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 13px 14px;
	background: var(--choinkariu-cream-warm);
	border: 1px solid var(--choinkariu-line);
	border-radius: 10px;
	cursor: pointer;
	font-size: 15px;
	font-weight: 600;
	color: var(--choinkariu-green-deep);
}
html body.woocommerce-checkout .choinkariu-invoice input[type="checkbox"],
html body.woocommerce-checkout #ship-to-different-address input[type="checkbox"] {
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--choinkariu-green);
	position: static;
}
html body.woocommerce-checkout #ship-to-different-address > label::before,
html body.woocommerce-checkout .choinkariu-invoice > label::before { content: none; }
html body.woocommerce-checkout .woocommerce-additional-fields > h3 { display: none; }

/* Podsumowanie i płatności */
html body.woocommerce-checkout #payment { background: transparent; border: 0; padding: 0; }
html body.woocommerce-checkout #payment .wc_payment_methods { border: 1px solid var(--choinkariu-line); border-radius: 12px; padding: 4px 14px; background: #fff; }
html body.woocommerce-checkout #payment .wc_payment_methods .wc_payment_method { padding: 13px 0; border-bottom: 1px solid var(--choinkariu-line); }
html body.woocommerce-checkout #payment .wc_payment_methods .wc_payment_method:last-child { border-bottom: 0; }
html body.woocommerce-checkout #payment .wc_payment_methods .wc_payment_method > label { font-size: 15px; font-weight: 600; color: var(--choinkariu-green-deep); }
html body.woocommerce-checkout #payment .payment_box { margin: 8px 0 0; padding: 10px 12px; background: var(--choinkariu-cream-warm); border-radius: 8px; font-size: 14px; }
html body.woocommerce-checkout #payment .payment_box::before { content: none; }
html body.woocommerce-checkout .woocommerce-privacy-policy-text p { font-size: 13px; color: var(--choinkariu-text); }
html body.woocommerce-checkout #place_order { min-height: 54px; font-size: 16px; }

/* Propozycja w kasie: wyraźne pudełko z decyzją jednym kliknięciem */
html body.woocommerce-checkout .choinkariu-co-offer__card {
	border: 1.5px dashed var(--choinkariu-sand);
	background: var(--choinkariu-cream-warm);
	border-radius: 12px;
	padding: 14px;
}
html body.woocommerce-checkout .choinkariu-co-offer__img { flex-basis: 64px; width: 64px; height: 64px; border-radius: 8px; }
@media (min-width: 1024px) {
	html body.woocommerce-checkout #customer_details .col-1,
	html body.woocommerce-checkout #customer_details .col-2,
	html body.woocommerce-checkout #order_review { padding: 28px 26px; }
}
/* ===== /11 ============================================================ */

/* ===== 12. Poprawki kolejności ceny i nagłówka zestawu ============== */
html body .bde-wooproductprice .price .choinkariu-from { order: -1; }
html body .bde-wooproductprice .price del { order: 0; }
html body .bde-wooproductprice .price ins { order: 1; }
html body #yith-wapo-container .wapo-addon-title span { font: inherit; color: inherit; text-transform: none; letter-spacing: 0; }
/* ===== /12 ============================================================ */

/* ===== 13. Kasa – pola ponad globalnym podkreśleniem buildera ========= */
html body.woocommerce-checkout form.checkout .form-row input.input-text,
html body.woocommerce-checkout form.checkout .form-row textarea.input-text,
html body.woocommerce-checkout form.checkout #order_comments,
html body.woocommerce-checkout form.checkout #billing_country_field .select2-selection {
	border: 1px solid #D9CCB6 !important;
	border-radius: 8px !important;
}
html body.woocommerce-checkout form.checkout .form-row input.input-text:focus,
html body.woocommerce-checkout form.checkout #order_comments:focus { border-color: var(--choinkariu-green) !important; }
html body.woocommerce-checkout form.checkout .form-row.woocommerce-invalid input.input-text { border-color: var(--choinkariu-burgundy) !important; }
html body.woocommerce-checkout form.checkout .choinkariu-invoice input[type="checkbox"],
html body.woocommerce-checkout form.checkout #ship-to-different-address input[type="checkbox"] {
	-webkit-appearance: auto !important;
	appearance: auto !important;
	border: 0 !important;
	background: none !important;
}
html body.woocommerce-checkout #ship-to-different-address span {
	font-family: var(--choinkariu-font-body);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0;
	text-transform: none;
	color: var(--choinkariu-green-deep);
}
/* ===== /13 ============================================================ */
html body.woocommerce-checkout form.checkout .form-row.choinkariu-invoice > label { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 15px; font-weight: 600; }
html body.woocommerce-checkout #ship-to-different-address span { font-family: var(--choinkariu-font-body) !important; font-size: 15px !important; font-weight: 600 !important; line-height: 1.3 !important; }

/* ===== 14. Wygładzenie: kropki statusu, Black Weeks, komunikaty, okno zapisu koszyka */
/* Kropka statusu – rdzeń mruga, wokół rozchodzi się pierścień */
.choinkariu-pulse,
.choinkariu-mc-eta__dot {
	position: relative;
	display: inline-block;
	flex: 0 0 8px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #2F8F55;
	animation: choinkariu-blink 1.6s ease-in-out infinite;
}
.choinkariu-pulse::after,
.choinkariu-mc-eta__dot::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: inherit;
	animation: choinkariu-ring 1.6s ease-out infinite;
}
.choinkariu-pulse--sand { background: var(--choinkariu-sand); }
.choinkariu-pulse--cream { background: var(--choinkariu-cream); }
.choinkariu-pulse--green { background: #2F8F55; }
@keyframes choinkariu-blink { 0%, 100% { opacity: 1; } 50% { opacity: .45; } }
@keyframes choinkariu-ring { 0% { transform: scale(1); opacity: .6; } 100% { transform: scale(2.8); opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
	.choinkariu-pulse, .choinkariu-mc-eta__dot, .choinkariu-pulse::after, .choinkariu-mc-eta__dot::after { animation: none; }
}

/* Pasek górny: tylko BLACK WEEKS, cały pasek prowadzi do choinki */
a.choinkariu-topbar,
a.choinkariu-topbar:hover,
a.choinkariu-topbar:focus { display: inline-flex; align-items: center; gap: 10px; color: var(--choinkariu-sand); text-decoration: none; }
a.choinkariu-topbar strong { font-weight: 700; letter-spacing: 0.12em; color: var(--choinkariu-sand); }
a.choinkariu-topbar:focus-visible { outline: 2px solid var(--choinkariu-sand); outline-offset: 4px; border-radius: 4px; }

/* Etykieta BLACK WEEKS: wielkie litery, mrugająca kropka w miejscu „dziurki” */
.choinkariu-bw-tag { gap: 9px; padding: 8px 14px 8px 16px; font-size: 12px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; }
.choinkariu-bw-tag .choinkariu-pulse { flex-basis: 7px; width: 7px; height: 7px; }

/* Linia dostawy: zielona kropka zamiast ikony auta, jedna linia */
*:has(> .choinkariu-eta-line) { align-items: center !important; gap: 0 !important; }
*:has(> .choinkariu-eta-line) > svg,
*:has(> .choinkariu-eta-line) > .oxy-svg-icon,
*:has(> .choinkariu-eta-line) > [class*="svgicon"],
*:has(> .choinkariu-eta-line) > [class*="svg-icon"] { display: none !important; }
.choinkariu-eta-line { flex-direction: row; align-items: center; gap: 10px; margin: 0; }
.choinkariu-eta-line strong { font-size: 15px; line-height: 1.3; }

/* Komunikaty sklepu – jeden wzór: biała karta, ikona wyrównana do pierwszej linii */
html body .breakdance-woocommerce .woocommerce-message,
html body .breakdance-woocommerce .woocommerce-info,
html body .breakdance-woocommerce .woocommerce-error {
	position: relative;
	display: block !important;
	margin: 0 0 12px;
	padding: 16px 18px 16px 50px;
	background: #fff;
	border: 1px solid var(--choinkariu-sand);
	border-radius: 12px;
	box-shadow: none;
	color: var(--choinkariu-green-deep);
	font-size: 15px;
	line-height: 1.45;
	text-align: left;
}
html body .breakdance-woocommerce .woocommerce-error { border-color: rgba(109, 14, 22, .35); }
html body .breakdance-woocommerce .woocommerce-message::before,
html body .breakdance-woocommerce .woocommerce-info::before,
html body .breakdance-woocommerce .woocommerce-error::before {
	position: absolute;
	left: 18px;
	top: calc(16px + (1.45em - 18px) / 2);
	width: 18px;
	height: 18px;
	margin: 0;
	transform: none;
}
html body .breakdance-woocommerce .woocommerce-message a.button,
html body .breakdance-woocommerce .woocommerce-info a.button {
	all: unset;
	display: inline-block;
	margin-top: 2px;
	font-weight: 600;
	color: var(--choinkariu-green);
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}
html body .breakdance-woocommerce .woocommerce-message a.button::after { content: none; }
html body .breakdance-woocommerce .woocommerce-error li { margin: 0; padding: 0; list-style: none; }
html body .breakdance-woocommerce .woocommerce-notices-wrapper:empty { display: none; margin: 0; }
html body .breakdance-woocommerce .woocommerce-notices-wrapper { margin-bottom: 0; }
/* W kasie komunikat „dodano do koszyka” niczego nie wnosi – produkt widać w podsumowaniu */
html body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message:has(a.wc-forward) { display: none !important; }

/* Kasa: równy rytm odstępów nad formularzem */
html body.woocommerce-checkout .bde-woopagecheckout .woocommerce > .woocommerce-form-coupon-toggle,
html body.woocommerce-checkout .bde-woopagecheckout .woocommerce > .woocommerce-notices-wrapper:not(:empty) { margin: 0 0 16px; }
html body.woocommerce-checkout .bde-woopagecheckout .woocommerce > .woocommerce-form-coupon-toggle .woocommerce-info { margin: 0; }
html body.woocommerce-checkout form.checkout_coupon { margin: 0 0 16px; padding: 16px 18px; background: #fff; border: 1px solid var(--choinkariu-line); border-radius: 12px; }

/* Okno „Chcesz dokończyć zamówienie później?” w stylu marki */
#cartbounty-pro-exit-intent-form #cartbounty-pro-exit-intent-form-container {
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 24px 60px rgba(0, 41, 21, .22);
	border: 1px solid var(--choinkariu-line);
}
#cartbounty-pro-exit-intent-form-content { padding: 0; }
#cartbounty-pro-exit-intent-form-content-l img { display: block; width: 100%; height: auto; border-radius: 0; }
#cartbounty-pro-exit-intent-form-content-r { padding: 22px 24px 26px; text-align: left; }
#cartbounty-pro-exit-intent-form-content-r h2 {
	margin: 0 0 8px;
	font-family: var(--choinkariu-font-head);
	font-size: 26px;
	line-height: 1.15;
	letter-spacing: 0;
	text-transform: none;
	color: var(--choinkariu-green) !important;
}
#cartbounty-pro-exit-intent-form-content-r p { margin: 0 0 16px; font-family: var(--choinkariu-font-body); font-size: 15px; line-height: 1.45; color: var(--choinkariu-text) !important; }
#cartbounty-pro-exit-intent-form-content-r form { display: flex; flex-direction: column; gap: 10px; margin: 0; }
#cartbounty-pro-exit-intent-email {
	width: 100%;
	min-height: 50px;
	box-sizing: border-box;
	margin: 0;
	padding: 12px 16px;
	background: #fff;
	border: 1px solid #D9CCB6 !important;
	border-radius: 9999px;
	font-family: var(--choinkariu-font-body);
	font-size: 16px;
	color: var(--choinkariu-green-deep);
	box-shadow: none;
}
#cartbounty-pro-exit-intent-email:focus { outline: none; border-color: var(--choinkariu-green) !important; box-shadow: 0 0 0 3px rgba(232, 210, 173, .7); }
#cartbounty-pro-exit-intent-submit.button {
	width: 100%;
	min-height: 50px;
	margin: 0;
	padding: 0 24px;
	border: 0;
	border-radius: 9999px;
	background: var(--choinkariu-green) !important;
	color: var(--choinkariu-cream-warm) !important;
	font-family: var(--choinkariu-font-body);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: none;
	cursor: pointer;
}
#cartbounty-pro-exit-intent-submit.button:hover { background: var(--choinkariu-green-deep) !important; }
#cartbounty-pro-exit-intent-close {
	top: 12px;
	right: 12px;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255, 253, 247, .92);
	z-index: 2;
}
#cartbounty-pro-exit-intent-form-backdrop.cartbounty-pro-visible { opacity: .55 !important; }
/* ===== /14 ============================================================ */
/* ===== 15. Kasa: jeden odstęp między blokami nad formularzem ========== */
html body.woocommerce-checkout .bde-woopagecheckout .woocommerce { row-gap: 16px; }
html body.woocommerce-checkout .bde-woopagecheckout .woocommerce > * { margin-top: 0 !important; margin-bottom: 0 !important; }
html body.woocommerce-checkout .bde-woopagecheckout .woocommerce > .woocommerce-notices-wrapper:empty { display: none; }
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info { padding: 16px 18px 16px 50px !important; }
@media (max-width: 767px) {
	html body.woocommerce-checkout section:has(> .bde-woopagecheckout) { padding-top: 24px !important; }
}
/* ===== /15 ============================================================ */
#cartbounty-pro-exit-intent-close { position: absolute; cursor: pointer; }
#cartbounty-pro-exit-intent-close svg { display: block; width: 12px; height: 12px; }

/* ===== 16. Skala typografii (mniejsza, spokojniejsza) i porządek układu = */
:root {
	--ch-fs-lg: 17px;
	--ch-fs-h4: 19px;
	--ch-fs-h3: 22px;
	--ch-fs-h2: 32px;
	--ch-fs-h1: 42px;
	--ch-fs-display: 56px;
}
@media (max-width: 1023px) {
	:root { --ch-fs-h2: 28px; --ch-fs-h1: 36px; --ch-fs-display: 46px; }
}
@media (max-width: 767px) {
	:root { --ch-fs-lg: 16px; --ch-fs-h4: 17px; --ch-fs-h3: 19px; --ch-fs-h2: 24px; --ch-fs-h1: 28px; --ch-fs-display: 34px; }
}
html body h1.product_title { font-size: 34px; line-height: 1.08; }
html body .bde-faq__title { font-size: 18px; line-height: 1.35; }
@media (max-width: 767px) {
	html body h1.product_title { font-size: 28px; }
	html body .bde-faq__title { font-size: 16px; }
}

/* Pigułka nad galerią: tekst się zawija zamiast ucinać */
html body .container-82 .text-36 {
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
	line-height: 1.25;
	text-align: left;
}

/* Logotypy płatności: zawsze w szerokości ekranu, równa wysokość */
html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) {
	flex-wrap: wrap !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 12px 20px !important;
	max-width: 100%;
	min-width: 0;
}
html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img {
	flex: 0 1 auto !important;
	width: auto !important;
	max-width: 64px !important;
	height: 22px !important;
	object-fit: contain;
	margin: 0 !important;
}
@media (min-width: 1024px) {
	html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img { height: 26px !important; max-width: 72px !important; }
}
/* Nic nie wychodzi poza ekran w poziomie */
html, body { overflow-x: clip; }
img, svg, video { max-width: 100%; }
/* ===== /16 ============================================================ */
/* Karta produktu na liście: etykieta na zdjęciu, nie nad nim */
html body ul.products li.product { position: relative; }
html body ul.products li.product .choinkariu-bw-tag--loop { position: absolute; top: 12px; left: 12px; z-index: 2; margin: 0; }
/* Zakładka „Sprawdź opinie”: prawa krawędź (nie zasłania tekstu), kolory marki */
html body .r_sbw__container.r_sbw__left {
	left: auto !important;
	right: 0 !important;
	border-radius: 10px 0 0 10px !important;
	--r-r_sbw-bg-color: #013A23 !important;
	--r-r_sbw-text-color: #FEF8EB !important;
	background-color: #013A23 !important;
	color: #FEF8EB !important;
}
html body .r_sbw__container .review-icon { color: #E8D2AD !important; }
@media (max-width: 767px) {
	html body .r_sbw__container.r_sbw__left { transform: scale(.85); transform-origin: right center; }
}

/* ===== 17. Jeden krój: nagłówki i przyciski w rodzinie Siri ============ */
/* Nagłówki: zamiast ciężkiego Subjectivity Bold – Siri Medium (ta sama rodzina co tekst).
   Podmiana na poziomie kroju obejmuje każdy nagłówek sklepu, także w koszyku i kasie. */
@font-face {
	font-family: 'Subjectivity';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('/wp-content/uploads/oxygen/fonts/Siri_Medium.woff2') format('woff2');
}
html body :is(h1, h2, h3, h4, .headingh2, .product_title, .bde-heading) { letter-spacing: -0.015em; }

/* Przyciski: jeden wzór jak „SKLEP” w stopce – Siri Regular, wielkie litery, pigułka */
:root { --choinkariu-btn-fw: 400; --choinkariu-btn-fs: 15px; --choinkariu-btn-ls: 0.03em; }
html body :is(
	.button, button.button, a.button,
	.single_add_to_cart_button, #place_order, .checkout-button, .wc-backward,
	.bde-button__button, .breakdance-form-button, .oxy-text-link.button, .button-footer,
	.woocommerce-mini-cart__buttons .button, .bde-mini-cart-offcanvas .button,
	.choinkariu-mc-offer__add, #cartbounty-pro-exit-intent-submit, .choinkariu-buybar button
) {
	font-family: 'Siri', sans-serif !important;
	font-weight: 400 !important;
	font-size: 15px !important;
	letter-spacing: 0.03em !important;
	text-transform: uppercase !important;
	line-height: 1.2 !important;
}
@media (max-width: 767px) {
	html body :is(
		.button, button.button, a.button,
		.single_add_to_cart_button, #place_order, .checkout-button, .wc-backward,
		.bde-button__button, .breakdance-form-button, .oxy-text-link.button, .button-footer,
		.woocommerce-mini-cart__buttons .button, .bde-mini-cart-offcanvas .button,
		.choinkariu-mc-offer__add, #cartbounty-pro-exit-intent-submit, .choinkariu-buybar button
	) { font-size: 14px !important; }
}
/* Linki-komunikaty (np. „Zobacz koszyk” w komunikacie) zostają zwykłym tekstem */
html body .woocommerce-message a.button, html body .woocommerce-info a.button { font-size: inherit !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 600 !important; }
html body .container-82 .text-36 { font-family: 'Siri', sans-serif !important; font-weight: 400 !important; letter-spacing: 0.03em; }
/* ===== /17 ============================================================ */

/* ===== 18. Rytm tekstu: nadtytuł → nagłówek → opis ==================== */
html body .container-37 > .text-bold + .headingh2 { margin-top: 6px; }
html body .container-37 > .headingh2 + .oxy-text { margin-top: 14px; }
html body .text-advantage + .grey-text { margin-top: 4px; }
/* ===== /18 ============================================================ */

/* ===== 19. Logotypy płatności: mniejsze i optycznie wyrównane ========= */
html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) { gap: 10px 18px !important; justify-content: flex-start !important; }
html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img { height: 17px !important; max-width: 52px !important; }
html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img:is([src*="Apple_Pay"], [data-lazy-src*="Apple_Pay"], [src*="PayPo"], [data-lazy-src*="PayPo"]) { height: 15px !important; }
html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img:is([src*="Mastercard"], [data-lazy-src*="Mastercard"]) { height: 22px !important; }
html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img:is([src*="raty"], [data-lazy-src*="raty"]) { height: 14px !important; max-width: 60px !important; }
@media (min-width: 1024px) {
	html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img { height: 18px !important; max-width: 56px !important; }
	html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img:is([src*="Apple_Pay"], [data-lazy-src*="Apple_Pay"], [src*="PayPo"], [data-lazy-src*="PayPo"]) { height: 16px !important; }
	html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img:is([src*="Mastercard"], [data-lazy-src*="Mastercard"]) { height: 24px !important; }
	html body .oxy-container:has(> img[src*="blik"], > img[data-lazy-src*="blik"]) > img:is([src*="raty"], [data-lazy-src*="raty"]) { height: 15px !important; max-width: 64px !important; }
}
/* ===== /19 ============================================================ */
/* Propozycja w koszyku: cena w zestawie jak na karcie choinki */
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__price ins { color: var(--choinkariu-burgundy); font-weight: 700; }
html body .bde-mini-cart-offcanvas .choinkariu-mc-offer__price del { font-size: 13px; }
/* Ocena pod tytułem produktu, nad ceną */
html body .bde-wooproducttitle + .oxy-shortcode:has(.r_rw_rating_widget_outer_container_wrapper) { margin: 10px 0 12px; line-height: 1; }

/* ===== 20. Kasa: lżejsze etykiety (Siri Regular/Medium zamiast pogrubień) */
html body.woocommerce-checkout form.checkout .form-row > label:not(.checkbox),
html body.woocommerce-checkout form.checkout .form-row > label:not(.checkbox) * {
	font-weight: 500 !important;
	font-size: 14px;
	color: var(--choinkariu-text);
}
html body.woocommerce-checkout form.checkout .form-row > label .required { color: var(--choinkariu-burgundy); }
html body.woocommerce-checkout #shipping_method li label,
html body.woocommerce-checkout #shipping_method li label *,
html body.woocommerce-checkout #payment .wc_payment_methods .wc_payment_method > label,
html body.woocommerce-checkout .choinkariu-invoice > label,
html body.woocommerce-checkout .choinkariu-invoice > label *,
html body.woocommerce-checkout #ship-to-different-address > label,
html body.woocommerce-checkout #ship-to-different-address span,
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label,
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label * {
	font-weight: 400 !important;
	color: var(--choinkariu-green-deep);
}
html body.woocommerce-checkout #shipping_method li label .amount,
html body.woocommerce-checkout #shipping_method li label .amount * { font-weight: 500 !important; }
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label a { font-weight: 500 !important; }
html body.woocommerce-checkout .choinkariu-co-offer__title { font-weight: 500; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td { font-weight: 400; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td .amount { font-weight: 500; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount { font-weight: 600; }
/* ===== /20 ============================================================ */
/* „Dodaj do zestawu”: wyróżnienia dodatków */
html body #yith-wapo-container .choinkariu-addon-badge {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	margin: 0 0 2px;
	padding: 4px 9px;
	border-radius: 9999px;
	background: var(--choinkariu-green);
	color: var(--choinkariu-cream-warm);
	font-family: 'Siri', sans-serif;
	font-size: 11px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	white-space: nowrap;
}
html body #yith-wapo-container .choinkariu-addon-badge--alt { background: var(--choinkariu-sand); color: var(--choinkariu-green-deep); }
/* Wybór rozmiaru: bez przycisku „Wyczyść” (rozmiar zmienia się jednym kliknięciem) */
html body form.variations_form .reset_variations { display: none !important; }
/* Wyróżnienia dodatków jako zawieszka na górnej krawędzi karty (nie przesuwają treści) */
html body #yith-wapo-container .options { gap: 18px !important; padding-top: 6px; }
html body #yith-wapo-container .yith-wapo-option { overflow: visible; }
html body #yith-wapo-container .choinkariu-addon-badge {
	position: absolute;
	top: -9px;
	left: 14px;
	z-index: 2;
	margin: 0;
	padding: 4px 10px 4px 13px;
	border-radius: 0 5px 5px 0;
	clip-path: polygon(7px 0, 100% 0, 100% 100%, 7px 100%, 0 50%);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.1em;
	box-shadow: none;
}
html body #yith-wapo-container .choinkariu-addon-badge::before {
	content: "";
	width: 4px;
	height: 4px;
	margin-right: 6px;
	border-radius: 50%;
	background: currentColor;
	opacity: .7;
}
html body #yith-wapo-container .yith-wapo-option:has(.choinkariu-addon-badge) .product-container { border-color: var(--choinkariu-sand); }
html body #yith-wapo-container .yith-wapo-option.selected:has(.choinkariu-addon-badge) .product-container { border-color: var(--choinkariu-green); }
/* Wyróżnienia dodatków: zaokrąglona pigułka w prawym górnym rogu karty, na krawędzi */
html body #yith-wapo-container .choinkariu-addon-badge {
	top: -11px;
	left: auto;
	right: 14px;
	padding: 5px 11px;
	border-radius: 9999px;
	clip-path: none;
	font-size: 11.5px;
	font-weight: 500;
	letter-spacing: 0.01em;
	text-transform: none;
	line-height: 1.1;
	box-shadow: 0 0 0 3px var(--choinkariu-cream);
}
html body #yith-wapo-container .choinkariu-addon-badge::before { content: none; }
html body #yith-wapo-container .yith-wapo-option.selected .choinkariu-addon-badge { box-shadow: 0 0 0 3px var(--choinkariu-cream-warm); }
html body #yith-wapo-container .yith-wapo-option:has(.choinkariu-addon-badge) .product-container { padding-top: 18px; }
