/*
Theme Name: aiac_furnico_2025
Theme URI: 
Author: AIAC
Author URI: 
Description: Theme for Furnico
Requires at least: 6.8
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aiac_furnico_2025
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
html{
	overflow-x:hidden;
}

*{
	outline:unset !important;
}

a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

#modal-1-content > ul.wp-block-navigation__container
> li.wp-block-navigation-link
> a.wp-block-navigation-item__content{
	min-height:48px;
	align-content:center;
	padding: 0px;
	width:100%;
}

.space-between{
	justify-content: space-between;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}


.wc-block-components-product-sale-badge{
	z-index:0;
}

.woocommerce div.product form.cart .variations select{
	border-radius: 10px;
	color:#111111;
	border-color: #b4b4b4;
}

@media (max-width: 1023px) {
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{
		gap:unset !important;
	}
	
	#modal-1-content{
	  --submenu-speed:.28s;
	  --submenu-ease:cubic-bezier(.22,.61,.36,1);
	  --submenu-max:1000px;
	  --item-min-h:56px;
	  --pad-x:16px;
  
	  --bg:#fff;
	  --divider:#eceff3;
	  --leaf-bg:#fff;
	  --leaf-bg-hover:#f5f7fb;
	  --accent:#2563eb;
	  --text:#0f172a;
	}
  
	/* Każdy li */
	#modal-1-content .wp-block-navigation-item,
	#modal-1-content .wp-block-navigation-submenu{
	  position:relative;
	  width:100%;
	  background:var(--bg);
	  margin:0;
	  padding:0;
	}
	#modal-1-content .wp-block-navigation-item + .wp-block-navigation-item,
	#modal-1-content .wp-block-navigation-submenu + .wp-block-navigation-item,
	#modal-1-content .wp-block-navigation-item + .wp-block-navigation-submenu,
	#modal-1-content .wp-block-navigation-submenu + .wp-block-navigation-submenu{
	  border-top:1px solid var(--divider);
	}
  
	/* Zwykły link (leaf) */
	#modal-1-content .wp-block-navigation-item:not(.wp-block-navigation-submenu) > .wp-block-navigation-item__content{
	  display:flex;
	  align-items:center;
	  min-height:var(--item-min-h);
	  /* padding:0 var(--pad-x); */
	  color:var(--text);
	  /* font-size:18px; */
	  text-align:left;
	  background:var(--leaf-bg);
	  width: 100%;
	  outline:none !important;
	}
	#modal-1-content .wp-block-navigation-item:not(.wp-block-navigation-submenu) > .wp-block-navigation-item__content:hover{
	  background:var(--leaf-bg-hover);
	}
  
	.wp-block-navigation__responsive-container-open{
		display:flex;
	}

	/* SUBMENU */
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle {
		display: flex;
		outline:none!important;
		align-items: center;
		justify-content: space-between; /* etykieta z lewej, strzałka z prawej */
		width: 100%;
		min-height: var(--item-min-h);
		/* padding: 0 var(--pad-x); */
		color: var(--text);
		/* font-size: 18px; */
		text-align: left;
		background: transparent;
		border: 0;
		gap: .5rem;
		position:relative;
	  }
  
	/* Ikona */
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon {
		position: static; /* nie absolutne */
		width: 24px;
		height: 24px;
		border: 2px solid var(--text);
		border-radius: 50%;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		margin-left: auto; /* trzyma się prawej */
		pointer-events: none;
		position:absolute;
		top:13px;
		right:20px;
	  }

	#modal-1-content .wp-block-navigation__submenu-icon svg{
	  width:18px;
	  height:18px;
	  fill:var(--text);
	  transition:transform var(--submenu-speed) var(--submenu-ease);
	  transform:rotate(-90deg); /* domyślnie w prawo */
	}
  
	/* Stan otwarty */
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle[aria-expanded="true"]{
	  font-weight:600;
	}
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle[aria-expanded="true"]
	+ .wp-block-navigation__submenu-icon svg{
	  transform:rotate(0deg); /* w dół */
	}
  
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list{
		width:100%;
	}

	/* Pojemnik submenu */
	#modal-1-content .wp-block-navigation__submenu-container{
	  display:block !important;
	  max-height:0;
	  opacity:0;
	  visibility:hidden;
	  overflow:hidden;
	  transition:
		max-height var(--submenu-speed) var(--submenu-ease),
		opacity var(--submenu-speed) linear,
		visibility 0s linear var(--submenu-speed);
	  background:var(--leaf-bg);
	  margin:0;
	  padding:0;
	}
  
	/* Pokazanie submenu */
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle[aria-expanded="true"]
	+ .wp-block-navigation__submenu-icon + .wp-block-navigation__submenu-container,
	#modal-1-content .wp-block-navigation-submenu:has(> .wp-block-navigation-submenu__toggle[aria-expanded="true"])
	> .wp-block-navigation__submenu-container{
	  max-height:var(--submenu-max);
	  opacity:1;
	  visibility:visible;
	}
  
	/* Hover off */
	#modal-1-content .wp-block-navigation-item:hover > .wp-block-navigation__submenu-container,
	#modal-1-content .wp-block-navigation-submenu:hover > .wp-block-navigation__submenu-container{
	  max-height:0 !important;
	  opacity:0 !important;
	  visibility:hidden !important;
	}
  
	/* Patch: otwarte wygrywa */
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle[aria-expanded="true"]
	+ .wp-block-navigation__submenu-icon + .wp-block-navigation__submenu-container,
	#modal-1-content .wp-block-navigation-submenu:has(> .wp-block-navigation-submenu__toggle[aria-expanded="true"])
	> .wp-block-navigation__submenu-container{
	  max-height:var(--submenu-max) !important;
	  opacity:1 !important;
	  visibility:visible !important;
	}
  
	/* Focus */
	#modal-1-content .wp-block-navigation-item__content:focus-visible,
	#modal-1-content .wp-block-navigation-submenu__toggle:focus-visible{
	outline:none !important;
	  outline-offset:2px;
	}
  
	@media (prefers-reduced-motion: reduce){
	  #modal-1-content .wp-block-navigation__submenu-container,
	  #modal-1-content .wp-block-navigation__submenu-icon svg{
		transition:none;
	  }
	}
  }
  
  /* Desktop hover */
  @media (min-width:1024px) and (hover:hover){
#modal-1-content .wp-block-navigation-submenu
> .wp-block-navigation-submenu__toggle[aria-expanded="true"]
+ .wp-block-navigation__submenu-icon
+ .wp-block-navigation__submenu-container{
  display: block !important;
}
  }


  


#modal-1-content > .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content,
#modal-1-content > .wp-block-navigation__container > .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle {
  font-weight: 700; 
  text-align: center;
  /* justify-content: center; */
  /* padding: 0 5px; */
}

#modal-1-content .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
#modal-1-content .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle {
  font-weight: 500; 
}

#modal-1-content .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
#modal-1-content .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container > .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle {
  font-weight: 300; 
}

#modal-1-content .wp-block-navigation__submenu-container
  > .wp-block-navigation-submenu
  > .wp-block-navigation-submenu__toggle[aria-expanded="true"] {
  font-weight: 700;
}

#modal-1-content .wp-block-navigation__submenu-container
  .wp-block-navigation__submenu-container
  > .wp-block-navigation-submenu
  > .wp-block-navigation-submenu__toggle[aria-expanded="true"] {
  font-weight: 500;
}

.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
	z-index:999;
}

.wp-block-search__button {
	padding: 0 !important;
	align-items: center;
  }


.dx-pre-neutral {
	all: unset !important;           
	display: contents !important;   
}

.dx-remove-wrap{
	position: absolute;
	left: 10px;
    top: 10px;
}

.dx-media img{
	object-fit: cover;
    aspect-ratio: 1;
}

.woocommerce-product-gallery__trigger img.emoji {
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
    max-width: 20px; /* adjust size as needed */
}

.dx-qty{
	border:1px solid #b4b4b4;
	border-radius:10px;
	display:grid;
	grid-template-columns: 1fr 1fr 1fr;
	max-width: 250px;
	min-width: 250px;
}

.dx-5col-gap .wc-block-grid__products{
	--cols: 5;
	--gap: 16px;                 /* zmień wartość gap jak chcesz */
	display: grid !important;
	grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
	gap: var(--gap);
  }
  .dx-5col-gap .wc-block-grid__product{ margin: 0 !important; }  /* zeruje własne marginesy kart */


.woocommerce span.onsale{
	background-color: var(--wp--preset--color--accent-1);
	left: 4px !important;
    margin: 0;
    position: absolute;
    right: auto;
	color: var(--wp--preset--color--base);
    top: 4px;
	border-radius: 4px;
	font-size: .875em;
    font-weight: 600;
	padding: .25em .75em;
	height:auto;
	min-height: unset;
	max-height: unset;
	line-height: unset;
    text-transform: uppercase;
}

.dx-card{
    margin-bottom:30px;
	border:1px solid #e5e7eb
}

button.dx-qty-btn, .wc-block-components-quantity-selector>.wc-block-components-quantity-selector__button--plus, .wc-block-components-quantity-selector>.wc-block-components-quantity-selector__button--minus{
	margin:auto;
	opacity:1;
	width: 25px !important;
    height: 25px !important;
}

.woocommerce div.product form.cart button.single_add_to_cart_button, .woocommerce div.product form.cart button[name=add-to-cart]{
	border-radius:10px;
}

.wc-block-components-quantity-selector{
	display:inline-flex;
	overflow:hidden;
	position:unset;
	border-radius:10px;
	border:1px solid #b4b4b4;
}

div.wc-block-add-to-cart-form.wc-block-add-to-cart-form--stepper form.cart div.wc-block-components-quantity-selector.quantity{
	border-radius:10px;
}


