/* Lack Infláveis · banner de consentimento (S5, 28/10/2026; Frente D). Como incluir: ver o topo do consentimento.js.
   Sozinho, sem depender do lack-blog.css: usa as variáveis do design system quando a página as tem (--noite, --acao,
   --papel, --tinta, --suave, --linha, --f-text, --f-label) e os mesmos valores como reserva. Cartão no canto de baixo,
   azul-noite do header e do rodapé, botão de ação verde-limão (texto azul-noite, 9:1); não cobre a página nem trava a
   rolagem; no celular ocupa a largura toda, acima da barra do sistema. */
.lkc {
  position: fixed; z-index: 2147482000; left: 16px; bottom: 16px; max-width: 440px; width: calc(100% - 32px);
  background: var(--noite, #0d1f47); color: #fff; border-radius: 14px;
  box-shadow: 0 2px 6px rgba(13, 31, 71, .25), 0 18px 48px rgba(13, 31, 71, .35);
  font: 400 15px/1.5 var(--f-text, 'Manrope', 'Segoe UI', Arial, sans-serif);
  -webkit-font-smoothing: antialiased; box-sizing: border-box;
}
.lkc[hidden] { display: none; }
.lkc *, .lkc *::before, .lkc *::after { box-sizing: border-box; }
.lkc-in { padding: 20px 20px 18px; display: grid; gap: 12px; }
.lkc-tit { margin: 0; font: 700 17px/1.25 var(--f-label, 'Sora', 'Trebuchet MS', sans-serif); color: #fff; }
.lkc-txt { margin: 0; color: #d6deee; }
.lkc-txt a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.lkc-opcoes { display: grid; gap: 8px; margin: 2px 0 0; }
.lkc-opcoes[hidden] { display: none; }
.lkc-op { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; align-items: start; padding: 10px 12px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 10px; cursor: pointer; }
.lkc-op input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--acao, #9ccc16); cursor: pointer; }
.lkc-op span { display: grid; gap: 2px; }
.lkc-op b { font: 700 14.5px/1.3 var(--f-label, 'Sora', 'Trebuchet MS', sans-serif); color: #fff; }
.lkc-op small { font-size: 13.5px; line-height: 1.45; color: #c3cde2; }
.lkc-fixo { cursor: default; opacity: .85; }
.lkc-fixo input { cursor: default; }
.lkc-acoes { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; margin-top: 2px; }
.lkc-btn {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 18px; border-radius: 999px;
  font: 700 14.5px/1 var(--f-label, 'Sora', 'Trebuchet MS', sans-serif); cursor: pointer; border: 2px solid transparent;
  transition: background-color .15s, border-color .15s, color .15s;
}
.lkc-btn[hidden] { display: none; }
.lkc-pri { background: var(--acao, #9ccc16); color: var(--noite, #0d1f47); }
.lkc-pri:hover { background: var(--acao-2, #86b20f); }
.lkc-sec { background: transparent; color: #fff; border-color: rgba(255, 255, 255, .5); }
.lkc-sec:hover { background: rgba(255, 255, 255, .1); }
.lkc-btn:focus-visible, .lkc-op input:focus-visible, .lkc-txt a:focus-visible { outline: 3px solid var(--acao, #9ccc16); outline-offset: 2px; }
@media (max-width: 560px) {
  .lkc { left: 0; right: 0; bottom: 0; width: 100%; max-width: none; border-radius: 14px 14px 0 0; padding-bottom: env(safe-area-inset-bottom, 0px); }
  .lkc-in { padding: 18px 16px 16px; }
  .lkc-acoes { justify-content: stretch; }
  .lkc-acoes .lkc-btn { flex: 1 1 auto; }
}
@media (prefers-reduced-motion: no-preference) {
  .lkc:not([hidden]) { animation: lkc-entra .25s ease-out; }
  @keyframes lkc-entra { from { transform: translateY(12px); opacity: 0; } to { transform: none; opacity: 1; } }
}
@media print { .lkc { display: none !important; } }
