:root { --fundo:#f5f5f5; --texto:#27272a; --suave:#52525b; --marca:#0F4E97; --borda:#e4e4e7; --cartao:#fff; }
@media (prefers-color-scheme: dark) {
  :root { --fundo:#18181b; --texto:#f4f4f5; --suave:#a1a1aa; --marca:#6ea8f0; --borda:#3f3f46; --cartao:#202024; }
}
* { box-sizing: border-box; }
body { margin:0; background:var(--fundo); color:var(--texto);
  font-family: Inter, Roboto, -apple-system, 'Segoe UI', sans-serif; line-height:1.6; font-size:16px; }
header { background:var(--cartao); border-bottom:1px solid var(--borda); }
header .w { display:flex; align-items:center; gap:12px; padding:14px 16px; }
header img { width:36px; height:36px; border-radius:9px; }
header a.nome { font-weight:700; font-size:20px; color:var(--texto); text-decoration:none; }
nav { margin-left:auto; display:flex; gap:16px; flex-wrap:wrap; font-size:14px; }
nav a { color:var(--suave); text-decoration:none; }
.w { max-width:780px; margin:0 auto; }
main .w { padding:28px 16px 48px; }
h1 { font-size:28px; line-height:1.25; margin:0 0 6px; }
h2 { font-size:19px; margin:32px 0 8px; }
p, li { color:var(--texto); }
.sub { color:var(--suave); margin-top:0; }
a { color:var(--marca); }
.caixa { background:var(--cartao); border:1px solid var(--borda); border-radius:10px; padding:16px 18px; margin:18px 0; }
table { border-collapse:collapse; width:100%; font-size:15px; }
th, td { text-align:left; border-bottom:1px solid var(--borda); padding:8px 6px; vertical-align:top; }
footer { border-top:1px solid var(--borda); color:var(--suave); font-size:13px; }
footer .w { padding:18px 16px; }