.woocommerce-product-attributes.shop_attributes{
	width: 100%;
	border: unset !important;
	border-radius: 10px;
	border-collapse: separate;   /* ważne, by działał radius */
	border-spacing: 0;
	background: #fff;
	overflow:hidden;
	/* opcjonalnie delikatny cień jak na screenie */
	box-shadow: 0 2px 10px rgba(0,0,0,.06);
	/* dla niektórych przeglądarek wymusza zaokrąglenie tabeli */
	-webkit-mask-image: -webkit-radial-gradient(white, black);
	clip-path: inset(0 round 10px);
  }
  
  /* Reset domyślnych stylów Woo (szare tła co drugi wiersz itp.) */
  .woocommerce-product-attributes.shop_attributes tr:nth-child(odd) td,
  .woocommerce-product-attributes.shop_attributes tr:nth-child(odd) th,
  .woocommerce-product-attributes.shop_attributes tr:nth-child(even) td,
  .woocommerce-product-attributes.shop_attributes tr:nth-child(even) th{
	background: #fff;
  }
  
  /* Komórki */
  .woocommerce-product-attributes.shop_attributes th,
  .woocommerce-product-attributes.shop_attributes td{
	padding: 14px 16px !important;
	vertical-align: middle;
	border: 0; /* czyścimy wszystko, rysujemy własne linie niżej */
  }
  
  /* Pogrubiona etykieta + pionowy separator między kolumnami */
  .woocommerce-product-attributes.shop_attributes th{
	font-weight: 700;
	color: #111;
	white-space: nowrap;
	border-right: 1px solid #e6e6e6;
  }
  .woocommerce-product-attributes.shop_attributes tr {
	border:0;
  }

  .woocommerce table.shop_attributes th, .woocommerce table.shop_attributes td{
	border-bottom:0;
  }
  /* Cienka pozioma linia między WIERSZAMI (nie na pierwszym) */
  .woocommerce-product-attributes.shop_attributes tr + tr th,
  .woocommerce-product-attributes.shop_attributes tr + tr td{
	border-top: 1px solid #e6e6e6;
	border-bottom:0;
  }
  
  /* Drobny reset marginesów w środku komórek */
  .woocommerce-product-attributes.shop_attributes td p{
	margin: 0;
  }
  .woocommerce table.shop_attributes{
	border:0;
  }
  .woocommerce table.shop_attributes td{
	font-style:unset;
  }

  .woocommerce table.shop_attributes tr:nth-child(even) td, .woocommerce table.shop_attributes tr:nth-child(even) th{
	background: transparent;
  }

  .attr-box{
	background:#fff;
	border:1px solid #d9d9d9;
	border-radius:10px;
	box-shadow:0 2px 10px rgba(0,0,0,.06);
	margin:12px 0;
	box-shadow: var(--dx-card-shadow);
	overflow:hidden;
  }
  .attr-box table.woocommerce-product-attributes.shop_attributes{
	width:100%;
	margin:0;
	border:0;
	border-radius:0;
	border-collapse:separate;
	border-spacing:0;
	background:transparent;
  }

.woocommerce a.remove{
	background:#000;
	color:#fff !important;
	width:28px;
	height:28px;
	font-weight:500;
	display:flex;
	justify-content: center;
	align-items: center;
}

.woocommerce a.remove:hover{
	background:#515151;
}

.dx-qty input[type="number"]::-webkit-outer-spin-button,
.dx-qty input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.dx-row{
	display:grid;
}

.dx-actions{
	display:flex;
}

.dx-refresh-btn{
    border-radius:10px;
}

.dx-btn, .dx-refresh-btn, .wp-block-post-excerpt__more-link, .banner-actions .cookie-accept{
	color:var(--wp--preset--color--base) !important;
	text-transform: uppercase;
	font-size: var(--wp--preset--font-size--medium);
	background-color: var(--wp--preset--color--contrast) !important;
    padding-top: var(--wp--preset--spacing--20);
    padding-right: var(--wp--preset--spacing--30);
    padding-bottom: var(--wp--preset--spacing--20);
    padding-left: var(--wp--preset--spacing--30);
	padding:15px 20px;
	border:1px solid #000;
}

.wp-block-post-excerpt__more-link{
	text-decoration: none;
	border-radius: 10px;
}

.dx-coupon-input{
	border:1px solid #000;
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
	padding:10px 15px;
	border-right:0;
}

