/* 文章のページ (about・使い方・読みもの) の共通スタイル */
:root { --bg: #f7f8f6; --text: #1d2730; --muted: #5a6875; --line: #d6dbd8; --link: #1f4e9c; --card: #ffffff; }
@media (prefers-color-scheme: dark) {
  :root { --bg: #161b20; --text: #e6edf3; --muted: #9aa7b3; --line: #2f3a44; --link: #8ab4f8; --card: #1d242b; }
}
html { background: var(--bg); }
body { margin: 0 auto; max-width: 760px; padding: 24px 16px 48px; color: var(--text); background: var(--bg);
  font-family: system-ui, -apple-system, "Hiragino Sans", "Noto Sans JP", sans-serif; line-height: 1.8; }
h1 { font-size: 22px; line-height: 1.4; } h2 { font-size: 17px; margin-top: 32px; border-bottom: 1px solid var(--line); }
a { color: var(--link); } small, .muted { color: var(--muted); }
table { border-collapse: collapse; width: 100%; font-size: 14px; }
th, td { border: 1px solid var(--line); padding: 6px 8px; text-align: left; vertical-align: top; }
code, kbd { font-size: 13px; word-break: break-all; }
kbd { border: 1px solid var(--line); border-bottom-width: 2px; border-radius: 4px; padding: 0 5px; background: var(--card); }
nav.top { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 14px; }
.map-link { display: inline-block; margin: 8px 0; padding: 6px 14px; border: 1px solid var(--link); border-radius: 6px; text-decoration: none; }
.sources { font-size: 13px; color: var(--muted); }
.article-list li { margin-bottom: 8px; }
