/*[v-cloak] { display: none; }*/
/*.form-wrapper{!*background:var(--color-background-primary);*!border:0.5px solid !*var(--color-border-tertiary)*!;border-radius:12px;padding:2rem}*/
.section-header{display:flex;align-items:center;gap:10px;margin-bottom:1.25rem}
.section-header .badge-num{width:28px;height:28px;border-radius:50%;background:#1D9E75;color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0}
.section-header h2{font-size:19px;font-weight:600;margin:0;/*color:var(--color-text-primary);*/letter-spacing:.01em}
.section-divider{border-top:0.5px solid /*var(--color-border-tertiary)*/;margin:1.75rem 0}
.form-label{font-size:16px;font-weight:500;/*color:var(--color-text-secondary);*/margin-bottom:4px}
.form-control,.form-select{font-size:16px;border:0.5px solid /*var(--color-border-secondary)*/;border-radius:8px;/*background:var(--color-background-primary);color:var(--color-text-primary);*/padding:.45rem .75rem;transition:border-color .15s,box-shadow .15s}
.form-control:focus,.form-select:focus{border-color:#1D9E75;box-shadow:0 0 0 3px rgba(29,158,117,.15);outline:none;/*background:var(--color-background-primary)*/}
/*.form-control::placeholder{color:var(--color-text-tertiary)}*/
/*.form-control.rfc-field{font-family:'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em}*/
/*.form-control.cp-field{font-family:'DM Mono',monospace;letter-spacing:.08em}*/
.btn-guardar{background:#1D9E75;color:#fff;border:none;border-radius:8px;padding:.55rem 2rem;font-size:16px;font-weight:600;transition:background .15s,transform .1s}
.btn-guardar:hover{background:#0F6E56;color:#fff}
.btn-guardar:active{transform:scale(.98)}
.btn-guardar:disabled{background:#a8d5c5;color:#fff;cursor:not-allowed;transform:none;}
.btn-cancelar{background:transparent;/*color:var(--color-text-secondary);*/border:0.5px solid /*var(--color-border-secondary)*/;border-radius:8px;padding:.55rem 1.5rem;font-size:16px;font-weight:500;transition:background .15s}
.btn-cancelar:hover{/*background:var(--color-background-secondary);*//*color:var(--color-text-primary*/)}
.form-wrapper h1{font-size:22px;font-weight:600;/*color:var(--color-text-primary);*/margin:0}
.form-wrapper .subtitle{font-size:18px;/*color:var(--color-text-secondary);*/margin-top:3px}
.top-accent{width:40px;height:4px;background:#1D9E75;border-radius:2px;margin-bottom:1rem}
label.required::after {
    content: " *";
    color: red;
}

.form-label{font-size:16px;font-weight:500;color:var(--color-text-secondary);margin-bottom:6px;display:block}

.yn-group{display:inline-flex;border:0.5px solid /*var(--color-border-secondary)*/;border-radius:8px;overflow:hidden}
.yn-group input[type="radio"]{display:none}
.yn-group label{padding:.45rem 1.25rem;font-size:16px;font-weight:500;/*color:var(--color-text-secondary);*/cursor:pointer;/*background:var(--color-background-primary);*/transition:background .15s,color .15s;line-height:1;user-select:none}
.yn-group label:first-of-type{border-right:0.5px solid /*var(--color-border-secondary)*/}
/*.yn-group label:hover{background:var(--color-background-secondary)}*/
.yn-group input[value="si"]:checked ~ label[for$="-si"],
.yn-group input#yn0-si:checked ~ label[for="yn0-si"],
.yn-group input#yn1-si:checked ~ label[for="yn1-si"],
.yn-group input#yn2-si:checked ~ label[for="yn2-si"],
.yn-group input#yn3-si:checked ~ label[for="yn3-si"]{background: #7eb4aa;color:#0F6E56;font-weight:600}
.yn-group input#yn0-no:checked ~ label[for="yn0-no"],
.yn-group input#yn1-no:checked ~ label[for="yn1-no"],
.yn-group input#yn2-no:checked ~ label[for="yn2-no"],
.yn-group input#yn3-no:checked ~ label[for="yn3-no"]{background: #dab6b6;color:#A32D2D;font-weight:600}


.btn-agregar {
    display: inline-flex; align-items: center; gap: 8px;
    padding: .45rem 1.25rem;
    font-size: 15px; font-weight: 500;
    color: #0F6E56;
    background: transparent;
    border: 0.5px solid #1D9E75;
    border-radius: 8px;
    cursor: pointer;
    transition: background .15s;
}
.btn-agregar:hover { background: #E1F5EE; }
.btn-agregar .icon {
    width: 18px; height: 18px; border-radius: 50%;
    background: #1D9E75; color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px;
}

.btn-eliminar {
    display: inline-flex; align-items: center; gap: 8px;
    padding: .45rem 1.25rem;
    font-size: 15px; font-weight: 500;
    color: #A32D2D;
    background: transparent;
    border: 0.5px solid #E24B4A;
    border-radius: 8px;
    cursor: pointer;
    transition: background .15s;
}

.btn-eliminar:hover { background: #FCEBEB; }
.btn-eliminar .icon {
    width: 18px; height: 18px; border-radius: 50%;
    background: #E24B4A; color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px;
}

.btn-imprimir {
    display: inline-flex; align-items: center; gap: 8px;
    padding: .45rem 1.25rem;
    font-size: 15px; font-weight: 500;
    color: #5F5E5A;
    background: transparent;
    border: 0.5px solid #B4B2A9;
    border-radius: 8px;
    cursor: pointer;
    transition: background .15s, border-color .15s;
}
.btn-imprimir:hover {
    background: #F1EFE8;
    border-color: #B4B2A9;
}


/* Paso 1 y Paso 3 */
.form-wrapper p,
.form-wrapper ul li { font-size: 17px; }
.form-wrapper h2 { font-size: 20px; }

/* Modal Aviso de Privacidad */
.modal-body p { font-size: 16px; }

fieldset {
    border: 1px solid #ccc;
    padding: 15px;
    margin-bottom: 20px;
}
legend {
    font-weight: bold;
}

.separador {
    display: flex;
    align-items: center;
    text-align: center;
    margin: 20px 0;
}

.separador::before,
.separador::after {
    content: '';
    flex: 1;
    border-bottom: 1px solid #ccc;
}

.separador span {
    padding: 0 10px;
    font-weight: bold;
    color: #555;
}



/*ESTILOS FORMATO PDF*/
body { font-family: 'Times New Roman', Times, serif; font-size: 14px; background: #fff; color: #000; }
.form-page { max-width: 820px; margin: 0 auto; padding: 40px 50px; border: 1px solid #ccc; }
.logo-area img { height: 60px; }
.header-org { text-align: right; line-height: 1.2; font-size: 12px; font-weight: bold; text-transform: uppercase; }
.table-form td, .table-form th { border: 1px solid #000; padding: 6px 10px; vertical-align: middle; }
.table-form { border-collapse: collapse; width: 100%; margin-bottom: 0; }
.section-title { text-align: center; font-weight: bold; margin: 18px 0 8px; }
.transparency-note { font-weight: bold; font-size: 13px; margin: 12px 0; }
.folio-box { border: 1px solid #000; padding: 4px 12px; display: inline-block; min-width: 200px; }
.checkbox-cell { display: flex; align-items: center; gap: 8px; }
.checkbox-sq { display: inline-block; width: 18px; height: 18px; border: 1.5px solid #000; vertical-align: middle; }
.footer-address { font-size: 11px; text-align: center; margin-top: 30px; border-top: 1px solid #ccc; padding-top: 8px; }
.signature-line { border-top: 1px solid #000; width: 320px; margin: 60px auto 4px; }
.page-break { page-break-before: always; margin-top: 50px; }
