/* ==========================================================================
   Motoklik 2026 — nakładka wizualna (design refresh)
   Zmienia TYLKO wygląd: fonty, kolory, zaokrąglenia, cienie, przyciski, karty.
   NIE zmienia układu (display/position/flex/grid/szerokości pozostają z main.css).
   Ładowana jako ostatni arkusz — nadpisuje wcześniejsze reguły wizualne.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap');

:root{
  --tf-ink:#141019;
  --tf-brand:#FF3B46;
  --tf-brand-2:#FF7A3D;
  --tf-brand-ink:#C2102A;
  --tf-grad:linear-gradient(120deg,#FF3B46 0%,#FF7A3D 100%);
  --tf-bg:#F5F4F1;
  --tf-line:#eceae4;
  --tf-r-card:22px;
  --tf-r-pill:999px;
  --tf-shadow:0 18px 44px -24px rgba(24,18,30,.30);
  --tf-shadow-sm:0 8px 26px -18px rgba(24,18,30,.26);
}

/* ---- Typografia + tło ---- */
body{
  font-family:'Inter',-apple-system,'Segoe UI',sans-serif !important;
  background:var(--tf-bg) !important;
  color:var(--tf-ink) !important;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5,h6,
.heading-box-medium,.heading-box-small,.heading-box-large,
.heading-section,.heading-small,.heading-big,.heading-medium,
.heading-with-icon,.sub-heading-xsmall,.heading-box-medium-primary,
.product-price,.product-name{
  font-family:'Space Grotesk','Inter',sans-serif !important;
  letter-spacing:-.015em;
}

/* ---- Akcent marki ---- */
.red,.list-red-check li:before,a.link-blue,.text-red,.heading-pos{color:var(--tf-brand-ink) !important}
.__with-red-arrow:after,.read-more{color:var(--tf-brand-ink) !important}

/* ---- Przyciski: pill + gradient + cień ---- */
.btn-primary,.btn-medium,.btn-red,.btn-check,.btn-plus{
  background:var(--tf-grad) !important;
  border:0 !important;
  border-radius:var(--tf-r-pill) !important;
  box-shadow:0 10px 24px -12px rgba(255,59,70,.6) !important;
  transition:transform .3s cubic-bezier(.34,1.56,.64,1), box-shadow .3s ease, filter .3s ease !important;
  overflow:hidden;
}
/* wyłączamy stary wsuwany pomarańczowy overlay (:before) — zastępujemy czystym hoverem */
.btn-primary:before,.btn-medium:before,.btn-red:before,.btn-check:before,.btn-plus:before{
  display:none !important; content:none !important; background:none !important;
}
.btn-primary:hover,.btn-medium:hover,.btn-red:hover,.btn-plus:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 30px -12px rgba(255,59,70,.7) !important;
  filter:brightness(1.05) saturate(1.05);
}
.btn-primary:active,.btn-medium:active,.btn-red:active,.btn-plus:active{
  transform:translateY(0) scale(.98);
  filter:brightness(.97);
}
.btn-primary .btn-text{font-weight:600;letter-spacing:.01em}

/* ---- Lupa wyszukiwarki: animacja „à la Apple" — bez unoszenia, ikona sprężynuje w miejscu ---- */
.search-main .btn-search{
  transition:filter .35s ease, background-color .35s ease !important;
  will-change:filter;
}
.search-main .btn-search:hover,
.search-main .btn-search:focus-visible{
  transform:none !important;            /* zostaje w kapsule — żadnego wychodzenia do góry */
  box-shadow:none !important;
  filter:brightness(1.07) saturate(1.12);
}
.search-main .btn-search:active{
  transform:none !important;
  filter:brightness(.95);
}
/* ikona lupy wyśrodkowana przez flex (bez absolutnego left:0) + animacja scale */
.search-main .btn-search{
  display:-ms-flexbox !important; display:flex !important;
  -ms-flex-align:center; align-items:center; -ms-flex-pack:center; justify-content:center;
}
.search-main .btn-search .btn-text{
  padding:0 !important; margin:0 !important; position:static !important;
  display:-ms-flexbox !important; display:flex !important;
  -ms-flex-align:center; align-items:center; -ms-flex-pack:center; justify-content:center;
}
.search-main .btn-search img{
  position:static !important; top:auto !important; left:auto !important; margin:0 !important;
  transform:none !important;   /* kasujemy translateY(-50%) z main.css — centrowanie robi flex */
  transition:transform .4s cubic-bezier(.34,1.56,.64,1) !important;
  transform-origin:center center; will-change:transform;
}
.search-main .btn-search:hover img{transform:scale(1.18) !important}
.search-main .btn-search:active img{transform:scale(.86) !important}
@media (prefers-reduced-motion:reduce){
  .search-main .btn-search img{transition:none !important}
  .search-main .btn-search:hover img,
  .search-main .btn-search:active img{transform:none !important}
}
/* wariant jasny/obrysowy jeśli występuje */
.btn-white,.btn-outline,.btn-ghost{
  border-radius:var(--tf-r-pill) !important;
  border:1.5px solid var(--tf-line) !important;
  background:#fff !important;color:var(--tf-ink) !important;
  transition:.25s !important;
}
.btn-white:hover,.btn-outline:hover,.btn-ghost:hover{transform:translateY(-2px)}

/* ---- Pola formularzy (UWAGA: bez .input-box — to tylko przezroczysty wrapper) ---- */
.input-primary,.select-primary-input,
input[type="text"],input[type="email"],input[type="password"],
input[type="number"],input[type="search"],select,textarea{
  border-radius:14px !important;
  border:1.5px solid var(--tf-line) !important;
  background:#fff !important;
  transition:border-color .2s, box-shadow .2s !important;
}
.input-box{background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important}
.input-primary:focus,.select-primary-input:focus,
input:focus,select:focus,textarea:focus{
  border-color:var(--tf-brand) !important;
  box-shadow:0 0 0 4px rgba(255,59,70,.12) !important;
  outline:0 !important;
}
.search-dropdown,.select-primary-dropdown{
  border-radius:16px !important;
  border:1px solid var(--tf-line) !important;
  box-shadow:var(--tf-shadow-sm) !important;
  overflow:hidden;
}

/* ---- Wyszukiwarka główna: jedna kapsuła, pełna szerokość ---- */
/* pełna szerokość — wyrównana do kafelków kategorii poniżej (zdejmujemy offset i 8/12) */
.search-primary-section .search-main > .container > .col-lg-8.offset-lg-2{
  -ms-flex:0 0 100% !important; flex:0 0 100% !important;
  max-width:100% !important; margin-left:0 !important;
}
/* zdejmujemy różową „szklaną" banderolę z pełnoszerokiego formularza */
.search-main{
  background:transparent !important; box-shadow:none !important;
  border:0 !important; padding:0 !important;
  -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
}

@media (min-width:992px){
  /* wspólna wysokość + wypełnienie 100%, zero zagnieżdżeń i marginesów */
  .search-main .input-box,.search-main .select-primary,
  .search-main .input-primary,.search-main .select-primary-input,
  .search-main .btn-search{height:62px !important;margin:0 !important}
  .search-main .input-box{width:100% !important;padding:0 !important;display:block !important}
  .search-main .select-primary{width:100% !important}
  /* pole tekstowe — lewy koniec kapsuły */
  .search-main .no-padding:nth-child(1) .input-primary{
    width:100% !important;
    border-radius:31px 0 0 31px !important;
    border:1.5px solid var(--tf-line) !important; border-right:0 !important;
    background:#fff !important; box-shadow:none !important;
    padding-left:30px !important; font-size:16px;
  }
  /* wybór kategorii — środek kapsuły (płaski, cienki dzielnik z lewej) */
  .search-main .no-padding:nth-child(2) .select-primary-input{
    width:100% !important;
    border-radius:0 !important;
    border-top:1.5px solid var(--tf-line) !important; border-bottom:1.5px solid var(--tf-line) !important;
    border-left:1px solid var(--tf-line) !important; border-right:0 !important;
    background:#fff !important; box-shadow:none !important;
    display:-ms-flexbox !important; display:flex !important;
    -ms-flex-align:center; align-items:center; -ms-flex-pack:start; justify-content:flex-start;
  }
  /* strzałka rozwijania: tuż za tekstem (podąża za zawartością), wyśrodkowana w pionie */
  .search-main .no-padding:nth-child(2) .select-primary{position:relative}
  .search-main .no-padding:nth-child(2) .select-primary:after{display:none !important}
  .search-main .no-padding:nth-child(2) .select-primary-input:after{
    content:"" !important;
    width:12px; height:8px; -ms-flex:0 0 auto; flex:0 0 auto;
    margin-left:9px; opacity:.7;
    background:url(../images/svg/arrow-down.svg) center center no-repeat;
    background-size:contain;
    transition:transform .2s ease, opacity .2s ease;
  }
  .search-main .no-padding:nth-child(2) .select-primary-input:hover:after{opacity:1}
  /* pole tekstowe pochłania wolne miejsce (szersze), sekcja lupy węższa */
  .search-main .no-padding:nth-child(1){
    -ms-flex:1 1 auto !important; flex:1 1 auto !important;
    max-width:none !important; width:auto !important;
  }
  /* lupa — węższa sekcja, przycisk na pełną wysokość, ikona wyśrodkowana w obu osiach */
  .search-main .no-padding:nth-child(3){
    -ms-flex:0 0 66px !important; flex:0 0 66px !important;
    max-width:66px !important; width:66px !important;
    display:-ms-flexbox !important; display:flex !important; -ms-flex-align:stretch; align-items:stretch;
  }
  .search-main .no-padding:nth-child(3) .btn-primary{
    -ms-flex:1 1 auto !important; flex:1 1 auto !important;
    height:auto !important; min-width:0 !important; padding:0 !important; line-height:normal !important;
    border-radius:0 31px 31px 0 !important; box-shadow:none !important;
  }
}
/* mobile — każdy segment osobno, ładnie zaokrąglony */
@media (max-width:991px){
  .search-main .input-primary,.search-main .select-primary-input,.search-main .btn-search{border-radius:14px !important}
}

/* ---- Kafelki kategorii pod wyszukiwarką: zaokrąglone, z odstępami, nowe zdjęcia ---- */
.search-primary-nav{gap:14px}
.search-primary-nav-item{
  border-radius:20px !important;
  overflow:hidden;
  border-right:none !important;
  height:150px !important;
  box-shadow:var(--tf-shadow-sm);
  transition:transform .3s ease, box-shadow .3s ease !important;
}
.search-primary-nav-item:hover{transform:translateY(-4px);box-shadow:var(--tf-shadow)}
@media (min-width:768px){
  .search-primary-nav-item{width:calc(20% - 11.2px) !important}
}
@media (max-width:767.98px){
  .search-primary-nav{gap:10px}
  .search-primary-nav-item{width:calc(50% - 5px) !important;height:110px !important;margin-bottom:0 !important}
  .search-primary-nav-item:nth-last-of-type(1){width:100% !important}
}

/* nowe, współczesne zdjęcia (hostowane lokalnie) + gradient dla czytelności napisów */
.search-primary-nav-item.pojazdy:before{background-image:linear-gradient(180deg,rgba(20,16,25,.08) 35%,rgba(20,16,25,.68) 100%),url(../images/tiles-2026/pojazdy.jpg) !important}
.search-primary-nav-item.czesci:before{background-image:linear-gradient(180deg,rgba(20,16,25,.08) 35%,rgba(20,16,25,.68) 100%),url(../images/tiles-2026/czesci.jpg) !important}
.search-primary-nav-item.mechanik-elektryk:before{background-image:linear-gradient(180deg,rgba(20,16,25,.08) 35%,rgba(20,16,25,.68) 100%),url(../images/tiles-2026/mechanik.jpg) !important}
.search-primary-nav-item.lakiernik-blacharz:before{background-image:linear-gradient(180deg,rgba(20,16,25,.08) 35%,rgba(20,16,25,.68) 100%),url(../images/tiles-2026/lakiernik.jpg) !important}
.search-primary-nav-item.pomoc-drogowa:before{background-image:linear-gradient(180deg,rgba(20,16,25,.08) 35%,rgba(20,16,25,.68) 100%),url(../images/tiles-2026/pomoc.jpg) !important}
/* usługi motoryzacyjne = zbiorczy kafelek na oknie „Wystaw ogłoszenie" */
.search-primary-nav-item.uslugi:before{background-image:linear-gradient(180deg,rgba(20,16,25,.08) 35%,rgba(20,16,25,.68) 100%),url(../images/tiles-2026/mechanik.jpg) !important}

/* Okno „Wystaw ogłoszenie": tylko 3 kafelki (części/pojazdy/usługi), więc
   rozciągamy je na całą szerokość zamiast 5-kolumnowej siatki wyszukiwarki.
   Zakres ograniczony do .public-type-content, żeby nie ruszać kafelków w
   wyszukiwarce na stronie głównej. */
@media (min-width:768px){
  .public-type-content .search-primary-nav-item{width:calc(33.3333% - 9.34px) !important}
}
@media (max-width:767.98px){
  .public-type-content .search-primary-nav-item{width:calc(50% - 5px) !important}
  .public-type-content .search-primary-nav-item.uslugi{width:100% !important}
}

/* hover/aktywny: subtelny tint marki zamiast podmiany zdjęcia */
.search-primary-nav-item:after{background-image:linear-gradient(180deg,rgba(255,59,70,.16),rgba(20,16,25,.28)) !important}

