/* ==================================================================
   Sinonimamente - estilo "tech editorial"
   CSS puro. Cantos sutis (2-4px), divisorias finas, sem sombras pesadas.
   As cores base vem do config.php como custom properties.
   ================================================================== */

:root{
  --fonte-ui:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --fonte-texto:Georgia,"Iowan Old Style","Times New Roman",serif;
  --larg:1180px;
  --gap:24px;
}

*,*::before,*::after{box-sizing:border-box}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}

body{
  margin:0;
  background:var(--papel);
  color:var(--tinta);
  font-family:var(--fonte-ui);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;height:auto;display:block}

a{color:var(--eletrico);text-decoration:none}
a:hover,a:focus{color:var(--eletrico-forte);text-decoration:underline}

h1,h2,h3,h4{
  font-family:var(--fonte-ui);
  color:var(--marca);
  line-height:1.18;
  letter-spacing:-.015em;
  margin:0 0 12px;
}
h1{font-size:clamp(30px,4.6vw,46px);font-weight:800}
h2{font-size:clamp(22px,2.8vw,29px);font-weight:800}
h3{font-size:19px;font-weight:700;color:var(--tinta)}
p{margin:0 0 14px}
ul,ol{margin:0 0 16px;padding-left:20px}
strong{font-weight:700}

:focus-visible{outline:2px solid var(--eletrico);outline-offset:2px}

.oculto{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

.pular{
  position:absolute;left:-9999px;top:0;z-index:60;
  background:var(--marca);color:var(--papel);padding:10px 16px;
}
.pular:focus{left:0}

.area{width:100%;max-width:var(--larg);margin:0 auto;padding:0 20px}

.olho{
  font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--eletrico);margin:0 0 8px;
}

/* ==================================================================
   CABECALHO (sem fixed / sem sticky)
   ================================================================== */

.cabecalho{border-bottom:1px solid var(--linha);background:var(--papel)}

.faixa-marca{background:var(--marca);color:var(--papel);padding:10px}
.faixa-marca-int{
  display:flex;justify-content:space-between;gap:18px;align-items:center;
  font-size:12.5px;letter-spacing:.04em;padding-top:8px;padding-bottom:8px;
}
.faixa-marca-int span{color:var(--papel)}
.faixa-slogan{flex:0 0 auto}
.faixa-links{flex:1 1 auto;display:flex;justify-content:flex-end}
.faixa-links ul{display:flex;flex-wrap:wrap;gap:16px;list-style:none;margin:0;padding:0}
.faixa-links a{color:#CFE1F1;font-size:12.5px;font-weight:600}
.faixa-links a:hover{color:var(--papel)}
.faixa-stats{flex:0 0 auto;padding-left:18px;border-left:1px solid rgba(255,255,255,.28);opacity:.92}

.cabecalho-int{
  display:flex;align-items:center;gap:20px;
  padding-top:16px;padding-bottom:16px;
}

.marca{display:flex;align-items:center;gap:11px;text-decoration:none;flex:0 0 auto}
.marca:hover{text-decoration:none}
.marca img{width:40px;height:40px;border-radius:var(--raio)}
.marca-texto{display:flex;flex-direction:column;line-height:1.1}
.marca-texto strong{
  font-size:21px;font-weight:800;color:var(--marca);letter-spacing:-.02em;
}
.marca-texto small{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-suave)}

.nav-desktop{flex:1 1 auto}
.nav-desktop ul{display:flex;flex-wrap:wrap;gap:20px;list-style:none;margin:0;padding:0}
.nav-desktop a{
  font-size:14.5px;font-weight:600;color:var(--tinta);
  padding:4px 0;border-bottom:2px solid transparent;
}
.nav-desktop a:hover{color:var(--eletrico);border-bottom-color:var(--eletrico);text-decoration:none}
.nav-desktop a.ativo{color:var(--marca);border-bottom-color:var(--marca)}

.busca-topo{display:flex;flex:0 0 auto}
.busca-topo input{
  width:190px;padding:9px 12px;font:inherit;font-size:14.5px;
  border:1px solid var(--linha-forte);border-right:0;
  border-radius:var(--raio) 0 0 var(--raio);
  background:var(--papel);color:var(--tinta);
}
.busca-topo input::placeholder{color:var(--tinta-suave)}
.busca-topo button{
  padding:9px 16px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;
  border:1px solid var(--marca);background:var(--marca);color:var(--papel);
  border-radius:0 var(--raio) var(--raio) 0;
}
.busca-topo button:hover{background:var(--eletrico);border-color:var(--eletrico)}

