/* 虫のからだ図鑑 — 案内ページ共通（夜の標本室: 深い藍の地に骨色の文字、琥珀色のアクセント） */
:root{color-scheme:dark;--ink:#071018;--ink-2:#0d1922;--bone:#ece4d2;--mute:#9aa6ae;--rule:rgba(236,228,210,.18);--honey:#f2a93b;--honey-2:#ffcf7a;
--f-disp:"Shippori Mincho B1","Hiragino Mincho ProN","Yu Mincho",serif;--f-body:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP","Yu Gothic",sans-serif;--f-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;--f-kid:"Zen Maru Gothic","Hiragino Maru Gothic ProN","Hiragino Sans",sans-serif}
*{box-sizing:border-box}
html{background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--bone);font-family:var(--f-body);line-height:1.85;-webkit-font-smoothing:antialiased}
.wrap{max-width:760px;margin:0 auto;padding-block:28px 64px;padding-inline:max(16px,env(safe-area-inset-left))}
header.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--rule)}
header.top a.home{color:var(--honey-2);text-decoration:none;font-family:var(--f-kid);font-weight:700;letter-spacing:.06em}
header.top .eyebrow{font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;color:var(--honey)}
h1{font-family:var(--f-disp);font-weight:800;font-size:clamp(24px,5vw,34px);letter-spacing:.06em;line-height:1.3;margin:28px 0 8px;text-wrap:balance}
h2{font-family:var(--f-disp);font-weight:800;font-size:20px;letter-spacing:.05em;margin:36px 0 8px;text-wrap:balance}
h3{font-size:15px;margin:22px 0 4px;color:var(--honey-2)}
p,li{font-size:15px}
.lead{color:var(--mute);margin:0 0 8px}
a{color:var(--honey-2)}
table{width:100%;border-collapse:collapse;margin-top:12px;font-size:14.5px}
th,td{text-align:left;vertical-align:top;padding:12px 10px;border-bottom:1px solid var(--rule)}
th{width:32%;color:var(--mute);font-weight:500}
.fill{background:rgba(242,169,59,.16);color:var(--honey-2);border-radius:4px;padding:0 4px}
.note{border:1px solid var(--rule);border-radius:14px;padding:12px 14px;color:var(--mute);font-size:13.5px;margin-top:18px}
.box{border:1px solid var(--rule);border-radius:18px;padding:20px;margin-top:20px;background:var(--ink-2)}
.code{font-family:var(--f-mono);font-size:clamp(26px,7vw,40px);letter-spacing:.08em;color:var(--honey-2);margin:6px 0;user-select:all;-webkit-user-select:all;word-break:break-all}
.btn{appearance:none;-webkit-appearance:none;display:inline-block;border:1px solid var(--honey);background:transparent;color:var(--honey-2);font:700 15px/1 var(--f-kid);letter-spacing:.06em;padding:13px 20px;border-radius:999px;cursor:pointer;text-decoration:none}
.btn.solid{background:var(--honey);color:#1a1006}
.btn:focus-visible,a:focus-visible{outline:2px solid var(--honey);outline-offset:3px}
.row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.muted{color:var(--mute)}
dl.faq dt{font-weight:700;margin-top:20px}
dl.faq dd{margin:4px 0 0;color:rgba(236,228,210,.86)}
footer{margin-top:48px;padding-top:16px;border-top:1px solid var(--rule);font-size:12px;color:var(--mute);display:flex;flex-wrap:wrap;gap:6px 16px}
footer a{color:var(--mute)}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
