.phero{background:linear-gradient(180deg,#eef2fb,#fff);border-bottom:1px solid var(--line);padding:2.4rem 0 1.8rem}.phero h1{margin-bottom:.5rem}.crumbs{font-size:var(--fs-sm);color:var(--muted);margin:0 0 .7rem}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--brand)}.crumbs .ico{width:.85em;height:.85em;vertical-align:-.05em}main .body{padding:2rem 0 3.5rem}.table-wrap{overflow-x:auto;margin:0 0 1.3rem;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff}.table-wrap:focus-visible{box-shadow:var(--ring);outline:0}.btn.ghost{background:#fff;color:var(--fg);border-color:var(--line)}.btn.ghost:hover{background:var(--soft);color:var(--brand);box-shadow:none}.eq{color:var(--muted);font-size:var(--fs-xs);font-weight:400;white-space:nowrap}article .content>h2:first-child{margin-top:.5rem}.content td{font-variant-numeric:tabular-nums}@media(max-width:640px){.content td[data-l]::before{content:attr(data-l);display:block;font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}}.content .table-wrap>table:not([class]) tbody tr:nth-child(even)>*{background:#fafbfe}.content .table-wrap>table:not([class]) td:first-child{font-weight:600;color:var(--fg)}.content .table-wrap>table:not([class]) td{line-height:1.5}.content .table-wrap>table:not([class]) th{white-space:normal;vertical-align:bottom}.content .table-wrap>table:not([class]) :is(th,td){min-width:8.5rem}@media(max-width:640px){.content .table-wrap>table:not([class]),.content .table-wrap>table:not([class]) tbody,.content .table-wrap>table:not([class]) tr,.content .table-wrap>table:not([class]) td{display:block;min-width:0}}@media(max-width:640px){.content .table-wrap>table:not([class]) thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}@media(max-width:640px){.content .table-wrap>table:not([class]) td{padding:.2rem .9rem .35rem;border:0}}@media(max-width:640px){.content .table-wrap>table:not([class]) td:first-child{padding-top:.75rem;font-size:var(--fs-md)}}@media(max-width:640px){.content .table-wrap>table:not([class]) td:last-child{padding-bottom:.8rem}}@media(max-width:640px){.content .table-wrap>table:not([class]) tr+tr{border-top:1px solid var(--line)}}.illus{margin:0 0 1.6rem;padding:1.1rem 1.25rem;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg)}.illus figcaption{font-weight:700;margin-bottom:.9rem}.il-panels{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.il-panel{background:var(--soft);border-radius:var(--r-lg);padding:1rem}.illus .il-h{font-weight:700;font-size:var(--fs-sm);margin:0 0 .8rem}.illus .il-chain{list-style:none;margin:0;padding:0}.illus .il-node{position:relative;display:grid;grid-template-columns:2.5rem 1fr;gap:.75rem;margin:0;padding:0 0 1.1rem;font-size:var(--fs-sm);line-height:1.45}.illus .il-node:last-child{padding-bottom:0}.il-node:not(:last-child)::before{content:"";position:absolute;left:1.25rem;top:2.5rem;bottom:0;width:2px;margin-left:-1px;background:#c5cedd}.il-node.il-tun:not(:last-child)::before{width:6px;margin-left:-3px;border-radius:var(--r-sm);background:var(--go)}.il-ico{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#fff;border:1px solid var(--line);color:var(--brand)}.il-tun .il-ico{border-color:var(--go);color:var(--go-d)}.il-ico .ico{width:1.25rem;height:1.25rem}.il-node b{display:block;padding-top:.5rem}.il-sub{display:block;color:var(--muted);font-size:var(--fs-xs)}.illus .il-node p{margin:.25rem 0 0;font-size:inherit}.il-node p em{font-style:normal;font-weight:600;color:var(--muted)}.il-chip{display:inline-flex;align-items:center;gap:.3rem;margin-top:.35rem;padding:.1rem .55rem;border-radius:var(--r-lg);background:#e3f4ee;color:var(--go-d);font-size:var(--fs-xs);font-weight:600}.il-chip .ico{width:.9rem;height:.9rem}@media(max-width:44rem){.il-panels{grid-template-columns:1fr}}.iptool{background:var(--brand-l);border:1px solid #d5e0ff;border-radius:var(--r-lg);padding:1.25rem 1.4rem;margin:0 0 1.6rem}.iplabel{font-size:var(--fs-xs);font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--brand);margin:0 0 .2rem}.ipval{font:700 clamp(1.75rem,8vw,3rem)/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;margin:0;overflow-wrap:anywhere;min-height:1.2em}.ipval.v6{font-size:clamp(1.1rem,4.5vw,1.6rem)}.ipval[data-loading]{color:transparent;width:min(14ch,100%);border-radius:var(--r-sm);background:linear-gradient(90deg,var(--soft),var(--line),var(--soft))0 0/200% 100%;animation:ipsk 1.2s linear infinite}@keyframes ipsk{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.ipval[data-loading]{animation:none}}.iperr{margin:0 0 .8rem;color:var(--bad);font-weight:600}.iprow{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;margin:0 0 .8rem}.ipact{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .9rem;margin:0 0 1rem}.btn.go.txt{background:0 0;border:0;box-shadow:none;padding:0;min-height:2.75rem;color:var(--brand);font-weight:600;text-decoration:underline;text-underline-offset:.15em}.iptool dl{display:flex;flex-wrap:wrap;gap:.4rem 2rem;margin:0 0 1rem}.iptool dt{font-size:var(--fs-xs);color:var(--muted)}.iptool dd{margin:0;font-weight:600;min-height:1.65em}.ipcmp{margin:0 0 1rem;font-weight:600}.ipcmp-next{margin:-.5rem 0 1rem}.ipboth{margin-top:1.1rem;padding-top:1rem;border-top:1px solid #d5e0ff}.ipboth p{font-size:var(--fs-sm);margin:0 0 .8rem}.ipboth dl{margin:1rem 0 0}.ipboth dd{overflow-wrap:anywhere}.ipcmp.diff{color:var(--go)}.ipcmp.same{color:var(--muted)}.rtcnote{margin:0 0 1rem;font-size:var(--fs-sm);color:var(--muted)}.rtcv{margin:0 0 .9rem;font-weight:600}.rtcv.good,.rtcc.ok{color:var(--go)}.rtcv.wait,.rtcc.same{color:var(--muted)}.iptool dl.rtcl{display:block}.rtcl div{margin:0 0 .6rem}.rtcl dd{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-wrap:anywhere}.rtcc{margin:0 0 1rem;font-weight:600}.rtcc.leak{color:var(--bad)}.rtcv.warn{color:var(--warn)}.rtcv.warn::before,.rtcc.leak::before{--m:var(--i-alert)}.rtcv.good::before,.rtcc.ok::before{--m:var(--i-check)}.rtcl .dnsg dt{font-weight:700;font-size:var(--fs-md);color:var(--fg)}.rtcl .dnsg dd{font-family:inherit;font-size:var(--fs-sm);color:var(--muted)}.rtcl .dnsg details{margin:.2rem 0 0;padding:0;border:0;background:0 0;box-shadow:none}.rtcl .dnsg summary{cursor:pointer;color:var(--brand);min-height:1.5rem}.rtcl .dnsg ul{margin:.3rem 0 0;padding-left:1.1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}[data-dns-start]{margin:0 0 1rem}.tpaths{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;margin:0 0 2rem;font-size:var(--fs-sm)}.tpaths a{font-weight:600;min-height:1.5rem}.tpaths a::after{--m:var(--i-down);margin:0 0 0 .3em}.nexttest{margin:1rem 0 2rem}.toolnext{margin:0 0 2rem}.toolnext h2{margin:0 0 .6rem}.toolnext h3{margin:1.1rem 0 .7rem;font-size:var(--fs-lg)}.content .tn-list{list-style:none;padding:0;margin:0 0 .8rem;display:grid;gap:.6rem}.content .tn-list li{margin:0;padding:.8rem 1rem;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1rem}.content .tn-list li[hidden]{display:none}.tn-list li>div{flex:1 1 15rem;min-width:0}.tn-n,.tn-p{display:block}.tn-p{margin:.1rem 0}.tn-list small.src{display:block;color:var(--muted)}.tn-list small.src a{text-decoration:underline}.tsteps{list-style:none;counter-reset:ts;display:flex;flex-wrap:wrap;gap:.35rem .5rem;margin:0 0 1rem;padding:0;font-size:var(--fs-sm)}.tsteps li{counter-increment:ts;margin:0;display:flex;align-items:center}.tsteps li+li::before{--m:var(--i-chevron);margin:0 .5rem 0 0;background:var(--muted)}.tsteps a,.tsteps span{display:inline-flex;align-items:center;gap:.35rem;min-height:2rem;padding:.2rem .65rem;border:1px solid var(--line);border-radius:var(--r-pill);text-decoration:none;color:var(--fg-2);background:#fff}.tsteps a::before,.tsteps span::before{content:counter(ts);display:inline-grid;place-items:center;width:1.2rem;height:1.2rem;border-radius:50%;background:var(--soft);font-size:var(--fs-xs);font-weight:700}.tsteps a:hover{border-color:var(--brand);color:var(--brand)}.tsteps [aria-current] span{background:var(--navy);border-color:var(--navy);color:#fff;font-weight:600}.tsteps [aria-current] span::before{background:#fff;color:var(--navy)}@media(max-width:480px){.tsteps{font-size:var(--fs-xs);gap:.3rem}.tsteps li+li::before{margin-right:.3rem}.tsteps a,.tsteps span{padding:.15rem .5rem;gap:.25rem}.tsteps a::before,.tsteps span::before{width:1.05rem;height:1.05rem}}