/* Simulador de costo oculto.
   Una cosa por pantalla, el número manda, todo lo demás se calla. */

.sim-escena{
  min-height:100svh;display:grid;place-items:center;
  padding:5.5rem 1rem 3.5rem;position:relative;overflow:hidden;
}
.sim-escena::before{
  content:"";position:absolute;left:50%;top:-20%;translate:-50% 0;
  width:min(820px,130vw);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(51,210,242,.13),transparent 62%);
  filter:blur(18px);pointer-events:none;
}
#simulador{width:100%;max-width:640px;position:relative;z-index:1}

@keyframes sim-entra{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
[data-animar]{animation:sim-entra .45s cubic-bezier(.22,.8,.3,1) both}

/* ---------- progreso ---------- */
.sim-progreso{height:2px;background:var(--line);border-radius:2px;margin-bottom:1.8rem;overflow:hidden}
.sim-progreso i{display:block;height:100%;background:var(--accent);transition:width .45s cubic-bezier(.22,.8,.3,1)}
.sim-cuenta{display:block;color:var(--muted);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.9rem}

/* ---------- pregunta ---------- */
.sim-paso h2{
  font-size:clamp(1.55rem,1.15rem + 1.9vw,2.4rem);line-height:1.18;
  letter-spacing:-.02em;margin:0 0 .7rem;
}
.sim-ayuda{color:var(--muted);font-size:.93rem;line-height:1.55;margin:0 0 1.9rem}

.sim-opciones{display:grid;gap:.6rem}
.sim-opcion{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  width:100%;padding:1.05rem 1.25rem;text-align:left;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  color:var(--text);font:inherit;font-weight:600;cursor:pointer;
  transition:border-color .2s ease,background .2s ease,translate .2s ease;
}
.sim-opcion:hover{border-color:var(--line-strong);background:var(--surface-2);translate:0 -1px}
.sim-opcion.activa{border-color:var(--accent);background:rgba(51,210,242,.08)}
.sim-check{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line-strong);flex:0 0 auto;transition:.2s ease}
.sim-opcion.activa .sim-check{border-color:var(--accent);background:var(--accent);box-shadow:0 0 12px rgba(51,210,242,.5)}

.sim-atras{
  margin-top:1.6rem;background:none;border:0;color:var(--muted);
  font:inherit;font-size:.88rem;cursor:pointer;padding:.4rem 0;
}
.sim-atras:hover{color:var(--text)}

/* ---------- resultado ---------- */
.sim-intro{color:var(--muted);margin:0 0 .4rem;font-size:1rem}
.sim-cifra{
  font-size:clamp(3.2rem,1.6rem + 9.5vw,6.4rem);font-weight:700;
  line-height:1;letter-spacing:-.04em;color:var(--accent);
  font-variant-numeric:tabular-nums;
  text-shadow:0 0 42px rgba(51,210,242,.3);
}
.sim-unidad{margin:.3rem 0 1.2rem;color:var(--muted);font-size:1rem}
.sim-equivale{margin:0 0 2.2rem;line-height:1.6}
.sim-equivale strong{color:var(--text)}

.sim-desglose{display:grid;gap:.7rem;margin-bottom:1.8rem}
.sim-linea{
  padding:1.05rem 1.2rem;background:var(--surface);
  border:1px solid var(--line);border-radius:14px;
  display:grid;gap:.25rem;
}
.sim-linea .mono{color:var(--muted);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.sim-linea strong{font-size:1.2rem}
.sim-linea small{color:var(--muted);font-size:.85rem;line-height:1.5}

.sim-escenarios{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:2rem}
.sim-esc{
  display:grid;gap:.15rem;padding:.75rem .5rem;
  background:var(--surface);border:1px solid var(--line);border-radius:12px;
  color:var(--muted);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;
  transition:.2s ease;
}
.sim-esc small{font-size:.74rem;opacity:.75;font-weight:500}
.sim-esc:hover{border-color:var(--line-strong);color:var(--text)}
.sim-esc.activa{border-color:var(--accent);color:var(--text);background:rgba(51,210,242,.08)}

.sim-inversion{
  padding:1.3rem 1.35rem;border:1px solid var(--line-strong);
  border-radius:16px;background:var(--surface-2);margin-bottom:1.6rem;
}
.sim-inversion h3{margin:0 0 .5rem;font-size:1.05rem}
.sim-inversion p{margin:0 0 .4rem;font-size:.95rem;line-height:1.55}
.sim-roi{color:var(--ok)}

/* ---------- supuestos ---------- */
.sim-supuestos{
  border:1px solid var(--line);border-radius:14px;
  padding:1rem 1.2rem;margin-bottom:1.8rem;background:var(--surface);
}
.sim-supuestos summary{cursor:pointer;font-weight:600;font-size:.95rem;list-style:none}
.sim-supuestos summary::-webkit-details-marker{display:none}
.sim-supuestos summary::after{content:" ↓";color:var(--muted)}
.sim-supuestos[open] summary::after{content:" ↑"}
.sim-sup{display:grid;gap:.3rem;padding:.9rem 0;border-top:1px solid var(--line)}
.sim-sup > span{font-size:.88rem;font-weight:600}
.sim-sup output{font-family:var(--mono);font-size:.85rem;color:var(--accent)}
.sim-sup small{color:var(--muted);font-size:.78rem;line-height:1.45}
.sim-sup small em{display:block;opacity:.7;font-style:normal;margin-top:.15rem}
.sim-sup input[type=range]{width:100%;accent-color:var(--accent)}

.sim-cta{display:flex;flex-wrap:wrap;gap:.7rem}
.sim-imprimir{margin-top:.7rem}

@media (max-width:560px){
  .sim-escenarios{grid-template-columns:1fr}
  .sim-esc{display:flex;justify-content:space-between;align-items:baseline}
}

/* Al imprimir (el informe del modo empresa) se van los botones */
@media print{
  .nav,footer,.sim-cta,.sim-imprimir,.sim-escenarios,.sim-atras{display:none !important}
  .sim-escena::before{display:none}
  body{background:#fff;color:#111}
  .sim-cifra{color:#111;text-shadow:none}
  .sim-linea,.sim-inversion,.sim-supuestos{border-color:#ccc;background:#fff}
  .sim-supuestos{display:block}
  .sim-supuestos summary{list-style:none}
}

.sim-cordura{
  margin:0 0 1.6rem;padding:.9rem 1.1rem;border-left:2px solid var(--line-strong);
  color:var(--muted);font-size:.86rem;line-height:1.55;background:rgba(255,255,255,.02);
}
.sim-cordura strong{color:var(--text)}
.sim-cordura.alta{border-left-color:#e8a33d;color:#d9c3a0}
