/* =========================================================
   RADAR LOCAL — ENTRADA V2
   Landing + formulário com proporção premium e responsiva.
========================================================= */

body.radar-entry-v2 {
  --rv2-ink:#111827;
  --rv2-text:#5f6b7a;
  --rv2-muted:#8a94a3;
  --rv2-line:#e4e9f1;
  --rv2-blue:#2f78f4;
  --rv2-blue-strong:#1768df;
  --rv2-blue-soft:#eef5ff;
  --rv2-green:#1f9d63;
  --rv2-green-soft:#ecf9f1;
  --rv2-red:#ef4d43;
  --rv2-gold:#f6b70a;
  --rv2-bg:#f5f8fc;
  --rv2-card:#ffffff;
  margin:0;
  color:var(--rv2-ink);
  background:
    radial-gradient(circle at 92% 3%, rgba(47,120,244,.10), transparent 27%),
    radial-gradient(circle at 4% 31%, rgba(47,120,244,.05), transparent 24%),
    var(--rv2-bg);
}

body.radar-entry-v2 .app-shell { min-height:100vh; }
body.radar-entry-v2 .radar-main,
body.radar-entry-v2 .topbar {
  width:min(calc(100% - 40px),1180px);
  margin-inline:auto;
}

/* HEADER */
body.radar-entry-v2 .topbar {
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid rgba(220,226,236,.72);
}

body.radar-entry-v2 .brand-mark {
  width:39px;
  height:39px;
  padding:9px;
  border-radius:12px;
  background:#fff;
  border:1px solid var(--rv2-line);
  box-shadow:0 8px 24px rgba(16,24,40,.05);
}

body.radar-entry-v2 .brand-copy strong { font-size:.94rem; color:var(--rv2-ink); }
body.radar-entry-v2 .brand-copy span { font-size:.67rem; color:var(--rv2-muted); }
body.radar-entry-v2 .topbar-status {
  padding:8px 12px;
  color:var(--rv2-green);
  background:var(--rv2-green-soft);
  border:1px solid #d5efdf;
  font-size:.66rem;
}

/* HERO */
body.radar-entry-v2 .hero {
  min-height:auto;
  padding:58px 0 34px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(380px,.88fr);
  gap:62px;
  align-items:center;
}

body.radar-entry-v2 .hero-copy { max-width:660px; }
body.radar-entry-v2 .eyebrow,
body.radar-entry-v2 .section-kicker,
body.radar-entry-v2 .rv2-mini-label {
  display:inline-block;
  color:var(--rv2-blue);
  font-size:.68rem;
  line-height:1;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

body.radar-entry-v2 .hero-copy h1 {
  max-width:650px;
  margin:16px 0 0;
  color:var(--rv2-ink);
  font-size:clamp(2.65rem,4.2vw,4rem);
  line-height:1.02;
  letter-spacing:-.055em;
  font-weight:850;
}

body.radar-entry-v2 .hero-copy h1 span {
  display:inline;
  color:var(--rv2-blue);
}

body.radar-entry-v2 .hero-copy > p {
  max-width:585px;
  margin:20px 0 0;
  color:var(--rv2-text);
  font-size:1rem;
  line-height:1.7;
}

body.radar-entry-v2 .rv2-hero-actions {
  margin-top:25px;
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}

body.radar-entry-v2 .rv2-scroll-cta {
  min-height:52px;
  padding:0 21px;
  display:inline-flex;
  align-items:center;
  gap:13px;
  border-radius:14px;
  color:#fff;
  background:linear-gradient(135deg,var(--rv2-blue),var(--rv2-blue-strong));
  box-shadow:0 14px 28px rgba(47,120,244,.20);
  font-size:.86rem;
  font-weight:800;
}

body.radar-entry-v2 .rv2-time {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--rv2-muted);
  font-size:.78rem;
  font-weight:600;
}

