/* LIMA_GEOPDF_V1 — configurador do Mapa GeoPDF */

.lima-geopdf-fundo{
  position:fixed;
  inset:0;
  z-index:5200;
  background:#0009;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  box-sizing:border-box;
  font-family:Arial,sans-serif;
}

.lima-geopdf-modal{
  width:min(440px,100%);
  max-height:92vh;
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  box-shadow:0 12px 40px #0006;
}

.lima-geopdf-topo{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  padding:14px 16px;
  background:#153d2c;
  color:#fff;
  flex:0 0 auto;
}

.lima-geopdf-topo strong{
  font-size:15.5px;
  display:block;
}

.lima-geopdf-topo small{
  opacity:.85;
  font-size:11px;
  display:block;
  margin-top:2px;
  line-height:1.35;
}

.lima-geopdf-fechar{
  background:transparent;
  border:0;
  color:#fff;
  font-size:22px;
  line-height:1;
  cursor:pointer;
  padding:2px 8px;
  border-radius:8px;
  flex:0 0 auto;
}

.lima-geopdf-fechar:hover{
  background:#ffffff22;
}

.lima-geopdf-corpo{
  overflow:auto;
  flex:1 1 auto;
  min-height:0;
  padding:14px 16px 18px;
}

.lima-geopdf-resumo{
  background:#f4f8f5;
  border:1px solid #e3ece5;
  border-radius:10px;
  padding:9px 11px;
  margin-bottom:12px;
  display:flex;
  flex-direction:column;
  gap:2px;
}

.lima-geopdf-resumo strong{
  font-size:13.5px;
  color:#143f2a;
}

.lima-geopdf-resumo span{
  font-size:11px;
  color:#5c6b61;
}

/* item 2/21 do pedido — perímetro não é mais um toggle, só um aviso
   discreto (não pode ser desligado). */
.lima-geopdf-perimetro-fixo{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:11px;
  color:#5c6b61;
  background:#f4f8f5;
  border:1px solid #e3ece5;
  border-radius:8px;
  padding:6px 10px;
  margin-bottom:12px;
}

.lima-geopdf-perimetro-fixo::before{
  content:'';
  flex:0 0 auto;
  width:14px;
  height:2px;
  border-radius:2px;
  background:#e8d100;
}

.lima-geopdf-secao{
  margin-bottom:12px;
}

.lima-geopdf-secao-titulo{
  font-size:10.5px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.03em;
  color:#7c877f;
  margin-bottom:5px;
}

/* =====================================================
   CAMADAS — agrupadas, com toggle liga/desliga
   ===================================================== */

.lima-geopdf-camadas{
  border:1px solid #e6ece7;
  border-radius:10px;
  overflow:hidden;
}

.lima-geopdf-grupo + .lima-geopdf-grupo{
  border-top:1px solid #edf1ee;
}

.lima-geopdf-grupo-titulo{
  padding:7px 10px 3px;
  font-size:10px;
  font-weight:700;
  color:#8a9590;
  text-transform:uppercase;
  letter-spacing:.02em;
}

.lima-geopdf-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  cursor:pointer;
  user-select:none;
}

.lima-geopdf-item:hover{
  background:#f4f8f5;
}

.lima-geopdf-item-nome{
  font-size:13px;
  color:#2f3b34;
  display:flex;
  flex-direction:column;
  line-height:1.3;
}

.lima-geopdf-item-nome small{
  font-size:10.5px;
  color:#a5ada7;
  font-weight:400;
}

.lima-geopdf-item-desabilitado{
  cursor:default;
  opacity:.6;
}

.lima-geopdf-item-desabilitado:hover{
  background:transparent;
}

/* toggle liga/desliga — checkbox real, só reestilizado
   (mantém teclado/leitor de tela funcionando normalmente) */
.lima-geopdf-switch{
  -webkit-appearance:none;
  appearance:none;
  flex:0 0 auto;
  width:38px;
  height:22px;
  border-radius:999px;
  background:#d7dedb;
  position:relative;
  margin:0;
  cursor:pointer;
  transition:background .15s ease;
}

.lima-geopdf-switch::before{
  content:'';
  position:absolute;
  top:2px;
  left:2px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 1px 3px rgba(0,0,0,.28);
  transition:transform .15s ease;
}

