/* Apartados 7) Responsabilidad civil y 8) Fraccionamiento (rc.js, fraccionamiento.js) */
.rcf-cabecera { justify-content: center; gap: 10px clamp(8px, 3vw, 28px); }
.rcf-zona > .rcf-cabecera, .apartado > fieldset.panel .rcf-cabecera:has(.rcf-masmenos) { flex-wrap: nowrap; }
.rcf-masmenos { min-width: 40px; max-width: 160px; flex: 0 1 140px; }
.rcf-zona { min-width: 0; }
.rcf-zona > fieldset.panel { margin-bottom: 10px; }

/* Bloqueado: el clic llega al envoltorio y avisa (mostrar_advertencia) */
.rcf-bloq { display: inline-flex; min-width: 0; max-width: 100%; }
.rcf-bloq.bloqueado { cursor: not-allowed; }
.rcf-bloq.bloqueado > * { pointer-events: none; }
.rcf-bloq.bloqueado .casilla { color: var(--desactivado); }
.rcf-clic { cursor: not-allowed; }

/* Responsabilidad civil: lista a la izquierda, campos a la derecha */
.rcf-rc { display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: flex-start; }
.rcf-izq { display: flex; flex-direction: column; gap: 6px; flex: 0 1 220px; min-width: 150px; }
.rcf-lista { width: 100%; }
.rcf-campos { flex: 1 1 320px; min-width: 0; grid-template-columns: auto minmax(0, 1fr); }
.rcf-campos > .rcf-bloq, .rcf-ancho { width: 100%; max-width: 420px; }
.rcf-ancho > .rcf-bloq { width: 100%; }
.rcf-fila { gap: 6px 10px; }
input.campo.rcf-dni { width: 9.5em; }
input.campo.rcf-importe { width: 7.5em; }
.rcf-concepto { display: flex; gap: 4px; width: 100%; min-width: 0; }
.rcf-concepto > input.campo { flex: 1 1 auto; }
.rcf-formulas { padding: 4px 8px; flex: 0 0 auto; }

/* Fraccionamiento */
.rcf-selector { width: 22em; max-width: 100%; }
.rcf-frac { display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: flex-start; }
.rcf-col { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.rcf-frac > .rcf-col:first-child { flex: 0 1 220px; min-width: 150px; }
.rcf-frac > .rcf-col:nth-child(2) { flex: 0 1 180px; }
.rcf-frac > .rcf-col:nth-child(2) select.campo { width: 100%; }
.rcf-mot { flex: 1 1 220px; }
.rcf-mot.abajo { margin-top: 10px; }
.rcf-mot .rcf-bloq:has(input.campo), .rcf-mot input.campo { width: 100%; }
.rcf-mot .rcf-bloq { align-self: flex-start; }
input.campo.rcf-meses { width: 5em; text-align: center; }
.rcf-firme { display: flex; justify-content: flex-end; margin-top: 8px; }
