/* Página pública estática da política de privacidade (/privacidade). Fica fora do bundle Angular de propósito: abre sem
   JavaScript (revisores da Meta, buscadores) e a CSP do gateway só aceita estilo e fonte da própria origem. Cores e fontes
   são as de src/styles.css; copiadas aqui porque esta página não carrega o CSS do painel. */
@font-face { font-family: 'Sora'; font-style: normal; font-weight: 600 800; font-display: swap; src: url('/fonts/sora-latin.woff2') format('woff2'); }
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 400 800; font-display: swap; src: url('/fonts/plus-jakarta-sans-latin.woff2') format('woff2'); }
:root {
  --bg: #010d1e; --surface: #0c2748; --text: #eaf5fa; --soft: #a6bfdb; --accent: #22daba; --divider: rgba(166, 191, 219, 0.16);
  --heading: 'Sora', system-ui, sans-serif; --body: 'Plus Jakarta Sans', system-ui, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 24px; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; background: var(--bg); color: var(--text); font: 400 16px/1.7 var(--body); }
a { color: var(--accent); text-underline-offset: 3px; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 4px; }
.wrap { width: min(820px, 100% - 32px); margin-inline: auto; }
header.top { border-bottom: 1px solid var(--divider); }
header.top .wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 0; }
.logo { display: inline-flex; align-items: center; gap: 9px; /* vão ~28% do símbolo, como no painel */ font: 700 19px var(--heading); color: var(--text); text-decoration: none; }
.logo img { width: 32px; height: 32px; object-fit: contain; }
header.top nav a { font-size: 14px; color: var(--soft); }
main { padding: 48px 0 24px; }
.eyebrow { font: 600 12px/1 var(--heading); letter-spacing: 0.14em; text-transform: uppercase; color: var(--accent); margin: 0 0 14px; }
h1, h2, h3 { font-family: var(--heading); line-height: 1.2; letter-spacing: -0.015em; margin: 0; color: var(--text); }
h1 { font-size: clamp(30px, 5vw, 44px); font-weight: 700; }
h2 { font-size: clamp(21px, 3vw, 26px); font-weight: 700; margin-top: 48px; }
h3 { font-size: 17px; font-weight: 600; margin-top: 24px; }
p, ul, ol { margin: 14px 0 0; color: var(--soft); }
strong, b { color: var(--text); font-weight: 600; }
ul, ol { padding-left: 22px; }
li { margin-top: 8px; padding-left: 2px; }
.updated { color: var(--soft); font-size: 14px; margin-top: 12px; }
.lead { font-size: 18px; max-width: 60ch; margin-top: 18px; }
nav.toc { margin-top: 32px; padding: 20px 22px; background: var(--surface); border: 1px solid var(--divider); border-radius: 14px; }
nav.toc p { margin: 0 0 8px; font: 600 13px/1 var(--heading); letter-spacing: 0.08em; text-transform: uppercase; color: var(--text); }
nav.toc ol { margin: 0; padding-left: 22px; columns: 2; column-gap: 32px; }
nav.toc li { margin-top: 6px; break-inside: avoid; }
nav.toc a { color: var(--soft); text-decoration: none; }
nav.toc a:hover { color: var(--accent); text-decoration: underline; }
.card { margin-top: 18px; padding: 18px 20px; background: var(--surface); border: 1px solid var(--divider); border-radius: 14px; }
.card p:first-child, .card ul:first-child, .card h3:first-child { margin-top: 0; }
code { font: 500 0.9em ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color: var(--text); background: rgba(166, 191, 219, 0.1); padding: 2px 6px; border-radius: 6px; overflow-wrap: anywhere; }
table { width: 100%; border-collapse: collapse; margin-top: 16px; font-size: 15px; }
th, td { text-align: left; vertical-align: top; padding: 12px 14px; border-bottom: 1px solid var(--divider); }
th { font: 600 13px/1.3 var(--heading); color: var(--text); background: rgba(166, 191, 219, 0.06); }
td { color: var(--soft); }
td:first-child { color: var(--text); font-weight: 600; width: 30%; }
.scroll { overflow-x: auto; }
footer { margin-top: 56px; padding: 28px 0 48px; border-top: 1px solid var(--divider); color: var(--soft); font-size: 14px; }
footer p { margin: 6px 0 0; }
@media (max-width: 600px) {
  main { padding-top: 32px; }
  nav.toc ol { columns: 1; }
  td:first-child { width: auto; }
  th, td { padding: 10px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
@media print {
  :root { --bg: #fff; --surface: #fff; --text: #111; --soft: #333; --accent: #0b4073; --divider: #ccc; }
  header.top nav, nav.toc { display: none; }
}
