/**
 * PPCP PayPal Smart Buttons & wallets — button design.
 *
 * This stylesheet is a faithful copy of the reference PayPal Checkout plugin's
 * public button CSS (ppcp/public/css/…-public.css) so the button placements
 * render identically. Only the gateway-id selectors are re-prefixed to this
 * plugin's ids (ppcp_paypal / ppcp_credit_card). Plugin-specific additions
 * (sandbox/approved notices, wallet inner-button sizing) are appended at the
 * end.
 */

.wpppro-order-review .woocommerce-checkout #payment ul.payment_methods {
    display: none;
}
.wpppro_shipping_details,
.wpppro_billing_details {
    margin-bottom: 14px;
    clear: both;
}
.wpppro_edit_billing_address,
.wpppro_edit_shipping_address {
    cursor: pointer;
}
.wpppro_edit_billing_address:hover,
.wpppro_edit_shipping_address:hover {
    text-decoration: none;
    cursor: pointer;
}
.order_review_page_description {
    margin-bottom: 20px;
    clear: both;
}
.button.alt.wpppro_cancel {
    clear: both;
    margin-bottom: 20px;
}
.payments-sdk-contingency-handler {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 999999 !important;
}
.payments-sdk-contingency-handler iframe {
    overflow: auto;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: #fff !important;
    padding: 1em;
    box-sizing: content-box;
    border-radius: 5px;
}
.wpppro_message_home,
.wpppro_message_product,
.wpppro_message_cart,
.wpppro_message_payment,
.wpppro_message_category {
    display: block;
    margin: 15px 0;
    position: relative;
    z-index: 99999;
}
#express-payment-method-wpppro_checkout_top {
    list-style: none !important;
}
.wpppro-button-container {
    text-align: center;
    margin-top: 10px;
}
#wpppro_product.desktop.small {
    max-width: 300px;
    line-height: 0;
    margin-bottom: 10px;
}
#wpppro_product.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin-bottom: 10px;
}
#wpppro_product.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin-bottom: 10px;
}
#wpppro_product.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 10px;
    max-width: 750px;
}
#wpppro_product.mobile.small {
    max-width: 350px;
    margin-bottom: 10px;
    line-height: 0;
    width: 100%;
}
#wpppro_product.mobile.medium {
    max-width: 400px;
    margin-bottom: 10px;
    line-height: 0;
    width: 100%;
}
#wpppro_product.mobile.large {
    max-width: 500px;
    margin-bottom: 10px;
    line-height: 0;
    width: 100%;
}
#wpppro_product.mobile.responsive {
    width: 100%;
    margin-bottom: 10px;
    line-height: 0;
    max-width: 750px;
}
.wpppro-google-pay-container.product.mobile.small {
    width: 100%;
    max-width: 350px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.product.mobile.medium {
    width: 100%;
    max-width: 400px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.product.mobile.large {
    width: 100%;
    max-width: 500px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.product.mobile.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    outline: none;
    max-width: 750px;
}
.wpppro-google-pay-container.product.desktop.small {
    max-width: 300px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.product.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.product.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.product.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    outline: none;
    max-width: 750px;
}
.wpppro-apple-pay-container.product.desktop.small {
    max-width: 300px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
}
.wpppro-apple-pay-container.product.mobile.small {
    width: 100%;
    max-width: 350px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
}
.wpppro-apple-pay-container.product.desktop.small apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-max-width: 300px;
    --apple-pay-button-height: var(--button-height, 48px);
}
.wpppro-apple-pay-container.product.mobile.small apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 350px;
}
.wpppro-apple-pay-container.product.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
}
.wpppro-apple-pay-container.product.mobile.medium {
    width: 100%;
    max-width: 400px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
}
.wpppro-apple-pay-container.product.desktop.medium apple-pay-button {
    --apple-pay-button-max-width: 400px;
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
}
.wpppro-apple-pay-container.product.mobile.medium apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 400px;
}
.wpppro-apple-pay-container.product.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
}
.wpppro-apple-pay-container.product.mobile.large {
    width: 100%;
    max-width: 500px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
}
.wpppro-apple-pay-container.product.desktop.large apple-pay-button {
    --apple-pay-button-max-width: 500px;
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
}
.wpppro-apple-pay-container.product.mobile.large apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 500px;
}
.wpppro-apple-pay-container.product.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    max-width: 750px;
}
.wpppro-apple-pay-container.product.mobile.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    max-width: 750px;
}
.wpppro-apple-pay-container.product.desktop.responsive apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 750px;
}
.wpppro-apple-pay-container.product.mobile.responsive apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 750px;
}
#wpppro_cart.desktop.small {
    max-width: 350px;
    line-height: 0;
    margin: 0 auto 14px;
}
#wpppro_cart.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin: 0 auto 14px;
}
#wpppro_cart.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin: 0 auto 14px;
}
#wpppro_cart.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin: 0 auto 14px;
    max-width: 750px;
}
#wpppro_cart.mobile.small {
    max-width: 350px;
    margin: 0 auto 14px;
    line-height: 0;
    width: 100%;
}
#wpppro_cart.mobile.medium {
    max-width: 400px;
    margin: 0 auto 14px;
    line-height: 0;
    width: 100%;
}
#wpppro_cart.mobile.large {
    max-width: 500px;
    margin: 0 auto 14px;
    line-height: 0;
    width: 100%;
}
#wpppro_cart.mobile.responsive {
    width: 100%;
    margin: 0 auto 14px;
    line-height: 0;
    max-width: 750px;
}
.wpppro-google-pay-container.cart.mobile.small {
    width: 100%;
    max-width: 350px;
    line-height: 0;
    margin-bottom: 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.cart.mobile.medium {
    width: 100%;
    max-width: 400px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.cart.mobile.large {
    width: 100%;
    max-width: 500px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.cart.mobile.responsive {
    width: 100%;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
    outline: none;
    max-width: 750px;
}
.wpppro-google-pay-container.cart.desktop.small {
    max-width: 350px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.cart.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.cart.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.cart.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
    outline: none;
    max-width: 750px !important;
}
.wpppro-apple-pay-container.cart.desktop.small {
    max-width: 350px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
}
.wpppro-apple-pay-container.cart.mobile.small {
    width: 100%;
    max-width: 350px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
}
.wpppro-apple-pay-container.cart.desktop.small apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-max-width: 350px;
    --apple-pay-button-height: var(--button-height, 48px);
}
.wpppro-apple-pay-container.cart.mobile.small apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 350px;
}
.wpppro-apple-pay-container.cart.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
}
.wpppro-apple-pay-container.cart.mobile.medium {
    width: 100%;
    max-width: 400px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
}
.wpppro-apple-pay-container.cart.desktop.medium apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-max-width: 400px;
    --apple-pay-button-height: var(--button-height, 48px);
}
.wpppro-apple-pay-container.cart.mobile.medium apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 400px;
}
.wpppro-apple-pay-container.cart.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
}
.wpppro-apple-pay-container.cart.mobile.large {
    width: 100%;
    max-width: 500px;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
}
.wpppro-apple-pay-container.cart.desktop.large apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 500px;
}
.wpppro-apple-pay-container.cart.mobile.large apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 500px;
}
.wpppro-apple-pay-container.cart.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
    max-width: 750px !important
}
.wpppro-apple-pay-container.cart.mobile.responsive {
    width: 100%;
    line-height: 0;
    margin: 0 auto 14px;
    text-align: center;
    max-width: 750px;
}
.wpppro-apple-pay-container.cart.desktop.responsive apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 750px;
}
.wpppro-apple-pay-container.cart.mobile.responsive apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 750px;
}
.wpg-ppcp-minicart-express {
    padding: 8px 0;
    width: 100%;
}
.wpg-ppcp-minicart-express .ppcp-minicart-button {
    width: 100%;
    line-height: 0;
    margin: 0 0 6px;
}
.wpg-ppcp-minicart-express .ppcp-minicart-button:last-child {
    margin-bottom: 0;
}
#wpppro_mini_cart_block {
    width: 100%;
    line-height: 0;
    margin: 0 0 6px;
}
#wpppro_mini_cart.desktop.small {
    max-width: 350px;
    line-height: 0;
    margin: 0 auto 14px;
    margin-top: 7px;
}
#wpppro_mini_cart.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
}
#wpppro_mini_cart.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
}
#wpppro_mini_cart.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    max-width: 750px;
}
#wpppro_mini_cart.mobile.small {
    max-width: 350px;
    line-height: 0;
    width: 100%;
    margin: 10px 10px 14px 10px;
}
#wpppro_mini_cart.mobile.medium {
    max-width: 400px;
    line-height: 0;
    width: 100%;
    margin: 10px 10px 14px 10px;
}
#wpppro_mini_cart.mobile.large {
    max-width: 500px;
    margin: 10px 10px 14px 10px;
    line-height: 0;
    width: 100%;
}
#wpppro_mini_cart.mobile.responsive {
    width: 100%;
    margin: 10px 10px 14px 10px;
    line-height: 0;
    max-width: 750px;
}
.wpppro-google-pay-container.mini_cart.mobile.small {
    width: 100%;
    max-width: 350px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.mini_cart.mobile.medium {
    width: 100%;
    max-width: 400px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.mini_cart.mobile.large {
    width: 100%;
    max-width: 500px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.mini_cart.mobile.responsive {
    width: 100%;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    outline: none;
    max-width: 750px;
}
.wpppro-google-pay-container.mini_cart.desktop.small {
    max-width: 350px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.mini_cart.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.mini_cart.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.mini_cart.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    outline: none;
    max-width: 750px;
}
.wpppro-apple-pay-container.mini_cart.desktop.small {
    max-width: 350px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
}
.wpppro-apple-pay-container.mini_cart.mobile.small {
    width: 100%;
    max-width: 350px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
}
.wpppro-apple-pay-container.mini_cart.desktop.small apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 350px;
}
.wpppro-apple-pay-container.mini_cart.mobile.small apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 350px;
}
.wpppro-apple-pay-container.mini_cart.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
}
.wpppro-apple-pay-container.mini_cart.mobile.medium {
    width: 100%;
    max-width: 400px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
}
.wpppro-apple-pay-container.mini_cart.desktop.medium apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 400px;
}
.wpppro-apple-pay-container.mini_cart.mobile.medium apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 400px;
}
.wpppro-apple-pay-container.mini_cart.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
}
.wpppro-apple-pay-container.mini_cart.mobile.large {
    width: 100%;
    max-width: 500px;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
}
.wpppro-apple-pay-container.mini_cart.desktop.large apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 500px;
}
.wpppro-apple-pay-container.mini_cart.mobile.large apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 500px;
}
.wpppro-apple-pay-container.mini_cart.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    max-width: 750px;
}
.wpppro-apple-pay-container.mini_cart.mobile.responsive {
    width: 100%;
    line-height: 0;
    margin: 10px 10px 14px 10px;
    text-align: center;
    max-width: 750px;
}
.wpppro-apple-pay-container.mini_cart.desktop.responsive apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 750px;
}
.wpppro-apple-pay-container.mini_cart.mobile.responsive apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 750px;
}
#wpppro_checkout.desktop.small {
    max-width: 350px;
    line-height: 0;
    margin-bottom: 14px;
    margin-top: 10px;
}
#wpppro_checkout.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin-bottom: 14px;
    margin-top: 10px;
}
#wpppro_checkout.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin-bottom: 14px;
    margin-top: 10px;
}
#wpppro_checkout.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 14px;
    max-width: 750px;
    margin-top: 10px;
    min-width: 300px;
}
#wpppro_checkout.mobile.small {
    max-width: 350px;
    margin-bottom: 14px;
    line-height: 0;
    width: 100%;
    margin-top: 10px;
}
#wpppro_checkout.mobile.medium {
    max-width: 400px;
    margin-bottom: 14px;
    line-height: 0;
    width: 100%;
    margin-top: 10px;
}
#wpppro_checkout.mobile.large {
    max-width: 500px;
    margin-bottom: 14px;
    line-height: 0;
    width: 100%;
    margin-top: 10px;
}
#wpppro_checkout.mobile.responsive {
    width: 100%;
    margin-bottom: 14px;
    line-height: 0;
    max-width: 750px;
    margin-top: 10px;
}
.wpppro-google-pay-container.checkout.mobile.small {
    width: 100%;
    max-width: 350px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.checkout.mobile.medium {
    width: 100%;
    max-width: 400px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.checkout.mobile.large {
    width: 100%;
    max-width: 500px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.checkout.mobile.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    outline: none;
    max-width: 750px;
}
.wpppro-google-pay-container.checkout.desktop.small {
    max-width: 350px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.checkout.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.checkout.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    outline: none;
}
.wpppro-google-pay-container.checkout.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    outline: none;
    max-width: 750px;
    min-width: 300px;
}
.wpppro-apple-pay-container.checkout.desktop.small {
    max-width: 350px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
}
.wpppro-apple-pay-container.checkout.mobile.small {
    width: 100%;
    max-width: 350px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
}
.wpppro-apple-pay-container.checkout.desktop.small apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 350px;
}
.wpppro-apple-pay-container.checkout.mobile.small apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 350px;
}
.wpppro-apple-pay-container.checkout.desktop.medium {
    max-width: 400px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
}
.wpppro-apple-pay-container.checkout.mobile.medium {
    width: 100%;
    max-width: 400px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
}
.wpppro-apple-pay-container.checkout.desktop.medium apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 400px;
}
.wpppro-apple-pay-container.checkout.mobile.medium apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 400px;
}
.wpppro-apple-pay-container.checkout.desktop.large {
    max-width: 500px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
}
.wpppro-apple-pay-container.checkout.mobile.large {
    width: 100%;
    max-width: 500px;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
}
.wpppro-apple-pay-container.checkout.desktop.large apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 500px;
}
.wpppro-apple-pay-container.checkout.mobile.large apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 500px;
}
.wpppro-apple-pay-container.checkout.desktop.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    max-width: 750px;
    min-width: 300px;
}
.wpppro-apple-pay-container.checkout.mobile.responsive {
    width: 100%;
    line-height: 0;
    margin-bottom: 14px;
    text-align: center;
    max-width: 750px;
}
.wpppro-apple-pay-container.checkout.desktop.responsive apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 750px;
}
.wpppro-apple-pay-container.checkout.mobile.responsive apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    --apple-pay-button-max-width: 750px;
}
.wpppro-proceed-to-checkout-button-separator.desktop.small {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto;
    position: relative;
    max-width: 350px;
}
.wpppro-proceed-to-checkout-button-separator.desktop.medium {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto;
    position: relative;
    max-width: 400px;
}
.wpppro-proceed-to-checkout-button-separator.desktop.large {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto;
    position: relative;
    max-width: 500px;
}
.wpppro-proceed-to-checkout-button-separator.desktop.responsive {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto;
    position: relative;
    width: 100%;
    max-width: 750px;
}
.wpppro-proceed-to-checkout-button-separator.mobile.small {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto;
    position: relative;
    width: 100%;
    max-width: 350px;
}
.wpppro-proceed-to-checkout-button-separator.mobile.medium {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto;
    position: relative;
    width: 100%;
    max-width: 400px;
}
.wpppro-proceed-to-checkout-button-separator.mobile.large {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto;
    position: relative;
    width: 100%;
    max-width: 500px;
}
.wpppro-proceed-to-checkout-button-separator.mobile.responsive {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto;
    position: relative;
    width: 100%;
    max-width: 750px;
}
.wpppro-proceed-to-checkout-button-separator::before,
.wpppro-proceed-to-checkout-button-separator::after {
    content: '';
    flex: 1;
    border-bottom: 1px solid #e0e0e0;
    margin: 0 6px;
}
.wpppro-proceed-to-checkout-button-separator span {
    font-weight: 500;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    padding: 0 8px;
    position: relative;
    z-index: 1;
}
.wpppro-button-container fieldset {
    border: 1px solid #d1d1d1;
    border-radius: 3px;
    margin-bottom: 20px;
    padding: 15px 15px 22px;
}
.wpppro-button-container fieldset legend {
    font-weight: 500;
    margin: 0 auto;
    padding: 0 1rem;
    max-width: max-content;
    float: none;
    color: #6d6d6d;
    font-size: 16px;
    text-transform: none;
    border-bottom: none;
    background: transparent;
}
.wpppro-button-container .wpppro-express-divider {
    align-items: center;
    background: transparent;
    display: flex;
    font-size: 16px;
    left: 0;
    right: 0;
    top: -13px;
    white-space: nowrap;
    margin-bottom: 25px;
    color: #6d6d6d;
    font-weight: 500;
}
.wpppro-button-container .wpppro-express-divider::before,
.wpppro-button-container .wpppro-express-divider::after {
    background: #e2e2e2;
    content: " ";
    display: block;
    height: 1px;
    width: 50%;
}
.wpppro-button-container .wpppro-express-divider::before {
    margin-right: 1rem;
}
.wpppro-button-container .wpppro-express-divider::after {
    margin-left: 1rem;
}
.express_payment_method_wpppro.desktop {
    display: flex;
    justify-content: center; /* Align sections horizontally */
    align-items: center; /* Align items vertically */
    gap: 6px; /* Space between the two sections */
}
.express_payment_method_wpppro.mobile {
    width: 100%;
    margin: 0 auto;
}
#wpppro_checkout_top.desktop {
    display: flex;
    max-width: 240px;
    line-height: 0;
    width: 100%;
}
#wpppro_checkout_top.mobile {
    width: 100%;
    max-width: 350px;
    margin: 0 auto 14px;
    line-height: 0;
}
#wpppro_checkout_top_alternative.desktop {
    display: flex;
    max-width: 240px;
    line-height: 0;
    width: 100%;
}
#wpppro_checkout_top_alternative.mobile {
    width: 100%;
    max-width: 350px;
    margin: 0 auto 14px;
    line-height: 0;
}
.wpppro-google-pay-container.express_checkout.mobile {
    max-width: 350px;
    display: flex;
    width: 100%;
    line-height: 0;
    margin: 0 auto 14px;
}
.wpppro-google-pay-container .gpay-card-info-container-fill button {
    padding: 0 !important;
    margin: 0;
}
.wpppro-google-pay-container.express_checkout.desktop {
    display: flex;
    max-width: 240px;
    line-height: 0;
    width: 100%;
}
.wpppro-apple-pay-container.express_checkout.mobile {
    max-width: 350px;
    display: flex;
    width: 100%;
    line-height: 0;
    margin: 0 auto 14px;
}
.wpppro-apple-pay-container.express_checkout.desktop {
    display: flex;
    max-width: 240px;
    line-height: 0;
    width: 100%;
}
.express_payment_method_wpppro .wpppro-apple-pay-container.express_checkout.mobile apple-pay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-max-width: 350px;
}
.express_payment_method_wpppro .wpppro-apple-pay-container.express_checkout.desktop apple-pay-button {
    --apple-pay-button-max-width: 240px;
    --apple-pay-button-width: 100%;
}
#express-payment-method-ppcp_paypal_top .wpppro-apple-pay-container apple-pay-button {
    --apple-pay-button-max-width: 450px;
    --apple-pay-button-width: 100%;
}

