/* =========================================================
   NeoParts Product UI 1.1.16
   Lista produktów, FiboSearch, sticky search i czysty koszyk B2B.
   ========================================================= */

/* ---------- Wyszukiwarka w nagłówku (dawny NeoParts Search) ---------- */
.neoparts-header-search .dgwt-wcas-search-wrapp,
.neoparts-header-search .dgwt-wcas-search-form,
.neoparts-header-search .dgwt-wcas-search-input{width:100%!important;max-width:none!important;min-width:0!important}
.neoparts-header-search .dgwt-wcas-search-wrapp,
.neoparts-header-search .dgwt-wcas-search-form{margin:0!important}
@media(min-width:1200px){.neoparts-header-search{position:relative;left:50%;transform:translateX(-50%);width:clamp(480px,38vw,720px)!important;max-width:none!important;min-width:480px!important;margin:0!important;z-index:20}}
@media(min-width:1000px) and (max-width:1199px){.neoparts-header-search{position:relative;left:50%;transform:translateX(-50%);width:clamp(330px,36vw,430px)!important;max-width:none!important;min-width:330px!important;margin:0!important;z-index:20}}
@media(max-width:999px){.neoparts-header-search{position:static;width:100%!important;max-width:none!important;min-width:0!important;transform:none;margin:0!important}}

.np-is-hidden{display:none!important}
body.np-product-list-active .np-list-add-to-cart.np-is-hidden{display:none!important}

