@font-face{font-family:Geist;src:url(/fonts/geist-latin-400-normal.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/geist-latin-500-normal.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/geist-latin-600-normal.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-400-normal.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-500-normal.woff2)format("woff2");font-weight:500;font-display:swap}:root{--frame:#0e0e0e;--main:#1a1a1a;--card:#212121;--card2:#2a2a2a;--hair:#2c2c2c;--hover:#222;--sel:#2a2a2a;--tx:#ececec;--mu:#b4b4b4;--fa:#8a8a8a;--dim:#4a4a4a;--skel:#262626;--ok:#4ade80;--warn:#fbbf24;--err:#f87171;--acct:#a996ff;--pri-bg:#ececec;--pri-tx:#111;--font:"Geist", ui-sans-serif, system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--r-s:6px;--r-m:8px;--r-l:10px;--r-xl:12px;--shadow-pop:0 12px 40px #00000073}[data-theme=light]{--frame:#e7e7e5;--main:#fafaf9;--card:#f1f1f0;--card2:#e6e6e4;--hair:#e2e2df;--hover:#f2f2f1;--sel:#ebebe9;--tx:#1a1a1a;--mu:#45454a;--fa:#6b6b6b;--dim:#c7c7c4;--skel:#ececea;--ok:#15803d;--warn:#b45309;--err:#b91c1c;--acct:#6247d6;--pri-bg:#1a1a1a;--pri-tx:#fafafa;--shadow-pop:0 12px 40px #00000024}*{box-sizing:border-box}html,body{height:100%}body{background:var(--frame);color:var(--tx);font:14px/1.5 var(--font);-webkit-font-smoothing:antialiased;margin:0}svg.i{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--acct);outline-offset:2px;border-radius:4px}.m{font-family:var(--mono);font-variant-numeric:tabular-nums}.fa{color:var(--fa)}.mu{color:var(--mu)}.ok{color:var(--ok)}.warn{color:var(--warn)}.err{color:var(--err)}.acct{color:var(--acct)}.skip{position:absolute;left:-999px}.skip:focus{z-index:100;background:var(--main);padding:8px 12px;top:12px;left:12px}.app{grid-template-columns:236px 1fr;gap:6px;height:100dvh;padding:6px;display:grid}.side{background:var(--main);border-radius:var(--r-l);flex-direction:column;padding:18px 10px 12px;display:flex;overflow-y:auto}.brand{align-items:baseline;gap:8px;padding:0 10px 18px;display:flex}.brand b{letter-spacing:-.01em;font-size:16px;font-weight:600}.brand span{font-family:var(--mono);color:var(--fa);font-size:11.5px}.ng{font-family:var(--mono);color:var(--fa);text-transform:uppercase;letter-spacing:.06em;padding:16px 10px 6px;font-size:11px}.nav a{border-radius:var(--r-m);height:34px;color:var(--mu);align-items:center;gap:10px;padding:0 10px;font-size:14px;display:flex}.nav a:hover{background:var(--hover);color:var(--tx)}.nav a.on{background:var(--sel);color:var(--tx)}.nav a .n{font-family:var(--mono);color:var(--fa);margin-left:auto;font-size:11.5px}.nav a .n.warn{color:var(--warn)}.me{border-top:1px solid var(--hair);align-items:center;gap:10px;margin-top:auto;padding:12px 10px 4px;display:flex}.me .t{font-size:13.5px;line-height:1.3}.me .t small{font-family:var(--mono);color:var(--fa);font-size:11px;display:block}.env{font-family:var(--mono);color:var(--warn);margin-left:auto;font-size:11px}.main{background:var(--main);border-radius:var(--r-l);position:relative;overflow-y:auto}.top{z-index:10;background:var(--main);border-bottom:1px solid var(--hair);align-items:center;gap:10px;height:56px;padding:0 28px;display:flex;position:sticky;top:0}.top .crumb{color:var(--fa);font-size:13.5px}.top .crumb b{color:var(--tx);font-weight:500}.search{border-radius:var(--r-m);background:var(--card);width:300px;height:34px;color:var(--fa);align-items:center;gap:8px;margin-left:auto;padding:0 10px;display:flex}.search input{min-width:0;color:var(--tx);background:0 0;border:0;outline:0;flex:1;font-size:13.5px}.search kbd{font-family:var(--mono);color:var(--fa);font-size:11px}.ib{border-radius:var(--r-m);width:34px;height:34px;color:var(--mu);place-items:center;display:grid}.ib:hover{background:var(--hover);color:var(--tx)}.menu-btn{display:none}.page{max-width:1240px;padding:28px 28px 72px}.ph{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:26px;display:flex}.ph h1{letter-spacing:-.015em;margin:0;font-size:26px;font-weight:600;line-height:1.2}.ph p{color:var(--fa);margin:4px 0 0;font-size:13.5px}.ph .act{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.btn{border-radius:var(--r-m);background:var(--card2);height:34px;color:var(--tx);white-space:nowrap;align-items:center;gap:7px;padding:0 13px;font-size:13.5px;transition:background .12s,opacity .12s;display:inline-flex}.btn:hover{background:var(--dim)}.btn.pri{background:var(--pri-bg);color:var(--pri-tx);font-weight:500}.btn.pri:hover{opacity:.88}.btn.gh{color:var(--mu);background:0 0}.btn.gh:hover{background:var(--hover);color:var(--tx)}.btn.danger{background:var(--err);color:#fff;font-weight:500}.btn[disabled]{opacity:.4;cursor:not-allowed}.seg{border-radius:var(--r-m);background:var(--card);gap:2px;padding:2px;display:inline-flex}.seg button{border-radius:var(--r-s);height:30px;color:var(--fa);font-family:var(--mono);padding:0 11px;font-size:12px}.seg button.on{background:var(--card2);color:var(--tx)}.seg button:hover:not(.on){color:var(--tx)}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--mu);font-size:13px}.field .help{color:var(--fa);font-size:12.5px}.inp,select.inp,textarea.inp{border-radius:var(--r-m);background:var(--card);height:36px;color:var(--tx);border:1px solid #0000;outline:0;padding:0 11px;font-size:14px}textarea.inp{resize:vertical;height:auto;padding:9px 11px;line-height:1.5}.inp:focus{border-color:var(--dim)}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.filters .inp{height:34px;font-size:13.5px}.filters .grow{flex:1;min-width:200px}.sw{background:var(--dim);border-radius:10px;flex:none;width:34px;height:20px;transition:background .15s;position:relative}.sw:after{content:"";background:var(--main);border-radius:50%;width:16px;height:16px;transition:left .15s;position:absolute;top:2px;left:2px}.sw[aria-checked=true]{background:var(--tx)}.sw[aria-checked=true]:after{left:16px}.kpis{grid-template-columns:repeat(5,1fr);margin-bottom:36px;display:grid}.kpi{border-left:1px solid var(--hair);padding:2px 22px}.kpi:first-child{border-left:0;padding-left:0}.kpi .l{color:var(--fa);font-size:13px}.kpi .v{font-family:var(--mono);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:28px;line-height:1.2}.kpi .d{font-family:var(--mono);color:var(--fa);margin-top:4px;font-size:12px}.kpi .d .ok,.kpi .d .err{margin-right:4px}.h2{align-items:baseline;gap:10px;margin:0 0 14px;display:flex}.h2 h2{margin:0;font-size:15.5px;font-weight:600}.h2 .m{color:var(--fa);font-size:12px}.h2 .more{color:var(--fa);align-items:center;gap:4px;margin-left:auto;font-size:13px;display:inline-flex}.h2 .more:hover{color:var(--tx)}.grid2{grid-template-columns:1.6fr 1fr;gap:40px;margin-bottom:40px;display:grid}.grid2.even{grid-template-columns:1fr 1fr}section+section{margin-top:40px}.grid2>section+section{margin-top:0}.bars{align-items:flex-end;gap:3px;height:150px;display:flex}.bars i{background:var(--dim);border-radius:2px 2px 0 0;flex:1;min-height:2px;transition:background .12s}.bars i:hover{background:var(--mu)}.bars i.cur{background:var(--tx)}.axis{font-family:var(--mono);color:var(--fa);justify-content:space-between;margin-top:8px;font-size:11px;display:flex}.stack{border-radius:3px;gap:2px;height:10px;margin:6px 0 18px;display:flex;overflow:hidden}.stack i{display:block}.legend{flex-direction:column;display:flex}.legend div{border-bottom:1px solid var(--hair);align-items:baseline;gap:10px;padding:9px 0;font-size:14px;display:flex}.legend div:last-child{border-bottom:0}.legend .sq{border-radius:2px;flex:none;align-self:center;width:8px;height:8px}.legend .m{color:var(--mu);margin-left:auto;font-size:13px}.legend .m em{color:var(--fa);text-align:right;width:46px;margin-left:10px;font-style:normal;display:inline-block}.spark{width:100%;height:120px;display:block}.rows{flex-direction:column;display:flex}.row{border-bottom:1px solid var(--hair);align-items:center;gap:14px;padding:12px 0;display:flex}.row:last-child{border-bottom:0}.row .w{flex:1;min-width:0}.row .w b{font-size:14px;font-weight:500;display:block}.row .w span{color:var(--fa);font-size:13px}.row .tm{font-family:var(--mono);color:var(--fa);white-space:nowrap;font-size:12px}.tw{margin:0 -8px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13.5px}th{text-align:left;font-family:var(--mono);color:var(--fa);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:1px solid var(--hair);padding:0 8px 10px;font-size:11px;font-weight:400}th.r,td.r{text-align:right}td{border-bottom:1px solid var(--hair);vertical-align:middle;white-space:nowrap;padding:11px 8px}tbody tr:last-child td{border-bottom:0}tbody tr.click{cursor:pointer}tbody tr.click:hover td{background:var(--hover)}td.m,td .m{font-size:12.5px}.who{align-items:center;gap:10px;min-width:0;display:flex}.who .t{min-width:0;line-height:1.3}.who .t b{font-weight:500;display:block}.who .t span{color:var(--fa);font-size:12.5px}.av{background:var(--card2);width:28px;height:28px;color:var(--mu);border-radius:50%;flex:none;place-items:center;font-size:11.5px;font-weight:500;display:grid}.av.lg{width:44px;height:44px;font-size:15px}.prov{align-items:center;gap:6px;display:inline-flex}.prov svg{width:15px;height:15px}.gh-mark{fill:var(--tx)}.plan-free{color:var(--fa)}.plan-team{color:var(--acct)}.pager{color:var(--fa);align-items:center;gap:8px;margin-top:14px;font-size:13px;display:flex}.pager .btn{margin-left:auto}.pager .btn+.btn{margin-left:0}.note{border-radius:var(--r-m);background:var(--card);color:var(--mu);align-items:flex-start;gap:10px;margin-bottom:18px;padding:12px 14px;font-size:13.5px;display:flex}.note svg{color:var(--fa);margin-top:2px}.meter{background:var(--hair);vertical-align:middle;border-radius:2px;width:80px;height:4px;margin-right:8px;display:inline-block;overflow:hidden}.meter i{background:var(--mu);height:100%;display:block}.meter.hot i{background:var(--warn)}.kv{grid-template-columns:150px 1fr;gap:0;display:grid}.kv div{border-bottom:1px solid var(--hair);padding:10px 0;font-size:13.5px}.kv div:nth-child(odd){color:var(--fa)}.kv div:nth-last-child(-n+2){border-bottom:0}.plans{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.plan{background:var(--card);border-radius:var(--r-xl);padding:18px 20px}.plan h3{align-items:baseline;gap:8px;margin:0;font-size:15px;font-weight:600;display:flex}.plan h3 .m{color:var(--mu);margin-left:auto;font-size:13px;font-weight:400}.plan p{color:var(--fa);margin:4px 0 14px;font-size:13px}.plan ul{color:var(--mu);margin:0;padding:0;font-size:13.5px;list-style:none}.plan li{gap:8px;padding:4px 0;display:flex}.plan li svg{color:var(--fa);width:14px;height:14px;margin-top:3px}.plan .ft{border-top:1px solid var(--hair);font-family:var(--mono);color:var(--fa);margin-top:14px;padding-top:12px;font-size:12px}.svc{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:40px;display:grid}.sv{background:var(--card);border-radius:var(--r-xl);padding:16px 18px}.sv .h{align-items:baseline;gap:8px;font-weight:500;display:flex}.sv .h .m{margin-left:auto;font-size:12px}.sv .s{font-family:var(--mono);color:var(--fa);gap:14px;margin-top:8px;font-size:12px;display:flex}.ticks{gap:2px;height:18px;margin-top:12px;display:flex}.ticks i{background:var(--dim);border-radius:1px;flex:1}.ticks i.b{background:var(--warn)}.ticks i.x{background:var(--err)}.log{font-family:var(--mono);font-size:12.5px}.log .l{border-bottom:1px solid var(--hair);grid-template-columns:150px 160px 1fr 120px;align-items:baseline;gap:14px;padding:9px 8px;display:grid}.log .l:hover{background:var(--hover)}.log .l .a{color:var(--tx)}.log .l .t{color:var(--fa)}.log .l .ip{color:var(--fa);text-align:right}.log .l .msg{font-family:var(--font);color:var(--mu);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.log .day{color:var(--fa);text-transform:uppercase;letter-spacing:.06em;padding:18px 8px 8px;font-size:11px}.scrim{z-index:40;opacity:0;pointer-events:none;background:#00000080;transition:opacity .18s;position:fixed;inset:0}.scrim.on{opacity:1;pointer-events:auto}.drawer{background:var(--main);border-radius:var(--r-l);z-index:50;width:min(520px,100vw - 12px);box-shadow:var(--shadow-pop);flex-direction:column;transition:transform .22s cubic-bezier(.2,0,0,1);display:flex;position:fixed;top:6px;bottom:6px;right:6px;transform:translate(calc(100% + 12px))}.drawer.on{transform:none}.drawer.dim:after{content:"";border-radius:inherit;background:#00000080;position:absolute;inset:0}.drawer .dh{align-items:center;gap:14px;padding:20px 22px 16px;display:flex}.drawer .dh .t b{font-size:17px;font-weight:600;display:block}.drawer .dh .t span{color:var(--fa);font-size:13px}.drawer .dh .ib{align-self:flex-start;margin-left:auto}.tabs{border-bottom:1px solid var(--hair);gap:2px;padding:0 22px;display:flex}.tabs button{height:38px;color:var(--fa);padding:0 10px;font-size:13.5px;position:relative}.tabs button.on{color:var(--tx)}.tabs button.on:after{content:"";background:var(--tx);border-radius:1px;height:2px;position:absolute;bottom:-1px;left:10px;right:10px}.drawer .db{flex:1;padding:18px 22px;overflow-y:auto}.drawer .df{border-top:1px solid var(--hair);gap:8px;padding:14px 22px;display:flex}.drawer .df .btn.gh.err{color:var(--err);margin-left:auto}.modal{opacity:0;pointer-events:none;z-index:60;background:var(--main);border-radius:var(--r-xl);width:min(440px,100vw - 32px);box-shadow:var(--shadow-pop);padding:22px;transition:opacity .16s,transform .16s;position:fixed;top:50%;left:50%;transform:translate(-50%,-48%)}.modal.on{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)}.modal h3{margin:0 0 8px;font-size:17px;font-weight:600}.modal p{color:var(--mu);margin:0 0 14px;font-size:14px}.modal ul{color:var(--mu);margin:0 0 18px;padding-left:18px;font-size:13.5px}.modal .bt{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.toast{background:var(--pri-bg);color:var(--pri-tx);border-radius:var(--r-m);opacity:0;z-index:70;align-items:center;gap:14px;padding:10px 14px;font-size:13.5px;transition:opacity .16s,transform .16s;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%,12px)}.toast.on{opacity:1;transform:translate(-50%)}.toast button{text-underline-offset:3px;font-weight:500;text-decoration:underline}.states{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:40px;display:grid}.stc{background:var(--card);border-radius:var(--r-xl);flex-direction:column;min-height:250px;padding:16px 18px 20px;display:flex}.stc .lab{font-family:var(--mono);color:var(--fa);text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px;font-size:11px}.empty{text-align:center;max-width:260px;margin:auto}.empty b{margin-bottom:4px;font-weight:500;display:block}.empty p{color:var(--fa);margin:0 0 14px;font-size:13.5px}.sk{background:var(--skel);border-radius:4px;height:12px;margin:14px 0;position:relative;overflow:hidden}.sk:after{content:"";background:linear-gradient(90deg,#0000,#ffffff0d,#0000);animation:1.3s infinite shim;position:absolute;inset:0;transform:translate(-100%)}@keyframes shim{to{transform:translate(100%)}}.phone{flex-wrap:wrap;align-items:flex-start;gap:28px;display:flex}.phone iframe{background:var(--frame);border:0;border-radius:18px;flex:none;width:375px;height:760px}.phone .desc{max-width:360px;color:var(--mu);font-size:14px}.phone .desc li{margin-bottom:6px}@media (width<=1100px){.kpis{grid-template-columns:repeat(3,1fr);row-gap:22px}.kpi:nth-child(4){border-left:0;padding-left:0}.grid2,.grid2.even{grid-template-columns:1fr}.svc,.plans,.states{grid-template-columns:1fr 1fr}}@media (width<=820px){.app{grid-template-columns:1fr;gap:0;padding:0}.main{border-radius:0}.side{z-index:45;border-radius:0;width:260px;transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.side.on{box-shadow:var(--shadow-pop);transform:none}.menu-btn{display:grid}.top{padding:0 12px 0 6px}.top .crumb{display:none}.search{flex:1;width:auto;margin-left:0}.search kbd{display:none}.page{padding:20px 16px 56px}.ph h1{font-size:22px}.ph .act{width:100%;margin-left:0}.kpis{grid-template-columns:1fr 1fr}.kpi{padding:0 0 0 16px}.kpi:nth-child(odd){border-left:0;padding-left:0}.kpi:nth-child(4){border-left:1px solid var(--hair);padding-left:16px}.kpi .v{font-size:24px}.svc,.plans,.states{grid-template-columns:1fr}.log .l{grid-template-columns:1fr;gap:2px}.log .l .ip{text-align:left}.kv{grid-template-columns:120px 1fr}.ib,.btn,.seg button{min-height:40px}}@media (prefers-reduced-motion:reduce){*,:after{transition:none!important;animation:none!important}}.me .ib{width:28px;height:28px;margin-left:4px}.signin{place-items:center;min-height:100dvh;padding:24px;display:grid}.signin .box{background:var(--main);border-radius:var(--r-xl);width:min(360px,100%);padding:28px 26px 24px}.signin .brand{padding:0 0 18px}.signin h1{letter-spacing:-.01em;margin:0 0 6px;font-size:20px;font-weight:600}.signin p{color:var(--fa);margin:0 0 20px;font-size:13.5px}.signin .btn{justify-content:center;width:100%;height:40px}.signin .btn+.btn{margin-top:8px}.signin .btn svg{width:16px;height:16px}.signin .ft{border-top:1px solid var(--hair);font-family:var(--mono);color:var(--fa);margin-top:18px;padding-top:14px;font-size:11.5px}@media (width<=820px){.drawer .df{flex-wrap:wrap}}.me .t{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.signin form{gap:12px;display:grid}.signin .btn.pri{margin-top:6px}.signin .msg{color:var(--err);min-height:0;margin:0;font-size:13px}
