/* ═══════════════════════════════════════════════════════════════════════
   LOVE MILES TRAVEL · barra de consentimento

   Barra em baixo, não janela por cima de tudo. Ninguém veio ao site para
   ler isto, e tapar a página inteira para pedir uma coisa opcional é
   hostil. Os dois botões têm o mesmo tamanho de propósito: recusar tem de
   custar tanto como aceitar.
   ═══════════════════════════════════════════════════════════════════════ */

.cns{
  position:fixed; left:0; right:0; bottom:0; z-index:9000;
  background:var(--ink, #04222A); color:#fff;
  border-top:1px solid rgba(255,255,255,.14);
  box-shadow:0 -10px 40px rgba(4,34,42,.28);
  transform:translateY(102%);
  transition:transform .26s cubic-bezier(.22,1,.36,1);
}
.cns.is-on{ transform:translateY(0) }

.cns__in{
  max-width:1180px; margin:0 auto; padding:1rem 1.2rem;
  display:flex; align-items:center; gap:1.4rem;
}

.cns__txt{ flex:1 1 auto; min-width:0 }

.cns__t{
  font-family:var(--f-mono, ui-monospace, monospace);
  font-size:.7rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase;
  color:rgba(255,255,255,.62); margin:0 0 .25rem;
}

.cns__c{
  margin:0; font-size:.86rem; line-height:1.55; color:rgba(255,255,255,.88);
  max-width:72ch;
}
.cns__c a{ color:#fff; text-underline-offset:3px }

.cns__estado{
  margin:.4rem 0 0; font-size:.78rem; color:rgba(255,255,255,.6);
}

.cns__acts{ flex:0 0 auto; display:flex; gap:.6rem }

.cns__b{
  border:0; cursor:pointer; border-radius:999px;
  font-family:inherit; font-size:.84rem; font-weight:500;
  padding:.62rem 1.3rem; white-space:nowrap;
  transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.cns__b--sim{ background:var(--olive, #7C8B3F); color:#fff }
.cns__b--sim:hover{ filter:brightness(1.1) }
.cns__b--linha{
  background:none; color:rgba(255,255,255,.88);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);
}
.cns__b--linha:hover{ background:rgba(255,255,255,.1); color:#fff }

/* No telemóvel o texto fica por cima e os botões lado a lado, cada um com
   metade da largura. Continua a ser tão fácil recusar como aceitar. */
@media (max-width:760px){
  .cns__in{ flex-direction:column; align-items:stretch; gap:.9rem; padding:1rem }
  .cns__c{ font-size:.82rem }
  .cns__acts{ display:grid; grid-template-columns:1fr 1fr }
  .cns__b{ width:100%; text-align:center; padding:.75rem 1rem }
}

@media (prefers-reduced-motion:reduce){
  .cns{ transition:none }
}
