/* go24.pl - style (mobile-first: najpierw telefon, potem szersze ekrany) */
:root {
  --tlo: #f6f6f3; --karta: #ffffff; --tekst: #1c1f1b; --szary: #5d655b; --linia: #e1e3dc;
  --akcent: #2f7d32; --na-akcencie: #ffffff; --cien: 0 1px 3px rgba(20,25,20,.08);
  --r: 10px; --odstep: 16px;
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --tlo: #121412; --karta: #1b1e1b; --tekst: #e8ebe6; --szary: #a3aaa0; --linia: #2c302b;
    --cien: 0 1px 3px rgba(0,0,0,.4); color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --tlo: #121412; --karta: #1b1e1b; --tekst: #e8ebe6; --szary: #a3aaa0; --linia: #2c302b;
  --cien: 0 1px 3px rgba(0,0,0,.4); color-scheme: dark;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; font-size: 100%; }
/* rozmiar tekstu: style="font-size:N%" na <html> z ciastka go24_rozmiar (80-140%, user 27.10) */
body {
  margin: 0; background: var(--tlo); color: var(--tekst);
  font: 1rem/1.5 system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  padding-bottom: calc(64px + env(safe-area-inset-bottom));   /* miejsce na dolne menu na telefonie */
}
a { color: inherit; }
img { max-width: 100%; height: auto; }
:focus-visible { outline: 3px solid var(--akcent); outline-offset: 2px; }

/* ---------- gorny pasek ---------- */
.gora { background: var(--karta); border-bottom: 1px solid var(--linia); position: sticky; top: 0; z-index: 20; }
.gora__w { display: grid; grid-template-columns: 1fr auto; gap: 8px; padding: 10px var(--odstep); align-items: center; max-width: 1240px; margin: 0 auto; }
.logo { font-weight: 800; font-size: 1.35rem; text-decoration: none; letter-spacing: -.02em; white-space: nowrap; }
.logo span { color: var(--akcent); }
.logo .logo__sub { color: var(--akcent); }   /* moto. / moda. / dom. przed go24.pl */
.szukaj { grid-column: 1 / -1; display: flex; }
.szukaj input { flex: 1; min-width: 0; font: inherit; padding: 10px 12px; border: 1px solid var(--linia); border-right: 0;
  border-radius: var(--r) 0 0 var(--r); background: var(--tlo); color: var(--tekst); }
.szukaj button { font: inherit; font-weight: 600; padding: 0 16px; border: 0; border-radius: 0 var(--r) var(--r) 0;
  background: var(--akcent); color: var(--na-akcencie); cursor: pointer; }
/* user 28.10: obwodka fokusu wokol calego pola z przyciskiem „Szukaj”, a nie na samym polu (nachodzila na przycisk) */
.szukaj { border-radius: var(--r); }
.szukaj input:focus-visible, .szukaj button:focus-visible { outline: none; }
.szukaj:focus-within { outline: 3px solid var(--akcent); outline-offset: 2px; }
.btn { display: inline-block; font: inherit; font-weight: 700; text-decoration: none; border: 0; border-radius: var(--r);
  background: var(--akcent); color: var(--na-akcencie); padding: 10px 14px; cursor: pointer; text-align: center; }
.btn--dodaj { display: none; }   /* na telefonie dodawanie jest w dolnym menu */
.btn--duzy { padding: 14px 22px; font-size: 1.05rem; width: 100%; }

.sekcje { display: flex; gap: 4px; overflow-x: auto; padding: 0 var(--odstep) 8px; max-width: 1240px; margin: 0 auto; scrollbar-width: none; }
.sekcje a { text-decoration: none; padding: 6px 12px; border-radius: 999px; white-space: nowrap; font-weight: 600; font-size: .92rem; color: var(--szary); }
.sekcje a[aria-current="page"] { background: var(--akcent); color: var(--na-akcencie); }

/* przelaczniki: rozmiar tekstu i tryb jasny/ciemny */
.przelaczniki { display: flex; gap: 6px; justify-self: end; grid-row: 1; grid-column: 2; }   /* telefon: obok logo */
.przel { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0 8px;
  border: 1px solid var(--linia); border-radius: var(--r); text-decoration: none; font-weight: 700; color: var(--tekst); background: var(--karta); }
.przel__a { font-size: .8rem; line-height: 1; }
.przel__a--duze { font-size: 1.1rem; margin-left: 1px; }

/* ---------- tresc ---------- */
.tresc { max-width: 1240px; margin: 0 auto; padding: var(--odstep); }
.hero { background: var(--karta); border-radius: var(--r); box-shadow: var(--cien); padding: 20px var(--odstep); }
.hero h1 { margin: 0 0 12px; font-size: 1.5rem; line-height: 1.2; text-wrap: balance; }
.korzysci { list-style: none; margin: 0 0 16px; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.korzysci li { background: var(--tlo); border-radius: 8px; padding: 8px 10px; font-size: .9rem; color: var(--szary); }
.korzysci b { display: block; color: var(--tekst); font-size: 1.05rem; }

.kafle-sekcji { display: grid; gap: 10px; margin-top: 16px; }
.kafel { display: block; text-decoration: none; background: var(--karta); border-radius: var(--r); box-shadow: var(--cien);
  padding: 16px; border-left: 6px solid var(--k, var(--akcent)); }
.kafel b { display: block; font-size: 1.2rem; }
.kafel span { color: var(--szary); font-size: .92rem; }

.stopka { max-width: 1240px; margin: 32px auto 0; padding: 20px var(--odstep) calc(24px + 3em); border-top: 1px solid var(--linia); color: var(--szary); font-size: .9rem; text-align: center; }

/* ---------- dolne menu (telefon) ---------- */
.dol { position: fixed; left: 0; right: 0; bottom: 0; z-index: 30; display: grid; grid-template-columns: repeat(5, 1fr);
  background: color-mix(in srgb, var(--akcent) 18%, var(--tlo)); border-top: 1px solid color-mix(in srgb, var(--akcent) 40%, var(--linia));
  box-shadow: 0 -2px 10px rgba(20,25,20,.12); padding-bottom: env(safe-area-inset-bottom); }   /* wyraznie odroznione od strony (user 24.10) */
.dol a { text-decoration: none; text-align: center; padding: 12px 2px; font-size: .78rem; font-weight: 600; color: var(--szary); }
.dol .dol__dodaj { color: var(--na-akcencie); background: var(--akcent); border-radius: 12px; margin: 6px 4px; padding: 8px 2px; }

/* ---------- tablet / komputer ---------- */
@media (min-width: 760px) {
  body { padding-bottom: 0; }
  .dol { display: none; }
  .gora__w { grid-template-columns: auto 1fr auto auto; gap: 16px; }
  .szukaj { grid-column: auto; }
  .przelaczniki { grid-row: auto; grid-column: auto; }
  .btn--dodaj { display: inline-block; }
  .hero { padding: 32px; }
  .hero h1 { font-size: 2rem; }
  .korzysci { grid-template-columns: repeat(4, 1fr); }
  .btn--duzy { width: auto; }
  .kafle-sekcji { grid-template-columns: repeat(3, 1fr); }
}
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }

