/**
 * Estilos propios de la Calculadora de Renta Corta (M7). Tokens de color de
 * blocks/shared/cin-core.css; componentes base (cards, inputs, tooltip,
 * chart) de la hoja compartida de la TIR.
 */
.cin-corta .cin-paso {
	font-size: 11px; letter-spacing: .08em; text-transform: uppercase;
	color: var(--cin-muted); margin: 22px 0 8px;
}
.cin-corta .cin-res { display: flex; flex-direction: column; }
.cin-corta .cin-rrow {
	display: grid; grid-template-columns: 1fr 170px; gap: 8px; align-items: center;
	padding: 9px 2px; border-bottom: 1px solid var(--cin-border);
}
.cin-corta .cin-rrow:last-child { border-bottom: none; }
.cin-corta .cin-rlabel { font-size: 13px; color: var(--cin-text2); display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.cin-corta .cin-rval { font-size: 14px; font-weight: 600; text-align: right; }
.cin-corta .cin-neg { color: var(--cin-danger); }
.cin-corta .cin-nota-aprox {
	font-size: 12.5px; color: var(--cin-text2); line-height: 1.5;
	background: var(--cin-s1); border-left: 3px solid var(--cin-accent);
	border-radius: var(--cin-radius); padding: 9px 12px; margin: 10px 0 0;
}
.cin-corta .cin-total {
	background: var(--cin-bg-accent); border: 1px solid var(--cin-accent);
	border-radius: 10px; padding: 14px 16px; margin-top: 14px; line-height: 1.55;
	display: flex; justify-content: space-between; align-items: center; gap: 12px;
}
.cin-corta .cin-total b { font-size: 22px; }
.cin-corta .cin-recomendacion {
	background: var(--cin-hl-bg); border: 1px solid var(--cin-hl-border);
	border-radius: var(--cin-radius); padding: 10px 12px; margin: 10px 0 0;
	font-size: 13px; line-height: 1.5;
}
.cin-corta .cin-aviso-tipo { color: var(--cin-danger); }
.cin-corta select {
	font-family: inherit; font-size: 13.5px; color: var(--cin-text);
	background: var(--cin-s2); border: 1px solid var(--cin-border-strong);
	border-radius: var(--cin-radius); padding: 8px 10px; width: 100%;
}
.cin-corta .cin-unidad { font-size: 12.5px; color: var(--cin-muted); }

/* Camas por alcoba: una fila por alcoba, responsive. */
.cin-corta .cin-camas {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 10px;
}
.cin-corta .cin-cama-fila { display: flex; align-items: center; gap: 8px; }
.cin-corta .cin-cama-lbl { font-size: 12.5px; color: var(--cin-text2); min-width: 110px; }

/* Fila de checkboxes de configuración. */
.cin-corta .cin-check-fila {
	margin-top: 14px; padding: 10px 12px; background: var(--cin-s1);
	border-radius: var(--cin-radius); display: flex; flex-direction: column; gap: 8px;
}
.cin-corta .cin-chk-simple { font-size: 13px; cursor: pointer; }
.cin-corta .cin-chk-quien { font-size: 11.5px; color: var(--cin-muted); }

/* Toggle + su campo en la misma línea (patrón de la calculadora de ganancia). */
.cin-corta .cin-fila-modo { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.cin-corta .cin-fila-modo input { width: 110px; }
/* .cin-field--ancho vive en la hoja base desde el 2026-08-10. */

/* Cajas de totales de la dotación. */
.cin-corta .cin-dot-tot {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 10px; margin-bottom: 14px;
}
.cin-corta .cin-dot-caja {
	background: var(--cin-hl-bg); border: 1px solid var(--cin-hl-border);
	border-radius: var(--cin-radius); padding: 10px 12px; display: flex; flex-direction: column;
}
.cin-corta .cin-dot-lbl { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--cin-muted); }
.cin-corta .cin-dot-caja b { font-size: 19px; color: var(--cin-text); margin: 2px 0; }
.cin-corta .cin-dot-sub { font-size: 11.5px; color: var(--cin-text2); }

/* Tabla editable de dotación. */
.cin-corta .cin-dot-head, .cin-corta .cin-dot-fila {
	display: grid; grid-template-columns: 1fr 76px 116px 116px 34px;
	gap: 8px; align-items: center;
}
.cin-corta .cin-dot-head {
	font-size: 11px; text-transform: uppercase; letter-spacing: .05em;
	color: var(--cin-muted); padding: 0 2px 6px; border-bottom: 1px solid var(--cin-border);
}
.cin-corta .cin-dot-head span:nth-child(n+2) { text-align: right; }
.cin-corta .cin-dot-fila { padding: 7px 2px; border-bottom: 1px solid var(--cin-border); }
.cin-corta .cin-dot-nombre { font-size: 13px; color: var(--cin-text); display: flex; flex-direction: column; }
.cin-corta .cin-dot-cat { font-size: 11px; color: var(--cin-muted); }
.cin-corta .cin-dot-fila input { text-align: right; padding: 5px 7px; font-size: 12.5px; }
.cin-corta .cin-dot-sub2 { font-size: 13px; font-weight: 600; text-align: right; }
.cin-corta .cin-dot-x {
	background: none; border: none; color: var(--cin-muted); cursor: pointer;
	font-size: 14px; padding: 2px 4px; border-radius: 4px;
}
.cin-corta .cin-dot-x:hover { color: var(--cin-danger); background: var(--cin-s1); }
.cin-corta .cin-btn {
	font-family: inherit; font-size: 12.5px; color: var(--cin-text2);
	background: var(--cin-s2); border: 1px solid var(--cin-border-strong);
	border-radius: var(--cin-radius); padding: 7px 12px; cursor: pointer;
}
.cin-corta .cin-btn:hover { border-color: var(--cin-accent); color: var(--cin-link); }

/* Fixes heredados: segmento abrazado, placa (i) pegada, etiquetas completas. */
.cin-corta .cin-seg {
	display: inline-flex; width: fit-content; max-width: 100%;
	align-self: flex-start; height: auto; overflow: visible; flex-wrap: wrap;
}
/* Segmentos que deben quedar en UNA SOLA LÍNEA (gama, clima, modo de
   mercado): sus opciones son cortas y partidas se ven desordenadas.
   Van en un campo a lo ancho de la card para que quepan (2026-08-09). */
.cin-corta .cin-seg--linea { flex-wrap: nowrap; }
.cin-corta .cin-seg--linea button { white-space: nowrap; flex: 0 0 auto; }
/* Placa (i) pegada a su etiqueta; el crecer-con-la-etiqueta subió a la hoja
   base el 2026-08-10. */
.cin-corta .cin-flabel-row { justify-content: flex-start; gap: 6px; }
.cin-corta .cin-info {
	width: 18px; height: 18px; min-width: 18px; border-radius: 50%; position: relative;
	display: inline-flex; align-items: center; justify-content: center; cursor: help;
	background: var(--cin-bg-accent); color: var(--cin-link);
	font-size: 11px; font-weight: 700; font-style: normal;
}
.cin-corta .cin-info .cin-tip { display: none; }
/* Acciones de la dotación ARRIBA de la tabla (2026-08-09): abajo no eran
   intuitivas — la lista es larga y quedaban fuera de vista. */
.cin-corta .cin-dot-acciones { display: flex; gap: 8px; flex-wrap: wrap; margin: 10px 0; }

/* Banda de incertidumbre de la estadía: se muestra, no se esconde. */
.cin-corta .cin-banda {
	background: var(--cin-s1); border-radius: var(--cin-radius);
	padding: 8px 10px; margin-top: 8px; line-height: 1.5;
}
.cin-corta .cin-premium-nota {
	font-size: 13px; color: var(--cin-text2); background: var(--cin-s1);
	border-radius: var(--cin-radius); padding: 12px 14px; margin: 0; line-height: 1.55;
}
.cin-corta .cin-premium-nota a { color: var(--cin-link); font-weight: 600; }

@media (max-width: 620px) {
	.cin-corta .cin-rrow { grid-template-columns: 1fr auto; }
	.cin-corta .cin-dot-head { display: none; }
	.cin-corta .cin-dot-fila {
		grid-template-columns: 1fr 64px 100px; grid-template-areas:
			"nombre cant precio" "sub sub del";
	}
	.cin-corta .cin-dot-nombre { grid-area: nombre; }
	.cin-corta .cin-dot-sub2 { grid-area: sub; text-align: left; }
	.cin-corta .cin-dot-x { grid-area: del; justify-self: end; }
}
