/* Shared mobile purchase shortcut; colors and radius remain theme-controlled. */
#bz-mobile-purchase { display: none; }
@media (max-width: 781px) {
  #bz-mobile-purchase:not([hidden]) {
    display: block;
    position: fixed;
    z-index: 90;
    inset: auto 0 0;
    box-sizing: border-box;
    padding: 10px max(16px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
    background: var(--wp--preset--color--surface-light, #F8F4EC);
    color: var(--wp--preset--color--graphite, #282D26);
    border-top: 1px solid var(--wp--preset--color--line, #D7CDBD);
    box-shadow: 0 -5px 24px rgb(40 45 38 / 7%);
    font-family: var(--wp--preset--font-family--body);
  }
  .bz-mobile-purchase__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(136px, .95fr); align-items: center; gap: 12px; max-width: 620px; margin-inline: auto; }
  #bz-mobile-purchase .bz-mobile-purchase__summary {
    display: grid; gap: 1px; min-width: 0; min-height: 48px; margin: 0; padding: 2px 0;
    border: 0; border-radius: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer;
  }
  .bz-mobile-purchase__caption { color: var(--wp--preset--color--text); font-size: 10px; line-height: 1.4; }
  .bz-mobile-purchase__price { font-size: clamp(18px, 5.2vw, 22px); font-weight: 600; line-height: 1.2; white-space: nowrap; font-variant-numeric: tabular-nums; }
  .bz-mobile-purchase__detail { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; line-height: 1.5; color: var(--wp--preset--color--text); }
  #bz-mobile-purchase .bz-mobile-purchase__submit {
    box-sizing: border-box; width: 100%; min-height: 48px; margin: 0; padding: 11px 12px;
    border: 1px solid var(--wp--preset--color--brand); border-radius: var(--wp--custom--radius--control, 10px);
    background: var(--wp--preset--color--brand); color: var(--wp--preset--color--white, #fff);
    font: 500 13px/1.35 var(--wp--preset--font-family--body); text-align: center; cursor: pointer;
  }
  #bz-mobile-purchase .bz-mobile-purchase__submit:hover { background: var(--wp--preset--color--brand-hover); }
  #bz-mobile-purchase button:focus-visible { outline: 2px solid var(--wp--preset--color--brand); outline-offset: 4px; }
  #bz-mobile-purchase .bz-mobile-purchase__submit:disabled { cursor: wait; opacity: .7; }
  #bz-mobile-purchase[data-state="success"] .bz-mobile-purchase__submit { background: var(--wp--preset--color--brand-hover); }
  body.bz-mobile-purchase-active { padding-bottom: var(--bz-mobile-purchase-height, 94px) !important; }
  body.bz-mobile-purchase-active .bz-welcome__tab { bottom: calc(var(--bz-mobile-purchase-height, 94px) + 12px); }
  html.bz-mobile-purchase-active { scroll-padding-bottom: calc(var(--bz-mobile-purchase-height, 94px) + 16px); }
  body.single-product form.cart, body.single-product form.cart :is(button, input, select, textarea) { scroll-margin-block: 100px 115px; }
}
@media (max-width: 359px) {
  .bz-mobile-purchase__inner { grid-template-columns: minmax(0, 1fr) 136px; gap: 8px; }
  #bz-mobile-purchase .bz-mobile-purchase__submit { font-size: 12px; padding-inline: 8px; }
  .bz-mobile-purchase__caption { font-size: 9px; }
}
@media (prefers-reduced-motion: no-preference) {
  .bz-mobile-purchase__submit { transition: background-color 160ms ease; }
}
