/* ================= SKLEP – Networkserwis ================= */
.shop-main,.page-main{--ink:#0f172a;--ink2:#475569;--rule:#e2e8f0;--brand:#0d9488;--brand2:#14b8a6}

/* Nagłówek listy produktów */
.shop-hero{background:var(--bg);color:var(--text);padding:56px 0 34px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.shop-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(520px 300px at 90% 0,rgba(59,130,246,.2),transparent 60%),radial-gradient(420px 260px at 0 100%,rgba(45,212,191,.12),transparent 60%);pointer-events:none}
.shop-hero .container{position:relative}
.shop-hero h1{font-size:clamp(2rem,4vw,2.8rem);letter-spacing:-.03em;margin:8px 0 10px}
.shop-hero p{color:var(--muted);max-width:640px;font-size:1.06rem}
.crumbs{font-size:.85rem;color:var(--muted)}
.crumbs a:hover{color:var(--accent)}
.crumbs-dark{color:#64748b;margin-bottom:22px}
.crumbs-dark a{color:#0f172a}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.chip{padding:8px 16px;border:1px solid var(--line);border-radius:99px;font-size:.9rem;color:var(--muted);transition:.2s}
.chip:hover{color:var(--text);border-color:#34466b}
.chip.is-active{background:var(--accent);border-color:var(--accent);color:#06121f;font-weight:600}

.shop-content{padding:40px 20px 90px}
.shop-main .woocommerce-products-header{display:none}
.shop-main .woocommerce-result-count{color:var(--ink2);font-size:.9rem;margin:6px 0 24px}
.shop-main .woocommerce-ordering select{padding:9px 12px;border-radius:10px;border:1px solid var(--rule);background:#fff;color:var(--ink);font:inherit;font-size:.9rem;width:auto}

/* Siatka produktów */
.shop-main ul.products{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:0;padding:0;clear:both}
.shop-main ul.products::before,.shop-main ul.products::after{display:none}
.shop-main ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:#fff;border:1px solid var(--rule);border-radius:16px;padding:0 0 22px;display:flex;flex-direction:column;overflow:hidden;transition:.25s;position:relative}
.shop-main ul.products li.product:hover{box-shadow:0 20px 40px -24px rgba(15,23,42,.35);transform:translateY(-3px)}
.shop-main ul.products li.product a img{margin:0 0 18px!important;aspect-ratio:16/10;object-fit:cover;width:100%;background:#eef2f7}
.shop-main ul.products li.product .woocommerce-loop-product__title{font-size:1.08rem!important;font-weight:700;color:var(--ink);padding:0 22px!important;margin-bottom:8px;line-height:1.35}
.shop-main ul.products li.product .price{display:block;padding:0 22px;color:var(--ink)!important;font-size:1.35rem!important;font-weight:800;letter-spacing:-.02em;margin-bottom:18px!important}
.shop-main ul.products li.product .price del{color:#94a3b8;font-size:1rem;font-weight:500}
.shop-main ul.products li.product .price ins{text-decoration:none}
.shop-main .nsw-suffix,.shop-main .woocommerce-price-suffix{font-size:.85rem;font-weight:500;color:var(--ink2);letter-spacing:0}
.shop-main ul.products li.product .button{margin:auto 22px 0!important;text-align:center}
.shop-main ul.products li.product .added_to_cart{padding:10px 22px 0;font-size:.88rem;color:var(--brand);font-weight:600}
.shop-main span.onsale{background:var(--accent);color:#06121f;border-radius:99px;min-height:auto;min-width:auto;padding:4px 12px;line-height:1.4;font-size:.75rem;font-weight:700;top:14px;left:14px;right:auto;margin:0}

/* Przyciski */
.shop-main .button,.shop-main button.button,.shop-main a.button,.shop-main input.button,.shop-main #respond input#submit,
.page-main .button,.page-main a.button,.page-main button.button,
.page-main .wc-block-components-button:not(.is-link),.shop-main .wc-block-components-button:not(.is-link),
.page-main .wp-element-button,.shop-main .wp-element-button{
  background:var(--ink)!important;color:#fff!important;border:0!important;border-radius:10px!important;padding:12px 20px!important;font-weight:600!important;font-family:inherit!important;font-size:.95rem!important;line-height:1.3!important;transition:.2s!important;text-decoration:none!important}
.shop-main .button:hover,.page-main .button:hover,.page-main .wc-block-components-button:not(.is-link):hover,.page-main .wp-element-button:hover,.shop-main .wp-element-button:hover{background:var(--brand)!important}
.shop-main .single_add_to_cart_button,.shop-main .button.alt,.page-main .button.alt,.page-main .checkout-button,
.page-main .wc-block-cart__submit-button,.page-main .wc-block-components-checkout-place-order-button{background:var(--brand)!important;color:#fff!important}
.shop-main .single_add_to_cart_button:hover,.page-main .wc-block-cart__submit-button:hover,.page-main .wc-block-components-checkout-place-order-button:hover{background:var(--ink)!important}

/* Strona produktu */
.shop-main div.product{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;background:#fff;border:1px solid var(--rule);border-radius:20px;padding:36px}
.shop-main div.product::before,.shop-main div.product::after{display:none}
.shop-main div.product div.images,.shop-main div.product div.summary{width:auto!important;float:none!important;margin:0!important}
.shop-main div.product div.images img{border-radius:14px}
.shop-main div.product .woocommerce-product-gallery{position:relative}
.shop-main div.product .product_title{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.2;letter-spacing:-.02em;color:var(--ink);margin-bottom:14px}
.shop-main div.product p.price,.shop-main div.product span.price{color:var(--ink)!important;font-size:2rem!important;font-weight:800;letter-spacing:-.03em;margin-bottom:18px}
.shop-main div.product .woocommerce-product-details__short-description{color:var(--ink2);margin-bottom:24px}
.shop-main div.product .woocommerce-product-details__short-description ul{list-style:none;display:grid;gap:10px;margin:14px 0}
.shop-main div.product .woocommerce-product-details__short-description li{position:relative;padding-left:28px;color:var(--ink)}
.shop-main div.product .woocommerce-product-details__short-description li::before{content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:50%;background:#ccfbf1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d9488' stroke-width='3.5'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/11px no-repeat}
.shop-main div.product form.cart{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 10px!important}
.shop-main div.product form.cart::before,.shop-main div.product form.cart::after{display:none}
.shop-main div.product form.cart .quantity{margin:0!important}
.shop-main .quantity .qty{width:72px;padding:11px 8px;border:1px solid var(--rule);border-radius:10px;font:inherit;text-align:center}
.shop-main div.product form.cart .single_add_to_cart_button{padding:14px 28px!important;font-size:1rem!important;flex:1;max-width:320px}
.nsw-after-cart{flex-basis:100%;font-size:.85rem;color:var(--ink2);margin-top:6px}
.shop-main div.product .product_meta{font-size:.85rem;color:var(--ink2);border-top:1px solid var(--rule);padding-top:16px;margin-top:22px}
.shop-main div.product .product_meta a{color:var(--brand)}
.shop-main div.product .woocommerce-tabs{grid-column:1/-1;border-top:1px solid var(--rule);padding-top:10px}
.shop-main div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 22px!important;display:flex;gap:6px;border:0}
.shop-main div.product .woocommerce-tabs ul.tabs::before,.shop-main div.product .woocommerce-tabs ul.tabs li::before,.shop-main div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.shop-main div.product .woocommerce-tabs ul.tabs li{background:none!important;border:0!important;border-radius:10px!important;margin:0!important;padding:0!important}
.shop-main div.product .woocommerce-tabs ul.tabs li a{padding:10px 16px!important;color:var(--ink2)!important;font-weight:600}
.shop-main div.product .woocommerce-tabs ul.tabs li.active{background:#f1f5f9!important}
.shop-main div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink)!important}
.shop-main div.product .woocommerce-Tabs-panel{color:#334155;max-width:820px}
.shop-main div.product .woocommerce-Tabs-panel h2{font-size:1.3rem;margin-bottom:12px;color:var(--ink)}
.shop-main div.product .woocommerce-Tabs-panel h3{font-size:1.08rem;margin:18px 0 8px;color:var(--ink)}
.shop-main div.product .woocommerce-Tabs-panel p{margin-bottom:12px}
.shop-main div.product .woocommerce-Tabs-panel ul,.shop-main div.product .woocommerce-Tabs-panel ol{margin:0 0 14px 20px}
.shop-main div.product .woocommerce-Tabs-panel li{margin-bottom:6px}
.shop-main div.product .related,.shop-main div.product .upsells{grid-column:1/-1}
.shop-main .related > h2,.shop-main .upsells > h2{font-size:1.4rem;margin:10px 0 20px;color:var(--ink)}
.shop-main .related ul.products li.product{border-color:var(--rule)}

/* Komunikaty */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{border-radius:12px!important;border:1px solid var(--rule,#e2e8f0)!important;background:#fff!important;color:#0f172a!important;font-size:.95rem}
.woocommerce-message{border-left:4px solid #0d9488!important}
.woocommerce-message::before{color:#0d9488!important}
.woocommerce-message .button{float:right}

/* Koszyk, kasa, konto */
.page-main .wc-block-cart,.page-main .wc-block-checkout,.page-main .woocommerce{color:#0f172a}
.page-main .wp-block-woocommerce-cart,.page-main .wp-block-woocommerce-checkout{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:32px}
.page-main .wc-block-components-product-name{color:#0f172a!important;font-weight:600}
.page-main table.shop_table{border-radius:14px!important;background:#fff;border-color:#e2e8f0!important}
.page-main input.input-text,.page-main textarea,.page-main select{background:#fff;color:#0f172a;border:1px solid #cbd5e1;border-radius:10px;padding:11px 12px}
.page-main .woocommerce-MyAccount-navigation ul{list-style:none;display:grid;gap:4px}
.page-main .woocommerce-MyAccount-navigation a{display:block;padding:10px 14px;border-radius:10px;color:#0f172a!important}
.page-main .woocommerce-MyAccount-navigation .is-active a{background:#fff;box-shadow:0 0 0 1px #e2e8f0}
.page-main .wc-block-grid__product-title,.page-main .wc-block-components-product-price{color:#0f172a}

@media (max-width:960px){
  .shop-main ul.products{grid-template-columns:1fr 1fr}
  .shop-main div.product{grid-template-columns:1fr;padding:22px;gap:24px}
}
@media (max-width:600px){
  .shop-main ul.products{grid-template-columns:1fr}
  .page-main .wp-block-woocommerce-cart,.page-main .wp-block-woocommerce-checkout{padding:16px}
}

.page-main .coupon .input-text{width:180px!important;padding:10px 12px!important}
.page-main table.shop_table td,.page-main table.shop_table th{padding:14px 16px!important}
.page-main .wc-proceed-to-checkout .checkout-button{padding:16px 20px!important;font-size:1.05rem!important}
.page-main #payment{background:#fff!important;border:1px solid #e2e8f0;border-radius:14px!important}
.page-main #place_order{padding:14px 28px!important;font-size:1rem!important}


/* =================== CIEMNA TONACJA SKLEPU (v1.3) =================== */
.shop-main,.page-main{--ink:#e7ecf5;--ink2:#9aa7c0;--rule:#23304d;--brand:#2dd4bf;--brand2:#14b8a6}
.shop-hero{border-bottom:0;background:linear-gradient(180deg,var(--bg) 0%,var(--bg2) 100%)}
.shop-main .woocommerce-ordering select{background:var(--card);color:var(--text);border-color:var(--line)}
.shop-main ul.products li.product,.shop-main div.product{background:var(--card);border-color:var(--line)}
.shop-main ul.products li.product:hover{box-shadow:0 20px 40px -24px rgba(45,212,191,.35);border-color:#34466b}
.shop-main ul.products li.product .price,.shop-main div.product p.price,.shop-main div.product span.price{color:var(--text)!important}
.shop-main .button,.shop-main a.button,.shop-main button.button,.page-main .button,.page-main a.button,.page-main button.button,
.page-main .wc-block-components-button:not(.is-link),.shop-main .wp-element-button,.page-main .wp-element-button{background:#22314f!important;color:#fff!important}
.shop-main .button:hover,.page-main .button:hover,.page-main .wp-element-button:hover,.shop-main .wp-element-button:hover{background:var(--accent)!important;color:#06121f!important}
.shop-main .single_add_to_cart_button,.shop-main .button.alt,.page-main .button.alt,.page-main .checkout-button,.page-main #place_order,
.page-main .wc-block-cart__submit-button,.page-main .wc-block-components-checkout-place-order-button{background:var(--accent)!important;color:#06121f!important}
.shop-main .single_add_to_cart_button:hover,.page-main .checkout-button:hover,.page-main #place_order:hover{background:#5eead4!important}
.shop-main div.product .woocommerce-product-details__short-description li::before{background-color:rgba(45,212,191,.15);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232dd4bf' stroke-width='3.5'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E")}
.shop-main div.product .woocommerce-tabs ul.tabs li.active{background:var(--bg2)!important}
.shop-main div.product .woocommerce-Tabs-panel{color:var(--muted)}
.shop-main .quantity .qty{background:var(--bg);color:var(--text);border-color:var(--line)}
.crumbs-dark{color:var(--muted)}
.crumbs-dark a{color:var(--text)}

/* Koszyk, kasa, konto – ciemne karty */
.page-main table.shop_table,.page-main .wp-block-woocommerce-cart,.page-main .wp-block-woocommerce-checkout,.page-main #payment,
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{background:var(--card)!important;border-color:var(--line)!important;color:var(--text)!important}
.page-main table.shop_table th,.page-main table.shop_table td{border-color:var(--line)!important;color:var(--text)}
.page-main #payment div.payment_box{background:var(--bg2)!important;color:var(--muted)}
.page-main #payment div.payment_box::before{border-bottom-color:var(--bg2)!important}
.page-main input.input-text,.page-main textarea,.page-main select,.page-main .select2-container .select2-selection,
.page-main .wc-block-components-text-input input,.page-main .wc-block-components-textarea,.page-main .wc-blocks-components-select__select{background:var(--bg)!important;color:var(--text)!important;border-color:var(--line)!important}
.page-main .select2-container .select2-selection__rendered{color:var(--text)!important}
.page-main label,.page-main .wc-block-components-text-input label,.page-main h3,.page-main .wc-block-components-title{color:var(--text)!important}
.page-main .wc-block-components-product-name,.page-main .wc-block-grid__product-title,.page-main .wc-block-components-product-price,.page-main .wc-block-components-totals-item{color:var(--text)!important}
.page-main .woocommerce-MyAccount-navigation a{color:var(--text)!important}
.page-main .woocommerce-MyAccount-navigation .is-active a{background:var(--card);box-shadow:0 0 0 1px var(--line)}
.select2-dropdown{background:var(--card)!important;color:var(--text)!important;border-color:var(--line)!important}
.select2-search__field{background:var(--bg)!important;color:var(--text)!important}
.nsw-from{font-size:.6em;font-weight:500;color:var(--muted);letter-spacing:0;margin-right:2px}
.shop-main table.variations{margin:6px 0 16px;border:0}
.shop-main table.variations th,.shop-main table.variations td{padding:6px 0!important;border:0!important;background:none!important;vertical-align:middle}
.shop-main table.variations label{color:var(--text);font-weight:600;margin-right:14px}
.shop-main table.variations select{background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:11px 12px;font:inherit;min-width:260px}
.shop-main .reset_variations{color:var(--muted);font-size:.85rem;margin-left:10px}
.shop-main .woocommerce-variation-price .price{font-size:1.6rem!important;margin:4px 0 14px!important;display:block}
.shop-main .single_variation_wrap{width:100%}
.shop-main .woocommerce-variation-add-to-cart{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* =================== UKŁAD SKLEPU: drzewo kategorii + kafelki =================== */
.shop-layout{display:grid;grid-template-columns:260px 1fr;gap:32px;align-items:start}
.shop-side{display:grid;gap:14px}
.side-box{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:0}
.side-box summary{padding:14px 18px;font-weight:700;font-size:.95rem;color:var(--text);border-bottom:1px solid var(--line)}
.side-box summary::after{content:"–";font-size:1.1rem}
.side-box:not([open]) summary{border-bottom:0}
.side-box:not([open]) summary::after{content:"+"}
.cat-tree{list-style:none;padding:8px 10px 12px;margin:0}
.cat-tree .cat-tree{padding:2px 0 4px 12px;border-left:1px solid var(--line);margin-left:10px}
.cat-tree a{display:flex;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:8px;color:var(--muted);font-size:.92rem;transition:.15s}
.cat-tree a:hover{color:var(--text);background:rgba(255,255,255,.03)}
.cat-tree a.is-active{color:#06121f;background:var(--accent);font-weight:600}
.cat-tree a span{font-size:.78rem;opacity:.7}
.cat-tree.depth-0 > li > a{color:var(--text);font-weight:600}
.cat-tree.depth-0 > li > a.is-active{color:#06121f}
.side-tags{list-style:none;padding:10px;margin:0;display:flex;flex-wrap:wrap;gap:6px}
.side-tags a{display:inline-flex;gap:6px;padding:6px 12px;border:1px solid var(--line);border-radius:99px;font-size:.85rem;color:var(--muted)}
.side-tags a span{opacity:.6}
.side-tags a:hover{color:var(--text);border-color:#34466b}
.side-tags a.is-active{background:var(--accent);color:#06121f;border-color:var(--accent)}
.side-help{background:linear-gradient(160deg,rgba(45,212,191,.14),var(--card) 70%);border:1px solid rgba(45,212,191,.35);border-radius:14px;padding:18px}
.side-help b{display:block;margin-bottom:6px}
.side-help p{color:var(--muted);font-size:.88rem;margin-bottom:14px}
.side-help .btn{width:100%;justify-content:center;padding:11px 14px;font-size:.92rem}
.shop-body{min-width:0}
.cat-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:34px}
.cat-tile{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.2s}
.cat-tile:hover{border-color:var(--accent);transform:translateY(-2px)}
.cat-tile img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.cat-tile-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:4px}
.cat-tile-body b{font-size:1.02rem;color:var(--text)}
.cat-tile-body small{color:var(--muted);font-size:.84rem;line-height:1.45}
.cat-tile-body em{font-style:normal;color:var(--accent);font-size:.85rem;font-weight:600;margin-top:4px}
.shop-sub-h{font-size:1.25rem;margin:0 0 6px;color:var(--text)}
.shop-body ul.products{grid-template-columns:repeat(3,1fr)}
@media (max-width:1100px){.shop-body ul.products{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.shop-layout{grid-template-columns:1fr}.shop-side{position:static}.side-box:not(.keep-open){}}
@media (max-width:600px){.shop-body ul.products{grid-template-columns:1fr}}

/* Telefon: kategorie jako zwijane przyciski obok siebie */
@media (max-width:900px){
  .shop-layout{gap:18px}
  .shop-side{grid-template-columns:1fr 1fr;gap:10px}
  .shop-side .side-help{display:none}
  .side-box{align-self:start}
  .side-box summary{border-bottom:0;padding:12px 16px}
  .side-box[open]{grid-column:1/-1}
  .side-box[open] summary{border-bottom:1px solid var(--line)}
  .cat-tiles{grid-template-columns:1fr 1fr;gap:10px}
  .cat-tile-body small{display:none}
}
@media (max-width:420px){.cat-tiles{grid-template-columns:1fr}}

/* Rozwijane listy (warianty, sortowanie, formularze) – ciemne tło listy opcji, czytelny tekst */
select{color-scheme:dark}
select option,select optgroup{background-color:#152038;color:#e7ecf5}
select option:checked{background-color:#2dd4bf;color:#06121f}
select option:disabled{color:#6b7896}
.shop-main table.variations select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(45,212,191,.2)}

/* Widżet rat Przelewy24 ma białe tło – kwota musi być ciemna */
p24-installment,#p24_installments{color:#1f2937}
.shop-main .nsw-prefix{font-size:.9rem;font-weight:600;color:var(--ink2);letter-spacing:0}
/* Baner sklepu z pudełkami */
.shop-banner{position:relative;overflow:hidden;padding:46px 0 30px;background:radial-gradient(560px 360px at 78% 45%,rgba(45,212,191,.16),transparent 65%),radial-gradient(420px 300px at 96% 10%,rgba(234,76,90,.12),transparent 60%),linear-gradient(180deg,var(--bg) 0%,var(--bg2) 100%)}
.shop-banner-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:30px;align-items:center}
.shop-banner h1{font-size:clamp(2rem,3.6vw,2.9rem);line-height:1.1;letter-spacing:-.03em;margin:6px 0 14px}
.shop-banner .grad{background:linear-gradient(90deg,#2dd4bf,#60a5fa);-webkit-background-clip:text;background-clip:text;color:transparent}
.shop-banner .lead{color:var(--muted);font-size:1.06rem;max-width:560px;margin-bottom:20px}
.shop-banner .crumbs{margin-bottom:14px}
.shop-banner-tags{display:flex;flex-wrap:wrap;gap:10px}
.sbt{display:inline-flex;flex-direction:column;padding:9px 14px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.03);font-weight:700;color:var(--text);text-decoration:none;transition:.2s}
.sbt small{font-weight:500;color:var(--muted);font-size:.8rem}
.sbt:hover{transform:translateY(-2px)}
.sbt-ins:hover{border-color:#3b82f6}.sbt-pp:hover{border-color:#ea4c5a}.sbt-eset:hover{border-color:#2dd4bf}
.shop-boxes{position:relative;height:360px}
.shop-boxes .bx{position:absolute;bottom:18px;width:auto;filter:drop-shadow(0 26px 30px rgba(0,0,0,.55));transition:transform .45s ease;animation:sbFloat 6s ease-in-out infinite}
.shop-boxes .bx-1{left:2%;height:230px;transform:rotate(-8deg);bottom:40px;animation-delay:-1s}
.shop-boxes .bx-2{left:4%;height:150px;bottom:4px;z-index:5;animation-delay:-3s}
.shop-boxes .bx-3{left:30%;height:300px;bottom:30px;z-index:3;animation-delay:-2s}
.shop-boxes .bx-4{right:20%;height:200px;bottom:2px;z-index:6;animation-delay:-4s}
.shop-boxes .bx-5{right:0;height:250px;transform:rotate(6deg);bottom:34px;z-index:2;animation-delay:-5s}
.shop-boxes:hover .bx-1{transform:rotate(-11deg) translateX(-10px)}
.shop-boxes:hover .bx-5{transform:rotate(10deg) translateX(10px)}
.shop-boxes:hover .bx-3{transform:translateY(-8px)}
@keyframes sbFloat{0%,100%{translate:0 0}50%{translate:0 -7px}}
.shop-eset{position:absolute;right:4%;top:6px;z-index:5;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:16px;background:rgba(11,18,32,.85);border:1px solid rgba(45,212,191,.4);box-shadow:0 18px 40px -18px rgba(0,0,0,.8);color:#5eead4;animation:sbFloat 5s ease-in-out infinite}
.shop-eset svg{width:26px;height:26px}
.shop-eset img{height:26px;width:auto}
@media (prefers-reduced-motion:reduce){.shop-boxes .bx,.shop-eset{animation:none}}
@media (max-width:900px){.shop-banner-grid{grid-template-columns:1fr}.shop-boxes{height:270px}.shop-boxes .bx-3{height:230px}.shop-boxes .bx-1,.shop-boxes .bx-5{height:180px}.shop-boxes .bx-2{height:150px}.shop-boxes .bx-4{height:165px}}
/* Sklep – 4 kwadraty kategorii */
.shop-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin:10px 0 60px}
.shop-cat{position:relative;display:flex;flex-direction:column;aspect-ratio:1/1;border-radius:22px;overflow:hidden;text-decoration:none;color:var(--text);background:radial-gradient(70% 55% at 50% 40%,rgba(59,130,246,.28),transparent 70%),linear-gradient(180deg,#111a2e,#0b1220);border:1px solid var(--line);transition:transform .3s,border-color .3s,box-shadow .3s}
.shop-cat:hover{transform:translateY(-6px);box-shadow:0 30px 60px -30px rgba(0,0,0,.85)}
.shop-cat-ins:hover{border-color:#3b82f6}.shop-cat-pp{background:radial-gradient(70% 55% at 50% 40%,rgba(234,76,90,.25),transparent 70%),linear-gradient(180deg,#111a2e,#0b1220)}.shop-cat-pp:hover{border-color:#ea4c5a}
.shop-cat-it{}.shop-cat-it:hover{border-color:#2dd4bf}
a.shop-cat-it,.shop-cat.shop-cat-it{background:radial-gradient(70% 55% at 50% 40%,rgba(45,212,191,.22),transparent 70%),linear-gradient(180deg,#111a2e,#0b1220)}
.shop-cat-av{background:radial-gradient(70% 55% at 50% 40%,rgba(20,184,166,.28),transparent 70%),linear-gradient(180deg,#111a2e,#0b1220)}.shop-cat-av:hover{border-color:#14b8a6}
.shop-cat-art{position:absolute;left:0;right:0;top:4%;bottom:45%;display:block}
.shop-cat-art img{position:absolute;bottom:0;width:auto;filter:drop-shadow(0 18px 22px rgba(0,0,0,.55));transition:transform .35s}
.shop-cat-art .a2{left:50%;height:84%;transform:translateX(-50%);z-index:2}
.shop-cat-art .a1{left:6%;height:64%;transform:rotate(-7deg);z-index:1}
.shop-cat-art .a3{right:6%;height:64%;transform:rotate(7deg);z-index:1}
.shop-cat-pp .shop-cat-art .a1{left:8%;height:50%;bottom:4%;z-index:3;transform:none}
.shop-cat-pp .shop-cat-art .a2{left:58%;height:66%}
.shop-cat:hover .a2{transform:translateX(-50%) translateY(-6px)}
.shop-cat:hover .a1{transform:rotate(-10deg) translateX(-6px)}
.shop-cat:hover .a3{transform:rotate(10deg) translateX(6px)}
.shop-cat-pp:hover .a1{transform:translateY(-4px)}
.shop-cat-art svg.shop-cat-it{position:absolute;left:50%;bottom:4%;height:82%;transform:translateX(-50%);filter:drop-shadow(0 18px 22px rgba(0,0,0,.55))}
.shop-cat-body{position:absolute;z-index:5;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:4px;padding:0 22px 20px}
.shop-cat-body b{font-size:1.35rem;letter-spacing:-.02em}
.shop-cat-body small{color:var(--muted);font-size:.84rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.shop-cat-body em{font-style:normal;font-weight:700;color:#2dd4bf;font-size:.9rem;margin-top:4px}
.shop-empty{padding:34px;border-radius:18px;border:1px solid var(--line);background:var(--card);max-width:680px}
.shop-empty b{display:block;font-size:1.2rem;margin-bottom:8px}.shop-empty p{color:var(--muted);margin-bottom:16px}
@media (max-width:1100px){.shop-cats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.shop-cats{gap:14px}.shop-cat-art{bottom:43%}.shop-cat-body{padding:0 14px 14px}.shop-cat-body b{font-size:1.1rem}.shop-cat-body small{display:none}}
/* ESET – porównanie wersji */
.eset-compare{margin:50px 0 20px}
.eset-compare .section-head{margin-bottom:20px}
.eset-compare .section-head h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:4px 0 8px}
.eset-compare .section-head p{color:var(--muted);max-width:720px}
.eset-table th{vertical-align:bottom;text-align:center;min-width:112px}
.eset-table th span{display:block;font-size:.92rem;line-height:1.2}
.eset-table th small{display:block;font-weight:500;color:var(--muted);font-size:.75rem;margin-top:2px}
.eset-table th.is-biz{background:rgba(45,212,191,.08)}
.eset-th-box{display:block;height:92px;width:auto;margin:0 auto 8px;filter:drop-shadow(0 10px 14px rgba(0,0,0,.5))}
.eset-table td{text-align:center}.eset-table td:first-child{text-align:left}
.eset-buy{font-size:.82rem;font-weight:700;color:#2dd4bf;text-decoration:none}
.eset-home-info{margin-top:20px;padding:20px 22px;border-radius:16px;border:1px solid var(--line);background:var(--card)}
.eset-home-info b{display:block;margin-bottom:6px}.eset-home-info p{margin:0;color:var(--muted);font-size:.93rem}
.eset-table td:first-child{min-width:230px}

/* G DATA */
.gdata-compare{margin-top:60px}
.gdata-extra{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:18px}
.gdata-extra-card{display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:16px;border:1px solid var(--line);background:var(--card);color:inherit;text-decoration:none;transition:border-color .2s,transform .2s}
.gdata-extra-card:hover{border-color:rgba(45,212,191,.5);transform:translateY(-2px)}
.gdata-extra-card img{height:74px;width:auto;flex:none;filter:drop-shadow(0 8px 12px rgba(0,0,0,.5))}
.gdata-extra-card b{display:block}.gdata-extra-card small{display:block;color:var(--muted);font-size:.85rem;margin-top:2px}
.eset-table th img.eset-th-box{height:92px!important;width:auto!important;max-width:none}

/* Kafelek antywirusów: dwa pudełka obok siebie (ESET + G DATA) */
.shop-cat-art .av1,.shop-cat-art .av2{height:74%;z-index:2}
.shop-cat-art .av1{left:18%;transform:rotate(-4deg)}
.shop-cat-art .av2{right:18%;transform:rotate(4deg);z-index:1}
.shop-cat:hover .av1{transform:rotate(-6deg) translate(-6px,-6px)}
.shop-cat:hover .av2{transform:rotate(6deg) translate(6px,-6px)}
.shop-cat-av .shop-cat-art{bottom:52%}
.shop-cat-av .shop-cat-body b{font-size:1.18rem;line-height:1.2}

/* ESET PROTECT – pakiety biznesowe */
.protect-table th{vertical-align:bottom}
.protect-table th .pt-brand{display:block;font-size:.66rem;letter-spacing:.08em;color:#2dd4bf;font-weight:700;margin:0 0 2px}
.protect-table th span{font-size:1rem}
.protect-table td.is-biz{background:rgba(45,212,191,.05)}
.protect-table td:first-child b{font-weight:600}
.protect-table .pt-code{color:var(--muted);font-size:.85rem}
.protect-table .pt-star{color:var(--muted);font-size:.7rem;margin-left:2px}
.protect-table .ic-no{font-size:.9rem;opacity:.7}
.protect-table .pt-opt{font-size:.8rem;color:var(--muted);font-weight:600}
.pt-notes{display:flex;flex-wrap:wrap;gap:6px 28px;justify-content:flex-end;font-style:italic}
.pt-cta{display:flex;align-items:center;gap:20px;justify-content:space-between;flex-wrap:wrap}
.pt-cta>div{flex:1 1 380px}
.protect-table th,.protect-table td{padding:12px 8px}
.protect-table th{min-width:84px}
.protect-table td:first-child{min-width:200px;padding-left:16px}

/* Insoft – kafelek, zestawy, cennik */
.shop-cats{display:flex;flex-wrap:wrap;justify-content:center;gap:22px}
.shop-cats>.shop-cat{flex:0 0 calc((100% - 44px)/3)}
@media (max-width:760px){.shop-cats{gap:14px}.shop-cats>.shop-cat{flex-basis:calc((100% - 14px)/2)}}
.shop-cat-isf{background:radial-gradient(70% 55% at 50% 40%,rgba(34,197,94,.22),transparent 70%),linear-gradient(180deg,#111a2e,#0b1220)}.shop-cat-isf:hover{border-color:#22c55e}
.insoft-sets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.insoft-set{position:relative;display:flex;flex-direction:column;padding:18px 18px 16px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.insoft-set img{position:absolute;right:12px;top:12px;height:74px;width:auto;filter:drop-shadow(0 8px 12px rgba(0,0,0,.5))}
.insoft-set>b{font-size:1.05rem;padding-right:70px}
.insoft-set>p{color:var(--muted);font-size:.88rem;margin:6px 0 10px;padding-right:60px;min-height:3.2em}
.insoft-set ul{list-style:none;margin:0 0 12px;padding:0;font-size:.84rem;color:var(--muted)}
.insoft-set li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-top:1px dashed var(--line)}
.insoft-set li span{white-space:nowrap;color:var(--text)}
.insoft-set-sum{margin-top:auto;display:flex;align-items:baseline;gap:6px}.insoft-set-sum span,.insoft-set-sum small{color:var(--muted);font-size:.82rem}.insoft-set-sum b{font-size:1.35rem}
.insoft-set .eset-buy{margin-top:6px}
.insoft-sec{border:1px solid var(--line);border-radius:14px;background:var(--card);margin-bottom:10px;overflow:hidden}
.insoft-sec summary{cursor:pointer;padding:14px 18px;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center}
.insoft-sec summary::-webkit-details-marker{display:none}
.insoft-sec summary::after{content:"+";font-size:1.2rem;color:var(--accent);margin-left:12px}
.insoft-sec[open] summary::after{content:"–"}
.insoft-sec summary small{margin-left:auto;color:var(--muted);font-weight:500}
.insoft-table{width:100%;border-top:1px solid var(--line)}
.insoft-table td{padding:9px 18px;font-size:.9rem}
.insoft-table td:last-child{text-align:right;white-space:nowrap;font-weight:600}
.insoft-page-extra{padding-top:10px;padding-bottom:30px}
.insoft-shop-link{text-align:center;margin-top:24px}

.insoft-shots{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.insoft-shots a{display:block;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card);color:var(--muted);text-decoration:none;font-size:.88rem;transition:border-color .2s,transform .2s}
.insoft-shots a:hover{border-color:var(--accent);transform:translateY(-2px)}
.insoft-shots img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;background:#fff}
.insoft-shots span{display:block;padding:10px 14px}

/* Novitus – karty produktów w sekcjach gastronomii */
.nov-card{text-decoration:none;color:inherit;transition:border-color .2s,transform .2s}
.nov-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.nov-card .nov-img{display:block;margin:-18px -18px 12px;border-radius:16px 16px 0 0;overflow:hidden;aspect-ratio:16/10;background:#0b1220}
.nov-card .nov-img img{position:static;width:100%;height:100%;object-fit:cover;filter:none}
.nov-card>b{padding-right:0}
.nov-card p{color:var(--muted);font-size:.88rem;margin:6px 0 8px}
.nov-card ul{list-style:none;margin:0 0 12px;padding:0;font-size:.84rem;color:var(--muted)}
.nov-card li{padding:4px 0;border-top:1px dashed var(--line)}
.nov-badge{position:absolute;top:10px;left:10px;font-style:normal;font-size:.72rem;font-weight:700;background:var(--accent);color:#06121f;padding:3px 9px;border-radius:99px}
.shop-cat-gas{background:radial-gradient(70% 55% at 50% 40%,rgba(249,115,22,.22),transparent 70%),linear-gradient(180deg,#111a2e,#0b1220)}.shop-cat-gas:hover{border-color:#f97316}
.shop-cat-art .av-sm{height:52%}
.insoft-set.nov-card .nov-img img{position:static;display:block;width:100%;height:100%;right:auto;top:auto;object-fit:cover}
.insoft-set.nov-card>p{padding-right:0;min-height:0}

/* Logo producenta w nagłówku kategorii */
.shop-hero .container{display:flow-root}
.shop-hero-brands{float:right;display:flex;gap:12px;margin:0 0 12px 24px}
.shop-hero-logo{display:grid;place-items:center;width:190px;height:96px;padding:12px 18px;border-radius:16px;background:#f8fafc;box-shadow:0 18px 40px -22px rgba(0,0,0,.8)}
.shop-hero-brands.is-multi .shop-hero-logo{width:140px;height:76px}
.shop-hero-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
@media (max-width:760px){.shop-hero-brands{float:none;margin:0 0 14px}.shop-hero-logo{width:130px;height:66px}}
.shop-hero-logo img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.shop-hero-logo{display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}
.shop-hero-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:100%}

/* XMAG: karty + zdjęcie magazynu po prawej */
.mag-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;align-items:stretch}
.mag-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.nov-card{position:relative}
.nov-card:not(:has(.nov-img)) .nov-badge{position:static;align-self:flex-start;margin-bottom:10px}
.mag-photo{position:relative;margin:0;border-radius:18px;overflow:hidden;border:1px solid var(--line);min-height:320px}
.mag-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mag-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,18,32,.1) 30%,rgba(11,18,32,.85));pointer-events:none}
.mag-photo figcaption{position:absolute;left:18px;right:18px;bottom:16px;z-index:1;color:#e2e8f0;font-weight:600;font-size:.95rem}
@media (max-width:960px){.mag-layout{grid-template-columns:1fr}.mag-photo{min-height:240px}}
@media (max-width:560px){.mag-cards{grid-template-columns:1fr}}

/* Baner sklepu: loga producentów zamiast wpisów */
.shop-brands{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.shop-brand{display:flex;align-items:center;justify-content:center;width:112px;height:56px;padding:8px 12px;border-radius:12px;background:#f8fafc;border:1px solid rgba(255,255,255,.1);box-shadow:0 14px 30px -20px rgba(0,0,0,.9);transition:transform .2s,box-shadow .2s;box-sizing:border-box}
.shop-brand:hover{transform:translateY(-3px);box-shadow:0 18px 34px -18px rgba(45,212,191,.55)}
.shop-brand img{display:block;max-width:100%;max-height:100%;width:auto;height:auto}
@media (max-width:560px){.shop-brand{width:96px;height:48px}}
/* pudełko Insoft w banerze */
.shop-boxes .bx-6{right:27%;height:175px;bottom:0;z-index:7;transform:rotate(-4deg);animation-delay:-2.5s}
.shop-boxes .bx-4{right:5%}
@media (max-width:900px){.shop-boxes .bx-6{height:150px}}

/* Kafelki: Magazyn (B2B Soft) i Urządzenia fiskalne; 8 kafelków – 4 w rzędzie na dużych ekranach */
@media (min-width:1150px){.shop-cats>.shop-cat{flex-basis:calc((100% - 66px)/4)}.shop-cat-body b{font-size:1.22rem}}
.shop-cat-mag{background:radial-gradient(70% 55% at 50% 40%,rgba(168,85,247,.22),transparent 70%),linear-gradient(180deg,#111a2e,#0b1220)}.shop-cat-mag:hover{border-color:#a855f7}
.shop-cat-fis{background:radial-gradient(70% 55% at 50% 40%,rgba(234,179,8,.2),transparent 70%),linear-gradient(180deg,#111a2e,#0b1220)}.shop-cat-fis:hover{border-color:#eab308}
.shop-cat-art .mag-logo{left:50%;bottom:28%;height:auto;width:66%;max-height:44%;object-fit:contain;transform:translateX(-50%);filter:none;background:#fff;border-radius:16px;padding:14px 18px;box-sizing:border-box}
.shop-cat-art .fis0,.shop-cat-art .fis1,.shop-cat-art .fis2{height:auto;max-height:76%;object-fit:contain}
.shop-cat-art .fis0{left:50%;width:66%;transform:translateX(-50%)}
.shop-cat-art .fis1{left:6%;width:46%;z-index:2;bottom:0}
.shop-cat-art .fis2{right:6%;width:42%;z-index:1;bottom:16%}
.shop-cat:hover .fis1{transform:translate(-4px,-6px)}
.shop-cat:hover .fis2{transform:translate(4px,-6px)}
.shop-cat-mag .shop-cat-art,.shop-cat-fis .shop-cat-art{bottom:48%}
.fis-table td:nth-child(2),.fis-table td:nth-child(3){color:var(--muted)}
.fis-table td:first-child{min-width:240px}
.nsw-brutto{display:block;font-size:.78rem;font-weight:500;color:var(--muted);margin-top:2px}
.nsw-start-consent{font-size:.88rem;margin:10px 0}
.nsw-omnibus{display:block;font-size:.76rem;font-weight:500;color:var(--muted);margin-top:2px}
.nsw-gpsr dl{display:grid;grid-template-columns:minmax(170px,auto) 1fr;gap:10px 20px}.nsw-gpsr dt{font-weight:600}.nsw-gpsr dd{margin:0;color:var(--muted)}
@media (max-width:640px){.nsw-gpsr dl{grid-template-columns:1fr}}
.side-legal{margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.side-legal b{display:block;margin-bottom:8px}
.side-legal ul{list-style:none;margin:0;padding:0}.side-legal li{padding:5px 0;border-top:1px dashed var(--line);font-size:.88rem}.side-legal li:first-child{border-top:0}
.side-legal a{color:var(--muted)}.side-legal a:hover{color:var(--accent)}
.nsw-prod-legal{font-size:.85rem;margin-top:10px}.nsw-prod-legal a{color:#2dd4bf}

/* Pasek logo producentów pod kategoriami – przesuwa się z prawej do lewej */
.brand-marquee{margin:-20px 0 60px}
.brand-marquee .eyebrow{text-align:center;margin-bottom:14px}
.bm-viewport{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.bm-track{display:flex;width:max-content;animation:bm-scroll 32s linear infinite}
.bm-set{display:flex;gap:20px;padding-right:20px}
.brand-marquee .shop-brand{width:200px;height:100px;padding:14px 22px;border-radius:18px;flex:none}
.bm-viewport:hover .bm-track,.bm-track:focus-within{animation-play-state:paused}
@keyframes bm-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:560px){.brand-marquee .shop-brand{width:140px;height:72px;padding:10px 14px}.bm-track{animation-duration:24s}}
@media (prefers-reduced-motion:reduce){.bm-track{animation:none}.bm-viewport{overflow-x:auto}}
.shop-cat-art svg.shop-cat-person{width:84%;height:auto;max-height:94%;bottom:2%}
.shop-cat.shop-cat-it .shop-cat-art{top:5%;bottom:43%}
/* Pudełko XMAG przy opisie i cenie */
.section-head.mag-head{max-width:none;display:grid;grid-template-columns:minmax(0,720px) auto;column-gap:36px;align-items:center}
.mag-head>*{grid-column:1}
.mag-head .mag-head-box{grid-column:2;grid-row:1 / span 3;height:210px;width:auto;filter:drop-shadow(0 22px 26px rgba(0,0,0,.6));transform:rotate(3deg);animation:mag-box-float 6s ease-in-out infinite}
@keyframes mag-box-float{0%,100%{transform:rotate(3deg) translateY(0)}50%{transform:rotate(2deg) translateY(-8px)}}
@media (max-width:760px){.section-head.mag-head{grid-template-columns:1fr}.mag-head .mag-head-box{grid-column:1;grid-row:auto;height:170px;justify-self:center;margin-bottom:10px;order:-1}}
@media (prefers-reduced-motion:reduce){.mag-head .mag-head-box{animation:none}}
