/* Hummingbird Na Rogu — nadpisania. Kolory z logo: czern #111310, zloto #F0D08A. */
:root {
  --narogu-ink: #111310;
  --narogu-gold: #f0d08a;
  --narogu-warn-bg: #fff4e0;
  --narogu-warn-border: #e8890c;
  --narogu-warn-ink: #7a3e00;
}

/* Plakietka OUTLET na zdjeciu (karta produktu i miniatury) */
.product-flags .outlet-badge {
  background: var(--narogu-ink);
  color: var(--narogu-gold);
  border: 1px solid var(--narogu-gold);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

/* Pasek OUTLET nad tytulem produktu */
.outlet-banner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem .75rem;
  margin-bottom: 1rem;
  padding: .6rem .9rem;
  background: var(--narogu-ink);
  color: #fff;
  border-radius: .5rem;
  border-left: .4rem solid var(--narogu-gold);
}
.outlet-banner__tag {
  padding: .15rem .55rem;
  background: var(--narogu-gold);
  color: var(--narogu-ink);
  font-weight: 800;
  letter-spacing: .1em;
  border-radius: .3rem;
}
.outlet-banner__label { font-weight: 700; }
.outlet-banner__text { font-size: .9rem; opacity: .9; }

/* Stan produktu przy cenie */
.product-stan { margin: .5rem 0 1rem; font-size: 1.05rem; }
.product-stan__label { color: #6c757d; }
.product-stan__value { font-weight: 800; }
.product-stan--outlet .product-stan__value {
  padding: .15rem .6rem;
  background: var(--narogu-ink);
  color: var(--narogu-gold);
  border-radius: .3rem;
}

/* Opis w stylu Allegro: sekcje z OMS */
.oms-description .oms-sec { margin: 0 0 1.5rem; }
.oms-description .oms-wady {
  padding: .9rem 1rem;
  background: var(--narogu-warn-bg);
  border: 2px solid var(--narogu-warn-border);
  border-radius: .5rem;
  color: var(--narogu-warn-ink);
}
.oms-description .oms-wady > :first-child { margin-top: 0; }
.oms-description .oms-wady > :last-child { margin-bottom: 0; }
.oms-description .oms-figure { margin: 1.5rem 0; text-align: center; }
.oms-description .oms-figure img { max-width: 100%; height: auto; border-radius: .5rem; }
.oms-description ul, .oms-description ol { padding-left: 1.4rem; }
.oms-description h2 { font-size: 1.25rem; margin: 1.5rem 0 .75rem; }

/* Parametry nad opisem: pelna szerokosc, 2 kolumny */
.product-params { margin: 0 0 2rem; }
.product-params__title { font-size: 1.25rem; font-weight: 800; margin-bottom: .75rem; }
.product-params__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 2rem; }
.product-params__item { display: flex; justify-content: space-between; gap: 1rem; padding: .5rem 0; border-bottom: 1px solid #e9ecef; }
.product-params__name { color: #6c757d; }
.product-params__value { font-weight: 600; text-align: right; }
@media (max-width: 767.98px) { .product-params__grid { grid-template-columns: 1fr; } }

/* Dol karty: opis na cala szerokosc (kolumna obok opisu zwolniona) */
.product__bottom { display: block; }
.product__bottom-left { width: 100%; max-width: none; flex: none; }
.product__bottom-right { display: none; }
.product-terms { margin-top: 1rem; border: 1px solid #dee2e6; border-radius: .5rem; }
.product-terms__item { display: flex; gap: .75rem; padding: .75rem 1rem; }
.product-terms__item + .product-terms__item { border-top: 1px solid #e9ecef; }
.product-terms__icon { color: var(--narogu-ink); font-size: 1.6rem; }
.product-terms__text p { margin: .15rem 0 0; font-size: .9rem; color: #495057; }
.product-terms__text ul { margin: .15rem 0 0; padding-left: 1.1rem; font-size: .9rem; color: #495057; }

/* Sekcje opisu dzielone na pol (szablon OMS moze dawac dwie sekcje obok siebie) */
.oms-description { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 2rem; }
.oms-description > * { grid-column: 1 / -1; }
.oms-description > .oms-half { grid-column: auto; }
@media (max-width: 767.98px) { .oms-description { display: block; } }

/* GPSR: maly link pod opisem */
.oms-description .oms-gpsr { margin-top: 2rem; font-size: .85rem; color: #6c757d; }
.oms-description .oms-gpsr summary { cursor: pointer; text-decoration: underline; }
.oms-description .oms-gpsr__body { margin-top: .5rem; padding: .6rem .8rem; background: #f8f9fa; border-radius: .4rem; }
.product-terms__more summary { cursor: pointer; font-size: .85rem; color: #6c757d; text-decoration: underline; }
.product-terms__list { margin: .35rem 0 0; padding-left: 1.1rem; font-size: .85rem; color: #6c757d; }

/* Drzewo kategorii (lewa kolumna) */
.narogu-tree .category-tree__list { list-style: none; margin: 0; padding: 0; }
.narogu-tree .category-tree__list .category-tree__list { padding-left: 1rem; border-left: 2px solid #e9ecef; margin: .15rem 0 .35rem .35rem; }
.narogu-tree .category-tree__item-link { display: block; padding: .3rem .25rem; color: #212529; text-decoration: none; border-radius: .3rem; }
.narogu-tree .category-tree__item-link:hover { background: #f1f3f5; }
.narogu-tree .category-tree__item-link.is-in-path { font-weight: 700; }
.narogu-tree .category-tree__chevron { float: right; color: #adb5bd; }

/* Logo w naglowku */
.navbar-brand { height: auto; }
img.logo, .header-bottom .navbar-brand .logo { height: 88px; max-height: 88px; width: auto; max-width: none; }
@media (max-width: 767.98px) { img.logo, .header-bottom .navbar-brand .logo { height: 56px; max-height: 56px; } }
.header-bottom, .header-bottom > .container, .header-bottom .row { height: auto; min-height: 0; }
.header-bottom { padding-block: .5rem; }
.header-bottom .navbar-brand { display: block; line-height: 0; }
img.logo, .header-bottom .navbar-brand .logo { height: 72px; max-height: 72px; }
.columns-container { padding-top: 1.5rem; }

/* Naglowek w jednej linii: logo | wyszukiwarka | konto | koszyk */
.header-bottom__row { flex-wrap: nowrap; align-items: center !important; }
.header-bottom__row .ps-searchbar { min-width: 0; }
#_desktop_ps_searchbar { order: 2; flex: 1 1 auto; max-width: 640px; margin: 0 auto 0 1.5rem !important; }
#_desktop_ps_customersignin { order: 3; flex: 0 0 auto; width: auto; margin-left: 1rem; }
#_desktop_ps_shoppingcart { order: 4; flex: 0 0 auto; width: auto; margin-left: 1rem; }
#_desktop_ps_searchbar .ps-searchbar, #_desktop_ps_searchbar form { width: 100%; }

/* Miniatury: przycisk dodania do koszyka na calej szerokosci, bez selektora ilosci */
.product-miniature__form { display: flex; }
.product-miniature__add { flex: 1 1 auto; width: 100%; }
.product-miniature__add .product-miniature__add-text { display: inline; margin-left: .4rem; }
.product-miniature__details { flex: 1 1 auto; width: 100%; }
.product-miniature__details .product-miniature__add-text { display: inline; }

/* Stopka: godziny otwarcia */
.ps-contactinfo__hours { margin: .75rem 0; line-height: 1.5; }

/* Darmowa dostawa: informacja w podsumowaniu koszyka */
.cart-summary__free-shipping { margin: 0 0 1rem; padding: .6rem .8rem; background: #f1f8f1; border: 1px solid #cfe5cf; border-radius: .5rem; font-size: .9rem; }
.cart-summary__free-shipping.is-reached { background: #e8f5e9; border-color: #a5d6a7; }
.cart-summary__free-shipping-bar { height: .4rem; margin-top: .5rem; background: #dfe9df; border-radius: .2rem; overflow: hidden; }
.cart-summary__free-shipping-bar span { display: block; height: 100%; background: #2e7d32; }
.product-description-plain { margin-top: 1rem; }
.product__id { color: #6c757d; font-size: .9rem; margin: .15rem 0 .5rem; }

/* Warianty: ukryte baner/sekcje (atrybut hidden przegrywa z display z klas) i przyciski wyboru wariantu */
.outlet-banner[hidden], .oms-var[hidden], .product-variant__radio[hidden], .product-variant__color[hidden] { display: none !important; }
.product-variant__radios { display: flex; flex-wrap: wrap; gap: .5rem; }
.product-variant__radios .btn { min-width: 3rem; }
.product-variant__radios .btn-check:checked + .btn {
  background: var(--narogu-ink);
  border-color: var(--narogu-ink);
  color: #fff;
  box-shadow: inset 0 -.25rem 0 var(--narogu-gold);
}
.oms-var-title { display: none !important; }

/* Miniatura: informacja o wariantach na stanie */
.product-miniature__variants-info { margin: .25rem 0 .4rem; font-size: .8rem; color: #6c757d; }
.variants-info__group { display: flex; flex-wrap: wrap; align-items: baseline; gap: .15rem .3rem; }
.variants-info__name { font-weight: 600; }
.variants-info__value {
  padding: 0 .4rem;
  border: 1px solid #ced4da;
  border-radius: .25rem;
  background: #fff;
  color: #212529;
  line-height: 1.35;
}
a.variants-info__value { text-decoration: none; transition: background-color .15s, border-color .15s, color .15s; }
a.variants-info__value:hover, a.variants-info__value:focus-visible {
  background: var(--narogu-ink);
  border-color: var(--narogu-ink);
  color: #fff;
}
.variants-info__more { font-weight: 600; }
.product-miniature__price-from { font-size: .8em; font-weight: 400; color: #6c757d; }
/* Parametry: do 5 pozycji w jednej kolumnie, dopiero wiecej w dwoch */
.product-params__grid--single { grid-template-columns: 1fr; max-width: 40rem; }
/* Wariant niedostepny przy obecnym wyborze pozostalych opcji: szary, ale klikalny */
.product-variant__radio.is-unavailable .btn {
  background: #f1f3f5;
  border-color: #dee2e6;
  border-style: dashed;
  color: #adb5bd;
}
.product-variant__radio.is-unavailable .btn:hover { color: #6c757d; border-color: #adb5bd; }
/* Bez animacji przejscia przy zmianie wariantu (inaczej przyciski migaja na bialo przy podmianie HTML) */
.product-variant__radios .btn { transition: none; }

/* Facebook: link w kolumnie kontaktowej stopki; osobny pasek ikony ukryty */
.ps-socialfollow { display: none; }
.ps-contactinfo__facebook { display: flex; align-items: center; gap: .5rem; margin-top: .75rem; }
.ps-contactinfo__facebook svg { flex: none; }
.ps-contactinfo__directions { display: flex; align-items: center; gap: .5rem; margin-bottom: .75rem; }
.narogu-store-photos { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1rem; margin: 1rem 0 1.5rem; }
.narogu-store-photos img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: .5rem; }
/* sekcje strony glownej: tytul po lewej, przycisk przejscia po prawej w tym samym wierszu */
.module-products__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-block-end:1.25rem}
.module-products__head .section-title{margin-block-end:0}
.module-products__head .module-products__buttons{margin-block-start:0;justify-content:flex-end;flex-shrink:0}
@media (max-width:575.98px){.module-products__head .module-products__buttons .btn{padding:.35rem .6rem;font-size:.85rem}}
/* miniatura: zamiast powiekszania zdjecia po najechaniu pokazujemy drugie zdjecie */
.product-miniature__inner:hover .product-miniature__image{transform:none}
.product-miniature__image-link{position:relative}
.product-miniature__image--hover{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff;opacity:0;transition:opacity .25s ease;pointer-events:none}
.product-miniature__inner:hover .product-miniature__image--hover{opacity:1}
@media (hover:none){.product-miniature__image--hover{display:none}}
/* przyciski przejscia sekcji: kontur w kolorze marki, wypelnienie po najechaniu */
.module-products__buttons .btn{background:transparent;border:2px solid #111310;color:#111310;font-weight:600;padding:.4rem 1rem}
.module-products__buttons .btn:hover,.module-products__buttons .btn:focus{background:#111310;border-color:#111310;color:#F0D08A}
/* przyciski w kolorach marki: czern + zloto (zamiast niebieskiego motywu) */
.btn-primary{--bs-btn-color:#F0D08A;--bs-btn-bg:#111310;--bs-btn-border-color:#111310;--bs-btn-hover-color:#111310;--bs-btn-hover-bg:#F0D08A;--bs-btn-hover-border-color:#F0D08A;--bs-btn-focus-shadow-rgb:240,208,138;--bs-btn-active-color:#111310;--bs-btn-active-bg:#E4BF6A;--bs-btn-active-border-color:#E4BF6A;--bs-btn-disabled-color:#F0D08A;--bs-btn-disabled-bg:#111310;--bs-btn-disabled-border-color:#111310}
.btn-outline-primary{--bs-btn-color:#111310;--bs-btn-border-color:#111310;--bs-btn-hover-color:#F0D08A;--bs-btn-hover-bg:#111310;--bs-btn-hover-border-color:#111310;--bs-btn-focus-shadow-rgb:240,208,138;--bs-btn-active-color:#F0D08A;--bs-btn-active-bg:#111310;--bs-btn-active-border-color:#111310;--bs-btn-disabled-color:#111310;--bs-btn-disabled-border-color:#111310}
.product-terms__free{margin-top:.25rem}
.product-terms__free strong{display:inline-block;padding:.15rem .6rem;border-radius:999px;background:#111310;color:#F0D08A;font-size:.85rem}
/* kolory marki w calym sklepie: czern + zloto zamiast niebieskiego motywu (linki, filtry, suwak ceny, plakietki, ikona koszyka, paginacja) */
:root,[data-bs-theme=light]{--bs-primary:#111310;--bs-primary-rgb:17,19,16;--bs-primary-text-emphasis:#111310;--bs-link-color:#111310;--bs-link-color-rgb:17,19,16;--bs-link-hover-color:#8a6a14;--bs-link-hover-color-rgb:138,106,20}
.form-check-input:checked,.form-check-input[type=checkbox]:indeterminate{background-color:#111310;border-color:#111310}
.form-check-input:focus{border-color:#E4BF6A;box-shadow:0 0 0 .25rem rgba(240,208,138,.4)}
.form-range::-webkit-slider-thumb{background-color:#111310}
.form-range::-moz-range-thumb{background-color:#111310}
.noUi-connect{background:#F0D08A}
.noUi-handle{border-color:#111310}
.nav-pills{--bs-nav-pills-link-active-bg:#111310;--bs-nav-pills-link-active-color:#F0D08A}
.list-group{--bs-list-group-active-bg:#111310;--bs-list-group-active-border-color:#111310;--bs-list-group-active-color:#F0D08A}
.dropdown-menu{--bs-dropdown-link-active-bg:#111310;--bs-dropdown-link-active-color:#F0D08A}
.progress,.progress-stacked{--bs-progress-bar-bg:#111310}
.pagination{--bs-pagination-active-color:#111310;--bs-pagination-hover-color:#8a6a14;--bs-pagination-focus-color:#8a6a14}
.header-block__badge{background:#111310;color:#F0D08A}
.header-block--active .header-block,.header-block--active .header-block__icon{color:#8a6a14}
.product-flags .badge:not(.discount){background-color:#111310;border-color:#111310;color:#F0D08A}
.product-flags .badge.discount{border-color:#111310;color:#111310}
.alert-info{--bs-alert-color:#5c4509;--bs-alert-bg:#fbf3dd;--bs-alert-border-color:#F0D08A;--bs-alert-link-color:#5c4509}
/* przelacznik kolorow (osobne produkty rodzenstwa) na karcie produktu */
.product-colors{margin-block:1rem}
.product-colors__label{font-weight:600;margin-block-end:.4rem}
.product-colors__list{display:flex;flex-wrap:wrap;gap:.5rem}
.product-colors__item{display:flex;flex-direction:column;align-items:center;gap:.25rem;width:4.5rem;padding:.25rem;border:2px solid #dee2e6;border-radius:.5rem;text-decoration:none;color:#111310;font-size:.75rem;text-align:center;line-height:1.15}
.product-colors__item:hover{border-color:#F0D08A}
.product-colors__item.is-current{border-color:#111310}
.product-colors__img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:.35rem}
.product-variant__linked{font-weight:400;color:#5c5f5a}
/* strona glowna: tytuly sekcji Oferta / Nowosci / Promocje w ramce w kolorach sklepu (czern + zloto); przyciski bez zmian */
.narogu-homeoffer .module-products__head .section-title,.ps-newproducts .module-products__head .section-title,.ps-specials .module-products__head .section-title{display:inline-block;background:#111310;color:#F0D08A;border:2px solid #F0D08A;border-radius:.5rem;padding:.45rem 1.1rem;font-size:1.35rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 0 0 2px #111310}
@media (max-width:575.98px){.narogu-homeoffer .module-products__head .section-title,.ps-newproducts .module-products__head .section-title,.ps-specials .module-products__head .section-title{font-size:1rem;padding:.35rem .7rem}}
/* tytul sekcji = link do calej sekcji (strzalka podpowiada klik, takze na telefonie); po najechaniu zloto + czarny tekst */
.section-title-link{display:inline-block;text-decoration:none;border-radius:.5rem}
.section-title-link .section-title{transition:background-color .15s,color .15s}
.section-title-link .material-icons{font-size:1.15em;letter-spacing:0;vertical-align:-.2em;margin-inline-start:.2rem}
.section-title-link:hover .section-title,.section-title-link:focus-visible .section-title{background:#F0D08A !important;color:#111310 !important}
/* telefon: drzewo kategorii zwiniete pod przyciskiem */
.narogu-tree__toggle{display:flex;justify-content:space-between;align-items:center;font-weight:700;margin-block-end:.5rem}
.narogu-tree__toggle[aria-expanded="true"] .narogu-tree__toggle-icon{transform:rotate(180deg)}
@media (max-width:767.98px){.narogu-tree nav{padding-block-start:.25rem}}

/* strona glowna: separator miedzy sekcjami (czarna linia ze zlotym akcentem) */
.ps-newproducts,.ps-specials{margin-block-start:2.5rem}
.ps-newproducts .module-products,.ps-specials .module-products{padding-block-start:2.5rem;position:relative}
.ps-newproducts .module-products::before,.ps-specials .module-products::before{content:'';position:absolute;top:0;left:var(--bs-gutter-x,.75rem);right:var(--bs-gutter-x,.75rem);height:3px;background:linear-gradient(90deg,#111310 0,#111310 calc(50% - 3rem),#F0D08A calc(50% - 3rem),#F0D08A calc(50% + 3rem),#111310 calc(50% + 3rem))}
.product-colors__item.is-unavailable{opacity:.45;border-style:dashed;filter:grayscale(1)}
.narogu-invoice{padding:.75rem 1rem;border:1px solid #dee2e6;border-radius:.5rem}
.narogu-invoice__fields[hidden]{display:none}
.narogu-invoice__fields{margin-block-start:.5rem}
.product-variant--static .btn.active { background: var(--narogu-ink); border-color: var(--narogu-ink); color: #fff; box-shadow: inset 0 -.25rem 0 var(--narogu-gold); cursor: default; pointer-events: none; }

/* Kasa: warunki do zatwierdzenia (regulamin, stan i wady) - lekko wyrozniona ramka */
#conditions-to-approve .form-check{border:1px solid #d6d6d6;border-radius:6px;padding:10px 10px 10px 2.4rem;margin:8px 0}
#conditions-to-approve .form-check-input{margin-left:-1.8rem;margin-top:.15rem}
#conditions-to-approve .form-check-label{color:#111310;line-height:1.4}
#conditions-to-approve .form-check-label a{text-decoration:underline}
/* Telefon: nic nie moze wystawac poza ekran (bialy pasek po prawej). Przycisk sekcji strony glownej i dluga nazwa sortowania zawijaja tekst. */
@media (max-width:575.98px){.module-products__head{gap:.5rem}.narogu-homeoffer .module-products__head .section-title,.ps-newproducts .module-products__head .section-title,.ps-specials .module-products__head .section-title{flex-shrink:0}.module-products__head .section-title{min-width:0;overflow-wrap:anywhere}.module-products__head .module-products__buttons{flex-shrink:1;min-width:0}.module-products__head .module-products__buttons .btn{white-space:normal;text-align:center;line-height:1.2}}
.products__sort-dropdown{min-width:0}.products__sort-dropdown-button{max-width:100%;white-space:normal;text-align:start}
/* Siatka bezpieczenstwa: ewentualny wystajacy element nie tworzy poziomego przewijania calej strony (clip nie psuje sticky). */
html,body{overflow-x:clip}
/* Liczba produktow na stronie pod paginacja (catalog/_partials/products.tpl). */
.products__per-page{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-block:1rem 1.5rem;white-space:nowrap}.products__per-page label{margin:0;font-size:.875rem}.products__per-page .form-select{width:auto;padding-block:.2rem;min-width:4.5rem}
.module-products > .module-products__buttons{display:flex;justify-content:center;margin-block-start:1.5rem}
/* Wymagania hasla: niespelniony warunek = X zamiast ikony ok */
.password-requirements__icon.text-danger{font-size:0;position:relative;display:inline-block;width:1.25rem;height:1.25rem}
.password-requirements__icon.text-danger::before{content:"\E5C9";font-family:"Material Icons";font-size:1.25rem;line-height:1;position:absolute;inset:0}
/* Wiersz sily hasla ukryty; custom.js pokazuje go z X tylko przy wpisanym, zbyt slabym hasle */
.password-requirements__score { display: none; }

/* Na Rogu: kasa, krok "Dostawa" - wybor kurier / odbior osobisty (modul narogu_checkout) */
.narogu-ship__options { display: grid; gap: .5rem; }
@media (min-width: 768px) { .narogu-ship__options { grid-template-columns: 1fr 1fr; } }
.narogu-ship__option { display: flex; align-items: center; gap: .75rem; padding: .85rem 1rem; border: 2px solid #d9d9d6; border-radius: .5rem; cursor: pointer; background: #fff; }
.narogu-ship__option:hover { border-color: #111310; }
.narogu-ship__option.is-selected { border-color: #111310; box-shadow: inset 0 0 0 1px #111310; }
.narogu-ship__option .form-check-input { margin: 0; flex: 0 0 auto; }
.narogu-ship__body { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
.narogu-ship__name { font-weight: 700; }
.narogu-ship__desc { font-size: .875rem; color: #6c6c69; }
.narogu-ship__price { font-weight: 700; white-space: nowrap; }
.narogu-ship__section { min-width: 0; }
.narogu-pickup__info { padding: .85rem 1rem; border-left: 4px solid #F0D08A; background: #faf8f2; }

/* koszyk/kasa: dopisek 'lub odbior osobisty 0,00 zl' pod kosztem wysylki */
.cart-summary__line--pickup { margin-top: -.35rem; font-size: .875rem; color: #2e7d32; }
