/* Shared purchase information and mobile cart shortcut. */
.woocommerce div.product form.cart:has(+ .px-gv-purchase-note) {
  margin-bottom: 12px;
}

.px-gv-purchase-note {
  clear: both;
  font-size: 13px;
  line-height: 1.5;
  margin-bottom: 40px;
}

.px-gv-mobile-cart,
.px-gv-mobile-cart-spacer {
  display: none;
}

@media (max-width: 768px) {
  /* The existing GeneratePress panel remains available on desktop. */
  body:has(.px-gv-mobile-cart) #wc-sticky-cart-panel {
    display: none;
  }

  .px-gv-mobile-cart:not([hidden]) {
    align-items: center;
    background: #fff;
    border-top: 1px solid #e5e7eb;
    bottom: 0;
    box-shadow: 0 -2px 12px rgb(0 0 0 / 8%);
    display: flex;
    gap: 12px;
    justify-content: space-between;
    left: 0;
    padding: 12px max(12px, env(safe-area-inset-right))
      max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
    position: fixed;
    right: 0;
    z-index: 100;
  }

  .px-gv-mobile-cart .price {
    color: var(--contrast, #222);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.3;
    min-width: 0;
  }

  .px-gv-mobile-cart .price del,
  .px-gv-mobile-cart .price .wgm-sale-label,
  .px-gv-mobile-cart .price .woocommerce-price-suffix {
    font-size: 12px;
  }

  .px-gv-mobile-cart .price ins {
    background: none;
  }

  .px-gv-mobile-cart button {
    flex-shrink: 0;
    font-size: 13px;
    min-height: 44px;
    padding: 12px;
  }

  .px-gv-mobile-cart-spacer {
    display: block;
  }
}
