:root{--ground:#fff;--surface:#fff;--surface-2:#f6f6f3;--zone:#fafaf8;--ink:#14181c;--ink-2:#585c62;--ink-3:#8a8880;--rule:#e4e3dc;--rule-strong:#c8c6ba;--accent:#1c3f5e;--accent-soft:#e7eef4;--on-accent:#fdfdfb;--sa:#2a78d6;--sb:#eb6834;--sc:#1baf7a;--sd:#eda100;--ramp-1:#2a78d6;--ramp-2:#86b6ef;--pos:#006300;--flag:#8a5a00;--flag-bg:#fdf3dd;--serif:"BIZ UDPMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;--sans:"BIZ UDPGothic", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif;--num:"IBM Plex Sans Condensed", "Helvetica Neue", Arial, sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#0d0d0d;--surface:#1a1a19;--surface-2:#232321;--zone:#151514;--ink:#fff;--ink-2:#c3c2b7;--ink-3:#8b8a82;--rule:#2c2c2a;--rule-strong:#42423e;--accent:#93bedd;--accent-soft:#1d2b36;--on-accent:#0d0d0d;--sa:#3987e5;--sb:#d95926;--sc:#199e70;--sd:#c98500;--ramp-1:#3987e5;--ramp-2:#9ec5f4;--pos:#0ca30c;--flag:#e8c161;--flag-bg:#2a2313}}:root[data-theme=dark]{--ground:#0d0d0d;--surface:#1a1a19;--surface-2:#232321;--zone:#151514;--ink:#fff;--ink-2:#c3c2b7;--ink-3:#8b8a82;--rule:#2c2c2a;--rule-strong:#42423e;--accent:#93bedd;--accent-soft:#1d2b36;--on-accent:#0d0d0d;--sa:#3987e5;--sb:#d95926;--sc:#199e70;--sd:#c98500;--ramp-1:#3987e5;--ramp-2:#9ec5f4;--pos:#0ca30c;--flag:#e8c161;--flag-bg:#2a2313}*{box-sizing:border-box}html,body{margin:0}body{background:var(--ground);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.75}.n,.num{font-family:var(--num);font-variant-numeric:tabular-nums;letter-spacing:.01em}a{color:var(--accent)}button:focus-visible,input:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--sa);outline-offset:2px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wrap{max-width:1120px;margin:0 auto;padding-inline:24px}.tag{font-family:var(--num);letter-spacing:.06em;background:var(--flag-bg);color:var(--flag);border:1px solid;border-radius:2px;padding:1px 6px;font-size:10.5px;font-weight:600;display:inline-block}.tag.ok{background:var(--accent-soft);color:var(--accent)}.mini{font-family:var(--num);letter-spacing:.05em;color:var(--ink-3);border:1px solid var(--rule-strong);border-radius:2px;margin-left:3px;padding:0 4px;font-size:10px;font-weight:600}.btn{font-family:var(--sans);cursor:pointer;background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);border-radius:2px;padding:8px 15px;font-size:13px;font-weight:700}.btn:hover{opacity:.85}.btn-g{color:var(--accent);border-color:var(--rule-strong);background:0 0;font-weight:400}section{border-bottom:1px solid var(--rule);padding-block:34px}.sec-head{flex-wrap:wrap;align-items:baseline;gap:13px;margin-bottom:5px;display:flex}.sec-no{font-family:var(--num);color:var(--ink-3);letter-spacing:.14em;font-size:12px;font-weight:600}h2{font-family:var(--serif);letter-spacing:.03em;margin:0;font-size:20px;font-weight:700}.sec-sub{color:var(--ink-2);max-width:66ch;margin:0 0 22px;font-size:13px}.sec-note{background:var(--surface-2);border:1px solid var(--rule);margin-top:16px;padding:14px 16px}.sec-note p{color:var(--ink-2);margin:0;font-size:12.5px;line-height:1.75}.sec-note p+p{margin-top:8px}.sec-note b{color:var(--ink)}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (width<=700px){section{padding-block:28px}h2{font-size:18px}}@media (width<=520px){.wrap{padding-inline:16px}}.notice{background:var(--flag-bg);color:var(--flag);border-bottom:1px solid var(--rule);font-size:12.5px;line-height:1.6}.notice>div{flex-wrap:wrap;align-items:baseline;gap:10px;padding-block:9px;display:flex}.notice b{letter-spacing:.04em;font-weight:700}#app{padding-block:0 72px}header.co{border-bottom:2px solid var(--ink);padding-block:34px 24px}.co-row{flex-wrap:wrap;gap:34px;display:flex}.co-one{border-left:3px solid var(--sa);flex:300px;min-width:0;padding-left:14px}.co-one.b{border-left-color:var(--sb)}.co-one.hint{border-left-color:var(--rule-strong);opacity:.75}.co-name{font-family:var(--serif);text-wrap:balance;letter-spacing:.02em;margin:0;font-size:clamp(25px,4vw,36px);font-weight:700;line-height:1.2}.co-sub{color:var(--ink-3);letter-spacing:.08em;margin-top:5px;font-size:12.5px}.co-tags{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.tg{border:1px solid var(--rule-strong);color:var(--ink-2);border-radius:2px;padding:2px 8px;font-size:11.5px}.tg.pri{background:var(--accent-soft);color:var(--accent);border-color:currentColor}.tg.demo{background:var(--flag-bg);color:var(--flag);border-color:currentColor}.cov{color:var(--ink-3);align-items:center;gap:8px;margin-top:11px;font-size:11.5px;display:flex}.covbar{background:var(--surface-2);border:1px solid var(--rule);border-radius:3px;flex:0 0 76px;height:5px;overflow:hidden}.covbar i{background:var(--accent);height:100%;display:block}.cards{grid-template-columns:1fr 1fr;gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--rule);flex-direction:column;gap:11px;padding:20px;display:flex}.card-h{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.card-t{letter-spacing:.03em;margin:0;font-size:13px;font-weight:700}.card-p{color:var(--ink);margin:0;font-size:13.5px;line-height:1.85}.card-p.gap{color:var(--flag)}.card-f{color:var(--ink-3);border-top:1px solid var(--rule);margin:0;padding-top:9px;font-size:11.5px}.chart-card{background:var(--surface);border:1px solid var(--rule);padding:20px}.chart-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.chart-t{margin:0;font-size:13.5px;font-weight:700}.chart-u{color:var(--ink-3);letter-spacing:.03em;margin:3px 0 0;font-size:11.5px}.ctrl{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.ctrl label{letter-spacing:.06em;color:var(--ink-3);margin-bottom:5px;font-size:11px;display:block}select{font-family:var(--sans);background:var(--surface);color:var(--ink);border:1px solid var(--rule-strong);border-radius:2px;max-width:100%;padding:8px 10px;font-size:14px}svg{width:100%;max-width:100%;height:auto;display:block;overflow:visible}.t-ax{font-family:var(--num);fill:var(--ink-3);font-variant-numeric:tabular-nums;font-size:11.5px}.t-cat{font-family:var(--num);fill:var(--ink-2);font-variant-numeric:tabular-nums;font-size:11.5px}.t-val{font-family:var(--num);fill:var(--ink);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.bar{cursor:pointer}.bar:hover{opacity:.8}.legend{border-top:1px solid var(--rule);flex-wrap:wrap;gap:18px;margin-top:13px;padding-top:12px;display:flex}.lg{color:var(--ink-2);align-items:center;gap:7px;font-size:12.5px;display:flex}.sw{border-radius:2px;flex:none;width:11px;height:11px}.donuts{grid-template-columns:1fr 1fr;gap:16px;display:grid}.dwrap{flex-wrap:wrap;align-items:center;gap:20px;margin-top:16px;display:flex}.dsvg{flex:0 0 140px;max-width:140px}.dlist{flex-direction:column;flex:150px;gap:10px;min-width:140px;display:flex}.drow{align-items:baseline;gap:9px;display:flex}.dlab{flex:1;font-size:13px}.dpct{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.dval{font-family:var(--num);color:var(--ink-3);font-size:11.5px;font-weight:400;display:block}.plainseg{color:var(--ink-2);font-size:13px}.picker{border:1px solid var(--rule);background:var(--zone);margin-bottom:16px;padding:0}.picker>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-size:13px;font-weight:700;list-style:none;display:flex}.picker>summary::-webkit-details-marker{display:none}.picker>summary .chev{font-family:var(--num);color:var(--ink-3);font-size:12px;font-weight:400}.picker[open]>summary{border-bottom:1px solid var(--rule)}.picker-body{padding:16px 18px}.pick-h{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.pick-h p{color:var(--ink-3);margin:0;font-size:12.5px}.pgrid{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:16px;display:grid}.pgroup h4{letter-spacing:.07em;color:var(--ink-3);border-bottom:1px solid var(--rule);margin:0 0 7px;padding-bottom:5px;font-size:11px;font-weight:400}.pgroup label{cursor:pointer;align-items:baseline;gap:7px;padding:3px 0;font-size:13px;line-height:1.5;display:flex}.pgroup input{accent-color:var(--sa);flex:none;margin:0;position:relative;top:2px}.pgroup label:hover{color:var(--sa)}.scrollhint{color:var(--ink-3);text-align:center;margin:0 0 7px;font-size:11.5px;display:none}.tscroll{border:1px solid var(--rule);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--rule);white-space:nowrap;padding:9px 12px;font-size:13px}thead th{font-family:var(--num);color:var(--ink-3);text-align:right;border-bottom:1px solid var(--rule-strong);font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:500}thead th:first-child{text-align:left;font-family:var(--sans)}tbody th{text-align:left;color:var(--ink-2);background:var(--surface);border-right:1px solid var(--rule-strong);z-index:1;font-weight:400;position:sticky;left:0}td{text-align:right;font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:500}td.na{color:var(--ink-3);font-weight:400}td.drv{color:var(--flag)}tr.co-b th,tr.co-b td{background:var(--surface-2)}.hcgrid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.hcstats{border-top:1px solid var(--rule);border-left:1px solid var(--rule);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0;margin-top:16px;display:grid}.hcstat{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:16px 18px}.hcstat .l{color:var(--ink-2);letter-spacing:.03em;margin-bottom:7px;font-size:11.5px;display:block}.hcstat .v{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:27px;font-weight:600;line-height:1;display:block}.hcstat .v small{font-family:var(--sans);color:var(--ink-2);margin-left:4px;font-size:12px;font-weight:400}.hcstat .s{color:var(--ink-3);margin-top:7px;font-size:11.5px;display:block}.hcstat.na .v{color:var(--ink-3);font-size:17px}.srcs{padding-block:32px 0}.srcs h3{font-family:var(--serif);letter-spacing:.03em;margin:0 0 4px;font-size:15px}.srcs .lede{color:var(--ink-2);max-width:64ch;margin:0 0 16px;font-size:12.5px}ol.sl{counter-reset:s;border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}ol.sl li{counter-increment:s;border-bottom:1px solid var(--rule);color:var(--ink-2);gap:12px;padding:9px 0;font-size:12.5px;line-height:1.65;display:flex}ol.sl li:before{content:"[" counter(s) "]";font-family:var(--num);color:var(--accent);font-variant-numeric:tabular-nums;flex:0 0 28px;font-weight:600}.foot{color:var(--ink-3);padding-top:24px;font-size:12px;line-height:1.8}code{font-family:var(--num);background:var(--surface-2);border-radius:2px;padding:1px 4px;font-size:.95em}.sug{background:var(--surface);border:1px solid var(--rule-strong);z-index:40;border-radius:2px;max-height:260px;margin-top:3px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 22px #00000024}.sug button{text-align:left;border:none;border-bottom:1px solid var(--rule);cursor:pointer;width:100%;color:var(--ink);font-family:var(--sans);background:0 0;align-items:baseline;gap:10px;padding:10px 12px;font-size:14px;display:flex}.sug button:last-child{border-bottom:none}.sug button:hover,.sug button.on{background:var(--accent-soft)}.sug .c{font-family:var(--num);color:var(--ink-3);font-variant-numeric:tabular-nums;flex:0 0 38px;font-size:12.5px}.sug .nm{flex:1}.nores{color:var(--ink-3);padding:11px 12px;font-size:13px}#tip{pointer-events:none;opacity:0;z-index:60;background:var(--ink);color:var(--ground);white-space:nowrap;border-radius:3px;padding:8px 11px;font-size:12.5px;line-height:1.5;transition:opacity .1s;position:fixed;box-shadow:0 4px 14px #00000038}#tip .tv{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}@media (width<=900px){.cards,.donuts,.hcgrid{grid-template-columns:1fr}.pgrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}}@media (width<=700px){.scrollhint{display:block}th,td{padding:8px 10px;font-size:12.5px}.co-row{gap:18px}.card{padding:17px}.hcstat{padding:14px 16px}.hcstat .v{font-size:23px}}@media (width<=520px){.pgrid{grid-template-columns:1fr 1fr;gap:12px}.pgroup label{font-size:12.5px}.picker>summary,.picker-body{padding-inline:14px}.chart-card{padding:15px}}
