/* Páginas legais (privacidade e termos): leitura confortável, mesma identidade da landing */
:root {
  --ink: #3b2a1f;
  --ink-2: #6e5644;
  --cream: #fff6dc;
  --paper: #fffdf7;
  --line: #ead7ad;
  --wood-d: #4a2a12;
  --leaf: #3f9a46;
  --leaf-d: #2f6e2a;
  --sun: #ffd34d;
  --tomato: #e0573f;
  color-scheme: light;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; font: 600 1.02rem/1.7 "Nunito", system-ui, -apple-system, "Segoe UI", sans-serif; color: var(--ink); background: var(--cream); }
a { color: var(--leaf-d); font-weight: 800; }
a:hover { color: var(--tomato); }
:focus-visible { outline: 4px solid var(--sun); outline-offset: 3px; border-radius: 6px; }
.top { background: linear-gradient(#7fc8f8, #bfe3ff); border-bottom: 5px solid var(--wood-d); }
.top .in { width: min(900px, 100% - 32px); margin: 0 auto; padding: 18px 0 26px; }
.top nav { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.top nav img { width: 140px; height: auto; display: block; }
.top nav .links { display: flex; gap: 8px; flex-wrap: wrap; }
.top nav .links a { text-decoration: none; padding: 8px 14px; border-radius: 999px; background: rgba(255, 253, 247, 0.9); color: var(--ink); font-size: 0.92rem; }
.top nav .links a.play { background: linear-gradient(#7fd06a, #3f9a46); color: #fff; }
.top h1 { font: 900 clamp(1.8rem, 6vw, 2.6rem)/1.15 "Nunito", sans-serif; margin: 22px 0 6px; color: #fff; text-shadow: 0 3px 0 var(--wood-d), 2px 2px 0 var(--wood-d), -2px 2px 0 var(--wood-d); }
.top p { margin: 0; font-weight: 800; color: var(--wood-d); }
main { width: min(900px, 100% - 32px); margin: 26px auto 60px; }
.card { background: var(--paper); border: 4px solid var(--wood-d); border-radius: 22px; box-shadow: 0 6px 0 var(--wood-d); padding: clamp(18px, 4vw, 34px); }
.summary { background: #f2fbe8; border: 3px solid #bfe3a3; border-radius: 18px; padding: 16px 20px; margin: 0 0 26px; }
.summary h2 { margin-top: 0 !important; border: 0 !important; padding: 0 !important; }
.summary ul { margin: 6px 0 0; padding-left: 22px; }
.toc { border: 3px dashed var(--line); border-radius: 16px; padding: 14px 20px; margin: 0 0 28px; }
.toc b { display: block; margin-bottom: 4px; }
.toc ol { margin: 0; padding-left: 22px; columns: 2 260px; column-gap: 28px; }
.toc li { break-inside: avoid; }
h2 { font: 900 1.35rem/1.25 "Nunito", sans-serif; margin: 34px 0 10px; padding-top: 18px; border-top: 3px solid var(--line); scroll-margin-top: 16px; }
h3 { font: 900 1.08rem/1.3 "Nunito", sans-serif; margin: 20px 0 6px; }
p, li { color: var(--ink); }
.muted { color: var(--ink-2); }
table { width: 100%; border-collapse: collapse; margin: 10px 0 16px; font-size: 0.95rem; display: block; overflow-x: auto; }
th, td { text-align: left; vertical-align: top; padding: 10px 12px; border: 2px solid var(--line); min-width: 140px; }
th { background: #fbefd2; font-weight: 900; }
.box { border-radius: 16px; padding: 14px 18px; margin: 14px 0; background: #fff4d6; border: 3px solid #f0d28a; }
.box.green { background: #effae6; border-color: #bfe3a3; }
.box.red { background: #fdece7; border-color: #f0b6a6; }
.box b:first-child { display: block; margin-bottom: 2px; }
footer { text-align: center; color: var(--ink-2); font-size: 0.92rem; padding: 0 16px 40px; }
footer a { margin: 0 6px; }
@media print { .top, footer, .toc { display: none; } .card { border: 0; box-shadow: none; } body { background: #fff; } }
