*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#f8fafc;color:#10233f;font-family:Inter,-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif;font-size:16px;line-height:1.8}a{color:#174ad5;text-underline-offset:4px}header{max-width:1200px;margin:auto;padding:22px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ced8e6}.brand{font-weight:800;color:#10233f;text-decoration:none;letter-spacing:.04em}.brand span{font-size:14px;font-weight:500;color:#51627c}nav{display:flex;gap:26px}nav a{font-size:14px;color:#304765;text-decoration:none}main{max-width:1200px;margin:auto;padding:0 32px}.intro{padding:54px 0 36px;position:relative}.eyebrow{color:#174ad5;font-size:14px;font-weight:700;letter-spacing:.08em}.eyebrow span{margin-left:24px;color:#60718a;font-family:monospace}h1{font-size:clamp(34px,5vw,60px);letter-spacing:-.045em;line-height:1.25;margin:22px 0}h2{font-size:26px;letter-spacing:-.025em;margin:0}h3{font-size:20px;margin:0 0 10px}.lead{max-width:720px;color:#4a5e79;font-size:18px}.topology{display:flex;gap:30px;align-items:center;padding:20px 0}.topology span{font-weight:700}.topology small{display:block;font-weight:400;color:#627189;font-size:13px}.topology strong{color:#174ad5;font-size:17px}section{padding-bottom:42px;scroll-margin-top:24px}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px}.section-head>span{font-size:14px;color:#60718a}.metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:3px solid #174ad5;background:white;box-shadow:0 5px 25px #15376708}.metrics article{padding:26px 28px;border-right:1px solid #dbe2ed}.metrics article:last-child{border:0}.metrics p{font-size:14px;margin:0 0 12px;color:#51627c}.value{font-size:48px;font-weight:750;line-height:1.15;color:#164bde;letter-spacing:-.05em;font-variant-numeric:tabular-nums;margin:16px 0}.value small{font-size:18px;letter-spacing:0;font-weight:500}.result{font-size:14px;color:#246345;border-bottom:1px solid #afd1bf}.note{font-size:14px;color:#60718a;margin-top:16px}.panel{background:white;border:1px solid #dbe2ed;padding:26px;margin:20px 0}.panel img{width:100%;height:auto;display:block}.cols{display:grid;grid-template-columns:1fr 1fr;gap:24px}.finding{padding:24px 0;border-top:1px solid #cbd6e5}.finding .num{color:#174ad5;font-family:monospace;font-size:14px}.finding p{color:#4a5e79}.callout{border-left:4px solid #174ad5;padding:18px 24px;background:#edf3ff}.filters{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0}label{font-size:14px;color:#51627c}select{display:block;border:1px solid #aebdd2;background:white;color:#10233f;border-radius:4px;font:inherit;font-size:16px;padding:9px 36px 9px 12px;margin-top:4px}.table-wrap{overflow-x:auto;background:white;border:1px solid #dbe2ed}table{border-collapse:collapse;width:100%;font-size:14px;white-space:nowrap}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #e1e7f0}th{background:#edf2fa;color:#475e7c;font-weight:600}td.num{text-align:right;font-variant-numeric:tabular-nums}tr:last-child td{border:0}.badge{font-size:13px;border-radius:3px;padding:3px 7px;background:#edf2fa;color:#47617c}.badge.good{background:#e9f5ed;color:#22613d}.badge.bad{background:#ffebe6;color:#a3321b}.downloads{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-block;border:1px solid #b8c8e1;padding:10px 17px;text-decoration:none;border-radius:4px;background:white;font-size:14px;font-weight:600}.button.primary{background:#174ad5;color:white;border-color:#174ad5}details{padding:16px 0;border-top:1px solid #d6dfec}summary{cursor:pointer;font-weight:600}details p,li{color:#4a5e79}footer{max-width:1200px;margin:30px auto 0;padding:24px 32px;border-top:1px solid #ced8e6;display:flex;justify-content:space-between;color:#667994;font-size:13px}a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #efae00;outline-offset:4px}@media(max-width:720px){header{padding:18px 20px;align-items:flex-start;gap:15px}.brand span{display:block;font-size:12px}nav{gap:14px}main{padding:0 20px}.intro{padding-top:30px}.lead{font-size:16px}.metrics{grid-template-columns:1fr}.metrics article{border-right:0;border-bottom:1px solid #dbe2ed;padding:22px}.value{font-size:44px}.section-head{display:block}.section-head>span{display:block;margin-top:8px}.cols{grid-template-columns:1fr;gap:0}.topology{gap:18px;font-size:14px}.panel{padding:10px}h2{font-size:23px}footer{padding:22px 20px;display:block}footer span{display:block}.eyebrow{font-size:12px}}