.nzpf,.nzpf-results-page{
  --nzpf-panel-bg:#f3f3f3;
  --nzpf-item-bg:#fff;
  --nzpf-subitem-bg:#f8f8f8;
  --nzpf-hover-bg:#eee;
  --nzpf-active-bg:#dedede;
  --nzpf-text:#2b2b2b;
  --nzpf-hover-text:#111;
  --nzpf-active-text:#111;
  --nzpf-border:#ddd;
  --nzpf-arrow:#6f6f6f;
  --nzpf-count-bg:#e1e1e1;
  --nzpf-count-text:#555;
  --nzpf-input-bg:#fff;
  --nzpf-button-bg:#2b2b2b;
  --nzpf-button-text:#fff;
  --nzpf-button-hover-bg:#444;
  --nzpf-hero-bg:#173f35;
  --nzpf-hero-text:#fff;
  --nzpf-hero-muted:#dbe9e4;
  --nzpf-hero-min-height:220px;
  --nzpf-radius:0px;
  --nzpf-control-gap:12px;
  --nzpf-result-gap:18px;
  --nzpf-font-size:15px;
  --nzpf-title-size:30px;
  --nzpf-product-title-size:17px;
  --nzpf-price-size:16px;
  box-sizing:border-box;
  color:var(--nzpf-text);
  font-size:var(--nzpf-font-size);
}
.nzpf *,.nzpf-results-page *{box-sizing:border-box}
.nzpf .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.nzpf{width:100%;overflow:hidden;background:var(--nzpf-panel-bg);border:1px solid var(--nzpf-border);border-radius:var(--nzpf-radius)}
.nzpf-title{margin:0 0 9px;color:var(--nzpf-text);font-size:var(--nzpf-title-size);font-weight:750;line-height:1.18}
.nzpf-intro{margin:0;color:var(--nzpf-count-text);font-size:inherit;line-height:1.55}
.nzpf-controls{padding:20px}
.nzpf-form{display:grid;gap:var(--nzpf-control-gap);align-items:end}
.nzpf-full .nzpf-form{grid-template-columns:minmax(185px,1.35fr) minmax(180px,1.15fr) minmax(130px,.78fr) minmax(105px,.62fr) minmax(165px,1fr) auto}
.nzpf-field{display:flex;flex-direction:column;gap:6px;min-width:0;margin:0!important;padding:0;border:0;color:var(--nzpf-text);font-size:inherit;font-weight:600}
.nzpf-field>span,.nzpf-field-label{display:block;width:100%;margin:0!important;padding:0!important;line-height:1.25;font:inherit;font-weight:600;color:inherit}
.nzpf-field input,.nzpf-field select{width:100%;min-height:44px;margin:0!important;padding:8px 11px!important;background:var(--nzpf-input-bg)!important;border:1px solid var(--nzpf-border)!important;border-radius:var(--nzpf-radius)!important;color:var(--nzpf-text)!important;font:inherit!important;line-height:1.25!important;box-shadow:none!important}
.nzpf-field input:focus,.nzpf-field select:focus{border-color:var(--nzpf-arrow)!important;outline:2px solid rgba(111,111,111,.2)!important;outline-offset:0}
.nzpf-view-switch{display:grid;grid-template-columns:1fr 1fr;width:100%;min-height:44px;background:var(--nzpf-input-bg);border:1px solid var(--nzpf-border);border-radius:var(--nzpf-radius);overflow:hidden}
.nzpf-view-switch label{position:relative;display:flex;align-items:center;justify-content:center;margin:0;cursor:pointer;color:var(--nzpf-arrow)}
.nzpf-view-switch label+label{border-left:1px solid var(--nzpf-border)}
.nzpf-view-switch input{position:absolute;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;opacity:0;pointer-events:none}
.nzpf-view-icon{display:flex;align-items:center;justify-content:center;width:100%;height:42px;transition:background-color .18s ease,color .18s ease}
.nzpf-view-icon svg{display:block;width:21px;height:21px;fill:currentColor}
.nzpf-view-switch input:checked+.nzpf-view-icon{background:var(--nzpf-active-bg);color:var(--nzpf-active-text)}
.nzpf-view-switch label:hover .nzpf-view-icon{background:var(--nzpf-hover-bg);color:var(--nzpf-hover-text)}
.nzpf-view-switch input:focus-visible+.nzpf-view-icon{outline:2px solid var(--nzpf-arrow);outline-offset:-2px}
.nzpf-submit-wrap{display:flex;align-items:flex-end}
.nzpf-submit,.nzpf-product-link,.nzpf-cart-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--nzpf-button-bg)!important;border-radius:var(--nzpf-radius)!important;background:var(--nzpf-button-bg)!important;color:var(--nzpf-button-text)!important;text-decoration:none!important;font:inherit!important;font-weight:700!important;line-height:1.2!important;cursor:pointer;white-space:nowrap;transition:background-color .18s ease,border-color .18s ease,color .18s ease}
.nzpf-submit:hover,.nzpf-submit:focus,.nzpf-product-link:hover,.nzpf-product-link:focus,.nzpf-cart-button:hover,.nzpf-cart-button:focus{border-color:var(--nzpf-button-hover-bg)!important;background:var(--nzpf-button-hover-bg)!important;color:var(--nzpf-button-text)!important}
.nzpf-reset{display:inline-block;margin-top:12px;color:var(--nzpf-count-text)!important;text-decoration:underline;text-underline-offset:3px}

