/* ============================================================================
   mobile.css — поправките, които СЕ ВИЖДАТ.
   Зарежда се ПОСЛЕДЕН, за да надделява над style.css. Всичко тук е или
   универсално безопасно, или е заключено в `@media (max-width:767px)`,
   тоест десктопът не се пипа.
   ========================================================================== */

/* --- 1. Универсални, безопасни -------------------------------------------- */

/* iOS Safari сам уголемява текста при завъртане на телефона. Спираме го. */
html{ -webkit-text-size-adjust:100%; text-size-adjust:100% }

/* Никоя снимка не разпъва страницата настрани. */
img, svg, video, canvas{ max-width:100% }

/* Сивото правоъгълниче при докосване на връзка в Android Chrome. */
a, button, [role="button"], input, select, textarea{ -webkit-tap-highlight-color:transparent }

/* Котвите (#секция) да не се крият зад лепкавия хедър. */
:target{ scroll-margin-top:90px }


/* --- 2. Само телефон ------------------------------------------------------ */
@media (max-width:767px){

  /* НАЙ-ВАЖНАТА ПОПРАВКА.
     Под 16px iOS Safari зумва ЦЯЛАТА страница щом пипнеш полето, и после
     не се отзумва — потребителят остава с изместен настрани сайт. Сега
     полетата са 13–15.5px, тоест това се случва на всяко търсене.       */
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  select,
  textarea{
    font-size:12px;
  }

  /* Големина за пръст. 44px е минимумът, под който се уцелва трудно. */
  .dpd-qty__btn,
  .burger,
  .lightbox__close,
  .lightbox__nav,
  .pagination a, .pagination span,
  .dpd-tab{
    min-height:var(--tap);
    min-width:var(--tap);
  }

  /* Лепкавите ленти да не влизат под чертичката на iPhone. */
  .stickybar{
    padding-bottom:var(--safe-b);
  }

  /* Таблиците със съвместимости и OE номера се плъзгат настрани в
     собствената си кутия, вместо да разпъват страницата.              */
  .dpd-tabpanel table,
  .oe-table,
  .compat-table{
    display:block;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    max-width:100%;
  }

  /* Дълъг артикулен номер без интервали чупи подредбата. */
  .dpd-top__title,
  .dpd-xref__chip,
  .pdp-crumbs__nav{
    overflow-wrap:anywhere;
  }
}


/* ============================================================================
   ХЕДЪР НА ТЕЛЕФОН — по макета на дизайнера.
   Ред 1:  ☰ Меню · ЛОГО · Гараж · Количка · Профил
   Ред 2:  търсачка на цял ред, с червен квадрат-лупа

   Прагът е 860px, защото точно там сегашният хедър минава в мобилен вид
   (`@media(max-width:860px)` в style.css). Така няма зона, в която старите
   и новите правила да се бият. Над 860px десктопът е НЕПИПНАТ.
   ========================================================================== */

/* по подразбиране (десктоп) тези са скрити — включват се само на телефон */
.search__btn-ic,
.ic-mob{ display:none }

