/* =========================================================================
   Lance de Sorte — chrome do tema (header / rodapé / barra flutuante), prosa das
   páginas legais/hub, blocos de compliance do mb-core e overrides da GP.
   O visual rico da home/landings vem do design portado (CSS próprio).
   Dark roxo + amarelo (paleta provisoria espelhando o operador). Archivo
   (display) + Public Sans (corpo).
   ========================================================================= */

:root{
  --lds-bg:#120A22;
  --lds-bg-2:#1B0E2E;
  --lds-card:#23143A;
  --lds-border:#392561;
  --lds-purple:#5400B2;        /* roxo da marca (painéis, header) */
  --lds-purple-deep:#370175;
  --lds-accent:#FFD000;        /* amarelo (CTA) */
  --lds-accent-bright:#FFDE47;
  --lds-ink:#1B0E2E;      /* texto sobre green */
  --lds-text:#F2ECFA;
  --lds-muted:#B3A4CC;
  --lds-radius:14px;
  --lds-wrap:1200px;
  --lds-display:'Archivo',system-ui,sans-serif;
  --lds-body:'Public Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  /* usados pelo placeholder "em breve" do mb-core (visibility.php) */
  --mb-accent:var(--lds-accent);
  --mb-accent-ink:var(--lds-ink);
}

/* ---- Base / GP overrides (fundo escuro, containers transparentes) -------- */
body,
.site,
#page,
.site-content,
#content{
  background:var(--lds-bg) !important;
  color:var(--lds-text);
  font-family:var(--lds-body);
}
.inside-article,
.entry-content,
.separate-container,
.one-container .site-main,
.site-main{
  background:transparent !important;
}
/* Esconde o masthead/rodapé vazios da GP (usamos chrome próprio). */
.site-header#masthead{display:none;}
.site-info{display:none;}

