/* ===== Estilos específicos de la calculadora ===== */
.calc-banner{
  background:#0b4952;color:#e6eefb;text-align:center;
  padding:12px 14px;font-weight:600;border-bottom:1px solid #123c46;
}
.calc-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
@media (max-width:980px){.calc-grid{grid-template-columns:1fr}}
.card-soft{background:#0e1832;border:1px solid #162545;border-radius:16px;padding:18px}
.note{display:flex;gap:10px;align-items:flex-start;background:#0b3a2a;border:1px solid #16503b;color:#c7f9e5;padding:12px;border-radius:12px}
.alert{display:flex;gap:10px;align-items:flex-start;background:#3a1a1a;border:1px solid #5a2a2a;color:#ffd9d9;padding:12px;border-radius:12px}
.inline-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.inline-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
@media (max-width:560px){.inline-2,.inline-3{grid-template-columns:1fr}}
.muted{color:#9fb0c9;font-size:.92rem}
.badge-inline{display:inline-flex;gap:8px;align-items:center;padding:6px 10px;border-radius:999px;background:#101a2f;border:1px solid #1e2b4e;font-size:.85rem}
table.breakdown{width:100%;border-collapse:collapse;margin-top:10px}
table.breakdown th, table.breakdown td{padding:10px;border-top:1px solid #1a2a4e;text-align:left}
table.breakdown th{font-weight:600;color:#cfe0ff}
.kpi{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
@media (max-width:560px){.kpi{grid-template-columns:1fr}}
.kpi .ts{padding:14px;text-align:center}
.switch{display:flex;gap:8px;align-items:center;margin-top:6px}
.switch input{width:42px;height:22px;appearance:none;background:#1a294d;border:1px solid #2a3c66;border-radius:999px;position:relative;outline:none;cursor:pointer}
.switch input::after{content:"";position:absolute;width:18px;height:18px;border-radius:999px;background:#cfe0ff;top:1.5px;left:1.5px;transition:.2s}
.switch input:checked{background:#2563eb}
.switch input:checked::after{left:22px}
.calc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.calc-cta{display:grid;gap:10px;place-items:center;text-align:center;margin-top:22px}

/* WhatsApp flotante (igual al inline que tenías, lo movemos acá) */
.wapp-box{
  position:fixed; right:22px; bottom:22px; z-index:9999; width:64px; height:64px;
  display:flex; align-items:center; justify-content:center; text-decoration:none; color:#fff;
}
.wapp-box .box-body{
  width:64px;height:64px;background:#725535;border-radius:14px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 14px rgba(0,0,0,.25); font-size:30px; position:relative; animation:bounce 2s infinite ease-in-out;
}
.wapp-box .box-lid{
  position:absolute; width:70px;height:20px;background:#ae8a65; top:-8px; border-radius:8px 8px 0 0; animation:lidWiggle 2s infinite ease-in-out; overflow:hidden;
}
.wapp-box .box-lid::after{
  content:""; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:18px; height:100%; background:#d8c19f; border-radius:4px; opacity:.9;
}
@keyframes bounce { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-6px)} }
@keyframes lidWiggle { 0%,100%{transform:rotate(0)} 25%{transform:rotate(-4deg)} 75%{transform:rotate(4deg)} }
.wapp-box:hover .box-body{ transform:scale(1.1); transition:transform .2s; }
