/* PupVibes 8.10.52 — payment recap: guaranteed single outer card.
   Theme-only. Mondial Relay module untouched. */

/* Remove every possible wrapper/card border on PAYMENT only. */
body#checkout.pv-step-is-payment .checkout-grid__aside,
body#checkout.pv-step-is-payment .pv-checkout-aside,
body#checkout.pv-step-is-payment .pv-checkout-summary-card,
body#checkout.pv-step-is-payment .pv-co-summary{
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

body#checkout.pv-step-is-payment .pv-checkout-summary-card{
  padding:0!important;
  overflow:visible!important;
}

/* This is now the ONE visible recap card. */
body#checkout.pv-step-is-payment .pv-pay-summary{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:20px!important;
  border:1px solid rgba(203,98,3,.18)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

/* Internal shell has no visual box of its own. */
body#checkout.pv-step-is-payment .pv-pay-summary__shell{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}

/* No accidental rounded cards around any recap subsection. */
body#checkout.pv-step-is-payment .pv-pay-summary__head,
body#checkout.pv-step-is-payment .pv-pay-summary__products,
body#checkout.pv-step-is-payment .pv-pay-product,
body#checkout.pv-step-is-payment .pv-pay-product__body,
body#checkout.pv-step-is-payment .pv-pay-summary__pricing,
body#checkout.pv-step-is-payment .pv-pay-summary__line,
body#checkout.pv-step-is-payment .pv-pay-summary__grand-total,
body#checkout.pv-step-is-payment .pv-pay-summary__voucher,
body#checkout.pv-step-is-payment .pv-pay-summary__cta{
  border-left:0!important;
  border-right:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

/* Reference mockup: one separator after products. */
body#checkout.pv-step-is-payment .pv-pay-summary__products{
  margin:0!important;
  padding:0 0 14px!important;
  border-top:0!important;
  border-bottom:1px solid rgba(36,22,8,.14)!important;
}
body#checkout.pv-step-is-payment .pv-pay-product{
  padding:0!important;
  border:0!important;
}
body#checkout.pv-step-is-payment .pv-pay-product + .pv-pay-product{
  margin-top:12px!important;
}

/* Pricing is plain text rows: no grid lines. */
body#checkout.pv-step-is-payment .pv-pay-summary__pricing{
  margin:0!important;
  padding:14px 0 0!important;
  border-top:0!important;
  border-bottom:0!important;
}
body#checkout.pv-step-is-payment .pv-pay-summary__line{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:16px!important;
  margin:0 0 8px!important;
  padding:0!important;
  border:0!important;
}

/* One and only one divider before Total. */
body#checkout.pv-step-is-payment .pv-pay-summary__divider{
  display:block!important;
  height:1px!important;
  margin:14px 0 16px!important;
  padding:0!important;
  border:0!important;
  background:rgba(36,22,8,.14)!important;
  box-shadow:none!important;
}
body#checkout.pv-step-is-payment .pv-pay-summary__grand-total{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:16px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}

/* Promo + CTA stay in the same card with no separators around them. */
body#checkout.pv-step-is-payment .pv-pay-summary__voucher,
body#checkout.pv-step-is-payment .pv-pay-summary__voucher .cart-summary__voucher,
body#checkout.pv-step-is-payment .pv-pay-summary__voucher form,
body#checkout.pv-step-is-payment .pv-pay-summary__voucher .pv-cart-voucher-form,
body#checkout.pv-step-is-payment .pv-pay-summary__cta{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
body#checkout.pv-step-is-payment .pv-pay-summary__voucher{
  margin:16px 0 0!important;
  padding:0!important;
}
body#checkout.pv-step-is-payment .pv-pay-summary__cta{
  margin:16px 0 0!important;
  padding:0!important;
}

@media(max-width:640px){
  body#checkout.pv-step-is-payment .pv-pay-summary{
    padding:16px!important;
    border-radius:16px!important;
  }
}