/* Pełna wersja z HERO. */
.nzpf-full{padding:0}
.nzpf-full .nzpf-hero{display:flex;align-items:center;min-height:var(--nzpf-hero-min-height);padding:38px 42px;background-color:var(--nzpf-hero-bg);background-position:center;background-size:cover;background-repeat:no-repeat}
.nzpf-full .nzpf-hero-inner{width:min(760px,100%)}
.nzpf-full .nzpf-hero .nzpf-title{color:var(--nzpf-hero-text)}
.nzpf-full .nzpf-hero .nzpf-intro{max-width:720px;color:var(--nzpf-hero-muted)}

/* Kompaktowy widget. */
.nzpf-widget{padding:18px}
.nzpf-widget .nzpf-title{margin-bottom:7px}
.nzpf-widget .nzpf-intro{margin-bottom:16px}
.nzpf-widget .nzpf-controls{padding:0}
.nzpf-widget .nzpf-form{grid-template-columns:1fr}
.nzpf-widget .nzpf-submit-wrap,.nzpf-widget .nzpf-submit{width:100%}
.nzpf-widget .nzpf-field-display{width:100%;max-width:none}

/* Wyniki. */
.nzpf-results-page>.nzpf{margin-bottom:22px}
.nzpf-results-summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:10px 0;border-bottom:1px solid var(--nzpf-border);color:var(--nzpf-text)}
.nzpf-results-summary span{color:var(--nzpf-count-text)}
.nzpf-products{display:grid;gap:var(--nzpf-result-gap)}
.nzpf-products-grid{grid-template-columns:repeat(var(--nzpf-columns,3),minmax(0,1fr))}
.nzpf-product{display:flex;min-width:0;overflow:hidden;background:var(--nzpf-item-bg);border:1px solid var(--nzpf-border);border-radius:var(--nzpf-radius);transition:background-color .18s ease,border-color .18s ease,transform .18s ease}
.nzpf-products-grid .nzpf-product{flex-direction:column}
.nzpf-product:hover{background:var(--nzpf-hover-bg);border-color:var(--nzpf-arrow)}
.nzpf-product-image{display:block;position:relative;overflow:hidden;background:var(--nzpf-subitem-bg);text-decoration:none!important}
.nzpf-products-grid .nzpf-product-image{aspect-ratio:1/1}
.nzpf-product-image img{display:block;width:100%;height:100%;margin:0!important;object-fit:contain;transition:transform .25s ease}
.nzpf-product:hover .nzpf-product-image img{transform:scale(1.025)}
.nzpf-product-content{display:flex;flex:1;flex-direction:column;min-width:0;padding:15px}
.nzpf-product-categories{margin:0 0 6px;color:var(--nzpf-count-text);font-size:12px;line-height:1.4}
.nzpf-product-categories a{color:inherit!important;text-decoration:none!important}
.nzpf-product-title{margin:0 0 10px!important;color:var(--nzpf-text)!important;font-size:var(--nzpf-product-title-size)!important;font-weight:700!important;line-height:1.3!important}
.nzpf-product-title a{color:inherit!important;text-decoration:none!important}
.nzpf-rating{min-height:20px;margin:0 0 10px}
.nzpf-rating .star-rating{float:none;margin:0}
.nzpf-product-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}
.nzpf-price{color:var(--nzpf-active-text);font-size:var(--nzpf-price-size);font-weight:750;line-height:1.25}
.nzpf-price del{opacity:.55;font-size:.85em}
.nzpf-price ins{text-decoration:none}
.nzpf-product-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}
.nzpf-product-link{min-height:36px;padding:8px 12px;font-size:13px!important}
.nzpf-cart-button{flex:0 0 36px;width:36px;min-width:36px;min-height:36px;height:36px;padding:0!important}
.nzpf-cart-button svg{display:block;width:19px;height:19px;fill:currentColor}
.nzpf-cart-button.loading{opacity:.65;pointer-events:none}
.nzpf-cart-button.added svg{display:none}
.nzpf-cart-button.added::after{content:"✓";font-size:18px;line-height:1}
.nzpf-product-actions .added_to_cart{display:none!important}
.nzpf-products-list{grid-template-columns:1fr}
.nzpf-products-list .nzpf-product{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr)}
.nzpf-products-list .nzpf-product-image{min-height:180px}
.nzpf-products-list .nzpf-product-content{padding:20px}
.nzpf-empty{padding:22px;background:var(--nzpf-subitem-bg);border:1px solid var(--nzpf-border);border-radius:var(--nzpf-radius);color:var(--nzpf-text);text-align:center}
.nzpf-pagination{margin:26px 0 0}
.nzpf-pagination ul{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;margin:0!important;padding:0!important;list-style:none!important}
.nzpf-pagination li{margin:0!important;padding:0!important}
.nzpf-pagination a,.nzpf-pagination span{display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:6px 10px;border:1px solid var(--nzpf-border);border-radius:var(--nzpf-radius);background:var(--nzpf-item-bg);color:var(--nzpf-text)!important;text-decoration:none!important}
.nzpf-pagination .current,.nzpf-pagination a:hover{background:var(--nzpf-active-bg);color:var(--nzpf-active-text)!important}