/* ---------- formularze ---------- */
[hidden] { display: none !important; }   /* klasy z display (grid/flex) nie moga wygrywac z atrybutem hidden */
.tytul-strony { font-size: 1.4rem; margin: 4px 0 16px; text-wrap: balance; }
.komunikat { border-radius: var(--r); padding: 12px 14px; margin-bottom: 16px; font-weight: 600; }
.komunikat--ok { background: color-mix(in srgb, #2f7d32 15%, var(--karta)); }
.komunikat--blad { background: color-mix(in srgb, #c43b3b 15%, var(--karta)); }
.komunikat--info { background: color-mix(in srgb, #2563eb 12%, var(--karta)); font-weight: 500; }
.formularz { display: grid; gap: 14px; }
.grupa { background: var(--karta); border: 0; border-radius: var(--r); box-shadow: var(--cien); padding: 14px var(--odstep) 16px; margin: 0; min-width: 0; }
.grupa legend { float: left; width: 100%; font-weight: 800; font-size: 1.05rem; margin-bottom: 10px; padding: 0; }
.grupa summary { font-weight: 800; font-size: 1.05rem; cursor: pointer; padding: 2px 0; list-style-position: inside; }
.grupa summary small { font-weight: 500; color: var(--szary); }
details.grupa[open] summary { margin-bottom: 12px; }
.pola { clear: both; display: grid; gap: 14px; }
.pole { display: grid; gap: 5px; min-width: 0; align-content: start; }   /* user 23.10: pola w rzedzie nie rozciagaja sie do najwyzszego */
.pole__et { font-weight: 600; font-size: .92rem; }
.wym { color: #c43b3b; }
.pole__pod { color: var(--szary); font-size: .82rem; }
.pole__blad { color: #c43b3b; font-weight: 600; font-size: .85rem; }
.pole--blad input, .pole--blad select { border-color: #c43b3b; }
.pole input[type=text], .pole input[type=month], .pole input[type=tel], .pole input[type=email], .pole input[type=password], .pole input[type=number], .pole input[type=date], .pole input[type=url], .pole select {
  font: inherit; width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid var(--linia); border-radius: var(--r);
  background: var(--tlo); color: var(--tekst); }
.pole select:disabled { opacity: .55; }
.z-jednostka { display: flex; max-width: 280px; border-radius: var(--r); margin: 4px 0; }   /* liczby z jednostka: cena, przebieg, metraz - nie na cala szerokosc (user 23.10) */
.z-jednostka input { min-width: 0; flex: 1; }
.z-jednostka input:focus-visible { outline: none; }
.z-jednostka:focus-within { outline: 3px solid var(--akcent); outline-offset: 2px; }   /* obwodka wokol pola razem z „zł”, nie na nim */
.z-jednostka input { border-radius: var(--r) 0 0 var(--r) !important; }
.z-jednostka span { display: flex; align-items: center; padding: 0 12px; border: 1px solid var(--linia); border-left: 0;
  border-radius: 0 var(--r) var(--r) 0; background: var(--karta); color: var(--szary); font-size: .9rem; white-space: nowrap; }
.segment { display: flex; flex-wrap: wrap; gap: 6px; }
.segment label, .chip { cursor: pointer; }
.segment input, .chip input { position: absolute; opacity: 0; pointer-events: none; }
.segment span, .chip span { display: inline-block; min-height: 40px; padding: 9px 14px; border: 1px solid var(--linia); border-radius: 999px;
  background: var(--tlo); font-size: .92rem; user-select: none; }
.segment input:checked + span, .chip input:checked + span { background: var(--akcent); color: var(--na-akcencie); border-color: var(--akcent); }
.segment input:focus-visible + span, .chip input:focus-visible + span { outline: 3px solid var(--akcent); outline-offset: 2px; }
.chipy { display: flex; flex-wrap: wrap; gap: 6px; }
@media (min-width: 760px) {
  .pola { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pole--szerokie { grid-column: 1 / -1; }
}
@media (min-width: 1100px) { .pola { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* ---------- kreator dodawania (krok po kroku) ---------- */
.kreator { max-width: none; margin: 0; }   /* user 22.10: na szerokosc layoutu */
.kreator__gora { display: flex; align-items: center; gap: 10px; min-height: 44px; }
.kreator__wstecz { text-decoration: none; font-weight: 700; padding: 8px 4px; }
.kreator__licznik { color: var(--szary); font-size: .9rem; }
.kreator__sciezka { color: var(--szary); font-size: .88rem; }
.kreator__pomin { margin-left: auto; }
.btn--jasny { background: var(--karta); color: var(--tekst); border: 1px solid var(--linia); }
.postep { height: 6px; background: var(--linia); border-radius: 99px; overflow: hidden; margin: 4px 0 14px; }
.postep span { display: block; height: 100%; background: var(--akcent); }
.kreator__kategoria { margin: 0; color: var(--szary); font-size: .88rem; }
.kreator__pytanie { font-size: 1.45rem; margin: 2px 0 16px; text-wrap: balance; }
.znaczek-opcj { display: inline-block; margin: 8px 0 0; padding: 5px 12px; border-radius: 999px; font-weight: 700; font-size: .9rem;
  background: color-mix(in srgb, var(--akcent) 14%, var(--karta)); color: color-mix(in srgb, var(--akcent) 65%, var(--tekst)); border: 1px solid color-mix(in srgb, var(--akcent) 40%, transparent); }
.kreator__pomin .btn { padding: 10px 18px; font-size: 1rem; border: 2px solid var(--akcent); color: color-mix(in srgb, var(--akcent) 65%, var(--tekst)); background: var(--karta); }
.kreator__dol { position: sticky; bottom: calc(64px + env(safe-area-inset-bottom)); padding: 10px 0; background: linear-gradient(transparent, var(--tlo) 30%); }
.kafle { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.kafle--male { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.kafelek { display: flex; flex-direction: column; justify-content: center; gap: 4px; min-height: 64px; padding: 12px 14px; text-align: left;
  font: inherit; color: var(--tekst); text-decoration: none; background: var(--karta); border: 1px solid var(--linia); border-left: 5px solid var(--k, var(--akcent));
  border-radius: var(--r); box-shadow: var(--cien); cursor: pointer; }
.kafelek b { font-size: 1.02rem; }
.kafelek small { color: var(--szary); font-size: .85rem; }
.kafelek:active { transform: translateY(1px); }
.kafelek--wybrany { background: var(--akcent); color: var(--na-akcencie); border-color: var(--akcent); }
.kafle__szukaj { width: 100%; font: inherit; min-height: 46px; padding: 10px 12px; margin-bottom: 12px; border: 1px solid var(--linia); border-radius: var(--r); background: var(--karta); color: var(--tekst); }
.kafle__naglowek { margin: 14px 0 8px; font-weight: 700; color: var(--szary); font-size: .88rem; text-transform: uppercase; letter-spacing: .05em; }
.pola--jedna { grid-template-columns: 1fr !important; }
.pole textarea { font: inherit; width: 100%; padding: 10px 12px; border: 1px solid var(--linia); border-radius: var(--r); background: var(--tlo); color: var(--tekst); resize: vertical; }
.podsumowanie { display: grid; grid-template-columns: auto 1fr; gap: 6px 14px; margin: 0; }
.podsumowanie dt { color: var(--szary); }
.podsumowanie dd { margin: 0; font-weight: 600; }
@media (min-width: 760px) {
  .kafle { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .kafle--male { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .kreator__dol { bottom: 0; }
}

/* ---------- ikony (Material Symbols, public/img/ikony.svg) ---------- */
.ik { width: 24px; height: 24px; fill: currentColor; flex: none; vertical-align: middle; }
.ik--nav { width: 18px; height: 18px; margin-right: 5px; vertical-align: -3px; }
.ik--kafel { width: 30px; height: 30px; color: var(--k, var(--akcent)); }
.kafelek .ik--kafel, .kafel .ik--kafel { margin-bottom: 2px; }
.kafelek--wybrany .ik--kafel { color: inherit; }
.sekcje a[aria-current="page"] .ik--nav { color: inherit; }

/* ---------- konto: logowanie, rejestracja ---------- */
.wasko { max-width: 520px; margin: 0 auto; }
.karta-form { background: var(--karta); border-radius: var(--r); box-shadow: var(--cien); padding: 18px var(--odstep); display: grid; gap: 14px; }
.karta-form .pole input { font: inherit; width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid var(--linia); border-radius: var(--r); background: var(--tlo); color: var(--tekst); }
.pole-kod { font-size: 1.6rem !important; letter-spacing: .35em; text-align: center; }
.check { display: flex; gap: 10px; align-items: flex-start; font-size: .95rem; line-height: 1.4; }
.check input { width: 22px; height: 22px; flex: none; margin: 0; accent-color: var(--akcent); }
.check--blad { color: #c43b3b; }
.male-linki { margin: 0; text-align: center; font-size: .95rem; }
.pod-formularzem, .pod-tytulem { color: var(--szary); font-size: .92rem; text-align: center; margin: 12px 0; }
.pod-tytulem { text-align: left; margin-top: -8px; }
.link-przycisk { background: none; border: 0; color: var(--akcent); font: inherit; text-decoration: underline; cursor: pointer; padding: 8px; }
.podtytul { font-size: 1.15rem; margin: 22px 0 8px; }
.wiersz-urz { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.przyciski { display: flex; gap: 8px; flex-wrap: wrap; margin: 0; }
.przyciski--odstep { margin-bottom: 16px; }

.podsumowanie .auto { font-weight: 500; color: var(--szary); font-size: .8rem; }

/* kreator na szerokosc layoutu: wiecej kafelkow w rzedzie na wiekszych ekranach */
@media (min-width: 1100px) {
  .kafle { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .kafle--male { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .kreator .karta-form, .kreator .formularz { max-width: none; }
}
.kreator__kategoria a { color: var(--akcent); font-weight: 600; }

/* ---------- kreator: zdjecia, VIN, mapa ---------- */
.wgraj { display: grid; justify-items: center; gap: 6px; padding: 26px 16px; border: 2px dashed var(--akcent); border-radius: var(--r);
  background: var(--karta); text-align: center; cursor: pointer; }
.wgraj input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.wgraj__btn { display: inline-block; background: var(--akcent); color: var(--na-akcencie); font-weight: 700; padding: 12px 20px; border-radius: var(--r); font-size: 1.05rem; }
.wgraj small { color: var(--szary); }
.wgraj:focus-within { outline: 3px solid var(--akcent); outline-offset: 3px; }
.wysylanie .wgraj__btn { opacity: .7; }
.wgraj__pasek { display: block; width: 100%; height: 10px; margin-top: 8px; accent-color: var(--akcent); }
.wgraj__info--blad { color: #c43b3b; font-weight: 600; }
.kreator form.wysylany button[type=submit], .kreator form.wysylany button:not([type]) { opacity: .65; cursor: progress; }
.miniatury { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 14px 0; }
.miniatura { margin: 0; position: relative; background: var(--karta); border-radius: var(--r); overflow: hidden; box-shadow: var(--cien); }
.miniatura img, .miniatury > img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--r); }
.miniatura--glowna { outline: 3px solid var(--akcent); }
.miniatura figcaption { position: absolute; top: 6px; left: 6px; background: var(--akcent); color: var(--na-akcencie); font-size: .78rem; font-weight: 700; padding: 2px 8px; border-radius: 99px; }
.miniatura__akcje { display: flex; gap: 6px; padding: 6px; justify-content: flex-end; }
.miniatura__akcje .btn { padding: 6px 10px; font-size: .85rem; }
.pole-vin { font-family: ui-monospace, SFMono-Regular, Menlo, monospace !important; letter-spacing: .08em; text-transform: uppercase; font-size: 1.15rem !important; }
.mapa-wybor { height: 320px; border-radius: var(--r); border: 1px solid var(--linia); z-index: 0; }
.kafle--dwa { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.kafelek--radio { position: relative; cursor: pointer; }
.kafelek--radio input { position: absolute; opacity: 0; }
.kafelek--radio:has(input:checked) { background: var(--akcent); color: var(--na-akcencie); border-color: var(--akcent); }
.kafelek--radio:has(input:checked) small { color: inherit; opacity: .9; }
.kafelek--radio:has(input:focus-visible) { outline: 3px solid var(--akcent); outline-offset: 2px; }
@media (min-width: 760px) { .miniatury { grid-template-columns: repeat(4, minmax(0, 1fr)); } .mapa-wybor { height: 420px; } }

/* ---------- strona ogloszenia ---------- */
.okruszki { color: var(--szary); font-size: .88rem; margin-bottom: 10px; }
.ogloszenie { display: grid; gap: 14px; }
/* galeria ogloszenia: strzalki, licznik, miniatury, powiekszenie (js/galeria.js); przesuwanie palcem na telefonie */
.galeria__glowne { position: relative; background: var(--tlo-zdjecia);   /* 27.10: paski przy zdjeciach o innych proporcjach - jasne w trybie jasnym, ciemne w ciemnym */ border-radius: var(--r); overflow: hidden; aspect-ratio: 4 / 3; touch-action: pan-y; }
.galeria__slajd { display: block; width: 100%; height: 100%; cursor: zoom-in; }
.galeria__slajd img { width: 100%; height: 100%; object-fit: contain; display: block; }
.galeria__nav { position: absolute; top: 50%; transform: translateY(-50%); width: 48px; height: 48px; border-radius: 50%; border: 0; cursor: pointer;
  background: rgba(255,255,255,.88); box-shadow: 0 2px 8px rgba(0,0,0,.3); display: grid; place-items: center; }
.galeria__nav svg { width: 26px; height: 26px; fill: none; stroke: #111; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.galeria__nav--prev { left: 10px; } .galeria__nav--next { right: 10px; }
.galeria__nav:hover { background: #fff; } .galeria__nav:focus-visible { outline: 3px solid var(--akcent); }
.galeria__licznik { position: absolute; right: 10px; bottom: 10px; background: rgba(0,0,0,.65); color: #fff; font-size: .85rem; font-weight: 700; padding: 3px 10px; border-radius: 99px; }
.galeria__miniatury { display: flex; gap: 6px; overflow-x: auto; padding: 8px 0 2px; scrollbar-width: thin; }
.galeria__min { flex: 0 0 auto; padding: 0; border: 3px solid transparent; border-radius: 8px; background: none; cursor: pointer; line-height: 0; }
.galeria__min img { width: 88px; height: 66px; object-fit: cover; border-radius: 5px; }
.galeria__min--akt { border-color: var(--akcent); }
/* powiekszenie na caly ekran */
.lightbox { position: fixed; inset: 0; z-index: 2000; background: rgba(0,0,0,.94); display: grid; place-items: center; touch-action: pan-y; }
.lightbox[hidden] { display: none !important; }
.lightbox img { max-width: 96vw; max-height: 88vh; object-fit: contain; }
.lightbox .galeria__nav { position: fixed; }
.lightbox__zamknij { position: fixed; top: 12px; right: 12px; width: 48px; height: 48px; border-radius: 50%; border: 0; background: rgba(255,255,255,.9); font-size: 1.4rem; cursor: pointer; }
.lightbox__licznik { position: fixed; bottom: 16px; left: 50%; transform: translateX(-50%); color: #fff; font-weight: 700; }
@media (max-width: 759px) { .galeria__nav { width: 40px; height: 40px; } .galeria__nav svg { width: 22px; height: 22px; } }
.ogloszenie__glowne, .ogloszenie__opis, .ogloszenie__param, .ogloszenie__mapa { background: var(--karta); border-radius: var(--r); box-shadow: var(--cien); padding: 16px; }
.ogloszenie__tytul { font-size: 1.4rem; margin: 0 0 6px; text-wrap: balance; }
.ogloszenie__cena { font-size: 1.6rem; font-weight: 800; color: var(--akcent); margin: 0 0 6px; }
.ogloszenie__cena small { font-size: .9rem; font-weight: 600; color: var(--szary); }
.ogloszenie__miejsce { margin: 0 0 12px; color: var(--szary); }
.sprzedajacy { display: grid; gap: 2px; padding: 12px 0; border-top: 1px solid var(--linia); margin-bottom: 10px; }
.sprzedajacy span { color: var(--szary); font-size: .9rem; }
.telefon summary { list-style: none; width: 100%; }
.telefon summary::-webkit-details-marker { display: none; }
.telefon__nr { display: block; text-align: center; font-size: 1.4rem; font-weight: 800; padding: 12px; }
.vin { margin-top: 10px; } .vin summary { cursor: pointer; color: var(--akcent); font-weight: 600; } .vin code { font-size: 1.1rem; letter-spacing: .06em; }
.ogloszenie h2 { font-size: 1.1rem; margin: 0 0 10px; }
.ogloszenie__stopka { color: var(--szary); font-size: .85rem; text-align: center; }
@media (min-width: 900px) {
  .ogloszenie { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); align-items: start; }
  .ogloszenie__galeria { grid-column: 1; grid-row: 1 / span 3; }
  .ogloszenie__glowne { grid-column: 2; position: sticky; top: 130px; }
  .ogloszenie__opis, .ogloszenie__param, .ogloszenie__stopka, .ogloszenie__mapa { grid-column: 1; }
}

.podpowiedzi-wrap { position: relative; }
.podpowiedzi { position: absolute; left: 0; right: 0; top: 100%; z-index: 1000; margin: 4px 0 0; padding: 4px; list-style: none; background: var(--karta);
  border: 1px solid var(--linia); border-radius: var(--r); box-shadow: 0 8px 24px rgba(0,0,0,.15); max-height: 320px; overflow-y: auto; }
.podpowiedzi li { padding: 10px 12px; border-radius: 8px; cursor: pointer; display: grid; }
.podpowiedzi li:hover, .podpowiedzi li:focus { background: var(--tlo); }
.podpowiedzi small { color: var(--szary); }

.pasek-wlasciciela { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; background: color-mix(in srgb, var(--akcent) 12%, var(--karta));
  border: 1px solid color-mix(in srgb, var(--akcent) 35%, transparent); border-radius: var(--r); padding: 10px 14px; margin-bottom: 12px; font-weight: 700; }
.miniatura__akcje { flex-wrap: wrap; }

/* loga marek w kafelkach kreatora (Simple Icons, kolor akcentu sekcji) */
.kafelek--logo { flex-direction: row; align-items: center; justify-content: flex-start; gap: 10px; }
.logo-marki { width: 26px; height: 26px; flex: 0 0 26px; fill: var(--akcent); }
.kafelek--wybrany .logo-marki { fill: currentColor; }
.logo-marki--brak { fill: var(--szary); opacity: .55; }
.kafelek--wybrany .logo-marki--brak { fill: currentColor; }

/* podsumowanie kreatora: odnosniki do krokow, okres waznosci */
.pigulki { display: flex; flex-wrap: wrap; gap: 8px; margin: 6px 0 18px; }
.pigulka { display: inline-block; padding: 7px 12px; border: 1px solid var(--linia); border-radius: 999px; background: var(--karta); color: inherit; text-decoration: none; font-size: .92rem; }
.pigulka:hover, .pigulka:focus-visible { border-color: var(--akcent); color: var(--akcent); }
.okres { border: 0; padding: 0; margin: 0 0 14px; display: grid; gap: 8px; }
.okres legend { font-weight: 700; margin-bottom: 6px; }
.okres small { color: var(--szary); }
/* moje ogloszenia */
.zakladki { display: flex; gap: 6px; margin: 0 0 14px; border-bottom: 1px solid var(--linia); }
.zakladki a { padding: 10px 14px; text-decoration: none; color: var(--szary); font-weight: 700; border-bottom: 3px solid transparent; margin-bottom: -1px; }
.zakladki a[aria-current] { color: var(--akcent); border-bottom-color: var(--akcent); }
.moje { display: grid; gap: 12px; }
.moje__poz { display: grid; grid-template-columns: 112px 1fr; gap: 12px; background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); padding: 10px; }
.moje__poz img { width: 112px; height: 84px; object-fit: cover; border-radius: 8px; background: var(--linia); }
.moje__tytul { font-weight: 700; color: inherit; text-decoration: none; display: block; line-height: 1.3; }
.moje__meta { color: var(--szary); font-size: .88rem; margin: 4px 0 0; }
.moje__akcje { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.moje__akcje form { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; margin: 0; }
.moje__akcje select { font: inherit; font-weight: 600; min-height: 44px; min-width: 112px; padding: 10px 36px 10px 12px; border-radius: var(--r); border: 1px solid var(--linia);
  background: var(--tlo) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23888' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 12px center;
  color: inherit; appearance: none; -webkit-appearance: none; cursor: pointer; }
.moje__akcje .btn { min-height: 44px; }
.moje__przedluz { flex-wrap: nowrap !important; }
.moje__akcje details > summary { list-style: none; cursor: pointer; }
.moje__akcje details > summary::-webkit-details-marker { display: none; }
.moje__akcje details[open] > summary { display: none; }
.znaczek { display: inline-block; font-size: .78rem; font-weight: 700; padding: 2px 8px; border-radius: 999px; background: var(--linia); color: var(--szary); vertical-align: middle; }
.znaczek--ok { background: color-mix(in srgb, #15803d 15%, transparent); color: #15803d; }
.znaczek--uwaga { background: color-mix(in srgb, #b45309 16%, transparent); color: #b45309; }
.komunikat--nieaktywne { background: var(--linia); }
@media (min-width: 700px) { .moje__poz { grid-template-columns: 150px 1fr auto; } .moje__poz img { width: 150px; height: 112px; } .moje__akcje { grid-column: auto; justify-content: flex-end; max-width: 330px; } }
.wasko--szeroko { max-width: 980px; }
.naglowek-strony { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.btn--uwaga { background: #b91c1c; border-color: #b91c1c; color: #fff; }
/* panel admina */
.admin { max-width: 1400px; margin: 0 auto; }
/* panel admina - menu (user 24.10: „Home” + pogrupowane zakladki) */
.admin-nav { margin-bottom: 18px; background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); box-shadow: var(--cien); overflow: hidden; }
.admin-nav a { color: inherit; text-decoration: none; }
.admin-nav__gora { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; padding: 10px 12px; border-bottom: 1px solid var(--linia); }
.admin-nav__home { display: inline-flex; align-items: center; gap: 6px; font-weight: 800; padding: 7px 12px; border-radius: 8px; }
.admin-nav__home .ik { width: 20px; height: 20px; color: var(--akcent); }
.admin-nav__home:hover, .admin-nav__home.jest { background: color-mix(in srgb, var(--akcent) 12%, var(--karta)); }
.admin-nav__wyloguj { display: flex; align-items: center; gap: 8px; margin-left: auto; color: var(--szary); font-size: .9rem; }
.admin-nav__wyloguj .btn { display: inline-flex; align-items: center; gap: 4px; padding: 7px 12px; }
.admin-nav__wyloguj .ik { width: 18px; height: 18px; }
.admin-nav__zakladki { display: flex; flex-wrap: wrap; gap: 6px 22px; padding: 8px 12px; background: color-mix(in srgb, var(--akcent) 5%, var(--karta)); }
.admin-nav__grupa { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.admin-nav__etykieta { font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--szary); margin-right: 4px; }
.admin-nav__grupa a { display: inline-flex; align-items: center; gap: 6px; padding: 6px 11px; border-radius: 999px; font-size: .92rem; font-weight: 600; }
.admin-nav__grupa a:hover { background: var(--linia); }
.admin-nav__grupa a.jest { background: var(--akcent); color: var(--na-akcencie); }
.admin-nav a:focus-visible { outline: 2px solid var(--akcent); outline-offset: 2px; }
@media (max-width: 699px) { .admin-nav__tekst, .admin-nav__wyloguj > span { display: none; } .admin-szukaj { order: 3; flex-basis: 100%; } }
.admin-szukaj { display: flex; gap: 6px; flex: 1; min-width: 220px; max-width: 520px; }
.admin-szukaj input { flex: 1; padding: 8px 10px; border: 1px solid var(--linia); border-radius: 8px; background: var(--tlo); color: inherit; }
.tabela-przewijana { overflow-x: auto; }
.admin-tabela { width: 100%; border-collapse: collapse; font-size: .88rem; background: var(--karta); }
.admin-tabela th, .admin-tabela td { text-align: left; vertical-align: top; padding: 7px 8px; border-bottom: 1px solid var(--linia); }
.admin-tabela pre { white-space: pre-wrap; word-break: break-word; max-width: 560px; font-size: .8rem; margin: 6px 0 0; }
.admin-tabela .nowrap { white-space: nowrap; font-variant-numeric: tabular-nums; }
.zmiany { border-collapse: collapse; width: 100%; }
.zmiany th { font-weight: 700; padding: 3px 6px 3px 0; white-space: nowrap; }
.zmiany td { padding: 3px 6px; white-space: pre-wrap; word-break: break-word; max-width: 380px; }
.zmiany .przed { background: color-mix(in srgb, #b91c1c 10%, transparent); text-decoration: line-through; text-decoration-color: color-mix(in srgb, #b91c1c 50%, transparent); }
.zmiany .po { background: color-mix(in srgb, #15803d 12%, transparent); }
.akcja-logowanie_blad td, .akcja-logowanie_kod_zly td { background: color-mix(in srgb, #b45309 6%, transparent); }
.miniatura--usuniete img { opacity: .55; outline: 3px solid #b91c1c; }
/* listy ogloszen */
.lista__naglowek { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.lista__ile { color: var(--szary); font-size: .95rem; }
.podkategorie { display: flex; gap: 8px; overflow-x: auto; padding: 4px 0 12px; margin-bottom: 6px; scrollbar-width: thin; }
.podkat { flex: 0 0 auto; display: flex; align-items: center; gap: 6px; padding: 8px 12px; border: 1px solid var(--linia); border-radius: 999px; background: var(--karta); color: inherit; text-decoration: none; font-weight: 600; font-size: .92rem; }
.podkat small { color: var(--szary); font-weight: 400; }
.podkat .ik { width: 18px; height: 18px; color: var(--akcent); }
.podkat:hover { border-color: var(--akcent); }
.lista__uklad { display: grid; gap: 14px; }
.filtry__przycisk { width: 100%; }
.filtry__form { display: grid; gap: 12px; margin-top: 10px; background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); padding: 14px; }
.filtry__form fieldset { border: 0; padding: 0; margin: 0; display: flex; gap: 8px; flex-wrap: wrap; }
.filtry__form legend { font-weight: 700; font-size: .92rem; margin-bottom: 6px; padding: 0; }
.filtry__form input[type=text], .filtry__form input[type=search], .filtry__form select { width: 100%; padding: 9px 10px; border: 1px solid var(--linia); border-radius: 8px; background: var(--tlo); color: inherit; font: inherit; }
.filtry__form .zakres input { flex: 1 1 0; min-width: 0; width: auto; }
.filtry__form .pole { display: grid; gap: 6px; font-weight: 700; font-size: .92rem; }
.filtry__form .opcje { flex-direction: column; gap: 4px; }
.filtry__form .opcje label, .pole-check { display: flex; gap: 8px; align-items: center; font-size: .95rem; cursor: pointer; }
.filtry__form .opcje--dlugie { max-height: 230px; overflow-y: auto; flex-wrap: nowrap; }
.filtry__wiecej > summary { cursor: pointer; font-weight: 700; color: var(--akcent); margin-bottom: 10px; }
.filtry__wiecej { display: grid; gap: 12px; }
.filtry__wiecej[open] { display: grid; }
.filtry__przyciski { display: flex; gap: 8px; position: sticky; bottom: 0; background: var(--karta); padding-top: 6px; }
.filtry__przyciski .btn { flex: 1; }
.wyniki__pasek { display: flex; justify-content: flex-end; margin-bottom: 10px; }
.sortuj select { padding: 7px 8px; border: 1px solid var(--linia); border-radius: 8px; background: var(--karta); color: inherit; font: inherit; }
.karty { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.karta { display: flex; flex-direction: column; background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); overflow: hidden; color: inherit; text-decoration: none; }
.karta:hover { border-color: var(--akcent); }
.karta__foto { aspect-ratio: 4 / 3; background: var(--linia); display: block; }
.karta__foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.karta__tresc { display: grid; gap: 4px; padding: 9px 10px 11px; }
.karta__tytul { margin: 0; font-size: inherit; font-weight: 700; line-height: 1.25; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.karta__cechy { color: var(--szary); font-size: .82rem; line-height: 1.3; }
.karta__cena { font-weight: 800; font-size: 1.08rem; font-variant-numeric: tabular-nums; }
.karta__cena small { font-weight: 400; color: var(--szary); font-size: .78rem; }
.karta__gdzie { color: var(--szary); font-size: .8rem; }
.strony { display: flex; gap: 12px; align-items: center; justify-content: center; margin: 18px 0 6px; flex-wrap: wrap; }
.pusto { text-align: center; }
.najnowsze { margin-top: 22px; }
.tekst-seo { margin-top: 26px; color: var(--szary); font-size: .95rem; max-width: 75ch; }
@media (min-width: 700px) { .karty { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 900px) {
  .lista__uklad { grid-template-columns: 270px minmax(0, 1fr); align-items: start; }
  .filtry { position: sticky; top: 120px; max-height: calc(100vh - 130px); overflow-y: auto; }
  .filtry__przycisk { display: none; }
  .filtry__form { margin-top: 0; }
}
@media (min-width: 1200px) { .karty { grid-template-columns: repeat(4, minmax(0, 1fr)); } .najnowsze .karty { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.filtry__form input::placeholder { font-weight: 400; } .filtry__form .pole input { font-weight: 400; }
/* user 22.10: szersze filtry, wieksze karty - 3 w rzedzie */
@media (min-width: 900px) { .lista__uklad { grid-template-columns: 330px minmax(0, 1fr); gap: 22px; } }
@media (min-width: 1200px) { .lista .karty { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; } .najnowsze .karty { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 700px) { .karta__tytul { font-size: 1.05rem; } .karta__cena { font-size: 1.2rem; } .karta__cechy { font-size: .88rem; } .karta__tresc { padding: 12px 14px 14px; gap: 6px; } }
/* ulubione */
.karta { position: relative; }
.karta__link { display: flex; flex-direction: column; color: inherit; text-decoration: none; height: 100%; }
.serce { position: absolute; top: 8px; right: 8px; margin: 0; }
.serce__btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; cursor: pointer; }
.serce > .serce__btn, a.serce.serce__btn { width: 40px; height: 40px; border-radius: 50%; border: 0; background: color-mix(in srgb, var(--karta) 88%, transparent); color: var(--tekst); box-shadow: 0 1px 4px rgb(0 0 0 / .18); }
.serce__btn .ik { width: 22px; height: 22px; }
.serce__btn[aria-pressed="true"] { color: #e11d48; }
.serce-duze { margin: 6px 0 10px; }
.serce-duze .serce__btn[aria-pressed="true"] { border-color: #e11d48; }
.zapisz-wysz { margin: 0 auto 0 0; }
.zapisz-wysz .ik { width: 18px; height: 18px; vertical-align: -3px; }
.wyniki__pasek { gap: 10px; flex-wrap: wrap; align-items: center; }
.moje__poz--wysz { grid-template-columns: 1fr; }
.moje__poz--wysz .ik { width: 20px; height: 20px; vertical-align: -4px; color: var(--akcent); }
@media (min-width: 700px) { .moje__poz--wysz { grid-template-columns: 1fr auto; } }
.podkat .logo-marki { width: 22px; height: 22px; flex: 0 0 22px; }
/* user 23.10: kategorie/marki nie przewijaja sie w poziomie - zawijaja sie w wiersze, wszystkie widoczne */
.podkategorie { flex-wrap: wrap; overflow-x: visible; padding-bottom: 6px; }
@media (max-width: 699px) {
  .podkategorie { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .podkat { border-radius: 10px; padding: 7px 9px; font-size: .84rem; line-height: 1.2; align-items: center; }
  .podkat span { flex: 1; min-width: 0; }
}
/* user 23.10: pasek sekcji bez przewijania w poziomie - na telefonie zawija sie (wszystkie sekcje widoczne) */
.sekcje { flex-wrap: wrap; overflow-x: visible; }
@media (max-width: 699px) {
  .gora { position: static; }   /* wyzszy naglowek nie zaslania tresci przy przewijaniu; nawigacja jest tez w dolnym menu */
  .sekcje { gap: 4px 2px; padding-bottom: 6px; }
  .sekcje a { padding: 5px 9px; font-size: .86rem; }
}
@media (max-width: 699px) { .podkategorie { grid-template-columns: repeat(3, minmax(0, 1fr)); } .podkat { padding: 7px 7px; gap: 5px; } .podkat .ik { width: 16px; height: 16px; flex: 0 0 16px; } }
@media (max-width: 699px) { .podkategorie { grid-template-columns: repeat(2, minmax(0, 1fr)); } .podkat { padding: 8px 10px; font-size: .9rem; } }
/* user 23.10: marki/modele - 10 na komputerze, 6 na telefonie, reszta po „Wszystkie” */
.podkat--wiecej { cursor: pointer; font: inherit; font-weight: 700; color: var(--akcent); border-style: dashed; }
.podkategorie.zwiniete-d:not(.rozwiniete) .podkat:not(.podkat--wiecej):nth-child(n+11) { display: none; }
.podkategorie.zwiniete:not(.zwiniete-d) .podkat--wiecej { display: none; }
@media (max-width: 699px) {
  .podkategorie.zwiniete:not(.rozwiniete) .podkat:not(.podkat--wiecej):nth-child(n+7) { display: none; }
  .podkategorie.zwiniete .podkat--wiecej { display: flex; }
}
@media (max-width: 699px) { .podkategorie.zwiniete:not(.zwiniete-d) .podkat--wiecej, .podkategorie.zwiniete .podkat--wiecej { display: flex; grid-column: 1 / -1; justify-content: center; } }
.karta__m2 { color: var(--szary); font-size: .8rem; margin-top: -3px; }

/* user 23.10: telefon - ten sam wyglad co inne pola, szerokosc na numer (+48 600 123 456) */
.pole input[type=tel] { max-width: 15em; }
.zacheta-mapa { background: color-mix(in srgb, var(--akcent) 9%, var(--karta)); border: 1px solid color-mix(in srgb, var(--akcent) 30%, transparent); border-radius: var(--r); padding: 10px 12px; margin-bottom: 8px; display: grid; gap: 6px; font-size: .93rem; line-height: 1.45; }
.zacheta-mapa p { margin: 0; }
/* user 23.10: miniatury pokazuja cale zdjecie (bez przycinania), marginesy w neutralnym kolorze */
:root { --tlo-zdjecia: #e9ebe6; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --tlo-zdjecia: #23262a; } }
:root[data-theme="dark"] { --tlo-zdjecia: #23262a; }
.karta__foto { background: var(--tlo-zdjecia); }
.karta__foto img, .miniatura img, .miniatury > img, .galeria__min img, .moje__poz img { object-fit: contain; background: var(--tlo-zdjecia); }
/* panel uzytkownika, konto w naglowku, wiadomosci (23.10) */
.konto-link { display: inline-flex; align-items: center; gap: 6px; color: var(--tekst); text-decoration: none; font-weight: 700; font-size: .92rem; padding: 6px 10px; border-radius: var(--r); position: relative; white-space: nowrap; }
.konto-link:hover { background: var(--linia); }
.konto-link .ik { width: 24px; height: 24px; color: var(--akcent); }
.licznik { display: inline-grid; place-items: center; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: #e11d48; color: #fff; font-size: .72rem; font-weight: 800; line-height: 1; }
.konto-link .licznik { position: absolute; top: 0; left: 22px; }
@media (max-width: 699px) { .konto-link { display: none; } }   /* na telefonie konto jest w dolnym menu */
.panel { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 14px 0 18px; }
.panel__kafel { display: grid; gap: 4px; padding: 14px; background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); color: inherit; text-decoration: none; }
.panel__kafel:hover { border-color: var(--akcent); }
.panel__kafel .ik { width: 28px; height: 28px; color: var(--akcent); }
.panel__kafel small { color: var(--szary); }
.panel__kafel--dodaj { background: var(--akcent); color: var(--na-akcencie); border-color: var(--akcent); align-content: center; }
.panel__kafel--dodaj small { color: inherit; opacity: .85; }
.kontakt { display: grid; gap: 8px; margin: 0 0 12px; padding-top: 12px; border-top: 1px solid var(--linia); }   /* linia nad kontaktem jak nad sprzedajacym (user 24.10) */
.kontakt__form { display: grid; gap: 8px; }
.kontakt textarea, .odpowiedz textarea { width: 100%; font: inherit; padding: 10px 12px; border: 1px solid var(--linia); border-radius: var(--r); background: var(--tlo); color: var(--tekst); resize: vertical; }
.kontakt .btn .ik, .odpowiedz .btn .ik { width: 20px; height: 20px; vertical-align: -4px; }
.kontakt__info { color: var(--szary); }
.wasko--sredni { max-width: 760px; }
.rozmowy { display: grid; gap: 8px; }
.rozmowa-poz { display: flex; gap: 12px; align-items: center; padding: 10px; background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); color: inherit; text-decoration: none; }
.rozmowa-poz--nowa { border-left: 4px solid var(--akcent); }
.rozmowa-poz__foto img { width: 96px; height: 72px; object-fit: contain; background: var(--tlo-zdjecia); border-radius: 8px; display: block; }
.rozmowa-poz__tresc { display: grid; gap: 2px; flex: 1; min-width: 0; }
.rozmowa-poz__gora { display: flex; gap: 8px; align-items: baseline; }
.rozmowa-poz__gora small { color: var(--szary); }
.rozmowa-poz__kiedy { margin-left: auto; color: var(--szary); font-size: .85rem; white-space: nowrap; }
.rozmowa-poz__tytul { font-size: .9rem; color: var(--szary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rozmowa-poz__ostatnia { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rozmowa-poz--nowa .rozmowa-poz__ostatnia { font-weight: 700; }
.rozmowa__og { display: flex; gap: 12px; align-items: center; padding: 10px; background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); color: inherit; text-decoration: none; margin-bottom: 10px; }
.rozmowa__og img { width: 96px; height: 72px; object-fit: contain; background: var(--tlo-zdjecia); border-radius: 8px; }
.rozmowa__og span { display: grid; gap: 2px; }
.rozmowa__og small { color: var(--szary); }
.ostrzezenie { background: color-mix(in srgb, #b45309 10%, var(--karta)); border: 1px solid color-mix(in srgb, #b45309 35%, transparent); border-radius: var(--r); padding: 10px 12px; font-size: .9rem; }
.watek { display: grid; gap: 10px; margin: 14px 0; }
.dymek { max-width: 80%; padding: 10px 14px; background: var(--karta); border: 1px solid var(--linia); border-radius: 14px 14px 14px 4px; justify-self: start; }
.dymek--moj { justify-self: end; background: color-mix(in srgb, var(--akcent) 14%, var(--karta)); border-color: color-mix(in srgb, var(--akcent) 35%, transparent); border-radius: 14px 14px 4px 14px; }
.dymek p { margin: 0 0 4px; white-space: normal; overflow-wrap: anywhere; }
.dymek small { color: var(--szary); font-size: .78rem; }
.dymek-system { justify-self: stretch; padding: 12px 14px; border-radius: 12px; background: color-mix(in srgb, #dc2626 10%, var(--karta)); border: 1px solid color-mix(in srgb, #dc2626 40%, transparent); }
.dymek-system > b { display: flex; align-items: center; gap: 6px; color: color-mix(in srgb, #dc2626 75%, var(--tekst, currentColor)); margin-bottom: 4px; }
.dymek-system p { margin: 4px 0 0; font-size: .92rem; overflow-wrap: anywhere; }
.dymek-system .ik { width: 20px; height: 20px; fill: currentColor; flex: none; }
.odpowiedz { display: grid; gap: 8px; }
/* naglowek z linkiem do konta: logo | szukaj | przelaczniki | konto | dodaj */
/* user 28.10: po dodaniu serduszka (6. element) siatka zawijala „Dodaj ogloszenie” do nowej linii - kolumny dokladane
   automatycznie w jednym wierszu, pole szukania zweza sie (minmax 0) zamiast wypychac przyciski */
@media (min-width: 760px) { .gora__w { grid-template-columns: auto minmax(0, 1fr); grid-auto-flow: column; grid-auto-columns: auto; gap: 12px; }
  .szukaj { min-width: 0; } .szukaj input { min-width: 0; } }
/* waskie ekrany komputerowe: krotszy przycisk „+ Dodaj” i mniejszy „Szukaj”, zeby pole szukania mialo miejsce */
@media (min-width: 760px) and (max-width: 1023px) { .btn--dodaj__reszta { display: none; } .szukaj button { padding: 0 10px; } }
@media (max-width: 759px) { .konto-link { display: none; } }   /* ponizej 760 px konto jest w dolnym menu */
/* Kontynuuj z Google / Apple */
.zewnetrzne { display: grid; gap: 10px; margin: 0 0 14px; }
.btn-zewn { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 10px 16px; border-radius: var(--r); font-weight: 700; text-decoration: none; border: 1px solid var(--linia); }
.btn-zewn--google { background: #fff; color: #1f1f1f; border-color: #dadce0; }
.btn-zewn--apple { background: #000; color: #fff; border-color: #000; }
:root[data-theme="dark"] .btn-zewn--apple { background: #fff; color: #000; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .btn-zewn--apple { background: #fff; color: #000; } }
.zewnetrzne__lub { display: flex; align-items: center; gap: 10px; color: var(--szary); font-size: .9rem; margin: 4px 0 0; }
.zewnetrzne__lub::before, .zewnetrzne__lub::after { content: ""; flex: 1; border-top: 1px solid var(--linia); }

/* Regulamin i polityka prywatnosci */
.tekst-prawny { line-height: 1.6; }
.tekst-prawny h2 { font-size: 1.15rem; margin: 1.6em 0 .5em; }
.tekst-prawny ul { padding-left: 1.2em; display: grid; gap: .45em; }
.tekst-prawny .szare { color: var(--szary); }
.stopka__linki a { color: inherit; }

/* Usuwanie konta i zgloszenia */
.usun-konto { margin-top: 28px; }
.usun-konto summary, .zglos summary { cursor: pointer; color: var(--szary); font-size: .92rem; }
.usun-konto .karta-form, .zglos .karta-form { margin-top: 10px; display: grid; gap: 12px; }
.usun-konto form, .zglos form { display: grid; gap: 12px; }
.btn--niebezpieczny { background: #c43b3b; color: #fff; border-color: #c43b3b; }
.btn--niebezpieczny:hover { background: #a82f2f; }
.zglos { margin-top: 18px; }
.zglos select, .zglos textarea, .zglos input:not([type="checkbox"]):not([type="radio"]) { font: inherit; width: 100%; padding: 10px 12px; border: 1px solid var(--linia); border-radius: var(--r); background: var(--tlo); color: var(--tekst); }
.decyzja { display: grid; gap: 12px; }
.decyzja fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 6px; }
.decyzja legend { font-weight: 700; margin-bottom: 4px; }
.decyzja select, .decyzja textarea, .decyzja input[type=text] { font: inherit; width: 100%; padding: 10px 12px; border: 1px solid var(--linia); border-radius: var(--r); background: var(--tlo); color: var(--tekst); }
form.inline { display: inline; }
.przed-zawijane { white-space: normal; overflow-wrap: anywhere; }
.blokada-form { margin-top: 10px; text-align: right; }
.blokada-form .link-przycisk { color: var(--szary); font-size: .88rem; }
button[aria-busy=true] { opacity: .6; cursor: progress; }
.sprzedajacy b a { color: inherit; }
.sprzedajacy__wszystkie { font-size: .92rem; font-weight: 600; margin-top: 4px; }
.profil { max-width: 1240px; margin: 0 auto; }
.strony a[aria-current] { font-weight: 800; text-decoration: none; }
.ostrzezenie p { margin: 0 0 6px; }
.ostrzezenie ul { margin: 0; padding-left: 1.2em; display: grid; gap: 4px; }
.zmiany-ulub { background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); padding: 12px 14px; margin-bottom: 16px; }
.zmiany-ulub summary { cursor: pointer; }
.zmiany-ulub ul { list-style: none; padding: 0; margin: 10px 0 6px; display: grid; gap: 10px; }
.zmiany-ulub li { padding: 8px 10px; border-left: 3px solid var(--linia); font-size: .93rem; }
.zmiany-ulub li a { font-weight: 700; color: inherit; }
.zmiany-ulub li small { color: var(--szary); }
.zmiany-ulub--nowe { background: color-mix(in srgb, #2563eb 7%, transparent); }
.zmiany-ulub--taniej { border-left-color: #2f7d32 !important; }
.zmiany-ulub--taniej span:first-of-type { color: #2f7d32; font-weight: 700; }
.ustawienia-pow { display: grid; gap: 10px; justify-items: start; }
/* Moje konto - szerzej na komputerze (user 23.10) */
.konto .podtytul:first-child { margin-top: 0; }
.konto__kolumny { display: grid; gap: 0 28px; }
.konto__kol { min-width: 0; }
@media (min-width: 760px) { .konto .panel { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .konto .panel { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
@media (min-width: 900px) { .konto__kolumny { grid-template-columns: 1fr 1fr; align-items: start; } }
.konto .pod-formularzem { margin-top: 24px; }
.konto .usun-konto { max-width: 560px; }
.podpowiedzi li.podpowiedzi__naglowek { cursor: default; padding: 6px 12px 2px; font-size: .78rem; text-transform: uppercase; letter-spacing: .05em; color: var(--szary); }
.podpowiedzi li.podpowiedzi__naglowek:hover { background: none; }
/* podpowiedzi miejscowosci w filtrach: w przeplywie, bo panel filtrow przewija sie (overflow) i ucinal liste */
.filtry .lokalizacja .podpowiedzi { position: static; margin-top: 6px; box-shadow: none; grid-column: 1 / -1; width: 100%; }
.pole-x { position: relative; display: block; width: 100%; grid-column: 1 / -1; }
.pole-x input { width: 100%; padding-right: 38px !important; }
.pole-x__btn { position: absolute; right: 4px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; border: 0; border-radius: 50%; background: none; color: var(--szary); font-size: 1.35rem; line-height: 1; cursor: pointer; }
.pole-x__btn:hover, .pole-x__btn:focus-visible { background: var(--linia); color: var(--tekst); }
.pole-x__btn[hidden] { display: none; }
.podpowiedzi li { position: relative; }
.podpowiedzi__usun { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border: 0; border-radius: 50%; background: none; color: var(--szary); font-size: 1.2rem; cursor: pointer; }
.podpowiedzi__usun:hover { background: var(--linia); color: var(--tekst); }
/* Widok mapy na liscie (user 23.10) */
.widok-przel { display: inline-flex; border: 1px solid var(--linia); border-radius: var(--r); overflow: hidden; background: var(--karta); }
.widok-przel a { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; color: inherit; text-decoration: none; font-weight: 600; font-size: .92rem; }
.widok-przel a .ik { width: 18px; height: 18px; }
.widok-przel a[aria-current] { background: var(--akcent); color: var(--na-akcencie); }
.mapa-ogl { height: min(72vh, 640px); min-height: 380px; border-radius: var(--r); border: 1px solid var(--linia); z-index: 0; }
.mapa-ogl__info { color: var(--szary); font-size: .9rem; margin: 8px 2px 0; }
.mapa-cena span { display: inline-block; transform: translate(-50%, -100%); white-space: nowrap; background: var(--akcent); color: var(--na-akcencie); font: 700 12px/1 system-ui, sans-serif; padding: 5px 7px; border-radius: 12px; box-shadow: 0 1px 4px rgba(0,0,0,.35); cursor: pointer; }
.mapa-cena span::after { content: ''; position: absolute; left: 50%; bottom: -5px; margin-left: -5px; border: 5px solid transparent; border-bottom: 0; border-top-color: var(--akcent); }
.mapa-klaster { display: grid; place-items: center; }
.mapa-klaster span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: color-mix(in srgb, var(--akcent) 85%, transparent); color: var(--na-akcencie); font: 700 14px/1 system-ui, sans-serif; border: 3px solid rgba(255,255,255,.8); box-shadow: 0 1px 5px rgba(0,0,0,.35); cursor: pointer; }
.mapa-pop { display: grid; gap: 4px; color: #1c1f1b; text-decoration: none; }
.mapa-pop img { width: 100%; aspect-ratio: 4/3; object-fit: contain; background: #eee; border-radius: 6px; }
.mapa-pop b { font-size: 1.05rem; }
.mapa-pop small { color: #5d655b; }
.mapa-punkt { height: 300px; border-radius: var(--r); border: 1px solid var(--linia); z-index: 0; }
.mapa-akcje { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 8px; }
.mapa-akcje .btn { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
.mapa-akcje .btn .ik { width: 20px; height: 20px; color: var(--akcent); }
.mapa-akcje .pole__pod { margin: 0; }
.mapa-akcje .btn[hidden] { display: none; }
.lightbox img { cursor: zoom-out; }
.pulapka { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.kolejka-poz { margin-bottom: 14px; display: grid; gap: 10px; }
.kolejka-poz__gora { display: grid; grid-template-columns: 1fr; gap: 14px; }
.kolejka-poz__gora img { width: 160px; height: 120px; object-fit: contain; background: var(--tlo); border-radius: 8px; }
.kolejka-poz__powody { margin: 6px 0; padding-left: 1.2em; color: #b45309; font-weight: 600; }
.kolejka-poz__opis { font-size: .92rem; margin: 8px 0 0; padding: 10px 12px; background: var(--tlo); border-radius: 8px; overflow-wrap: anywhere; }
.kolejka-poz__akcje { display: flex; gap: 10px; flex-wrap: wrap; align-items: flex-start; }
.frazy-dodaj, .bany-dodaj { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; }
.frazy-dodaj input:not([type=checkbox]), .frazy-dodaj select, .bany-dodaj input:not([type=checkbox]), .bany-dodaj select { font: inherit; padding: 9px 10px; border: 1px solid var(--linia); border-radius: 8px; background: var(--tlo); color: inherit; }
.frazy-dodaj input:not([type=checkbox]), .bany-dodaj input:not([type=checkbox]) { flex: 1; min-width: 200px; }
.bany-dodaj .check { align-items: center; }   /* checkbox w formularzu banu (user 25.10: rozjezdzal sie jak pole tekstowe) */
.slownik-zrodla { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 18px; }
.slownik-chip { display: inline-flex; gap: 6px; align-items: center; padding: 6px 12px; border: 1px solid var(--linia); border-radius: 999px; color: inherit; text-decoration: none; font-size: .9rem; }
.slownik-chip b { font-variant-numeric: tabular-nums; }
.slownik-chip.jest { background: var(--akcent); color: var(--na-akcencie); border-color: var(--akcent); }
.slownik-dodaj select[name=kategoria_id] { flex: 2; min-width: 220px; max-width: 100%; }
.slownik-nauka { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; }
.slownik-nauka form { margin: 0; }
.ban-link { font-size: .85rem; margin-left: 6px; color: #c43b3b; }
.ogloszenie__podobne { grid-column: 1 / -1; }
.ogloszenie__podobne h2 { font-size: 1.15rem; margin: 6px 0 10px; }
.ogloszenie__podobne--gora { max-width: 1240px; margin: 0 auto 18px; }
.wiz-ukryte { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.wysz-pow label { display: inline-flex; align-items: center; gap: 6px; }
.wysz-pow .ik { width: 18px; height: 18px; color: var(--szary); }
.wysz-pow select { font: inherit; min-height: 44px; padding: 8px 10px; border-radius: var(--r); border: 1px solid var(--linia); background: var(--tlo); color: inherit; }
.data-mr { display: flex; gap: 8px; max-width: 360px; }
.data-mr select { flex: 1; min-width: 0; }
.pola { align-items: start; }
.z-jednostka, .data-mr { align-self: start; }
.z-jednostka input, .z-jednostka span, .data-mr select { min-height: 46px; height: auto; }
/* krok lokalizacji: telefon w osobnej karcie, zeby nie zlewal sie z mapa (user 23.10) */
.grupa--kontakt { margin-top: 16px; border-left: 4px solid var(--akcent); }
.grupa--kontakt legend { display: flex; align-items: center; gap: 8px; }
.grupa--kontakt legend .ik { width: 22px; height: 22px; color: var(--akcent); }
.grupa--kontakt input[type=tel] { max-width: 260px; }
.okres.grupa { margin: 16px 0; padding: 14px var(--odstep) 16px; }
.okres.grupa { display: block; }
.okres.grupa legend { float: left; width: 100%; margin-bottom: 10px; }   /* legenda w karcie, nie na ramce */
.okres.grupa .segment, .okres.grupa small { clear: both; }
.okres.grupa small { display: block; margin-top: 8px; }
.ogloszenie + .ogloszenie__podobne, section.ogloszenie__podobne:not(.ogloszenie__podobne--gora) { max-width: 1240px; margin: 22px auto 0; }
/* ogloszenia bez zdjec (user 24.10) */
.karta__foto--brak { display: grid; place-items: center; background: color-mix(in srgb, var(--akcent) 10%, var(--karta)); }
.karta__foto--brak .ik { width: 34%; height: 34%; color: color-mix(in srgb, var(--akcent) 55%, var(--szary)); opacity: .8; }
.galeria-brak { display: grid; place-items: center; gap: 10px; aspect-ratio: 16 / 7; border-radius: var(--r); background: color-mix(in srgb, var(--akcent) 10%, var(--karta)); color: color-mix(in srgb, var(--akcent) 55%, var(--szary)); font-weight: 700; }
.galeria-brak .ik { width: 72px; height: 72px; }
/* obserwowanie sprzedajacych (user 24.10) */
.obserwuj { margin-top: 6px; }
.obserwuj .btn { display: inline-flex; align-items: center; gap: 6px; font-size: .9rem; padding: 8px 12px; }
.obserwuj .ik { width: 18px; height: 18px; color: var(--akcent); }
.obserwuj--tak { border-color: var(--akcent); }
.profil__gora { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; }
.profil__gora .obserwuj { margin: 0; }
/* Dlaczego go24 + FAQ (user 24.10) */
.dlaczego__lead { font-size: 1.1rem; }
.dlaczego__lista { list-style: none; padding: 0 !important; }
.dlaczego__lista li { padding-left: 28px; position: relative; }
.dlaczego__lista li::before { content: '✓'; position: absolute; left: 4px; color: var(--akcent); font-weight: 800; }
.faq { display: grid; gap: 8px; }
.faq details { background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); padding: 12px 14px; }
.faq summary { font-weight: 700; cursor: pointer; }
.faq details p { margin: 8px 0 0; }
.hero__wiecej { margin: 6px 0 12px; font-size: .95rem; }
.zglos-link { margin: 10px 0 0; text-align: center; font-size: .88rem; } .zglos-link a { color: var(--szary); }   /* widoczne zgloszenie w boksie ceny (user 24.10) */
/* numer telefonu po kliknieciu (user 24.10) */
.telefon__pokaz { width: 100%; }
.telefon__maska { font-weight: 500; opacity: .75; margin-left: 4px; letter-spacing: .02em; }
.telefon__nr[hidden], .telefon__blad[hidden], .telefon__pokaz[hidden] { display: none; }
.telefon__blad { color: #c43b3b; font-size: .9rem; margin: 6px 0 0; text-align: center; }
.statystyki-wl { display: block; color: var(--szary); font-weight: 400; margin-top: 2px; }   /* user 24.10 */
/* kanal RSS przy liscie (user 25.10) */
.rss-link { display: inline-flex; align-items: center; padding: 6px 10px; border-radius: 8px; font-size: .8rem; font-weight: 800; letter-spacing: .04em; color: #fff; background: #e8772e; text-decoration: none; align-self: center; }
.rss-link:hover { background: #cf6420; }
.moje__info { max-width: 220px; }
/* decyzja moderacji: przy „bezzasadne” bez podstawy i przepisu, bany tylko przy blokadzie konta (user 25.10) */
.decyzja:has(input[value="odrzucenie_zgloszenia"]:checked) .decyzja__podstawa { display: none; }
.decyzja__bany { display: none; }
.decyzja:has(input[value="ukrycie_blokada"]:checked) .decyzja__bany { display: flex; }
.decyzja__podstawa { display: grid; gap: 12px; }
/* „Co chcesz dodać?” - podpowiedz kategorii (user 25.10) */
.kat-szukaj { margin: 0 0 14px; }
.kat-szukaj input { font: inherit; width: 100%; min-height: 50px; padding: 10px 14px; border: 2px solid var(--akcent); border-radius: var(--r); background: var(--karta); color: var(--tekst); }
.kat-szukaj__lista { list-style: none; margin: 8px 0 0; padding: 0; display: grid; gap: 6px; }
.kat-szukaj__lista a { display: grid; gap: 2px; padding: 10px 14px; background: var(--karta); border: 1px solid var(--linia); border-radius: var(--r); text-decoration: none; color: var(--tekst); }
.kat-szukaj__lista a:hover, .kat-szukaj__lista a:focus-visible { border-color: var(--akcent); }
.kat-szukaj__lista small { color: var(--szary); }
.kat-szukaj__lista[hidden] { display: none; }
.kat-szukaj__brak { color: var(--szary); padding: 6px 2px; }
.kat-szukaj__albo { margin: 14px 0 0; }
.sugestia-kat { display: grid; gap: 8px; }
.sugestia-kat p { margin: 0; }
/* panel: podejrzane rozmowy i podglad rozmowy (user 25.10) */
.admin-filtry { display: flex; gap: 6px; flex-wrap: wrap; }
.admin-filtry a { padding: 6px 12px; border-radius: 999px; border: 1px solid var(--linia); text-decoration: none; color: inherit; font-weight: 600; font-size: .9rem; }
.admin-filtry a.jest { background: var(--akcent); color: var(--na-akcencie); border-color: var(--akcent); }
.wynik-wysoki { color: #c43b3b; }
.rozmowa-admin { display: grid; gap: 10px; margin: 12px 0; }
.dymek-admin { max-width: 80%; padding: 10px 14px; background: var(--karta); border: 1px solid var(--linia); border-radius: 12px; }
.dymek-admin--sprz { justify-self: end; background: color-mix(in srgb, var(--akcent) 8%, var(--karta)); }
.dymek-admin small { display: block; color: var(--szary); margin-bottom: 4px; }
.dymek-admin mark { background: #fde68a; color: #1c1f1b; padding: 0 2px; border-radius: 3px; }
@media (min-width: 1000px) { .sekcje { gap: 2px; } .sekcje a { padding: 6px 9px; font-size: .9rem; } }   /* 11 dzialow w jednym rzedzie na komputerze (user 25.10) */
.czat-dzwiek { display: inline-flex; align-items: center; gap: 6px; color: var(--szary); font-size: .88rem; text-decoration: none; }
.czat-dzwiek .ik { width: 18px; height: 18px; fill: currentColor; }
.czat-dzwiek[aria-pressed="true"] .ik--wyl, .czat-dzwiek[aria-pressed="false"] .ik--wl { display: none; }
/* user 27.10: kreator - brakujaca wersja silnika */
.wersja-brak { margin-top: 18px; padding: 14px; border: 1px dashed var(--linia); border-radius: var(--r); background: var(--karta); }
.wersja-brak__tytul { margin: 0 0 10px; font-size: .95rem; }
.wersja-brak__rzad { display: flex; gap: 8px; flex-wrap: wrap; }
.wersja-brak__rzad input { flex: 1 1 220px; min-width: 0; font: inherit; padding: 10px 12px; border: 1px solid var(--linia); border-radius: 8px; background: var(--tlo); color: inherit; }
/* A- / A+ (user 27.10) */
.przel--rozmiar { font-size: .95rem; min-width: 40px; }
.przel--wyl { opacity: .4; cursor: default; }
/* 27.10 (user): kafelki ogloszen zawsze jednakowe - ramka zdjecia sztywno 4:3 (pionowe zdjecie jej nie rozpycha),
   tytul i cechy o stalej wysokosci (2 linie), cena i miejscowosc zawsze w tym samym miejscu */
.karta__foto { position: relative; overflow: hidden; aspect-ratio: 4 / 3; min-height: 0; }
.karta__foto img { position: absolute; inset: 0; width: 100%; height: 100%; }
.karta__tytul { min-height: calc(2 * 1.25em); }
.karta__cechy { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: calc(2 * 1.3em); }
.karta__link { height: 100%; }
.karta__tresc { flex: 1; align-content: start; }
.karta__gdzie { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }   /* miejscowosc i data w jednej linii */

/* serduszko obok nicka -> ulubione (user 28.10); na telefonie ulubione sa w dolnym menu */
/* wyglad jak przelaczniki A-/A+/motyw (klasa .przel, user 28.10) */
.ulub-link .ik { width: 20px; height: 20px; fill: currentColor; }
@media (max-width: 759px) { .ulub-link { display: none; } }

/* logowanie: zacheta do rejestracji (user 28.10) */
.zacheta-konto { margin: 20px 0 0; padding: 18px; border: 2px dashed var(--akcent); border-radius: var(--r); background: var(--karta); text-align: center; display: grid; gap: 10px; }
.zacheta-konto h2 { margin: 0; font-size: 1.15rem; }
.zacheta-konto p { margin: 0; color: var(--szary); }
.btn--obrys { background: transparent; color: var(--akcent); border: 2px solid var(--akcent); }
.btn--obrys:hover { background: var(--akcent); color: var(--na-akcencie); }

/* 28.10 zmiana nazwy w /konto */
.zmien-nazwe { font-weight: 400; margin-top: 4px; }
.zmien-nazwe summary { cursor: pointer; color: var(--akcent); font-size: .85rem; }
.zmien-nazwe form { display: flex; gap: 8px; margin: 8px 0 4px; }
.zmien-nazwe input { flex: 1; min-width: 0; }
.zmien-typ form { display: grid; gap: 10px; }
.zmien-typ form .btn { justify-self: start; }

/* 28.10 przycisk „Pokaż hasło” (js/haslo.js) i zmiana hasla w /konto */
.haslo-w { position: relative; display: block; }
.haslo-w input { width: 100%; padding-right: 48px; }
.haslo-pokaz { position: absolute; top: 0; right: 0; bottom: 0; width: 44px; display: grid; place-items: center; background: none; border: 0; color: var(--szary); cursor: pointer; border-radius: var(--r); }
.haslo-pokaz:hover, .haslo-pokaz[aria-pressed="true"] { color: var(--akcent); }
.haslo-pokaz svg { width: 22px; height: 22px; fill: currentColor; }
.zmien-haslo summary { cursor: pointer; color: var(--akcent); font-weight: 600; }
.zmien-haslo form { margin-top: 12px; }
.zmien-haslo .btn { justify-self: start; }
/* 28.10: ukryte radia segmentu (position:absolute) w .karta-form .pole dostawaly width:100% liczone od okna -> poziomy pasek na /rejestracja */
.segment label { position: relative; }

/* 28.10 strona SEO /darmowe-ogloszenia-motoryzacyjne */
.moto-seo h2 { margin-top: 1.8em; }
.moto-seo .przyciski { display: flex; flex-wrap: wrap; gap: 10px; }
.tabela-wrap { overflow-x: auto; }
.tabela-porownanie { width: 100%; border-collapse: collapse; font-size: .95rem; }
.tabela-porownanie th, .tabela-porownanie td { padding: 9px 10px; border-bottom: 1px solid var(--linia); text-align: left; vertical-align: top; }
.tabela-porownanie thead th { color: var(--szary); font-weight: 600; }
.tabela-porownanie td:nth-child(2) { color: var(--akcent); }
.kroki { padding-left: 1.4em; display: grid; gap: 8px; }
.wzor { margin: 12px 0; padding: 14px 18px; border-left: 4px solid var(--akcent); background: var(--karta); border-radius: 0 var(--r) var(--r) 0; }
.wzor p { margin: 0 0 8px; } .wzor p:last-child { margin: 0; }

/* strona glowna: przycisk pod najnowszymi na cala szerokosc (user 28.10); po .btn--duzy{width:auto} z media */
.najnowsze__wszystkie { display: block; width: 100%; text-align: center; margin-top: 18px; }

/* linki w opisie ogloszenia: dlugie adresy nie rozpychaja strony (user 28.10) */
.ogloszenie__opis p { overflow-wrap: anywhere; }

/* ogloszenie: skrot trwajacej rozmowy zamiast formularza (user 28.10) */
.kontakt__rozmowa { display: grid; gap: 8px; }
.kontakt__rozmowa h2.pole__et { margin: 0; font-size: 1rem; }
.watek--skrot { margin: 0; }
.watek--skrot .dymek { max-width: 92%; }

/* moje ogloszenia: wyszukiwarka (user 28.10) */
.moje-szukaj { display: flex; gap: 8px; margin: 0 0 12px; flex-wrap: wrap; }
.moje-szukaj input[type=search] { flex: 1 1 220px; min-width: 0; font: inherit; padding: 10px 12px; border: 1px solid var(--linia); border-radius: var(--r); background: var(--karta); color: var(--tekst); }

/* stronicowanie z numerami: 5 stron przed i po aktualnej, na telefonie 2 (user 28.10) */
.strony { gap: 6px; }
.strony__nr { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0 8px; border-radius: var(--r); border: 1px solid var(--linia); background: var(--karta); color: var(--tekst); text-decoration: none; font-weight: 600; font-variant-numeric: tabular-nums; }
.strony__nr:hover { border-color: var(--akcent); }
.strony__nr[aria-current] { background: var(--akcent); border-color: var(--akcent); color: var(--na-akcencie); }
.strony__przerwa { color: var(--szary); padding: 0 2px; }
@media (max-width: 599px) { .strony__daleko, .strony__tekst { display: none; } }

/* kolejka moderacji: cale ogloszenie (user 28.10) */
.kolejka-poz__zdjecia { display: flex; gap: 8px; flex-wrap: wrap; margin: 8px 0; }
.kolejka-poz__zdjecia img { width: 160px; height: 120px; object-fit: contain; background: var(--tlo); border-radius: 8px; }
.kolejka-poz__linki { margin: 8px 0; padding: 10px 12px; border: 1px solid #b45309; border-radius: 8px; background: color-mix(in srgb, #b45309 8%, var(--karta)); }
.kolejka-poz__linki ul { margin: 6px 0; padding-left: 1.2em; }
.kolejka-poz__linki code { overflow-wrap: anywhere; font-size: .9rem; }
.kolejka-poz__param { display: grid; grid-template-columns: max-content 1fr; gap: 2px 12px; margin: 8px 0; font-size: .9rem; }
.kolejka-poz__param dt { color: var(--szary); }
.kolejka-poz__param dd { margin: 0; }

/* panel: blokada konta + usuniecie ogloszen (user 28.10) */
.blokada-konta { margin: 12px 0; }
.blokada-konta form { display: grid; gap: 8px; margin-top: 10px; }
.blokada-konta input[type=text] { font: inherit; padding: 8px 10px; border: 1px solid var(--linia); border-radius: var(--r); }
