:root{--ink:#2b2622;--muted:#6f655c;--paper:#f6f1ea;--card:#fffdf9;--line:#e3d9cc;--accent:#8a3b2e}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Georgia,"Times New Roman",serif;background:var(--paper);color:var(--ink);line-height:1.65}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
header{border-bottom:1px solid var(--line);background:var(--card)}
.wrap{max-width:980px;margin:0 auto;padding:0 20px}
.top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 0}
.brand{font-size:1.35rem;letter-spacing:.02em;color:var(--ink)}.brand span{color:var(--accent)}
nav a{margin-left:18px;font-family:Helvetica,Arial,sans-serif;font-size:.92rem;color:var(--muted)}
nav a.on{color:var(--ink);border-bottom:2px solid var(--accent)}
.hero{padding:64px 0 40px}.hero h1{font-size:2.3rem;line-height:1.2;max-width:680px;font-weight:normal}
.hero p{margin-top:16px;max-width:620px;color:var(--muted);font-size:1.08rem}
section{padding:28px 0}h2{font-weight:normal;font-size:1.5rem;margin-bottom:12px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:20px}
.card h3{font-weight:normal;font-size:1.12rem;margin-bottom:6px}.card p{color:var(--muted);font-size:.96rem}
table{width:100%;border-collapse:collapse;background:var(--card)}td,th{border:1px solid var(--line);padding:10px;text-align:left;font-size:.95rem}
ul.plain{list-style:none}ul.plain li{padding:6px 0;border-bottom:1px dashed var(--line)}
footer{margin-top:40px;border-top:1px solid var(--line);padding:22px 0;font-family:Helvetica,Arial,sans-serif;font-size:.85rem;color:var(--muted)}
.err{min-height:70vh;display:flex;align-items:center;justify-content:center;text-align:center}
.err .code{font-size:5rem;color:var(--line);line-height:1}
