/* ZoloMarket checkout UX v2: scoped classic WooCommerce checkout */
body.woocommerce-checkout:not(.woocommerce-order-received) .commerce-area,
body.woocommerce-checkout:not(.woocommerce-order-received) .content-area{max-width:1080px}
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce{max-width:100%}
.woocommerce-checkout .zm-payment-steps{display:flex;align-items:center;gap:10px;margin:12px 0 22px;padding:13px 16px;border:1px solid #476257;background:#f5f8f6;border-radius:16px;color:#10231a;font-size:.88rem}
.woocommerce-checkout .zm-payment-steps strong{font-weight:750}
.woocommerce-checkout .zm-payment-steps .zm-step-current{color:#247c36}
.woocommerce-checkout .zm-payment-steps .zm-step-sep{color:#476257}
.woocommerce-checkout .zm-payment-steps .zm-step-later{color:#476257}
.woocommerce-checkout .zm-whop-next{margin:12px 0 0;text-align:center;font-size:.85rem;line-height:1.5;color:#476257}
.woocommerce-checkout .zm-whop-next strong{color:#10231a}
.woocommerce-checkout .zm-payment-next-title{margin:0 0 8px;font-size:1rem;font-weight:750;color:#10231a}
.woocommerce-checkout .zm-payment-next-desc{margin:0;color:#476257;font-size:.9rem;line-height:1.5}
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout #order_review{border:1px solid #476257!important;border-radius:16px!important;box-shadow:none!important}
.woocommerce-checkout .woocommerce-billing-fields label{font-weight:650!important}
.woocommerce-checkout .woocommerce-billing-fields input.input-text{min-height:52px!important;font-size:16px!important;border-radius:8px!important}
.woocommerce-checkout .woocommerce-billing-fields input.input-text:focus-visible{outline:2px solid #247c36!important;outline-offset:2px!important}
.woocommerce-checkout .woocommerce-billing-fields .woocommerce-invalid input.input-text{border-color:#476257!important}
.woocommerce-checkout .woocommerce-error{border:1px solid #476257!important;border-radius:8px!important;padding:14px 18px 14px 36px!important}
.woocommerce-checkout #payment{background:#f5f8f6!important;padding:16px!important}
.woocommerce-checkout #payment .payment_methods{padding:0!important;margin:0 0 10px!important;border:0!important}
.woocommerce-checkout #payment .payment_methods li{list-style:none!important}
/* Labels are visible for both PayPal and card payment choices. */
/* Radio selection stays visible and accessible. */
.woocommerce-checkout #payment .payment_box{background:transparent!important;margin:0!important;padding:0!important;color:#476257!important}
.woocommerce-checkout #payment #place_order{width:100%!important;min-height:58px!important;border-radius:8px!important;background:#247c36!important;color:#fff!important;font-weight:750!important;font-size:1.03rem!important;line-height:1.3!important;text-align:center!important;white-space:normal!important;float:none!important;margin:0!important}
.woocommerce-checkout #payment #place_order:hover{background:#247c36!important}
.woocommerce-checkout #payment #place_order:focus-visible{outline:3px solid #10231a!important;outline-offset:3px!important}
.woocommerce-checkout #payment #place_order:disabled{opacity:.65!important;cursor:wait!important}
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total{font-size:1.1rem;color:#10231a}
.woocommerce-checkout .zm-checkout-intro p{max-width:55ch}
@media(min-width:850px){.woocommerce-checkout form.checkout{max-width:1050px!important;display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr)!important;gap:24px 32px!important;align-items:start!important}.woocommerce-checkout form.checkout #customer_details{grid-column:1;grid-row:1 / span 2}.woocommerce-checkout form.checkout #order_review_heading{grid-column:2;grid-row:1;margin:0!important;align-self:end}.woocommerce-checkout form.checkout #order_review{grid-column:2;grid-row:2;margin-top:0!important}.woocommerce-checkout .woocommerce-billing-fields{padding:30px!important}.woocommerce-checkout #order_review{padding:24px!important}}
@media(max-width:849px){.woocommerce-checkout form.checkout{display:flex!important;flex-direction:column!important;gap:14px!important}.woocommerce-checkout .zm-payment-steps{flex-wrap:wrap;font-size:.79rem}.woocommerce-checkout .woocommerce-billing-fields,.woocommerce-checkout #order_review{padding:18px!important}}
@media(max-width:420px){.woocommerce-checkout .zm-payment-steps{gap:7px;padding:12px}.woocommerce-checkout .woocommerce-billing-fields .form-row-first,.woocommerce-checkout .woocommerce-billing-fields .form-row-last{float:none!important;width:100%!important}}

/* Compact, accessible, inline checkout field feedback */
.woocommerce-checkout .zm-field-error{display:block!important;color:#b42318!important;font-size:.84rem!important;line-height:1.45!important;margin-top:6px!important;font-weight:650!important}
.woocommerce-checkout .woocommerce-billing-fields .zm-field-invalid input.input-text{border:2px solid #b42318!important;background:#fff8f7!important;box-shadow:none!important}
.woocommerce-checkout .woocommerce-billing-fields .zm-field-invalid input.input-text:focus{outline:2px solid #b42318!important;outline-offset:2px!important}
.woocommerce-checkout .woocommerce-billing-fields .form-row .optional{color:#476257;font-weight:400}

/* Checkout summary: reduce repeated copy and make the next action obvious. */
body.woocommerce-checkout:not(.woocommerce-order-received) .zm-refund-assurance,
body.woocommerce-checkout:not(.woocommerce-order-received) .zm-checkout-trust,
body.woocommerce-checkout:not(.woocommerce-order-received) .zm-checkout-secure-line,
body.woocommerce-checkout:not(.woocommerce-order-received) .zm-payment-next,
body.woocommerce-checkout:not(.woocommerce-order-received) .zm-whop-next,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table thead,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr.cart-subtotal,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-privacy-policy-text{display:none!important}
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table{border:0!important;margin:0 0 10px!important}
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table td,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table th{padding:13px 4px!important;border-bottom:1px solid #f5f8f6!important}
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table .order-total td{font-size:1.13rem!important;font-weight:750!important;color:#10231a!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #payment{margin-top:10px!important;padding:12px!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #payment .woocommerce-terms-and-conditions-wrapper{margin-bottom:14px!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #payment .woocommerce-terms-and-conditions-wrapper .form-row{margin:0!important;padding:0!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #payment .woocommerce-terms-and-conditions-checkbox-text{font-size:.88rem!important;line-height:1.45!important;color:#10231a!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #payment .woocommerce-privacy-policy-link,
body.woocommerce-checkout:not(.woocommerce-order-received) #payment a{color:#247c36!important}
body.woocommerce-checkout:not(.woocommerce-order-received) .zm-inside-order-title{margin:0 0 8px!important}
@media(max-width:650px){body.woocommerce-checkout:not(.woocommerce-order-received) #order_review{padding:15px!important}body.woocommerce-checkout:not(.woocommerce-order-received) #payment #place_order{font-size:1rem!important;min-height:56px!important}}

/* PayPal setup clarity. Checkout-only, no additional assets. */
.woocommerce-checkout .zm-payment-setup-notice{margin:0 0 18px;padding:17px 20px;background:#f5f8f6;border:1px solid #476257;border-radius:8px;color:#10231a;font-size:.93rem;line-height:1.6}
.woocommerce-checkout .zm-payment-setup-notice strong{font-weight:750}
.woocommerce-checkout .zm-payment-setup-notice a{color:#247c36;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.woocommerce-checkout #payment .payment_methods li.payment_method_ppcp-gateway>label{display:block!important;color:#10231a;font-weight:750;font-size:.95rem;margin:0 0 10px}


/* PayPal then card: show selectable payment methods in checkout. */
body.woocommerce-checkout:not(.woocommerce-order-received) #payment .payment_methods li.wc_payment_method {
 margin:0 0 12px; padding:16px; background:#ffffff; border:1px solid #476257; border-radius:8px;
}
.woocommerce-checkout #payment .payment_methods li.wc_payment_method > input[type=radio] {
 display:inline-block!important; width:18px; height:18px; margin:0 9px 0 0!important;
 accent-color:#247c36; vertical-align:middle; cursor:pointer;
}
.woocommerce-checkout #payment .payment_methods li.wc_payment_method > label {
 display:inline!important; font-size:1rem!important; font-weight:750!important; color:#10231a!important; cursor:pointer;
}
.woocommerce-checkout #payment .payment_methods li.wc_payment_method > input[type=radio]:focus-visible {
 outline:2px solid #247c36; outline-offset:3px;
}
.woocommerce-checkout #payment .payment_methods li.wc_payment_method .payment_box {
 margin:12px 0 0!important; padding:0!important; line-height:1.5;
 font-size:.91rem; color:#476257!important;
}
.woocommerce-checkout #payment .payment_methods li.wc_payment_method:has(>input[type=radio]:checked) {
 border-color:#247c36; background:#f5f8f6;
}
@media(max-width:650px) {
 body.woocommerce-checkout:not(.woocommerce-order-received) #payment .payment_methods li.wc_payment_method {padding:14px;}
}

/* 2026-10-21 | Provider-native PayPal and card checkout.
   Order summary first. Both PayPal SDK buttons follow it; legal consent last.
   Do not hide WooCommerce fallbacks unless the SDK reports both ready. */
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > .ppc-button-wrapper{
  order:2!important;width:100%;min-width:0;margin:18px 0 0!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > .ppc-button-wrapper #ppc-button-ppcp-gateway-v6,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > #ppc-button-ppcp-card-button-gateway-v6{
  width:100%;min-width:0;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > #ppc-button-ppcp-card-button-gateway-v6{
  order:4!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > .zm-paypal-or{
  order:3!important;display:flex;align-items:center;gap:15px;
  margin:16px 0!important;color:#476257;font-size:.9rem;
  font-weight:750;letter-spacing:.04em;text-transform:lowercase;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > .zm-paypal-or::before,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > .zm-paypal-or::after{
  content:"";height:1px;flex:1;background:#476257;opacity:.35;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > .zm-card-processing-note{
  order:5!important;margin:9px 0 1px;font-size:.8rem;
  line-height:1.5;text-align:center;color:#476257;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > #payment{
  order:6!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-buttons-ready > #payment ul.wc_payment_methods,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-buttons-ready > #payment #place_order{
  display:none!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-buttons-ready > #payment{
  padding:0!important;margin-top:16px!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-buttons-ready > #payment .form-row.place-order{
  padding:0!important;
}
@media(max-width:650px){
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > .ppc-button-wrapper{
    margin-top:14px!important;
  }
}

/* 2026-10-21: PayPal loading safety and a working card fallback.
   PayPal components continue to own all payment credentials and submission. */
html.zm-payments-preparing body.woocommerce-checkout:not(.woocommerce-order-received) #order_review #payment ul.wc_payment_methods,
html.zm-payments-preparing body.woocommerce-checkout:not(.woocommerce-order-received) #order_review #payment #place_order{
 display:none!important;
}
html.zm-payments-preparing body.woocommerce-checkout:not(.woocommerce-order-received) #order_review > .ppc-button-wrapper:not(:has(paypal-button,iframe))::after{
 content:"Loading secure payment options…";display:block;padding:16px 5px;text-align:center;
 font-size:.88rem;color:#476257;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-wallet-ready #payment li.payment_method_ppcp-gateway{display:none!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-wallet-ready:not(.zm-ppcp-card-fallback) #payment ul.wc_payment_methods{display:none!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-wallet-ready #payment #place_order{display:none!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback.zm-ppcp-card-selected #payment #place_order{display:flex!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback #payment ul.wc_payment_methods{display:block!important;margin:0 0 14px!important;padding:0!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback #payment li.payment_method_ppcp-card-button-gateway{
 display:block!important;padding:0!important;border:0!important;background:none!important;margin:0!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback #payment li.payment_method_ppcp-card-button-gateway>input[type=radio]{
 position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;overflow:hidden!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback #payment li.payment_method_ppcp-card-button-gateway>label{
 display:flex!important;align-items:center;justify-content:center;min-height:55px;
 padding:12px 18px;margin:0!important;border:1px solid #247c36;border-radius:8px;
 font-size:1rem!important;font-weight:750;color:#10231a!important;
 cursor:pointer;line-height:1.4;text-align:center;background:#ffffff;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback #payment li.payment_method_ppcp-card-button-gateway>label:hover{
 background:#f5f8f6;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback #payment li.payment_method_ppcp-card-button-gateway:has(>input[type=radio]:focus-visible)>label{
 outline:2px solid #247c36;outline-offset:3px;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback #payment li.payment_method_ppcp-card-button-gateway:has(>input[type=radio]:checked)>label{
 background:#f5f8f6;border-width:2px;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback #payment .payment_box.payment_method_ppcp-card-button-gateway{display:none!important}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-card-fallback > #payment,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review.zm-ppcp-wallet-ready > #payment{
 padding:0!important;margin-top:10px!important;
}
