/* ============================================================
   ATLAS RS — consulta.css
   Verificador de área (upload de SHP/KML/KMZ ou coordenada).
   ============================================================ */

.consulta-shell{ padding: 34px 0 70px; }

.upload-zone{
  border: 2px dashed var(--line);
  border-radius: var(--radius-lg);
  padding: 40px 24px;
  text-align: center;
  background: var(--paper-2);
  transition: border-color .15s, background .15s;
  cursor: pointer;
}
.upload-zone.dragover{ border-color: var(--brand-green); background: rgba(47,107,79,.05); }
.upload-zone svg{ width: 36px; height: 36px; color: var(--brand-green); margin: 0 auto 12px; }
.upload-zone h3{ font-family: var(--font-body); font-size: 1rem; margin-bottom: 6px; }
.upload-zone p{ font-size: .84rem; color: var(--ink-muted); }
.upload-zone input[type="file"]{ display: none; }
.upload-formats{ font-family: var(--font-mono); font-size: .7rem; color: var(--ink-muted); margin-top: 10px; }

.consulta-divisor{
  display: flex; align-items: center; gap: 14px; margin: 26px 0;
  color: var(--ink-muted); font-size: .8rem; font-family: var(--font-mono); text-transform: uppercase; letter-spacing: .05em;
}
.consulta-divisor::before, .consulta-divisor::after{ content: ""; flex: 1; height: 1px; background: var(--line); }

.coord-form{ display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; }
.coord-field{ display: flex; flex-direction: column; gap: 4px; }
.coord-field label{ font-size: .74rem; color: var(--ink-muted); font-family: var(--font-mono); }
.coord-field input{ padding: 11px 14px; border-radius: var(--radius-md); border: 1px solid var(--line); font-size: .9rem; width: 160px; }

#consultaStatus{ margin-top: 20px; font-size: .88rem; }
#consultaStatus.erro{ color: #8a1f1f; }
#consultaStatus.carregando{ color: var(--ink-muted); }

.resultado-wrap{ display: none; margin-top: 34px; }
.resultado-wrap.show{ display: block; }

.resultado-header{
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px;
  padding-bottom: 16px; border-bottom: 1px solid var(--line); margin-bottom: 20px;
}
.resultado-header h2{ font-size: 1.3rem; }
.resultado-header .municipios-tocados{ font-size: .84rem; color: var(--ink-muted); margin-top: 4px; }

.resultado-cols{ display: grid; grid-template-columns: 300px 1fr; gap: 26px; align-items: start; }
.resultado-mapa{ position: sticky; top: 20px; }
.resultado-mapa svg{ width: 100%; height: auto; border: 1px solid var(--line); border-radius: var(--radius-md); background: #fff; }
.resultado-mapa .muni-path{ fill: #e4e0d2; stroke: #fff; stroke-width: .6; }
.resultado-mapa .muni-path.match{ fill: #cfe0d3; stroke: var(--brand-green); stroke-width: 2; }
.resultado-mapa .area-analisada circle{
  fill: #c1432f; fill-opacity: .85; stroke: #fff; stroke-width: 1.4;
}
.resultado-mapa .area-analisada path{
  fill: #c1432f; fill-opacity: .35; stroke: #c1432f; stroke-width: 2;
  stroke-dasharray: 4 3;
}

.privacidade-nota{
  display: flex; align-items: flex-start; gap: 10px;
  background: rgba(47,107,79,.06); border: 1px solid rgba(47,107,79,.2);
  border-radius: var(--radius-md); padding: 14px 16px; margin-bottom: 24px;
  font-size: .82rem; color: #2f5233; line-height: 1.55;
}
.privacidade-nota svg{ width: 18px; height: 18px; flex: none; margin-top: 1px; }

.aviso-camadas-futuras{
  background: rgba(185,118,47,.08); border: 1px solid rgba(185,118,47,.3);
  border-radius: var(--radius-md); padding: 14px 18px; font-size: .82rem;
  color: #6b4a1f; line-height: 1.6; margin-top: 24px;
}

@media (max-width: 800px){
  .resultado-cols{ grid-template-columns: 1fr; }
  .resultado-mapa{ position: static; max-width: 320px; margin: 0 auto; }
}

.interf-chip{
  display: inline-flex; align-items: baseline; gap: 5px;
  background: #f7e8e4; color: #8a3a2a; border: 1px solid #e3c3b8;
  border-radius: 999px; padding: 5px 11px; font-size: .8rem; margin: 3px 5px 3px 0;
}
.interf-chip b{ font-weight: 700; }
.interf-empty{ font-size: .82rem; color: var(--ink-muted); }
.interf-caveat{ font-size: .78rem; color: var(--ink-muted); line-height: 1.5; }
.interf-caveat a{ color: var(--brand-green); font-weight: 600; }
