*{box-sizing:border-box}
:root{--ink:#241a21;--muted:#6d5f68;--line:#e6dde3;--bg:#fbf8fa;--accent:#7b3f62;--paper:#fff}
body{margin:0;font-family:-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:var(--ink);background:var(--bg);line-height:1.9;font-size:15px}
.wrap{max-width:760px;margin:0 auto;padding:0 22px}
header.site{background:var(--paper);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;padding-bottom:18px;flex-wrap:wrap}
header.site a.brand{color:var(--ink);text-decoration:none;font-weight:700;font-size:17px;letter-spacing:.02em}
header.site a.brand small{display:block;color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.12em;margin-top:2px}
header.site nav{display:flex;gap:18px;flex-wrap:wrap}
header.site nav a{color:var(--muted);text-decoration:none;font-size:13px}
header.site nav a:hover{color:var(--accent)}
main{padding:46px 0 60px}
h1{font-size:26px;line-height:1.5;margin:0 0 8px}
.lead{color:var(--muted);margin:0 0 34px;font-size:14px}
h2{font-size:18px;margin:38px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}
h3{font-size:15px;margin:24px 0 6px}
p{margin:0 0 14px}
a{color:var(--accent)}
table{width:100%;border-collapse:collapse;margin:14px 0;font-size:14px}
th,td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top;background:var(--paper)}
th{background:#f4eef2;width:30%;white-space:nowrap}
ul{margin:0 0 14px;padding-left:1.3em}li{margin-bottom:6px}
.box{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--accent);padding:16px 18px;margin:18px 0}
.box p:last-child{margin-bottom:0}
footer.site{border-top:1px solid var(--line);background:var(--paper);padding:26px 0;color:var(--muted);font-size:12px}
footer.site a{color:var(--muted);margin-right:16px}
@media(max-width:560px){h1{font-size:21px}th{width:36%}}