:root{--content-width:1380px;--content-gutter:24px;--canvas:#fff;--surface:#fff;--surface-2:#f1f1ef;--header:#f1f1ef;--hover:#e8e8e6;--text:#19191b;--muted:#65656a;--faint:#6d6d74;--line:#cdcdca;--line-strong:#b9b9b6;--line-soft:#dededb;--inverse:#19191b;--on-inverse:#fff;--accent:#c6371c;--accent-hover:#a92c17;--accent-pressed:#8e2413;--accent-soft:#fff0ec;--accent-border:#c6371c;--on-accent:#fff;--focus:#c6371c;--link:#a92c17;--good:#087a5b;--good-fill:#16a477;--good-soft:#e8f7f1;--warn:#745b00;--warn-fill:#d5aa00;--warn-soft:#fff7d6;--bad:#b91f43;--bad-fill:#dc3158;--bad-soft:#fff0f3;--info:#356a9a;--radius:0;--mono:"JetBrains Mono", "SFMono-Regular", Menlo, Monaco, Consolas, "Liberation Mono", monospace;--sans:Inter, "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}html.dark{--canvas:#000;--surface:#0b0b0d;--surface-2:#101012;--header:#0b0b0d;--hover:#161619;--text:#d7d7d9;--muted:#aaaab0;--faint:#7d7d84;--line:#28282c;--line-strong:#3a3a3f;--line-soft:#1c1c20;--inverse:#d7d7d9;--on-inverse:#111;--accent:#ff5a36;--accent-hover:#ff7658;--accent-pressed:#dd4527;--accent-soft:#2d1510;--accent-border:#ff5a36;--on-accent:#111;--focus:#ff7658;--link:#ff7658;--good:#58d6a7;--good-fill:#35c995;--good-soft:#0d281f;--warn:#f4d35e;--warn-fill:#dcbc3d;--warn-soft:#2a240d;--bad:#ff718c;--bad-fill:#f05b78;--bad-soft:#32131d;--info:#b9d4ef}html[data-accent=violet]{--accent:#6d28d9;--accent-hover:#5b21b6;--accent-pressed:#4c1d95;--accent-soft:#f2ecff;--accent-border:#8b5cf6;--on-accent:#fff;--focus:#7c3aed;--link:#5b21b6}html.dark[data-accent=violet]{--accent:#a78bfa;--accent-hover:#c4b5fd;--accent-pressed:#8b5cf6;--accent-soft:#211638;--accent-border:#7c3aed;--on-accent:#09090b;--focus:#c4b5fd;--link:#c4b5fd}html[data-accent=cobalt]{--accent:#155eef;--accent-hover:#004eeb;--accent-pressed:#0040b8;--accent-soft:#e8eeff;--accent-border:#155eef;--on-accent:#fff;--focus:#155eef;--link:#004eeb}html.dark[data-accent=cobalt]{--accent:#5b8cff;--accent-hover:#7ba5ff;--accent-pressed:#3d6fe8;--accent-soft:#101b36;--accent-border:#5b8cff;--on-accent:#000;--focus:#76a2ff;--link:#c4d5ff}html[data-accent=mono]{--accent:var(--inverse);--accent-hover:var(--text);--accent-pressed:var(--muted);--accent-soft:var(--surface-2);--accent-border:var(--line-strong);--on-accent:var(--on-inverse);--focus:var(--text);--link:var(--text)}*{box-sizing:border-box}html,body{min-height:100%}html{background:var(--canvas)}body{background:var(--canvas);min-height:100vh;color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;font-size:14px;line-height:1.45;display:flex;overflow-x:hidden}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:0}.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}.identity-label{vertical-align:middle;align-items:center;gap:7px;min-width:0;display:inline-flex}.identity-label>span{min-width:0}.vendor-icon,.country-flag,.country-fallback{flex:none;display:block}.vendor-icon,.country-fallback{color:var(--muted)}.vendor-icon.icon-sm,.country-fallback.icon-sm{width:15px;height:15px}.vendor-icon.icon-md,.country-fallback.icon-md{width:18px;height:18px}.country-flag{object-fit:cover;border:1px solid var(--line-strong);background:var(--surface-2)}.country-flag.icon-sm{width:18px;height:12px}.country-flag.icon-md{width:24px;height:16px}.site-header{z-index:50;border-bottom:1px solid var(--line-soft);background:var(--header);height:57px;position:sticky;top:0}.header-inner{width:min(var(--content-width), 100%);height:100%;padding-inline:var(--content-gutter);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;margin:0 auto;display:grid}.home-mark{height:32px;color:var(--accent);font-family:var(--mono);justify-content:flex-start;align-items:center;padding:0 7px 0 0;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.primary-nav{align-items:center;gap:4px;min-width:0;height:100%;margin-left:18px;display:flex}.primary-link{height:32px;color:var(--muted);font-family:var(--mono);text-transform:uppercase;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;padding:0 10px;font-size:11px;font-weight:650;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.primary-link:hover{border-color:var(--line);background:var(--surface-2);color:var(--text)}.primary-link.is-active{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.primary-link-icon,.primary-link-short{display:none}.header-actions{justify-content:flex-end;align-items:center;gap:4px;margin-left:12px;display:flex}.header-tool,.locale-button{border:1px solid var(--line);height:32px;color:var(--muted);cursor:pointer;background:0 0;border-radius:0;justify-content:center;align-items:center;gap:6px;padding:0 9px;display:inline-flex}.header-tool{width:42px;padding:0}.header-tool:hover,.locale-button:hover{border-color:var(--line-strong);background:var(--surface-2);color:var(--text)}.locale-button{min-width:74px;font-family:var(--mono);font-size:11px}.appearance-menu{align-items:center;display:flex;position:relative}.appearance-popover{border:1px solid var(--line-strong);background:var(--surface);width:216px;color:var(--text);padding:12px;position:absolute;top:calc(100% + 8px);right:0}.appearance-title{border-bottom:1px solid var(--line);align-items:center;gap:7px;padding-bottom:9px;font-size:12px;display:flex}.appearance-group{gap:2px;padding-top:10px;display:grid}.appearance-label{color:var(--faint);font-family:var(--mono);font-size:10px}.appearance-option{min-height:32px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0;grid-template-columns:16px minmax(0,1fr) 14px;align-items:center;gap:8px;padding:0 6px;font-size:12px;display:grid}.appearance-radio{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.appearance-option:focus-within{border-color:var(--focus);outline:2px solid var(--focus);outline-offset:1px}.appearance-option:hover{background:var(--surface-2);color:var(--text)}.appearance-option.is-selected{border-color:var(--line-strong);background:var(--surface-2);color:var(--text)}.accent-swatch{border:1px solid var(--line-strong);background:var(--inverse);width:14px;height:14px}.swatch-violet{background:#6d28d9;border-color:#6d28d9}.swatch-orange{background:#ff5a36;border-color:#ff5a36}.swatch-cobalt{background:#155eef;border-color:#155eef}.swatch-mono{background:#09090b;position:relative;overflow:hidden}.swatch-mono:after{content:"";background:#fff;border-left:1px solid #71717a;position:absolute;inset:0 0 0 50%}.page-wrap{width:min(var(--content-width), 100%);padding:0 var(--content-gutter) 40px;margin:0 auto}.site-footer{border-top:1px solid var(--line-soft);background:var(--header);color:var(--faint);margin-top:auto}.footer-inner{width:min(var(--content-width), 100%);min-height:49px;padding:0 var(--content-gutter);font-family:var(--mono);align-items:center;gap:8px;margin:0 auto;font-size:10px;display:flex}.footer-credit,.footer-brand{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.footer-brand-icon{background:currentColor;flex:none;width:14px;height:14px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.footer-separator{color:var(--line-strong)}.footer-link{color:var(--muted);text-decoration:none;transition:color .12s}.footer-link:hover{color:var(--text)}.page-heading{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:20px;min-height:68px;padding:16px 0;display:flex}.page-heading h1{margin:0;font-size:28px;font-weight:700;line-height:1.15}.page-heading p{color:var(--muted);margin:6px 0 0;font-size:13px}.heading-action{flex-shrink:0;align-items:center;gap:8px;display:flex}.header-action-group{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.overview-status{border-bottom:1px solid var(--line);min-height:36px;color:var(--muted);align-items:center;gap:12px;font-size:12px;display:flex}.overview-status .auto-run-control{margin-left:auto}.run-toolbar{border-bottom:1px solid var(--line);min-height:42px;color:var(--muted);justify-content:space-between;align-items:center;gap:14px;padding:6px 0;font-size:12px;display:flex}.toolbar-actions,.toolbar-meta{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.toolbar-note{color:var(--faint)}.toolbar-divider{background:var(--line);width:1px;height:16px}.live-indicator{color:var(--muted);align-items:center;gap:7px;font-weight:600;display:inline-flex}.live-indicator i,.status-dot{background:var(--faint);border-radius:50%;width:7px;height:7px;display:inline-block}.live-indicator.is-live i,.live-indicator.is-running i{background:var(--accent)}.live-indicator.is-complete i{background:var(--good-fill)}.live-indicator.is-paused i{background:var(--warn-fill)}.auto-run-control{color:var(--muted);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:11px;display:inline-flex;position:relative}.auto-run-control input{width:14px;height:14px;accent-color:var(--accent);cursor:pointer;margin:0}.auto-run-control:hover{color:var(--text)}.action-button{border:1px solid var(--line-strong);background:var(--surface);min-height:38px;color:var(--text);cursor:pointer;white-space:nowrap;border-radius:0;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:650;display:inline-flex}.action-button:hover:not(:disabled){border-color:var(--text);background:var(--surface-2)}.action-button:disabled{cursor:default;opacity:.5}.action-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.action-primary:hover:not(:disabled){border-color:var(--accent-hover);background:var(--accent-hover)}.action-danger{border-color:var(--bad);color:var(--bad)}.action-quiet{min-height:32px;color:var(--muted);background:0 0;border-color:#0000;padding-inline:8px;font-size:11px}.action-quiet:hover:not(:disabled){border-color:var(--line)}.icon-button{min-width:32px;min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{border-color:var(--line);background:var(--surface-2);color:var(--text)}.filter-button{min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0;padding:0 9px;font-size:11px}.filter-button:hover{border-color:var(--line);background:var(--surface-2);color:var(--text)}.filter-button.is-active{border-color:var(--inverse);background:var(--inverse);color:var(--on-inverse)}.data-section{margin-top:24px}.section-heading{border-bottom:1px solid var(--line-strong);align-items:baseline;gap:9px;min-height:35px;display:flex}.section-heading h2{margin:0;padding-bottom:8px;font-size:16px;font-weight:650;line-height:1.2}.section-count,.heading-supplement{color:var(--faint);font-family:var(--mono);font-size:10px;font-weight:500}.heading-supplement{margin-left:4px}.overview-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"current""latency""sources";gap:20px;margin-top:20px;display:grid}.overview-layout>.data-section{min-width:0;margin-top:0}.overview-current{grid-area:current}.overview-sources{grid-area:sources}.overview-latency{grid-area:latency}.protocol-grid{border-left:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.protocol-block{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);min-width:0;padding:10px 12px 9px}.protocol-heading{min-height:26px;color:var(--muted);font-family:var(--mono);justify-content:space-between;align-items:center;gap:6px;font-size:11px;display:flex}.protocol-heading strong{color:var(--text);font-size:12px}.protocol-ip{min-width:0;min-height:19px;color:var(--text);overflow-wrap:anywhere;margin:3px 0 8px;font-size:13px;font-weight:600}.protocol-fields{gap:4px;display:grid}.protocol-field{grid-template-columns:56px minmax(0,1fr);align-items:baseline;gap:6px;min-width:0;font-size:11px;display:grid}.protocol-field>span{color:var(--faint);white-space:nowrap}.protocol-field>strong{min-width:0;color:var(--muted);overflow-wrap:anywhere;font-size:11px;font-weight:500}.source-table-wrap{border-right:1px solid var(--line);border-left:1px solid var(--line);overflow-x:auto}.source-table{border-collapse:collapse;table-layout:fixed;width:100%}.source-table th,.source-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;height:39px;padding:5px 10px}.source-table th{background:var(--surface-2);height:34px;color:var(--muted);font-size:10px;font-weight:700}.source-table th:first-child{width:17%}.source-table th:nth-child(2){width:8%}.source-table th:nth-child(3){width:25%}.source-table th:nth-child(4){width:29%}.source-table th:nth-child(5){width:14%}.source-table th:nth-child(6){width:44px}.source-row:hover{background:var(--hover)}.source-name-cell{font-size:11px}.source-family-cell{color:var(--faint);font-size:9px}.source-ip-cell,.source-location-cell{color:var(--muted);overflow-wrap:anywhere;font-size:10px}.source-copy-cell{width:44px;padding:2px 5px!important}.latency-matrix{border-left:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.latency-cell{--latency-tone:var(--line-strong);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);min-width:0;min-height:94px;box-shadow:inset 3px 0 var(--latency-tone);grid-template-rows:auto auto auto auto;gap:5px;padding:8px 10px 7px 13px;display:grid}.latency-tone-good{--latency-tone:var(--good-fill)}.latency-tone-warn{--latency-tone:var(--warn-fill)}.latency-tone-bad{--latency-tone:var(--bad-fill)}.latency-cell-head{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.latency-cell-head>.identity-label{min-width:0;overflow:hidden}.latency-cell-head .identity-label>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.latency-cell-head strong{font-size:12px}.region-label{border:1px solid var(--line);color:var(--muted);white-space:nowrap;flex:none;padding:1px 4px;font-size:9px;line-height:1.3;display:inline-block}.region-domestic,.region-global{border-color:var(--line-strong);color:var(--muted)}.latency-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;min-width:0;display:grid}.latency-metrics>span{flex-direction:column;gap:1px;min-width:0;display:flex}.latency-metrics small{color:var(--faint);font-size:9px}.latency-metrics b{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.latency-metrics .latency-primary{font-size:13px;font-weight:750}.latency-value-good{color:var(--good)!important}.latency-value-warn{color:var(--warn)!important}.latency-value-bad{color:var(--bad)!important}.latency-cell>.status{justify-self:start}.latency-cell>.status-success{color:var(--faint)}.latency-cell>.status-success .status-dot{background:var(--faint)}.sample-strip{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:center;gap:2px;min-width:0;display:grid}.sample{background:var(--line-strong);width:100%;height:11px;display:block}.sample-good{background:var(--good-fill)}.sample-warn{background:var(--warn-fill)}.sample-bad{background:var(--bad-fill)}.sample-fail{border:1px solid var(--line-strong);background:repeating-linear-gradient(135deg, transparent 0 3px, var(--line) 3px 5px)}.sample-count{color:var(--muted);font-size:10px}.table-scroll{border-left:1px solid var(--line);border-right:1px solid var(--line);overflow-x:auto}.data-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:720px}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;height:44px;padding:8px 12px}.data-table th{background:var(--surface-2);height:36px;color:var(--muted);font-size:10px;font-weight:700}.data-table td{color:var(--text);font-size:12px}.data-table tbody tr:hover{background:var(--hover)}.data-table strong{font-weight:650}.responsive-table.responsive-dns{min-width:920px}.responsive-table.responsive-dns th:first-child{width:290px}.responsive-table.responsive-dns th:nth-child(2){width:190px}.responsive-table.responsive-dns th:nth-child(3){width:110px}.responsive-table.responsive-dns th:nth-child(5){width:96px}.responsive-table.responsive-stun{min-width:1080px}.responsive-table.responsive-stun th:first-child{width:220px}.responsive-table.responsive-stun th:nth-child(2),.responsive-table.responsive-stun th:nth-child(3){width:300px}.responsive-table.responsive-stun th:nth-child(4){width:170px}.responsive-table.responsive-stun th:nth-child(5){width:90px}.responsive-table.responsive-dns td:first-child,.responsive-table.responsive-stun td:nth-child(2),.responsive-table.responsive-stun td:nth-child(3){overflow-wrap:anywhere;word-break:break-word}.table-subline{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;display:block;overflow:hidden}.ip-cell{white-space:nowrap}.table-copy{width:32px;min-width:32px;min-height:32px}.split-table{min-width:940px}.split-table th:first-child{width:24%}.split-table th:nth-child(2){width:72px}.split-table th:nth-child(3){width:260px}.split-table th:nth-child(4){width:24%}.split-table th:nth-child(6){width:104px}.split-table td{min-width:0}.split-cell-target .identity-label{max-width:100%;overflow:hidden}.split-cell-target .identity-label>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.split-cell-ip{overflow-wrap:anywhere;word-break:break-word}.split-cell-location{overflow-wrap:anywhere}.split-cell-network .identity-label,.split-cell-status .table-subline{max-width:100%}.status{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:inline-flex}.status-compact{font-size:9px}.status-success{color:var(--good)}.status-success .status-dot{background:var(--good-fill)}.status-running{color:var(--warn)}.status-running .status-dot{background:var(--warn-fill)}.status-timeout,.status-failed,.status-blocked{color:var(--bad)}.status-timeout .status-dot,.status-failed .status-dot,.status-blocked .status-dot{background:var(--bad-fill)}.status-queued,.status-unsupported,.status-cancelled{color:var(--faint)}.status-queued .status-dot,.status-cancelled .status-dot{background:var(--faint)}.status-unsupported .status-dot{background:var(--info)}.node-grid{border-left:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.node-tile{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);flex-direction:column;min-width:0;min-height:124px;padding:12px;display:flex}.node-tile:hover{background:var(--surface-2)}.node-tile-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.node-tile-top>.identity-label{min-width:0;overflow:hidden}.node-tile-top>.identity-label>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.node-tile-top strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.node-value{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-top:18px;font-size:19px;font-weight:700;overflow:hidden}.node-meta{color:var(--muted);font-family:var(--mono);justify-content:space-between;gap:8px;margin-top:auto;font-size:10px;display:flex}.node-region{min-width:0;color:var(--faint);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:10px;overflow:hidden}.compact-control{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:inline-flex}.compact-control select,.table-toolbar select{border:1px solid var(--line-strong);background:var(--surface);min-height:34px;color:var(--text);cursor:pointer;border-radius:0;padding:0 24px 0 8px}.metric-strip{border:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(6,minmax(0,1fr));margin-top:16px;display:grid}.metric-cell{border-right:1px solid var(--line);min-height:68px;padding:9px 11px}.metric-cell:last-child{border-right:0}.metric-cell span{color:var(--muted);font-size:10px;display:block}.metric-cell strong{color:var(--text);font-family:var(--mono);margin-top:5px;font-size:18px;font-weight:650;display:block}.tone-good{color:var(--good)!important}.tone-warn{color:var(--warn)!important}.tone-bad{color:var(--bad)!important}.progress-wrap{align-items:center;gap:12px;margin-top:12px;display:flex}.progress-track{border:1px solid var(--line);background:var(--surface-2);flex:1;height:8px;overflow:hidden}.progress-track span{background:var(--accent);height:100%;transition:width .18s linear;display:block}.progress-label{width:150px;color:var(--muted);font-family:var(--mono);text-align:right;font-size:10px}.result-tabs{border-bottom:1px solid var(--line-strong);align-items:stretch;min-height:42px;display:flex}.result-tabs>button{border:0;border-right:1px solid var(--line);min-height:42px;color:var(--muted);cursor:pointer;background:0 0;padding:0 14px;font-size:11px}.result-tabs>button:hover{background:var(--surface-2);color:var(--text)}.result-tabs>button.is-active{background:var(--accent);color:var(--on-accent)}.result-tab-actions{border-left:1px solid var(--line);align-items:center;gap:4px;margin-left:auto;display:flex}.multi-results>.result-tabs+.section-heading{margin-top:16px}.egress-list{border-left:1px solid var(--line);border-right:1px solid var(--line)}.egress-group{border-bottom:1px solid var(--line)}.egress-summary{background:var(--surface);width:100%;min-height:52px;color:var(--text);text-align:left;cursor:pointer;border:0;grid-template-columns:25px minmax(170px,1fr) minmax(130px,1fr) 90px 75px;align-items:center;gap:8px;padding:0 12px;display:grid}.egress-summary:hover{background:var(--hover)}.disclosure{color:var(--muted);display:inline-flex}.egress-summary>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.egress-summary>span:not(.disclosure):not(.status){color:var(--muted);font-size:11px}.egress-profile{align-items:center;gap:7px;min-width:0;display:flex}.egress-profile>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.flag-stack{flex:none;align-items:center;display:inline-flex}.flag-stack .country-flag+.country-flag{margin-left:-4px}.egress-count{text-align:right}.egress-probes{background:var(--surface-2);flex-wrap:wrap;gap:5px;padding:0 12px 12px 37px;display:flex}.egress-probes[hidden]{display:none}.probe-chip{border:1px solid var(--line);color:var(--muted);padding:3px 6px;font-size:10px}.table-toolbar{align-items:center;gap:8px;margin:14px 0 8px;display:flex}.search-field{border:1px solid var(--line);background:var(--surface);min-width:260px;height:34px;color:var(--muted);align-items:center;gap:7px;padding:0 9px;display:inline-flex}.search-field input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:11px}.table-count{color:var(--faint);font-family:var(--mono);margin-left:auto;font-size:10px}.probe-table{border:1px solid var(--line);background:var(--surface)}.probe-row{grid-template-columns:72px minmax(150px,1.1fr) 110px minmax(190px,1.2fr) 100px minmax(150px,1fr) 52px;align-items:center;column-gap:8px;min-height:44px;padding:0 10px;display:grid}.probe-header{border-bottom:1px solid var(--line-strong);background:var(--surface-2);min-height:36px;color:var(--muted);font-size:10px;font-weight:700}.probe-scroll{height:min(58vh,620px);overflow:auto}.probe-virtual-list{margin:0;padding:0;list-style:none;position:relative}.probe-data{border-bottom:1px solid var(--line);font-size:11px;position:absolute}.probe-data:hover{background:var(--hover)}.probe-data>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.probe-data strong,.probe-data small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.probe-data small{color:var(--faint);margin-top:2px;font-size:9px}.probe-data>.identity-label{display:inline-flex}.provider-list{flex-wrap:wrap;gap:4px 10px;min-width:0;display:flex}.host-cell{color:var(--muted)}.empty-inline,.empty-state{min-height:110px;color:var(--muted);justify-content:center;align-items:center;gap:8px;display:flex}.empty-state{border:1px dashed var(--line-strong);margin-top:20px}.manifest-error{border:1px solid var(--bad);min-height:84px;color:var(--bad);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:18px;padding:12px;display:grid}.manifest-error span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (width<=1100px){.primary-nav{gap:2px;margin-left:10px}.primary-link{padding-inline:7px;font-size:10px}.header-actions{margin-left:8px}.locale-button{min-width:68px;padding-inline:7px}.split-table-scroll{border:0;overflow:visible}.split-table,.split-table tbody{min-width:0;display:block}.split-table thead{display:none}.split-table tbody{border-top:1px solid var(--line)}.split-table tr{border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:minmax(160px,1.2fr) max-content minmax(200px,1fr) 96px;grid-template-areas:"target scope ip status""location location location network";align-items:center;gap:3px 12px;min-height:74px;padding:8px 10px;display:grid}.split-table td{border:0;width:auto;min-width:0;height:auto;padding:0}.split-cell-target{grid-area:target}.split-cell-scope{grid-area:scope;justify-self:start}.split-cell-ip{grid-area:ip}.split-cell-location{color:var(--muted);grid-area:location;font-size:10px}.split-cell-network{grid-area:network;justify-self:end}.split-cell-status{text-align:right;grid-area:status;justify-self:end;min-width:0}.split-cell-status .table-subline{text-overflow:ellipsis;white-space:nowrap}}@media (width<=900px){:root{--content-gutter:16px}.node-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.egress-summary{grid-template-columns:22px minmax(150px,.8fr) minmax(0,1.2fr) 65px}.egress-summary>span:nth-child(4){display:none}}@media (width<=860px){.primary-nav{z-index:50;width:100%;height:calc(72px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:var(--header);grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin:0;display:grid;position:fixed;bottom:0;left:0;right:0}.primary-link{border:0;border-right:1px solid var(--line-soft);text-transform:none;flex-direction:column;gap:3px;width:100%;height:72px;padding:0 2px;font-size:11px}.primary-link:last-child{border-right:0}.primary-link:hover{border-color:var(--line-soft)}.primary-link.is-active{border-color:var(--accent)}.primary-link-icon,.primary-link-short{display:block}.primary-link-full{display:none}.page-wrap{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.site-footer{margin-bottom:calc(72px + env(safe-area-inset-bottom))}}@media (width<=799px){.overview-layout{grid-template-columns:1fr;grid-template-areas:"current""latency""sources";gap:16px;margin-top:16px}.latency-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.responsive-scroll.responsive-dns,.responsive-scroll.responsive-stun{border:0;overflow:visible}.responsive-table.responsive-dns,.responsive-table.responsive-stun{min-width:0;display:block}.responsive-table.responsive-dns thead,.responsive-table.responsive-stun thead{display:none}.responsive-table.responsive-dns tbody,.responsive-table.responsive-stun tbody{border-top:1px solid var(--line);display:grid}.responsive-table.responsive-dns tr,.responsive-table.responsive-stun tr{border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-left:1px solid var(--line);padding:5px 0;display:block}.responsive-table.responsive-dns td,.responsive-table.responsive-stun td{overflow-wrap:anywhere;border:0;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:8px;min-width:0;height:auto;min-height:32px;padding:5px 9px;display:grid}.responsive-table.responsive-dns td:before,.responsive-table.responsive-stun td:before{content:attr(data-label);color:var(--muted);font-size:9px;font-weight:700}.responsive-table.responsive-dns td>*,.responsive-table.responsive-stun td>*{min-width:0}.responsive-table.responsive-dns td .table-subline,.responsive-table.responsive-stun td .table-subline{white-space:normal}}@media (width<=640px){:root{--content-gutter:14px}body{font-size:13px}.page-wrap{padding-bottom:calc(32px + env(safe-area-inset-bottom))}.page-heading{gap:12px;min-height:58px;padding:12px 0}.page-heading h1{font-size:23px}.heading-action .action-button{min-height:36px;padding-inline:10px}.overview-status{flex-wrap:wrap;gap:7px 9px;min-height:36px;padding:4px 0;font-size:11px}.run-toolbar{flex-direction:column;align-items:flex-start;gap:6px;padding:8px 0}.toolbar-meta{width:100%}.protocol-block{padding-inline:9px}.protocol-ip{font-size:11px}.protocol-field{grid-template-columns:52px minmax(0,1fr);gap:4px;font-size:10px}.protocol-field>strong{font-size:10px}.source-table-wrap{border:0;overflow:visible}.source-table,.source-table tbody{display:block}.source-table thead{display:none}.source-table tbody{border-top:1px solid var(--line)}.source-row{border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto 36px;grid-template-areas:"name family copy""ip status copy""location location copy";align-items:center;gap:3px 8px;min-height:72px;padding:8px 7px 7px;display:grid}.source-row td{border:0;width:auto;height:auto;padding:0!important}.source-name-cell{grid-area:name}.source-family-cell{grid-area:family;justify-self:end}.source-ip-cell{grid-area:ip}.source-location-cell{grid-area:location}.source-status-cell{grid-area:status;justify-self:end}.source-copy-cell{grid-area:copy;justify-self:end}.latency-cell{gap:4px;min-height:84px;padding:7px 8px 6px 11px}.latency-cell-head strong{font-size:11px}.latency-metrics{gap:3px}.latency-metrics small{font-size:8px}.latency-metrics b{font-size:10px}.sample{height:9px}.node-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.node-tile{min-height:115px;padding:10px}.node-value{margin-top:14px;font-size:18px}.metric-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-cell{min-height:62px;padding:8px}.metric-cell:nth-child(3){border-right:0}.metric-cell:nth-child(n+4){border-top:1px solid var(--line)}.progress-wrap{flex-direction:column-reverse;align-items:flex-start;gap:5px}.progress-track{flex:none;width:100%}.progress-label{text-align:left;width:auto}.result-tabs{overflow-x:auto}.result-tabs>button{flex:none;padding-inline:11px}.result-tab-actions{margin-left:4px}.egress-summary{grid-template-rows:auto auto;grid-template-columns:20px minmax(0,1fr) 65px;align-content:center;min-height:64px;padding-block:7px}.egress-summary .disclosure{grid-area:1/1/3;align-self:center}.egress-summary>strong{grid-area:1/2}.egress-profile{grid-area:2/2/auto/4}.egress-summary .status{grid-area:1/3;justify-self:end}.table-toolbar{flex-wrap:wrap}.search-field{min-width:100%}.table-count{margin-left:0}.probe-table{border-left:0;border-right:0}.probe-header{display:none}.probe-scroll{height:60vh}.probe-row{grid-template-columns:32px minmax(70px,1fr) 68px minmax(90px,1fr);min-height:52px;padding-inline:6px}.probe-row>span:nth-child(3),.probe-row>span:nth-child(4),.probe-row>span:nth-child(7){display:none}.probe-data>span:nth-child(5){justify-self:end}.manifest-error{grid-template-columns:1fr}.appearance-popover{position:fixed;top:60px;right:8px}.responsive-scroll{border:0;overflow:visible}.responsive-table{min-width:0;display:block}.responsive-table thead{display:none}.responsive-table tbody{border-top:1px solid var(--line);display:grid}.responsive-table tr{border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-left:1px solid var(--line);padding:5px 0;display:block}.responsive-table td{overflow-wrap:anywhere;border:0;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:8px;height:auto;min-height:32px;padding:5px 9px;display:grid}.responsive-table.responsive-dns td,.responsive-table.responsive-stun td{grid-template-columns:96px minmax(0,1fr)}.responsive-table td:before{content:attr(data-label);color:var(--muted);font-size:9px;font-weight:700}.responsive-table td .table-subline{white-space:normal}.split-table tr{grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"target scope""ip ip""location location""network status";gap:5px 10px;min-height:0;padding:9px}.split-cell-scope{justify-self:end}.split-cell-ip,.split-cell-location{grid-template-columns:58px minmax(0,1fr);align-items:baseline;gap:8px;display:grid}.split-cell-ip:before,.split-cell-location:before{content:attr(data-label);color:var(--muted);font-family:var(--sans);font-size:9px;font-weight:700}.split-cell-network{justify-self:start}.split-cell-status{align-self:center}}@media (width<=360px){.latency-cell{min-height:82px}.locale-button{min-width:62px;font-size:10px}}@media (width<=560px){.protocol-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
