:root{font-family:'Segoe UI',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#172840;background:#f3f6fb;font-synthesis:none;-webkit-font-smoothing:antialiased;--navy:#152d4b;--navy2:#10243f;--blue:#326bdf;--teal:#21b9ae;--muted:#738097;--line:#e8edf5;--shadow:0 12px 38px rgba(28,50,82,.04)}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,a{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}svg.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.symbols{position:absolute;width:0;height:0;overflow:hidden}.container{max-width:1190px;margin:0 auto;padding:0 24px}.site-header{height:79px;background:#fff;border-bottom:1px solid #eaf0f6}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-emblem{height:43px;width:43px;border-radius:12px;color:#fff;background:linear-gradient(135deg,#1b3e68,#1f6aa2);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;letter-spacing:-1px;text-transform:lowercase;box-shadow:0 4px 10px #203b641d}.brand-text{display:flex;flex-direction:column;gap:0;line-height:1.1}.brand-text strong{font-size:24px;letter-spacing:-1.2px;color:#172e4f}.brand-dot{color:var(--teal)}.brand-text small{font-size:9px;font-weight:800;letter-spacing:2.5px;color:#63758c;margin-top:4px}.header-right{display:flex;align-items:center;gap:26px}.top-status{display:flex;align-items:center;gap:8px;font:700 10px Consolas,monospace;letter-spacing:.7px;color:#49617a}.top-status-muted{color:#a4aebc}.status-dot,.hero-pulse{display:inline-block;height:7px;width:7px;border-radius:50%;background:#20bc9e;box-shadow:0 0 0 4px #26cba51a}.header-link{color:#50627a;font-weight:700;font-size:12px;display:flex;align-items:center;gap:6px}.header-link .icon{width:14px;height:14px}.header-link:hover{color:var(--blue)}.content{padding-top:38px;padding-bottom:34px}.page-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 24px}.eyebrow{display:flex;align-items:center;gap:8px;color:#3b78c1;font:700 10px Consolas,monospace;letter-spacing:1.55px}.mini-line{height:2px;width:15px;background:#21baa9}.page-top h1{font-size:clamp(27px,3vw,35px);line-height:1.3;letter-spacing:-1.35px;margin:11px 0 6px;font-weight:800}.accent{color:#28b6a7}.page-top p{margin:0;color:#8190a5;font-size:14px}.btn{border:0;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;font-size:13px;white-space:nowrap;transition:background .2s,transform .2s,box-shadow .2s;padding:12px 16px;min-height:42px}.btn:focus-visible,.copy-btn:focus-visible,.header-link:focus-visible{outline:3px solid #61a9fc;outline-offset:3px}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-ghost{background:#fff;color:#45617b;border:1px solid #e6ebf2;box-shadow:0 3px 12px #20334d05}.btn-ghost:hover{background:#f9fbff}.btn-primary{background:#245fc7;color:#fff;box-shadow:0 5px 15px #1c66d12a}.btn-primary:hover:not(:disabled){background:#1c53ad;transform:translateY(-1px)}.btn-outline{background:#fff;color:#31547d;border:1px solid #dce5f1}.btn-outline:hover:not(:disabled){background:#f0f6ff}.hero-card{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(112deg,#182f51 0%,#13385b 62%,#144a64 100%);border-radius:19px;padding:26px 33px 23px;color:white;box-shadow:0 17px 28px #1738531d;margin-bottom:21px}.hero-pattern{position:absolute;z-index:-1;inset:0;background-image:radial-gradient(#6e9fb94f 1.1px,transparent 1.1px),radial-gradient(ellipse at 87% 17%,#27b9aa37,transparent 36%);background-position:right 20px top 17px,center;background-size:22px 22px,cover;mask-image:linear-gradient(90deg,transparent 44%,#000 100%)}.hero-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.hero-overline{font:600 10px Consolas,monospace;letter-spacing:1.45px;display:flex;align-items:center;gap:11px;color:#c2d5e7}.hero-chip{padding:6px 10px;border:1px solid #80b5c15b;border-radius:6px;background:#ffffff10;font:700 10px Consolas,monospace;color:#d9f1f5;letter-spacing:.4px}.hero-ip-row{display:flex;align-items:center;gap:15px;margin:16px 0 8px;min-height:70px}.hero-ip{font:700 clamp(30px,4vw,49px) Consolas,monospace;letter-spacing:-2.6px;color:#fff;word-break:break-word;line-height:1.25}.hero-ip.ipv6{font-size:clamp(19px,3.2vw,34px);letter-spacing:-1.1px}.copy-btn{display:inline-flex;align-items:center;justify-content:center;background:#ffffff20;color:#fff;border:1px solid #ffffff44;border-radius:9px;width:41px;height:41px;flex-shrink:0}.copy-btn:not(:disabled):hover{background:#ffffff31}.copy-btn:disabled{opacity:.5;cursor:default}.hero-bottom{display:flex;justify-content:space-between;min-height:18px;align-items:center}.hero-caption{font-size:13px;color:#b5c9d9}.hero-copied{font-size:12px;color:#77f1d2}.hero-divider{border-top:1px solid #ffffff28;margin:22px 0 16px}.ip-bands{display:flex;align-items:center;flex-wrap:wrap;gap:16px 40px}.ip-bands>div{display:flex;align-items:center;gap:11px}.ip-band-label{font:800 10px Consolas,monospace;color:#b8d6dd;letter-spacing:.4px}.ip-bands strong{font:600 13px Consolas,monospace;letter-spacing:-.2px}.ip-band-note{margin-left:auto;font-size:11px;color:#9bb9c8}.main-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px;align-items:stretch}.card{background:#fff;border:1px solid #e8edf4;border-radius:17px;overflow:hidden;box-shadow:var(--shadow)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 24px 19px;border-bottom:1px solid #edf1f6}.card-heading{display:flex;align-items:center;gap:12px;min-width:0}.card-icon{height:43px;width:43px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.color-blue{background:#edf3ff;color:#3678e1}.color-cyan{background:#e7fbf8;color:#15a8a1}.color-amber{background:#fff5e7;color:#cc913f}.color-green{background:#e7faf2;color:#23a67c}.card-heading h2{font-size:17px;line-height:1.2;letter-spacing:-.4px;margin:0 0 4px;font-weight:800}.card-heading p{font-size:11px;color:#8997aa;margin:0}.small-pill{font-size:9px;font-weight:800;letter-spacing:.75px;color:#6f849f;background:#f4f7fc;border:1px solid #edf1f6;border-radius:6px;padding:6px 8px;white-space:nowrap}.card-pad{padding:23px 24px 24px}.detail-list{display:grid}.detail-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;min-height:39px;padding:10px 0;border-bottom:1px solid #eff2f6;font-size:12px}.detail-row:last-child{border-bottom:0}.detail-row span{color:#8493a6;flex:0 0 33%}.detail-row strong{font-weight:700;text-align:right;max-width:64%;overflow-wrap:anywhere;color:#293d58}.micro-copy{display:flex;gap:8px;align-items:flex-start;font-size:10px;line-height:1.65;color:#97a4b5;margin:18px 0 0}.micro-copy .icon{width:14px;height:14px;margin-top:2px}.speed-main{padding:31px 29px 25px;display:flex;align-items:center;flex-direction:column}.speed-gauge{height:226px;width:226px;border-radius:50%;background:conic-gradient(from 220deg,#b9e8e6 0deg,#58c5c9 80deg,#376ecb 205deg,#e8edf6 205deg 280deg,transparent 280deg);position:relative;display:flex;align-items:center;justify-content:center;transform:rotate(0deg)}.speed-gauge:before{content:'';position:absolute;inset:14px;background:#fff;border-radius:50%;box-shadow:inset 0 0 0 1px #eaf0f5}.speed-gauge:after{content:'';position:absolute;inset:24px;border:1px dashed #e4ecf3;border-radius:50%}.speed-gauge-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.gauge-upper{font:700 10px Consolas,monospace;letter-spacing:.65px;color:#8ca0b1}.speed-gauge strong{font-size:57px;font-weight:800;letter-spacing:-2px;color:#1c3552;line-height:1.35}.speed-unit{font-size:14px;color:#9aabbb;font-weight:700}.speed-state{font-size:13px;color:#8a97a8;margin:18px 0}.run-speed{min-width:200px}.speed-stats{display:grid;grid-template-columns:repeat(3,1fr);width:100%;margin-top:30px;padding:21px 0;border-top:1px solid #edf1f6;border-bottom:1px solid #edf1f6}.speed-stats>div{display:flex;align-items:center;flex-direction:column;gap:4px;border-right:1px solid #edf1f6}.speed-stats>div:last-child{border:0}.speed-stats span{color:#8c9aae;font-size:11px;display:flex;align-items:center;gap:5px}.speed-stats .icon{width:14px;height:14px}.icon-upflip{transform:rotate(180deg)}.speed-stats strong{font-size:24px;letter-spacing:-.5px;margin-top:4px}.speed-stats small{font-size:10px;color:#9babb8}.test-note{text-align:center;line-height:1.7;max-width:350px;color:#a2adba;font-size:11px;margin:21px auto 0}.diagnostic-card{min-height:345px}.diagnostic-body{padding:26px 24px 22px}.external-caption{font-size:10px;text-align:center;color:#a2adbc;margin:13px 0 0}.blacklist-overview{display:flex;align-items:center;gap:15px;min-height:100px;border-radius:11px;background:#f7f9fd;border:1px solid #edf1f6;padding:16px}.reputation-symbol{display:flex;align-items:center;justify-content:center;height:53px;width:53px;background:#e8f1ff;border-radius:12px;color:#4580cd;flex-shrink:0}.reputation-symbol .icon{width:26px;height:26px}.blacklist-overview strong{font-size:14px}.blacklist-overview p{font-size:12px;line-height:1.5;color:#8496a9;margin:7px 0 0}.blacklist-results{margin-top:13px;display:grid;gap:6px}.blacklist-result{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:#f8faff;border-radius:7px;color:#45617d;font-size:11px}.blacklist-result b{font:700 10px Consolas,monospace}.blacklist-result b.clean{color:#1f9877}.blacklist-result b.listed{color:#d46053}.blacklist-result b.unknown{color:#a17b41}.map-card{margin-top:21px}.map-placeholder{height:325px;margin:20px 24px 0;position:relative;overflow:hidden;border-radius:12px;border:1px solid #e2e9ef;background:radial-gradient(circle at 30% 40%,#e8f4f4 2px,transparent 3px),repeating-linear-gradient(0deg,#f0f5f8 0,#f0f5f8 1px,transparent 1px,transparent 39px),repeating-linear-gradient(90deg,#eff4f8 0,#eff4f8 1px,transparent 1px,transparent 39px),#f9fbfd;background-size:22px 22px,40px 40px,40px 40px,auto}.map-decor{position:absolute;inset:0;opacity:.6;pointer-events:none}.map-decor span{position:absolute;transform:rotate(-18deg);background:#dcece9;border-radius:60%}.map-decor span:nth-child(1){top:-36%;left:-8%;width:330px;height:430px}.map-decor span:nth-child(2){top:70%;right:-8%;width:410px;height:310px}.map-decor span:nth-child(3){top:22%;right:20%;width:190px;height:100px;background:#edf4f8}.map-decor span:nth-child(4){top:-25%;right:30%;width:130px;height:200px;background:#d5e7e7}.map-cover{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;height:100%;gap:9px;text-align:center;padding:20px;background:#fff8}.map-pin{display:flex;align-items:center;justify-content:center;height:48px;width:48px;border-radius:50%;background:#e4f5f0;color:#18a390;margin-bottom:3px}.map-pin .icon{height:23px;width:23px}.map-cover strong{font-size:16px}.map-cover>span{font:500 12px Consolas,monospace;color:#8799ac}.map-cover button{margin-top:8px}.map-cover small{font-size:10px;color:#9ba8b7}.map-placeholder iframe{position:relative;z-index:2;width:100%;height:100%;border:0;display:block}.map-foot{padding:16px 24px 19px;display:flex;justify-content:space-between;gap:15px;align-items:center;color:#97a4b6;font-size:11px}.map-foot span{display:flex;align-items:center;gap:8px}.map-foot .icon{height:15px;width:15px}.map-foot strong{font:700 10px Consolas,monospace;color:#92a4b3;white-space:nowrap}.bottom-note{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:25px 1px 0;color:#91a0b1;font-size:11px}.bottom-note>div{display:flex;align-items:center;gap:8px}.bottom-illust{height:23px;width:23px;background:#284c72;color:#fff;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;font-weight:800;font-size:9px;letter-spacing:-1px}.bottom-note a{color:#507fae;font-weight:700}.bottom-note a:hover{text-decoration:underline}.dot-sep{margin:0 4px}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,35px);background:#183657;color:#fff;border-radius:9px;padding:12px 18px;font-size:12px;box-shadow:0 12px 24px #10305040;opacity:0;pointer-events:none;transition:all .22s;z-index:5}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:890px){.main-grid{grid-template-columns:1fr}.speed-main{padding-top:24px}.speed-gauge{height:205px;width:205px}.speed-card{min-height:auto}.ip-band-note{width:100%;margin-left:0}.top-status{display:none}}
@media(max-width:590px){.container{padding:0 14px}.content{padding-top:25px}.site-header{height:72px}.brand-emblem{height:38px;width:38px}.brand-text strong{font-size:21px}.header-right{gap:0}.page-top{align-items:start;flex-direction:column;gap:15px}.page-top h1{font-size:26px}.btn-refresh{align-self:flex-end;margin-top:-2px}.hero-card{padding:23px 19px 20px;border-radius:14px}.hero-ip{font-size:clamp(26px,7vw,38px);letter-spacing:-1.5px}.hero-ip.ipv6{font-size:20px}.hero-ip-row{gap:8px}.copy-btn{width:39px;height:39px}.hero-overline{font-size:9px}.hero-chip{font-size:9px}.ip-bands{gap:13px 18px}.ip-bands>div{gap:7px}.ip-bands strong{font-size:10px;overflow-wrap:anywhere}.ip-band-note{font-size:10px}.card-head{padding:17px 15px}.card-heading h2{font-size:15px}.card-heading p{font-size:10px}.card-icon{width:38px;height:38px}.card-pad,.diagnostic-body{padding:19px 15px}.detail-row{font-size:11px}.detail-row span{flex-basis:32%}.map-placeholder{height:280px;margin:13px 14px 0}.map-foot{padding:13px 14px;flex-direction:column;align-items:flex-start}.bottom-note{font-size:10px;align-items:start;gap:12px}.bottom-note>span{display:none}}

/* Version 1.2 refinements — full-width reputation, motion gauge and renewed branding */
.brand-emblem { width:49px; height:49px; border-radius:0; background:transparent; box-shadow:none; flex-shrink:0; }
.brand-emblem img { display:block; width:49px; height:49px; }
.brand-text strong { font-size:clamp(19px,2.2vw,25px); letter-spacing:-1.1px; }
.brand-text small { letter-spacing:1.75px; }
.footer-mark { width:23px; height:23px; object-fit:contain; }
.bottom-note a { display:inline-flex; gap:4px; align-items:center; }
.bottom-note a .icon { width:12px; height:12px; }
.bottom-note a:focus-visible { outline:2px solid #3678e1; outline-offset:3px; border-radius:2px; }
/* Blacklist now fills both columns, with three-up per-list results. */
.reputation-card { grid-column:1 / -1; min-height:0; }
.reputation-card .diagnostic-body { padding:22px 25px 24px; }
.reputation-card .blacklist-overview { min-height:86px; }
.reputation-card .blacklist-results { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.reputation-card .full-btn { width:auto; min-width:210px; margin-top:18px; }
.reputation-card .external-caption { text-align:left; }
/* Animated arc ring, orbiting highlight, subtle pulsing glow while testing. */
.speed-gauge { --gauge-progress:0deg; background:conic-gradient(from 220deg,#19c5c4 0deg,#2a70d5 var(--gauge-progress),#e6edf5 var(--gauge-progress) 265deg,transparent 265deg 360deg); transition:background .22s, box-shadow .3s; }
.speed-gauge:before { inset:13px; }
.speed-gauge:after { inset:26px; }
.speed-gauge .gauge-glow { position:absolute; inset:-13px; border-radius:50%; pointer-events:none; opacity:0; background:radial-gradient(circle,#28bfca20 0%, transparent 69%); }
.speed-gauge.is-testing .gauge-glow { opacity:1; animation:gauge-breathe 1.5s ease-in-out infinite; }
.speed-gauge.is-testing:after { animation:gauge-rotate 5s linear infinite; }
.speed-gauge .gauge-pointer { position:absolute; z-index:2; top:50%; left:50%; transform:rotate(calc(220deg + var(--gauge-progress))); transition:transform .22s ease-out; pointer-events:none; }
.speed-gauge .gauge-pointer span { display:block; position:absolute; left:-5px; top:-103px; width:10px; height:10px; background:#fff; border:3px solid #2476cb; border-radius:50%; box-shadow:0 0 0 3px #73ddea66,0 0 14px #30bdeb55; opacity:.65; }
.speed-gauge.is-testing .gauge-pointer span { box-shadow:0 0 0 6px #41e3dc55,0 0 21px #30bdeb77; opacity:1; }
.gauge-upper { transition:color .3s; }
.speed-gauge.is-testing .gauge-upper { color:#237ac7; }
.speed-gauge .speed-gauge-inner { z-index:3; }
.speed-state { min-height:18px; margin-bottom:14px; }
.speed-phases { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; gap:7px; margin:0 0 12px; }
.speed-phases span { display:flex; align-items:center; justify-content:center; gap:7px; padding:8px 3px; background:#f6f9fc; border:1px solid #eaf0f7; border-radius:7px; font:700 10px Consolas,monospace; color:#9aacbd; transition:background .24s,box-shadow .24s,color .24s,border .24s; }
.speed-phases b { font:700 11px system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
.speed-phases span.active { color:#1d69bd; background:#eaf5ff; border-color:#9eccec; box-shadow:0 0 0 3px #3985d010; animation:phase-pulse 1.3s ease-in-out infinite; }
.speed-phases span.done { color:#268a80; background:#f0fbf8; border-color:#c1e9dc; }
.speed-progress { height:6px; width:100%; background:#e8eef6; border-radius:99px; margin:0 0 17px; overflow:hidden; }
.speed-progress>span { width:0; height:100%; display:block; background:linear-gradient(90deg,#17bfbc,#3179d3); border-radius:99px; transition:width .16s ease-out; }
.speed-progress.active>span { box-shadow:0 0 12px #0ba3b1; }
.speed-progress.complete>span { background:linear-gradient(90deg,#19b5a1,#2f82b3); }
@keyframes gauge-rotate { to { transform:rotate(360deg); } }
@keyframes gauge-breathe { 50% { transform:scale(1.06);opacity:.65; } }
@keyframes phase-pulse { 50% { box-shadow:0 0 0 5px #3985d020; } }
@media (max-width:890px) { .reputation-card{ grid-column:1; } }
@media (max-width:590px) {
  .brand-emblem { width:40px; height:40px; }
  .brand-emblem img { width:40px; height:40px; }
  .brand-text strong { font-size:21px; }
  .brand-text small { font-size:8px; letter-spacing:1.3px; }
  .reputation-card .diagnostic-body{ padding:18px 15px; }
  .reputation-card .blacklist-results{ grid-template-columns:1fr; }
  .reputation-card .full-btn{ width:100%; }
  .speed-phases span { font-size:9px; gap:4px; }
  .speed-phases b { font-size:10px; }
  .speed-gauge .gauge-pointer span { top:-93px; }
}
@media (prefers-reduced-motion:reduce) {
  .speed-gauge.is-testing:after,.speed-gauge.is-testing .gauge-glow,.speed-phases span.active { animation:none; }
  .speed-gauge .gauge-pointer,.speed-progress>span { transition:none; }
}