.dx-qty input[type="number"] {
  -moz-appearance: textfield;
  appearance: textfield;
}

 /* ===== KARTA PRODUKTU W KOSZYKU ===== */
 :root{
	--dx-card-radius:16px;
	--dx-card-shadow:0 8px 24px rgba(0,0,0,.06);
	--dx-pill-bg:#f6f7f9;
	--dx-dark:#111;
	--dx-muted:#6b7280;
	--dx-border:#e5e7eb;
	--dx-col-price-w: 16ch;
	--dx-col-subtotal-w: 16ch;
  }
  
  .dx-cart{display:grid;gap:24px;}
  .dx-card{
	position:relative;
	display:grid;
	gap:28px;
	padding:24px;
	border-radius:var(--dx-card-radius);
	background:#fff;
	box-shadow:var(--dx-card-shadow);
	grid-template-columns: 1fr 3fr;
  }
  
  /* X w lewym górnym rogu */
  .dx-remove-wrap{position:absolute;left:10px;top:10px;z-index:5;}
  .dx-remove{
	width:28px;height:28px;display:grid;place-content:center;
	border-radius:8px;border:1px solid var(--dx-border);
	background:#fff;color:var(--dx-dark);text-decoration:none;
	font-size:18px;font-weight:800;line-height:1;
  }
  .dx-remove:hover{background:var(--dx-dark);color:#fff}
  
  /* Miniatura */
  .dx-thumb img{
	width:160px;height:auto;object-fit:contain;border-radius:10px; background-color: transparent !important;
  }
  
  /* Tytuł jak na screenie (pogrubiony + podkreślony link) */
  .dx-title{margin:0 0 10px;}
  .dx-title a{color:inherit}
  
  /* Wiersz z Ilość / Cena / Kwota */
  .dx-row{
	display:grid;
	grid-template-columns: 1fr 180px 200px; /* lewo, cena, kwota */
	gap:24px;align-items:center;
  }
  .dx-label{font-size:16px;color:var(--dx-muted);margin:0 0 8px;}
  .dx-value{font-size:25px;font-weight:600; white-space:nowrap;}
  
  /* ===== Ilość – pigułka z przyciskami +/- i dużą liczbą ===== */
  .dx-qty, div.wc-block-add-to-cart-form.wc-block-add-to-cart-form--stepper form.cart div.wc-block-components-quantity-selector.quantity{
	display:inline-flex;align-items:center;
	padding:0px 16px;
  }

  .wc-block-components-quantity-selector{
	padding:5px 10px;
  }

  .dx-qty-btn, .wc-block-components-quantity-selector>.wc-block-components-quantity-selector__button--plus{
	width:56px;height:56px;border:0;
	background:var(--dx-dark);color:#fff;font-size:20px;font-weight:900;
	display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
  }
  .wc-block-components-product-badge{
	display:none;
  }

  .wc-block-components-button:not(.is-link) .wc-block-components-button__text{
	font-size: var(--wp--preset--font-size--medium);
  }

  .wc-block-components-product-metadata{
	display:none;
  }

  .wc-block-components-button:not(.is-link).is-style-outline, .wc-block-components-button:not(.is-link).outlined, .wc-block-mini-cart__footer .wc-block-mini-cart__footer-actions .wc-block-components-button{
	border-radius: 10px;
	padding-right: var(--wp--preset--spacing--30);
    padding-left: var(--wp--preset--spacing--30);
  }
  
  .dx-qty-btn:active, .wc-block-components-quantity-selector>.wc-block-components-quantity-selector__button--plus:active{transform:translateY(1px)}
  .dx-qty-input, div.wc-block-add-to-cart-form.wc-block-add-to-cart-form--stepper .wc-block-components-quantity-selector input[type=number].input-text.qty.text{
	width:56px;height:48px;border:0;background:transparent;padding:0;
	text-align:center;font-size:25px;font-weight:900;line-height:56px;
	outline:none;appearance:textfield;
  }
  .dx-qty-input::-webkit-outer-spin-button,
  .dx-qty-input::-webkit-inner-spin-button{ -webkit-appearance: none; margin: 0; }
  
  /* Akcje pod listą (kupon/aktualizacja) */
  .dx-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;margin-top:4px}
  .dx-coupon{margin-right:auto;display:flex;}
  .dx-btn{    border-top-right-radius: 10px;
	  border-bottom-right-radius: 10px;
	  border-left:0;
	  background-color: 
 color-mix(in srgb, var(--wp--preset--color--contrast) 100%, transparent);
 cursor:pointer;
  }

  .dx-totals__row--subtotal{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:.35rem;           /* odstęp między etykietą a kwotą */
  }
  
  /* mała, spokojna etykieta */
  .dx-totals__row--subtotal .dx-totals__label{
	font-size:14px;
	line-height:1.25;
	color:var(--dx-muted, #6b7280);
	font-weight:500;
	margin:0;
  }
  
  /* wielka, pogrubiona kwota */
  .dx-totals__row--subtotal .dx-subtotal{
	font-size:30px;
	line-height:1;
	font-weight:600;     /* mocny bold */
	letter-spacing:-0.01em;
	white-space:nowrap;  /* nie łamie 31,10 zł */
	margin:0;
  }
  
  /* WooCommerce drukuje <span class="amount"><bdi>...</bdi></span> */
  .dx-totals__row--subtotal .dx-subtotal .woocommerce-Price-amount{
	display:block;       /* żeby zachowywało się jak blok */
  }

.dx-refresh-btn, .banner-actions .cookie-accept{
	cursor:pointer;
	background-color: 
 color-mix(in srgb, var(--wp--preset--color--contrast) 100%, transparent);
}

  .dx-btn:hover, .dx-refresh-btn:hover, .wp-block-post-excerpt__more-link:hover, .banner-actions .cookie-accept:hover{
	background-color: 
 color-mix(in srgb, var(--wp--preset--color--contrast) 85%, transparent) !important;
 color:#fff !important;
  }
  
  
  .dx-coupon-input{
	  border-right: unset;
  }
  
  .dx-layout{display:grid;gap:28px;grid-template-columns:minmax(0,1fr) 380px}
  .dx-right{min-width:0}
  .dx-summary{
	position:sticky;top:24px;background:#fff;border-radius:16px;padding:24px;
	box-shadow:var(--dx-card-shadow);
  }
  .dx-summary-title{margin:0 0 16px;font-size:22px;font-weight:800}
  .dx-summary-list{margin:0}
  .dx-summary-row{display:flex;justify-content:space-between;gap:24px;padding:10px 0;border-bottom:1px solid #eee}
  .dx-summary-row:last-child{border-bottom:0}
  .dx-summary-row dt{margin:0;color:#444;font-weight:600}
  .dx-summary-row dd{margin:0;font-weight:800;font-size:20px}
  .dx-summary-total dd{font-size:28px;font-weight:900}
  .dx-summary-cta{margin-top:18px;display:flex;flex-direction:column;gap:10px}
  .dx-summary .checkout-button{width:100%;border-radius:12px;font-weight:800;padding:14px 18px}
  
  .dx-pre-neutral {
	all: unset !important;           /* usuwa domyślne style <pre> (monospace, margins, white-space:pre, itd.) */
	display: contents !important;    /* nie tworzy własnego boxa – dzieci stają się dziećmi .dx-qty */
  }
  .dx-col-price .dx-value{
	  font-weight:400;
  }
  
  /* Responsywność */
  @media (max-width:1250px){ .dx-layout{grid-template-columns:1fr} }
  @media (max-width:900px){
	/* .dx-card{grid-template-columns:120px 1fr} */
	.dx-thumb img{width:120px}
	.dx-row{grid-template-columns:1fr;gap:14px}
	.dx-value{font-size:25px}
  }
  
  @media (max-width:720px){
	.visibility-hidden{
		display:none;
	}
	.dx-row{ grid-template-columns: 1fr; gap:14px; }
  }
  @media (min-width:721px){
	.dx-row{ grid-template-columns: 1fr 1fr 1fr; gap:24px; }
  }
  
  /* --- 2) Stepper +/- zawsze w jednej linii, neutralizacja styli motywu --- */
  .dx-qty, div.wc-block-add-to-cart-form.wc-block-add-to-cart-form--stepper form.cart div.wc-block-components-quantity-selector.quantity{ display:flex !important; align-items:center !important; gap:22px; flex-wrap:nowrap;}
  .dx-qty .quantity{ display:inline-block !important; margin:auto !important; }
  .dx-qty .quantity .screen-reader-text{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(1px,1px,1px,1px); }
  .dx-qty .quantity .qty,
  .dx-qty-input, div.wc-block-add-to-cart-form.wc-block-add-to-cart-form--stepper .wc-block-components-quantity-selector input[type=number].input-text.qty.text{
	height:48px !important; line-height:56px !important;
	text-align:center; font-size:25px; font-weight:900; border:0; background:transparent; padding:0;
  }
  
  
  button.dx-qty-btn, .wc-block-components-quantity-selector>.wc-block-components-quantity-selector__button--plus, .wc-block-components-quantity-selector>.wc-block-components-quantity-selector__button--minus{
	display:inline-flex !important; justify-content:center; align-items:center;
	width:25px !important; height:25px !important;
	min-width: 25px; max-width: 25px;
	border:0; background:#000; color:#fff; font-size:20px; font-weight:900; cursor:pointer;border-radius: 999px;
  }
  
  /* --- 3) Miniatury niech nie rozpychają karty --- */
  .dx-thumb img{ max-width:160px; width:100%; height:auto; object-fit:contain; }
  
  .easypack-shipping-method-logo, .easypack-custom-shipping-method-logo{
	display:none;
  }

/* Kontener i odstępy */
.woocommerce-shipping-methods li{
	display:flex;
	align-items:center;
	gap:.6rem;
	margin:.35rem 0;
  }
  .woocommerce ul#shipping_method{
	margin-top:30px;
	padding-top:30px;
	border-top: 1px solid #e5e7eb;
  }
  .woocommerce ul#shipping_method li label{
	display:flex;
  }
  /* Ukryj natywny wygląd, zostaw klikalność przez label */
  .woocommerce-shipping-methods .shipping_method{
	position:absolute;           /* poza flow, ale zostaje w DOM */
	opacity:0;
	width:1px; height:1px;       /* dostępne dla czytników */
  }
  
  /* Pseudoelement jako „radio” przed label */
  .woocommerce-shipping-methods .shipping_method + label{
	display:inline-flex;
	align-items:center;
	gap:.6rem;
	cursor:pointer;
  }
  .woocommerce-shipping-methods .shipping_method + label::before{
	content:"";
	width:18px; 
	min-width:18px;
	max-width:18px;
	height:18px;
	min-height:18px;
	max-height:18px;
	display:block;
	border:2px solid var(--dx-dark, #111);
	border-radius:50%;
	box-shadow: inset 0 0 0 10px transparent;
	transition: box-shadow .2s, border-color .2s, background .2s;
  }
  .shipping-costs{
	padding-bottom:30px;
	margin-bottom:30px;
	border-bottom:1px solid #e5e7eb;
  }
  /* Stan zaznaczony = pełna kropka w środku */
  .woocommerce-shipping-methods .shipping_method:checked + label::before, .woocommerce-shipping-methods input.shipping_method[type="hidden"] + label::before {
	background: var(--dx-dark, #111);
	box-shadow: inset 0 0 0 4px #fff;
	border-color: var(--dx-dark, #111);
  }
  
  /* Fokus z klawiatury (a11y) */
  .woocommerce-shipping-methods .shipping_method:focus-visible + label{
	outline: 2px solid var(--dx-dark, #111);
	outline-offset: 2px;
  }
  
  /* (opcjonalnie) stan disabled */
  .woocommerce-shipping-methods .shipping_method:disabled + label{
	opacity:.5; cursor:not-allowed;
  }
  
  .woocommerce-remove-coupon{
	color: var(--wp--preset--color--accent-1);
	text-decoration:none;
  }

  /* --- 4) Jeżeli prawa kolumna (totals) nic nie wyrenderuje, nie rezerwuj miejsca --- */
  .dx-right:empty{ display:none; }
  .dx-layout{ display:grid; gap:28px; grid-template-columns:minmax(0,1fr) 380px; }
  @media (max-width:1250px){ .dx-layout{ grid-template-columns:1fr; }  }
  .woocommerce-cart main .woocommerce{
	  max-width: 1280px;
  }
  
  .dx-qty > p { display: contents; margin: 0; }
  .dx-qty > p:empty { display: none; }
  .dx-qty .quantity br { display: none; }
  .dx-cart{
	  display:grid;
  }
  
  @media (min-width: 721px){
	.dx-row{
	  grid-template-columns: 1fr var(--dx-col-price-w) var(--dx-col-subtotal-w) !important;
	  align-items: flex-start;
	}
  }
  
  /* Liczby o stałej szerokości + wyrównanie do prawej */
  .dx-col-price .dx-value,
  .dx-col-subtotal .dx-value{
	display: inline-block;
	width: 100%;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;      /* preferowane */
	font-feature-settings: "tnum" 1, "lnum" 1; /* fallback */
  }
  
  /* Upewnij się, że same kwoty nie „popychają” układu */
  .dx-col-price .woocommerce-Price-amount,
  .dx-col-subtotal .woocommerce-Price-amount{
	display: inline-block;
	min-width: 100%;
  }
  
  /* Zachowaj stały wymiar „Ilość”, żeby lewa kolumna też nie pływała */
  .dx-col-qty .dx-qty, div.wc-block-add-to-cart-form.wc-block-add-to-cart-form--stepper form.cart div.wc-block-components-quantity-selector.quantity{
	min-width: 250px;
	max-width: 250px;
  }
  
  /* Na mobile wszystko w jednej kolumnie, ale bez zawijania kwot */
  @media (max-width: 720px){
	.dx-row{ grid-template-columns: 1fr !important; }
	.dx-col-price .dx-value,
	.dx-col-subtotal .dx-value{ text-align: left; } /* opcjonalnie: lewa krawędź na mobile */
  }

@media (min-width:1024px){
	/* .wp-block-navigation .wp-block-page-list, .wp-block-navigation__container, .wp-block-navigation__responsive-close, .wp-block-navigation__responsive-container, .wp-block-navigation__responsive-container-content, .wp-block-navigation__responsive-dialog{
		gap:unset;
	} */

	.cart_totals h2{
		font-size:25px;
		margin:0;
		margin-bottom:35px;
	}

	#modal-1-content > ul.wp-block-navigation__container
	> li.wp-block-navigation-link
	> a.wp-block-navigation-item__content{
		width:120px;
	}
	

	#modal-1-content > ul.wp-block-navigation__container > li + li {
		border-left: 1px solid var(--divider, #eceff3);
	  }

	#modal-1-content .wp-block-navigation-item.has-child {
	  position: relative;
	  flex: 0 0 auto;
	}
  
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle{
	  display:flex;
	  align-items:center;
	  justify-content:space-between;
	  width:120px;
	  min-height:48px;
	  padding:0px;
	  cursor:pointer;
	  background:transparent;
	  border:0;
	  text-align:left;
	  position:relative;
	  outline:none !important;
	  font-weight:600; 
	  box-sizing:border-box;
	}
  
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon{
	  position:absolute;
	  top:50%;
	  right:12px;
	  transform:translateY(-50%);
	  width:24px; height:24px;
	  border:2px solid var(--text, #0f172a);
	  border-radius:50%;
	  display:inline-flex; align-items:center; justify-content:center;
	  pointer-events:none;
	}
	#modal-1-content .wp-block-navigation__submenu-icon svg{
	  width:16px; height:16px;
	  fill:var(--text, #0f172a);
	  transition: transform var(--submenu-speed,.28s) var(--submenu-ease,cubic-bezier(.22,.61,.36,1));
	  transform: rotate(-90deg);
	}
	#modal-1-content .wp-block-navigation-submenu
	> .wp-block-navigation-submenu__toggle[aria-expanded="true"]
	+ .wp-block-navigation__submenu-icon svg{
	  transform: rotate(90deg);
	}
  
	.wc-block-components-quantity-selector>.wc-block-components-quantity-selector__button--plus{
		line-height: 1px;
	}

	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation__submenu-container{
	  position: absolute !important;
	  left: 0; top: 100%;
	  z-index: 10000;
	  display: none !important;        
	  width: auto !important;
	  min-width: 260px;
	  margin: 8px 0 0 !important;
	  padding: 6px 4px !important;
	  box-shadow: 0 8px 24px rgba(0,0,0,.08) !important;
	  border-radius: 10px !important;
	  background: var(--leaf-bg, #fff);
	  overflow: visible;
	  box-sizing: border-box;
	  transform: translateZ(0);          
	}
	#modal-1-content .wp-block-navigation-submenu
	> .wp-block-navigation-submenu__toggle[aria-expanded="true"]
	+ .wp-block-navigation__submenu-icon
	+ .wp-block-navigation__submenu-container{
	  display: block !important;
	}
  
	#modal-1-content .wp-block-navigation__submenu-container
	> .wp-block-navigation-item > .wp-block-navigation-item__content,
	#modal-1-content .wp-block-navigation__submenu-container
	> .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle{
	  display:flex;
	  align-items:center;
	  min-height:42px;
	  padding:8px 14px;
	  border-radius:8px;
	  background:transparent;
	  width:100%;
	  font-weight:600;              
	  border:1px solid transparent;   
	  box-sizing:border-box;
	  white-space:nowrap;
	  outline:none;
	}

	#modal-1-content > ul.wp-block-navigation__container{
		display: flex;              
		flex-wrap: wrap !important;  
		justify-content: flex-start; 
		column-gap: 0;               
		row-gap: 8px;                
	  }
  
	#modal-1-content .wp-block-navigation__submenu-container
	> .wp-block-navigation-item > .wp-block-navigation-item__content:hover,
	#modal-1-content .wp-block-navigation__submenu-container
	> .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle:hover{
	  background: var(--leaf-bg-hover, #f5f7fb);
	}
  
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation__submenu-container > .wp-block-navigation-item,
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation__submenu-container > .wp-block-navigation-submenu{
	  border-top: 1px solid var(--divider, #eceff3);
	}
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation__submenu-container > :first-child{
	  border-top: 0;
	}
  
	#modal-1-content .wp-block-navigation__submenu-container .wp-block-navigation-submenu{
	  position: relative;
	}
  
	#modal-1-content .wp-block-navigation__submenu-container
	.wp-block-navigation-submenu > .wp-block-navigation__submenu-container{
	  position: absolute !important;
	  top: 0;
	  left: calc(100% - 6px);   
	  z-index: 10010;
	  display: none !important;      
	  min-width: 240px;
	  width: auto;
	  margin: 0 !important;
	  padding: 6px 4px !important;
	  background: var(--leaf-bg, #fff);
	  border-radius: 10px !important;
	  box-shadow: 0 8px 24px rgba(0,0,0,.08) !important;
	  box-sizing: border-box;
	  overflow: visible;
	  transform: translateZ(0);
	}
  
	#modal-1-content .wp-block-navigation__submenu-container
	.wp-block-navigation-submenu:hover > .wp-block-navigation__submenu-container,
	#modal-1-content .wp-block-navigation__submenu-container
	.wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle[aria-expanded="true"]
	+ .wp-block-navigation__submenu-icon
	+ .wp-block-navigation__submenu-container{
	  display: block !important;
	}
  
	#modal-1-content .wp-block-navigation__submenu-container
	.wp-block-navigation-submenu > .wp-block-navigation__submenu-container
	> .wp-block-navigation-item > .wp-block-navigation-item__content,
	#modal-1-content .wp-block-navigation__submenu-container
	.wp-block-navigation-submenu > .wp-block-navigation__submenu-container
	> .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle{
	  white-space:nowrap;
	  font-weight:600;
	  border:1px solid transparent;
	  box-sizing:border-box;
	}
	#modal-1-content .wp-block-navigation__submenu-container,
	#modal-1-content .wp-block-navigation__submenu-container * {
	  box-sizing: border-box;
	}
  
	.wp-block-navigation__container 
	> .wp-block-navigation-item.has-child 
	> .wp-block-navigation__submenu-icon {
	display: none !important;
  }
  #modal-1-content > ul.wp-block-navigation__container::before{
    z-index: 0 !important;             
  }
  #modal-1-content > ul.wp-block-navigation__container > li{
    z-index: auto !important;     
  }
  #modal-1-content > ul.wp-block-navigation__container > li:has(> .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle[aria-expanded="true"]){
    z-index: 9998 !important;
    position: relative;              
  }

  #modal-1-content .wp-block-navigation-submenu > .wp-block-navigation__submenu-container{
    z-index: 9999 !important;         
    transform: none !important;     
    overflow: visible !important;
  }
}
  
  @media (max-width: 1024px) {
	.flexible-view{
		justify-content: center;
		text-transform: uppercase;
		gap:15px;
	}
	.wp-block-navigation__responsive-container-open{
	  display: flex !important;
	}
  
	#modal-1-content > ul.wp-block-navigation__container.is-responsive {
	  display:block;
	}
  
	#modal-1 {
	  display: none;
	}
	#modal-1.is-menu-open {
	  display: block;
	}
  }
  
  @media (min-width: 1025px) {
	#modal-1-content > .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content,
	#modal-1-content > .wp-block-navigation__container > .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle {
		justify-content: center;
		padding:0 5px;
	}

	.wp-block-navigation__responsive-container{
	  display: none;
	}
  
	#modal-1-content > ul.wp-block-navigation__container.is-responsive {
	  display: flex !important;
	}
  }
  

  @media (min-width:1024px){
	#modal-1-content > ul.wp-block-navigation__container{
	  --tile: 120px; 
	  --sep: 1px;  
  
	  display:flex;
	  flex-wrap: wrap !important;
	  column-gap: 0;
	  row-gap: 8px;
  
	  position: relative;
	  isolation: auto;      
	  background: none !important; 
	}
  
	.site-header,
	.wp-block-navigation,
	#modal-1,
	#modal-1-content{
	  position: relative;               
	  overflow: visible !important;       
	  z-index: 100;                   
	}

	#modal-1-content > ul.wp-block-navigation__container::before{
	  content:"";
	  position:absolute;
	  inset: 0 var(--sep) var(--sep) 0;
	  pointer-events:none;
	  z-index:0;
  
	  background-image: repeating-linear-gradient(
		to right,
		transparent 0 calc(var(--tile) - var(--sep)),
		var(--divider, #eceff3) calc(var(--tile) - var(--sep)) var(--tile)
	  );
	}
  
	#modal-1-content > ul.wp-block-navigation__container > li{
	  flex: 0 0 var(--tile);
	  box-sizing: border-box;
	  border-left: 0 !important;
	  position: relative;
	  z-index: 1;               
	}
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation__submenu-container {
		inline-size: fit-content !important;  /* szerokość = treść */
		white-space: normal;                  /* pozwól zawijanie */
	  }
	  
  }
  
  /* MOBILE: input 100% szerokości, pod ikoną */
