/* Calculadoras del portal — layout limpio, tarjeta de resultado destacada */
.conv-calc { max-width: 860px; margin: 0 auto; }
.conv-calc__sub { color: #555; font-size: .95rem; }

.conv-calc__grid {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 220px, 1fr ) );
	gap: 14px 20px;
	margin-bottom: 14px;
}
.conv-calc__grid label { display: flex; flex-direction: column; gap: 4px; font-size: .85rem; font-weight: 600; }
.conv-calc__grid input,
.conv-calc__grid select {
	padding: 8px 10px;
	border: 1.5px solid #6b7280;
	border-radius: 6px;
	font-size: 1rem;
	background: #fff;
}
.conv-calc__grid input:focus,
.conv-calc__grid select:focus {
	border-color: #1d4ed8;
	outline: 2px solid rgba( 29, 78, 216, .25 );
	outline-offset: 1px;
}
.conv-calc__check { flex-direction: row !important; align-items: center; gap: 8px; font-weight: 400 !important; }

.conv-calc__toggle {
	background: none; border: 0; padding: 0; margin: 4px 0 14px;
	color: #1d4ed8; cursor: pointer; font-size: .9rem; text-decoration: underline;
}
.conv-calc__avanzado { border-top: 1px dashed #d8dde4; padding-top: 14px; }

.conv-hp { position: absolute; left: -9999px; opacity: 0; height: 0; width: 0; }

.conv-calc__actions { display: flex; gap: 10px; margin-top: 6px; }
.conv-btn {
	background: #1d4ed8; color: #fff; border: 0; border-radius: 6px;
	padding: 10px 22px; font-size: 1rem; cursor: pointer;
}
.conv-btn:hover { background: #1e40af; }
.conv-btn--ghost { background: #e8edf5; color: #1d4ed8; }
.conv-btn--ghost:hover { background: #dbe4f2; }

.conv-calc__result { margin-top: 28px; }
.conv-calc__hero {
	display: grid; grid-template-columns: 1fr 1fr; gap: 16px;
	background: #0f2a5c; color: #fff; border-radius: 10px; padding: 22px 26px;
	margin-bottom: 18px;
}
.conv-calc__label { display: block; font-size: .8rem; opacity: .8; text-transform: uppercase; letter-spacing: .04em; }
.conv-calc__hero strong { font-size: 1.9rem; display: block; line-height: 1.15; }
.conv-calc__hero small { opacity: .75; }

.conv-calc__table { width: 100%; border-collapse: collapse; }
.conv-calc__table td { padding: 8px 4px; border-bottom: 1px solid #edf0f4; }
.conv-calc__table td:last-child { text-align: right; font-variant-numeric: tabular-nums; font-weight: 600; }
.conv-calc__total td { border-top: 2px solid #0f2a5c; border-bottom: 0; font-size: 1.1rem; font-weight: 700; padding-top: 12px; }

.conv-calc__avisos { color: #92400e; background: #fffbeb; border: 1px solid #fcd34d; border-radius: 6px; padding: 8px 12px; font-size: .85rem; }
.conv-calc__avisos:empty { display: none; }
.conv-calc__disclaimer { font-size: .78rem; color: #777; margin-top: 10px; }

@media ( max-width: 600px ) {
	.conv-calc__hero { grid-template-columns: 1fr; }
}

/* Bloque editorial E-E-A-T */
.conv-eeat { margin-top: 40px; border-top: 2px solid #0f2a5c; padding-top: 18px; font-size: .92rem; }
.conv-eeat__t { font-size: 1.25rem; margin-bottom: 6px; }
.conv-eeat__meta { display: flex; gap: 18px; flex-wrap: wrap; color: #555; font-size: .85rem; margin-bottom: 16px; }
.conv-eeat__bloque { margin-bottom: 14px; }
.conv-eeat__bloque h3 { font-size: 1rem; margin: 10px 0 6px; }
.conv-eeat__bloque ul { margin: 0 0 6px 18px; }
.conv-eeat__bloque li { margin-bottom: 4px; }
.conv-eeat details { border-bottom: 1px solid #edf0f4; padding: 6px 0; }
.conv-eeat summary { cursor: pointer; font-weight: 600; }
.conv-eeat__legal { font-size: .8rem; color: #666; background: #f6f7f9; border-left: 3px solid #1d4ed8; padding: 10px 12px; margin-top: 18px; }
.conv-wizard .calc-grid{grid-template-columns:1.6fr 1fr 1fr}
.conv-buscar-out{margin-top:1.5rem}
.conv-resultados{list-style:none;margin:0;padding:0}
.conv-resultados li{padding:.7rem 1rem;margin-bottom:.5rem;border:1px solid #e5e7eb;border-radius:6px;background:#fff}
.conv-resultados li a{text-decoration:none}
.conv-res-sec{color:#6b7280;font-size:.85rem}
@media(max-width:768px){.conv-wizard .calc-grid{grid-template-columns:1fr}}

.conv-calc__wide{grid-column:1/-1}
.conv-picker-hint{margin:-8px 0 0;font-size:.82rem;color:#1d4ed8}

/* Anti-desborde movil */
.conv-calc__grid label{min-width:0}
.conv-calc__grid input,.conv-calc__grid select{min-width:0;max-width:100%;box-sizing:border-box}
@media (max-width:480px){
	.conv-calc__grid{grid-template-columns:1fr}
}