.abrir-menu{
  display:none;padding:9px 15px;font:inherit;font-size:14px;font-weight:700;
  border:1px solid var(--marca);background:var(--papel);color:var(--marca);
  border-radius:var(--raio);cursor:pointer;
}
.abrir-menu:hover{background:var(--marca);color:var(--papel)}

/* ==================================================================
   MENU LATERAL (mobile)
   ================================================================== */

.veu{position:fixed;inset:0;background:rgba(15,42,61,.55);z-index:40}

.menu-lateral{
  position:fixed;top:0;right:0;z-index:50;
  width:min(88vw,340px);height:100%;overflow-y:auto;
  background:var(--papel);border-left:1px solid var(--linha);
  padding:18px 20px 40px;
}
.menu-lateral-topo{
  display:flex;justify-content:space-between;align-items:center;
  padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid var(--linha);
}
.menu-lateral-topo strong{font-size:18px;font-weight:800;color:var(--marca)}
.menu-lateral-topo button{
  padding:7px 13px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;
  border:1px solid var(--linha-forte);background:var(--papel);color:var(--tinta);
  border-radius:var(--raio);
}
.menu-lateral-topo button:hover{border-color:var(--marca);color:var(--marca)}

.busca-lateral{display:flex;margin-bottom:20px}
.busca-lateral input{
  flex:1;padding:10px 12px;font:inherit;font-size:15px;
  border:1px solid var(--linha-forte);border-right:0;
  border-radius:var(--raio) 0 0 var(--raio);color:var(--tinta);
}
.busca-lateral button{
  padding:10px 14px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;
  border:1px solid var(--marca);background:var(--marca);color:var(--papel);
  border-radius:0 var(--raio) var(--raio) 0;
}

.menu-titulo{
  font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tinta-suave);margin:20px 0 8px;
}
.menu-lateral nav ul{list-style:none;margin:0;padding:0}
.menu-lateral nav li{border-bottom:1px solid var(--linha)}
.menu-lateral nav a{
  display:block;padding:11px 0;font-size:15.5px;font-weight:600;color:var(--tinta);
}
.menu-lateral nav a:hover{color:var(--eletrico);text-decoration:none}

body.menu-aberto{overflow:hidden}

/* ==================================================================
   HERO
   ================================================================== */

.hero{
  background:var(--marca);color:var(--papel);
  border-bottom:3px solid var(--eletrico);
}
.hero-int{padding:56px 20px 48px;max-width:860px;margin:0 auto;text-align:center}
.hero .olho{color:#9CC6EE}
.hero h1{color:var(--papel);margin-bottom:14px}
.hero-sub{font-size:19px;color:#E4EDF4;margin:0 auto 28px;max-width:640px}

.busca-grande{display:flex;max-width:620px;margin:0 auto}
.busca-grande input{
  flex:1;padding:15px 16px;font:inherit;font-size:17px;
  border:1px solid var(--papel);border-right:0;
  border-radius:var(--raio) 0 0 var(--raio);
  background:var(--papel);color:var(--tinta);
}
.busca-grande button{
  padding:15px 26px;font:inherit;font-size:16px;font-weight:700;cursor:pointer;
  border:1px solid var(--eletrico);background:var(--eletrico);color:var(--papel);
  border-radius:0 var(--raio) var(--raio) 0;
}
.busca-grande button:hover{background:var(--eletrico-forte);border-color:var(--eletrico-forte)}

.hero-stats{
  display:flex;flex-wrap:wrap;justify-content:center;gap:40px;
  margin:34px 0 0;padding:24px 0 0;border-top:1px solid rgba(255,255,255,.22);
}
.hero-stats div{text-align:center}
.hero-stats dt{
  font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:#B9D4EC;
}
.hero-stats dd{margin:4px 0 0;font-size:26px;font-weight:800;color:var(--papel)}

/* ==================================================================
   SECOES
   ================================================================== */

.secao{padding:44px 20px}
.secao + .secao{border-top:1px solid var(--linha)}

.secao-topo{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  margin-bottom:22px;padding-bottom:12px;border-bottom:2px solid var(--marca);
}
.secao-topo h2{margin:0}
.secao-link{font-size:14px;font-weight:700;white-space:nowrap}

.secao-interna{margin:38px 0}
.secao-interna h2{
  padding-bottom:10px;margin-bottom:18px;border-bottom:1px solid var(--linha);
}

.cabeca-pagina{padding:34px 0 24px;border-bottom:1px solid var(--linha);margin-bottom:28px}
.cabeca-sub{font-size:18.5px;color:var(--tinta-suave);max-width:70ch;margin:0 0 10px}
.cabeca-meta{font-size:14px;color:var(--tinta-suave);margin:0}

.vazio{
  padding:24px;border:1px dashed var(--linha-forte);border-radius:var(--raio);
  color:var(--tinta-suave);
}

/* ==================================================================
   CARDS
   ================================================================== */

.grade-cards{
  display:grid;gap:1px;background:var(--linha);
  border:1px solid var(--linha);border-radius:var(--raio);
  grid-template-columns:repeat(auto-fill,minmax(258px,1fr));
}

.card{
  background:var(--papel);padding:20px;display:flex;flex-direction:column;
  transition:background .12s ease;
}
.card:hover{background:var(--papel-alt)}

.card-tag,.card-tag-estatico{
  display:inline-block;align-self:flex-start;
  font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--eletrico);margin-bottom:10px;
}
.card-tag:hover{color:var(--eletrico-forte)}
.card-tag-estatico{color:var(--tinta-suave)}

.card-titulo{font-size:23px;font-weight:800;margin:0 0 6px;letter-spacing:-.02em}
.card-titulo a{color:var(--marca)}
.card-titulo a:hover{color:var(--eletrico);text-decoration:none}

.card-classe{
  font-size:12.5px;font-style:italic;color:var(--tinta-suave);margin:0 0 8px;
}
.card-resumo{font-size:14.5px;color:var(--tinta-suave);margin:0 0 12px}
.card-sinonimos{
  font-family:var(--fonte-texto);font-size:14.5px;color:var(--tinta);margin:0 0 14px;
}
.card-rodape{
  display:flex;gap:14px;margin:auto 0 0;padding-top:12px;
  border-top:1px solid var(--linha);
  font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--tinta-suave);
}

