/* docs.css — 共通スタイル (tools/frontend/css_extract.cjs で overview.html, details.html, math.html, eval.html から抽出)。
   ページ固有の上書きは各ページの <style> に残っている。見た目を変えるときは cascade の順 (この file → ページの <style>) に注意 */
* { box-sizing: border-box; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Sans", sans-serif;
  margin: 0; padding: 0;
  background: #ffffff; color: #111827;
}
/* (旧 .nav の規則は 2026-09-17 に削除: ヘッダーは nav.js が入れるもので class="nav" の要素はどのページにも無い。レビュー §2-8) */
.nav .brand { font-size: 16px; color: #111827; font-weight: 600; margin-right: 16px; }
.nav .brand a { color: #111827; font-size: 16px; padding: 0; }
.nav .brand a:hover { background: transparent; }
.nav .meta { margin-left: auto; color: #9ca3af; font-size: 12px; }
main { max-width: 920px; margin: 0 auto; padding: 32px 24px; }
h1 { font-size: 26px; color: #111827; margin: 0 0 8px; }
h2 { font-size: 20px; color: #dc2626; margin: 32px 0 12px; padding-bottom: 6px; border-bottom: 1px solid #e5e7eb; }
h3 { font-size: 16px; color: #111827; margin: 20px 0 8px; }
p { line-height: 1.7; color: #374151; }
ul, ol { line-height: 1.8; color: #374151; }
.pagenav {
  display: flex; justify-content: space-between; gap: 12px;
  margin: 32px 0 8px;
}
.pagenav a {
  flex: 1; text-align: center;
  background: #dc2626; color: #ffffff; text-decoration: none;
  padding: 10px 18px; border-radius: 8px; font-size: 14px; font-weight: 600;
}
.pagenav a:hover { background: #b91c1c; }
.pagenav a.prev { background: #6b7280; }
.pagenav a.prev:hover { background: #4b5563; }
@media (max-width:720px) {
  body { -webkit-text-size-adjust: 100%; }
  .nav { padding: 10px 14px; gap: 12px; font-size: 12px; flex-wrap: wrap; }
  .nav .brand { font-size: 14px; }
  main { padding: 20px 14px; }
  h1 { font-size: 20px; }
  h2 { font-size: 17px; }
  h3 { font-size: 14px; }
  p, ul, ol { font-size: 13px; line-height: 1.6; }
  .pagenav { flex-direction: column; }
  .pagenav a { font-size: 13px; padding: 8px 14px; }
}