body.radar-entry-v2 .rv2-time-icon {
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  border:1px solid var(--rv2-line);
  color:var(--rv2-blue);
  font-size:.76rem;
}

body.radar-entry-v2 .rv2-benefits {
  margin-top:31px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:11px;
}

body.radar-entry-v2 .rv2-benefit {
  min-width:0;
  padding:14px 13px;
  display:grid;
  grid-template-columns:34px 1fr;
  gap:10px;
  align-items:start;
  border:1px solid rgba(224,230,239,.9);
  border-radius:16px;
  background:rgba(255,255,255,.78);
  box-shadow:0 8px 22px rgba(16,24,40,.035);
}

body.radar-entry-v2 .rv2-benefit-icon {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:var(--rv2-blue-soft);
  color:var(--rv2-blue);
  font-size:.86rem;
  font-weight:900;
}

body.radar-entry-v2 .rv2-benefit:nth-child(2) .rv2-benefit-icon {
  background:#f3efff;
  color:#7b4ee8;
}
body.radar-entry-v2 .rv2-benefit:nth-child(3) .rv2-benefit-icon {
  background:var(--rv2-green-soft);
  color:var(--rv2-green);
}

body.radar-entry-v2 .rv2-benefit strong {
  display:block;
  color:var(--rv2-ink);
  font-size:.75rem;
  line-height:1.25;
}
body.radar-entry-v2 .rv2-benefit span:last-child {
  display:block;
  margin-top:4px;
  color:var(--rv2-muted);
  font-size:.66rem;
  line-height:1.45;
}

/* HERO PREVIEW */
body.radar-entry-v2 .hero-visual {
  min-height:390px;
  display:grid;
  place-items:center;
}

body.radar-entry-v2 .rv2-preview {
  width:100%;
  max-width:470px;
  padding:16px;
  border-radius:26px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(220,227,237,.96);
  box-shadow:0 28px 70px rgba(30,64,175,.12);
  transform:rotate(.4deg);
}

body.radar-entry-v2 .rv2-preview-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
body.radar-entry-v2 .rv2-preview-title { display:flex; align-items:center; gap:9px; }
body.radar-entry-v2 .rv2-pin {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:var(--rv2-blue);
  background:var(--rv2-blue-soft);
  font-size:1rem;
}
body.radar-entry-v2 .rv2-preview-title strong { display:block; font-size:.76rem; }
body.radar-entry-v2 .rv2-preview-title small { display:block; margin-top:2px; color:var(--rv2-muted); font-size:.6rem; }
body.radar-entry-v2 .rv2-radius-pill {
  padding:7px 10px;
  border:1px solid var(--rv2-line);
  border-radius:10px;
  color:var(--rv2-text);
  background:#fbfcfe;
  font-size:.62rem;
  font-weight:700;
}