.card-categoria .card-titulo{font-size:21px}

/* ==================================================================
   CHIPS, ALFABETO, LISTAS
   ================================================================== */

.filtros{margin:0 0 30px}
.filtros-titulo{
  font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tinta-suave);margin:0 0 10px;
}

.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{
  display:inline-flex;align-items:center;gap:8px;padding:8px 13px;
  border:1px solid var(--linha-forte);border-radius:var(--raio);
  background:var(--papel);color:var(--tinta);font-size:14px;font-weight:600;
}
.chip:hover{border-color:var(--eletrico);color:var(--eletrico);text-decoration:none;background:var(--destaque-fundo)}
.chip-ativo{background:var(--marca);border-color:var(--marca);color:var(--papel)}
.chip-ativo:hover{background:var(--marca-escura);color:var(--papel)}
.chip-estatico{cursor:default;color:var(--tinta-suave)}
.chip-total{
  font-size:11px;font-weight:700;padding:1px 6px;border-radius:2px;
  background:var(--papel-alt);color:var(--tinta-suave);
}
.chip-ativo .chip-total{background:rgba(255,255,255,.18);color:var(--papel)}

.alfabeto{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.alfabeto-letra{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:38px;height:38px;padding:0 6px;
  border:1px solid var(--linha-forte);border-radius:var(--raio);
  font-size:14.5px;font-weight:700;color:var(--marca);background:var(--papel);
}
.alfabeto-letra:hover{background:var(--marca);border-color:var(--marca);color:var(--papel);text-decoration:none}
.alfabeto-letra.ativa{background:var(--marca);border-color:var(--marca);color:var(--papel)}
.alfabeto-letra.vazia{color:var(--tinta-suave);opacity:.45;background:var(--papel-alt)}
.alfabeto-limpar{margin-left:8px;font-size:13.5px;font-weight:700}

.lista-linhas{list-style:none;margin:0;padding:0;border-top:1px solid var(--linha)}
.lista-linhas li{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:14px;
  padding:14px 0;border-bottom:1px solid var(--linha);
}
.linha-palavra{font-size:19px;font-weight:700;color:var(--marca)}
.linha-palavra:hover{color:var(--eletrico)}
.linha-cat{
  font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--eletrico);
}
.linha-meta,.linha-data{font-size:13px;color:var(--tinta-suave)}
.linha-data{margin-left:auto}

.lista-inline{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 16px;padding:0}
.lista-inline a{
  display:inline-block;padding:6px 12px;border:1px solid var(--linha-forte);
  border-radius:var(--raio);font-size:14.5px;font-weight:600;
}
.lista-inline a:hover{background:var(--destaque-fundo);border-color:var(--eletrico);text-decoration:none}
.pilula{
  display:inline-block;padding:6px 12px;background:var(--papel-alt);
  border:1px solid var(--linha);border-radius:var(--raio);
  font-size:14px;color:var(--tinta-suave);
}

