/* m.css — arkusz wersji smartfonowej 1g.pl (2026-09-04).
   Jedna kolumna, duże cele dotykowe, dwa komplety tokenów (jasny domyślny,
   ciemny tylko po włączeniu w menu). Nie dziedziczy nic z styles-orange.css —
   celowo, bo to właśnie kaskada 3500 linii CSS wersji pełnej robiła z telefonu
   nieczytelną mieszankę (białe kafelki + jasny tekst w trybie ciemnym). */

:root{
  --bg:#FFFFFF; --surface:#F4F6F8; --surface-2:#EAEEF2; --ink:#16212B; --muted:#5B6774;
  --line:#E1E6EB; --accent:#FE5504; --accent-ink:#FFFFFF; --accent-soft:#FFF0E8;
  --price:#0F7A3D; --shadow:0 1px 2px rgba(22,33,43,.06);
  --nav-h:60px; --top-h:56px;
  color-scheme:light;
}
html[data-mode="dark"]{
  --bg:#0F1B1E; --surface:#1A2A2E; --surface-2:#243539; --ink:#ECF1F3; --muted:#A3B3B8;
  --line:#2B3E43; --accent:#FF6A24; --accent-ink:#FFFFFF; --accent-soft:#3A2415;
  --price:#5FD38D; --shadow:none;
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.m-body{
  margin:0;background:var(--bg);color:var(--ink);
  font:16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom));
  -webkit-tap-highlight-color:transparent;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit;color:inherit}
h1,h2,h3{margin:0;font-weight:700;line-height:1.2}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}

/* ── pasek górny ─────────────────────────────────────── */
.m-top{
  position:sticky;top:0;z-index:30;height:var(--top-h);
  display:flex;align-items:center;gap:8px;padding:0 8px 0 12px;
  background:var(--bg);border-bottom:1px solid var(--line);
  padding-top:env(safe-area-inset-top);
}
.m-top__logo{
  font-weight:900;font-size:24px;letter-spacing:-.5px;color:var(--accent);
  display:inline-flex;align-items:center;height:48px;padding:0 4px;
}
.m-top__back{display:inline-flex;align-items:center;justify-content:center;width:44px;height:48px;font-size:24px;margin-left:-8px}
.m-top__title{font-weight:700;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}
.m-top__right{margin-left:auto;display:flex;gap:2px}
.m-top__ic{
  display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;
  font-size:24px;background:none;border:0;border-radius:12px;
}
.m-top__ic:active{background:var(--surface-2)}

/* ── wyszukiwarka: jedno pole + przycisk pod nim ──────── */
.m-search{display:flex;flex-direction:column;gap:10px;padding:16px 16px 4px}
.m-search__label{font-weight:700;font-size:20px;letter-spacing:-.2px}
.m-search__input{
  width:100%;height:58px;padding:0 16px;font-size:18px;
  background:var(--surface);color:var(--ink);
  border:2px solid var(--line);border-radius:14px;appearance:none;-webkit-appearance:none;
}
.m-search__input::placeholder{color:var(--muted)}
.m-search__input:focus{border-color:var(--accent);background:var(--bg);outline:none}
.m-search__input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
.m-search__btn{
  width:100%;height:56px;border:0;border-radius:14px;
  background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:18px;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
}
.m-search__btn:active{filter:brightness(.92)}

/* ── sekcje ───────────────────────────────────────────── */
.m-sec{padding:16px 16px 0}
.m-sec__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}
.m-sec__head h2{font-size:19px}
.m-sec__head a,.m-sec__link{color:var(--accent);font-weight:600;font-size:15px;padding:6px 0;background:none;border:0;font-family:inherit}
/* 2026-09-05: „Ostatnio oglądane" — rząd kart przewijany palcem, bez widocznego paska przewijania */
.m-hscroll{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;margin:0 -16px;padding:0 16px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.m-hscroll::-webkit-scrollbar{display:none}
/* 2026-09-05: Oferta dnia na telefonie — szeroka karta ze zdjęciem i tytułem na gradiencie
   (jak .otd-card na desktopie); jedna oferta = pełna szerokość, więcej = przewijany rząd.
   Miejsce opłacone, więc kolor ognia (#FE5504) jest stały niezależnie od motywu. */
.m-sec__ico,.m-otd__flame{color:#FE5504;font-size:17px;vertical-align:-1px}
.m-otd{position:relative;flex:0 0 280px;scroll-snap-align:start;display:block;aspect-ratio:16/10;border-radius:14px;overflow:hidden;background:var(--surface-2);color:#fff}
.m-hscroll--one .m-otd{flex:1 1 100%}
.m-otd img{width:100%;height:100%;object-fit:cover;display:block}
.m-otd::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.8) 100%)}
.m-otd__flag{position:absolute;left:10px;top:10px;z-index:2;display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:6px;background:#FE5504;color:#fff;font-size:11px;font-weight:800;letter-spacing:.3px;text-transform:uppercase}
.m-otd__body{position:absolute;left:12px;right:12px;bottom:10px;z-index:2;display:flex;flex-direction:column;gap:3px}
.m-otd__title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;font-weight:600;line-height:1.3;text-shadow:0 1px 2px rgba(0,0,0,.5)}
.m-otd__price{font-size:17px;font-weight:800;text-shadow:0 1px 2px rgba(0,0,0,.5)}
.m-hscroll .m-card{flex:0 0 156px;scroll-snap-align:start}

