:root{--brand:#2332FF;--brand-deep:#1A24CC;--brand-soft:#E5E7FF;--brand-tint:#F1F2FF;--brand-2:#5663FF;--ink:#0A0B14;--ink-80:#23263A;--ink-60:#4B4F66;--ink-45:#737793;--ink-30:#A6A9BF;--canvas:#F4F5FA;--card:#FFFFFF;--rail:#FBFBFE;--line:#E4E6EF;--line-2:#D2D5E2;--ok:#0E9F6E;--ok-2:#34D399;--ok-bg:#E7F7F0;--alarm:#E02424;--alarm-bg:#FDECEC;--insuf:#9CA0B5;--warn:#C2780C;--warn-2:#F0A92E;--warn-bg:#FCF3E5;--d:"Maven Pro",ui-sans-serif,system-ui,sans-serif;--s:"Open Sans",ui-sans-serif,system-ui,sans-serif;--m:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--e:cubic-bezier(.16,1,.3,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--s);color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;line-height:1.45;font-size:14px}a{color:inherit;text-decoration:none}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.m{font-family:var(--m)}::selection{background:var(--brand);color:#fff}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:8px;border:3px solid var(--canvas)}button{font:inherit}.gnav{height:48px;background:var(--ink);color:#fff;display:flex;align-items:center;padding:0 14px;position:-webkit-sticky;position:sticky;top:0;z-index:30}.gnav .brand{display:inline-flex;align-items:center;gap:9px;padding-right:18px;margin-right:6px;border-right:1px solid rgba(255,255,255,.12);height:30px}.gnav .brand img{height:22px}.gnav .brand .tag{font-family:var(--m);font-weight:600;font-size:11px;letter-spacing:.22em;color:#8E97FF}.gnav .svc{display:flex;align-items:center;gap:8px;font-weight:600;font-size:13.5px;padding:0 12px;height:48px}.gnav .svc svg{width:15px;height:15px;color:#7DE3B8}.gnav .gsearch{flex:1 1;max-width:420px;margin:0 14px;height:32px;border-radius:7px;background:rgba(255,255,255,.08);display:flex;align-items:center;gap:9px;padding:0 11px;color:rgba(255,255,255,.55);font-size:13px}.gnav .gsearch svg{width:15px;height:15px}.gnav .gsearch kbd{margin-left:auto;font-family:var(--m);font-size:11px;color:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.18);border-radius:5px;padding:0 6px}.gnav .spacer{margin-left:auto}.gnav .gitem{display:flex;align-items:center;gap:7px;height:48px;padding:0 12px;font-size:13px;color:rgba(255,255,255,.85);cursor:pointer;transition:background .15s;background:none;border:0}.gnav .gitem:hover{background:rgba(255,255,255,.07)}.gnav .gitem svg{width:16px;height:16px}.gnav .gitem .pip{width:6px;height:6px;border-radius:999px;background:var(--alarm)}.gnav .acct{font-weight:600}.wrap{display:grid;grid-template-columns:212px minmax(0,1fr)}@media(max-width:900px){.wrap{grid-template-columns:1fr}.rail{display:none}}.rail{background:var(--rail);border-right:1px solid var(--line);min-height:calc(100vh - 48px);position:-webkit-sticky;position:sticky;top:48px;height:calc(100vh - 48px);overflow:auto;padding:8px 0;display:flex;flex-direction:column}.rail .rt{font-family:var(--d);font-weight:700;font-size:13px;padding:12px 16px 6px}.rail a,.rail button{display:flex;align-items:center;gap:10px;padding:8px 16px;font-size:13.5px;color:var(--ink-60);cursor:pointer;width:100%;background:none;border:0;border-left:2px solid transparent;text-align:left;font-family:var(--s)}.rail a svg,.rail button svg{width:16px;height:16px;opacity:.8}.rail a:hover,.rail button:hover{background:#F0F1F8;color:var(--ink)}.rail a.on{background:var(--brand-tint);color:var(--brand-deep);border-left-color:var(--brand);font-weight:600}.rail a.on svg{color:var(--brand);opacity:1}.rail a .b{margin-left:auto;font-family:var(--m);font-size:10.5px;background:var(--alarm);color:#fff;font-weight:600;padding:0 6px;border-radius:999px;line-height:16px}.rail .grp{font-family:var(--m);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-30);padding:14px 16px 5px}.rail .rail-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:6px}.main{min-width:0}.ctxbar{background:var(--card);border-bottom:1px solid var(--line);padding:13px 22px 0}.crumbs{font-size:12.5px;color:var(--ink-45);display:flex;align-items:center;gap:7px}.crumbs a{color:var(--brand)}.crumbs .sep{color:var(--ink-30)}.titlerow{display:flex;align-items:center;gap:12px;margin:8px 0 12px}.titlerow h1{font-family:var(--d);font-weight:700;font-size:1.42rem;letter-spacing:-.01em}.titlerow .actions{margin-left:auto;display:flex;align-items:center;gap:9px}.tabs{display:flex;gap:2px}.tab{padding:10px 14px;font-size:13.5px;font-weight:600;color:var(--ink-45);border-bottom:2px solid transparent}.tab.on{color:var(--brand-deep);border-bottom-color:var(--brand)}.btn{font-family:var(--s);font-weight:600;font-size:13px;border-radius:7px;padding:8px 13px;cursor:pointer;border:1px solid var(--line-2);background:var(--card);color:var(--ink-80);display:inline-flex;align-items:center;gap:8px;transition:background .15s,border-color .15s}.btn:hover{background:#F6F7FB;border-color:var(--ink-30)}.btn svg{width:15px;height:15px}.btn.pri{background:var(--brand);color:#fff;border-color:var(--brand)}.btn.pri:hover{background:var(--brand-deep)}.btn.full{width:100%;justify-content:center;padding:12px 16px;font-size:14px}.body{padding:18px 22px 44px;flex-direction:column;gap:14px}.body,.hero{display:flex}.hero{align-items:center;gap:24px;flex-wrap:wrap;padding:2px 2px 4px}.hero .lead{min-width:0}.eyebrow{font-family:var(--m);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-45);display:flex;align-items:center;gap:9px}.eyebrow .live{display:inline-flex;align-items:center;gap:7px;color:var(--ok)}.eyebrow .live .d{position:relative;width:7px;height:7px}.eyebrow .live .d:before{opacity:.6;animation:ping 2.4s var(--e) infinite}.eyebrow .live .d:after,.eyebrow .live .d:before{content:"";position:absolute;inset:0;border-radius:999px;background:var(--ok)}@keyframes ping{0%{transform:scale(1);opacity:.6}70%,to{transform:scale(2.6);opacity:0}}.hero h2{font-family:var(--d);font-weight:800;font-size:clamp(1.5rem,2.6vw,2rem);letter-spacing:-.02em;line-height:1.04;margin-top:8px}.hero h2 .b{color:var(--brand)}.hero .vitals{margin-left:auto;display:flex;gap:26px;flex-wrap:wrap}.vital .l{font-family:var(--m);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-30)}.vital .n{font-family:var(--d);font-weight:800;font-size:1.5rem;letter-spacing:-.02em;line-height:1.05;margin-top:3px}.vital .n small{font-size:.55em;color:var(--ink-30);font-weight:700}.vital .n.good{color:var(--ok)}.srow{display:flex;align-items:center;gap:10px;padding:8px 2px 2px}.srow .dot{width:10px;height:10px;border-radius:999px}.srow h3{font-family:var(--d);font-weight:700;font-size:15px}.srow .meta{margin-left:auto;font-family:var(--m);font-size:11px;color:var(--ink-30)}.card{background:var(--card);border:1px solid var(--line);border-radius:9px;overflow:hidden}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:12px;gap:12px}.stat{position:relative;background:var(--card);border:1px solid var(--line);border-radius:9px;padding:14px 15px;overflow:hidden;transition:box-shadow .18s,border-color .18s;display:block}.stat:hover{box-shadow:0 8px 22px -16px rgba(10,11,20,.22);border-color:var(--line-2)}.stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--ok)}.stat.warn:before{background:var(--warn-2)}.stat.crit:before{background:var(--alarm)}.stat.idle:before{background:var(--insuf)}.stat .top{display:flex;align-items:center;gap:11px}.stat .ic{width:34px;height:34px;border-radius:8px;background:var(--brand-tint);color:var(--brand);display:grid;place-items:center;flex:none}.stat .ic svg{width:18px;height:18px}.stat .nm{font-family:var(--d);font-weight:700;font-size:14px;letter-spacing:-.01em}.stat .meta{font-family:var(--m);font-size:10.5px;color:var(--ink-45);margin-top:1px}.stat .row{display:flex;align-items:center;gap:10px;margin-top:13px}.stat .region{font-family:var(--m);font-size:11px;color:var(--ink-45)}.stat .arw{margin-left:auto;color:var(--ink-30)}.stchip{display:inline-flex;align-items:center;gap:6px;font-family:var(--m);font-size:11.5px;font-weight:600;padding:3px 9px}.stchip,.stchip .d{border-radius:999px}.stchip .d{width:7px;height:7px;background:currentColor}.stchip.ok{color:var(--ok);background:var(--ok-bg)}.stchip.warn{color:var(--warn);background:var(--warn-bg)}.stchip.crit{color:var(--alarm);background:var(--alarm-bg)}.stchip.idle{color:var(--insuf);background:#EFEFF4}.vpn{padding:18px;display:grid;grid-template-columns:1fr auto;grid-gap:18px;gap:18px;align-items:center}@media(max-width:640px){.vpn{grid-template-columns:1fr}}.vpn .title{display:flex;align-items:center;gap:12px}.vpn .title .ic{width:40px;height:40px;border-radius:10px;background:var(--ok-bg);color:var(--ok);display:grid;place-items:center;flex:none}.vpn .title .ic svg{width:20px;height:20px}.vpn h3{font-family:var(--d);font-weight:700;font-size:1.1rem}.vpn .meta{font-family:var(--m);font-size:11px;color:var(--ink-45);margin-top:2px}.vpn .stats-row{display:flex;gap:26px;margin-top:14px}.vpn .stat2 .v{font-family:var(--d);font-weight:800;font-size:1.3rem}.vpn .stat2 .l{font-family:var(--m);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-30);margin-top:3px}.vpn .cta{display:flex;flex-direction:column;gap:9px;min-width:180px}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:12px;gap:12px}.tile{background:var(--card);border:1px solid var(--line);border-radius:9px;padding:14px 16px;display:flex;align-items:center;gap:12px;transition:box-shadow .18s,border-color .18s}.tile:hover{box-shadow:0 8px 22px -16px rgba(10,11,20,.2);border-color:var(--line-2)}.tile .ic{width:34px;height:34px;border-radius:8px;background:var(--brand-tint);color:var(--brand);display:grid;place-items:center;flex:none}.tile .ic svg{width:17px;height:17px}.tile .nm{font-family:var(--d);font-weight:700;font-size:13.5px}.tile .sub{font-family:var(--m);font-size:10.5px;color:var(--ink-45);margin-top:1px}.tile .arw{margin-left:auto;color:var(--ink-30);transition:transform .2s var(--e)}.tile:hover .arw{transform:translateX(3px)}.foot{font-family:var(--m);font-size:11px;color:var(--ink-30);padding:6px 2px}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(120% 80% at 50% -10%,#EDEFFb,transparent 60%),var(--canvas)}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:44px;max-width:420px;width:100%;text-align:center;box-shadow:0 30px 80px -50px rgba(10,11,20,.4)}.auth-card .logo{height:30px;margin-bottom:24px}.auth-card h1{font-family:var(--d);font-weight:800;font-size:1.6rem;letter-spacing:-.02em;margin-bottom:10px}.auth-card p{color:var(--ink-45);margin-bottom:26px}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.lgin{--ink:#0A0B14;--ink-80:#1F2233;--ink-60:#4B4E66;--ink-40:#7A7D99;--ink-20:#B7B9CC;--hairline:rgba(10,11,20,.12);font-family:var(--s);color:var(--ink);background:#fff;min-height:100vh}.lgin a{color:inherit;text-decoration:none}.lgin .split{display:grid;grid-template-columns:minmax(0,1fr);min-height:100vh}@media(min-width:920px){.lgin .split{grid-template-columns:minmax(0,1fr) minmax(0,1.04fr)}}.lgin .pane-form{display:flex;flex-direction:column;justify-content:space-between;padding:32px clamp(24px,5vw,56px);min-height:100vh;min-width:0}.lgin .logo{display:inline-flex;align-items:center;gap:13px;color:var(--ink)}.lgin .logo img{height:34px;width:auto;display:block}.lgin .logo .cloud{font-family:var(--m);font-weight:600;font-size:15px;letter-spacing:.22em;text-transform:uppercase;color:var(--brand);transform:translateY(-1px)}.lgin .form-inner{width:min(400px,100%);margin:auto;padding-block:24px;min-width:0}.lgin .welcome{margin:34px 0 30px}.lgin .welcome h1{font-family:var(--d);font-weight:800;font-size:clamp(2rem,4vw,2.6rem);letter-spacing:-.02em;line-height:1.05}.lgin .welcome p{color:var(--ink-60);margin-top:12px;font-size:1.02rem}.lgin .sso{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;font-family:var(--s);font-weight:600;font-size:15px;padding:16px 22px;border-radius:12px;border:1px solid transparent;cursor:pointer;background:var(--ink);color:#fff;box-shadow:0 14px 38px -18px rgba(10,11,20,.55);transition:transform .25s var(--e),background .25s var(--e)}.lgin .sso:hover{background:var(--ink-80);transform:translateY(-1px)}.lgin .sso .ar{transition:transform .25s var(--e)}.lgin .sso:hover .ar{transform:translateX(3px)}.lgin .ssub{margin-top:16px;display:flex;align-items:center;gap:9px;font-family:var(--m);font-size:11.5px;letter-spacing:.04em;color:var(--ink-40)}.lgin .ssub .lock{width:14px;height:14px;color:var(--brand)}.lgin .noacct{margin-top:26px;color:var(--ink-60);font-size:14.5px}.lgin .noacct a{color:var(--brand);font-weight:600}.lgin .noacct a:hover{text-decoration:underline}.lgin .form-foot{display:flex;justify-content:space-between;align-items:center;width:min(400px,100%);margin:auto auto 0;font-family:var(--m);font-size:11px;letter-spacing:.06em;color:var(--ink-40)}.lgin .form-foot a:hover{color:var(--ink-80)}.lgin .dark{position:relative;background:var(--ink);color:#fff;overflow:hidden}.lgin .dark .dotgrid,.lgin .dark .glow,.lgin .dark .markwm{position:absolute;inset:0;pointer-events:none}.lgin .dark .dotgrid{background-image:radial-gradient(rgba(35,50,255,.28) 1px,transparent 0);background-size:24px 24px;opacity:.32}.lgin .dark .markwm{background:url(/zaproo-mark-neg.png) no-repeat;background-position:right -44px top -34px;background-size:auto 60%;opacity:.07}.lgin .dark .glow{background:radial-gradient(58% 50% at 75% 8%,rgba(35,50,255,.45),transparent 70%)}.lgin .pane-show{display:none}@media(min-width:920px){.lgin .pane-show{display:flex;flex-direction:column;justify-content:space-between;padding:44px clamp(32px,3.5vw,64px)}}.lgin .show-inner{position:relative;z-index:2;display:flex;flex-direction:column;height:100%;justify-content:center;gap:30px;max-width:480px}.lgin .pill{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:6px 13px;font-family:var(--m);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.75);background:rgba(255,255,255,.04)}.lgin .dot{position:relative;display:inline-flex;width:7px;height:7px;flex:none}.lgin .dot:before{opacity:.7;animation:ping 2.2s var(--e) infinite}.lgin .dot:after,.lgin .dot:before{content:"";position:absolute;inset:0;border-radius:999px;background:#22c55e}.lgin .dot.blue:after,.lgin .dot.blue:before{background:var(--brand)}.lgin .show-inner h2{font-family:var(--d);font-weight:800;font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:1.08;letter-spacing:-.02em;color:#fff}.lgin .show-inner h2 .b{color:#8b95ff}.lgin .show-lede{color:rgba(255,255,255,.62);font-size:1.02rem;max-width:40ch}.lgin .panel{position:relative;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:20px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.lgin .panel .hdline{display:flex;align-items:center;justify-content:space-between}.lgin .panel .ttl{font-family:var(--m);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.45)}.lgin .panel .ver{display:inline-flex;align-items:center;gap:8px;font-family:var(--m);font-size:11px;letter-spacing:.08em;color:rgba(255,255,255,.8)}.lgin .nodes{margin-top:16px;display:flex;flex-direction:column;gap:1px;background:rgba(255,255,255,.08);border-radius:9px;overflow:hidden}.lgin .node{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;background:rgba(13,14,22,.6)}.lgin .node .name{font-family:var(--m);font-size:12px;color:rgba(255,255,255,.82);display:inline-flex;align-items:center;gap:9px}.lgin .node .ping{font-family:var(--m);font-size:12px;color:#8b95ff;font-weight:600}.lgin .stat2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1px;gap:1px;margin-top:16px;background:rgba(255,255,255,.08);border-radius:9px;overflow:hidden}.lgin .stat2 .s{background:rgba(13,14,22,.6);padding:14px}.lgin .stat2 .s .v{font-family:var(--m);font-weight:700;font-size:1.5rem;color:#fff;line-height:1}.lgin .stat2 .s .l{font-family:var(--m);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:8px}.lgin .log{margin-top:16px;border-top:1px solid rgba(255,255,255,.1);padding-top:14px;font-family:var(--m);font-size:11.5px;line-height:1.9;color:rgba(255,255,255,.55);height:92px;overflow:hidden}.lgin .log .ln{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lgin .log .ln .t{color:rgba(255,255,255,.32)}.lgin .log .ln .ok{color:#22c55e}.lgin .log .ln .bl{color:#8b95ff}.lgin .show-foot{position:relative;z-index:2;font-family:var(--d);font-weight:600;color:rgba(255,255,255,.7)}.lgin .show-foot .mono{display:block;font-family:var(--m);font-weight:500;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-top:8px}.lgin .field{margin-bottom:16px}.lgin .field label{display:block;font-family:var(--m);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-60);margin-bottom:8px}.lgin .field input{width:100%;padding:13px 15px;border:1px solid var(--hairline);border-radius:11px;background:#F8F8FC;font-family:var(--s);font-size:15px;color:var(--ink);transition:border-color .2s,box-shadow .2s,background .2s}.lgin .field input::placeholder{color:var(--ink-20)}.lgin .field input:focus{outline:none;border-color:var(--brand);background:#fff;box-shadow:0 0 0 4px rgba(35,50,255,.12)}.lgin .err{color:#E02424;font-size:13px;margin:-4px 0 14px}.lgin .totp-toggle{background:none;border:0;color:var(--brand);font-family:var(--s);font-weight:600;font-size:13px;cursor:pointer;padding:0;margin:-4px 0 16px}.lgin .totp-toggle:hover{text-decoration:underline}.lgin .divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:var(--ink-40);font-family:var(--m);font-size:11px;letter-spacing:.18em;text-transform:uppercase}.lgin .divider:after,.lgin .divider:before{content:"";flex:1 1;height:1px;background:var(--hairline)}.lgin .sso-alt{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 18px;border:1px solid var(--hairline);border-radius:12px;background:#fff;font-weight:600;font-size:14.5px;color:var(--ink-80);cursor:pointer;transition:border-color .2s,background .2s}.lgin .sso-alt:hover{border-color:var(--ink-20);background:#F8F8FC}.lgin .sso[disabled]{opacity:.6;cursor:not-allowed}