/* PaySlashes V12: screenshot-driven mobile homepage catalogue + navigation repair.
   Must be loaded AFTER legacy/mobile runtime styles. */
@media (max-width:767.98px) {
  /* Mobile uses dedicated, compact homepage. Hide the old duplicate homepage
     sections EVEN IF malformed legacy markup puts them outside main#content. */
  html body.page-home .ps-hero-section,
  html body.page-home .ps-mobile-active-filters,
  html body.page-home .ps-mobile-filter-launch,
  html body.page-home .ps-mobile-home-intro,
  html body.page-home .ps-premium-strip,
  html body.page-home .ps-after-hero,
  html body.page-home #ps-featured-brands,
  html body.page-home .ps-commerce-journey,
  html body.page-home .ps-commerce-trust-strip,
  html body.page-home .ps27-pulse,
  html body.page-home #ps-shop-categories,
  html body.page-home .ps-home-collection,
  html body.page-home .ps-home-newsletter {display:none!important;}

  /* Never lose the truthful empty catalogue state to old :not(:has()) rules. */
  html body.page-home .ps-exact-mobile-home .ps12-catalogue-section,
  html body.page-home .ps-exact-mobile-home .ps12-catalogue-section:not(:has(.ps-exact-product)) {
    display:block!important;position:relative!important;visibility:visible!important;
    height:auto!important;min-height:0!important;max-height:none!important;
    margin:16px 0!important;padding:0!important;
  }
  html body.page-home .ps-exact-mobile-home .ps12-catalogue-empty {
    display:flex!important;flex-direction:column!important;align-items:center!important;
    gap:9px!important;min-width:0!important;width:100%!important;
    padding:25px 18px!important;border:1px dashed #bed5ca!important;
    background:#f7fcf9!important;border-radius:17px!important;text-align:center!important;
    box-sizing:border-box!important;color:#183b2c!important;
  }
  html body.page-home .ps12-catalogue-empty__icon {
    width:48px;height:48px;display:grid;place-items:center;
    border-radius:14px;background:#e5f5ec;color:#04784b;
  }
  html body.page-home .ps12-catalogue-empty__icon svg {width:25px;height:25px}
  html body.page-home .ps12-catalogue-empty strong {font-size:16px;font-weight:850;line-height:1.3}
  html body.page-home .ps12-catalogue-empty p {
    margin:0!important;font-size:13px!important;line-height:1.5!important;
    color:#4d6759!important;max-width:320px;
  }
  html body.page-home .ps12-catalogue-empty a {
    display:inline-flex;align-items:center;justify-content:center;
    min-height:43px;padding:10px 19px;background:#007d4a;color:white!important;
    border-radius:11px;text-decoration:none;font-size:13px;font-weight:800;
  }

  /* Search: reserve actual space for the input; keep voice, camera and submit visible. */
  html body.mobile-ux-shell .psm-mobile-shell .psm-search {
    display:grid!important;position:relative!important;
    grid-template-columns:20px minmax(0,1fr) 70px 42px!important;
    column-gap:6px!important;align-items:center!important;
    width:calc(100% - 24px)!important;max-width:none!important;
    min-width:0!important;box-sizing:border-box!important;
    height:56px!important;min-height:56px!important;
    padding:5px 7px 5px 11px!important;margin:4px 12px 10px!important;
    border-radius:16px!important;overflow:hidden!important;
  }
  html body.mobile-ux-shell .psm-mobile-shell .psm-search input[type=search] {
    display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
    height:42px!important;min-height:42px!important;
    padding:0 2px!important;margin:0!important;border:0!important;
    border-radius:0!important;font-size:14px!important;text-overflow:ellipsis;
  }
  html body.mobile-ux-shell .psm-mobile-shell .psm-search-tools {
    display:grid!important;grid-template-columns:repeat(2,32px)!important;
    align-items:center!important;justify-content:center!important;gap:5px!important;
    min-width:0!important;width:70px!important;margin:0!important;
  }
  html body.mobile-ux-shell .psm-mobile-shell .psm-search-tool {
    display:grid!important;place-items:center!important;
    width:32px!important;min-width:32px!important;height:36px!important;
    min-height:36px!important;margin:0!important;border-radius:11px!important;
    padding:0!important;font-size:0!important;
  }
  html body.mobile-ux-shell .psm-mobile-shell .psm-search-submit {
    display:grid!important;place-items:center!important;
    width:42px!important;min-width:42px!important;height:42px!important;
    min-height:42px!important;margin:0!important;padding:0!important;
    border-radius:12px!important;
  }
  html body.mobile-ux-shell .psm-mobile-shell .psm-search__leading {width:19px!important;height:19px!important}

  /* Five equally sized nav slots; no ellipsized labels and no displaced shop CTA. */
  html body.mobile-ux-shell nav.ps-mobile-bottom-nav {
    display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:stretch!important;justify-items:stretch!important;
    box-sizing:border-box!important;
    left:6px!important;right:6px!important;bottom:max(7px,env(safe-area-inset-bottom))!important;
    width:auto!important;height:82px!important;min-height:82px!important;
    padding:6px 5px 10px!important;gap:0!important;
    border-radius:21px!important;overflow:visible!important;
  }
  html body.mobile-ux-shell .ps-mobile-bottom-nav__item {
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
    width:100%!important;min-width:0!important;max-width:100%!important;
    height:100%!important;gap:4px!important;
    padding:3px 0!important;box-sizing:border-box!important;
  }
  html body.mobile-ux-shell .ps-mobile-bottom-nav__icon {
    flex:0 0 auto!important;width:35px!important;height:35px!important;
    margin:0!important;transform:none!important;
  }
  html body.mobile-ux-shell .ps-mobile-bottom-nav__item--cta .ps-mobile-bottom-nav__icon,
  html body.mobile-ux-shell .ps-mobile-bottom-nav__item--cta.is-active .ps-mobile-bottom-nav__icon {
    width:45px!important;height:45px!important;transform:translateY(-5px)!important;
    box-shadow:0 8px 16px rgba(0,109,62,.19),0 0 0 4px #fff!important;
  }
  html body.mobile-ux-shell nav.ps-mobile-bottom-nav .ps-mobile-bottom-nav__item > span.ps-mobile-bottom-nav__label,
  html body.mobile-ux-shell nav.ps-mobile-bottom-nav .ps-mobile-bottom-nav__item--cta > span.ps-mobile-bottom-nav__label {
    display:block!important;flex:0 0 auto!important;width:100%!important;max-width:none!important;
    position:static!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
    transform:none!important;order:2!important;margin:0!important;line-height:1.12!important;
    font-size:clamp(9px,2.5vw,11px)!important;letter-spacing:-.015em!important;
    font-weight:800!important;text-align:center!important;
    text-overflow:clip!important;white-space:nowrap!important;overflow:visible!important;
  }
  html body.mobile-ux-shell nav.ps-mobile-bottom-nav .ps-mobile-bottom-nav__item--cta > span.ps-mobile-bottom-nav__label {margin-top:0!important;}
  html body.mobile-ux-shell {padding-bottom:calc(102px + env(safe-area-inset-bottom))!important;}
  html body.mobile-ux-shell footer,html body.mobile-ux-shell .premium-site-footer {
    padding-bottom:calc(110px + env(safe-area-inset-bottom))!important;
  }
  /* Keep assistant launcher outside the nav while avoiding oversized obstruction. */
  html body.mobile-ux-shell .ps-ai-shop__launcher,
  html body.mobile-ux-shell #chatbot-floating-btn {width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;}
  html body.mobile-ux-shell .ps-ai-shop {bottom:calc(100px + env(safe-area-inset-bottom))!important;right:12px!important;}
}
@media(max-width:359.98px){
  html body.mobile-ux-shell .psm-mobile-shell .psm-search {width:calc(100% - 16px)!important;margin-left:8px!important;margin-right:8px!important;grid-template-columns:18px minmax(0,1fr) 64px 38px!important;gap:4px!important;padding-left:8px!important;padding-right:5px!important;}
  html body.mobile-ux-shell .psm-mobile-shell .psm-search-tools {grid-template-columns:repeat(2,30px)!important;width:64px!important;gap:4px!important}
  html body.mobile-ux-shell .psm-mobile-shell .psm-search-tool {width:30px!important;min-width:30px!important}
  html body.mobile-ux-shell .psm-mobile-shell .psm-search-submit {width:38px!important;min-width:38px!important}
  html body.mobile-ux-shell nav.ps-mobile-bottom-nav .ps-mobile-bottom-nav__item > span.ps-mobile-bottom-nav__label {font-size:9px!important;letter-spacing:-.025em!important}
}