.lista-marcada{margin:0 0 16px;padding-left:18px}
.lista-marcada li{margin-bottom:6px}

.lista-relacoes{list-style:none;margin:0;padding:0}
.lista-relacoes li{
  padding:9px 0;border-bottom:1px solid var(--linha);
  display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;
}
.lista-relacoes a{font-weight:700}

.lista-definicoes{margin:0 0 16px}
.lista-definicoes dt{font-weight:700;color:var(--marca);margin-top:12px}
.lista-definicoes dd{margin:2px 0 0;color:var(--tinta-suave)}

/* ==================================================================
   TRILHA E PAGINACAO
   ================================================================== */

.trilha{padding:16px 0 0;font-size:13px}
.trilha ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.trilha li+li::before{content:"/";margin-right:8px;color:var(--tinta-suave)}
.trilha a{color:var(--tinta-suave);font-weight:600}
.trilha a:hover{color:var(--eletrico)}
.trilha span{color:var(--tinta)}

.paginacao{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:30px 0 10px}
.pag-item{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:40px;height:40px;padding:0 12px;
  border:1px solid var(--linha-forte);border-radius:var(--raio);
  font-size:14.5px;font-weight:700;color:var(--marca);background:var(--papel);
}
.pag-item:hover{background:var(--marca);border-color:var(--marca);color:var(--papel);text-decoration:none}
.pag-item.ativa{background:var(--marca);border-color:var(--marca);color:var(--papel)}
.pag-nav{font-weight:700}
.pag-corte{padding:0 4px;color:var(--tinta-suave)}

/* ==================================================================
   NEWSLETTER
   ================================================================== */

.newsletter{
  display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:center;
  padding:32px;background:var(--marca);border-radius:var(--raio);color:var(--papel);
}
.newsletter h2{color:var(--papel);margin:0 0 8px}
.newsletter p{color:#E4EDF4;margin:0}
.newsletter-form{display:flex;flex-wrap:wrap;gap:8px}
.newsletter-form input{
  flex:1 1 200px;padding:13px 14px;font:inherit;font-size:16px;
  border:1px solid var(--papel);border-radius:var(--raio);
  background:var(--papel);color:var(--tinta);
}
.newsletter-form .btn{padding:13px 22px;font-size:15px}
.newsletter-rodape{flex:1 0 100%;font-size:12.5px;color:#B9D4EC;margin:2px 0 0}

/* ==================================================================
   FAQ
   ================================================================== */

.faq{border-top:1px solid var(--linha)}
.faq-item{border-bottom:1px solid var(--linha);padding:16px 0}
.faq-item summary{
  font-size:18px;font-weight:700;color:var(--marca);cursor:pointer;
  list-style:none;padding-right:28px;position:relative;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:"+";position:absolute;right:0;top:-2px;
  font-size:22px;font-weight:700;color:var(--eletrico);
}
.faq-item[open] summary::after{content:"–"}
.faq-item summary:hover{color:var(--eletrico)}
.faq-resposta{padding-top:10px;max-width:80ch}
.faq-resposta p{margin:0;color:var(--tinta-suave);font-size:16.5px}

/* ==================================================================
   VERBETE
   ================================================================== */

.verbete{max-width:900px}

.verbete-cabeca{padding:20px 0 22px;border-bottom:1px solid var(--linha)}

.etiqueta{
  display:inline-block;margin:0 8px 12px 0;padding:4px 9px;
  border:1px solid var(--marca);border-radius:2px;
  font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--marca);background:var(--papel);
}
.etiqueta:hover{background:var(--marca);color:var(--papel);text-decoration:none}
.etiqueta-clara{border-color:var(--linha-forte);color:var(--tinta-suave)}

.verbete-sub{font-size:18.5px;color:var(--tinta-suave);margin:0 0 18px}

.verbete-ficha{
  display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:18px 0 14px;padding:0;
  border:1px solid var(--linha);border-radius:var(--raio);overflow:hidden;
}
.verbete-ficha li{
  flex:1 1 150px;padding:11px 14px;border-right:1px solid var(--linha);
}
.verbete-ficha li:last-child{border-right:0}
.verbete-ficha span{
  display:block;font-size:10.5px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--tinta-suave);
}
.verbete-ficha strong{font-size:16px;font-weight:700;color:var(--marca)}

.datas{
  display:flex;flex-wrap:wrap;gap:18px;margin:16px 0;
  font-size:13px;color:var(--tinta-suave);
}

