/* Texto dos documentos legais (Termos de Uso e Política de Privacidade).
   As páginas são geradas por `node legal/build-pages.js --site` a partir de legal/*.md (português, na raiz) e de
   legal/<idioma>/*.md (nas pastas site/<idioma>/); este arquivo só estiliza o resultado, com as cores e a fonte de styles.css. */

:root {
  --mark: #fff3a3;
  --note: #fff8e1;
  --note-line: #e8c766;
}

@media (prefers-color-scheme: dark) {
  :root {
    --mark: #6b5b00;
    --note: #2b2514;
    --note-line: #7a6420;
  }
}

.legal { padding: clamp(36px, 6vw, 72px) 0 clamp(72px, 10vw, 120px); }
.doc { width: min(100% - 40px, 46rem); margin-inline: auto; }

.voltar { margin: 0 0 28px; font-size: 0.9375rem; font-weight: 500; }
.voltar a { color: var(--text-2); transition: color .15s ease; }
.voltar a:hover { color: var(--accent-text); }

/* seletor de idioma, logo abaixo do "voltar": o mesmo documento nos outros idiomas; o atual fica em destaque */
.idiomas { display: flex; align-items: flex-start; gap: 8px; margin: -14px 0 28px; font-size: 0.875rem; }
.idiomas > .icon { margin-top: 5px; color: var(--muted); }
.doc .idiomas ul { flex: 1; min-width: 0; display: flex; flex-wrap: wrap; gap: 2px; list-style: none; margin: 0; padding: 0; }
.doc .idiomas li { margin: 0; }
.doc .idiomas a { display: inline-block; padding: 3px 10px; border-radius: 999px; color: var(--text-2); font-weight: 500; line-height: 1.5; transition: color .15s ease, background-color .15s ease; }
.doc .idiomas a:hover { color: var(--text); background: var(--surface-2); }
.doc .idiomas a[aria-current="page"] { color: var(--accent-text); background: var(--accent-soft); font-weight: 600; }

/* páginas em outros idiomas: o menu traz só os dois documentos (é o que o botão de menu abre no celular); no computador
   largo ele some, porque o botão do outro documento já aparece no cabeçalho */
.nav--docs a[aria-current="page"] { color: var(--text); background: var(--surface-2); }
@media (min-width: 1121px) {
  .nav--docs { display: none; }
}

.doc h1 { font-size: clamp(2.1rem, 1.4rem + 3vw, 3.25rem); letter-spacing: -0.04em; line-height: 1.04; margin: 0 0 0.35em; }
.doc h2 { font-size: clamp(1.4rem, 1.15rem + 1vw, 1.75rem); line-height: 1.15; letter-spacing: -0.03em; margin: 2.4em 0 0.6em; scroll-margin-top: calc(var(--header-h) + 16px); }
.doc h3 { font-size: 1.125rem; margin: 1.8em 0 0.5em; }

.doc p, .doc li { color: var(--text-2); text-wrap: pretty; }
.doc p { margin: 0.9em 0; }
.doc strong { color: var(--text); font-weight: 600; }
.doc .meta { color: var(--muted); font-size: 0.9688rem; }

.doc ul { list-style: disc; padding-left: 1.3em; margin: 0.9em 0; }
.doc li { margin: 0.4em 0; }
.doc li::marker { color: var(--accent-text); }

.doc a { color: var(--accent-text); font-weight: 500; text-underline-offset: 0.18em; }
.doc a:hover { text-decoration-thickness: 2px; }
.doc hr { border: 0; border-top: 1px solid var(--border); margin: 2.4em 0; }
.doc code { background: var(--surface-2); color: var(--text); padding: 0.1em 0.4em; border-radius: 6px; font: 0.9em ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace; }

/* campos ainda por preencher */
mark.pendente { background: var(--mark); color: var(--text); padding: 0 0.25em; border-radius: 4px; }
.aviso-rascunho { background: var(--note); border: 1px solid var(--note-line); border-radius: 14px; padding: 12px 18px; margin: 0 0 1.6em; font-size: 0.9688rem; color: var(--text); }
.aviso-rascunho code { background: rgb(0 0 0 / 0.08); }

/* quadro de resumo */
.resumo { background: var(--accent-soft); border-left: 4px solid var(--accent); border-radius: 4px 18px 18px 4px; padding: 6px 22px; margin: 1.6em 0; }
.resumo p, .resumo ul { margin: 0.7em 0; }
.resumo p, .resumo li { color: var(--text); }
.resumo .tabela { margin: 0.8em 0; background: var(--surface); }
.doc .resumo table { min-width: 0; }

/* tabelas */
.tabela { overflow-x: auto; margin: 1.2em 0; border: 1px solid var(--border); border-radius: 16px; }
.tabela:focus-visible { outline-offset: 2px; }
.doc table { border-collapse: collapse; width: 100%; min-width: 30rem; font-size: 0.9688rem; }
.doc th, .doc td { text-align: left; vertical-align: top; padding: 10px 14px; border-bottom: 1px solid var(--border); }
.doc th { background: var(--surface-2); color: var(--text); font-weight: 600; }
.doc td { color: var(--text-2); }
.doc tr:last-child td { border-bottom: 0; }

/* índice */
.indice { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; padding: 6px 20px; margin: 1.6em 0; }
.indice summary { cursor: pointer; font-weight: 600; padding: 10px 0; }
.indice ul { list-style: none; padding: 0; margin: 0.2em 0 0.8em; }
.indice li { margin: 0.25em 0; }
.indice a { font-weight: 400; }

@media print {
  .header, .footer, .skip, .voltar, .idiomas, .indice, .aviso-rascunho { display: none; }
  body { background: #fff; color: #000; }
  .doc p, .doc li, .doc td, .doc strong { color: #000; }
  .doc a { color: #000; }
  .tabela { overflow: visible; border: 0; }
  .doc table { min-width: 0; }
  .resumo { background: #f4f4f4; border-left-color: #000; }
}
