:root{--vpna:#37f5a6;--vpnb:#42d7ff;--vpnc:#6f78ff}
.vpn-speed-main{background:radial-gradient(circle at 14% 16%,rgba(55,245,166,.14),transparent 28%),radial-gradient(circle at 88% 10%,rgba(66,215,255,.13),transparent 25%),radial-gradient(circle at 66% 39%,rgba(98,108,255,.08),transparent 34%),linear-gradient(180deg,#040a0f 0,#071219 52%,#040a0f 100%)}
.vpn-speed-hero:after{content:"VPN";color:transparent;-webkit-text-stroke:1px rgba(55,245,166,.045)}.vpn-speed-hero .srpm-badge.cyan{border-color:#35efaa;background:linear-gradient(90deg,rgba(36,197,136,.17),rgba(50,227,183,.12))}.vpn-speed-hero .srpm-badge.blue{border-color:#3dcddd;background:rgba(42,164,192,.12)}.vpn-speed-hero .srpm-hero h1>span:last-child,.vpn-speed-hero h1>span:last-child{background:linear-gradient(90deg,#47f3b3,#53dfff 48%,#7c83ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.vpn-mini-shield{display:inline-grid!important;place-items:center;width:.92em;height:.92em;border-radius:.23em;margin-right:.08em;background:linear-gradient(145deg,#0b3b2c,#081c1a)!important;border:2px solid #48efaf;box-shadow:0 0 24px rgba(55,245,166,.28);font-size:.44em!important;vertical-align:.18em;letter-spacing:-.04em;color:#fff!important}.vpn-device-stage{min-height:315px}.vpn-glow-shield{position:absolute;width:188px;height:210px;left:7%;top:35px;clip-path:polygon(50% 0,91% 15%,88% 64%,73% 84%,50% 100%,27% 84%,12% 64%,9% 15%);display:grid;place-items:center;background:linear-gradient(145deg,rgba(12,56,40,.96),rgba(5,17,20,.97));border:2px solid #42eca9;box-shadow:0 0 16px #3fe8a4,0 0 52px rgba(42,203,145,.45),inset 0 0 38px rgba(48,210,165,.12)}.vpn-glow-shield span{font-size:78px;font-weight:950;color:#fff;text-shadow:0 0 20px rgba(55,245,166,.4)}.vpn-glow-shield small{position:absolute;bottom:43px;font-size:10px;letter-spacing:.22em;color:#67f0bd}.vpn-client{position:absolute;width:390px;min-height:288px;right:1%;top:4px;transform:rotate(5deg);border:7px solid #1d2b2c;border-radius:28px;background:linear-gradient(180deg,#0c1a1a,#081116);box-shadow:0 28px 68px rgba(0,0,0,.65),0 0 0 2px #07100f,0 0 32px rgba(55,245,166,.14);padding:17px 16px;overflow:hidden}.vpn-client:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 90%,rgba(55,245,166,.12),transparent 35%);pointer-events:none}.vpn-client-head{position:relative;display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.06)}.vpn-client-head b{font-size:9px;color:#e9fff7}.vpn-client-head small{font-size:7px;color:#65efbd;border:1px solid rgba(55,245,166,.23);border-radius:999px;padding:4px 6px}.vpn-client-score{position:relative;margin-top:12px;padding:13px 14px;border-radius:13px;background:linear-gradient(135deg,rgba(36,179,128,.14),rgba(25,68,76,.09));border:1px solid rgba(55,245,166,.16);display:grid;gap:2px}.vpn-client-score small{font-size:7px;letter-spacing:.11em;color:#62efbd;font-weight:950}.vpn-client-score strong{font-size:34px;line-height:1;color:#fff;letter-spacing:-.045em}.vpn-client-score strong em{font-style:normal;font-size:13px;color:#83f5ce}.vpn-client-score span{font-size:8px;color:#9ebbb1}.vpn-client-row{position:relative;display:grid;grid-template-columns:auto 1fr auto auto 1fr;gap:6px;align-items:center;margin-top:12px;padding:9px;border:1px solid rgba(255,255,255,.05);border-radius:9px;background:rgba(255,255,255,.02)}.vpn-client-row span{font-size:6px;color:#738b86}.vpn-client-row b{font-size:9px;color:#edfdf8}.vpn-client-row i{font-style:normal;color:#55e9b8}.vpn-client-meter{height:7px;border-radius:999px;background:#17272a;margin:12px 0 9px;overflow:hidden}.vpn-client-meter i{display:block;width:87%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2fe79b,#49d9d2 58%,#6c7cff);box-shadow:0 0 16px rgba(55,245,166,.35)}.vpn-client-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.vpn-client-stats div{padding:7px 8px;border-radius:8px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.vpn-client-stats span{display:block;font-size:6px;color:#758f88;letter-spacing:.06em}.vpn-client-stats b{display:block;margin-top:3px;font-size:9px;color:#effff8}
.vpn-dashboard .srpm-panel{border-color:rgba(55,245,166,.17)}.vpn-dashboard .srpm-kicker{color:#64efbf}.vpn-dashboard .srpm-panel-chip{border-color:rgba(55,245,166,.24);background:rgba(26,111,79,.12);color:#c7ffec}.vpn-step-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.vpn-test-btn{min-height:60px;border-radius:11px;border:1px solid rgba(255,255,255,.08);background:#091319;color:#fff;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:9px 12px;text-align:left;cursor:pointer}.vpn-test-btn>span:first-child{display:grid;place-items:center;width:33px;height:33px;border-radius:9px;background:rgba(55,245,166,.09);border:1px solid rgba(55,245,166,.18);color:#69f0c2;font-weight:950}.vpn-test-btn .vpn-btn-copy{display:grid;gap:2px}.vpn-test-btn b{font-size:12px}.vpn-test-btn small{font-size:8px;color:#7d918d}.vpn-test-btn i{font-style:normal;font-size:18px;color:#55e8b7}.vpn-test-btn.tunnel{background:linear-gradient(90deg,rgba(34,210,143,.13),rgba(51,176,208,.10));border-color:rgba(55,245,166,.22)}.vpn-test-btn:hover{border-color:rgba(55,245,166,.42)}.vpn-test-btn:disabled{opacity:.55;cursor:not-allowed}.vpn-baseline-state{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;margin-top:9px;padding:9px 10px;border-radius:10px;background:#081116;border:1px solid rgba(255,255,255,.06)}.vpn-baseline-state span{font-size:8px;color:#71847f;text-transform:uppercase;letter-spacing:.08em}.vpn-baseline-state strong{font-size:10px;color:#d9eee6}.vpn-baseline-state button{border:0;background:transparent;color:#65e8ba;font-size:8px;font-weight:900;cursor:pointer}.vpn-gauge{--progress:0}.vpn-gauge:before{background:conic-gradient(#36efa2 calc(var(--progress)*1%),rgba(70,92,89,.18) 0)!important}.vpn-diagnosis{display:grid;gap:5px;margin-top:10px}.vpn-diagnosis p{margin:0;padding:7px 9px;border-radius:8px;background:#071116;border:1px solid rgba(55,245,166,.07);color:#a8bbb5;font-size:9px;line-height:1.45}.vpn-compare-table{display:grid;gap:5px;margin-top:10px}.vpn-compare-table>div{display:grid;grid-template-columns:1.15fr repeat(3,1fr);gap:7px;align-items:center;padding:8px 9px;border-radius:8px;background:#081116;border:1px solid rgba(255,255,255,.05)}.vpn-compare-table>div:first-child{background:transparent;border:0;padding-top:0}.vpn-compare-table span{font-size:8px;color:#718780}.vpn-compare-table b{font-size:7px;color:#6f8a80;text-transform:uppercase}.vpn-compare-table strong,.vpn-compare-table em{font-size:9px;color:#ecfff8;font-style:normal}.vpn-compare-table em{color:#6cebbe}.vpn-route-result{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:8px}.vpn-route-result div{padding:9px;border:1px solid rgba(55,245,166,.08);border-radius:9px;background:#071016}.vpn-route-result span,.vpn-route-result strong{display:block}.vpn-route-result span{font-size:7px;color:#728680}.vpn-route-result strong{margin-top:4px;font-size:9px;color:#eafff6;overflow-wrap:anywhere}.vpn-result-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:12px}.vpn-result-cards article{padding:12px;border-radius:12px;border:1px solid rgba(55,245,166,.10);background:#081116}.vpn-result-cards span,.vpn-result-cards strong,.vpn-result-cards small{display:block}.vpn-result-cards span{font-size:7px;color:#6d837b;letter-spacing:.07em}.vpn-result-cards strong{margin-top:5px;color:#effff8;font-size:20px}.vpn-result-cards small{margin-top:3px;color:#698078;font-size:7px}.vpn-explainer{border-color:rgba(55,245,166,.20)!important;background:linear-gradient(135deg,rgba(13,46,35,.92),rgba(9,25,31,.95))!important}.vpn-explainer>a{border-color:rgba(55,245,166,.18)!important}.vpn-explainer>a>span{color:#67efbf!important}
@media(max-width:1050px){.vpn-result-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.vpn-client{right:-20px;transform:scale(.86) rotate(4deg);transform-origin:center right}.vpn-glow-shield{left:3%;transform:scale(.85)}.vpn-step-buttons{grid-template-columns:1fr}.vpn-result-cards{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.vpn-device-stage{min-height:300px}.vpn-client{width:340px;right:-62px;transform:scale(.72) rotate(4deg);transform-origin:center right}.vpn-glow-shield{left:0;top:45px;transform:scale(.68)}.vpn-compare-table>div{grid-template-columns:1fr 1fr;gap:5px}.vpn-compare-table>div span{grid-column:1/-1}.vpn-route-result{grid-template-columns:1fr}.vpn-result-cards{grid-template-columns:1fr 1fr}}


/* V1.55.1 readability + desktop IP lookup + mobile hero centering */
.vpn-dashboard .srpm-input-panel{display:flex;flex-direction:column}

/* Make the functional metric labels and values easier to read without enlarging the page title. */
.vpn-client-head b{font-size:11px}.vpn-client-head small{font-size:8.5px}
.vpn-client-score small{font-size:9px}.vpn-client-score strong{font-size:39px}.vpn-client-score strong em{font-size:15px}.vpn-client-score span{font-size:10px}
.vpn-client-row span{font-size:8px}.vpn-client-row b{font-size:11px}
.vpn-client-stats span{font-size:8px}.vpn-client-stats b{font-size:11px}
.vpn-dashboard .srpm-input-panel .nw-config-grid label>span{font-size:14px}.vpn-dashboard .srpm-input-panel .nw-config-grid label>small{font-size:10.5px;line-height:1.5}
.vpn-test-btn b{font-size:14px}.vpn-test-btn small{font-size:10px}.vpn-baseline-state span{font-size:10px}.vpn-baseline-state strong{font-size:12px}.vpn-baseline-state button{font-size:10px}
.vpn-dashboard .srpm-results-head>div>span{font-size:21px}.vpn-dashboard .srpm-results-head>div>small{font-size:12px}
.vpn-dashboard .nw-family-status{font-size:11px}
.vpn-dashboard .nw-family-gauge-core span{font-size:12px}.vpn-dashboard .nw-family-gauge-core small{font-size:13px}
.vpn-dashboard .nw-family-result-panel .eyebrow{font-size:12px}.vpn-dashboard .nw-family-result-panel>p{font-size:15px}
.vpn-diagnosis p{font-size:11.5px;line-height:1.5;padding:9px 11px}
.vpn-dashboard .nw-steam-advanced>summary span{font-size:15px}.vpn-dashboard .nw-steam-advanced>summary small{font-size:11px}
.vpn-compare-table span{font-size:11px}.vpn-compare-table b{font-size:9.5px}.vpn-compare-table strong,.vpn-compare-table em{font-size:13px}
.vpn-route-result span{font-size:10px}.vpn-route-result strong{font-size:12.5px}.vpn-route-result small{display:block;margin-top:4px;color:#7f938c;font-size:10px;line-height:1.35}
.vpn-result-cards span{font-size:10px}.vpn-result-cards strong{font-size:24px}.vpn-result-cards small{font-size:9.5px;line-height:1.4}

/* Desktop-only public-IP action uses the intentionally open space in the left test panel. */
.vpn-ip-lookup{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:auto;padding:34px 10px 22px;min-height:250px}
.vpn-ip-orb{flex:0 0 190px;width:190px;height:190px;border-radius:50%;border:1px solid rgba(66,239,174,.44);background:radial-gradient(circle at 38% 30%,rgba(64,244,176,.22),transparent 36%),linear-gradient(145deg,#0a2a24,#071319 72%);box-shadow:0 0 0 9px rgba(55,245,166,.025),0 0 42px rgba(55,245,166,.15),inset 0 0 34px rgba(55,245,166,.08);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;padding:18px}
.vpn-ip-orb:hover{transform:translateY(-3px);border-color:rgba(72,245,180,.78);box-shadow:0 0 0 10px rgba(55,245,166,.035),0 0 55px rgba(55,245,166,.22),inset 0 0 38px rgba(55,245,166,.11)}
.vpn-ip-orb:focus-visible{outline:3px solid rgba(82,221,255,.8);outline-offset:4px}
.vpn-ip-orb[disabled]{cursor:wait;opacity:.75;transform:none}
.vpn-ip-orb-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:14px;background:linear-gradient(145deg,#39eaa6,#45d8ef);color:#051413;font-size:16px;font-weight:950;box-shadow:0 0 22px rgba(55,245,166,.25)}
.vpn-ip-orb strong{font-size:15px;line-height:1.08;letter-spacing:.025em}
.vpn-ip-orb small{max-width:132px;color:#8eaaa1;font-size:9px;line-height:1.35}
.vpn-ip-output{width:min(250px,42%);min-width:210px;padding:17px 18px;border-radius:18px;border:1px solid rgba(55,245,166,.13);background:linear-gradient(145deg,rgba(9,24,24,.95),rgba(7,16,22,.97));box-shadow:inset 0 1px rgba(255,255,255,.025)}
.vpn-ip-output span,.vpn-ip-output strong,.vpn-ip-output small{display:block}
.vpn-ip-output span{font-size:10px;color:#65efbd;font-weight:900;letter-spacing:.1em}
.vpn-ip-output strong{margin-top:7px;color:#f0fff9;font-size:17px;line-height:1.25;overflow-wrap:anywhere}
.vpn-ip-output small{margin-top:7px;color:#839891;font-size:10.5px;line-height:1.45}
.vpn-ip-output.is-live{border-color:rgba(55,245,166,.32);box-shadow:0 0 28px rgba(55,245,166,.07),inset 0 1px rgba(255,255,255,.025)}
.vpn-ip-output.is-error{border-color:rgba(255,122,122,.28)}

@media(max-width:1180px){
  /* Keep the same IP-identify feature in the same logical spot on tablet/mobile. */
  .vpn-ip-lookup{display:flex;margin-top:24px;min-height:0;padding:22px 6px 12px;gap:16px}
  .vpn-ip-orb{flex:0 0 160px;width:160px;height:160px;padding:15px}
  .vpn-ip-orb-icon{width:40px;height:40px;border-radius:12px;font-size:14px}
  .vpn-ip-orb strong{font-size:13.5px}.vpn-ip-orb small{font-size:8.5px}
  .vpn-ip-output{width:min(250px,45%);min-width:190px;padding:15px 16px}
}

@media(max-width:760px){
  .vpn-dashboard .srpm-results-head>div>span{font-size:20px}.vpn-dashboard .srpm-results-head>div>small{font-size:12px}
  .vpn-dashboard .nw-family-gauge-core span{font-size:12px}.vpn-dashboard .nw-family-gauge-core small{font-size:13px}
  .vpn-dashboard .nw-family-result-panel .eyebrow{font-size:12px}.vpn-dashboard .nw-family-result-panel>p{font-size:15px}
  .vpn-diagnosis p{font-size:12px}
  .vpn-compare-table span{font-size:11.5px}.vpn-compare-table b{font-size:10px}.vpn-compare-table strong,.vpn-compare-table em{font-size:13.5px}
  .vpn-route-result span{font-size:10.5px}.vpn-route-result strong{font-size:13px}.vpn-route-result small{font-size:10.5px}
  .vpn-result-cards span{font-size:10.5px}.vpn-result-cards strong{font-size:23px}.vpn-result-cards small{font-size:10px}
}

/* Center the combined shield/client hero artwork on phones instead of letting the client hang off the right edge. */
@media(max-width:640px){
  .vpn-device-stage{min-height:310px;overflow:hidden}
  .vpn-glow-shield{left:3%;top:49px;transform:scale(.68);transform-origin:top left}
  .vpn-client{width:340px;left:29%;right:auto;top:12px;transform:scale(.72) rotate(4deg);transform-origin:top left}
}
@media(max-width:430px){
  .vpn-device-stage{min-height:292px}
  .vpn-glow-shield{left:2%;top:54px;transform:scale(.62);transform-origin:top left}
  .vpn-client{width:300px;left:30%;right:auto;top:15px;transform:scale(.74) rotate(4deg);transform-origin:top left}
}

/* V1.55.2: mobile IP lookup — same feature and placement, scaled for phone width. */
@media(max-width:640px){
  .vpn-ip-lookup{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;margin-top:22px;padding:20px 0 8px;width:100%}
  .vpn-ip-orb{flex:0 0 172px;width:172px;height:172px;padding:16px}
  .vpn-ip-orb-icon{width:43px;height:43px;font-size:15px}
  .vpn-ip-orb strong{font-size:14px;line-height:1.1}.vpn-ip-orb small{font-size:9px;max-width:130px}
  .vpn-ip-output{width:100%;min-width:0;max-width:360px;padding:16px 17px;text-align:center}
  .vpn-ip-output span{font-size:10px}.vpn-ip-output strong{font-size:16px}.vpn-ip-output small{font-size:10px}
}
@media(max-width:430px){
  .vpn-ip-lookup{margin-top:20px;padding-top:18px}
  .vpn-ip-orb{flex-basis:164px;width:164px;height:164px}
  .vpn-ip-output{max-width:100%}
}