/* Acoes: compartilhar, copiar, imprimir, exportar */
.acoes{
  display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;
  padding:16px 0;border-bottom:1px solid var(--linha);
}
.acoes-compacto{border-top:1px solid var(--linha);border-bottom:0;margin-top:10px}
.acoes-grupo{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.acoes-rotulo{
  font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--tinta-suave);margin-right:2px;
}

.btn{
  display:inline-block;padding:8px 14px;font:inherit;font-size:13.5px;font-weight:700;
  border-radius:var(--raio);cursor:pointer;text-align:center;
}
.btn-linha{border:1px solid var(--linha-forte);background:var(--papel);color:var(--tinta)}
.btn-linha:hover{border-color:var(--marca);background:var(--marca);color:var(--papel);text-decoration:none}
.btn-solido{border:1px solid var(--eletrico);background:var(--eletrico);color:var(--papel)}
.btn-solido:hover{background:var(--eletrico-forte);border-color:var(--eletrico-forte);color:var(--papel);text-decoration:none}
.btn-ok{border-color:var(--eletrico);color:var(--eletrico)}

.destaque-resumo{
  margin:26px 0;padding:20px 22px;background:var(--destaque-fundo);
  border-left:3px solid var(--eletrico);border-radius:0 var(--raio) var(--raio) 0;
}
.destaque-resumo p{font-family:var(--fonte-texto);font-size:18px;margin:0}
.resumo-destaques{margin-top:12px!important;font-size:15.5px!important;font-family:var(--fonte-ui)!important}
.rotulo{
  font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--tinta-suave);margin-right:6px;
}

.sumario{
  margin:5px 0;padding:18px 22px;border:1px solid var(--linha);
  border-radius:var(--raio);background:var(--papel-alt);
}
.sumario-titulo{
  font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tinta-suave);margin:0 0 10px;
}
.sumario ol{margin:0;padding-left:20px;columns:2;column-gap:32px}
.sumario li{margin-bottom:6px;font-size:15px;break-inside:avoid}

.bloco{padding:34px 0;border-bottom:1px solid var(--linha)}
.bloco h2{margin-bottom:16px}
.bloco h3{margin:22px 0 10px}

.acepcao{
  padding:20px 0 6px;border-top:1px solid var(--linha);
}
.acepcao:first-of-type{border-top:0;padding-top:6px}
.acepcao-cabeca{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}
.acepcao-num{
  font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--eletrico);
}
.acepcao-definicao{
  font-family:var(--fonte-texto);font-size:19px;color:var(--tinta);margin:0 0 14px;
}

.marca-registro{
  display:inline-block;padding:2px 8px;border:1px solid var(--linha-forte);
  border-radius:2px;font-size:10.5px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--tinta-suave);background:var(--papel-alt);
}

.exemplos{list-style:none;margin:0 0 18px;padding:0}
.exemplos li{
  font-family:var(--fonte-texto);font-size:17px;color:var(--tinta);
  padding:8px 0 8px 16px;border-left:2px solid var(--linha-forte);margin-bottom:6px;
}
.exemplos-grandes li{font-size:18px;border-left-color:var(--eletrico)}

.titulo-lista{
  display:flex;align-items:center;gap:10px;
  margin:22px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--linha);
  font-size:17px;font-weight:800;color:var(--marca);
  text-transform:uppercase;letter-spacing:.06em;
}
.contagem{
  font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:2px;
  background:var(--marca);color:var(--papel);letter-spacing:.04em;
}

.lista-sinonimos{list-style:none;margin:0 0 8px;padding:0}
.item-sinonimo{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  padding:11px 0;border-bottom:1px solid var(--linha);
}
.item-palavra{font-size:18px;font-weight:700;color:var(--marca);min-width:150px}
.item-palavra:hover{color:var(--eletrico)}
.item-nota{font-size:13.5px;color:var(--tinta-suave);flex:1 1 240px}

.forca{display:inline-flex;align-items:center;gap:7px;margin-left:auto}
.forca-trilho{
  display:block;width:84px;height:5px;background:var(--linha);border-radius:2px;overflow:hidden;
}
.forca-nivel{display:block;height:100%;background:var(--eletrico)}
.forca-num{font-size:12px;font-weight:700;color:var(--tinta-suave);min-width:22px}

.lista-antonimos .item-palavra{color:var(--tinta)}

.tabela-envolve{overflow-x:auto;margin:0 0 18px}
.tabela{width:100%;border-collapse:collapse;font-size:15.5px}
.tabela th,.tabela td{
  padding:11px 14px;border-bottom:1px solid var(--linha);text-align:left;vertical-align:top;
}
.tabela thead th{
  font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--papel);background:var(--marca);border-bottom:0;
}
.tabela tbody th{width:30%;font-weight:700;color:var(--marca)}
.tabela tbody tr:hover{background:var(--papel-alt)}

