:root { --azul:#1b4a7a; --azul-claro:#e4edf6; --tinta:#2a2118; --sub:#6d6253; --borda:#e8dcc3; --fundo:#f8f1e1; --card:#fff; --mostarda:#b3801f; }
* { box-sizing:border-box; }
body { margin:0; font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; background:var(--fundo); color:var(--tinta); line-height:1.65; }
main { max-width:780px; margin:0 auto; padding:20px 16px 56px; }
.topo { display:flex; align-items:center; gap:12px; margin:6px 0 14px; }
.topo img { width:56px; height:auto; border-radius:12px; box-shadow:0 2px 10px rgba(120,80,20,.18); }
.topo a { color:var(--azul); font-weight:700; text-decoration:none; font-size:14px; }
h1 { font-size:26px; margin:6px 0 4px; line-height:1.25; }
h2 { font-size:19px; margin:30px 0 8px; padding-top:6px; border-top:1px solid var(--borda); }
h3 { font-size:16px; margin:18px 0 4px; }
p, li { font-size:15.5px; } li { margin:4px 0; }
.meta { color:var(--sub); font-size:13px; margin:0 0 14px; }
.card { background:var(--card); border-radius:14px; padding:16px 18px; box-shadow:0 1px 3px rgba(0,0,0,.06); margin:14px 0; }
.resumo { background:var(--azul-claro); border-radius:14px; padding:14px 18px; margin:14px 0; }
.resumo b { color:var(--azul); }
.rascunho { background:#fdf1d6; color:#6b4a0c; border:1px solid #ecd49a; border-radius:12px; padding:12px 16px; margin:12px 0; font-size:14px; line-height:1.5; }
.pend { background:#fdf1d6; border-radius:4px; padding:0 3px; }
nav.indice { background:var(--card); border-radius:14px; padding:12px 18px; box-shadow:0 1px 3px rgba(0,0,0,.06); font-size:14px; }
nav.indice a { color:var(--azul); text-decoration:none; } nav.indice ol { margin:6px 0 0; padding-left:20px; columns:2; column-gap:24px; } nav.indice li { font-size:14px; margin:2px 0; }
table { width:100%; border-collapse:collapse; font-size:14px; background:var(--card); border-radius:10px; overflow:hidden; }
th, td { text-align:left; vertical-align:top; padding:9px 10px; border-bottom:1px solid var(--borda); } th { background:#f3ead5; font-size:12px; text-transform:uppercase; letter-spacing:.03em; color:var(--sub); }
.rolagem { overflow-x:auto; }
a { color:var(--azul); }
.rodape { margin-top:34px; padding-top:14px; border-top:1px solid var(--borda); font-size:13px; color:var(--sub); text-align:center; }
@media (max-width:560px) { nav.indice ol { columns:1; } h1 { font-size:22px; } }
@media print { body { background:#fff; } .topo a, nav.indice { display:none; } }
