:root { --fg:#2b1d12; --muted:#7a6656; --line:#ead9c6; --bg:#fffaf3; --soft:#fbefe0; --accent:#e0680f; }
@media (prefers-color-scheme: dark) { :root { --fg:#f6ece2; --muted:#b8a493; --line:#3d3027; --bg:#17110c; --soft:#241a13; --accent:#ff9a3d; } }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:16px/1.75 -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", system-ui, sans-serif; -webkit-font-smoothing:antialiased; word-break:keep-all; }
main { max-width:720px; margin:0 auto; padding:40px 20px 72px; }
header.top { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:28px; }
.brand { font-weight:700; font-size:18px; color:var(--fg); text-decoration:none; }
nav a { color:var(--muted); text-decoration:none; font-size:14px; margin-left:14px; }
nav a:hover, nav a[aria-current] { color:var(--accent); }
h1 { font-size:28px; line-height:1.3; margin:0 0 8px; }
h2 { font-size:19px; margin:36px 0 8px; }
.meta { color:var(--muted); font-size:14px; margin:0 0 24px; }
.summary { background:var(--soft); border-radius:14px; padding:16px 20px; }
ul { padding-left:20px; } li { margin:6px 0; }
table { width:100%; border-collapse:collapse; font-size:15px; margin:12px 0; }
th, td { border:1px solid var(--line); padding:10px 12px; text-align:left; vertical-align:top; }
th { background:var(--soft); font-weight:600; }
a { color:var(--accent); }
details { border-bottom:1px solid var(--line); padding:14px 0; }
summary { cursor:pointer; font-weight:600; }
details p, details ul { margin:10px 0 0; }
footer { color:var(--muted); font-size:13px; margin-top:56px; }
