.net-tools{margin:0 0 46px;--net-accent:#00e4e8;--net-line:#234052;--net-panel:#091824;--net-subtle:#7893ac;color:var(--text,#f4f7fc)}
.net-tool-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}.net-tool-nav a{padding:9px 18px;border:1px solid #28465a;border-radius:24px;font-size:14px;color:#9ce9ef;background:#0a1a27}.net-tool-nav a:hover{border-color:#00e4e8;color:#00e4e8}
.net-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.net-card{min-width:0;border:1px solid var(--net-line);border-radius:18px;background:linear-gradient(145deg,#0a202b 0%,#0a1320 75%);padding:26px;box-shadow:0 15px 45px #00000018;scroll-margin-top:30px}.net-card-purple{--net-accent:#b09dff;--net-line:#34304f;background:linear-gradient(145deg,#161b36 0%,#0a1320 75%)}
.net-card-heading{display:flex;align-items:center;gap:12px;margin:0 0 19px}.net-tool-icon{width:43px;height:43px;display:grid;place-items:center;border:1px solid var(--net-line);border-radius:12px;background:#0a1a2a;color:var(--net-accent);flex-shrink:0}.net-tool-icon svg{width:24px;height:24px}.net-eyebrow{font-size:8px!important;letter-spacing:1.6px;color:var(--net-accent)!important;margin:0 0 2px!important;line-height:1.5!important}.net-card h2{font-size:23px!important;line-height:1.4!important;letter-spacing:-.4px!important;margin:0!important;border:0!important;padding:0!important}.net-badge{margin-left:auto;font-size:9px;line-height:1.5;white-space:nowrap;color:var(--net-accent);border:1px solid var(--net-line);padding:4px 7px;border-radius:5px}.net-intro{margin:0 0 23px;font-size:13px;color:#a5b7cb;line-height:1.8}
.net-tools form{margin:0}.net-tools label{display:block;font-size:12px;font-weight:650;color:#d3dfed;margin:0 0 8px}.net-tools input,.net-tools select{display:block;width:100%;min-width:0;min-height:44px;border:1px solid #2a4057;border-radius:8px;background:#070f1c;color:#dceafa;padding:10px 12px;font-size:12px;line-height:1.5;box-shadow:none}.net-tools select{appearance:auto}.net-tools input::placeholder{color:#60768e;opacity:1}.net-tools input:disabled,.net-tools select:disabled{opacity:.65}.net-tools input[aria-invalid=true]{border-color:#fb9f91}.net-input-row{display:flex;align-items:stretch;gap:9px}.net-input-row input{flex:1}.net-input-row .net-button{flex-shrink:0}.net-tools .net-help{margin:9px 0 18px;color:#7f97af;font-size:11px;line-height:1.8}.net-custom-target{margin-top:18px}.net-tools [hidden]{display:none!important}
.net-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;min-width:72px;padding:10px 17px;border-radius:9px;font-size:12px;font-weight:700;line-height:1.5;border:1px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.net-button-primary{color:#001d29;background:var(--net-accent);border-color:var(--net-accent)}.net-button-primary:hover{background:#b9f7f9;border-color:#b9f7f9}.net-card-purple .net-button-primary:hover{background:#d4caff;border-color:#d4caff}.net-button-secondary{color:#adc4dc;background:#0d1a2b;border-color:#2a4158}.net-button-secondary:hover{color:#e7f6ff;border-color:var(--net-accent)}.net-button:disabled,.net-copy:disabled{cursor:not-allowed;opacity:.45}.net-button:disabled:hover{background:initial}.net-current{width:100%;margin-bottom:23px}.net-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.net-actions>.net-button:first-child{flex:1}.net-live-row{display:flex;align-items:flex-start;gap:10px}.net-live-row .net-status{flex:1}.net-status{font-size:12px;color:#a2bed3;line-height:1.8;margin:20px 0;overflow-wrap:anywhere;min-height:22px}.net-status[data-tone=error]{color:#ffae9e}.net-status[data-tone=success]{color:#71ded0}.net-status[data-tone=warning]{color:#e9c692}.net-text-button,.net-copy{font-size:11px;line-height:1.5;border:1px solid #2c455c;border-radius:7px;background:transparent;color:#a7c4db;padding:6px 10px;white-space:nowrap;cursor:pointer}.net-text-button{margin-top:19px}.net-text-button:disabled{opacity:.35;cursor:not-allowed}.net-copy:hover,.net-text-button:not(:disabled):hover{color:var(--net-accent);border-color:var(--net-accent)}
.net-ip-result{border:1px solid #214455;background:#07131f;border-radius:12px;padding:18px;margin-bottom:20px}.net-ip-value-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.net-ip-value-row>div{min-width:0}.net-result-label{display:block;font-size:10px;color:#7898b0;margin-bottom:7px}.net-ip-value{display:block;line-height:1.4;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:23px;font-weight:700;color:#76eef2;letter-spacing:-.6px;overflow-wrap:anywhere;user-select:all}.net-copy{margin-top:15px}.net-ip-facts{display:grid;grid-template-columns:1fr 1fr;gap:15px 16px;margin:23px 0 0}.net-ip-facts div,.net-ping-metrics div{min-width:0}.net-ip-facts dt{font-size:10px;color:#7895ae;margin:0 0 5px}.net-ip-facts dd{font-size:12px;color:#c6dbef;margin:0;line-height:1.7;overflow-wrap:anywhere}.net-result-meta{font-size:10px;color:#7691a7;line-height:1.8;margin:18px 0 0}.net-provider{font-size:10px!important;color:#7892aa!important;line-height:1.9!important;margin:17px 0 0!important;overflow-wrap:anywhere}.net-provider a{color:#94c3dc;text-decoration:underline;text-underline-offset:3px}.net-provider strong{color:#b4cce3;font-weight:600}
.net-ping-results{margin-top:17px}.net-ping-metrics{display:grid;grid-template-columns:.85fr 1fr 1.4fr;gap:10px;padding:15px 13px;border:1px solid #303857;border-radius:10px;background:#0a1221;margin:0 0 17px}.net-ping-metrics dt{font-size:9px;color:#8598b6;margin:0 0 7px}.net-ping-metrics dd{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:14px;font-weight:650;color:#c3b9ff;margin:0;line-height:1.5;overflow-wrap:anywhere}.net-table-scroll{max-width:100%;overflow-x:auto;border:1px solid #24334a;border-radius:10px}.net-tools .net-ping-table{width:100%;min-width:0;border-collapse:collapse;margin:0;font-size:11px;line-height:1.7}.net-tools .net-ping-table th,.net-tools .net-ping-table td{text-align:left;vertical-align:top;padding:11px 12px;border:0;border-bottom:1px solid #213147;color:#a5bed5;background:transparent;overflow-wrap:anywhere}.net-tools .net-ping-table thead th{background:#101b2e;font-size:10px;font-weight:600;white-space:nowrap;color:#c5c3ea}.net-tools .net-ping-table tr:last-child td{border-bottom:0}.net-ping-table th:first-child{width:44px}.net-ping-table th:nth-child(2){width:96px}.net-tools .net-ping-table td[data-kind=ok]{color:#72d8c3}.net-tools .net-ping-table td[data-kind=http-error],.net-tools .net-ping-table td[data-kind=timeout]{color:#e8c68f}.net-tools .net-ping-table td[data-kind=network-error],.net-tools .net-ping-table td[data-kind=unreadable]{color:#f0b5b2}.net-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.net-noscript{padding:18px;border:1px solid #526077;border-radius:8px;color:#c1cfdf}
.net-tools :is(a,button,input,select):focus-visible{outline:2px solid var(--net-accent);outline-offset:4px}.net-tools :is(button,input,select){font-family:inherit}
.net-card-wide{grid-column:1/-1}.net-public-notice{margin:0 0 23px;padding:12px 15px;font-size:12px;line-height:1.8;color:#b4cada;border-left:2px solid var(--net-accent);background:#071420;border-radius:0 8px 8px 0}.net-public-notice strong{color:#e7eee3;font-weight:650}.net-icmp-inputs{display:grid;grid-template-columns:minmax(0,2fr) minmax(140px,1fr);gap:16px}.net-icmp-inputs>div{min-width:0}.net-icmp-actions{max-width:440px}.net-probe-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:0 0 18px;padding:17px;border:1px solid #223d50;background:#07131f;border-radius:10px}.net-probe-facts dt{color:#7e9ab2;font-size:10px;line-height:1.5;margin:0 0 6px}.net-probe-facts dd{color:#c1d9e9;font-size:12px;line-height:1.7;overflow-wrap:anywhere;margin:0}.net-icmp-metrics{grid-template-columns:repeat(4,minmax(0,1fr));border-color:#244252}.net-icmp-metrics dd{color:#8fe5e8}.net-raw-details{border:1px solid #263b4e;border-radius:9px;background:#070e19}.net-raw-details summary{padding:11px 14px;cursor:pointer;font-size:12px;color:#9ac4d9}.net-raw-details pre{margin:0!important;border-top:1px solid #213447;border-radius:0 0 9px 9px!important;background:transparent!important;color:#aac2d7!important;font-size:11px!important;line-height:1.7!important;white-space:pre-wrap;overflow-wrap:anywhere;padding:14px!important;max-height:260px;overflow:auto}.net-measurement-link{margin:15px 0 0;font-size:11px;line-height:1.7}.net-measurement-link a{color:#93d8e5;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){.net-tools-grid{grid-template-columns:1fr}.net-card{padding:25px}.net-ip-facts{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.net-card{padding:21px 17px;border-radius:13px}.net-card h2{font-size:21px!important}.net-card-heading{gap:10px}.net-tool-icon{width:37px;height:37px;border-radius:10px}.net-badge{font-size:8px;padding:4px 5px}.net-intro{font-size:12px}.net-ip-value{font-size:21px}.net-ip-value-row{gap:8px}.net-ip-result{padding:15px}.net-ip-facts{gap:14px 12px}.net-ping-metrics{padding:13px 10px;gap:8px}.net-ping-metrics dd{font-size:12px}.net-ping-table th:nth-child(2){width:84px}.net-tools .net-ping-table th,.net-tools .net-ping-table td{padding:10px 9px}.net-tool-nav a{padding:8px 16px;font-size:13px}.net-tools input,.net-tools select{font-size:16px}.net-button{padding:10px 14px}.net-provider{font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.net-tools *{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:580px){.net-icmp-inputs{grid-template-columns:1fr;gap:16px}.net-probe-facts{grid-template-columns:1fr;gap:13px;padding:14px}.net-icmp-metrics{grid-template-columns:1fr 1fr;gap:14px}.net-public-notice{font-size:11px;padding:11px 12px}.net-icmp-actions{max-width:none}.net-raw-details pre{font-size:10px!important}}

/* Utility page uses the full reading width; ad slots still follow its content. */
.network-tools-page .reading-layout{grid-template-columns:minmax(0,1fr)}
.network-tools-page .article-sidebar{position:static;max-height:none}
.network-tools-page .article-sidebar .toc{display:none}
.network-tools-page .managed-prose{max-width:900px}