h1,h2,h3,h4{font-family:var(--lds-display);color:#fff;line-height:1.18;}
a{color:var(--lds-accent);}

.wrap{max-width:var(--lds-wrap);margin:0 auto;padding:0 20px;}

/* =========================================================================
   HEADER
   ========================================================================= */
.lds-header{
  position:sticky;top:0;z-index:50;
  background:rgba(10,17,18,.82);
  backdrop-filter:saturate(140%) blur(10px);
  -webkit-backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid var(--lds-border);
}
.lds-header .header-inner{
  max-width:var(--lds-wrap);margin:0 auto;padding:12px 20px;
  display:flex;align-items:center;gap:18px;
}
.lds-header .logo-link{display:flex;align-items:center;gap:8px;text-decoration:none;}
.lds-header .logo-link img{display:block;height:24px;width:auto;}
.lds-header .logo-tag{
  font:600 11px/1 var(--lds-display);letter-spacing:.06em;text-transform:uppercase;
  color:var(--lds-accent);border:1px solid var(--lds-border);border-radius:6px;padding:3px 6px;
}
.lds-header nav.desktop{display:flex;gap:22px;margin-left:8px;}
.lds-header nav.desktop a{
  color:var(--lds-text);text-decoration:none;font-weight:600;font-size:.94rem;opacity:.9;
}
.lds-header nav.desktop a:hover{color:var(--lds-accent);opacity:1;}
.lds-header .header-actions{display:flex;align-items:center;gap:12px;margin-left:auto;}
.age-badge{
  font:700 12px/1 var(--lds-display);color:var(--lds-accent);
  border:1px solid var(--lds-accent);border-radius:999px;padding:5px 8px;
}
.header-cta{
  background:var(--lds-accent);color:var(--lds-ink);text-decoration:none;font-weight:700;
  border-radius:10px;padding:10px 16px;font-size:.9rem;white-space:nowrap;
}
.header-cta:hover{background:var(--lds-accent-bright);}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px;}
.hamburger span{width:22px;height:2px;background:#fff;border-radius:2px;}

/* Mobile menu (fora do header) */
.mobile-menu{
  position:fixed;inset:0 0 auto 0;top:0;z-index:60;
  background:var(--lds-bg);border-bottom:1px solid var(--lds-border);
  padding:80px 22px 26px;transform:translateY(-110%);transition:transform .28s ease;
  display:flex;flex-direction:column;gap:6px;
}
.mobile-menu.open{transform:translateY(0);}
.mobile-menu a{color:var(--lds-text);text-decoration:none;font-weight:600;padding:13px 4px;border-bottom:1px solid var(--lds-border);}
.mobile-menu .btn-primary{
  margin-top:14px;background:var(--lds-accent);color:var(--lds-ink);text-align:center;
  border-radius:12px;padding:14px;border-bottom:0;font-weight:800;
}

/* =========================================================================
   PROSA — páginas legais / hub (fora das páginas de design)
   ========================================================================= */
body:not(.lds-design) .site-content{padding:36px 0 10px;}
body:not(.lds-design) .entry-content{
  max-width:820px;margin:0 auto;padding:0 20px;
  color:var(--lds-text);font-size:1.02rem;line-height:1.7;
}
body:not(.lds-design) .entry-content h1{font-size:clamp(1.7rem,5vw,2.5rem);margin:0 0 .5em;}
body:not(.lds-design) .entry-content h2{font-size:clamp(1.3rem,3.4vw,1.7rem);margin:1.6em 0 .5em;padding-top:.3em;border-top:1px solid var(--lds-border);}
body:not(.lds-design) .entry-content h3{font-size:1.15rem;margin:1.3em 0 .4em;}
body:not(.lds-design) .entry-content p{margin:0 0 1.05em;}
body:not(.lds-design) .entry-content ul,
body:not(.lds-design) .entry-content ol{margin:0 0 1.1em;padding-left:1.3em;}
body:not(.lds-design) .entry-content li{margin:.35em 0;}
body:not(.lds-design) .entry-content a{color:var(--lds-accent);text-decoration:underline;text-underline-offset:2px;}
body:not(.lds-design) .entry-content strong{color:#fff;}
body:not(.lds-design) .entry-content table{width:100%;border-collapse:collapse;margin:0 0 1.3em;font-size:.96rem;}
body:not(.lds-design) .entry-content th,
body:not(.lds-design) .entry-content td{border:1px solid var(--lds-border);padding:10px 12px;text-align:left;}
body:not(.lds-design) .entry-content th{background:var(--lds-bg-2);color:#fff;}
.lds-lede{font-size:1.12rem;color:var(--lds-muted);border-left:3px solid var(--lds-accent);padding-left:16px;}
.lds-note{background:var(--lds-card);border:1px solid var(--lds-border);border-radius:var(--lds-radius);padding:16px 18px;margin:1.3em 0;}

/* FAQ das páginas de prosa (legais/hub). Aberto por padrão: sem JS, sem clique —
   o acordeão só existe nas design-pages. A marcação é <span class="q"> (sem
   atributos!), que é o que o extrator de FAQPage do mb-core lê. */
body:not(.lds-design) .faq-item{background:var(--lds-card);border:1px solid var(--lds-border);border-radius:var(--lds-radius);padding:16px 18px;margin:0 0 12px;}
body:not(.lds-design) .faq-item .q{display:block;font-family:var(--lds-display);font-weight:700;color:#fff;font-size:1.03rem;margin-bottom:6px;}
body:not(.lds-design) .faq-item .faq-a{color:var(--lds-muted);}
body:not(.lds-design) .faq-item .faq-a p:last-child{margin-bottom:0;}
/* CTA em texto (páginas de prosa) */
body:not(.lds-design) .entry-content .lds-cta{display:inline-block;background:var(--lds-accent);color:var(--lds-ink);font-family:var(--lds-display);font-weight:700;padding:12px 20px;border-radius:10px;text-decoration:none;margin:.4em 0;}
body:not(.lds-design) .entry-content .lds-cta:hover{background:var(--lds-accent-bright);}

/* =========================================================================
   FOOTER
   ========================================================================= */
.lds-footer{background:var(--lds-bg-2);border-top:1px solid var(--lds-border);padding:46px 0 30px;margin-top:50px;}
.lds-footer .footer-cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:28px;}
.footer-brand{display:flex;align-items:center;gap:8px;margin-bottom:12px;}
.footer-brand .gem{height:26px;width:auto;}
.footer-brand .word{height:21px;width:auto;}
.footer-brand .tag{font:600 10px/1 var(--lds-display);letter-spacing:.06em;text-transform:uppercase;color:var(--lds-accent);border:1px solid var(--lds-border);border-radius:5px;padding:3px 5px;}
.footer-about{color:var(--lds-muted);font-size:.92rem;line-height:1.6;max-width:34ch;}
.lds-footer h4{font-size:.86rem;letter-spacing:.05em;text-transform:uppercase;color:#fff;margin:0 0 12px;}
.lds-footer ul{list-style:none;margin:0;padding:0;}
.lds-footer li{margin:.5em 0;}
.lds-footer a{color:var(--lds-muted);text-decoration:none;font-size:.92rem;}
.lds-footer a:hover{color:var(--lds-accent);}
.footer-disc{display:flex;gap:12px;align-items:flex-start;margin:30px 0 0;padding:18px 0 0;border-top:1px solid var(--lds-border);}
.footer-disc .badge,.footer-rg .badge{background:var(--lds-accent);color:var(--lds-ink);font:800 12px/1 var(--lds-display);border-radius:6px;padding:5px 7px;flex:0 0 auto;}
.footer-disc p{margin:0;color:var(--lds-muted);font-size:.86rem;line-height:1.55;}
.footer-rg{margin-top:16px;color:var(--lds-muted);font-size:.82rem;line-height:1.55;}
.footer-rg p{margin:.5em 0;}
.footer-rg .copy{opacity:.7;margin-top:14px;}

/* =========================================================================
   BARRA FLUTUANTE (mobile)
   ========================================================================= */
.float-spacer{display:none;}
.float-bar{display:none;}
@media(max-width:880px){
  .float-spacer{display:block;height:78px;}
  .float-bar{
    display:block;position:fixed;left:0;right:0;bottom:0;z-index:55;
    background:var(--lds-bg-2);border-top:1px solid var(--lds-border);padding:10px 16px 12px;text-align:center;
  }
  .float-bar a{display:block;background:var(--lds-accent);color:var(--lds-ink);text-decoration:none;font-weight:800;border-radius:12px;padding:13px;}
  .float-bar p{margin:7px 0 0;color:var(--lds-muted);font-size:.72rem;}
}

/* =========================================================================
   COMPLIANCE do mb-core (classes jb-* — convenção compartilhada, não renomear)
   ========================================================================= */
.jb-compliance{margin:1.2em 0;}
.jb-compliance .disc{display:flex;gap:12px;align-items:flex-start;background:var(--lds-card);border:1px solid var(--lds-border);border-radius:var(--lds-radius);padding:14px 16px;}
.jb-compliance .badge{background:var(--lds-accent);color:var(--lds-ink);font:800 12px/1 var(--lds-display);border-radius:6px;padding:5px 7px;flex:0 0 auto;}
.jb-compliance p{margin:0;color:var(--lds-muted);font-size:.9rem;line-height:1.55;}
.jb-compliance a{color:var(--lds-accent);}
.jb-not-official{color:var(--lds-muted);font-size:.86rem;}
.jb-compliance-wrap{margin:1.4em 0;}
.mbcore-auto-compliance{border-top:1px solid var(--lds-border);padding:22px 0;}
.mbcore-auto-compliance .wrap{max-width:var(--lds-wrap);margin:0 auto;padding:0 20px;}
.mbcore-soon h2{font-family:var(--lds-display);}

/* =========================================================================
   PÁGINAS DE DESIGN — chrome do tema oculto, container full-width
   ========================================================================= */
.lds-design .site-header,
.lds-design .site-footer{display:none !important;}
/* Full-width real: a GeneratePress (separate-containers) constrange .entry-content /
   .inside-article; forçamos TODAS as camadas a 100% no design portado (senão o
   layout do design 1160px fica espremido em ~820px = "criva/estreito"). */
body.lds-design #page,
body.lds-design .site-content,
body.lds-design #content,
body.lds-design .content-area,
body.lds-design #primary,
body.lds-design #main,
body.lds-design .container,
body.lds-design .grid-container,
body.lds-design article,
body.lds-design .inside-article,
body.lds-design .entry-content{
  max-width:100% !important;
  width:auto !important;
  padding:0 !important;
  margin:0 !important;
  float:none !important;
}
.lds-design #page,.lds-design .site-content{background:var(--lds-bg) !important;}

/* =========================================================================
   RESPONSIVO
   ========================================================================= */
@media(max-width:880px){
  .lds-header nav.desktop{display:none;}
  .lds-header .header-cta{display:none;}
  .hamburger{display:flex;}
  .lds-footer .footer-cols{grid-template-columns:1fr 1fr;gap:22px;}
  .footer-brand,.footer-about{grid-column:1 / -1;}
}
@media(max-width:520px){
  .lds-footer .footer-cols{grid-template-columns:1fr;}
}
