/* ═══════════════════════════════════════════════════════════════════════
   LinkFlix v4.4.6 — camada do site (10/11/2026)
   Problemas medidos no celular (375px) antes desta versão:
   - dois cabeçalhos empilhados (tema Blocksy + menu do app) e uma faixa
     vazia de 50px entre eles (padding do container do tema);
   - hambúrguer do app sem painel; hambúrguer do tema com painel vazio;
   - rodapé do tema só com "Copyright".
   ═══════════════════════════════════════════════════════════════════════ */

/* ── 1. Cabeçalho e rodapé do tema saem; fica o menu do LinkFlix ───────── */
body.lf-site header#header,
body.lf-site .ct-header,
body.lf-site footer.ct-footer,
body.lf-site #footer.ct-footer,
body.lf-site .ct-drawer-canvas,
body.lf-site .ct-back-to-top { display: none !important; }

body.lf-tela-app .ct-container-full,
body.lf-tela-app main#main > .ct-container-full,
body.lf-tela-app [data-vertical-spacing] { padding-top: 0 !important; padding-bottom: 0 !important; }
body.lf-tela-app .entry-content > .linkflix-app { margin-top: 0 !important; margin-bottom: 0 !important; }
body.lf-tela-app article.page > .hero-section,
body.lf-tela-app .entry-header { display: none !important; }

.linkflix-app.lf-chrome-topo { padding: 0 !important; margin: 0 !important; max-width: none !important; position: sticky; top: 0; z-index: 900; }
body.admin-bar .linkflix-app.lf-chrome-topo { top: 32px; }
@media (max-width: 782px) { body.admin-bar .linkflix-app.lf-chrome-topo { top: 0; } }
body.lf-tela-conteudo { padding-bottom: 0; }

