/* Aviso e preferências de cookies (Recol). Sobreposição fixa: não altera o layout aprovado da página.
   As três ações têm o mesmo estilo, tamanho e ordem de tabulação (aceitar, rejeitar, preferências). */
.consentimento{position:fixed;z-index:60;left:16px;bottom:16px;width:min(470px,calc(100% - 32px));box-sizing:border-box;
  padding:16px 18px;border:1px solid var(--linha,#e1e6df);border-radius:10px;background:#fff;color:var(--texto,#2d372f);
  box-shadow:0 12px 32px rgba(38,52,27,.18);font:14px/1.5 var(--fonte,"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif)}
.consentimento[hidden]{display:none}
.consentimento-texto{margin:0}
.consentimento a,.consentimento-dialogo a{color:var(--verde,#4a7726);font-weight:600}
.consentimento-acoes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.consentimento-botao{min-height:40px;padding:8px 10px;border:1px solid var(--verde,#4a7726);border-radius:6px;background:#fff;
  color:var(--verde-fundo,#354b23);font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer}
.consentimento-botao:hover{background:var(--verde-claro,#ecf5e5)}
.consentimento-botao:focus-visible,.consentimento-fechar:focus-visible,.link-consentimento:focus-visible,
.consentimento-opcao input:focus-visible{outline:3px solid var(--verde-foco,#639b37);outline-offset:2px}

.consentimento-dialogo{width:min(560px,calc(100% - 32px));max-height:calc(100% - 32px);box-sizing:border-box;padding:0;border:0;
  border-radius:12px;background:#fff;color:var(--texto,#2d372f);box-shadow:0 20px 48px rgba(38,52,27,.28);
  font:15px/1.55 var(--fonte,"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif)}
.consentimento-dialogo::backdrop{background:rgba(38,52,27,.45)}
.consentimento-caixa{position:relative;padding:24px 24px 20px}
.consentimento-caixa h2{margin:0 32px 8px 0;font-size:20px;line-height:1.25;color:var(--tinta,#16201a)}
.consentimento-caixa p{margin:0 0 12px}
.consentimento-opcao{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;padding:10px 0;border-top:1px solid var(--linha,#e1e6df)}
.consentimento-opcao input{width:18px;height:18px;margin:3px 0 0;accent-color:var(--verde,#4a7726)}
.consentimento-politica{margin-top:6px}
.consentimento-fechar{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:none;
  color:var(--suave,#5d685f);font-size:24px;line-height:1;cursor:pointer}
.consentimento-fechar:hover{background:var(--cinza,#f4f6f2)}

/* rodapé: revogação/alteração a qualquer momento */
.link-consentimento{padding:0;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}

@media (max-width:640px){
  /* celular: aviso compacto; as três ações continuam lado a lado, iguais (texto pode quebrar em 2 linhas) */
  .consentimento{left:12px;right:12px;bottom:12px;width:auto;padding:12px 14px;font-size:13px;line-height:1.45}
  .consentimento-acoes{gap:6px;margin-top:10px}
  .consentimento-botao{min-height:44px;padding:6px;font-size:13px}
  /* enquanto o aviso estiver aberto, o WhatsApp flutuante sobe para não ficar coberto */
  html.consentimento-visivel .whatsapp-flutuante{bottom:calc(var(--consentimento-altura,0px) + 24px)}
}
@media (prefers-reduced-motion:reduce){.consentimento-botao,.consentimento-fechar{transition:none}}
