:root{color-scheme:light;--ink:#202d3a;--muted:#5b6875;--line:#d8e0e8;--paper:#fff;--soft:#f4f7f9;--accent:#245b80}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#eef1f4;color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:1.85}
a{color:var(--accent);text-underline-offset:.16em}.topbar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:1rem;padding:.65rem 1rem;background:#ffffffee;border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}
.page,.home{max-width:920px;margin:24px auto;background:var(--paper);padding:44px 56px;box-shadow:0 3px 18px #20304012}
h1{font-size:1.9rem;line-height:1.45;margin:.2rem 0 1.2rem}h2{font-size:1.3rem;line-height:1.5;margin:2.4rem 0 .9rem;padding-bottom:.35rem;border-bottom:2px solid var(--line)}h3{font-size:1.08rem;margin:1.7rem 0 .55rem}
p{margin:.65rem 0 1rem}li{margin:.28rem 0}ul,ol{padding-left:1.55rem}.meta,.crumb,.lead{color:var(--muted)}.crumb{font-size:.88rem}
.toc{border:1px solid var(--line);border-radius:8px;padding:.8rem 1rem;margin:1.3rem 0}.toc summary{font-weight:700;cursor:pointer}.toc a{display:block;text-decoration:none;padding:.25rem 0}.toc-l3{padding-left:1rem!important}
.technical-figure{margin:1.6rem 0;padding:.8rem;border:1px solid var(--line);border-radius:8px;background:white}.technical-figure img{display:block;width:100%;height:auto;max-width:100%}.technical-figure figcaption{font-size:.84rem;color:var(--muted);margin-top:.5rem}.technical-figure a{display:block}
.table-wrap{overflow-x:auto;max-width:100%;margin:1.1rem 0;border:1px solid var(--line);border-radius:6px;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;width:100%;min-width:560px;font-size:.9rem;line-height:1.65}th,td{padding:.62rem .72rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:var(--soft)}
.searchbox{display:block;font-weight:700}.searchbox input{display:block;width:100%;margin-top:.5rem;padding:.85rem 1rem;border:1px solid #bfc9d2;border-radius:10px;font:inherit}.filters{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:1rem 0}.filters select{padding:.6rem;border:1px solid #bfc9d2;border-radius:8px;background:white}.results{display:grid;gap:.7rem}.result{display:block;border:1px solid var(--line);border-radius:9px;padding:1rem;text-decoration:none;color:inherit}.result h2{font-size:1.05rem;border:0;margin:0 0 .3rem;padding:0}.result .tags{font-size:.8rem;color:var(--muted)}.result p{font-size:.9rem;margin:.45rem 0 0;color:#3d4b58}
footer{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--line)}
@media(max-width:640px){body{background:white;font-size:14px;line-height:1.8}.page,.home{margin:0;padding:22px 16px;box-shadow:none}.topbar{font-size:.85rem}h1{font-size:1.55rem}h2{font-size:1.18rem;margin-top:2rem}.technical-figure{padding:.3rem}th,td{font-size:.85rem;padding:.5rem}.filters{align-items:stretch;flex-direction:column}}
@media print{body{background:white;font-size:10.5pt}.topbar,.toc,.searchbox,.filters{display:none}.page,.home{max-width:none;margin:0;padding:0;box-shadow:none}h2,h3{break-after:avoid}.technical-figure{break-inside:avoid}tr{break-inside:avoid}a{color:inherit;text-decoration:none}}