/* ── 2. Menu: atalho "Criar conta" e gaveta lateral no mobile ──────────── */
.lf-nav-cta-mobile { display: none; }
@media (max-width: 768px) {
  .ch-nav .lf-nav-cta-mobile {
    display: inline-flex; align-items: center; margin-left: auto; margin-right: 6px;
    height: 36px; padding: 0 14px; border-radius: 999px; font-size: 13px; font-weight: 700;
    background: var(--ch-gradient, linear-gradient(135deg,#6366f1,#8b5cf6)); color: #fff !important; text-decoration: none; white-space: nowrap;
  }
}

html.lf-sem-rolagem, html.lf-sem-rolagem body { overflow: hidden !important; }

.lf-drawer-fundo { position: fixed; inset: 0; background: rgba(8, 8, 20, .55); opacity: 0; transition: opacity .25s; z-index: 100000; }
.lf-drawer-fundo.visivel { opacity: 1; }
.lf-drawer {
  position: fixed; top: 0; right: 0; bottom: 0; width: min(86vw, 340px); height: 100dvh;
  background: var(--ch-bg-card, #fff); color: var(--ch-text, #1a1a2e);
  transform: translateX(105%); transition: transform .28s cubic-bezier(.2,.8,.2,1);
  z-index: 100001; overflow-y: auto; -webkit-overflow-scrolling: touch;
  padding: 0 0 calc(24px + env(safe-area-inset-bottom)); box-shadow: -12px 0 40px rgba(0,0,0,.25);
  font-family: var(--ch-font, Inter, system-ui, sans-serif); display: block !important;
}
.lf-drawer.open { transform: translateX(0); }
.lf-drawer-topo { display: flex; align-items: center; justify-content: space-between; padding: 14px 16px; border-bottom: 1px solid var(--ch-border, #e5e7eb); position: sticky; top: 0; background: inherit; z-index: 1; }
.lf-drawer .ch-logo { font-size: 20px; font-weight: 800; color: var(--ch-primary, #6366f1) !important; text-decoration: none; display: flex; gap: 8px; align-items: center; }
.lf-drawer-fechar { width: 44px; height: 44px; border: 0; border-radius: 10px; background: var(--ch-bg-alt, #f3f4f6); color: inherit; font-size: 18px; cursor: pointer; }
.lf-drawer-convite { margin: 16px; padding: 16px; border-radius: 14px; background: linear-gradient(135deg, #4f46e5, #8b5cf6); color: #fff; display: flex; flex-direction: column; gap: 8px; }
.lf-drawer-convite strong { font-size: 17px; }
.lf-drawer-convite span { font-size: 14px; opacity: .92; line-height: 1.45; }
.lf-drawer-convite .lf-btn-primario { background: #fff !important; color: #4f46e5 !important; }
.lf-drawer-convite .lf-btn-contorno { border-color: rgba(255,255,255,.6) !important; color: #fff !important; background: transparent !important; }
.lf-drawer-grupo { display: flex; flex-direction: column; padding: 8px 8px; border-bottom: 1px solid var(--ch-border, #e5e7eb); }
.lf-drawer-grupo:last-child { border-bottom: 0; }
.lf-drawer-rotulo { font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: var(--ch-text-muted, #6b7280); padding: 8px 12px 4px; font-weight: 700; }
.lf-drawer-grupo a { display: flex; align-items: center; gap: 14px; min-height: 48px; padding: 0 12px; border-radius: 10px; color: var(--ch-text, #1a1a2e) !important; text-decoration: none; font-size: 15.5px; font-weight: 500; }
.lf-drawer-grupo a[hidden] { display: none; }
.lf-drawer-grupo a i { width: 22px; text-align: center; color: var(--ch-primary, #6366f1); font-size: 17px; }
.lf-drawer-grupo a:active, .lf-drawer-grupo a:hover { background: var(--ch-bg-alt, #f3f4f6); }
.lf-selo { font-style: normal; font-size: 10.5px; font-weight: 800; text-transform: uppercase; background: #f59e0b; color: #1a1a2e; padding: 2px 7px; border-radius: 999px; margin-left: auto; }

/* barra inferior: botão do sorteio em destaque */
.ch-bottom-nav a.lf-bottom-destaque i { width: 40px; height: 40px; line-height: 40px; border-radius: 50%; margin-top: -14px; background: var(--ch-gradient, linear-gradient(135deg,#6366f1,#8b5cf6)); color: #fff !important; box-shadow: 0 6px 16px rgba(99,102,241,.45); font-size: 18px !important; }
.ch-bottom-nav a.lf-bottom-destaque span { color: var(--ch-primary, #6366f1); font-weight: 700; }
/* barra inferior também nos posts (fora do app) */
.lf-chrome-topo .ch-bottom-nav { position: fixed; }

/* ── 3. Botões ─────────────────────────────────────────────────────────── */
.lf-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 18px; border-radius: 12px; font: 700 15px/1.2 var(--ch-font, Inter, system-ui, sans-serif); text-decoration: none !important; cursor: pointer; border: 2px solid transparent; transition: transform .12s, box-shadow .12s, background .12s; }
.lf-btn:active { transform: scale(.98); }
.lf-btn[hidden] { display: none !important; }
.lf-btn-primario { background: var(--ch-gradient, linear-gradient(135deg,#6366f1,#8b5cf6)); color: #fff !important; box-shadow: 0 6px 18px rgba(99,102,241,.35); }
.lf-btn-contorno { background: transparent; border-color: var(--ch-primary, #6366f1); color: var(--ch-primary, #6366f1) !important; }
.lf-btn-contorno.ativo { background: var(--ch-primary, #6366f1); color: #fff !important; }
.lf-btn-texto { background: transparent; color: var(--ch-text-muted, #6b7280) !important; border: 0; }
.lf-btn-bloco { display: flex; width: 100%; margin-top: 10px; }
.lf-btn:disabled { opacity: .6; cursor: wait; }

/* ── 4. Rodapé ─────────────────────────────────────────────────────────── */
.lf-rodape { background: #0f0f1a; color: #c7c9de; font-family: var(--ch-font, Inter, system-ui, sans-serif); margin-top: 0; }
.lf-rodape-inner { max-width: 1200px; margin: 0 auto; padding: 48px 20px 24px; display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 32px; }
.lf-rodape-logo { font-size: 22px; font-weight: 800; color: #fff !important; text-decoration: none; display: inline-flex; gap: 8px; align-items: center; }
.lf-rodape-logo i { color: #818cf8; }
.lf-rodape-marca p { font-size: 14.5px; line-height: 1.6; margin: 12px 0 16px; color: #a9abc4; }
.lf-rodape-marca .lf-btn { margin: 0 8px 8px 0; }
.lf-rodape-marca .lf-btn-contorno { border-color: #4b4d6e; color: #fff !important; }
.lf-rodape-col h2 { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: #fff; margin: 4px 0 12px; font-weight: 800; }
.lf-rodape-col a { display: block; color: #c7c9de !important; text-decoration: none; font-size: 14.5px; padding: 7px 0; }
.lf-rodape-col a:hover { color: #fff !important; text-decoration: underline; }
.lf-rodape-base { border-top: 1px solid #23243a; max-width: 1200px; margin: 0 auto; padding: 18px 20px 28px; font-size: 12.5px; line-height: 1.6; color: #8789a6; }
.lf-rodape-base p { margin: 0 0 6px; }
.lf-rodape-base a { color: #c7c9de !important; }
@media (max-width: 900px) {
  .lf-rodape-inner { grid-template-columns: 1fr 1fr; gap: 24px 16px; padding-top: 36px; }
  .lf-rodape-marca { grid-column: 1 / -1; }
}
@media (max-width: 768px) {
  .lf-rodape { padding-bottom: calc(var(--ch-bottom-h, 68px) + env(safe-area-inset-bottom)); }
  .lf-rodape-col a { padding: 10px 0; }
}

/* ── 5. Modais ─────────────────────────────────────────────────────────── */
.lf-modal { position: fixed; inset: 0; z-index: 100010; background: rgba(8,8,20,.6); display: flex; align-items: flex-end; justify-content: center; opacity: 0; transition: opacity .2s; padding: 0; }
.lf-modal[hidden] { display: none; }
.lf-modal.visivel { opacity: 1; }
.lf-modal-caixa { position: relative; width: 100%; max-width: 440px; max-height: 92dvh; overflow-y: auto; background: var(--ch-bg-card, #fff); color: var(--ch-text, #1a1a2e); border-radius: 20px 20px 0 0; padding: 28px 22px calc(22px + env(safe-area-inset-bottom)); transform: translateY(24px); transition: transform .22s; font-family: var(--ch-font, Inter, system-ui, sans-serif); }
.lf-modal.visivel .lf-modal-caixa { transform: none; }
@media (min-width: 600px) { .lf-modal { align-items: center; padding: 20px; } .lf-modal-caixa { border-radius: 20px; } }
.lf-modal-fechar { position: absolute; top: 10px; right: 10px; width: 44px; height: 44px; border: 0; border-radius: 10px; background: transparent; color: var(--ch-text-muted, #6b7280); font-size: 18px; cursor: pointer; }
.lf-modal-icone { width: 56px; height: 56px; border-radius: 16px; background: var(--ch-gradient, linear-gradient(135deg,#6366f1,#8b5cf6)); color: #fff; display: grid; place-items: center; font-size: 24px; margin-bottom: 14px; }
.lf-modal h2 { font-size: 21px; line-height: 1.25; margin: 0 40px 8px 0; color: inherit; }
.lf-modal-sub { font-size: 14.5px; line-height: 1.55; color: var(--ch-text-muted, #6b7280); margin: 0 0 14px; }
.lf-beneficios { list-style: none; padding: 0; margin: 0 0 8px; }
.lf-beneficios li { display: flex; gap: 12px; align-items: center; padding: 8px 0; font-size: 14.5px; }
.lf-beneficios i { color: var(--ch-primary, #6366f1); width: 20px; text-align: center; }
.lf-modal-nota { text-align: center; font-size: 12.5px; color: var(--ch-text-muted, #6b7280); margin: 12px 0 0; }
.lf-modal label { display: block; font-size: 13.5px; font-weight: 600; margin: 12px 0 6px; }
.lf-modal textarea, .lf-modal input[type=email] { width: 100%; box-sizing: border-box; padding: 12px; border-radius: 10px; border: 1px solid var(--ch-border, #d1d5db); background: var(--ch-bg, #fff); color: inherit; font: 15px/1.4 var(--ch-font, Inter, system-ui, sans-serif); }
.lf-pote { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.lf-form-msg { margin: 10px 0 0; padding: 10px 12px; border-radius: 10px; background: #ecfdf5; color: #065f46; font-size: 14px; }
.lf-form-msg.erro { background: #fef2f2; color: #991b1b; }
.lf-passos-titulo { font-size: 14px; margin: 14px 0 4px; }
.lf-passos { margin: 0; padding-left: 20px; font-size: 14.5px; line-height: 1.6; }

/* ── 6. Faixas fixas (cadastro e instalar app) ─────────────────────────── */
.lf-faixa-cadastro, .lf-faixa-app {
  position: fixed; left: 10px; right: 10px; bottom: calc(var(--ch-bottom-h, 68px) + 10px + env(safe-area-inset-bottom));
  z-index: 9990; display: flex; align-items: center; gap: 12px; padding: 12px 12px 12px 16px; border-radius: 16px;
  background: #15152a; color: #fff; box-shadow: 0 12px 32px rgba(0,0,0,.35);
  transform: translateY(140%); opacity: 0; transition: transform .3s, opacity .3s; font-family: var(--ch-font, Inter, system-ui, sans-serif);
}
.lf-faixa-cadastro[hidden], .lf-faixa-app[hidden] { display: none; }
.lf-faixa-cadastro.visivel, .lf-faixa-app.visivel { transform: none; opacity: 1; }
.lf-faixa-cadastro > div, .lf-faixa-app > div { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.lf-faixa-cadastro strong, .lf-faixa-app strong { font-size: 14.5px; }
.lf-faixa-cadastro span, .lf-faixa-app span { font-size: 12.5px; color: #b7b9d3; }
.lf-faixa-cadastro .lf-btn, .lf-faixa-app .lf-btn { min-height: 40px; padding: 0 14px; font-size: 14px; }
.lf-faixa-app img { border-radius: 10px; }
.lf-faixa-fechar { width: 36px; height: 36px; flex: none; border: 0; background: transparent; color: #9a9cb8; font-size: 16px; cursor: pointer; }
@media (min-width: 769px) {
  .lf-faixa-cadastro, .lf-faixa-app { left: auto; right: 20px; bottom: 20px; max-width: 460px; }
}

/* ── 7. Roleta "O que assistir hoje?" ──────────────────────────────────── */
.lf-roleta { max-width: 980px; margin: 0 auto; padding: 24px 16px 40px; font-family: var(--ch-font, Inter, system-ui, sans-serif); color: var(--ch-text, #1a1a2e); }
.lf-roleta-topo h1 { font-size: clamp(26px, 6vw, 40px); line-height: 1.15; margin: 0 0 10px; font-weight: 800; }
.lf-roleta-topo p { font-size: 16px; line-height: 1.6; color: var(--ch-text-muted, #6b7280); margin: 0 0 20px; max-width: 680px; }
.lf-roleta-filtros { background: var(--ch-bg-card, #fff); border: 1px solid var(--ch-border, #e5e7eb); border-radius: 18px; padding: 18px; box-shadow: 0 4px 20px rgba(0,0,0,.05); }
.lf-roleta-grupo { margin-bottom: 16px; }
.lf-roleta-rotulo { display: block; font-weight: 800; font-size: 14px; margin-bottom: 8px; }
.lf-chips { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
.lf-chips::-webkit-scrollbar { display: none; }
@media (min-width: 769px) { .lf-chips { flex-wrap: wrap; overflow: visible; } }
.lf-chip { flex: none; min-height: 40px; padding: 0 14px; border-radius: 999px; border: 1.5px solid var(--ch-border, #e5e7eb); background: var(--ch-bg, #fff); color: var(--ch-text, #1a1a2e); font: 600 14px/1 var(--ch-font, Inter, system-ui, sans-serif); cursor: pointer; white-space: nowrap; }
.lf-chip.ativo { border-color: var(--ch-primary, #6366f1); background: rgba(99,102,241,.1); color: var(--ch-primary, #6366f1); }
.lf-btn-sortear { width: 100%; min-height: 56px; font-size: 18px; margin-top: 4px; }
.lf-roleta-resultado { margin-top: 22px; }
.lf-roleta-girando { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 40px 0; color: var(--ch-primary, #6366f1); font-weight: 700; }
.lf-roleta-girando i { font-size: 42px; }
.lf-roleta-vazio { text-align: center; padding: 24px; color: var(--ch-text-muted, #6b7280); }
.lf-sorteado { position: relative; overflow: hidden; display: grid; grid-template-columns: 171px 1fr; gap: 20px; padding: 20px; border-radius: 20px; color: #fff; background: #111; isolation: isolate; animation: lfEntrar .35s ease-out; }
.lf-sorteado::before { content: ""; position: absolute; inset: 0; background: var(--fundo) center/cover; filter: blur(2px) brightness(.35); transform: scale(1.05); z-index: -1; }
@keyframes lfEntrar { from { opacity: 0; transform: translateY(12px) scale(.98); } to { opacity: 1; transform: none; } }
.lf-sorteado-poster { width: 171px; height: auto; border-radius: 12px; box-shadow: 0 10px 30px rgba(0,0,0,.5); }
.lf-sorteado-selo { display: inline-block; font-size: 13px; font-weight: 700; background: rgba(255,255,255,.15); padding: 4px 10px; border-radius: 999px; }
.lf-sorteado h2 { font-size: clamp(22px, 5vw, 32px); margin: 10px 0 8px; line-height: 1.15; color: #fff; }
.lf-sorteado p { font-size: 15px !important; line-height: 1.6 !important; color: #e5e7f0; margin: 0 0 14px; }
.lf-onde-lista { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.lf-onde { display: inline-flex; align-items: center; gap: 8px; background: rgba(255,255,255,.12); padding: 6px 10px 6px 6px; border-radius: 12px; font-size: 13.5px; }
.lf-onde img { border-radius: 7px; }
.lf-onde small { opacity: .75; font-size: 11.5px; }
.lf-onde-vazio { font-size: 14px; opacity: .85; }
.lf-sorteado-acoes { display: flex; flex-wrap: wrap; gap: 8px; }
.lf-sorteado .lf-btn-contorno { border-color: rgba(255,255,255,.7); color: #fff !important; }
.lf-sorteado .lf-btn-contorno.ativo { background: #fff; color: #1a1a2e !important; }
.lf-sorteado .lf-btn-texto { color: #e5e7f0 !important; }
@media (max-width: 600px) {
  .lf-sorteado { grid-template-columns: 1fr; text-align: left; padding: 16px; }
  .lf-sorteado-poster { width: 132px; }
  .lf-sorteado-acoes .lf-btn { flex: 1 1 calc(50% - 8px); }
  .lf-sorteado-acoes .lf-btn-primario { flex-basis: 100%; }
}
.lf-roleta-explica { margin-top: 32px; }
.lf-roleta-explica h2 { font-size: 19px; margin: 20px 0 8px; }
.lf-roleta-explica p { color: var(--ch-text-muted, #6b7280); line-height: 1.65; }

/* ── 8. Modo escuro ─────────────────────────────────────────────────────── */
.linkflix-dark .lf-drawer, body.linkflix-dark .lf-drawer, body.linkflix-dark .lf-modal-caixa { background: #1e1e32; color: #e8e8f0; }
body.linkflix-dark .lf-drawer-grupo a { color: #e8e8f0 !important; }
body.linkflix-dark .lf-chip { background: #1a1a2e; color: #e8e8f0; border-color: #2d2d44; }

/* ── 9. Telas do app montadas dentro de blocos "Colunas" (ex.: Explorar) ─── */
body.lf-tela-app .entry-content > .wp-block-columns { display: block !important; max-width: none !important; margin: 0 !important; padding: 0 !important; gap: 0 !important; }
body.lf-tela-app .entry-content > .wp-block-columns > .wp-block-column { flex-basis: auto !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
body.lf-tela-app .entry-content > .wp-block-columns:not(:has(#linkflix-app)) { display: none !important; }
/* ── 10. Cabeçalho no computador (v4.4.12) ─────────────────────────────
   Com 5 links + busca + Entrar/Criar conta o menu não cabia entre 769 e
   ~1300 px e cortava o "Criar conta grátis". Agora: nada quebra linha,
   os rótulos viram só ícone (com dica) quando falta espaço, e o botão
   de menu completo (gaveta) aparece também no computador. */
@media (min-width: 769px) {
  .ch-nav-inner { gap: 12px; }
  .ch-nav-links { flex-shrink: 0; gap: 4px; }
  .ch-nav-links a, .ch-nav-links button { white-space: nowrap; }
  .ch-search-bar { min-width: 160px; }
  .ch-nav .ch-mobile-menu-btn { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: none; background: none; font-size: 19px; color: var(--ch-text-muted, #6b7280); cursor: pointer; border-radius: 10px; flex-shrink: 0; }
  .ch-nav .ch-mobile-menu-btn:hover { color: var(--ch-primary, #6366f1); background: rgba(99,102,241,.08); }
}
@media (min-width: 769px) and (max-width: 1320px) {
  .ch-nav-links > a:not(.ch-btn-primary-sm):not(.ch-btn-outline-sm) > span { display: none; }
  .ch-nav-links > a:not(.ch-btn-primary-sm):not(.ch-btn-outline-sm) { padding: 8px 10px; }
}
@media (min-width: 769px) and (max-width: 960px) {
  .ch-nav-links .ch-btn-outline-sm { display: none; }
  .ch-logo span { display: none; }
}
/* ── 11. Comunidade da home: o navegador sorteia 10 perfis (v4.4.12) ───── */
.lf-comunidade-sorteio > .ch-user-chip:nth-child(n+11) { display: none; }
/* ── 12. Robô do chat: cartões e links (v4.4.12) ───────────────────────── */
.ch-ai-msg .lf-chat-itens { display: flex; flex-direction: column; gap: 6px; margin-top: 10px; }
.ch-ai-msg .lf-chat-item { display: flex; gap: 10px; align-items: center; padding: 6px; border-radius: 10px; background: rgba(99,102,241,.07); color: inherit !important; text-decoration: none; }
.ch-ai-msg .lf-chat-item:hover { background: rgba(99,102,241,.15); }
.ch-ai-msg .lf-chat-item img { width: 42px; height: 63px; object-fit: cover; border-radius: 6px; flex-shrink: 0; background: #ddd; }
.ch-ai-msg .lf-chat-info { display: flex; flex-direction: column; min-width: 0; line-height: 1.3; }
.ch-ai-msg .lf-chat-info strong { font-size: 13px; }
.ch-ai-msg .lf-chat-info small { font-size: 11.5px; opacity: .75; }
.ch-ai-msg .lf-chat-info em { font-size: 11.5px; font-style: normal; color: var(--ch-primary, #6366f1); }
.ch-ai-msg .lf-chat-links { display: flex; flex-direction: column; gap: 4px; margin-top: 10px; }
.ch-ai-msg .lf-chat-links a { font-size: 13px; font-weight: 600; color: var(--ch-primary, #6366f1) !important; }
.ch-ai-chat { max-height: min(560px, 75vh) !important; }
.ch-ai-messages { overflow-y: auto; }
/* ── 13. Menu injetado nas matérias e páginas de conteúdo (v4.4.17) ──────
   A regra base do app (.linkflix-app { min-height: 100vh }, main.css)
   também pegava o bloco do menu: só o menu ocupava a tela inteira e a
   matéria ficava abaixo da dobra — parecia tela branca. */
.linkflix-app.lf-chrome-topo { min-height: 0 !important; height: auto !important; overflow: visible !important; background: transparent !important; }
/* ── 14. Busca: botão "Mais resultados" só depois de buscar (v4.4.18) ──── */
#ch-search-load-more[style*="display:none"], #ch-search-load-more[style*="display: none"] { display: none !important; }
/* ── 15. Convite para visitante na home, redesenhado (v4.4.19) ─────────── */
.lf-convite{position:relative;overflow:hidden;border-radius:24px;padding:44px 44px 28px;color:#fff;
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:12px 36px;align-items:center;
  background:radial-gradient(700px 380px at 92% 0%,rgba(236,72,153,.35),transparent 60%),
    radial-gradient(620px 420px at 0% 100%,rgba(56,189,248,.28),transparent 60%),
    linear-gradient(135deg,#1e1b4b 0%,#3730a3 48%,#6366f1 100%);
  box-shadow:0 24px 60px -24px rgba(67,56,202,.65)}
.lf-convite:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.10;
  background-image:radial-gradient(#fff 1px,transparent 1px);background-size:22px 22px}
.lf-convite > *{position:relative}
.lf-convite-kicker{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);
  padding:6px 14px;border-radius:99px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.lf-convite h2{font-size:44px;line-height:1.05;font-weight:800;letter-spacing:-.02em;margin:16px 0 12px;color:#fff}
.lf-convite h2 span{background:linear-gradient(90deg,#fde68a,#f9a8d4);-webkit-background-clip:text;background-clip:text;color:transparent}
.lf-convite-sub{font-size:17px;line-height:1.55;color:rgba(255,255,255,.9);margin:0 0 20px;max-width:540px}
.lf-convite-logos{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.lf-convite-logos img{width:38px;height:38px;border-radius:10px;object-fit:cover;box-shadow:0 4px 12px rgba(0,0,0,.3);border:2px solid rgba(255,255,255,.85);margin-right:-14px;background:#fff}
.lf-convite-mais{margin-left:6px;width:38px;height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.18);border:2px solid rgba(255,255,255,.5);font-size:13px;font-weight:800}
.lf-convite-logos em{font-style:normal;font-size:14px;font-weight:600;color:rgba(255,255,255,.9);margin-left:10px}
.lf-convite-acoes{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.lf-convite-btn{display:inline-flex;align-items:center;gap:10px;background:#fff;color:#3730a3 !important;font-weight:800;font-size:17px;
  padding:15px 28px;border-radius:14px;text-decoration:none !important;box-shadow:0 10px 28px rgba(0,0,0,.28);transition:transform .15s,box-shadow .15s}
.lf-convite-btn:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.35)}
.lf-convite-btn2{display:inline-flex;align-items:center;color:#fff !important;font-weight:700;font-size:16px;padding:14px 22px;border-radius:14px;
  text-decoration:none !important;border:1.5px solid rgba(255,255,255,.45);transition:background .15s}
.lf-convite-btn2:hover{background:rgba(255,255,255,.12)}
.lf-convite-nota{margin:14px 0 0 !important;font-size:13.5px;color:rgba(255,255,255,.82) !important}
.lf-convite-nota i{color:#86efac;margin:0 4px 0 10px}.lf-convite-nota i:first-child{margin-left:0}
.lf-convite-arte{height:330px;position:relative}
.lf-cv-p{position:absolute;width:44%;aspect-ratio:2/3;object-fit:cover;border-radius:16px;box-shadow:0 22px 44px rgba(0,0,0,.5);border:3px solid rgba(255,255,255,.18)}
.lf-cv-p1{left:2%;top:34px;transform:rotate(-9deg)}
.lf-cv-p3{right:2%;top:34px;transform:rotate(9deg)}
.lf-cv-p2{left:28%;top:0;z-index:2;width:46%}
.lf-cv-toast{position:absolute;z-index:3;display:flex;align-items:center;gap:8px;background:#fff;color:#1e1b4b;font-size:13.5px;font-weight:600;
  padding:10px 14px;border-radius:12px;box-shadow:0 12px 28px rgba(0,0,0,.35);white-space:nowrap}
.lf-cv-toast i{color:#6366f1}.lf-cv-t2 i{color:#f59e0b}
.lf-cv-t1{left:-6px;bottom:38px;animation:lfCvFlut 4s ease-in-out infinite}
.lf-cv-t2{right:-4px;bottom:4px;animation:lfCvFlut 4s ease-in-out 2s infinite}
@keyframes lfCvFlut{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.lf-convite-recursos{grid-column:1/-1;list-style:none;margin:18px 0 0;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.18);
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.lf-convite-recursos li{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center}
.lf-convite-recursos i{grid-row:1/3;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.14);font-size:16px}
.lf-convite-recursos b{font-size:14.5px;line-height:1.2}
.lf-convite-recursos span{font-size:12.5px;line-height:1.3;color:rgba(255,255,255,.75)}
@media (prefers-reduced-motion:reduce){.lf-cv-toast{animation:none}}
@media (max-width:1024px){
  .lf-convite{grid-template-columns:1fr;padding:34px 28px 24px}
  .lf-convite-arte{height:250px;max-width:420px;width:100%;margin:6px auto 0;grid-row:2}
  .lf-convite-recursos{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .lf-convite{padding:28px 18px 20px;border-radius:18px}
  .lf-convite h2{font-size:32px}
  .lf-convite-sub{font-size:15.5px}
  .lf-convite-acoes{flex-direction:column;align-items:stretch}
  .lf-convite-btn,.lf-convite-btn2{justify-content:center}
  .lf-convite-arte{height:210px}
  .lf-convite-recursos{grid-template-columns:1fr;gap:12px}
}

/* ── 16. Consentimento de cookies e acessibilidade (v4.4.19) ──────────── */
.lf-cookie{position:fixed;z-index:99990;left:16px;right:16px;bottom:16px;max-width:1080px;margin:0 auto;display:flex;align-items:center;gap:18px;
  padding:18px 20px;border-radius:18px;background:#14132b;color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.08);
  font-family:var(--ch-font,Inter,system-ui,sans-serif);animation:lfCkSobe .35s ease-out}
.lf-cookie[hidden],.lf-ck-painel[hidden],.lf-a11y-painel[hidden]{display:none!important}
@keyframes lfCkSobe{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}
.lf-cookie-ico{flex:0 0 46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:21px;
  background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff}
.lf-cookie-txt{flex:1;min-width:0}
.lf-cookie-txt strong{display:block;font-size:15.5px;margin-bottom:3px}
.lf-cookie-txt p{margin:0;font-size:13.5px;line-height:1.5;color:#c9cae6}
.lf-cookie-txt a,.lf-ck-rodape a{color:#a5b4fc!important;text-decoration:underline}
.lf-cookie-acoes{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.lf-ck-btn{font:700 14px/1 var(--ch-font,Inter,system-ui,sans-serif);padding:12px 16px;border-radius:12px;cursor:pointer;border:1.5px solid transparent;white-space:nowrap}
.lf-ck-pri{background:#fff;color:#3730a3}
.lf-ck-pri:hover{background:#eef2ff}
.lf-ck-sec{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.lf-ck-sec:hover{background:rgba(255,255,255,.08)}
.lf-ck-painel{position:fixed;inset:0;z-index:99995;background:rgba(10,10,25,.6);display:flex;align-items:center;justify-content:center;padding:16px}
.lf-ck-caixa{position:relative;width:100%;max-width:560px;max-height:90vh;overflow:auto;background:var(--ch-bg,#fff);color:var(--ch-text,#111827);
  border-radius:20px;padding:26px 24px 20px;box-shadow:0 24px 60px rgba(0,0,0,.4);font-family:var(--ch-font,Inter,system-ui,sans-serif)}
.lf-ck-caixa h2{font-size:21px;margin:0 0 8px}
.lf-ck-intro{font-size:14px;line-height:1.5;color:var(--ch-text-muted,#6b7280);margin:0 0 14px}
.lf-ck-fechar{position:absolute;top:12px;right:14px;background:none;border:0;font-size:28px;line-height:1;cursor:pointer;color:inherit;opacity:.6}
.lf-ck-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--ch-border,#e5e7eb);cursor:pointer}
.lf-ck-item b{display:block;font-size:15px;margin-bottom:2px}
.lf-ck-item span{font-size:13px;line-height:1.45;color:var(--ch-text-muted,#6b7280)}
.lf-ck-sempre{flex:0 0 auto;font-size:12px!important;font-weight:700;color:#059669!important;white-space:nowrap}
.lf-ck-sw{appearance:none;-webkit-appearance:none;flex:0 0 46px;width:46px;height:26px;border-radius:99px;background:#cbd5e1;position:relative;cursor:pointer;transition:background .2s;margin:0}
.lf-ck-sw:before{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s}
.lf-ck-sw:checked{background:#6366f1}.lf-ck-sw:checked:before{transform:translateX(20px)}
.lf-ck-sw:focus-visible{outline:3px solid #a5b4fc;outline-offset:2px}
.lf-ck-rodape{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--ch-border,#e5e7eb);padding-top:16px;margin-top:4px}
.lf-ck-rodape a{color:#4f46e5!important;font-size:13.5px}
.lf-ck-rodape div{display:flex;gap:8px;flex-wrap:wrap}
.lf-ck-caixa .lf-ck-sec{color:var(--ch-text,#111827);border-color:var(--ch-border,#d1d5db)}
.lf-ck-caixa .lf-ck-pri{background:#4f46e5;color:#fff}
.lf-ck-aberto .lf-faixa-cadastro,.lf-ck-aberto .lf-faixa-app{display:none!important}
.lf-a11y{position:fixed;z-index:9980;left:16px;bottom:16px;font-family:var(--ch-font,Inter,system-ui,sans-serif)}
.lf-ck-aberto .lf-a11y{display:none}
.lf-a11y-btn{width:46px;height:46px;border-radius:50%;border:0;cursor:pointer;background:#1e1b4b;color:#fff;font:800 16px/1 var(--ch-font,Inter,system-ui,sans-serif);
  box-shadow:0 8px 22px rgba(0,0,0,.3);opacity:.88;transition:opacity .15s,transform .15s}
.lf-a11y-btn:hover,.lf-a11y-ativo .lf-a11y-btn{opacity:1;transform:scale(1.05)}
.lf-a11y-ativo .lf-a11y-btn{background:#4f46e5}
.lf-a11y-btn:focus-visible,.lf-a11y-painel button:focus-visible{outline:3px solid #a5b4fc;outline-offset:2px}
.lf-a11y-painel{position:absolute;left:0;bottom:56px;width:220px;background:var(--ch-bg,#fff);color:var(--ch-text,#111827);border:1px solid var(--ch-border,#e5e7eb);
  border-radius:16px;padding:14px;box-shadow:0 16px 40px rgba(0,0,0,.25)}
.lf-a11y-tit{display:block;font-size:13px;font-weight:700;margin-bottom:10px}
.lf-a11y-linha{display:flex;align-items:center;justify-content:space-between;gap:8px}
.lf-a11y-linha button{width:52px;height:44px;border-radius:12px;border:1.5px solid var(--ch-border,#d1d5db);background:transparent;color:inherit;cursor:pointer;font:800 18px/1 var(--ch-font,Inter,system-ui,sans-serif)}
.lf-a11y-linha button:hover{background:rgba(99,102,241,.1);border-color:#6366f1}
.lf-a11y-linha output{font-weight:800;font-size:15px}
.lf-a11y-reset{width:100%;margin-top:10px;padding:9px;border-radius:10px;border:0;background:rgba(99,102,241,.1);color:#4f46e5;font-weight:700;font-size:13px;cursor:pointer}
@media (max-width:768px){
  .lf-cookie{flex-wrap:wrap;left:10px;right:10px;bottom:calc(var(--ch-bottom-h,68px) + 10px + env(safe-area-inset-bottom));padding:16px;gap:12px}
  .lf-cookie-ico{display:none}
  .lf-cookie-acoes{width:100%}
  .lf-cookie-acoes .lf-ck-btn{flex:1;padding:12px 8px}
  .lf-cookie-acoes .lf-ck-pri{flex-basis:100%;order:-1}
  .lf-a11y{left:10px;bottom:calc(var(--ch-bottom-h,68px) + 12px + env(safe-area-inset-bottom))}
  .lf-a11y-btn{width:42px;height:42px;font-size:14px}
}

/* ── 17. Enviar uma sugestão (v4.4.21) ─────────────────────────────────── */
.lf-sug-icone{background:linear-gradient(135deg,#f59e0b,#f97316)!important}
.lf-sug-cats{border:0;padding:0;margin:4px 0 2px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lf-sug-cats legend{font-size:13.5px;font-weight:600;margin:0 0 8px;padding:0}
.lf-sug-cat{margin:0!important;cursor:pointer}
.lf-sug-cat input{position:absolute;opacity:0;pointer-events:none}
.lf-sug-cat span{display:flex;align-items:center;gap:8px;min-height:46px;padding:10px 12px;border-radius:12px;border:1.5px solid var(--ch-border,#d1d5db);
  font-size:13.5px;font-weight:600;line-height:1.25;transition:border-color .15s,background .15s}
.lf-sug-cat span i{color:#6366f1;width:16px;text-align:center}
.lf-sug-cat input:checked + span{border-color:#6366f1;background:rgba(99,102,241,.1)}
.lf-sug-cat input:focus-visible + span{outline:3px solid #a5b4fc;outline-offset:2px}
@media (max-width:420px){.lf-sug-cats{grid-template-columns:1fr}}
/* fonte do site nos formulários dos modais (o tema aplicava a fonte dele em label/legend) — v4.4.22 */
.lf-modal-caixa label,.lf-modal-caixa legend,.lf-modal-caixa .lf-sug-cat span,.lf-modal-caixa button,.lf-modal-caixa textarea,.lf-modal-caixa input{font-family:var(--ch-font,'Inter',system-ui,sans-serif)!important}