.lima-geopdf-switch:checked{
  background:#177743;
}

.lima-geopdf-switch:checked::before{
  transform:translateX(16px);
}

.lima-geopdf-switch:disabled{
  cursor:default;
  opacity:.55;
}

.lima-geopdf-switch:focus-visible{
  outline:2px solid #177743;
  outline-offset:2px;
}

/* =====================================================
   IMAGEM DE FUNDO — cartões de escolha única
   ===================================================== */

.lima-geopdf-basemaps{
  display:flex;
  flex-direction:column;
  gap:6px;
}

.lima-geopdf-basemap{
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border:1px solid #e6ece7;
  border-radius:9px;
  cursor:pointer;
  transition:border-color .12s ease, background .12s ease;
}

.lima-geopdf-basemap:hover{
  background:#f7faf8;
}

.lima-geopdf-basemap-ativo{
  border-color:#177743;
  background:#f0f7f2;
}

.lima-geopdf-basemap input[type="radio"]{
  flex:0 0 auto;
  width:16px;
  height:16px;
  accent-color:#177743;
  margin:0;
}

.lima-geopdf-basemap-textos{
  display:flex;
  flex-direction:column;
  line-height:1.3;
}

.lima-geopdf-basemap-textos strong{
  font-size:13px;
  color:#2f3b34;
}

.lima-geopdf-basemap-textos small{
  font-size:10.5px;
  color:#8a9590;
}

.lima-geopdf-nota{
  margin-top:7px;
  font-size:10.5px;
  color:#93998f;
  line-height:1.4;
}

/* =====================================================
   SENTINEL-2 — data + cena (item 12-18 do pedido)
   ===================================================== */

