.payment-form {
    width: min(100% - 24px, 400px);
    border-radius: 20px;
    padding: 24px;
    background: #0c0c0c54;
    backdrop-filter: blur(10px);
    color: #fff;
    border: 2px solid #ffffff1a;
    box-shadow: 0 0 70px 20px #00000033;
    .wrapper {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 15px;
        position: relative;
        #apple-pay-button {
            height: 48px;
            width: 100%;
            display: inline-block;
            -webkit-appearance: -apple-pay-button;
            -apple-pay-button-type: plain;
            -apple-pay-button-style: #fff;
            button#apple-pay-button {
                background: #fff;
                color: #000;
                border: 1px solid rgba(0, 0, 0, 0.1);
                justify-content: center;
                line-height: 18px;
                padding: 13px;
            }
        }
        #google-pay-button {
            height: 48px;
            width: 100%;
        }
    }
    input {
        width: 100%;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
        background-color: transparent;
        color: #fff;
    }
    button {
        width: 100%;
        height: 48px;
        background-color: #fff;
        color: #000;
        border: none;
        border-radius: 8px;
        cursor: pointer;
        transition: all 300ms ease-in-out;
        margin: 0;
        &:hover {
            background-color: rgba(0, 0, 0, 0.8);
            color: #fff;
        }
    }
    .border {
        width: 100%;
        margin: 10px 0;
        span {
            position: relative;
            top: -10px;
            background: transparent;
            padding: 0 10px;
            width: 100%;
            display: block;
            text-align: center;

            &::before {
                content: "";
                position: absolute;

                background: rgba(255, 255, 255, 0.1);
                height: 1px;
                width: calc(50% - 2em - 10px);
                left: 54%;
                top: 50%;
                transform: translateY(-50%);
            }
            &::after {
                content: "";
                position: absolute;
                background: rgba(255, 255, 255, 0.1);
                height: 1px;
                width: calc(50% - 2em - 10px);
                right: 54%;
                top: 50%;
                transform: translateY(-50%);
            }
        }
    }
}
#card-container {
    width: 100%;
}
#card-number-wrapper {
    display: flex;
}

#ach-message {
    width: 100%;
    margin-top: 11px;
    margin-bottom: 11px;
    font-size: 14px;
    display: inline-block;
    color: #ff5555;
}

#ach-message:empty:before,
#message:empty:before {
    content: "\200b";
}

#payment-flow-message {
    width: 100%;
    margin-top: 11px;
}

#payment-flow-message.error {
    color: #ff5555;
    font-size: 12px;
    line-height: 14px;
}

#payment-flow-message.success {
    color: #198754;
}
