/*
Theme Name: ADMonetiza
Theme URI: https://monetividade.com.br/tema-admonetiza-wordpress/
Author: Isaac Souza (Monetividade)
Author URI: https://monetividade.com.br/
Description: Tema WordPress leve e mobile-first para blogs de conteúdo monetizados com Google AdSense. Carregamento de anúncios na interação do leitor, home por categorias, layout de artigo otimizado, caixa do autor com redes sociais, aviso de cookies e foco em nota alta no PageSpeed.
Version: 1.14.5
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 6.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: admonetiza
Tags: blog, minimal, one-column, custom-logo, custom-menu, translation-ready
*/

/* ==========================================================================
   1. RESET & VARIÁVEIS
   ========================================================================== */

:root {
  --color-primary: #14213d;      /* azul marinho - confiança */
  --color-primary-light: #1f3a63;
  --color-accent: #d4a017;       /* dourado - cartão premium */
  --color-accent-hover: #b8890f;
  --color-link-post: #d4a017;    /* cor dos links dentro do texto do post */
  --color-link-post-hover: #b8890f;
  --color-bg: #ffffff;
  --color-bg-alt: #f5f6f8;
  --color-text: #1c1c1c;
  --color-muted: #5f6368;
  --color-border: #e6e8eb;
  --color-ad-bg: #f0f1f3;
  --font-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --container-width: 720px;
  --radius: 8px;
  --header-height: 56px;
  /* Altura reservada pro menu inferior no mobile, agora empilhado (um item
     embaixo do outro). Estimada pra até uns 4 itens — se o menu tiver mais
     itens que isso, aumente esse valor pra não sobrar espaço curto. */
  --bottom-nav-height: 150px;
}

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

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

body {
  margin: 0;
  font-family: var(--font-base);
  font-size: 16px;
  line-height: 1.55;
  color: var(--color-text);
  background: var(--color-bg);
  -webkit-font-smoothing: antialiased;
  /* espaço para o menu inferior fixo não cobrir o conteúdo no mobile */
  padding-bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));
}

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

a { color: var(--color-primary); text-decoration: none; }
a:hover { color: var(--color-accent-hover); }

ul, ol { padding-left: 1.2em; }

.container {
  width: 100%;
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 16px;
}

/* ==========================================================================
   2. HEADER / MENU SUPERIOR
   ========================================================================== */

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--color-bg);
  border-bottom: 1px solid var(--color-border);
  height: var(--header-height);
}

.site-header .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}

.site-branding {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.site-branding img.custom-logo {
  max-height: 28px;
  width: auto;
}

.site-branding .site-title-text {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}

.menu-toggle span,
.menu-toggle span::before,
.menu-toggle span::after {
  content: "";
  display: block;
  width: 20px;
  height: 2px;
  background: var(--color-primary);
  position: relative;
  transition: transform .2s ease;
}
.menu-toggle span::before { position: absolute; top: -6px; }
.menu-toggle span::after { position: absolute; top: 6px; }

.primary-navigation {
  display: none;
  position: absolute;
  top: var(--header-height);
  left: 0;
  right: 0;
  background: var(--color-bg);
  border-bottom: 1px solid var(--color-border);
}

.primary-navigation.is-open { display: block; }

.primary-navigation ul {
  list-style: none;
  margin: 0;
  padding: 8px 16px 12px;
}

.primary-navigation li { border-bottom: 1px solid var(--color-border); }
.primary-navigation li:last-child { border-bottom: none; }

.primary-navigation a {
  display: block;
  padding: 10px 4px;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text);
}

/* ==========================================================================
   3. HERO: TÍTULO (posts, páginas, arquivos — não aparece na home)
   ========================================================================== */

.page-hero {
  padding: 16px 0 10px;
  text-align: center;
  border-bottom: 1px solid var(--color-border);
  background: var(--color-bg-alt);
}

.page-hero__title {
  font-size: 1.35rem;
  line-height: 1.3;
  margin: 0;
  color: var(--color-primary);
  font-weight: 700;
  text-align: center;
}

/* ==========================================================================
   4. CONTEÚDO
   ========================================================================== */

.site-main { padding: 16px 0 32px; }

.entry {
  margin-bottom: 28px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--color-border);
}
.entry:last-child { border-bottom: none; }

.entry-thumbnail { border-radius: var(--radius); overflow: hidden; margin-bottom: 10px; }

/* Post/página com a imagem destacada ligada em Personalizar (desligada por
   padrão): imagem contida, com cantos arredondados, proporção reservada
   desde o início para não causar troca de layout ao carregar. */
.entry-thumbnail--single img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
}