@media (max-width: 782px) {
	.dx-col-qty .dx-qty{
		min-width: 190px;
		max-width:190px;
	}
	/* Formularz to kontener odniesienia */
	form.wp-block-search {

	  width: 100% !important;
	  overflow: visible !important; 
	}
  
	form.wp-block-search .wp-block-search__inside-wrapper {
	  position: static !important;
	}
  
	/* Przycisk nad inputem */
	form.wp-block-search .wp-block-search__button {
	  position: relative;
	  z-index: 2;
	}
  
	/* Tylko gdy input jest pokazany (aria-hidden="false") */
	form.wp-block-search .wp-block-search__input[aria-hidden="false"] {
	  position: absolute !important;
	  /* top: calc(100% + 8px);  */
	  top:113px;
	  left: 0;
	  right: 0;               /* rozciągnij do pełnej szerokości formularza */
	  width: auto !important; /* nie wymuszaj 500px, przebij inline */
	  max-width: none !important;
	  display: block !important;
	  box-sizing: border-box;
	  z-index: 1;
	}
  
	/* Gdy schowany – zostaw ukryty */
	form.wp-block-search .wp-block-search__input[aria-hidden="true"] {
	  position: absolute !important;
	  width: 1px !important;
	  height: 1px !important;
	  padding: 0 !important;
	  margin: -1px !important;
	  overflow: hidden !important;
	  clip: rect(0 0 0 0) !important;
	  white-space: nowrap !important;
	  border: 0 !important;
	}

	.dx-actions {
		display:grid;
		grid-template-columns: 1fr 1fr;
	}
  }
  
 	table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:hover {
		opacity: .6;
	}
  
  .dx-col-subtotal .woocommerce-Price-amount,
.dx-col-subtotal .woocommerce-Price-amount bdi{
  white-space: normal;           /* na wszelki wypadek */
  overflow-wrap: anywhere;       /* ładne łamanie gdzie trzeba */
  word-break: break-word;        /* fallback dla Safari/Edge */
}

.dx-col-price .woocommerce-Price-amount,
.dx-col-price .woocommerce-Price-amount bdi{
  white-space: normal;           /* na wszelki wypadek */
  overflow-wrap: anywhere;       /* ładne łamanie gdzie trzeba */
  word-break: break-word;        /* fallback dla Safari/Edge */
}

