
  /* ===== Simulador de interés compuesto ===== */
  .sim-section{ position:relative; }
  .sim-section::before{ content:""; position:absolute; inset:0; pointer-events:none;
    background:radial-gradient(60% 50% at 50% 0%, rgba(245,169,56,.10), transparent 70%); }
  .sim-badge{ display:inline-block; font-family:var(--mono); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase;
    color:var(--bg); background:linear-gradient(135deg,var(--gold),var(--gold-deep)); padding:4px 10px; border-radius:999px; margin-bottom:14px; }
  .sim-card{ position:relative; background:linear-gradient(180deg,var(--panel-2),var(--panel)); border:1px solid rgba(245,169,56,.35);
    border-radius:20px; padding:26px; box-shadow:0 0 0 1px rgba(45,212,238,.06), 0 24px 70px rgba(0,0,0,.45), 0 0 60px rgba(245,169,56,.08); }
  .sim-controls{ display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:14px; }
  .sim-controls label{ display:flex; flex-direction:column; gap:6px; font-size:.78rem; color:var(--muted); font-family:var(--mono); text-transform:uppercase; letter-spacing:.06em; }
  .sim-controls input[type=number], .sim-controls select{ width:100%; background:var(--bg); color:var(--text); border:1px solid var(--line);
    border-radius:10px; padding:11px 12px; font-size:1rem; font-family:var(--body); text-transform:none; letter-spacing:0; }
  .sim-controls input:focus, .sim-controls select:focus{ border-color:var(--cyan); outline:none; }
  .sim-controls input[type=range]{ accent-color:var(--gold); width:100%; margin-top:10px; }
  .sim-controls output{ color:var(--gold); font-size:1rem; }
  .sim-error{ color:var(--red); min-height:1.2em; margin:10px 0 0; font-size:.9rem; }
  .sim-kpis{ display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; margin:18px 0; }
  .sim-kpi{ background:var(--bg); border:1px solid var(--line); border-radius:14px; padding:14px 16px; }
  .sim-kpi small{ display:block; color:var(--muted); font-size:.74rem; font-family:var(--mono); text-transform:uppercase; letter-spacing:.06em; }
  .sim-kpi strong{ display:block; font-family:var(--display); font-size:1.7rem; line-height:1.2; margin-top:4px; }
  .sim-kpi.main{ border-color:rgba(245,169,56,.5); background:linear-gradient(135deg,rgba(245,169,56,.12),var(--bg)); }
  .sim-kpi.main strong{ color:var(--gold); font-size:2.1rem; }
  .sim-pos{ color:var(--green); } .sim-neg{ color:var(--red); }
  .sim-chartwrap{ position:relative; margin-top:6px; }
  #simChart{ width:100%; height:340px; display:block; border-radius:14px; background:var(--bg); border:1px solid var(--line); touch-action:pan-y; }
  .sim-tip{ position:absolute; pointer-events:none; display:none; background:rgba(6,9,17,.95); border:1px solid var(--line); border-radius:10px;
    padding:10px 12px; font-size:.82rem; min-width:190px; box-shadow:0 10px 30px rgba(0,0,0,.5); z-index:2; }
  .sim-tip b{ font-family:var(--display); font-size:1rem; color:var(--gold); display:block; margin-bottom:4px; }
  .sim-tip div{ display:flex; justify-content:space-between; gap:14px; color:var(--muted); }
  .sim-tip span{ color:var(--text); font-family:var(--mono); }
  .sim-legend{ display:flex; flex-wrap:wrap; gap:16px; margin:12px 0 4px; font-size:.82rem; color:var(--muted); }
  .sim-legend i{ display:inline-block; width:22px; height:3px; border-radius:2px; margin-right:7px; vertical-align:middle; }
  .sim-scen{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:12px; margin:20px 0 6px; }
  .sim-scen button{ text-align:left; cursor:pointer; background:var(--bg); border:1px solid var(--line); border-radius:14px; padding:12px 14px; color:var(--text); font-family:var(--body); transition:border-color .2s, transform .2s; }
  .sim-scen button:hover{ border-color:var(--cyan); transform:translateY(-2px); }
  .sim-scen button.on{ border-color:var(--gold); box-shadow:0 0 0 1px var(--gold) inset; }
  .sim-scen small{ display:block; color:var(--muted); font-size:.74rem; font-family:var(--mono); text-transform:uppercase; letter-spacing:.06em; }
  .sim-scen strong{ font-family:var(--display); font-size:1.35rem; }
  .sim-scroll{ overflow-x:auto; margin-top:18px; }
  .sim-table{ width:100%; border-collapse:collapse; font-size:.92rem; }
  .sim-table th, .sim-table td{ padding:10px 12px; text-align:right; border-bottom:1px solid var(--line); white-space:nowrap; }
  .sim-table th:first-child, .sim-table td:first-child{ text-align:left; }
  .sim-table th{ color:var(--muted); font-family:var(--mono); font-size:.74rem; text-transform:uppercase; letter-spacing:.06em; font-weight:500; }
  .sim-table tr:last-child td{ font-weight:700; color:var(--gold); border-bottom:none; }
  .sim-details{ margin-top:16px; color:var(--muted); font-size:.88rem; }
  .sim-details summary{ cursor:pointer; color:var(--cyan-soft); }
  .sim-note{ margin:14px 0 0; font-size:.78rem; color:var(--muted); }
  @media (max-width:640px){ .sim-kpis{ grid-template-columns:1fr 1fr; } .sim-kpi.main{ grid-column:1/-1; } .sim-kpi strong{ font-size:1.35rem; } .sim-card{ padding:16px; border-radius:16px; } #simChart{ height:260px; } .sim-kpi.main strong{ font-size:1.8rem; } }
