.commitment-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    padding: 15px;
    border: 1px solid #f1d6b8;
    border-radius: 12px;
    background: #fffaf4;
}

.commitment-row label {
    min-width: 0;
}

.sale-attachment-field {
    padding: 16px;
    border: 1px dashed #ee8b23;
    border-radius: 12px;
    background: #fffaf4;
}

.sale-attachment-field input[type="file"] {
    padding: 9px;
    background: #fff;
}

.sale-attachment-field small {
    color: #657087;
    font-weight: 500;
}

.sale-attachment-field .required-mark {
    color: #b42318;
    font-weight: 800;
}

.sale-attachment-field:focus-within {
    border-color: #cc7500;
    box-shadow: 0 0 0 4px rgba(238, 139, 35, .14);
}

.pending-payment-proof {
    display: block;
    margin: 16px 0;
}

@media (max-width: 900px) {
    .commitment-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .commitment-row {
        grid-template-columns: 1fr;
    }
}

/* V7.5 · pares departamento/ciudad */
#secondHolder:not(.hidden){animation:tyc-section-in .22s ease-out}@keyframes tyc-section-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}


/* V7.6 · distribución de titulares por filas */
.person-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:end}
.person-grid label{min-width:0}
.person-cedula{grid-column:span 3}
.person-name{grid-column:span 4}
.person-birth{grid-column:span 3}
.person-age{grid-column:span 2}
.person-civil,.person-job,.person-department,.person-city{grid-column:span 3}
.person-address{grid-column:span 3}
.person-phone{grid-column:span 3}
.person-phone-alt{grid-column:span 2}
.person-email{grid-column:span 4}
.person-age input{max-width:130px}
@media(max-width:900px){
  .person-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .person-cedula,.person-name,.person-birth,.person-age,.person-civil,.person-job,.person-department,.person-city,.person-address,.person-phone,.person-phone-alt,.person-email{grid-column:span 1}
  .person-age input{max-width:none}
}
@media(max-width:560px){.person-grid{grid-template-columns:1fr}}

/* V7.8 · Campos adicionales de la venta */
.sale-additional-card{margin-top:22px;padding:18px;border:1px solid #dfe5ec;border-radius:14px;background:#f8fafc}.sale-additional-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.sale-additional-heading span{display:block;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#6c7788}.sale-additional-heading h3{margin:2px 0 0;font-size:1.05rem}.sale-additional-heading small{color:#6f7b8d;text-align:right}.sale-additional-grid{align-items:end}.sale-additional-grid .pending-field input{background:#edf7f0;border-color:#bedec8;font-weight:800;color:#1f6b3c}.currency-note{display:inline-flex;margin-left:5px;padding:2px 6px;border-radius:999px;background:#edf2ff;color:#3555a5;font-size:.68rem;font-weight:800}.mt-sale-fields{margin-top:18px}@media(max-width:900px){.sale-additional-heading{align-items:flex-start;flex-direction:column}.sale-additional-heading small{text-align:left}.sale-additional-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:620px){.sale-additional-grid{grid-template-columns:1fr!important}}
