/* Lomito Inversionista - Listas de revisión interactivas ([lomito_lista]). */
.lmt-chk {
	--lmt-chk-verde: #047857;
	margin: 32px 0;
	padding: 22px;
	background: var(--lmt-surface-2);
	border: 1px solid var(--lmt-border);
	border-radius: var(--lmt-radius-lg, 22px);
}

html[data-lomito-theme="dark"] .lmt-chk { --lmt-chk-verde: #6ee7b7; }

.lmt-chk__cab { margin-bottom: 16px; }

.lmt-chk__titulo {
	margin: 0 0 6px;
	font-family: var(--lmt-font-display);
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--lmt-text);
}

.lmt-chk__intro { margin: 0 0 14px; color: var(--lmt-text-muted); font-size: 0.95rem; }

.lmt-chk__total { display: flex; align-items: center; gap: 12px; }

.lmt-chk__barra {
	flex: 1 1 auto;
	height: 8px;
	background: var(--lmt-border);
	border-radius: 999px;
	overflow: hidden;
}

.lmt-chk__barra span {
	display: block;
	height: 100%;
	background: var(--lmt-chk-verde);
	border-radius: 999px;
}

@media (prefers-reduced-motion: no-preference) {
	.lmt-chk__barra span { transition: width 0.3s ease; }
}

.lmt-chk__cuenta {
	margin: 0;
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--lmt-text-muted);
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.lmt-chk__cuenta strong { color: var(--lmt-text); }

.lmt-chk__grupo {
	margin: 0 0 12px;
	background: var(--lmt-surface);
	border: 1px solid var(--lmt-border);
	border-radius: 16px;
	overflow: hidden;
}

.lmt-chk__sum {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	cursor: pointer;
	list-style: none;
	font-weight: 700;
	color: var(--lmt-text);
}

.lmt-chk__sum::-webkit-details-marker { display: none; }

.lmt-chk__sum::after {
	content: "";
	flex: 0 0 auto;
	width: 9px;
	height: 9px;
	margin-left: 4px;
	border-right: 2px solid var(--lmt-text-muted);
	border-bottom: 2px solid var(--lmt-text-muted);
	transform: rotate(45deg) translate(-2px, -2px);
}

.lmt-chk__grupo[open] > .lmt-chk__sum::after { transform: rotate(-135deg) translate(-2px, -2px); }

@media (prefers-reduced-motion: no-preference) {
	.lmt-chk__sum::after { transition: transform 0.2s ease; }
}

.lmt-chk__ico {
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: var(--lmt-accent-soft);
	color: var(--lmt-chk-verde);
}

.lmt-chk__gtit { flex: 1 1 auto; min-width: 0; }

.lmt-chk__gcuenta {
	flex: 0 0 auto;
	padding: 2px 10px;
	border-radius: 999px;
	background: var(--lmt-surface-2);
	border: 1px solid var(--lmt-border);
	font-size: 0.78rem;
	font-weight: 700;
	color: var(--lmt-text-muted);
	font-variant-numeric: tabular-nums;
}

.lmt-chk__gcuenta.is-completo {
	background: var(--lmt-chk-verde);
	border-color: var(--lmt-chk-verde);
	color: var(--lmt-bg);
}

.lmt-prose .lmt-chk__lista,
.lmt-chk__lista { list-style: none; margin: 0; padding: 0; }

.lmt-prose .lmt-chk__punto,
.lmt-chk__punto {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0;
	padding: 14px 16px;
	border-top: 1px solid var(--lmt-border);
}

.lmt-chk__caja {
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	margin: 2px 0 0;
	accent-color: var(--lmt-chk-verde);
	cursor: pointer;
}

.lmt-chk__punto label { flex: 1 1 auto; min-width: 0; cursor: pointer; }

.lmt-chk__ptit { display: block; font-weight: 700; color: var(--lmt-text); line-height: 1.35; }
.lmt-chk__ptxt { display: block; margin-top: 2px; font-size: 0.92rem; color: var(--lmt-text-muted); line-height: 1.5; }

.lmt-chk__pista {
	display: inline-block;
	margin-top: 8px;
	padding: 4px 10px;
	border-radius: 12px;
	background: var(--lmt-accent-soft);
	font-size: 0.82rem;
	color: var(--lmt-text);
	line-height: 1.4;
}

.lmt-chk__num {
	flex: 0 0 auto;
	font-size: 0.72rem;
	font-weight: 700;
	color: var(--lmt-text-muted);
	letter-spacing: 0.04em;
}

.lmt-chk__punto.is-hecho .lmt-chk__ptit { text-decoration: line-through; text-decoration-color: var(--lmt-chk-verde); }

.lmt-chk__acciones { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 18px; }

.lmt-chk__reinicia {
	padding: 10px 6px;
	background: none;
	border: 0;
	font: inherit;
	font-size: 0.9rem;
	color: var(--lmt-text-muted);
	text-decoration: underline;
	cursor: pointer;
}