.wc-block-components-radio-control-accordion-content #wc-ppcp_credit_card-form {
    max-width: 450px;
}
.wpg-paypal-cc-field {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

#wc-ppcp_credit_card-form {
    display: flex;
    flex-wrap: wrap;
    max-width: 450px;
    gap: 0px 0px; /* less vertical gap */
    align-items: flex-start;
    margin-top: 10px;
}

.wpg-paypal-cc-field.full-width {
    flex: 1 1 100%;
}

.wpg-paypal-cc-field.half-width {
    flex: 1 1 calc(50% - 8px);
}

/* Label styling */
.wpg-paypal-cc-field label {
    margin-left: 8px;
    font-weight: 600;
    color: #515151;
    margin-bottom: 0px;
}
.wc-credit-card-form .wpg-paypal-cc-field:not(:last-child) {
    margin-bottom: 6px;
}
/* Responsive */
@media (max-width: 480px) {
    .wpg-paypal-cc-field.half-width {
        flex: 1 1 100%;
    }
}

.wc-block-components-express-payment__event-buttons {
    padding-bottom: 2px !important;
}

.entry-content ul.wc-block-components-express-payment__event-buttons, #left-area ul.wc-block-components-express-payment__event-buttons {
    padding: 0;
}
apple-pay-button {
    --apple-pay-button-height: 40px;
    --apple-pay-button-border-radius: 4px;
    --apple-pay-button-padding: 0px 0px;
    --apple-pay-button-box-sizing: border-box;
    --apple-pay-button-width: 100%;
}
/* Ensure error messages in WooCommerce Blocks checkout are readable */
.wc-block-components-notices .woocommerce-error {
    background-color: #fff6f6;
    border: 1px solid #e2401c;
    color: #e2401c;
    padding: 12px 15px;
    border-radius: 4px;
    list-style: none;
    margin: 0 0 20px 0;
}