@media (max-width:860px){

  /* горната черна лента я няма в макета */
  .topbar{ display:none }

  .header{ border-bottom:1px solid var(--line); background:#fff }

  /* ТРИ РЕДА: бургер · лого · количка | три карета | търсачка.
     Редовете се получават с два псевдоелемента с `flex-basis:100%` — те
     принуждават нов ред, без да се пипа маркъпът (той е общ с десктопа). */
  .header__inner{
    display:flex; flex-wrap:wrap; align-items:center;
    height:auto; padding:8px 8px 10px; gap:6px;
  }
  .header__inner::before,
  .header__inner::after{ content:''; flex-basis:100%; height:0; margin:0 }
  .header__inner::before{ order:5 }
  .header__inner::after { display:none }

  /* `.header__actions` е обвивка само за десктоп. Тук се разтваря, за да могат
     количката, любимите и профилът да се наредят самостоятелно по редовете. */
  .header__actions{ display:contents }

  /* --- ред 1 --- */
  /* Без надпис „Меню“ — само иконката, на един ред с логото. Големината я
     дава правилото за пръст по-горе (44px); тук отпада само пълнежът,
     за да е иконката точно в средата на квадрата. */
  .burger      { order:1; display:grid; place-items:center; padding:0 }
  .logo        { order:2; margin-right:auto; display:flex; align-items:center;
                 padding-left:4px; min-width:0; flex:0 1 auto }
  .header__actions .cart{ flex:none }
  /* --- ред 2: трите карета --- */
  .garage      { order:6; margin-left:0 }
  .haction-fav { order:7; display:block }
  .header__actions #profileBtn{ order:8 }
  /* --- лупата: на мястото на постоянната търсачка --- */
  .hsearch{
    order:3; display:grid; place-items:center; flex:none;
    width:42px; height:42px; padding:0;
    background:var(--bg-soft); border:1px solid var(--line); border-radius:12px;
    color:var(--dark); cursor:pointer;
  }
  .hsearch svg{ width:22px; height:22px }
  .header__actions .cart{ order:4 }

  /* --- търсачката: скрита, докато не се отвори на цял екран --- */
  .search-wrap{ display:none }

  /* Логото взима цялото място между бургера и лупата и расте с ширината на екрана —
     докато стане 40px високо, по-нагоре не (Мариян, 06.11.2026; дотогава 29px височина и
     27vw ширина — рисуваше се само ~23px високо и не се четеше). */
  .header .logo{ flex:1 1 0; min-width:0 }
  .header .logo__img{ width:100%; height:auto; max-width:190px; max-height:40px; object-fit:contain; object-position:left center }

  /* Двойките икони: на телефон върви плътната (`.ic-mob`), на десктоп —
     контурната. Без тези два реда в карето на профила няма никаква иконка. */
  .ic-mob { display:block }
  .ic-desk{ display:none }

  /* --- бургерът --- */
  .burger__ic,
  .burger__x{ display:block; width:26px; height:22px; color:var(--dark) }
  .burger__x{ display:none }
  .burger.is-open .burger__ic{ display:none }
  .burger.is-open .burger__x { display:block }

  /* ---------- КОЛИЧКАТА: червено хапче горе вдясно ---------- */
  .header__actions .cart{
    height:auto; border-radius:14px; box-shadow:0 6px 16px rgba(79,135,1,.28);
    background:var(--accent-grad);
  }
  /* Височината е ТОЧНО колкото лупата (42px) — двете стоят едно до друго и
     разлика от 4-8px им личи веднага. */
  .cart .cartbtn{
    display:grid; grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center; gap:11px; height:42px; padding:0 8px 0 11px; color:#fff;
  }
  .cartbtn__ico svg{ width:24px; height:24px; color:#fff }
  .cartbtn__ico .ic-mob{ width:26px; height:22px; fill:currentColor }
  /* Баджът стърчеше 8px извън иконката и опираше в „Количка". Прибран е и е
     смален, а разстоянието до текста е увеличено. */
  .cartbtn__count{ top:-5px; right:-4px; min-width:17px; height:17px; font-size:10px;
                   background:#fff; color:var(--accent); border:none; font-weight:800 }
  .cartbtn__txt  { display:flex; flex-direction:column; gap:1px; min-width:0; text-align:left }
  .cartbtn__label{ display:block; font-size:11.5px; font-weight:600; line-height:1.15; color:#fff }
  .cartbtn__sum  { display:block; font-size:14px; font-weight:800; line-height:1.15; color:#fff;
                   white-space:nowrap }
  .cartbtn__toggle{
    display:grid; place-items:center; width:auto; height:auto; padding:0 2px 0 0;
    background:none; border:0; box-shadow:none;
  }
  .cartbtn__caret{ width:17px; height:17px; color:#fff; transform:rotate(-90deg) }

  /* ---------- ТРИТЕ КАРЕТА ---------- */
  /* Гаражът получава малко повече място — там текстът е най-дълъг
     („Моят гараж" + марката и модела), а „Любими" и „Профил" са къси. */
  .garage{ flex:1.25 1 0 }
  .haction-fav,
  .header__actions #profileBtn{ flex:1 1 0 }
  .garage,
  .haction-fav,
  .header__actions #profileBtn{
    min-width:0;
    background:#fff; border:1px solid var(--line); border-radius:13px;
  }
  .garage{ background:#f1f6ed; border-color:#d8e6cf }

  /* Общият строеж на трите: икона · два реда · стрелка. */
  .garage .garage__main,
  .haction-fav .haction--fav,
  .header__actions #profileBtn{
    display:grid; grid-template-columns:auto minmax(0,1fr);
    align-items:center; gap:7px;
    padding:8px 7px; min-height:56px;
    text-decoration:none;
  }
  /* Стрелка „›" в макета има, но при 375px карето е 111px широко: стрелката
     плюс отстоянието ѝ изяждат 17 от тях, а целият бутон и без това води
     нататък. Затова тук я няма — на по-широки телефони също, за да са еднакви. */
  /* `align-items:stretch` (не flex-start, както е на десктоп): иначе редовете
     се разпъват по съдържанието си и излизат извън карето, вместо да се режат
     с многоточие. */
  .garage .garage__txt,
  .haction-fav .haction__txt,
  .header__actions #profileBtn .haction__txt{
    display:flex; flex-direction:column; align-items:stretch;
    gap:1px; min-width:0; text-align:left;
  }
  .garage .garage__label,
  .haction-fav .haction__kicker,
  .header__actions #profileBtn .haction__kicker{
    font-size:11.5px; font-weight:700; color:var(--dark);
    text-transform:none; letter-spacing:0; line-height:1.2;
    overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  }
  .garage .garage__car,
  .haction-fav .haction__name,
  .header__actions #profileBtn .haction__name{
    font-size:10.5px; font-weight:400; color:var(--muted); line-height:1.25;
    overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:none;
  }
  /* Надписът под иконата е за стария вид. Крие се само там, където има
     двуредов текст, който да го замести — при ГОСТ профилният бутон няма име,
     тъй че „Профил" остава единственият надпис и карето не бива да е празно. */
  .haction-fav .haction__label,
  .header__actions #profileBtn.haction--user .haction__label{ display:none }
  .header__actions #profileBtn:not(.haction--user) .haction__label{
    display:block; font-size:11.5px; font-weight:700; color:var(--dark);
    line-height:1.2; text-align:left;
    overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  }

  /* --- гараж --- */
  .garage__btn  { height:auto; background:none; border:0; box-shadow:none; border-radius:0; padding:0 }
  .garage__btn::before{ display:none }
  .garage__toggle{ display:none }
  .garage__ico  { width:auto; height:auto; background:none; box-shadow:none; border-radius:0;
                  color:var(--dark); flex:none }
  .garage__ico svg{ width:22px; height:22px; stroke:var(--dark); stroke-width:1.6 }
  .garage__ico .ic-mob{ width:22px; height:19px; stroke:none; fill:currentColor }
  .garage__count{ top:-6px; right:-7px; min-width:18px; height:18px; font-size:10.5px;
                  border:2px solid #f1f6ed; background:var(--accent) }
  /* Снимката на активната кола. Размерът се задава на самата снимка, а не на
     полето: полето носи и брояча, а `overflow:hidden` би го отрязал. */
  .garage__ico--photo .garage__ico__img{
    width:30px; height:27px; border-radius:8px; object-fit:cover; display:block;
  }
  .garage__ico.garage__ico--photo{ width:auto; height:auto; padding:0; background:none }

  /* --- любими --- */
  .haction-fav__ico{ position:relative; display:grid; place-items:center; flex:none }
  .haction--fav svg{ width:22px; height:22px; stroke:var(--dark) }
  .haction-fav__count{ top:-6px; right:-8px; min-width:18px; height:18px; font-size:10.5px;
                       background:var(--accent); color:#fff; border:2px solid #fff }
  .haction-fav__count[hidden]{ display:none }

  /* --- профил --- */
  .header__actions #profileBtn{ padding:8px 7px }
  /* Стрелката вътре в името е за десктопното каре. */
  #profileBtn .haction__name svg{ display:none }
  .haction__ico{ flex:none }
  .haction svg { width:25px; height:25px; fill:none; color:var(--dark) }
  .haction .ic-mob{ width:22px; height:25px; fill:currentColor }
  .haction__avatar{ width:30px; height:30px; border:2px solid #fff }
  .haction__dot{
    display:block; position:absolute; right:-1px; bottom:0;
    width:11px; height:11px; border-radius:50%;
    background:#16a34a; border:2px solid #fff;
  }

  /* ---------- ТЪРСАЧКАТА НА ЦЯЛ ЕКРАН ----------
     На телефон постоянна лента в хедъра яде 62px от всяка страница, а
     подсказките излизаха в тесен балон под нея. Тук лентата се показва само
     при докосване на лупата — и заема целия екран, за да има място за
     историята и резултатите. */
  body.is-msearch{ overflow:hidden }
  /* Плаващият чат е на z-index 5000 и стоеше върху списъка с търсения. */
  body.is-msearch .aiw,
  body.is-msearch .totop{ display:none }
  body.is-msearch .search-wrap{
    position:fixed; inset:0; z-index:1300;
    background:#fff; padding:10px 12px 0;
    /* Затварянето е ВЛЯВО, като стрелка назад — там го търси ръката на телефон
       и десният край остава на търсачката. Долепено до ръба вдясно то
       изглеждаше отрязано и не приличаше на бутон. */
    display:grid; grid-template-columns:auto minmax(0,1fr); grid-template-rows:auto minmax(0,1fr);
    gap:8px 8px; align-content:start;
  }
  .msearch-close{
    grid-area:1 / 1 / 2 / 2; align-self:center;
    display:grid; place-items:center; width:40px; height:40px; flex:none;
    background:var(--bg-soft); border:1px solid var(--line); border-radius:11px;
    padding:0; color:var(--dark); cursor:pointer;
  }
  .msearch-close svg{ width:21px; height:21px }
  body.is-msearch .search{ grid-area:1 / 2 / 2 / 3 }

  .search{ height:52px; border-radius:12px; padding:5px 5px 5px 14px;
           background:var(--bg-soft); border:2px solid transparent }
  .search__lead { width:22px; height:22px; color:var(--dark) }
  /* `min-width:0` — за flex елемент подразбиращото се е `auto`, а при <input>
     това значи ширината по атрибута `size` (20 знака ≈ 179px). Полето отказваше
     да се свие под нея и при 344px бутонът „Търси" излизаше 25px извън карето. */
  .search__input{ min-width:0; padding:0 12px; font-size:15px }
  .search__btn  { width:auto; padding:0 18px; justify-content:center; border-radius:9px; box-shadow:none }
  .search__btn-txt{ display:block; font-size:14px }
  .search__btn-ic { display:none }

  /* Подсказките: не балонче под лентата, а целият останал екран. */
  body.is-msearch .ac{
    grid-area:2 / 1 / 3 / 3;
    position:static; inset:auto; margin:0;
    max-height:none; height:100%; overflow:auto;
    border:0; border-radius:0; box-shadow:none;
    opacity:1; visibility:visible; transform:none;
    padding-bottom:16px;
  }
}


/* ---- много тесни телефони (320px: iPhone SE 1, стари Android-и) ----
   Бургер 44 + лого 128 + количка 133 = 305, плюс отстоянията и полето — 341
   при екран от 320. Количката падаше на свой ред и хедърът ставаше 265px.
   Тук надписът „Количка" отпада (остава сумата, която е същественото), а
   логото и каретата се свиват точно колкото да се съберат. */
@media (max-width:360px){
  .header__inner{ padding:8px 8px 10px; gap:6px }
  /* 32vw беше ПО-ШИРОКО от 27-те vw на основния блок: при 344px логото ставаше
     114px вместо 97 и заедно с количката редът не се събираше. */
  /* логото — колкото място остане (горе, .header .logo) */

  /* Количката се свива до иконка + сума. Надписът „Количка" и стрелката
     отпадат — стрелката е украса, целият бутон и без това води към количката. */
  .cart .cartbtn{ height:42px; padding:0 11px 0 9px; gap:9px }
  .cartbtn__label{ display:none }
  .cartbtn__toggle{ display:none }
  .cartbtn__sum{ font-size:13.5px }
  .cartbtn__ico svg{ width:22px; height:22px }
  .cartbtn__ico .ic-mob{ width:24px; height:20px }
  /* Баджът стърчеше 8px навън и лягаше върху сумата. */
  .cartbtn__count{ top:-7px; right:-6px; min-width:17px; height:17px; font-size:10px }

  .garage .garage__main,
  .haction-fav .haction--fav,
  .header__actions #profileBtn{ padding:7px 6px; gap:6px; min-height:52px }
  .garage .garage__label,
  .haction-fav .haction__kicker,
  .header__actions #profileBtn .haction__kicker{ font-size:11px }
  .garage .garage__car,
  .haction-fav .haction__name,
  .header__actions #profileBtn .haction__name{ font-size:10px }
  .haction__avatar{ width:28px; height:28px }
  .garage__ico--photo .garage__ico__img{ width:28px; height:25px }

  /* „Бързи действия" в профила: две колонки не се събират в 320px и карето
     излизаше с 9px извън екрана. */
  .account .acc-quick__grid{ grid-template-columns:1fr }
}


/* ============================================================================
   НАЧАЛНА СТРАНИЦА — героят
   На телефон от цялото каре остава САМО търсачката по автомобил (`.finder`).
   Заглавието, подзаглавието, двата бутона и числата (1M+ / 24ч / 14 дни) се
   скриват — на малък екран изяждаха 523px, преди човек да стигне до това,
   заради което е дошъл.
   ========================================================================== */
/* .hero__trust е само за телефон — на десктоп там стоят числата.
   Стои ПРЕДИ медийния блок: при равна конкретност печели по-късното. */
.hero__trust{ display:none }

@media (max-width:860px){
  /* Банерът е ОТДЕЛНО КАРЕ между търсачката на сайта и „Търси по автомобил" —
     с полета отстрани и заоблени ъгли, а не от ръб до ръб. Затова снимката е
     фон на самото каре (.hero__content), а не на цялата секция. */
  .hero{ background:#fff; color:#fff }
  .hero__bg{ display:none }
  .hero__inner{ padding:0 12px 12px; gap:0; grid-template-columns:1fr }

  .hero__content{
    display:flex; flex-direction:column; justify-content:center;
    position:relative; z-index:2;
    /* Карето излиза ДО РЪБА на екрана: `.hero__inner` има 12px поле заради
       търсачката под него, затова тук се компенсира с отрицателен margin. */
    margin:0 -12px;
    padding:14px 16px 68px;   /* долното поле е за частта, която картата покрива */
    border-radius:0;
    overflow:hidden;
    /* Височината е точно колкото е снимката при ПЪЛНАТА широчина на екрана,
       за да се вижда цялата.

       ЕДИН файл, 800px: при двоен пиксел на телефон от 375px трябват 750 —
       800 ги покрива. По-широко копие за гъст пиксел беше излишно. */
    min-height:calc(100vw * 941 / 1672);
    background-color:#0c0c0d;
    background-image:
      linear-gradient(90deg,rgba(10,10,12,.88) 0%,rgba(10,10,12,.60) 38%,rgba(10,10,12,.08) 62%,transparent 78%),
      url("../img/hero-mobile.webp");
    background-repeat:no-repeat, no-repeat;
    background-position:center, center top;
    background-size:cover, 100% auto;
    max-width:none;
  }
  .hero__tag{ display:none }                     /* заглавието вече го казва */
  .hero__title{
    font-size:20px; line-height:1.14; letter-spacing:-.4px;
    margin:0 0 6px; max-width:64%;
  }
  .hero__sub{
    font-size:11.5px; line-height:1.4; color:#c8c8d0;
    margin:0 0 10px; max-width:60%;
  }
  .hero__cta{ display:none }
  .hero__stats{ display:none }                   /* числата са за десктоп */

  /* трите обещания под текста */
  .hero__trust{ display:flex; flex-wrap:wrap; gap:5px 12px; margin-top:0; max-width:64% }
  .hero__trust span{
    display:inline-flex; align-items:center; gap:5px;
    font-size:10.5px; font-weight:600; color:#e6e6ea; white-space:nowrap;
  }
  .hero__trust svg{ width:14px; height:14px; flex:none; color:#fff }

  /* Търсачката ляга ЧАСТИЧНО ВЪРХУ банера — оттам идва усещането за дълбочина.
     Отрицателното поле я издърпва нагоре, а сянката я отделя от снимката. */
  .finder{
    position:relative; z-index:3;
    margin-top:-34px;
    padding:16px; border-radius:14px;
    box-shadow:0 -4px 20px rgba(15,15,20,.16), 0 6px 18px rgba(15,15,20,.06);
  }
}



/* ============================================================================
   МОДУЛЪТ „Търси по автомобил" — изчистено оформление на телефон.
   ПОЛЕТАТА НЕ СА ПИПАНИ — същите пет селекта в същия ред. Смененo е само
   облеклото: по-тънка рамка вместо тежка сянка, бели полета вместо сиви,
   по-дребен шрифт, икона вляво във всяко поле.
   ========================================================================== */
@media (max-width:860px){

  /* --- картата: тънка рамка, лека сянка, по-малко поле --- */
  .finder{
    padding:16px;
    border:1px solid var(--line);
    border-radius:14px;
    box-shadow:0 2px 10px rgba(20,20,30,.06);
  }

  /* --- заглавието: по-дребно и по-леко --- */
  .finder__title{ gap:9px; margin-bottom:14px; font-size:17px; font-weight:700 }
  .finder__title svg{ width:22px; height:22px }

  /* всяко поле на цял ред, както е „Марка“. Две в редица режат дългите
     имена на модели и двигатели. */
  .finder__grid{ grid-template-columns:1fr; gap:10px; margin-bottom:12px }

  /* --- полетата: бели, с тънка рамка, само стрелка --- */
  .finder__sel{
    height:48px;
    padding:0 36px 0 14px;
    border:1px solid var(--line);
    border-radius:10px;
    font-size:14px;
    background-color:#fff;
    background-repeat:no-repeat;
    background-position:right 13px center;
    background-size:11px 7px;
    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' stroke='%23555' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  }
  .finder__sel:focus{ border-color:var(--accent); box-shadow:0 0 0 3px rgba(79,135,1,.10) }

  /* Заключените полета изобщо не се показват — картата тръгва само с
     „Марка“ и всяко следващо изниква щом предишното е избрано. Скриптът
     вече вдига и сваля `disabled` (main.js), тоест не му трябва промяна.
     Бутонът „Покажи части“ НЕ се крие — той е `.finder__btn`, не `__sel`. */
  .finder__sel:disabled{ display:none }

  /* --- бутонът не се показва на телефон ---
     Избереш ли двигател, отиваш направо при частите. main.js вече умее това
     (пътят, по който върви, когато бутон изобщо няма) — виж бележката там. */
  .finder__btn{ display:none }
}


/* ============================================================================
   ЛЕНТАТА С ПРЕДИМСТВАТА — на телефон става 2x2 от отделни карти.
   Беше четири колони на сив фон, без рамки. Сега всяко предимство е своя
   бяла карта с тънка рамка, както в макета.
   ========================================================================== */
@media (max-width:860px){
  .usp{ background:#fff }
  .usp__inner{
    grid-template-columns:1fr 1fr;
    gap:10px;
    padding:14px 12px;
  }
  .usp__item{
    align-items:center;
    gap:10px;
    padding:6px 6px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:12px;
  }
  .usp__item svg{ width:30px; height:30px }
  /* текстът наследяваше междуредието на страницата и двата реда на подзаглавието
     зейваха. Затова се задава и на обвивката, не само на самите елементи. */
  .usp__item > div{ min-width:0; line-height:1.25 }
  .usp__item strong{ font-size:12px; line-height:1.25; margin-bottom:3px }
  .usp__item span{ display:block; font-size:12px; line-height:1.25 }
}


/* ============================================================================
   КАТЕГОРИИ — карти по две в редица, както в макета.
   Снимка отгоре, а долу заглавие вляво и червена стрелка вдясно.
   ========================================================================== */
@media (max-width:860px){
  .cards--cat{ grid-template-columns:1fr 1fr; gap:10px }

  /* Решетка вместо колона, за да седнат заглавието и стрелката на ЕДИН ред.
     Имената на категориите тук са по-дълги от макета („Трансмисия и
     Задвижване") и се пренасят на два-три реда; при подредба в колона
     стрелката падаше под тях. Сега е до тях и се центрира спрямо текста. */
  .card--photo{
    border-radius:14px;
    /* в макета няма рамка — картата се държи само от мека сянка */
    border:0;
    box-shadow:0 2px 10px rgba(20,20,30,.07);
    /* Изрично, защото `.card{padding:20px 16px}` в style.css важи само под
       480px. Между 481 и 860px полето падаше на нула и заглавието опираше
       в ръба на картата. */
    padding:16px;
    display:grid;
    grid-template-columns:1fr auto;
    grid-template-areas:
      "media media"
      "title arrow";
    align-content:start;
  }

  /* снимката: по-ниска от квадрат и без чертата под нея — картата е едно цяло */
  .card--photo .card__media{ grid-area:media; aspect-ratio:4/4; padding:12px; border-bottom:0 }

  .card--photo .card__info{ grid-area:title; align-self:center; padding:0; flex:none }
  .card--photo .card__info h3{ font-size:12.5px; line-height:1.25; margin:0 }
  /* подзаглавието го няма в макета */
  .card--photo .card__info p{ display:none }

  /* Стрелката се показваше само при посочване с мишка, тоест на телефон
     не се виждаше никога. Тук е винаги видима. */
  .card--photo .card__arrow{
    grid-area:arrow; position:static; align-self:center;
    opacity:1; transform:none;
    /* стрелката седи в бледо кръгче */
    width:24px; height:24px; padding:0;
    display:flex; align-items:center; justify-content:center;
    border-radius:50%;
    background:rgb(75 66 66 / 8%);
    font-size:14px; line-height:1;
  }
}


/* ============================================================================
   ЗАГЛАВИЯ НА СЕКЦИИТЕ на телефон.
   От подадените стойности реално се различават само две — останалите
   (тежест 900, letter-spacing -.8px, цвят, position, display, margin-top на
   подзаглавието) вече са същите в style.css и няма смисъл да се повтарят.
   ========================================================================== */
@media (max-width:860px){
  .section__title{ font-size:clamp(22px, 3vw, 28px) }   /* беше clamp(26px, 3vw, 36px) */
  .section__lead { font-size:12px }                      /* беше 16px */
}


/* ============================================================================
   РАЗПЪНАТА КАТЕГОРИЯ (модалът с подкатегориите)
   На телефон подкатегориите са по една на ред, разпънати докрай. Бяха по три
   (под 480px по две) и дългите имена като „Датчик за износване на накладките“
   се пренасяха на четири реда.
   ========================================================================== */
@media (max-width:860px){
  .subgrid{ grid-template-columns:1fr; gap:8px }
  /* .subitem вече е ред със снимка вляво и име вдясно — трябва му само въздух */
  .subitem{ padding:8px 10px; gap:10px }
  .subitem__img{ width:42px; height:42px }
  .subitem__name{ font-size:13px }
  .subgroup__title{ font-size:14px; margin-bottom:10px }
  .catmodal__body{ padding:14px }

  /* Търсачката и хиксчето заемат целия ред, подравнени с плочките отдолу.
     Полето беше с ФИКСИРАНА широчина (230px / max 42vw) и оставаше къс ред,
     който не се връзваше с нищо. */
  .catmodal__head  { padding:14px; gap:12px }
  .catmodal__tools { width:100%; gap:8px }
  .catmodal__search{ flex:1; min-width:0 }
  .catmodal__search input{ width:auto; max-width:none; flex:1; min-width:0 }
}


/* ============================================================================
   СКОРОШНИ КОЛИ под търсачката по автомобил (само за нелогнат посетител).
   Ползва облика на картите от „Продължи оттам", но всяка кола заема ЦЕЛИЯ
   ред — там те са в редица, която се пренася, и на телефон се цепят на две.
   ========================================================================== */
.recent-cars{ display:none }          /* на десктоп го няма — там има гараж в хедъра */

@media (max-width:860px){
  /* Карти със снимката, които се плъзгат настрани; следващата наднича отдясно, за да личи,
     че има още. Една кола — на цял ред. Заглавието — като другите на началната (черта +
     зелената част). Мариян, 06.11.2026 — дотогава бяха редове с малка снимка. */
  .recent-cars{ display:block; margin-top:20px }
  .recent-cars__label{
    position:relative; display:block; margin:0 0 10px; padding-left:18px;
    font-size:18px; font-weight:900; letter-spacing:-.4px; line-height:1.15; color:#0f1b26;
  }
  .recent-cars__label::before{ content:''; position:absolute; left:3px; top:1px; bottom:-1px; width:6px; border-radius:2px; background:linear-gradient(180deg, #6fb31a, #3f6e00); transform:skewX(-14deg) }
  .recent-cars__label span{ color:var(--accent) }
  /* същите карти и в „Продължи оттам" (home-trail) за влезлия — там колите не са горе */
  .recent-cars__list, .section--trail .foryou-cars{
    display:flex; gap:12px; margin:0 -20px; padding:2px 20px 16px; overflow-x:auto;
    scroll-snap-type:x mandatory; scroll-padding:0 20px; scrollbar-width:none; -webkit-overflow-scrolling:touch;
  }
  .recent-cars__list::-webkit-scrollbar, .section--trail .foryou-cars::-webkit-scrollbar{ display:none }
  .rcar{
    flex:0 0 80%; width:auto; min-width:0; scroll-snap-align:start;
    display:flex; flex-direction:column; align-items:stretch; gap:0; padding:0; overflow:hidden;
    border:1px solid #e3e9de; border-radius:16px; background:#fff;
    box-shadow:0 12px 24px -16px rgba(15,27,38,.45);
  }
  .rcar:only-child{ flex-basis:100% }
  .rcar:hover{ transform:none }
  .rcar__pic{
    position:relative; display:grid; place-items:center; aspect-ratio:16 / 9; color:#9fb08f;   /* като снимката (640×360) — нищо не се реже */
    background:linear-gradient(160deg, #f5f9f0 0%, #e4eed8 100%);
  }
  .rcar__pic img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover }
  .rcar__pic--small img{ object-fit:contain; padding:12px 20px; mix-blend-mode:multiply }   /* малката (140×105, бял фон) — цяла */
  .rcar__pic > svg{ width:46px; height:46px }
  .rcar__body{ display:flex; align-items:center; gap:10px; padding:11px 12px 12px 14px; border-top:1px solid #edf1ea }
  .rcar .foryou-car__info{ flex:1 }
  .rcar .foryou-car__model{ font-size:15px; font-weight:800 }
  .rcar .foryou-car__spec{ font-size:12.5px }
  .rcar__go{
    flex:none; width:36px; height:36px; display:grid; place-items:center; border-radius:50%; color:#fff;
    background:linear-gradient(135deg, #6fb31a 0%, #3f6e00 100%); box-shadow:0 6px 14px -6px rgba(63,110,0,.75);
  }
  .rcar__go svg{ width:18px; height:18px }
  .recent-cars .foryou-x, .section--trail .rcar .foryou-x{ top:8px; right:8px; width:28px; height:28px; opacity:1; background:rgba(255,255,255,.94); border:0; box-shadow:0 2px 8px rgba(15,27,38,.2) }
  .recent-cars .foryou-x svg, .section--trail .rcar .foryou-x svg{ width:12px; height:12px }
  /* Същите коли в „Продължи оттам" по-долу — повторение; там отпадат (home-trail). */
  .foryou-group--dupcars,
  .section--trail-onlycars{ display:none }
}


/* ============================================================================
   „Продължи оттам" — колите на цял ред.
   Картата НЕ беше къса, а точно обратното: излизаше 29px извън блока си и
   9px извън екрана. Причината е `min-width:auto` — стойността по подразбиране
   за flex-дете, която не му дава да се свие под естествената широчина на
   съдържанието. Дългите редове („1.4 i.e. 16V T.S. (930.A3A) · 103 к.с ·
   1996–2001") разпъваха реда, вместо да се отрежат с многоточие.
   ========================================================================== */
@media (max-width:860px){
  /* На телефон групата е КОЛОНА, но си остава с `align-items:flex-start` от
     десктопа — а там това значи „всяко дете колкото си е съдържанието".
     Затова редът с колата се разпъваше по най-дългия текст вместо да се
     побере в блока. `stretch` го връзва за широчината на родителя. */
  .foryou-group{ align-items:stretch }
  .foryou-cars,
  .foryou-cats,
  .foryou-searches{ min-width:0 }
  .foryou-car     { width:100%; min-width:0 }
  .foryou-car__info{ min-width:0 }
}


/* ============================================================================
   „Продължи оттам" на телефон — по-стегнато и подредено.
   Голямото заглавие отпада: на негово място е дискретен ред с часовник за история
   („Скоро разглеждани"). Категориите бяха капсули с различна ширина — част със
   снимка, част без, дългите имена на два реда — и се редяха една под друга.
   Сега са еднакви плочки (снимка в кръг, име до два реда) в лента, която се
   плъзга настрани; без снимка — резервна иконка. Търсенията — също в лента.
   ========================================================================== */
@media (max-width:860px){
  /* 06.11.2026 (Мариян: „по-красиво и удобно"): всяка група със свое заглавие като горе
     „Разглеждани автомобили" (зелената черта); категориите — плочки като „Най-търсени
     авточасти", по три на екран с плъзгане; търсенията — подреден списък в бяло каре (лупа,
     номерът, „Потърси отново", кръстчето вдясно); кръстчето — по-голямо, за пръст. */
  .section--trail{ padding:24px 0 8px }
  .foryou-trail__head{ display:none }

  .section--trail .foryou-group{ gap:0; padding:0 0 18px }
  .section--trail .foryou-group + .foryou-group{ border-top:0; padding-top:4px }
  .section--trail .foryou-group__label{ display:none }
  .foryou-group__title{
    position:relative; display:block; margin:0 0 10px; padding-left:18px;
    font-size:18px; font-weight:900; letter-spacing:-.4px; line-height:1.15; color:#0f1b26;
  }
  .foryou-group__title::before{ content:''; position:absolute; left:3px; top:1px; bottom:-1px; width:6px; border-radius:2px; background:linear-gradient(180deg, #6fb31a, #3f6e00); transform:skewX(-14deg) }
  .foryou-group__title span{ color:var(--accent) }

  .foryou-cats{ flex-wrap:nowrap; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none;
    gap:10px; margin:0 -20px; padding:2px 20px 8px; scroll-padding-inline:20px }   /* иначе snap лепи първата плочка о ръба */
  .foryou-cats::-webkit-scrollbar{ display:none }
  .foryou-cat{
    flex:0 0 calc((100% - 20px) / 3.25); min-width:0; scroll-snap-align:start;
    flex-direction:column; align-items:center; justify-content:flex-start; gap:6px; padding:12px 8px 10px;
    border:1px solid #e6ebe3; border-radius:16px; background:#fff; text-align:center;
    box-shadow:0 10px 20px -16px rgba(15,27,38,.45);
  }
  .foryou-cat:hover{ transform:none }
  .foryou-cat__pic{ display:grid; place-items:center; width:100%; height:62px; border-radius:0; background:none }
  .foryou-cat__pic:empty{
    width:54px; height:54px; margin:4px 0; border-radius:50%;
    background:#f1f7ea url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236fb31a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 8l-9-5-9 5 9 5 9-5z'/%3E%3Cpath d='M3 8v8l9 5 9-5V8M12 13v8'/%3E%3C/svg%3E") center / 26px no-repeat }
  .foryou-cat__img{ width:62px; height:62px; padding:0; object-fit:contain; background:none; border-radius:0; mix-blend-mode:multiply }   /* белият фон на JPEG-а се слива */
  .foryou-cat__pic:empty + .foryou-cat__name{ padding-left:0 }
  .foryou-cat__name{ min-height:2.5em; font-size:12.5px; font-weight:800; line-height:1.25; color:var(--dark);
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden }

  /* търсенията — един списък в бяло каре, ред под ред */
  .foryou-searches{
    flex-direction:column; flex-wrap:nowrap; gap:0; margin:0; padding:0; overflow:hidden;
    border:1px solid #e3e9de; border-radius:16px; background:#fff; box-shadow:0 10px 20px -16px rgba(15,27,38,.45);
  }
  .section--trail .foryou-search{
    position:relative; display:flex; align-items:center; gap:12px; width:100%; max-width:none; min-height:58px;
    padding:9px 50px 9px 12px; border:0; border-radius:0; background:none; box-shadow:none;
  }
  .section--trail .foryou-search + .foryou-search{ border-top:1px solid #eef1ec }
  .section--trail .foryou-search:hover, .section--trail .foryou-search:active{ transform:none; background:#f7fbf2 }
  .section--trail .foryou-search > svg{ width:36px; height:36px; flex:none; padding:9px; border-radius:11px; background:#eef6e4; color:var(--accent) }
  .foryou-search__txt{ display:flex; flex-direction:column; gap:1px; min-width:0 }
  .section--trail .foryou-search__q{ font-family:inherit; font-size:15px; font-weight:800; letter-spacing:.2px; font-variant-numeric:tabular-nums;
    color:var(--dark); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
  .foryou-search__hint{ display:block; font-size:12px; font-weight:600; color:#6b726a }

  /* кръстчето — по-голямо, плътно и винаги видимо (на тъч няма посочване) */
  .section--trail .foryou-x{ top:6px; right:6px; width:26px; height:26px; margin:0; opacity:1; transform:none;
    background:#fff; border:1px solid #e3e9de; box-shadow:0 2px 6px rgba(15,27,38,.12); color:#6b726a }
  .section--trail .foryou-search .foryou-x{ top:50%; right:14px; margin-top:-14px; width:28px; height:28px; box-shadow:none; background:#f4f6f3; border-color:transparent }
}


/* ============================================================================
   КАТЕГОРИЙНА СТРАНИЦА — лентата с предимствата в героя.
   На телефон отпада: същите четири обещания стоят и в подвала, а тук
   избутваха надолу заглавието и продуктите.
   ========================================================================== */
@media (max-width:860px){
  .cathero__usps{ display:none }
  .cathero__lead{ display:none }   /* описанието на категорията — също */
}


/* ============================================================================
   КАТЕГОРИЙНА СТРАНИЦА — „Избери марка" да се държи като блока на началната.
   Буквите бяха ЕДИН ред с `flex-wrap:nowrap` + `overflow-x:auto`, а бутоните
   с `flex:1 1 0` се свиваха, за да се съберат — оттам смачканият ред, който
   излизаше извън екрана. Сега се пренасят на нов ред, както на началната.
   Плочките стават две в редица (бяха три и текстът се цепеше на три реда).
   ========================================================================== */
@media (max-width:860px){
  .alpha-filter{
    flex-wrap:wrap;
    overflow-x:visible;
    justify-content:center;
    gap:6px;
    margin-bottom:18px;
  }
  .alpha-filter__btn{
    flex:0 0 auto;      /* без свиване — иначе буквите се смачкват */
    min-width:34px;
    height:34px;
    padding:0 8px;
    border-radius:9px;
  }
  .brands-grid{ grid-template-columns:1fr 1fr }
}


/* ============================================================================
   КАТЕГОРИЕН ГЕРОЙ — снимката на продукта на телефон.
   Прагът е 768px (не 860), защото под него ляга правилото за таблет
   `@media(max-width:1080px){ .cathero__product{width:48%;opacity:.85} }`
   в style.css — тоест телефон и таблет получават различно третиране.

   Снимките са изрязан продукт с кутия върху прозрачен фон (AI-тата, ~97%
   от категориите). Досега на телефон бяха избледнял фон — прозрачност,
   маска нагоре и тъмна подложка ги гасяха почти изцяло. Сега продуктът е
   ГОЛЯМ и ярък зад текста, по средата, а четимостта идва от сянка на
   буквите и лека тъмнина отгоре, където стоят пътечката и заглавието.
   Фонът зад него е по-жив, отколкото на компютър: там лявата третина е
   плътно черна за текста, а тук текстът е върху снимката.
   `mask-image:none` е задължително: style.css има свое мобилно правило с
   маска, която избледнява снимката нагоре.
   ========================================================================== */
@media (max-width:768px){
  .cathero__inner{ min-height:340px }

  /* И двата селектора, защото `.cathero--product .cathero__product` в
     style.css е по-конкретен и надделяваше над широчината. */
  .cathero__product,
  .cathero--product .cathero__product{
    width:min(85%,320px);   /* таванът — на по-широк телефон излизаше над героя */
    aspect-ratio:1/1;
    top:auto; bottom:16px; right:auto; left:50%;
    transform:translateX(-50%);
    opacity:1;
    background-position:center;
    -webkit-mask-image:none;
            mask-image:none;
    filter:drop-shadow(0 12px 24px rgba(0,0,0,.6));
    z-index:1;
  }

  /* Тъмнина само отгоре — под пътечката и заглавието. */
  .cathero__inner::before{
    content:"";
    position:absolute; inset:0; z-index:2;
    pointer-events:none;
    background:linear-gradient(180deg,
      rgba(12,12,12,.45) 0%,
      rgba(12,12,12,.10) 50%,
      rgba(12,12,12,0)  70%);
  }

  /* Фонът: по-светла основа, по-видими линии и червеното сияние — по
     средата, зад продукта (на компютър е вдясно, при снимката там). */
  .cathero__bg{
    background:
      linear-gradient(180deg, rgba(12,12,12,.40) 0%, rgba(12,12,12,.08) 55%, rgba(12,12,12,.25) 100%),
      repeating-linear-gradient(135deg, rgba(255,255,255,.07) 0 1px, transparent 1px 24px),
      repeating-linear-gradient(45deg,  rgba(255,255,255,.05) 0 1px, transparent 1px 24px),
      #1a1a1c;
  }
  .cathero__bg::before{
    background:
      radial-gradient(ellipse 100% 70% at 50% 62%, rgba(82,138,12,.75) 0%, rgba(52,90,5,.38) 50%, transparent 80%),
      radial-gradient(ellipse 45% 32% at 50% 60%, rgba(105,176,9,.40) 0%, transparent 100%);
  }
  .cathero__bg::after{
    background:repeating-linear-gradient(125deg, rgba(98,165,2,.07) 0 2px, transparent 2px 9px);
  }

  .cathero__content{ position:relative; z-index:3 }
  /* Картината на марката (style.css, .cathero--brand) — долу вдясно, под
     текста; горе тъмнее за пътечката и заглавието. По ШИРИНА, не по височина:
     150% от екрана показва дясната ѝ част (от ~33% нататък) — там са цялата
     кола и знакът. По височина излизаше по-широка и режеше предницата и знака.
     18px над долния ръб — толкова го застъпва бялото каре под хедъра. */
  .cathero--brand .cathero__bg{
    background:
      linear-gradient(180deg, #0c0c0c 0%, rgba(12,12,12,.7) 34%, rgba(12,12,12,0) 52%),
      var(--brand-hero) 100% calc(100% - 18px) / 150% auto no-repeat,
      #0c0c0c;
  }
  /* Място под текста колкото е картината (150% ширина / 3 = 50vw) — колата стои
     ПОД текста, не зад него. На модела описанието е дълго и я скриваше. */
  .cathero--brand .cathero__inner{ padding-bottom:calc(50vw + 22px) }
  /* Ветрилото с поколенията (style.css, .cathero--gens) на телефон го няма —
     хедърът да е компактен; поколенията са в картите под него. Без него остава
     тъмният фон с червеното сияние, както на категориите. */
  .cathero__gens{ display:none }
  .cathero--gens .cathero__content{ max-width:none }
  .cathero--gens .cathero__inner{ min-height:0 }
  .cathero__crumbs{ text-shadow:0 1px 3px rgba(0,0,0,.9) }
  .cathero__title { text-shadow:0 2px 3px rgba(0,0,0,.85), 0 0 22px rgba(0,0,0,.75) }
  .cathero__facts { text-shadow:0 1px 3px rgba(0,0,0,.95), 0 0 12px rgba(0,0,0,.8) }
  /* Подзаглавието е градиент, изрязан по буквите (background-clip:text) —
     `text-shadow` се рисува ВЪРХУ такъв фон и го загасява, затова сянката е
     `filter`. Цветът е плътен и по-светъл: тъмният край на градиента
     изчезваше върху бялата кутия на снимката. */
  .cathero__sub{
    background:none;
    color:#8fd13a;
    text-shadow:none;
    filter:drop-shadow(0 1px 2px rgba(0,0,0,.95)) drop-shadow(0 0 6px rgba(0,0,0,.8));
  }
}


/* ============================================================================
   СВЕТЛИЯТ ХЕДЪР НА КАТЕГОРИЯТА на телефон (style.css, .cathero--light).
   Тъмнината отгоре и сенките на буквите са за тъмния вариант — тук отпадат.
   Широкият банер (.cathero--wide) не стои зад текста, а ПОД него, по цялата
   ширина на екрана: изрязан около продукта, с меко избледняване в краищата.
   Селекторите са с три класа — правилата за тъмния вариант горе са с два.
   ========================================================================== */
@media (max-width:860px){
  .cathero--light .cathero__inner::before{ display:none }
  .cathero--light.cathero--wide .cathero__inner{ min-height:0; padding-bottom:30px }
  .cathero--light.cathero--wide .cathero__product{
    position:relative; display:block;
    top:auto; bottom:auto; left:auto; right:auto; transform:none;
    width:calc(100% + 40px); max-width:none; height:auto; margin:6px -20px 0;
    aspect-ratio:16/8;
    background-size:cover; background-position:76% center;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 92%,transparent 100%),linear-gradient(180deg,transparent 0,#000 12%,#000 88%,transparent 100%);
            mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 92%,transparent 100%),linear-gradient(180deg,transparent 0,#000 12%,#000 88%,transparent 100%);
  }
  .cathero--light.cathero--wide .cathero__content{ max-width:none }
  /* Квадратната снимка (продукт или снимката на категорията) — също под текста, по-малка:
     зад текста тъмните ѝ части го правеха нечетим върху светлото. */
  .cathero--light:not(.cathero--wide) .cathero__inner{ min-height:0; padding-bottom:30px }
  .cathero--light:not(.cathero--wide) .cathero__product{
    position:relative; display:block;
    top:auto; bottom:auto; left:auto; right:auto; transform:none;
    width:min(62%,230px); max-width:none; height:auto; aspect-ratio:1/1; margin:10px auto 0;
    background-size:contain; background-position:center; opacity:1;
    -webkit-mask-image:none; mask-image:none;
  }
}


/* ============================================================================
   КАРЕТО „ТЪРСИ ПО АВТОМОБИЛ" на категорийните страници (partials/car-finder).
   Същото третиране като на началната: по едно поле на ред и заключените
   изобщо не се показват. Тук редът беше `repeat(5,1fr)` без мобилно правило —
   петте полета се смачкваха и се режеха от десния ръб.
   Каскадата е същата (същите id-та в main.js), затова е само CSS.
   ========================================================================== */
@media (max-width:860px){
  .carfinder__search-row,
  .carfinder__search-row--nomake,
  .carfinder__search-row--nomodel{
    grid-template-columns:1fr;
    gap:10px;
  }
  /* Заключеното поле пада заедно с надписа си — затова се крие обвивката
     `.carfinder__field`, а не самият <select>. */
  .carfinder__field:has(.carfinder__select:disabled){ display:none }
}

/* Надписите над полетата отпадат на телефон — самото поле вече казва
   „Избери модел", „Избери година" и т.н., тоест надписът е повторение,
   което заема ред и вдига карето с ~90px. */
@media (max-width:860px){
  .carfinder__field label{ display:none }
  /* „Изчисти филтъра" отпада — режеше се от десния ръб. Нулирането пак е
     възможно: избираш празната опция „Избери марка" и каскадата се връща
     в начално състояние (виж brand.change в main.js). */
  .carfinder__clear{ display:none }
  /* Главата на карето с колите (иконка + заглавие, а при логнат и линкът
     „Управлявай гараж") отпада на телефон — самите карти с коли говорят
     сами за себе си. */
  .carfinder__head{ display:none }
}


/* Бутонът „Прочети още" под текста на категорията — на телефон на цял ред.
   Беше `inline-flex`, тоест широк колкото надписа си. */
@media (max-width:860px){
  .catseo__more{
    display:flex;
    width:100%;
    justify-content:center;
    min-height:var(--tap);
  }
}

/* „Добави автомобил към гаража" в карето с колите — скрит на телефон.
   Гаражът остава достъпен от иконата в хедъра. */
@media (max-width:860px){
  .garage-card--add{ display:none }
}


/* ============================================================================
   СТРАНИЦА „Избери модификация" — по макета.
   Досега на телефон: шапката слагаше годините на ВТОРИ ред под името, а редът
   с двигателя се разпадаше на решетка 2x2 (име/гориво, мощност/код) и
   стрелката се скриваше. По макета всичко е един ред в шапката, а двигателят
   е карта: име отгоре, гориво и мощност като капсули отдолу, а вдясно кодът
   и червената стрелка.
   ========================================================================== */
@media (max-width:860px){

  /* --- шапка: снимка | име+купе | години | стрелка, всичко на ЕДИН ред --- */
  /* Годините слизат ПОД „седан", в колоната на името. Така името получава
     цялата широчина и почти всички модели се събират на един ред, а снимката
     може да е по-едра. */
  .mod__head{
    grid-template-columns:72px minmax(0,1fr) auto;
    gap:10px;
    padding:10px;
    align-items:center;
  }
  /* Всичко се разполага ИЗРИЧНО. Ако снимката и стрелката са с изричен
     ред-обхват, а името и годините с автоматичен, решетката ги избутва
     под тях и се получават четири реда вместо два. */
  .mod__img, .mod__img--none{ width:72px; height:52px; grid-area:1 / 1 / 3 / 2; align-self:center }
  .mod__info { grid-area:1 / 2 / 2 / 3; min-width:0 }
  .mod__name { font-size:14px; gap:6px; line-height:1.2 }
  .mod__body-type{ font-size:11.5px; margin-top:5px; padding:2px 9px 2px 7px }
  .mod__body-type svg{ width:14px; height:14px }
  /* „Виж N двигателя" — на телефон само „N ⌄" (отворено — само ⌃) */
  .mod__cta{ padding:6px 9px 6px 11px; font-size:12.5px; gap:4px }
  .mod__cta-w, .mod.is-open .mod__cta-b{ display:none }
  .mod.is-open .mod__cta{ padding:6px }
  .mod__years{
    grid-area:2 / 2 / 3 / 3;
    font-size:11.5px; gap:5px; color:var(--muted); margin-top:0;
  }
  .mod__years svg{ width:13px; height:13px }
  .mod__head > :last-child{ grid-area:1 / 3 / 3 / 4; align-self:center }

  /* --- разгънатата модификация: бледочервена подложка като в макета --- */
  .mod.is-open{ background:#f6faf3 }
  .mod__engines{ padding:8px 10px 10px; border-top:0 }

  /* --- лента с горивата: бърз филтър над картите --- */
  .mod__fuelbar{
    display:flex; gap:7px; overflow-x:auto; -webkit-overflow-scrolling:touch;
    padding:2px 2px 10px; margin:0 -2px;
    scrollbar-width:none;
  }
  .mod__fuelbar::-webkit-scrollbar{ display:none }
  .mod__fchip{
    display:inline-flex; align-items:center; gap:6px; flex:none;
    height:32px; padding:0 12px;
    background:#fff; border:1px solid var(--line); border-radius:999px;
    font-family:inherit; font-size:12px; font-weight:700; color:var(--dark);
    cursor:pointer; white-space:nowrap;
  }
  .mod__fchip .mod__fuel-ic{ width:14px; height:14px; stroke:var(--muted) }
  .mod__fchip.is-on{ border-color:var(--accent); color:var(--accent); background:#f6faf3 }
  .mod__fchip.is-on .mod__fuel-ic{ stroke:var(--accent) }
  .mod__engine.is-hidden{ display:none }

  /* --- двигателят като карта ---
     Иконката на горивото излиза в значка вляво, а трите реда — име с горивото,
     мощност и кодовете — са в свои обвивки, за да е всеки чип долепен до текста
     си. Кодовете са отделни чипове: „CRBC, CRLB, CRMB, CRUA, DCYA, DEJA, DFGA"
     като един низ се чупеше на четири реда. */
  .mod__engine{
    grid-template-columns:auto minmax(0,1fr) auto;
    grid-template-rows:auto auto auto;
    gap:3px 10px;
    padding:10px;
    margin-bottom:7px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:10px;
    align-items:center;
  }
  .mod__engine:last-child{ margin-bottom:0 }

  .mod__engine > .mod__engine-ic{
    display:grid; place-items:center;
    grid-area:1 / 1 / 4 / 2; align-self:center;
    width:34px; height:34px; border-radius:9px; background:#ecf4e7;
  }
  .mod__engine > .mod__engine-ic .mod__fuel-ic{ width:17px; height:17px }
  .mod__engine--off > .mod__engine-ic,
  .mod__engine--none > .mod__engine-ic{ background:var(--bg-soft) }
  .mod__engine--off > .mod__engine-ic .mod__fuel-ic,
  .mod__engine--none > .mod__engine-ic .mod__fuel-ic{ stroke:var(--muted) }

  .mod__engine > .mod__engine-l1,
  .mod__engine > .mod__engine-l2,
  .mod__engine > .mod__engine-l3{
    display:flex; flex-wrap:wrap; align-items:center; gap:5px 7px; min-width:0;
  }
  .mod__engine > .mod__engine-l1{ grid-area:1 / 2 / 2 / 3 }
  .mod__engine > .mod__engine-l2{ grid-area:2 / 2 / 3 / 3 }
  .mod__engine > .mod__engine-l3{ grid-area:3 / 2 / 4 / 3 }

  .mod__engine .mod__engine-name{ font-size:13.5px }
  .mod__engine .mod__engine-power,
  .mod__engine .mod__engine-years{ font-size:11.5px; color:var(--muted) }
  .mod__engine .mod__engine-years::before{ content:"· "; }

  /* Заглавието на групата гориво — над картите ѝ. */
  .mod__fgroup{ padding:12px 2px 7px; font-size:11.5px }
  .mod__engine-head + .mod__fgroup{ padding-top:2px }

  /* В чипа с горивото иконката е излишна — вече я има в значката вляво. */
  .mod__engine .mod__engine-fuel{
    padding:2px 8px;
    background:var(--bg-soft); border-radius:999px;
    font-size:11px; color:var(--muted);
  }
  .mod__engine .mod__engine-fuel .mod__fuel-ic{ display:none }

  .mod__engine .mod__engine-code{ display:flex; flex-wrap:wrap; gap:5px; min-width:0 }
  .mod__engine .mod__code{
    padding:2px 7px; border-radius:6px;
    background:var(--bg-soft);
    font-size:11px; font-weight:700; font-style:normal; color:var(--dark);
  }
  .mod__engine .mod__code + .mod__code::before{ content:none }

  /* Стрелката се връща — на телефон беше скрита, а в макета я има. */
  .mod__engine > :last-child:not(.mod__engine-flag){
    grid-area:1 / 3 / 4 / 4; justify-self:end; align-self:center;
  }
  .mod__engine .mod__caret{ display:block; width:16px; height:16px; color:var(--accent) }
  /* Надписът „няма части" си остава на свой ред, отдолу. */
  .mod__engine > .mod__engine-flag{ grid-area:4 / 1 / 5 / 4; justify-self:start; margin-top:4px }
}


/* ============================================================================
   СПИСЪК С ЧАСТИ — по макета: една карта на ред, снимка вляво.
   Досега на телефон бяха ДВЕ колони по 160px — името се цепеше на три реда,
   а „страна на монтаж: задна ос" излизаше извън картата и разпъваше цялата
   страница с 40px хоризонтален скрол.
   ========================================================================== */
@media (max-width:860px){
  .products, .products.catgrid{ grid-template-columns:1fr; gap:10px }

  .product{
    display:grid;
    grid-template-columns:124px minmax(0,1fr);
    align-items:start;
    gap:10px;
    padding:10px;
  }
  .product:hover{ transform:none; box-shadow:none; border-color:var(--line) }

  .product__img{
    width:124px; padding:6px;
    border-bottom:0; border-radius:10px;
    align-self:start;
  }
  /* таван — вертикални снимки (свещи, амортисьори) разпъваха картата до 600+px (Мариян, 06.11.2026) */
  .product__img img{ max-height:150px; max-width:100%; width:auto; height:auto; object-fit:contain }

  .product__body{ padding:0; min-width:0 }

  .product__tag{ top:8px; left:8px; font-size:11px; padding:3px 8px }
  .product__fav{ top:8px; right:8px }
  /* марката и името не бива да минават под сърцето */
  .product__brandrow, .product__namelink{ padding-right:36px }

  .product__name{ font-size:13px; margin-bottom:2px }
  .product__sku { margin-bottom:6px }

  /* „страна на монтаж: задна ос" — при тесен ред стойността се пренася,
     вместо да излиза извън картата */
  .plist-specs{ margin-bottom:6px }
  .plist-spec { flex-wrap:wrap; gap:0 6px }
  .plist-spec__k, .plist-spec__v{ min-width:0 }

  /* цената: нова и стара един до друг, както в макета (бяха една под друга) */
  .product__price{
    flex-direction:row; align-items:baseline; gap:8px;
    margin-top:8px; margin-bottom:8px;
  }
  .product__eur{ font-size:19px }

  .product .btn--primary{ width:100%; min-height:var(--tap) }
}

/* Лентата за подредба над списъка. `.catbar__tools` е flex без пренасяне —
   „Сортирай по" + селектът + превключвателят решетка/списък не се събират в
   375px и разпъваха страницата с 40px. Превключвателят отпада: на телефон и
   без това има само една колона. */
@media (max-width:860px){
  /* „Филтри" и „Сортирай" стоят ЕДИН ДО ДРУГ на един ред и са еднакво високи.
     За да се съберат в 375px, надписът „Сортирай по:" минава НАД стойността,
     вместо да е пред нея — така контролата иска наполовина по-малко място. */
  .catbar__tools{ flex-wrap:nowrap; gap:8px; width:100%; min-width:0; align-items:stretch }
  .catview{ display:none }

  .catsort{
    flex:1 1 auto; min-width:0;
    flex-direction:column; align-items:flex-start; justify-content:center;
    gap:0; padding:5px 10px; min-height:52px;
  }
  .catsort label{ font-size:10.5px; line-height:1.15; color:var(--muted) }
  .catsort select{
    width:100%; min-width:0; padding:0;
    font-size:13px; line-height:1.2;
  }

  /* „страна на монтаж: задна ос" да се събира на един ред */
  .plist-spec{ font-size:11.5px }
  .plist-spec__k{ min-width:0 }

  /* снимката малко по-едра, както в макета */
  .product{ grid-template-columns:132px minmax(0,1fr) }
  .product__img{ width:132px }
}

/* Връзката „Назад към Части за Honda Accord 2.4 i (CU2)" е с `flex:none` и
   `white-space:nowrap` — не може нито да се свие, нито да се пренесе. При
   375px съдържанието ѝ иска 365px в кутия от 333px и разпъваше .dpd-top,
   после .container, после цялата страница. */
@media (max-width:860px){
  .dpd-back{
    white-space:normal;
    height:auto; min-height:var(--tap);
    padding:8px 14px;
    font-size:13px; line-height:1.25;
    justify-content:center; text-align:center;
  }
}


/* ============================================================================
   ФИЛТРИ КАТО ИЗСКАЧАЩ ОТДОЛУ ПАНЕЛ (телефон)
   Панелът е СЪЩИЯТ `.filters` — само сменя мястото си. Така логиката в
   catalog-filters.js не се пипа. Бутонът и затъмнението ги добавя
   js/mobile-filters.js.
   ========================================================================== */
.mfilt, .mfilt-overlay, .mfilt-grip, .mfilt-close, .mfilt-done{ display:none }

@media (max-width:860px){

  /* --- бутонът „Филтри" в лентата --- */
  .mfilt{
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    min-height:52px; padding:0 14px;
    border:1.5px solid var(--line); border-radius:10px;
    background:#fff; color:var(--dark);
    font-family:inherit; font-size:13px; font-weight:700;
    cursor:pointer; flex:0 0 auto;
  }
  .mfilt svg{ width:18px; height:18px; flex:none }
  .mfilt__n{
    min-width:20px; height:20px; padding:0 5px;
    display:grid; place-items:center;
    background:var(--accent); color:#fff;
    border-radius:10px; font-size:11px; font-weight:800; font-style:normal;
  }
  /* Пак същият капан: `display:grid` бие display:none, което браузърът дава
     на [hidden] — и значката показваше „0". Виж и .cartbtn__count. */
  .mfilt__n[hidden]{ display:none }

  /* --- самият лист --- */
  .filters{
    /* `top:auto` изрично: на десктоп .filters е лепкава странична лента с
       `top:90px`. Ако остане, заедно с bottom:0 тя ЗАКОВАВА височината на
       (екран − 90px) и max-height изобщо не влиза в действие. */
    position:fixed; left:0; right:0; bottom:0; top:auto; z-index:1200;
    /* Листът е колона: дръжка + глава (неподвижни), средата скролва,
       бутонът долу също е неподвижен. Затова самият лист НЕ скролва. */
    display:flex; flex-direction:column;
    width:auto; max-height:92vh; overflow:hidden;
    margin:0;
    background:#fff;
    border-radius:18px 18px 0 0;
    box-shadow:0 -12px 40px rgba(15,15,20,.20);
    padding:0 14px calc(14px + var(--safe-b));
    /* Скрит е с transform, а не с display:none — иначе няма какво да се
       анимира. `visibility` го маха от досега на пръста, докато е долу. */
    transform:translateY(100%);
    visibility:hidden;
    transition:transform .32s var(--ease), visibility .32s;
  }
  .filters.is-open{ transform:none; visibility:visible }

  .mfilt-overlay{
    display:block;
    position:fixed; inset:0; z-index:1199;
    background:rgba(15,15,20,.55);
    opacity:0; visibility:hidden;
    transition:opacity .28s var(--ease), visibility .28s;
  }
  .mfilt-overlay.is-open{ opacity:1; visibility:visible }

  body.mfilt-lock{ overflow:hidden }

  /* --- дръжката отгоре --- */
  /* Зоната за влачене е ЦЯЛАТА широчина и 28px височина, а чертичката е
     само нарисувана вътре в нея. Преди зоната беше самата чертичка — 40x4px,
     тоест почти невъзможна за уцелване с пръст. */
  .mfilt-grip{
    display:block; flex:none;
    width:100%; height:28px; margin:0;
    background:none; border-radius:0;
    position:relative; cursor:grab;
  }
  .mfilt-grip::before{
    content:"";
    position:absolute; left:50%; top:11px; transform:translateX(-50%);
    width:44px; height:5px;
    background:var(--line); border-radius:3px;
  }
  .filters.is-dragging .mfilt-grip{ cursor:grabbing }
  .filters.is-dragging .mfilt-grip::before{ background:var(--muted) }
  /* Дръжката и главата са зона за влачене — браузърът не бива да ги
     присвоява за скролване, иначе жестът не стига до скрипта. Самият лист
     остава `pan-y`, за да си скролва съдържанието нормално. */
  .mfilt-grip, .filters__head{ touch-action:none; user-select:none }
  .mfilt-scroll{ touch-action:pan-y }
  /* средата — единственото, което се плъзга */
  .mfilt-scroll{
    flex:1 1 auto; min-height:0;
    overflow-y:auto; overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }

  /* --- глава: „Филтри", „Изчисти всички", хиксче --- */
  /* Беше `position:sticky` — оттам съдържанието се показваше над нея.
     Сега е извън скролващата част и просто стои. */
  .filters__head{
    position:static; flex:none;
    display:flex; align-items:center; gap:10px;
    padding:2px 0 10px; margin-bottom:4px;
    background:#fff; border-bottom:1px solid var(--line);
  }
  .mfilt-close{
    display:grid; place-items:center;
    width:32px; height:32px; margin-left:auto; flex:none;
    border:0; border-radius:50%; background:var(--bg-soft);
    color:var(--dark); cursor:pointer;
  }
  .mfilt-close svg{ width:16px; height:16px }

  /* --- „Покажи N продукта" долу, винаги видим --- */
  .mfilt-done{
    display:block; flex:none;
    width:100%; min-height:var(--tap); margin-top:14px;
    border:0; border-radius:10px;
    background:var(--accent-grad); color:#fff;
    font-family:inherit; font-size:15px; font-weight:700;
    cursor:pointer;
  }

  @media (prefers-reduced-motion:reduce){
    .filters, .mfilt-overlay{ transition:none }
  }
}


/* ============================================================================
   КАРТА „ИЗБРАН АВТОМОБИЛ" — по макета.
   Петте характеристики бяха в ЕДИН ред с `flex-wrap:nowrap`, тоест по ~40px
   всяка — и надписите, и стойностите се режеха с многоточие („2008 г. - 2…").
   Сега са решетка две в редица под снимката и заглавието, с иконка отляво.
   ========================================================================== */
@media (max-width:860px){

  /* `display:contents` разтваря .selcar__main, за да станат заглавието и
     характеристиките ПРЕКИ клетки на картата. Иначе характеристиките не
     могат да излязат на цялата ѝ широчина. */
  .selcar{
    display:grid;
    grid-template-columns:104px minmax(0,1fr);
    gap:10px 12px;
    align-items:center;
    padding:12px;
  }
  .selcar__main { display:contents }
  .selcar__img,
  .selcar__img--none{ grid-area:1 / 1 / 2 / 2; width:104px; height:70px }
  .selcar__name { grid-area:1 / 2 / 2 / 3; font-size:15px; line-height:1.25 }
  .selcar__specs{
    grid-area:2 / 1 / 3 / 3;
    display:grid; grid-template-columns:repeat(2, minmax(0,1fr));
    gap:10px 12px;
  }

  /* всяка характеристика: иконка вляво, надпис отгоре, стойност отдолу */
  .selcar__spec{
    display:grid;
    grid-template-columns:22px minmax(0,1fr);
    gap:0 8px;
    align-items:center;
    flex:none;
  }
  /* разделителната черта между съседните беше за реда — тук пречи */
  .selcar__spec + .selcar__spec{ padding-left:0; border-left:0 }

  .selcar__spec::before{
    content:"";
    grid-area:1 / 1 / 3 / 2; align-self:center;
    width:22px; height:22px;
    background:no-repeat center / 20px 20px;
  }
  .selcar__spec[data-k="Година"]::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16' rx='2'/%3E%3Cpath d='M8 2.5v4M16 2.5v4M3 9.5h18'/%3E%3C/svg%3E") }
  .selcar__spec[data-k="Мощност"]::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 19a9 9 0 1 0-16 0'/%3E%3Cpath d='M12 14l4-4'/%3E%3C/svg%3E") }
  .selcar__spec[data-k="Гориво"]::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20V5a1 1 0 0 1 1-1h7a1 1 0 0 1 1 1v15'/%3E%3Cpath d='M3 20h11M6.5 8.5h4'/%3E%3Cpath d='M14 9h2.5A1.5 1.5 0 0 1 18 10.5V16a1.5 1.5 0 0 0 3 0v-5l-2-2.5'/%3E%3C/svg%3E") }
  .selcar__spec[data-k="Код на двигателя"]::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.5 12.5l-8 8a2 2 0 0 1-2.8 0l-6.2-6.2a2 2 0 0 1-.5-1.3V5.5A1.5 1.5 0 0 1 4.5 4h7.5a2 2 0 0 1 1.4.6l7.1 7.1a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='8' cy='8' r='1.3'/%3E%3C/svg%3E") }
  .selcar__spec[data-k="Тип купе"]::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l1.6-4.5A2 2 0 0 1 8.5 7h7a2 2 0 0 1 1.9 1.5L19 13m-14 0h14m-14 0v4h2v-2h10v2h2v-4'/%3E%3C/svg%3E") }

  /* без рязане — това беше причината за многоточията */
  .selcar__spec-label{
    grid-area:1 / 2 / 2 / 3;
    white-space:normal; overflow:visible; text-overflow:clip;
    font-size:10.5px; line-height:1.2;
  }
  .selcar__spec-val{
    grid-area:2 / 2 / 3 / 3;
    white-space:normal; overflow:visible; text-overflow:clip;
    font-size:12.5px; line-height:1.25;
  }
}


/* ============================================================================
   ТРОХИ (breadcrumb) — един ред с дискретно плъзгане.
   Не се пренасяше редът: елементите са flex-деца с подразбиращо се
   `flex-shrink:1`, свиваха се под съдържанието си и текстът се чупеше ВЪТРЕ
   в тях („Hond / a", „Accor / d"). Затова са заковани неразтегливи, а редът
   се плъзга настрани. Лентата на плъзгача е скрита — вместо нея избледняване
   вдясно подсказва, че има още.
   ========================================================================== */
@media (max-width:860px){
  .pdp-crumbs__nav{
    flex-wrap:nowrap;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding-bottom:2px;
    /* избледняване вдясно; когато трохите се събират, то пада върху празно
       място и не се вижда */
    -webkit-mask-image:linear-gradient(to right,#000 calc(100% - 22px),transparent);
            mask-image:linear-gradient(to right,#000 calc(100% - 22px),transparent);
  }
  .pdp-crumbs__nav::-webkit-scrollbar{ display:none }
  .pdp-crumbs__nav > *{ flex:0 0 auto; white-space:nowrap }
  /* превъртяна (main.js, .is-scrolled) — избледнява и вляво, вместо началото да е
     отрязано насред думата („…асти") (06.11.2026) */
  .pdp-crumbs__nav.is-scrolled{
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 28px,#000 calc(100% - 22px),transparent);
            mask-image:linear-gradient(to right,transparent 0,#000 28px,#000 calc(100% - 22px),transparent);
  }

  /* Страницата на колата (car-hub): на телефон тъмното каре го няма, а лентата пазеше
     празно място за него и заглавието се качваше 10px върху нея. Без качването; заглавието —
     като другите (зелената черта, колата в зелено). 06.11.2026 */
  .pdp-crumbs--hub{ padding-bottom:12px }
  .pdp-crumbs--hub + *{ margin-top:0 }
  .chub .ccar__title{ position:relative; padding-left:18px; font-size:24px; font-weight:900; letter-spacing:-.5px }
  .chub .ccar__title::before{ content:''; position:absolute; left:3px; top:4px; height:22px; width:6px; border-radius:2px; background:linear-gradient(180deg, #6fb31a, #3f6e00); transform:skewX(-14deg) }
  .chub .ccar__title span{ margin-top:4px; font-size:17px; font-weight:800; color:var(--accent) }
}

/* ЕДИН H1 на продуктовата страница (Мариян, 26.10.2026). Истинският е заглавието
   за телефон — .selcar__title (с кола) или .dpd-mtitle__name (без кола): Google гледа
   като телефон. На компютър то НЕ е display:none, а скрито само за окото (четците и
   търсачките го виждат); видимото заглавие горе (.dpd-top__title) е div-копие,
   aria-hidden. На телефон е обратното: горното се скрива, това се вижда. */
@media (min-width:861px){
  .selcar__title,
  .dpd-mtitle{
    position:absolute; width:1px; height:1px; margin:-1px; padding:0; border:0;
    overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap;
  }
  .dpd-mtitle__brand{ display:none }
}

@media (max-width:860px){
  .dpd-top__title{ display:none }
  .selcar__title{
    display:block;
    font-size:15px; font-weight:800; color:var(--dark); line-height:1.25;
  }
  .selcar__title span{ font-weight:600; color:var(--muted) }
  /* името на колата вече е част от заглавието горе */
  .selcar__name{ display:none }
}

/* Същият случай, но БЕЗ кола: универсална част (стелки, масла) няма каре
   „selcar", което да поеме скрития h1 — снимката излизаше без нито един ред
   текст над себе си, а името идваше чак под цената. Затова маркъпът носи
   отделно заглавие, видимо само тук (на компютър — само за четците, виж горе). */

@media (max-width:860px){
  .dpd-mtitle{
    display:flex; align-items:flex-start; justify-content:space-between; gap:12px;
    order:0;   /* преди .dpd-gallery (order:1) — виж решетката по-долу */
  }
  .dpd-mtitle__name{
    font-size:15px; font-weight:800; color:var(--dark); line-height:1.3;
    /* Дълъг артикулен номер без интервали иначе разпъва цялата решетка. */
    overflow-wrap:anywhere;
  }
  .dpd-mtitle__brand{
    flex:none; max-width:82px; max-height:26px; object-fit:contain;
  }
}

/* „Тип купе" мина в заглавието горе, затова отпада от характеристиките.
   Така остават ЧЕТИРИ и решетката става точно 2x2 — без самотна клетка
   на трети ред. */
@media (max-width:860px){
  .selcar__spec[data-k="Тип купе"]{ display:none }
}


/* ============================================================================
   ПЛАВАЩ БУТОН „ФИЛТРИ" (телефон).
   Първо опитах да залепя цялата лента с `position:sticky`. Две беди: идваше
   и сортирането, което не е нужно постоянно, а самата лента правеше свой
   слой и се изкачваше НАД затъмнението на панела. Затова сега лентата си
   стои на място, а се появява отделен плаващ бутон — нищо в реда не мърда
   и няма спор за слоеве.
   ========================================================================== */
.mfilt-float{ display:none }

@media (max-width:860px){
  .mfilt-float{
    display:inline-flex; align-items:center; gap:8px;
    position:fixed; top:10px; left:12px; z-index:1100;
    min-height:44px; padding:0 16px;
    border:0; border-radius:999px;
    background:var(--dark); color:#fff;
    font-family:inherit; font-size:13px; font-weight:700;
    box-shadow:0 6px 20px rgba(15,15,20,.28);
    cursor:pointer;
    /* появява се плавно, щом лентата излезе от екрана */
    opacity:0; visibility:hidden; transform:translateY(-10px);
    transition:opacity .22s var(--ease), transform .22s var(--ease), visibility .22s;
  }
  .mfilt-float.is-shown{ opacity:1; visibility:visible; transform:none }
  .mfilt-float svg{ width:17px; height:17px; flex:none }
  .mfilt-float .mfilt__n{
    min-width:19px; height:19px; padding:0 5px;
    display:grid; place-items:center;
    background:var(--accent); color:#fff;
    border-radius:10px; font-size:11px; font-weight:800; font-style:normal;
  }
  .mfilt-float .mfilt__n[hidden]{ display:none }
  /* докато панелът е отворен, плаващият бутон не трябва да се вижда */
  body.mfilt-lock .mfilt-float{ opacity:0; visibility:hidden }
}


/* ============================================================================
   ПРОДУКТОВА СТРАНИЦА — карето с цената идва веднага под снимките.
   Досега на телефон редът беше: галерия → описание → всички табове (1800px!)
   → и чак тогава цената. Тоест бутонът „Добави в количката" беше на близо
   3000px от началото.

   `.dpd-main`, `.dpd-side` и `.dpd-product` са чисто структурни обвивки — без
   фон, поле, рамка или позиция. Затова се разтварят с `display:contents` и
   децата им стават преки клетки на `.dpd-grid`, където `order` ги пренарежда.
   ========================================================================== */
@media (max-width:860px){
  .dpd-main, .dpd-side, .dpd-product{ display:contents }

  /* Като станат преки клетки на решетката, децата получават подразбиращото
     се `min-width:auto` и не могат да се свият под съдържанието си —
     таблиците в таблиците разпъваха страницата до 709px. */
  .dpd-mtitle, .dpd-gallery, .dpd-buy, .dpd-specs, .dpd-tabs,
  .qorder, .dpd-related, .sbox, .dpd-together, .bcls, .pq{ min-width:0 }

  .dpd-gallery { order:1 }
  .dpd-buy     { order:2 }   /* цената и „Добави в количката" */
  .dpd-specs   { order:3 }   /* описанието */
  .qorder      { order:4 }   /* бърза поръчка — веднага след описанието */
  .dpd-together{ order:4 }   /* „Сменят се заедно" — под бърза поръчка, както на компютър (след нея в HTML) */
  .dpd-tabs    { order:5 }   /* заменими артикули, OE номера, приложения */
  .bcls, .pq   { order:6 }   /* „Качество на частта" (по-рано „Клас на марката") — над „Други свързани продукти" (без order стоеше най-горе) */
  .dpd-related { order:7 }
  .sbox        { order:8 }
  .stickybar   { order:0 }   /* и без това е position:fixed */

  /* По-малко разстояние над снимката (Мариян, 07.11.2026): между карето на колата и снимката
     бяха 38px (14px поле на .ccar + 24px процеп на решетката) и още 18px бяло в рамката на
     снимката. Сега 14px + 10px. Процепът на решетката е общ за всички карета — затова тук
     отрицателно поле само на карето на колата. Връщане: махаш тези два реда. */
  .dpd-main > .ccar{ margin-bottom:-10px }
  .dpd-gallery{ padding-top:10px }
}

/* Дръжка на категорийния модал — същата логика като при филтрите: зоната за
   хващане е цялата ивица, а чертичката е само нарисувана в нея. */
.catmodal__grip{ display:none }

@media (max-width:860px){
  .catmodal__grip{
    /* `flex:none` — диалогът е flex-колона и без него дръжката се свива
       до 5px (височината на самата чертичка) и пак не се уцелва. */
    display:block; flex:none;
    width:100%; height:26px;
    position:relative; cursor:grab;
    touch-action:none;
  }
  .catmodal__grip::before{
    content:"";
    position:absolute; left:50%; top:10px; transform:translateX(-50%);
    width:44px; height:5px;
    background:var(--line); border-radius:3px;
  }
  .catmodal__head{ touch-action:none; user-select:none }
  .catmodal__dialog.is-dragging .catmodal__grip{ cursor:grabbing }
  .catmodal__dialog.is-dragging .catmodal__grip::before{ background:var(--muted) }
  /* дръжката изяжда полето отгоре, за да няма мъртва ивица */
  .catmodal__head{ padding-top:0 }
}




/* ============================================================================
   ЛЕПКАВАТА ЛЕНТА „ДОБАВИ В КОЛИЧКАТА" (телефон).
   Беше счупена: `.stickybar__inner` е flex БЕЗ пренасяне, а четирите му части
   искат общо 474px при екран 375. Цената, количеството и бутонът са с
   `flex:none` (не се свиват), затова цялото свиване падаше върху
   `.stickybar__info` — той се смачкваше до 0px, но снимката и името му
   продължаваха да се рисуват върху цената. Оттам кашата.

   Сега информацията отпада (тя и без това е на самата страница), а остават
   трите неща, за които е барът: цена, количество и бутон.
   ========================================================================== */
@media (max-width:860px){
  .stickybar__inner{
    gap:8px;
    padding:10px 12px calc(10px + var(--safe-b));
    align-items:center;
  }
  .stickybar__info{ display:none }
  .stickybar__save{ display:none }      /* не се събира под цената при тази широчина */

  .stickybar__price-wrap{ flex:0 0 auto; align-items:flex-start; min-width:0 }
  .stickybar__price{ font-size:18px; white-space:nowrap }

  .stickybar .dpd-qty{ flex:0 0 auto; height:44px }
  .stickybar .dpd-qty__btn{ width:34px; min-width:0 }
  .stickybar .dpd-qty__val{ width:28px }

  .stickybar .btn--primary{
    flex:1 1 auto; min-width:0; height:44px;
    padding:0 10px; font-size:13px; white-space:nowrap;
  }
  .stickybar .btn--primary svg{ display:none }   /* иконката яде 26px от надписа */

  /* AI балончето и „нагоре" се вдигат над лентата, докато тя се вижда */
  body.has-stickybar .aiw{ bottom:84px }
  /* И двата класа в селектора, защото `body.has-ai-widget .totop{bottom:96px}`
     живее в ai-widget.css, който се зарежда СЛЕД mobile.css (през @stack('head'))
     и при равна конкретност надделява. */
  body.has-stickybar.has-ai-widget .totop,
  body.has-stickybar .totop{ bottom:150px }
}


/* ============================================================================
   ТАБОВЕТЕ НА ПРОДУКТОВАТА СТРАНИЦА (телефон).
   Наслагваха се един върху друг: `.dpd-tab` е flex-дете с подразбиращо се
   `flex-shrink:1`, а текстът му е `white-space:nowrap`. Тоест кутията се
   свиваше до 44px, но надписът „Алтернативни артикули" (около 150px) не се
   пренасяше и се изливаше върху съседния таб.

   Редът и без това е `overflow-x:auto` — просто трябваше табовете да не се
   свиват, за да има какво да се плъзга.
   ========================================================================== */
@media (max-width:860px){
  .dpd-tabs{ padding:0 12px 12px }

  .dpd-tabs__nav{
    gap:16px;
    flex-wrap:nowrap;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    /* избледняване вдясно вместо лента на плъзгача */
    -webkit-mask-image:linear-gradient(to right,#000 calc(100% - 20px),transparent);
            mask-image:linear-gradient(to right,#000 calc(100% - 20px),transparent);
  }
  .dpd-tabs__nav::-webkit-scrollbar{ display:none }

  .dpd-tab{
    flex:0 0 auto;     /* ← същинската поправка */
    min-width:0;       /* 44px от правилото за пипане тук само пречеше */
    padding:13px 2px;
    font-size:13px;
  }
}


/* ============================================================================
   ПРОДУКТОВА СТРАНИЦА — табове и заместващи артикули по макета.
   ========================================================================== */

.stickybar__label{ display:none }   /* само за телефон */

@media (max-width:860px){

  /* ---------- табовете като картончета с иконки ---------- */
  .dpd-tabs__nav{
    gap:8px;
    border-bottom:0;
    padding:10px 0 0;
    align-items:flex-end;
  }
  .dpd-tab{
    display:inline-flex; align-items:center; gap:8px;
    padding:12px 14px;
    background:var(--bg-soft);
    border:1px solid var(--line);
    border-bottom:2px solid transparent;
    border-radius:12px 12px 0 0;
    color:var(--muted);
  }
  .dpd-tab.is-active{
    background:#fff;
    color:var(--dark);
    border-bottom-color:var(--accent);
  }
  /* Иконката е МАСКА, а не картинка — така взима цвета на таба и не трябват
     два комплекта (сив за спящите, червен за активния). */
  .dpd-tab::before{
    content:""; flex:none; width:18px; height:18px;
    background-color:currentColor;
    -webkit-mask:var(--ic) no-repeat center / contain;
            mask:var(--ic) no-repeat center / contain;
  }
  .dpd-tab.is-active::before{ background-color:var(--accent) }
  .dpd-tab[data-tab="0"]{ --ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8h15l-4-4M20 16H5l4 4'/%3E%3C/svg%3E") }
  /* 1 = Алтернативни (съвместими номера) — етикет */
  .dpd-tab[data-tab="1"]{ --ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.5 12.5l-8 8a2 2 0 0 1-2.8 0l-6.2-6.2a2 2 0 0 1-.5-1.3V5.5A1.5 1.5 0 0 1 4.5 4h7.5a2 2 0 0 1 1.4.6l7.1 7.1a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='8' cy='8' r='1.3'/%3E%3C/svg%3E") }
  /* 2 = ОЕ Номера — диез */
  .dpd-tab[data-tab="2"]{ --ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 9h16M4 15h16M10 3L8 21M16 3l-2 18'/%3E%3C/svg%3E") }
  /* 3 = Приложения — кола */
  .dpd-tab[data-tab="3"]{ --ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l1.6-4.5A2 2 0 0 1 8.5 7h7a2 2 0 0 1 1.9 1.5L19 13m-14 0h14m-14 0v4h2v-2h10v2h2v-4'/%3E%3C/svg%3E") }
  /* 4 = Ревюта — звезда */
  .dpd-tab[data-tab="4"]{ --ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M12 3.5l2.6 5.3 5.9.9-4.3 4.1 1 5.8-5.2-2.7-5.2 2.7 1-5.8L3.5 9.7l5.9-.9z'/%3E%3C/svg%3E") }

  /* ---------- заместващите артикули като карти ---------- */
  .dpd-alts{ display:grid; gap:10px; margin-top:12px }
  .dpd-alt{
    /* беше 337px в панел от 309px — преливаше */
    width:auto; min-width:0;
    /* базовото правило има `margin:0 -14px`, за да излиза извън панела —
       като карта това само я прави по-широка от него */
    margin:0;
    grid-template-columns:68px minmax(0,1fr) 50px;
    grid-template-areas:
      "brand code  cart"
      "brand axle  cart"
      "brand price cart"
      "brand stock cart";
    align-items:center;
    gap:3px 12px;
    padding:12px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:14px;
  }
  .dpd-alt__brand{
    grid-area:brand; align-self:center;
    width:68px; height:68px; padding:7px;
    display:grid; place-items:center;
    background:#fff; border:1px solid var(--line); border-radius:12px;
    font-size:9px; line-height:1.15; text-align:center;
  }
  /* базово логото е заковано на 80x22px — в кутия от 68px изглежда изгубено */
  .dpd-alt__brand img{ max-width:100%; max-height:100%; object-fit:contain }
  .dpd-alt__axle{ grid-area:axle; justify-self:start; margin:2px 0 }
  /* картите вече се делят с разстояние, чертата между тях е излишна */
  .dpd-alt + .dpd-alt{ border-top:0 }
  .dpd-alt__code { grid-area:code;  font-size:12px; font-weight:800; overflow-wrap:anywhere }
  .dpd-alt__price{ grid-area:price; font-size:14px; font-weight:900 }
  .dpd-alt__stock{ grid-area:stock; font-size:11px }
  .dpd-alt__cart{
    grid-area:cart; align-self:center;
    width:50px; height:50px; border-radius:12px;
  }

  /* ---------- „Обща сума" над цената в лепкавата лента ---------- */
  .stickybar__label{
    display:block;
    font-size:11px; font-weight:600; color:var(--muted); line-height:1;
    margin-bottom:3px; white-space:nowrap;
  }
  .stickybar .btn--primary svg{ display:inline-block; width:17px; height:17px }
}

/* Бутонът „Добави в количката" в главното каре се режеше при 375px.
   Иконката остава — вместо нея се свива броячът за количество: той е
   спомагателен и 92px му стигат, а освободените 30px отиват в бутона. */
@media (max-width:860px){
  .dpd-buy__actions{ gap:8px }
  .dpd-buy .dpd-qty{ flex:0 0 auto; width:92px }
  .dpd-buy .dpd-qty__btn{ width:30px; min-width:0; padding:0; font-size:17px }
  .dpd-buy .dpd-qty__val{ width:28px; padding:0 }
  .dpd-addcart{
    flex:1 1 0; min-width:0;
    padding:0 8px; gap:6px; font-size:13.5px; white-space:nowrap;
  }
  .dpd-addcart svg{ width:16px; height:16px; flex:none }
}


/* ============================================================================
   ОРИГИНАЛНИ (ОЕ) ЧАСТИ — същият облик като продуктовия списък.
   Бяха високи вертикални карти (302px): лого най-отгоре, под него всичко
   останало. Сега логото е вляво, а текстът и бутонът — вдясно, точно както
   при `.product`.
   Разположението е ИЗРИЧНО за всяка клетка — при смесване на изрични и
   автоматични редове решетката избутва децата надолу (същият капан като при
   шапката на модификациите).

   ВНИМАНИЕ ЗА КОНКРЕТНОСТТА: стиловете на `.oecard` живеят в inline <style>
   вътре в partials/oe-parts.blade.php, тоест ИДВАТ СЛЕД mobile.css в
   документа и при равна конкретност печелят. Затова всяко правило тук е
   с представка `.oe-grid`.
   ========================================================================== */
@media (max-width:860px){
  /* Трета колона само за да седне значката „ОЕ" ДО марката. Горният ляв ъгъл
     е запазен за процента отстъпка, както е при продуктовите карти. */
  .oe-grid .oecard{
    display:grid;
    grid-template-columns:104px minmax(0,1fr);
    align-items:center;
    gap:3px 12px;
    padding:12px;
  }
  .oe-grid .oecard__logo { grid-area:1 / 1 / 7 / 2; align-self:center; height:auto; padding:0; margin:0 }
  .oe-grid .oecard__logo img{ max-width:100%; max-height:88px; object-fit:contain }
  /* Значката и марката вече са в общ ред (.oecard__brandrow) — в маркъпа,
     тоест важи и за десктоп. Тук се разполага само редът. */
  .oe-grid .oecard__brandrow{ grid-area:1 / 2 / 2 / 3; padding-right:30px }
  .oe-grid .oecard__badge{ padding:2px 6px; font-size:9.5px; line-height:1.4 }
  .oe-grid .oecard__brand{ font-size:11px }
  .oe-grid .oecard__name { grid-area:2 / 2 / 3 / 3; font-size:13px; line-height:1.25 }
  .oe-grid .oecard__sku  { grid-area:3 / 2 / 4 / 3; font-size:11.5px }
  .oe-grid .oecard__price{ grid-area:4 / 2 / 5 / 3; font-size:16px; margin:2px 0 }
  .oe-grid .oecard__stock{ grid-area:5 / 2 / 6 / 3; font-size:11.5px }
  .oe-grid .oecard__buy  {
    grid-area:6 / 2 / 7 / 3;
    width:100%; min-width:0; min-height:var(--tap);
    margin-top:6px; padding:0 8px; gap:6px; font-size:13px; white-space:nowrap;
  }
  .oe-grid .oecard__buy svg{ width:15px; height:15px; flex:none }

  .oe-grid .oecard__fav  { top:8px; right:8px }
  .oe-grid{ gap:10px }
}


/* ============================================================================
   КОЛИЧКА (телефон).
   Редът беше решетка с ЕДНА колона: снимка+име, после цена, после количество,
   после общо — четири отделни реда един под друг, оттам разхвърляното усещане.
   Плюс цената се повтаряше („Цена" и „Общо" съвпадат при бройка 1).

   Сега: снимка и текст горе, а долу количеството вляво и сумата вдясно.
   ========================================================================== */
@media (max-width:860px){

  /* Обвивките се разтварят, за да станат снимката, името, количеството и
     сумата ПРЕКИ клетки на реда — иначе не могат да се подредят една спрямо
     друга. Всяка позиция е ИЗРИЧНА: при смесване с автоматични редове
     решетката избутва част от децата надолу. */
  /* с представка `.cartrow`, защото inline <style> блокът в cart.blade.php
     идва след mobile.css и при равна конкретност печели */
  .cartrow .cartrow__product, .cartrow .cartrow__info{ display:contents }
  /* Трите колони искаха 330px в ред от 289 и цената се режеше. Снимката и
     броячът са свити, за да остане място на сумата. */
  /* Удвоен клас: в inline блока на cart.blade.php има
     `@media{ .cartrow{grid-template-columns:1fr} }`, който при равна
     конкретност печели. Тогава колони 2 и 3 стават НЕЯВНИ и всяка карта си
     ги оразмерява сама — оттам различната дупка между снимката и текста. */
  .cartrow.cartrow{
    grid-template-columns:92px minmax(0,1fr) auto;
    align-items:center;
    gap:0 10px;
    padding:10px;
  }
  .cartrow .cqty{ width:92px }
  .cartrow .cqty button{ width:28px; height:32px; min-width:0; padding:0 }
  .cartrow .cqty input{ width:30px; height:32px; padding:0 }
  .cartrow .cartrow__imgwrap{ grid-area:1 / 1 / 6 / 2; align-self:start }
  .cartrow .cartrow__name{ grid-area:1 / 2 / 2 / 4; min-width:0 }
  .cartrow .cartrow__cat { grid-area:2 / 2 / 3 / 4; min-width:0 }
  .cartrow .product__axle{ display:none }   /* не се ползва в количката */
  /* „Премахни" е НАД количеството, а сумата е срещу самия брояч. */
  .cartrow .cartrow__del { grid-area:4 / 2 / 5 / 3; justify-self:start }
  .cartrow .cartrow__qty { grid-area:5 / 2 / 6 / 3; justify-content:flex-start; margin-top:8px }
  .cartrow__total.cartrow__total{
    grid-area:5 / 3 / 6 / 4;
    align-self:center; justify-self:end; text-align:right;
    padding-left:10px; margin-bottom:8px;   /* една идея по-нагоре от брояча */
    display:flex; align-items:center;
    font-size:15px; white-space:nowrap;
  }
  /* Цена за брой — свой ред под каталожния номер. Стойността идва наготово
     от cart-ui.js (цена + зачертана стара), затова надписът е от CSS. */
  .cartrow__price.cartrow__price{
    display:block; grid-area:3 / 2 / 4 / 4;
    text-align:left; font-size:11px; font-weight:600; color:var(--muted);
    margin-top:0; line-height:1.35;
  }
  .cartrow .cartrow__price::before{ content:"Цена за брой: "; font-weight:500 }
  .cartrow .cartrow__price del{ margin-left:6px; font-size:10.5px }

  /* --- лентата за безплатна доставка --- */
  .cartfree{ gap:12px; padding:14px }
  .cartfree__left { gap:12px; align-items:flex-start }
  /* „Безплатна доставка над 200€" повтаря изречението вляво */
  .cartfree__right{ display:none }
  .cartfree__bar  { width:100% }

  /* --- предимствата долу: като картите на началната страница ---
     Бяха в общ бял блок, залепени един за друг, с наследено междуредие на
     страницата — оттам зейналият текст на снимката. Сега всяко е своя карта
     с тънка рамка, а междуредието се задава и на обвивката. */
  .cartbenefits.cartbenefits{
    grid-template-columns:1fr 1fr;
    gap:10px;
    background:none; border:0; border-radius:0; padding:0;
  }
  .cartbenefit.cartbenefit{
    align-items:center; gap:10px;
    padding:12px 10px;
    background:#fff; border:1px solid var(--line); border-radius:12px;
  }
  .cartbenefits .cartbenefit > svg{ width:28px; height:28px; flex:none }
  .cartbenefits .cartbenefit > div{ min-width:0; line-height:1.25 }
  .cartbenefits .cartbenefit b{ font-size:12px; line-height:1.25; margin-bottom:3px }
  .cartbenefits .cartbenefit span{ display:block; font-size:11px; line-height:1.25 }
}


/* ============================================================================
   КОЛИЧКА — по макета.
   ========================================================================== */
@media (max-width:860px){

  /* --- лентата за безплатна доставка: иконата в бледочервено кръгче --- */
  /* по-конкретно от inline <style> блока в cart.blade.php */
  .cartfree .cartfree__left > svg{
    flex:none; width:54px; height:54px; padding:13px;
    box-sizing:border-box;
    background:#ecf4e7; border-radius:50%;
    color:var(--accent); fill:var(--accent); stroke:var(--accent);
  }
  .cartfree__left{ align-items:center }

  /* --- картата на продукта --- */
  .cartrow__imgwrap{
    width:92px; height:92px; padding:6px;
    display:grid; place-items:center;
    background:var(--bg-soft); border-radius:12px;
  }
  .cartrow__imgwrap img{ max-width:100%; max-height:100%; object-fit:contain }

  .cartrow .cartrow__name{ font-size:13px; font-weight:800; line-height:1.25 }
  .cartrow .cartrow__cat { font-size:11px; margin-top:1px; line-height:1.35 }

  /* „Премахни" като очертан бутон */
  .cartrow__del{
    display:inline-flex; align-items:center; gap:7px;
    margin-top:8px; padding:8px 14px; min-height:var(--tap);
    border:1px solid var(--line); border-radius:10px;
    background:#fff; color:var(--ink); font-size:13px; font-weight:600;
  }
  .cartrow__del svg{ width:15px; height:15px; flex:none }

  /* 19px не се събира в колоната — при 375px тя разпъваше реда с 9px */
  .cartrow__total.cartrow__total{ font-size:14px; font-weight:900; color:var(--dark) }
  /* разделителната черта отпада — редът е достатъчно ясен и без нея */
  .cartrow__total.cartrow__total{ border-left:0 }

}


/* Всеки продукт става СВОЯ карта — с рамка, заобляне и мека сянка, отделена
   с разстояние. Досега редовете бяха в един общ бял блок, разделени само с
   чертичка (`.cartrow{border-bottom}`), а обвивката `.cartlist` носеше
   рамката и заоблянето. */
@media (max-width:860px){
  .cartmain .cartlist{
    background:none; border:0; border-radius:0; padding:0; overflow:visible;
    display:flex; flex-direction:column; gap:12px;
  }
  .cartmain .cartlist__head{ display:none }          /* заглавията на колоните нямат смисъл тук */
  /* Всички редове седят в ЕДИН безименен <div> вътре в .cartlist, тоест
     разстоянието трябва да е върху него, не върху списъка. */
  .cartmain .cartlist > div:not([class]){ display:flex; flex-direction:column; gap:12px }

  .cartrow.cartrow{
    background:#fff;
    border:1px solid var(--line);
    border-bottom:1px solid var(--line);   /* беше единственият разделител */
    border-radius:14px;
    box-shadow:0 2px 10px rgba(20,20,30,.06);
    padding:12px;
    gap:2px 10px;
  }

  /* „Премахни" е обикновен текст с кошче, без рамка и фон */
  .cartrow .cartrow__del{
    padding:5px 0; margin-top:7px; min-height:0;
    background:none; border:0; border-radius:0;
    color:var(--muted); font-size:11.5px; font-weight:600;
  }

  /* --- долните два бутона --- */
  .cartmain .cartlist__foot{ display:grid; grid-template-columns:1fr 1fr; gap:10px; padding-top:0; margin-top:12px }
  .cartmain .cartlist__continue, .cartmain .cartlist__clear{
    display:flex; align-items:center; justify-content:center; gap:9px;
    min-height:64px; padding:12px 10px;
    border:1px solid var(--line); border-radius:14px;
    background:#fff; color:var(--dark);
    font-size:13px; font-weight:700; line-height:1.25; text-align:center;
  }
  .cartmain .cartlist__continue svg, .cartmain .cartlist__clear svg{ width:17px; height:17px; flex:none }
  .cartmain .cartlist__clear{ background:#f3f7f0; border-color:#dee9d6; color:var(--accent) }
}

/* ============================================================================
   СТРАНИЦА „ДОСТАВКА" (телефон).
   Панелите бяха с поле 34px, картите с иконка НАД текста, а стъпките —
   четири в редица. На 375px това дава много въздух и малко съдържание.
   ========================================================================== */
@media (max-width:860px){

  /* --- картите с предимства: иконка вляво, текст вдясно --- */
  .dusp.dusp{
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    gap:2px 12px;
    align-items:start;
    padding:14px;
    border-radius:14px;
  }
  .dusp.dusp:hover{ transform:none; box-shadow:none }   /* няма посочване на телефон */
  .dusp .dusp__ic{ grid-area:1 / 1 / 3 / 2; width:44px; height:44px; margin:0; align-self:center }
  .dusp .dusp__ic svg{ width:22px; height:22px }
  .dusp.dusp b{ grid-area:1 / 2 / 2 / 3; font-size:13.5px; margin-bottom:2px }
  /* `:not(.dusp__ic)` — иконката също е <span> и селекторът я хващаше
     заедно с текста, местейки я в грешната клетка. */
  .dusp.dusp > span:not(.dusp__ic){ grid-area:2 / 2 / 3 / 3; font-size:12px; line-height:1.45 }
  .dusps.dusps{ gap:10px; padding-bottom:22px }

  /* --- „Как протича поръчката": по една стъпка на ред --- */
  .dsteps.dsteps{ flex-direction:column; gap:14px }
  .dstep.dstep{
    display:grid;
    grid-template-columns:56px minmax(0,1fr);
    gap:2px 12px;
    align-items:center;
    text-align:left;
  }
  .dstep .dstep__ic{ grid-area:1 / 1 / 3 / 2; width:56px; height:56px; margin:0; align-self:center }
  .dstep .dstep__ic svg{ width:26px; height:26px }
  .dstep .dstep__n{ grid-area:1 / 2 / 2 / 3; font-size:13.5px; margin-bottom:2px }
  .dstep .dstep__t{ grid-area:2 / 2 / 3 / 3; font-size:12px; line-height:1.45; padding:0 }
  /* стрелките сочеха НАДЯСНО между стъпките — вертикално нямат смисъл */
  .dstep .dstep__arr{ display:none }

  /* --- панелите: полето от 34px е за десктоп --- */
  .dpanel.dpanel{ padding:16px; border-radius:16px; margin-bottom:14px }
  .dpanel--sm.dpanel--sm{ padding:16px }
  .dpanel .dpanel__h{ font-size:19px; margin-bottom:18px }
  .drow2.drow2{ gap:14px; margin-bottom:14px }

  /* „Цена на доставката": двете части една под друга, а горната — с иконка
     вляво, както другите карти на страницата. Рамо до рамо при 375px
     оставяше на текста едва половин екран. */
  .dprice.dprice{ flex-direction:column; align-items:stretch; gap:14px }
  .dprice .dprice__free{
    display:grid; grid-template-columns:48px minmax(0,1fr); gap:12px;
    align-items:center; text-align:left;
  }
  .dprice .dprice__free-ic{ width:48px; height:48px; margin:0 }
  .dprice .dprice__free-ic svg{ width:26px; height:26px }
  .dprice .dprice__free b{ font-size:14.5px }
  .dprice .dprice__below p{ font-size:13px; margin-bottom:10px }
  .dprice .dprice__calc{ width:100%; justify-content:center; font-size:13px }


  /* --- „Нуждаете се от помощ": трите действия в един ред ---
     Бутоните са с твърда ширина 96px. 3 x 96 + отстоянията + полето от 30px
     не се събират в 375px и третият падаше на нов ред. Решетка от три равни
     колони ги подрежда в един ред при всяка ширина. */
  .dhelp__actions.dhelp__actions{
    display:grid; grid-template-columns:repeat(3,1fr);
    gap:8px; padding:2px 16px 20px;
  }
  .dhelp__act.dhelp__act{ width:auto; padding:12px 4px; gap:6px }
  .dhelp__act.dhelp__act svg{ width:22px; height:22px }
  .dhelp__act.dhelp__act span{ font-size:11.5px }
  .dhelp__left.dhelp__left{ padding:18px 16px 4px }
  .dhelp .dhelp__title{ font-size:17px }
  .dhelp .dhelp__phone-ic{ width:48px; height:48px }
  .dhelp .dhelp__phone-txt b{ font-size:21px }

  /* --- долната лента с предимства ---
     Тъмната карта чупеше надписите на по три реда. Взима стила на `.usp`
     от първа страница: бели карти с тънка рамка и иконка отляво. */
  .dtrust.dtrust{ background:transparent; border-radius:0; margin-bottom:24px }
  .dtrust__grid.dtrust__grid{ grid-template-columns:1fr 1fr; gap:10px }
  .dtrust__item.dtrust__item{
    justify-content:flex-start; align-items:center; gap:10px;
    padding:10px 8px; background:#fff;
    border:1px solid var(--line); border-radius:12px;
  }
  .dtrust__item.dtrust__item svg{ width:30px; height:30px }
  .dtrust__item.dtrust__item span{
    min-width:0; font-size:12px; line-height:1.25; color:var(--dark);
  }
}


/* ============================================================================
   ФУТЪР НА ТЕЛЕФОН
   На тесен екран четирите колони се нареждаха една под друга и футърът ставаше
   по-дълъг от самата страница: логото, текстът, двата контакта и после три
   пълни списъка с връзки плюс работното време — все разгънати.

   Сега: марката и двата контакта остават видими (те са това, за което се
   слиза долу), а списъците се сгъват. Отварянето е роденото на <details>,
   тоест работи и без JS, щом веднъж са затворени.
   ========================================================================== */
.footer__contact a.footer__cta{ display:none }   /* „Контакти" — само на телефон (долу) */
@media (max-width:860px){
  /* колата от фона на компютъра (img/footer-bg.webp) — горе вдясно, до логото, и се стапя
     в тъмното надолу; зеленият ореол долу вляво остава (Мариян, 06.11.2026) */
  .footer{
    background-image:
      linear-gradient(180deg, rgba(11,17,20,0) 0, rgba(11,17,20,0) 120px, #0b1114 200px),
      var(--footer-bg),
      radial-gradient(45% 70% at 0% 100%, rgba(111,179,26,.3) 0%, rgba(111,179,26,0) 70%);
    background-size:100% 200px, auto 200px, auto;
    background-position:0 0, right top, 0 0;
    background-repeat:no-repeat;
  }
  .footer__grid{ padding:26px 16px 22px; gap:0 }

  /* --- марката --- */
  .footer__col:first-child{ padding-bottom:18px; border-bottom:1px solid #232323 }
  /* Логото — колкото да се чете: правилото на хедъра `.logo__img{max-width:27vw}` хващаше и
     него и го свиваше до ~100px. Лек зелен ореол и лимонена черта отдолу (Мариян, 06.11.2026). */
  .footer .logo--footer{ display:inline-flex; flex-direction:column; align-items:flex-start; gap:10px }
  .footer .logo--footer img{ height:56px; max-width:100%; filter:drop-shadow(0 4px 16px rgba(143,209,58,.3)) }
  .footer .logo--footer::after{ content:''; width:120px; height:3px; border-radius:3px; background:linear-gradient(90deg, #a6e352, rgba(166,227,82,0)) }
  .footer .footer__about{
    margin:12px 0 14px; max-width:none;
    font-size:13px; line-height:1.55; color:#8e8e97;
    text-shadow:0 1px 6px #0b1114, 0 0 2px #0b1114;   /* на тесен екран краят минава върху фаровете */
  }

  /* Телефонът и пощата са ДЕЙСТВИЯ, не редове текст — на телефон човек ги
     натиска. Затова са две карета едно до друго, високи колкото пръст. */
  .footer .footer__contact{ display:grid; grid-template-columns:1fr 1fr; gap:8px }
  .footer .footer__contact a{
    justify-content:center; gap:7px;
    min-height:44px; padding:0 10px;
    background:#171717; border:1px solid #262626; border-radius:11px;
    font-size:12.5px; color:#fff; white-space:nowrap;
    overflow:hidden; text-overflow:ellipsis;
  }
  .footer .footer__contact svg{ width:15px; height:15px }

  /* „Контакти" — голям лимонен бутон на цял ред под телефона и пощата: хората търсят
     контактите във футъра и тук трябва да ги намерят от пръв поглед (06.11.2026) */
  .footer .footer__contact a.footer__cta{
    grid-column:1 / -1; display:flex; justify-content:flex-start; align-items:center; gap:12px;
    min-height:64px; margin-top:4px; padding:10px 16px 10px 12px;
    background:linear-gradient(135deg,#b4ec5c 0%,#86cc1f 100%); border:0; border-radius:14px;
    color:#0b1310; white-space:normal; text-decoration:none;
    box-shadow:0 12px 26px -12px rgba(134,204,31,.7), inset 0 1px 0 rgba(255,255,255,.45);
  }
  .footer .footer__contact a.footer__cta:active{ filter:brightness(1.05) }
  .footer__cta-ic{ flex:none; width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:#0b1310 }
  .footer .footer__contact .footer__cta-ic svg{ width:22px; height:22px; stroke:#a6e352 }
  .footer__cta-txt{ display:flex; flex-direction:column; min-width:0; line-height:1.25 }
  .footer__cta-txt b{ font-size:18px; font-weight:900; letter-spacing:-.2px }
  .footer__cta-txt small{ font-size:12.5px; font-weight:600; color:rgba(11,19,16,.7) }
  .footer .footer__contact a.footer__cta > svg{ width:24px; height:24px; margin-left:auto; stroke:#0b1310; stroke-width:2.2 }

  /* --- сгънатите списъци --- */
  .footer__acc{ border-bottom:1px solid #232323 }
  /* Удвоеният селектор — иначе `.footer__acc summary{display:block}` от
     style.css (по-висока тежест) оставя стрелката на собствен ред под
     заглавието. */
  .footer__acc summary.footer__acc-sum{
    display:flex; align-items:center; justify-content:space-between; gap:12px;
    min-height:48px; cursor:pointer; -webkit-tap-highlight-color:transparent;
  }
  .footer__acc-sum .footer__h{ margin:0; font-size:14px }
  .footer__acc-arr{
    display:block; width:18px; height:18px; flex:none; color:#8e8e97;
    transition:transform .2s var(--ease, ease);
  }
  .footer__acc[open] .footer__acc-arr{ transform:rotate(180deg) }
  .footer__acc-body{ padding:2px 0 14px }
  .footer__acc-body a{ padding:7px 0; font-size:13.5px }

  /* --- работно време: ден и час на един ред, не на два --- */
  .footer__col--hours{ padding:16px 0 4px }
  .footer__col--hours .footer__h{ margin-bottom:10px; font-size:14px }
  .footer .footer__hours{
    display:flex; align-items:baseline; justify-content:space-between; gap:12px;
    margin:0; padding:5px 0; font-size:13px;
  }
  .footer .footer__hours br{ display:none }
  .footer .footer__hours strong{ font-size:13px; white-space:nowrap }

  /* --- долната лента --- */
  /* Долното поле е за плаващия чат-бот: без него редът с авторските права
     стои точно под робота и се чете наполовина. */
  .footer__bottom-inner{ padding:16px 16px 64px; gap:12px }
  .footer .pay{ justify-content:center; gap:6px }
  .footer .pay__label{ flex-basis:100%; text-align:center; margin-bottom:2px }
  .footer__bottom-inner > span{ font-size:11.5px; order:2 }
}


/* ============================================================================
   „АБОНИРАЙ СЕ ЗА ОФЕРТИ" НА ТЕЛЕФОН
   Полето и бутонът стояха един до друг в 343px: за имейла оставаха ~180px, а
   надписът на бутона се долепваше до ръба. Плюс центриран текст под иконка,
   който на тесен екран се чупи на три реда.

   Сега: иконката и заглавието на един ред отляво, а полето и бутонът — един
   под друг, всеки на цялата ширина и по 48px висок.
   ========================================================================== */
@media (max-width:860px){
  .news{ padding:22px 0 }
  .news .news__inner{
    flex-direction:column; align-items:stretch; gap:14px; text-align:left;
  }

  /* Иконката е до заглавието, а обяснението минава под двете — иначе тясната
     колона до иконката чупи изречението на три реда. */
  .news .news__text{
    display:grid; grid-template-columns:auto minmax(0,1fr);
    align-items:center; gap:4px 12px; justify-content:start;
  }
  .news .news__ic{ grid-area:1 / 1 / 2 / 2; width:40px; height:40px; border-radius:10px }
  .news .news__ic svg{ width:21px; height:21px }
  .news .news__text > div{ display:contents }
  .news .news__title{ grid-area:1 / 2 / 2 / 3; font-size:17px }
  .news .news__inner p{ grid-area:2 / 1 / 3 / 3; margin-top:2px; font-size:13px; line-height:1.45 }

  .news .news__form{ flex-direction:column; gap:9px; min-width:0; max-width:none }
  /* `flex:none` — в колона `flex:1` значи основа 0 ПО ВИСОЧИНА и полето
     се сплескваше до 16px, въпреки зададеното height. */
  .news .news__form input{ flex:none; width:100%; height:48px; padding:0 14px; font-size:15px;
    background:#1f1f1f; border:1px solid #2e2e2e; border-radius:11px }
  .news .news__form .btn{ width:100%; height:48px; padding:0; border-radius:11px;
    font-size:15px; display:inline-flex; align-items:center; justify-content:center }
}


/* ============================================================================
   ПРОФИЛ НА ТЕЛЕФОН
   Страничното меню е 807px висока колона — повече от цял екран (667px на
   iPhone SE) — и се повтаряше НА ВСЯКА страница в профила. Съдържанието
   тръгваше чак под него.

   Концепцията е „хъб и връщане": /profile е началото и там менюто е самото
   съдържание, а подстраниците са без меню, само с ред „← Моят профил" отгоре.
   ========================================================================== */
@media (max-width:860px){
  /* Подстраниците ходят без меню — оттам са 807-те пиксела.
     Удвоеният селектор: `.acc-side{display:flex}` живее във ВГРАДЕН <style> в
     самата част, а вграденото стои след връзките към css файловете и печели
     при равна тежест. */
  .acc-side.acc-side--sub{ display:none }

  /* Изглежда като „Назад към …" на продуктовата страница (`.dpd-back`) —
     бяло каре с рамка, а не гол текст. Един и същ жест, един и същ вид. */
  .acc-back{
    display:inline-flex; align-items:center; gap:8px;
    min-height:var(--tap); margin:0 0 14px; padding:8px 16px;
    background:#fff; border:1.5px solid var(--line); border-radius:12px;
    font-size:13px; font-weight:600; color:var(--dark); text-decoration:none;
    line-height:1.25; transition:border-color .18s, color .18s;
  }
  .acc-back:hover{ border-color:var(--accent); color:var(--accent) }
  .acc-back svg{ width:18px; height:18px; flex:none }

  /* --- хъбът: менюто е главното, затова се показва цяло --- */
  .acc-side{ position:static; gap:12px }
  .acc-user{ padding:14px }
  .acc-nav__item{ min-height:var(--tap) }

  /* Картата на клуба е реклама, не навигация — на телефон пада най-отдолу,
     за да не стои между менюто и таблото. */
  .acc-side .acc-club{ order:3 }
  .acc-side .acc-user{ order:1 }
  .acc-side .acc-nav{ order:2 }
}


/* На десктоп редът за връщане го няма — там менюто си стои отляво. */
@media (min-width:861px){
  .acc-back{ display:none }
}


/* ============================================================================
   „МОЯТ ГАРАЖ" НА ТЕЛЕФОН — по макетите от 19.10.2026
   Видът на картата, лентата „N автомобила" и дясната колона идват от
   вградения стил на страницата (десктопът); тук е само подредбата за тесен
   екран:
   - глава „‹ Моят гараж [+]" вместо реда „‹ Моят профил" и големия бутон;
   - картата: снимка вляво, име/спекове/статус вдясно, данните на цял
     ред отдолу (номер · пробег · година — VIN-ът е в „Редактирай"), после
     лентата с действия; кошчето е в менюто ⋮;
   - дясната колона (обобщение, бързи действия, помощ) е скрита.

   Селекторите са с `.garagepage` отпред, защото стиловете на страницата стоят
   във вграден <style> — той идва след css файловете и при равна тежест печели.
   ========================================================================== */
@media (max-width:860px){
  /* --- глава --- */
  /* само в списъка — страницата на колата си пази реда „‹ Моят гараж" */
  .garagepage--list .acc-back{ display:none }
  .garagepage .gl-head{ flex-direction:row; align-items:center; gap:6px; margin-bottom:14px }
  .garagepage .gl-head__back{
    display:grid; place-items:center; flex:none;
    width:36px; height:44px; margin-left:-8px; color:var(--dark);
  }
  .garagepage .gl-head__back svg{ width:24px; height:24px }
  .garagepage .gl-head__txt{ flex:1; min-width:0 }
  .garagepage .gl-head__ico,
  .garagepage .gl-sub{ display:none }
  .garagepage .gl-title{ font-size:24px; line-height:1.2 }
  .garagepage .gl-addbtn{
    align-self:center; flex:none; width:46px; height:46px; padding:0; justify-content:center;
    background:#fff; color:var(--accent); border:1px solid var(--line); border-radius:13px;
    box-shadow:0 2px 10px rgba(16,24,40,.06);
  }
  .garagepage .gl-addbtn span{ display:none }
  .garagepage .gl-addbtn svg{ width:24px; height:24px }

  /* --- лентата „N автомобила": по-ниска, с по-тясната картина --- */
  .garagepage .gl-hero:not([hidden]){ gap:12px; min-height:86px; margin-bottom:14px; padding:14px 30% 14px 14px; border-radius:16px }
  .garagepage .gl-hero::after{
    width:50%;
    background-image:url("../img/garage-hero.webp");
    -webkit-mask-image:linear-gradient(90deg, transparent 0, transparent 12%, #000 55%);
            mask-image:linear-gradient(90deg, transparent 0, transparent 12%, #000 55%);
  }
  .garagepage .gl-hero__ico,
  .garagepage .gl-hero__ico svg{ width:38px; height:38px }
  .garagepage .gl-hero__count{ font-size:19px }
  .garagepage .gl-hero__sub{ margin-top:3px; font-size:12px; line-height:1.35 }

  .garagepage .gl-tabs{ gap:22px; margin-bottom:14px }

  /* --- картата --- */
  .garagepage .gl-car{
    grid-template-columns:44% minmax(0,1fr);
    grid-template-areas:"img head" "meta meta" "bar bar";
    gap:10px 12px; align-items:stretch;
    padding:10px; margin-bottom:12px; border-radius:16px;
  }
  .garagepage .gl-car__del{ display:none }
  /* Снимката е 16:9 като на десктоп — горе до марката, не разпъната по главата. */
  .garagepage .gl-car__img{ align-self:start }
  .garagepage .gl-car__crown{ top:6px; left:6px; width:24px; height:24px; border-radius:7px }
  .garagepage .gl-car__crown svg{ width:14px; height:14px }
  .garagepage .gl-car__img--icon svg{ width:34px; height:34px }

  /* Главата е колона: име, спекове и статусът най-отдолу. Марката отделно не
     се показва — името вече започва с нея („HONDA" над „Honda Accord VIII"
     беше двойно). Менюто ⋮ стои горе вдясно в картата, както на десктоп;
     отстъпът отдясно пази името от него (архивираните са без меню). */
  .garagepage .gl-car__head,
  .garagepage .gl-car.is-primary .gl-car__head{ display:flex; flex-direction:column; gap:2px; padding:0 18px 0 0 }
  .garagepage .gl-car--archived .gl-car__head{ display:flex; flex-direction:column; gap:2px; padding:0 }
  .garagepage .gl-car__menu{ top:6px; right:4px }
  .garagepage .gl-car__menubtn{ width:32px; height:32px }
  .garagepage .gl-car__drop{ min-width:200px }
  .garagepage .gl-drop__item{ min-height:44px }
  .garagepage .gl-car__nameline{ margin:0; gap:6px }
  .garagepage .gl-car__nameline .gl-pill{ display:none }
  .garagepage .gl-car__name{ font-size:16px; line-height:1.2 }
  .garagepage .gl-car__specs{
    margin:1px 0 0; font-size:11.5px; line-height:1.35;
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  }
  .garagepage .gl-car__status,
  .garagepage .gl-car.is-primary .gl-car__status{ position:static; display:flex; margin-top:auto; padding-top:5px }
  .garagepage .gl-st{ font-size:10.5px; padding:2px 9px }

  /* Данните: номер · пробег · година и моливчето. Пробегът и годината са поне
     колкото текста си; при теснота се свива само номерът. */
  .garagepage .gl-car__meta{
    grid-template-columns:minmax(0,1.2fr) minmax(max-content,1fr) minmax(max-content,.7fr) auto;
    max-width:none; padding-top:10px; border-top:1px solid var(--line);
  }
  .garagepage .gl-car__meta > div{ padding:0 10px }
  .garagepage .gl-car__meta > div:first-child{ padding-left:2px }
  .garagepage .gl-car__meta > .gl-meta--vin{ display:none }
  .garagepage .gl-car__meta > .gl-meta--year{ display:block }
  .garagepage .gl-meta__k{ font-size:11px; margin-bottom:2px; line-height:1.3 }
  .garagepage .gl-meta__v{ gap:4px; font-size:14px; line-height:1.3 }
  .garagepage .gl-meta__add{ font-size:14px; line-height:1.3 }
  .garagepage .gl-meta__edit{ width:30px; height:30px; margin-left:4px }

  /* Лентата: „Редактирай" е най-дългата дума. */
  .garagepage .gl-car__bar{ grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr); padding:3px }
  .garagepage .gl-bar__item{ gap:6px; height:42px; padding:0 4px; font-size:12.5px }
  .garagepage .gl-bar__item svg{ width:17px; height:17px }

  /* Архивираните нямат меню — кошчето им остава до „Върни в гаража". */
  .garagepage .gl-car--archived{
    grid-template-columns:44% minmax(0,1fr) auto;
    grid-template-areas:"img head head" "meta meta meta" "bar bar del";
  }
  .garagepage .gl-car--archived .gl-car__bar{ grid-template-columns:1fr }
  .garagepage .gl-car--archived .gl-car__del{ display:grid; width:48px; height:48px }

  /* --- „Добави нов автомобил" --- */
  .garagepage .gl-addcard{ gap:12px; padding:14px; margin-top:4px; border-radius:16px }
  .garagepage .gl-addcard__ico{ width:34px; height:34px }
  .garagepage .gl-addcard__ico svg{ width:20px; height:20px }
  .garagepage .gl-addcard__title{ font-size:15.5px }
  .garagepage .gl-addcard__sub{ display:none }

  /* --- дясната колона я няма на телефон: обобщението повтаря лентата
     „N автомобила", а бързите действия и помощта са излишни тук --- */
  .garagepage .gp-aside{ display:none }
}


/* ============================================================================
   ПРОФИЛЪТ НА ТЕЛЕФОН — общ преглед
   Мерено по всичките десет страници (виж одита): счупена беше една —
   „страница на автомобила" преливаше със 120px. Останалото са контроли под
   размера за пръст и текст под 11.5px.

   Селекторите носят `.garagepage` / `.account` отпред, защото стиловете на
   тези страници стоят във ВГРАДЕНИ <style> блокове — те идват след css
   файловете и при равна тежест печелят.
   ========================================================================== */
@media (max-width:860px){

  /* ---- страница на автомобила: героят ----
     „Части за автомобила →" и „Смени автомобил" един до друг не се събират на
     375px (иконките излизаха извън бутона) — на телефон са един под друг. */
  .garagepage .gp-hero__actions{ flex-direction:column; flex-wrap:nowrap; gap:8px }
  .garagepage .gp-hero__actions .gp-btn{ width:100%; min-width:0 }

  /* ---- планът за поддръжка ----
     Таблица с ЧЕТИРИ колони (обслужване · интервал · описание · действие) иска
     456px. На телефон всеки ред става карта, а заглавията на колоните минават
     пред стойностите. */
  .garagepage .gp-plan,
  .garagepage .gp-plan tbody,
  .garagepage .gp-plan tr,
  .garagepage .gp-plan td{ display:block; width:auto }
  .garagepage .gp-plan tr:first-child{ display:none }        /* редът със заглавията */
  .garagepage .gp-plan tr{
    border:1px solid var(--line); border-radius:12px;
    padding:12px; margin-bottom:10px;
  }
  .garagepage .gp-plan td{ border:none; padding:0; font-size:13px; line-height:1.45 }
  .garagepage .gp-plan td + td{ margin-top:6px }
  .garagepage .gp-plan td:nth-child(2)::before{ content:'Интервал: '; color:var(--muted) }
  .garagepage .gp-plan td:nth-child(3)::before{ content:'Описание: '; color:var(--muted) }
  .garagepage .gp-plan__name{ font-size:14px; font-weight:700 }
  /* Последната колона е дясно подравнена (така е в таблицата на десктоп) —
     в картата бутонът увисва вдясно, затова се връща вляво. */
  .garagepage .gp-plan td:last-child{ text-align:left }
  .garagepage .gp-buy{ min-height:40px }

  /* ---- дребни бутони по страницата на автомобила ---- */
  .garagepage .gp-hero__imgedit{ min-width:32px; min-height:32px }
  .garagepage .gp-favrow__sub,
  .garagepage .gp-again__sub{ font-size:12px }

  /* ---- гаражът: звездата ----
     (`.gl-meta__add` и `.gl-meta__k` се задават при самата карта по-горе —
     дублирани тук те печелеха по ред и разваляха височината на клетките.) */
  .garagepage .gl-primary__star{ width:30px; height:30px }

  /* ---- лентите с раздели: 30px разстояние изяжда мястото за самите раздели ---- */
  .garagepage .gl-tabs{ gap:18px }

  /* (поръчките: размерите на текста са в самия изглед, при мобилната карта) */

  /* ---- любими: селектът за подредба беше 18px висок; сега пълни картето ---- */
  .account .catsort select{ flex:1 1 auto; min-height:30px }

  /* ---- начало на профила ---- */
  .account .acc-status{ font-size:11.5px }

  /* ---- адреси и фактури: бутоните по картите ---- */
  .bk-act{ min-height:36px }
}


/* ============================================================================
   МОДАЛЪТ „ДОБАВИ АВТОМОБИЛ" — последната стъпка на телефон
   Редът с двигателя е иконка · текст · чип с кода, а чипът е `flex:none` и
   взима каквото му трябва („B48 B20 A, GC1" е 90px). На 344px за името
   оставаха 90 и то се чупеше по една дума на ред — осем реда за един двигател.

   Тук чипът слиза под текста, а името получава цялата останала ширина.
   ========================================================================== */
@media (max-width:860px){
  .carpick .cp-mod{
    display:grid; grid-template-columns:auto minmax(0,1fr);
    align-items:start; gap:5px 12px;
    padding:11px 12px;
  }
  .carpick .cp-mod__ic{ grid-area:1 / 1 / 3 / 2; align-self:center; width:36px; height:36px }
  .carpick .cp-mod__ic svg{ width:20px; height:20px }
  .carpick .cp-mod__txt{ grid-area:1 / 2 / 2 / 3; min-width:0 }
  .carpick .cp-mod__code{ grid-area:2 / 2 / 3 / 3; justify-self:start }

  /* `float:left` караше двата реда да се свиват по съдържанието си вместо да
     ползват колоната. Като блокове всеки си е на ред и не плава. */
  .carpick .cp-mod__title,
  .carpick .cp-mod__meta{ float:none; display:block; clear:none }
  .carpick .cp-mod__title{ font-size:13.5px; line-height:1.3 }
  .carpick .cp-mod__meta { margin-top:2px; font-size:11.5px; line-height:1.3 }

  .carpick .cp-mods__head{ font-size:12.5px; line-height:1.35 }

  /* --- „Добави нов автомобил" в гаража --- */
  .garagepage .gl-addcard{ padding:14px; gap:12px; border-radius:14px }
  .garagepage .gl-addcard__ico{ width:36px; height:36px }
  .garagepage .gl-addcard__ico svg{ width:19px; height:19px }
  .garagepage .gl-addcard__title{ font-size:14px }
  .garagepage .gl-addcard__sub{ font-size:12px; line-height:1.35; margin-top:2px }
  .garagepage .gl-addcard__arrow svg{ width:18px; height:18px }
}

/* ==========================================================================
   МОБИЛНОТО МЕНЮ (#mm) — на цял екран, на нива, като в приложение.
   Маркъпът: partials/mobile-menu (главното ниво); по-дълбоките нива ги строи
   „3. Мобилно меню" в main.js. Всяко ниво се плъзга отдясно върху
   предишното, а „назад" на телефона го връща.
   ========================================================================== */
.mm{ display:none }

@media (max-width:860px){

  html.mm-lock,
  html.mm-lock body{ overflow:hidden }
  /* балончето на AI асистента е над всичко (z-index 5000) — докато менюто е отворено, не му е мястото */
  html.mm-lock .aiw{ display:none }

  .mm{
    display:block; position:fixed; inset:0; z-index:950;
    background:#f3f4f6;
    visibility:hidden; transform:translateX(-100%);   /* излиза отляво — откъдето е бургерът */
    transition:transform .36s cubic-bezier(.22,.8,.26,1), visibility 0s linear .36s;
  }
  .mm.is-open{
    visibility:visible; transform:none;
    transition:transform .36s cubic-bezier(.22,.8,.26,1), visibility 0s;
  }
  .mm__stage{ position:absolute; inset:0; overflow:hidden }

  .mm__panel{
    position:absolute; inset:0; display:flex; flex-direction:column; background:#f3f4f6;
    transform:translateX(100%);
    transition:transform .34s cubic-bezier(.22,.8,.26,1), filter .34s;
  }
  .mm__panel.is-active{ transform:none }
  .mm__panel.is-behind{ transform:translateX(-28%); filter:brightness(.9) }

  .mm__ic{ width:22px; height:22px; flex:none; fill:none; stroke:currentColor; stroke-width:2;
           stroke-linecap:round; stroke-linejoin:round }

  /* --- горната лента: лого или заглавие на нивото, назад, затвори --- */
  .mm__bar{
    flex:none; display:flex; align-items:center; gap:10px;
    min-height:60px; padding:var(--safe-t) 12px 0 16px;
    background:#fff; border-bottom:1px solid var(--line);
  }
  .mm__panel:not([data-level="1"]) .mm__bar{ padding-left:12px }
  .mm__logo{ display:flex; margin-right:auto }
  .mm__logo img{ height:30px; width:auto }
  .mm__bar-title{ flex:1; min-width:0; text-align:center; font-size:17px; font-weight:800; color:var(--dark);
                  white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
  .mm__btn{ flex:none; display:grid; place-items:center; width:44px; height:44px; padding:0;
            border:0; border-radius:50%; background:var(--bg-soft); color:var(--dark); cursor:pointer;
            transition:transform .12s, background .15s }
  .mm__btn:active{ transform:scale(.9); background:#e6e7ea }

  .mm__scroll{
    flex:1; overflow-y:auto; -webkit-overflow-scrolling:touch; overscroll-behavior:contain;
    display:flex; flex-direction:column; gap:14px;
    padding:16px 16px calc(28px + var(--safe-b));
  }
  /* картите с overflow:hidden иначе се смачкват, щом съдържанието е по-дълго от екрана */
  .mm__scroll > *{ flex-shrink:0 }

  /* натиснато — леко хлътва, за да се усеща като копче */
  .mm__search, .mm__qt, .mm__cats, .mm__row, .mm__tile, .mm__cat, .mm__call, .mm__hero-cta{
    transition:transform .12s ease, box-shadow .15s; -webkit-tap-highlight-color:transparent;
  }
  .mm__search:active, .mm__qt:active, .mm__cats:active, .mm__row:active,
  a.mm__tile:active, .mm__cat:active, .mm__call:active, .mm__hero-cta:active{ transform:scale(.97) }

  /* --- търсене (отваря търсачката на цял екран) --- */
  .mm__search{
    display:flex; align-items:center; gap:12px; width:100%; min-height:52px; padding:0 16px;
    border:1px solid var(--line); border-radius:16px; background:#fff;
    box-shadow:0 2px 10px rgba(15,15,25,.04);
    font:inherit; font-size:15px; color:var(--muted); text-align:left; cursor:pointer;
  }
  .mm__search .mm__ic{ color:var(--accent) }
  .mm__search span{ min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }

  /* --- гараж · любими · профил --- */
  .mm__quick{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px }
  .mm__qt{
    display:flex; flex-direction:column; align-items:flex-start; gap:2px; min-width:0; padding:12px;
    border:1px solid var(--line); border-radius:16px; background:#fff;
    font:inherit; color:var(--dark); text-align:left; cursor:pointer;
  }
  .mm__qt-ic{ position:relative; display:grid; place-items:center; width:40px; height:40px; margin-bottom:6px;
              border-radius:12px; background:#f1f7ed; color:var(--accent) }
  .mm__qt--garage .mm__qt-ic{ background:var(--accent-grad); color:#fff }
  .mm__qt b{ font-size:13.5px; font-weight:800; line-height:1.2 }
  .mm__qt small{ max-width:100%; font-size:12px; color:var(--muted);
                 white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
  .mm__badge{
    position:absolute; top:-7px; right:-9px; display:grid; place-items:center;
    min-width:20px; height:20px; padding:0 5px; border:2px solid #fff; border-radius:10px;
    background:var(--dark); color:#fff; font-size:10.5px; font-weight:800; font-style:normal;
  }
  .mm__badge[hidden]{ display:none }

  /* --- „Всички категории" — най-важното копче, червено --- */
  .mm__cats{
    position:relative; overflow:hidden; display:flex; align-items:center; gap:14px; width:100%;
    padding:16px; border:0; border-radius:18px; background:var(--accent-grad); color:#fff;
    box-shadow:0 12px 26px rgba(79,135,1,.26); font:inherit; text-align:left; cursor:pointer;
  }
  .mm__cats::after{ content:""; position:absolute; right:-36px; top:-46px; width:150px; height:150px;
                    border-radius:50%; background:rgba(255,255,255,.09); pointer-events:none }
  .mm__cats-ic{ display:grid; place-items:center; flex:none; width:48px; height:48px;
                border-radius:14px; background:rgba(255,255,255,.16) }
  .mm__cats .mm__txt small{ color:rgba(255,255,255,.82) }
  .mm__cats .mm__go{ background:rgba(255,255,255,.2); color:#fff }

  /* --- общото на редовете: текст в средата, кръгла стрелка вдясно --- */
  .mm__txt{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px }
  .mm__txt b{ font-size:16px; font-weight:800; line-height:1.2 }
  .mm__txt small{ font-size:12.5px; color:var(--muted) }
  .mm__go{ flex:none; display:grid; place-items:center; width:32px; height:32px;
           border-radius:50%; background:var(--bg-soft); color:var(--dark) }
  .mm__go .mm__ic{ width:18px; height:18px; stroke-width:2.4 }

  .mm__label{ margin:6px 4px -4px; font-size:12px; font-weight:800; letter-spacing:.8px;
              text-transform:uppercase; color:var(--muted) }

  /* --- разделите (входните страници) и линковете --- */
  .mm__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px }
  .mm__row{
    display:flex; align-items:center; gap:14px; padding:10px 12px 10px 10px;
    border:1px solid var(--line); border-radius:18px; background:#fff;
    color:var(--dark); text-decoration:none;
  }
  /* Миниатюрите са светли студийни снимки на фона на сайта (Мариян, 07.11.2026 — „тези не ми
     харесват": бяха изрязани продукти на тъмно каре със зелен ореол). Снимката запълва карето;
     фонът му е същият светъл, ако някоя качена е по-тясна. Генерирани с OpenAI, 228×174 WebP
     (3× от карето), ~3–6 KB. Старите снимки и старото каре: ~/tools/backup-sauto-menu-img-2026-11-07. */
  .mm__thumb{
    flex:none; display:grid; place-items:center; width:76px; height:58px; overflow:hidden; border-radius:12px;
    background:#eef1ec;
  }
  .mm__thumb img{ width:100%; height:100%; object-fit:cover }
  /* теглят се при отваряне (main.js → snimki) — появяват се плавно, мястото е запазено */
  .mm__thumb img.mm__lazy{ opacity:0; transition:opacity .2s }
  .mm__thumb img.mm__lazy.is-in{ opacity:1 }
  .mm__thumb--ic{ width:50px; height:50px; background:#f1f7ed; color:var(--accent) }
  .mm__row.is-sale .mm__txt b{ color:var(--accent) }

  /* --- помощ по телефона --- */
  .mm__help{ display:flex; flex-direction:column; gap:12px; margin-top:6px; padding:16px;
             border-radius:18px; background:var(--dark); color:#fff }
  .mm__help-txt b{ display:block; font-size:15px; font-weight:800 }
  .mm__help-txt small{ display:block; margin-top:3px; font-size:12.5px; line-height:1.4; color:#b6b6c0 }
  .mm__call{ display:flex; align-items:center; justify-content:center; gap:10px; min-height:48px;
             border-radius:14px; background:var(--accent-grad); color:#fff; font-size:16px; font-weight:800;
             text-decoration:none }
  .mm__call .mm__ic{ width:20px; height:20px }

  /* ---------- ниво 2–3: витрина най-горе ---------- */
  .mm__hero{
    position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between;
    gap:16px; min-height:176px; padding:18px; border-radius:20px; color:#fff;
    background:
      radial-gradient(60% 75% at 84% 62%,rgba(255,170,0,.24),transparent 70%),
      radial-gradient(75% 90% at 84% 60%,rgba(79,135,1,.46),transparent 70%),
      linear-gradient(160deg,#17171b,#0b0b0c);
  }
  .mm__hero-img{ position:absolute; right:-12px; top:14px; width:52%; max-height:64%; object-fit:contain;
                 filter:drop-shadow(0 12px 18px rgba(0,0,0,.55)) }
  .mm__hero-txt{ position:relative; max-width:58% }
  .mm__eyebrow{ display:block; margin-bottom:6px; font-size:11.5px; font-weight:800; letter-spacing:.7px;
                text-transform:uppercase; color:#60a207 }
  .mm__hero-title{ display:block; font-size:21px; font-weight:900; line-height:1.15; letter-spacing:-.3px }
  .mm__hero-cta{ position:relative; align-self:flex-start; display:inline-flex; align-items:center; gap:8px;
                 padding:11px 16px; border-radius:12px; background:#fff; color:var(--dark);
                 font-size:14px; font-weight:800; text-decoration:none }
  .mm__hero-cta .mm__ic{ width:17px; height:17px }
  /* светъл — за снимки на бял фон (категориите) */
  .mm__hero--light{ background:#fff; color:var(--dark); border:1px solid var(--line) }
  .mm__hero--light .mm__eyebrow{ color:var(--accent) }
  .mm__hero--light .mm__hero-img{ right:6px; top:50%; transform:translateY(-50%); width:42%; max-height:80%; filter:none }
  .mm__hero--light .mm__hero-cta{ background:var(--accent-grad); color:#fff }

  /* --- каретата на раздела, по две на ред --- */
  .mm__group{ display:flex; flex-direction:column; gap:10px }
  .mm__ghead{ display:flex; flex-direction:column; gap:2px; padding:4px 4px 0 }
  .mm__ghead b{ display:flex; align-items:center; gap:8px; font-size:13px; font-weight:800;
                letter-spacing:.6px; text-transform:uppercase; color:var(--dark) }
  .mm__ghead b::before{ content:""; width:4px; height:14px; border-radius:2px; background:var(--accent) }
  .mm__ghead small{ padding-left:12px; font-size:12.5px; color:var(--muted) }
  .mm__tiles, .mm__cats-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px }
  .mm__tile, .mm__cat{
    display:flex; flex-direction:column; align-items:stretch; gap:3px; min-width:0; padding:8px 8px 12px;
    border:1px solid var(--line); border-radius:16px; background:#fff;
    font:inherit; color:var(--dark); text-align:left; text-decoration:none; cursor:pointer;
  }
  .mm__tile-img, .mm__cat-img{ display:grid; place-items:center; aspect-ratio:4/3; margin-bottom:6px;
                                overflow:hidden; border-radius:10px; background:var(--bg-soft); color:#c4c4cc }
  .mm__tile-img img{ width:100%; height:100%; object-fit:cover }
  .mm__cat-img{ background:#fff }
  .mm__cat-img img{ width:100%; height:100%; object-fit:contain }
  .mm__tile-img .mm__ic, .mm__cat-img .mm__ic{ width:30px; height:30px; stroke-width:1.4 }
  .mm__tile b, .mm__cat b{ padding:0 2px; font-size:13.5px; font-weight:800; line-height:1.25 }
  .mm__tile small, .mm__cat small{ padding:0 2px; font-size:12px; line-height:1.3; color:var(--muted);
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden }
  .mm__tile.is-dead{ cursor:default }
  .mm__cat[hidden]{ display:none }

  /* --- всички категории: филтър --- */
  .mm__filter{ display:flex; align-items:center; gap:10px; min-height:50px; padding:0 14px;
               border:1px solid var(--line); border-radius:14px; background:#fff; color:var(--muted) }
  .mm__filter:focus-within{ border-color:var(--accent); box-shadow:0 0 0 3px rgba(79,135,1,.1) }
  /* 16px — иначе iPhone приближава страницата при фокус */
  .mm__filter input{ flex:1; min-width:0; border:0; outline:0; background:none;
                     font:inherit; font-size:16px; color:var(--dark) }
  /* Резултатите от търсачката вътре в менюто. Редовете са същите като в
     подсказките на хедъра (`.ac__*` в style.css) — тук само се разполагат в
     потока, вместо да висят като балон. */
  .mm__ac{ display:grid; gap:2px }
  .mm__ac .ac__item{ min-height:var(--tap); padding:8px 10px; border-radius:12px }
  .mm__ac .ac__thumb{ width:44px; height:44px }
  /* Дългите имена се пренасят на два реда вместо да се режат с многоточие —
     на 344px „Датчик за износване на накладките" не се побира на ред. */
  .mm__ac .ac__name{ font-size:14.5px; white-space:normal; display:-webkit-box;
                     -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden }
  .mm__ac .ac__cat{ display:block; margin:2px 0 0; font-size:12px }
  .mm__ac .ac__code{ margin-bottom:8px }
  .mm__ac .ac__all{ margin-top:6px; min-height:var(--tap); border-top:1px solid var(--line) }
  .mm__ac .ac__empty{ padding:24px 10px }
  /* `display:grid` побеждава атрибута `hidden`, ако не се каже изрично */
  .mm__ac[hidden]{ display:none }
  .mm__cats-grid[hidden]{ display:none }

  /* --- една категория: групите с видовете, както в листинга --- */
  .mm__grp{ overflow:hidden; border:1px solid var(--line); border-radius:16px; background:#fff }
  .mm__grp-head{ display:flex; align-items:center; gap:10px; padding:14px; color:var(--dark); text-decoration:none }
  .mm__grp-head b{ flex:1; min-width:0; font-size:15px; font-weight:800; line-height:1.25 }
  .mm__grp-head small{ flex:none; font-size:12px; color:var(--muted) }
  .mm__grp-head .mm__ic{ width:18px; height:18px; color:var(--accent); stroke-width:2.4 }
  /* Видовете: ред със снимка — както `.subitem` в страницата на категорията. */
  .mm__subs{ border-top:1px solid var(--line) }
  .mm__sub{ display:flex; align-items:center; gap:12px; min-height:60px; padding:8px 14px;
            color:var(--dark); text-decoration:none; border-bottom:1px solid var(--line) }
  .mm__sub:last-child{ border-bottom:0 }
  .mm__sub:active{ background:var(--bg-soft) }
  .mm__sub b{ flex:1; min-width:0; font-size:14px; font-weight:600; line-height:1.3 }
  .mm__sub-img{ width:46px; height:46px; flex:none; display:grid; place-items:center; overflow:hidden;
                background:#fff; border:1px solid var(--line); border-radius:11px }
  .mm__sub-img img{ width:100%; height:100%; object-fit:contain }
  .mm__sub-img .mm__ic{ width:22px; height:22px; color:#c7cad1; stroke-width:1.5 }
  .mm__sub-go{ flex:none; width:16px; height:16px; color:var(--muted); stroke-width:2.4 }

  /* --- зареждане на избраната страница ---
     Менюто остава на екрана: лента горе, въртележка върху докоснатото и
     притъмняване на останалото. Така изчакването изглежда като в приложение,
     а не като заспал екран. */
  .mm__bar{ position:relative; overflow:hidden }
  .mm.is-loading .mm__panel.is-active .mm__bar::after{
    content:""; position:absolute; left:0; bottom:0; height:3px; border-radius:0 3px 3px 0;
    background:var(--accent-grad); animation:mmLoad 6s cubic-bezier(.06,.7,.25,1) forwards;
  }
  @keyframes mmLoad{ 0%{ width:6% } 25%{ width:58% } 55%{ width:80% } 100%{ width:95% } }
  @keyframes mmSpin{ to{ transform:rotate(360deg) } }
  .mm.is-loading .mm__scroll{ pointer-events:none }
  .mm.is-loading .mm__scroll > *{ opacity:.5; transition:opacity .25s }
  .mm.is-loading .mm__scroll > *:has(.is-loading){ opacity:1 }
  .mm.is-loading .mm__tiles > *:not(.is-loading),
  .mm.is-loading .mm__subs > *:not(.is-loading),
  .mm.is-loading .mm__list > li:not(:has(.is-loading)){ opacity:.5; transition:opacity .25s }
  .mm__row, .mm__tile, .mm__sub, .mm__grp-head, .mm__hero-cta, .mm__cats{ position:relative }
  .mm .is-loading::after{
    content:""; position:absolute; top:10px; right:10px; width:18px; height:18px;
    border:2px solid rgba(15,15,25,.16); border-top-color:var(--accent); border-radius:50%;
    animation:mmSpin .7s linear infinite;
  }
  /* при редовете въртележката застава на мястото на стрелката */
  .mm__row.is-loading::after,
  .mm__grp-head.is-loading::after,
  .mm__cats.is-loading::after{ top:50%; right:19px; margin-top:-9px }
  .mm__row.is-loading .mm__go,
  .mm__grp-head.is-loading .mm__ic,
  .mm__cats.is-loading .mm__go,
  .mm__sub.is-loading .mm__sub-go{ opacity:0 }
  .mm__sub.is-loading::after{ top:50%; right:14px; margin-top:-9px; width:16px; height:16px }
  .mm__hero-cta.is-loading{ padding-right:42px }
  .mm__hero-cta.is-loading::after{ top:50%; right:14px; margin-top:-9px }
  .mm__hero--light .mm__hero-cta.is-loading::after{ border-color:rgba(255,255,255,.4); border-top-color:#fff }

  /* --- появяване: главното ниво се нарежда отгоре надолу --- */
  @keyframes mmIn{ from{ opacity:0; transform:translateY(12px) } to{ opacity:1; transform:none } }
  .mm.is-open [data-level="1"] .mm__scroll > *,
  .mm__panel.is-active:not([data-level="1"]) .mm__scroll > *{
    animation:mmIn .42s cubic-bezier(.22,.8,.26,1) backwards;
  }
  .mm__scroll > :nth-child(2){ animation-delay:.04s }
  .mm__scroll > :nth-child(3){ animation-delay:.08s }
  .mm__scroll > :nth-child(4){ animation-delay:.12s }
  .mm__scroll > :nth-child(5){ animation-delay:.16s }
  .mm__scroll > :nth-child(n+6){ animation-delay:.2s }
}

@media (max-width:860px) and (prefers-reduced-motion:reduce){
  .mm, .mm__panel{ transition:none }
  .mm *{ animation:none !important }
}

/* Преход на цялата страница (@view-transition) НЕ се ползва нарочно: докато
   браузърът чака новата страница, той замразява старата — въртележката в
   менюто спира и изчакването изглежда по-зле, не по-добре. */


/* ============================================================================
   КАТЕГОРИЕН ГЕРОЙ — пътечката на един ред.
   Беше флекс без пренасяне, тоест звената се свиваха и текстът им се цепеше
   („Спирачни / дискове", „Accord / 8"). Сега всяко звено е цяло, а редът се
   плъзга настрани; main.js го превърта до края — текущата страница се вижда.
   ========================================================================== */
@media (max-width:768px){
  .cathero__crumbs{
    overflow-x:auto;
    scrollbar-width:none;
    margin-right:-20px;      /* до ръба на екрана — без празно поле при плъзгане */
    padding-right:20px;
  }
  .cathero__crumbs::-webkit-scrollbar{ display:none }
  .cathero__crumbs > *{ flex:none; white-space:nowrap }
  /* превъртяна до текущата страница (main.js, .is-scrolled) — началото избледнява (06.11.2026) */
  .cathero__crumbs.is-scrolled{
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 28px);
            mask-image:linear-gradient(to right,transparent 0,#000 28px);
  }
}


/* ============================================================================
   КОЛА × КАТЕГОРИЯ — „ИЗБРАН АВТОМОБИЛ" (по макета от 12.10.2026)
   Хората не разбираха, че колата вече е избрана: снимката стоеше до
   заглавието и изглеждаше като следваща стъпка. На телефон редът е:
   заглавие → каре на колата със зелена отметка и „Промени" → бърз избор
   на ос → „N подходящи продукта" → филтри и подредба → избраните филтри
   като чипове. Маркъпът е в category-car.blade.php; трохите, „Назад към…"
   и .selcar там носят `ccar-desk` и остават само за десктопа.
   ========================================================================== */
.ccar, .ccar-axle, .ccar-chips,
.catbar__ok, .catbar__fit, .catbar__note{ display:none }

@media (max-width:860px){
  /* !important — .selcar има свой `display:grid` по-горе в този файл */
  .ccar-desk{ display:none !important }

  .ccar{ display:block; margin:0 0 14px }

  /* --- заглавие --- */
  .ccar__title{
    margin:0;
    font-size:22px; font-weight:800; line-height:1.15; letter-spacing:-.3px;
    color:var(--dark); overflow-wrap:anywhere;
  }
  .ccar__title span{
    display:block; margin-top:2px;
    font-size:15.5px; font-weight:600; line-height:1.25; letter-spacing:0;
    color:var(--muted);
  }
  /* Продуктовата страница: под името — марката и номерът („PURRO · PUR-PC8046"),
     логото на марката — вдясно от заглавието. */
  .ccar__titlerow{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px }
  .ccar__titlerow .ccar__title{ flex:1; min-width:0 }
  .ccar__logo{ flex:none; max-width:84px; max-height:30px; margin-top:3px; object-fit:contain }
  .ccar__title .ccar__pcode{
    display:flex; flex-wrap:wrap; align-items:baseline; gap:0 7px; margin-top:6px;
    font-size:14.5px; font-weight:600; letter-spacing:.2px; color:var(--muted);
  }
  .ccar__pcode b{ font-weight:800; color:var(--dark) }
  .ccar__pcode i{ font-style:normal; color:#c4c8cf }

  /* --- карето на колата (второ издание, макет от 12.10.2026) ---
     Горе: зелена плочка „Избран автомобил" и „Промени"; после снимка + име;
     после гориво/двигател/купе като плочки; на страницата на колата отдолу
     и „Запази в гаража" (.ccar__garage). */
  .ccar__car{
    position:relative;   /* за разпънатата връзка на .ccar__name */
    margin-top:10px; padding:12px 14px 14px;
    border:1.5px solid #cfe8d6; border-radius:16px;
    background:#fff; box-shadow:0 4px 16px rgba(20,20,30,.05);
    overflow:hidden;
  }
  .ccar__top{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:12px }
  .ccar__picked{
    display:inline-flex; align-items:center; gap:7px; min-width:0;
    padding:3px 12px 3px 3px; border-radius:999px; background:#e9f7ee;
    font-size:13px; font-weight:700; color:#17733b; white-space:nowrap;
  }
  .ccar__ok{ flex:none; width:24px; height:24px; border-radius:50%; display:grid; place-items:center; background:#22a352 }
  .ccar__ok svg{ width:13px; height:13px; fill:none; stroke:#fff; stroke-width:3.2; stroke-linecap:round; stroke-linejoin:round }
  .ccar__change{
    position:relative; z-index:1; flex:none;   /* над разпънатата връзка */
    display:inline-flex; align-items:center; gap:6px;
    height:34px; padding:0 8px 0 10px;
    border:1px solid var(--line); border-radius:10px; background:#fff;
    color:var(--dark); font-size:13px; font-weight:700; text-decoration:none; white-space:nowrap;
  }
  .ccar__change::after{ content:""; position:absolute; inset:-5px -4px }   /* 44px за пръста */
  .ccar__change svg{ width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round }
  .ccar__change svg:last-child{ width:14px; height:14px; stroke-width:2.4; color:var(--muted) }

  .ccar__row{ display:grid; grid-template-columns:112px minmax(0,1fr); gap:12px; align-items:center }
  .ccar__pic{ width:112px; height:74px; border-radius:10px; background:var(--bg-soft); display:grid; place-items:center; overflow:hidden }
  .ccar__pic img{ width:100%; height:100%; object-fit:cover }
  .ccar__none{ width:40px; height:40px; color:#9aa0a8 }
  .ccar__info{ min-width:0; display:flex; flex-direction:column; gap:3px }
  .ccar__name{ font-size:16px; font-weight:800; line-height:1.2; color:var(--dark); text-decoration:none }
  a.ccar__name::after{ content:""; position:absolute; inset:0; border-radius:16px }
  .ccar__car--link:active{ background:#f7fcf8 }
  .ccar__sub{ font-size:12.5px; line-height:1.35; color:var(--muted) }
  .ccar__sub > span{ white-space:nowrap }
  /* Дългото име на двигателя („1.6 (AZG416, AZH416, RS416, ZC32S, ZA32S)") се пренася — иначе излизаше от карето. */
  .ccar__sub > span:first-child{ white-space:normal }

  /* --- гориво · двигател · купе — само информация: без рамка и фон, иначе приличаха
         на бутони, а не се натискат (Мариян, 26.10.2026). Текстът е цял, без „…". --- */
  .ccar__specs{ display:flex; flex-wrap:wrap; gap:6px 16px; margin-top:12px }
  .ccar__spec{
    min-width:0; display:inline-flex; align-items:center; gap:6px;
    font-size:13px; font-weight:600; line-height:1.3; color:#4b5563;
  }
  .ccar__spec svg{ flex:none; width:16px; height:16px; fill:none; stroke:#6b7280; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round }

  /* --- „Запази в гаража" — само на страницата на колата (car-hub) --- */
  .ccar__garage{
    margin:14px -14px -14px; padding:12px 14px;
    border-top:1px solid #e3e9df;
    background:linear-gradient(180deg,#fff 0%,#f3f8ef 100%);
  }
  .ccar__garage[hidden]{ display:none }
  .ccar__gmain{ display:grid; grid-template-columns:40px minmax(0,1fr) auto; gap:10px; align-items:center }
  .ccar__gico{ width:40px; height:40px; border-radius:50%; background:#e1efd8; display:grid; place-items:center; color:var(--accent) }
  .ccar__gico svg{ width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round }
  .ccar__gtxt{ min-width:0 }
  .ccar__gtitle{ font-size:14px; font-weight:800; line-height:1.2; color:var(--dark) }
  .ccar__glead{ margin:2px 0 0; font-size:11.5px; line-height:1.3; color:var(--muted) }
  .ccar__gbtn{
    position:relative; z-index:1;
    display:inline-flex; align-items:center; gap:6px;
    height:40px; padding:0 12px; border:0; border-radius:10px;
    background:var(--accent-grad); color:#fff;
    font-family:inherit; font-size:13.5px; font-weight:800; white-space:nowrap;
    box-shadow:0 4px 12px rgba(79,135,1,.25); cursor:pointer;
  }
  .ccar__gbtn svg{ width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round }
  .ccar__gbtn:disabled{ opacity:.8; cursor:default }
  .ccar__gperks{ display:flex; align-items:center; margin:10px 0 0; padding:0; list-style:none }
  /* по съдържанието, не по равно — иначе по-дългото се чупеше на два реда */
  .ccar__gperks li{ flex:0 1 auto; min-width:0; display:flex; align-items:center; gap:6px; font-size:11.5px; line-height:1.25; color:var(--ink) }
  .ccar__gperks li + li{ padding-left:8px; margin-left:8px; border-left:1px solid #d5e1cd }
  .ccar__gperks svg{ flex:none; width:20px; height:20px; padding:4px; border-radius:50%; background:#e1efd8; fill:none; stroke:var(--accent); stroke-width:3; stroke-linecap:round; stroke-linejoin:round }
  /* вече е в гаража — зелено */
  .ccar__garage.is-done{ background:linear-gradient(180deg,#fff 0%,#effaf2 100%); border-top-color:#dcefe2 }
  .ccar__garage.is-done .ccar__gico{ background:#dcf3e4; color:#16a34a }
  .ccar__garage.is-done .ccar__gbtn{ background:#16a34a; box-shadow:none }

  /* До ~400px — стегнато: бутонът остава вдясно, но без иконката си, иконката
     на гаража и шрифтовете са по-малки, а предимствата са с обикновени
     отметки, за да се събират на един ред. „Промени" губи стрелката, за да не
     опира в зелената плочка. Под 350px бутонът минава на цял ред (виж долу). */
  @media (max-width:400px){
    .ccar__garage{ padding:10px 14px }
    .ccar__gmain{ grid-template-columns:32px minmax(0,1fr) auto; gap:8px }
    .ccar__gico{ width:32px; height:32px }
    .ccar__gico svg{ width:18px; height:18px }
    .ccar__gtitle{ font-size:13.5px }
    .ccar__glead{ margin-top:1px; font-size:11px }
    .ccar__gbtn{ height:36px; padding:0 12px; font-size:13px }
    .ccar__gbtn svg{ display:none }
    .ccar__gperks{ margin-top:8px }
    .ccar__gperks li{ gap:4px; font-size:11px }
    .ccar__gperks li + li{ padding-left:8px; margin-left:8px }
    .ccar__gperks svg{ width:12px; height:12px; padding:0; background:none; stroke-width:3.6 }
    .ccar__change svg:last-child{ display:none }
    .ccar__change{ padding:0 10px }
  }
  @media (max-width:350px){
    .ccar__gmain{ grid-template-columns:32px minmax(0,1fr); row-gap:8px }
    .ccar__gbtn{ grid-column:1 / -1; justify-content:center; width:100% }
  }

  /* --- бърз избор на ос --- */
  .ccar-axle{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 0 18px }
  .ccar-axle__btn{
    display:flex; align-items:center; justify-content:center; gap:6px;
    min-height:52px; padding:0 6px; white-space:nowrap;
    border:1.5px solid var(--line); border-radius:12px;
    background:#fff; color:var(--dark);
    font-family:inherit; font-size:13.5px; font-weight:700;
    cursor:pointer; transition:background .15s, border-color .15s, color .15s;
  }
  .ccar-axle__btn svg{ flex:none; width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round }
  .ccar-axle__n{
    min-width:24px; padding:2px 6px; border-radius:999px;
    background:var(--bg-soft); color:var(--muted);
    font-size:12px; font-weight:700; font-style:normal; text-align:center;
  }
  .ccar-axle__btn[aria-pressed="true"]{ border-color:#a8cc8e; background:#f2f8ee; color:var(--accent) }
  .ccar-axle__btn[aria-pressed="true"] .ccar-axle__n{ background:#deedd4; color:var(--accent) }
  .ccar-axle__btn:disabled{ opacity:.45; cursor:default }

  /* --- „132 подходящи продукта" --- */
  .catbar__count--fit{
    display:grid; grid-template-columns:28px minmax(0,1fr);
    gap:1px 10px; align-items:center;
    margin:0; color:var(--dark);
  }
  .catbar__ok{
    display:grid; place-items:center; grid-row:1 / 3;
    width:28px; height:28px; border-radius:50%;
    background:#22a352;
  }
  .catbar__ok svg{ width:16px; height:16px; fill:none; stroke:#fff; stroke-width:3; stroke-linecap:round; stroke-linejoin:round }
  .catbar__num{ font-size:17px; font-weight:800; line-height:1.25 }
  .catbar__fit{ display:inline }
  .catbar__note{ display:block; grid-column:2; font-size:12.5px; line-height:1.35; color:var(--muted) }

  /* --- подредбата: иконка вместо надписа „Сортирай по:" --- */
  .catbar--car .catsort{ flex-direction:row; align-items:center; gap:6px; padding:0 8px 0 10px }
  .catbar--car .catsort::before{
    content:""; flex:none; width:20px; height:20px;
    background:no-repeat center / 20px 20px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4v16M3.5 7.5L7 4l3.5 3.5M17 20V4M13.5 16.5L17 20l3.5-3.5'/%3E%3C/svg%3E");
  }
  .catbar--car .catsort label{
    position:absolute; width:1px; height:1px; margin:-1px; padding:0;
    overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
  }
  .catbar--car .catsort select{ font-size:13.5px; font-weight:700 }

  /* --- избраните филтри --- */
  .ccar-chips{ display:flex; flex-wrap:wrap; gap:8px; width:100% }
  .ccar-chips[hidden]{ display:none }
  .ccar-chip{
    display:inline-flex; align-items:center; gap:6px; max-width:100%;
    min-height:36px; padding:0 12px;
    border:1px solid #b5d2a0; border-radius:999px;
    background:#f2f8ee; color:var(--accent);
    font-family:inherit; font-size:13px; font-weight:600;
    cursor:pointer;
  }
  .ccar-chip span{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
  .ccar-chip svg{ flex:none; width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:2.4; stroke-linecap:round }
  .ccar-chip--all{ border-color:var(--line); background:#fff; color:var(--dark) }
}
/* под 360px карето се стяга: по-малка снимка, „Промени" без иконките */
@media (max-width:350px){
  .ccar__picked{ font-size:12px; padding-right:10px }
  .ccar__change svg{ display:none }
  .ccar__change{ padding:0 10px }
  .ccar__row{ grid-template-columns:92px minmax(0,1fr) }
  .ccar__pic{ width:92px; height:62px }
  .ccar__spec{ font-size:12px; gap:4px }
  .catbar--car .catsort::before{ display:none }
}
