/* Checkout polish 20261008 — presentation only. The checkout/order controllers,
   cart, drafts, /api/order and payment flow are untouched.

   iOS 26 Safari draws the page underneath its translucent keyboard, accessory bar
   and floating address bar. The checkout is sized to the visual viewport (above
   those bars), so store photos showed through below the form. An inert paper
   backdrop (matched at runtime to the checkout surface colour) now sits directly
   under the checkout and covers the whole screen. */
@keyframes bs-co-backdrop-in{from{opacity:0}to{opacity:1}}
@media (max-width:699px){
  body:has(#checkoutModal.bs-checkout.is-open)::after{
    content:"";
    position:fixed;
    top:-50vh;
    right:0;
    bottom:-50vh;
    left:0;
    z-index:999;
    display:block;
    background:var(--bs-co-backdrop,#e9e5df);
    pointer-events:auto;
    touch-action:none;
    animation:bs-co-backdrop-in .18s ease both;
  }
}
/* Wide screens keep the dimmed desktop overlay; only a landscape phone with its
   keyboard open needs the same cover. */
@media (min-width:700px){
  body:has(#checkoutModal.bs-checkout.is-open.co-keyboard)::after{
    content:"";
    position:fixed;
    top:-50vh;
    right:0;
    bottom:-50vh;
    left:0;
    z-index:999;
    display:block;
    background:var(--bs-co-backdrop,#e9e5df);
    pointer-events:auto;
    touch-action:none;
  }
}
@media (prefers-reduced-motion:reduce){
  body:has(#checkoutModal.bs-checkout.is-open)::after{animation:none}
}

/* Native controls stay light and predictable in iOS dark mode. */
.bs-checkout{color-scheme:light}
.bs-checkout input,
.bs-checkout textarea{caret-color:var(--co-focus,#173a5e)}
/* Instant taps, no double-tap zoom, no grey flash on buttons. */
.bs-checkout button,
.bs-checkout summary,
.bs-checkout a,
.bs-checkout label{
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
