/* =========================================================
   XSTORE Mobile Stable — last-wins, no layout jump, no H-scroll
   Loaded AFTER conversion.css so brand + layout stick.
   ========================================================= */

@media (max-width: 991px) {
  :root {
    --xs-pink: #e84080;
    --xs-pink-d: #c92d68;
    --xs-pink-s: rgba(232, 64, 128, 0.14);
    --xs-ink: #14141a;
    --xs-muted: #6b7280;
    --xs-line: #e8eaef;
    --xs-bg: #f4f5f8;
    --xs-card: #ffffff;
    --xs-radius: 16px;
    --xs-nav-h: 64px;
    --xs-safe-b: env(safe-area-inset-bottom, 0px);
    --btn-primary-bg: #e84080 !important;
    --btn-primary-c: #ffffff !important;
    --add-to-cart-btn-bg: #e84080 !important;
    --add-to-cart-btn-c: #ffffff !important;
    --price-new-c: #e84080 !important;
  }

  html, body {
    max-width: 100% !important;
    overflow-x: hidden !important;
    width: 100% !important;
  }
  body {
    background: var(--xs-bg) !important;
    padding-bottom: calc(var(--xs-nav-h) + var(--xs-safe-b) + 10px) !important;
  }
  body.has-xstore-conv-bar {
    padding-bottom: calc(var(--xs-nav-h) + var(--xs-safe-b) + 10px) !important;
  }

  *, *::before, *::after { box-sizing: border-box; }
  img, svg, video, iframe, canvas { max-width: 100% !important; height: auto; }
  table { display: block; max-width: 100%; overflow-x: auto; }

  .container,
  .container-fluid,
  main,
  #content,
  .home-page,
  .uni-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    float: none !important;
  }
  .row,
  .row-flex {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
  }
  [class*="col-"] {
    min-width: 0 !important;
    max-width: 100% !important;
  }
  #column-left,
  #column-right {
    display: none !important;
  }
  #content.col-md-9,
  #content.col-lg-9,
  #content.col-xxl-16,
  #content[class*="col-"] {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* ---- Kill JS chrome that jumps the page ---- */
  #xstore-trust-ribbon,
  #xstore-conv-bar,
  #xstore-product-sticky,
  .xstore-story,
  .xs-trust-strip,
  .xs-cat-chips,
  .fly-menu,
  .pwa-notification { /* keep pwa, restyle below */ }
  #xstore-trust-ribbon,
  #xstore-conv-bar,
  #xstore-product-sticky,
  .xstore-story,
  .xs-trust-strip,
  .xs-cat-chips {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  /* ---- Header: one stable row + search ---- */
  header {
    position: sticky !important;
    top: 0 !important;
    z-index: 1100 !important;
    background: rgba(255,255,255,.96) !important;
    backdrop-filter: blur(12px);
  }
  header .header-block {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0 !important;
    min-height: 52px !important;
    padding: 6px 0 4px !important;
  }
  header .header-block__item-logo {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }
  header .header-logo img,
  header #logo img {
    max-width: 128px !important;
    max-height: 34px !important;
    width: auto !important;
    height: auto !important;
  }
  .xs-header-chip {
    display: inline-flex !important;
    margin-left: auto !important;
    padding: 5px 10px !important;
    border-radius: 999px !important;
    background: var(--xs-pink-s) !important;
    color: var(--xs-pink-d) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
  }
  #search2 {
    flex: 1 1 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    order: 20 !important;
    padding: 0 0 10px !important;
  }
  #search2 .header-search__form {
    width: 100% !important;
    height: 44px !important;
    border-radius: 999px !important;
    overflow: hidden !important;
  }

  /* ---- Hero: locked height, no overflow, no side ---- */
  #xstore-hero,
  .xstore-hero {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 180px !important;
    min-height: 180px !important;
    margin: 8px 0 14px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    flex-direction: column !important;
  }
  .xstore-hero__main {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 180px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
  }
  .xstore-hero__side {
    display: none !important;
    min-width: 0 !important;
    width: 0 !important;
    height: 0 !important;
  }
  .xstore-hero .owl-carousel,
  .xstore-hero .owl-stage-outer {
    width: 100% !important;
    height: 180px !important;
    overflow: hidden !important;
  }
  .xstore-hero .owl-item,
  .xstore-hero a.xh-slide {
    height: 180px !important;
  }
  .xstore-hero img {
    width: 100% !important;
    height: 180px !important;
    object-fit: cover !important;
  }

  /* ---- Product / category carousels → stable 2-col grid ---- */
  .uni-module.owl-carousel .owl-stage-outer,
  .five-in-one_v2-0-0 .owl-stage-outer,
  .five-in-one_v2-1-0 .owl-stage-outer,
  .category-wall .owl-stage-outer,
  .news-module .owl-stage-outer {
    overflow: visible !important;
  }
  .uni-module.owl-carousel .owl-stage,
  .five-in-one_v2-0-0 .owl-stage,
  .five-in-one_v2-1-0 .owl-stage,
  .category-wall .owl-stage,
  .news-module .owl-stage {
    transform: none !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    transition: none !important;
  }
  .uni-module.owl-carousel .owl-item,
  .five-in-one_v2-0-0 .owl-item,
  .five-in-one_v2-1-0 .owl-item,
  .category-wall .owl-item,
  .news-module .owl-item {
    width: auto !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
  }
  .uni-module .owl-nav,
  .uni-module .owl-dots,
  .five-in-one_v2-0-0 .owl-nav,
  .five-in-one_v2-1-0 .owl-nav,
  .category-wall .owl-nav,
  .news-module .owl-nav {
    display: none !important;
  }

  /* Brands: horizontal chips, no owl jump */
  .manufacturer-carousel .owl-stage {
    display: flex !important;
    gap: 10px !important;
    transform: none !important;
    width: max-content !important;
  }
  .manufacturer-carousel .owl-stage-outer {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
  }
  .manufacturer-carousel .owl-item {
    width: auto !important;
    float: none !important;
  }
  .manufacturer-carousel .owl-nav { display: none !important; }

  /* ---- Product cards ---- */
  .product-thumb,
  .product-thumb.uni-item {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-width: 0 !important;
    background: #fff !important;
    border: 1px solid var(--xs-line) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 14px rgba(20,20,26,.05) !important;
  }
  .product-thumb__image,
  .product-thumb .image {
    aspect-ratio: 1 / 1.05;
    background: #fafafa !important;
    overflow: hidden !important;
  }
  .product-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }
  .product-thumb__caption,
  .product-thumb .caption {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    padding: 8px 10px 10px !important;
    min-width: 0 !important;
  }
  .product-thumb__name,
  .product-thumb .name a {
    font-size: 13px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: 2.6em !important;
    max-height: 2.6em !important;
    word-break: break-word !important;
  }
  .product-thumb__model,
  .product-thumb .rating { display: none !important; }
  .product-thumb__price,
  .product-thumb .price {
    margin: 6px 0 8px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
  }
  .product-thumb .price-new { color: var(--xs-pink) !important; }
  .product-thumb__cart,
  .product-thumb .cart {
    margin-top: auto !important;
  }
  .product-thumb__add-to-cart,
  .product-thumb .add_to_cart,
  .product-thumb .btn-primary {
    width: 100% !important;
    min-height: 40px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #f05a96, #e84080) !important;
    border: 0 !important;
    color: #fff !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    box-shadow: 0 4px 12px rgba(232,64,128,.22) !important;
  }
  .product-thumb__add-to-cart.disabled,
  .product-thumb .add_to_cart.disabled {
    background: #ececef !important;
    color: #8b919a !important;
    box-shadow: none !important;
  }
  .product-thumb__add-to-cart.disabled span::after {
    content: "Нет в наличии";
  }
  .product-thumb__cart-btns .compare { display: none !important; }
  .product-thumb__wishlist {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
  }

  /* Catalog grids */
  .product-layout,
  .product-grid > [class*="col-"],
  #product-category [class*="col-xs-"],
  #product-search [class*="col-xs-"] {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
    padding: 0 5px 10px !important;
    float: none !important;
  }

  /* ---- Advantages / banners / cats ---- */
  .xstore-advantages {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    width: 100% !important;
  }
  .xstore-advantages__item {
    width: 100% !important;
    min-width: 0 !important;
    padding: 12px !important;
    border-radius: 14px !important;
  }
  .xstore-cat-mini__grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
  .home-banner.row,
  .home-banner.row-flex {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }
  .home-banner [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
  }
  .home-banner__item {
    min-height: 72px !important;
    border-radius: 14px !important;
    padding: 10px !important;
  }
  .category-wall {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
  .category-wall__item {
    width: 100% !important;
    min-width: 0 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
  }

  /* Buttons brand pink (beat conversion.css) */
  .btn-primary,
  button.btn-primary,
  a.btn-primary,
  #button-cart,
  .product-page__add-to-cart {
    background: linear-gradient(135deg, #f05a96, #e84080) !important;
    border: 0 !important;
    color: #fff !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
  }

  /* Sticky ATC — one bar only */
  .xs-sticky-atc {
    bottom: calc(var(--xs-nav-h) + var(--xs-safe-b)) !important;
    z-index: 1050 !important;
  }

  /* Cookie / PWA above nav */
  #uni-notification {
    bottom: calc(var(--xs-nav-h) + var(--xs-safe-b)) !important;
  }
  .pwa-notification {
    bottom: calc(var(--xs-nav-h) + var(--xs-safe-b) + 8px) !important;
    left: 10px !important;
    right: 10px !important;
    top: auto !important;
  }
  .fly-block {
    bottom: calc(var(--xs-nav-h) + var(--xs-safe-b) + 12px) !important;
    right: 10px !important;
  }

  /* Footer */
  footer.footer {
    padding-bottom: calc(var(--xs-nav-h) + var(--xs-safe-b) + 16px) !important;
  }
  footer .footer__column {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* Breadcrumb */
  .breadcrumb {
    white-space: nowrap !important;
    overflow-x: auto !important;
    max-width: 100% !important;
  }

  /* Product page */
  .product-page,
  #product {
    max-width: 100% !important;
    padding-bottom: 96px !important;
  }
  .product-page h1 { font-size: 1.25rem !important; word-break: break-word; }

  /* Tabs */
  .nav-tabs {
    display: flex !important;
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    max-width: 100% !important;
  }
}

@media (max-width: 360px) {
  header .header-logo img, header #logo img {
    max-width: 108px !important;
    max-height: 30px !important;
  }
}

@media (min-width: 992px) {
  .xs-bottom-nav, .xs-sticky-atc, .xs-header-chip { display: none !important; }
}