.wc-block-components-notices .woocommerce-error li {
    color: #e2401c;
    font-size: 14px;
    margin: 0;
}

.wc-block-components-notices .woocommerce-NoticeGroup-checkout {
    background: none;
    border: none;
    padding: 0;
}

#wpppro_checkout .paypal-buttons-context-iframe {
    margin-top: 14px;
}
apple-pay-button {
    --apple-pay-button-border-radius: var(--button-radius, 4px);
    border-radius: var(--button-radius, 4px);
}
#payment .payment_methods li label[for=payment_method_ppcp_credit_card] img:first-of-type {
    display: inline !important;
    margin-left: 8px;
    height: 25px;
    margin-right: 0px;
}
#payment .payment_methods li label[for=payment_method_ppcp_credit_card] img {
    display: inline !important;
    margin-left: 2px;
    height: 25px;
    margin-right: 0px;
}
#payment .payment_methods li label[for=payment_method_ppcp_paypal] img {
    display: inline !important;
    margin-left: 8px;
    height: 25px;
    margin-right: 0px;
}
#radio-control-wc-payment-method-options-ppcp_credit_card__label img:first-of-type {
    height: 25px;
}
#radio-control-wc-payment-method-options-ppcp_paypal__label img {
    height: 25px;
}
.wpg-cvc-wrapper {
    position: relative;
    width: 100%;
}
.wpg-ppcp-card-cvv-icon {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    padding: 8px 8px 14px;
    z-index: 999;
    pointer-events: none;
}
.wpg-card-cvc-icon {
    height: 1.95em;
    width: 1.95em;
}
.woocommerce div.product form.cart, .woocommerce-page div.product form.cart, .woocommerce #content div.product form.cart, .woocommerce-page #content div.product form.cart {
    margin-bottom: 16px !important;
}
.wc_wpppro_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 750px;
}
.wc_wpppro_container p {
    flex: 1 1 100%;
    margin-top: 10px !important;
    text-align: center;
}
.wc_wpppro_container img {
    height: 56px;
    max-height: 77px !important;
    max-width: 150px;
    width: 110px;
}
.wpppro-google-pay-container iframe {
    min-height: 100% !important;
}
.payment_box.payment_method_ppcp_paypal {
    max-width: 100% !important;
    padding-top: 20px !important;
}
#wfacp_smart_buttons {
    display: block !important;
}
#wfacp_smart_buttons.wfacp-dynamic-checkout-loading .dynamic-checkout__skeleton {
    min-height: 45px;
}
:root{
    --wpppro-skel-height:39px;
    --wpppro-skel-radius:0px;
    --wpppro-skel-speed:1.25s;
    --wpppro-skel-fallback-bg:rgba(0,0,0,.06);
}
#wpppro_product, .wpppro-google-pay-container.product, .wpppro-apple-pay-container.product,
#wpppro_cart, .wpppro-google-pay-container.cart, .wpppro-apple-pay-container.cart {
    min-height: var(--button-height, 48px);
}
#wpppro_checkout_top, #wpppro_checkout_top_alternative,
.wpppro-google-pay-container.express_checkout, .wpppro-apple-pay-container.express_checkout {
    min-height: var(--button-height, 40px);
}
#wpppro_checkout, .wpppro-google-pay-container.checkout, .wpppro-apple-pay-container.checkout {
    min-height: var(--button-height, 48px);
}
#wpppro_product,
#wpppro_cart,
#wpppro_mini_cart,
#wpppro_checkout_top,
#wpppro_checkout,
#wpppro_checkout_top_alternative,
.wpppro-google-pay-container,
.wpppro-apple-pay-container {
    position: relative;
    z-index: 98;
    border-radius: var(--wpppro-skel-radius);
    border: 0;
    background-color: var(--wpppro-skel-fallback-bg);
    background: color-mix(in srgb, currentColor 5%, transparent);
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    min-width: 0;
    overflow: hidden;
}
#wpppro_product::after,
#wpppro_cart::after,
#wpppro_mini_cart::after,
#wpppro_checkout::after,
#wpppro_checkout_top::after,
#wpppro_checkout_top_alternative::after,
.wpppro-apple-pay-container::after,
.wpppro-google-pay-container::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        transparent,
        color-mix(in srgb, currentColor 5%, transparent) 50%,
        transparent
    );
    background-size: 200% 100%;
    animation: wpppro-skeleton-shimmer var(--wpppro-skel-speed) infinite linear;
    pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
    #wpppro_product::after,
    #wpppro_cart::after,
    #wpppro_mini_cart::after,
    #wpppro_checkout::after,
    #wpppro_checkout_top::after,
    #wpppro_checkout_top_alternative::after,
    .wpppro-apple-pay-container::after,
    .wpppro-google-pay-container::after {
        animation: none;
        background-position: 100% 0;
    }
}
@keyframes wpppro-skeleton-shimmer {
    0%   { background-position: 0% 0; }
    100% { background-position: 200% 0; }
}
.wpppro-bg-cleared,
.wpppro-bg-cleared::before,
.wpppro-bg-cleared::after {
    background: none !important;
    background-color: transparent !important;
}
[id^="zoid-paypal-card"] {
    min-height: 57px !important;
}
.wp-theme-hello-shoppable .wpppro-button-container {
    display: contents;
}
li.payment_method_ppcp_paypal > .payment_box:not(:has(*)),
li.payment_method_ppcp_paypal > .payment_box:empty {
    display: none !important;
}
.gpay-card-info-container {
    min-width: 0 !important;
}
.wpg_place_order_hide {
    display:none !important;
}
#express-payment-method-ppcp_paypal_top #wpppro_checkout_top.desktop , #express-payment-method-ppcp_paypal_top #wpppro_checkout_top_alternative.desktop,
#express-payment-method-ppcp_paypal_top .wpppro-google-pay-container.desktop, #express-payment-method-ppcp_paypal_top .wpppro-apple-pay-container.desktop {
    max-width: 240px;
    line-height: 0;
    margin-top: 4px;
}
#express-payment-method-ppcp_paypal_top {
    list-style: none !important;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
}
#express-payment-method-ppcp_paypal_top #wpppro_checkout_top.mobile, #express-payment-method-ppcp_paypal_top #wpppro_checkout_top_alternative.mobile, #express-payment-method-ppcp_paypal_top .wpppro-google-pay-container.mobile, #express-payment-method-ppcp_paypal_top .wpppro-apple-pay-container.mobile {
    margin: 0 auto;
    max-width: 480px;
    line-height: 0;
    margin-top: 10px;
}
#express-payment-method-ppcp_paypal_top {
  list-style: none !important;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
}
/* Cart block "Express Checkout" wrapper — drop the list bullet and center the
   button, mirroring the checkout-top express row. */