.lmt-chk__nota { margin: 10px 0 0; font-size: 0.82rem; color: var(--lmt-text-muted); }
.lmt-chk__pie-pdf { display: none; }

@media (max-width: 600px) {
	.lmt-chk { padding: 16px 12px; }
	.lmt-chk__sum { padding: 12px; gap: 10px; }
	.lmt-chk__punto { padding: 12px; }
	.lmt-chk__num { display: none; }
}

/* PDF: solo la lista, con todo abierto y en blanco y negro legible. */
@media screen {
	.lmt-chk-copia { display: none; }
}

@media print {
	body.lmt-chk-imprimiendo > *:not(.lmt-chk-copia) { display: none !important; }
	body.lmt-chk-imprimiendo { background: #fff !important; }
	.lmt-chk-copia .lmt-chk--imprimir { margin: 0; padding: 0; background: #fff; border: 0; color: #0b1b2b; }
	.lmt-chk-copia .lmt-chk--imprimir::before {
		content: "Lomito Inversionista · " attr(data-pdf) " · " attr(data-fecha);
		display: block;
		margin-bottom: 10px;
		font-size: 10pt;
		font-weight: 700;
		color: #047857;
	}
	.lmt-chk--imprimir .lmt-chk__acciones,
	.lmt-chk--imprimir .lmt-chk__nota,
	.lmt-chk--imprimir .lmt-chk__sum::after { display: none !important; }
	.lmt-chk--imprimir .lmt-chk__pie-pdf { display: block; margin-top: 12px; font-size: 9pt; color: #55636f; }
	.lmt-chk--imprimir .lmt-chk__grupo { break-inside: avoid; border-color: #cfd8d3; background: #fff; }
	.lmt-chk--imprimir .lmt-chk__punto { break-inside: avoid; padding: 8px 12px; }
	.lmt-chk--imprimir .lmt-chk__pista { background: #eef7f2; color: #0b1b2b; }
	.lmt-chk--imprimir .lmt-chk__ptit,
	.lmt-chk--imprimir .lmt-chk__titulo,
	.lmt-chk--imprimir .lmt-chk__sum { color: #0b1b2b; }
	.lmt-chk--imprimir .lmt-chk__ptxt,
	.lmt-chk--imprimir .lmt-chk__cuenta { color: #3d4b55; }
	.lmt-chk--imprimir .lmt-chk__barra span,
	.lmt-chk--imprimir .lmt-chk__gcuenta.is-completo { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}

/* =========================================================================
 * Modo asistente (modo="asistente"): un paso por grupo. Las reglas solo
 * aplican con .is-asistente, que pone el JavaScript; sin él se ve la lista.
 * ====================================================================== */
.lmt-chk__pasos {
	display: flex;
	gap: 6px;
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	scrollbar-width: none;
}

.lmt-chk__pasos::-webkit-scrollbar { display: none; }
.lmt-prose .lmt-chk__pasos li { margin: 0; flex: 1 1 0; min-width: 0; }

.lmt-chk__pasob {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	width: 100%;
	padding: 6px 2px;
	background: none;
	border: 0;
	border-radius: 10px;
	font: inherit;
	color: var(--lmt-text-muted);
	cursor: pointer;
}

.lmt-chk__pasonum {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	border: 2px solid var(--lmt-border);
	background: var(--lmt-surface);
	font-size: 0.85rem;
	font-weight: 700;
}

.lmt-chk__pasotxt { font-size: 0.72rem; font-weight: 600; line-height: 1.2; text-align: center; }

.lmt-chk__pasob.is-completo .lmt-chk__pasonum {
	background: var(--lmt-chk-verde);
	border-color: var(--lmt-chk-verde);
	color: var(--lmt-bg);
}

.lmt-chk__pasob.is-actual { color: var(--lmt-text); }
.lmt-chk__pasob.is-actual .lmt-chk__pasonum { border-color: var(--lmt-chk-verde); box-shadow: 0 0 0 3px var(--lmt-accent-soft); }

.lmt-chk__paso-aviso { margin: 10px 0 0; font-size: 0.85rem; font-weight: 700; color: var(--lmt-chk-verde); }
.lmt-chk:not(.is-asistente) .lmt-chk__paso-aviso { display: none; }

.lmt-chk.is-asistente .lmt-chk__grupo { display: none; }
.lmt-chk.is-asistente .lmt-chk__grupo.is-actual { display: block; }
.lmt-chk.is-asistente .lmt-chk__sum { cursor: default; }
.lmt-chk.is-asistente .lmt-chk__sum::after { display: none; }
.lmt-chk.is-asistente > .lmt-chk__acciones,
.lmt-chk.is-asistente > .lmt-chk__nota { display: none; }
.lmt-chk.is-asistente.is-resultado .lmt-chk__nav { display: none; }

.lmt-chk__nav { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 6px; }
.lmt-chk__nav .lmt-chk__sigue { margin-left: auto; }

.lmt-chk__atras {
	padding: 10px 4px;
	background: none;
	border: 0;
	font: inherit;
	font-weight: 600;
	color: var(--lmt-text-muted);
	cursor: pointer;
}

.lmt-chk__res { display: none; }
.lmt-chk.is-resultado .lmt-chk__res { display: block; }
.lmt-chk__res:focus { outline: none; }

.lmt-chk__res-cab {
	padding: 20px;
	border-radius: 16px;
	background: var(--lmt-surface);
	border: 1px solid var(--lmt-border);
	border-top: 4px solid var(--lmt-chk-verde);
	text-align: center;
}

.lmt-chk__res-cal { margin: 0; font-size: 1rem; color: var(--lmt-text-muted); }
.lmt-chk__res-cal strong { font-family: var(--lmt-font-display); font-size: 2.6rem; color: var(--lmt-text); font-variant-numeric: tabular-nums; }
.lmt-chk__res-nivel { margin: 4px 0 0; font-family: var(--lmt-font-display); font-size: 1.2rem; font-weight: 700; color: var(--lmt-chk-verde); }
.lmt-chk__res-frase { margin: 6px auto 0; max-width: 34em; color: var(--lmt-text); }

.lmt-prose .lmt-chk__res-barras,
.lmt-chk__res-barras { list-style: none; margin: 18px 0; padding: 0; }

.lmt-prose .lmt-chk__res-barras li,
.lmt-chk__res-barras li {
	display: grid;
	grid-template-columns: minmax(0, 11em) minmax(0, 1fr) 3em;
	align-items: center;
	gap: 10px;
	margin: 0 0 8px;
	font-size: 0.88rem;
}

.lmt-chk__res-gnom { color: var(--lmt-text); font-weight: 600; }
.lmt-chk__res-gbar { height: 8px; background: var(--lmt-border); border-radius: 999px; overflow: hidden; }
.lmt-chk__res-gbar span { display: block; height: 100%; background: var(--lmt-chk-verde); border-radius: 999px; }
.lmt-chk__res-gnum { text-align: right; font-weight: 700; color: var(--lmt-text-muted); font-variant-numeric: tabular-nums; }

.lmt-chk__res-sub { margin: 18px 0 8px; font-weight: 700; color: var(--lmt-text); }

.lmt-prose .lmt-chk__res-plan,
.lmt-chk__res-plan { margin: 0; padding-left: 1.4em; }

.lmt-prose .lmt-chk__res-plan li,
.lmt-chk__res-plan li { margin: 0 0 10px; }

.lmt-chk__res-ptit { font-weight: 700; color: var(--lmt-text); }
.lmt-chk__res-pgrupo { font-size: 0.85rem; color: var(--lmt-text-muted); }
.lmt-chk__res-ppista { display: block; font-size: 0.88rem; color: var(--lmt-text-muted); }

.lmt-chk__res-inv {
	margin: 18px 0;
	padding: 18px;
	border-radius: 16px;
	background: var(--lmt-accent-soft);
	border: 1px solid var(--lmt-chk-verde);
}

.lmt-chk__res-inv p { margin: 0 0 10px; }
.lmt-chk__res-invt { font-family: var(--lmt-font-display); font-weight: 700; font-size: 1.1rem; color: var(--lmt-text); }

.lmt-chk__res-acc { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 18px; }

@media (max-width: 600px) {
	.lmt-chk__pasotxt { display: none; }
	.lmt-chk__pasob.is-actual .lmt-chk__pasotxt { display: none; }
	.lmt-prose .lmt-chk__res-barras li,
	.lmt-chk__res-barras li { grid-template-columns: minmax(0, 1fr) 3em; }
	.lmt-chk__res-gnom { grid-column: 1 / -1; }
	.lmt-chk__nav { position: sticky; bottom: 0; padding: 10px 0; background: var(--lmt-surface-2); }
}

@media print {
	.lmt-chk--imprimir .lmt-chk__res-acc,
	.lmt-chk--imprimir .lmt-chk__nota,
	.lmt-chk--imprimir .lmt-chk__res-inv .lmt-btn { display: none !important; }
	.lmt-chk--imprimir .lmt-chk__res { display: block; margin-bottom: 14px; }
	.lmt-chk--imprimir .lmt-chk__res-cab { border-color: #cfd8d3; border-top-color: #047857; background: #fff; }
	.lmt-chk--imprimir .lmt-chk__res-cal strong,
	.lmt-chk--imprimir .lmt-chk__res-ptit,
	.lmt-chk--imprimir .lmt-chk__res-gnom,
	.lmt-chk--imprimir .lmt-chk__res-frase { color: #0b1b2b; }
	.lmt-chk--imprimir .lmt-chk__res-nivel { color: #047857; }
	.lmt-chk--imprimir .lmt-chk__grupo { display: block !important; }
	.lmt-chk--imprimir .lmt-chk__res-gbar span { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
