/* Oxford — aviso de cookies (F8).
 *
 * Cores em hexadecimal e não em var(--ox-*) de propósito: os tokens das landing
 * pages só existem onde o [oxford_lp_styles] roda, e este aviso aparece no site
 * inteiro. São os mesmos valores da paleta (azul #1d3557, ciano #a8dadc).
 *
 * Duas regras vindas do pedido: não empurrar o conteúdo (por isso `fixed`, sem
 * padding no body) e não tapar o CTA no celular (por isso o botão flutuante do
 * WhatsApp sobe pela --ox-consent-altura, que o JS mede).
 */

#ox-consent {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  /* Acima do botão flutuante (999) e do menu (1000); abaixo do popup do CTA
     (999999), senão o aviso cobriria o formulário de cadastro aberto. */
  z-index: 99000;
  background: #1d3557;
  color: #f1faee;
  border-top: 1px solid rgba(168, 218, 220, 0.3);
  box-shadow: 0 -6px 24px rgba(0, 0, 0, 0.28);
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-size: 13.5px;
  line-height: 1.55;
  padding: 14px 16px;
  transform: translateY(110%);
  transition: transform 0.28s ease-out;
}

#ox-consent.is-open {
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  #ox-consent { transition: none; }
}

.ox-consent-inner {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.ox-consent-texto {
  flex: 1 1 300px;
  min-width: 0;
  margin: 0;
}

.ox-consent-texto a {
  color: #a8dadc;
  text-decoration: underline;
}

.ox-consent-texto a:hover,
.ox-consent-texto a:focus {
  color: #ffffff;
}

.ox-consent-atual {
  display: block;
  color: rgba(241, 250, 238, 0.7);
  font-size: 12px;
}

.ox-consent-atual:empty {
  display: none;
}

.ox-consent-acoes {
  display: flex;
  gap: 10px;
  flex: 0 0 auto;
}

/* Os dois botões têm o MESMO peso: mesmo tamanho, mesma largura mínima, mesma
   espessura de letra e os dois preenchidos. Recusar era um contorno translúcido
   ao lado de um botão sólido — parecia a opção de segunda classe, e a orientação
   da ANPD é que recusar seja tão fácil e tão visível quanto aceitar. A marca não
   foi invertida: a cor da casa (ciano) continua sendo a do "Aceitar"; o "Recusar"
   fica no creme neutro da paleta. Os dois passam folgado no contraste de texto
   sobre o fundo do botão (7,8:1 e 11,9:1). */
.ox-consent-btn {
  font: inherit;
  font-weight: 600;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 10px 20px;
  min-width: 124px;
  cursor: pointer;
  white-space: nowrap;
  transition: filter 0.2s;
}

.ox-consent-aceitar {
  background: #a8dadc;
  border-color: #a8dadc;
  color: #1d3557;
}

.ox-consent-recusar {
  background: #f1faee;
  border-color: #f1faee;
  color: #1d3557;
}

/* O realce do hover é o mesmo nos dois, para não devolver pela porta dos fundos
   a diferença de peso que a regra acima tirou. */
.ox-consent-btn:hover,
.ox-consent-btn:focus {
  filter: brightness(1.06);
}

.ox-consent-btn:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 2px;
}

/* Link discreto do rodapé: é um <button> para não virar navegação, mas tem de
   parecer com os outros links do rodapé onde ele mora. Sem `opacity`: com 0,85
   o link caía para 2,2:1 no rodapé das LPs — discreto virou ilegível, e este é o
   único caminho que o visitante tem para trocar a escolha. */
.ox-consent-link {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  text-decoration: underline;
}

.ox-consent-link:hover,
.ox-consent-link:focus {
  text-decoration-thickness: 2px;
}

.ox-consent-link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* No rodapé das LPs o texto ao redor é o cinza médio da paleta (--ox-gray-500,
   #6b7280) sobre o azul escuro: herdar essa cor deixaria o link em 2,6:1, ainda
   abaixo do mínimo. O cinza claro sobe para 8,4:1 sem destoar da linha. */
.ox-footer-copy .ox-consent-link {
  color: #d1d5db;
}

/* O botão flutuante do WhatsApp fica exatamente onde o aviso entra. Enquanto o
   aviso estiver na tela, ele sobe; quando some, volta ao lugar sozinho. */
.ox-consent-visivel .ox-whatsapp-float {
  bottom: calc(24px + var(--ox-consent-altura, 0px));
  transition: bottom 0.28s ease-out;
}

@media (max-width: 640px) {
  #ox-consent {
    padding: 12px 14px;
    font-size: 13px;
  }

  .ox-consent-inner {
    gap: 10px;
  }

  /* No celular o texto ocupa a linha inteira e os dois botões dividem a de baixo:
     duas linhas de aviso, nada de parede de texto cobrindo meia tela. */
  .ox-consent-acoes {
    width: 100%;
  }

  .ox-consent-btn {
    flex: 1 1 0;
    /* Os dois dividem a linha em partes iguais: a largura mínima do desktop
       estouraria a tela de 320px. O peso continua igual — agora por metade. */
    min-width: 0;
    padding: 11px 12px;
  }
}