/* Style prezentacji zgodne z widgetem kategorii. */
.nzpf-presentation-cards{background:var(--nzpf-panel-bg);border:1px solid var(--nzpf-border)}
.nzpf-presentation-soft{background:var(--nzpf-panel-bg);border:0}
.nzpf-presentation-separators{background:transparent;border:0;border-top:1px solid var(--nzpf-border);border-bottom:1px solid var(--nzpf-border);border-radius:0}
.nzpf-presentation-minimal{background:transparent;border:0}
.nzpf-presentation-tree{background:transparent;border:0;border-left:3px solid var(--nzpf-border);border-radius:0}
.nzpf-presentation-separators .nzpf-controls,.nzpf-presentation-minimal .nzpf-controls{padding-left:0;padding-right:0}
.nzpf-presentation-separators .nzpf-field input,.nzpf-presentation-separators .nzpf-field select,.nzpf-presentation-minimal .nzpf-field input,.nzpf-presentation-minimal .nzpf-field select{border-width:0 0 1px!important;border-radius:0!important;background:transparent!important}

@media(max-width:1180px){
  .nzpf-full .nzpf-form{grid-template-columns:minmax(190px,1.3fr) minmax(175px,1.05fr) minmax(130px,.76fr) minmax(105px,.62fr) minmax(160px,1fr)}
  .nzpf-full .nzpf-submit-wrap{grid-column:1/-1}
  .nzpf-full .nzpf-submit{width:100%}
}
@media(max-width:900px){
  .nzpf-full .nzpf-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nzpf-full .nzpf-submit-wrap{grid-column:1/-1}
  .nzpf-products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767px){
  .nzpf-full .nzpf-hero{min-height:170px;padding:28px 22px}
  .nzpf-controls{padding:15px}
  .nzpf-full .nzpf-form{grid-template-columns:1fr}
  .nzpf-submit-wrap,.nzpf-submit{width:100%}
  .nzpf-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nzpf-products-list .nzpf-product{grid-template-columns:120px minmax(0,1fr)}
  .nzpf-products-list .nzpf-product-image{min-height:140px}
  .nzpf-products-list .nzpf-product-content{padding:14px}
  .nzpf-product-bottom{align-items:flex-start;flex-direction:column}
  .nzpf-product-actions{width:100%;justify-content:flex-start}
}
@media(max-width:480px){
  .nzpf-products-grid{grid-template-columns:1fr}
  .nzpf-products-list .nzpf-product{display:flex;flex-direction:column}
  .nzpf-products-list .nzpf-product-image{aspect-ratio:1/1;min-height:0}
}