body.radar-entry-v2 .rv2-map {
  position:relative;
  height:230px;
  overflow:hidden;
  border-radius:19px;
  background:
    linear-gradient(90deg,transparent 49%,rgba(153,167,187,.17) 50%,transparent 51%) 0 0/74px 74px,
    linear-gradient(0deg,transparent 49%,rgba(153,167,187,.15) 50%,transparent 51%) 0 0/74px 74px,
    linear-gradient(135deg,#eef4fb,#f9fbfd);
  border:1px solid #e6ebf2;
}

body.radar-entry-v2 .rv2-map::before,
body.radar-entry-v2 .rv2-map::after {
  content:"";
  position:absolute;
  height:1px;
  background:#dfe6ee;
  transform-origin:left center;
}
body.radar-entry-v2 .rv2-map::before { width:120%; left:-10%; top:38%; transform:rotate(-13deg); }
body.radar-entry-v2 .rv2-map::after { width:115%; left:-8%; top:67%; transform:rotate(11deg); }

body.radar-entry-v2 .rv2-radius-circle {
  position:absolute;
  width:170px;
  height:170px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border:2px solid rgba(47,120,244,.52);
  border-radius:50%;
  background:rgba(47,120,244,.08);
  box-shadow:0 0 0 16px rgba(47,120,244,.035);
}

body.radar-entry-v2 .rv2-business-dot {
  position:absolute;
  left:50%;
  top:50%;
  width:32px;
  height:32px;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  border:4px solid #fff;
  border-radius:50%;
  color:#fff;
  background:var(--rv2-blue);
  box-shadow:0 5px 14px rgba(47,120,244,.30);
  font-size:.72rem;
  font-weight:900;
  z-index:3;
}

body.radar-entry-v2 .rv2-dot {
  position:absolute;
  width:12px;
  height:12px;
  border:3px solid #fff;
  border-radius:50%;
  background:var(--rv2-red);
  box-shadow:0 2px 6px rgba(16,24,40,.12);
  z-index:2;
}
body.radar-entry-v2 .rv2-dot.green { background:var(--rv2-green); }
body.radar-entry-v2 .d1{left:28%;top:32%}.d2{left:72%;top:26%}.d3{left:78%;top:60%}.d4{left:37%;top:72%}.d5{left:62%;top:76%}.d6{left:22%;top:57%}.d7{left:61%;top:39%}

body.radar-entry-v2 .rv2-map-legend {
  position:absolute;
  right:12px;
  top:12px;
  padding:9px 10px;
  display:grid;
  gap:6px;
  border-radius:12px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(226,232,240,.9);
  box-shadow:0 7px 18px rgba(16,24,40,.06);
  z-index:4;
}
body.radar-entry-v2 .rv2-map-legend span { display:flex; align-items:center; gap:6px; color:var(--rv2-text); font-size:.55rem; font-weight:650; }
body.radar-entry-v2 .rv2-map-legend i { width:7px; height:7px; border-radius:50%; background:var(--rv2-blue); }
body.radar-entry-v2 .rv2-map-legend span:nth-child(2) i { background:var(--rv2-red); }
body.radar-entry-v2 .rv2-map-legend span:nth-child(3) i { background:var(--rv2-green); }

body.radar-entry-v2 .rv2-preview-metrics {
  margin-top:11px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}
body.radar-entry-v2 .rv2-preview-metric {
  padding:11px;
  border:1px solid var(--rv2-line);
  border-radius:14px;
  background:#fbfcfe;
}
body.radar-entry-v2 .rv2-preview-metric span { display:block; color:var(--rv2-muted); font-size:.55rem; }
body.radar-entry-v2 .rv2-preview-metric strong { display:block; margin-top:3px; color:var(--rv2-ink); font-size:1rem; }

/* CONTEXTO */
body.radar-entry-v2 .entry-context { max-width:1040px; margin:0 auto 16px; }

/* FORMULÁRIO */
body.radar-entry-v2 .search-panel {
  max-width:1040px;
  margin:10px auto 26px;
  padding:34px;
  border:1px solid var(--rv2-line);
  border-radius:28px;
  background:#fff;
  box-shadow:0 22px 58px rgba(16,24,40,.07);
}

body.radar-entry-v2 .search-panel-head {
  padding:0 0 24px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  border-bottom:1px solid var(--rv2-line);
}
body.radar-entry-v2 .search-panel-head h2 {
  margin:7px 0 0;
  color:var(--rv2-ink);
  font-size:1.75rem;
  line-height:1.15;
  letter-spacing:-.035em;
}
body.radar-entry-v2 .search-panel-head p {
  max-width:560px;
  margin:8px 0 0;
  color:var(--rv2-muted);
  font-size:.84rem;
  line-height:1.55;
}
body.radar-entry-v2 .system-ready {
  padding:8px 11px;
  border:1px solid #d7efdf;
  color:var(--rv2-green);
  background:var(--rv2-green-soft);
  font-size:.63rem;
}

body.radar-entry-v2 .analysis-form { max-width:none; margin-top:26px; }
body.radar-entry-v2 .rv2-form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
body.radar-entry-v2 .rv2-form-grid + .rv2-form-grid { margin-top:16px; }
body.radar-entry-v2 .field { min-width:0; display:flex; flex-direction:column; }
body.radar-entry-v2 .field label { margin-bottom:7px; color:var(--rv2-ink); font-size:.72rem; font-weight:750; }
body.radar-entry-v2 .field input,
body.radar-entry-v2 .field select {
  width:100%;
  height:58px;
  padding:0 16px;
  border:1px solid #d9e1ec;
  border-radius:14px;
  outline:none;
  color:var(--rv2-ink);
  background:#fff;
  font-size:.9rem;
  transition:border-color .18s ease,box-shadow .18s ease;
}
body.radar-entry-v2 .field input:focus,
body.radar-entry-v2 .field select:focus {
  border-color:var(--rv2-blue);
  box-shadow:0 0 0 4px rgba(47,120,244,.08);
}
body.radar-entry-v2 .field input::placeholder { color:#a5afbd; }
body.radar-entry-v2 .field small { margin-top:6px; color:var(--rv2-muted); font-size:.62rem; line-height:1.45; }
body.radar-entry-v2 .field-segment-compat { display:none !important; }
body.radar-entry-v2 .radius-field { max-width:none; }

body.radar-entry-v2 .rv2-form-footer {
  margin-top:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
body.radar-entry-v2 .primary-button[type="submit"] {
  min-width:230px;
  min-height:56px;
  margin:0;
  padding:0 19px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border:0;
  border-radius:14px;
  color:#fff;
  background:linear-gradient(135deg,var(--rv2-blue),var(--rv2-blue-strong));
  box-shadow:0 14px 28px rgba(47,120,244,.20);
  font-size:.86rem;
  font-weight:800;
}
body.radar-entry-v2 .rv2-helper {
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--rv2-muted);
  font-size:.68rem;
  line-height:1.4;
}
body.radar-entry-v2 .rv2-helper i {
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:var(--rv2-green);
  background:var(--rv2-green-soft);
  font-style:normal;
}

/* COMO FUNCIONA */
body.radar-entry-v2 .rv2-how {
  max-width:1040px;
  margin:0 auto 80px;
  padding:23px 24px;
  display:grid;
  grid-template-columns:220px 1fr;
  gap:30px;
  align-items:center;
  border:1px solid var(--rv2-line);
  border-radius:22px;
  background:linear-gradient(135deg,#f9fbff,#eef5ff);
}
body.radar-entry-v2 .rv2-how h3 { margin:6px 0 0; color:var(--rv2-ink); font-size:1.2rem; line-height:1.18; letter-spacing:-.025em; }
body.radar-entry-v2 .rv2-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
body.radar-entry-v2 .rv2-step { display:grid; grid-template-columns:34px 1fr; gap:9px; align-items:start; }
body.radar-entry-v2 .rv2-step-num {
  width:34px;height:34px;display:grid;place-items:center;border-radius:50%;
  color:var(--rv2-blue);background:#fff;border:1px solid #dce6f4;font-size:.68rem;font-weight:850;
}
body.radar-entry-v2 .rv2-step strong { display:block; color:var(--rv2-ink); font-size:.72rem; line-height:1.3; }
body.radar-entry-v2 .rv2-step span:last-child { display:block; margin-top:3px; color:var(--rv2-muted); font-size:.62rem; line-height:1.4; }

/* LOADING/RESULTADO */
body.radar-entry-v2 .loading-panel,
body.radar-entry-v2 #resultsSection > .panel {
  max-width:920px;
  margin:28px auto 70px;
  padding:38px;
  border-radius:26px;
}
body.radar-entry-v2 #resultsSection > .panel h2 { margin-top:8px; color:var(--rv2-ink); }
body.radar-entry-v2 #resultsSection > .panel p { margin-top:7px; color:var(--rv2-muted); }
body.radar-entry-v2 #resultsSection .primary-button { margin-top:22px; }
body.radar-entry-v2 #resultsSection .secondary-button { margin-left:8px; }

@media (max-width:980px) {
  body.radar-entry-v2 .hero { grid-template-columns:1fr 330px; gap:34px; }
  body.radar-entry-v2 .hero-copy h1 { font-size:clamp(2.45rem,5vw,3.35rem); }
  body.radar-entry-v2 .hero-visual { min-height:340px; }
  body.radar-entry-v2 .rv2-benefits { grid-template-columns:1fr; max-width:560px; }
  body.radar-entry-v2 .rv2-how { grid-template-columns:1fr; gap:17px; }
}

@media (max-width:760px) {
  body.radar-entry-v2 .radar-main,
  body.radar-entry-v2 .topbar { width:calc(100% - 24px); }
  body.radar-entry-v2 .topbar { min-height:66px; }
  body.radar-entry-v2 .topbar-status { display:none; }
  body.radar-entry-v2 .brand-copy span { display:none; }

  body.radar-entry-v2 .hero {
    padding:34px 0 24px;
    grid-template-columns:1fr;
    gap:24px;
  }
  body.radar-entry-v2 .hero-copy h1 {
    max-width:none;
    font-size:clamp(2.05rem,9.7vw,2.8rem);
    line-height:1.04;
    letter-spacing:-.05em;
  }
  body.radar-entry-v2 .hero-copy > p { font-size:.92rem; line-height:1.6; }
  body.radar-entry-v2 .rv2-hero-actions { margin-top:20px; }
  body.radar-entry-v2 .rv2-scroll-cta { width:100%; justify-content:space-between; }
  body.radar-entry-v2 .rv2-benefits { grid-template-columns:1fr; margin-top:20px; }
  body.radar-entry-v2 .hero-visual { min-height:auto; }
  body.radar-entry-v2 .rv2-preview { max-width:none; padding:12px; border-radius:20px; transform:none; }
  body.radar-entry-v2 .rv2-map { height:190px; }
  body.radar-entry-v2 .rv2-preview-metrics { grid-template-columns:1fr 1fr 1fr; }

  body.radar-entry-v2 .search-panel {
    margin-top:8px;
    padding:22px 17px 18px;
    border-radius:22px;
  }
  body.radar-entry-v2 .search-panel-head { flex-direction:column; gap:10px; padding-bottom:19px; }
  body.radar-entry-v2 .search-panel-head h2 { font-size:1.45rem; }
  body.radar-entry-v2 .system-ready { display:none; }
  body.radar-entry-v2 .rv2-form-grid { grid-template-columns:1fr; gap:14px; }
  body.radar-entry-v2 .rv2-form-grid + .rv2-form-grid { margin-top:14px; }
  body.radar-entry-v2 .field input,
  body.radar-entry-v2 .field select { height:56px; }
  body.radar-entry-v2 .rv2-form-footer { flex-direction:column; align-items:stretch; margin-top:18px; }
  body.radar-entry-v2 .primary-button[type="submit"] { width:100%; min-width:0; }
  body.radar-entry-v2 .rv2-helper { justify-content:center; text-align:center; }

  body.radar-entry-v2 .rv2-how { margin-bottom:52px; padding:19px 17px; }
  body.radar-entry-v2 .rv2-steps { grid-template-columns:1fr; gap:14px; }

  body.radar-entry-v2 .loading-panel,
  body.radar-entry-v2 #resultsSection > .panel { padding:26px 18px; border-radius:22px; }
}

@media (max-width:420px) {
  body.radar-entry-v2 .hero-copy h1 { font-size:2.15rem; }
  body.radar-entry-v2 .rv2-preview-metrics { grid-template-columns:1fr; }
  body.radar-entry-v2 .rv2-map-legend { display:none; }
}