/* podpisy: czytelne na zdjęciu, plakietka „Już wkrótce" jako pigułka */
.search-primary-nav-item .heading-pos{bottom:16px}
.search-primary-nav-item .heading-box-small{
  font-weight:600 !important;
  letter-spacing:.02em;
  text-shadow:0 2px 14px rgba(0,0,0,.55);
}
.search-primary-nav-item .heading-box-small span{
  display:table;margin:0 auto 8px;
  background:rgba(255,255,255,.92);color:var(--tf-brand-ink);
  font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  padding:3px 12px;border-radius:var(--tf-r-pill);
  text-shadow:none;line-height:1.5;
}
.search-primary-nav-item.active{background:var(--tf-ink) !important;color:#fff !important}

/* ---- Nagłówek: glassmorphism ---- */
.header-primary{
  background:rgba(255,255,255,.72) !important;
  backdrop-filter:blur(18px) saturate(160%);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
  border-bottom:1px solid rgba(255,255,255,.5);
  box-shadow:0 6px 26px -20px rgba(24,18,30,.4);
}
.header-sticky{background:rgba(255,255,255,.9) !important}
.header-primary-nav ul li a{border-radius:var(--tf-r-pill) !important;transition:.2s !important}
.header-primary-nav ul li a:hover{background:rgba(0,0,0,.05) !important}
.header-primary-logo img{transition:.2s}
/* v2026zt: wyrównanie elementów nagłówka w pionie (linki, koszyk, przycisk
   „Dodaj ogłoszenie"). Stary układ inline-block + baseline stawiał je na różnych
   wysokościach; flex + align-items:center centruje wszystko na jednej linii.
   Tylko desktop (≥992px) — mobilne menu (hamburger) zostaje bez zmian. */
@media (min-width:992px){
  .header-primary-nav{display:flex;align-items:center;justify-content:flex-end}
  .header-primary-nav>ul{display:flex;align-items:center;margin-top:0;margin-bottom:0}
  .header-primary-nav>ul>li{display:flex;align-items:center}
  .header-primary-nav .btn-primary.btn-plus{top:0 !important}
  .header-primary .register:after{top:50%;transform:translateY(-50%);margin-top:0}
}

/* ---- Karty ofert (kwadratowe i poziome) ---- */
.product-square-item,.product-horizontal-item,
.partners-people-banner,.text-image-box,.sign-in-image-box,
.banner-apla,.category-section-row .product-square-item{
  border-radius:var(--tf-r-card) !important;
  border:1px solid var(--tf-line) !important;
  box-shadow:var(--tf-shadow-sm) !important;
  transition:transform .3s ease, box-shadow .3s ease !important;
  overflow:hidden;
}
.product-square-item:hover,.product-horizontal-item:hover{
  transform:translateY(-6px);
  box-shadow:var(--tf-shadow) !important;
}
.product-price{color:var(--tf-brand-ink) !important;font-weight:700 !important}

/* ZDJĘCIA 1:1 na kartach kwadratowych (strona główna, „Podobne oferty") — było
   115px wysokości na 4:3 źródle (zdjęcia przycięte, słabo widoczne); kwadrat
   pokazuje zalecany format w całości i spójnie z kartami list (2026-07-07) */
.product-square-item .image{aspect-ratio:1/1 !important;height:auto !important;background-size:cover;background-position:center}

/* obrazy w kartach zaokrągla samo przycięcie karty (overflow:hidden) —
   nie zaokrąglamy globalnie .background-settings, by nie ruszać tł sekcji/banerów */

/* ---- Baner „Dodaj ogłoszenie 0% prowizji" — pełna grafika (baner-1.png) ---- */
.curiosities-tow-truck-section .banner-apla{
  border-radius:var(--tf-r-card) !important;
  overflow:hidden;
}
.vertical-tow-truck-box.tf-banner-image{
  display:flex;
  align-items:flex-end;
  background-image:url(../images/content/baner-1.png) !important;
  background-size:cover !important;
  background-position:center top !important;
  background-repeat:no-repeat !important;
  aspect-ratio:774 / 1108;
  height:auto !important;
  border:2px solid var(--tf-ink) !important;
  border-radius:var(--tf-r-card) !important;
  overflow:hidden;
  text-decoration:none !important;
}
/* grafika + własne napisy — kasujemy stare przyciemnienie z main.css */
.vertical-tow-truck-box.tf-banner-image:before,
.vertical-tow-truck-box.tf-banner-image:after{
  display:none !important; content:none !important; background:none !important;
}
/* v2026zl: napisy na banerze dostają własną białą „płytę" z łagodnym
   przejściem — tekst jest czytelny niezależnie od kadru grafiki
   (wcześniej przy niektórych szerokościach wjeżdżał na zdjęcie
   i wyglądał na rozjechany) */
.tf-banner-caption{
  display:block;width:100%;
  padding:40px 26px 26px;
  background:linear-gradient(180deg, rgba(255,255,255,0) 0%, #fff 22%);
}
.tf-banner-title{
  display:block;
  font-family:'Space Grotesk','Inter',sans-serif;
  font-size:24px;line-height:1.12;font-weight:700;
  letter-spacing:-.015em;
  color:var(--tf-ink);
  margin-bottom:10px;
}
.tf-banner-text{
  display:block;
  font-size:14px;line-height:1.5;
  color:rgba(20,16,25,.72);
  margin-bottom:16px;
}
.tf-banner-btn{
  display:block;width:100%;
  text-align:center;
  padding:14px 18px;
  color:#fff !important;
  font-weight:600;font-size:14px;letter-spacing:.01em;
}
@media (max-width:1199.98px){
  .tf-banner-title{font-size:21px}
}
/* górna krawędź banera równo z górną krawędzią miniaturek ogłoszeń:
   nagłówek sekcji dostaje stałą wysokość (flex zamiast linii inline-block,
   której wysokość pływała po zmianie fontu), a baner dokładnie tyle marginesu,
   ile zajmuje nagłówek: 28 (margin-top) + 33 (wysokość) + 36 (margin-bottom) */
/* app.css (bootstrapowy reboot) dokłada nagłówkom margin-bottom:.5rem PO main.css —
   w 33px nagłówku flex podnosiło to napis ~2.5px ponad środek ikony */
.category-section-home .heading-with-icon .heading-box-medium{margin:0}
@media (min-width:992px){
  .category-section-home .heading-with-icon{
    display:flex;
    align-items:center;
    height:33px;
    margin-top:28px;
    margin-bottom:36px;
  }
  .category-section-home .heading-with-icon .icon{top:0}
  .category-section-home .heading-with-icon .icon img{display:block}
  /* przyciski pod siatkami jako block-level flex — bez pływającej linii bazowej
     pod inline-blockiem; dół kolumny = równo dół przycisku */
  .category-section-home .col-lg-8 > .btn-primary{
    display:flex;
    width:fit-content;
    align-items:center;
    justify-content:center;
  }
  /* baner = samodzielna karta w proporcjach grafiki (774/1108) — dzięki temu
     background-size:cover pasuje idealnie (makieta ogłoszenia nieprzycięta,
     jasny dół grafiki łagodnie przechodzi w białą płytę z napisami).
     Wcześniej height:calc(100% - 97px - 63px) rozciągało kartę na całą wysokość
     dwóch karuzel po lewej — grafika była za duża i przycinana po bokach,
     a po pomniejszeniu robiła się dziura pod makietą. Top równo z 1. karuzelą. */
  .category-section-home .vertical-tow-truck-box.tf-banner-image{
    margin-top:97px !important;
    height:auto !important;
    aspect-ratio:774 / 1108;
  }
}
.banner-apla{box-shadow:var(--tf-shadow)}

/* ---- Stopka: pełny redesign 2026zp — sekcja .tf-foot na końcu pliku ---- */

/* ---- Drobne: plakietki, ikony, badge ---- */
.icon,.heading-with-icon .icon{border-radius:14px !important}
.list-square li,.search-dropdown-value{border-radius:10px}

/* ---- Loader / komunikaty ---- */
.alert{border-radius:14px !important}

/* ---- Delikatne animacje wejścia hoverów na linki ---- */
a{transition:color .2s ease}

/* ==========================================================================
   Tło sekcji wyszukiwarki: jasna „aurora" zamiast ciemnoczerwonego zdjęcia
   ========================================================================== */
.search-primary-section-background{
  background-image:
    radial-gradient(640px 420px at 10% -20%, rgba(255,122,61,.30), transparent 62%),
    radial-gradient(760px 480px at 92% -12%, rgba(255,59,70,.26), transparent 64%),
    radial-gradient(1100px 600px at 50% 135%, rgba(255,90,60,.12), transparent 62%),
    linear-gradient(180deg,#FBFAF8 0%,#F5F4F1 100%) !important;
}
/* panel z kafelkami/filtrami: miękka biała taca zamiast ostrego panelu z 2019 */
.search-primary-wrapper{
  background:rgba(255,255,255,.78) !important;
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  backdrop-filter:blur(14px) saturate(140%);
  border:1px solid rgba(255,255,255,.85) !important;
  border-radius:24px !important;
  box-shadow:var(--tf-shadow-sm) !important;
  padding:14px !important;
}
/* kapsuła wyszukiwarki dostaje delikatny, jednolity cień (na całym wierszu) */
@media (min-width:992px){
  .search-main .col-lg-8 > .row{
    border-radius:31px;
    box-shadow:0 16px 38px -20px rgba(24,18,30,.30);
  }
}

/* ==========================================================================
   Filtry pod kafelkami (/pojazdy, /czesci): wyrównane do krawędzi kafelków,
   spójne wysokości, odstępy i przycisk — zamiast asymetrii z 2019
   ========================================================================== */
/* stary padding 11px 95px 10px 48px psuł wyrównanie — teraz krawędzie = krawędzie kafelków */
.search-primary-box-wrapper.__primary-padding{padding:20px 0 6px !important}
.search-primary-box-wrapper.__primary-padding > .row,
.search-primary-box-wrapper.__primary-padding .row{
  margin-right:-8px !important;margin-left:-8px !important;
}
.search-primary-box-wrapper.__primary-padding .row{margin-bottom:14px !important}
.search-primary-box-wrapper.__primary-padding [class*=col-]{
  padding-right:8px !important;padding-left:8px !important;
}
.search-primary-content{min-height:0 !important}

/* spójna wysokość i wyrównanie wszystkich pól filtrów */
.search-primary-content .select-primary-input,
.search-primary-content .input-primary{
  height:52px !important;
  display:-ms-flexbox !important;display:flex !important;
  -ms-flex-align:center;align-items:center;
}
.search-primary-content input.input-primary{display:block !important;line-height:52px}
/* dropdown pod polem (stare top:31px było pod wysokość 42px) */
.search-primary-content .select-primary{position:relative}
.search-primary-content .select-primary-dropdown{top:calc(100% + 6px) !important}
/* dopisek PLN przy cenie */
.search-primary-content .input-text-append{color:var(--tf-ink);font-weight:500}

/* przycisk Szukaj: proporcjonalny, ta sama wysokość co pola */
.search-primary-content .btn-primary.btn-search{
  height:52px !important;width:100%;
  display:-ms-flexbox !important;display:flex !important;
  -ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;
  padding:0 24px !important;
}
.search-primary-content .btn-primary.btn-search .btn-text{
  padding:0 !important;display:-ms-flexbox;display:flex;
  -ms-flex-align:center;align-items:center;gap:9px;
  font-size:15px;letter-spacing:.04em;
}
.search-primary-content .btn-primary.btn-search img{
  position:static !important;transform:none !important;margin:0 !important;
}

/* --- FIX: „Rocznik od/do" w jednej linii z resztą wiersza --- */
/* zagnieżdżone wiersze (ceny) nie dodają odstępu — to one zawyżały kolumnę */
.search-primary-box-wrapper.__primary-padding .row .row{margin-bottom:0 !important}
/* podwójne selecty wyrównane do góry, nie do dołu */
.search-primary-content .double-select{-ms-flex-align:start !important;align-items:flex-start !important}
.search-primary-content .double-select .space{top:0 !important;-ms-flex-item-align:center;align-self:center}

/* --- Responsywność filtrów górnych (tablet/mobile) --- */
@media (max-width:991.98px){
  .search-primary-content .select-primary-input,
  .search-primary-content .input-primary{height:48px !important}
  .search-primary-content .btn-primary.btn-search{height:48px !important;margin-top:4px}
  .search-primary-box-wrapper.__primary-padding{padding:14px 0 4px !important}
  .search-primary-box-wrapper.__primary-padding .row{margin-bottom:0 !important}
  .search-primary-box-wrapper.__primary-padding [class*=col-]{margin-bottom:10px}
}

/* ==========================================================================
   Wyszukiwanie w rozwijanych listach (pole „Szukaj…" dokłada motoklik-2026.js)
   + ładny suwak listy
   ========================================================================== */
.tf-dd-search{padding:4px 4px 8px;position:relative}
.tf-dd-search input{
  width:100%;height:38px !important;box-sizing:border-box;min-width:0;
  text-overflow:ellipsis;
  border:1.5px solid var(--tf-line) !important;border-radius:10px !important;
  padding:0 12px 0 34px !important;font-size:14px;background:#fff !important;
  background-image:url(../images/svg/search.svg) !important;
  background-repeat:no-repeat !important;background-position:11px center !important;
  background-size:14px 14px !important;
}
.tf-dd-search input:focus{border-color:var(--tf-brand) !important;box-shadow:0 0 0 3px rgba(255,59,70,.10) !important}
/* suwak: natywny */
.select-primary-dropdown ul{scrollbar-width:thin;scrollbar-color:#FF5A2A #F1EFE9}
.select-primary-dropdown ul::-webkit-scrollbar{width:6px}
.select-primary-dropdown ul::-webkit-scrollbar-track{background:#F1EFE9;border-radius:6px}
.select-primary-dropdown ul::-webkit-scrollbar-thumb{background:linear-gradient(#FF3B46,#FF7A3D);border-radius:6px}
/* suwak: plugin mCustomScrollbar używany przez stary skrypt */
.select-primary-dropdown .mCSB_scrollTools{width:10px;opacity:1}
.select-primary-dropdown .mCSB_scrollTools .mCSB_draggerRail{background:#F1EFE9;width:6px;border-radius:6px}
.select-primary-dropdown .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{
  background:linear-gradient(#FF3B46,#FF7A3D) !important;width:6px !important;border-radius:6px;opacity:1 !important;
}
/* pozycje listy: wygodniejsze, z zaokrąglonym hoverem */
.select-primary-dropdown ul li{padding:7px 10px;border-radius:9px;transition:background .15s}
.select-primary-dropdown ul li:hover{background:#FFF1EC}
/* pozycja podświetlona klawiaturą (strzałki ↑/↓, Enter zatwierdza — script.js) */
.select-primary-dropdown ul li.kbd-active{background:#FFF1EC;box-shadow:inset 0 0 0 1.5px #FF7A3D}

/* ==========================================================================
   Pasek nad ogłoszeniami: „Zapisz wyszukiwanie" + sortowanie po PRAWEJ
   ========================================================================== */
.advanced-search-top-bar > .row{
  display:-ms-flexbox;display:flex;
  -ms-flex-pack:end;justify-content:flex-end;
  -ms-flex-align:center;align-items:center;
  -ms-flex-wrap:wrap;flex-wrap:wrap;gap:12px;
}
.advanced-search-top-bar > .row > [class*=col-]{
  -ms-flex:0 0 auto !important;flex:0 0 auto !important;
  width:auto !important;max-width:none !important;
  margin:0 !important;padding:0 !important;
}
.advanced-search-top-bar [class*=offset-]{margin-left:0 !important}
/* przycisk „Zapisz wyszukiwanie": biała pigułka z gwiazdką */
.advanced-search-top-bar .btn-save{
  display:-ms-inline-flexbox;display:inline-flex;
  -ms-flex-align:center;align-items:center;
  height:46px;padding:0 20px 0 44px;
  background:#fff;border:1.5px solid var(--tf-line);border-radius:var(--tf-r-pill);
  font-size:13px;font-weight:600;letter-spacing:.03em;color:var(--tf-ink) !important;
  transition:.2s;box-shadow:none;
}
.advanced-search-top-bar .btn-save:hover{border-color:var(--tf-brand);color:var(--tf-brand-ink) !important;transform:translateY(-1px)}
.advanced-search-top-bar .btn-save:before{left:16px;top:50%;transform:translateY(-50%)}
/* sortowanie: pigułka tej samej wysokości */
.advanced-search-top-bar .select-primary{min-width:230px}
.advanced-search-top-bar .select-primary-input{
  height:46px !important;border-radius:var(--tf-r-pill) !important;
  display:-ms-flexbox !important;display:flex !important;
  -ms-flex-align:center;align-items:center;padding:0 20px !important;
  font-size:14px;
}
/* v2026zu: na stronie wyników wyszukiwania sortowanie owija dodatkowy
   .sort-select, któremu main.css dawał margin-top:-11px — „wskakiwało" wyżej
   niż „Zapisz wyszukiwanie" i przełącznik widoku. Zerujemy, żeby cały pasek
   stał równo w jednej linii (row ma już align-items:center). */
.advanced-search-top-bar .sort-select{margin-top:0 !important}

/* ==========================================================================
   Boczny panel filtrów przy ogłoszeniach — biała karta w nowym stylu
   ========================================================================== */
.sidebar-filters{
  background:#fff;border:1px solid var(--tf-line);border-radius:20px;
  padding:20px 18px;box-shadow:var(--tf-shadow-sm);
}
.sidebar-filters legend,
.sidebar-filters .form-group > label{
  font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;
  color:#8a8894;margin-bottom:8px;border:0;
}
.sidebar-filters select.form-control,
.sidebar-filters input.form-control{
  height:46px !important;border-radius:12px !important;
  border:1.5px solid var(--tf-line) !important;background:#fff !important;
  font-size:14px !important;box-shadow:none !important;color:var(--tf-ink);
}
.sidebar-filters select.form-control:focus,
.sidebar-filters input.form-control:focus{
  border-color:var(--tf-brand) !important;box-shadow:0 0 0 3px rgba(255,59,70,.10) !important;
}
.sidebar-filters .form-group{margin-bottom:14px}
.sidebar-filters .filter-block{margin-bottom:10px}
.sidebar-filters .btn.btn-primary.btn-block{
  height:48px;display:-ms-flexbox;display:flex;
  -ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;
  font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:none;
}
/* radia „Stan": akcent marki */
.sidebar-filters .input-radio-primary label{font-size:14px}
.sidebar-filters .input-radio-primary label:after{background:var(--tf-grad) !important}

/* --- korekty: gwiazdka, fieldset, bootstrap-select w sidebarze --- */
.advanced-search-top-bar .btn-save{padding-left:48px}
.advanced-search-top-bar .btn-save:before{left:18px}
.sidebar-filters fieldset{border:0 !important;padding:0 !important;margin:0 !important}
.sidebar-filters legend{width:auto;padding:0}
/* selecty sidebara na żywo renderuje bootstrap-select — stylujemy jego przyciski i menu */
.sidebar-filters .bootstrap-select > .dropdown-toggle,
.sidebar-filters .bootstrap-select > button{
  height:46px !important;border-radius:12px !important;
  border:1.5px solid var(--tf-line) !important;background:#fff !important;
  color:var(--tf-ink) !important;font-size:14px !important;
  box-shadow:none !important;padding:0 14px !important;
  display:-ms-flexbox !important;display:flex !important;
  -ms-flex-align:center;align-items:center;
}
.sidebar-filters .bootstrap-select > .dropdown-toggle:focus,
.sidebar-filters .bootstrap-select > .dropdown-toggle[aria-expanded="true"]{
  border-color:var(--tf-brand) !important;box-shadow:0 0 0 3px rgba(255,59,70,.10) !important;outline:0 !important;
}
.sidebar-filters .bootstrap-select .dropdown-menu{
  border-radius:14px !important;border:1px solid var(--tf-line) !important;
  box-shadow:var(--tf-shadow-sm) !important;padding:6px !important;
}
.sidebar-filters .bootstrap-select .dropdown-menu li a,
.sidebar-filters .bootstrap-select .dropdown-item{
  border-radius:9px !important;padding:7px 10px !important;font-size:14px !important;
}
.sidebar-filters .bootstrap-select .dropdown-menu li a:hover,
.sidebar-filters .bootstrap-select .dropdown-item:hover{background:#FFF1EC !important}
.sidebar-filters .bs-searchbox input{
  height:38px !important;border-radius:10px !important;
  border:1.5px solid var(--tf-line) !important;font-size:14px !important;
}
/* suwak menu bootstrap-select jak w listach filtrów */
.sidebar-filters .bootstrap-select .dropdown-menu .inner{scrollbar-width:thin;scrollbar-color:#FF5A2A #F1EFE9}
.sidebar-filters .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar{width:6px}
.sidebar-filters .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-track{background:#F1EFE9;border-radius:6px}
.sidebar-filters .bootstrap-select .dropdown-menu .inner::-webkit-scrollbar-thumb{background:linear-gradient(#FF3B46,#FF7A3D);border-radius:6px}

/* --- poprawki v2026l: ikona zapisu, centrowanie selectów, dropdown sortowania --- */

/* 1) „Zapisz wyszukiwanie": mniejsza ikona zakładki, idealnie wyśrodkowana do tekstu */
.advanced-search-top-bar .btn-save{padding-left:42px !important}
.advanced-search-top-bar .btn-save:before{
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2102A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 4h6a2 2 0 0 1 2 2v14l-5-3l-5 3V6a2 2 0 0 1 2-2z'/></svg>") center center/16px 16px no-repeat !important;
  width:16px !important;height:16px !important;
  top:50% !important;left:17px !important;
  transform:translateY(-50%) !important;
}

/* 2) sidebar: tekst „-- wybierz --" wyśrodkowany w pionie (bootstrap-select
      używa .filter-option z float+height:100%, przez co tekst siedział u góry) */
.sidebar-filters .bootstrap-select > .dropdown-toggle .filter-option{
  position:static !important;float:none !important;
  height:auto !important;width:auto !important;
  display:-ms-flexbox !important;display:flex !important;
  -ms-flex-align:center;align-items:center;
  -ms-flex:1 1 auto;flex:1 1 auto;
  padding:0 !important;text-align:left;
}
.sidebar-filters .bootstrap-select > .dropdown-toggle .filter-option-inner,
.sidebar-filters .bootstrap-select > .dropdown-toggle .filter-option-inner-inner{
  display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;
  padding:0 !important;overflow:hidden;
}
/* to samo dla zwykłych selectów (gdyby selectpicker nie wystartował) */
.sidebar-filters select.form-control{padding-top:0 !important;padding-bottom:0 !important;line-height:44px}

/* 3) dropdown sortowania otwiera się POD polem, nie na nim */
.advanced-search-top-bar .select-primary{position:relative}
.advanced-search-top-bar .select-primary-dropdown{
  top:calc(100% + 6px) !important;left:0;right:0;
}

/* ==========================================================================
   v2026m: strzałki przy tekście, przebudowa modali, porządek w Częściach
   ========================================================================== */

/* --- 1) Strzałki w filtrach jak w kapsule: tuż za tekstem, jedna, spójna --- */
.search-primary-content .select-primary:after{display:none !important}
.search-primary-content .select-popup:after{display:none !important}
.search-primary-content .select-primary-input:after{
  content:"" !important;
  width:12px;height:8px;-ms-flex:0 0 auto;flex:0 0 auto;
  margin-left:9px;opacity:.75;
  background:url(../images/svg/arrow-down.svg) center center no-repeat;
  background-size:contain;
  transition:transform .2s ease,opacity .2s ease;
}
.search-primary-content .select-primary-input:hover:after{opacity:1}

/* --- 2) Modale filtrów (Status pojazdu / Silnik i Napęd / Informacje finansowe) --- */
.modal-content.search-modal{
  border:0 !important;border-radius:24px !important;
  box-shadow:var(--tf-shadow) !important;
  padding:26px 26px 22px !important;
}
.modal-content.search-modal .heading-box-medium{
  font-size:20px !important;letter-spacing:.01em;
  margin-bottom:18px;text-align:left;
}
/* przełączniki: czytelne wiersze zamiast rozstrzelonych absolutów */
.modal-content.search-modal .check-slide,
.search-primary-content .check-slide{
  margin:0 0 10px !important;text-align:left;
  display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;
  -ms-flex-pack:justify;justify-content:space-between;
  background:#FAF9F6;border:1px solid var(--tf-line);border-radius:12px;
  padding:10px 14px;min-height:52px;
}
.modal-content.search-modal .check-slide .text,
.search-primary-content .check-slide .text{
  position:static !important;max-width:none !important;width:auto !important;
  font-weight:500 !important;text-transform:none !important;font-size:14px;
  text-align:left;bottom:auto !important;
}
.modal-content.search-modal .check-slide label,
.search-primary-content .check-slide label{padding-top:0 !important;margin:0 !important}
.modal-content.search-modal .check-slide .no,
.modal-content.search-modal .check-slide .yes,
.search-primary-content .check-slide .no,
.search-primary-content .check-slide .yes{display:none !important}
.modal-content.search-modal .check-slide .bar,
.search-primary-content .check-slide .bar{
  width:46px !important;height:26px !important;border-radius:999px !important;
  background:#E6E4DE !important;border:0 !important;margin-left:0 !important;
  transition:background .2s ease !important;
}
.modal-content.search-modal .check-slide .dot,
.search-primary-content .check-slide .dot{
  width:20px !important;height:20px !important;border:0 !important;
  top:3px !important;left:3px !important;
  box-shadow:0 1px 3px rgba(0,0,0,.25);
  transition:left .2s ease !important;background:#fff !important;
}
.modal-content.search-modal .check-slide .dot:after,
.search-primary-content .check-slide .dot:after{display:none !important}
.modal-content.search-modal .check-slide input:checked + label .bar,
.search-primary-content .check-slide input:checked + label .bar{background:var(--tf-grad) !important}
.modal-content.search-modal .check-slide input:checked + label .dot,
.search-primary-content .check-slide input:checked + label .dot{left:23px !important}
/* przycisk Zatwierdź */
.modal-content.search-modal .button-pos{text-align:center;margin-top:6px}
.modal-content.search-modal .btn-standard{min-width:180px;height:48px;display:inline-flex;align-items:center;justify-content:center}

/* --- 3) „Części": pełna szerokość, bez banera, równa siatka --- */
.search-primary-content .m-part-box{display:none !important}
.search-primary-box-wrapper.__secoundary-padding{padding:20px 0 6px !important}
.search-primary-box-wrapper.__secoundary-padding > .row,
.search-primary-box-wrapper.__secoundary-padding .row{margin-right:-8px !important;margin-left:-8px !important}
.search-primary-box-wrapper.__secoundary-padding .row{margin-bottom:14px !important}
.search-primary-box-wrapper.__secoundary-padding .row .row{margin-bottom:0 !important}
.search-primary-box-wrapper.__secoundary-padding [class*=col-]{padding-right:8px !important;padding-left:8px !important}
/* radia Stan w jednej linii z oddechem */
.search-primary-content .group-radio-button{gap:18px;margin:2px 0 4px}
.search-primary-content .group-radio-button .input-radio-primary{margin-right:0}
/* nagłówki mini-sekcji (STAN / FAKTURA VAT) jak w sidebarze */
.search-primary-content .heading-small{
  font-size:12px !important;font-weight:600 !important;letter-spacing:.07em;
  text-transform:uppercase;color:#8a8894 !important;margin-bottom:8px;
}

/* --- 4) komunikat pustej listy (dokłada JS) --- */
.tf-dd-empty{
  padding:14px 12px;text-align:center;
  color:#8a8894;font-size:13px;line-height:1.5;
}

/* --- zależne selecty: czytelny stan zablokowania + dymek po kliknięciu --- */
.search-primary-content .select-primary-input[disabled]{
  pointer-events:none;opacity:.55;
}
.search-primary-content .select-primary:has(> .select-primary-input[disabled]),
.search-primary-content .select-primary:has(button[disabled]){cursor:not-allowed}
.tf-locked-hint{
  position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:20;
  background:var(--tf-ink);color:#fff;font-size:13px;line-height:1.4;
  padding:9px 13px;border-radius:11px;box-shadow:var(--tf-shadow-sm);
  opacity:0;transform:translateY(-4px);
  transition:opacity .2s ease,transform .2s ease;pointer-events:none;
}
.tf-locked-hint.show{opacity:1;transform:translateY(0)}

/* ---- Oferty PROMOWANE: biala karta, czerwona ramka + plakietka (2026-07-03) ---- */
.product-horizontal-item.offer-distinct{
  background:#fff !important;
  border:2px solid var(--tf-brand) !important;
  position:relative;
}
.tf-promo-badge{
  position:absolute;top:10px;left:10px;z-index:5;
  background:var(--tf-brand);color:#fff;
  font-size:10px;font-weight:800;letter-spacing:.08em;
  padding:3px 10px;border-radius:var(--tf-r-pill);
  line-height:1.5;pointer-events:none;
}
/* wyróżnienie (bez promowania): plakietka „Zobacz to!" — biała z czerwoną obwódką */
.tf-promo-badge.tf-badge-see{
  background:#fff;color:var(--tf-brand-ink,#C2102A);
  border:1.5px solid var(--tf-brand);letter-spacing:.03em;
}

/* ---- WŁAŚCICIEL na liście: własne ogłoszenia w zielonej ramce + plakietka
        „Twoje ogłoszenie" (2026-07-07). Zamiast przycisków edytuj/wystaw
        podobne na liście — te są teraz nad zdjęciami na stronie oferty. ---- */
.product-horizontal-item.tf-own-offer{
  border:2px solid #22a24a !important;
  box-shadow:0 10px 28px -18px rgba(34,162,74,.55) !important;
}
.tf-own-badge{
  position:absolute;top:10px;left:10px;z-index:6;
  display:inline-flex;align-items:center;gap:5px;
  background:#22a24a;color:#fff;
  font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  padding:4px 11px;border-radius:var(--tf-r-pill);line-height:1.4;
  box-shadow:0 5px 14px -5px rgba(34,162,74,.65);pointer-events:none;
}
.tf-own-badge svg{width:11px;height:11px}
/* jeśli ogłoszenie jest też PROMOWANE (plakietka PROMOWANE w tym samym rogu) —
   plakietkę właściciela układamy pod nią, żeby się nie nakładały */
.product-horizontal-item.tf-own-offer.offer-distinct .tf-own-badge{top:40px}

/* ==========================================================================
   v2026n: karty ogłoszeń na liście + strona pojedynczej oferty
   ========================================================================== */

/* --- ikona zakładki dla WSZYSTKICH .btn-save (lista, oferta, panel) --- */
.btn-save:before{
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2102A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 4h6a2 2 0 0 1 2 2v14l-5-3l-5 3V6a2 2 0 0 1 2-2z'/></svg>") center center/16px 16px no-repeat !important;
  width:16px !important;height:16px !important;top:50% !important;transform:translateY(-50%) !important;
}
/* zapis na stronie oferty jako subtelny chip */
a.btn-save.offer-favorite{
  display:inline-flex;align-items:center;padding:9px 16px 9px 40px;
  border:1.5px solid var(--tf-line);border-radius:var(--tf-r-pill);
  font-size:12px;letter-spacing:.04em;color:var(--tf-ink) !important;transition:.2s;
}
a.btn-save.offer-favorite:before{left:16px}
a.btn-save.offer-favorite:hover{border-color:var(--tf-brand);color:var(--tf-brand-ink) !important;transform:translateY(-1px)}

/* --- KARTY OGŁOSZEŃ NA LIŚCIE --- */
.product-horizontal-item{border:1px solid var(--tf-line) !important;border-radius:20px !important;box-shadow:var(--tf-shadow-sm) !important}
.product-horizontal-item .image{transition:transform .5s ease}
.product-horizontal-item:hover .image{transform:scale(1.05)}
.product-horizontal-item .heading-box-medium{font-size:19px !important;letter-spacing:0;line-height:1.35}
.product-horizontal-item .price{color:var(--tf-brand-ink) !important;font-family:'Space Grotesk',sans-serif !important;font-size:22px !important}
.product-horizontal-item .state-info strong{
  font-size:11px !important;font-weight:600;letter-spacing:.05em;color:#8a8894 !important;
}
.product-horizontal-item .location-info strong{font-weight:500 !important;color:var(--tf-ink)}

/* --- ZDJĘCIA 1:1 na kartach ogłoszeń (zalecany kwadratowy format, 2026-07-07).
   Widok listy: kwadratowa miniatura po lewej; na wąskich ekranach zdjęcie
   pełną szerokością u góry (też 1:1). Widok kafelków ma własną regułę wyżej. --- */
.product-horizontal-item{min-height:200px}
.product-horizontal-item .image{
  width:200px !important;height:200px !important;
  top:0 !important;bottom:auto !important;left:0 !important;
  position:absolute !important;
  background-size:cover !important;background-position:center !important;
}
.product-horizontal-item .desc{margin-left:224px !important}
@media (max-width:575.98px){
  .product-horizontal-item{min-height:0}
  .product-horizontal-item .image{
    position:relative !important;width:100% !important;height:auto !important;aspect-ratio:1/1 !important;
  }
  .product-horizontal-item .desc{margin-left:0 !important}
}

/* --- STRONA OFERTY --- */
/* sidebar kontaktowy = karta */
.public-info-sidebar{border:1px solid var(--tf-line) !important;border-radius:20px !important;box-shadow:var(--tf-shadow-sm) !important}
/* cena */
.public-car-price .price{font-family:'Space Grotesk',sans-serif !important;color:var(--tf-brand-ink) !important}
/* zakładki Parametry/Opis/Kontakt/Zdjęcia = segmentowany pasek */
.public-navigation{
  background:#fff !important;border:1px solid var(--tf-line);border-radius:16px !important;
  box-shadow:var(--tf-shadow-sm) !important;overflow:hidden;padding:6px;
}
.public-navigation ul{gap:6px}
.public-navigation a{
  border-radius:11px !important;font-size:13px;font-weight:600;letter-spacing:.04em;
  color:var(--tf-ink) !important;transition:.2s !important;
}
.public-navigation a:hover{background:#FFF1EC !important;color:var(--tf-brand-ink) !important}

/* galeria: strzałki jako okrągłe, gradientowe, odsunięte od krawędzi */
.public-section .swiper-button-prev,
.public-section .swiper-button-next{
  width:46px !important;height:46px !important;border-radius:50% !important;
  background:var(--tf-grad) !important;box-shadow:0 8px 20px -8px rgba(255,59,70,.6) !important;
  transition:transform .2s ease,filter .2s ease !important;
}
.public-section .swiper-button-prev{left:14px !important}
.public-section .swiper-button-next{right:14px !important}
.public-section .swiper-button-prev:hover,
.public-section .swiper-button-next:hover{transform:translateY(-50%) scale(1.08);filter:brightness(1.05)}
/* główny kadr galerii zaokrąglony */
.public-section .swiper-container,
.public-sidebar-image .swiper-container{border-radius:16px !important;overflow:hidden}

/* parametry Tak/Nie + opis + kontakt jako czytelne karty */
.public-descryption-box,.public-contact-box,.public-boolean-box{
  background:#fff;border:1px solid var(--tf-line);border-radius:18px;padding:22px 24px;
}
.public-descryption-box{box-shadow:var(--tf-shadow-sm)}

/* ==========================================================================
   v2026o: nagłówek NIE-przyklejony + kompaktowa przyklejona wyszukiwarka
   ========================================================================== */
/* nagłówek (logo + nav) przewija się normalnie, przestaje być fixed */
.header-sticky{position:relative !important}
/* usuwamy spacer body (był kompensacją fixed-headera) */
body{padding-top:0 !important}

/* kompaktowa, przyklejona wyszukiwarka (dokłada JS) */
.tf-sticky-search{
  position:fixed;top:0;left:0;right:0;z-index:1500;isolation:isolate;
  background:rgba(255,255,255,.82);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
  backdrop-filter:blur(18px) saturate(160%);
  border-bottom:1px solid rgba(20,16,25,.06);
  box-shadow:0 8px 30px -22px rgba(24,18,30,.55);
  transform:translateY(-115%);
  transition:transform .42s cubic-bezier(.22,1,.36,1);
  will-change:transform;
}
.tf-sticky-search.show{transform:translateY(0)}
.tf-sticky-search.tf-no-anim{transition:none !important}
.tf-ss-inner{
  max-width:1200px;margin:0 auto;padding:9px 24px;
  display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:16px;
}
.tf-ss-logo{
  -ms-flex:0 0 auto;flex:0 0 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;
  opacity:0;transform:translateX(-14px);
  transition:opacity .45s ease .08s,transform .45s cubic-bezier(.22,1,.36,1) .08s;
}
.tf-ss-logo img{height:32px;display:block}
/* v2026zi: formularz = JEDNA kapsuła jak duża wyszukiwarka:
   [pole tekstowe | kategoria | gradientowy korek z lupą] — bez podziału na 3 elementy */
.tf-ss-form{
  -ms-flex:1 1 auto;flex:1 1 auto;display:-ms-flexbox;display:flex;
  -ms-flex-align:stretch;align-items:stretch;gap:0;
  height:48px;
  background:#fff !important;
  border:1.5px solid var(--tf-line) !important;
  border-radius:var(--tf-r-pill) !important;
  box-shadow:0 6px 18px -14px rgba(24,18,30,.28) !important;
  padding:0 !important;
  overflow:hidden; /* przycina prawy „korek" z lupą do kształtu pigułki */
  transition:border-color .2s ease,box-shadow .2s ease;
}
.tf-ss-form:focus-within{
  border-color:var(--tf-brand) !important;
  box-shadow:0 0 0 3px rgba(255,59,70,.12) !important;
}
/* pole tekstowe — lewy segment kapsuły, bez własnej ramki (prefiks
   .tf-sticky-search podbija specyficzność nad input[type=text]!important) */
.tf-sticky-search .tf-ss-input{
  -ms-flex:1 1 auto;flex:1 1 auto;min-width:0;
  height:100% !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:0 22px !important;font-family:inherit;font-size:15px;color:var(--tf-ink);
  box-shadow:none !important;
  outline:0 !important;
}
/* placeholder w tym samym kolorze co hero (.input-primary color #686868);
   !important + prefiksy, by pokonać globalne ::placeholder{color:inherit !important} */
.tf-sticky-search .tf-ss-input::-webkit-input-placeholder{color:#686868 !important;opacity:1}
.tf-sticky-search .tf-ss-input::-moz-placeholder{color:#686868 !important;opacity:1}
.tf-sticky-search .tf-ss-input:-ms-input-placeholder{color:#686868 !important;opacity:1}
.tf-sticky-search .tf-ss-input::placeholder{color:#686868 !important;opacity:1}
/* fokus pokazuje obwódkę na całej kapsule (focus-within), nie na segmencie */
.tf-sticky-search .tf-ss-input:focus{border:0 !important;box-shadow:none !important}
/* wybór kategorii — środek kapsuły, oddzielony cienkim dzielnikiem jak w dużej */
.tf-sticky-search .tf-ss-select{
  -ms-flex:0 0 auto;flex:0 0 auto;max-width:190px;
  height:100% !important;
  border:0 !important;
  border-left:1px solid var(--tf-line) !important;
  border-radius:0 !important;
  background:#fff !important;
  padding:0 38px 0 20px !important;
  font-family:inherit;font-size:14px;font-weight:600;color:var(--tf-ink);
  box-shadow:none !important;
  outline:0 !important;cursor:pointer;
  -webkit-appearance:none;-moz-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF3B46' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 16px center !important;
  background-size:12px 12px !important;
}
.tf-sticky-search .tf-ss-select:focus{
  border:0 !important;border-left:1px solid var(--tf-line) !important;
  box-shadow:none !important;
}
/* lupa — gradientowy prawy koniec kapsuły (jak w dużej wyszukiwarce),
   zaokrąglenie nadaje overflow:hidden formy */
.tf-ss-btn{
  -ms-flex:0 0 56px;flex:0 0 56px;width:56px;height:auto;border:0;border-radius:0;
  background:var(--tf-grad);color:#fff;display:-ms-flexbox;display:flex;
  -ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;cursor:pointer;
  box-shadow:none;
  transition:filter .35s ease;
}
.tf-ss-btn:hover{filter:brightness(1.07) saturate(1.12);transform:none}
.tf-ss-btn:active{filter:brightness(.95);transform:none}
/* ikona sprężynuje w miejscu — jak lupa dużej wyszukiwarki */
.tf-ss-btn svg,.tf-ss-btn img{
  width:18px;height:18px;display:block;
  transition:transform .4s cubic-bezier(.34,1.56,.64,1);
  transform-origin:center center;
}
.tf-ss-btn:hover svg{transform:scale(1.18)}
.tf-ss-btn:active svg{transform:scale(.86)}
.tf-ss-account{
  -ms-flex:0 0 auto;flex:0 0 auto;display:-ms-inline-flexbox;display:inline-flex;
  -ms-flex-align:center;align-items:center;gap:8px;
  height:42px;padding:0 18px;border-radius:var(--tf-r-pill);border:1.5px solid var(--tf-line);
  font-size:14px;font-weight:600;color:var(--tf-ink) !important;text-decoration:none;white-space:nowrap;
  opacity:0;transform:translateX(14px);
  transition:opacity .45s ease .08s,transform .45s cubic-bezier(.22,1,.36,1) .08s,border-color .2s,color .2s;
}
.tf-ss-account i,.tf-ss-account svg{width:17px;height:17px;flex:0 0 auto}
.tf-sticky-search.show .tf-ss-logo,
.tf-sticky-search.show .tf-ss-account{opacity:1;transform:none}
.tf-ss-account:hover{border-color:var(--tf-brand);color:var(--tf-brand-ink) !important;transform:translateY(-1px)}
@media (max-width:640px){
  .tf-ss-inner{padding:8px 14px;gap:10px}
  .tf-ss-logo img{height:27px}
  .tf-ss-account span{display:none}
  .tf-ss-account{padding:0;width:42px;justify-content:center}
  .tf-sticky-search .tf-ss-select{
    max-width:112px;font-size:13px;
    padding:0 26px 0 12px !important;
    background-position:right 10px center !important;
  }
}
@media (prefers-reduced-motion:reduce){
  .tf-sticky-search,.tf-ss-logo,.tf-ss-account{transition:none !important}
}

/* ==========================================================================
   v2026t: Części — równy, pełnoszerokościowy grid filtrów (jak w Pojazdach)
   Metoda: display:contents spłaszcza opakowania bootstrapa, form staje się grid.
   Całość w @supports selector(:has(*)) — stare przeglądarki mają dawny układ.
   ========================================================================== */
@supports selector(:has(*)){
  .search-primary-box-wrapper.__secoundary-padding{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px 16px;
    -ms-flex-align:start;align-items:start;
  }
  @media (max-width:991.98px){
    .search-primary-box-wrapper.__secoundary-padding{grid-template-columns:repeat(2,minmax(0,1fr))}
  }
  @media (max-width:575.98px){
    .search-primary-box-wrapper.__secoundary-padding{grid-template-columns:minmax(0,1fr)}
  }
  /* spłaszczamy wszystkie wiersze i kolumny zawierające wiersz */
  .__secoundary-padding .row{display:contents !important}
  .__secoundary-padding [class*="col-"]:has(> .row){display:contents !important}
  /* liście-komórki bez paddingu/marginesu i bez bootstrapowego max-width:50%/25% */
  .__secoundary-padding [class*="col-"]{
    padding:0 !important;margin:0 !important;min-width:0;
    max-width:none !important;width:auto !important;-ms-flex:initial;flex:initial;
  }
  /* usuwamy FAKTURA VAT oraz puste kolumny-spacery */
  .__secoundary-padding [class*="col-"]:has(> .check-slide){display:none !important}
  .__secoundary-padding [class*="col-"]:not(:has(*)){display:none !important}
  /* STAN na całą szerokość, „Stan" jako nagłówek nad radiami */
  .__secoundary-padding [class*="col-"]:has(> .group-radio-button){grid-column:1 / -1 !important}
  .__secoundary-padding .group-radio-button{
    display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;
    -ms-flex-align:center;align-items:center;gap:8px 34px;
    -ms-flex-pack:start;justify-content:flex-start !important;   /* radia do lewej, nie rozstrzelone */
  }
  .__secoundary-padding .group-radio-button > .label-primary{
    -ms-flex:0 0 100%;flex:0 0 100%;
    font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;
    color:#8a8894;margin:0 0 2px;
  }
  /* ceny — pole wypełnia komórkę, „PLN" w rzędzie obok (nie absolutnie, nie ściska) */
  .__secoundary-padding .input-box.__with-append{
    width:100%;height:52px;position:static !important;
    display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:8px;
  }
  .__secoundary-padding .input-box.__with-append .input-primary{
    -ms-flex:1 1 auto;flex:1 1 auto;width:auto !important;height:52px !important;min-width:0;
  }
  .__secoundary-padding .input-box.__with-append .input-text-append{
    position:static !important;transform:none !important;
    -ms-flex:0 0 auto;flex:0 0 auto;font-weight:600;color:var(--tf-ink);
  }
  /* przycisk SZUKAJ — jedna komórka (auto), w równej linii z polami (bez margin-top) */
  .__secoundary-padding [class*="col-"]:has(> .btn-search){grid-column:auto !important;-ms-flex-item-align:start;align-self:start}
  .__secoundary-padding .btn-primary.btn-search{width:100% !important;margin-top:0 !important;height:52px !important}
  /* otwarta lista wyboru NAD sąsiednimi komórkami gridu (inaczej Marka/… byłyby przykryte) */
  .__secoundary-padding .select-primary{position:relative;z-index:1}
  .__secoundary-padding .select-primary:has(> .select-primary-input.active){z-index:70}
}

/* ==========================================================================
   v2026v: strona ogłoszenia (/p/ /c/) — dopracowanie wyglądu
   ========================================================================== */

/* --- breadcrumbs: jasny, subtelny pasek zamiast ciemnoczerwonego zdjęcia --- */
.breadcrumbs,
.breadcrumbs.__without-background{
  background:linear-gradient(180deg,#FBFAF8 0%,#F5F4F1 100%) !important;
  border-bottom:1px solid rgba(20,16,25,.05);
}
.breadcrumbs li{
  color:#8a8894 !important;font-family:'Inter',sans-serif !important;
  font-weight:500 !important;font-size:13px !important;
}
.breadcrumbs li a{color:#8a8894 !important;transition:color .2s ease}
.breadcrumbs li a:hover{color:var(--tf-brand-ink) !important;text-decoration:none !important}
.breadcrumbs li:last-child,
.breadcrumbs .active{color:var(--tf-ink) !important;font-weight:600 !important}

/* --- zakładki: bez cienia na każdym przycisku (main.css .box-shadow), bez łamania w 2 linie,
       bez szachownicy szary/biały na mobile (main.css nth-child) --- */
.public-navigation a{box-shadow:none !important;white-space:nowrap}
.public-navigation li{background:transparent !important}
/* mobile: main.css daje li width:50%, a nasz gap 6px wypychał drugi element do nowej linii */
@media (max-width:767px){
  .public-navigation li{width:calc(50% - 3px) !important}
  .public-navigation a{white-space:normal}
}

/* --- SPECYFIKACJA: biała karta + ikony na ciepłych chipach --- */
.public-category-box{
  background:#fff;border:1px solid var(--tf-line);border-radius:18px;
  padding:26px 26px 22px;box-shadow:var(--tf-shadow-sm);
}
.public-category-list li{font-size:15px !important;font-weight:500;color:var(--tf-ink) !important}
.public-category-list .icon{background:#FFF1EC;border-radius:12px}
.public-category-list .icon img{max-width:60% !important;max-height:60% !important}

/* --- STATUS POJAZDU / INFORMACJE FINANSOWE: etykieta drobna, wartość jako pigułka --- */
.public-boolean-box,.public-contact-box{box-shadow:var(--tf-shadow-sm)}
.public-boolean-box .sub-heading-small{
  font-size:11px !important;letter-spacing:.08em !important;color:#8a8894 !important;
  font-family:'Inter',sans-serif !important;font-weight:600 !important;
}
.public-boolean-box .boolean-value{
  display:inline-block;margin-top:8px !important;padding:7px 18px;border-radius:999px;
  background:#FFF1EC;color:var(--tf-brand-ink) !important;
  font-family:'Space Grotesk',sans-serif !important;font-weight:700;
  font-size:14px !important;letter-spacing:.04em;
}
/* mniejszy odstęp pod pigułkami — karta bez martwej przestrzeni na dole */
.public-boolean-box-item{margin-bottom:12px !important}

/* --- miniatury galerii: zaokrąglone, nieaktywne wyciszone --- */
.slider-workshop-nav .swiper-slide .image{
  border-radius:12px;overflow:hidden;
}
.slider-workshop-nav .swiper-slide{
  opacity:.65;transition:opacity .25s ease;
}
.slider-workshop-nav .swiper-slide:hover,
.slider-workshop-nav .swiper-slide-active,
.slider-workshop-nav .swiper-slide-thumb-active{opacity:1}

/* --- przycisk pełnego ekranu na zdjęciu: miękki, szklany --- */
.swiper-button-fullscreen{
  border-radius:14px !important;
  background:rgba(255,255,255,.86) !important;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  box-shadow:0 6px 18px -8px rgba(24,18,30,.4) !important;
  transition:transform .2s ease,background .2s ease !important;
}
.swiper-button-fullscreen:hover{transform:scale(1.06);background:#fff !important}

/* --- mapa: zaokrąglona karta --- */
.public-maps-box{border-radius:18px;overflow:hidden;border:1px solid var(--tf-line)}

/* --- nagłówki sekcji na stronie oferty: akcent gradientowy pod tytułem --- */
.public-content-wrapper .heading-box-medium:after{
  content:"";display:block;width:36px;height:4px;border-radius:999px;
  background:var(--tf-grad);margin-top:10px;
}

/* --- link „Zgłoś to ogłoszenie": wyciszony, brand dopiero na hover --- */
a[href*="zglos-ogloszenie"]{
  color:#8a8894 !important;text-decoration:none !important;transition:color .2s ease;
}
a[href*="zglos-ogloszenie"]:hover{color:var(--tf-brand-ink) !important;text-decoration:underline !important}

/* ==========================================================================
   v2026w: strona ogłoszenia — bez paska zakładek, cena w oknie kontaktowym,
   miniaturki dla części; v2026zj: pływające okno parkuje na dole zamiast znikać
   ========================================================================== */

/* pasek zakładek (Specyfikacja/Parametry/Opis/Kontakt/Zdjęcia) usunięty całkowicie */
.public-navigation{display:none !important}

/* cena w pływającym oknie kontaktowym (przenosi ją motoklik-2026.js) */
.public-info-sidebar .public-car-price{
  text-align:left !important;margin:0 0 18px !important;padding:2px 10px 16px;
  border-bottom:1px solid var(--tf-line);
}
.public-info-sidebar .public-car-price .price{
  font-size:30px !important;margin-bottom:0 !important;line-height:1.15;
}

/* ==========================================================================
   v2026zm: okno kontaktowe/zakupu — kompaktowe, żeby dół okna równał się
   z dolną krawędzią miniaturek „Podobne oferty", a nie sięgał stopki.
   main.css narzucał min-height:585px i duże marginesy — tu je ścinamy.
   ========================================================================== */
.public-info-sidebar{
  min-height:0 !important;padding:16px 16px 16px !important;
}
.public-info-sidebar .heading-box-medium-primary{
  min-height:0 !important;margin:0 10px 4px !important;font-size:19px;
}
.public-info-sidebar .address-box{
  margin:6px 0 0 10px !important;font-size:13.5px;color:#6c6a76;
}
.public-info-sidebar .phones-container{margin:12px 0 2px 10px}
.public-info-sidebar .phone-link{
  font-size:1.55rem !important;margin:0 0 4px 0 !important;
}
.public-info-sidebar .tf-reply-time{margin:6px 0 0 10px}
/* trójka przycisków akcji: niższe, mniejszy odstęp.
   UWAGA: nie ruszać padding-left przycisku .btn-mail (rezerwa 50px na ikonę
   koperty — inaczej ikona nachodzi na napis). Tniemy tylko pion + odstęp. */
.public-info-sidebar .btn-primary{
  margin-bottom:8px !important;padding-top:11px !important;padding-bottom:11px !important;
}
.public-info-sidebar .btn-primary:last-child{margin-bottom:0 !important}

/* miniaturki pod głównym zdjęciem (części — dokłada motoklik-2026.js) */
.tf-thumbs{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.tf-thumb{
  width:80px;height:80px;padding:0;border:2px solid transparent;border-radius:12px;
  overflow:hidden;cursor:pointer;background:none;-webkit-appearance:none;appearance:none;
  opacity:.6;transition:opacity .25s ease,border-color .25s ease;
}
.tf-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}
.tf-thumb:hover{opacity:1}
.tf-thumb.active{opacity:1;border-color:var(--tf-brand)}
.tf-thumb:focus{outline:none}
@media (max-width:575px){.tf-thumb{width:64px;height:64px}}

/* pływające okno kontaktowe: v2026zk — czyste CSS position:sticky.
   Kolumna okna (col-md-4 w .tf-offer-row) obejmuje całą treść oferty,
   więc okno płynie z użytkownikiem i samo zatrzymuje się na końcu
   kolumny — przed stopką. Bez sticky-kit i bez liczenia w JS. */
/* main.css daje body{overflow-x:hidden}, a to robi z body kontener
   przewijania i wyłącza position:sticky w całym dokumencie (Chrome).
   overflow-x:clip przycina poziomo tak samo, ale scroll-containera
   nie tworzy — sticky działa. Blokada przewijania przy modalach
   (overflow-y) zostaje nietknięta. */
body{overflow-x:clip !important}
@media (min-width:768px){
  .tf-offer-row > [class*="col-md-4"]{align-self:stretch}
  .tf-offer-row .public-info-sidebar{
    position:-webkit-sticky;position:sticky;top:100px;z-index:30;
    /* v2026zn: kolumna treści ma na końcu 65px margin (.public-content-wrapper)
       + ~10px padding swipera pod miniaturkami „Podobne oferty". Bez kompensacji
       sticky-okno zatrzymywało się o te ~75px NIŻEJ niż dół miniaturek (sięgało
       stopki). Margines na oknie cofa jego widoczny dół równo do krawędzi kafelków. */
    margin-bottom:76px;
  }
}
/* treść zaraz pod galerią — bez pustej dziury między zdjęciami a parametrami */
.tf-offer-row .public-content-wrapper{margin-top:6px}
.tf-offer-row .slider-workshop-nav{margin-bottom:18px}
/* mała informacja pod ceną: cena łącznie z najtańszą wysyłką (KUP TERAZ) */
.public-car-price .tf-price-with-shipping{
  margin:4px 0 0;font-size:12.5px;color:#6c6a76;font-weight:400;
}

/* ==========================================================================
   v2026x: strona ogłoszenia — tytuł w oknie kontaktowym nad ceną;
   nad zdjęciem tylko „Zapisz ogłoszenie" (lewa) i nr ID (prawa)
   ========================================================================== */

/* pasek nad zdjęciem */
.tf-offer-topbar{
  display:flex;align-items:center;justify-content:space-between;
  gap:12px;margin:0 0 16px;
}
.tf-offer-topbar .tf-offer-id{
  margin:0;font-size:13px;color:#8a8894;letter-spacing:.03em;white-space:nowrap;
}
/* właściciel oferty: zamiast „Zapisz ogłoszenie" dwa przyciski w kapsułkach —
   białe z czerwoną obwódką: „edytuj" i „wystaw podobne" (2026-07-07) */
.tf-owner-actions{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}
.tf-owner-btn{
  display:inline-flex;align-items:center;gap:7px;
  height:40px;padding:0 18px;line-height:1;
  background:#fff;border:1.6px solid var(--tf-brand);
  border-radius:var(--tf-r-pill);
  color:var(--tf-brand-ink) !important;
  font-size:13px;font-weight:700;letter-spacing:.02em;text-decoration:none;
  transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.tf-owner-btn svg{width:15px;height:15px;stroke:currentColor;flex:0 0 auto}
.tf-owner-btn:hover{
  background:var(--tf-brand);color:#fff !important;
  transform:translateY(-1px);box-shadow:0 9px 18px -8px rgba(255,59,70,.6);
}
@media (max-width:479px){
  .tf-owner-btn{height:38px;padding:0 14px;font-size:12.5px}
}

/* tytuł ogłoszenia w oknie kontaktowym, nad ceną */
.public-info-sidebar .tf-offer-title{
  font-family:'Space Grotesk',sans-serif;font-size:21px;font-weight:700;
  line-height:1.3;color:var(--tf-ink);margin:0 0 12px;padding:2px 10px 0;
  overflow-wrap:break-word;
}

/* ==========================================================================
   v2026y: podstrony BEZ klasycznego menu (Ciekawostki/FAQ tylko na stronie
   głównej) — zamiast niego kompaktowa wyszukiwarka z logo i kontem,
   przyklejona od wejścia (klasę .show dodaje od razu motoklik-2026.js).
   v2026zi: WYJĄTEK — strony z dużą wyszukiwarką w treści (.tf-has-hero-search:
   /szukaj, pojazdy, części, wizytówki, użytkownicy) zachowują klasyczny
   nagłówek, a pasek wjeżdża dopiero po przewinięciu poniżej kapsuły —
   użytkownik nigdy nie widzi dwóch pól wyszukiwania naraz.
   v2026zo: WYJĄTEK 2 — strony logowania/rejestracji/resetu (.tf-auth-page,
   nadaje master.blade) też zachowują klasyczny nagłówek, bo motoklik-2026.js
   celowo nie dokleja tam kompaktowego paska i strona zostawała bez nagłówka
   ========================================================================== */
body.tf-subpage:not(.tf-has-hero-search):not(.tf-auth-page) .header-primary{display:none}
/* miejsce pod pasek fixed: 48px pole + 2×9px padding + 1px border */
body.tf-subpage:not(.tf-has-hero-search):not(.tf-auth-page){padding-top:67px !important}
@media (max-width:640px){
  body.tf-subpage:not(.tf-has-hero-search):not(.tf-auth-page){padding-top:65px !important}
}

/* wąskie ekrany: formularz MUSI móc się ścisnąć (min-width:auto flexa
   trzymało intrinsic szerokość inputa → lupa i konto wypadały za ekran) */
.tf-ss-form{min-width:0}
@media (max-width:640px){
  .tf-ss-logo img{height:24px}
  .tf-sticky-search .tf-ss-input{padding:0 14px !important}
}

/* przyklejone okno kontaktowe MUSI być nad kolumnami dalszych rzędów —
   kolumny Bootstrapa są position:relative i (późniejsze w DOM) malowały się
   nad fixed-sidebarem z z-index:auto, blokując kliknięcia w przyciski */
.public-info-sidebar.is_stuck{z-index:30}

/* ==========================================================================
   v2026zl: strony kategorii — baner z nazwą kategorii na całą szerokość
   (zamiast ponownych kafelków z kategoriami)
   ========================================================================== */
.tf-cat-banner{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  width:100%;padding:30px 38px;border-radius:var(--tf-r-card);
  color:#fff;box-shadow:var(--tf-shadow);position:relative;overflow:hidden;
}
.tf-cat-banner--pojazdy{background:var(--tf-grad)}
.tf-cat-banner--czesci{background:linear-gradient(120deg,#2b2340 0%,#4a3b6b 100%)}
.tf-cat-banner--uslugi{background:linear-gradient(120deg,#0e5e63 0%,#159a8c 100%)}
.tf-cat-banner--uzytkownicy{background:linear-gradient(120deg,#33303b 0%,#55505f 100%)}
.tf-cat-banner-kicker{
  margin:0 0 4px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.75);font-weight:600;
}
.tf-cat-banner-title{
  margin:0;font-family:'Space Grotesk',sans-serif;font-size:34px;font-weight:700;
  line-height:1.1;color:#fff;
}
.tf-cat-banner-sub{margin:8px 0 0;font-size:14.5px;color:rgba(255,255,255,.85)}
.tf-cat-banner-icon{
  flex:0 0 auto;width:84px;height:84px;border-radius:50%;
  background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;
}
.tf-cat-banner-icon svg{width:44px;height:44px;color:#fff}

/* filtr „ID oferty" w kolumnie filtrów */
.tf-filter-id .tf-id-filter-form{display:flex;gap:8px;align-items:stretch}
.tf-filter-id .tf-id-filter-form input{
  flex:1 1 auto;min-width:0;height:42px !important;font-size:14px;
}
.tf-filter-id .tf-id-filter-form .btn-primary{
  flex:0 0 auto;height:42px;padding:0 18px;display:flex;align-items:center;
}

/* formularz ogłoszeń: kolumny wierszy wyrównane do góry, etykiety w jednej
   linii (blok „Stan" startował 10px wyżej niż sąsiednie selecty) */
.public-ex-input-row .group-radio-button{padding-top:10px}

/* kółka radio/checkbox w filtrach: lekki odstęp między pozycjami
   (dotychczas stykały się ze sobą) */
.sidebar-filters .filter-block .input-radio-primary{margin:0 0 10px}
.sidebar-filters .filter-block .input-radio-primary:last-child{margin-bottom:0}
.group-radio-button .input-radio-primary{margin-right:16px;margin-bottom:6px}
.check-slide-row .check-slide{margin-bottom:10px}

/* ==========================================================================
   v2026zl: przełącznik widoku ogłoszeń — lista ↔ kafelki (4 w rzędzie,
   jak miniaturki na stronie głównej); wybór pamięta localStorage
   ========================================================================== */
.tf-view-toggle{
  display:inline-flex;gap:4px;background:#fff;border:1px solid var(--tf-line);
  border-radius:12px;padding:4px;vertical-align:middle;
}
.tf-view-btn{
  width:36px;height:32px;border:0;background:transparent;border-radius:9px;
  cursor:pointer;color:#8a8894;display:inline-flex;align-items:center;
  justify-content:center;padding:0;transition:background .2s ease,color .2s ease;
  -webkit-appearance:none;appearance:none;
}
.tf-view-btn svg{width:18px;height:18px}
.tf-view-btn:hover{color:var(--tf-ink)}
.tf-view-btn.is-active{background:var(--tf-ink);color:#fff}
.tf-view-btn:focus{outline:none}

/* KAFELKI: siatka 4 kolumn (schodzi do 3/2/1 na węższych ekranach) */
.tf-offers.tf-view-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
@media (max-width:1199px){.tf-offers.tf-view-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.tf-offers.tf-view-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.tf-offers.tf-view-grid{grid-template-columns:1fr}}
.tf-offers.tf-view-grid .offer_card_holder{margin:0;height:100%}
.tf-offers.tf-view-grid .product-horizontal-item{
  display:block !important;min-height:0 !important;height:100%;
  overflow:hidden;padding:0 !important;
}
.tf-offers.tf-view-grid .product-horizontal-item .image{
  position:relative !important;top:auto !important;left:auto !important;
  right:auto !important;bottom:auto !important;
  width:100% !important;aspect-ratio:1/1 !important;height:auto !important;display:block;
  background-size:cover;background-position:center;transform:none !important;
}
.tf-offers.tf-view-grid .product-horizontal-item:hover .image{transform:none !important;opacity:.92}
.tf-offers.tf-view-grid .product-horizontal-item .desc{
  width:100% !important;margin:0 !important;padding:12px 14px 14px !important;
}
.tf-offers.tf-view-grid .product-horizontal-item .desc .row{display:block;margin:0}
.tf-offers.tf-view-grid .product-horizontal-item .desc .row [class*="col-"]{
  max-width:100%;width:100%;padding:0;flex:none;
}
.tf-offers.tf-view-grid .product-horizontal-item .heading-box-medium{
  font-size:15px !important;line-height:1.35;margin:0 0 6px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;min-height:2.7em;
}
.tf-offers.tf-view-grid .product-horizontal-item .price{
  text-align:left !important;font-size:18px !important;margin:0;
}
.tf-offers.tf-view-grid .product-horizontal-item .state-info,
.tf-offers.tf-view-grid .product-horizontal-item .location-info{display:none}
/* PROMOWANE w kafelkach: ramka + plakietka na zdjęciu (plakietka wspólna) */
.tf-offers.tf-view-grid .product-horizontal-item.offer-distinct{
  border:2px solid var(--tf-brand) !important;
}
/* narzędzia właściciela (edytuj / wystaw podobne) w kafelku — pod zdjęciem */
.tf-offers.tf-view-grid .offer_toolbar{position:static;margin:0 0 6px}
@media (max-width:640px){
  .tf-cat-banner{padding:22px 24px}
  .tf-cat-banner-title{font-size:26px}
  .tf-cat-banner-icon{width:60px;height:60px}
  .tf-cat-banner-icon svg{width:32px;height:32px}
}

/* ==========================================================================
   v2026zc: profil sprzedawcy (/profil/{id}/pojazdy|czesci) — pasek nad
   ofertami: wyszukiwarka (pigułka + okrągła lupa) do lewej krawędzi na równo
   z kartami, filtry stanu i sortowanie do prawej
   ========================================================================== */
.tf-profile-topbar{
  display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;
  -ms-flex-wrap:wrap;flex-wrap:wrap;gap:14px;padding:0;
}
.tf-profile-search{
  display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:10px;
  -ms-flex:1 1 320px;flex:1 1 320px;max-width:460px;
  background:transparent !important;border:0 !important;box-shadow:none !important;
  padding:0 !important;margin:0;
}
/* kapsuła pola — specyficzność + !important jak w .tf-ss-input
   (main.css ma ogólne reguły input z !important) */
.tf-profile-topbar .tf-profile-search-input{
  -ms-flex:1 1 auto;flex:1 1 auto;min-width:0;
  height:48px !important;
  border:1.5px solid var(--tf-line) !important;
  border-radius:var(--tf-r-pill) !important;
  background:#fff !important;
  padding:0 22px !important;font-family:inherit;font-size:14px;color:var(--tf-ink);
  box-shadow:0 6px 18px -14px rgba(24,18,30,.28) !important;
  outline:0;
}
.tf-profile-topbar .tf-profile-search-input::-webkit-input-placeholder{color:#686868 !important;opacity:1}
.tf-profile-topbar .tf-profile-search-input::-moz-placeholder{color:#686868 !important;opacity:1}
.tf-profile-topbar .tf-profile-search-input:-ms-input-placeholder{color:#686868 !important;opacity:1}
.tf-profile-topbar .tf-profile-search-input::placeholder{color:#686868 !important;opacity:1}
.tf-profile-topbar .tf-profile-search-input:focus{
  border-color:var(--tf-brand) !important;
  box-shadow:0 0 0 3px rgba(255,59,70,.12) !important;
}
/* okrągła lupa jak w górnym pasku */
.tf-profile-search-btn{
  -ms-flex:0 0 auto;flex:0 0 auto;width:48px;height:48px;border:0;border-radius:50%;
  background:var(--tf-grad);color:#fff;display:-ms-flexbox;display:flex;
  -ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;
  cursor:pointer;padding:0;
  box-shadow:0 8px 18px -8px rgba(255,59,70,.6);
  transition:filter .2s ease,transform .2s ease;
}
.tf-profile-search-btn:hover{filter:brightness(1.06);transform:scale(1.07)}
.tf-profile-search-btn:active{transform:scale(.94)}
.tf-profile-search-btn svg{width:18px;height:18px;display:block}
/* filtry stanu + sortowanie dociśnięte do prawej */
.tf-profile-filters{
  margin-left:auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;
  -ms-flex-wrap:wrap;flex-wrap:wrap;gap:14px;
}
.tf-profile-filters .filtr-state{margin:0}
@media (max-width:767px){
  .tf-profile-search{max-width:none}
  .tf-profile-filters{margin-left:0}
}

/* ==========================================================================
   v2026zc — PRZEBUDOWA SEKCJI STRONY GŁÓWNEJ
   1) karuzela „dlaczego Motoklik" (tf-why-*)
   2) pełnoszerokościowa sekcja wizytówek firm (tf-biz-*)
   3) siatka ciekawostek (tf-news-*)
   ========================================================================== */

/* ---- 1) karuzela ---- */
.tf-why-section{background:transparent !important;padding:10px 0 0}
.tf-why-slide{
  max-width:1180px;
  margin:26px auto 58px;
  background:#fff;
  border:1px solid var(--tf-line);
  border-radius:28px;
  box-shadow:var(--tf-shadow-sm);
  display:grid;
  grid-template-columns:1.25fr 1fr;
  gap:36px;
  align-items:center;
  padding:46px 52px;
  min-height:380px;
}
.tf-why-kicker{
  display:inline-block;
  font:600 11px/1 'Inter',sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--tf-brand-ink);
  background:#FFF1EC;
  border-radius:var(--tf-r-pill);
  padding:7px 14px;
  margin-bottom:16px;
}
.tf-why-title{
  font:700 32px/1.15 'Space Grotesk','Inter',sans-serif;
  letter-spacing:-.02em;
  color:var(--tf-ink);
  margin:0 0 20px;
}
.tf-why-title span{
  background:var(--tf-grad);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
.tf-why-list{list-style:none;margin:0 0 26px;padding:0}
.tf-why-list li{
  display:flex;
  align-items:flex-start;
  gap:12px;
  font:400 15.5px/1.5 'Inter',sans-serif;
  color:#3d3a45;
  margin-bottom:12px;
}
.tf-why-list li:before{
  content:'✓';
  flex:none;
  width:22px;height:22px;
  border-radius:50%;
  background:var(--tf-grad);
  color:#fff;
  font-size:12px;font-weight:700;
  line-height:22px;text-align:center;
  margin-top:1px;
}
.tf-why-list strong{color:var(--tf-ink)}
.tf-why-cta{
  display:inline-block;
  background:var(--tf-grad);
  color:#fff !important;
  font:600 15px/1 'Inter',sans-serif;
  border-radius:var(--tf-r-pill);
  padding:15px 30px;
  box-shadow:0 12px 26px -12px rgba(255,59,70,.55);
  transition:transform .2s ease, box-shadow .2s ease;
}
.tf-why-cta:hover{transform:translateY(-2px);box-shadow:0 16px 32px -12px rgba(255,59,70,.65);text-decoration:none}
.tf-why-visual{display:flex;justify-content:center;align-items:center}

/* wizual: dysk 0% */
.tf-stat-disc{
  position:relative;
  width:240px;height:240px;
  border-radius:50%;
  background:var(--tf-grad);
  color:#fff;
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;
  box-shadow:0 26px 60px -24px rgba(255,59,70,.65);
}
.tf-stat-disc strong{font:700 64px/1 'Space Grotesk',sans-serif;letter-spacing:-.03em}
.tf-stat-disc>span{font:500 14px/1.3 'Inter',sans-serif;max-width:150px;margin-top:6px;opacity:.92}
.tf-chip{
  position:absolute;
  font:600 12px/1 'Inter',sans-serif;
  font-style:normal;
  color:var(--tf-ink);
  background:#fff;
  border:1px solid var(--tf-line);
  border-radius:var(--tf-r-pill);
  padding:9px 14px;
  box-shadow:var(--tf-shadow-sm);
  white-space:nowrap;
}
.tf-chip-1{top:14px;right:-52px}
.tf-chip-2{bottom:26px;left:-64px}

/* wizual: karta „głos sprzedawców" */
.tf-quote-card{
  background:#FBFAF8;
  border:1px solid var(--tf-line);
  border-radius:20px;
  padding:30px 32px;
  max-width:330px;
  text-align:left;
}
.tf-quote-stars{color:#FFB020;font-size:22px;letter-spacing:4px;display:block;margin-bottom:12px}
.tf-quote-card p{font:600 17px/1.45 'Space Grotesk','Inter',sans-serif;color:var(--tf-ink);margin:0 0 12px}
.tf-quote-note{font:400 13px/1.4 'Inter',sans-serif;color:#8a8894}

/* wizual: odznaka 5 lat */
.tf-guarantee-badge{
  width:240px;height:240px;
  border-radius:50%;
  background:var(--tf-grad);
  padding:7px;
  box-shadow:0 26px 60px -24px rgba(255,59,70,.65);
}
.tf-guarantee-inner{
  width:100%;height:100%;
  border-radius:50%;
  background:#fff;
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;
  padding:20px;
}
.tf-guarantee-inner strong{
  font:700 52px/1 'Space Grotesk',sans-serif;
  letter-spacing:-.03em;
  background:var(--tf-grad);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.tf-guarantee-inner span{font:500 14px/1.35 'Inter',sans-serif;color:#3d3a45;max-width:170px;margin-top:8px}

/* wizual: kafelki usług */
.tf-service-tiles{display:flex;flex-direction:column;gap:12px;width:100%;max-width:320px}
.tf-service-tile{
  display:flex;align-items:center;gap:14px;
  background:#FBFAF8;
  border:1px solid var(--tf-line);
  border-radius:16px;
  padding:14px 18px;
  font:600 15px/1.2 'Inter',sans-serif;
  color:var(--tf-ink) !important;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.tf-service-tile:hover{transform:translateY(-3px);box-shadow:var(--tf-shadow-sm);border-color:#ffd2c2;text-decoration:none}
.tf-service-icon{
  flex:none;
  width:44px;height:44px;
  border-radius:12px;
  background:var(--tf-grad);
  display:flex;justify-content:center;align-items:center;
  color:#fff;
}
.tf-service-icon svg{width:22px;height:22px}

/* strzałki karuzeli: okrągłe, własne chevrony (main.css daje prev=arrow-left-red,
   next=arrow-down-white — biała strzałka niewidoczna na białym kółku) */
.tf-why-section .partners-people-slider .swiper-button-prev,
.tf-why-section .partners-people-slider .swiper-button-next{
  width:48px !important;height:48px !important;
  border-radius:50%;
  background-color:#fff !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-size:20px 20px !important;
  border:1px solid var(--tf-line);
  box-shadow:var(--tf-shadow-sm);
  transition:transform .2s ease;
  transform:translateY(-50%) !important; /* main.css obraca next o -90deg (stara strzałka „w dół") */
}
.tf-why-section .partners-people-slider .swiper-button-prev{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2102A' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M15 18l-6-6 6-6'/></svg>") !important;
}
.tf-why-section .partners-people-slider .swiper-button-next{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2102A' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M9 6l6 6-6 6'/></svg>") !important;
}
.tf-why-section .partners-people-slider .swiper-button-prev:hover,
.tf-why-section .partners-people-slider .swiper-button-next:hover{transform:translateY(-50%) scale(1.08) !important}

@media (max-width:991px){
  .tf-why-slide{grid-template-columns:1fr;gap:26px;padding:30px 24px;min-height:0;margin:16px auto 44px}
  .tf-why-title{font-size:25px}
  .tf-chip-1{right:-8px}
  .tf-chip-2{left:-8px}
  .tf-stat-disc,.tf-guarantee-badge{width:200px;height:200px}
  .tf-stat-disc strong{font-size:52px}
}

/* ---- 2) sekcja wizytówek firm ---- */
.tf-biz-panel{
  position:relative;
  overflow:hidden;
  background:#141019;
  border-radius:32px;
  padding:54px 56px 46px;
  color:#fff;
}
.tf-biz-panel:before{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(560px 340px at 88% -10%, rgba(255,122,61,.34), transparent 65%),
    radial-gradient(520px 320px at -8% 110%, rgba(255,59,70,.26), transparent 65%);
  pointer-events:none;
}
.tf-biz-panel>*{position:relative}
.tf-biz-head{max-width:760px}
.tf-biz-kicker{
  display:inline-block;
  font:600 11px/1 'Inter',sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#FFB59A;
  background:rgba(255,122,61,.14);
  border:1px solid rgba(255,122,61,.3);
  border-radius:var(--tf-r-pill);
  padding:7px 14px;
  margin-bottom:16px;
}
.tf-biz-title{
  font:700 30px/1.2 'Space Grotesk','Inter',sans-serif;
  letter-spacing:-.02em;
  color:#fff;
  margin:0 0 14px;
}
.tf-biz-title span{
  background:var(--tf-grad);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.tf-biz-sub{font:400 15.5px/1.55 'Inter',sans-serif;color:rgba(255,255,255,.72);margin:0}
.tf-biz-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:34px;
}
.tf-biz-card{
  display:flex;flex-direction:column;gap:11px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.14);
  border-radius:20px;
  padding:26px 26px 22px;
  color:#fff !important;
  transition:transform .25s ease, background .25s ease, border-color .25s ease;
}
.tf-biz-card:hover{
  transform:translateY(-6px);
  background:rgba(255,255,255,.095);
  border-color:rgba(255,122,61,.55);
  text-decoration:none;
}
.tf-biz-icon{
  width:52px;height:52px;
  border-radius:14px;
  background:var(--tf-grad);
  display:flex;justify-content:center;align-items:center;
  box-shadow:0 12px 26px -12px rgba(255,59,70,.6);
}
.tf-biz-icon svg{width:26px;height:26px}
.tf-biz-name{font:700 19px/1.2 'Space Grotesk','Inter',sans-serif;letter-spacing:-.01em}
.tf-biz-desc{font:400 13.5px/1.5 'Inter',sans-serif;color:rgba(255,255,255,.66)}
.tf-biz-go{
  margin-top:auto;
  padding-top:10px;
  font:600 14px/1 'Inter',sans-serif;
  color:#FF9A6B;
}
.tf-biz-go em{font-style:normal;display:inline-block;transition:transform .2s ease}
.tf-biz-card:hover .tf-biz-go em{transform:translateX(4px)}
.tf-biz-foot{
  display:flex;flex-wrap:wrap;gap:8px 0;
  margin-top:28px;
  font:400 13px/1.4 'Inter',sans-serif;
  color:rgba(255,255,255,.55);
}
.tf-biz-foot span{display:flex;align-items:center}
.tf-biz-foot span+span:before{content:'·';margin:0 12px;color:rgba(255,255,255,.35)}
@media (max-width:991px){
  .tf-biz-panel{padding:36px 26px 32px;border-radius:26px}
  .tf-biz-title{font-size:24px}
  .tf-biz-cards{grid-template-columns:1fr;gap:12px}
}

/* ---- 3) ciekawostki ---- */
.tf-news-section{padding:34px 0 74px}
.tf-news-head{
  display:flex;justify-content:space-between;align-items:flex-end;gap:18px;
  margin-bottom:26px;
}
.tf-news-kicker{
  display:inline-block;
  font:600 11px/1 'Inter',sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--tf-brand-ink);
  background:#FFF1EC;
  border-radius:var(--tf-r-pill);
  padding:7px 14px;
  margin-bottom:12px;
}
.tf-news-heading{
  font:700 30px/1.15 'Space Grotesk','Inter',sans-serif;
  letter-spacing:-.02em;
  color:var(--tf-ink);
  margin:0;
}
.tf-news-heading span{
  background:var(--tf-grad);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.tf-news-all{
  flex:none;
  font:600 14px/1 'Inter',sans-serif;
  color:var(--tf-ink) !important;
  background:#fff;
  border:1px solid var(--tf-line);
  border-radius:var(--tf-r-pill);
  padding:13px 22px;
  box-shadow:var(--tf-shadow-sm);
  transition:transform .2s ease;
  white-space:nowrap;
}
.tf-news-all:hover{transform:translateY(-2px);text-decoration:none}
.tf-news-all em,.tf-news-more em{font-style:normal;display:inline-block;transition:transform .2s ease}
.tf-news-all:hover em{transform:translateX(4px)}
.tf-news-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:24px;
  align-items:stretch;
}
.tf-news-rest{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:24px;
}
.tf-news-card{
  display:flex;flex-direction:column;
  background:#fff;
  border:1px solid var(--tf-line);
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--tf-shadow-sm);
  color:inherit !important;
  transition:transform .25s ease, box-shadow .25s ease;
}
.tf-news-card:hover{transform:translateY(-6px);box-shadow:var(--tf-shadow);text-decoration:none}
.tf-news-img{
  display:block;
  aspect-ratio:16/9;
  background-size:cover;
  background-position:center;
  background-color:#eceae4;
}
.tf-news-img-empty{background-image:var(--tf-grad);opacity:.25}
.tf-news-featured .tf-news-img{aspect-ratio:auto;flex:1;min-height:280px}
.tf-news-body{display:flex;flex-direction:column;gap:9px;padding:20px 22px 22px}
.tf-news-featured .tf-news-body{padding:24px 28px 26px}
.tf-news-meta{
  display:flex;align-items:center;gap:10px;
  font:500 12.5px/1 'Inter',sans-serif;
  color:#8a8894;
}
.tf-news-tag{
  font:600 10.5px/1 'Inter',sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#fff;
  background:var(--tf-grad);
  border-radius:var(--tf-r-pill);
  padding:5px 10px;
}
.tf-news-title{
  font:700 17px/1.35 'Space Grotesk','Inter',sans-serif;
  letter-spacing:-.01em;
  color:var(--tf-ink);
  transition:color .2s ease;
}
.tf-news-featured .tf-news-title{font-size:23px;line-height:1.25}
.tf-news-card:hover .tf-news-title{color:var(--tf-brand-ink)}
.tf-news-lead{font:400 14.5px/1.55 'Inter',sans-serif;color:#5c5964}
.tf-news-more{
  margin-top:auto;
  padding-top:6px;
  font:600 13.5px/1 'Inter',sans-serif;
  color:var(--tf-brand-ink);
}
.tf-news-card:hover .tf-news-more em{transform:translateX(4px)}
@media (max-width:991px){
  .tf-news-grid{grid-template-columns:1fr}
  .tf-news-featured .tf-news-img{aspect-ratio:16/9;flex:none;min-height:0}
  .tf-news-heading{font-size:24px}
}
@media (max-width:575px){
  .tf-news-rest{grid-template-columns:1fr}
  .tf-news-head{flex-direction:column;align-items:flex-start}
}

/* ==========================================================================
   v2026zd: strona ogłoszenia — równe karty sekcji, parametry jako zwykła
   lista w 2 kolumnach (ważne na górze, pogrubione) ze zwijaniem,
   telefon xxx xxx xxx, etykieta „Sprzedawca:" nad nazwą użytkownika
   ========================================================================== */

/* wszystkie karty sekcji tej samej szerokości, z tym samym paddingiem
   i odstępem (main.css dawał im różne marginesy/paddingi) */
.public-content-wrapper .tf-params,
.public-content-wrapper .public-boolean-box,
.public-content-wrapper .public-descryption-box,
.public-content-wrapper .public-contact-box,
.public-content-wrapper .public-category-box,
.public-content-wrapper .public-list-box{
  background:#fff !important;border:1px solid var(--tf-line) !important;
  border-radius:18px !important;box-shadow:var(--tf-shadow-sm) !important;
  width:100% !important;max-width:none !important;
  padding:24px 26px !important;margin:0 0 8px !important;
}
.public-content-wrapper .heading-box-medium{margin:30px 0 16px}

/* lista parametrów: dwie kolumny, Etykieta: wartość */
.tf-params-body{overflow:hidden;transition:max-height .45s cubic-bezier(.22,1,.36,1)}
.tf-params.tf-collapsed .tf-params-body{
  -webkit-mask-image:linear-gradient(#000 calc(100% - 34px),transparent);
  mask-image:linear-gradient(#000 calc(100% - 34px),transparent);
}
.tf-params-list{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;
}
@media (max-width:575px){.tf-params-list{grid-template-columns:1fr}}
.tf-param{font-size:15px;line-height:1.45;color:var(--tf-ink);margin:0;padding:0}
.tf-param-label{color:#8a8894}
.tf-param-main .tf-param-label{color:#6f6d78;font-weight:600}
.tf-param-main .tf-param-value{font-weight:700}

/* przycisk rozwijania/zwijania ze strzałką */
.tf-params-toggle{
  display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;gap:8px;
  margin-top:16px;padding:9px 18px;cursor:pointer;
  background:#fff;border:1.5px solid var(--tf-line);border-radius:var(--tf-r-pill);
  font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.03em;color:var(--tf-ink);
  transition:border-color .2s,color .2s,transform .2s;
}
.tf-params-toggle:hover{border-color:var(--tf-brand);color:var(--tf-brand-ink);transform:translateY(-1px)}
.tf-params-toggle:focus{outline:0}
.tf-params-toggle .tf-params-toggle-arrow{
  width:15px;height:15px;display:block;
  transition:transform .35s cubic-bezier(.22,1,.36,1);
}
.tf-params-toggle[aria-expanded="true"] .tf-params-toggle-arrow{transform:rotate(180deg)}

/* etykieta nad nazwą sprzedawcy w oknie kontaktowym */
.tf-seller-label{
  font-size:12px;color:#8a8894;letter-spacing:.02em;
  margin:0 0 2px;padding:0 10px;
}

/* ---- Ciekawostki 2026: wpis + lista + karty powiązane ---- */
.tf-post-section{padding:26px 0 6px}
.tf-blog-section{padding:26px 0 40px}
.tf-blog-head{margin-bottom:24px}
.tf-post-date{font-size:13px;color:#8a8894;margin:0 0 10px;text-align:left}
.tf-post-title{
  font-family:'Space Grotesk','Inter',sans-serif;
  font-size:38px;line-height:1.15;font-weight:700;
  letter-spacing:-.02em;color:var(--tf-ink);
  margin:0 0 14px;
}
.tf-post-lead{font-size:19px;line-height:1.55;color:rgba(20,16,25,.72);margin:0 0 24px}
.tf-post-cover{
  border-radius:var(--tf-r-card);overflow:hidden;
  box-shadow:var(--tf-shadow);margin:0 0 28px;
}
.curiosities-article .tf-post-cover img{width:100%;height:auto;display:block;margin:0}
.tf-post-content{font-size:16px;line-height:1.75;color:rgba(20,16,25,.86)}
.curiosities-article .tf-post-content p{margin:0 0 18px;line-height:1.75}
.tf-post-content h2,.tf-post-content h3{margin:26px 0 12px;letter-spacing:-.015em}
.curiosities-article .tf-post-content img{max-width:100%;border-radius:14px;margin:26px 0}
@media (max-width:767.98px){
  .tf-post-title{font-size:28px}
  .tf-post-lead{font-size:17px}
}
/* nawigacja poprzednia/następna — selektory z .navigation-article,
   bo main.css daje `a` max-width 245px + czerwoną strzałkę :before */
.navigation-article.tf-post-nav{
  display:flex;gap:14px;flex-wrap:wrap;
  margin:30px 0 14px;padding:0;border:0;
  justify-content:flex-start;
}
.navigation-article .tf-post-nav-link{
  flex:1 1 260px;max-width:none;width:auto;
  display:block;float:none;
  background:#fff;border-radius:18px;padding:16px 20px;
  box-shadow:var(--tf-shadow-sm);text-decoration:none !important;
  transition:transform .25s ease, box-shadow .25s ease;
}
.navigation-article .tf-post-nav-link:before{display:none !important;content:none !important}
.navigation-article .tf-post-nav-link:hover{transform:translateY(-2px);box-shadow:var(--tf-shadow)}
.tf-post-nav-next{text-align:right}
.tf-post-nav-kicker{
  display:block;font-size:12px;font-weight:600;
  letter-spacing:.04em;text-transform:uppercase;
  color:var(--tf-brand-ink);margin-bottom:6px;
}
.tf-post-nav-title{display:block;font-weight:600;color:var(--tf-ink);font-size:15px;line-height:1.35}
/* nagłówek sekcji powiązanych z gradientową kreską */
.tf-related-heading{position:relative;padding-bottom:12px;margin-bottom:22px}
.tf-related-heading:after{
  content:"";position:absolute;left:0;bottom:0;
  width:36px;height:4px;border-radius:2px;background:var(--tf-grad);
}
.curiosities-list-section{padding:10px 0 44px}
/* karty: pionowe (powiązane) i poziome (lista) */
.text-image-box,.text-image-box-horizontal{
  border:0 !important;border-radius:20px !important;
  box-shadow:var(--tf-shadow-sm);overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
}
.text-image-box:hover,.text-image-box-horizontal:hover{
  transform:translateY(-3px);box-shadow:var(--tf-shadow);
}
.text-image-box:hover .paragraph-medium{text-decoration:none}
.text-image-box-horizontal{margin-bottom:22px}
.text-image-box-horizontal .heading-box-medium{
  font-family:'Space Grotesk','Inter',sans-serif !important;
  font-weight:700;font-style:normal;
}
.text-image-box .date,.text-image-box-horizontal .date{color:#8a8894}

/* ==========================================================================
   v2026zk — logowanie i rejestracja: Google + Apple, pełny formularz konta
   ========================================================================== */
.tf-social-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:4px}
.btn-login{
  border-radius:var(--tf-r-pill) !important;
  font-weight:600;
  text-align:center;
  padding-left:0 !important;
  border:1.5px solid var(--tf-line);
  background:#fff;
  color:var(--tf-ink) !important;
  transition:transform .25s ease, box-shadow .25s ease;
}
.btn-login:hover{opacity:1;transform:translateY(-1px);box-shadow:var(--tf-shadow-sm)}
.btn-login:before{
  position:static !important;
  display:inline-block !important;
  vertical-align:middle;
  transform:none !important;
  margin-right:10px;
  margin-top:-3px;
}
.btn-login-google{box-shadow:none}
.btn-login-google:before{
  content:"";width:20px;height:20px;
  background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path fill="%23FFC107" d="M43.6 20.1H42V20H24v8h11.3C33.7 32.7 29.2 36 24 36c-6.6 0-12-5.4-12-12s5.4-12 12-12c3.1 0 5.9 1.2 8 3l5.7-5.7C34.3 6.1 29.4 4 24 4 13 4 4 13 4 24s9 20 20 20 20-9 20-20c0-1.3-.1-2.6-.4-3.9z"/><path fill="%23FF3D00" d="M6.3 14.7l6.6 4.8C14.7 15.1 19 12 24 12c3.1 0 5.9 1.2 8 3l5.7-5.7C34.3 6.1 29.4 4 24 4 16.3 4 9.7 8.3 6.3 14.7z"/><path fill="%234CAF50" d="M24 44c5.2 0 9.9-2 13.4-5.2l-6.2-5.2C29.2 35.1 26.7 36 24 36c-5.2 0-9.6-3.3-11.3-8l-6.5 5C9.5 39.6 16.2 44 24 44z"/><path fill="%231976D2" d="M43.6 20.1H42V20H24v8h11.3c-.8 2.2-2.2 4.2-4.1 5.6l6.2 5.2C36.9 40.2 44 35 44 24c0-1.3-.1-2.6-.4-3.9z"/></svg>') center/contain no-repeat;
}
.btn-login-apple{
  background:#0b0b0e;
  border-color:#0b0b0e;
  color:#fff !important;
}
.btn-login-apple:before{
  content:"";width:18px;height:21px;
  background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="%23ffffff" d="M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z"/></svg>') center/contain no-repeat;
}

/* --- rejestracja: karty rodzaju konta + siatka pól --- */
/* v2026zn: nieco szerszy box logowania i rejestracji (było max 400px) */
.login-register-box{max-width:460px}
.tf-auth-box .heading-box-medium-primary{margin-bottom:18px}
.tf-account-type{display:flex;gap:12px;margin:6px 0 16px}
.tf-account-card{
  flex:1;
  border:1.5px solid var(--tf-line);
  border-radius:14px;
  padding:14px 16px;
  cursor:pointer;
  background:#fff;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.tf-account-card input{position:absolute;opacity:0;pointer-events:none}
.tf-account-card strong{display:block;font-family:'Space Grotesk','Inter',sans-serif;font-size:15px}
.tf-account-card span{display:block;font-size:12.5px;color:#7a7580;margin-top:3px;line-height:1.35}
.tf-account-card.is-active{
  border-color:var(--tf-brand);
  box-shadow:0 0 0 3px rgba(255,59,70,.12);
}
.tf-field-grid{display:flex;gap:14px}
.tf-field-grid>div{flex:1;min-width:0}
.tf-company-fields{
  border:1.5px dashed var(--tf-line);
  border-radius:14px;
  padding:14px 16px 18px;
  margin:14px 0 6px;
  background:#faf9f7;
}
.tf-auth-subheading{font-family:'Space Grotesk','Inter',sans-serif;font-size:16px;margin:0 0 4px}
.tf-optional{color:#9a95a0;font-weight:400;font-size:12px}
.tf-password-hint{font-size:12px;color:#9a95a0;margin:6px 0 10px}
.tf-rodo-note{font-size:11.5px;color:#9a95a0;line-height:1.5;margin-bottom:10px}
@media (max-width:560px){
  .tf-account-type,.tf-field-grid{flex-direction:column;gap:10px}
}

/* --- formularz ogłoszenia 2026: podpowiedzi, dostawa, przyciski --- */
.tf-form-hint{font-size:12.5px;color:#8b8693;margin:6px 0 0;line-height:1.45}
.tf-form-hint a{color:var(--tf-brand-ink);text-decoration:underline}
.tf-form-callout{
  border:1.5px dashed var(--tf-line);
  border-radius:14px;
  background:#faf9f7;
  padding:18px 20px;
  max-width:560px;
}
.tf-form-callout p{margin:0 0 12px;line-height:1.5}
.tf-form-actions{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap;margin-top:22px}
/* „Opublikuj" (.btn-next-step) miał własny margin-top:20px z main.css — w rzędzie
   flex przez to nie stał równo z „Zapisz szkic". Zerujemy i wyrównujemy oba. */
.tf-form-actions .btn-next-step{margin-top:0 !important}
.tf-form-actions > .btn-primary{display:inline-flex;align-items:center;justify-content:center;margin-bottom:0}
.tf-btn-draft{
  background:#fff !important;
  color:var(--tf-brand-ink) !important;
  border:1.5px solid var(--tf-brand) !important;
  box-shadow:none !important;
}
.tf-btn-draft .btn-text{color:var(--tf-brand-ink) !important}
/* Natywne listy rozwijane (np. cennik dostaw): własna strzałka zamiast systemowej,
   żeby border-radius:14px był widoczny także w Safari/macOS (menulist go ignoruje). */
select.input-primary{
  -webkit-appearance:none;-moz-appearance:none;appearance:none;height:42px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235b5566' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 14px center !important;
  padding-right:38px !important;
}
/* Ramka całego formularza dodawania ogłoszenia — biała karta z zaokrągleniem (była kanciasta).
   Bez overflow:hidden, żeby nie obcinać rozwijanych list .select-primary. */
.public-ex-content-inner{border-radius:var(--tf-r-card) !important}
@media (max-width:767.98px){ .public-ex-content-inner{border-radius:16px !important} }
/* Pole „Informacje o bezpieczeństwie" w trybie „Domyślne" — tylko do odczytu, wyszarzone. */
textarea.tf-input-locked{background:#f6f5f2 !important;color:#5b5566 !important;cursor:default}

/* ==========================================================================
   v2026zl — panel zakupu na stronie ogłoszenia (KUP TERAZ + koszyk + dostawa)
   ========================================================================== */
.tf-buy-panel{margin:10px 0 12px}
.tf-buy-qty{display:flex;align-items:center;gap:8px;margin-bottom:9px;font-size:13.5px}
.tf-buy-qty input{
  width:64px;height:36px;text-align:center;
  border:1.5px solid var(--tf-line);border-radius:10px;font-weight:600;
}
.tf-buy-qty-max{color:#8b8693;font-size:12.5px}
.tf-buy-buttons{display:flex;gap:10px}
.tf-buy-form{flex:1;display:block}
.tf-btn-buy-now,.tf-btn-add-cart{
  display:block;width:100%;height:44px;line-height:1;
  border-radius:var(--tf-r-pill);
  font-family:'Space Grotesk','Inter',sans-serif;
  font-size:15px;font-weight:700;letter-spacing:.02em;
  cursor:pointer;
  transition:transform .25s cubic-bezier(.34,1.56,.64,1), box-shadow .25s ease, filter .25s ease;
}
.tf-btn-buy-now{
  background:var(--tf-grad);color:#fff;border:0;
  box-shadow:0 10px 24px -12px rgba(255,59,70,.65);
}
.tf-btn-buy-now:hover{transform:translateY(-2px);filter:saturate(1.15)}
.tf-btn-add-cart{
  background:#fff;color:var(--tf-brand-ink);
  border:2px solid var(--tf-brand);
  font-weight:600;
}
.tf-btn-add-cart:hover{transform:translateY(-2px);box-shadow:var(--tf-shadow-sm)}
.tf-delivery-box{
  margin-top:10px;border:1px solid #f2d9d2;border-radius:14px;
  background:linear-gradient(180deg,#fff7f4 0%,#fff 100%);
  padding:11px 13px;
}
.tf-delivery-cheapest{display:flex;align-items:center;gap:11px}
.tf-delivery-ico{
  flex:0 0 34px;width:34px;height:34px;border-radius:10px;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--tf-grad);color:#fff;
  box-shadow:0 6px 14px -8px rgba(255,59,70,.7);
}
.tf-delivery-ico svg{width:19px;height:19px}
.tf-delivery-text{display:flex;flex-direction:column;gap:1px;min-width:0}
.tf-delivery-main{font-size:13.5px;line-height:1.25;color:var(--tf-ink)}
.tf-delivery-main strong{font-weight:700}
.tf-delivery-sub{font-size:11.5px;color:#9a8f8a;line-height:1.3}
.tf-delivery-toggle{
  margin-left:auto;flex:0 0 auto;border:0;background:#fff;
  color:var(--tf-brand-ink);border:1px solid #f2d9d2;border-radius:20px;
  padding:5px 10px;font-size:11.5px;font-weight:600;cursor:pointer;
  display:inline-flex;align-items:center;gap:3px;transition:.2s;
}
.tf-delivery-toggle:hover{background:#fff1ec}
.tf-delivery-toggle svg{width:13px;height:13px;transition:transform .2s ease}
.tf-delivery-toggle.is-open svg{transform:rotate(180deg)}
.tf-delivery-list{margin:9px 0 1px;padding:9px 0 0;border-top:1px dashed #f0d4cc;list-style:none}
.tf-delivery-list li{display:flex;justify-content:space-between;padding:3px 2px;font-size:12.5px}
/* przewidywany czas wysyłki / dostawy (z cennika dostaw sprzedawcy, 2026-07-07) */
.tf-delivery-eta{
  margin-top:9px;display:flex;align-items:center;gap:11px;
  border:1px solid #cfebd8;border-radius:14px;
  background:linear-gradient(180deg,#f2fbf5 0%,#fff 100%);
  padding:10px 13px;
}
.tf-delivery-eta-ico{
  flex:0 0 34px;width:34px;height:34px;border-radius:10px;
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#2ec167,#1d9e50);color:#fff;
  box-shadow:0 6px 14px -8px rgba(29,158,80,.75);
}
.tf-delivery-eta-ico svg{width:19px;height:19px}
.tf-delivery-eta-text{display:flex;flex-direction:column;gap:1px;min-width:0}
.tf-delivery-eta-main{font-size:13.5px;line-height:1.25;color:var(--tf-ink);font-weight:700}
.tf-delivery-eta-sub{font-size:11.5px;color:#5c9a72;line-height:1.3}
.tf-buy-safety{font-size:11px;color:#a49ea6;line-height:1.45;margin:9px 2px 0}
/* info dla sprzedawcy: nie może kupić / napisać do własnego ogłoszenia (2026-07-07) */
.tf-own-notice{
  display:flex;align-items:flex-start;gap:9px;
  background:#fff8e6;border:1px solid #f2e2b0;border-radius:12px;
  padding:11px 13px;margin:4px 0 2px;
  font-size:13px;line-height:1.4;color:#8a6d1f;
}
.tf-own-notice svg{flex:0 0 18px;width:18px;height:18px;margin-top:1px;color:#c79a1e}
.tf-own-notice strong{color:#6f5716;font-weight:700}
.tf-own-notice-block{margin:0 0 10px}
/* plakietka „Kup do 11:00 — wysyłam dziś!" (wysyłka tego samego dnia, 2026-07-07) */
.tf-sameday-badge{
  display:flex;align-items:center;gap:8px;
  margin:2px 0 6px;padding:9px 13px;border-radius:12px;
  background:linear-gradient(135deg,#eafaf0,#d6f5e1);
  border:1px solid #b6e8c8;color:#12793e;
  font-size:13px;font-weight:800;letter-spacing:.01em;line-height:1.25;
}
.tf-sameday-badge svg{flex:0 0 18px;width:18px;height:18px;color:#17a44f}
.tf-delivery-list-ship{display:block;font-size:10.5px;color:#9a8f8a;font-weight:400;margin-top:1px}

/* --- sklep: koszyk / checkout / podziękowanie / bramka demo --- */
.tf-shop-alert{border-radius:14px;padding:13px 18px;margin-bottom:16px;font-size:14px}
.tf-shop-alert-ok{background:#e9f8ee;color:#166b34;border:1.5px solid #bfe8cd}
.tf-shop-alert-err{background:#fdeeee;color:#a3232e;border:1.5px solid #f5c9cc}
.tf-shop-empty{text-align:center;padding:56px 20px;background:#fff;border-radius:var(--tf-r-card);box-shadow:var(--tf-shadow-sm)}
.tf-shop-empty svg{width:56px;height:56px;color:#cfcbc2;margin-bottom:12px}
.tf-shop-empty h3{margin-bottom:6px}
.tf-shop-empty p{color:#8b8693;margin-bottom:18px}
.tf-cart-group{background:#fff;border-radius:var(--tf-r-card);box-shadow:var(--tf-shadow-sm);margin-bottom:18px;overflow:hidden}
.tf-cart-group-head{
  display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;
  padding:13px 20px;border-bottom:1px solid var(--tf-line);font-size:13.5px;
}
.tf-cart-delivery-hint{color:#8b8693;font-size:12.5px}
.tf-cart-item{display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid var(--tf-line)}
.tf-cart-item:last-child{border-bottom:0}
.tf-cart-thumb img{width:84px;height:60px;object-fit:cover;border-radius:10px;display:block}
.tf-cart-item-info{flex:1;min-width:0}
.tf-cart-item-info a{display:block;font-weight:600;color:var(--tf-ink);line-height:1.35;margin-bottom:2px}
.tf-cart-item-info small{color:#8b8693}
.tf-cart-qty input{width:64px;height:36px;text-align:center;border:1.5px solid var(--tf-line);border-radius:10px;font-weight:600}
.tf-cart-item-total{font-weight:700;white-space:nowrap;font-family:'Space Grotesk','Inter',sans-serif}
.tf-cart-remove{border:0;background:none;color:#b9b4ac;font-size:22px;line-height:1;cursor:pointer;padding:4px 6px}
.tf-cart-remove:hover{color:var(--tf-brand-ink)}
.tf-cart-summary{background:#fff;border-radius:var(--tf-r-card);box-shadow:var(--tf-shadow-sm);padding:20px 22px;position:sticky;top:90px}
.tf-cart-summary h3{margin-bottom:12px}
.tf-cart-summary-row{display:flex;justify-content:space-between;gap:10px;padding:6px 0;font-size:14px}
.tf-cart-summary-row.tf-muted{color:#9a95a0;font-size:12.5px}
.tf-cart-summary-total{border-top:1px dashed var(--tf-line);margin-top:8px;padding-top:12px;font-size:16px}
.tf-cart-summary .tf-btn-buy-now{margin-top:14px}
.tf-checkout-items{list-style:none;margin:0;padding:10px 20px;border-bottom:1px solid var(--tf-line)}
.tf-checkout-items li{display:flex;justify-content:space-between;gap:10px;padding:3px 0;font-size:13.5px}
.tf-checkout-items li span{color:#8b8693;white-space:nowrap}
.tf-checkout-delivery,.tf-checkout-form{padding:14px 20px}
.tf-checkout-label{font-size:13px;font-weight:600;margin-bottom:8px}
.tf-delivery-option{
  display:flex;align-items:center;gap:10px;padding:11px 14px;margin-bottom:8px;
  border:1.5px solid var(--tf-line);border-radius:12px;cursor:pointer;font-size:14px;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.tf-delivery-option:has(input:checked){border-color:var(--tf-brand);box-shadow:0 0 0 3px rgba(255,59,70,.09)}
.tf-delivery-option input{accent-color:var(--tf-brand)}
.tf-delivery-option-label{flex:1}
.tf-delivery-option-label small{color:#8f8a94;font-weight:400}
.tf-delivery-option-price{font-weight:700;white-space:nowrap}
/* nagłówek grupy płatności w checkout + notka o płatności */
.tf-checkout-paygroup{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  color:#8f8a94;margin:12px 0 6px;padding-top:8px;border-top:1px dashed var(--tf-line)}
.tf-checkout-paygroup:first-of-type{border-top:0;padding-top:0;margin-top:0}
.tf-checkout-paynote{font-size:12.5px;line-height:1.55;color:#6c6a76;margin:0}
.tf-checkout-paynote strong{color:var(--tf-ink)}
.tf-pay-logos{display:inline-flex;gap:5px;margin-left:8px;vertical-align:middle}
.tf-pay-logos span{border:1px solid var(--tf-line);border-radius:6px;padding:1px 7px;font-size:10.5px;color:#6d6875;background:#faf9f7;white-space:nowrap}
.tf-saved-addresses{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.tf-saved-address{
  text-align:left;border:1.5px solid var(--tf-line);background:#fff;border-radius:12px;
  padding:10px 14px;cursor:pointer;max-width:260px;
}
.tf-saved-address strong{display:block;font-size:13px}
.tf-saved-address span{display:block;font-size:12px;color:#8b8693;line-height:1.4}
.tf-saved-address.is-active{border-color:var(--tf-brand);box-shadow:0 0 0 3px rgba(255,59,70,.1)}
.tf-cart-group-foot{display:flex;justify-content:space-between;gap:10px;padding:12px 20px;font-size:13.5px;color:#6d6875;flex-wrap:wrap}
.tf-thankyou-head{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.tf-thankyou-ico{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 52px}
.tf-thankyou-ico svg{width:26px;height:26px}
.tf-thankyou-ico.is-ok{background:#e9f8ee;color:#1d8a44}
.tf-thankyou-ico.is-wait{background:#fdf4e5;color:#ad6c0c}
.tf-transfer-box{background:#fff;border-radius:var(--tf-r-card);box-shadow:var(--tf-shadow-sm);padding:20px 22px;margin-bottom:18px}
.tf-transfer-box ul{list-style:none;margin:10px 0;padding:0}
.tf-transfer-box li{display:flex;gap:10px;padding:4px 0;font-size:14px}
.tf-transfer-box li span{color:#8b8693;min-width:120px}
.tf-pay-demo{display:flex;justify-content:center}
.tf-pay-demo-box{background:#fff;border-radius:var(--tf-r-card);box-shadow:var(--tf-shadow);padding:28px 30px;max-width:480px;width:100%}
.tf-pay-demo-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.tf-pay-demo-badge{background:#fdf4e5;color:#ad6c0c;border-radius:999px;padding:3px 12px;font-size:11.5px;font-weight:700;letter-spacing:.04em}
.tf-pay-demo-desc{font-size:13px;color:#8b8693;line-height:1.55;margin-bottom:14px}
.tf-pay-methods{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}
.tf-pay-methods span{border:1.5px solid var(--tf-line);border-radius:10px;padding:7px 13px;font-size:12.5px;font-weight:600;color:#4d4855}
.tf-pay-demo-orders{border-top:1px dashed var(--tf-line);padding-top:8px;margin-bottom:16px}
.tf-pay-demo-cancel{display:block;text-align:center;margin-top:12px;font-size:12.5px;color:#8b8693;text-decoration:underline}

/* --- ikona koszyka w nagłówku --- */
/* v2026zl: mniejsza ikona + napis „Koszyk" wycentrowane względem siebie */
.tf-header-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.tf-header-cart svg{width:17px;height:17px;flex:0 0 auto}
.tf-header-cart-label{font-size:inherit;line-height:1}
.tf-header-cart-count{
  position:absolute;top:-9px;left:9px;min-width:18px;height:18px;line-height:18px;
  background:var(--tf-grad);color:#fff;border-radius:999px;font-size:10.5px;font-weight:700;
  text-align:center;padding:0 4px;
}

/* koszyk w kompaktowym pasku wyszukiwarki — przed „Moje konto"/„Zaloguj" */
.tf-ss-cart{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:38px;height:38px;flex:0 0 auto;color:var(--tf-ink);border-radius:12px;
  transition:background .2s ease;
}
.tf-ss-cart:hover{background:#f4f2ed;color:var(--tf-brand-ink)}
.tf-ss-cart svg{width:18px;height:18px}
.tf-ss-cart-count{
  position:absolute;top:-2px;right:-4px;min-width:17px;height:17px;line-height:17px;
  background:var(--tf-grad);color:#fff;border-radius:999px;font-size:10px;font-weight:700;
  text-align:center;padding:0 4px;
}

/* mały podgląd koszyka (panel rozwijany po kliknięciu) */
.tf-minicart{
  position:fixed;z-index:1200;width:330px;max-width:calc(100vw - 20px);
  background:#fff;border:1px solid var(--tf-line);border-radius:18px;
  box-shadow:var(--tf-shadow);padding:16px;
}
.tf-minicart-empty{margin:2px 0 14px;font-size:14px;color:#6d6875;text-align:center}
.tf-minicart-browse{display:flex;justify-content:center}
.tf-minicart-list{list-style:none;margin:0;padding:0}
.tf-minicart-list li{
  display:flex;align-items:center;gap:12px;padding:10px 0;
  border-bottom:1px solid var(--tf-line);
}
.tf-minicart-list li:first-child{padding-top:2px}
.tf-minicart-list li:last-child{border-bottom:0}
.tf-minicart-thumb{
  flex:0 0 auto;width:52px;height:52px;border-radius:12px;overflow:hidden;background:#f0eee9;
}
.tf-minicart-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.tf-minicart-info{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1 1 auto}
.tf-minicart-info strong{
  font:600 13px/1.35 'Inter',sans-serif;color:var(--tf-ink);
  overflow:hidden;text-overflow:ellipsis;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;
}
.tf-minicart-info small{font-size:12px;color:#8b8693;white-space:nowrap}
/* kosz przy pozycji — usuwanie bez wychodzenia z podglądu (AJAX w motoklik-2026.js) */
.tf-minicart-remove{flex:0 0 auto;margin:0;line-height:0}
.tf-minicart-del{
  border:0;background:none;cursor:pointer;padding:7px;margin:0;border-radius:9px;
  color:#bdb8c4;display:inline-flex;transition:color .15s, background .15s;
}
.tf-minicart-del svg{width:17px;height:17px;display:block}
.tf-minicart-del:hover{color:#e2452f;background:#fdecea}
.tf-minicart-del:disabled{opacity:.4;cursor:default}
.tf-minicart-more{margin:10px 0 0;font-size:12px;color:#8b8693;text-align:center}
.tf-minicart-foot{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-top:12px;padding-top:12px;border-top:1px solid var(--tf-line);
}
/* etykieta „Razem" nad kwotą; kwota nigdy się nie łamie */
.tf-minicart-sum{display:flex;flex-direction:column;line-height:1.15;white-space:nowrap}
.tf-minicart-sum span{
  font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#8b8693;
}
.tf-minicart-sum strong{
  font-family:'Space Grotesk',sans-serif;font-size:19px;color:var(--tf-ink);white-space:nowrap;
}
/* kompaktowy przycisk — znacznie mniejszy niż standardowy btn-primary */
.tf-minicart-go{
  flex:0 0 auto;white-space:nowrap;text-decoration:none;
  display:inline-flex;align-items:center;justify-content:center;
  padding:9px 16px;border-radius:999px;
  background:var(--tf-grad);color:#fff !important;
  font:600 13px/1 'Inter',sans-serif;
  transition:filter .15s;
}
.tf-minicart-go:hover{filter:brightness(1.06)}

/* ==========================================================================
   v2026zm — Usługi motoryzacyjne: lista wizytówek z filtrami
   ========================================================================== */
.tf-services-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.tf-services-sub{color:#6d6875;margin-top:4px}
.tf-service-filters{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 14px}
.tf-service-filter{
  border:1.5px solid var(--tf-line);border-radius:var(--tf-r-pill);
  padding:7px 15px;font-size:13px;font-weight:600;color:#4d4855;background:#fff;
  transition:border-color .2s ease, color .2s ease, transform .2s ease;
}
.tf-service-filter:hover{transform:translateY(-1px);color:var(--tf-brand-ink)}
.tf-service-filter.is-active{background:var(--tf-grad);color:#fff;border-color:transparent}
.tf-service-search{display:flex;gap:10px;max-width:520px;margin-bottom:22px}
.tf-services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}

/* v2026zl: kompaktowa karta wizytówki (tf-sc) — monogram/zdjęcie, nazwa,
   kategoria, miasto, dwie linie opisu, strzałka */
.tf-sc{
  display:flex;align-items:flex-start;gap:14px;
  background:#fff;border:1px solid var(--tf-line);border-radius:18px;
  padding:16px 18px;box-shadow:var(--tf-shadow-sm);color:var(--tf-ink) !important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.tf-sc:hover{transform:translateY(-3px);box-shadow:var(--tf-shadow);text-decoration:none}
.tf-sc-avatar{
  flex:0 0 auto;width:52px;height:52px;border-radius:14px;overflow:hidden;
  background:var(--tf-grad);color:#fff;display:flex;align-items:center;
  justify-content:center;font:700 20px/1 'Space Grotesk',sans-serif;
}
.tf-sc-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.tf-sc-main{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
.tf-sc-name{
  font:700 15.5px/1.3 'Space Grotesk','Inter',sans-serif;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.tf-sc-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.tf-sc-kind{
  font:600 10.5px/1 'Inter',sans-serif;letter-spacing:.06em;text-transform:uppercase;
  color:var(--tf-brand-ink);background:rgba(255,59,70,.08);
  padding:4px 9px;border-radius:var(--tf-r-pill);
}
.tf-sc-city{display:flex;align-items:center;gap:4px;font-size:12px;color:#8b8693}
.tf-sc-city svg{width:12px;height:12px}
.tf-sc-desc{
  font-size:12.5px;color:#6d6875;line-height:1.5;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.tf-sc-arrow{
  margin-left:auto;flex:0 0 auto;align-self:center;color:#c9c5bd;font-size:18px;
  transition:transform .2s ease,color .2s ease;
}
.tf-sc:hover .tf-sc-arrow{transform:translateX(3px);color:var(--tf-brand-ink)}
/* v2026zs: logo firmy na karcie — mieści się w całości (contain) na białym tle,
   zamiast przycinania jak zdjęcie */
.tf-sc-avatar.has-logo{background:#fff;border:1px solid var(--tf-line)}
.tf-sc-avatar.has-logo img{object-fit:contain;padding:5px}
/* karta w wąskiej kolumnie wyników /szukaj zachowuje odstęp listy */
.tf-offers .tf-sc{margin-bottom:14px}

/* ==========================================================================
   v2026zs: STRONA WIZYTÓWKI FIRMY (tf-vc) — kompaktowa, minimalistyczna,
   baner firmowy u góry, logo, dane kontaktowe, opis i mapa.
   ========================================================================== */
.tf-vc-section{padding:26px 0 60px}
.tf-vc{
  max-width:1040px;margin:0 auto;background:#fff;
  border:1px solid var(--tf-line);border-radius:var(--tf-r-card);
  box-shadow:var(--tf-shadow);overflow:hidden;
}
/* Baner 3:1 (1200×400) */
.tf-vc-banner{
  position:relative;aspect-ratio:3/1;background-size:cover;background-position:center;
  background-color:#f2f0ec;
}
.tf-vc-banner.is-empty{background:var(--tf-grad)}
.tf-vc-banner:after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,16,25,0) 55%,rgba(20,16,25,.28) 100%);
}
.tf-vc-banner-kind{
  position:absolute;left:18px;top:18px;z-index:1;
  font:600 11px/1 'Inter',sans-serif;letter-spacing:.06em;text-transform:uppercase;
  color:#fff;background:rgba(20,16,25,.42);backdrop-filter:blur(6px);
  padding:7px 13px;border-radius:var(--tf-r-pill);
}
/* Nagłówek z logiem nachodzącym na baner */
.tf-vc-head{
  display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap;
  padding:0 30px 22px;margin-top:-46px;position:relative;
}
.tf-vc-logo{
  flex:0 0 auto;width:112px;height:112px;border-radius:22px;overflow:hidden;
  background:var(--tf-grad);color:#fff;display:flex;align-items:center;justify-content:center;
  font:700 44px/1 'Space Grotesk',sans-serif;
  border:4px solid #fff;box-shadow:var(--tf-shadow-sm);
}
.tf-vc-logo.has-logo{background:#fff}
.tf-vc-logo img{width:100%;height:100%;object-fit:contain;padding:6px;display:block}
.tf-vc-headmain{flex:1 1 260px;min-width:0;padding-bottom:4px}
.tf-vc-name{
  font:700 27px/1.15 'Space Grotesk','Inter',sans-serif;letter-spacing:-.02em;
  color:var(--tf-ink);margin:0 0 8px;
}
.tf-vc-tags{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.tf-vc-tag{display:inline-flex;align-items:center;gap:5px;font:500 13px/1 'Inter',sans-serif;color:#7a7580}
.tf-vc-tag svg{width:15px;height:15px;opacity:.85}
.tf-vc-tag--kind{
  font-weight:600;color:var(--tf-brand-ink);background:rgba(255,59,70,.09);
  padding:6px 11px;border-radius:var(--tf-r-pill);
}
.tf-vc-cta{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:4px;margin-left:auto}
/* Przyciski */
.tf-vc-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font:600 14px/1 'Inter',sans-serif;padding:13px 20px;border-radius:14px;
  border:1px solid transparent;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
  text-decoration:none;
}
.tf-vc-btn svg{width:17px;height:17px}
.tf-vc-btn--phone{background:var(--tf-ink);color:#fff}
.tf-vc-btn--msg{background:var(--tf-grad);color:#fff;box-shadow:0 12px 24px -14px rgba(255,59,70,.75)}
.tf-vc-btn--ghost{background:#fff;color:var(--tf-ink);border-color:var(--tf-line)}
.tf-vc-btn:hover{transform:translateY(-2px);text-decoration:none;color:#fff}
.tf-vc-btn--ghost:hover{color:var(--tf-ink);background:#faf9f7}
.tf-vc-btn--block{width:100%;margin-top:10px}
/* Treść */
.tf-vc-body{
  display:grid;grid-template-columns:1fr 320px;gap:30px;
  padding:8px 30px 34px;border-top:1px solid var(--tf-line);margin-top:6px;
}
.tf-vc-h{
  font:700 17px/1.2 'Space Grotesk','Inter',sans-serif;color:var(--tf-ink);
  margin:20px 0 12px;
}
.tf-vc-about>.tf-vc-h:first-child{margin-top:24px}
.tf-vc-desc{font:400 15px/1.7 'Inter',sans-serif;color:#4a4550}
.tf-vc-desc p{margin:0 0 10px}
.tf-vc-muted{color:#9a949f;font-style:italic}
.tf-vc-map{border-radius:16px;overflow:hidden;border:1px solid var(--tf-line);aspect-ratio:16/8}
.tf-vc-map iframe{width:100%;height:100%;display:block}
/* Panel kontaktowy */
.tf-vc-side{min-width:0}
.tf-vc-contact{
  position:sticky;top:90px;background:#faf9f7;border:1px solid var(--tf-line);
  border-radius:18px;padding:20px;
}
.tf-vc-side-h{font:700 15px/1.2 'Space Grotesk','Inter',sans-serif;color:var(--tf-ink);margin:0 0 14px}
.tf-vc-rows{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.tf-vc-row{display:flex;align-items:center;gap:11px;color:var(--tf-ink);text-decoration:none;font:600 15px/1.2 'Inter',sans-serif}
.tf-vc-row:hover{color:var(--tf-brand-ink);text-decoration:none}
.tf-vc-row-ic{
  flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:#fff;border:1px solid var(--tf-line);
  display:flex;align-items:center;justify-content:center;color:var(--tf-brand-ink);
}
.tf-vc-row-ic svg{width:16px;height:16px}
.tf-vc-addr{
  display:flex;gap:11px;align-items:flex-start;
  font:400 14px/1.55 'Inter',sans-serif;color:#4a4550;font-style:normal;margin:0 0 4px;
}
.tf-vc-addr small{color:#9a949f}
@media (max-width:860px){
  .tf-vc-body{grid-template-columns:1fr;gap:22px;padding:8px 20px 28px}
  .tf-vc-head{padding:0 20px 20px;gap:16px}
  .tf-vc-logo{width:88px;height:88px;border-radius:18px;font-size:34px}
  .tf-vc-name{font-size:22px}
  .tf-vc-cta{margin-left:0;width:100%}
  .tf-vc-cta .tf-vc-btn{flex:1 1 auto}
  .tf-vc-contact{position:static}
}

/* v2026zs: pola wgrywania logo/banera w formularzu wizytówki */
.tf-req{color:var(--tf-brand);font-weight:700}
.tf-upl{
  position:relative;display:flex;align-items:center;justify-content:center;
  width:100%;background:#faf9f7;border:2px dashed #d9d5cd;border-radius:14px;
  cursor:pointer;overflow:hidden;transition:border-color .15s ease,background .15s ease;
}
.tf-upl:hover{border-color:var(--tf-brand);background:#fff}
.tf-upl--logo{aspect-ratio:1/1}
.tf-upl--banner{aspect-ratio:3/1}
.tf-upl-input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.tf-upl-prev{width:100%;height:100%;object-fit:contain;background:#fff;display:block}
.tf-upl--banner .tf-upl-prev{object-fit:cover}
.tf-upl-ph{
  display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;
  padding:14px;color:#8b8693;pointer-events:none;
}
.tf-upl-ph svg{width:26px;height:26px;color:var(--tf-brand);margin-bottom:2px}
.tf-upl-ph b{font:600 13.5px/1.2 'Inter',sans-serif;color:var(--tf-ink)}
.tf-upl-ph em{font:400 11.5px/1.3 'Inter',sans-serif;font-style:normal;color:#9a949f}
.tf-upl.has-file{border-style:solid;border-color:var(--tf-line)}

/* ==========================================================================
   v2026zl: strona główna — Oferty dnia / Polecane usługi + karuzele
   ========================================================================== */
.tf-daily-section{padding:8px 0 26px}
.tf-featured-cards-section{padding:6px 0 40px}
.tf-daily-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
  margin-bottom:16px;
}
.tf-daily-kicker{
  display:block;font:600 11.5px/1 'Inter',sans-serif;letter-spacing:.14em;
  text-transform:uppercase;color:var(--tf-brand-ink);margin-bottom:6px;
}
.tf-daily-title{
  font:700 26px/1.15 'Space Grotesk','Inter',sans-serif;color:var(--tf-ink);margin:0;
}
.tf-daily-title span{
  background:var(--tf-grad);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.tf-daily-all{
  font:600 13.5px/1 'Inter',sans-serif;color:var(--tf-ink);white-space:nowrap;
}
.tf-daily-all em{font-style:normal;display:inline-block;transition:transform .2s ease}
.tf-daily-all:hover{color:var(--tf-brand-ink);text-decoration:none}
.tf-daily-all:hover em{transform:translateX(4px)}

/* karuzele: kontener + strzałki */
.tf-home-slider{position:relative;padding:0 4px}
.tf-home-slider .swiper-container{overflow:hidden}
.tf-home-slider .swiper-slide{height:auto}
.tf-home-slider .swiper-slide .product-square-item{display:block;height:100%}
.tf-home-slider .swiper-slide .tf-sc{height:calc(100% - 4px)}
/* strzałki karuzel na home: ten sam styl co baner (.tf-why-section) — okrągłe,
   chevron-SVG w kolorze marki wyśrodkowany w tle kółka, tylko mniejsze (38px) */
.tf-home-slider .swiper-button-prev,
.tf-home-slider .swiper-button-next{
  width:38px !important;height:38px !important;margin-top:0 !important;
  border-radius:50%;background-color:#fff !important;
  background-position:center center !important;background-repeat:no-repeat !important;
  background-size:16px 16px !important;background-image:none;
  border:1px solid var(--tf-line);box-shadow:var(--tf-shadow-sm);
  top:50% !important;transform:translateY(-50%) !important;
  transition:transform .2s ease,border-color .2s ease;
}
.tf-home-slider .swiper-button-prev{left:-14px !important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2102A' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M15 18l-6-6 6-6'/></svg>") !important;
}
.tf-home-slider .swiper-button-next{right:-14px !important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2102A' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M9 6l6 6-6 6'/></svg>") !important;
}
/* wyłącz stary chevron rysowany ramką (rozjeżdżał się względem kółka) */
.tf-home-slider .swiper-button-prev:after,
.tf-home-slider .swiper-button-next:after{content:none !important;display:none !important}
.tf-home-slider .swiper-button-prev:hover,
.tf-home-slider .swiper-button-next:hover{border-color:var(--tf-brand);transform:translateY(-50%) scale(1.08) !important}
.tf-home-slider .swiper-button-disabled{opacity:0;pointer-events:none}

/* ==========================================================================
   v2026zl: strony cennikowe — Abonamenty / Pakiety / Reklama
   ========================================================================== */
.tf-pricing-head{max-width:760px;margin:6px 0 30px}
.tf-pricing-kicker{
  display:inline-block;font:600 11.5px/1 'Inter',sans-serif;letter-spacing:.14em;
  text-transform:uppercase;color:var(--tf-brand-ink);background:#FFF1EC;
  border-radius:var(--tf-r-pill);padding:7px 14px;margin-bottom:14px;
}
.tf-pricing-title{
  font:700 34px/1.12 'Space Grotesk','Inter',sans-serif;letter-spacing:-.02em;
  color:var(--tf-ink);margin:0 0 12px;
}
.tf-pricing-title span{
  background:var(--tf-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.tf-pricing-sub{font-size:15.5px;line-height:1.6;color:#6d6875;margin:0}

.tf-pricing-perks{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0 34px;
}
@media (max-width:860px){.tf-pricing-perks{grid-template-columns:1fr}}
.tf-pricing-perk{
  background:#fff;border:1px solid var(--tf-line);border-radius:20px;
  padding:22px 24px;box-shadow:var(--tf-shadow-sm);
}
.tf-pricing-perk-ico{
  display:flex;align-items:center;justify-content:center;width:46px;height:46px;
  border-radius:14px;background:rgba(255,59,70,.08);color:var(--tf-brand-ink);margin-bottom:14px;
}
.tf-pricing-perk-ico svg{width:22px;height:22px}
.tf-pricing-perk h3{font:700 17px/1.3 'Space Grotesk',sans-serif;margin:0 0 6px}
.tf-pricing-perk p{font-size:13.5px;line-height:1.55;color:#6d6875;margin:0}

/* karty planów (abonamenty z bazy) */
.tf-plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:24px}
@media (max-width:860px){.tf-plans-grid{grid-template-columns:1fr}}
.tf-plan-card{
  position:relative;background:#fff;border:1px solid var(--tf-line);border-radius:22px;
  padding:26px 26px 28px;box-shadow:var(--tf-shadow-sm);display:flex;flex-direction:column;
}
.tf-plan-card.is-featured{border:2px solid var(--tf-brand);box-shadow:var(--tf-shadow)}
.tf-plan-badge{
  position:absolute;top:-12px;left:26px;background:var(--tf-grad);color:#fff;
  font:700 10.5px/1 'Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase;
  padding:6px 12px;border-radius:var(--tf-r-pill);
}
.tf-plan-name{font:700 20px/1.25 'Space Grotesk',sans-serif;margin:4px 0 6px}
.tf-plan-price{font:700 26px/1 'Space Grotesk',sans-serif;color:var(--tf-brand-ink);margin:0 0 14px}
.tf-plan-desc{font-size:13.5px;line-height:1.6;color:#6d6875;margin-bottom:18px}
.tf-plan-desc ul{margin:0;padding-left:18px}
.tf-plan-cta{margin-top:auto;text-align:center}
.tf-plan-empty{
  background:#fff;border:1px dashed var(--tf-line);border-radius:22px;
  padding:34px;text-align:center;box-shadow:var(--tf-shadow-sm);margin-bottom:24px;
}
.tf-plan-empty h3{font:700 20px/1.3 'Space Grotesk',sans-serif;margin:0 0 8px}
.tf-plan-empty p{color:#6d6875;margin:0 0 18px}
.tf-pricing-foot{font-size:14px;color:#6d6875;text-align:center;margin-top:6px}

/* pakiety promowania */
.tf-promo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:34px}
@media (max-width:860px){.tf-promo-grid{grid-template-columns:1fr}}
.tf-promo-card{
  position:relative;background:#fff;border:1px solid var(--tf-line);border-radius:22px;
  padding:26px 24px;box-shadow:var(--tf-shadow-sm);overflow:hidden;
}
.tf-promo-card:before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--tf-grad)}
.tf-promo-ico{
  display:flex;align-items:center;justify-content:center;width:48px;height:48px;
  border-radius:14px;background:rgba(255,59,70,.08);color:var(--tf-brand-ink);margin-bottom:14px;
}
.tf-promo-ico svg{width:24px;height:24px}
.tf-promo-tag{
  display:inline-block;font:600 10.5px/1 'Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase;
  color:var(--tf-brand-ink);background:#FFF1EC;border-radius:var(--tf-r-pill);padding:5px 10px;margin-bottom:10px;
}
.tf-promo-name{font:700 18px/1.3 'Space Grotesk',sans-serif;margin:0 0 8px}
.tf-promo-desc{font-size:13.5px;line-height:1.6;color:#6d6875;margin:0}
.tf-promo-how{
  background:#fff;border:1px solid var(--tf-line);border-radius:22px;
  padding:28px 30px;box-shadow:var(--tf-shadow-sm);
}
.tf-promo-steps{list-style:none;margin:14px 0 22px;padding:0;display:grid;gap:12px}
.tf-promo-steps li{display:flex;align-items:center;gap:12px;font-size:15px;color:#3d3a45}
.tf-promo-steps li span{
  flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:var(--tf-grad);color:#fff;
  font:700 14px/30px 'Space Grotesk',sans-serif;text-align:center;
}
.tf-promo-cta-row{display:flex;flex-wrap:wrap;gap:12px}

/* ==========================================================================
   v2026zl: kontakt / skargi / sugestie — wspólny układ po rebrandingu
   ========================================================================== */
.tf-contact-head{max-width:720px;margin:6px 0 30px}
.tf-contact-sub{color:#6d6875;font-size:15px;line-height:1.6;margin-top:8px}
.tf-contact-cards{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}
.tf-contact-card{
  display:flex;gap:14px;align-items:flex-start;
  background:#fff;border:1px solid var(--tf-line);border-radius:18px;
  padding:18px 20px;box-shadow:var(--tf-shadow-sm);
}
.tf-contact-ico{
  flex:0 0 auto;width:44px;height:44px;border-radius:13px;
  background:rgba(255,59,70,.08);color:var(--tf-brand-ink);
  display:flex;align-items:center;justify-content:center;
}
.tf-contact-ico svg{width:20px;height:20px}
.tf-contact-card h3{
  font:700 15px/1.3 'Space Grotesk',sans-serif;margin:2px 0 4px;
}
.tf-contact-card p{margin:0;font-size:14px;color:#4d4855;line-height:1.55}
.tf-contact-note{font-size:12.5px;color:#8b8693}
.tf-contact-form-box{
  background:#fff;border:1px solid var(--tf-line);border-radius:20px;
  padding:26px 28px;box-shadow:var(--tf-shadow-sm);
}
.tf-contact-form-box .heading-box-medium{margin-bottom:16px}
.tf-contact-success{
  font:600 16px/1.5 'Space Grotesk',sans-serif;color:#1d8348;margin:8px 0;
}
.tf-contact-map iframe{display:block;border-radius:20px;margin:12px auto 0;max-width:1140px}
.tf-contact-map{padding:0 15px 40px}

/* notka o opłacie za wizytówkę nad formularzem */
.tf-card-fee-note{
  background:#fff;border:1px solid var(--tf-line);border-left:4px solid var(--tf-brand);
  border-radius:14px;padding:14px 18px;margin-bottom:22px;font-size:14px;color:var(--tf-ink);
}
/* licznik znaków opisu */
.tf-card-desc{width:100%;min-height:140px}
.tf-service-card{
  display:flex;flex-direction:column;background:#fff;border-radius:var(--tf-r-card);
  overflow:hidden;box-shadow:var(--tf-shadow-sm);color:var(--tf-ink);
  transition:transform .25s ease, box-shadow .25s ease;
}
.tf-service-card:hover{transform:translateY(-3px);box-shadow:var(--tf-shadow);color:var(--tf-ink)}
.tf-service-card-img{position:relative;display:block;height:170px;background:#f0eee9}
.tf-service-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.tf-service-card-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:#cfcbc2}
.tf-service-card-placeholder svg{width:44px;height:44px}
.tf-service-card-kind{
  position:absolute;left:12px;bottom:12px;background:rgba(20,16,25,.82);color:#fff;
  border-radius:999px;padding:4px 12px;font-size:11.5px;font-weight:600;
}
.tf-service-card-body{display:flex;flex-direction:column;gap:6px;padding:15px 17px 17px}
.tf-service-card-body strong{font-family:'Space Grotesk','Inter',sans-serif;font-size:16px;line-height:1.3}
.tf-service-card-city{display:flex;align-items:center;gap:5px;font-size:12.5px;color:#8b8693}
.tf-service-card-city svg{width:14px;height:14px}
.tf-service-card-desc{font-size:13px;color:#6d6875;line-height:1.5}
.tf-service-card-go{margin-top:4px;font-size:13px;font-weight:600;color:var(--tf-brand-ink)}
.tf-services-empty{text-align:center;padding:50px 20px;background:#fff;border-radius:var(--tf-r-card);box-shadow:var(--tf-shadow-sm)}
.tf-services-pager{margin-top:22px;display:flex;justify-content:center}

/* --- hero: trzy kafelki kategorii (części / pojazdy / usługi) --- */
.tf-nav-three .search-primary-nav-item{width:33.3333%;height:125px}
/* trzy kafelki równo na całej szerokości (nadpisuje width:20% !important dla 5 kafelków);
   mobile zostaje przy układzie 50/50/100 z reguły max-width:767.98px */
@media (min-width:768px){
  .tf-nav-three .search-primary-nav-item{flex:1 1 0;width:auto !important}
}
.tf-nav-three .search-primary-nav-item .heading-pos .heading-box-small{font-size:19px}

/* ==========================================================================
   v2026zn — Poradniki (dawne FAQ) + pasek pomocy w stopce
   ========================================================================== */
.tf-guides-head{max-width:720px;margin-bottom:22px}
.tf-guides-sub{color:#6d6875;margin-top:6px;line-height:1.55}
.tf-guides-sub a{color:var(--tf-brand-ink);text-decoration:underline}
.tf-guides-list{display:flex;flex-direction:column;gap:12px;max-width:860px}
.tf-guide{
  background:#fff;border-radius:var(--tf-r-card);box-shadow:var(--tf-shadow-sm);
  overflow:hidden;
}
.tf-guide summary{
  display:flex;align-items:center;gap:14px;cursor:pointer;list-style:none;
  padding:18px 22px;user-select:none;
}
.tf-guide summary::-webkit-details-marker{display:none}
.tf-guide-num{
  font-family:'Space Grotesk','Inter',sans-serif;font-weight:700;
  color:var(--tf-brand-ink);font-size:15px;flex:0 0 auto;
}
.tf-guide-title{flex:1;font-family:'Space Grotesk','Inter',sans-serif;font-weight:600;font-size:16.5px}
.tf-guide-arrow{width:18px;height:18px;color:#9a95a0;transition:transform .25s ease;flex:0 0 18px}
.tf-guide[open] .tf-guide-arrow{transform:rotate(180deg)}
.tf-guide-body{padding:2px 22px 20px 52px;color:#4d4855;line-height:1.65;font-size:14.5px}
.tf-guide-body ol,.tf-guide-body ul{margin:8px 0 8px 20px}
.tf-guide-body li{margin-bottom:5px}
.tf-guide-body h4{font-family:'Space Grotesk','Inter',sans-serif;margin:14px 0 6px}
.tf-guide-body a{color:var(--tf-brand-ink);text-decoration:underline}

.tf-guide-body ol{list-style:decimal outside}
.tf-guide-body ul{list-style:disc outside}
.tf-guide-body ol li,.tf-guide-body ul li{list-style:inherit}

/* ==========================================================================
   Stopka 2026zr — redesign (tf-foot)
   Ciemna tacka z aurorą, siatka marka/nawigacja/newsletter,
   modele jako kapsułki, dolny pasek praw.
   ========================================================================== */
.tf-foot{
  position:relative;
  margin-top:70px;
  background:
    radial-gradient(720px 420px at 8% 0%, rgba(255,59,70,.16), transparent 60%),
    radial-gradient(820px 460px at 94% 8%, rgba(255,122,61,.12), transparent 62%),
    linear-gradient(180deg,#17131d 0%,#0e0b12 100%);
  border-radius:34px 34px 0 0;
  color:#b9b4c2;
  font-family:'Inter',-apple-system,'Segoe UI',sans-serif;
}
.tf-foot a{text-decoration:none;transition:.2s}
.tf-foot ul{list-style:none;margin:0;padding:0}
.tf-foot ul li:before{display:none}

/* główna siatka */
.tf-foot-grid{
  display:grid;grid-template-columns:1.15fr .65fr .85fr 1.25fr;gap:44px;
  padding:54px 0 42px;
}
.tf-foot-h{
  margin:0 0 16px;
  font-family:'Space Grotesk','Inter',sans-serif;
  font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff;
}
.tf-foot-h:before{
  content:'';display:inline-block;width:20px;height:3px;border-radius:3px;
  background:var(--tf-grad);margin-right:9px;vertical-align:3px;
}
.tf-foot-logo{display:inline-flex;align-items:center;gap:12px}
.tf-foot-logo img{height:46px;width:auto;display:block}
.tf-foot-logo span{
  font-family:'Space Grotesk','Inter',sans-serif;font-size:23px;font-weight:700;
  letter-spacing:-.01em;color:#fff;
}
.tf-foot-logo em{font-style:normal;color:var(--tf-brand-2)}
.tf-foot-brand>p{margin:16px 0 20px;font-size:14px;line-height:1.65;color:#8b8693;max-width:250px}
.tf-foot-social{display:flex;gap:10px}
.tf-foot-social a{
  display:flex;align-items:center;justify-content:center;width:42px;height:42px;
  border-radius:14px;border:1px solid rgba(255,255,255,.14);color:#fff;
}
.tf-foot-social a svg{width:16px;height:16px}
.tf-foot-social a:hover{background:var(--tf-grad);border-color:transparent;transform:translateY(-2px)}
/* v2026zl: ikony FB/IG nieaktywne — przygaszone, z dymkiem „Już niebawem" */
.tf-foot-social .tf-soon{
  display:flex;align-items:center;justify-content:center;width:42px;height:42px;
  border-radius:14px;border:1px solid rgba(255,255,255,.14);color:#fff;
  opacity:.45;cursor:default;position:relative;
}
.tf-foot-social .tf-soon svg{width:16px;height:16px}
.tf-foot-social .tf-soon::after{
  content:'Już niebawem';position:absolute;bottom:calc(100% + 9px);left:50%;
  transform:translateX(-50%) translateY(3px);background:#fff;color:var(--tf-ink);
  font-size:11.5px;font-weight:600;padding:5px 12px;border-radius:9px;
  white-space:nowrap;opacity:0;pointer-events:none;
  box-shadow:0 6px 18px -6px rgba(0,0,0,.35);
  transition:opacity .18s ease,transform .18s ease;
}
.tf-foot-social .tf-soon:hover,.tf-foot-social .tf-soon:focus{opacity:.85;outline:none}
.tf-foot-social .tf-soon:hover::after,.tf-foot-social .tf-soon:focus::after{
  opacity:1;transform:translateX(-50%) translateY(0);
}
.tf-foot-col a{display:inline-block;padding:5px 0;color:#b9b4c2;font-size:14px}
.tf-foot-col a:hover{color:#fff;transform:translateX(3px)}

/* karta newslettera */
.tf-foot-news{
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.09);
  border-radius:22px;padding:24px;
}
.tf-foot-news>p{margin:0 0 16px;font-size:13.5px;line-height:1.55;color:#8b8693}
.tf-foot-news-row{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-bottom:10px}
/* !important: globalny restyling pól (input[type=…] wyżej w pliku) też używa
   !important — remis specyficzności rozstrzyga kolejność, ta sekcja jest później */
.tf-foot-news-form input{
  width:100%;height:46px;padding:0 18px;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.13) !important;
  border-radius:var(--tf-r-pill) !important;
  color:#fff !important;font-family:inherit;font-size:14px;outline:none;transition:.2s;
}
.tf-foot-news-form input::placeholder{color:#7d7887}
.tf-foot-news-form input:focus{
  border-color:var(--tf-brand) !important;
  background:rgba(255,255,255,.10) !important;
  box-shadow:0 0 0 3px rgba(255,59,70,.14) !important;
}
.tf-foot-news-form button{
  width:100%;height:46px;border:0;border-radius:var(--tf-r-pill);cursor:pointer;
  background:var(--tf-grad);color:#fff;font-family:inherit;font-size:14.5px;font-weight:700;
  transition:.2s;
}
.tf-foot-news-form button:hover{transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(255,59,70,.6)}

/* umowa kupna-sprzedaży */
.tf-foot-doc{
  display:flex;align-items:center;gap:13px;margin-top:16px;
  padding:13px 15px;border:1px dashed rgba(255,255,255,.18);border-radius:16px;color:#b9b4c2;
}
.tf-foot-doc-ico{
  flex:none;display:flex;align-items:center;justify-content:center;width:40px;height:40px;
  border-radius:12px;background:rgba(255,59,70,.14);color:var(--tf-brand-2);
}
.tf-foot-doc-ico svg{width:19px;height:19px}
.tf-foot-doc-txt{display:flex;flex-direction:column;gap:1px}
.tf-foot-doc-txt strong{color:#fff;font-size:13.5px;font-weight:600}
.tf-foot-doc-txt span{font-size:12px;color:#8b8693}
.tf-foot-doc:hover{border-color:var(--tf-brand);color:#fff;transform:translateY(-1px)}

/* najpopularniejsze modele — kapsułki */
.tf-foot-models{border-top:1px solid rgba(255,255,255,.08);padding:28px 0 6px}
.tf-foot-chips{display:flex;flex-wrap:wrap;gap:8px}
.tf-foot-chips a{
  display:inline-block;padding:7px 15px;
  border:1px solid rgba(255,255,255,.11);border-radius:var(--tf-r-pill);
  color:#a49fae;font-size:12.5px;
}
.tf-foot-chips a:hover{border-color:var(--tf-brand);color:#fff;background:rgba(255,59,70,.10)}

/* dolny pasek */
.tf-foot-bottom{
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:26px;padding:20px 0 28px;
}
.tf-foot-bottom p{margin:0;font-size:12.5px;color:#7d7887}
.tf-foot-bottom nav{display:flex;gap:22px;flex-wrap:wrap}
.tf-foot-bottom nav a{font-size:12.5px;color:#a49fae}
.tf-foot-bottom nav a:hover{color:#fff}

/* responsywność stopki */
@media(max-width:1100px){
  .tf-foot-grid{grid-template-columns:1fr 1fr;gap:36px}
}
@media(max-width:640px){
  .tf-foot{border-radius:22px 22px 0 0;margin-top:52px}
  .tf-foot-grid{grid-template-columns:1fr;gap:32px;padding:40px 0 30px}
  .tf-foot-news-row{grid-template-columns:1fr}
  .tf-foot-bottom{flex-direction:column;justify-content:center;text-align:center}
}

/* ==========================================================================
   v2026zp: formularz dodawania ogłoszenia (pojazdy/części)
   — tytuł ogłoszenia wyeksponowany na górze
   — przełączniki TAK/NIE (Status pojazdu, Informacje finansowe) jako karty
   — checkboxy wyposażenia jako chipy z gradientowym „ptaszkiem"
   wszystko spójne z redesignem 2026
   ========================================================================== */

/* --- tytuł ogłoszenia na samej górze formularza --- */
.tf-offer-title-block{margin-bottom:2px}
.tf-offer-title-block .input-primary{
  height:54px !important;font-size:16px !important;font-weight:600 !important;
}
.tf-offer-title-hint{margin:9px 2px 0;font-size:12.5px;color:#8a8894}

/* --- przełączniki TAK/NIE jako karty w responsywnej siatce --- */
.public-ex-check-slide-row{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(250px,1fr));
  gap:12px;margin:6px 0 0 !important;
}
.public-ex-check-slide-row .check-slide{
  width:auto !important;margin:0 !important;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:#FAF9F6;border:1.5px solid var(--tf-line);border-radius:14px;
  padding:12px 16px;min-height:56px;
  transition:border-color .2s ease,background .2s ease;
}
.public-ex-check-slide-row .check-slide:hover{border-color:#d9d6cf}
/* karta z włączonym przełącznikiem — delikatna czerwona ramka + tło */
.public-ex-check-slide-row .check-slide:has(input:checked){
  border-color:rgba(255,59,70,.45);background:#FFF6F3;
}
.public-ex-check-slide-row .check-slide .text{
  position:static !important;max-width:none !important;width:auto !important;
  right:auto !important;bottom:auto !important;left:auto !important;
  margin:0 !important;text-align:left !important;text-transform:none !important;
  font-weight:600 !important;font-size:13.5px;line-height:1.25;color:var(--tf-ink);
}
.public-ex-check-slide-row .check-slide label{padding:0 !important;margin:0 !important;flex:0 0 auto}
.public-ex-check-slide-row .check-slide .no,
.public-ex-check-slide-row .check-slide .yes{display:none !important}
.public-ex-check-slide-row .check-slide .bar{
  position:static;display:block;width:48px !important;height:28px !important;
  border-radius:999px !important;background:#E6E4DE !important;border:0 !important;
  margin:0 !important;transition:background .2s ease !important;
}
.public-ex-check-slide-row .check-slide .dot{
  width:22px !important;height:22px !important;border:0 !important;
  top:3px !important;left:3px !important;background:#fff !important;
  box-shadow:0 1px 3px rgba(24,18,30,.25);transition:left .2s ease !important;
}
.public-ex-check-slide-row .check-slide .dot:after{display:none !important}
.public-ex-check-slide-row .check-slide input:checked + label .bar{background:var(--tf-grad) !important}
.public-ex-check-slide-row .check-slide input:checked + label .dot{left:23px !important}
@media(max-width:575.98px){
  .public-ex-check-slide-row{grid-template-columns:1fr 1fr}
  .public-ex-check-slide-row .check-slide{padding:10px 12px;min-height:50px}
  .public-ex-check-slide-row .check-slide .text{font-size:12.5px}
}

/* --- wyposażenie: checkboxy jako klikalne chipy --- */
.public-ex-check-list{margin:22px 0 34px !important}
.public-ex-check-list > .row:first-child{margin-bottom:16px}
.public-ex-check-list .check-public{margin:0 0 10px !important}
.public-ex-check-list .check-public label{
  display:block;padding:11px 14px 11px 44px !important;
  background:#fff;border:1.5px solid var(--tf-line);border-radius:12px;
  font-size:13.5px;font-weight:500;color:var(--tf-ink);line-height:1.3;
  cursor:pointer;transition:border-color .18s ease,background .18s ease;
}
.public-ex-check-list .check-public label:hover{border-color:#d9d6cf}
.public-ex-check-list .check-public label:before{
  width:22px !important;height:22px !important;top:50% !important;left:12px !important;
  margin-top:-11px;border:1.5px solid #cfccc4 !important;border-radius:7px !important;
  background:#fff;transition:border-color .18s ease,background .18s ease;
}
/* własny „ptaszek" rysowany borderem (nie zależymy od pliku SVG) */
.public-ex-check-list .check-public label:after{
  background:none !important;width:12px !important;height:7px !important;
  top:50% !important;left:17px !important;margin-top:-6px;
  border:2px solid #fff !important;border-top:0 !important;border-right:0 !important;
  transform:rotate(-45deg);opacity:0;
}
.public-ex-check-list .check-public input:checked + label{
  border-color:rgba(255,59,70,.5);background:#FFF6F3;font-weight:600;
}
.public-ex-check-list .check-public input:checked + label:before{
  background:var(--tf-grad) !important;border-color:transparent !important;
}
.public-ex-check-list .check-public input:checked + label:after{opacity:1}
.public-ex-check-list .select-all{margin-bottom:4px}

/* ===== Faktura VAT — pole „Stawka VAT" nieaktywne, gdy faktura = Nie (styl Allegro) ===== */
.select-primary.is-disabled { opacity: .5; pointer-events: none; }

/* ==========================================================================
   SIDEBAR OFERTY — redesign 2026-07-07: lekka, spójna hierarchia, zwijany
   adres odbioru, JEDNA karta dostawy zamiast trzech kolorowych boxów.
   ========================================================================== */
.public-info-sidebar{padding:20px !important}
.public-info-sidebar .tf-offer-title{
  font-family:'Space Grotesk',sans-serif;font-size:17px !important;font-weight:700;
  line-height:1.34;color:var(--tf-ink);margin:0 0 15px !important;padding:0 !important;
  overflow-wrap:break-word;
}
/* — sprzedawca — */
.tf-side-seller{margin:0}
.tf-side-seller .tf-seller-label{
  font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#a29fa9;
  margin:0 0 3px !important;padding:0 !important;font-weight:600;
}
.tf-side-seller .tf-seller-name{
  font-size:15.5px;font-weight:700;color:var(--tf-ink);margin:0;line-height:1.3;overflow-wrap:break-word;
}
.tf-side-seller .tf-reply{
  display:flex;align-items:center;gap:6px;margin:6px 0 0;
  font-size:12px;font-weight:600;color:#2ea043;
}
.tf-side-seller .tf-reply svg{width:14px;height:14px;flex:0 0 14px}
/* — telefon (kompaktowy) — ikona line-SVG 16px, lewa krawędź równo z nazwą i pineską — */
.tf-side-phone{margin:12px 0 0}
.tf-side-phone .phones-container{margin:0 !important}
.public-info-sidebar .tf-side-phone .phone-link{
  font-size:16px !important;font-weight:700;margin:0 !important;color:var(--tf-ink) !important;
  padding-left:24px !important;
}
.tf-side-phone .phone-link:before{
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF3B46' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.81.36 1.6.7 2.34a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.74-1.27a2 2 0 0 1 2.11-.45c.74.34 1.53.57 2.34.7A2 2 0 0 1 22 16.92z'/></svg>") center center/16px 16px no-repeat !important;
  width:16px !important;height:16px !important;
  left:0 !important;top:50% !important;transform:translateY(-50%) !important;
}
.tf-side-phone .phone-slot-text small{font-size:11px;font-weight:600;color:#8f8a94;margin-left:5px}
/* — zwijany adres odbioru — */
.tf-addr-toggle{
  display:inline-flex;align-items:center;gap:8px;
  background:none;border:0;padding:0;margin:14px 0 0;cursor:pointer;
  font-size:13px;font-weight:600;color:#6c6a76;-webkit-appearance:none;appearance:none;
}
.tf-addr-toggle:hover{color:var(--tf-ink)}
.tf-addr-pin{width:16px;height:16px;flex:0 0 16px;color:var(--tf-brand)}
.tf-addr-chev{width:13px;height:13px;flex:0 0 13px;transition:transform .2s ease}
.tf-addr-toggle.is-open .tf-addr-chev{transform:rotate(180deg)}
.tf-addr{margin:10px 0 0;font-size:13px;line-height:1.55;color:#6c6a76}
.tf-addr address{font-style:normal;margin:0}
.tf-addr a{display:inline-block;margin-top:7px;color:var(--tf-brand-ink);font-weight:600;text-decoration:none}
.tf-addr a:hover{text-decoration:underline}
/* — separator — */
.tf-side-sep{height:1px;background:var(--tf-line);margin:16px 0}
/* — JEDNA karta dostawy — */
.tf-deliv{
  margin-top:12px;border:1px solid var(--tf-line);border-radius:14px;
  background:#faf9f7;padding:12px 13px;
}
.tf-deliv-sameday{
  display:flex;align-items:center;gap:7px;margin:0 0 11px;
  background:#e7f7ee;color:#12793e;border:1px solid #c7ecd5;border-radius:10px;
  padding:7px 10px;font-size:12px;font-weight:800;letter-spacing:.01em;line-height:1.2;
}
.tf-deliv-sameday svg{width:15px;height:15px;flex:0 0 15px;color:#17a44f}
.tf-deliv-row{display:flex;align-items:center;gap:11px}
.tf-deliv-ico{
  flex:0 0 36px;width:36px;height:36px;border-radius:11px;
  display:inline-flex;align-items:center;justify-content:center;
  background:#fff;border:1px solid var(--tf-line);color:var(--tf-brand-ink);
}
.tf-deliv-ico svg{width:19px;height:19px}
.tf-deliv-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.tf-deliv-main{font-size:14px;font-weight:700;color:var(--tf-ink);line-height:1.2}
.tf-deliv-sub{font-size:11.5px;color:#8f8a94;line-height:1.3}
.tf-deliv-toggle{
  flex:0 0 auto;border:0;background:none;color:#9a959e;cursor:pointer;padding:4px;
  display:inline-flex;align-items:center;justify-content:center;
}
.tf-deliv-toggle svg{width:17px;height:17px;transition:transform .2s ease}
.tf-deliv-toggle.is-open svg{transform:rotate(180deg)}
.tf-deliv-eta{
  display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:10px;
  border-top:1px dashed #e7e4de;font-size:12px;font-weight:600;color:#3f8a5a;
}
.tf-deliv-eta svg{width:15px;height:15px;flex:0 0 15px;color:#2ea043}
.tf-deliv-list{list-style:none;margin:10px 0 0;padding:10px 0 0;border-top:1px dashed #e7e4de}
.tf-deliv-list li{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:4px 0;font-size:13px;color:var(--tf-ink)}
.tf-deliv-list li small{display:block;font-size:10.5px;color:#a09aa0;font-weight:400;margin-top:1px}
.tf-deliv-list li strong{white-space:nowrap;font-weight:700}
/* dostawy pogrupowane wg płatności (z góry / przy odbiorze) w panelu bocznym oferty */
.tf-deliv-groups{margin-top:2px}
.tf-deliv-group-title{margin:10px 0 0;padding-top:10px;border-top:1px dashed #e7e4de;
  font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#8f8a94}
.tf-deliv-groups .tf-deliv-list{margin-top:2px;padding-top:2px;border-top:0}
/* nota bezpieczeństwa — drobna, wyśrodkowana */
.public-info-sidebar .tf-buy-safety{font-size:11px;color:#a8a2ac;line-height:1.45;margin:11px 2px 0;text-align:center}
/* — ochrona kupujących (rozwijane) — */
.tf-protect{margin-top:12px}
.tf-protect-toggle{
  display:flex;align-items:center;gap:8px;width:100%;
  background:#f6f7f9;border:1px solid var(--tf-line);border-radius:12px;
  padding:10px 12px;cursor:pointer;text-align:left;
  font-size:12.5px;font-weight:700;color:var(--tf-ink);
  -webkit-appearance:none;appearance:none;transition:background .18s ease;
}
.tf-protect-toggle:hover{background:#eef0f3}
.tf-protect-shield{width:17px;height:17px;flex:0 0 17px;color:#2ea043}
.tf-protect-chev{width:14px;height:14px;flex:0 0 14px;margin-left:auto;color:#9a959e;transition:transform .2s ease}
.tf-protect-toggle.is-open .tf-protect-chev{transform:rotate(180deg)}
.tf-protect-body{padding:10px 12px 2px;font-size:12px;line-height:1.55;color:#6c6a76}
.tf-protect-body p{margin:0}
.tf-protect-body strong{color:var(--tf-ink);font-weight:700}
/* — akcje dolne — */
.tf-side-actions{margin-top:16px;display:flex;flex-direction:column;gap:9px}
.tf-side-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  height:47px;border-radius:var(--tf-r-pill);text-decoration:none;
  font-size:14px;font-weight:700;letter-spacing:.01em;
  transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.tf-side-btn svg{width:17px;height:17px;flex:0 0 17px}
.tf-side-btn-primary{background:var(--tf-ink);color:#fff}
.tf-side-btn-primary:hover{background:#000;color:#fff;transform:translateY(-1px);box-shadow:0 10px 22px -12px rgba(20,16,25,.6)}
.tf-side-btn-ghost{background:#f5f4f1;color:var(--tf-ink);font-weight:600}
.tf-side-btn-ghost:hover{background:#efedea;color:var(--tf-ink)}
.tf-side-actions .tf-own-notice{margin:0}

/* ==========================================================================
   v2026zz9 — pasek „faza demonstracyjna / beta" (master.blade, #tf-beta-bar)
   ========================================================================== */
.tf-beta-bar{background:#141019;color:#f5f4f1;font-size:13.5px;line-height:1.45;position:relative;z-index:1200}
.tf-beta-bar .container{display:flex;align-items:center;gap:10px;padding-top:9px;padding-bottom:9px}
.tf-beta-bar svg{width:17px;height:17px;flex:0 0 auto;color:#ffc862}
.tf-beta-bar strong{color:#ffc862;font-weight:700}
.tf-beta-close{background:none;border:0;color:#f5f4f1;font-size:20px;line-height:1;margin-left:auto;padding:2px 6px;cursor:pointer;opacity:.75}
.tf-beta-close:hover{opacity:1}
@media (max-width:575.98px){ .tf-beta-bar{font-size:12.5px} }
/* koszyk — link „Kontynuuj zakupy" pod przyciskiem kasy */
.tf-cart-continue{display:block;text-align:center;margin-top:12px;font-size:14px;font-weight:600;color:var(--tf-ink);text-decoration:none}
.tf-cart-continue:hover{color:#C2102A;text-decoration:underline}

/* ==========================================================================
   v2026zz11 — sloty reklamowe (partial partials/ad-slot.blade.php)
   Slot renderuje się TYLKO gdy jest aktywna reklama — brak pustych boxów.
   ========================================================================== */
.tf-ad{position:relative;margin:18px auto}
.tf-ad a{display:block;line-height:0}
.tf-ad img{max-width:100%;height:auto;border-radius:14px;display:block;margin:0 auto}
.tf-ad-cap{position:absolute;top:6px;right:12px;z-index:2;background:rgba(20,16,25,.55);color:#fff;
  font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:6px;pointer-events:none}
/* billboard na home i paski nad wynikami/stopką trzymają szerokość treści */
.tf-ad--home-billboard,.tf-ad--footer{max-width:1200px;padding:0 15px}
.tf-ad--home-billboard{margin-top:26px}
.tf-ad--footer{margin-bottom:26px}
.tf-ad--listing-czesci,.tf-ad--listing-pojazdy{margin:0 0 18px}
/* boks na stronie ogłoszenia — pełna szerokość kolumny bocznej */
.tf-ad--offer-sidebar{margin:14px 0 0}
.tf-ad--offer-sidebar img{width:100%}
/* baner w blogu — ZAWSZE pełna szerokość kolumny z wpisami (2026-07-10):
   grafika rozciąga się do szerokości listy ciekawostek, proporcje zachowane */
.tf-ad--blog{margin:0 0 22px;max-width:none;padding:0}
.tf-ad--blog img{width:100%;height:auto}
/* kafelek sponsorowany w Ofertach dnia */
.tf-ad-tile .product-details{color:#8b8693;text-transform:uppercase;font-size:11px;letter-spacing:.06em}
@media (max-width:575.98px){ .tf-ad{margin:12px auto} .tf-ad img{border-radius:10px} }

/* ============================================================
   v2026mob1 — POPRAWKI MOBILNE (2026-07-16)
   ============================================================ */

/* MENU MOBILNE: backdrop-filter na .header-primary tworzy containing block
   dla position:fixed, przez co pełnoekranowe menu 2019 miało wysokość 0
   (liczone od ~72px headera). Zamiast wyłączać szkło — menu jest teraz
   dropdownem pod headerem, pozycjonowanym absolutnie względem niego. */
@media (max-width:991.98px){
  .header-primary-nav{
    position:absolute !important;
    top:100% !important; left:0 !important; right:0 !important; bottom:auto !important;
    height:auto !important; max-height:calc(100vh - 96px);
    overflow:auto;
    background:#fff !important;
    box-shadow:0 18px 30px rgba(15,23,42,.16);
    border-top:1px solid rgba(15,23,42,.06);
    border-radius:0 0 18px 18px;
    padding:8px 14px 16px;
    z-index:1100 !important;
  }
  .header-primary-nav > ul{padding-left:0;margin-bottom:0}
  .header-primary-nav ul li a{font-size:16.5px;padding:13px 16px !important}
  .header-primary-nav .btn-primary{display:block;text-align:center;margin:10px 6px 6px}
}

/* PASEK BETA: na telefonie zajmował ~1/4 ekranu — klampujemy opis do 3 linii */
@media (max-width:575.98px){
  .tf-beta-bar .container{padding-top:7px;padding-bottom:7px}
  .tf-beta-bar span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:12px}
}

/* v2026mob1: logowanie społecznościowe tymczasowo nieaktywne (brak kluczy);
   przyciski zostają widoczne z plakietką „wkrótce" */
.tf-soon-login{pointer-events:none;opacity:.55;position:relative;filter:grayscale(.35)}
.tf-soon-pill{position:absolute;top:-7px;right:14px;background:#ffc862;color:#3d2b00;font-size:10.5px;font-weight:700;line-height:1;padding:4px 8px;border-radius:999px;letter-spacing:.4px;text-transform:uppercase;opacity:1}

/* v2026mob1: kompaktowa sticky-wyszukiwarka na wąskich ekranach —
   select kategorii ucinał się do „Wszyst"; poniżej 520px chowamy go
   (szukanie działa wtedy we „wszystkich kategoriach") i oddajemy
   miejsce polu tekstowemu */
@media (max-width:519.98px){
  .tf-sticky-search select, .tf-sticky-search .tf-ss-cat{display:none !important}
  .tf-ss-inner{padding:9px 12px;gap:10px}
  .tf-ss-logo img{height:26px}
}

/* ============================================================
   v2026mob2 — MOBILE POLISH (2026-07-16)
   Menu = pływający arkusz (jak sheet w iOS) + scrim; kapsuła
   wyszukiwarki hero z oddechem; 16px w polach (brak zoomu iOS).
   ============================================================ */
@media (max-width:991.98px){

  /* --- MENU: arkusz zamiast pełnej szerokości (rogi, ramka, głęboki cień) --- */
  .header-primary-nav{
    left:10px !important; right:10px !important;
    top:calc(100% + 8px) !important;
    border-radius:22px;
    border:1px solid rgba(15,23,42,.07);
    box-shadow:0 24px 60px -16px rgba(15,23,42,.38);
    padding:8px 8px 12px;
    max-height:calc(100dvh - 150px);
  }
  .header-primary-nav ul li a{
    border-radius:14px !important;
    font-size:17px; font-weight:600; letter-spacing:.2px;
    padding:14px 18px !important;
  }
  .header-primary-nav ul li a:active{background:rgba(15,23,42,.08)}
  .header-primary-nav .btn-primary{
    display:block; text-align:center;
    margin:10px 8px 4px; padding:14px 18px; border-radius:16px;
  }

  /* --- SCRIM: przyciemnienie + rozmycie treści pod otwartym menu --- */
  body.tf-menu-open::after{
    content:''; position:fixed; inset:0; z-index:1040;
    background:rgba(13,16,23,.44);
    -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px);
    animation:tfScrimIn .22s ease;
  }
  @keyframes tfScrimIn{from{opacity:0}to{opacity:1}}
  body.tf-menu-open .header-sticky{z-index:1060} /* header+menu nad scrimem TYLKO przy otwartym menu
     (stałe z-index tworzyło warstwę, która na iOS malowała okruszki NAD sticky-paskiem) */
  body.tf-menu-open .tf-beta-bar{visibility:hidden} /* pasek beta nie świeci nad scrimem */

  /* --- WYSZUKIWARKA HERO: trzy elementy z oddechem, jedna geometria --- */
  .search-primary-section .search-main .row{margin-left:0;margin-right:0}
  .search-main .input-box .input-primary,
  .search-main .select-primary-input{
    height:54px !important; line-height:54px;
    border-radius:16px !important;
    border:1px solid rgba(15,23,42,.08) !important;
    background:#fff !important;
    font-size:16px !important;            /* iOS nie przybliża pól ≥16px */
    box-shadow:0 1px 2px rgba(15,23,42,.05) !important;
    padding-left:18px !important;
  }
  .search-main .input-box{margin-bottom:10px}
  .search-main .select-primary{margin-bottom:10px}
  .search-main .select-primary-input{width:100%;text-align:left}
  .search-main .btn-search{
    height:54px !important; border-radius:16px !important;
    box-shadow:0 10px 22px -10px rgba(224,82,45,.55) !important;
  }
  .search-main .btn-search .btn-text::after{
    content:'Szukaj'; color:#fff; font-size:17px; font-weight:700;
    margin-left:10px; letter-spacing:.3px;
  }
  /* rozwijana lista kategorii w kapsule — ta sama geometria co arkusz menu */
  .search-main .select-primary-dropdown{
    border-radius:16px; overflow:hidden;
    border:1px solid rgba(15,23,42,.07);
    box-shadow:0 18px 44px -14px rgba(15,23,42,.35);
  }
  .search-main .select-primary-dropdown ul li{
    font-size:16px; padding:13px 18px;
  }
}

/* v2026mob2: detale dotykowe — bez szarego błysku przy tapnięciu,
   bez podwójnego tapnięcia/zoomu na przyciskach */
@media (max-width:991.98px){
  a, button, .hamburger{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
}

/* ============================================================
   v2026mob3 — WYSZUKIWARKA = JEDNA KAPSUŁA (2026-07-16)
   Pole + kategoria + okrągła lupa w jednym zaokrąglonym kontenerze
   (home i listingi — oba partiale mają .offset-lg-2 > .row).
   Nadpisuje style pól z v2026mob2 wewnątrz kapsuły.
   ============================================================ */
@media (max-width:991.98px){
  .search-main .offset-lg-2 > .row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:'szukaj szukaj' 'kategoria lupa';
    align-items:center;
    margin:0;
    background:#fff;
    border:1px solid rgba(15,23,42,.08);
    border-radius:22px;
    box-shadow:0 14px 34px -16px rgba(15,23,42,.28);
    padding:2px 6px;
    overflow:visible;             /* dropdown kategorii może wystawać */
  }
  .search-main .offset-lg-2 > .row > div{padding:0}

  /* wiersz 1: pole na całą szerokość + cienka linia pod spodem */
  .search-main .offset-lg-2 > .row > div:nth-child(1){
    grid-area:szukaj;
    border-bottom:1px solid rgba(15,23,42,.07);
  }
  .search-main .input-box{margin:0 !important}
  .search-main .input-box .input-primary{
    border:0 !important; box-shadow:none !important; background:transparent !important;
    height:50px !important; line-height:50px;
    font-size:16px !important; padding:0 14px !important;
    border-radius:0 !important;
  }

  /* wiersz 2: kategoria (rośnie) + lupa (kółko) */
  .search-main .offset-lg-2 > .row > div:nth-child(2){grid-area:kategoria; width:auto; max-width:none; min-width:0}
  .search-main .select-primary{margin:0 !important}
  .search-main .select-primary-input{
    border:0 !important; box-shadow:none !important; background:transparent !important;
    height:50px !important; line-height:50px;
    font-size:15.5px !important; padding:0 26px 0 14px !important;
    border-radius:0 !important; width:100%; text-align:left;
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  }
  .search-main .offset-lg-2 > .row > div:nth-child(3){grid-area:lupa; width:auto; max-width:none}
  .search-main .btn-search{
    width:44px !important; height:44px !important; min-width:44px !important;
    border-radius:50% !important; padding:0 !important;
    margin:5px 2px 5px 6px;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 8px 18px -8px rgba(224,82,45,.6) !important;
  }
  .search-main .btn-search .btn-text::after{content:none}   /* w kapsule sama lupa */
  .search-main .btn-search img{width:19px;height:19px}

  /* dropdown kategorii pod kapsułą, pełna szerokość kapsuły */
  .search-main .select-primary-dropdown{
    left:-6px; right:auto; min-width:calc(100% + 12px);
    margin-top:10px;
  }
}

/* v2026mob3: lupa w kapsule — twarde koło (longhandy biją shorthand z motywu) */
@media (max-width:991.98px){
  .search-main .offset-lg-2 > .row .btn-search{
    border-top-left-radius:50% !important;
    border-top-right-radius:50% !important;
    border-bottom-left-radius:50% !important;
    border-bottom-right-radius:50% !important;
  }
}

/* ============================================================
   v2026mob4 — STICKY PASEK NA MOBILE (2026-07-16)
   1) Tło niemal kryjące — na iOS backdrop-filter potrafi nie zadziałać
      i przez półprzezroczysty (82%) pasek „prześwitywał" tytuł oferty.
   2) Logo przycięte do znaczka MK (pełny logotyp zjadał 159px z 375).
   3) Pole dostaje realną szerokość; 16px = brak auto-zoomu iOS.
   ============================================================ */
@media (max-width:991.98px){
  .tf-sticky-search{background:#fff}
}
@media (max-width:519.98px){
  .tf-ss-inner{padding:8px 10px;gap:10px}
  .tf-ss-logo{width:31px;flex:0 0 31px;overflow:hidden;border-radius:9px}
  .tf-ss-logo img{height:26px;max-width:none}
  .tf-sticky-search .tf-ss-input{padding:0 14px !important;font-size:16px !important}
}

/* ============================================================
   v2026dlg — DIALOGI I POWIADOMIENIA (2026-07-16)
   Zamiennik natywnych alert()/confirm() — spójne ze stylem serwisu.
   ============================================================ */
.tf-dlg-overlay{
  position:fixed;inset:0;z-index:2000;
  display:flex;align-items:center;justify-content:center;
  padding:20px;
  background:rgba(13,16,23,.46);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  opacity:0;transition:opacity .2s ease;
}
.tf-dlg-overlay.show{opacity:1}
.tf-dlg{
  width:100%;max-width:420px;
  background:#fff;border-radius:var(--tf-r-card);
  box-shadow:var(--tf-shadow);
  padding:26px 26px 22px;
  transform:translateY(12px) scale(.98);
  transition:transform .24s cubic-bezier(.22,1,.36,1);
  font-family:inherit;
}
.tf-dlg-overlay.show .tf-dlg{transform:none}
.tf-dlg-ico{
  width:52px;height:52px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  margin:0 0 14px;
}
.tf-dlg-ico svg{width:26px;height:26px;stroke-width:2.2}
.tf-dlg-ico.info{background:#fff1ec;color:var(--tf-brand-ink)}
.tf-dlg-ico.success{background:#e8f6ec;color:#1f9d55}
.tf-dlg-ico.warn{background:#fff6e6;color:#b7791f}
.tf-dlg-ico.danger{background:#fdecec;color:#d64545}
.tf-dlg h3{
  margin:0 0 8px;font-family:'Space Grotesk','Inter',sans-serif;
  font-size:20px;font-weight:700;color:var(--tf-ink);line-height:1.25;
}
.tf-dlg p{margin:0;font-size:15px;line-height:1.6;color:#4a4550}
.tf-dlg p a{color:var(--tf-brand-ink);font-weight:600}
.tf-dlg-foot{display:flex;gap:10px;margin-top:22px;justify-content:flex-end;flex-wrap:wrap}
.tf-dlg-btn{
  appearance:none;border:0;cursor:pointer;font-family:inherit;
  font-size:15px;font-weight:600;padding:12px 20px;border-radius:var(--tf-r-pill);
  transition:transform .2s,box-shadow .2s,filter .2s,background-color .2s;
  text-decoration:none;display:inline-flex;align-items:center;gap:8px;
}
.tf-dlg-btn-primary{background:var(--tf-grad);color:#fff;box-shadow:0 10px 24px -12px rgba(255,59,70,.6)}
.tf-dlg-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.05);color:#fff}
.tf-dlg-btn-danger{background:#d64545;color:#fff}
.tf-dlg-btn-danger:hover{transform:translateY(-1px);filter:brightness(1.05);color:#fff}
.tf-dlg-btn-ghost{background:#f3f1ec;color:var(--tf-ink)}
.tf-dlg-btn-ghost:hover{background:#e9e6df}
@media (max-width:520px){
  .tf-dlg{padding:22px 20px 18px}
  .tf-dlg h3{font-size:18px}
  .tf-dlg-foot{margin-top:18px}
  .tf-dlg-foot .tf-dlg-btn{flex:1 1 auto;justify-content:center}
}

/* toast — krótkie potwierdzenia (dodano do ulubionych itp.) */
.tf-toast-wrap{
  position:fixed;left:0;right:0;bottom:22px;z-index:2100;
  display:flex;flex-direction:column;align-items:center;gap:10px;
  pointer-events:none;padding:0 16px;
}
.tf-toast{
  pointer-events:auto;max-width:440px;width:auto;
  display:flex;align-items:center;gap:12px;
  background:var(--tf-ink);color:#fff;
  padding:13px 18px;border-radius:16px;
  box-shadow:0 18px 40px -16px rgba(13,16,23,.5);
  font-size:14.5px;font-weight:500;line-height:1.4;
  transform:translateY(18px);opacity:0;
  transition:transform .3s cubic-bezier(.22,1,.36,1),opacity .3s ease;
}
.tf-toast.show{transform:none;opacity:1}
.tf-toast-ico{flex:0 0 auto;width:20px;height:20px;display:flex}
.tf-toast-ico svg{width:20px;height:20px;stroke-width:2.2}
.tf-toast.success .tf-toast-ico{color:#5be584}
.tf-toast.danger .tf-toast-ico{color:#ff8a8a}
.tf-toast.info .tf-toast-ico{color:#ffb27a}
