/**
 * Padrão visual do CORPO de texto longo: notícias e artigos (site público) e o
 * editor de notícias do painel (pra quem escreve já ver o resultado real).
 *
 * Uso: class="corpo-texto" no container do texto. Qualquer ajuste de
 * tipografia do corpo é feito SÓ aqui, nunca de novo em cada página.
 *
 * Cores e fontes vêm de css/variaveis.css; os valores depois da vírgula são
 * só pro painel, que não carrega esse arquivo.
 *
 * O HTML vem do Quill 2 (quill.root.innerHTML), então:
 *  - lista com marcador sai como <ol><li data-list="bullet">, não <ul>;
 *  - cada <li> traz um <span class="ql-ui"> vazio, que só serve no editor;
 *  - alinhamento e recuo vêm como classes ql-align-* e ql-indent-*.
 * As regras marcadas com :not(.ql-editor) valem só na página pública — no
 * editor o próprio Quill já desenha marcador e número.
 */

.corpo-texto{
  font-family:var(--sans, 'Plus Jakarta Sans', system-ui, sans-serif);
  font-size:16px;line-height:1.85;color:var(--ink, #0b1f36);
  overflow-wrap:break-word;
}

/* ── Parágrafos ── */
.corpo-texto p{margin:0 0 22px}
.corpo-texto > :last-child{margin-bottom:0}

/* Parágrafo vazio (Enter duas vezes no editor) não abre buraco na página. */
.corpo-texto:not(.ql-editor) p:has(> br:only-child){display:none}

/* Capitular no primeiro parágrafo de texto. */
.corpo-texto > p:first-child::first-letter{
  font-family:var(--serif, 'Playfair Display', Georgia, serif);
  float:left;font-size:58px;line-height:.9;padding:6px 10px 0 0;
  color:var(--navy-900, #061a30);
}

/* ── Intertítulos ── */
.corpo-texto h2,.corpo-texto h3{
  font-family:var(--serif, 'Playfair Display', Georgia, serif);
  font-weight:600;color:var(--navy-900, #061a30);line-height:1.3;
}
.corpo-texto h2{font-size:26px;margin:40px 0 14px}
.corpo-texto h3{font-size:20px;margin:32px 0 12px}
.corpo-texto > h2:first-child,.corpo-texto > h3:first-child{margin-top:0}

/* ── Destaques no texto ── */
.corpo-texto strong{font-weight:700;color:var(--navy-900, #061a30)}
.corpo-texto a{color:var(--navy-700, #0d3a60);text-decoration:underline;text-underline-offset:3px}
.corpo-texto a:hover{color:var(--navy-900, #061a30)}

/* ── Listas ── */
.corpo-texto ul,.corpo-texto ol{margin:0 0 22px}
.corpo-texto li{margin-bottom:9px}
.corpo-texto:not(.ql-editor) ul,.corpo-texto:not(.ql-editor) ol{padding-left:24px}
.corpo-texto:not(.ql-editor) li[data-list="bullet"]{list-style-type:disc}
.corpo-texto:not(.ql-editor) li[data-list="ordered"]{list-style-type:decimal}
.corpo-texto:not(.ql-editor) .ql-ui{display:none}
.corpo-texto li::marker{color:var(--gold-600, #c99a33);font-weight:700}

/* ── Imagens ── */
.corpo-texto img{display:block;width:100%;height:auto;border-radius:8px;margin:28px 0}
.corpo-texto p > img{margin:6px 0}

/* ── Legenda de foto (botão "Legenda da foto" no editor) ──
   Linha logo abaixo da foto: menor, negrito e colada nela — a margem negativa
   anula quase todo o espaço que o parágrafo da foto deixa embaixo. */
.corpo-texto .rc-legenda-foto{
  font-size:13px;font-weight:700;line-height:1.45;color:var(--muted, #5c6b7c);
  margin-top:-18px;margin-bottom:26px;
}
.corpo-texto > .rc-legenda-foto:first-child{margin-top:0}

/* ── Citação ── */
.corpo-texto blockquote{
  background:#fff8ec;border-left:3px solid var(--gold, #e8b64c);border-radius:0 8px 8px 0;
  padding:26px 30px 24px 58px;margin:30px 0;position:relative;
  font-family:var(--serif, 'Playfair Display', Georgia, serif);font-style:italic;
  font-size:18px;line-height:1.6;color:var(--navy-800, #0a2744);
}
.corpo-texto blockquote::before{
  content:'"';position:absolute;left:20px;top:6px;font-size:56px;
  color:var(--gold, #e8b64c);line-height:1;font-style:normal;
}
.corpo-texto blockquote p{margin-bottom:0}

/* ── Alinhamento e recuo vindos do editor ── */
.corpo-texto .ql-align-center{text-align:center}
.corpo-texto .ql-align-right{text-align:right}
.corpo-texto .ql-align-justify{text-align:justify}
.corpo-texto:not(.ql-editor) .ql-indent-1{padding-left:2em}
.corpo-texto:not(.ql-editor) .ql-indent-2{padding-left:4em}
.corpo-texto:not(.ql-editor) .ql-indent-3{padding-left:6em}
.corpo-texto:not(.ql-editor) .ql-indent-4{padding-left:8em}

/* ── Celular ── */
@media (max-width:600px){
  .corpo-texto{font-size:15px;line-height:1.8}
  .corpo-texto h2{font-size:22px;margin-top:32px}
  .corpo-texto h3{font-size:18px;margin-top:26px}
  .corpo-texto > p:first-child::first-letter{font-size:50px}
  .corpo-texto .rc-legenda-foto{font-size:12.5px}
  .corpo-texto blockquote{padding:22px 20px 20px 46px;font-size:16.5px}
  .corpo-texto blockquote::before{left:14px;font-size:46px}
}
