.kraft-payment-methods { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.kraft-payment-methods img { width: auto; height: 2.4rem; }

.quantity { border-radius: .45rem; border: 1px solid var(--clr-border); display: inline-grid; grid-template-columns: 4rem 4.8rem 4rem; 
    button { --p: 0; --bg-clr: transparent; --clr: var(--clr-text); --hover-bg-clr: var(--clr-dark); --hover-clr: #fff;
        i { pointer-events: none; }

        &.minus { border-top-right-radius: 0; border-bottom-right-radius: 0; }
        &.plus { border-top-left-radius: 0; border-bottom-left-radius: 0; }  
    }

    input { border-radius: 0; border: none; border-left: 1px solid var(--clr-border); border-right: 1px solid var(--clr-border); outline: none; text-align: center; -webkit-appearance: none;
        &::-webkit-outer-spin-button, &::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
    }
}

/* Woocommerce Messages
--------------------------------------------- */
.woocommerce-message, .woocommerce-error, .woocommerce-info { font-size: clamp(1.4rem, 1vw + 1rem, 1.6rem); --bg-clr: var(--clr-success); --clr: #fff; display: block; width: 100%; padding: 1.6rem 2rem; border-radius: .45rem; background: var(--bg-clr); color: var(--clr); }
.woocommerce-message *, .woocommerce-error *, .woocommerce-info * { color: inherit; list-style: none; }
.woocommerce-error { --bg-clr: var(--clr-danger); }
.woocommerce-info { --bg-clr: var(--clr-info); }

/* Woocommerce Forms
--------------------------------------------- */
form .form-row { margin: 0; }
form .form-row label:not(.screen-reader-text),
form .form-row [type="text"],
form .form-row [type="password"],
form .form-row [type="tel"],
form .form-row [type="email"],
form .form-row .woocommerce-input-wrapper,
form .password-input { display: block; width: 100%; font-size: clamp(1.4rem, 1vw + 1rem, 1.6rem); }

form fieldset { border: none; background-color: var(--clr-light); padding: 2rem; }

form .woocommerce-billing-fields__field-wrapper,
form .woocommerce-shipping-fields__field-wrapper, 
form .woocommerce-address-fields__field-wrapper,
form.woocommerce-EditAccountForm,
form fieldset { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; margin-bottom: 1rem; }

form label .required { text-decoration: none; }

textarea { width: 100%; }

/* Woocommerce Payment methods
--------------------------------------------- */
ul.payment_methods { margin: 0 0 2rem 0; padding: 0; list-style: none; display: grid; grid-template-columns: minmax(0, 1fr); gap: .5rem; 
    li { display: grid; column-gap: 1rem; 
        label { display: flex!important; align-items: center; column-gap: 1rem; cursor: pointer; background-color: var(--clr-dark-10); border-radius: .45rem; font-weight: 500; line-height: 1.2; width: 100%; text-align: left; padding: 1.4rem 1.8rem; min-height: 5.2rem; 
            img { margin-left: auto; }
            &::before { content: ''; display: inline-block; width: 2rem; height: 2rem; min-width: 2rem; border-radius: 50%; border: 1px solid var(--clr-dark-20); }
        }
        input { opacity: 0; position: absolute; left: -9999rem; 
            &:checked + label::before { border-color: var(--clr-dark); background-color: var(--clr-dark); outline: .2rem solid #fff; outline-offset: -.4rem; }
        }

        .payment_box { margin-top: .5rem; border-radius: .45rem; font-size: 1.4rem; padding: 1.2rem; border: 1px solid var(--clr-dark-20); }
    }

}