/* =====================================================================
   Boryniak — WooCommerce
   ===================================================================== */

/* --- Kafel produktu w katalogu --------------------------------------- */

.wc-block-product,
.wc-block-grid__product,
ul.products li.product {
	background: var(--wp--preset--color--kreda);
	border: 1px solid var(--wp--preset--color--obwodka);
	border-radius: 2px;
	padding: .85rem;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.wc-block-product:hover,
.wc-block-grid__product:hover,
ul.products li.product:hover {
	border-color: var(--wp--preset--color--las-2);
	box-shadow: 0 8px 22px -12px rgba(28, 70, 52, .45);
}

.wc-block-product .wp-block-post-title,
ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--wp--preset--font-family--archivo);
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -.01em;
	margin-block: .6rem .3rem;
}

.wc-block-product .wp-block-post-title a,
ul.products li.product .woocommerce-loop-product__title a {
	text-decoration: none;
	color: var(--wp--preset--color--las);
}

/* --- Ceny ------------------------------------------------------------ */

.wc-block-components-product-price,
ul.products li.product .price {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: 1.3rem;
	color: var(--wp--preset--color--las);
}

.wc-block-components-product-price del,
ul.products li.product .price del {
	font-weight: 400;
	font-size: .9rem;
	color: var(--wp--preset--color--olow);
	margin-right: .4rem;
}
.wc-block-components-product-price ins,
ul.products li.product .price ins {
	text-decoration: none;
	color: var(--wp--preset--color--akcja-c);
}

/* Numer katalogowy — po nim klienci szukają najczęściej */
.wc-block-components-product-sku,
.product_meta .sku_wrapper {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: .8125rem;
	color: var(--wp--preset--color--olow);
	letter-spacing: .02em;
}

/* Plakietka promocji — bez zaokrągleń, jak stempel */
.wc-block-components-product-sale-badge,
span.onsale {
	background: var(--wp--preset--color--akcja) !important;
	color: #fff !important;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: .72rem;
	letter-spacing: .05em;
	text-transform: uppercase;
	border-radius: 2px !important;
	padding: .28rem .6rem !important;
	min-height: 0 !important;
	min-width: 0 !important;
	line-height: 1.4 !important;
}

/* --- Okruszki -------------------------------------------------------- */

.wc-block-breadcrumbs,
.woocommerce-breadcrumb {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: .8125rem;
	color: var(--wp--preset--color--olow);
}
.wc-block-breadcrumbs a,
.woocommerce-breadcrumb a {
	color: var(--wp--preset--color--olow);
	text-decoration: none;
}
.wc-block-breadcrumbs a:hover,
.woocommerce-breadcrumb a:hover { text-decoration: underline; }

/* --- Karta produktu -------------------------------------------------- */

.single-product div.product .product_title { margin-block-end: .4rem; }

.single-product div.product p.price {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 800;
	font-size: clamp(1.75rem, 1.4rem + 1.4vw, 2.4rem);
	color: var(--wp--preset--color--las);
	line-height: 1.1;
}

/* Informacja o najniższej cenie z 30 dni — obowiązek z dyrektywy Omnibus.
   Różne wtyczki wstawiają ją w różnych miejscach, stąd kilka selektorów. */
.wc-price-history,
.woocommerce-omnibus,
.wc-omnibus-price {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: .8125rem;
	color: var(--wp--preset--color--olow);
	display: block;
	margin-block-start: .35rem;
}

