/* R.A Soluções Inteligentes — Simulador Tributário (rebuild) */
:root{
  --ra-gold:#e8b931;
  --ra-gold-2:#f5c542;
  --ra-ink:#090b10;
  --ra-panel:#0e1118;
  --ra-panel-2:#12151d;
  --ra-line:rgba(255,255,255,.10);
  --ra-txt:#e8eaf0;
  --ra-muted:#98a0b3;
}
#ra-sim-root *{box-sizing:border-box}
#ra-sim-root{
  position:fixed;inset:0;z-index:99999;
  display:flex;align-items:center;justify-content:center;
  padding:16px;overflow-y:auto;
  background:rgba(3,4,8,.82);backdrop-filter:blur(10px);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;
  animation:ra-fade .25s ease;
}
@keyframes ra-fade{from{opacity:0}to{opacity:1}}
@keyframes ra-pop{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.ra-card{
  position:relative;width:100%;max-width:920px;margin:auto;
  background:linear-gradient(180deg,#0e1118,#0b0d14);
  border:1px solid rgba(232,185,49,.32);
  border-radius:26px;color:var(--ra-txt);
  box-shadow:0 0 90px rgba(232,185,49,.18),0 30px 80px rgba(0,0,0,.6);
  animation:ra-pop .35s cubic-bezier(.2,.8,.2,1);
  overflow:hidden;
}
.ra-head{
  display:flex;align-items:center;gap:14px;
  padding:20px 24px;border-bottom:1px solid var(--ra-line);
  background:radial-gradient(120% 140% at 0% 0%,rgba(232,185,49,.10),transparent 55%);
}
.ra-badge{
  width:44px;height:44px;border-radius:13px;flex:none;
  background:linear-gradient(135deg,var(--ra-gold),#c9962a);
  display:flex;align-items:center;justify-content:center;
  font-weight:800;color:#1a1400;font-size:15px;letter-spacing:.5px;
  box-shadow:0 6px 18px rgba(232,185,49,.3);
}
.ra-head h3{margin:0;font-size:17px;font-weight:800;letter-spacing:.2px}
.ra-head p{margin:2px 0 0;font-size:11.5px;color:var(--ra-muted);letter-spacing:.4px;text-transform:uppercase}
.ra-tag{margin-left:6px;font-size:10px;font-weight:800;color:#1a1400;background:var(--ra-gold);padding:2px 7px;border-radius:6px;vertical-align:middle}
.ra-x{
  margin-left:auto;width:38px;height:38px;flex:none;border:none;cursor:pointer;
  border-radius:11px;background:rgba(255,255,255,.06);color:var(--ra-txt);
  font-size:18px;line-height:1;transition:.15s;
}
.ra-x:hover{background:rgba(255,255,255,.14);transform:rotate(90deg)}
.ra-body{padding:22px 24px 26px}

/* progress */
.ra-prog{margin-bottom:22px}
.ra-prog .row{display:flex;justify-content:space-between;font-size:11px;color:var(--ra-muted);text-transform:uppercase;letter-spacing:.6px;margin-bottom:8px;font-weight:700}
.ra-prog .bar{height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.ra-prog .fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--ra-gold),var(--ra-gold-2));transition:width .4s cubic-bezier(.2,.8,.2,1)}

/* form grid */
.ra-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ra-grid .full{grid-column:1/-1}
.ra-field label{display:block;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--ra-muted);margin-bottom:7px}
.ra-field input,.ra-field select{
  width:100%;height:48px;padding:0 14px;border-radius:13px;
  background:rgba(255,255,255,.03);border:1px solid var(--ra-line);
  color:var(--ra-txt);font-size:15px;outline:none;transition:.15s;
  appearance:none;-webkit-appearance:none;
}
.ra-field select{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='14'%20height='14'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%2398a0b3'%20stroke-width='2.5'%3E%3Cpath%20d='M6%209l6%206%206-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}
.ra-field input:focus,.ra-field select:focus{border-color:var(--ra-gold);background:rgba(232,185,49,.06);box-shadow:0 0 0 3px rgba(232,185,49,.12)}
.ra-field input.err,.ra-field select.err{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.12)}
.ra-field .hint{font-size:11px;color:var(--ra-muted);margin-top:6px}
.ra-field option{background:#0e1118;color:var(--ra-txt)}

/* revenue slider */
.ra-rev{grid-column:1/-1;padding:18px;border-radius:16px;background:rgba(255,255,255,.02);border:1px solid var(--ra-line)}
.ra-rev .top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}
.ra-rev .top label{font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--ra-muted)}
.ra-rev .val{font-size:26px;font-weight:800;color:var(--ra-gold-2);letter-spacing:.3px}
.ra-rev input[type=range]{width:100%;-webkit-appearance:none;height:6px;border-radius:99px;background:rgba(255,255,255,.12);outline:none}
.ra-rev input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--ra-gold),#c9962a);cursor:pointer;box-shadow:0 4px 12px rgba(232,185,49,.4);border:3px solid #0e1118}
.ra-rev input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--ra-gold);cursor:pointer;border:3px solid #0e1118}
.ra-rev .scale{display:flex;justify-content:space-between;font-size:10.5px;color:var(--ra-muted);margin-top:8px}

