/* v701 Customer sticky operating status + mobile footer bottom-space repair
   Customer storefront only. Loaded after the older responsive/top-stack layers.
   Goals:
   1) keep the operating-status surface sticky on every customer viewport;
   2) keep it aligned to the same 1240px customer content geometry;
   3) eliminate document-level mobile bottom padding that appeared as blank space after the footer;
   4) preserve room for the fixed mobile nav *inside* the branded footer instead of after it.
*/

body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"]{
  --customer-sticky-gutter-v701:clamp(8px,2vw,24px);
}

/* The status surface remains in normal flow, then sticks at the top while scrolling.
   No body spacer is required because sticky positioning keeps its layout footprint. */
body.shop-page.has-store-status-v290[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"]{
  padding-top:0!important;
}
body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"] .store-status-v290{
  position:sticky!important;
  top:0!important;
  left:auto!important;
  right:auto!important;
  inset-block-start:0!important;
  z-index:5000!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:max(6px,env(safe-area-inset-top,0px)) var(--customer-sticky-gutter-v701) 6px!important;
  transform:translateZ(0)!important;
  background:color-mix(in srgb,var(--customer-page-v568,#fffaf4) 94%,white)!important;
  border:0!important;
  border-bottom:1px solid color-mix(in srgb,var(--customer-text-v568,#111827) 10%,transparent)!important;
  box-shadow:0 8px 22px color-mix(in srgb,var(--customer-text-v568,#111827) 6%,transparent)!important;
  backdrop-filter:saturate(145%) blur(14px)!important;
  -webkit-backdrop-filter:saturate(145%) blur(14px)!important;
}
body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"] .store-status-inner-v290{
  width:min(1240px,100%)!important;
  max-width:1240px!important;
  margin:0 auto!important;
  min-width:0!important;
}

/* Tablets: preserve readable wrapping instead of horizontal clipping/overflow. */
@media(max-width:980px){
  body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"] .store-status-services-v290{
    max-width:100%!important;
  }
}

/* Phones: one compact, edge-aligned sticky card. */
@media(max-width:767px){
  body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"]{
    --customer-sticky-gutter-v701:10px;
  }
  body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"] .store-status-v290{
    padding:max(5px,env(safe-area-inset-top,0px)) 10px 6px!important;
  }
  body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"] .store-status-inner-v290{
    width:100%!important;
    border-radius:18px!important;
  }

  /* v555/v701 install UI is fixed above the mobile nav. Its old body padding created
     a visible empty block after the footer. Keep the document flush instead. */
  html body.shop-page.has-pwa-install-v321[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"]{
    padding-bottom:0!important;
  }

  /* Keep footer content clear of the fixed mobile nav, but make that clearance part
     of the footer surface so there is never an unbranded blank region after it. */
  body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"] .customer-public-footer-v662{
    margin-bottom:0!important;
    padding-bottom:max(30px,calc(var(--v132-nav-h,76px) + env(safe-area-inset-bottom,0px) + 14px))!important;
  }
}

/* Installed standalone mode does not need browser-page clearance beyond the safe area. */
@media(max-width:767px) and (display-mode:standalone){
  body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"] .customer-public-footer-v662{
    padding-bottom:max(24px,calc(env(safe-area-inset-bottom,0px) + 18px))!important;
  }
}

@media print{
  body.shop-page[data-table-order="false"][data-staff-table-order="false"][data-staff-quick-order="false"] .store-status-v290{
    position:static!important;
    top:auto!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}