.dx-totals__row--total{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:.4rem;
	margin:0 0 1.2rem;
  }
  .dx-totals__row--total .dx-totals__label{
	font-size:14px;
	line-height:1.25;
	color:var(--dx-muted,#6b7280);
	font-weight:500;
	margin:0;
  }
  
  /* wielka, pogrubiona kwota */
  .dx-totals__row--total .dx-total{
	font-size:30px;           /* np. 36–44px */
	line-height:1;
	font-weight:800;
	letter-spacing:-0.01em;
	white-space:nowrap;
	display:flex;
	align-items: center;
  }
  .dx-totals__row--total .dx-total strong{ font-weight:inherit; } /* Woo owija w <strong> */
  .dx-totals__row--total .dx-total .woocommerce-Price-amount{
	display:inline-block;
  }
  
  /* „(zawiera … VAT)” małe i szare, po prawej kwoty */
  .dx-totals__row--total .dx-total .includes_tax{
	font-size:16px;
	font-weight:500;
	color:var(--dx-muted,#6b7280);
	margin-left:.6rem;
	white-space:nowrap;
  }
  
  /* Responsywka */
  @media (max-width:480px){
	.dx-totals__row--total .dx-total{ font-size:30px; }
  }
  
  /* Styl przycisku „ZAPŁAĆ/Przejdź do płatności” pod sumą */
  .wc-proceed-to-checkout .checkout-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:14px 22px;
	border-radius:14px;
	background:#000;
	color:#fff;
	text-transform:uppercase;
	font-weight:700;
	letter-spacing:0.02em;
  }

  .woocommerce-cart .wc-proceed-to-checkout a.checkout-button, .shipping-calculator-form button{
	display:inline-flex;
	padding: 15px 20px;
	font-size:14px;
	border-radius:10px;
	font-size: var(--wp--preset--font-size--medium);
	}
  
  .woocommerce div.product form.cart .variations th{
	display:none;
  }

  .lista-atrybutow {
	display: flex;
	/* grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); */
	gap: 10px; /* odstęp między nimi */
	flex-wrap:wrap;
  }
  
  /* Sam przycisk */
  .przycisk-atrybutu {
	display: flex;
	/* flex-direction: column; */
	align-items: center;
	justify-content: center;
  
	min-height: 35px;        /* ta sama wysokość */
	width: auto;             /* dopasowanie do siatki */
	/* padding: 6px 8px; */
  
	font-size: 14px;
	line-height: 1.3;
	text-align: center;
  
	border: 1px solid #ccc;
	border-radius: 6px;
	background: #fff;
	cursor: pointer;
	transition: all 0.2s ease;
  }
  
  /* Aktywny / zaznaczony */
  .przycisk-atrybutu.is-selected {
	border-color: #111;
	background: #f5f5f5;
	font-weight: 600;
  }

.woocommerce.wc-block-catalog-sorting select.orderby{
	border-radius:4px;
    border: 1px solid #8c8f94;
    background-color: #fff;
    color: #2c3338;
}

 /* Kontekst do absolutnego pozycjonowania */
.wc-block-cart-items__row,
.wc-block-mini-cart-items__row { position: relative; }

/* Przycisk w lewym górnym rogu – BEZ borderu na samym buttonie */
button.wc-block-cart-item__remove-link,
button.wc-block-mini-cart-items__remove-from-cart,
button.wc-block-mini-cart__remove-item,
button.wc-block-cart-item__remove-button {
  position: absolute !important;
  top: 8px; left: 8px;
  width: 28px !important; height: 28px !important;
  padding: 0 !important; margin: 0 !important;
  background: #000 !important;
  border: 0 !important;              /* ważne: zero borderu na buttonie */
  display: inline-flex !important;
  align-items: center; justify-content: center;
  line-height: 0 !important;
  z-index: 10;
  /* ukryj widoczny tekst */
  font-size: 0 !important;
  border-radius:99999px !important;
  text-indent: -9999em !important;
  color: inherit;
  overflow: hidden !important;
  white-space: nowrap !important;
}

/* Kółko rysujemy na ::before (nie na buttonie) – nie zlewa się z granicami tabeli */
button.wc-block-cart-item__remove-link::before,
button.wc-block-mini-cart-items__remove-from-cart::before,
button.wc-block-mini-cart__remove-item::before,
button.wc-block-cart-item__remove-button::before {
  content: "";
  position: absolute;
  inset: 0;                           /* wypełnia przycisk 28x28 */
  color:#fff;
  border-radius: 9999px;
  pointer-events: none;               /* klik trafia w button */
}

/* Ikona X na ::after */
button.wc-block-cart-item__remove-link::after,
button.wc-block-mini-cart-items__remove-from-cart::after,
button.wc-block-mini-cart__remove-item::after,
button.wc-block-cart-item__remove-button::after {
  content: "";
  width: 14px; height: 14px;
  background: #fff;
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M6 6l12 12M18 6L6 18" stroke="black" stroke-width="2" stroke-linecap="round" fill="none"/></svg>') no-repeat center / contain;
          mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M6 6l12 12M18 6L6 18" stroke="black" stroke-width="2" stroke-linecap="round" fill="none"/></svg>') no-repeat center / contain;
}

.is-mobile table.wc-block-cart-items .wc-block-cart-items__row{
	padding:16px;
	box-shadow: var(--dx-card-shadow);
	border-radius: var(--dx-card-radius);
	margin-bottom:10px;
}

/* Hover/focus */
button.wc-block-cart-item__remove-link:hover,
button.wc-block-mini-cart-items__remove-from-cart:hover,
button.wc-block-mini-cart__remove-item:hover,
button.wc-block-cart-item__remove-button:hover,
button.wc-block-cart-item__remove-link:focus,
button.wc-block-mini-cart-items__remove-from-cart:focus,
button.wc-block-mini-cart__remove-item:focus,
button.wc-block-cart-item__remove-button:focus {
  background: rgba(0,0,0,0.06);
  outline: none;
}

/* RTL (opcjonalnie) */
[dir="rtl"] button.wc-block-cart-item__remove-link,
[dir="rtl"] button.wc-block-mini-cart-items__remove-from-cart,
[dir="rtl"] button.wc-block-mini-cart__remove-item,
[dir="rtl"] button.wc-block-cart-item__remove-button { left: auto; right: 8px; }





/* 1) Mini-cart table: bez kolapsu i separatorów */
.wp-block-woocommerce-mini-cart-products-table-block table.wc-block-mini-cart-items {
  border-collapse: separate !important;
  border-spacing: 0 !important;           /* zabija -webkit-border-horizontal-spacing */
  border: 0 !important;
  box-shadow: none !important;
}

/* 2) Wyłącz wszystkie borders/shadows w obrębie mini-karty */
.wp-block-woocommerce-mini-cart-products-table-block table.wc-block-mini-cart-items,
.wp-block-woocommerce-mini-cart-products-table-block table.wc-block-mini-cart-items * {
  /* border: 0 !important; */
  /* box-shadow: none !important;        */
  outline: 0 !important;
}

/* 3) Wiersz jako kapsuła z promieniem — tło i „border” rysujemy na ::before */
.wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-items__row {
  position: relative;                      /* kontekst dla ::before */
}

/* pseudo-tło pod całym wierszem, z promieniem */
.wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-items__row::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 16px;                      /* ← TU zmieniasz promień (np. 24px/32px/99px) */
  background: #fff;                         /* kolor tła wiersza (dopasuj do motywu) */
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.12); /* cienki „border” zamiast borderu */
  z-index: 0;
  pointer-events: none;
}

/* komórki nad pseudo-tłem (i bez własnych teł/borderów) */
.wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-items__row > td {
  position: relative;
  z-index: 1;
  background: transparent !important;       /* żeby było widać ::before z promieniem */
}

/* 4) Przycisk X (jak wcześniej) — bez borderów, tylko maska i box-shadow na pseudo */
.wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-items__row { position: relative; }
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-cart-item__remove-link,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-mini-cart-items__remove-from-cart,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-mini-cart__remove-item,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-cart-item__remove-button {
  position: absolute !important;
  top: 8px; left: 8px;
  width: 28px; height: 28px;
  padding: 0 !important; margin: 0 !important;
  background: #000 !important;
  border: 0 !important;                     /* żadnych borderów, by nic nie „przeciekało” */
  display: inline-flex !important;
  align-items: center; justify-content: center;
  line-height: 0 !important;
  z-index: 2;                                /* nad wierszowym ::before */
  font-size: 0 !important; text-indent: -9999em !important; white-space: nowrap !important;
}

/* kółko – obrys tylko jako cień wewnętrzny */
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-cart-item__remove-link::before,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-cart-item__remove-button::before,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-mini-cart-items__remove-from-cart::before,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-mini-cart__remove-item::before {
  content: ""; position: absolute; inset: 0;
  border-radius: 9999px;
  box-shadow: inset 0 0 0 1px #6b7280;
  pointer-events: none;
}

/* ikona X */
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-cart-item__remove-link::after,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-cart-item__remove-button::after,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-mini-cart-items__remove-from-cart::after,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-mini-cart__remove-item::after {
  content: ""; width: 14px; height: 14px; display: block;
  background: #fff !important;
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M6 6l12 12M18 6L6 18" stroke="black" stroke-width="2" stroke-linecap="round" fill="none"/></svg>') no-repeat center / contain;
          mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M6 6l12 12M18 6L6 18" stroke="black" stroke-width="2" stroke-linecap="round" fill="none"/></svg>') no-repeat center / contain;
}

/* hover */
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-cart-item__remove-link:hover,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-cart-item__remove-button:hover,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-mini-cart-items__remove-from-cart:hover,
.wp-block-woocommerce-mini-cart-products-table-block button.wc-block-mini-cart__remove-item:hover {
  background: rgba(0,0,0,0.06);
}





.wp-block-woocommerce-mini-cart-products-table-block table.wc-block-mini-cart-items{
	border-collapse: separate !important;
	border-spacing: 0 !important;
  }
  
  /* 1) ZGAŚ WSZYSTKIE obramowania/cienie w jednym wierszu i jego dzieciach */
  .wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-items__row,
  .wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-items__row *{
	/* border: 0 !important; */
	/* box-shadow: none !important; */
	outline: 0 !important;
	background-image: none !important; /* czasem separator jest gradientem */
  }
  
  /* 2) …oraz na pseudo-elementach (częsty winowajca) */
  .wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-items__row *::before,
  .wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-items__row *::after
  {
	/* content: none !important; */
	border: 0 !important;
	/* box-shadow: none !important; */
	outline: 0 !important;
	background: none !important;
  }


  
  /* 3) Jeśli „ramka” siedzi konkretnie na produkcie/wrapie – dobij selektorami: */
  /* .wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-item__product,
  .wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-item__product::before,
  .wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-item__wrap,
  .wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-item__wrap::before{
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
  }
   */


   /* Wiersz daje kontekst pozycjonowania */
.wp-block-woocommerce-mini-cart-products-table-block .wc-block-cart-items__row {
	position: relative;
  }
  
  /* Wyłącz pozycjonowanie na pośrednich kontenerach,
	 żeby nie przechwytywały absolute */
  .wp-block-woocommerce-mini-cart-products-table-block 
  .wc-block-cart-items__row .wc-block-cart-item__product,
  .wp-block-woocommerce-mini-cart-products-table-block 
  .wc-block-cart-items__row .wc-block-cart-item__wrap,
  .wp-block-woocommerce-mini-cart-products-table-block 
  .wc-block-cart-items__row .wc-block-cart-item__quantity,
  .wp-block-woocommerce-mini-cart-products-table-block 
  .wc-block-cart-items__row .wc-block-components-quantity-selector {
	position: static !important; /* kluczowe */
  }
  
  /* Teraz X liczy się od całego wiersza */
  .wp-block-woocommerce-mini-cart-products-table-block 
  button.wc-block-cart-item__remove-link,
  .wp-block-woocommerce-mini-cart-products-table-block 
  button.wc-block-mini-cart__remove-item,
  .wp-block-woocommerce-mini-cart-products-table-block 
  button.wc-block-cart-item__remove-button,
  .wp-block-woocommerce-mini-cart-products-table-block 
  button.wc-block-mini-cart-items__remove-from-cart {
	position: absolute !important;
	top: 8px; 
	left: 8px;
	z-index: 2; /* nad ::before wiersza */
  }

  

  .wp-site-blocks > header .wp-block-group.alignfull:first-child{
	position: relative;
	overflow: visible; /* ważne gdyby coś przycinało */
	z-index: 20;
  }
  .wp-site-blocks > header .wp-block-search:has(.wp-block-search__button[aria-expanded="true"]) .wp-block-search__inside-wrapper{
	/* position: absolute; */
	left: 0; right: 0;   /* pełna szerokość alignfull */
	top: 100%;           /* tuż POD belką */
	/* display: flex;
	gap: .5rem;
	padding: .75rem var(--wp--preset--spacing--40);
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	box-shadow: 0 8px 24px rgba(0,0,0,.08); */
  }
  
