/* PaySlashes V18: approved mockup mobile stability, only the affected views. */
:root{--ps18-green:#007b52;--ps18-ink:#102a43;--ps18-border:#e3e9ed}
/* The category/product pages must not depend on a last-minute CSS download.
   Note: linked stylesheets are now loaded in <head> from base.html. */
@media(max-width:767.98px){
  html body:has(main.ps18-vendors) .psm-mobile-shell,
  html body:has(main.ps18-vendors) header#header{display:none!important}
  html body:has(main.ps18-vendors) .ps-app-shell{width:100%!important;min-width:0!important;max-width:100%!important;overflow-x:clip!important}
  html body:has(main.ps18-vendors) .ps18-vendors{background:#fff!important;min-height:calc(100dvh - 165px)!important;padding:0 0 8px!important;margin:0!important;color:var(--ps18-ink)!important}
  .ps18-vendors>.container{width:100%!important;max-width:100%!important;padding:0 15px!important;margin:0 auto!important}
  .ps18-vendor-header{height:62px;display:flex!important;align-items:center;justify-content:space-between;gap:8px;padding:8px 15px;border-bottom:1px solid var(--ps18-border);background:#fff}
  .ps18-vendor-header strong{flex:1;text-align:center;font-size:19px;font-weight:850;color:#111827;letter-spacing:-.025em;line-height:1.2}
  .ps18-vendor-header .ps18-vendor-icon{display:grid;place-items:center;width:38px;height:40px;color:#111827;text-decoration:none;border:0;flex-shrink:0}
  .ps18-vendor-header .ps18-vendor-icon svg{height:24px;width:24px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .ps18-vendors .premium-page-hero{padding:19px 0 10px!important;margin:0 0 10px!important}
  .ps18-vendors .premium-page-hero .premium-eyebrow{background:#e9f5ee!important;color:#006b47!important;border-radius:50px!important;padding:6px 10px!important;display:inline-block!important;font-size:10px!important;letter-spacing:.05em!important;font-weight:800!important}
  .ps18-vendors .premium-page-hero h1{font-size:clamp(22px,6vw,28px)!important;line-height:1.18!important;letter-spacing:-.035em!important;color:#111827!important;font-weight:900!important;margin:11px 0 7px!important}
  .ps18-vendors .premium-page-hero p{font-size:13px!important;line-height:1.5!important;color:#657487!important;margin:0 auto!important;max-width:340px!important}
  .ps18-vendors form.vendor-discovery-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:9px!important;background:#fff!important;box-shadow:none!important;border:1px solid #e3e9ed!important;border-radius:15px!important;padding:12px!important;margin:0 0 16px!important;min-width:0!important;width:100%!important}
  .ps18-vendors .vendor-discovery-toolbar .vendor-search-field{grid-column:1/-1;min-width:0!important;width:100%!important}
  .ps18-vendors .vendor-discovery-toolbar .vendor-search-field input{max-width:100%!important;min-width:0!important;width:100%!important;display:block!important;border:1px solid #d5dfe6!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;height:45px!important;min-height:45px!important;font-size:13px!important;padding:9px 12px!important;color:#172234!important}
  .ps18-vendors .vendor-discovery-toolbar .ps18-sort-field{display:block!important;min-width:0!important;width:100%!important;margin:0!important}
  .ps18-vendors .vendor-discovery-toolbar .ps18-sort-field select{height:44px!important;min-height:44px!important;min-width:0!important;width:100%!important;max-width:100%!important;padding:7px 20px 7px 9px!important;border:1px solid #d5dfe6!important;border-radius:9px!important;font-size:12px!important;background:#fff!important;color:#102a43!important;box-shadow:none!important}
  .ps18-vendors .vendor-discovery-toolbar>button{height:44px!important;min-width:0!important;width:100%!important;max-width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#007b52!important;color:#fff!important;border:1px solid #007b52!important;border-radius:9px!important;font-size:13px!important;font-weight:800!important;padding:8px!important;line-height:1.2!important;margin:0!important}
  .ps18-vendors .vendor-directory-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%!important;margin:0!important;min-height:0!important}
  .ps18-vendors .vendor-market-card{min-width:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;border-radius:15px!important;border:1px solid #e2e8ed!important;box-shadow:0 7px 20px #102a430a!important}
  .ps18-vendors .vendor-market-body{padding:14px!important}
  .ps18-vendors .vendor-market-identity{min-width:0!important}
  .ps18-vendors .vendor-market-identity h2{font-size:17px!important;overflow-wrap:anywhere!important}
  .ps18-vendors .vendor-market-stats{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
  .ps18-vendors .vendor-empty-state.ps18-vendor-empty{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:208px!important;padding:24px 17px!important;margin:0!important;border:1px dashed #c4d9cc!important;border-radius:15px!important;background:#f7faf8!important;color:#273648!important}
  .ps18-vendor-empty-art{width:45px;height:45px;border-radius:13px;background:#e6f4eb;display:grid;place-items:center;color:#007b52;margin:0 0 5px}
  .ps18-vendor-empty-art svg{width:26px;height:26px;display:block;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;fill:none}
  .ps18-vendor-empty h3{font-size:17px!important;font-weight:850!important;line-height:1.3!important;margin:0!important;color:#102a43!important;overflow-wrap:anywhere!important}
  .ps18-vendor-empty p{font-size:13px!important;line-height:1.55!important;color:#607085!important;max-width:300px!important;margin:0!important}
  .ps18-vendor-empty .ps18-empty-link{display:inline-flex;align-items:center;justify-content:center;background:#007b52;color:#fff!important;font-size:13px;font-weight:800;border-radius:10px;min-height:39px;padding:9px 16px;text-decoration:none!important;margin-top:5px}
  html body:has(main.ps18-vendors) footer.premium-site-footer{margin-top:0!important}
  html body:has(main.ps18-vendors) .ps18-vendors+.premium-site-footer{padding-top:0!important}
  /* Legacy page detail visibility rules use #content and beat V17's display:none. */
  html body.page-product_detail main#content.ps17-detail>div.ps16-product-mobile-header,
  html body.page-product_detail main#content.ps17-detail>div.ps16-product-mobile-buybar{display:none!important;visibility:hidden!important;height:0!important;padding:0!important;margin:0!important}
  html body.page-product_detail main#content.ps17-detail>.container,
  html body.page-product_detail main#content.ps17-detail>.bg-gray-13{display:none!important;visibility:hidden!important;min-height:0!important;height:0!important;padding:0!important;margin:0!important}
  html body.page-product_detail main#content.ps17-detail>.ps17-product-mobile{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;min-width:0!important;max-width:100%!important;transform:none!important;min-height:0!important;height:auto!important}
  html body.page-product_detail main#content.ps17-detail .ps17-detail-head{display:flex!important;min-height:56px!important;max-width:100%!important}
  html body.page-product_detail main#content.ps17-detail .ps17-detail-gallery-track{display:flex!important;max-width:100%!important;scroll-snap-type:x mandatory!important}
  html body.page-product_detail main#content.ps17-detail .ps17-detail-head svg{width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important;fill:none!important;stroke:#102a43!important;stroke-width:1.8!important;display:block!important}
  html body.page-product_detail main#content.ps17-detail .ps17-detail-buybar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:center!important;bottom:0!important;z-index:2147483200!important;min-height:70px!important;max-width:100%!important}
  html body.page-product_detail main#content.ps17-detail .ps17-detail-buybar>a{min-width:0!important;min-height:48px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:14px!important}
  html body.page-product_detail nav.ps-mobile-bottom-nav{display:none!important}
  html body.page-product_detail footer.premium-site-footer{display:none!important}
}
@media(max-width:359.98px){
  .ps18-vendors>.container{padding-left:11px!important;padding-right:11px!important}
  .ps18-vendors .vendor-discovery-toolbar .ps18-sort-field select{font-size:11px!important}
  .ps18-vendors .vendor-discovery-toolbar>button{font-size:12px!important}
}
/* Desktop and tablets must never expose the mobile-only detail header, gallery or vendor bar. */
@media(min-width:768px){
  html body .ps18-vendors .ps18-vendor-header{display:none!important}
  html body .ps17-detail>.ps17-product-mobile{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important}
}
/* Directory/mobile listings use the five-item dock, not a second dark footer. */
@media(max-width:767.98px){
  html body:has(main.ps18-vendors) footer.premium-site-footer{display:none!important}
  html body:has(main.ps18-vendors) .ps-app-shell{padding-bottom:calc(74px + env(safe-area-inset-bottom))!important;}
}