/* Home (feed): imagem sangra até a borda da tela e fica maior no mobile,
   para os posts preencherem a tela toda ao rolar. */
.content-area--feed .entry-thumbnail {
  margin: 0 -16px 10px;
  border-radius: 0;
}
.content-area--feed .entry-thumbnail img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
}
.entry--feed { padding-bottom: 20px; margin-bottom: 20px; }

.entry-title {
  font-size: 1.1rem;
  line-height: 1.35;
  margin: 0 0 6px;
}
.entry-title a { color: var(--color-text); }

.entry-meta {
  font-size: 12px;
  color: var(--color-muted);
  margin-bottom: 8px;
}

/* Em posts, a data/categoria some do início e aparece no fim do artigo. */
.entry-meta--footer {
  margin: 20px 0 0;
  padding-top: 14px;
  border-top: 1px solid var(--color-border);
}

.entry-content, .entry-summary {
  /* 16px é o tamanho mínimo recomendado pelo Google para texto de leitura no mobile
     (evita zoom automático e atende ao critério de legibilidade do Lighthouse/PageSpeed). */
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text);
}

.entry-content p, .entry-summary p { margin: 0 0 14px; }

.entry-content h2 { font-size: 1.15rem; margin: 22px 0 10px; color: var(--color-primary); }
.entry-content h3 { font-size: 1.02rem; margin: 18px 0 8px; color: var(--color-primary); }

/* Links dentro do texto do post (só posts, não páginas nem a home): cor
   laranja/dourada, para se destacar do texto normal sem virar um botão. */
body.single .entry-content a {
  color: var(--color-link-post);
  text-decoration: underline;
}
body.single .entry-content a:hover {
  color: var(--color-link-post-hover);
}

/* Tabelas largas coladas no editor não devem quebrar o layout no mobile:
   a tabela rola na horizontal dentro do próprio wrapper, não a página toda. */
.entry-content .table-wrap,
.entry-content table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.entry-content table {
  border-collapse: collapse;
  font-size: 13.5px;
  margin: 14px 0;
}
.entry-content table th, .entry-content table td {
  border: 1px solid var(--color-border);
  padding: 8px;
  text-align: left;
}

.related-posts {
  margin: 20px 0;
  padding: 16px 0 4px;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.related-posts__title {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--color-muted);
  margin: 0 0 12px;
}

.related-posts__list { list-style: none; margin: 0; padding: 0; }

.related-posts__item { margin-bottom: 14px; }
.related-posts__item:last-child { margin-bottom: 12px; }

.related-posts__link {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.related-posts__thumb {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border-radius: 6px;
  overflow: hidden;
  background: #e1e4e8;
}
.related-posts__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.related-posts__body { min-width: 0; }

.related-posts__item-title {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text);
  line-height: 1.3;
  margin-bottom: 3px;
}

.related-posts__excerpt {
  display: block;
  font-size: 12px;
  color: var(--color-muted);
  line-height: 1.4;
}

.read-more {
  display: inline-block;
  margin-top: 4px;
  font-size: 13px;
  font-weight: 600;
}

/* ==========================================================================
   6. SIDEBAR
   ========================================================================== */

.widget-area { margin-top: 24px; }
.widget { margin-bottom: 20px; }
.widget-title {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--color-muted);
  margin: 0 0 10px;
}

/* ==========================================================================
   7. FOOTER
   ========================================================================== */

.site-footer {
  border-top: 1px solid var(--color-border);
  padding: 20px 0 28px;
  background: var(--color-bg-alt);
}

.site-footer .site-info {
  font-size: 12px;
  color: var(--color-muted);
  text-align: center;
}

/* ==========================================================================
   7b. MENU INFERIOR (mobile: lista vertical centralizada / desktop: linha)
   ========================================================================== */

.bottom-nav {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
  background: var(--color-bg);
  border-top: 1px solid var(--color-border);
  padding-bottom: env(safe-area-inset-bottom);
}