.wp-block-group.woocommerce.product::after,
.wp-block-group.woocommerce.product :where(:not(.woocommerce-product-gallery__trigger, .woocommerce-product-gallery__trigger *))::after {
  box-shadow: none !important;
  content: none !important;
}
.reset_variations{
	display:none;
}

.woocommerce div.product form.cart .variations{
	margin-bottom:0;
}

.product-additional-info-section{
	padding-top: var(--wp--preset--spacing--50);
    padding-bottom: var(--wp--preset--spacing--50);
}

  /* Input na 100% szerokości w tym dropdownie */
  .wp-site-blocks > header .wp-block-search__inside-wrapper .wp-block-search__input{
	width: 100%;
  }


  /* ——— LOGIKA POKAZ/UKRYJ BEZ :has() ——— */

  .wp-site-blocks > header .wp-block-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper{
	display: flex;
  }
  
  /* ——— MOBILE: pełna szerokość, ponad overlayem ——— */
  @media (max-width: 782px){

	.wp-block-search.wp-block-search__button-only .wp-block-search__button{
		padding:.5em !important;
	}

/* Zero odstępów tylko dla tego rzędu ikon */
.header-icons {
  /* wyłącza Gutenbergowy block-gap */
  --wp--style--block-gap: 0;
  gap: 0 !important;
  column-gap: 0 !important;
  row-gap: 0 !important;
}

/* Na wszelki wypadek – usuń marginesy, które wtyczki lub bloki potrafią dodać */
.header-icons > * {
  margin: 0 !important;
}

/* Blok szukajki (wariant "button-only") potrafi dokleić margines przyciskowi */
.header-icons .wp-block-search__button {
  margin: 0 !important;
}

/* Ikona konta/koszyka – też bez marginesów wokół wrapperów */
.header-icons .wp-block-woocommerce-customer-account,
.header-icons .wp-block-woocommerce-mini-cart {
  margin: 0 !important;
}

/* Drobna kosmetyka: pionowe wyrównanie ikon SVG w linii */
.header-icons svg {
  vertical-align: middle;
}


	/* 0) Header bez relative na mobile (zostawiasz relative tylko na desktopie) */
	.wp-site-blocks > header .wp-block-group.alignfull:first-child{
	  position: static;   /* było: relative */
	  overflow: visible;
	}
  
	/* 1) Logika show/hide bez :has() */
	.wp-site-blocks > header .wp-block-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper{ display:block; }
  
	/* 2) Rozwijany pasek POD belką, na 100vw */
	/* .wp-block-search:not(.wp-block-search__searchfield-hidden) {
	  position: fixed;
	  left: 0; right: 0;
	  top: var(--f-header-h, 64px);
	  width: 100vw;
	  z-index: 100002;
	  padding: 12px 16px;
	  background: #fff;
	  border: 1px solid #e5e7eb;
	  border-radius: 12px;
	  box-shadow: 0 8px 24px rgba(0,0,0,.08);
	} */
  
	/* 3) Input na pełną szerokość + miejsce na ikonę */
	.wp-site-blocks > header 
	.wp-block-search:not(.wp-block-search__searchfield-hidden) 
	.wp-block-search__input{
	  display:block;
	  width:100%;
	  height:42px;
	  line-height:42px;
	  padding-right:48px; /* miejsce na ikonę */
	}
  
	/* 4) Ta sama ikona – bez „pigułki”, absolutnie w pasku po prawej */
/* 3) Sam przycisk-ikona: w środku inputa po prawej, bez „pigułki” */
	.wp-site-blocks > header 
	.wp-block-search.wp-block-search__icon-button:not(.wp-block-search__searchfield-hidden) 
	.wp-block-search__button{
	position: absolute;
	/* top: 133%; */
	top: 135px;
	right: 32px;                /* odległość od prawej krawędzi inputa */
	transform: translateY(-50%);
	width: 32px; height: 32px;
	padding: 0;                 /* zero, żeby nie rozpychało */
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;/* usuwa „pigułkę” */
	}

  
	/* 5) Overlay menu mobilnego nie może przykrywać paska szukania */
	.wp-block-navigation__responsive-container{ z-index: 100000; }

	  /* (opcjonalnie) dopilnuj, że header nie ucina absolutów */
	  .wp-site-blocks > header .wp-block-group.alignfull:first-child{
		position: relative;
		overflow: visible;
	  }
	  
	
	  
	  .wp-site-blocks > header 
	.wp-block-search:not(.wp-block-search__searchfield-hidden) 
	.wp-block-search__inside-wrapper{
	  position: relative;   /* KLUCZ: pozycjonowanie przycisku względem wrappera */
	  display: block;       /* może być też flex; block jest najprostszy */
	}
	
	/* 2) Input: pełna szerokość + miejsce na ikonę po prawej */
	.wp-site-blocks > header 
	.wp-block-search:not(.wp-block-search__searchfield-hidden) 
	.wp-block-search__input{
	  width: 100%;
	  height: 44px;               /* dopasuj do designu */
	  line-height: 44px;
	  padding-right: 48px;        /* rezerwacja miejsca na ikonę */
	  margin: 0 25px;}
	
	
  }

  .wc-block-components-button{
	text-transform: uppercase;
  }

  @media (min-width: 783px){
  .wp-site-blocks > header 
  .wp-block-search:not(.wp-block-search__searchfield-hidden){
    position: absolute;
    left: 0; right: 0;
    top: 160px;;
    width: 15%;
	margin-left:auto;
	margin-right:2%;
    z-index: 100002;
    padding: 12px 16px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0,0,0,.08);
  }

  /* input pełna szerokość + miejsce na ikonę */
  .wp-site-blocks > header 
  .wp-block-search:not(.wp-block-search__searchfield-hidden) 
  .wp-block-search__input{
    width: 100%;
    height: 44px;
    line-height: 44px;
    padding-right: 48px;
    margin: 0;
  }

  /* ikona w środku inputa */
  .wp-site-blocks > header 
  .wp-block-search.wp-block-search__icon-button:not(.wp-block-search__searchfield-hidden) 
  .wp-block-search__button{
    position: absolute;
    /* top: 50%; */
	top:34px;
    right: 22px;
    transform: translateY(-50%);
    width: 32px; height: 32px;
    padding: 0;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }
}

