/* Calculadora de ROI y ROAS */
.rs-modes { margin-bottom: 4px; }
.rs-acts { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--line); }
.rs-res { display: grid; gap: 22px; }
.rs-res[hidden] { display: none; }
.rs-hero { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.rs-hero .tl-big { font-size: clamp(34px, 3.6vw, 50px); letter-spacing: -0.05em; }
.rs-hero .tl-big.pos { color: var(--tl-ok); }
.rs-hero .tl-big.neg { color: var(--tl-bad); }
.rs-sub { margin: 8px 0 0; font-size: 13px; color: var(--paper-dim); }

/* Medidor de ROAS contra equilibrio */
.rs-gauge-track { position: relative; height: 12px; border-radius: 99px; background: var(--glass-bg-strong); box-shadow: inset 0 0 0 1px var(--line); }
.rs-gauge-track i { position: absolute; inset: 0; border-radius: inherit; transform-origin: left; transition: transform .5s cubic-bezier(.16,1,.3,1); background: linear-gradient(90deg, #9149ff, #f036e1); }
.rs-gauge-track i.ok { background: linear-gradient(90deg, rgba(94,210,156,.55), #5ed29c); }
.rs-gauge-track i.warn { background: linear-gradient(90deg, rgba(245,184,75,.5), #f5b84b); }
.rs-gauge-track i.bad { background: linear-gradient(90deg, rgba(255,122,138,.5), #ff7a8a); }
.rs-gauge-track b { position: absolute; top: -5px; bottom: -5px; width: 2px; margin-left: -1px; background: var(--paper); border-radius: 2px; }
.rs-gauge-lbl { position: relative; display: flex; justify-content: space-between; margin-top: 10px; height: 16px; font-family: 'JetBrains Mono', monospace; font-size: 11px; color: var(--paper-faint); }
.rs-gauge-lbl #rs-gbe-l { position: absolute; transform: translateX(-50%); color: var(--paper); white-space: nowrap; }
@media (max-width: 420px) { .rs-gauge-lbl > span:first-child, .rs-gauge-lbl #rs-gmax { visibility: hidden; } }

/* Sensibilidad */
.rs-sens-h { margin: 6px 0 0; }
.rs-sens { display: grid; }
.rs-srow { display: grid; grid-template-columns: 104px minmax(0, 1fr) 118px; gap: 14px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 13px; }
.rs-srow .r { text-align: right; }
.rs-shead { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--paper-faint); padding-top: 0; }
.rs-srow.cur { background: linear-gradient(90deg, rgba(240,54,225,.07), transparent 70%); border-radius: 10px; }
.rs-srow em { display: block; font-style: normal; font-family: 'DM Sans', system-ui, sans-serif; font-size: 11px; color: var(--tl-acc); }
.rs-srow .pos { color: var(--tl-ok); } .rs-srow .neg { color: var(--tl-bad); }
.rs-sbar { display: grid; grid-template-columns: minmax(0, 1fr) 52px; gap: 10px; align-items: center; }
.rs-sbar .tl-mono { text-align: right; color: var(--paper); }
.rs-strack { position: relative; height: 8px; border-radius: 99px; background: var(--glass-bg-strong); }
.rs-strack i { position: absolute; left: 0; top: 0; bottom: 0; border-radius: inherit; transition: width .5s cubic-bezier(.16,1,.3,1); }
.rs-strack i.ok { background: #5ed29c; } .rs-strack i.bad { background: #ff7a8a; }
.rs-strack b { position: absolute; top: -4px; bottom: -4px; width: 1.5px; background: var(--paper); opacity: .7; }
@media (max-width: 480px) {
  .rs-srow { grid-template-columns: 84px minmax(0, 1fr); row-gap: 6px; }
  .rs-srow > .r { grid-column: 2; text-align: left; font-size: 12px; }
  .rs-shead > .r { display: none; }
  .rs-hero { gap: 10px; }
}
.rs-modes + .tl-group { margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--line); }
.rs-mini { display: none; }
@media (max-width: 1040px) {
  .rs-mini { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 22px; padding: 10px 14px; min-height: 48px; border-radius: 14px; text-decoration: none; color: var(--paper); font-size: 13px;
    background: var(--glass-bg-strong); box-shadow: inset 0 0 0 1px var(--line-strong); }
  .rs-mini-go { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; color: var(--paper-dim); }
}