/* toggle / choices */
.ra-choice{display:flex;gap:10px}
.ra-choice button{flex:1;height:46px;border-radius:12px;border:1px solid var(--ra-line);background:rgba(255,255,255,.03);color:var(--ra-muted);font-size:14px;font-weight:600;cursor:pointer;transition:.15s}
.ra-choice button.on{border-color:var(--ra-gold);background:rgba(232,185,49,.12);color:var(--ra-gold-2)}
.ra-chips{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ra-chip{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid var(--ra-line);background:rgba(255,255,255,.02);cursor:pointer;font-size:13.5px;color:var(--ra-txt);transition:.15s;user-select:none}
.ra-chip:hover{border-color:rgba(232,185,49,.4)}
.ra-chip.on{border-color:var(--ra-gold);background:rgba(232,185,49,.1)}
.ra-chip .box{width:20px;height:20px;border-radius:6px;border:2px solid var(--ra-muted);flex:none;display:flex;align-items:center;justify-content:center;transition:.15s}
.ra-chip.on .box{background:var(--ra-gold);border-color:var(--ra-gold);color:#1a1400}

/* footer actions */
.ra-foot{display:flex;align-items:center;gap:12px;margin-top:24px}
.ra-foot .sp{flex:1}
.ra-btn{height:50px;padding:0 24px;border-radius:14px;border:none;cursor:pointer;font-size:14.5px;font-weight:800;letter-spacing:.3px;transition:.15s;display:inline-flex;align-items:center;gap:9px}
.ra-btn.primary{background:linear-gradient(135deg,var(--ra-gold),var(--ra-gold-2));color:#1a1400;box-shadow:0 10px 26px rgba(232,185,49,.3)}
.ra-btn.primary:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(232,185,49,.42)}
.ra-btn.ghost{background:rgba(255,255,255,.05);color:var(--ra-txt)}
.ra-btn.ghost:hover{background:rgba(255,255,255,.1)}
.ra-btn.wa{background:#25d366;color:#04210f}
.ra-btn.wa:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(37,211,102,.35)}
.ra-btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}

/* loading */
.ra-load{padding:50px 20px;text-align:center}
.ra-spin{width:60px;height:60px;margin:0 auto 22px;border-radius:50%;border:4px solid rgba(232,185,49,.18);border-top-color:var(--ra-gold);animation:ra-rot 1s linear infinite}
@keyframes ra-rot{to{transform:rotate(360deg)}}
.ra-load h4{margin:0 0 6px;font-size:18px;font-weight:800}
.ra-load p{margin:0;color:var(--ra-muted);font-size:13.5px;min-height:20px}

/* results */
.ra-res .exec{font-size:11px;font-weight:800;letter-spacing:1px;color:var(--ra-gold);text-transform:uppercase;margin-bottom:4px}
.ra-res .cname{font-size:26px;font-weight:800;margin:0 0 2px;line-height:1.1}
.ra-res .csub{font-size:12.5px;color:var(--ra-muted);margin:0 0 20px}
.ra-conf{float:right;font-size:11px;font-weight:700;color:#34d399;background:rgba(52,211,153,.12);border:1px solid rgba(52,211,153,.3);padding:6px 12px;border-radius:99px}
.ra-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}
.ra-kpi{padding:18px;border-radius:16px;background:rgba(255,255,255,.02);border:1px solid var(--ra-line)}
.ra-kpi .k{font-size:10.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--ra-muted);margin-bottom:10px;line-height:1.3}
.ra-kpi .v{font-size:25px;font-weight:800;letter-spacing:.2px}
.ra-kpi .v.gold{color:var(--ra-gold-2)}
.ra-kpi .v.green{color:#34d399}
.ra-kpi .s{font-size:11px;margin-top:5px;color:var(--ra-muted)}
.ra-summary{padding:16px 18px;border-radius:14px;background:rgba(232,185,49,.05);border:1px solid rgba(232,185,49,.18);font-size:14px;line-height:1.6;color:#d7dae3;font-style:italic;margin-bottom:22px}
.ra-sec-t{font-size:12px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--ra-gold);margin:0 0 12px;display:flex;align-items:center;gap:8px}
.ra-opps{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}
.ra-opp{padding:15px 16px;border-radius:14px;background:rgba(255,255,255,.02);border:1px solid var(--ra-line);transition:.15s}
.ra-opp:hover{border-color:rgba(232,185,49,.3)}
.ra-opp .r{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:5px}
.ra-opp h5{margin:0;font-size:15px;font-weight:700}
.ra-opp .imp{font-size:10.5px;font-weight:800;padding:3px 9px;border-radius:6px;background:rgba(232,185,49,.15);color:var(--ra-gold-2);border:1px solid rgba(232,185,49,.3);white-space:nowrap}
.ra-opp .imp.med{background:rgba(148,163,184,.12);color:#cbd5e1;border-color:rgba(148,163,184,.25)}
.ra-opp p{margin:0;font-size:13px;color:var(--ra-muted);line-height:1.5}
.ra-plan{padding:18px 20px;border-radius:16px;background:#090b10;border:1px solid var(--ra-line);margin-bottom:8px}
.ra-plan ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.ra-plan li{display:flex;gap:12px;font-size:13.5px;color:#d7dae3;line-height:1.45;align-items:flex-start}
.ra-plan .n{width:24px;height:24px;flex:none;border-radius:8px;background:rgba(232,185,49,.15);color:var(--ra-gold-2);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:1px}
.ra-disc{font-size:10.5px;color:var(--ra-muted);text-align:center;margin-top:18px;line-height:1.5;opacity:.75}

@media(max-width:640px){
  .ra-grid{grid-template-columns:1fr}
  .ra-kpis{grid-template-columns:1fr}
  .ra-chips{grid-template-columns:1fr}
  .ra-body{padding:18px 16px 22px}
  .ra-head{padding:16px}
  .ra-res .cname{font-size:22px}
  .ra-rev .val{font-size:22px}
  .ra-foot{flex-wrap:wrap}
  .ra-foot .ra-btn{flex:1;justify-content:center}
  .ra-conf{float:none;display:inline-block;margin-bottom:10px}
}
