:root { --fg:#1d2530; --muted:#7a8694; --line:#e3e8ee; --accent:#2f6df0; --bg:#f7f9fc; }
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, -apple-system, "Segoe UI", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  color:var(--fg); background:var(--bg); line-height:1.7; }
.site-header { display:flex; align-items:center; gap:24px; padding:14px 20px; background:#fff; border-bottom:1px solid var(--line); }
.brand { font-weight:700; text-decoration:none; color:var(--fg); }
.site-header nav a { color:var(--muted); text-decoration:none; font-size:14px; }
.site-header nav a:hover { color:var(--accent); }
.container { max-width:880px; margin:0 auto; padding:24px 20px 64px; }
.site-footer { max-width:880px; margin:0 auto; padding:24px 20px; color:var(--muted); font-size:12px; }
h1 { font-size:22px; margin:0 0 8px; }
a { color:var(--accent); }
.muted { color:var(--muted); }
.small { font-size:13px; }
.mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.nowrap { white-space:nowrap; }
.center { text-align:center; }
table.grid { width:100%; border-collapse:collapse; margin:16px 0; background:#fff; border:1px solid var(--line); border-radius:8px; overflow:hidden; }
table.grid th, table.grid td { text-align:left; padding:10px 12px; border-bottom:1px solid var(--line); vertical-align:top; }
table.grid th { background:#fbfcfe; color:var(--muted); font-size:12px; font-weight:600; }
table.grid tr:last-child td { border-bottom:none; }
dl.fields { background:#fff; border:1px solid var(--line); border-radius:8px; padding:8px 16px; margin:16px 0; }
dl.fields dt { font-size:12px; color:var(--muted); margin-top:14px; }
dl.fields dd { margin:2px 0 0; white-space:pre-wrap; }
dl.fields dt.pending { color:#c08a00; }
.hero { padding:48px 0; }