.bottom-nav__list {
  list-style: none;
  margin: 0;
  padding: 10px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.bottom-nav__list li { display: flex; min-width: 0; }

.bottom-nav__list a {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--color-muted);
  padding: 3px 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.bottom-nav__list li.current-menu-item a,
.bottom-nav__list li.current_page_item a,
.bottom-nav__list a:hover {
  color: var(--color-primary);
}

/* Em posts e páginas o menu inferior não fica fixo: aparece no fim do
   conteúdo, como um rodapé normal, sem flutuar durante a rolagem. */
body.single .bottom-nav,
body.page .bottom-nav {
  position: static;
}
body.single,
body.page {
  padding-bottom: 0;
}
body.single .cookie-notice,
body.page .cookie-notice {
  bottom: 0;
}

/* No mobile, na home, o menu inferior também não fica mais fixo: some
   flutuar e passa a aparecer no final da página (depois do feed de posts). */
body.home .bottom-nav {
  position: static;
}
body.home {
  padding-bottom: 0;
}
body.home .cookie-notice {
  bottom: 0;
}

/* ==========================================================================
   7c. AVISO DE COOKIES (fixo, acima do menu inferior no mobile)
   ========================================================================== */

.cookie-notice {
  /* escondido por padrão: o JS decide se mostra, depois de checar o cookie
     no navegador — assim funciona certo mesmo com cache de página ativado. */
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: var(--bottom-nav-height);
  z-index: 110;
  background: var(--color-primary);
  color: #fff;
  padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
  flex-direction: column;
  gap: 10px;
}

.cookie-notice.is-visible { display: flex; }

.cookie-notice__text {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}

.cookie-notice__text a {
  color: var(--color-accent);
  text-decoration: underline;
}

.cookie-notice .btn-cookie-ok {
  align-self: flex-end;
  background: var(--color-accent);
  color: #1c1c1c;
  border: none;
  font-size: 13px;
  font-weight: 700;
  padding: 8px 22px;
  border-radius: var(--radius);
  cursor: pointer;
}

.cookie-notice .btn-cookie-ok:hover { background: var(--color-accent-hover); }

/* ==========================================================================
   8. PAGINAÇÃO / FORM BUSCA / 404
   ========================================================================== */

.pagination {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin-top: 20px;
  font-size: 13px;
}
.pagination a, .pagination span {
  padding: 6px 10px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius);
}

.search-form { display: flex; gap: 8px; margin-bottom: 16px; }
.search-form input[type="search"] {
  flex: 1;
  padding: 8px 10px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius);
  font-size: 14px;
}
.search-form button {
  padding: 8px 14px;
  border-radius: var(--radius);
  border: none;
  background: var(--color-primary);
  color: #fff;
  font-size: 13px;
  cursor: pointer;
}

.error-404 { text-align: center; padding: 40px 0; }

/* ==========================================================================
   9. DESKTOP (min-width 782px) - ajustes discretos, mantendo minimalismo
   ========================================================================== */

@media (min-width: 782px) {
  :root {
    --container-width: 900px;
    --header-height: 64px;
    /* No desktop o menu inferior volta a ser uma linha única e baixa
       (o empilhamento vertical é só recurso de mobile). */
    --bottom-nav-height: 56px;
  }

  /* Menu inferior também aparece no desktop, centralizado, em linha (não
     empilhado como no mobile) e mais espaçado entre os itens. */
  .bottom-nav__list {
    flex-direction: row;
    max-width: var(--container-width);
    margin: 0 auto;
    justify-content: center;
    gap: 32px;
    padding: 0 16px;
  }
  .bottom-nav__list a { padding: 18px 4px; }

  /* No desktop a home volta a ter o menu inferior fixo (a mudança para
     estático/fim-de-página é só para o mobile). */
  body.home .bottom-nav {
    position: fixed;
  }
  body.home {
    padding-bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));
  }
  body.home .cookie-notice {
    bottom: var(--bottom-nav-height);
  }

  .cookie-notice {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 14px 24px;
    gap: 20px;
  }
  .cookie-notice .btn-cookie-ok { align-self: auto; flex-shrink: 0; }

  .menu-toggle { display: none; }

  /* Logo + menu centralizados juntos, como um único grupo, em vez de
     espalhados nas pontas do cabeçalho. */
  .site-header .container {
    justify-content: center;
    gap: 40px;
  }

  .primary-navigation {
    display: block;
    position: static;
    background: none;
    border: none;
  }

  .primary-navigation ul {
    display: flex;
    gap: 20px;
    padding: 0;
  }

  .primary-navigation li { border-bottom: none; }
  .primary-navigation a { padding: 4px 0; font-size: 14px; }

  .site-branding img.custom-logo { max-height: 32px; }
  .site-branding .site-title-text { font-size: 17px; }

  .page-hero { padding: 24px 0 16px; }
  .page-hero__title { font-size: 1.6rem; }

  .entry-title { font-size: 1.25rem; }

  .content-area--feed .entry-thumbnail {
    margin: 0 0 12px;
    border-radius: var(--radius);
  }

  /* Sidebar ao lado do conteúdo (posts, arquivos, 404) — no mobile continua
     empilhada abaixo, como já era. */
  .content-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 40px;
  }
  .content-wrapper .content-area {
    flex: 1;
    min-width: 0;
  }
  .content-wrapper .widget-area {
    width: 280px;
    flex-shrink: 0;
    margin-top: 0;
    /* Acompanha a rolagem: fica "grudada" logo abaixo do menu superior
       fixo, e para sozinha quando chega ao fim do conteúdo ao lado. */
    position: sticky;
    top: calc(var(--header-height) + 20px);
    max-height: calc(100vh - var(--header-height) - 40px);
    overflow-y: auto;
  }
}