.lima-geopdf-sentinel{
  margin-top:8px;
  padding:10px;
  background:#f7faf8;
  border:1px solid #e6ece7;
  border-radius:9px;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.lima-geopdf-campo{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.lima-geopdf-campo span{
  font-size:10.5px;
  font-weight:700;
  color:#5c6b61;
  text-transform:uppercase;
  letter-spacing:.02em;
}

.lima-geopdf-campo input[type="date"],
.lima-geopdf-campo select{
  height:36px;
  padding:0 9px;
  border:1px solid #d6ded9;
  border-radius:7px;
  background:#fff;
  font-size:12.5px;
  color:#2f3b34;
  font-family:inherit;
}

.lima-geopdf-campo select{
  height:auto;
  min-height:36px;
  padding:6px 9px;
}

.lima-geopdf-sentinel-status{
  font-size:11.5px;
  color:#5c6b61;
  padding:4px 2px;
}

.lima-geopdf-sentinel-erro{
  font-size:11.5px;
  color:#a12a2a;
  background:#fdecec;
  border:1px solid #f3c6c6;
  border-radius:7px;
  padding:7px 9px;
  line-height:1.4;
}

/* rodapé fixo (fora da área com rolagem) — item 17 do pedido:
   "Gerar GeoPDF" sempre acessível, nunca precisa rolar até o fim */
.lima-geopdf-rodape{
  flex:0 0 auto;
  padding:12px 16px 14px;
  border-top:1px solid #e9eeea;
  background:#fff;
}

.lima-geopdf-erro{
  background:#fdecec;
  border:1px solid #f3c6c6;
  color:#a12a2a;
  border-radius:8px;
  padding:8px 10px;
  font-size:12px;
  margin-bottom:10px;
  line-height:1.4;
}

.lima-geopdf-gerar{
  width:100%;
  height:44px;
  border:0;
  border-radius:9px;
  background:#177743;
  color:#fff;
  font-size:14.5px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 3px 10px rgba(23,119,67,.25);
  flex:0 0 auto;
}

.lima-geopdf-gerar:hover{
  background:#146238;
}

.lima-geopdf-gerar:disabled{
  opacity:.7;
  cursor:default;
}

/* =====================================================
   TELA DE RESULTADO DO GEOPDF — item 9-19 do pedido: mostra o
   PDF já gerado (PDF.js), sem regenerar; Baixar/Compartilhar/
   Voltar (sem Imprimir). Mesmo padrão visual do configurador
   (.lima-geopdf-fundo/.lima-geopdf-modal/.lima-geopdf-topo/
   .lima-geopdf-rodape), só um pouco mais largo pra caber o mapa.
   ===================================================== */

.lima-geopdf-resultado-modal{
  width:min(600px,100%);
  max-height:94vh;
}

.lima-geopdf-resultado-corpo{
  overflow:auto;
  flex:1 1 auto;
  min-height:0;
  padding:14px;
  background:#eef2ef;
}

.lima-geopdf-resultado-paginas{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
}

.lima-geopdf-resultado-pagina{
  width:100%;
  background:#fff;
  border-radius:4px;
  box-shadow:0 6px 22px rgba(0,0,0,.16);
  overflow:hidden;
  line-height:0;
}

.lima-geopdf-resultado-pagina canvas{
  display:block;
  width:100%;
  height:auto;
}

.lima-geopdf-resultado-carregando{
  padding:40px 16px;
  text-align:center;
  font-size:13px;
  color:#6b736e;
  line-height:1.5;
}

.lima-geopdf-resultado-rodape{
  display:flex;
  gap:8px;
  padding-bottom:max(14px,env(safe-area-inset-bottom));
}

.lima-geopdf-resultado-btn{
  flex:1 1 0;
  height:44px;
  border:0;
  border-radius:9px;
  font-size:13.5px;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
}

.lima-geopdf-resultado-baixar{
  background:#177743;
  color:#fff;
  box-shadow:0 3px 10px rgba(23,119,67,.25);
}

.lima-geopdf-resultado-baixar:hover{
  background:#146238;
}

.lima-geopdf-resultado-compartilhar{
  background:#e6f1ea;
  color:#146238;
}

.lima-geopdf-resultado-compartilhar:hover{
  background:#d9ebe0;
}

.lima-geopdf-resultado-voltar{
  background:#f1f3f2;
  color:#4c5850;
  flex:0 0 auto;
  padding:0 16px;
}

.lima-geopdf-resultado-voltar:hover{
  background:#e6e9e7;
}

@media (max-width:700px){

  .lima-geopdf-fundo{
    padding:0;
    align-items:flex-end;
  }

  .lima-geopdf-modal{
    width:100%;
    max-height:88vh;
    border-radius:16px 16px 0 0;
  }

  .lima-geopdf-item{
    padding:10px;
  }

  .lima-geopdf-switch{
    width:42px;
    height:25px;
  }

  .lima-geopdf-switch::before{
    width:21px;
    height:21px;
  }

  .lima-geopdf-switch:checked::before{
    transform:translateX(17px);
  }

  /* item 18 do pedido — botões fáceis de tocar, nada cortado: em
     telas estreitas "Baixar"/"Compartilhar" ficam lado a lado e
     "Voltar" ocupa a linha toda embaixo, em vez de 3 botões
     espremidos numa linha só. */
  .lima-geopdf-resultado-rodape{
    flex-wrap:wrap;
  }

  .lima-geopdf-resultado-baixar,
  .lima-geopdf-resultado-compartilhar{
    flex:1 1 calc(50% - 4px);
  }

  .lima-geopdf-resultado-voltar{
    flex:1 1 100%;
  }

}

/* =====================================================
   AVISO DE COMPARTILHAMENTO — item 3 do pedido (rodada de
   acabamento): substitui o alert() nativo por um diálogo do
   próprio portal, mesma linguagem visual do resto do GeoPDF.
   Empilha por cima da tela de resultado (z-index maior).
   ===================================================== */

.lima-geopdf-aviso-fundo{
  position:fixed;
  inset:0;
  z-index:5300;
  background:#0009;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  box-sizing:border-box;
  font-family:Arial,sans-serif;
}

.lima-geopdf-aviso-caixa{
  width:min(360px,100%);
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 12px 40px #0006;
  padding:20px;
  box-sizing:border-box;
  text-align:center;
}

.lima-geopdf-aviso-texto{
  font-size:13.5px;
  line-height:1.5;
  color:#2b352f;
  margin:0 0 16px;
  white-space:pre-line;
}

.lima-geopdf-aviso-btn{
  height:42px;
  padding:0 24px;
  border:0;
  border-radius:9px;
  background:#177743;
  color:#fff;
  font-size:13.5px;
  font-weight:700;
  cursor:pointer;
}

.lima-geopdf-aviso-btn:hover{
  background:#146238;
}