/* Podpowiedzi produktów w pełnej wyszukiwarce. */
.nzpf-autocomplete-enabled{position:relative;overflow:visible;z-index:20}
.nzpf-autocomplete-enabled .nzpf-controls{position:relative;z-index:20}
.nzpf-autocomplete-field{position:relative;z-index:30}
.nzpf-autocomplete-field.is-open{z-index:60}
.nzpf-suggestions[hidden]{display:none!important}
.nzpf-suggestions{position:absolute;top:calc(100% + 7px);left:0;width:min(680px,calc(100vw - 48px));max-height:min(480px,70vh);overflow:auto;background:var(--nzpf-item-bg);border:1px solid var(--nzpf-border);border-radius:var(--nzpf-radius);box-shadow:0 16px 38px rgba(0,0,0,.18);z-index:1000}
.nzpf-suggestions-list{display:flex;flex-direction:column}
.nzpf-suggestion-item{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px;min-height:74px;padding:8px 11px;border:0;border-bottom:1px solid var(--nzpf-border);background:var(--nzpf-item-bg);color:var(--nzpf-text)!important;text-decoration:none!important;transition:background-color .15s ease,color .15s ease}
.nzpf-suggestion-item:hover,.nzpf-suggestion-item:focus,.nzpf-suggestion-item.is-active{background:var(--nzpf-hover-bg);color:var(--nzpf-hover-text)!important;outline:0}
.nzpf-suggestion-image{display:flex;align-items:center;justify-content:center;width:58px;height:58px;overflow:hidden;background:var(--nzpf-subitem-bg);border-radius:max(0px,var(--nzpf-radius))}
.nzpf-suggestion-image img{display:block;width:100%;height:100%;margin:0!important;object-fit:contain}
.nzpf-suggestion-content{display:flex;flex-direction:column;min-width:0;gap:4px}
.nzpf-suggestion-title{display:block;overflow:hidden;color:inherit;font-size:14px;font-weight:700;line-height:1.32;text-overflow:ellipsis}
.nzpf-suggestion-price{display:block;color:var(--nzpf-count-text);font-size:13px;font-weight:650;line-height:1.2}
.nzpf-suggestion-price del{opacity:.55;font-size:.9em}
.nzpf-suggestion-price ins{text-decoration:none}
.nzpf-suggestion-more{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;background:var(--nzpf-subitem-bg);color:var(--nzpf-text)!important;font-size:13px;font-weight:750;text-align:center;text-decoration:none!important}
.nzpf-suggestion-more:hover,.nzpf-suggestion-more:focus{background:var(--nzpf-active-bg);color:var(--nzpf-active-text)!important;outline:0}
.nzpf-suggestions-message{padding:15px;background:var(--nzpf-item-bg);color:var(--nzpf-count-text);font-size:13px;font-weight:500;line-height:1.45}
.nzpf-suggestions-message.is-loading::before{content:"";display:inline-block;width:13px;height:13px;margin:0 8px -2px 0;border:2px solid var(--nzpf-border);border-top-color:var(--nzpf-button-bg);border-radius:50%;animation:nzpf-spin .7s linear infinite}
.nzpf-suggestions-message.is-error{color:#b32d2e}
@keyframes nzpf-spin{to{transform:rotate(360deg)}}

@media(max-width:767px){
  .nzpf-suggestions{width:100%;max-height:60vh}
  .nzpf-suggestion-item{grid-template-columns:52px minmax(0,1fr);min-height:68px}
  .nzpf-suggestion-image{width:52px;height:52px}
}