@media (min-width: 1024px) {
  :root { --container-width: 980px; }
}


/* =====================================================================
   v1.5.0 (24/10/2026) - menu principal com submenus
   - celular: submenus aparecem recuados dentro do menu aberto
   - computador: tudo numa linha; submenu abre ao passar o mouse/foco
   ===================================================================== */
.primary-navigation .sub-menu { padding: 0 0 4px 14px; margin: 0; }
.primary-navigation .sub-menu li { border-bottom: none; }
.primary-navigation .sub-menu a { font-size: 13px; color: var(--color-muted); padding: 6px 4px; }
@media (min-width: 782px) {
  .primary-navigation > ul { flex-wrap: nowrap; align-items: center; gap: 18px; }
  .primary-navigation li { position: relative; }
  .primary-navigation a { white-space: nowrap; }
  .primary-navigation .menu-item-has-children > a::after {
    content: ""; display: inline-block; margin-left: 6px; vertical-align: middle;
    border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; opacity: .55;
  }
  .primary-navigation .sub-menu {
    display: none; position: absolute; top: 100%; left: -14px; min-width: 200px;
    flex-direction: column; gap: 0; padding: 8px 0; margin: 0;
    background: var(--color-bg); border: 1px solid var(--color-border); border-radius: 8px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, .10); z-index: 200;
  }
  .primary-navigation li:hover > .sub-menu,
  .primary-navigation li:focus-within > .sub-menu { display: flex; }
  .primary-navigation .sub-menu a { display: block; padding: 8px 16px; font-size: 14px; color: var(--color-text); }
  .primary-navigation .sub-menu a:hover { background: rgba(0, 0, 0, .04); color: var(--color-primary); }
}


