:root{--ground:#f3f2ec;--panel:#e7e6dd;--panel-2:#dcdbcb;--ink:#3b3128;--muted:#645b4d;--line:#cfcec2;--accent:#7d8f7b;--accent-ink:#4f6350;--accent-fill:#4f6350;--on-accent:#f8f6f0;--warn:#7b4426;--maxw:70rem;--font:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:ui-monospace, "SFMono-Regular", "Consolas", "Liberation Mono", monospace}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--ground);color:var(--ink);font-family:var(--font);letter-spacing:.01em;margin:0;font-size:1.0625rem;line-height:1.9}[hidden]{display:none!important}img,svg{max-width:100%;height:auto}a{color:var(--accent-ink);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--ink)}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.wrap{width:min(100% - 2.5rem, var(--maxw));margin-inline:auto}.wrap.wrap{margin-inline:auto}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:40;background:var(--ink);color:var(--on-accent);padding:.6rem 1rem;position:absolute;top:0;left:-9999px}.skip:focus{top:.5rem;left:.5rem}.masthead{border-bottom:2px solid var(--ink);background:var(--ground)}.masthead-inner{flex-wrap:wrap;align-items:baseline;gap:.6rem 1.4rem;padding-block:.9rem .7rem;display:flex}.wordmark{color:var(--ink);align-items:center;gap:.55rem;text-decoration:none;display:inline-flex}.wordmark-mark{background:var(--accent-fill);width:1.9rem;height:1.9rem;color:var(--on-accent);font-family:var(--mono);letter-spacing:.02em;place-items:center;font-size:.72rem;font-weight:700;display:inline-grid}.wordmark-text{letter-spacing:.01em;font-size:1rem;font-weight:700}.nav{flex-wrap:wrap;gap:.15rem .95rem;margin-inline-start:auto;font-size:.82rem;line-height:1.6;display:flex}.nav a{color:var(--muted);border-bottom:2px solid #0000;padding-block:.15rem;text-decoration:none}.nav a:hover{color:var(--ink)}.nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent);font-weight:700}.lang{font-size:.8rem}.footer{border-top:1px solid var(--line);background:var(--panel);color:var(--muted);margin-block-start:3.5rem;padding-block:1.6rem 2.4rem;font-size:.82rem}.footer-name{color:var(--ink);margin:0 0 .4rem;font-size:.9rem;font-weight:700}.footer-nav{flex-wrap:wrap;gap:.2rem 1.1rem;margin-block:0 .7rem;display:flex}.footer-nav a{color:var(--muted)}.footer-note{max-width:46rem;margin:.25rem 0 0;line-height:1.7}.crumbs{color:var(--muted);flex-wrap:wrap;gap:.35rem;margin-block:1.1rem 0;font-size:.78rem;display:flex}.crumbs a{color:var(--muted)}.bp-hbm-top{border-bottom:1px solid var(--line);padding-block:2.2rem .6rem}.bp-hbm-kicker{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 .5rem;font-size:.72rem}.bp-hbm-top h1{letter-spacing:-.01em;margin:0 0 .7rem;font-size:clamp(1.65rem,4vw,2.5rem);line-height:1.35}.bp-hbm-lead{max-width:46rem;color:var(--muted);margin:0;font-size:1rem;line-height:1.95}.bp-hbm-dials{grid-template-columns:repeat(auto-fit,minmax(13.5rem,1fr));gap:.8rem;margin-block:1.5rem 0;display:grid}.bp-hbm-dial{background:var(--panel);border-top:3px solid var(--accent);padding:.75rem .9rem .85rem}.bp-hbm-dial-no{font-family:var(--mono);color:var(--muted);font-size:.68rem;display:block}.bp-hbm-dial-k{color:var(--muted);font-size:.78rem;display:block}.bp-hbm-dial b{margin-block-start:.15rem;font-size:.95rem;line-height:1.7;display:block}.bp-hbm-start{padding-block:2rem 0}.bp-hbm-start h2,.bp-hbm-fan h2{border-bottom:2px solid var(--accent);margin:0 0 .9rem;padding-block-end:.45rem;font-size:1.1rem;display:inline-block}.bp-hbm-start-list{counter-reset:st;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.bp-hbm-start-list li{counter-increment:st}.bp-hbm-start-list a{background:var(--ground);border:1px solid var(--line);height:100%;color:var(--ink);padding:.85rem .95rem;text-decoration:none;display:block}.bp-hbm-start-list a:before{content:"0" counter(st);font-family:var(--mono);color:var(--accent-ink);font-size:.72rem;display:block}.bp-hbm-start-t{font-size:.95rem;font-weight:700;display:block}.bp-hbm-start-b{color:var(--muted);margin-block-start:.15rem;font-size:.82rem;line-height:1.7;display:block}.bp-hbm-fan{border-block:1px solid var(--line);background:var(--panel-2);margin-block:2.2rem 0;padding-block:1.4rem 1.5rem}.bp-hbm-fan-lead{max-width:46rem;color:var(--muted);margin:0 0 1rem;font-size:.9rem;line-height:1.85}.bp-hbm-fan-rail{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:.75rem;margin:0;padding:0 0 .4rem;list-style:none;display:flex;overflow-x:auto}.bp-hbm-vcard{scroll-snap-align:start;background:var(--ground);border:1px solid var(--line);flex:0 0 15rem;padding:.85rem .9rem}.bp-hbm-v-name{margin:0;font-size:.86rem;font-weight:700;line-height:1.5}.bp-hbm-v-jp{color:var(--muted);margin:.1rem 0 .55rem;font-size:.74rem}.bp-hbm-v-size{border-bottom:1px solid var(--line);font-family:var(--mono);color:var(--muted);margin:0 0 .6rem;padding-block-end:.5rem;font-size:.72rem}.bp-hbm-v-size b{color:var(--ink);letter-spacing:.02em;font-size:1.05rem;display:block}.bp-hbm-v-rules{margin:0 0 .55rem}.bp-hbm-v-row{border-bottom:1px dotted var(--line);justify-content:space-between;gap:.6rem;padding-block:.15rem;font-size:.76rem;line-height:1.6;display:flex}.bp-hbm-v-row dt{color:var(--muted)}.bp-hbm-v-row dd{margin:0;font-weight:600}.bp-hbm-v-note{color:var(--muted);margin:0;font-size:.74rem;line-height:1.65}@media (width>=64rem){.bp-hbm-fan-rail{grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow-x:visible}.bp-hbm-vcard{flex:initial}}.bp-hbm-index{padding-block:2.2rem 0}.bp-hbm-cap{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 .5rem;font-size:.72rem}.bp-hbm-index-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.bp-hbm-index-list li{border-bottom:1px solid var(--line)}.bp-hbm-index-list a{color:var(--ink);grid-template-columns:2.4rem minmax(0,1fr) 1.2rem;align-items:baseline;gap:.05rem .5rem;padding:.6rem .2rem;text-decoration:none;display:grid}.bp-hbm-index-list a:hover .bp-hbm-t{color:var(--accent-ink)}.bp-hbm-no{font-family:var(--mono);color:var(--muted);grid-row:1/span 2;font-size:.74rem}.bp-hbm-t{font-size:.92rem;font-weight:700}.bp-hbm-l{color:var(--muted);grid-column:2;font-size:.78rem;line-height:1.6}.bp-hbm-a{color:var(--accent-ink);text-align:end;grid-area:1/3/span 2;font-size:.8rem}.bp-hbm-sec{padding-block:2rem 0}.bp-hbm-sec>h2,.bp-hbm-art-sec>h2{border-bottom:2px solid var(--accent);margin:0 0 .9rem;padding-block-end:.45rem;font-size:1.12rem;line-height:1.6;display:inline-block}.prose{max-width:48rem}.prose p{margin:0 0 1rem}.prose h2{margin:1.6rem 0 .7rem;font-size:1.05rem}.prose h3{margin:1.2rem 0 .5rem;font-size:.98rem}.bullets{margin:0 0 1.1rem;padding-inline-start:1.15rem}.bullets li{margin-block:.3rem}.kv{border-top:1px solid var(--line);margin:0 0 1.1rem}.kv-row{border-bottom:1px solid var(--line);grid-template-columns:12rem minmax(0,1fr);gap:.15rem 1rem;padding:.55rem .1rem;display:grid}.kv-row dt{font-size:.84rem;font-weight:700;line-height:1.7}.kv-row dd{margin:0;font-size:.9rem;line-height:1.8}@media (width<=40rem){.kv-row{grid-template-columns:minmax(0,1fr)}.kv-row dt{color:var(--muted)}}.tablewrap{-webkit-overflow-scrolling:touch;margin:0 0 1.2rem;overflow-x:auto}.datatable{border-collapse:collapse;width:100%;font-size:.84rem;line-height:1.65}.datatable caption{caption-side:top;text-align:start;color:var(--muted);padding-block-end:.35rem;font-size:.78rem}.datatable th,.datatable td{border-bottom:1px solid var(--line);text-align:start;vertical-align:top;padding:.4rem .55rem}.datatable thead th{background:var(--panel);border-bottom:1px solid var(--ink);white-space:nowrap;font-size:.78rem;font-weight:700}.datatable tbody tr:nth-child(2n){background:color-mix(in srgb, var(--panel) 55%, transparent)}.tablehint{color:var(--muted);margin:-.2rem 0 .9rem;font-size:.74rem;display:none}@media (width<=35rem){.tablewrap[data-cols="4"] .datatable,.tablewrap[data-cols="5"] .datatable{min-width:34rem}.datatable th,.datatable td{padding:.35rem .4rem}.tablehint{display:block}}.linklist{border-top:1px solid var(--line);margin:0 0 1.2rem;padding:0;list-style:none}.linklist li{border-bottom:1px solid var(--line)}.linklist a{color:var(--ink);padding:.6rem .2rem;text-decoration:none;display:block}.link-label{color:var(--accent-ink);font-size:.9rem;font-weight:700}.link-tag{background:var(--accent-fill);color:var(--on-accent);vertical-align:.08em;margin-inline-start:.45rem;padding:.02rem .35rem;font-size:.66rem;font-weight:700;line-height:1.6;display:inline-block}.link-note{color:var(--muted);margin-block-start:.1rem;font-size:.78rem;line-height:1.65;display:block}.bp-hbm-art-head{padding-block:1.1rem .4rem}.bp-hbm-art-kicker{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 .35rem;font-size:.7rem}.bp-hbm-art-head h1{letter-spacing:-.01em;margin:0 0 .6rem;font-size:clamp(1.45rem,3.4vw,2.05rem);line-height:1.45}.bp-hbm-art-lead{max-width:46rem;color:var(--muted);margin:0;font-size:.95rem;line-height:1.9}.bp-hbm-art-meta{border-top:1px solid var(--line);font-family:var(--mono);color:var(--muted);flex-wrap:wrap;gap:.2rem 1rem;margin:.9rem 0 0;padding-block-start:.55rem;font-size:.72rem;display:flex}.bp-hbm-toc{padding-block:1.1rem 0}.bp-hbm-toc ol{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.1rem 1rem;margin:0;padding:0;list-style:none;display:grid}.bp-hbm-toc li a{color:var(--muted);border-bottom:1px dotted var(--line);padding:.22rem 0;font-size:.84rem;text-decoration:none;display:block}.bp-hbm-toc li a:hover{color:var(--ink)}.bp-hbm-art-body{padding-block:1.6rem 0}.bp-hbm-art-sec{padding-block:1.1rem 0}.bp-hbm-art-text{max-width:48rem}.bp-hbm-more{border-top:2px solid var(--ink);margin-block:2.4rem 0;padding-block:1.1rem 0}.bp-hbm-more ul{flex-wrap:wrap;gap:.3rem 1.4rem;margin:0;padding:0;font-size:.86rem;list-style:none;display:flex}.bp-hbm-filter{background:var(--panel);border-left:3px solid var(--accent);flex-wrap:wrap;align-items:center;gap:.5rem .9rem;padding:.7rem .85rem;display:flex}.bp-hbm-filter-label{flex:14rem}.bp-hbm-filter input{border:1px solid var(--line);background:var(--ground);width:100%;color:var(--ink);font-family:var(--font);padding:.45rem .6rem;font-size:.88rem;line-height:1.6}.bp-hbm-filter-count{font-family:var(--mono);color:var(--muted);margin:0;font-size:.74rem}.bp-hbm-calc{background:var(--panel);border-top:3px solid var(--accent);margin-block:2rem 0;padding:1.1rem 1rem 1.2rem}.bp-hbm-calc h2{margin:0 0 .6rem;font-size:1.05rem}.bp-hbm-calc-hint{max-width:46rem;color:var(--muted);margin:0 0 1rem;font-size:.84rem;line-height:1.85}.bp-hbm-calc-grid{grid-template-columns:minmax(0,1fr);gap:1.1rem;display:grid}@media (width>=48rem){.bp-hbm-calc-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}.bp-hbm-calc-field{margin-block-end:.6rem;font-size:.82rem;display:block}.bp-hbm-calc-field span{color:var(--muted);display:block}.bp-hbm-calc-field select{border:1px solid var(--line);background:var(--ground);width:100%;color:var(--ink);font-family:var(--font);margin-block-start:.15rem;padding:.4rem .5rem;font-size:.85rem}.bp-hbm-calc-checks{border:1px solid var(--line);background:var(--ground);margin:.4rem 0 0;padding:.6rem .7rem;font-size:.82rem}.bp-hbm-calc-checks legend{color:var(--muted);padding-inline:.3rem;font-size:.78rem}.bp-hbm-calc-checks label{padding-block:.12rem;display:block}.bp-hbm-calc-checks input{margin-inline-end:.35rem}.bp-hbm-calc-out{display:none}html.js .bp-hbm-calc-out{display:block}.bp-hbm-calc-read{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:0 0 .8rem;display:grid}.bp-hbm-calc-read>div{background:var(--ground);border:1px solid var(--line);padding:.55rem .65rem}.bp-hbm-calc-read dt{color:var(--muted);font-size:.72rem}.bp-hbm-calc-read dd{margin:.1rem 0 0;font-size:.8rem}.bp-hbm-calc-read b{font-family:var(--mono);font-size:1.15rem;line-height:1.4}.bp-hbm-calc-match{margin:0;font-size:.85rem;line-height:1.8}.bp-hbm-calc-match b{color:var(--accent-ink)}.bp-hbm-calc-warn{min-height:1.4em;color:var(--warn);margin:.4rem 0 0;font-size:.8rem;line-height:1.7}.bp-hbm-err-crumbs{color:var(--muted);gap:.35rem;margin-block:1.1rem 0;font-size:.78rem;display:flex}
