/* v433 Production fix: in-house/table ordering cart and smart suggestions must scroll inside the order panel, not drag the whole page. */
body.shop-page[data-table-order="true"]{
  overscroll-behavior-y: auto;
}

@media (min-width: 921px){
  body.shop-page[data-table-order="true"] .shop-shell{
    align-items: start;
  }

  body.shop-page[data-table-order="true"] .order-panel,
  body.shop-page.staff-table-order-v409 .order-panel{
    position: sticky !important;
    top: 104px !important;
    max-height: calc(100dvh - 120px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-gutter: stable;
    padding-bottom: 18px;
  }

  body.shop-page[data-table-order="true"] .order-panel::-webkit-scrollbar,
  body.shop-page.staff-table-order-v409 .order-panel::-webkit-scrollbar{
    width: 10px;
  }

  body.shop-page[data-table-order="true"] .order-panel::-webkit-scrollbar-thumb,
  body.shop-page.staff-table-order-v409 .order-panel::-webkit-scrollbar-thumb{
    background: rgba(120, 85, 68, .55);
    border-radius: 999px;
    border: 2px solid #fff;
  }

  body.shop-page[data-table-order="true"] .cart-list,
  body.shop-page.staff-table-order-v409 .cart-list{
    max-height: clamp(120px, 24dvh, 250px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch;
  }

  body.shop-page[data-table-order="true"] #cart-upsell-slot-v79,
  body.shop-page.staff-table-order-v409 #cart-upsell-slot-v79{
    display: block;
    min-height: 0;
    overflow: visible;
  }

  body.shop-page[data-table-order="true"] .ai-upsell-container-v66,
  body.shop-page.staff-table-order-v409 .ai-upsell-container-v66{
    margin: 14px 0;
  }

  body.shop-page[data-table-order="true"] .ai-upsell-list-v66,
  body.shop-page.staff-table-order-v409 .ai-upsell-list-v66{
    max-height: clamp(170px, 28dvh, 320px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch;
    padding-right: 4px;
  }

  body.shop-page[data-table-order="true"] .ai-upsell-card-v66,
  body.shop-page.staff-table-order-v409 .ai-upsell-card-v66{
    grid-template-columns: 54px minmax(0, 1fr) auto;
  }

  body.shop-page[data-table-order="true"] .checkout-form,
  body.shop-page.staff-table-order-v409 .checkout-form{
    min-height: 0;
  }

  body.shop-page[data-table-order="true"] .place-order,
  body.shop-page.staff-table-order-v409 .place-order{
    position: sticky;
    bottom: 0;
    z-index: 3;
    margin-top: 12px;
  }
}

@media (min-width: 921px) and (max-height: 760px){
  body.shop-page[data-table-order="true"] .order-panel,
  body.shop-page.staff-table-order-v409 .order-panel{
    top: 88px !important;
    max-height: calc(100dvh - 96px) !important;
    padding-top: 16px;
  }

  body.shop-page[data-table-order="true"] .cart-list,
  body.shop-page.staff-table-order-v409 .cart-list{
    max-height: 160px !important;
  }

  body.shop-page[data-table-order="true"] .ai-upsell-list-v66,
  body.shop-page.staff-table-order-v409 .ai-upsell-list-v66{
    max-height: 210px !important;
  }
}

@media (min-width: 721px) and (max-width: 1100px){
  body.shop-page[data-table-order="true"] .shop-shell,
  body.shop-page.staff-table-order-v409 .shop-shell{
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 380px) !important;
    gap: 18px !important;
    width: calc(100% - 28px) !important;
    margin: 0 14px 70px !important;
    max-width: none !important;
  }

  body.shop-page[data-table-order="true"] .menu-grid,
  body.shop-page.staff-table-order-v409 .menu-grid{
    grid-template-columns: 1fr !important;
  }

  body.shop-page[data-table-order="true"] .premium-food-card,
  body.shop-page.staff-table-order-v409 .premium-food-card{
    grid-template-columns: 128px minmax(0, 1fr);
  }
}

@media (max-width: 920px){
  body.shop-page[data-table-order="true"] .order-panel,
  body.shop-page.staff-table-order-v409 .order-panel{
    max-height: min(90dvh, 760px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch;
  }

  body.shop-page[data-table-order="true"] .cart-list,
  body.shop-page.staff-table-order-v409 .cart-list{
    max-height: min(28dvh, 220px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
  }

  body.shop-page[data-table-order="true"] .ai-upsell-list-v66,
  body.shop-page.staff-table-order-v409 .ai-upsell-list-v66{
    max-height: min(30dvh, 260px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch;
    padding-right: 4px;
  }
}