/* v1.6.0 (24/10/2026) - pagina inicial por temas e perfil do autor */
.home-v2 { padding: 8px 0 32px; }
.hv2-hero { padding: 20px 0 4px; }
.hv2-hero__title { font-size: 26px; line-height: 1.25; margin: 0 0 10px; }
.hv2-hero__intro { color: var(--color-muted); font-size: 16px; line-height: 1.55; margin: 0 0 14px; max-width: 680px; }
.hv2-hero__autor { display: inline-flex; align-items: center; gap: 10px; font-size: 14px; color: var(--color-text); text-decoration: none; }
.hv2-hero__autor img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
.hv2-temas ul { list-style: none; margin: 18px 0 4px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.hv2-temas a { display: inline-block; padding: 7px 14px; border: 1px solid var(--color-border); border-radius: 999px; font-size: 14px; color: var(--color-text); text-decoration: none; }
.hv2-temas a:hover { border-color: var(--color-primary); color: var(--color-primary); }
.hv2-sec { margin-top: 32px; }
.hv2-sec__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; border-bottom: 2px solid var(--color-text); padding-bottom: 8px; margin-bottom: 16px; }
.hv2-sec__head h2 { font-size: 20px; margin: 0; }
.hv2-sec__head h2 a { color: inherit; text-decoration: none; }
.hv2-sec__all { font-size: 14px; white-space: nowrap; color: var(--color-primary); text-decoration: none; }
.hv2-grid, .hv2-recentes__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.hv2-card { min-width: 0; }
.hv2-card__img { display: block; aspect-ratio: 16 / 10; overflow: hidden; border-radius: 8px; background: rgba(0,0,0,.05); margin-bottom: 8px; }
.hv2-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hv2-card__title { font-size: 15px; line-height: 1.35; margin: 0; }
.hv2-card__title a { color: var(--color-text); text-decoration: none; }
.hv2-card__title a:hover { color: var(--color-primary); }
.hv2-card--lead { grid-column: 1 / -1; }
.hv2-card--lead .hv2-card__title { font-size: 20px; }
.hv2-todos__grupo { border-bottom: 1px solid var(--color-border); }
.hv2-todos__grupo summary { cursor: pointer; padding: 12px 0; font-weight: 600; }
.hv2-todos__grupo summary span { color: var(--color-muted); font-weight: 400; }
.hv2-todos__grupo ul { margin: 0 0 14px; padding-left: 18px; }
.hv2-todos__grupo li { margin: 0 0 6px; font-size: 14px; break-inside: avoid; }
@media (min-width: 782px) {
  .hv2-hero__title { font-size: 34px; }
  .hv2-grid { grid-template-columns: repeat(4, 1fr); }
  .hv2-recentes__grid { grid-template-columns: 2fr 1fr 1fr; }
  .hv2-card--lead { grid-column: 1; grid-row: 1 / span 2; }
  .hv2-card--lead .hv2-card__title { font-size: 24px; }
  .hv2-todos__grupo ul { columns: 2; column-gap: 32px; }
}
.autor-perfil { display: flex; gap: 18px; align-items: flex-start; padding: 20px; border: 1px solid var(--color-border); border-radius: 12px; margin: 8px 0 28px; }
.autor-perfil__foto { width: 88px; height: 88px; border-radius: 50%; object-fit: cover; flex: 0 0 auto; }
.autor-perfil__cargo { margin: 0 0 6px; font-weight: 600; }
.autor-perfil__bio p { margin: 0 0 10px; }
.autor-perfil__redes { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.autor-perfil__redes a { display: inline-block; padding: 5px 12px; border: 1px solid var(--color-border); border-radius: 999px; font-size: 13px; text-decoration: none; color: var(--color-text); }
.autor-perfil__lista { font-size: 20px; margin: 0 0 16px; }
@media (max-width: 520px) { .autor-perfil { flex-direction: column; } }
@media (max-width: 781px) { .hv2-temas ul { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding-bottom: 4px; } .hv2-temas ul::-webkit-scrollbar { display: none; } .hv2-temas li { flex: 0 0 auto; } }
/* v1.6.1 (24/10/2026) - pagina inicial por temas passa a ser o padrao do tema */
/* v1.6.2 (24/10/2026) - botoes de temas da home so no celular (no computador o menu ja mostra os temas) */
@media (min-width: 782px) { .hv2-temas { display: none; } .hv2-hero { padding-bottom: 0; } }
/* v1.6.3 (24/10/2026) - botoes de temas removidos da home (celular e computador) */
.hv2-hero { padding-bottom: 0; }
/* v1.7.0 (24/10/2026) - anuncio da pagina inicial (Personalizar > Pagina inicial por temas) */
.hv2-anuncio { margin: 32px 0 0; padding: 8px 0 12px; text-align: center; overflow: hidden; max-width: 100%; min-height: 110px; border-top: 1px solid var(--color-border); border-bottom: 1px solid var(--color-border); }
.hv2-anuncio__rotulo { display: block; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--color-muted); margin-bottom: 8px; }
.hv2-anuncio ins, .hv2-anuncio iframe, .hv2-anuncio img, .hv2-anuncio > div { max-width: 100%; margin-left: auto; margin-right: auto; }
.hv2-anuncio ins.adsbygoogle { display: block; width: 100%; }

/* v1.8.0 (24/10/2026) - anuncios nos artigos (mesma moldura da pagina inicial) */
.entry-content .admonetiza-anuncio { margin: 28px 0; clear: both; }
.entry-content .admonetiza-anuncio p { margin: 0; }


