/*
	Theme Name: Hello Elementor
	Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
	Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
	Author: Elementor Team
	Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
	Version: 3.4.4
	Stable tag: 3.4.4
	Requires at least: 6.0
	Tested up to: 6.8
	Requires PHP: 7.4
	License: GNU General Public License v3 or later.
	License URI: https://www.gnu.org/licenses/gpl-3.0.html
	Text Domain: hello-elementor
	Tags: accessibility-ready, flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready,
*/

/* ==========================================================
   LAYOUT PADRÃO (idêntico entre Dissertação/Tese e Papers/Resumos/Atas)
   ========================================================== */

.caixa-artigo {
  display: flex;
  justify-content: center;
  padding: 50px 20px;          /* respiro externo do conjunto */
  background-color: #f5f5f5;
}

/* Coluna lateral (mesmo gap para todos os tipos) */
.menu-lateral {
  width: 240px;
  margin-right: 40px;          /* gap entre colunas */
  font-size: 15px;
  line-height: 1.3;
  position: sticky;
  top: 120px;
  align-self: flex-start;
  /* Alinha o topo visual ao “card” do conteúdo */
  padding-top: 22px;
}

/* Navegação do sumário */
.menu-lateral ul {
  list-style: none;
  padding: 0;
  margin: 0;
  border-left: 3px solid #ccc;
  padding-left: 15px;
}
.menu-lateral ul li { margin-bottom: 5px; }
.menu-lateral ul li.nivel-h2 a { font-weight: bold; color: #444; }
.menu-lateral ul li.nivel-h3 { margin-left: 10px; }
.menu-lateral ul li.nivel-h3 a { color: #666; font-size: 14px; }
.menu-lateral ul li a { text-decoration: none; }
.menu-lateral ul li a:hover { text-decoration: underline; color: #0073aa; }

/* “Card” do conteúdo — medidas unificadas (Dissertação = padrão) */
.conteudo-artigo {
  background: #fff;
  /* padrão: top 22 / lados 40 / bottom 25 */
  padding: 22px 40px 25px 40px;
  box-shadow: 0 0 15px rgba(0,0,0,0.08);
  flex: 1;
  max-width: 800px;
  box-sizing: border-box;
}

/* ==========================================================
   NORMALIZAÇÃO GUTENBERG — garante medidas iguais com/sem Group
   (neutraliza padding/margem do PRIMEIRO filho do card)
   ========================================================== */

.conteudo-artigo > *:first-child {
  margin-top: 0 !important;
}

/* 1º filho sendo Group/Columns/qualquer bloco com padding inline */
.conteudo-artigo > .wp-block-group:first-child,
.conteudo-artigo > .wp-block-columns:first-child,
.conteudo-artigo > .wp-block:first-child {
  padding: 0 !important;
  margin-top: 0 !important;
}

/* container interno do Group */
.conteudo-artigo > .wp-block-group:first-child > .wp-block-group__inner-container {
  padding: 0 !important;
  margin: 0 !important;
}

/* remove padding inline do 1º filho (quando Gutenberg injeta style="padding...") */
.conteudo-artigo > .wp-block-group:first-child[style*="padding"],
.conteudo-artigo > .wp-block:first-child[style*="padding"] {
  padding: 0 !important;
}

/* Aviso de direitos — apenas espaçamento consistente dentro do card */
.conteudo-artigo #aviso-direitos-topo,
.conteudo-artigo .aviso-direitos--movido {
  margin: 0 0 16px !important;
}

/* Botão PDF (mantido) */
.botao-wrapper {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 20px;
}
.botao-pdf {
  display: inline-block;
  background-color: #467138;
  color: #fff !important;
  font-weight: bold;
  font-size: 12px;
  padding: 10px 16px;
  border-radius: 6px;
  text-decoration: none;
}
.botao-pdf:hover { background-color: #7b8dc4; }

/* ===========================
   BREAKPOINTS
   =========================== */
@media (max-width: 1024px) {
  .caixa-artigo {
    flex-direction: column;
    padding: 30px 15px;
  }

  .menu-lateral {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
    position: relative;
    top: 0;
    padding-top: 28px;
  }

  .conteudo-artigo {
    max-width: 100%;
    padding: 28px;
  }

  .botao-wrapper { justify-content: center; }
}

@media (max-width: 600px) {
  .conteudo-artigo {
    padding: 16px 32px;
    font-size: 16px;
  }

  .menu-lateral { padding-top: 16px; }

  .menu-lateral ul li.nivel-h3 { margin-left: 5px; }
  .menu-lateral ul li.nivel-h2 a,
  .menu-lateral ul li.nivel-h3 a { font-size: 15px; }
}

/* ===========================
   TIPOGRAFIA
   =========================== */
.conteudo-artigo h1 {
  font-family: 'Roboto', sans-serif;
  font-weight: 700;
  font-size: 30px;
  color: #1a1a1a;
  margin-bottom: 20px;
}
.conteudo-artigo h2 {
  font-family: 'Roboto', sans-serif;
  font-weight: 700;
  font-size: 23px;
  color: #7b8dc4;              /* cor de Dissertação; Papers trocam via regra específica */
  margin-top: 40px;
  margin-bottom: 15px;
}
.conteudo-artigo h3 {
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  font-size: 18px;
  color: #467138;
  margin-top: 30px;
  margin-bottom: 10px;
}
.conteudo-artigo h4 {
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  font-size: 15px;
  color: #383838;
  margin-top: 30px;
  margin-bottom: 10px;
}
.conteudo-artigo p {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #333;
  margin-bottom: 20px;
}

/* Citação */
.conteudo-artigo blockquote {
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  font-size: 13px;
  color: #9b9b9b;
  background: #f9f9f9;
  border-left: 4px solid #7b8dc4;
  margin: 25px 0;
  padding: 15px 75px;
}

/* Notas de rodapé */
.conteudo-artigo .nota-rodape {
  font-size: 14px;
  color: #777;
  border-top: 1px solid #ccc;
  margin-top: 40px;
  padding-top: 20px;
  font-family: 'Roboto', sans-serif;
}

/* Listas */
.conteudo-artigo ul,
.conteudo-artigo ol {
  font-family: 'Roboto', sans-serif;
  font-size: 15px;
  color: #333;
  margin-left: 30px;
  padding-bottom: 20px;
}

/* Links */
.conteudo-artigo a { color: #0056b3; text-decoration: underline; }
.conteudo-artigo a:hover { color: #003366; }

/* Imagens */
.conteudo-artigo img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 20px auto;
  border-radius: 6px;
}

/* Legendas de imagens */
.conteudo-artigo figure { margin: 20px 0; text-align: center; }
.conteudo-artigo figcaption {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 600;
  font-size: 14px;
  color: #666;
  font-style: normal;
  padding-bottom: 20px;
}

/* Título no main (mantido) */
main .entry-title {
  color: #7b8dc4 !important;
  font-size: 36px !important;
  font-weight: 700 !important;
  font-family: 'Roboto', sans-serif !important;
  line-height: 1.2 !important;
  margin-bottom: 20px !important;
  text-align: left;
}

/* Blockquote no main (mantido) */
main.conteudo-artigo blockquote,
main.conteudo-artigo blockquote p {
  font-family: 'Roboto', sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #7b8dc4 !important;
}




/* ===== Normalize Gutenberg wrapper (padroniza Papers/Resumos/Atas ao modelo de Dissertação) ===== */

/* Se o conteúdo vier envolto por um bloco Grupo (ou container auto) logo dentro do .conteudo-artigo,
   zere o padding/margem desse wrapper para que valham apenas as medidas do “card”. */
.single-artigos .conteudo-artigo > .wp-block-group,
.single-artigos .conteudo-artigo > .wp-block-group.alignwide,
.single-artigos .conteudo-artigo > .wp-block-group.alignfull,
.single-artigos .conteudo-artigo > [class*="wp-container-"]{
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Alguns temas inserem conteúdo dentro de .wp-block-group__inner-container — zere também */
.single-artigos .conteudo-artigo > .wp-block-group > .wp-block-group__inner-container{
  padding: 0 !important;
  margin: 0 !important;
}

/* Aviso de direitos: garante o respiro padronizado dentro do card */
.single-artigos .conteudo-artigo #aviso-direitos-topo,
.single-artigos .conteudo-artigo .aviso-direitos--movido{
  margin-top: 0 !important;      /* o card já tem padding-top */
  margin-bottom: 16px !important; /* distância do título */
}






/* === Normalização forte dos wrappers Gutenberg (primeiro nível) === */
/* vale para todo single do CPT 'artigos' (Dissertações, Papers, Resumos, Atas etc.) */
.single-artigos .conteudo-artigo > .wp-block-group,
.single-artigos .conteudo-artigo > .is-layout-constrained,
.single-artigos .conteudo-artigo > .is-layout-flow,
.single-artigos .conteudo-artigo > .wp-block-post-content,
.single-artigos .conteudo-artigo > .entry-content {
  padding: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* garante que o topo/rodapé do conteúdo encostem no padding do cartão */
.single-artigos .conteudo-artigo > .wp-block-group > :first-child,
.single-artigos .conteudo-artigo > .is-layout-constrained > :first-child,
.single-artigos .conteudo-artigo > .is-layout-flow > :first-child,
.single-artigos .conteudo-artigo > .wp-block-post-content > :first-child,
.single-artigos .conteudo-artigo > .entry-content > :first-child {
  margin-top: 0 !important;
}
.single-artigos .conteudo-artigo > .wp-block-group > :last-child,
.single-artigos .conteudo-artigo > .is-layout-constrained > :last-child,
.single-artigos .conteudo-artigo > .is-layout-flow > :last-child,
.single-artigos .conteudo-artigo > .wp-block-post-content > :last-child,
.single-artigos .conteudo-artigo > .entry-content > :last-child {
  margin-bottom: 0 !important;
}

/* mantém o mesmo respiro do aviso de direitos e alinha com a lateral */
.single-artigos #aviso-direitos-topo,
.single-artigos .aviso-direitos--movido {
  margin: 0 0 16px !important;
  padding: 12px 16px !important;
}
.single-artigos .menu-lateral { padding-top: 22px !important; } /* mesmo topo do cartão */

