:root { --bg:#14161c; --panel:#1e2129; --line:#2b2f38; --text:#e9e9e4; --muted:#a3a7b0; --accent:#f2c14e; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--text); font-family:"BIZ UDPGothic","Hiragino Sans","Yu Gothic",sans-serif; line-height:1.8; }
a { color:var(--accent); }
.site { max-width:1280px; margin:0 auto; padding:12px 16px; display:flex; align-items:center; gap:8px 20px; flex-wrap:wrap; border-bottom:1px solid var(--line); }
.site .logo { font-size:1.3rem; font-weight:bold; color:var(--accent); text-decoration:none; }
.site nav { display:flex; gap:4px 16px; flex-wrap:wrap; font-size:.95rem; }
.site nav a { color:var(--text); text-decoration:none; }
.site nav a:hover, .site nav a[aria-current] { color:var(--accent); }
.doc { max-width:860px; margin:0 auto; padding:16px 16px 48px; }
.doc h1 { font-size:1.5rem; margin:16px 0 8px; }
.doc h2 { font-size:1.15rem; color:var(--accent); margin:32px 0 8px; padding-bottom:4px; border-bottom:1px solid var(--line); }
.doc h3 { font-size:1rem; margin:20px 0 4px; }
.lead { color:var(--muted); }
.box { background:var(--panel); padding:12px 16px; margin:12px 0; }
table { border-collapse:collapse; width:100%; margin:8px 0; font-size:.95rem; }
th, td { border:1px solid var(--line); padding:6px 10px; text-align:left; vertical-align:top; }
th { background:var(--panel); font-weight:normal; color:var(--muted); }
.wrap { overflow-x:auto; }
kbd { font-family:inherit; background:var(--panel); border:1px solid #3a3e48; padding:0 6px; }
.lines { padding-left:1.2em; }
.lines li { margin:4px 0; }
.btn { display:inline-block; background:var(--accent); color:#14161c; text-decoration:none; padding:8px 18px; font-weight:bold; }
footer { border-top:1px solid var(--line); color:var(--muted); font-size:.85rem; text-align:center; padding:20px 16px 40px; }
footer a { color:var(--muted); margin:0 6px; }
@media (max-width:600px) { th, td { padding:4px 6px; font-size:.9rem; } }