/* v1.9.0 (24/10/2026) - layout novo dos artigos (Personalizar > Layout dos artigos) */
.pv2-breadcrumb { font-size: 13px; color: var(--color-muted); margin: 0 auto 10px; max-width: 760px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pv2-breadcrumb a { color: var(--color-muted); text-decoration: none; }
.pv2-breadcrumb a:hover { color: var(--color-primary); text-decoration: underline; }
.pv2-breadcrumb__sep { margin: 0 6px; opacity: .6; }
.pv2-byline { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 14px auto 0; text-align: left; }
.pv2-byline__foto img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; display: block; }
.pv2-byline__txt { display: flex; flex-direction: column; gap: 2px; font-size: 14px; line-height: 1.35; }
.pv2-byline__autor a { color: var(--color-text); font-weight: 600; text-decoration: none; }
.pv2-byline__autor a:hover { color: var(--color-primary); }
.pv2-byline__cargo { color: var(--color-muted); }
.pv2-byline__datas { color: var(--color-muted); font-size: 13px; }
body.post-v2 .content-wrapper { display: block; }
body.post-v2 .content-area { max-width: 760px; width: 100%; margin-left: auto; margin-right: auto; float: none; }
body.post-v2 .entry-thumbnail--single { margin: 0 0 24px; }
body.post-v2 .entry-thumbnail--single img { width: 100%; height: auto; border-radius: 10px; display: block; }
body.post-v2 .entry-meta--footer { display: none; }
.pv2-leia { margin: 24px 0 28px; padding: 14px 18px; border: 1px solid var(--color-border); border-left: 4px solid var(--color-primary); border-radius: 10px; background: rgba(0,0,0,.02); }
.pv2-leia .pv2-leia__titulo { margin: 0 0 6px; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--color-muted); text-align: left; }
.pv2-leia [class*="-cta-area"] { display: block !important; margin: 0 !important; padding: 0 !important; gap: 0 !important; width: auto !important; }
.pv2-leia a[class*="-cta-btn"] { all: unset; display: flex !important; align-items: baseline; gap: 8px; padding: 6px 0 !important; margin: 0 !important; width: auto !important; min-height: 0 !important; color: var(--color-text) !important; background: none !important; border: 0 !important; box-shadow: none !important; font-size: 16px !important; font-weight: 600 !important; line-height: 1.4 !important; text-align: left !important; justify-content: flex-start !important; cursor: pointer; transform: none !important; }
.pv2-leia a[class*="-cta-btn"]::before { content: "→"; color: var(--color-primary); font-weight: 700; flex: 0 0 auto; }
.pv2-leia a[class*="-cta-btn"]::after { content: none !important; display: none !important; }
.pv2-leia a[class*="-cta-btn"]:hover { color: var(--color-primary) !important; text-decoration: underline; }
.pv2-leia a[class*="-cta-btn"] > *:not(.pv2-leia__txt) { display: none !important; }
.pv2-relacionados { margin: 40px 0 8px; }
.pv2-relacionados__titulo { font-size: 20px; margin: 0 0 16px; padding-bottom: 8px; border-bottom: 2px solid var(--color-text); }
.pv2-relacionados .hv2-grid { grid-template-columns: 1fr 1fr; }
.pv2-leia [class*="-cta-area"] br { display: none; }

/* v1.9.1 (24/10/2026) - assinatura em uma linha; foto de destaque 16:9 e titulo mais compacto no celular */
.pv2-byline { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 0; margin: 12px auto 0; font-size: 14px; line-height: 1.5; color: var(--color-muted); text-align: center; }
.pv2-byline .pv2-byline__foto { display: block; margin-right: 8px; }
.pv2-byline .pv2-byline__foto img { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; display: block; }
.pv2-byline__autor { color: var(--color-text); }
.pv2-byline__autor a { color: var(--color-text); font-weight: 600; text-decoration: none; }
.pv2-byline__autor a:hover { color: var(--color-primary); }
.pv2-byline__sep { margin: 0 7px; opacity: .6; }
@media (max-width: 781px) {
  .pv2-byline { font-size: 13px; margin-top: 10px; }
  .pv2-byline__cargo, .pv2-byline__leitura { display: none; }
  body.post-v2 .page-hero { padding-top: 14px; padding-bottom: 14px; }
  body.post-v2 .page-hero__title { margin-bottom: 0; }
  body.post-v2 .entry-thumbnail--single { margin-bottom: 18px; }
  body.post-v2 .entry-thumbnail--single img { aspect-ratio: 16 / 9; object-fit: cover; }
}

/* v1.9.2 (24/10/2026) - botoes de navegacao em formato de botao e sumario recolhivel */
.pv2-leia { margin: 24px 0; padding: 0; border: 0; border-radius: 0; background: none; }
.pv2-leia .pv2-leia__titulo { margin: 0 0 10px; }
.pv2-leia [class*="-cta-area"] { display: flex !important; flex-direction: column !important; gap: 10px !important; }
.pv2-leia a[class*="-cta-btn"] { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px; box-sizing: border-box; width: 100% !important; min-height: 48px !important; padding: 12px 16px !important; border: 2px solid var(--color-text) !important; border-radius: 10px !important; background: var(--color-bg) !important; color: var(--color-text) !important; font-size: 16px !important; font-weight: 700 !important; line-height: 1.3 !important; text-decoration: none !important; transition: background .15s, color .15s; }
.pv2-leia a[class*="-cta-btn"]::before { content: none !important; }
.pv2-leia a[class*="-cta-btn"]::after { content: "→" !important; display: inline !important; color: var(--color-primary); font-size: 20px; font-weight: 700; flex: 0 0 auto; }
.pv2-leia a[class*="-cta-btn"]:hover { background: var(--color-text) !important; color: var(--color-bg) !important; text-decoration: none !important; }
.pv2-leia a[class*="-cta-btn"]:hover::after { color: var(--color-bg); }
.pv2-toc { margin: 8px 0 28px; border: 1px solid var(--color-border); border-radius: 10px; background: rgba(0,0,0,.02); }
.pv2-toc summary { cursor: pointer; list-style: none; padding: 14px 18px; font-weight: 700; display: flex; justify-content: space-between; align-items: center; }
.pv2-toc summary::-webkit-details-marker { display: none; }
.pv2-toc summary::after { content: "▾"; color: var(--color-muted); transition: transform .2s; }
.pv2-toc[open] summary::after { transform: rotate(180deg); }
.pv2-toc ol { margin: 0; padding: 0 18px 14px 38px; }
.pv2-toc li { margin: 6px 0; }
.pv2-toc a { color: var(--color-text); text-decoration: none; }
.pv2-toc a:hover { color: var(--color-primary); text-decoration: underline; }
.entry-content .pv2-toc a { color: var(--color-text) !important; text-decoration: none !important; }
.entry-content .pv2-toc a:hover { color: var(--color-primary) !important; text-decoration: underline !important; }

