/* 058637 order drawer final checkout pass.
   One scroll surface. Cart rows remain in normal document flow.
   PayPal disappears completely until configured. */

html.order-scroll-locked,
body.order-scroll-locked {
  overscroll-behavior: none !important;
}

.order-drawer {
  scroll-behavior: auto !important;
}

.order-drawer.is-open {
  display: block !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior-y: contain !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-y !important;
  outline: none !important;
}

.drawer-backdrop.is-open {
  overscroll-behavior: none !important;
  touch-action: none !important;
}

/* Keep every checkout section in normal flow. Do not let legacy flex rules
   collapse the cart when body scrolling is locked. */
.order-drawer .drawer-items {
  position: relative !important;
  display: block !important;
  flex: none !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
  padding-top: 38px !important;
  border-bottom: 1px solid var(--site-line-strong, rgba(236,232,223,.24)) !important;
}

.order-drawer .drawer-items::before {
  content: "YOUR ORDER";
  position: absolute;
  top: 0;
  right: 18px;
  left: 18px;
  display: flex;
  min-height: 38px;
  align-items: center;
  color: var(--site-faint, rgba(236,232,223,.38));
  font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .15em;
  pointer-events: none;
}

.order-drawer .drawer-items:has(.drawer-empty)::before {
  content: "YOUR ORDER / EMPTY";
}

.order-drawer .drawer-item {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  min-height: 116px !important;
  padding: 16px 18px !important;
}

.order-drawer .drawer-item-main {
  display: flex !important;
  min-width: 0 !important;
}

.order-drawer .drawer-item-copy {
  display: block !important;
  min-width: 0 !important;
}

.order-drawer .drawer-item-image {
  display: block !important;
  width: 84px !important;
  height: 84px !important;
  flex: 0 0 84px !important;
}

.order-drawer .drawer-item-name {
  display: block !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
}

.order-drawer .drawer-item-price {
  display: block !important;
  font-size: 12px !important;
}

.order-drawer .drawer-qty {
  display: inline-flex !important;
  margin-top: 9px !important;
}

.order-drawer .order-form {
  position: relative !important;
  display: block !important;
  flex: none !important;
  width: 100% !important;
  height: auto !important;
  overflow: visible !important;
  padding: 22px 18px 24px !important;
}

.order-drawer .order-form-label {
  margin-bottom: 8px !important;
}

.order-drawer .order-form input,
.order-drawer .order-form textarea {
  min-height: 46px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  font-size: 12px !important;
}

.order-drawer .order-form textarea {
  min-height: 70px !important;
}

.order-drawer .drawer-bottom {
  position: relative !important;
  display: block !important;
  flex: none !important;
  width: 100% !important;
  height: auto !important;
  padding: 20px 18px max(24px, env(safe-area-inset-bottom)) !important;
}

.order-drawer .drawer-total {
  align-items: center !important;
  padding-bottom: 0 !important;
}

.order-drawer .drawer-total strong {
  font-size: 26px !important;
  line-height: 1 !important;
}

.order-drawer .checkout-intro {
  margin: 12px 0 0 !important;
  max-width: 36em;
  font-size: 10px !important;
  line-height: 1.5 !important;
}

.paypal-checkout-block.is-unavailable,
.checkout-divider.is-unavailable {
  display: none !important;
}

.paypal-checkout-block {
  margin-top: 17px !important;
  padding-top: 17px !important;
}

#paypal-button-container:empty {
  display: none !important;
  min-height: 0 !important;
}

.paypal-status {
  min-height: 0 !important;
  margin-bottom: 9px !important;
}

.checkout-divider {
  min-height: 38px !important;
}

.manual-order-note {
  margin-top: 8px !important;
}

@media (max-width: 560px) {
  .order-drawer .drawer-items {
    padding-top: 34px !important;
  }

  .order-drawer .drawer-items::before {
    right: 14px;
    left: 14px;
    min-height: 34px;
  }

  .order-drawer .drawer-item {
    min-height: 108px !important;
    padding: 14px !important;
  }

  .order-drawer .drawer-item-image {
    width: 78px !important;
    height: 78px !important;
    flex-basis: 78px !important;
  }

  .order-drawer .order-form {
    padding: 20px 14px 22px !important;
  }

  .order-drawer .drawer-bottom {
    padding: 18px 14px max(22px, env(safe-area-inset-bottom)) !important;
  }
}
