:root { --bg:#F7F4EE; --card:#FAF7EE; --ink:#2A2520; --sub:#7A7166; --accent:#D48A3E; --accentDk:#B66E2A; --line:rgba(42,37,32,.10); --mark:#FFF1C2; }
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin:0; background:var(--bg); color:var(--ink); font: 16px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Inter, sans-serif; }
main { max-width: 720px; margin: 0 auto; padding: 24px 16px 64px; }
header.top { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 12px; padding: 20px 16px 0; max-width: 720px; margin: 0 auto; }
header.top .brand { color: var(--accentDk); text-decoration: none; font-weight: 700; font-size: 18px; }
nav.langs a { margin-left: 14px; font-size: 14px; color: var(--accentDk); }
nav.langs a:first-child { margin-left: 0; }
a { color: var(--accentDk); }
h1 { font-size: 28px; line-height: 1.2; margin: 8px 0 4px; }
h2 { font-size: 20px; line-height: 1.3; margin: 36px 0 8px; }
h3 { font-size: 17px; margin: 24px 0 6px; }
p, li { margin: 8px 0; }
ul { padding-left: 22px; }
.meta { color: var(--sub); font-size: 14px; margin-bottom: 24px; }
.card { background: var(--card); border: 1px solid var(--line); border-radius: 20px; padding: 14px 18px; margin: 16px 0; }
.todo { background: var(--mark); padding: 0 4px; border-radius: 4px; font-weight: 600; }
.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
table { border-collapse: collapse; width: 100%; font-size: 15px; }
th, td { text-align: left; vertical-align: top; padding: 8px 6px; border-bottom: 1px solid var(--line); }
th { color: var(--sub); font-size: 13px; font-weight: 600; }
td:first-child { font-weight: 600; min-width: 120px; }
hr.lang { border: 0; border-top: 2px solid var(--line); margin: 56px 0; }
footer { color: var(--sub); font-size: 13px; margin-top: 48px; line-height: 2; }
footer a { margin-right: 14px; white-space: nowrap; }
@media (max-width: 480px) { h1 { font-size: 24px; } table { font-size: 14px; } }