/* kafelki kategorii 2 kolumny */
.m-cats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.m-cat{
  display:flex;align-items:center;gap:12px;min-height:64px;padding:10px 12px;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
}
.m-cat:active{background:var(--surface-2)}
.m-cat i{font-size:24px;color:var(--accent);flex:0 0 28px;text-align:center}
.m-cat b{display:block;font-size:14px;font-weight:600;line-height:1.25}
.m-cat small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.m-cats__all{
  grid-column:1/-1;justify-content:center;background:var(--accent-soft);border-color:transparent;
  color:var(--accent);font-weight:700;min-height:52px;
}

/* karty ogłoszeń 2 kolumny */
.m-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.m-card{display:flex;flex-direction:column;gap:4px}
.m-card__img{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:var(--surface-2)}
.m-card__img img{width:100%;height:100%;object-fit:cover}
.m-card__price{font-weight:700;font-size:16px;margin-top:4px}
.m-card__title{font-size:14px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.m-card__meta{font-size:12px;color:var(--muted)}

/* wiersze wyników */
.m-list{display:flex;flex-direction:column}
.m-row{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}
.m-row:active{background:var(--surface)}
.m-row__img{flex:0 0 120px;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:var(--surface-2)}
.m-row__img img{width:100%;height:100%;object-fit:cover}
.m-row__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.m-row__title{font-size:15px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.m-row__price{font-weight:700;font-size:16px}
.m-row__meta{font-size:12px;color:var(--muted);margin-top:auto}

/* filtry na stronie wyników */
.m-filters{display:flex;gap:8px;padding:8px 16px 12px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.m-filters::-webkit-scrollbar{display:none}
.m-filters select,.m-filters input{
  height:44px;padding:0 12px;font-size:15px;border:1px solid var(--line);border-radius:12px;
  background:var(--surface);color:var(--ink);appearance:none;-webkit-appearance:none;flex:0 0 auto;
}
.m-filters select{padding-right:32px;background-image: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");background-repeat:no-repeat;background-position:right 12px center}
.m-filters input{width:110px}
.m-filters button{height:44px;padding:0 16px;border:0;border-radius:12px;background:var(--accent);color:var(--accent-ink);font-weight:700;flex:0 0 auto}
.m-count{padding:0 16px 8px;color:var(--muted);font-size:14px}
.m-count b{color:var(--ink);font-weight:700}
/* nagłówek strony w treści (województwo) — tam, gdzie pasek górny nie mieści pełnego h1 */
.m-h1{padding:12px 16px 6px;font-size:22px;line-height:1.25;text-wrap:balance}
.m-cloud--in{padding:0 0 12px}
.m-crumbs{padding:12px 16px 0;font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px}
.m-crumbs a{color:var(--accent)}
.m-more{
  display:flex;align-items:center;justify-content:center;margin:16px;height:52px;border-radius:14px;
  border:2px solid var(--accent);color:var(--accent);font-weight:700;font-size:16px;background:none;width:calc(100% - 32px);
}
.m-more[disabled]{opacity:.5}
.m-empty{padding:40px 24px;text-align:center;color:var(--muted)}
.m-empty i{font-size:44px;display:block;margin-bottom:8px;color:var(--line)}
.m-seo{margin:16px;border:1px solid var(--line);border-radius:14px;padding:0 16px;color:var(--muted);font-size:14px;line-height:1.5}
.m-seo summary{padding:12px 0;font-weight:600;color:var(--ink);cursor:pointer;list-style:none}
.m-seo summary::-webkit-details-marker{display:none}
.m-seo summary::after{content:"›";float:right;font-size:20px;line-height:1;transform:rotate(90deg)}
.m-seo[open] summary::after{transform:rotate(-90deg)}
.m-seo p{margin:0 0 12px}
.m-seo h2{font-size:15px;margin:0 0 8px;color:var(--ink)}
.m-seo a{color:var(--accent)}
/* tylko dla czytników ekranu i robota (h1 strony głównej jak na desktopie) */
.m-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* lista kategorii (drill-down) */
.m-tree{display:flex;flex-direction:column}
.m-tree a{
  display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 16px;border-bottom:1px solid var(--line);
}
.m-tree a:active{background:var(--surface)}
.m-tree a>i:first-child{font-size:22px;color:var(--accent);flex:0 0 28px;text-align:center}
.m-tree a>img{width:36px;height:36px;border-radius:8px;object-fit:cover;flex:0 0 36px}
.m-tree b{flex:1;font-weight:500;font-size:16px}
.m-tree small{color:var(--muted);font-size:13px}
.m-tree .bi-chevron-right{color:var(--muted);font-size:14px}
.m-tree__all{background:var(--accent-soft);color:var(--accent);font-weight:700}

/* ── dolna nawigacja ─────────────────────────────────── */
.m-nav{
  position:fixed;left:0;right:0;bottom:0;z-index:30;height:calc(var(--nav-h) + env(safe-area-inset-bottom));
  padding-bottom:env(safe-area-inset-bottom);
  display:grid;grid-template-columns:1fr 1fr 72px 1fr 1fr;align-items:stretch;
  background:var(--bg);border-top:1px solid var(--line);
}
.m-nav__a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--muted);font-size:11px}
.m-nav__a i{font-size:22px}
.m-nav__a.is-active{color:var(--accent)}
/* 2026-09-05: liczba nieprzeczytanych na ikonie „Wiadomości" (zalogowani; wypełnia m.js) */
.m-nav__a i{position:relative}
.m-nav__badge{position:absolute;top:-4px;left:calc(100% - 8px);min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#E63946;color:#fff;font-family:inherit;font-weight:800;font-size:10px;line-height:16px;text-align:center;font-style:normal;border:2px solid var(--bg);box-sizing:content-box}
.m-nav__badge[hidden]{display:none}
.m-nav__add{
  align-self:center;justify-self:center;width:52px;height:52px;border-radius:50%;
  background:var(--accent);color:var(--accent-ink);display:flex;align-items:center;justify-content:center;font-size:26px;
  box-shadow:0 4px 12px rgba(254,85,4,.35);
}

/* ── menu pełnoekranowe ──────────────────────────────── */
.m-menu{position:fixed;inset:0;z-index:40;background:var(--bg);overflow-y:auto;padding-top:env(safe-area-inset-top)}
.m-menu__bar{height:var(--top-h);display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 16px;border-bottom:1px solid var(--line)}
.m-menu__logo{font-weight:900;font-size:24px;color:var(--accent)}
.m-menu__list{display:flex;flex-direction:column;padding:8px 0}
.m-menu__list a{display:flex;align-items:center;gap:14px;min-height:54px;padding:0 20px;font-size:17px}
.m-menu__list a i{font-size:22px;color:var(--muted);width:28px;text-align:center}
.m-menu__list a:active{background:var(--surface)}
.m-menu__strong{font-weight:700}
.m-menu__cta{color:var(--accent);font-weight:700}
.m-menu__cta i{color:var(--accent)!important}
.m-menu__row{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:0 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:17px}
.m-menu__row span i{margin-right:14px;color:var(--muted);width:28px;text-align:center;display:inline-block;font-size:22px;vertical-align:-2px}
.m-menu__foot{padding:16px 20px;color:var(--muted);font-size:15px}
.m-menu__foot a{display:inline-flex;align-items:center;gap:10px;min-height:44px}
.m-switch{width:52px;height:32px;border-radius:16px;border:0;background:var(--surface-2);position:relative;padding:0;flex:0 0 auto}
.m-switch span{position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:left .15s}
.m-switch[aria-checked="true"]{background:var(--accent)}
.m-switch[aria-checked="true"] span{left:23px}
body.m-menu-open{overflow:hidden}

/* ── stopka ──────────────────────────────────────────── */
.m-foot{margin-top:24px;padding:20px 16px 12px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}
.m-foot__links{display:flex;flex-wrap:wrap;gap:4px 16px;margin-bottom:12px}
.m-foot__links a{min-height:36px;display:inline-flex;align-items:center}
.m-foot p{margin:0}
/* linki SEO stopki (2026-09-05) — akordeony <details>: zwinięte nie zabierają ekranu, rozwinięte
   dają te same linki co stopka desktopu; 44px summary = strefa dotyku wg Apple HIG */
.m-foot__seo{margin:-6px 0 10px}
.m-foot__sec{border-bottom:1px solid var(--line)}
.m-foot__sec summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:44px;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent}
.m-foot__sec summary::-webkit-details-marker{display:none}
.m-foot__sec summary::after{content:"";width:8px;height:8px;margin-right:6px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg) translate(-2px,-2px);transition:transform .15s}
.m-foot__sec[open] summary::after{transform:rotate(-135deg) translate(-2px,-2px)}
.m-foot__cloud,.m-cloud{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0 14px}
.m-foot__cloud a,.m-cloud--in a{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:17px;background:var(--surface);border:1px solid var(--line);font-size:13px;color:var(--ink)}
.m-foot__cities{padding:0 0 10px}
.m-foot__cities p{margin:0 0 8px;line-height:1.8}
.m-foot__cities b{color:var(--ink);margin-right:6px}
.m-foot__cities a{color:var(--muted);text-decoration:underline;text-underline-offset:2px;margin-right:10px}

/* ── baner cookies (wspólny skrypt) — na telefonie krótki, u dołu nad nawigacją */
#cc-bar{bottom:calc(var(--nav-h) + env(safe-area-inset-bottom))!important;max-height:45vh;overflow:auto}

@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* chipy podkategorii na wynikach */
.m-chip{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 14px;border-radius:20px;background:var(--surface);border:1px solid var(--line);font-size:14px;font-weight:600;white-space:nowrap;flex:0 0 auto}
.m-chip small{color:var(--muted);font-weight:400}
.m-chip:active{background:var(--surface-2)}

/* ══════════════════════════════════════════════════════════════════════
   STRONA OGŁOSZENIA (/m/ogloszenie.php) — dodane 2026-09-05.
   Układ jak w aplikacjach OLX/Allegro: galeria na całą szerokość z przesuwaniem,
   pod nią cena i tytuł, opis zwijany, szczegóły w dwóch kolumnach, karta
   sprzedającego, mapa, podobne. Na dole STAŁY pasek kontaktu (Zadzwoń / Napisz)
   zamiast nawigacji — na stronie oferty to jedyne dwa przyciski, które się liczą.
   ══════════════════════════════════════════════════════════════════════ */
body.m-body--ad{padding-bottom:calc(var(--cta-h,72px) + env(safe-area-inset-bottom))}

/* galeria: natywne przewijanie z przyciąganiem, zero JS do samego przesuwania */
.m-gal{position:relative;background:#000}
.m-gal__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;aspect-ratio:4/3;max-height:70vh}
.m-gal__track::-webkit-scrollbar{display:none}
.m-gal__track>a{flex:0 0 100%;scroll-snap-align:start;display:block;height:100%}
.m-gal__track img{width:100%;height:100%;object-fit:contain;background:#000}
.m-gal__count{position:absolute;right:12px;bottom:12px;background:rgba(0,0,0,.65);color:#fff;font-size:13px;font-weight:600;padding:5px 10px;border-radius:14px;pointer-events:none}
.m-gal__badge{position:absolute;left:12px;top:12px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;padding:5px 10px;border-radius:8px;pointer-events:none}
.m-gal__dots{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:center;gap:5px;pointer-events:none}
.m-gal__dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.45)}
.m-gal__dots i.is-on{background:#fff}

/* pełny ekran (lightbox) */
.m-lb{position:fixed;inset:0;z-index:60;background:#000;display:flex;flex-direction:column}
.m-lb__bar{display:flex;align-items:center;justify-content:space-between;color:#fff;padding:calc(env(safe-area-inset-top) + 4px) 8px 4px 16px;font-weight:600}
.m-lb__bar button{background:none;border:0;color:#fff;width:48px;height:48px;font-size:26px}
.m-lb__track{flex:1;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.m-lb__track::-webkit-scrollbar{display:none}
.m-lb__track>div{flex:0 0 100%;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;overflow:auto}
.m-lb__track img{max-width:100%;max-height:100%;object-fit:contain}
body.m-lb-open{overflow:hidden}

/* nagłówek oferty */
.m-ad__head{padding:14px 16px 6px}
.m-ad__meta{font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 10px;margin-bottom:8px}
.m-ad__title{font-size:20px;font-weight:700;line-height:1.25;letter-spacing:-.2px;text-wrap:balance}
.m-ad__price{margin-top:10px;font-size:26px;font-weight:800;letter-spacing:-.4px;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px}
.m-ad__price small{font-size:14px;font-weight:600;color:var(--muted)}
.m-ad__price--job{font-size:20px}
.m-ad__pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.m-ad__pills span{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:17px;background:var(--surface);border:1px solid var(--line);font-size:13px;font-weight:600}
.m-ad__pills span i{color:var(--accent)}

/* banery stanu (zakończone / właściciel / nieopłacone) */
.m-ad__banner{margin:12px 16px 0;padding:12px 14px;border-radius:12px;font-size:14px;line-height:1.4;display:flex;gap:10px;align-items:flex-start}
.m-ad__banner i{font-size:20px;flex:0 0 auto}
.m-ad__banner--warn{background:#FFF4E5;color:#7A3E00;border:1px solid #FFD9A8}
html[data-mode="dark"] .m-ad__banner--warn{background:#3A2A12;color:#FFD9A8;border-color:#5A3F1C}
.m-ad__banner--info{background:var(--surface);color:var(--ink);border:1px solid var(--line)}
.m-ad__banner a{color:var(--accent);font-weight:700}

/* sekcje z tytułem */
.m-ad__sec{padding:18px 16px 0}
.m-ad__sec h2{font-size:17px;margin-bottom:10px}
.m-ad__sec+.m-ad__sec{margin-top:6px}
.m-ad__hr{height:8px;background:var(--surface);margin-top:18px}

/* opis zwijany do ~8 linii */
.m-desc{font-size:15px;line-height:1.55;white-space:pre-line;overflow-wrap:anywhere}
.m-desc.is-clamped{display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden}
.m-desc__more{margin-top:8px;background:none;border:0;padding:8px 0;color:var(--accent);font-weight:700;font-size:15px}

/* szczegóły: dwie kolumny etykieta / wartość */
.m-spec{display:grid;grid-template-columns:1fr;gap:0;margin:0}
.m-spec div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.m-spec dt{color:var(--muted);margin:0;flex:0 0 42%}
.m-spec dd{margin:0;font-weight:600;text-align:right;overflow-wrap:anywhere}
.m-tags{display:flex;flex-wrap:wrap;gap:8px}
.m-tags span{padding:6px 12px;border-radius:8px;background:var(--surface);border:1px solid var(--line);font-size:13px}

/* sprzedający */
.m-seller{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.m-seller__av{width:52px;height:52px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 52px}
.m-seller__av img{width:100%;height:100%;object-fit:cover}
.m-seller__body{flex:1;min-width:0}
.m-seller__name{font-weight:700;font-size:16px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.m-seller__name .bi-patch-check-fill{color:#1E88E5;font-size:15px}
.m-seller__sub{font-size:13px;color:var(--muted);margin-top:2px}
.m-seller>.bi-chevron-right{color:var(--muted)}
.m-seller__tag{font-size:11px;font-weight:700;padding:2px 7px;border-radius:6px;background:var(--accent);color:#fff}

/* lokalizacja + mapa statyczna */
.m-map{position:relative;display:block;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:var(--surface-2);margin-top:8px}
.m-map img{width:100%;height:100%;object-fit:cover}
.m-map__pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);color:var(--accent);font-size:36px;text-shadow:0 2px 4px rgba(0,0,0,.35)}
.m-map__area{position:absolute;left:50%;top:50%;width:120px;height:120px;transform:translate(-50%,-50%);border-radius:50%;background:rgba(254,85,4,.22);border:2px solid rgba(254,85,4,.6)}
.m-map__btn{position:absolute;right:10px;bottom:10px;background:var(--bg);color:var(--ink);font-size:13px;font-weight:600;padding:8px 12px;border-radius:10px;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.m-loc__txt{font-size:15px;display:flex;align-items:center;gap:8px}
.m-loc__txt i{color:var(--accent)}

/* stopka oferty: ID, zgłoś, źródło */
.m-ad__foot{padding:16px;font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center}
.m-ad__foot a{color:var(--accent);font-weight:600;min-height:36px;display:inline-flex;align-items:center;gap:4px}

/* stały pasek kontaktu */
.m-cta{
  position:fixed;left:0;right:0;bottom:0;z-index:30;padding:10px 16px calc(10px + env(safe-area-inset-bottom));
  display:flex;gap:10px;background:var(--bg);border-top:1px solid var(--line);
}
.m-cta a,.m-cta button{
  flex:1;height:52px;border-radius:14px;border:0;font-weight:700;font-size:16px;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
}
.m-cta__main{background:var(--accent);color:var(--accent-ink)}
.m-cta__alt{background:var(--accent-soft);color:var(--accent)}
.m-cta__ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line)!important}
.m-cta__note{flex:1;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px;text-align:center}

/* arkusz dolny (wiadomość / zgłoszenie / udostępnij) */
.m-sheet{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;justify-content:flex-end;background:rgba(0,0,0,.5)}
.m-sheet__box{background:var(--bg);border-radius:18px 18px 0 0;padding:8px 16px calc(16px + env(safe-area-inset-bottom));max-height:88vh;overflow:auto}
.m-sheet__grip{width:40px;height:4px;border-radius:2px;background:var(--line);margin:4px auto 12px}
.m-sheet__title{font-size:18px;font-weight:700;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}
.m-sheet__title button{background:none;border:0;width:44px;height:44px;font-size:22px;margin-right:-10px}
.m-sheet textarea,.m-sheet input[type=text],.m-sheet input[type=email],.m-sheet select{
  width:100%;padding:12px 14px;font-size:16px;border:2px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);appearance:none;-webkit-appearance:none
}
.m-sheet textarea{min-height:120px;resize:vertical;font-family:inherit}
.m-sheet textarea:focus,.m-sheet input:focus,.m-sheet select:focus{border-color:var(--accent);outline:none;background:var(--bg)}
.m-sheet__row{margin-top:10px}
.m-sheet__btn{width:100%;height:52px;border:0;border-radius:14px;background:var(--accent);color:#fff;font-weight:700;font-size:16px;margin-top:14px}
.m-sheet__btn[disabled]{opacity:.5}
.m-sheet__msg{margin-top:10px;font-size:14px;color:var(--muted)}
.m-sheet__msg.is-err{color:#C62828}
.m-sheet__msg.is-ok{color:var(--price)}
.m-sheet__quick{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.m-sheet__quick button{height:36px;padding:0 12px;border-radius:18px;border:1px solid var(--line);background:var(--surface);font-size:13px}
.m-sheet__opts{display:flex;flex-direction:column;gap:4px}
.m-sheet__opts label{display:flex;align-items:center;gap:12px;min-height:44px;font-size:15px}
.m-sheet__opts input[type=radio]{width:20px;height:20px;accent-color:var(--accent)}
body.m-sheet-open{overflow:hidden}

/* toast */
.m-toast{position:fixed;left:16px;right:16px;bottom:calc(var(--cta-h,72px) + 12px + env(safe-area-inset-bottom));z-index:70;background:var(--ink);color:var(--bg);padding:12px 16px;border-radius:12px;font-size:14px;text-align:center;box-shadow:0 4px 16px rgba(0,0,0,.25)}

/* serduszko w pasku górnym: stan „obserwowane" */
.m-top__ic.is-fav{color:var(--accent)}

/* podobne: siatka 2 kolumny w sekcji */
.m-ad__sec .m-grid{margin-top:4px}
/* mozaika kafelków mapy statycznej (3×3, punkt w środku przez translate z PHP) */
.m-map__tiles{position:absolute;left:50%;top:50%;width:768px;height:768px}
.m-map__tiles img{position:absolute;width:256px;height:256px;max-width:none}

/* ══════════════════════════════════════════════════════════════════════
   LISTING + LOKALIZACJA (2026-09-05) — „jak aplikacja OLX" (wymóg właściciela):
   serce na wierszu/karcie, plakietka TOP/Wyróżnione, pasek Filtry+sortowanie
   przyklejony pod paskiem górnym, chipy aktywnych filtrów z „×", arkusz filtrów
   z żywym licznikiem, lista ⇄ siatka, pełnoekranowy wybór miejsca (województwa →
   miasta → dzielnice + promień), chip lokalizacji pod wyszukiwarką.
   Wcześniej: wiersz był jednym <a> (serce nie mogło być osobnym przyciskiem),
   filtry = rząd selectów bez ceny/atrybutów, miasto = select z 60 pozycji.
   ══════════════════════════════════════════════════════════════════════ */

/* pasek górny na podstronach: logo zostaje (droga na „/"), tytuł po kresce */
.m-top--sub .m-top__logo{font-size:20px;padding:0 2px}
.m-top--sub .m-top__title{border-left:1px solid var(--line);padding-left:10px;margin-left:2px;line-height:1.2}

/* chip lokalizacji pod polem wyszukiwania (otwiera wybór miejsca) */
.m-search__lochold{display:none}
.m-search__loc{
  display:flex;align-items:center;gap:10px;width:100%;height:48px;padding:0 14px;margin-top:-2px;
  border:2px solid var(--line);border-radius:14px;background:var(--surface);
  font-size:15px;font-weight:600;text-align:left;
}
.m-search__loc:active{background:var(--surface-2)}
.m-search__loc>i:first-child{color:var(--accent);font-size:18px}
.m-search__loc>span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m-search__loc>i:last-child{color:var(--muted);font-size:13px}

/* wiersz wyniku: cały wiersz klikalny przez ::after tytułu, serce = osobny przycisk NAD nim (z-index) */
.m-row{position:relative}
.m-row__body{padding-right:40px}
.m-row__title{color:inherit}
.m-row__title::after{content:"";position:absolute;inset:0;z-index:1}
.m-fav{
  position:absolute;right:8px;top:8px;z-index:2;width:44px;height:44px;border:0;border-radius:50%;
  background:transparent;color:var(--muted);font-size:22px;display:inline-flex;align-items:center;justify-content:center;
}
.m-fav:active{background:var(--surface-2)}
.m-fav.is-fav{color:var(--accent)}
.m-fav.is-bump i{animation:m-bump .3s ease}
@keyframes m-bump{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}
/* karta (strona główna / podobne / siatka): serce na zdjęciu, na kółku w kolorze tła */
.m-card{position:relative}
.m-card__img{position:relative}
.m-card .m-fav{right:6px;top:6px;width:36px;height:36px;font-size:18px;background:var(--bg);box-shadow:0 1px 4px rgba(0,0,0,.2)}
.m-card__title{color:inherit}
.m-card__title::after{content:"";position:absolute;inset:0;z-index:1}
/* plakietka promocji (klasy z promo_top_badge(): badge-vip/featured/top/highlight) */
.m-badge{display:inline-flex;align-items:center;align-self:flex-start;height:20px;padding:0 8px;border-radius:6px;font-size:11px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;background:var(--accent);color:#fff;white-space:nowrap}
.m-card__img .m-badge{position:absolute;left:8px;top:8px;z-index:1}
.m-badge.badge-top,.m-badge.badge-vip{background:#111827;color:#FFD166}
.m-badge.badge-highlight{background:#FFD166;color:#3B2A00}
.m-row.is-promo{background:var(--accent-soft)}
html[data-mode=dark] .m-row.is-promo{background:#26201B}

/* pasek narzędzi: Filtry (licznik) + sortowanie + chipy aktywnych filtrów; przyklejony pod paskiem górnym */
.m-tools{position:sticky;top:var(--top-h);z-index:20;display:flex;gap:8px;align-items:center;padding:10px 16px;background:var(--bg);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.m-tools::-webkit-scrollbar{display:none}
.m-tools__btn{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 14px;border-radius:20px;border:1px solid var(--ink);background:var(--bg);color:var(--ink);font-weight:700;font-size:14px;flex:0 0 auto;white-space:nowrap}
.m-tools__btn:active{background:var(--surface-2)}
.m-cnt{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--accent);color:#fff;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}
.m-tools__sort{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;border-radius:20px;border:1px solid var(--line);background:var(--surface);font-size:14px;font-weight:600;flex:0 0 auto}
.m-tools__sort i{color:var(--muted);font-size:13px}
.m-tools__sort select{appearance:none;-webkit-appearance:none;border:0;background:transparent;font:inherit;font-weight:600;color:inherit;padding:0 18px 0 0;height:38px;
  background-image: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");background-repeat:no-repeat;background-position:right 2px center}
.m-chip--on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.m-chip--on .bi-x-lg{font-size:12px;margin-left:2px}
.m-chip--lok .bi-geo-alt-fill{font-size:13px}
.m-chip--clear{background:transparent;border-color:transparent;color:var(--muted);text-decoration:underline;padding:0 6px}

/* wiersz „Znaleziono N" + przełącznik lista/siatka */
.m-count{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 2px 16px}
.m-count__view{width:44px;height:40px;border:0;background:none;color:var(--muted);font-size:20px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center}
.m-count__view[aria-pressed="true"]{color:var(--accent);background:var(--accent-soft)}
/* siatka 2 kolumny: te same wiersze, inny układ (wybór w localStorage 1g-m-view) */
.m-list--grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;padding:6px 16px 0}
.m-list--grid .m-row{flex-direction:column;gap:6px;padding:0;border:0;background:transparent}
.m-list--grid .m-row__img{flex:none;width:100%;border-radius:12px}
.m-list--grid .m-row__body{padding-right:0;gap:2px}
.m-list--grid .m-row__price{order:1}
.m-list--grid .m-row__title{order:2;font-size:14px}
.m-list--grid .m-row__meta{order:3;margin-top:2px}
.m-list--grid .m-badge{position:absolute;left:8px;top:8px;z-index:1}
.m-list--grid .m-fav{right:6px;top:6px;width:36px;height:36px;font-size:18px;background:var(--bg);box-shadow:0 1px 4px rgba(0,0,0,.2)}
.m-list--grid .m-row.is-promo .m-row__img{outline:2px solid var(--accent);outline-offset:-2px}
.m-list__info{padding:14px 16px;text-align:center;color:var(--muted);font-size:14px}

/* arkusz filtrów: nagłówek i stopka stałe, środek przewijany */
.m-fsheet .m-sheet__box{display:flex;flex-direction:column;max-height:92vh;padding:8px 0 0;overflow:hidden}
.m-fsheet .m-sheet__grip{margin-bottom:8px}
.m-fsheet .m-sheet__title{padding:0 16px;margin-bottom:0}
.m-fsheet__body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:0 16px 8px}
.m-fsheet__foot{display:flex;gap:10px;align-items:center;padding:10px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg)}
.m-fsheet__clear{flex:0 0 auto;height:50px;padding:0 14px;display:inline-flex;align-items:center;color:var(--muted);font-weight:600;font-size:15px;text-decoration:underline}
.m-fsheet__go{flex:1;height:50px;border:0;border-radius:14px;background:var(--accent);color:#fff;font-weight:700;font-size:16px}
.m-fsheet__go.is-busy{opacity:.75}
.m-fs{padding:14px 0;border-bottom:1px solid var(--line)}
.m-fs__h{font-weight:700;font-size:15px;margin-bottom:10px}
.m-fs__row{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);font-size:15px;font-weight:600;text-align:left}
.m-fs__row>i:first-child{color:var(--accent);font-size:18px}
.m-fs__row>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.m-fs__row>i:last-child{color:var(--muted);font-size:14px}
.m-fs--attr{padding:4px 0}
.m-fs--attr>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:48px;font-weight:700;font-size:15px;cursor:pointer}
.m-fs--attr>summary::-webkit-details-marker{display:none}
.m-fs--attr>summary small{flex:1;font-weight:500;color:var(--accent);font-size:13px;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m-fs--attr>summary::after{content:"›";font-size:22px;color:var(--muted);transform:rotate(90deg);line-height:1;transition:transform .15s}
.m-fs--attr[open]>summary::after{transform:rotate(-90deg)}
.m-fs--attr[open]>summary{margin-bottom:4px}
.m-fs--attr>*:not(summary){margin-bottom:10px}
.m-pills{display:flex;flex-wrap:wrap;gap:8px}
.m-pill{position:relative;display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 14px;border-radius:20px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:14px;font-weight:600;cursor:pointer;user-select:none;-webkit-user-select:none}
.m-pill input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.m-pill:has(input:checked),.m-pill.is-on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.m-pill:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}
.m-range{display:flex;align-items:center;gap:8px}
.m-range input{flex:1;min-width:0;width:auto;height:46px;padding:0 12px;font-size:16px;border:2px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);appearance:none;-webkit-appearance:none}
.m-range input:focus{border-color:var(--accent);outline:none;background:var(--bg)}
.m-range input::-webkit-outer-spin-button,.m-range input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.m-range span,.m-range small{color:var(--muted);font-size:14px;flex:0 0 auto}
.m-opts{display:flex;flex-direction:column}
.m-opts label{display:flex;align-items:center;gap:12px;min-height:44px;font-size:15px}
.m-opts input{width:22px;height:22px;accent-color:var(--accent);margin:0;flex:0 0 22px}
.m-opts__more{align-self:flex-start;background:none;border:0;padding:8px 0;color:var(--accent);font-weight:700;font-size:14px}

/* pełnoekranowy wybór miejsca */
.m-loc{position:fixed;inset:0;z-index:55;background:var(--bg);color:var(--ink);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top)}
.m-loc__bar{display:flex;align-items:center;gap:4px;height:var(--top-h);padding:0 8px;border-bottom:1px solid var(--line);flex:0 0 auto}
.m-loc__title{flex:1;min-width:0;font-weight:700;font-size:17px;padding-left:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m-loc__search{position:relative;display:flex;align-items:center;padding:10px 16px;flex:0 0 auto}
.m-loc__search>i{position:absolute;left:30px;color:var(--muted);font-size:16px;pointer-events:none}
.m-loc__search input{width:100%;height:50px;padding:0 44px;font-size:16px;border:2px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);appearance:none;-webkit-appearance:none}
.m-loc__search input:focus{border-color:var(--accent);outline:none;background:var(--bg)}
.m-loc__search input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
.m-loc__search button{position:absolute;right:20px;width:40px;height:40px;border:0;background:none;color:var(--muted);font-size:18px}
.m-loc__body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:16px}
.m-loc__h{padding:14px 16px 8px;font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}
.m-loc__h small{text-transform:none;letter-spacing:0;font-weight:500}
.m-loc__chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px}
.m-loc__chips .m-chip.is-sel{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.m-loc__list{display:flex;flex-direction:column}
.m-loc__item{display:flex;align-items:center;gap:14px;width:100%;min-height:54px;padding:6px 16px;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);text-align:left;font-size:16px}
.m-loc__item:active{background:var(--surface)}
.m-loc__item>i:first-child{font-size:20px;color:var(--accent);width:24px;text-align:center;flex:0 0 24px}
.m-loc__item>span{flex:1;min-width:0}
.m-loc__item b{display:block;font-weight:600;line-height:1.25}
.m-loc__item small{display:block;color:var(--muted);font-size:13px;margin-top:1px}
.m-loc__item>.bi-chevron-right{color:var(--muted);font-size:14px}
.m-loc__item--act b{font-weight:700}
.m-loc__item.is-sel{background:var(--accent-soft)}
.m-loc__item.is-sel>.bi-check-lg{color:var(--accent);font-size:18px}
.m-loc__item mark{background:none;color:var(--accent);font-weight:800}
.m-loc__cityhead{display:flex;align-items:center;gap:12px;padding:16px 16px 4px}
.m-loc__cityhead>i{font-size:24px;color:var(--accent)}
.m-loc__cityhead b{display:block;font-size:20px;font-weight:800;line-height:1.2}
.m-loc__cityhead small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.m-loc__radius{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px}
.m-loc__none{padding:16px;color:var(--muted);font-size:14px;margin:0}
.m-loc__foot{flex:0 0 auto;padding:10px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg)}
.m-loc__go{width:100%;height:52px;border:0;border-radius:14px;background:var(--accent);color:#fff;font-weight:700;font-size:16px}
.m-loc__go[disabled]{opacity:.6}
body.m-loc-open{overflow:hidden}

/* ── 2026-09-06: sekcje handlowe (mandat właściciela: promocje + inne oferty użytkownika)
   Wspólne dla /m/index.php, /m/wyniki.php, /m/ogloszenie.php. Kolor akcentu tylko na
   ikonach i CTA — kafelki promowane odróżnia plakietka, nie tło (nie „krzyczymy"). */
.m-ad__sec .m-sec__head{margin-bottom:10px}
.m-ad__sec .m-sec__head h2{margin-bottom:0}
.m-sec__note{color:var(--muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}
.m-ad__sec .m-hscroll{margin-top:4px}
/* baner upsell dla właściciela ogłoszenia (link, nie div) */
.m-ad__banner--promo{background:var(--accent-soft);color:var(--ink);border:1px solid rgba(254,85,4,.35);text-decoration:none;align-items:center}
.m-ad__banner--promo>i:first-child{color:var(--accent)}
.m-ad__banner--promo small{display:block;color:var(--muted);font-size:12px;line-height:1.35;margin-top:2px}
.m-ad__banner--promo div{flex:1 1 auto}
.m-ad__banner__go{color:var(--muted);font-size:16px!important}
/* „Sprzedajesz coś podobnego?" pod ogłoszeniem + „Dodaj ogłoszenie" na listingu */
.m-cta-add{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;border:1px dashed var(--accent);background:var(--accent-soft);color:var(--ink);text-decoration:none}
.m-cta-add>i:first-child{color:var(--accent);font-size:26px;flex:0 0 auto}
.m-cta-add>i:last-child{color:var(--muted);font-size:16px;flex:0 0 auto}
.m-cta-add span{flex:1 1 auto;line-height:1.3}
.m-cta-add b{display:block;font-size:15px}
.m-cta-add small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
/* kafelki „Dla sprzedających" (index) — 2 kolumny, ikona + tytuł + jedna linia */
.m-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.m-tile{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:14px;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;min-height:96px}
.m-tile:active{background:var(--surface-2)}
.m-tile i{font-size:22px;color:var(--accent)}
.m-tile b{font-size:14px;line-height:1.25}
.m-tile small{color:var(--muted);font-size:12px;line-height:1.3}
.m-tile--wide{grid-column:1/-1;flex-direction:row;align-items:center;min-height:0}
.m-tile--wide i{font-size:26px}
.m-tile--wide span{flex:1 1 auto}
.m-tile--wide b,.m-tile--wide small{display:block}
/* sklepy (index) — poziomy przewijak z inicjałami */
.m-stores{display:flex;gap:10px;overflow-x:auto;margin:0 -16px;padding:0 16px 4px;scrollbar-width:none}
.m-stores::-webkit-scrollbar{display:none}
.m-store{flex:0 0 150px;display:flex;align-items:center;gap:10px;padding:10px;border-radius:14px;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none}
.m-store__logo{flex:0 0 40px;width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.m-store__logo img{width:100%;height:100%;object-fit:cover}
.m-store b{display:block;font-size:13px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.m-store small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
/* listing: sekcje między wierszami — pełna szerokość także w trybie siatki */
.m-list .m-inrow{grid-column:1/-1;padding:0 16px}
.m-list--grid .m-inrow{padding:0}
.m-inrow--promo{margin:8px 0 4px}
.m-list .m-sec{padding-top:12px}