/* v1.9.3 (24/10/2026) - botoes com texto curto do painel, no maximo 2 linhas */
.pv2-leia .pv2-leia__txt { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* v1.9.4 (24/10/2026) - links do painel como "Relacionados" discretos */
body.post-v2 .pv2-relp { margin: 32px 0 0 !important; padding: 14px 0 !important; border: 0 !important; border-top: 1px solid var(--color-border) !important; border-bottom: 1px solid var(--color-border) !important; border-radius: 0 !important; background: none !important; }
body.post-v2 .pv2-relp .pv2-relp__titulo { margin: 0 0 8px !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: .06em; text-transform: uppercase; color: var(--color-muted) !important; }
body.post-v2 .pv2-relp ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
body.post-v2 .pv2-relp li { margin: 6px 0 !important; font-size: 15px; line-height: 1.4; }
body.post-v2 .pv2-relp a { color: var(--color-text) !important; font-weight: 500 !important; text-decoration: none !important; }
body.post-v2 .pv2-relp a:hover { color: var(--color-primary) !important; text-decoration: underline !important; }

/* v1.9.5 (24/10/2026) - secao Fontes discreta */
.pv2-fontes { margin: 32px 0 8px; padding-top: 14px; border-top: 1px solid var(--color-border); font-size: 14px; color: var(--color-muted); }
.entry-content .pv2-fontes .pv2-fontes__titulo { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--color-muted); margin: 0 0 8px; padding: 0; border: 0; line-height: 1.4; }
.entry-content .pv2-fontes .pv2-fontes__titulo::before, .entry-content .pv2-fontes .pv2-fontes__titulo::after { content: none; display: none; }
.entry-content .pv2-fontes ul { list-style: none; margin: 0; padding: 0; }
.entry-content .pv2-fontes li { margin: 4px 0; line-height: 1.45; font-size: 14px; }
.entry-content .pv2-fontes a { color: var(--color-muted); text-decoration: underline; text-underline-offset: 2px; }
.entry-content .pv2-fontes a:hover { color: var(--color-primary); }
.entry-content .pv2-fontes a { color: var(--color-muted) !important; }
.entry-content .pv2-fontes a:hover { color: var(--color-primary) !important; }

