@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #080b10;--bg-1: #0d1219;--bg-2: #121922;--bg-3: #18212c;--bg-hover: #1b2532;--line: #1c2632;--line-2: #273443;--line-3: #344456;--text: #e7edf4;--text-2: #a5b1bf;--text-3: #6f7f92;--accent: #4da3ff;--accent-2: #2b7fd9;--accent-soft: rgba(77, 163, 255, .12);--ok: #2fd08a;--info: #5ab0ff;--watch: #c6d65a;--warn: #f5b83d;--high: #ff7a3d;--critical: #ff4d6a;--tamper: #c38cff;--muted: #7d8a9a;--radius: 6px;--radius-lg: 10px;--shadow: 0 1px 0 rgba(255, 255, 255, .03) inset, 0 8px 24px rgba(0, 0, 0, .35);--font: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--sidebar: 228px;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 var(--font);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}::selection{background:#4da3ff59}.mono{font-family:var(--mono);font-size:.92em;letter-spacing:-.01em}.dim{color:var(--text-2)}.faint{color:var(--text-3)}.nowrap{white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}*{scrollbar-width:thin;scrollbar-color:var(--line-3) transparent}.shell{display:grid;grid-template-columns:var(--sidebar) 1fr;height:100%}.sidebar{background:linear-gradient(180deg,#0b1016,#090c11);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.brand{display:flex;align-items:center;gap:10px;padding:18px 18px 16px;border-bottom:1px solid var(--line)}.brand-mark{width:30px;height:30px;flex:none}.brand-name{font-weight:600;font-size:15px;letter-spacing:.01em}.brand-sub{font-size:10.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:.12em;margin-top:1px}.nav{padding:12px 10px;display:flex;flex-direction:column;gap:2px;flex:1;overflow-y:auto}.nav-section{font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-3);padding:14px 10px 6px}.nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius);color:var(--text-2);font-weight:500;position:relative}.nav a:hover{background:var(--bg-2);color:var(--text)}.nav a.active{background:var(--bg-3);color:var(--text)}.nav a.active:before{content:"";position:absolute;left:-10px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}.nav a svg{width:17px;height:17px;opacity:.85}.nav .count{margin-left:auto;font-size:11px;font-family:var(--mono);padding:1px 7px;border-radius:10px;background:var(--bg-3);color:var(--text-2)}.nav .count.hot{background:#ff4d6a29;color:var(--critical)}.sidebar-foot{border-top:1px solid var(--line);padding:12px 14px;display:flex;align-items:center;gap:10px}.avatar{width:30px;height:30px;border-radius:50%;background:var(--bg-3);border:1px solid var(--line-2);display:grid;place-items:center;font-weight:600;font-size:12px;color:var(--text-2);flex:none}.who{min-width:0;flex:1}.who b{display:block;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.who span{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em}.main{display:flex;flex-direction:column;min-width:0;min-height:0}.topbar{height:56px;flex:none;display:flex;align-items:center;gap:16px;padding:0 24px;border-bottom:1px solid var(--line);background:#080b10d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.topbar h1{font-size:16px;font-weight:600;margin:0;letter-spacing:.005em}.topbar .crumb{color:var(--text-3);font-size:13px}.topbar .spacer{flex:1}.search{position:relative;width:280px}.search input{width:100%;height:34px;padding:0 12px 0 34px;background:var(--bg-1);border:1px solid var(--line-2);border-radius:var(--radius);outline:none}.search input:focus{border-color:var(--accent)}.search svg{position:absolute;left:10px;top:9px;width:16px;height:16px;color:var(--text-3)}.live{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--text-2)}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 #2fd08a99;animation:pulse-ok 2s infinite}.live-dot.off{background:var(--muted);animation:none}@keyframes pulse-ok{0%{box-shadow:0 0 #2fd08a8c}70%{box-shadow:0 0 0 7px #2fd08a00}to{box-shadow:0 0 #2fd08a00}}.clock{font-family:var(--mono);font-size:12px;color:var(--text-2)}.pace-chip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;padding:4px 9px;border-radius:20px;border:1px solid rgba(245,184,61,.35);color:var(--warn);background:#f5b83d14}.content{flex:1;overflow-y:auto;padding:22px 24px 40px}.page-head{display:flex;align-items:flex-end;gap:16px;margin-bottom:18px}.page-head h2{margin:0;font-size:20px;font-weight:600}.page-head p{margin:4px 0 0;color:var(--text-2);max-width:760px}.page-head .spacer{flex:1}.panel{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);min-width:0}.panel-head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);min-height:46px}.panel-head h3{margin:0;font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-2)}.panel-head .spacer{flex:1}.panel-body{padding:16px}.panel-body.flush{padding:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 14px;border-radius:var(--radius);border:1px solid var(--line-3);background:var(--bg-2);color:var(--text);font-weight:500;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s}.btn:hover{background:var(--bg-hover);border-color:#42566c}.btn:disabled{opacity:.45;cursor:not-allowed}.btn svg{width:15px;height:15px}.btn.primary{background:var(--accent-2);border-color:var(--accent);color:#fff}.btn.primary:hover{background:#3690ee}.btn.danger{background:#ff4d6a1f;border-color:#ff4d6a80;color:#ff8da1}.btn.danger:hover{background:#ff4d6a33}.btn.warn{background:#f5b83d1a;border-color:#f5b83d73;color:var(--warn)}.btn.ok{background:#2fd08a1a;border-color:#2fd08a73;color:var(--ok)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn.ghost:hover{background:var(--bg-2);color:var(--text)}.btn.sm{height:28px;padding:0 10px;font-size:12.5px}.btn.xs{height:24px;padding:0 8px;font-size:12px}.field{display:flex;flex-direction:column;gap:6px}.field label,.label{font-size:11.5px;font-weight:500;color:var(--text-2);text-transform:uppercase;letter-spacing:.07em}.field .hint{font-size:12px;color:var(--text-3)}.input,.select,.textarea{height:34px;padding:0 10px;border-radius:var(--radius);background:var(--bg);border:1px solid var(--line-2);outline:none;width:100%}.textarea{height:auto;min-height:72px;padding:8px 10px;resize:vertical;line-height:1.5}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input.mono,.textarea.mono{font-family:var(--mono);font-size:13px}.input.invalid{border-color:var(--critical)}.check{display:inline-flex;align-items:center;gap:9px;cursor:pointer;-webkit-user-select:none;user-select:none}.check input{accent-color:var(--accent);width:15px;height:15px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:16px;border:1px solid var(--line-2);background:var(--bg-1);color:var(--text-2);cursor:pointer;font-size:12.5px;font-weight:500}.chip:hover{color:var(--text);border-color:var(--line-3)}.chip.on{background:var(--bg-3);color:var(--text);border-color:#4b6078}.chip .n{font-family:var(--mono);font-size:11px;color:var(--text-3)}.tag{display:inline-flex;align-items:center;gap:5px;padding:1px 7px;border-radius:4px;font-size:11px;font-weight:500;border:1px solid var(--line-2);color:var(--text-2);background:var(--bg-2);white-space:nowrap}.tag.src-agent{color:#8fc8ff;border-color:#5ab0ff59}.tag.src-server{color:#b5c2d1}.tag.src-admin{color:#ffc977;border-color:#f5b83d59}.tag.src-integration{color:#d6b0ff;border-color:#c38cff59}.tag.src-simulator{color:var(--text-3)}.badge{--c: var(--muted);display:inline-flex;align-items:center;gap:7px;height:24px;padding:0 10px 0 8px;border-radius:4px;font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:var(--c);background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 38%,transparent)}.badge:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c);flex:none}.badge.lg{height:32px;font-size:13px;padding:0 14px 0 12px}.badge.lg:before{width:9px;height:9px}.badge.pulse:before{animation:pulse-dot 1.4s infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 color-mix(in srgb,var(--c) 70%,transparent)}60%{box-shadow:0 0 0 6px transparent}}.tone-ok{--c: var(--ok)}.tone-info{--c: var(--info)}.tone-watch{--c: var(--watch)}.tone-warn{--c: var(--warn)}.tone-high{--c: var(--high)}.tone-critical{--c: var(--critical)}.tone-tamper{--c: var(--tamper)}.tone-muted{--c: var(--muted)}.sev{display:inline-flex;align-items:center;justify-content:center;min-width:64px;height:22px;padding:0 8px;border-radius:3px;font-size:11px;font-weight:700;letter-spacing:.1em}.sev.HIGH{background:var(--critical);color:#fff}.sev.MEDIUM{background:var(--warn);color:#1b1300}.sev.LOW{background:var(--bg-3);color:var(--text-2);border:1px solid var(--line-3)}.trust{display:flex;align-items:center;gap:9px;min-width:120px}.trust-track{flex:1;height:6px;background:var(--bg-3);border-radius:3px;overflow:hidden;position:relative}.trust-fill{height:100%;border-radius:3px;transition:width .6s cubic-bezier(.2,.8,.2,1),background .4s}.trust-num{font-family:var(--mono);font-size:12.5px;width:26px;text-align:right}.table{width:100%;border-collapse:separate;border-spacing:0}.table th{text-align:left;font-size:11px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--bg-1);position:sticky;top:0;z-index:1;white-space:nowrap}.table td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle}.table tbody tr{transition:background .15s}.table tbody tr.click{cursor:pointer}.table tbody tr.click:hover{background:var(--bg-2)}.table tbody tr:last-child td{border-bottom:none}.table tr.flash td{animation:row-flash 1.8s ease-out}@keyframes row-flash{0%{background:#4da3ff2e}to{background:transparent}}.cell-main{font-weight:500}.cell-sub{font-size:12px;color:var(--text-3);margin-top:1px}.os{display:inline-flex;align-items:center;gap:6px;color:var(--text-2);font-size:12.5px}.os svg{width:15px;height:15px}.kpis{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;margin-bottom:16px}.kpi{--c: var(--text-2);background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:13px 14px 12px;position:relative;overflow:hidden;cursor:pointer;transition:border-color .15s,transform .15s}.kpi:hover{border-color:var(--line-3)}.kpi:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--c);opacity:.85}.kpi .k-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--text-3);display:flex;align-items:center;gap:6px}.kpi .k-label i{width:7px;height:7px;border-radius:50%;background:var(--c);display:inline-block}.kpi .k-value{font-size:30px;font-weight:500;letter-spacing:-.02em;margin-top:6px;font-variant-numeric:tabular-nums;line-height:1.1}.kpi .k-sub{font-size:11.5px;color:var(--text-3);margin-top:2px}.kpi.hot{border-color:color-mix(in srgb,var(--c) 50%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--c) 9%,var(--bg-1)),var(--bg-1))}.kpi.hot .k-value{color:var(--c)}.kpi.total{--c: var(--accent)}.kpi .bump{animation:bump .5s ease-out;display:inline-block}@keyframes bump{0%{transform:translateY(6px);opacity:0}to{transform:none;opacity:1}}.grid{display:grid;gap:16px}.g-overview{grid-template-columns:minmax(0,1.75fr) minmax(340px,1fr)}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-device{grid-template-columns:minmax(300px,.9fr) minmax(0,1.25fr) minmax(320px,1fr);align-items:start}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;align-items:center;gap:10px}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.mt{margin-top:16px}.kv{display:grid;grid-template-columns:136px minmax(0,1fr);gap:0}.kv dt,.kv dd{padding:7px 0;border-bottom:1px solid var(--line);margin:0}.kv dt{color:var(--text-3);font-size:12.5px}.kv dd{font-size:13px;overflow-wrap:anywhere}.kv dt:last-of-type,.kv dd:last-of-type{border-bottom:none}.map-wrap{position:relative}.map-wrap svg{display:block;width:100%;height:auto}.land-dot{fill:#233042}.site-ring{fill:none;stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:ring 2.2s ease-out infinite}@keyframes ring{0%{transform:scale(.6);opacity:.9}to{transform:scale(2.6);opacity:0}}.site-label{font:600 11px var(--font);fill:var(--text);letter-spacing:.04em;paint-order:stroke;stroke:var(--bg-1);stroke-width:4px}.site-sub{font:400 10.5px var(--mono);fill:var(--text-2);paint-order:stroke;stroke:var(--bg-1);stroke-width:4px}.map-legend{position:absolute;left:14px;bottom:12px;display:flex;gap:14px;font-size:11px;color:var(--text-3)}.map-legend span{display:inline-flex;align-items:center;gap:6px}.map-legend i{width:8px;height:8px;border-radius:50%;display:inline-block}.sites{display:flex;flex-direction:column}.region{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);padding:12px 16px 6px}.site{display:grid;grid-template-columns:minmax(0,1fr) 140px 46px;gap:14px;align-items:center;padding:10px 16px;border-top:1px solid var(--line);cursor:pointer}.site:hover{background:var(--bg-2)}.site-name{font-weight:500;display:flex;align-items:center;gap:8px}.site-meta{font-size:12px;color:var(--text-3)}.stackbar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--bg-3);gap:1px}.stackbar span{height:100%;transition:flex-grow .5s}.site-count{font-family:var(--mono);text-align:right;color:var(--text-2)}.feed{list-style:none;margin:0;padding:0}.feed li{display:grid;grid-template-columns:62px 10px minmax(0,1fr);gap:10px;padding:9px 16px;border-top:1px solid var(--line);align-items:start;animation:slide-in .45s ease-out both}.feed li:first-child{border-top:none}.feed .t{font-family:var(--mono);font-size:11.5px;color:var(--text-3);padding-top:1px}.feed .d{width:8px;height:8px;border-radius:50%;margin-top:5px;background:var(--c, var(--muted))}.feed .x{min-width:0;font-size:13px}.feed .x b{font-weight:600;font-family:var(--mono);font-size:12px;margin-right:6px}@keyframes slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.alert-mini{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 16px;border-top:1px solid var(--line);cursor:pointer;animation:slide-in .4s ease-out both}.alert-mini:first-child{border-top:none}.alert-mini:hover{background:var(--bg-2)}.alert-mini .title{font-weight:500}.alert-mini .meta{font-size:12px;color:var(--text-3)}.timeline{list-style:none;margin:0;padding:4px 0 0;position:relative}.timeline:before{content:"";position:absolute;left:81px;top:8px;bottom:8px;width:1px;background:var(--line-2)}.tl{display:grid;grid-template-columns:70px 24px minmax(0,1fr);gap:0;padding:7px 0;align-items:start;animation:tl-in .55s cubic-bezier(.2,.8,.2,1) both}.tl .time{font-family:var(--mono);font-size:12px;color:var(--text-2);text-align:right;padding-right:12px;padding-top:1px}.tl .time small{display:block;font-size:10.5px;color:var(--text-3)}.tl .node{width:11px;height:11px;border-radius:50%;background:var(--bg-1);border:2px solid var(--c, var(--line-3));margin:4px auto 0;position:relative;z-index:1}.tl.major .node{width:13px;height:13px;background:var(--c);margin-top:3px;box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 18%,transparent)}.tl .body{padding-left:8px;min-width:0}.tl .title{font-size:13.5px}.tl.major .title{font-weight:600}.tl .meta{display:flex;gap:6px;margin-top:3px;align-items:center;flex-wrap:wrap}.tl.fresh{animation:tl-in .55s cubic-bezier(.2,.8,.2,1) both,tl-glow 2.4s ease-out}@keyframes tl-in{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}@keyframes tl-glow{0%{background:color-mix(in srgb,var(--c, var(--accent)) 16%,transparent)}to{background:transparent}}.gauge{position:relative;width:168px;height:104px;margin:0 auto}.gauge svg{width:168px;height:104px;overflow:visible}.gauge .val{position:absolute;left:0;right:0;top:46px;text-align:center;font-size:34px;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.gauge .cap{position:absolute;left:0;right:0;top:86px;text-align:center;font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.1em}.gauge path.arc{transition:stroke-dashoffset .8s cubic-bezier(.2,.8,.2,1),stroke .4s}.signals{width:100%;border-collapse:collapse}.signals td{padding:7px 0;border-bottom:1px solid var(--line);font-size:13px;vertical-align:top}.signals tr:last-child td{border-bottom:none}.sig-ico{width:22px}.sig-ico svg{width:15px;height:15px;margin-top:1px}.sig-pts{text-align:right;font-family:var(--mono);font-size:12px;white-space:nowrap;padding-left:8px!important}.sig-obs{display:block;font-family:var(--mono);font-size:11.5px;color:var(--text-3);margin-top:2px;overflow-wrap:anywhere}.sig-note{display:block;font-size:11.5px;color:var(--warn);margin-top:2px}.factor{display:flex;justify-content:space-between;font-size:12.5px;padding:4px 0;color:var(--text-2)}.factor b{font-family:var(--mono);font-weight:500;color:var(--text)}.alert-card{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:16px;padding:16px 18px;border-top:1px solid var(--line);animation:slide-in .4s ease-out both}.alert-card:first-child{border-top:none}.alert-card.resolved{opacity:.55}.alert-card.suppressed{opacity:.7}.alert-card h4{margin:0;font-size:15px;font-weight:600;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.alert-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 18px;margin-top:10px}.alert-grid div span{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.09em;color:var(--text-3)}.alert-grid div b{font-weight:500;font-size:13px;overflow-wrap:anywhere}.reco{margin-top:12px;padding:10px 12px;border-left:2px solid var(--accent);background:var(--accent-soft);border-radius:0 var(--radius) var(--radius) 0;font-size:13px;color:#cfe3ff}.reco b{color:var(--accent);font-size:11px;text-transform:uppercase;letter-spacing:.09em;display:block;margin-bottom:2px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#030508a8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;display:grid;place-items:center;animation:fade .15s}@keyframes fade{0%{opacity:0}}.modal{width:min(520px,calc(100vw - 32px));background:var(--bg-1);border:1px solid var(--line-2);border-radius:var(--radius-lg);box-shadow:0 24px 64px #0009;animation:pop .18s ease-out}@keyframes pop{0%{transform:translateY(8px) scale(.98);opacity:0}}.modal-head{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.modal-head h3{margin:0;font-size:15px}.modal-body{padding:18px;display:flex;flex-direction:column;gap:14px}.modal-foot{padding:12px 18px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.notice{padding:10px 12px;border-radius:var(--radius);font-size:13px;border:1px solid var(--line-2);background:var(--bg-2);color:var(--text-2)}.notice.warn{border-color:#f5b83d66;background:#f5b83d12;color:#f8d38a}.notice.danger{border-color:#ff4d6a66;background:#ff4d6a12;color:#ffb3c0}.notice.ok{border-color:#2fd08a66;background:#2fd08a12;color:#9be8c4}.notice.info{border-color:#4da3ff59;background:var(--accent-soft);color:#bcdcff}.toast-stack{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;flex-direction:column;gap:8px;width:360px}.toast{background:var(--bg-2);border:1px solid var(--line-3);border-left:3px solid var(--c, var(--accent));border-radius:var(--radius);padding:11px 14px;box-shadow:var(--shadow);animation:toast-in .25s ease-out;font-size:13px;cursor:pointer}.toast b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--c, var(--accent));margin-bottom:2px}@keyframes toast-in{0%{transform:translate(16px);opacity:0}}.zone-card{padding:16px;display:flex;flex-direction:column;gap:12px;cursor:pointer;transition:border-color .15s}.zone-card:hover{border-color:var(--line-3)}.zone-code{font-family:var(--mono);font-size:12px;color:var(--accent)}.zone-card h4{margin:2px 0 0;font-size:15px;font-weight:600}.signal-pills{display:flex;flex-wrap:wrap;gap:5px}.list-editor{display:flex;flex-direction:column;gap:6px}.list-editor .item{display:flex;gap:6px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.weight{display:grid;grid-template-columns:160px minmax(0,1fr) 46px 58px;gap:12px;align-items:center;padding:6px 0}.weight input[type=range]{accent-color:var(--accent);width:100%}.bands{display:flex;height:26px;border-radius:4px;overflow:hidden;font-size:11px;font-weight:600;letter-spacing:.06em}.bands div{display:grid;place-items:center;color:#0b0f14;white-space:nowrap;overflow:hidden}.section-title{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);margin:0 0 12px;display:flex;align-items:center;gap:8px}.section-title svg{width:15px;height:15px;color:var(--accent)}.code{font-family:var(--mono);font-size:12.5px;background:var(--bg);border:1px solid var(--line-2);border-radius:var(--radius);padding:12px 14px;white-space:pre-wrap;word-break:break-all;position:relative;color:#cfe0f2}.copy{position:absolute;top:8px;right:8px}.secret{font-family:var(--mono);font-size:14px;padding:12px 14px;border:1px dashed rgba(245,184,61,.6);background:#f5b83d0f;border-radius:var(--radius);color:#ffd98c;word-break:break-all}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:16px}.tabs button{background:none;border:none;padding:10px 14px;color:var(--text-2);cursor:pointer;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.on{color:var(--text);border-bottom-color:var(--accent)}.sim-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(380px,1fr);gap:16px;align-items:start}.fleet-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}.mini{border:1px solid var(--line);border-radius:var(--radius);padding:8px 9px;cursor:pointer;background:var(--bg-1);position:relative;transition:border-color .15s,background .15s}.mini:hover{border-color:var(--line-3)}.mini.sel{border-color:var(--accent);background:var(--bg-2)}.mini .code{all:unset;font-family:var(--mono);font-size:12px;font-weight:500}.mini .st{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;margin-top:3px;display:flex;align-items:center;gap:5px;color:var(--c)}.mini .st i{width:6px;height:6px;border-radius:50%;background:var(--c);display:inline-block}.mini.alarm{animation:mini-alarm .8s infinite}@keyframes mini-alarm{50%{border-color:var(--critical);background:#ff4d6a1f}}.laptop{width:100%;max-width:640px;margin:0 auto}.laptop-lid{background:#1a1f26;border-radius:14px 14px 4px 4px;padding:14px 14px 18px;border:1px solid #2b333d;box-shadow:0 30px 60px #00000073;position:relative}.laptop-lid.alarm{animation:lid-alarm .7s infinite}@keyframes lid-alarm{50%{box-shadow:0 0 0 3px var(--critical),0 0 60px #ff4d6a8c}}.cam{width:6px;height:6px;border-radius:50%;background:#0a0d10;border:1px solid #333c47;position:absolute;top:5px;left:50%;transform:translate(-50%)}.screen{aspect-ratio:16 / 10;border-radius:4px;overflow:hidden;position:relative;background:linear-gradient(135deg,#1d3b5c,#142337 45%,#0d1520)}.screen.off{background:#050607}.screen .menubar{height:22px;background:#0a0e148c;display:flex;align-items:center;gap:12px;padding:0 10px;font-size:11px;color:#d7e2ee;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.screen .menubar .sp{flex:1}.screen .taskbar{position:absolute;left:0;right:0;bottom:0;height:24px;background:#121821e0;z-index:2}.winlogo{width:11px;height:11px;background:linear-gradient(90deg,#5ab0ff 47%,transparent 47% 53%,#5ab0ff 53%);-webkit-mask:linear-gradient(180deg,#000 47%,transparent 47% 53%,#000 53%);mask:linear-gradient(180deg,#000 47%,transparent 47% 53%,#000 53%)}.tray{display:inline-flex;align-items:center;gap:6px;padding:1px 8px;border-radius:10px;font-size:10.5px;font-weight:600;letter-spacing:.03em}.tray i{width:7px;height:7px;border-radius:50%;display:inline-block}.tray.GREEN{background:#2fd08a2e;color:#8ff0c4}.tray.GREEN i{background:var(--ok)}.tray.AMBER{background:#f5b83d33;color:#ffd98c}.tray.AMBER i{background:var(--warn)}.tray.RED{background:#ff4d6a40;color:#ffb3c0}.tray.RED i{background:var(--critical);animation:pulse-dot 1s infinite;--c: var(--critical)}.desk-windows{position:absolute;top:40px;right:30px;bottom:30px;left:30px;display:grid;grid-template-columns:1.4fr 1fr;gap:14px;opacity:.9}.win{background:#f0f4f8eb;border-radius:6px;box-shadow:0 10px 30px #00000059;overflow:hidden}.win .bar{height:16px;background:#dfe5ec;display:flex;gap:4px;align-items:center;padding:0 6px}.win .bar i{width:6px;height:6px;border-radius:50%;background:#c3ccd6}.win .lines{padding:10px;display:flex;flex-direction:column;gap:6px}.win .lines span{height:6px;border-radius:3px;background:#c9d3dd}.screen-toast{position:absolute;right:10px;top:30px;z-index:3;width:58%;background:#1c2128f0;border:1px solid rgba(245,184,61,.55);border-radius:8px;padding:10px 12px;font-size:11.5px;color:#f3e2bd;box-shadow:0 10px 30px #00000080;animation:toast-in .3s ease-out}.screen-toast b{display:block;color:var(--warn);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px}.lockscreen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;background:radial-gradient(500px 300px at 50% 30%,#283c5ab3,#05080cf5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:20px;animation:fade .3s}.lockscreen .lk-time{font-size:38px;font-weight:300;letter-spacing:-.02em;color:#e8eef5}.lockscreen .lk-msg{max-width:82%;font-size:12.5px;color:#ffd0d8;background:#ff4d6a24;border:1px solid rgba(255,77,106,.5);border-radius:8px;padding:10px 14px;line-height:1.45;white-space:pre-line}.lockscreen .lk-msg.calm{color:#d7e2ee;background:#ffffff0f;border-color:#ffffff24}.lockscreen .lk-user{width:44px;height:44px;border-radius:50%;background:#ffffff1f;display:grid;place-items:center;font-weight:600;color:#dfe7ef}.lockscreen .lk-pw{width:150px;height:24px;border-radius:12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.18);font-size:10.5px;color:#9fb0c3;display:grid;place-items:center}.alarm-banner{position:absolute;left:0;right:0;bottom:0;z-index:5;padding:6px;background:var(--critical);color:#fff;font-weight:700;font-size:11px;letter-spacing:.18em;text-align:center;animation:blink .7s infinite}@keyframes blink{50%{opacity:.55}}.off-msg{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#3c4652;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.laptop-base{height:14px;margin:0 -5%;background:linear-gradient(180deg,#2a313a,#171b21);border-radius:0 0 14px 14px;position:relative}.laptop-base:before{content:"";position:absolute;left:42%;right:42%;top:0;height:5px;background:#12161b;border-radius:0 0 6px 6px}.env-chip{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;padding:5px 11px;border-radius:20px;border:1px solid var(--line-2);background:var(--bg-2)}.env-chip svg{width:14px;height:14px}.scenario-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.scenario{text-align:left;border:1px solid var(--line-2);background:var(--bg-2);border-radius:var(--radius);padding:10px 12px;cursor:pointer;transition:border-color .12s,background .12s}.scenario:hover{border-color:#46607c;background:var(--bg-hover)}.scenario b{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600}.scenario b svg{width:14px;height:14px}.scenario span{display:block;font-size:11.5px;color:var(--text-3);margin-top:3px;line-height:1.4}.scenario.theft b{color:#ffb0bd}.scenario.resilience b{color:#9be8c4}.scenario.lifecycle b{color:#bcdcff}.pace{display:inline-flex;border:1px solid var(--line-2);border-radius:var(--radius);overflow:hidden}.pace button{background:var(--bg-1);border:none;padding:6px 11px;cursor:pointer;color:var(--text-2);font-family:var(--mono);font-size:12px;border-left:1px solid var(--line-2)}.pace button:first-child{border-left:none}.pace button.on{background:var(--accent-2);color:#fff}.empty{padding:40px 20px;text-align:center;color:var(--text-3)}.empty svg{width:28px;height:28px;margin-bottom:8px;opacity:.6}.hash{font-family:var(--mono);font-size:11.5px;color:var(--text-3)}.verify-ok{color:var(--ok);display:inline-flex;align-items:center;gap:6px}.verify-bad{color:var(--critical);display:inline-flex;align-items:center;gap:6px}@media(max-width:1500px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.g-device{grid-template-columns:minmax(300px,1fr) minmax(0,1.4fr)}.g-device>:last-child{grid-column:1 / -1}}@media(max-width:1100px){.g-overview,.sim-layout,.g-2,.g-3,.g-device{grid-template-columns:minmax(0,1fr)}.alert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){:root{--sidebar: 0px}.sidebar{display:none}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:16px}.search{display:none}.form-grid,.form-grid.three,.form-grid.four{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-spring: cubic-bezier(.3, 1.5, .5, 1);--teal: #3c8b7e;--teal-2: #347a70}.hero-login{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#0b1112}.hero-backdrop{position:absolute;top:-60px;right:-60px;bottom:-60px;left:-60px;background-size:cover;background-position:center;filter:blur(42px) brightness(.42) saturate(1.15);transform:scale(1.1)}.hero-stage{position:absolute;left:0;top:0;transform-origin:0 0}.hero-stage.letterbox{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 5%,#000 95%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 5%,#000 95%,transparent 100%)}.hero-stage.pillarbox{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%)}.hero-inner{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:72% 60%;opacity:0;transform:scale(1.06);filter:blur(10px) brightness(.7)}.ready .hero-inner{animation:hero-in 1.6s var(--ease-out) forwards}@keyframes hero-in{to{opacity:1;transform:none;filter:none}}.hero-img{display:block;width:100%;height:100%;background-size:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.hero-fx{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.fx-logo-glow{position:absolute;left:105px;top:12px;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle,rgba(47,208,138,.55),transparent 65%);mix-blend-mode:screen;animation:glow 3.6s ease-in-out infinite}@keyframes glow{0%,to{opacity:.15;transform:scale(.9)}50%{opacity:.6;transform:scale(1.15)}}.fx-sweep{position:absolute;overflow:hidden;border-radius:0 0 18px}.fx-sweep i{position:absolute;top:-40%;bottom:-40%;width:22%;left:-40%;background:linear-gradient(90deg,transparent,rgba(200,255,240,.09),rgba(255,255,255,.16),rgba(200,255,240,.09),transparent);transform:rotate(16deg);mix-blend-mode:screen;animation:sweep 7.5s ease-in-out 2.2s infinite}@keyframes sweep{0%{left:-40%}22%{left:125%}to{left:125%}}.fx-particle{position:absolute;border-radius:50%;background:#ffd696bf;box-shadow:0 0 10px 3px #ffc47859;opacity:0;animation:drift linear infinite}@keyframes drift{0%{transform:translate(0);opacity:0}15%{opacity:.8}85%{opacity:.5}to{transform:translate(18px,-140px);opacity:0}}.fx-rings{position:absolute;left:455px;top:556px;width:0;height:0;--c: var(--ok)}.fx-rings span{position:absolute;left:-60px;top:-60px;width:120px;height:120px;border-radius:50%;border:2px solid var(--c);opacity:0;animation:ring-out 3s var(--ease-out) infinite;transition:border-color .6s}.fx-rings span:nth-child(2){animation-delay:1s}.fx-rings span:nth-child(3){animation-delay:2s}.ready .fx-rings{animation:fade-in .8s 1.6s both}@keyframes ring-out{0%{transform:scale(.35);opacity:.85}to{transform:scale(1.9);opacity:0}}.fx-chip{position:absolute;left:598px;top:518px;width:204px;padding:9px 11px 10px;border-radius:10px;background:#0b1114c7;border:1px solid color-mix(in srgb,var(--c) 45%,transparent);box-shadow:0 10px 30px #00000073,0 0 24px color-mix(in srgb,var(--c) 18%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#e7edf4;font-size:13px;opacity:0;transform:translateY(10px);transition:border-color .6s,box-shadow .6s;--c: var(--ok)}.ready .fx-chip{animation:chip-in .7s var(--ease-spring) 1.8s forwards}@keyframes chip-in{to{opacity:1;transform:none}}.fx-chip-head{display:flex;align-items:center;gap:8px;font-weight:600}.fx-chip-dot{width:8px;height:8px;border-radius:50%;background:var(--c);box-shadow:0 0 0 0 var(--c);animation:pulse-dot 1.6s infinite;transition:background .6s}.fx-chip-state{margin-left:auto;font-size:11px;letter-spacing:.1em;color:var(--c);animation:swap-in .45s var(--ease-out)}.fx-chip-detail{margin-top:4px;font-size:11.5px;white-space:nowrap;color:#a5b1bf;animation:swap-in .45s var(--ease-out)}.fx-chip-bar{margin-top:8px;height:4px;border-radius:2px;background:#ffffff14;overflow:hidden}.fx-chip-bar i{display:block;height:100%;background:var(--c);transition:width 1.2s var(--ease-out),background .6s}@keyframes swap-in{0%{opacity:0;transform:translateY(4px)}}.fx-link{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;opacity:0;--c: var(--ok)}.ready .fx-link{animation:fade-in .6s 2s forwards}.fx-link path{fill:none;stroke:var(--c);stroke-width:1.6;stroke-dasharray:3 5;animation:dash 1.2s linear infinite;transition:stroke .6s}@keyframes dash{to{stroke-dashoffset:-16}}.tone-warn.fx-chip,.tone-warn.fx-rings,.tone-warn.fx-link{--c: var(--warn)}.tone-critical.fx-chip,.tone-critical.fx-rings,.tone-critical.fx-link{--c: var(--critical)}.hero-form{position:absolute;top:0;right:0;bottom:0;left:0}.hf-input,.hf-button,.hf-error,.hf-note{position:absolute;box-sizing:border-box}.hf-input{border-radius:6px;border:1px solid rgb(52,64,67);background:#141a1c;color:#e7edf4;font:17px var(--font);padding:0 14px;outline:none;transition:border-color .2s,box-shadow .25s,background .2s;opacity:0}.hf-input:hover{border-color:#46565a}.hf-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #3c8b7e47,0 0 22px #3c8b7e40;background:#111719}.hf-button{border-radius:6px;border:none;background:linear-gradient(180deg,#409183,#32786e);color:#fff;font:600 18px var(--font);display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;overflow:hidden;box-shadow:0 6px 18px #1e6e6240;transition:filter .2s,transform .12s,box-shadow .25s;opacity:0}.hf-button svg{width:19px;height:19px}.hf-button:after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);transform:skew(-18deg)}.hf-button:hover:not(:disabled):after{animation:shine .9s var(--ease-out)}.hf-button:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 8px 26px #288c7c66}.hf-button:active:not(:disabled){transform:scale(.985)}.hf-button:disabled{cursor:default}.hf-button.granted{background:linear-gradient(180deg,#34c486,#23a06c)}@keyframes shine{to{left:130%}}.ready .hf-input:nth-of-type(1){animation:field-in .6s var(--ease-out) .95s forwards}.ready .hf-input:nth-of-type(2){animation:field-in .6s var(--ease-out) 1.08s forwards}.ready .hf-button{animation:field-in .6s var(--ease-out) 1.2s forwards}@keyframes field-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.hf-error{font-size:15px;color:#ffb3c0;background:#ff4d6a1a;border:1px solid rgba(255,77,106,.4);border-radius:6px;padding:8px 12px;animation:shake .45s}.hf-note{font-size:13.5px;color:#7f8f98;display:flex;align-items:center;gap:7px;opacity:0}.ready .hf-note{animation:fade-in .8s 1.5s forwards}@keyframes shake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hero-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 78% 64%,rgba(120,255,210,.35),transparent 45%);opacity:0;pointer-events:none}.leaving .hero-inner{animation:hero-out .75s cubic-bezier(.6,0,.8,.4) forwards;opacity:1;transform:none;filter:none}.leaving .hero-flash{animation:flash .75s ease-out forwards}@keyframes hero-out{to{transform:scale(1.18);opacity:0;filter:blur(6px) brightness(1.3)}}@keyframes flash{40%{opacity:1}to{opacity:0}}.hero-mobile{min-height:100%;background:#0b1112;padding-bottom:32px}.hm-art{position:relative;width:100%;aspect-ratio:1697 / 927;overflow:hidden}.hm-art img{width:100%;height:100%;object-fit:cover;background-size:cover;opacity:0;transform:scale(1.06);filter:blur(6px)}.hero-mobile.ready .hm-art img{animation:hero-in 1.4s var(--ease-out) forwards}.hm-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 55%,#0b1112 100%)}.hm-card{position:relative;z-index:1;width:min(440px,calc(100% - 32px));margin:-18px auto 0;padding:20px;display:flex;flex-direction:column;gap:9px;border-radius:16px;background:#0f1618eb;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 20px 60px #00000080;animation:rise .8s var(--ease-out) .35s both}.hm-brand{display:flex;gap:11px;align-items:center;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--line)}.hm-card h2{font-size:19px;margin:4px 0 0}.hm-card p{margin:0 0 6px;font-size:13px}.hm-note{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-3);margin-top:2px}.hf-cta{height:44px;margin-top:4px;background:linear-gradient(180deg,#409183,#32786e)!important;border-color:transparent!important}.hf-cta.granted{background:linear-gradient(180deg,#34c486,#23a06c)!important}.hero-mobile.leaving{animation:fade-out .7s forwards}.shell.intro .sidebar{animation:sidebar-in .7s var(--ease-out) both}.shell.intro .topbar{animation:topbar-in .7s var(--ease-out) .12s both}@keyframes sidebar-in{0%{transform:translate(-24px);opacity:0}}@keyframes topbar-in{0%{transform:translateY(-14px);opacity:0}}.nav{position:relative}.nav a.active:before{display:none}.nav-indicator{position:absolute;left:0;width:3px;border-radius:0 3px 3px 0;background:var(--accent);box-shadow:0 0 12px #4da3ff99;transition:transform .45s var(--ease-spring),height .3s var(--ease-out),opacity .3s;pointer-events:none}.nav a{transition:background .18s,color .18s,padding-left .25s var(--ease-out)}.nav a:hover{padding-left:13px}.nav a svg{transition:transform .25s var(--ease-spring)}.nav a:hover svg{transform:scale(1.12)}.topbar{position:relative}.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(77,163,255,.85),transparent);background-size:30% 100%;background-repeat:no-repeat;animation:scan 7s ease-in-out infinite;opacity:.8}@keyframes scan{0%{background-position:-40% 0}50%{background-position:140% 0}to{background-position:140% 0}}.count{transition:background .3s,color .3s}.count.hot{animation:pulse-hot 1.8s ease-in-out infinite}@keyframes pulse-hot{50%{box-shadow:0 0 0 4px #ff4d6a1f}}.page{animation:page-in .35s ease-out both}.page>*{animation:rise .6s var(--ease-out) both}.page>:nth-child(2){animation-delay:.05s}.page>:nth-child(3){animation-delay:.1s}.page>:nth-child(4){animation-delay:.15s}.page>:nth-child(5){animation-delay:.2s}.page>:nth-child(n+6){animation-delay:.25s}@keyframes page-in{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{to{opacity:0}}.kpis>.kpi{animation:rise .6s var(--ease-out) both}.kpis>.kpi:nth-child(2){animation-delay:.04s}.kpis>.kpi:nth-child(3){animation-delay:.08s}.kpis>.kpi:nth-child(4){animation-delay:.12s}.kpis>.kpi:nth-child(5){animation-delay:.16s}.kpis>.kpi:nth-child(6){animation-delay:.2s}.kpis>.kpi:nth-child(7){animation-delay:.24s}.kpis>.kpi:nth-child(8){animation-delay:.28s}.grid>.panel,.grid>.stack>.panel{animation:rise .65s var(--ease-out) both}.grid>:nth-child(2){animation-delay:.08s}.grid>:nth-child(3){animation-delay:.16s}.grid>.stack>.panel:nth-child(2){animation-delay:.1s}.grid>.stack>.panel:nth-child(3){animation-delay:.2s}.btn{transition:background .15s,border-color .15s,transform .12s,box-shadow .2s;position:relative;overflow:hidden}.btn:active:not(:disabled){transform:scale(.97)}.btn.primary:after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.25),transparent);transform:skew(-18deg)}.btn.primary:hover:after{animation:shine .9s var(--ease-out)}.kpi{transition:border-color .2s,transform .25s var(--ease-out),box-shadow .25s}.kpi:hover{transform:translateY(-3px);box-shadow:0 12px 28px #00000059}.kpi.hot:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--c);animation:hot-pulse 2s ease-in-out infinite;pointer-events:none}@keyframes hot-pulse{0%,to{opacity:.15}50%{opacity:.7}}.panel{transition:border-color .25s}.zone-card,.scenario,.mini{transition:border-color .2s,background .2s,transform .25s var(--ease-out),box-shadow .25s}.zone-card:hover,.scenario:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0000004d}.mini:hover{transform:translateY(-2px)}.badge{transition:color .45s,background-color .45s,border-color .45s}.badge.lg{animation:badge-pop .5s var(--ease-spring)}@keyframes badge-pop{0%{transform:scale(.85);opacity:.4}}.chip{transition:background .15s,color .15s,border-color .15s,transform .12s}.chip:active{transform:scale(.96)}.table tbody tr{animation:row-in .45s var(--ease-out) both}@keyframes row-in{0%{opacity:0;transform:translate(-6px)}}.trust-fill{position:relative;overflow:hidden}.trust-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translate(-100%);animation:bar-shine 3.2s ease-in-out infinite}@keyframes bar-shine{60%,to{transform:translate(100%)}}.timeline:before{transform-origin:top;animation:draw-line .9s var(--ease-out) both}@keyframes draw-line{0%{transform:scaleY(0)}}.toast{position:relative;overflow:hidden}.toast:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--c, var(--accent));transform-origin:left;animation:toast-timer 7s linear forwards;opacity:.7}@keyframes toast-timer{to{transform:scaleX(0)}}.toast:hover{transform:translate(-3px);transition:transform .2s}.alert-card{transition:background .3s,opacity .4s}.alert-card:hover{background:#ffffff04}.reco{animation:fade-in .6s .15s both}.skeleton{background:linear-gradient(90deg,var(--bg-2) 25%,var(--bg-3) 50%,var(--bg-2) 75%);background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:var(--radius-lg)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.map-wrap{overflow:hidden}.site-pop{transform-box:fill-box;transform-origin:center;animation:pop .7s var(--ease-spring) both}@keyframes pop{0%{transform:scale(0);opacity:0}}.site-label,.site-sub{animation:fade-in .6s .5s both}.map-arc{fill:none;stroke:#4da3ff59;stroke-width:1.2;stroke-dasharray:2 6;animation:dash-flow 1.6s linear infinite}.map-arc.hot{stroke:#ff4d6a8c}@keyframes dash-flow{to{stroke-dashoffset:-16}}.map-pulse{fill:#9fd0ff;filter:drop-shadow(0 0 4px rgba(77,163,255,.9))}.map-pulse.hot{fill:#ff8da1;filter:drop-shadow(0 0 4px rgba(255,77,106,.9))}.radar{position:absolute;width:900px;height:900px;border-radius:50%;pointer-events:none;background:conic-gradient(from 0deg,transparent 0deg 300deg,rgba(77,163,255,.07) 345deg,rgba(77,163,255,.16) 360deg);animation:radar 9s linear infinite;mix-blend-mode:screen}@keyframes radar{to{transform:rotate(360deg)}}.land-dot{animation:fade-in 1.2s ease-out both}.lockscreen{animation:lock-down .55s var(--ease-out)}@keyframes lock-down{0%{transform:translateY(-100%);opacity:.4}}.screen.off:after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:#cfe8ff;box-shadow:0 0 18px 6px #a0d2ff99;animation:crt-off .6s ease-in forwards}@keyframes crt-off{0%{transform:scaleX(1);opacity:1}70%{transform:scaleX(.04);opacity:1}to{transform:scaleX(0);opacity:0}}.screen.on{animation:boot .9s ease-out}@keyframes boot{0%{filter:brightness(0) blur(2px)}60%{filter:brightness(1.2)}}.sigbars{display:inline-flex;align-items:flex-end;gap:2px;height:10px}.sigbars i{width:3px;border-radius:1px;background:#ffffff38;transition:background .4s,height .4s}.sigbars i:nth-child(1){height:3px}.sigbars i:nth-child(2){height:5px}.sigbars i:nth-child(3){height:7px}.sigbars i:nth-child(4){height:10px}.sigbars.l4 i,.sigbars.l3 i:nth-child(-n+3),.sigbars.l2 i:nth-child(-n+2),.sigbars.l1 i:nth-child(1){background:currentColor}.sigbars.l0{animation:blink 1s infinite}.screen-toast{animation:toast-in .45s var(--ease-spring)}
