.formulario .form-label {
    font-weight: 600;
    margin-bottom: 0.35rem;
}

.formulario .form-control {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 2.75rem;
    box-sizing: border-box;
}

/* RFC: ancho justo para 13 caracteres + un poco de aire (sin ocupar todo el form) */
.formulario .rfc-field-wrap:has(#id_rfcCliente),
.formulario .rfc-field-wrap:has(#id_rfc_cte) {
    width: fit-content;
    max-width: 100%;
}

.formulario #id_rfcCliente.rfc-field,
.formulario #id_rfc_cte.rfc-field {
    width: calc(13ch + 2.5rem);
    max-width: 100%;
    min-width: 13ch;
    box-sizing: border-box;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-family: ui-monospace, "Cascadia Mono", "Segoe UI Mono", Consolas, monospace;
}

/* Clave restaurante (1 carácter): compacta */
.formulario #id_cverest.rfc-field {
    width: calc(2ch + 1.75rem);
    max-width: 100%;
    text-transform: uppercase;
}

/* Evita que input[type=date] desborde la columna (p. ej. por width fijo legacy) */
.formulario input[type="date"],
.formulario .fecha-field,
.formulario .fecha-field .form-control {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    display: block;
    box-sizing: border-box;
}

.formulario .btn {
    min-height: 2.75rem;
}

.toast {
    max-width: min(400px, calc(100vw - 1.5rem)) !important;
    width: 100% !important;
}

@media (max-width: 575.98px) {
    .formulario .btn {
        width: 100%;
    }
}