/* v1.9.6 (24/10/2026) - caixa do autor compacta */
.entry-content .pv2-autor { display: flex !important; gap: 14px !important; align-items: flex-start !important; margin: 28px 0 8px !important; padding: 14px 16px !important; border: 1px solid var(--color-border) !important; border-radius: 10px !important; background: none !important; }
.entry-content .pv2-autor .pv2-autor__foto { width: 52px !important; height: 52px !important; min-width: 52px; border-radius: 50% !important; object-fit: cover; margin: 0 !important; }
.entry-content .pv2-autor__txt { flex: 1; min-width: 0; }
.entry-content .pv2-autor p { margin: 0 !important; }
.entry-content .pv2-autor__nome { font-size: 15px; line-height: 1.4; }
.entry-content .pv2-autor__nome a { color: var(--color-text) !important; font-weight: 700; text-decoration: none !important; }
.entry-content .pv2-autor__cargo { color: var(--color-muted); font-size: 14px; }
.entry-content .pv2-autor__bio { margin-top: 2px !important; font-size: 14px; line-height: 1.5; color: var(--color-muted); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.entry-content .pv2-autor__mais { display: inline-block; margin-top: 4px; font-size: 14px; font-weight: 600; color: var(--color-primary) !important; text-decoration: none !important; }
.entry-content .pv2-autor__mais:hover { text-decoration: underline !important; }

/* v1.9.7 (24/10/2026) - caixa de redes sociais abaixo do autor */
.entry-content .pv2-redes { margin: 10px 0 8px; padding: 12px 16px; border: 1px solid var(--color-border); border-radius: 10px; }
.entry-content .pv2-redes .pv2-redes__titulo { margin: 0 0 10px; font-size: 14px; font-weight: 600; color: var(--color-text); }
.entry-content .pv2-redes ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 22px; }
.entry-content .pv2-redes li { margin: 0; padding: 0; }
.entry-content .pv2-redes__item { display: flex; align-items: center; gap: 10px; text-decoration: none !important; color: var(--color-text) !important; }
.entry-content .pv2-redes__item img { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; margin: 0; border: 2px solid var(--pv2-rede, var(--color-border)); padding: 1px; background: #fff; }
.entry-content .pv2-redes__txt { display: flex; flex-direction: column; line-height: 1.25; }
.entry-content .pv2-redes__rede { font-size: 14px; font-weight: 700; color: var(--pv2-rede, var(--color-text)); }
.entry-content .pv2-redes__user { font-size: 13px; color: var(--color-muted); }
.entry-content .pv2-redes__item:hover .pv2-redes__user { text-decoration: underline; }
.pv2-redes__item--instagram { --pv2-rede: #d6249f; }
.pv2-redes__item--facebook { --pv2-rede: #1877f2; }
.pv2-redes__item--x { --pv2-rede: #111111; }

/* v1.9.8 (24/10/2026) - redes sociais sem @, link no nome */
.entry-content .pv2-redes__item:hover .pv2-redes__rede { text-decoration: underline; }

/* v1.9.9 (24/10/2026) - caixa de redes sociais centralizada */
.entry-content .pv2-redes { text-align: center; }
.entry-content .pv2-redes ul { justify-content: center; }

/* v1.10.0 (24/10/2026) - redes sociais so com icones discretos (cinza; cor ao passar o mouse) */
.entry-content .pv2-redes ul { gap: 6px; }
.entry-content .pv2-redes__icone { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; text-decoration: none !important; }
.entry-content .pv2-redes__icone img { width: 30px; height: 30px; display: block; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; filter: grayscale(100%); opacity: .55; transition: filter .2s, opacity .2s; }
.entry-content .pv2-redes__icone:hover img, .entry-content .pv2-redes__icone:focus-visible img { filter: none; opacity: 1; }

/* v1.10.1 (24/10/2026) - icones das redes sempre coloridos; leve aumento ao passar o mouse */
.entry-content .pv2-redes__icone img { filter: none; opacity: 1; transition: transform .2s; }
.entry-content .pv2-redes__icone:hover img, .entry-content .pv2-redes__icone:focus-visible img { transform: scale(1.1); }

/* v1.11.0 (24/10/2026) - anuncios nos artigos: posicao por paragrafo ou abaixo de subtitulo (H2) */

/* v1.12.0 (24/10/2026) - opcao de mostrar/ocultar a imagem de destaque no topo dos artigos (Personalizar > Layout dos artigos) */
/* v1.12.1 (24/10/2026) - removida a opcao antiga de imagem destacada; fica so a de Layout dos artigos */


/* v1.12.2 (24/10/2026) - botoes "Leia tambem" com cor (azul marinho, dourado no hover) */
.pv2-leia a[class*="-cta-btn"] { background: var(--color-primary) !important; color: #fff !important; border-color: var(--color-primary) !important; box-shadow: 0 2px 6px rgba(20,33,61,.18) !important; }
.pv2-leia a[class*="-cta-btn"] * { color: inherit !important; }
.pv2-leia a[class*="-cta-btn"]::after { color: var(--color-accent) !important; }
.pv2-leia a[class*="-cta-btn"]:hover { background: var(--color-accent) !important; border-color: var(--color-accent) !important; color: var(--color-primary) !important; }
.pv2-leia a[class*="-cta-btn"]:hover::after { color: var(--color-primary) !important; }


/* v1.13.0 (26/10/2026) - desempenho: reserva o espaco do anuncio da pagina inicial no celular (evita a pagina "pular" quando o anuncio carrega) */
@media (max-width: 781px) {
  .home-v2 .hv2-anuncio { min-height: 300px; }
}

/* v1.14.0 (28/10/2026) - desempenho: espaco reservado do tamanho real do anuncio nos artigos (o texto nao "pula" quando o anuncio carrega / CLS) */
.entry-content .admonetiza-anuncio { min-height: 300px; }
@media (min-width: 783px) { .entry-content .admonetiza-anuncio { min-height: 280px; } }
/* se o AdSense nao tiver anuncio para o espaco, ele fecha (sem buraco em branco) */
.hv2-anuncio:has(ins.adsbygoogle[data-ad-status="unfilled"]) { min-height: 0; padding: 0; margin: 0; border: 0; }
.hv2-anuncio:has(ins.adsbygoogle[data-ad-status="unfilled"]) .hv2-anuncio__rotulo { display: none; }