#express-payment-method-ppcp_paypal_cart {
    list-style: none !important;
    display: flex;
    justify-content: center;
    align-items: center;
}
.wp-theme-woodmart #wpppro_mini_cart.desktop.medium {
    margin: 10px 10px 14px 0px;
}
.wpppro_full_width {
    width: 100%;
}
/* mobile */
@media (max-width: 480px) {
  #express-payment-method-ppcp_paypal_top {
    margin: 0 auto;
    max-width: 480px;
    line-height: 0;
    width: 100%;
    display: block;
  }
}
/* ---------------------------------------------------------------------------
 * Plugin-specific additions (not part of the reference button CSS)
 * ------------------------------------------------------------------------- */

/* Sandbox / approved notices shown in the gateway payment area. */
.wpppro-paypal-sandbox-notice {
    padding: 8px 12px;
    margin: 0 0 10px;
    background: #fff8e5;
    border-left: 4px solid #ffb900;
    font-size: 13px;
    color: #555;
    line-height: 1.5;
}
.wpppro-paypal-approved-notice {
    padding: 8px 12px;
    margin: 0 0 10px;
    background: #edfaef;
    border-left: 4px solid #46b450;
    font-size: 13px;
    color: #2f7d32;
    line-height: 1.5;
}

/* Google Pay / Apple Pay inner buttons fill their container height. */
#wpppro-googlepay-button button,
#wpppro-googlepay-button .gpay-card-info-container {
    width: 100% !important;
    height: var(--button-height, 48px) !important;
    min-height: var(--button-height, 48px) !important;
}
#wpppro-applepay-button apple-pay-button {
    display: block;
    width: 100%;
    height: var(--button-height, 48px);
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: var(--button-height, 48px);
    cursor: pointer;
}