button[aria-expanded="true"] .search-icon {
	background: #000;
    color: #fff;
	padding:10px;
	border-top-right-radius: 38px;
    border-bottom-right-radius: 38px;
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row, .is-mobile table.wc-block-cart-items .wc-block-cart-items__row, .is-small table.wc-block-cart-items .wc-block-cart-items__row{
	grid-template-columns: 130px 132px;
}

@media (min-width: 1300px){
	.wp-site-blocks > header 
	.wp-block-search:not(.wp-block-search__searchfield-hidden){
	  top: 140px;;
	}
}


/* 7) Na węższych ekranach zmniejsz układ karty i wiersza */
@media (max-width: 900px){
  .dx-card{ 
	/* grid-template-columns: 1fr !important;  */
	    display: flex
;
    flex-wrap: wrap;
}
.dx-media{
	flex: calc(30% - 20px);
}

.dx-content{
	flex: calc(50% - 20px);
}

.dx-col-qty .dx-qty, div.wc-block-add-to-cart-form.wc-block-add-to-cart-form--stepper form.cart div.wc-block-components-quantity-selector.quantity{
	min-width: unset;

}

}

.display-desktop{
	display:block !important;
}

.display-mobile{
	display:none !important;
}

@media (max-width: 780px) {
  .grid-2-mobile{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  .grid-2-mobile > .wp-block-column{ margin: 0 !important; }
  .grid-2-mobile .wp-block-image{ margin: 0 0 .5rem; }

.display-desktop{
	display:none !important;
}	

.display-mobile{
	display:block !important;
}
}

@media (max-width:400px){
	.wp-site-blocks > header .wp-block-search.wp-block-search__icon-button:not(.wp-block-search__searchfield-hidden) .wp-block-search__button{
		        top: calc(123% + 6px);
	}
}

@media (max-width:600px){
.wc-block-product-template__responsive.columns-3{
	grid-template-columns: 1fr 1fr;
}


.wc-block-product-filters__open-overlay{
  --pf-text: #0f1a2b; 
  --pf-border: #e6edf5;        
  --pf-hover-bg: #0f1a2b;        
  --pf-hover-text: #fff;
        padding-bottom: 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: .75rem 0;
  background: transparent;
  border: 0;
  color: var(--pf-text);
  font-weight: 700;
  font-size: 18px;
  line-height: 1.2;
  /* border-bottom: 1px solid var(--pf-border); */
  position: relative;
  cursor:pointer;
}

.wc-block-product-filters__open-overlay > svg{ display:none !important; }

.wc-block-product-filters__open-overlay span{
  margin-left: 0;
  padding-left:0;
}


.wc-block-product-filters__open-overlay::after{
  content:"";
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 999px;
  border: 2px solid var(--pf-text);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 12px;
  /* chevron ▶ w SVG jako tło 
 background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M1.50002 4L6.00002 8L10.5 4' stroke='%23000000' stroke-width='1.5'/%3E%3C/svg%3E");
 */ 
  background-image: url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'>\
    <path d='M4.2 2.5L8 6l-3.8 3.5' stroke='%230f1a2b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/>\
  </svg>");
}

/* .wc-block-product-filters__open-overlay:hover::after,
.wc-block-product-filters__open-overlay:focus-visible::after{
  background-color: var(--pf-hover-bg);
  border-color: var(--pf-hover-bg);
  background-image: url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'>\
    <path d='M4.2 2.5L8 6l-3.8 3.5' stroke='%23ffffff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/>\
  </svg>");
} */

.wc-block-product-filters__open-overlay::after {
  content: "";
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 18px 18px;

  color: var(--text, #0f1a2b);

  transform: rotate(-90deg);
  transition: transform var(--submenu-speed, .25s) var(--submenu-ease, ease);

   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 4 L9.5 4 L6 8 Z' fill='currentColor'/%3E%3C/svg%3E");
}

/* ciemny motyw (jeśli używasz) */

/* drobne: usuń marginesy wokół całego bloku filtrów, jeżeli potrzeba */
.wp-block-woocommerce-product-filters.wc-block-product-filters{
  gap: 0 !important;
}

}

@media (max-width: 720px){
  .dx-row{ grid-template-columns: 1fr !important; gap:14px !important; }
  .dx-col-qty .dx-qty{
	width:auto !important;
  }
  /* 1) Pozwól cenie/kwocie się łamać */
.dx-col-price .dx-value,
.dx-col-subtotal .dx-value{
  white-space: normal !important;   /* nadpisuje .dx-value { white-space:nowrap } */
}

/* 2) Jeśli trzeba, rozłam cyfry w środku tokenu (bo Woo daje &nbsp;) */
.dx-col-price .woocommerce-Price-amount bdi,
.dx-col-subtotal .woocommerce-Price-amount bdi{
  word-break: break-all;            /* awaryjnie dzieli „216&nbsp;024,00 zł” */
  overflow-wrap: anywhere;
}

/* 3) Zgaś rozpychanie przez min-width w gridzie */
.dx-card, .dx-card * { min-width: 0 !important; }
.dx-row, .dx-col { min-width: 0 !important; }

/* 4) Stepper ilości nie może mieć sztywnego 250px */
.dx-col-qty .dx-qty{
  min-width: 0 !important;
  max-width: 100% !important;
  width: auto !important;
}

/* 5) Obrazek nigdy poza kolumnę */
.dx-media, .dx-thumb{ min-width: 0 !important; }
.dx-media img, .dx-thumb img{
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain;
}

/* 6) Upewnij się, że karta nie „pływa” w gridzie rodzica */
.dx-cart{ justify-items: stretch; }
.dx-card{
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}


/* 1) Daj .dx-cart JEDNĄ, kurczliwą kolumnę */
.dx-cart{
	display: grid;
	grid-template-columns: minmax(0, 1fr);  /* klucz: pozwala się kurczyć */
	justify-items: stretch;
	gap: 0;
  }
  
  /* 2) Po drodze NIC nie może blokować kurczenia się treści */
  .dx-left{ min-width: 0; }      /* kolumna z kartami */
  .dx-card,
  .dx-content,
  .dx-row{ min-width: 0; }       /* dzieci karty */
  
  /* 3) Ceny/kwoty nie mogą wymuszać szerokości */
  .dx-col-price .dx-value,
  .dx-col-subtotal .dx-value{ white-space: normal !important; }
  
  .dx-col-price .woocommerce-Price-amount bdi,
  .dx-col-subtotal .woocommerce-Price-amount bdi{
	overflow-wrap: anywhere;
	word-break: break-word;
  }
}
  /* (opcjonalnie) twarde 250px przy ilości luzujemy na węższych ekranach */
  @media (max-width: 900px){
	.dx-col-qty .dx-qty{ min-width: 0 !important; max-width: 100% !important; }
  }
  

  
  /* ——— Mobile: masz grid 1fr 1fr, więc każ .dx-coupon zająć CAŁY wiersz ——— */
  @media (max-width: 782px){
	.dx-qty{
		gap:0;
	}
	.woocommerce .quantity .qty{
		width:56px;
	}
	.dx-actions{
	  display: grid;
	  grid-template-columns: 1fr;    /* jeden tor = pełna szerokość */
	  gap: 12px;
	}
	.dx-coupon{
	  grid-column: 1 / -1;           /* na wszelki wypadek: pełny rząd */
	  width: 100%;
	  flex-wrap:wrap;
	}

.dx-coupon-input{
	border-radius:10px;
	border-right:1px solid;
}

.woocommerce .quantity .qty {
line-height: 2.2;
}

	.dx-btn{               /* przycisk "Wykorzystaj kupon" */
		flex: 0 0 auto;      /* tylko tyle miejsca, ile potrzebuje */
		width: 100%;
		border-radius:10px;
		margin-top:12px;
	  }
	  
	  /* drugi przycisk po prawej */
	  .dx-refresh-btn{
		margin-left: auto;   /* wypchnij na prawą krawędź */
	  }
	.dx-coupon-input{ width: 100%; }
	.dx-refresh-btn{ width: 100%; }  /* jeśli chcesz też pełną szerokość */

  /* Header row */
  .wp-site-blocks > header .wp-block-group.alignwide {
	display: flex;
	align-items: center;
  }
  
}

@media (max-width: 1028px){
	  /* Hamburger (nav) zawsze jako ostatni i doklejony do prawej */
  .wp-site-blocks > header .wp-block-group.alignwide > nav.wp-block-navigation {
	order: 99;          /* przenosi nav na koniec wiersza */
	margin-left: auto;  /* dociśnięcie do prawej krawędzi */
	flex: 0 0 auto;
  }
  
  /* (opcjonalnie) Logo najpierw */
  .wp-site-blocks > header .wp-block-group.alignwide > .wp-block-site-logo { 
	order: 1; 
  }
  
  /* (opcjonalnie) Grupa z wyszukiwarką/kontem/koszykiem po środku */
  .wp-site-blocks > header .wp-block-group.alignwide > .wp-block-group.wp-block-group-is-layout-flex {
	order: 2;
  }
    
  	/* 1) Wyłącz space-between i globalny GAP na rzędzie nagłówka */
	.wp-site-blocks > header .wp-block-group.alignwide{
	  display:flex;
	  align-items:center;
	  justify-content:flex-start;    /* zamiast space-between */
	  gap:0 !important;              /* usuwa block-gap */
	  --wp--style--block-gap: 0;     /* na wszelki wypadek, bo GB wstrzykuje gap */
	}
  
	/* 2) Kolejność: logo (1) | ikony (98) | hamburger (99) */
	.wp-site-blocks > header .wp-block-group.alignwide > .wp-block-site-logo{
	  order:1;
	}
  
	/* Grupa: wyszukiwarka + konto + koszyk — idzie przed hamburgerem i pcha "pakiet" na prawo */
	.wp-site-blocks > header .wp-block-group.alignwide > .wp-block-group.wp-block-group-is-layout-flex{
	  order:98;
	  margin-right:10px;
	  margin-left:auto;              /* dopycha prawy pakiet do krawędzi */
	  flex:0 1 auto;
	}
  
	/* Hamburger na samym końcu, bez dodatkowego lewego marginesu (czyli bez gapu) */
	.wp-site-blocks > header .wp-block-group.alignwide > nav.wp-block-navigation{
	  order:99;
	  margin-left:0 !important;      /* kasuje auto-marginy z klas typu items-justified-right */
	  flex:0 0 auto;
	}
  
	/* (opcjonalnie) jeśli chcesz minimalny odstęp między ikonami a hamburgerem, odkomentuj: */
	/* .wp-site-blocks > header .wp-block-group.alignwide > nav.wp-block-navigation{ margin-left:8px !important; } */
}



.wp-block-search.wp-block-search__button-only .wp-block-search__input{
	transition-duration: unset;
}

:root{
  --cols-gap: 50px;                 /* przerwa między kolumnami */
  --edge-pad: calc(var(--cols-gap)/2); /* padding na brzegach: 25px */
  --sep-color: #fff;                /* kolor separatora */
  --heading-h: 50px;                /* wysokość paska nagłówka */
  --sep-short: 50px;                /* wysokość krótkiej linii separatora */
}

/* Kontener kolumn – odstęp między kolumnami */
.footer-cols.wp-block-columns {
  gap: var(--cols-gap);
}

/* Domyślnie: zero paddingów w kolumnach */
.footer-cols.wp-block-columns > .wp-block-column {
  padding: 0;
  box-sizing: border-box;
}

.wp-block-post-excerpt__more-link{
	font-weight:700;
}

/* Tylko pierwsza i ostatnia kolumna mają padding brzegowy */
@media (min-width: 782px) {
.footer-cols .heading-line-right, .footer-cols .heading-line-none{
	justify-content: center;
}

  /* Krótki separator między kolumnami */
  .footer-cols.wp-block-columns > .wp-block-column + .wp-block-column {
    position: relative;
  }
  .footer-cols.wp-block-columns > .wp-block-column + .wp-block-column::before {
    content: "";
    position: absolute;
    left: calc(-1 * var(--cols-gap) / 2); /* w połowie przerwy między kolumnami */
    top: 0;                               /* start równo z nagłówkiem */
    width: 1px;
    height: var(--sep-short);             /* krótka linia 50px */
    background: var(--sep-color);
  }
}

/* Mobile: kolumny pod sobą – bez gapu, separatorów i paddingów */
@media (max-width: 781.98px) {
  .footer-cols.wp-block-columns { gap: 0; }
  .footer-cols.wp-block-columns > .wp-block-column {
    padding: 0 !important;
  }
  .footer-cols.wp-block-columns > .wp-block-column::before {
    display: none !important;
  }
}

/* Nagłówki: 50px wysokości, wyśrodkowane góra–dół */
.footer-cols .heading-line-right,
.footer-cols .heading-line-none {
  height: var(--heading-h);
  display: flex;
  align-items: center;   /* pionowe wyśrodkowanie */
  margin: 0;
  font-weight: 700;
  font-style: normal;
}

/* (opcjonalnie) gdybyś chciał linię przy samym nagłówku:
.footer-cols .heading-line-right { border-right: 1px solid var(--sep-color); }
*/
@media (min-width:1028px){
	#modal-1-content .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle, #modal-1-content > .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content{
		/* font-weight: 500 !important; */
	}
}




.woocommerce div.product div.images .woocommerce-product-gallery__trigger{
	z-index:1;
}


/* .single-product main *::after {
  content: none !important;
  background: none !important;
} */

.owl-nav{
	top:30%;
	width:100%;
	position:absolute;
	justify-content:space-between;
	display:flex;
}
.owl-carousel.owl-loaded{ position:relative; }
.owl-nav{
  top:30%;
  width:100%;
  position:absolute;
  display:flex;
  justify-content:space-between;
}

@media (max-width:700px){
	.owl-nav{
		width:140%;
		left:-20%;
	}
}

.owl-prev-icon,.owl-next-icon{ font-size:35px; font-weight:600; }
.stars{ display:flex; justify-content: center; }

/* karuzela na pełną szerokość */

.reviews {
  width: min(70%, 1100px);   /* 70% ale nie więcej niż 1100px */
  margin: 0 auto;            /* wyśrodkuj całą karuzelę */
}

@media (max-width: 640px) {
  .review p {
    display: -webkit-box;
    -webkit-line-clamp: 10;   /* 👈 10 linii */
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  /* żeby emoji-obrazy nie rozpychały linii */
  .review p img.emoji {
    height: 1em;
    width: 1em;
    vertical-align: -0.15em;
  }
}

.review-author{
	font-weight: 600;
    font-size: 14px;
}

.reviews .owl-stage-outer { width:100%; margin:0 auto; text-align: center;}

/* 1 slajd = 100% kontenera; treść slajdu zwężona i WYŚRODKOWANA */
.reviews .review{
  max-width: clamp(400px, 70%, 1100px); /* ~70% szerokości sekcji */
  margin: 0 auto;                       /* centrowanie treści slajdu */
  box-sizing: border-box;
  padding: 16px;
}

/* nie zmieniaj mechaniki Owl-a (na wszelki wypadek przywracamy) */
.reviews .owl-stage { display:block !important; }
.reviews .owl-item  { float:left !important; }

/* gwiazdki */
.owl-carousel .owl-item img{
  width:30px; height:30px; aspect-ratio:1/1;
}
.reviews .owl-item {
    margin-right: 8.7px !important;
}

.review hr{
	width:15%;
	background: #07940c;
	border:none;
	height:2px;
}

.verified-tip{position:relative;display:inline-flex;align-items:center}
.verified-tip::after{
  content: attr(data-tip);
  position:absolute; left:50%; bottom:100%;
  transform: translateX(-50%) translateY(-8px);
  white-space:nowrap; padding:6px 8px; font-size:12px;
  background:#0f1a2b; color:#fff; border-radius:6px;
  opacity:0; pointer-events:none; transition:opacity .15s, transform .15s;
}
.verified-tip::before{
  content:""; position:absolute; left:50%; bottom:100%;
  transform: translateX(-50%) translateY(-2px);
  border:6px solid transparent; border-top-color:#0f1a2b;
  opacity:0; transition:opacity .15s, transform .15s;
}
.verified-tip:hover::after,
.verified-tip:hover::before{
  opacity:1; transform: translateX(-50%) translateY(-4px);
}






.wc-block-checkout__form .wc-step{
  border-bottom: 1px solid #000;
  border-radius: 0;
}

.wc-block-checkout__form .wc-step.is-last{
  border-bottom: 0;
}

.wc-block-components-checkout-step{
  display: block !important;
  margin: 0 0 18px 0;
  border: 1px solid #dbe6f2;
  border-radius: 12px;
  padding: 0;
  overflow: hidden;
}

.wc-block-components-checkout-step__heading{
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  user-select: none;
  padding: 12px 16px;
  outline: none;
  /* border-bottom: 1px solid #e6edf5; */
}

.wc-block-components-checkout-step__title{
  position: relative;
  padding-left: 2.2rem;
}

.wc-block-components-checkout-step__title::before{
  content: attr(data-step);
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 1px solid currentColor;
  font-size: .92rem;
  line-height: 1;
}

.wc-block-components-checkout-step__heading::after{
  content:"";
  width:18px;
  height:18px;
  flex:0 0 18px;
  background-repeat:no-repeat;
  background-position:center;
  background-size:18px 18px;
  transition: transform .25s ease;
 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 12 12'%3E%3Cpath d='M2.25 4.25 L6 8.25 L9.75 4.25' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

}

.wc-block-checkout__terms{
	border:0;
}

.wc-block-components-checkout-step.is-visible .wc-block-components-checkout-step__heading::after{
  transform: rotate(180deg);
}

.wc-block-components-checkout-step__description{
  margin: .35rem 0 .5rem;
}

.wc-block-components-checkout-step__container{
  overflow: visible;
  max-height: none;
  opacity: 1;
}

.wc-step__inner{
  --wc-step-max: 2200px;
  --wc-open-dur: .32s;
  --wc-fade-dur: .22s;
  --wc-ease: cubic-bezier(.22,.61,.36,1);
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  pointer-events: none;
  transition:
    max-height var(--wc-open-dur) var(--wc-ease),
    opacity var(--wc-fade-dur) ease-out;
  will-change: max-height, opacity;
  padding: 16px 16px 8px;
  border-top: 1px solid #e6edf5;
}

.wc-block-components-checkout-step.is-visible .wc-step__inner{
  max-height: var(--wc-step-max);
  opacity: 1;
  pointer-events: auto;
}

.wc-step__inner > * + *{
  border-top: 1px dashed #eef3f8;
  padding-top: 12px;
  margin-top: 12px;
}

@keyframes wc-fade-up {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}
.wc-block-components-checkout-step.is-visible .wc-step__inner > *{
  animation: wc-fade-up .24s ease-out both;
}

.wc-step__nav{
  display: flex;
  gap: .75rem;
  margin-top: 1.25rem;
  border-top: 1px solid #e6edf5;
  padding-top: 1rem;
}

.wc-step__nav .btn{
	border: 1px solid #ccd8e5;
	border-radius: 8px;
	padding: .65rem 1.2rem;
	font-weight: 700;
	cursor: pointer;
    padding-top: var(--wp--preset--spacing--20);
    padding-right: var(--wp--preset--spacing--30);
    padding-bottom: var(--wp--preset--spacing--20);
    padding-left: var(--wp--preset--spacing--30);
	font-size: var(--wp--preset--font-size--medium);
	transition: 0.5s;
}

.btn--primary{
	background-color: var(--wp--preset--color--contrast);
    border-width: 0;
    color: var(--wp--preset--color--base);
    font-family: var(--wp--preset--font-family--raleway);
	text-transform: uppercase;
}

.btn--ghost{
	background:#fff;
	text-transform: uppercase;
}

.btn--ghost:hover{
	background: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
}

.btn--primary:hover{
	opacity:0.8
}

.wc-block-components-title.wc-block-components-title{
	padding-left:40px;
}

.wc-block-components-checkout-step.is-last .wc-step__nav{
  display: none !important;
}

.wc-block-checkout__actions{ display: none !important; }
.wc-actions--visible{ display: block !important; }

.wc-block-checkout__terms{ 
  display: none;
  margin-top: 1rem;
  padding-top: 1rem;
  /* border-top: 1px solid #e6edf5; */
}
.wc-block-checkout__terms.wc-terms--visible{ display: block; }

.wc-block-components-checkout-step:not(.is-visible) .wc-step__nav{
  display: none !important;
}

.wc-block-components-form > .wc-block-components-checkout-step:last-of-type::after{
  content: none !important;
}

@media (prefers-reduced-motion: reduce){
  .wc-step__inner,
  .wc-block-components-checkout-step__heading::after,
  .wc-block-components-checkout-step.is-visible .wc-step__inner > *{
    transition: none !important;
    animation: none !important;
  }
}


#order-notes > .wc-block-components-checkout-step__container > .wc-step__inner{
  border-top: 0 !important;
  padding:0;
  box-shadow: none !important;      
}

#order-notes .wc-block-components-checkout-step__container::before,
#order-notes .wc-step__inner::before{
  content: none !important;
}

#order-notes .wc-block-checkout__terms,
#order-notes .wc-block-checkout__actions{
  border-top: 0 !important;
  box-shadow: none !important;
  padding-top: 0;
}

