:root{--bg:#eef1f5;--surface:#ffffff;--surface-2:#e3e8ef;--panel:#16202c;--ink:#1d2734;--muted:#6a7585;--line:#dde3ea;--line-2:#c8d1dc;--accent:#127d8c;--accent-d:#0d626e;--accent-soft:#d6ecef;--navy:#1f9d6b;--navy-d:#177a52;--navy-soft:#d8f0e4;--gold:#d99021;--gold-soft:#f8ead0;--ok:#1f9d6b;--ok-soft:#d8f0e4;--warn:#d24b3e;--warn-soft:#faddd9;--down:#d24b3e;--display:"Saira Condensed","Zen Kaku Gothic New",sans-serif;--sans:"Noto Sans JP",sans-serif;--mono:"Roboto Mono","SFMono-Regular",ui-monospace,monospace;--radius:6px;--shadow:0 1px 2px rgba(22,32,44,.06),0 7px 22px rgba(22,32,44,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.85;font-size:16px}a{color:var(--accent-d)}a:hover{text-decoration:underline}.container{max-width:1120px;margin:0 auto;padding:0 20px}h1,h2,h3,h4{font-family:var(--display);font-weight:600;line-height:1.25;color:var(--panel);letter-spacing:.01em}section{padding:32px 0}.site-header{position:sticky;top:0;z-index:50;background:#16202cf7;backdrop-filter:blur(8px);border-bottom:2px solid var(--accent)}.site-header .inner{max-width:1120px;margin:0 auto;padding:11px 20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.brand{font-family:var(--display);font-weight:600;font-size:22px;color:#fff;display:inline-flex;align-items:center;gap:9px;letter-spacing:.02em;text-transform:uppercase}.brand:hover{text-decoration:none}.brand:before{content:"";width:0;height:0;flex:none;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:11px solid var(--navy);position:relative;filter:drop-shadow(0 7px 0 var(--down))}.site-header nav{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap;font-size:14px;font-weight:600}.site-header nav a{color:#c2cdda;text-decoration:none}.site-header nav a:hover{color:#fff}.hero{padding:36px 0 14px}.hero .eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--accent-d);text-transform:uppercase}.hero h1{font-size:clamp(30px,5vw,52px);margin:.2em 0 .35em;font-weight:600;letter-spacing:.01em}.hero h1 .hl{color:var(--accent-d);position:relative}.hero h1 .hl:after{content:"";position:absolute;left:0;right:0;bottom:.02em;height:.22em;background:var(--accent-soft);z-index:-1}.hero .lead{font-size:16px;color:#46505e;max-width:780px}.hero-cta{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff;font:600 16px/1 var(--display);letter-spacing:.02em;padding:14px 28px;border-radius:6px;margin-top:18px;box-shadow:0 6px 18px #127d8c47;text-decoration:none;text-transform:uppercase}.hero-cta:hover{background:var(--accent-d);text-decoration:none}.kpis{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.kpi{background:var(--surface);border:1px solid var(--line-2);border-top:3px solid var(--accent);border-radius:5px;padding:11px 17px;box-shadow:var(--shadow)}.kpi .v{font-family:var(--display);font-weight:600;font-size:23px;color:var(--panel)}.kpi .l{font-size:11px;color:var(--muted);font-family:var(--mono)}.disc-strip{margin-top:16px;background:var(--warn-soft);border:1px solid #f0c4bd;border-radius:6px;padding:11px 15px;font-size:12.5px;color:#9c3527}.disc-strip b{color:#b03a2a}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:22px;background:var(--panel);border-radius:6px;overflow:hidden;box-shadow:var(--shadow)}.flow .step{padding:16px 18px;position:relative;border-right:1px solid #2a3645}.flow .step:last-child{border-right:none}.flow .step .n{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:4px;font-family:var(--mono);font-size:13px;font-weight:700;color:#fff;background:var(--accent)}.flow .step:nth-child(2) .n{background:var(--navy)}.flow .step:nth-child(3) .n{background:var(--gold)}.flow .step b{display:block;font-family:var(--display);font-weight:600;font-size:16px;margin:8px 0 3px;color:#fff;letter-spacing:.01em}.flow .step span{font-size:12px;color:#9aa6b4}.sec-head{display:flex;align-items:center;gap:12px;margin-bottom:8px;padding-bottom:8px;border-bottom:2px solid var(--panel)}.sec-head .no{font-family:var(--mono);font-size:12px;color:#fff;font-weight:500;background:var(--accent);border-radius:4px;padding:3px 9px}.sec-head h2{font-size:24px;margin:0;font-weight:600;letter-spacing:.01em}.sec-sub{color:var(--muted);font-size:14px;margin:0 0 18px}.toolbar{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);padding:14px 16px;margin:6px 0 18px;box-shadow:var(--shadow)}.toolbar h3{font-size:11px;margin:0 0 9px;font-family:var(--mono);letter-spacing:.05em;color:var(--muted);text-transform:uppercase}.chips{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.chip{font:600 13px/1 var(--sans);padding:8px 14px;border-radius:5px;border:1px solid var(--line-2);background:var(--surface-2);color:var(--ink);cursor:pointer}.chip:hover{border-color:var(--accent)}.chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}.scards{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:16px}.scard{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden;transition:transform .12s;border-top:3px solid var(--accent)}.scard:hover{transform:translateY(-2px)}.scard .top{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--panel)}.scard .top:before{content:"▲";font-size:9px;color:var(--navy);flex:none;text-shadow:0 8px 0 var(--down);line-height:1}.scard .rk{font-family:var(--mono);font-weight:700;color:var(--panel);background:#fff;width:28px;height:28px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;flex:none}.scard .rk.top3{background:var(--gold);color:#fff}.scard .nm{font-family:var(--display);font-weight:600;font-size:16px;flex:1;min-width:0;line-height:1.25;letter-spacing:.01em}.scard .nm a{color:#fff;text-decoration:none}.scard .ty{font:600 10px/1.4 var(--sans);padding:3px 8px;border-radius:3px;white-space:nowrap;border:1px solid #34404f;background:#22303f;color:#a9d8df}.scard .body{padding:14px 16px;display:flex;flex-direction:column;gap:11px;flex:1}.scard .catch{font-size:12.5px;color:var(--muted);margin:0;line-height:1.6}.stamp{display:inline-flex;align-items:baseline;gap:6px;font:700 12px/1 var(--sans);padding:6px 11px;border-radius:4px;border:1px solid var(--accent);color:var(--accent-d);background:var(--accent-soft)}.stamp b{font-family:var(--mono);font-size:18px;font-weight:700}.stamp.both{border-color:var(--gold);color:var(--gold);background:var(--gold-soft)}.stamp.na{border-color:var(--line-2);color:var(--muted);background:var(--surface-2)}.metrics{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:5px;overflow:hidden}.metrics .m{background:var(--surface);padding:9px 8px;text-align:center}.metrics .m .l{font-family:var(--mono);font-size:9px;color:var(--muted);text-transform:uppercase;display:block}.metrics .m .v{font-weight:700;font-size:12px;margin-top:2px;display:block;line-height:1.3;color:var(--panel);font-family:var(--mono)}.metrics .m .v.free{color:var(--ok)}.badges{display:flex;gap:6px;flex-wrap:wrap}.pill{font:600 10.5px/1.5 var(--sans);padding:3px 9px;border-radius:3px;border:1px solid}.pill.on{background:var(--ok-soft);color:var(--navy-d);border-color:#aadcc4}.pill.off{background:var(--surface-2);color:var(--muted);border-color:var(--line-2)}.facts2{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12.5px}.facts2 .f{background:var(--surface-2);border-radius:4px;padding:8px 11px}.facts2 .f b{display:block;font-family:var(--mono);font-size:10px;color:var(--muted);font-weight:400;margin-bottom:1px}.facts2 .f span{font-weight:700;font-size:12px}.facts2 .f span.req{font-weight:500;color:var(--muted)}.iscore{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.iscore .k{width:110px;flex:none;font-family:var(--mono)}.scard .foot{display:flex;gap:8px;padding:13px 16px;border-top:1px solid var(--line);margin-top:auto}.btn{display:inline-block;font:700 13px/1 var(--sans);padding:11px 16px;border-radius:5px;text-align:center;text-decoration:none}.btn.go{background:var(--accent);color:#fff;border:1px solid var(--accent);flex:1}.btn.go:hover{background:var(--accent-d);color:#fff;text-decoration:none}.btn.sub{background:transparent;color:var(--panel);border:1px solid var(--line-2)}.btn.sub:hover{border-color:var(--panel);text-decoration:none}.sbar{display:inline-flex;align-items:center;gap:7px;min-width:0;flex:1}.sbar-track{flex:1;height:6px;background:var(--surface-2);border-radius:2px;overflow:hidden;min-width:44px;border:1px solid var(--line)}.sbar-fill{display:block;height:100%;background:linear-gradient(90deg,var(--navy),var(--accent))}.sbar-num{font-family:var(--mono);font-size:11px;color:var(--ink);font-weight:500}.sbar-na{font-family:var(--mono);color:var(--muted);font-size:11px}.ftags{display:flex;gap:6px;flex-wrap:wrap}.tag{display:inline-block;font:600 11px/1.6 var(--sans);padding:2px 9px;border-radius:3px;background:var(--surface-2);color:var(--muted);border:1px solid var(--line-2)}.tag.a{background:var(--accent-soft);color:var(--accent-d);border-color:#aadbe2}.tag.g{background:var(--gold-soft);color:#9c6614;border-color:#ecd4a6}.mx-wrap{overflow-x:auto;border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow)}.mx{width:100%;border-collapse:collapse;font-size:13px;background:var(--surface);min-width:1000px}.mx th,.mx td{padding:9px 10px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:center;vertical-align:top}.mx thead th{background:var(--panel);color:#eef3f8;font-family:var(--display);font-weight:600;position:sticky;top:0;font-size:13px;letter-spacing:.02em}.mx tbody th{background:var(--surface-2);text-align:left;font-family:var(--sans);font-weight:700;font-size:12.5px}.mx .y{color:var(--ok);font-weight:700}.mx .n{color:#aab3c0}.mx td.mono{font-family:var(--mono);font-size:11px}.mx td.l{text-align:left}.grid{display:grid;gap:15px}.grid.c2{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}.grid.c3{grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}.card{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.card h3{font-size:17px;margin:0 0 6px;font-weight:600}.card p{font-size:13.5px;color:var(--muted);margin:0}.card .arrow{color:var(--accent-d);font-weight:700;font-size:13px;margin-top:8px;display:inline-block}.hubcard{display:flex;align-items:center;gap:13px;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);padding:15px 16px;box-shadow:var(--shadow);text-decoration:none}.hubcard:hover{text-decoration:none;border-color:var(--accent)}.hubcard .ic{width:42px;height:42px;border-radius:5px;background:var(--accent-soft);color:var(--accent-d);display:inline-flex;align-items:center;justify-content:center;font-size:21px;flex:none}.hubcard .tx b{display:block;font-family:var(--display);font-weight:600;font-size:16px;color:var(--panel)}.hubcard .tx span{font-size:12px;color:var(--muted)}.crumb{font-size:12.5px;color:var(--muted);font-family:var(--mono);margin:18px 0 10px}.crumb a{color:var(--muted)}.detail-head{background:var(--surface);border:1px solid var(--line-2);border-top:3px solid var(--accent);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);margin-bottom:20px}.detail-head h1{font-size:clamp(24px,4vw,34px);margin:.12em 0;font-weight:600;letter-spacing:.01em}.spec-table{width:100%;border-collapse:collapse;font-size:14px;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);overflow:hidden}.spec-table th,.spec-table td{text-align:left;padding:10px 13px;border-bottom:1px solid var(--line);vertical-align:top}.spec-table th{background:var(--surface-2);width:36%;font-weight:700;font-family:var(--sans)}.spec-table tr:last-child th,.spec-table tr:last-child td{border-bottom:none}.spec-table td.req{color:var(--muted);font-style:italic}.prose{max-width:790px}.prose p{margin:0 0 14px}.prose h2{font-size:22px;margin:30px 0 12px;border-bottom:2px solid var(--panel);padding-bottom:6px;font-weight:600}.prose h3{font-size:18px;margin:22px 0 8px;font-weight:600}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin:5px 0}.pros li::marker{content:"▲ "}.pros li{color:var(--navy-d)}.cons li::marker{content:"▼ "}.cons li{color:var(--warn)}.callout{background:var(--accent-soft);border-left:3px solid var(--accent);border-radius:0 6px 6px 0;padding:12px 16px;font-size:13.5px;margin:16px 0}.callout.warn{background:var(--warn-soft);border-color:var(--warn)}.callout.ok{background:var(--ok-soft);border-color:var(--ok)}.src{font-size:12px;color:var(--muted)}.src a{color:var(--muted);text-decoration:underline}.note{font-size:12.5px;color:var(--muted)}.tool{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.tool label{display:block;font-size:13px;font-weight:700;margin:12px 0 5px}.tool input,.tool select{width:100%;padding:11px 13px;border:1px solid var(--line-2);border-radius:5px;font-size:15px;background:var(--surface-2);font-family:var(--sans)}.tool .out{margin-top:20px;padding:20px;background:var(--panel);color:#eef3f8;border-radius:6px}.tool .out .big{display:flex;flex-wrap:wrap;gap:22px}.tool .out b{color:var(--gold);font-size:27px;font-family:var(--mono);font-weight:700}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field-row.c3{grid-template-columns:1fr 1fr 1fr}.field-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:13px}.cmp-index{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:10px}.cmp-index-card{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);padding:13px 15px;font-size:13px;box-shadow:var(--shadow);text-decoration:none}.cmp-index-card:hover{text-decoration:none;border-color:var(--accent)}.cix-a,.cix-b{font-weight:700;color:var(--panel)}.cix-vs{font-family:var(--mono);color:var(--accent-d);font-weight:500;font-size:11px}.anchor-nav{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 22px}.anchor-nav a{font:600 13px/1 var(--sans);padding:9px 14px;border:1px solid var(--line-2);border-radius:5px;background:var(--surface);color:var(--panel);text-decoration:none}.anchor-nav a:hover{border-color:var(--accent);text-decoration:none}.faq details{border-bottom:1px solid var(--line);padding:10px 0}.faq summary{font-weight:700;font-family:var(--display);font-size:16px;cursor:pointer;letter-spacing:.01em}.faq p{margin:6px 0 0;color:var(--muted);font-size:14px}.site-footer{background:var(--panel);color:#9aa6b4;margin-top:48px;padding:34px 0;font-size:13px}.site-footer .container>strong{font-family:var(--display);color:#fff;font-size:18px;display:block;margin-bottom:8px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.site-footer p{margin:8px 0;color:#90a6}.site-footer p{color:#8e9bab}.site-footer a{color:var(--accent-soft)}.site-footer .disclaimer{font-size:11.5px;color:#73808f;border-top:1px solid #2a3645;padding-top:12px;margin-top:14px}.site-footer .updated{font-family:var(--mono);font-size:11.5px}@media(max-width:760px){.field-row,.field-row.c3,.field-grid,.flow{grid-template-columns:1fr}.flow .step{border-right:none;border-bottom:1px solid #2a3645}.site-header nav{width:100%;margin-left:0}}
