/*
  Estilo do HTML gerado dentro do corpo dos posts — o que o WordPress e o editor clássico
  inseriram nos 83 posts migrados. Lista fechada, levantada varrendo o HTML real já
  importado (comando `scan-html` do importador), não adivinhada: sem isto os posts ficam
  quebrados por dentro mesmo com o layout da página correto.

  Classes confirmadas no conteúdo real: size-full, size-medium, wp-caption, aligncenter,
  alignnone, has-large-font-size, has-medium-font-size, wp-embed, wp-image-N (decorativa).
  Tags confirmadas: span, b, li, p, strong, h2, h3, a, ul, ol, td, tr, table, tbody, em, i,
  br, blockquote, img, figure, figcaption, iframe, u.
*/

.post-content,
.page-content {
  font-family: var(--font-light);
  font-size: var(--text-body);
  line-height: var(--leading-body);
  color: var(--color-text);
}

.post-content > *:first-child,
.page-content > *:first-child {
  margin-top: 0;
}

.post-content p {
  margin: 0 0 var(--space-md);
}

/* 22px até 1024px, 34px a partir daí — mesmo padrão de degrau único do resto do site. */
.post-content h2 {
  font-family: var(--font-semibold);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.03em;
  color: var(--color-heading);
  line-height: 1.3;
  margin: 0 0 20px;
}

@media (min-width: 1024px) {
  .post-content h2 {
    font-size: 34px;
  }
}

/* 20px até 1024px, 28px a partir daí — mesmo padrão do H2 do corpo. */
.post-content h3 {
  font-family: var(--font-semibold);
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -0.03em;
  color: var(--color-heading);
  line-height: 1.3;
  margin: 0 0 20px;
}

@media (min-width: 1024px) {
  .post-content h3 {
    font-size: 28px;
  }
}

.post-content h4 {
  font-family: var(--font-semibold);
  font-size: var(--text-h4);
  color: var(--color-heading);
  margin: var(--space-md) 0 var(--space-xs);
}

.post-content strong,
.post-content b {
  font-family: var(--font-semibold);
  font-weight: 600;
}

.post-content em,
.post-content i {
  font-style: italic;
}

.post-content a {
  color: var(--color-heading);
  text-decoration: none;
}

.post-content ul,
.post-content ol {
  margin: 0 0 var(--space-sm);
  padding-left: 1.25em;
}

.post-content li {
  margin-bottom: 0;
}

/* Citação centralizada sem caixa — o original não tem borda nem fundo, é um "pull quote"
   com indentação proporcional e cor mais clara que o corpo. */
.post-content blockquote {
  margin: var(--space-md) 0;
  padding: 5% 10%;
  font-family: var(--font-light);
  font-style: normal;
  color: var(--color-muted);
}

/* Tabelas de dados (comuns nos posts de análise de dados do Enem). */
.post-content table {
  width: 100%;
  border-collapse: collapse;
  margin: var(--space-md) 0;
  font-size: inherit;
}

.post-content th,
.post-content td {
  border: 1px solid var(--color-border);
  padding: 8px 12px;
  text-align: left;
}

.post-content th {
  font-family: var(--font-semibold);
  background: var(--color-bg-alt);
}

/* ---------- Imagens do WordPress ---------- */
.post-content img {
  border-radius: var(--radius);
}

.post-content .size-full,
.post-content .size-medium,
.post-content .size-large {
  height: auto;
}

.post-content .aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.post-content .alignleft {
  float: left;
  margin: 4px var(--space-md) var(--space-sm) 0;
}

.post-content .alignright {
  float: right;
  margin: 4px 0 var(--space-sm) var(--space-md);
}

.post-content .alignnone {
  margin: var(--space-sm) 0;
}

/* [caption] convertido em <figure class="wp-caption"> pelo importador. */
.post-content .wp-caption {
  margin: var(--space-md) 0;
  text-align: center;
}

.post-content .wp-caption img {
  margin: 0 auto;
}

.post-content .wp-caption figcaption {
  margin-top: 8px;
  font-family: var(--font-regular);
  font-size: var(--text-small);
  color: var(--color-muted);
}

/* [embed] convertido em iframe pelo importador — wrapper responsivo 16:9. */
.post-content .wp-embed {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: var(--space-md) 0;
}

.post-content .wp-embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: var(--radius);
}

/* Tamanhos de fonte do editor de blocos (Gutenberg), usados em alguns posts. */
.post-content .has-medium-font-size {
  font-size: 22px;
}

.post-content .has-large-font-size {
  font-size: 26px;
}
