/* ═══════════════════════════════════════════════════════════════════════
   V-Payments — Checkout card forms (Cartão, Pix+Cartão, Boleto+Cartão,
   2 Cartões). Keeps the fields inside the payment box container regardless
   of the page builder (CartFlows, Elementor, theme checkout).
   ═══════════════════════════════════════════════════════════════════════ */

.vp-cc-form,
.vp-pix-card-form,
.vp-billet-card-form,
.vp-two-cards-form {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}

.vp-cc-form *,
.vp-pix-card-form *,
.vp-billet-card-form *,
.vp-two-cards-form * {
    box-sizing: border-box;
    min-width: 0;
}

.vp-cc-form .form-row,
.vp-pix-card-form .form-row,
.vp-billet-card-form .form-row,
.vp-two-cards-form .form-row {
    float: none;
    width: 100%;
    margin: 0 0 12px;
    padding: 0;
}

.vp-cc-form label,
.vp-pix-card-form label,
.vp-billet-card-form label,
.vp-two-cards-form label {
    display: block;
    margin-bottom: 4px;
}

.vp-cc-form input[type="text"],
.vp-cc-form select,
.vp-pix-card-form input[type="text"],
.vp-pix-card-form select,
.vp-billet-card-form input[type="text"],
.vp-billet-card-form select,
.vp-two-cards-form input[type="text"],
.vp-two-cards-form select {
    display: block;
    width: 100% !important;
    max-width: 100%;
}

.vp-cc-form .vp-field-hint,
.vp-pix-card-form .vp-field-hint,
.vp-billet-card-form .vp-field-hint,
.vp-two-cards-form .vp-field-hint {
    display: block;
    margin-top: 4px;
    font-size: 0.8125em;
    opacity: 0.75;
}

.vp-two-cards-form fieldset {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}
