/* 設備ジム 共通の見た目（トップ・問題一覧・運営者情報など） */
:root{
  --bg:#EDEFEB; --surface:#FAFBF8; --ink:#1D2320; --muted:#5B6660; --line:#C7CEC8;
  --live:#E08600; --live-soft:#FBE3B8; --focus:#1F6FD1;
  --ok:#1D8A45; --ng:#C23A2E; --chip:#E1E5E0; --warn-bg:#FFF4D6; --warn-ink:#7A5200;
  --f-display:"Zen Kaku Gothic New","Hiragino Sans","Yu Gothic",sans-serif;
  --f-body:"IBM Plex Sans JP","Hiragino Sans","Yu Gothic",sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#141816; --surface:#1C221F; --ink:#E4E9E5; --muted:#9AA59F; --line:#36403B;
  --live:#F6A623; --live-soft:#4A3712; --focus:#6FA8FF;
  --ok:#4CC27A; --ng:#FF7A6E; --chip:#27302C; --warn-bg:#3A2F12; --warn-ink:#F2C766; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#141816; --surface:#1C221F; --ink:#E4E9E5; --muted:#9AA59F; --line:#36403B;
  --live:#F6A623; --live-soft:#4A3712; --focus:#6FA8FF;
  --ok:#4CC27A; --ng:#FF7A6E; --chip:#27302C; --warn-bg:#3A2F12; --warn-ink:#F2C766; color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.8}
a{color:var(--focus)}
a:focus-visible,button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
h1,h2,h3{font-family:var(--f-display);margin:0;line-height:1.35;text-wrap:balance}
h1{font-size:clamp(26px,4.4vw,36px);font-weight:700}
h2{font-size:20px;font-weight:700;margin:40px 0 12px}
h3{font-size:16px;font-weight:700;margin:0 0 6px}
.wrap{max-width:880px;margin:0 auto;padding:0 16px}
main.wrap{padding-top:28px;padding-bottom:56px}

/* ヘッダー */
.site-head{border-bottom:1px solid var(--line);background:var(--surface)}
.site-head .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;padding-top:10px;padding-bottom:10px}
.brand{font-family:var(--f-display);font-weight:700;font-size:19px;color:var(--ink);text-decoration:none;letter-spacing:.04em}
.brand small{display:block;font-size:11px;font-weight:500;color:var(--muted);letter-spacing:.02em}
.nav{display:flex;flex-wrap:wrap;gap:4px 14px;margin-left:auto;font-size:14px}
.nav a{color:var(--ink);text-decoration:none;padding:2px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current="page"]{border-bottom-color:var(--live)}
@media (max-width:560px){.nav{margin-left:0;width:100%}}

/* フッター */
.site-foot{border-top:1px solid var(--line);color:var(--muted);font-size:13px}
.site-foot .wrap{padding-top:18px;padding-bottom:28px;display:flex;flex-wrap:wrap;gap:6px 18px}
.site-foot a{color:var(--muted)}
.site-foot .copy{width:100%}

/* 部品 */
.eyebrow{font-size:12px;letter-spacing:.12em;color:var(--muted);font-weight:600;margin:0 0 6px}
.lead{color:var(--muted);margin:10px 0 0}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
a.card{display:block;color:var(--ink);text-decoration:none}
a.card:hover{border-color:var(--live)}
a.card .go{display:inline-block;margin-top:6px;font-size:14px;color:var(--focus)}
.tag{display:inline-block;font-size:11px;border-radius:4px;padding:0 6px;background:var(--chip);color:var(--muted);vertical-align:middle;margin-left:6px}
.tag.lv{background:var(--live-soft);color:var(--ink)}
.note{background:var(--warn-bg);color:var(--warn-ink);border-radius:10px;padding:12px 14px;font-size:14px}
.note p{margin:4px 0}
table{border-collapse:collapse;width:100%;font-size:14px}
th,td{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left;vertical-align:top}
th{font-weight:600;color:var(--muted);font-size:13px;white-space:nowrap}
.tbl{overflow-x:auto}
.muted{color:var(--muted)}