.nota-bloco{
  padding:14px 16px;background:var(--papel-alt);border-left:3px solid var(--linha-forte);
  font-size:15px;color:var(--tinta-suave);margin:0;
}

.erro-caixa{
  padding:16px 18px;border:1px solid var(--linha);border-left:3px solid var(--eletrico);
  border-radius:0 var(--raio) var(--raio) 0;margin-bottom:14px;
}
.erro-titulo{font-weight:700;color:var(--marca);margin:0 0 6px}
.exemplo-errado,.exemplo-certo{
  font-family:var(--fonte-texto);font-size:16.5px;margin:6px 0 0;
}
.rotulo-erro,.rotulo-certo{
  display:inline-block;margin-right:8px;padding:2px 8px;border-radius:2px;
  font-family:var(--fonte-ui);font-size:10.5px;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;
}
.rotulo-erro{background:var(--tinta);color:var(--papel)}
.rotulo-certo{background:var(--eletrico);color:var(--papel)}

.colunas-duas{display:grid;grid-template-columns:1fr 1fr;gap:32px}

/* Conteudo editorial vindo do JSON */
.conteudo-editorial{font-family:var(--fonte-texto);font-size:18px;max-width:74ch}
.conteudo-editorial h2{
  font-family:var(--fonte-ui);margin:32px 0 14px;padding-bottom:10px;
  border-bottom:1px solid var(--linha);
}
.conteudo-editorial h3{font-family:var(--fonte-ui);margin:24px 0 10px}
.conteudo-editorial p{margin:0 0 16px}
.conteudo-editorial ul,.conteudo-editorial ol{margin:0 0 18px;padding-left:22px}
.conteudo-editorial li{margin-bottom:7px}
.conteudo-editorial em{font-style:italic}
.intro-categoria{
  font-family:var(--fonte-texto);font-size:18px;max-width:74ch;color:var(--tinta);
  margin-bottom:28px;
}

/* Quiz */
.quiz{
  padding:20px 22px;border:1px solid var(--linha);border-radius:var(--raio);
  background:var(--papel-alt);margin-bottom:16px;
}
.quiz-pergunta{font-size:17.5px;font-weight:700;color:var(--marca);margin:0 0 14px}
.quiz-opcoes{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.quiz-opcao{
  width:100%;text-align:left;padding:12px 14px;font:inherit;font-size:16px;
  border:1px solid var(--linha-forte);border-radius:var(--raio);
  background:var(--papel);color:var(--tinta);cursor:pointer;
}
.quiz-opcao:hover:enabled{border-color:var(--eletrico);background:var(--destaque-fundo)}
.quiz-opcao:disabled{cursor:default}
.opcao-certa{border-color:var(--eletrico);background:var(--destaque-fundo);font-weight:700;color:var(--eletrico-forte)}
.opcao-errada{border-color:var(--tinta);background:var(--papel);text-decoration:line-through;color:var(--tinta-suave)}
.quiz-resposta{
  margin:14px 0 0;padding-top:12px;border-top:1px solid var(--linha);
  font-size:15.5px;color:var(--tinta-suave);
}

.bloco-fontes{font-size:15px;color:var(--tinta-suave)}

/* Caixa de autor */
.autor-box{
  display:flex;gap:22px;align-items:flex-start;
  padding:24px;margin:34px 0;border:1px solid var(--linha);
  border-top:3px solid var(--marca);border-radius:var(--raio);background:var(--papel-alt);
}
.autor-box img{width:72px;height:72px;border-radius:var(--raio);flex:0 0 auto}
.autor-rotulo{
  font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--tinta-suave);margin:0 0 4px;
}
.autor-box h2{font-size:21px;margin:0 0 4px}
.autor-cargo{font-size:14px;font-weight:600;color:var(--eletrico);margin:0 0 10px}
.autor-bio{font-size:15.5px;color:var(--tinta-suave);margin:0 0 8px}
.autor-revisao{font-size:13.5px;color:var(--tinta-suave);margin:0}

.autor-perfil{
  display:flex;gap:26px;align-items:flex-start;flex-wrap:wrap;
  padding:26px;border:1px solid var(--linha);border-top:3px solid var(--marca);
  border-radius:var(--raio);margin-bottom:30px;
}
.autor-perfil img{width:120px;height:120px;border-radius:var(--raio)}
.autor-perfil h2{margin:0 0 4px}
.autor-formacao{font-size:14.5px;color:var(--tinta-suave);margin:0 0 10px}
.autor-contato{font-size:15px;margin:0 0 12px}