@media (max-width:600px){
	.wc-block-checkout__form .wc-step{
		padding-top:0;
	}
	.wc-block-checkout__actions{
		padding-top:0;
	}
	.wc-block-checkout__terms{
		margin-top:0;
		padding-top:0;
	}

	.wc-block-components-form .wc-block-checkout__order-notes.wc-block-components-checkout-step{
		margin-bottom:0 !important;
	}
}

.wc-block-checkout__actions .wc-block-components-checkout-step__heading{
  cursor: default;
  padding: 0;
  border: 0;
  background: transparent;
}

.wc-block-checkout__actions .wc-block-components-checkout-step__heading::after{
  content: none !important;    /* ukryj strzałkę */
}

.wc-block-checkout__actions .wc-block-components-checkout-step__title{
  padding-left: 0 !important;  /* bez miejsca na numerek */
}

.wc-block-checkout__actions .wc-block-components-checkout-step__title::before{
  content: none !important;    /* ukryj kółko z numerem */
  display: none !important;
}

/* Na wszelki wypadek wyłącz animacje/marginesy panelu kroków w actions */
.wc-block-checkout__actions .wc-step__inner{
  max-height: none !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transition: none !important;
  padding: 0 !important;
  border: 0 !important;
}








.shipping-logo-inline {
    display: inline-flex;
    align-items: center;
}

.shipping-logo-inline img {
    display: block;
    width: 50px;      
    min-width:50px;
	max-width:50px;
	height: auto;
    object-fit: contain;
}

.woocommerce ul#shipping_method li {
    display: flex;
    align-items: center;
}

.woocommerce ul#shipping_method li label {
    display: flex;
    align-items: center;
    flex: 1 1 auto;    
}

.woocommerce ul#shipping_method li label .amount {
    margin-left: auto;  
    text-align: right;
    min-width: 90px;  
}

.atrybuty-toggle-wiecej{
	border-radius: 10px;
    padding-right: var(--wp--preset--spacing--30);
    padding-left: var(--wp--preset--spacing--30);
	background-color: var(--wp--preset--color--contrast);
    border-width: 0;
    color: var(--wp--preset--color--base);
    font-family: var(--wp--preset--font-family--raleway);
    font-size: var(--wp--preset--font-size--medium);
    font-style: normal;
    font-weight: 700;
    line-height: inherit;
    padding-right: 2.25rem;
    padding-left: 2.25rem;
    text-decoration: none;
	margin-top:10px;
	cursor:pointer;
}

.atrybuty-toggle-wiecej:hover{
	background-color: color-mix(in srgb, var(--wp--preset--color--contrast) 85%, transparent);
}