/* ============================================================================
   Páginas legais (/privacidade, /termos-de-uso) — reusam os blocos do tema
   (hero-post + wysiwyg), como as matérias do /na-midia. Só complementos:
   sumário na sidebar, tabelas de dados, callouts e âncoras.
   Namespace: pllg-  ·  Superfície: cream → teal + gold (DNA do projeto).
   ========================================================================== */

/* mesmo reset que o /na-midia precisa (o tema é content-box fora de .wp-site-blocks) */
html, body { margin: 0 }

/* --- hero: chip da página legal, teal no cream (não lime — regra de superfície) */
.c-hero-post .meta_type { --background-color: rgba(60, 88, 91, .13); --color: #3c585b }

/* --- back-button = BOTÃO DO TEMA (.u-btn--4 .-reverse), nunca custom.
   Medidas idênticas às do /na-midia (na-midia.css): 42px de altura, font-size:0
   colapsa os gaps de texto, gap 7px, row-reverse e align stretch → o .btn_icon
   (blob) estica pra 42px e mostra a forma inteira. Label mono 14/14. */
.c-hero-post .sidebar_back-btn, .c-hero-post .sidebar_back-btn * { box-sizing: border-box }
.c-hero-post .sidebar_back-btn { height: 42px; font-size: 0; gap: 7px; align-items: stretch; flex-direction: row-reverse }
.c-hero-post .sidebar_back-btn .btn_label { font-size: 14px; line-height: 14px }

/* --- sidebar: sumário navegável (o índice é o que torna doc longo usável) ----- */
.pllg-toc { display: flex; flex-direction: column; gap: 10px }
.pllg-toc_label {
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: .72rem; letter-spacing: .05em; text-transform: uppercase;
  color: rgba(34, 47, 48, .5);
}
.pllg-toc_list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px }
.pllg-toc_list a {
  font-size: .9rem; line-height: 1.35; color: rgba(34, 47, 48, .68);
  text-decoration: none; text-underline-offset: 3px;
  border-left: 1px solid rgba(34, 47, 48, .16); padding-left: 12px;
  transition: color .2s, border-color .2s;
}
.pllg-toc_list a:hover { color: #3c585b; border-left-color: #3c585b; text-decoration: underline }

/* --- corpo -------------------------------------------------------------------- */
/* âncora não some atrás de nada: respiro ao pular pelo sumário */
.c-wysiwyg .block_content h2[id] { scroll-margin-top: 96px }

.c-wysiwyg .block_content .pllg-lead {
  font-size: max(1.2rem, min(calc(1.2rem + .006 * (100vw - 27.5rem)), 1.5rem));
  line-height: 1.4; font-weight: 500; color: rgba(34, 47, 48, .92);
  margin-bottom: max(22px, min(calc(22px + .02 * (100vw - 440px)), 38px));
}

/* linha de vigência/versão, mono discreto */
.pllg-stamp {
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: .78rem; letter-spacing: .02em; color: rgba(34, 47, 48, .5);
}

/* --- callout: o que o leitor não pode deixar de ler --------------------------- */
.c-wysiwyg .block_content .pllg-callout {
  margin: 28px 0; padding: 20px 22px; border-radius: 12px;
  background: rgba(60, 88, 91, .06); border: 1px solid rgba(60, 88, 91, .2);
  border-left: 3px solid #3c585b;
}
.c-wysiwyg .block_content .pllg-callout > :first-child { margin-top: 0 }
.c-wysiwyg .block_content .pllg-callout > :last-child { margin-bottom: 0 }
.c-wysiwyg .block_content .pllg-callout_title {
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: .72rem; letter-spacing: .05em; text-transform: uppercase;
  color: #3c585b; margin-bottom: 8px;
}
/* variante gold: aviso que o usuário precisa MESMO ver (18+, sem garantia) */
.c-wysiwyg .block_content .pllg-callout.-gold {
  background: rgba(201, 168, 76, .07); border-color: rgba(201, 168, 76, .3); border-left-color: #c9a84c;
}
.c-wysiwyg .block_content .pllg-callout.-gold .pllg-callout_title { color: #9c7f31 }

/* --- tabelas de dados (finalidade × base legal × retenção) -------------------- */
.c-wysiwyg .block_content figure.pllg-table { margin-left: 0; margin-right: 0; overflow-x: auto }
.c-wysiwyg .block_content figure.pllg-table table {
  width: 100%; min-width: 560px; background: #fff; color: #222f30;
  border: 1px solid rgba(34, 47, 48, .14); border-radius: 14px;
  border-collapse: separate; border-spacing: 0; overflow: hidden; font-family: inherit;
}
/* CDC art. 54, §3º: contrato de adesão exige corpo mínimo 12 (=12pt=16px=1rem).
   Não é preferência tipográfica — é norma. Não reduzir por estética. */
.c-wysiwyg .block_content figure.pllg-table th,
.c-wysiwyg .block_content figure.pllg-table td {
  padding: 14px 16px; text-align: left; vertical-align: top; border: 0;
  font-size: 1rem; line-height: 1.45;
}
.c-wysiwyg .block_content figure.pllg-table thead th {
  font-weight: 400; font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: .7rem; letter-spacing: .05em; text-transform: uppercase;
  color: rgba(34, 47, 48, .5); background: rgba(34, 47, 48, .03);
  border-bottom: 1px solid rgba(34, 47, 48, .12);
}
.c-wysiwyg .block_content figure.pllg-table tbody tr:not(:last-child) td {
  border-bottom: 1px solid rgba(34, 47, 48, .09);
}
.c-wysiwyg .block_content figure.pllg-table tbody td:first-child { font-weight: 500 }

/* --- marcador de pendência: visível na revisão, impossível de esquecer -------- */
.pllg-fill {
  background: rgba(201, 168, 76, .18); color: #6b5416; font-weight: 600;
  padding: 1px 6px; border-radius: 4px; white-space: nowrap;
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: .85em;
}

/* --- mobile: mesma correção do /na-midia (containers do tema são content-box) - */
@media (max-width: 1280px) {
  .c-hero-post .u-container,
  .c-wysiwyg .u-container { box-sizing: border-box }
  .c-hero-post .block_sidebar { display: block }
  .c-wysiwyg .block_content figure.pllg-table table { min-width: 480px }
}
