/*
    Entrada do site — barra da loja, modais e banner LGPD.

    Arquivo PRÓPRIO de propósito: o conta.css já acumulou defs repetidas de modal
    e está na fila de faxina. Não somar mais nada lá.

    As cores saem do arquivo de tenant, via variáveis no <html> (ver _Layout).
*/

/* ---------- barra da loja ---------- */
.barra-loja{
  background:var(--brand-dark);
  color:#fff;font-size:13px;padding:7px 20px;
  display:flex;align-items:center;gap:10px;
}
.barra-loja-nome{font-weight:500;letter-spacing:.01em}
.barra-loja-trocar{
  background:none;border:0;font:inherit;padding:0;cursor:pointer;
  color:rgba(255,255,255,.78);text-decoration:underline;
}
.barra-loja-trocar:hover{color:#fff}

/* ---------- overlay e caixa ---------- */
.ent-overlay{
  position:fixed;inset:0;z-index:6000;padding:20px;
  background:rgba(14,22,18,.55);
  display:none;align-items:center;justify-content:center;
}
.ent-overlay.aberto{display:flex}
.ent-wrap{position:relative;width:100%;max-width:520px}
.ent-modal{
  background:#fff;border-radius:14px;width:100%;max-height:86vh;
  display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 18px 50px rgba(0,0,0,.28);
}
.ent-fechar{
  position:absolute;top:14px;right:16px;z-index:1;
  background:none;border:0;font-size:24px;line-height:1;padding:4px 8px;
  color:#5d6b65;cursor:pointer;
}
.ent-fechar:hover{color:#1d2321}
.ent-topo{padding:20px 24px 16px;border-bottom:1px solid #e2e8e5}
.ent-topo h3{margin:0;font-family:'Sora',sans-serif;font-size:19px;letter-spacing:-.01em}
.ent-topo p{margin:4px 0 0;font-size:13.5px;color:#5d6b65}
.ent-corpo{padding:20px 24px;overflow-y:auto}
.ent-corpo p{margin:0 0 10px}
.ent-corpo p:last-child{margin-bottom:0}
.ent-pe{
  padding:14px 24px;border-top:1px solid #e2e8e5;
  display:flex;gap:10px;justify-content:flex-end;
}

/* ---------- opções do seletor ---------- */
.sel-cidade-titulo{
  font-family:'Sora',sans-serif;font-weight:600;font-size:12.5px;
  color:#5d6b65;margin:18px 0 8px;
}
.sel-cidade-titulo:first-child{margin-top:0}
.sel-opcao{
  display:block;width:100%;text-align:left;font:inherit;cursor:pointer;
  background:#fff;border:1px solid #e2e8e5;border-radius:10px;
  padding:13px 15px;margin-bottom:8px;
  transition:border-color .12s,background .12s;
}
.sel-opcao:hover{border-color:var(--brand);background:var(--brand-light)}
.sel-opcao:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.sel-nome{
  display:block;font-family:'Sora',sans-serif;font-weight:600;font-size:14.5px;color:#1d2321;
}
.sel-end{display:block;font-size:12.5px;color:#5d6b65;margin-top:3px}
.sel-extra{display:block;font-size:12px;color:var(--brand-mid);margin-top:4px}
.sel-extra-alerta{color:#b26a00}
/* seta é irmã do conteúdo, nunca dentro de container de largura fixa */
.sel-seta{float:right;color:var(--brand);font-weight:700;margin-left:auto}
.sel-voltar{
  background:none;border:0;font:inherit;padding:0;margin-bottom:14px;
  color:var(--brand);cursor:pointer;font-size:13.5px;
}

/* ---------- aviso ---------- */
.aviso-cidades{margin:12px 0 0;padding-left:20px}
.aviso-cidades li{margin-bottom:3px}
.aviso-alerta{
  margin-top:18px;padding:14px 16px;border-radius:0 8px 8px 0;
  background:#fff6e6;border-left:3px solid #b26a00;
}
.aviso-retirada{
  margin-top:4px;padding:14px 16px;border-radius:0 8px 8px 0;
  background:var(--brand-light);border-left:3px solid var(--brand);
}
.aviso-link{
  background:none;border:0;font:inherit;padding:0;cursor:pointer;
  color:var(--brand);text-decoration:underline;
}

/* ---------- consulta de cobertura ---------- */
.cob-intro{font-size:14px;color:#5d6b65;margin-bottom:16px!important}
.cob-campos{display:flex;gap:12px}
.cob-campo{flex:1}
.cob-campo label{display:block;font-size:12.5px;color:#5d6b65;margin-bottom:5px}
.cob-campo input{
  width:100%;padding:10px 12px;font:inherit;
  border:1px solid #e2e8e5;border-radius:8px;
}
.cob-campo input:focus{outline:2px solid var(--brand);outline-offset:-1px;border-color:var(--brand)}
.cob-resultado{margin-top:16px;padding:14px 16px;border-radius:8px}
.cob-resultado h4{margin:0 0 5px;font-family:'Sora',sans-serif;font-size:14.5px}
.cob-resultado p{margin:0;font-size:13.5px}
.cob-ok{background:var(--brand-light);border-left:3px solid var(--brand)}
.cob-ok h4{color:var(--brand-dark)}
.cob-amb{background:#fff6e6;border-left:3px solid #b26a00}
.cob-amb h4{color:#b26a00}
.cob-nao{background:#fdeded;border-left:3px solid #c02b2b}
.cob-nao h4{color:#c02b2b}

/* ---------- banner LGPD ---------- */
.lgpd-banner{
  position:fixed;left:0;right:0;bottom:0;z-index:5500;
  background:#14181b;color:#dfe7ea;padding:18px 22px;
  display:flex;gap:22px;align-items:center;flex-wrap:wrap;
  box-shadow:0 -4px 20px rgba(0,0,0,.25);
}
.lgpd-banner[hidden]{display:none}
.lgpd-texto{flex:1;min-width:280px;font-size:13.5px;max-width:78ch}
.lgpd-texto strong{
  display:block;font-family:'Sora',sans-serif;font-weight:600;font-size:14px;
  margin-bottom:4px;color:#fff;
}
.lgpd-texto a{color:var(--brand-mid)}

@media (max-width:640px){
  .cob-campos{flex-direction:column}
  .ent-overlay{padding:12px}
  .ent-modal{max-height:92vh}
  .lgpd-banner{padding:14px 16px;gap:12px}
}
@media (prefers-reduced-motion:reduce){
  .sel-opcao{transition:none}
}
