/* Phase 20.5.15.6.14 — Mobile Overflow Visual Diagnostic & Exact Element Fix Lock
   Scope: mobile viewport geometry only. No order/payment/dispute/database logic.
   Purpose: keep one browser scrollbar, detect exact overflow/under-width offenders, and constrain only measured offenders. */
@media (max-width: 820px){
  :root{--bzp-vw-gutter-v20515614:6px;}
  html,body{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;overflow-x:hidden!important;}
  body{position:relative!important;}
  .page-shell,.marketak-app-shell-main-v205101,main{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;}

  /* Exact, role-aware viewport containers: these are the common ancestors found across public/admin/vendor mobile pages. */
  body :where(
    .admin-pro-page,.admin-page,.admin-page-pro,.admin-control-center-page,.admin-settings-page,.review-admin-page,.category-admin-page,
    .codrev-admin-polish-v189528561,.settlements1351-page,.admin-time-settings-page,.admin-finance-settings-page,
    .vendor-pro-page,.vendor-page,.vendor-dashboard-page,.vendor-orders-page,
    .products-page-pro-v66,.products-shell-v66,.all-categories-shell-v205157,.storefront-shell,.product-shell,
    .footer,.mega-footer,.footer-v14,.site-footer,.footer-pro
  ){
    width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:0!important;box-sizing:border-box!important;overflow-x:hidden!important;
  }

  body :where(
    .admin-shell,.admin-shell-pro,.admin-settings-shell,.settings-shell,.category-admin-shell,.review-shell,.admin-side-shell,
    .vendor-shell-pro,.vendor-shell-wide-pro,.vendor-orders-shell-wide,
    .container,.page-container,.content-container,.home-container,.home-shell,.footer-layout-v14
  ){
    width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:0!important;box-sizing:border-box!important;overflow-x:clip!important;padding-inline:var(--bzp-vw-gutter-v20515614)!important;
  }

  body :where(
    .admin-main-pro,.admin-content,.settings-main,.main-pro,.codrev-main,.admin-payment-main,.payment-main,
    .vendor-main-pro,.products-content-v66,.products-layout-v66,.footer-brand-v14,.footer-app-card-v14
  ){
    width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:0!important;box-sizing:border-box!important;overflow-x:clip!important;
  }

  body :where(
    .admin-sidebar,.admin-sidebar-unified-v167,.settings-sidebar,.admin-side,.admin-sidebar-pro,
    .vendor-sidebar-pro,.products-filter-sidebar-v66
  ){
    width:100%!important;max-width:100%!important;min-width:0!important;position:static!important;inset:auto!important;height:auto!important;max-height:none!important;margin:0 0 12px!important;box-sizing:border-box!important;overflow:visible!important;
  }

  body :where(
    .admin-hero-pro,.settings-hero,.admin-panel-pro,.settings-card,.admin-card,.panel-pro,.admin-tool-card,.admin-stat-card,.readiness-card,.admin-alert-card,
    .admin-table-wrap,.table-wrap,.table-pro-wrap,.review-hero,.review-card,.codrev-hero,.codrev-panel,.payment-unified-hero,.payment-review-card-unified,
    .vendor-hero-pro,.vendor-panel-pro,.vendor-card,.vendor-order-final-card,.vendor-order-filter-panel,
    .product-card,.store-card,.footer-card,.footer-brand-block
  ){
    width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:0!important;box-sizing:border-box!important;overflow-wrap:anywhere!important;
  }

  /* Exact JS-applied classes: used only when a live measured element is actually wider than viewport or keeps forcing under-width framing. */
  .bzp-mobile-overflow-offender-v20515614{
    max-width:calc(100vw - 2px)!important;
    min-width:0!important;
    box-sizing:border-box!important;
    overflow-x:clip!important;
    transform:none!important;
  }
  .bzp-mobile-underwidth-frame-v20515614{
    width:100%!important;
    max-width:100%!important;
    margin-inline:0!important;
    box-sizing:border-box!important;
  }

  /* Tables are allowed to scroll internally; the page itself is not. */
  :where(.table-wrap,.table-pro-wrap,.responsive-table,.admin-table-wrap){overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}
}

/* Diagnostic overlay is off unless the URL contains ?bzp_mobile_diag=1 or localStorage.bzp_mobile_diag_v20515614 = 1. */
.bzp-mobile-diag-panel-v20515614{position:fixed;z-index:2147483647;inset:auto 8px 8px 8px;max-height:44vh;overflow:auto;background:#07152a;color:#fff;border:1px solid rgba(255,255,255,.22);box-shadow:0 24px 80px rgba(2,8,23,.36);border-radius:18px;padding:12px;font:12px/1.55 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;direction:ltr;text-align:left;display:none;}
.bzp-mobile-diag-panel-v20515614.is-on{display:block;}
.bzp-mobile-diag-panel-v20515614 b{display:block;margin-bottom:6px;color:#facc15;font-size:13px;}
.bzp-mobile-diag-panel-v20515614 code{display:block;white-space:pre-wrap;word-break:break-word;color:#dbeafe;background:rgba(255,255,255,.08);border-radius:10px;padding:7px;margin:6px 0;}
.bzp-mobile-diag-outline-v20515614{outline:2px solid #ef4444!important;outline-offset:-2px!important;}