/* Atrybuty produktu wyglądają jak tabliczka znamionowa */
.woocommerce-product-attributes {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid var(--wp--custom--tabliczka--linia, #D3D0C6);
	border-radius: 2px;
	background: var(--wp--custom--tabliczka--tlo, #EDEBE4);
}
.woocommerce-product-attributes th {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: .8125rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--olow);
	text-align: left;
	width: 42%;
	vertical-align: top;
}
.woocommerce-product-attributes :is(th, td) {
	padding: .6rem .9rem;
	border-bottom: 1px dotted var(--wp--custom--tabliczka--linia, #D3D0C6);
}
.woocommerce-product-attributes tr:last-child :is(th, td) { border-bottom: 0; }
.woocommerce-product-attributes td p { margin: 0; }

/* Dostępność — czytelny status zamiast drobnego szarego tekstu */
.single-product .stock,
.wc-block-components-product-stock-indicator {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: .9375rem;
	text-transform: uppercase;
	letter-spacing: .05em;
	display: inline-block;
	padding: .3rem .7rem;
	border-radius: 2px;
}
.single-product .stock.in-stock { background: var(--wp--preset--color--stan); color: #fff; }
.single-product .stock.out-of-stock { background: var(--wp--preset--color--obwodka); color: var(--wp--preset--color--las); }

/* --- Formularz dodania do koszyka ------------------------------------ */

.single-product form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .75rem;
	margin-block: 1.25rem;
}

.quantity input.qty {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: 1rem;
	padding: .7rem .5rem;
	width: 4.5rem;
	text-align: center;
	border: 1px solid var(--wp--preset--color--obwodka);
	border-radius: 2px;
	background: var(--wp--preset--color--kreda);
}

.single-product .single_add_to_cart_button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	font-family: var(--wp--preset--font-family--archivo) !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .045em;
	border-radius: 2px !important;
	background: var(--wp--preset--color--akcja) !important;
	color: #fff !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.single-product .single_add_to_cart_button:hover {
	background: var(--wp--preset--color--akcja-c) !important;
}

.woocommerce .button.alt,
.woocommerce button.button.alt {
	background: var(--wp--preset--color--akcja) !important;
	color: #fff !important;
}

/* --- Zakładki opisu --------------------------------------------------- */

.woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: .25rem;
	padding: 0;
	margin: 0 0 -1px;
	list-style: none;
	border-bottom: 1px solid var(--wp--preset--color--obwodka);
}
.woocommerce-tabs ul.tabs li {
	margin: 0;
	background: transparent;
	border: 1px solid transparent;
	border-bottom: 0;
	border-radius: 2px 2px 0 0;
}
.woocommerce-tabs ul.tabs li a {
	display: block;
	padding: .7rem 1.1rem;
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 600;
	font-size: .9375rem;
	text-transform: uppercase;
	letter-spacing: .04em;
	text-decoration: none;
	color: var(--wp--preset--color--olow);
}
.woocommerce-tabs ul.tabs li.active {
	background: var(--wp--preset--color--kreda);
	border-color: var(--wp--preset--color--obwodka);
}
.woocommerce-tabs ul.tabs li.active a { color: var(--wp--preset--color--las); }
.woocommerce-tabs .panel {
	background: var(--wp--preset--color--kreda);
	border: 1px solid var(--wp--preset--color--obwodka);
	border-radius: 0 2px 2px 2px;
	padding: var(--wp--preset--spacing--30);
}

/* --- Sortowanie i licznik wyników ------------------------------------- */

.woocommerce-result-count,
.wc-block-product-results-count {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: .8125rem;
	color: var(--wp--preset--color--olow);
	margin: 0;
}

.woocommerce-ordering select,
.wc-block-catalog-sorting select {
	font-family: var(--wp--preset--font-family--plex);
	font-size: .9375rem;
	padding: .5rem .7rem;
	border: 1px solid var(--wp--preset--color--obwodka);
	border-radius: 2px;
	background: var(--wp--preset--color--kreda);
}

/* --- Komunikaty ------------------------------------------------------- */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-top: 0;
	border-left: 3px solid var(--wp--preset--color--akcja);
	background: var(--wp--preset--color--kreda);
	border-radius: 2px;
	font-size: .9375rem;
}
.woocommerce-message { border-left-color: var(--wp--preset--color--stan); }

/* --- Koszyk i zamówienie ---------------------------------------------- */

.woocommerce table.shop_table {
	border-collapse: collapse;
	border-color: var(--wp--preset--color--obwodka);
	border-radius: 2px;
}
.woocommerce table.shop_table th {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	background: var(--wp--preset--color--len);
}
.wc-block-components-totals-item__value,
.order-total .amount {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	border: 1px solid var(--wp--preset--color--obwodka);
	border-radius: 2px;
	padding: .65rem .8rem;
	font: inherit;
	font-size: 1rem;
	background: var(--wp--preset--color--kreda);
}

/* --- Telefon ---------------------------------------------------------- */

@media (max-width: 600px) {
	.single-product form.cart { gap: .5rem; }
	.single-product .single_add_to_cart_button { flex: 1 0 100%; }
	.woocommerce-product-attributes th { width: 45%; }
}