/* Navegacao anterior / proximo */
.nav-verbetes{
  display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--linha);
  border:1px solid var(--linha);border-radius:var(--raio);
  margin:34px auto;max-width:900px;overflow:hidden;
}
.nav-verbete{display:flex;flex-direction:column;gap:4px;padding:18px 20px;background:var(--papel)}
.nav-verbete:hover{background:var(--papel-alt);text-decoration:none}
.nav-proximo{text-align:right}
.nav-rotulo{
  font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--tinta-suave);
}
.nav-palavra{font-size:21px;font-weight:800;color:var(--marca);letter-spacing:-.02em}
.nav-verbete:hover .nav-palavra{color:var(--eletrico)}

/* Resultados de busca */
.lista-resultados{list-style:none;margin:0;padding:0;border-top:1px solid var(--linha)}
.lista-resultados li{padding:18px 0;border-bottom:1px solid var(--linha)}
.resultado-palavra{font-size:22px;font-weight:800;color:var(--marca);margin-right:12px}
.resultado-palavra:hover{color:var(--eletrico)}
.resultado-cat{
  font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--eletrico);
}
.resultado-resumo{margin:6px 0 4px;color:var(--tinta-suave);font-size:15.5px}
.resultado-sinonimos{font-family:var(--fonte-texto);font-size:15.5px;margin:0;color:var(--tinta)}

/* Paginas institucionais */
.pagina-texto{max-width:880px}
.grade-destaques{
  display:grid;gap:1px;background:var(--linha);border:1px solid var(--linha);
  border-radius:var(--raio);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  margin-bottom:30px;
}
.destaque-item{background:var(--papel);padding:18px 20px}
.destaque-titulo{
  font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--eletrico);margin:0 0 6px;
}
.destaque-item p:last-child{margin:0;font-size:15px;color:var(--tinta-suave)}

/* ==================================================================
   RODAPE
   ================================================================== */

.rodape{margin-top:56px;border-top:3px solid var(--marca);background:var(--papel-alt)}
.rodape-grid{
  display:grid;gap:32px;padding-top:40px;padding-bottom:34px;
  grid-template-columns:1.6fr 1fr 1fr 1fr;
}
.rodape-col ul{list-style:none;margin:0;padding:0}
.rodape-col li{margin-bottom:8px}
.rodape-col a{font-size:14.5px;color:var(--tinta);font-weight:600}
.rodape-col a:hover{color:var(--eletrico)}
.rodape-titulo{
  font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--marca);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--linha-forte);
}
.rodape-nome{font-size:19px;font-weight:800;color:var(--marca);margin:10px 0 6px}
.rodape-desc{font-size:14.5px;color:var(--tinta-suave);max-width:38ch}
.rodape-contato a{font-weight:700}

.rodape-fim{
  display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;
  padding-top:18px;padding-bottom:26px;border-top:1px solid var(--linha-forte);
  font-size:13.5px;color:var(--tinta-suave);
}
.rodape-fim p{margin:0}
.voltar-topo{
  padding:9px 16px;border:1px solid var(--marca);border-radius:var(--raio);
  font-size:13px;font-weight:700;color:var(--marca);background:var(--papel);
}
.voltar-topo:hover{background:var(--marca);color:var(--papel);text-decoration:none}

/* ==================================================================
   AVISO DE COOKIES
   ================================================================== */