/* ---------- FiboSearch ---------- */
.dgwt-wcas-pd-addtc-form.np-fibo-integrated .quantity{display:none!important}
.np-fibo-availability{margin:10px 0 8px;text-align:left}
.np-fibo-quantity{display:inline-grid;grid-template-columns:34px 44px 34px;align-items:stretch;height:46px;margin:0 8px 8px 0;vertical-align:top;border:1px solid #FF7900;border-radius:4px;overflow:hidden;background:#fff}
.np-fibo-qty-btn{appearance:none;-webkit-appearance:none;border:0!important;border-radius:0!important;background:#fff!important;color:#344054!important;font-size:18px!important;line-height:1!important;padding:0!important;margin:0!important;min-width:0!important;box-shadow:none!important;cursor:default}
.np-fibo-qty-btn:hover{background:#fff7ed!important;color:#FF7900!important}
.np-fibo-qty-input{width:44px!important;min-width:44px!important;height:44px!important;border:0!important;border-left:1px solid #eceff2!important;border-right:1px solid #eceff2!important;border-radius:0!important;padding:0!important;margin:0!important;text-align:center!important;font-size:14px!important;font-weight:600!important;box-shadow:none!important;-moz-appearance:textfield}
.np-fibo-qty-input::-webkit-outer-spin-button,
.np-fibo-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.np-fibo-fallback{margin-top:12px}
.np-fibo-unavailable-action{display:inline-block;vertical-align:top;margin:0 0 8px}
.np-fibo-unavailable-action.np-is-hidden{display:none!important}
.np-fibo-view-product{margin:0!important}

.dgwt-wcas-suggestion-product{position:relative}
.np-fibo-simple-status{display:none!important}
.np-fibo-native-sku-hidden{display:none!important}
.dgwt-wcas-suggestion-product .np-fibo-product-code{display:block!important;margin-top:1px;color:#667085;font-size:10px;line-height:1.2;font-weight:400;white-space:nowrap}

/* Podpowiedź FiboSearch ma być szybka i prosta: zdjęcie + nazwa + Kod towaru.
   Cena i status dostępności są pokazywane dopiero na pełnej liście wyników. */
.dgwt-wcas-suggestion-product .dgwt-wcas-sp,
.dgwt-wcas-suggestion-product .dgwt-wcas-st-price,
.dgwt-wcas-suggestion-product .price,
.dgwt-wcas-suggestion-product .woocommerce-Price-amount,
.dgwt-wcas-suggestion-product [class*="price"]{display:none!important}

/* ---------- Sticky FiboSearch ---------- */
.np-sticky-search-placeholder{display:none!important;width:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important}
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed,
body>.np-search-sticky-fixed{position:fixed!important;top:0!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;margin:0!important;z-index:1000000!important;display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;filter:drop-shadow(0 4px 10px rgba(15,23,42,.12));background:transparent!important;transition:none!important}
body.np-modal-open>.np-search-sticky-fixed,
body.np-modal-open>.dgwt-wcas-search-wrapp.np-search-sticky-fixed{visibility:hidden!important;pointer-events:none!important}
@media(max-width:782px){body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed,
body>.np-search-sticky-fixed{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important}}

/* „KATEGORIE” w ciemnym nagłówku: białe, pomarańczowe dopiero po najechaniu. */
.np-header-categories-link,
.np-header-categories-link *{color:#fff!important}
.np-header-categories-link:hover,
.np-header-categories-link:hover *,
.np-header-categories-link:focus-visible,
.np-header-categories-link:focus-visible *{color:#FF7900!important}

/* Koszyk i panel Moje konto nie mogą przyklejać się do dolnej krawędzi nagłówka. */
body.woocommerce-account .site-main{padding-top:28px!important}


body.woocommerce-checkout .woocommerce-checkout-review-order .cart_item ul:not(.wc-item-meta),
body.woocommerce-checkout .woocommerce-checkout-review-order .cart_item .product-description,
body.woocommerce-checkout .woocommerce-checkout-review-order .cart_item .product-short-description,
body.woocommerce-checkout .woocommerce-checkout-review-order .cart_item .woocommerce-product-details__short-description,
body.woocommerce-checkout .woocommerce-checkout-review-order .cart_item .ct-product-description,
body.woocommerce-checkout .wc-block-components-product-metadata__description,
body.woocommerce-checkout .wc-block-components-order-summary-item__description,
body.woocommerce-checkout .cart_item .product-name .woocommerce-product-details__short-description,
body.woocommerce-checkout .cart_item .product-name .product-excerpt,
body.woocommerce-checkout .cart_item .product-name .short-description,
body.woocommerce-checkout .cart_item .product-name ul:not(.wc-item-meta),
body.woocommerce-checkout .backorder_notification,
body.woocommerce-checkout .wc-block-components-product-backorder{display:none!important}

/* ---------- Pozioma lista ---------- */
body.np-product-list-active ul.products,
body.np-product-list-active .products{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
body.np-product-list-active ul.products>li.product:not(.product-category),
body.np-product-list-active .products>li.product:not(.product-category){width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.np-product-list-active ul.products>li.product:not(.product-category)>*:not(.np-list-card),
body.np-product-list-active .products>li.product:not(.product-category)>*:not(.np-list-card){display:none!important}
body.np-product-list-active .woocommerce-loop-product__title,
body.np-product-list-active .ct-product-title{display:none!important}
body.np-product-list-active .np-list-card .np-list-card__title{display:block!important}

body.np-product-list-active .np-list-card{display:grid!important;grid-template-columns:108px minmax(260px,1fr) minmax(155px,180px) minmax(350px,390px);align-items:center;gap:20px;width:100%;min-height:154px;padding:18px 22px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;box-sizing:border-box;transition:border-color .16s ease,box-shadow .16s ease;cursor:pointer}
body.np-product-list-active .np-list-card:hover{border-color:#d0d5dd;box-shadow:0 5px 18px rgba(16,24,40,.06)}
body.np-product-list-active .np-list-card:focus-visible{outline:2px solid #FF7900;outline-offset:2px}

.np-list-card__image{display:flex;align-items:center;justify-content:center;width:108px;height:108px;padding:6px;border-radius:6px;background:#fff;overflow:hidden;box-sizing:border-box}
.np-list-card__image img{display:block;width:100%;height:100%;object-fit:contain}
.np-list-card__info{min-width:0;text-align:left!important}
.np-list-card__title{display:block;margin:0 0 10px;color:#101828;font-size:16px;line-height:1.35;font-weight:700;text-align:left!important;text-decoration:none}
.np-list-card__title:hover{color:#FF7900}
.np-list-card__code,
.np-list-card__catalog{color:#667085;font-size:13px;line-height:1.4;text-align:left!important}
.np-list-card__catalog{margin-top:1px}
.np-list-card__code strong,
.np-list-card__catalog strong{color:#344054;font-weight:600}

.np-list-card__price{cursor:default;align-self:center;justify-self:end;width:100%;text-align:right!important;color:#111827!important;opacity:1!important;text-shadow:none!important}
.np-list-price-net{color:#111827!important;font-size:18px;line-height:1.2;font-weight:700;white-space:nowrap}
.np-list-price-net strong,
.np-list-price-net .woocommerce-Price-amount{color:#111827!important;font-size:18px!important;font-weight:700!important;opacity:1!important}
.np-list-price-net span{color:#475467!important;font-size:12px;font-weight:400}
.np-list-price-gross{margin-top:4px;color:#667085!important;font-size:13px;line-height:1.35;white-space:nowrap}
.np-list-price-gross .woocommerce-Price-amount{font-size:13px!important}
.np-list-price-empty{color:#667085;font-size:13px}

.np-list-card__purchase{cursor:default;display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0}
.np-list-actions{display:flex;align-items:stretch;justify-content:flex-start;gap:10px;width:100%;max-width:100%;min-width:0}
.np-list-quantity{display:grid;grid-template-columns:28px 34px 28px;flex:0 0 90px;width:90px;height:40px;border:1px solid #d0d5dd;border-radius:5px;overflow:hidden;background:#fff}
.np-list-qty-btn{appearance:none;-webkit-appearance:none;min-width:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important;color:#344054!important;font-size:16px!important;line-height:1!important;box-shadow:none!important;cursor:pointer}
.np-list-qty-btn:hover{background:#fff7ed!important;color:#FF7900!important}
.np-list-qty-input{width:34px!important;min-width:34px!important;height:38px!important;margin:0!important;padding:0!important;border:0!important;border-left:1px solid #eaecf0!important;border-right:1px solid #eaecf0!important;border-radius:0!important;background:#fff!important;color:#101828!important;text-align:center!important;font-size:13px!important;font-weight:600!important;box-shadow:none!important;-moz-appearance:textfield}
.np-list-qty-input::-webkit-outer-spin-button,
.np-list-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

.np-list-add-to-cart,
.np-list-view-product,
.np-list-cart-link,
.np-list-unavailable-action>*{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 118px;width:118px;min-width:118px;max-width:118px;min-height:40px;margin:0!important;padding:7px 10px!important;border-radius:5px!important;font-size:12px!important;font-weight:700!important;line-height:1.15!important;text-align:center;white-space:normal!important;box-shadow:none!important;box-sizing:border-box!important}
.np-list-add-to-cart{border:1px solid #FF7900!important;background:#FF7900!important;color:#fff!important}
.np-list-add-to-cart:hover{background:#E66D00!important;border-color:#E66D00!important;color:#fff!important}
.np-list-view-product{border:1px solid #d0d5dd!important;background:#fff!important;color:#344054!important}

.np-list-cart-view{display:flex;flex:0 0 118px;width:118px;min-width:118px;max-width:118px;min-height:40px;margin:0;padding:0;align-items:stretch;overflow:visible}
.np-list-cart-view:empty{display:none!important}
.np-list-cart-link{border:1px solid #FF7900!important;background:#fff!important;color:#c85f00!important;text-decoration:none!important;white-space:nowrap!important}
.np-list-cart-link:hover{background:#fff7ed!important;border-color:#E66D00!important;color:#a94f00!important}
.np-list-unavailable-action{display:flex;align-items:stretch;flex:0 0 auto}
.np-list-unavailable-action.np-is-hidden{display:none!important}

/* Ukrywamy natywny link WooCommerce, bo tworzymy własny przycisk w stałym slocie. */
body.np-product-list-active a.added_to_cart.wc-forward,
body.np-product-list-active .added_to_cart.wc-forward{display:none!important}

.np-list-availability{min-height:27px;margin-top:1px;text-align:left}

/* Sortowanie: napis wyśrodkowany. */
body.np-product-list-active .woocommerce-ordering select,
body.np-product-list-active .woocommerce-ordering select.orderby{text-align:center!important;text-align-last:center!important}

@media(min-width:701px) and (max-width:1100px){
    body.np-product-list-active .np-list-card{grid-template-columns:96px minmax(220px,1fr) minmax(145px,170px);gap:16px}
    .np-list-card__image{width:96px;height:96px}
    .np-list-card__purchase{grid-column:2/-1}
    .np-list-card__price{text-align:left!important;justify-self:start}
    .np-list-actions{max-width:390px}
}

@media(max-width:700px){
    body.np-product-list-active,
body.np-product-list-active .site-main,
body.np-product-list-active .ct-container,
body.np-product-list-active .ct-container-full{--shop-columns:1!important;--woocommerce-shop-columns:1!important}
    body.np-product-list-active ul.products,
body.np-product-list-active .products,
body.np-product-list-active .ct-products-container ul.products,
body.np-product-list-active .ct-products-container .products{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}
    body.np-product-list-active ul.products>li.product:not(.product-category),
body.np-product-list-active .products>li.product:not(.product-category){display:block!important;grid-column:1/-1!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;height:auto!important;min-height:0!important}

    body.np-product-list-active .np-list-card{grid-template-columns:78px minmax(0,1fr)!important;grid-template-areas:"image info" "price price" "purchase purchase"!important;gap:6px 12px!important;width:100%!important;min-width:0!important;max-width:100%!important;min-height:0!important;padding:13px!important;overflow:hidden!important;align-items:start!important;box-sizing:border-box!important}
    body.np-product-list-active .np-list-card__image{grid-area:image!important;width:78px!important;height:78px!important;min-width:78px!important;padding:4px!important}
    body.np-product-list-active .np-list-card__info{grid-area:info!important;min-width:0!important;width:100%!important;align-self:start!important}
    body.np-product-list-active .np-list-card__title{max-width:100%!important;margin:0 0 4px!important;font-size:14px!important;line-height:1.28!important;overflow-wrap:anywhere!important;white-space:normal!important}
    body.np-product-list-active .np-list-card__code,
body.np-product-list-active .np-list-card__catalog{font-size:11.5px!important;line-height:1.3!important;white-space:normal!important}
    body.np-product-list-active .np-list-card__price{grid-area:price!important;width:100%!important;justify-self:stretch!important;text-align:left!important;padding:0!important;margin:0!important}
    body.np-product-list-active .np-list-price-net,
body.np-product-list-active .np-list-price-net .woocommerce-Price-amount{font-size:17px!important;line-height:1.2!important}
    body.np-product-list-active .np-list-price-gross,
body.np-product-list-active .np-list-price-gross .woocommerce-Price-amount{font-size:12px!important}
    body.np-product-list-active .np-list-card__purchase{grid-area:purchase!important;width:100%!important;min-width:0!important;align-items:flex-start!important;gap:6px!important;margin-top:1px!important}
    body.np-product-list-active .np-list-actions{display:grid!important;grid-template-columns:118px auto auto!important;gap:9px!important;align-items:stretch!important;width:100%!important;max-width:100%!important;justify-content:start!important}
    body.np-product-list-active .np-list-quantity{width:118px!important;min-width:118px!important;max-width:118px!important;grid-template-columns:34px 50px 34px!important}
    body.np-product-list-active .np-list-qty-input{width:50px!important;min-width:50px!important}
    body.np-product-list-active .np-list-add-to-cart,
body.np-product-list-active .np-list-view-product,
body.np-product-list-active .np-list-unavailable-action>*{width:185px!important;min-width:185px!important;max-width:calc(100vw - 54px)!important;min-height:40px!important;font-size:11.5px!important;padding:7px 13px!important}
    body.np-product-list-active .np-list-cart-view{grid-column:1/-1!important;display:flex;width:185px!important;min-width:185px!important;max-width:calc(100vw - 54px)!important;min-height:40px!important;margin-top:0!important}
    body.np-product-list-active .np-list-cart-link{width:185px!important;min-width:185px!important;max-width:calc(100vw - 54px)!important;min-height:40px!important}
    body.np-product-list-active .np-list-availability{width:100%!important;min-height:0!important;margin-top:4px!important;text-align:left!important}
    body.np-product-list-active .np-list-availability .np-status{font-size:10.5px!important}
    body.np-product-list-active .np-list-availability .np-status__details{font-size:10.5px!important}

    body.np-product-list-active .woocommerce-ordering{position:relative!important;width:min(100%,280px)!important;max-width:280px!important;margin-left:auto!important;margin-right:0!important}
    body.np-product-list-active .woocommerce-ordering::before,
body.np-product-list-active .woocommerce-ordering::after,
body.np-product-list-active .woocommerce-ordering svg,
body.np-product-list-active .woocommerce-ordering i,
body.np-product-list-active .woocommerce-ordering [class*="icon"]{display:none!important;content:none!important}
    body.np-product-list-active .woocommerce-ordering select,
body.np-product-list-active .woocommerce-ordering select.orderby{width:100%!important;min-height:42px!important;height:42px!important;padding:8px 14px!important;border:1px solid #d0d5dd!important;border-radius:6px!important;background:#fff!important;background-image:none!important;color:#1d2939!important;font-size:14px!important;appearance:none!important;-webkit-appearance:none!important;box-shadow:none!important;text-align:center!important;text-align-last:center!important}
}

@media(max-width:390px){
    body.np-product-list-active .np-list-actions{grid-template-columns:1fr!important;gap:9px!important;justify-items:start!important}
    body.np-product-list-active .np-list-quantity{grid-column:1!important;grid-row:1!important}
    body.np-product-list-active .np-list-add-to-cart,
body.np-product-list-active .np-list-view-product,
body.np-product-list-active .np-list-unavailable-action>*{grid-column:1!important;width:185px!important;min-width:185px!important;max-width:calc(100vw - 54px)!important}
    body.np-product-list-active .np-list-cart-view{grid-column:1!important;width:185px!important;min-width:185px!important;max-width:calc(100vw - 54px)!important}
}

/* Dłuższy tekst „Zapytaj o termin dostawy” nadal mieści się w karcie. */
body.np-product-list-active .np-list-inquiry-action .np-list-inquiry{
    line-height:1.15!important;
}


/* ---------- Spójny kolor przycisków zakupowych NeoParts ---------- */
.woocommerce ul.products li.product a.button.add_to_cart_button,
.woocommerce ul.products li.product a.button.product_type_simple,
.woocommerce .single-product button.single_add_to_cart_button,
body.single-product .single_add_to_cart_button,
body.np-product-list-active .np-list-add-to-cart{
    background:#FF7900!important;
    border-color:#FF7900!important;
    color:#fff!important;
}
.woocommerce ul.products li.product a.button.add_to_cart_button:hover,
.woocommerce ul.products li.product a.button.product_type_simple:hover,
.woocommerce .single-product button.single_add_to_cart_button:hover,
body.single-product .single_add_to_cart_button:hover,
body.np-product-list-active .np-list-add-to-cart:hover{
    background:#E66D00!important;
    border-color:#E66D00!important;
    color:#fff!important;
}








/* Każdy główny pomarańczowy przycisk NeoParts ma dokładnie ten sam kolor. */
.woocommerce a.button.add_to_cart_button,
.woocommerce a.button.ajax_add_to_cart,
.woocommerce button.single_add_to_cart_button,
.woocommerce .single_add_to_cart_button,
.woocommerce .np-list-add-to-cart,
body.np-product-list-active .np-list-inquiry,
.np-inquiry-button--loop,
.np-submit,
.np-price-submit{
    background:#FF7900!important;
    background-color:#FF7900!important;
    background-image:none!important;
    border-color:#FF7900!important;
    color:#fff!important;
    opacity:1!important;
    filter:none!important;
    box-shadow:none!important;
}
.woocommerce a.button.add_to_cart_button:hover,
.woocommerce a.button.ajax_add_to_cart:hover,
.woocommerce button.single_add_to_cart_button:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce .np-list-add-to-cart:hover,
body.np-product-list-active .np-list-inquiry:hover,
.np-inquiry-button--loop:hover,
.np-submit:hover,
.np-price-submit:hover{
    background:#E66D00!important;
    background-color:#E66D00!important;
    background-image:none!important;
    border-color:#E66D00!important;
    color:#fff!important;
    opacity:1!important;
    filter:none!important;
}


:root{
    --np-orange:#FF7900;
    --np-orange-hover:#E66D00;
}

/* Sticky dochodzi do samej górnej krawędzi viewportu. */
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed,
body>.np-search-sticky-fixed{
    top:0!important;
    margin:0!important;
    padding:0!important;
}
body>.np-search-sticky-fixed .dgwt-wcas-search-form,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed .dgwt-wcas-search-form,
body>.np-search-sticky-fixed form,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed form{
    margin:0!important;
    padding:0!important;
}

/* Kod towaru i nr katalogowy są jedną grupą – niżej od nazwy produktu. */
body.np-product-list-active .np-list-card__title{margin-bottom:14px!important}
body.np-product-list-active .np-list-card__code,
body.np-product-list-active .np-list-card__catalog{line-height:1.35!important}
body.np-product-list-active .np-list-card__catalog{margin-top:0!important}

/* Ilość na pełnej liście wyników/kategorii: 4 cyfry (np. 1000) mają się mieścić bez ścisku. */
body.np-product-list-active .np-list-quantity{
    grid-template-columns:34px 52px 34px!important;
    flex:0 0 120px!important;
    width:120px!important;
    min-width:120px!important;
    max-width:120px!important;
}
body.np-product-list-active .np-list-qty-input{
    width:52px!important;
    min-width:52px!important;
    font-size:13px!important;
}
@media(max-width:700px){
    body.np-product-list-active .np-list-actions{grid-template-columns:120px auto auto!important}
    body.np-product-list-active .np-list-quantity{
        width:120px!important;
        min-width:120px!important;
        max-width:120px!important;
        grid-template-columns:34px 52px 34px!important;
    }
    body.np-product-list-active .np-list-qty-input{width:52px!important;min-width:52px!important}
}








/* Wyciszamy natywne komunikaty Woo/Blocksy o backorderze – status pokazuje wyłącznie NeoParts. */


/* Cena jednostkowa i wartość pozycji jak w panelach B2B: etykieta nad wartością, bez ciągu ze slashami. */





/* Ilość w koszyku: kontrolka musi bez problemu mieścić 1000 i więcej. */





/* Jeden, jaśniejszy Neo orange na wszystkich głównych CTA. */
.woocommerce a.button.add_to_cart_button,
.woocommerce a.button.ajax_add_to_cart,
.woocommerce button.single_add_to_cart_button,
.woocommerce .single_add_to_cart_button,
.woocommerce .np-list-add-to-cart,
body.np-product-list-active .np-list-inquiry,
.np-inquiry-button--availability,
.np-inquiry-button--loop,
.np-submit,
.np-price-submit,
body.woocommerce-checkout #place_order{
    background:var(--np-orange)!important;
    background-color:var(--np-orange)!important;
    background-image:none!important;
    border-color:var(--np-orange)!important;
    color:#fff!important;
    opacity:1!important;
    filter:none!important;
    box-shadow:none!important;
}
.woocommerce a.button.add_to_cart_button:hover,
.woocommerce a.button.ajax_add_to_cart:hover,
.woocommerce button.single_add_to_cart_button:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce .np-list-add-to-cart:hover,
body.np-product-list-active .np-list-inquiry:hover,
.np-inquiry-button--availability:hover,
.np-inquiry-button--loop:hover,
.np-submit:hover,
.np-price-submit:hover,
body.woocommerce-checkout #place_order:hover{
    background:var(--np-orange-hover)!important;
    background-color:var(--np-orange-hover)!important;
    border-color:var(--np-orange-hover)!important;
    color:#fff!important;
}



:root{
    --np-orange:#FF7900;
    --np-orange-hover:#E66D00;
}

/* FiboSearch (styl Pirx) ma własny biały padding wokół pola. W sticky usuwamy go,
   bo właśnie on tworzył widoczne białe przejście przy dojeżdżaniu do góry. */
body>.np-search-sticky-fixed,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed{
    top:0!important;
    background:transparent!important;
    box-shadow:none!important;
    filter:drop-shadow(0 4px 10px rgba(15,23,42,.12))!important;
}
body>.np-search-sticky-fixed .dgwt-wcas-sf-wrapp,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed .dgwt-wcas-sf-wrapp,
body>.np-search-sticky-fixed .dgwt-wcas-search-form,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed .dgwt-wcas-search-form{
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
}
body>.np-search-sticky-fixed .dgwt-wcas-search-input,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed .dgwt-wcas-search-input{
    margin:0!important;
}

/* Pełna lista wyników: 4 cyfry muszą wejść swobodnie. */
body.np-product-list-active .np-list-quantity{
    grid-template-columns:36px 64px 36px!important;
    flex:0 0 136px!important;
    width:136px!important;
    min-width:136px!important;
    max-width:136px!important;
}
body.np-product-list-active .np-list-qty-input{
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    font-variant-numeric:tabular-nums!important;
}
@media(max-width:700px){
    body.np-product-list-active .np-list-actions{grid-template-columns:136px auto auto!important}
    body.np-product-list-active .np-list-quantity{width:136px!important;min-width:136px!important;max-width:136px!important;grid-template-columns:36px 64px 36px!important}
    body.np-product-list-active .np-list-qty-input{width:64px!important;min-width:64px!important;max-width:64px!important}
}

/* Wszystkie główne CTA NeoParts: dokładny kolor marki #FF7900. */
.woocommerce a.button.add_to_cart_button,
.woocommerce a.button.ajax_add_to_cart,
.woocommerce button.single_add_to_cart_button,
.woocommerce .single_add_to_cart_button,
.woocommerce .np-list-add-to-cart,
body.np-product-list-active .np-list-inquiry,
body.np-product-list-active .np-list-unavailable-action .np-inquiry-button,
.np-inquiry-button--availability,
.np-inquiry-button--loop,
.np-submit,
.np-price-submit,
body.woocommerce-checkout #place_order{
    background:#FF7900!important;
    background-color:#FF7900!important;
    background-image:none!important;
    border-color:#FF7900!important;
    color:#fff!important;
    opacity:1!important;
    filter:none!important;
    box-shadow:none!important;
}
.woocommerce a.button.add_to_cart_button:hover,
.woocommerce a.button.ajax_add_to_cart:hover,
.woocommerce button.single_add_to_cart_button:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce .np-list-add-to-cart:hover,
body.np-product-list-active .np-list-inquiry:hover,
body.np-product-list-active .np-list-unavailable-action .np-inquiry-button:hover,
.np-inquiry-button--availability:hover,
.np-inquiry-button--loop:hover,
.np-submit:hover,
.np-price-submit:hover,
body.woocommerce-checkout #place_order:hover{
    background:#E66D00!important;
    background-color:#E66D00!important;
    border-color:#E66D00!important;
    color:#fff!important;
}


































































































































/* Ceny pozycji mają być równie czytelne jak najważniejsze dane koszyka. */





/* Ilość nadal mieści 4 cyfry, ale kontrolka nie wypycha kolumn i ikony usuwania. */


/* Panel po prawej ma zostać przy prawej krawędzi swojej kolumny. */



/* Czerwony kosz zamiast małego znaku X. */









/* Automatyczny komunikat o brakującej ilości jest wyciszony w PHP.
   Kontener pozostaje dostępny dla rzeczywistych błędów WooCommerce. */



/* Kwoty pozycji: zwykła, czytelna czcionka — bez pogrubienia. */




/* Czerwony kosz w wyraźnej ramce. */









/* Lupa FiboSearch: zawsze wycentrowana pionowo w polu i przy lewej krawędzi. */
.neoparts-header-search .dgwt-wcas-sf-wrapp,
body>.np-search-sticky-fixed .dgwt-wcas-sf-wrapp,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed .dgwt-wcas-sf-wrapp{
    position:relative!important;
}
.neoparts-header-search .dgwt-wcas-search-submit,
body>.np-search-sticky-fixed .dgwt-wcas-search-submit,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed .dgwt-wcas-search-submit,
.neoparts-header-search .dgwt-wcas-ico-magnifier-handler,
body>.np-search-sticky-fixed .dgwt-wcas-ico-magnifier-handler,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed .dgwt-wcas-ico-magnifier-handler{
    position:absolute!important;
    left:18px!important;
    right:auto!important;
    top:50%!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    margin:0!important;
    padding:0!important;
    width:22px!important;
    min-width:22px!important;
    height:22px!important;
    min-height:22px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    z-index:4!important;
}
.neoparts-header-search .dgwt-wcas-search-submit svg,
body>.np-search-sticky-fixed .dgwt-wcas-search-submit svg,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed .dgwt-wcas-search-submit svg,
.neoparts-header-search .dgwt-wcas-ico-magnifier-handler svg,
body>.np-search-sticky-fixed .dgwt-wcas-ico-magnifier-handler svg,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed .dgwt-wcas-ico-magnifier-handler svg{
    display:block!important;
    width:18px!important;
    height:18px!important;
    margin:0!important;
}
.neoparts-header-search input.dgwt-wcas-search-input,
body>.np-search-sticky-fixed input.dgwt-wcas-search-input,
body>.dgwt-wcas-search-wrapp.np-search-sticky-fixed input.dgwt-wcas-search-input{
    padding-left:42px!important;
}



/* Prostsze podsumowanie: jedna linia dostawy + nazwa firmy, bez pełnego adresu. */





























/* =========================================================
   NeoParts Product UI 1.1.16 — KOSZYK B2B
   Jedna kanoniczna siatka. Nagłówek i każdy wiersz produktu
   korzystają z identycznych kolumn, bez starych nadpisań.
   ========================================================= */

body.woocommerce-cart .site-main{
    padding-top:28px!important;
}

body.woocommerce-cart .woocommerce-cart-form .cart_item ul:not(.wc-item-meta),
body.woocommerce-cart .woocommerce-cart-form .cart_item .product-description,
body.woocommerce-cart .woocommerce-cart-form .cart_item .product-short-description,
body.woocommerce-cart .woocommerce-cart-form .cart_item .woocommerce-product-details__short-description,
body.woocommerce-cart .woocommerce-cart-form .cart_item .ct-product-description,
body.woocommerce-cart .backorder_notification,
body.woocommerce-cart .wc-block-components-product-backorder{
    display:none!important;
}

body.woocommerce-cart .np-b2b-cart-layout{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 300px!important;
    gap:72px!important;
    align-items:start!important;
    width:100%!important;
    max-width:1320px!important;
    margin:0 auto!important;
    box-sizing:border-box!important;
}

body.woocommerce-cart .np-b2b-cart-main,
body.woocommerce-cart .np-b2b-cart-form{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
}

body.woocommerce-cart table.np-b2b-cart{
    --np-cart-columns:minmax(290px,1fr) 132px 132px 150px;
    display:block!important;
    width:100%!important;
    margin:0!important;
    border:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    background:transparent!important;
    font-family:inherit!important;
}

body.woocommerce-cart table.np-b2b-cart>thead,
body.woocommerce-cart table.np-b2b-cart>tbody{
    display:block!important;
    width:100%!important;
}

body.woocommerce-cart table.np-b2b-cart>thead>tr,
body.woocommerce-cart table.np-b2b-cart>tbody>tr.cart_item{
    display:grid!important;
    grid-template-columns:var(--np-cart-columns)!important;
    column-gap:10px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}

body.woocommerce-cart table.np-b2b-cart>thead>tr{
    margin:0 0 8px!important;
    padding:0 16px 10px!important;
    border:0!important;
    border-bottom:1px solid #e4e7ec!important;
    background:transparent!important;
    color:#172033!important;
    font-size:14px!important;
    font-weight:500!important;
    line-height:1.25!important;
    text-transform:none!important;
    letter-spacing:0!important;
}

body.woocommerce-cart table.np-b2b-cart>tbody>tr.cart_item{
    position:relative!important;
    min-height:96px!important;
    margin:0 0 10px!important;
    padding:14px 16px!important;
    overflow:visible!important;
    border:1px solid #e4e7ec!important;
    border-radius:8px!important;
    background:#fff!important;
}

body.woocommerce-cart table.np-b2b-cart th,
body.woocommerce-cart table.np-b2b-cart td{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-sizing:border-box!important;
    font-family:inherit!important;
}

body.woocommerce-cart table.np-b2b-cart th.product-name,
body.woocommerce-cart table.np-b2b-cart td.product-name{
    grid-column:1!important;
    justify-content:flex-start!important;
    text-align:left!important;
}

body.woocommerce-cart table.np-b2b-cart th.product-quantity,
body.woocommerce-cart table.np-b2b-cart td.product-quantity{
    grid-column:2!important;
}

body.woocommerce-cart table.np-b2b-cart th.product-price,
body.woocommerce-cart table.np-b2b-cart td.product-price{
    grid-column:3!important;
}

body.woocommerce-cart table.np-b2b-cart th.product-subtotal,
body.woocommerce-cart table.np-b2b-cart td.product-subtotal{
    grid-column:4!important;
}

body.woocommerce-cart table.np-b2b-cart th.product-quantity,
body.woocommerce-cart table.np-b2b-cart th.product-price,
body.woocommerce-cart table.np-b2b-cart th.product-subtotal,
body.woocommerce-cart table.np-b2b-cart td.product-quantity,
body.woocommerce-cart table.np-b2b-cart td.product-price,
body.woocommerce-cart table.np-b2b-cart td.product-subtotal{
    justify-content:center!important;
    justify-self:stretch!important;
    text-align:center!important;
}

body.woocommerce-cart table.np-b2b-cart th.product-remove{
    display:none!important;
}

body.woocommerce-cart table.np-b2b-cart td.product-remove{
    position:absolute!important;
    right:-53px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    z-index:2!important;
}

body.woocommerce-cart table.np-b2b-cart .np-cart-actions-row{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    clip:rect(0 0 0 0)!important;
    clip-path:inset(50%)!important;
    white-space:nowrap!important;
}

body.woocommerce-cart .np-cart-product-cell{
    display:grid!important;
    grid-template-columns:64px minmax(0,1fr)!important;
    gap:14px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
}

body.woocommerce-cart .np-cart-product-thumb,
body.woocommerce-cart .np-cart-product-thumb a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    margin:0!important;
}

body.woocommerce-cart .np-cart-product-thumb img{
    display:block!important;
    width:64px!important;
    height:64px!important;
    max-width:64px!important;
    max-height:64px!important;
    margin:0!important;
    object-fit:contain!important;
}

body.woocommerce-cart .np-cart-product-copy{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    min-width:0!important;
    gap:2px!important;
}

body.woocommerce-cart .np-cart-product-title{
    display:block!important;
    margin:0 0 2px!important;
    color:#172033!important;
    font-size:13.5px!important;
    font-weight:600!important;
    line-height:1.3!important;
    text-decoration:none!important;
}

body.woocommerce-cart .np-cart-product-title:hover{
    color:#FF7900!important;
}

body.woocommerce-cart .np-cart-product-meta{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:1px!important;
    width:100%!important;
    margin:0!important;
    color:#667085!important;
    font-size:11px!important;
    font-weight:400!important;
    line-height:1.35!important;
}

body.woocommerce-cart .np-cart-meta-row{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
}

body.woocommerce-cart .np-cart-meta-label,
body.woocommerce-cart .np-cart-meta-value,
body.woocommerce-cart .np-cart-product-meta strong{
    color:#667085!important;
    font-weight:400!important;
}

body.woocommerce-cart .np-cart-product-availability{
    display:block!important;
    align-self:flex-start!important;
    width:auto!important;
    max-width:100%!important;
    margin:8px 0 0!important;
    padding:0!important;
    color:#667085!important;
    font-size:11px!important;
    line-height:1.3!important;
    text-align:left!important;
}

body.woocommerce-cart .np-cart-product-availability .np-status-block{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    width:auto!important;
    max-width:100%!important;
    gap:4px 8px!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
}

body.woocommerce-cart .np-cart-product-availability .np-status{
    display:inline-flex!important;
    align-items:center!important;
    align-self:flex-start!important;
    width:auto!important;
    min-height:22px!important;
    margin:0!important;
    padding:2px 7px!important;
    border-radius:4px!important;
    font-size:10.5px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
}

body.woocommerce-cart .np-cart-product-availability .np-status__details{
    display:flex!important;
    flex-direction:column!important;
    gap:1px!important;
    margin:0!important;
    color:#667085!important;
    font-size:10.5px!important;
    line-height:1.25!important;
}

body.woocommerce-cart .np-cart-quantity{
    display:grid!important;
    grid-template-columns:36px 60px 36px!important;
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    height:42px!important;
    margin:0 auto!important;
    padding:0!important;
    border:1px solid #d0d5dd!important;
    border-radius:6px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-sizing:border-box!important;
}

body.woocommerce-cart .np-cart-quantity::before,
body.woocommerce-cart .np-cart-quantity::after{
    display:none!important;
    content:none!important;
}

body.woocommerce-cart .np-cart-quantity .np-cart-qty-btn{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    color:#344054!important;
    font-size:17px!important;
    font-weight:500!important;
    line-height:1!important;
    box-shadow:none!important;
    cursor:pointer!important;
}

body.woocommerce-cart .np-cart-quantity .np-cart-qty-btn:hover{
    background:#fff7ed!important;
    color:#FF7900!important;
}

body.woocommerce-cart .np-cart-quantity .np-cart-qty-input,
body.woocommerce-cart .np-cart-quantity input.qty{
    display:block!important;
    width:60px!important;
    min-width:60px!important;
    max-width:60px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0 4px!important;
    border:0!important;
    border-left:1px solid #eaecf0!important;
    border-right:1px solid #eaecf0!important;
    border-radius:0!important;
    background:#fff!important;
    color:#172033!important;
    text-align:center!important;
    font-family:inherit!important;
    font-size:14px!important;
    font-weight:600!important;
    line-height:40px!important;
    box-sizing:border-box!important;
    box-shadow:none!important;
    appearance:textfield!important;
    -moz-appearance:textfield!important;
}

body.woocommerce-cart .np-cart-quantity input.qty::-webkit-inner-spin-button,
body.woocommerce-cart .np-cart-quantity input.qty::-webkit-outer-spin-button{
    -webkit-appearance:none!important;
    margin:0!important;
}

body.woocommerce-cart .np-cart-quantity--single{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}

body.woocommerce-cart .np-cart-money{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:42px!important;
    margin:0!important;
    text-align:center!important;
    white-space:nowrap!important;
}

body.woocommerce-cart .np-cart-money strong,
body.woocommerce-cart .np-cart-money .woocommerce-Price-amount,
body.woocommerce-cart .np-cart-money .woocommerce-Price-currencySymbol{
    color:#172033!important;
    font-family:inherit!important;
    font-size:15px!important;
    font-weight:400!important;
    line-height:1.25!important;
}

body.woocommerce-cart a.remove.np-cart-remove{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #f04438!important;
    border-radius:6px!important;
    background:#fff!important;
    color:#d92d20!important;
    text-decoration:none!important;
    box-shadow:none!important;
}

body.woocommerce-cart a.remove.np-cart-remove:hover{
    border-color:#d92d20!important;
    background:#fef3f2!important;
    color:#b42318!important;
}

body.woocommerce-cart .np-cart-trash-icon{
    width:17px!important;
    height:17px!important;
    fill:currentColor!important;
}

body.woocommerce-cart .np-b2b-cart-summary{
    width:300px!important;
    max-width:300px!important;
    margin-top:36px!important;
    justify-self:end!important;
    transform:translateX(42px)!important;
    font-family:inherit!important;
}

body.woocommerce-cart .np-cart-collaterals{
    width:100%!important;
    margin:0!important;
    padding:20px!important;
    border:1px solid #e4e7ec!important;
    border-radius:8px!important;
    background:#fff!important;
    box-sizing:border-box!important;
    font-family:inherit!important;
}

body.woocommerce-cart .np-b2b-summary-card h2{
    margin:0 0 14px!important;
    color:#172033!important;
    font-size:18px!important;
    line-height:1.25!important;
    font-weight:600!important;
}

body.woocommerce-cart .np-b2b-summary-row,
body.woocommerce-cart .np-b2b-summary-destination{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:14px!important;
    padding:9px 0!important;
    border-bottom:1px dashed #e4e7ec!important;
    color:#344054!important;
    font-size:14px!important;
    line-height:1.4!important;
}

body.woocommerce-cart .np-b2b-summary-row>span,
body.woocommerce-cart .np-b2b-summary-destination>span{
    justify-self:start!important;
    text-align:left!important;
    font-weight:400!important;
}

body.woocommerce-cart .np-b2b-summary-row>strong,
body.woocommerce-cart .np-b2b-summary-destination>strong{
    justify-self:end!important;
    text-align:right!important;
    color:#344054!important;
    font-weight:500!important;
    white-space:normal!important;
}

body.woocommerce-cart .np-b2b-summary-total{
    padding-top:11px!important;
    border-bottom:0!important;
}

body.woocommerce-cart .np-b2b-summary-total>strong{
    color:#172033!important;
    font-weight:700!important;
}

body.woocommerce-cart .np-b2b-summary-card .wc-proceed-to-checkout{
    margin:0!important;
    padding:18px 0 0!important;
}

body.woocommerce-cart .np-b2b-summary-card .checkout-button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:42px!important;
    margin:0!important;
    background:#FF7900!important;
    border-color:#FF7900!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:600!important;
}

body.woocommerce-cart .np-b2b-summary-card .checkout-button:hover{
    background:#E66D00!important;
    border-color:#E66D00!important;
}

body.woocommerce-cart .np-cart-notices{
    width:min(1180px,calc(100% - 32px))!important;
    margin:0 auto 18px!important;
    font-family:inherit!important;
}

body.woocommerce-cart .wc-block-components-quantity-selector{
    min-width:132px!important;
}

body.woocommerce-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{
    min-width:60px!important;
    text-align:center!important;
}

@media (max-width:1099px){
    body.woocommerce-cart .np-b2b-cart-layout{
        grid-template-columns:minmax(0,1fr)!important;
        gap:24px!important;
    }
    body.woocommerce-cart .np-b2b-cart-summary{
        width:100%!important;
        max-width:none!important;
        margin-top:0!important;
        transform:none!important;
    }
    body.woocommerce-cart table.np-b2b-cart{
        --np-cart-columns:minmax(250px,1fr) 132px 120px 130px;
    }
    body.woocommerce-cart table.np-b2b-cart>tbody>tr.cart_item{
        padding-right:58px!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-remove{
        right:12px!important;
    }
}

@media (max-width:899px){
    body.woocommerce-cart .np-b2b-cart-layout{
        display:block!important;
    }
    body.woocommerce-cart table.np-b2b-cart>thead{
        display:none!important;
    }
    body.woocommerce-cart table.np-b2b-cart>tbody>tr.cart_item{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        min-height:0!important;
        padding:14px 52px 14px 14px!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-name,
    body.woocommerce-cart table.np-b2b-cart td.product-quantity,
    body.woocommerce-cart table.np-b2b-cart td.product-price,
    body.woocommerce-cart table.np-b2b-cart td.product-subtotal{
        grid-column:1!important;
        justify-content:flex-start!important;
        text-align:left!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-price,
    body.woocommerce-cart table.np-b2b-cart td.product-subtotal{
        display:grid!important;
        grid-template-columns:110px minmax(0,1fr)!important;
        gap:12px!important;
        padding-top:8px!important;
        border-top:1px solid #f2f4f7!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-price::before{
        content:"Cena netto:"!important;
        color:#667085!important;
        font-size:11px!important;
        font-weight:600!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-subtotal::before{
        content:"Wartość netto:"!important;
        color:#667085!important;
        font-size:11px!important;
        font-weight:600!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-price .np-cart-money,
    body.woocommerce-cart table.np-b2b-cart td.product-subtotal .np-cart-money{
        justify-content:flex-end!important;
        min-height:0!important;
        text-align:right!important;
    }
    body.woocommerce-cart .np-cart-quantity{
        margin:0!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-remove{
        right:12px!important;
        top:14px!important;
        transform:none!important;
    }
}

@media (max-width:520px){
    body.woocommerce-cart .np-cart-product-cell{
        grid-template-columns:58px minmax(0,1fr)!important;
        gap:10px!important;
    }
    body.woocommerce-cart .np-cart-product-thumb,
    body.woocommerce-cart .np-cart-product-thumb a,
    body.woocommerce-cart .np-cart-product-thumb img{
        width:58px!important;
        height:58px!important;
        min-width:58px!important;
        max-width:58px!important;
        max-height:58px!important;
    }
}

/* NeoParts Product UI 1.1.21 — delikatne dopracowanie koszyka na telefonie. */
@media (max-width:520px){
    /* Większy oddech między etykietą „Produkt:” a właściwą zawartością pozycji. */
    body.woocommerce-cart table.np-b2b-cart td.product-name{
        gap:14px!important;
        align-items:flex-start!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-name::before{
        flex:0 0 auto!important;
        margin:8px 0 0!important;
    }

    /* Nieco większe zdjęcie produktu bez zmiany układu desktopowego. */
    body.woocommerce-cart .np-cart-product-cell{
        grid-template-columns:68px minmax(0,1fr)!important;
        gap:12px!important;
        width:auto!important;
        flex:1 1 auto!important;
    }
    body.woocommerce-cart .np-cart-product-thumb,
    body.woocommerce-cart .np-cart-product-thumb a,
    body.woocommerce-cart .np-cart-product-thumb img{
        width:68px!important;
        height:68px!important;
        min-width:68px!important;
        max-width:68px!important;
        max-height:68px!important;
    }

    /* Więcej oddechu przed regulacją ilości. */
    body.woocommerce-cart table.np-b2b-cart td.product-quantity{
        margin-top:6px!important;
    }

    /* Delikatnie mniejszy przycisk usuwania produktu. */
    body.woocommerce-cart table.np-b2b-cart td.product-remove{
        width:32px!important;
        min-width:32px!important;
        max-width:32px!important;
        height:32px!important;
        right:10px!important;
    }
    body.woocommerce-cart a.remove.np-cart-remove{
        width:32px!important;
        height:32px!important;
        min-width:32px!important;
        min-height:32px!important;
    }
    body.woocommerce-cart .np-cart-trash-icon{
        width:15px!important;
        height:15px!important;
    }
}

/* NeoParts Product UI 1.1.22 — uproszczenie mobilnego koszyka. */
@media (max-width:520px){
    /* Na telefonie nazwa produktu jest zbędna — zostają zdjęcie, identyfikatory i dostępność. */
    body.woocommerce-cart .np-cart-product-title{
        display:none!important;
    }

    /* Po ukryciu nazwy dane produktu zaczynają się równo od góry. */
    body.woocommerce-cart .np-cart-product-copy{
        align-self:start!important;
        padding-top:2px!important;
    }

    /* „Ilość:” po lewej, regulator odsunięty w prawo. */
    body.woocommerce-cart table.np-b2b-cart td.product-quantity{
        display:grid!important;
        grid-template-columns:72px minmax(0,1fr)!important;
        column-gap:18px!important;
        align-items:center!important;
        width:100%!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity::before{
        justify-self:start!important;
        width:auto!important;
        margin:0!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity .np-cart-quantity{
        justify-self:end!important;
        margin-left:auto!important;
    }
}


/* NeoParts Product UI 1.1.23 — korekta mobilnego koszyka. */
@media (max-width:520px){
    /* Ukrywamy etykietę tabeli „Produkt:”, a przywracamy właściwą nazwę produktu. */
    body.woocommerce-cart table.np-b2b-cart td.product-name::before{
        display:none!important;
        content:none!important;
        width:0!important;
        margin:0!important;
        padding:0!important;
    }
    body.woocommerce-cart .np-cart-product-title{
        display:block!important;
    }

    /* Po usunięciu etykiety produkt korzysta z pełnej szerokości karty. */
    body.woocommerce-cart table.np-b2b-cart td.product-name{
        gap:0!important;
        width:100%!important;
    }
    body.woocommerce-cart .np-cart-product-cell{
        width:100%!important;
        flex:1 1 100%!important;
    }

    /* Regulator ilości zaczyna się dokładnie pod kolumną tekstową produktu.
       68 px zdjęcia + 12 px przerwy = 80 px. */
    body.woocommerce-cart table.np-b2b-cart td.product-quantity{
        display:grid!important;
        grid-template-columns:80px 132px minmax(0,1fr)!important;
        column-gap:0!important;
        align-items:center!important;
        width:100%!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity::before{
        display:block!important;
        content:"Ilość:"!important;
        justify-self:start!important;
        width:auto!important;
        margin:0!important;
        padding:0!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity .np-cart-quantity{
        grid-column:2!important;
        justify-self:start!important;
        margin:0!important;
    }
}

/* 1.1.24: darmowa dostawa jako zwykła wartość, bez kapitalików i bez pogrubienia. */
body.woocommerce-cart .np-b2b-summary-row>strong.np-b2b-summary-free{
    font-weight:400!important;
    text-transform:none!important;
    letter-spacing:normal!important;
}


/* 1.1.26 — sticky FiboSearch wyłączony globalnie na telefonach.
   Normalna wyszukiwarka / ikona w mobilnym nagłówku pozostaje bez zmian. */
@media (max-width:782px){
    body > .np-search-sticky-fixed,
    body > .dgwt-wcas-search-wrapp.np-search-sticky-fixed{
        display:none!important;
        visibility:hidden!important;
        pointer-events:none!important;
    }
}

/* 1.1.27: na mobile cały nieinteraktywny obszar kafelka produktu jest klikalny. */
@media(max-width:700px){
    body.np-product-list-active .np-list-card{cursor:pointer}
    body.np-product-list-active .np-list-card a,
    body.np-product-list-active .np-list-card button,
    body.np-product-list-active .np-list-card input{cursor:auto}
    body.np-product-list-active .np-list-card a,
    body.np-product-list-active .np-list-card button{cursor:pointer}
}

/* =========================================================
   NeoParts Product UI 1.1.72
   Sticky nagłówka obsługuje Blocksy. Stary pływający FiboSearch
   pozostaje wyłączony, żeby nie dublować natywnego nagłówka.
   ========================================================= */
body > .np-search-sticky-fixed,
body > .dgwt-wcas-search-wrapp.np-search-sticky-fixed,
.np-compact-header{
    display:none!important;
}

/* Nie pozwalamy staremu mechanizmowi ograniczać przewijania po aktualizacji. */
body.np-fibo-search-fixed,
body.np-compact-header-active{
    overflow:visible!important;
}


/* =========================================================
   NeoParts Product UI 1.1.73
   Blocksy sticky/shrink — usunięcie białej szczeliny przy
   powrocie z przypiętego nagłówka do pełnego rozmiaru.
   Mechanizmu sticky NIE modyfikujemy.
   ========================================================= */
@media (min-width: 1000px) {
    /*
     * Kolor pobrany z rzeczywistego tła nagłówka NeoParts:
     * RGB 16,18,20 = #101214.
     *
     * Podczas zmiany wysokości "Main Row" Blocksy potrafi na
     * pojedynczych klatkach odsłonić tło kontenera nadrzędnego.
     * Wymuszamy ten sam kolor na całym łańcuchu sticky.
     */
    #header,
    #header .ct-header,
    #header .ct-sticky-container,
    #header .ct-sticky-container > div,
    #header [data-device="desktop"],
    #header [data-device="desktop"] [data-row="middle"],
    #header [data-device="desktop"] [data-row="middle"] > div,
    #header [data-device="desktop"] [data-sticky],
    #header [data-device="desktop"] [data-sticky] > div {
        background-color: #101214 !important;
    }

    /*
     * 3 px "podkładki" pod kurczącym się wierszem.
     * Zakrywa subpikselową szczelinę, która pojawia się dokładnie
     * w momencie powiększania logo / wiersza przy dojeździe do góry.
     */
    #header [data-device="desktop"] [data-row="middle"][data-sticky],
    #header [data-device="desktop"] [data-row="middle"] {
        box-shadow: 0 3px 0 #101214 !important;
        margin-bottom: -1px !important;
        backface-visibility: hidden;
        transform: translateZ(0);
    }

    /*
     * Blocksy może przełączać wartość data-sticky między wariantami
     * "yes" i "yes:shrink". Reguła działa w obu stanach, ale nie
     * zmienia wysokości, animacji ani logiki przyklejania.
     */
    #header [data-device="desktop"] [data-sticky*="yes"] {
        outline: 1px solid #101214;
        outline-offset: -1px;
    }
}


/* =========================================================
   NeoParts Product UI 1.1.75 — KOSZYK
   Podsumowanie koszyka podąża za klientem przy długiej liście
   produktów i zatrzymuje się pod przypiętym nagłówkiem.
   ========================================================= */
@media (min-width:1100px){
    body.woocommerce-cart .np-b2b-cart-summary{
        position:sticky!important;
        top:96px!important;
        align-self:start!important;
        z-index:20!important;
    }

    body.woocommerce-cart .np-cart-collaterals{
        position:relative!important;
    }
}


/* 1.1.92 — spójna interpunkcja podsumowania koszyka i mocniejsze „Łącznie”. */
body.woocommerce-cart .np-b2b-summary-total>span{
    color:#172033!important;
    font-weight:700!important;
}


/* =========================================================
   NeoParts Product UI 1.1.96 — czyszczenie całego koszyka
   ========================================================= */
body.woocommerce-cart .np-cart-clear-wrap{
    display:flex!important;
    justify-content:flex-start!important;
    margin:14px 0 0!important;
}
body.woocommerce-cart .np-clear-cart-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    min-height:34px!important;
    padding:6px 10px!important;
    border:1px solid #e5484d!important;
    border-radius:6px!important;
    background:#fff!important;
    color:#c92a2a!important;
    font-size:13px!important;
    line-height:1.2!important;
    font-weight:600!important;
    box-shadow:none!important;
}
body.woocommerce-cart .np-clear-cart-button:hover,
body.woocommerce-cart .np-clear-cart-button:focus{
    border-color:#c92a2a!important;
    background:#fff7f7!important;
    color:#a61e1e!important;
}
body.woocommerce-cart .np-clear-cart-icon{
    width:14px!important;
    height:14px!important;
    fill:currentColor!important;
    flex:0 0 14px!important;
}
body.np-clear-cart-modal-open{
    overflow:hidden!important;
}
.np-clear-cart-modal[hidden]{
    display:none!important;
}
.np-clear-cart-modal{
    position:fixed!important;
    inset:0!important;
    z-index:999999!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:20px!important;
}
.np-clear-cart-modal__backdrop{
    position:absolute!important;
    inset:0!important;
    background:transparent!important;
}
.np-clear-cart-modal__dialog{
    position:relative!important;
    z-index:1!important;
    width:min(430px,100%)!important;
    padding:24px!important;
    border:1px solid #e4e7ec!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:0 20px 50px rgba(15,23,42,.22)!important;
    text-align:left!important;
}
.np-clear-cart-modal__dialog h2{
    margin:0 0 20px!important;
    color:#172033!important;
    font-size:18px!important;
    line-height:1.4!important;
    font-weight:700!important;
}
.np-clear-cart-modal__actions{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
}
.np-clear-cart-modal__actions .button{
    min-height:36px!important;
    margin:0!important;
    padding:7px 13px!important;
    border-radius:6px!important;
    font-weight:600!important;
    box-shadow:none!important;
}
.np-clear-cart-modal__actions .np-clear-cart-confirm{
    order:1!important;
    border:1px solid #d92d20!important;
    background:#d92d20!important;
    color:#fff!important;
}
.np-clear-cart-modal__actions .np-clear-cart-confirm:hover,
.np-clear-cart-modal__actions .np-clear-cart-confirm:focus{
    border-color:#b42318!important;
    background:#b42318!important;
    color:#fff!important;
}
.np-clear-cart-modal__actions .np-clear-cart-cancel{
    order:2!important;
    border:1px solid #cfd5df!important;
    background:#fff!important;
    color:#172033!important;
}
.np-clear-cart-modal__actions .np-clear-cart-cancel:hover,
.np-clear-cart-modal__actions .np-clear-cart-cancel:focus{
    background:#f6f7f9!important;
}
body.woocommerce-cart .np-cart-empty-state{
    grid-column:1/-1!important;
    width:100%!important;
    padding:42px 20px!important;
    border:1px solid #e4e7ec!important;
    border-radius:8px!important;
    background:#fff!important;
    text-align:center!important;
}
body.woocommerce-cart .np-cart-empty-state p{
    margin:0 0 18px!important;
    font-size:18px!important;
    font-weight:600!important;
    color:#172033!important;
}
body.woocommerce-cart .np-cart-continue-shopping{
    min-height:40px!important;
    padding:9px 18px!important;
    border:1px solid #ff7900!important;
    border-radius:6px!important;
    background:#ff7900!important;
    color:#fff!important;
    font-weight:600!important;
}
@media (max-width:782px){
    body.woocommerce-cart .np-cart-clear-wrap{
        margin-top:12px!important;
    }
    body.woocommerce-cart .np-clear-cart-button{
        width:100%!important;
    }
    .np-clear-cart-modal__dialog{
        padding:20px!important;
    }
    .np-clear-cart-modal__actions{
        flex-direction:column!important;
        align-items:stretch!important;
    }
    .np-clear-cart-modal__actions .button{
        width:100%!important;
    }
}


/* NeoParts Product UI 1.1.98 — dostępność nad ilością; częściowa dostępność w koszyku wyrównana do lewej jak na listach. */
body.np-product-list-active .np-list-card__purchase{
    justify-content:center!important;
    gap:7px!important;
}
body.np-product-list-active .np-list-availability{
    width:100%!important;
    min-height:22px!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
}
body.np-product-list-active .np-list-availability .np-status-block{
    margin:0!important;
}
body.np-product-list-active .np-list-actions{
    margin:0!important;
}

body.woocommerce-cart table.np-b2b-cart td.product-quantity{
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
}
body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability{
    align-self:center!important;
    width:118px!important;
    margin:0!important;
    text-align:left!important;
}
body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability .np-status-block{
    justify-content:flex-start!important;
    align-items:flex-start!important;
    text-align:left!important;
}
body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability .np-status__details{
    align-items:flex-start!important;
    text-align:left!important;
}

@media (max-width:520px){
    body.woocommerce-cart table.np-b2b-cart td.product-quantity{
        flex-direction:initial!important;
        row-gap:6px!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability{
        grid-column:2!important;
        grid-row:1!important;
        justify-self:start!important;
        align-self:end!important;
        margin:0!important;
        text-align:left!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability .np-status-block,
    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability .np-status__details{
        justify-content:flex-start!important;
        align-items:flex-start!important;
        text-align:left!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity::before{
        grid-column:1!important;
        grid-row:2!important;
        align-self:center!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity .np-cart-quantity{
        grid-column:2!important;
        grid-row:2!important;
    }
}


/* NeoParts Product UI 1.1.99 — szersza strefa ilości w koszyku + tylko zdjęcie/nazwa prowadzą do produktu. */
@media (min-width:783px){
    body.woocommerce-cart table.np-b2b-cart{
        --np-cart-columns:minmax(290px,1fr) 172px 132px 150px;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability{
        width:158px!important;
        max-width:158px!important;
    }
    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability .np-status__details{
        white-space:nowrap!important;
    }
}
body.np-product-list-active .np-list-card{
    cursor:default!important;
}
body.np-product-list-active .np-list-card__image,
body.np-product-list-active .np-list-card__title{
    cursor:pointer!important;
}


/* NeoParts Product UI 1.2.0 — koszyk: status dostępności i licznik ilości w jednym rzędzie. */
@media (min-width:783px){
    body.woocommerce-cart table.np-b2b-cart{
        --np-cart-columns:minmax(290px,1fr) 280px 118px 138px;
    }

    body.woocommerce-cart table.np-b2b-cart td.product-quantity{
        flex-direction:row!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:12px!important;
    }

    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability{
        flex:0 0 154px!important;
        width:154px!important;
        max-width:154px!important;
        align-self:center!important;
        margin:0!important;
        text-align:left!important;
    }

    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability .np-status-block{
        justify-content:flex-start!important;
        align-items:flex-start!important;
        text-align:left!important;
    }

    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability .np-status__details{
        white-space:nowrap!important;
        align-items:flex-start!important;
        text-align:left!important;
    }

    body.woocommerce-cart table.np-b2b-cart td.product-quantity .np-cart-quantity{
        flex:0 0 114px!important;
        width:114px!important;
        min-width:114px!important;
        max-width:114px!important;
        margin:0!important;
    }
}

/* NeoParts Product UI 1.2.1 — wspólny układ: dostępność + ilość w jednym rzędzie,
   kontrolka ilości 132 px oraz nagłówek „Ilość:” nad samą kontrolką. */
@media (min-width:1181px){
    body.np-product-list-active .np-list-card__purchase{
        flex-direction:row!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:8px!important;
        width:100%!important;
    }

    body.np-product-list-active .np-list-availability{
        flex:0 0 120px!important;
        width:120px!important;
        min-width:120px!important;
        max-width:120px!important;
        margin:0!important;
        align-self:center!important;
        text-align:left!important;
    }

    body.np-product-list-active .np-list-actions{
        display:flex!important;
        flex:1 1 auto!important;
        width:auto!important;
        min-width:0!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:8px!important;
        margin:0!important;
    }

    body.np-product-list-active .np-list-quantity{
        flex:0 0 132px!important;
        width:132px!important;
        min-width:132px!important;
        max-width:132px!important;
        height:42px!important;
        grid-template-columns:36px 60px 36px!important;
    }

    body.np-product-list-active .np-list-qty-btn{
        width:36px!important;
        min-width:36px!important;
        max-width:36px!important;
        height:40px!important;
        min-height:40px!important;
    }

    body.np-product-list-active .np-list-qty-input{
        width:60px!important;
        min-width:60px!important;
        max-width:60px!important;
        height:40px!important;
        line-height:40px!important;
    }
}

@media (min-width:783px){
    body.woocommerce-cart table.np-b2b-cart{
        --np-cart-columns:minmax(290px,1fr) 280px 118px 138px;
    }

    body.woocommerce-cart table.np-b2b-cart td.product-quantity{
        flex-direction:row!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:8px!important;
    }

    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability{
        flex:0 0 140px!important;
        width:140px!important;
        min-width:140px!important;
        max-width:140px!important;
        margin:0!important;
        align-self:center!important;
        text-align:left!important;
    }

    body.woocommerce-cart table.np-b2b-cart td.product-quantity>.np-cart-product-availability .np-status__details{
        white-space:nowrap!important;
    }

    body.woocommerce-cart table.np-b2b-cart td.product-quantity .np-cart-quantity{
        flex:0 0 132px!important;
        width:132px!important;
        min-width:132px!important;
        max-width:132px!important;
        height:42px!important;
        grid-template-columns:36px 60px 36px!important;
        margin:0!important;
    }

    /* 140 px status + 8 px odstępu = 148 px; pozostałe 132 px to kontrolka ilości. */
    body.woocommerce-cart table.np-b2b-cart th.product-quantity{
        padding-left:148px!important;
        justify-content:center!important;
        text-align:center!important;
        box-sizing:border-box!important;
    }

    body.woocommerce-cart table.np-b2b-cart th.product-price,
    body.woocommerce-cart table.np-b2b-cart th.product-subtotal{
        justify-content:center!important;
        text-align:center!important;
    }
}


/* NeoParts Product UI 1.2.2 — wyszukiwanie/kategorie w tym samym porządku co koszyk:
   produkt | dostępność + ilość | cena | akcja. */
@media (min-width:1101px){
    body.np-product-list-active .np-list-card{
        grid-template-columns:108px minmax(260px,1fr) 280px minmax(155px,180px) 118px!important;
        gap:16px!important;
        align-items:center!important;
    }

    body.np-product-list-active .np-list-card__image{grid-column:1!important;grid-row:1!important;}
    body.np-product-list-active .np-list-card__info{grid-column:2!important;grid-row:1!important;}

    body.np-product-list-active .np-list-card__purchase{
        grid-column:3!important;
        grid-row:1!important;
        display:grid!important;
        grid-template-columns:140px 132px!important;
        align-items:center!important;
        gap:8px!important;
        width:280px!important;
        min-width:280px!important;
        max-width:280px!important;
        margin:0!important;
    }

    body.np-product-list-active .np-list-availability{
        width:140px!important;
        min-width:140px!important;
        max-width:140px!important;
        min-height:0!important;
        margin:0!important;
        align-self:center!important;
        text-align:left!important;
    }

    body.np-product-list-active .np-list-availability .np-status-block{
        justify-content:flex-start!important;
        align-items:flex-start!important;
        text-align:left!important;
    }

    body.np-product-list-active .np-list-availability .np-status__details{
        white-space:nowrap!important;
        align-items:flex-start!important;
        text-align:left!important;
    }

    body.np-product-list-active .np-list-quantity{
        width:132px!important;
        min-width:132px!important;
        max-width:132px!important;
        height:42px!important;
        grid-template-columns:36px 60px 36px!important;
        margin:0!important;
        align-self:center!important;
    }

    body.np-product-list-active .np-list-card__price{
        grid-column:4!important;
        grid-row:1!important;
        width:100%!important;
        justify-self:end!important;
        text-align:right!important;
        margin:0!important;
    }

    body.np-product-list-active .np-list-actions{
        grid-column:5!important;
        grid-row:1!important;
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        justify-content:center!important;
        gap:6px!important;
        width:118px!important;
        min-width:118px!important;
        max-width:118px!important;
        margin:0!important;
    }

    body.np-product-list-active .np-list-add-to-cart,
    body.np-product-list-active .np-list-view-product,
    body.np-product-list-active .np-list-cart-view,
    body.np-product-list-active .np-list-cart-link,
    body.np-product-list-active .np-list-unavailable-action,
    body.np-product-list-active .np-list-unavailable-action>*{
        width:118px!important;
        min-width:118px!important;
        max-width:118px!important;
    }
}

/* Średnie szerokości: zachowujemy czytelny układ bez ściskania. */
@media (min-width:701px) and (max-width:1100px){
    body.np-product-list-active .np-list-card{
        grid-template-columns:96px minmax(220px,1fr) minmax(145px,170px)!important;
        gap:12px 16px!important;
    }
    body.np-product-list-active .np-list-card__purchase{
        grid-column:2/-1!important;
        display:flex!important;
        flex-direction:row!important;
        align-items:center!important;
        gap:8px!important;
        width:auto!important;
    }
    body.np-product-list-active .np-list-card__price{
        grid-column:3!important;
        grid-row:1!important;
    }
    body.np-product-list-active .np-list-actions{
        grid-column:2/-1!important;
        display:flex!important;
        align-items:center!important;
        gap:8px!important;
        width:auto!important;
    }
}

/* Telefon: nie wymuszamy desktopowego porządku kolumn. */
@media (max-width:700px){
    body.np-product-list-active .np-list-card{
        grid-template-areas:"image info" "price price" "purchase purchase" "actions actions"!important;
    }
    body.np-product-list-active .np-list-card__purchase{
        grid-area:purchase!important;
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:center!important;
        gap:8px!important;
        width:100%!important;
    }
    body.np-product-list-active .np-list-actions{
        grid-area:actions!important;
        display:flex!important;
        flex-wrap:wrap!important;
        gap:8px!important;
        width:100%!important;
    }
}

/* NeoParts Product UI 1.2.3 — search/category fixes:
   większy i stabilny przycisk, cena wyśrodkowana, zapis zł/netto i zł/brutto,
   większy odstęp między statusem a ilością. */
body.np-product-list-active .np-list-card__price{
    text-align:center!important;
    justify-self:center!important;
}
body.np-product-list-active .np-list-price-net,
body.np-product-list-active .np-list-price-gross{
    display:flex!important;
    align-items:baseline!important;
    justify-content:center!important;
    gap:3px!important;
    text-align:center!important;
    white-space:nowrap!important;
}
body.np-product-list-active .np-list-price-net{
    color:#111827!important;
    font-size:19px!important;
    line-height:1.15!important;
    font-weight:700!important;
}
body.np-product-list-active .np-list-price-amount{
    color:#111827!important;
    font-size:19px!important;
    line-height:1.15!important;
    font-weight:700!important;
}
body.np-product-list-active .np-list-price-unit{
    color:#344054!important;
    font-size:13px!important;
    line-height:1.15!important;
    font-weight:600!important;
}
body.np-product-list-active .np-list-price-gross{
    margin-top:4px!important;
    color:#667085!important;
    font-size:12px!important;
    line-height:1.15!important;
}
body.np-product-list-active .np-list-price-gross-amount,
body.np-product-list-active .np-list-price-gross-unit{
    color:#667085!important;
    font-size:12px!important;
    line-height:1.15!important;
    font-weight:500!important;
}

@media (min-width:1101px){
    body.np-product-list-active .np-list-card{
        grid-template-columns:108px minmax(250px,1fr) 294px minmax(150px,170px) 132px!important;
        gap:16px!important;
    }
    body.np-product-list-active .np-list-card__purchase{
        grid-template-columns:148px 132px!important;
        gap:14px!important;
        width:294px!important;
        min-width:294px!important;
        max-width:294px!important;
    }
    body.np-product-list-active .np-list-availability{
        width:148px!important;
        min-width:148px!important;
        max-width:148px!important;
    }
    body.np-product-list-active .np-list-actions{
        width:132px!important;
        min-width:132px!important;
        max-width:132px!important;
        align-items:stretch!important;
        justify-content:center!important;
    }
    body.np-product-list-active .np-list-add-to-cart,
    body.np-product-list-active .np-list-view-product,
    body.np-product-list-active .np-list-cart-view,
    body.np-product-list-active .np-list-cart-link,
    body.np-product-list-active .np-list-unavailable-action,
    body.np-product-list-active .np-list-unavailable-action>*{
        width:132px!important;
        min-width:132px!important;
        max-width:132px!important;
    }
    body.np-product-list-active .np-list-add-to-cart,
    body.np-product-list-active .np-list-view-product,
    body.np-product-list-active .np-list-cart-link,
    body.np-product-list-active .np-list-unavailable-action>*{
        min-height:42px!important;
        padding:8px 10px!important;
        font-size:12.5px!important;
        line-height:1.12!important;
    }
}

@media (min-width:701px) and (max-width:1100px){
    body.np-product-list-active .np-list-card__purchase{
        gap:12px!important;
    }
    body.np-product-list-active .np-list-card__price{
        text-align:center!important;
        justify-self:center!important;
    }
    body.np-product-list-active .np-list-actions{
        gap:10px!important;
    }
    body.np-product-list-active .np-list-add-to-cart,
    body.np-product-list-active .np-list-view-product,
    body.np-product-list-active .np-list-cart-link,
    body.np-product-list-active .np-list-unavailable-action>*{
        min-height:42px!important;
        padding:8px 12px!important;
        font-size:12.5px!important;
        line-height:1.12!important;
    }
}

/* NeoParts Product UI 1.2.4 — finalne ujednolicenie CTA w listach i produktach polecanych. */

/* Wyszukiwanie / kategorie: przycisk akcji nie może rozciągać się pionowo
   przy częściowej dostępności. */
@media (min-width:701px){
    body.np-product-list-active .np-list-actions > .np-list-add-to-cart,
    body.np-product-list-active .np-list-actions > .np-list-view-product,
    body.np-product-list-active .np-list-actions > .np-list-cart-link,
    body.np-product-list-active .np-list-unavailable-action > *{
        flex:0 0 42px!important;
        height:42px!important;
        min-height:42px!important;
        max-height:42px!important;
        align-self:center!important;
    }

    body.np-product-list-active .np-list-unavailable-action{
        align-items:center!important;
        justify-content:center!important;
        height:42px!important;
        min-height:42px!important;
        max-height:42px!important;
    }
}

/* Karta produktu: "Może spodoba Ci się również" i "Podobne produkty".
   Jeden standard wymiarów dla Dodaj do koszyka / Zapytaj o termin / Zapytaj o dostępność. */
body.single-product .upsells.products ul.products li.product .button,
body.single-product .related.products ul.products li.product .button,
body.single-product .upsells.products ul.products li.product a.button,
body.single-product .related.products ul.products li.product a.button,
body.single-product .upsells.products .np-inquiry-button--loop,
body.single-product .related.products .np-inquiry-button--loop,
body.single-product .upsells.products .np-inquiry-button,
body.single-product .related.products .np-inquiry-button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:150px!important;
    min-width:150px!important;
    max-width:150px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:10px auto 0!important;
    padding:7px 12px!important;
    border-radius:5px!important;
    background:#FF7900!important;
    background-color:#FF7900!important;
    border:1px solid #FF7900!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:700!important;
    line-height:1.12!important;
    text-align:center!important;
    white-space:normal!important;
    box-sizing:border-box!important;
    box-shadow:none!important;
}

body.single-product .upsells.products ul.products li.product .button:hover,
body.single-product .related.products ul.products li.product .button:hover,
body.single-product .upsells.products .np-inquiry-button--loop:hover,
body.single-product .related.products .np-inquiry-button--loop:hover,
body.single-product .upsells.products .np-inquiry-button:hover,
body.single-product .related.products .np-inquiry-button:hover{
    background:#E66D00!important;
    background-color:#E66D00!important;
    border-color:#E66D00!important;
    color:#fff!important;
}

@media (max-width:700px){
    body.single-product .upsells.products ul.products li.product .button,
    body.single-product .related.products ul.products li.product .button,
    body.single-product .upsells.products .np-inquiry-button--loop,
    body.single-product .related.products .np-inquiry-button--loop,
    body.single-product .upsells.products .np-inquiry-button,
    body.single-product .related.products .np-inquiry-button{
        width:145px!important;
        min-width:145px!important;
        max-width:145px!important;
        height:42px!important;
        min-height:42px!important;
        max-height:42px!important;
    }
}

/* NeoParts Product UI 1.2.5 — karta produktu:
   wyśrodkowanie nazwy i ceny w upsell/related + zwykła grubość tekstu przycisków. */
body.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title,
body.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
body.single-product .upsells.products ul.products li.product .ct-product-title,
body.single-product .related.products ul.products li.product .ct-product-title,
body.single-product .upsells.products ul.products li.product h2,
body.single-product .related.products ul.products li.product h2,
body.single-product .upsells.products ul.products li.product h3,
body.single-product .related.products ul.products li.product h3{
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
}

body.single-product .upsells.products ul.products li.product .price,
body.single-product .related.products ul.products li.product .price,
body.single-product .upsells.products ul.products li.product .price>* ,
body.single-product .related.products ul.products li.product .price>*{
    text-align:center!important;
}
body.single-product .upsells.products ul.products li.product .price,
body.single-product .related.products ul.products li.product .price{
    display:block!important;
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
}

body.single-product .upsells.products ul.products li.product .button,
body.single-product .related.products ul.products li.product .button,
body.single-product .upsells.products ul.products li.product a.button,
body.single-product .related.products ul.products li.product a.button,
body.single-product .upsells.products .np-inquiry-button--loop,
body.single-product .related.products .np-inquiry-button--loop,
body.single-product .upsells.products .np-inquiry-button,
body.single-product .related.products .np-inquiry-button{
    font-weight:400!important;
}


/* NeoParts Product UI 1.2.6 — drobne domknięcie spójności CTA. */

/* Po AJAX-owym dodaniu produktu link „Zobacz koszyk” ma być kompaktowy,
   a nie rozciągać wysokości całego wiersza. */
body.np-product-list-active .np-list-cart-view{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:0!important;
}
body.np-product-list-active .np-list-cart-view:empty{
    display:none!important;
}
body.np-product-list-active .np-list-cart-view .np-list-cart-link{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:8px 10px!important;
    box-sizing:border-box!important;
    line-height:1.12!important;
    white-space:normal!important;
}

@media (max-width:700px){
    body.np-product-list-active .np-list-cart-view,
    body.np-product-list-active .np-list-cart-view .np-list-cart-link{
        width:100%!important;
        min-width:0!important;
        max-width:none!important;
        height:42px!important;
        min-height:42px!important;
        max-height:42px!important;
    }
}

/* NeoParts Product UI 1.2.9 — wysuwany podgląd koszyka. */
.np-cart-drawer{
    position:fixed;
    top:var(--np-cart-drawer-top,76px);
    right:16px;
    z-index:100020;
    width:min(410px,calc(100vw - 24px));
    max-height:calc(100vh - var(--np-cart-drawer-top,76px) - 16px);
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:1px solid #e4e7ec;
    border-radius:10px;
    background:#fff;
    box-shadow:0 18px 50px rgba(16,24,40,.16);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate3d(24px,0,0) scale(.985);
    transform-origin:top right;
    transition:transform .2s ease,opacity .2s ease,visibility 0s linear .2s;
}
.np-cart-drawer.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate3d(0,0,0) scale(1);
    transition:transform .2s ease,opacity .2s ease,visibility 0s;
}
.np-cart-drawer__header{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:54px;
    padding:12px 16px;
    border-bottom:1px solid #eaecf0;
}
.np-cart-drawer__header strong{
    color:#101828;
    font-size:17px;
    line-height:1.2;
    font-weight:700;
}
.np-cart-drawer__close{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:32px!important;
    min-width:32px!important;
    height:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #d0d5dd!important;
    border-radius:6px!important;
    background:#fff!important;
    color:#475467!important;
    font-size:21px!important;
    line-height:1!important;
    font-weight:400!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.np-cart-drawer__close:hover{
    border-color:#FF7900!important;
    color:#FF7900!important;
    background:#fff7ed!important;
}
.np-cart-drawer__content{
    min-height:90px;
    overflow:auto;
    overscroll-behavior:contain;
}
.np-cart-drawer__loading,
.np-cart-drawer__empty{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:14px;
    min-height:150px;
    padding:24px 18px;
    color:#667085;
    text-align:center;
    font-size:14px;
}
.np-cart-drawer__empty strong{color:#344054;font-size:15px}
.np-cart-drawer__items{
    display:flex;
    flex-direction:column;
    gap:0;
}
.np-cart-drawer__item{
    position:relative;
    display:grid;
    grid-template-columns:70px minmax(0,1fr);
    gap:12px;
    align-items:center;
    padding:12px 16px;
    border-bottom:1px solid #f0f2f5;
    background:#fff;
    transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;
}
.np-cart-drawer__thumb{
    display:flex;
    align-items:center;
    justify-content:center;
    width:70px;
    height:70px;
    padding:4px;
    border:1px solid #f2f4f7;
    border-radius:7px;
    background:#fff;
    overflow:hidden;
    box-sizing:border-box;
}
.np-cart-drawer__thumb img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
}
.np-cart-drawer__item-main{min-width:0;text-align:left}
.np-cart-drawer__item-name{
    display:block;
    margin:0 0 7px;
    color:#101828!important;
    font-size:13.5px;
    line-height:1.32;
    font-weight:650;
    text-decoration:none!important;
}
.np-cart-drawer__item-name:hover{color:#FF7900!important}
.np-cart-drawer__item-meta{
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:4px;
    color:#667085;
    font-size:12.5px;
    line-height:1.3;
}
.np-cart-drawer__item-meta strong{color:#344054;font-weight:700}
.np-cart-drawer__unit-price{color:#344054;font-weight:600;white-space:nowrap}
.np-cart-drawer__unit-price small{margin-left:1px;color:#667085;font-size:11px;font-weight:500}
.np-cart-drawer__summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:14px 16px 8px;
    color:#344054;
    font-size:14px;
}
.np-cart-drawer__summary strong{
    color:#101828;
    font-size:17px;
    font-weight:750;
}
.np-cart-drawer__actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    padding:10px 16px 16px;
}
.np-cart-drawer__actions .button,
.np-cart-drawer__shop{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    margin:0!important;
    padding:9px 12px!important;
    border-radius:6px!important;
    font-size:12.5px!important;
    line-height:1.15!important;
    font-weight:600!important;
    text-align:center!important;
    text-decoration:none!important;
    box-shadow:none!important;
}
.np-cart-drawer__cart,
.np-cart-drawer__shop{
    border:1px solid #FF7900!important;
    background:#fff!important;
    color:#c85f00!important;
}
.np-cart-drawer__cart:hover,
.np-cart-drawer__shop:hover{background:#fff7ed!important;color:#a94f00!important}
.np-cart-drawer__checkout{
    border:1px solid #FF7900!important;
    background:#FF7900!important;
    color:#fff!important;
}
.np-cart-drawer__checkout:hover{background:#E66D00!important;border-color:#E66D00!important;color:#fff!important}

/* Nowo dodany produkt: delikatna poświata marki, bez migania. */
.np-cart-drawer__item.is-just-added{
    z-index:1;
    border-color:rgba(255,121,0,.72);
    background:#fffaf5;
    animation:npCartItemGlow 1.65s ease-out both;
}
@keyframes npCartItemGlow{
    0%{box-shadow:inset 0 0 0 2px rgba(255,121,0,.92),0 0 0 0 rgba(255,121,0,.32);background:#fff4e8}
    38%{box-shadow:inset 0 0 0 1px rgba(255,121,0,.72),0 0 18px 3px rgba(255,121,0,.20);background:#fff8f1}
    100%{box-shadow:inset 0 0 0 0 rgba(255,121,0,0),0 0 0 0 rgba(255,121,0,0);background:#fff}
}

/* Stary link „Zobacz koszyk” przy kafelku nie jest już potrzebny — feedback daje drawer. */
body.np-product-list-active .np-list-cart-view{display:none!important}

@media (prefers-reduced-motion:reduce){
    .np-cart-drawer{transition:none!important}
    .np-cart-drawer__item.is-just-added{animation:none!important;box-shadow:inset 0 0 0 2px rgba(255,121,0,.72);background:#fff8f1}
}
@media (max-width:782px){
    .np-cart-drawer{
        right:10px;
        width:calc(100vw - 20px);
        max-height:calc(100vh - var(--np-cart-drawer-top,68px) - 10px);
        border-radius:9px;
    }
    .np-cart-drawer__actions{grid-template-columns:1fr}
    .np-cart-drawer__item{grid-template-columns:62px minmax(0,1fr);padding:11px 13px}
    .np-cart-drawer__thumb{width:62px;height:62px}
}


/* NeoParts Product UI 1.2.10 — kompaktowy mini-koszyk inspirowany proporcjami TVH. */
@media (min-width:783px){
    .np-cart-drawer{
        width:320px;
        max-height:min(480px,calc(100vh - var(--np-cart-drawer-top,76px) - 16px));
        border-radius:7px;
        box-shadow:0 14px 36px rgba(16,24,40,.16);
    }
    .np-cart-drawer__header{
        min-height:46px;
        padding:9px 12px;
    }
    .np-cart-drawer__header strong{
        font-size:15px;
    }
    .np-cart-drawer__close{
        width:28px!important;
        min-width:28px!important;
        height:28px!important;
        min-height:28px!important;
        border-radius:5px!important;
        font-size:18px!important;
    }
    .np-cart-drawer__content{
        display:flex;
        flex-direction:column;
        min-height:0;
        overflow:hidden;
    }
    .np-cart-drawer__items{
        flex:1 1 auto;
        min-height:0;
        overflow-y:auto;
        overscroll-behavior:contain;
    }
    .np-cart-drawer__item{
        grid-template-columns:50px minmax(0,1fr);
        gap:9px;
        min-height:64px;
        padding:8px 12px;
    }
    .np-cart-drawer__thumb{
        width:50px;
        height:50px;
        padding:3px;
        border-radius:5px;
    }
    .np-cart-drawer__item-name{
        margin-bottom:4px;
        font-size:12px;
        line-height:1.25;
    }
    .np-cart-drawer__item-meta{
        gap:3px;
        font-size:11.5px;
        line-height:1.2;
    }
    .np-cart-drawer__unit-price small{
        font-size:10px;
    }
    .np-cart-drawer__summary{
        flex:0 0 auto;
        padding:10px 12px 6px;
        font-size:12.5px;
        background:#fff;
    }
    .np-cart-drawer__summary strong{
        font-size:15px;
    }
    .np-cart-drawer__actions{
        flex:0 0 auto;
        gap:8px;
        padding:8px 12px 12px;
        background:#fff;
    }
    .np-cart-drawer__actions .button,
    .np-cart-drawer__shop{
        min-height:36px!important;
        padding:7px 8px!important;
        border-radius:4px!important;
        font-size:11.5px!important;
        font-weight:500!important;
    }
    .np-cart-drawer__loading,
    .np-cart-drawer__empty{
        min-height:120px;
        padding:18px 14px;
        font-size:13px;
    }
}

/* NeoParts Product UI 1.2.11 — automatyczne zamknięcie mini-koszyka jest zsynchronizowane z końcem 1,65 s poświaty nowo dodanej pozycji. */


/* NeoParts Product UI 1.2.12 — dopracowanie mobile.
   1) licznik ilości na listach ma być zwarty jak w koszyku,
   2) na telefonie po dodaniu produktu pokazujemy tylko lekkie potwierdzenie,
      a nie pełny mini-koszyk,
   3) standardowy pasek sklepu/kuponu ma zajmować mniej miejsca. */
@media (max-width:700px){
    body.np-product-list-active .np-list-card__purchase{
        display:flex!important;
        flex-direction:column!important;
        flex-wrap:nowrap!important;
        align-items:flex-start!important;
        justify-content:flex-start!important;
        gap:10px!important;
    }

    body.np-product-list-active .np-list-quantity{
        display:grid!important;
        grid-template-columns:42px 66px 42px!important;
        grid-template-rows:50px!important;
        flex:0 0 150px!important;
        width:150px!important;
        min-width:150px!important;
        max-width:150px!important;
        height:52px!important;
        min-height:52px!important;
        max-height:52px!important;
        margin:0!important;
        padding:0!important;
        overflow:hidden!important;
        border:1px solid #d0d5dd!important;
        border-radius:6px!important;
        box-sizing:border-box!important;
        background:#fff!important;
        align-self:flex-start!important;
    }
    body.np-product-list-active .np-list-qty-btn{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:42px!important;
        min-width:42px!important;
        max-width:42px!important;
        height:50px!important;
        min-height:50px!important;
        max-height:50px!important;
        margin:0!important;
        padding:0!important;
        border:0!important;
        border-radius:0!important;
        font-size:18px!important;
        line-height:1!important;
        box-sizing:border-box!important;
    }
    body.np-product-list-active .np-list-qty-input{
        display:block!important;
        width:66px!important;
        min-width:66px!important;
        max-width:66px!important;
        height:50px!important;
        min-height:50px!important;
        max-height:50px!important;
        margin:0!important;
        padding:0 4px!important;
        border-top:0!important;
        border-bottom:0!important;
        border-left:1px solid #eaecf0!important;
        border-right:1px solid #eaecf0!important;
        border-radius:0!important;
        text-align:center!important;
        font-size:16px!important;
        line-height:50px!important;
        box-sizing:border-box!important;
    }

    /* Mobilne potwierdzenie dodania — jedna pozycja, bez pełnej listy koszyka. */
    .np-cart-drawer.is-mobile-feedback{
        top:auto!important;
        right:12px!important;
        bottom:14px!important;
        left:12px!important;
        width:auto!important;
        max-width:none!important;
        max-height:none!important;
        border-radius:10px!important;
        transform:translate3d(0,20px,0) scale(.985)!important;
        transform-origin:bottom center!important;
        box-shadow:0 14px 40px rgba(16,24,40,.20)!important;
    }
    .np-cart-drawer.is-mobile-feedback.is-open{
        transform:translate3d(0,0,0) scale(1)!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__header{
        min-height:44px!important;
        padding:9px 12px!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__header strong{
        font-size:14px!important;
        font-weight:700!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__close{
        width:28px!important;
        min-width:28px!important;
        height:28px!important;
        min-height:28px!important;
        font-size:18px!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__content{
        min-height:0!important;
        overflow:hidden!important;
        display:block!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__items{
        display:block!important;
        overflow:hidden!important;
        max-height:none!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__item{
        display:none!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__item:first-child{
        display:grid!important;
        grid-template-columns:58px minmax(0,1fr)!important;
        gap:10px!important;
        min-height:76px!important;
        padding:10px 12px!important;
        border-bottom:0!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__thumb{
        width:58px!important;
        height:58px!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__item-name{
        margin-bottom:4px!important;
        font-size:13px!important;
        line-height:1.28!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__item-meta{
        font-size:12px!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__summary,
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__checkout{
        display:none!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__actions{
        display:block!important;
        padding:0 12px 12px!important;
    }
    .np-cart-drawer.is-mobile-feedback .np-cart-drawer__cart{
        display:flex!important;
        width:100%!important;
        min-height:40px!important;
        font-size:12px!important;
        font-weight:500!important;
    }
}

/* Standardowy WooCommerce Store Notice / demo_store — ciaśniejszy na telefonie.
   Reguły są celowo ograniczone do natywnych klas, aby nie dotykać innych komunikatów. */
@media (max-width:782px){
    body .woocommerce-store-notice,
    body p.demo_store{
        min-height:0!important;
        margin:0!important;
        padding:9px 44px 9px 14px!important;
        font-size:13px!important;
        line-height:1.35!important;
    }
    body .woocommerce-store-notice__dismiss-link,
    body p.demo_store .woocommerce-store-notice__dismiss-link{
        right:10px!important;
        top:50%!important;
        transform:translateY(-50%)!important;
    }
}

/* NeoParts Product UI 1.2.13 — finalny szlif mobilnego koszyka.
   - „Wyczyść koszyk” pozostaje dyskretnym przyciskiem, nie pełną belką,
   - układ cen w koszyku pozostaje jak w 1.2.12,
   - mobilny Store Notice zajmuje mniej wysokości. */
@media (max-width:782px){
    body.woocommerce-cart .np-cart-clear-wrap{
        justify-content:flex-start!important;
    }
    body.woocommerce-cart .np-clear-cart-button{
        width:auto!important;
        min-width:0!important;
        max-width:max-content!important;
        align-self:flex-start!important;
        padding:6px 10px!important;
    }

    body .woocommerce-store-notice,
    body p.demo_store{
        padding:7px 40px 7px 12px!important;
        font-size:12.5px!important;
        line-height:1.3!important;
    }
}

/* NeoParts Product UI 1.2.14 — ceny na listach produktów.
   W wynikach wyszukiwania i kategoriach cały blok ceny netto/brutto
   jest wyrównany do lewej. Nie dotyczy koszyka. */
body.np-product-list-active .np-list-card__price{
    text-align:left!important;
    justify-self:start!important;
}
body.np-product-list-active .np-list-price-net,
body.np-product-list-active .np-list-price-gross{
    justify-content:flex-start!important;
    text-align:left!important;
}


/* =========================================================
   NeoParts Product UI 1.2.16 — finalny szlif mobile produktu i koszyka.
   - pojedynczy produkt: niski poziomy CTA obok ilości,
   - bez natywnego linku „Zobacz koszyk” obok przycisku,
   - koszyk: takie same boczne marginesy jak checkout,
   - wyraźny odstęp między „Wyczyść koszyk” a podsumowaniem.
   ========================================================= */
@media (max-width:700px){
    body.single-product form.cart{
        display:flex!important;
        flex-direction:row!important;
        flex-wrap:nowrap!important;
        align-items:stretch!important;
        justify-content:flex-start!important;
        gap:10px!important;
        width:100%!important;
        max-width:100%!important;
        margin-top:14px!important;
        box-sizing:border-box!important;
    }

    body.single-product form.cart .quantity{
        flex:0 0 100px!important;
        width:100px!important;
        min-width:100px!important;
        max-width:100px!important;
        height:44px!important;
        min-height:44px!important;
        margin:0!important;
        box-sizing:border-box!important;
    }

    body.single-product form.cart .single_add_to_cart_button,
    body.single-product button.single_add_to_cart_button{
        display:inline-flex!important;
        flex:1 1 auto!important;
        align-items:center!important;
        justify-content:center!important;
        width:auto!important;
        min-width:0!important;
        max-width:none!important;
        height:44px!important;
        min-height:44px!important;
        max-height:44px!important;
        margin:0!important;
        padding:8px 14px!important;
        border-radius:6px!important;
        font-size:13px!important;
        line-height:1.15!important;
        font-weight:600!important;
        white-space:nowrap!important;
        text-align:center!important;
        box-sizing:border-box!important;
    }

    /* WooCommerce potrafi po AJAX-ie dorysować drugi CTA obok głównego przycisku. */
    body.single-product form.cart a.added_to_cart.wc-forward,
    body.single-product .summary a.added_to_cart.wc-forward,
    body.single-product a.added_to_cart{
        display:none!important;
    }
}

@media (max-width:520px){
    /* 12 px z każdej strony — identyczna logika szerokości jak mobilny checkout. */
    body.woocommerce-cart .np-b2b-cart-layout{
        width:calc(100% - 24px)!important;
        max-width:none!important;
        margin-left:auto!important;
        margin-right:auto!important;
        box-sizing:border-box!important;
    }

    body.woocommerce-cart .np-b2b-cart-main,
    body.woocommerce-cart .np-b2b-cart-form,
    body.woocommerce-cart table.np-b2b-cart,
    body.woocommerce-cart .np-b2b-cart-summary,
    body.woocommerce-cart .np-cart-collaterals{
        width:100%!important;
        max-width:100%!important;
        box-sizing:border-box!important;
    }

    body.woocommerce-cart .np-cart-clear-wrap{
        margin-top:14px!important;
        margin-bottom:0!important;
    }

    body.woocommerce-cart .np-b2b-cart-summary{
        margin-top:20px!important;
    }
}

/* =========================================================
   NeoParts Product UI 1.2.17 — poprawki wspólne
   ========================================================= */

/* Utrudnienie zwykłego kopiowania/przeciągania zdjęć produktowych.
   Nie jest to zabezpieczenie absolutne — obraz wyświetlany w przeglądarce
   zawsze może zostać pozyskany technicznie. */
.woocommerce img,
.single-product .woocommerce-product-gallery img,
.wc-block-grid__product-image img,
.wp-block-woocommerce-product-collection img,
.product-category img,
a[href*="/kategoria-produktu/"] img,
.np-list-card__image img{
    -webkit-user-drag:none!important;
    user-select:none!important;
    -webkit-user-select:none!important;
}

/* Formularz Warunki B2B — Forminator ID 598, tylko telefon. */
@media (max-width:782px){
    #forminator-module-598,
    .forminator-custom-form[data-form-id="598"]{
        width:calc(100% - 32px)!important;
        max-width:calc(100% - 32px)!important;
        margin-left:auto!important;
        margin-right:auto!important;
        box-sizing:border-box!important;
    }
    #forminator-module-598 .forminator-row,
    .forminator-custom-form[data-form-id="598"] .forminator-row{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        box-sizing:border-box!important;
    }
    #forminator-module-598 .forminator-col,
    .forminator-custom-form[data-form-id="598"] .forminator-col,
    #forminator-module-598 .forminator-field,
    .forminator-custom-form[data-form-id="598"] .forminator-field{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
    }
    #forminator-module-598 input,
    #forminator-module-598 select,
    #forminator-module-598 textarea,
    .forminator-custom-form[data-form-id="598"] input,
    .forminator-custom-form[data-form-id="598"] select,
    .forminator-custom-form[data-form-id="598"] textarea{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
    }

    /* X w pomarańczowym Store Notice — środek koła w obu osiach. */
    body .woocommerce-store-notice__dismiss-link,
    body p.demo_store .woocommerce-store-notice__dismiss-link{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:36px!important;
        min-width:36px!important;
        height:36px!important;
        min-height:36px!important;
        margin:0!important;
        padding:0!important;
        top:50%!important;
        right:10px!important;
        transform:translateY(-50%)!important;
        line-height:1!important;
        text-align:center!important;
        box-sizing:border-box!important;
    }
}


/* =========================================================
   NeoParts Product UI 1.2.18 — kontrolowana korekta katalogu
   ========================================================= */

.np-mobile-product-meta{display:none!important}

@media (max-width:700px){
    body.np-product-list-active ul.products li.product:not(.product-category) .np-mobile-product-meta,
    body.np-product-list-active .products li.product:not(.product-category) .np-mobile-product-meta{
        display:block!important;
        width:max-content!important;
        max-width:100%!important;
        min-height:3.9em!important;
        margin:4px auto 10px!important;
        color:#667085!important;
        font-size:10.5px!important;
        line-height:1.35!important;
        font-weight:400!important;
        text-align:left!important;
        box-sizing:border-box!important;
    }
    body.np-product-list-active .np-mobile-product-meta>div{
        display:block!important;
        margin:0!important;
        text-align:left!important;
        overflow-wrap:anywhere!important;
    }
    body.np-product-list-active .np-mobile-product-meta strong{
        color:#344054!important;
        font-weight:600!important;
    }
}


/* ==========================================================
   NeoParts Product UI 1.2.19 — końcowe korekty prezentacji
   ========================================================== */

/* „Nowości” na stronie głównej: Kod towaru pod nazwą produktu. */
body.home .np-home-product-code,
body.front-page .np-home-product-code{
    width:100%;
    margin:2px auto 10px!important;
    text-align:center!important;
    color:#667085!important;
    font-size:12px!important;
    line-height:1.35!important;
}
body.home .np-home-product-code strong,
body.front-page .np-home-product-code strong{
    color:#344054!important;
    font-weight:600!important;
}

/* Telefon: sortowanie ma być wyraźnie bardziej zwarte, bez zmiany układu kafelków. */
@media (max-width:700px){
    body.np-product-list-active .woocommerce-ordering{
        width:210px!important;
        max-width:calc(100% - 48px)!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }
    body.np-product-list-active .woocommerce-ordering select,
    body.np-product-list-active .woocommerce-ordering select.orderby{
        width:100%!important;
        min-height:40px!important;
        height:40px!important;
        padding:0 12px!important;
        font-size:13px!important;
        line-height:40px!important;
        border-radius:5px!important;
    }

    body.home .np-home-product-code,
    body.front-page .np-home-product-code{
        margin-top:-2px!important;
        margin-bottom:12px!important;
        font-size:11.5px!important;
    }
}

/* Warunki B2B / Forminator 598: nieco węższy i spokojniejszy formularz na telefonie. */
@media (max-width:782px){
    #forminator-module-598,
    .forminator-custom-form[data-form-id="598"]{
        width:calc(100% - 64px)!important;
        max-width:600px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }

    #forminator-module-598 .forminator-row,
    .forminator-custom-form[data-form-id="598"] .forminator-row{
        margin-bottom:16px!important;
    }

    #forminator-module-598 input:not([type="radio"]):not([type="checkbox"]),
    #forminator-module-598 select,
    .forminator-custom-form[data-form-id="598"] input:not([type="radio"]):not([type="checkbox"]),
    .forminator-custom-form[data-form-id="598"] select{
        min-height:48px!important;
        padding-top:10px!important;
        padding-bottom:10px!important;
    }

    #forminator-module-598 textarea,
    .forminator-custom-form[data-form-id="598"] textarea{
        min-height:132px!important;
    }
}

@media (max-width:390px){
    #forminator-module-598,
    .forminator-custom-form[data-form-id="598"]{
        width:calc(100% - 40px)!important;
    }
}


/* 1.2.20 — dane produktu w Nowościach i rekomendacjach. */
.np-compact-product-meta{
    width:max-content;
    max-width:100%;
    margin:5px auto 10px!important;
    text-align:left!important;
    color:#667085!important;
    font-size:11.5px!important;
    line-height:1.38!important;
}
.np-compact-product-meta div{margin:0!important;padding:0!important}
.np-compact-product-meta span{color:#667085!important;font-weight:400!important}
.np-compact-product-meta strong{color:#344054!important;font-weight:600!important}
body.single-product .upsells.products .np-compact-product-meta,
body.single-product .related.products .np-compact-product-meta{
    min-height:48px;
}
@media(max-width:700px){
    .np-compact-product-meta{
        min-height:46px;
        font-size:10.5px!important;
        line-height:1.35!important;
    }
}


/* ==========================================================
   NeoParts Product UI 1.2.21 — końcowa korekta metadanych
   ========================================================== */

/* Nowości: zachowujemy równą wysokość sekcji danych także przy wielu produktach. */
.neoparts-nowosci .np-compact-product-meta{
    min-height:48px;
}

/* W danych identyfikacyjnych tekst ma być czytany od lewej,
   ale cały blok pozostaje optycznie wyśrodkowany pod produktem. */
body.single-product .upsells.products .np-compact-product-meta,
body.single-product .related.products .np-compact-product-meta,
.neoparts-nowosci .np-compact-product-meta{
    text-align:left!important;
}


/* ==========================================================
   NeoParts Product UI 1.2.22 — Nowości i rekomendacje
   ========================================================== */

/* Dane identyfikacyjne w małych kafelkach mają wspólną, stałą lewą
   krawędź obszaru treści. Nazwa i cena pozostają wyśrodkowane. */
.neoparts-nowosci .np-compact-product-meta,
body.single-product .upsells.products .np-compact-product-meta,
body.single-product .related.products .np-compact-product-meta{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-height:48px!important;
    margin:6px 0 10px!important;
    padding:0!important;
    box-sizing:border-box!important;
    text-align:left!important;
}
.neoparts-nowosci .np-compact-product-meta>div,
body.single-product .upsells.products .np-compact-product-meta>div,
body.single-product .related.products .np-compact-product-meta>div{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
}

/* Rekomendacje: stałe wysokości nazwy, danych i ceny wyrównują pierwszą
   akcję każdego produktu, niezależnie od liczby późniejszych przycisków. */
body.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title,
body.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
body.single-product .upsells.products ul.products li.product .ct-product-title,
body.single-product .related.products ul.products li.product .ct-product-title,
body.single-product .upsells.products ul.products li.product h2,
body.single-product .related.products ul.products li.product h2,
body.single-product .upsells.products ul.products li.product h3,
body.single-product .related.products ul.products li.product h3{
    min-height:44px!important;
    margin-bottom:0!important;
}
body.single-product .upsells.products ul.products li.product .price,
body.single-product .related.products ul.products li.product .price{
    min-height:44px!important;
    margin-top:0!important;
    margin-bottom:0!important;
}

/* Nowości: metadane zaczynają się od lewej krawędzi treści kafelka,
   bez centrowania krótkiej pojedynczej linii (np. samego kodu towaru). */
.neoparts-nowosci .np-compact-product-meta{
    min-height:48px!important;
}

@media (max-width:700px){
    .neoparts-nowosci .np-compact-product-meta,
    body.single-product .upsells.products .np-compact-product-meta,
    body.single-product .related.products .np-compact-product-meta{
        width:100%!important;
        max-width:none!important;
        min-height:46px!important;
        margin:6px 0 10px!important;
        padding:0!important;
        text-align:left!important;
    }

    body.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title,
    body.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
    body.single-product .upsells.products ul.products li.product .ct-product-title,
    body.single-product .related.products ul.products li.product .ct-product-title,
    body.single-product .upsells.products ul.products li.product h2,
    body.single-product .related.products ul.products li.product h2,
    body.single-product .upsells.products ul.products li.product h3,
    body.single-product .related.products ul.products li.product h3{
        min-height:4.1em!important;
    }

    body.single-product .upsells.products ul.products li.product .price,
    body.single-product .related.products ul.products li.product .price{
        min-height:3.2em!important;
    }
}


/* ==========================================================
   NeoParts Product UI 1.2.23 — desktop: centrowanie bloku danych
   ========================================================== */

/* Desktop: Kod towaru / Nr katalogowy / Jakość są wyrównane do lewej
   wewnątrz własnego bloku, ale sam blok jest wyśrodkowany pod nazwą
   produktu. Mobile pozostaje bez zmian względem 1.2.22. */
@media (min-width:701px){
    .neoparts-nowosci .np-compact-product-meta,
    body.single-product .upsells.products .np-compact-product-meta,
    body.single-product .related.products .np-compact-product-meta{
        display:block!important;
        width:max-content!important;
        max-width:100%!important;
        min-height:48px!important;
        margin:6px auto 10px!important;
        padding:0!important;
        text-align:left!important;
    }

    .neoparts-nowosci .np-compact-product-meta>div,
    body.single-product .upsells.products .np-compact-product-meta>div,
    body.single-product .related.products .np-compact-product-meta>div{
        width:auto!important;
        text-align:left!important;
    }
}