.cookies{
  position:fixed;left:0;right:0;bottom:0;z-index:45;
  background:var(--marca);color:var(--papel);border-top:3px solid var(--eletrico);
}
.cookies-int{
  display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;
  max-width:var(--larg);margin:0 auto;padding:18px 20px;
}
.cookies-texto{max-width:70ch}
.cookies-texto p{margin:0;font-size:14.5px;color:#E4EDF4}
.cookies-titulo{font-size:16px!important;font-weight:800;color:var(--papel)!important;margin-bottom:4px!important}
.cookies-texto a{color:var(--papel);text-decoration:underline}
.cookies-acoes{display:flex;gap:8px;flex-wrap:wrap}
.cookies .btn-linha{background:transparent;border-color:rgba(255,255,255,.5);color:var(--papel)}
.cookies .btn-linha:hover{background:var(--papel);color:var(--marca);border-color:var(--papel)}

/* ==================================================================
   RESPONSIVO
   ================================================================== */

@media (max-width:1080px){
  .nav-desktop ul{gap:15px}
  .nav-desktop a{font-size:13.5px}
  .busca-topo input{width:150px}
}

@media (max-width:900px){
  body{font-size:16.5px}
  .nav-desktop,.busca-topo{display:none}
  .abrir-menu{display:inline-block;margin-left:auto}
  .newsletter{grid-template-columns:1fr;gap:20px}
  .colunas-duas{grid-template-columns:1fr;gap:0}
  .rodape-grid{grid-template-columns:1fr 1fr}
  .sumario ol{columns:1}
}

@media (max-width:640px){
  .area{padding:8px}
  .hero-int{padding:40px 16px 36px}
  .hero-stats{gap:24px}
  .hero-stats dd{font-size:22px}
  .busca-grande{flex-direction:column;gap:8px}
  .busca-grande input{border-radius:var(--raio);border-right:1px solid var(--papel)}
  .busca-grande button{border-radius:var(--raio)}
  .secao{padding:32px 16px}
  .secao-topo{flex-direction:column;align-items:flex-start;gap:6px}
  .grade-cards{grid-template-columns:1fr}
  .nav-verbetes{grid-template-columns:1fr}
  .nav-proximo{text-align:left}
  .rodape-grid{grid-template-columns:1fr;gap:26px}
  .verbete-ficha li{flex:1 1 100%;border-right:0;border-bottom:1px solid var(--linha)}
  .verbete-ficha li:last-child{border-bottom:0}
  .item-sinonimo{align-items:flex-start}
  .forca{margin-left:0}
  .faixa-marca-int{font-size:11.5px}
  .faixa-stats,.faixa-links{display:none}
  .autor-box{flex-direction:column;gap:14px}
  .cookies-int{flex-direction:column;align-items:flex-start;gap:14px}
  .acoes{flex-direction:column;gap:14px}
}

/* ==================================================================
   IMPRESSAO  (usada tambem pelo botao "Salvar em PDF")
   ================================================================== */

@media print{
  @page{margin:18mm}
  body{font-size:11.5pt;color:#000;background:#fff}
  .faixa-marca,.nav-desktop,.busca-topo,.abrir-menu,.menu-lateral,.veu,
  .acoes,.cookies,.rodape-grid,.voltar-topo,.paginacao,.nav-verbetes,
  .sumario,.filtros,.newsletter,.pular,.secao-link{display:none!important}
  .cabecalho{border-bottom:1pt solid #000}
  .marca-texto small{display:none}
  a{color:#000;text-decoration:none}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:8pt}
  .bloco,.secao{page-break-inside:auto;border-bottom:1pt solid #ccc}
  .acepcao,.card,.faq-item,.erro-caixa,.quiz{page-break-inside:avoid}
  .faq-item summary::after{display:none}
  .grade-cards{border:0;gap:0;display:block}
  .rodape{margin-top:20pt;border-top:1pt solid #000;background:none}
  .rodape-fim{border:0}
  h1,h2,h3{color:#000}
  .destaque-resumo{background:none;border-left:2pt solid #000}
}

/* ==================================================================
   CARTÕES GERADOS (imagem do verbete)
   ================================================================== */

.cartoes{
  margin:30px 0;padding:22px;border:1px solid var(--linha);
  border-top:3px solid var(--marca);border-radius:var(--raio);background:var(--papel-alt);
}
.cartoes-topo{
  display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;
  margin-bottom:16px;
}
.cartoes-topo h2{
  margin:0;font-size:17px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  color:var(--marca);
}
.cartoes-abas{display:flex;gap:6px;flex-wrap:wrap}
.cartoes-aba{
  padding:8px 15px;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;
  border:1px solid var(--linha-forte);border-radius:var(--raio);
  background:var(--papel);color:var(--tinta);
}
.cartoes-aba:hover{border-color:var(--eletrico);color:var(--eletrico)}
.cartoes-aba.ativa{background:var(--marca);border-color:var(--marca);color:var(--papel)}

.cartoes-palco{
  border:1px solid var(--linha);border-radius:var(--raio);overflow:hidden;background:var(--marca);
}
.cartao-img{display:block;width:100%;height:auto;aspect-ratio:1200/630}

.cartoes-pe{
  display:flex;flex-wrap:wrap;gap:12px;align-items:center;
  margin:14px 0 0;font-size:13px;color:var(--tinta-suave);
}

@media (max-width:640px){
  .cartoes{padding:16px}
  .cartoes-topo{flex-direction:column;align-items:flex-start;gap:10px}
  .cartoes-aba{font-size:13px;padding:7px 12px}
}

@media print{
  .cartoes-abas,.cartoes-pe{display:none!important}
  .cartoes{border:1pt solid #ccc;background:none;break-inside:avoid}
}
