:root{color-scheme:dark;--bg:#070C16;--bg-2:#0A1120;--panel:#0E1727;--panel-2:#121D31;--panel-3:#17253D;--hover:#1A2944;--line:#1C2A42;--line-2:#283A58;--fg:#E8EEF8;--fg-2:#B6C2D8;--muted:#7F8DA8;--faint:#56647F;--accent:#36C2F0;--accent-2:#1E9ED0;--accent-ink:#04121C;--accent-soft:rgba(54,194,240,.13);--ok:#3DD68C;--ok-soft:rgba(61,214,140,.13);--warn:#F2B33D;--warn-soft:rgba(242,179,61,.14);--high:#F5803A;--high-soft:rgba(245,128,58,.14);--crit:#F0525C;--crit-soft:rgba(240,82,92,.15);--violet:#8B7CFF;--violet-soft:rgba(139,124,255,.15);--c1:#36C2F0;--c2:#8B7CFF;--c3:#3DD68C;--c4:#F2B33D;--c5:#F06FA8;--c6:#7A8BA8;--shadow:0 18px 50px rgba(0,0,0,.45);--scrim:rgba(3,6,12,.62);--f-display:"Sora",ui-sans-serif,system-ui,sans-serif;--f-body:"IBM Plex Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--f-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--t-xs:11px;--t-sm:12px;--t-base:13px;--t-md:14px;--t-lg:16px;--t-xl:20px;--t-2xl:26px;--t-3xl:34px;--r-sm:6px;--r-md:10px;--r-lg:14px;--nav-w:252px;--nav-w-c:68px;--top-h:60px}@media (prefers-color-scheme: light){:root:not([data-theme=dark]){color-scheme:light;--bg:#EEF2F8;--bg-2:#E6ECF4;--panel:#FFFFFF;--panel-2:#F5F8FC;--panel-3:#EBF0F7;--hover:#E8EEF7;--line:#DCE3EE;--line-2:#C8D2E1;--fg:#0D1626;--fg-2:#2E3B52;--muted:#5A6781;--faint:#8994A9;--accent:#0A87BF;--accent-2:#086E9C;--accent-ink:#FFFFFF;--accent-soft:rgba(10,135,191,.1);--ok:#0F9A5E;--ok-soft:rgba(15,154,94,.1);--warn:#B87A06;--warn-soft:rgba(184,122,6,.11);--high:#C95A14;--high-soft:rgba(201,90,20,.1);--crit:#D2323F;--crit-soft:rgba(210,50,63,.1);--violet:#5D4ED8;--violet-soft:rgba(93,78,216,.1);--c1:#0A87BF;--c2:#6B5BE0;--c3:#0F9A5E;--c4:#C98A0C;--c5:#D0457F;--c6:#6A7891;--shadow:0 18px 50px rgba(20,35,60,.16);--scrim:rgba(14,22,38,.38)}}:root[data-theme=light]{color-scheme:light;--bg:#EEF2F8;--bg-2:#E6ECF4;--panel:#FFFFFF;--panel-2:#F5F8FC;--panel-3:#EBF0F7;--hover:#E8EEF7;--line:#DCE3EE;--line-2:#C8D2E1;--fg:#0D1626;--fg-2:#2E3B52;--muted:#5A6781;--faint:#8994A9;--accent:#0A87BF;--accent-2:#086E9C;--accent-ink:#FFFFFF;--accent-soft:rgba(10,135,191,.1);--ok:#0F9A5E;--ok-soft:rgba(15,154,94,.1);--warn:#B87A06;--warn-soft:rgba(184,122,6,.11);--high:#C95A14;--high-soft:rgba(201,90,20,.1);--crit:#D2323F;--crit-soft:rgba(210,50,63,.1);--violet:#5D4ED8;--violet-soft:rgba(93,78,216,.1);--c1:#0A87BF;--c2:#6B5BE0;--c3:#0F9A5E;--c4:#C98A0C;--c5:#D0457F;--c6:#6A7891;--shadow:0 18px 50px rgba(20,35,60,.16);--scrim:rgba(14,22,38,.38)}*{box-sizing:border-box}html,body{background:var(--bg)}body{color:var(--fg);font-family:var(--f-body);font-size:var(--t-base);line-height:1.45;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent);text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.mono{font-family:var(--f-mono);font-size:.92em}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.faint{color:var(--faint)}.ok{color:var(--ok)}.warn{color:var(--warn)}.crit{color:var(--crit)}.high{color:var(--high)}.acc{color:var(--accent)}svg.i{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}svg.i.s{width:15px;height:15px}svg.i.xs{width:13px;height:13px}.app{display:grid;grid-template-columns:var(--nav-w) minmax(0,1fr);min-height:100vh;transition:grid-template-columns .2s ease}.app.collapsed{grid-template-columns:var(--nav-w-c) minmax(0,1fr)}.nav{position:sticky;top:0;height:100vh;height:100dvh;background:var(--bg-2);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:40;padding-left:env(safe-area-inset-left,0px)}.brand{height:var(--top-h);display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--line);flex:none}.logo{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(140deg,var(--accent),var(--violet));color:#fff;flex:none}.logo svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:2}.brand b{font-family:var(--f-display);font-size:15px;letter-spacing:.01em;white-space:nowrap}.brand small{display:block;font-size:10px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-weight:500}.nav-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:10px 10px 16px;scrollbar-width:thin}.nav-group{margin-top:14px}.nav-group:first-child{margin-top:4px}.nav-label{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);padding:0 10px 6px;white-space:nowrap}.nav-item{display:flex;align-items:center;gap:11px;width:100%;border:0;background:none;color:var(--fg-2);padding:7px 10px;border-radius:7px;font-size:13px;text-align:left;white-space:nowrap;position:relative}.nav-item:hover{background:var(--hover);color:var(--fg)}.nav-item.active{background:var(--accent-soft);color:var(--fg)}.nav-item.active svg{color:var(--accent)}.nav-item .cnt{margin-left:auto;font-size:10.5px;font-weight:600;padding:1px 6px;border-radius:10px;background:var(--crit-soft);color:var(--crit)}.nav-item .cnt.w{background:var(--warn-soft);color:var(--warn)}.nav-item .cnt.a{background:var(--accent-soft);color:var(--accent)}.nav-foot{border-top:1px solid var(--line);padding:10px;flex:none}.app.collapsed .nav-label,.app.collapsed .nav-item span,.app.collapsed .nav-item .cnt,.app.collapsed .brand-t,.app.collapsed .nav-foot .usage{display:none}.app.collapsed .nav-item{justify-content:center;padding:9px 0}.app.collapsed .nav-label{display:block;height:1px;background:var(--line);margin:0 8px 8px;padding:0;font-size:0}.app.collapsed .brand{justify-content:center;padding:0}.app.collapsed .nav-item .cdot{display:block}.cdot{display:none;position:absolute;top:6px;right:12px;width:7px;height:7px;border-radius:50%;background:var(--crit)}.usage{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:10px 11px;font-size:11.5px;color:var(--muted);margin-bottom:8px}.usage .bar{height:5px;border-radius:3px;background:var(--panel-3);margin:7px 0 4px;overflow:hidden}.usage .bar i{display:block;height:100%;width:64%;background:var(--accent);border-radius:3px}.main{min-width:0;display:flex;flex-direction:column}.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;height:var(--top-h);display:flex;align-items:center;gap:10px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background:color-mix(in srgb,var(--bg-2) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.top .grow{flex:1;min-width:0}.ibtn{width:34px;height:34px;border-radius:8px;border:1px solid transparent;background:none;color:var(--fg-2);display:grid;place-items:center;position:relative;flex:none}.ibtn:hover{background:var(--hover);color:var(--fg)}.ibtn .badge{position:absolute;top:3px;right:3px;min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:var(--crit);color:#fff;font-size:9.5px;font-weight:700;display:grid;place-items:center;border:2px solid var(--bg-2)}.selector{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px;border-radius:8px;border:1px solid var(--line-2);background:var(--panel);color:var(--fg);font-size:12.5px;white-space:nowrap;flex:none}.selector:hover{border-color:var(--faint)}.selector .k{color:var(--muted);font-size:11px}.search{position:relative;flex:1;max-width:460px;min-width:0}.search input{width:100%;height:34px;border-radius:8px;border:1px solid var(--line-2);background:var(--panel);padding:0 70px 0 34px;font-size:12.5px;color:var(--fg)}.search input::placeholder{color:var(--faint)}.search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search>svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--muted)}.search .kbd{position:absolute;right:8px;top:50%;transform:translateY(-50%)}.kbd{font-family:var(--f-mono);font-size:10.5px;padding:2px 6px;border:1px solid var(--line-2);border-bottom-width:2px;border-radius:5px;color:var(--muted);background:var(--panel-2)}.ai-btn{display:flex;align-items:center;gap:7px;height:34px;padding:0 12px;border-radius:8px;border:1px solid color-mix(in srgb,var(--violet) 45%,transparent);background:var(--violet-soft);color:var(--fg);font-weight:500;font-size:12.5px;white-space:nowrap;flex:none}.ai-btn svg{color:var(--violet)}.ai-btn:hover{background:color-mix(in srgb,var(--violet) 24%,transparent)}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:11.5px;font-weight:600;background:linear-gradient(140deg,#3a5a8c,#5b3f8f);color:#fff;flex:none}.prof{display:flex;align-items:center;gap:9px;border:0;background:none;padding:3px 6px 3px 3px;border-radius:20px;text-align:left}.prof:hover{background:var(--hover)}.prof .t{line-height:1.2;font-size:12px}.prof .t small{display:block;color:var(--muted);font-size:10.5px}.demo-chip{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--warn);background:var(--warn-soft);border:1px dashed color-mix(in srgb,var(--warn) 55%,transparent);padding:3px 7px;border-radius:5px;white-space:nowrap}.view{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:20px 48px;min-width:0}.view-in{max-width:1600px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.ph{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:4px}.crumb{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--muted);margin-bottom:6px}.ph h1{font-family:var(--f-display);font-size:var(--t-2xl);font-weight:600;letter-spacing:-.01em;margin:0;line-height:1.15;text-wrap:balance}.ph p{margin:6px 0 0;color:var(--muted);max-width:72ch;font-size:13px}.ph .acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.scope-chip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--fg-2);background:var(--panel);border:1px solid var(--line);padding:3px 9px;border-radius:20px}.g{display:grid;gap:16px;grid-template-columns:repeat(12,minmax(0,1fr))}.s3{grid-column:span 3}.s4{grid-column:span 4}.s5{grid-column:span 5}.s6{grid-column:span 6}.s7{grid-column:span 7}.s8{grid-column:span 8}.s9{grid-column:span 9}.s12{grid-column:span 12}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:10px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);min-width:0;display:flex;flex-direction:column}.card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px 0;flex-wrap:wrap}.card-h h3{margin:0;font-size:13.5px;font-weight:600;letter-spacing:.005em;display:flex;align-items:center;gap:8px}.card-h .sub{font-size:11.5px;color:var(--muted);font-weight:400;width:100%;margin-top:-6px}.card-b{padding:14px 16px 16px;min-width:0;flex:1}.card-b.flush{padding:10px 0 0}.card-f{border-top:1px solid var(--line);padding:10px 16px;font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.kpis{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(178px,1fr))}.kpi{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:13px 14px 12px;display:flex;flex-direction:column;gap:6px;min-width:0;position:relative;text-align:left;color:inherit}button.kpi:hover{border-color:var(--line-2);background:var(--panel-2)}.kpi .l{font-size:11.5px;color:var(--muted);display:flex;align-items:center;gap:6px;justify-content:space-between}.kpi .v{font-family:var(--f-display);font-size:24px;font-weight:600;letter-spacing:-.015em;font-variant-numeric:tabular-nums;line-height:1.1}.kpi .v small{font-size:13px;color:var(--muted);font-weight:500;margin-left:3px}.kpi .d{font-size:11.5px;display:flex;align-items:center;gap:6px;color:var(--muted);flex-wrap:wrap}.kpi .spark{height:26px;margin-top:2px}.kpi.t-crit .v{color:var(--crit)}.kpi.t-warn .v{color:var(--warn)}.kpi.t-ok .v{color:var(--ok)}.delta{font-weight:600;font-variant-numeric:tabular-nums}.delta.up-bad,.delta.down-bad{color:var(--crit)}.delta.up-good,.delta.down-good{color:var(--ok)}.delta.flat{color:var(--muted)}.pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;white-space:nowrap;line-height:1.5;background:var(--panel-3);color:var(--fg-2)}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.pill.nodot:before{display:none}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.crit{background:var(--crit-soft);color:var(--crit)}.pill.high{background:var(--high-soft);color:var(--high)}.pill.info{background:var(--accent-soft);color:var(--accent)}.pill.violet{background:var(--violet-soft);color:var(--violet)}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none;background:var(--faint)}.dot.ok{background:var(--ok)}.dot.warn{background:var(--warn)}.dot.crit{background:var(--crit);box-shadow:0 0 0 3px var(--crit-soft)}.dot.high{background:var(--high)}.dot.info{background:var(--accent)}.dot.live{animation:pulse 1.8s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--crit-soft)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}.sev{display:inline-grid;place-items:center;font-family:var(--f-mono);font-size:10.5px;font-weight:600;min-width:42px;padding:2px 6px;border-radius:5px;border:1px solid}.sev.s1{color:var(--crit);border-color:color-mix(in srgb,var(--crit) 50%,transparent);background:var(--crit-soft)}.sev.s2{color:var(--high);border-color:color-mix(in srgb,var(--high) 50%,transparent);background:var(--high-soft)}.sev.s3{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 50%,transparent);background:var(--warn-soft)}.sev.s4{color:var(--fg-2);border-color:var(--line-2);background:var(--panel-2)}.tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:1px 7px;border-radius:5px;background:var(--panel-3);color:var(--fg-2);border:1px solid var(--line);white-space:nowrap;font-family:var(--f-mono)}.auth{display:inline-grid;place-items:center;width:46px;height:22px;border-radius:5px;font-size:10.5px;font-weight:600;font-family:var(--f-mono)}.auth.ok{background:var(--ok-soft);color:var(--ok)}.auth.warn{background:var(--warn-soft);color:var(--warn)}.auth.crit{background:var(--crit-soft);color:var(--crit)}.auth.none{background:var(--panel-3);color:var(--faint)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 13px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--panel-2);color:var(--fg);font-size:12.5px;font-weight:500;white-space:nowrap;transition:background .12s,border-color .12s}.btn:hover{background:var(--hover);border-color:var(--faint)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn.primary:hover{background:var(--accent-2);border-color:var(--accent-2)}.btn.ghost{background:none;border-color:transparent;color:var(--fg-2)}.btn.ghost:hover{background:var(--hover);color:var(--fg)}.btn.danger{background:var(--crit-soft);border-color:color-mix(in srgb,var(--crit) 45%,transparent);color:var(--crit)}.btn.danger:hover{background:color-mix(in srgb,var(--crit) 22%,transparent)}.btn.ai{background:var(--violet-soft);border-color:color-mix(in srgb,var(--violet) 45%,transparent);color:var(--fg)}.btn.ai svg{color:var(--violet)}.btn.sm{height:28px;padding:0 10px;font-size:12px}.btn.xs{height:24px;padding:0 8px;font-size:11.5px;gap:5px}.btn.icon{width:34px;padding:0}.btn.sm.icon{width:28px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.loading{pointer-events:none;opacity:.8}.btn.loading:after{content:"";width:12px;height:12px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label,.lbl{font-size:11.5px;font-weight:500;color:var(--fg-2)}.field .hint{font-size:11px;color:var(--muted)}.input,.select,textarea.input{height:34px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--panel-2);padding:0 11px;font-size:12.5px;color:var(--fg);width:100%;min-width:0}textarea.input{height:auto;padding:9px 11px;resize:vertical;font-family:var(--f-mono);font-size:12px}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 15px) 15px,calc(100% - 10px) 15px;background-size:5px 5px;background-repeat:no-repeat;padding-right:28px}.input:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input.err{border-color:var(--crit)}.switch{position:relative;width:34px;height:20px;flex:none;border-radius:20px;background:var(--panel-3);border:1px solid var(--line-2);transition:.15s;padding:0}.switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--muted);transition:.15s}.switch.on{background:var(--accent);border-color:var(--accent)}.switch.on:after{left:16px;background:var(--accent-ink)}.chk{display:flex;gap:9px;align-items:flex-start;font-size:12.5px}input[type=range]{accent-color:var(--accent);width:100%}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.tab{border:0;background:none;padding:9px 12px;font-size:12.5px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;display:flex;gap:6px;align-items:center}.tab:hover{color:var(--fg)}.tab.active{color:var(--fg);border-bottom-color:var(--accent);font-weight:500}.tab .c{font-size:10.5px;background:var(--panel-3);padding:0 6px;border-radius:9px;color:var(--fg-2)}.seg{display:inline-flex;background:var(--panel-2);border:1px solid var(--line);border-radius:7px;padding:2px;gap:2px;flex:none}.seg button{border:0;background:none;padding:3px 10px;border-radius:5px;font-size:11.5px;color:var(--muted);height:24px}.seg button.active{background:var(--panel-3);color:var(--fg);box-shadow:0 1px 0 var(--line-2)}.tw{overflow-x:auto;min-width:0}table.t{width:100%;border-collapse:collapse;font-size:12.5px}.t th{position:sticky;top:0;text-align:left;font-weight:500;color:var(--muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase;padding:9px 10px;border-bottom:1px solid var(--line);background:var(--panel);white-space:nowrap}.t th:first-child,.t td:first-child{padding-left:14px}.t th button{border:0;background:none;padding:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;display:inline-flex;gap:4px;align-items:center}.t th button:hover{color:var(--fg)}.t th .ar{opacity:.35;font-size:10px}.t th.sorted .ar{opacity:1;color:var(--accent)}.t td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap}.t td.wrap{white-space:normal;min-width:220px}.t tr:last-child td{border-bottom:0}.t tbody tr.click{cursor:pointer}.t tbody tr.click:hover td{background:var(--hover)}.t .r{text-align:right}.t td.r{font-variant-numeric:tabular-nums}.t-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:0 16px 10px}.t-tools .input{max-width:240px;height:30px}.t-tools .select{width:auto;height:30px}.t-empty{padding:30px;text-align:center;color:var(--muted)}.cellname{display:flex;flex-direction:column;line-height:1.3}.cellname small{color:var(--muted);font-size:11px}.minibar{display:inline-flex;align-items:center;gap:8px;min-width:110px}.minibar .b{flex:1;height:5px;border-radius:3px;background:var(--panel-3);overflow:hidden;min-width:50px}.minibar .b i{display:block;height:100%;border-radius:3px}.list{display:flex;flex-direction:column}.li{display:flex;gap:12px;align-items:flex-start;padding:11px 16px;border-top:1px solid var(--line)}.li:first-child{border-top:0}button.li{border-left:0;border-right:0;border-bottom:0;background:none;text-align:left;width:100%;color:inherit}button.li:first-child{border-top:0}button.li:hover{background:var(--hover)}.li .m{flex:1;min-width:0}.li .m b{font-weight:500;display:block;font-size:12.5px}.li .m p{margin:2px 0 0;font-size:11.5px;color:var(--muted)}.li .r{font-size:11px;color:var(--muted);white-space:nowrap;text-align:right}.ico{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--panel-3);color:var(--fg-2)}.ico.crit{background:var(--crit-soft);color:var(--crit)}.ico.warn{background:var(--warn-soft);color:var(--warn)}.ico.ok{background:var(--ok-soft);color:var(--ok)}.ico.info{background:var(--accent-soft);color:var(--accent)}.ico.violet{background:var(--violet-soft);color:var(--violet)}.ico.high{background:var(--high-soft);color:var(--high)}.chart{position:relative;width:100%;min-width:0}.chart svg{display:block;overflow:visible}.chart text{font-family:var(--f-body);font-size:10.5px;fill:var(--muted)}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--fg-2)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.legend i.line{height:3px;border-radius:2px}#tip{position:fixed;z-index:100;pointer-events:none;background:var(--panel-3);border:1px solid var(--line-2);color:var(--fg);font-size:11.5px;padding:8px 10px;border-radius:8px;box-shadow:var(--shadow);max-width:280px;opacity:0;transition:opacity .08s;line-height:1.5}#tip.on{opacity:1}#tip b{font-weight:600}#tip .tr{display:flex;gap:8px;align-items:center;justify-content:space-between}#tip .tr i{width:8px;height:8px;border-radius:2px;display:inline-block;margin-right:5px}.heat{display:grid;gap:3px}.hc{aspect-ratio:1;border-radius:3px;min-width:0;border:0;padding:0;max-width:100%}.hc:hover{outline:2px solid var(--fg);outline-offset:1px}.mx{border-collapse:separate;border-spacing:3px;font-size:11.5px;width:100%}.mx th{font-weight:500;color:var(--muted);font-size:10.5px;padding:2px 4px;text-align:center;white-space:nowrap}.mx th.rl{text-align:left}.mx td{text-align:center}.mx td.rl{text-align:left;white-space:nowrap;padding-right:8px;max-width:190px;overflow:hidden;text-overflow:ellipsis;font-family:var(--f-mono);font-size:11px;color:var(--fg-2)}.mc{height:24px;border-radius:4px;display:grid;place-items:center;font-size:10px;font-weight:600;font-family:var(--f-mono)}.mc.ok{background:var(--ok-soft);color:var(--ok)}.mc.warn{background:var(--warn-soft);color:var(--warn)}.mc.crit{background:var(--crit);color:#fff}.mc.none{background:var(--panel-2);color:var(--faint)}.mc.high{background:var(--high-soft);color:var(--high)}.score-ring{position:relative;display:grid;place-items:center}.score-ring .c{position:absolute;text-align:center}.score-ring .c b{font-family:var(--f-display);font-size:38px;font-weight:600;display:block;line-height:1;letter-spacing:-.02em}.score-ring .c small{color:var(--muted);font-size:11.5px}.factor{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center;font-size:12px}.factor .b{grid-column:1/-1;height:6px;border-radius:3px;background:var(--panel-3);overflow:hidden}.factor .b i{display:block;height:100%;border-radius:3px}.code{font-family:var(--f-mono);font-size:12px;background:var(--bg-2);border:1px solid var(--line);border-radius:8px;padding:11px 13px;overflow-x:auto;white-space:pre;color:var(--fg-2);line-height:1.65}.code .k{color:var(--accent)}.code .s{color:var(--ok)}.code .e{color:var(--crit)}.code .w{color:var(--warn)}.code .c{color:var(--faint)}.code .v{color:var(--violet)}.callout{display:flex;gap:11px;padding:11px 13px;border-radius:9px;border:1px solid var(--line);background:var(--panel-2);font-size:12.5px}.callout.crit{border-color:color-mix(in srgb,var(--crit) 40%,transparent);background:var(--crit-soft)}.callout.warn{border-color:color-mix(in srgb,var(--warn) 40%,transparent);background:var(--warn-soft)}.callout.ai{border-color:color-mix(in srgb,var(--violet) 40%,transparent);background:var(--violet-soft)}.callout.ok{border-color:color-mix(in srgb,var(--ok) 40%,transparent);background:var(--ok-soft)}.callout svg{flex:none;margin-top:1px}.prog{height:6px;border-radius:3px;background:var(--panel-3);overflow:hidden}.prog i{display:block;height:100%;background:var(--accent);border-radius:3px;transition:width .4s}.kv{display:grid;grid-template-columns:minmax(110px,auto) minmax(0,1fr);gap:8px 14px;font-size:12.5px}.kv dt{color:var(--muted)}.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.timeline{position:relative;display:flex;flex-direction:column;gap:0;padding-left:4px}.tl{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;position:relative;padding-bottom:14px}.tl:before{content:"";position:absolute;left:8px;top:16px;bottom:0;width:1px;background:var(--line-2)}.tl:last-child:before{display:none}.tl .n{width:17px;height:17px;border-radius:50%;border:2px solid var(--line-2);background:var(--panel);margin-top:1px}.tl .n.crit{border-color:var(--crit);background:var(--crit-soft)}.tl .n.warn{border-color:var(--warn);background:var(--warn-soft)}.tl .n.ok{border-color:var(--ok);background:var(--ok-soft)}.tl .n.info{border-color:var(--accent);background:var(--accent-soft)}.tl .n.violet{border-color:var(--violet);background:var(--violet-soft)}.tl .tt{font-size:11px;color:var(--muted);font-family:var(--f-mono)}.tl b{font-weight:500;font-size:12.5px;display:block}.tl p{margin:2px 0 0;font-size:12px;color:var(--fg-2)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);z-index:70;opacity:0;pointer-events:none;transition:opacity .18s}.scrim.on{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(560px,100vw);background:var(--panel);border-left:1px solid var(--line-2);z-index:80;transform:translate(102%);transition:transform .22s ease;display:flex;flex-direction:column;box-shadow:var(--shadow);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-right:env(safe-area-inset-right,0px)}.drawer.on{transform:none}.drawer.wide{width:min(720px,100vw)}.dr-h{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}.dr-h h2{margin:0;font-family:var(--f-display);font-size:17px;font-weight:600;overflow-wrap:anywhere}.dr-h p{margin:3px 0 0;color:var(--muted);font-size:12px}.dr-b{flex:1;overflow-y:auto;padding:16px 18px;display:flex;flex-direction:column;gap:16px}.dr-f{border-top:1px solid var(--line);padding:12px 18px;display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.sec-t{font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin:0 0 8px}.modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-48%) scale(.98);width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 48px);background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r-lg);z-index:90;opacity:0;pointer-events:none;transition:.18s;display:flex;flex-direction:column;box-shadow:var(--shadow)}.modal.on{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)}.modal .dr-b{gap:14px}.menu{position:fixed;z-index:85;min-width:240px;max-width:min(360px,calc(100vw - 24px));background:var(--panel);border:1px solid var(--line-2);border-radius:10px;box-shadow:var(--shadow);padding:6px;display:none;max-height:70vh;overflow-y:auto}.menu.on{display:block}.menu .mh{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);padding:8px 10px 4px}.menu .mi{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;padding:7px 10px;border-radius:6px;font-size:12.5px;text-align:left;color:var(--fg)}.menu .mi:hover,.menu .mi.hl{background:var(--hover)}.menu .mi .r{margin-left:auto;color:var(--muted);font-size:11px}.menu .sep{height:1px;background:var(--line);margin:5px 0}.notif{width:380px}.notif .li{padding:10px}.toasts{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:120;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.toast{display:flex;gap:10px;align-items:center;background:var(--panel-3);border:1px solid var(--line-2);padding:10px 14px;border-radius:9px;font-size:12.5px;box-shadow:var(--shadow);animation:tin .2s ease;max-width:min(420px,calc(100vw - 32px))}@keyframes tin{0%{transform:translateY(8px);opacity:0}}.ai-panel .dr-b{gap:12px;background:var(--bg-2)}.msg{max-width:92%;font-size:12.5px;line-height:1.55;padding:10px 12px;border-radius:10px}.msg.u{align-self:flex-end;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.msg.a{align-self:flex-start;background:var(--panel);border:1px solid var(--line)}.msg.a ul{margin:6px 0;padding-left:18px}.msg.a p{margin:0 0 6px}.msg .src{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.typing span{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--muted);margin-right:3px;animation:bl 1s infinite}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes bl{50%{opacity:.25}}.ai-in{display:flex;gap:8px;padding:12px 18px;border-top:1px solid var(--line)}.sugg{display:flex;gap:6px;flex-wrap:wrap}.sugg button{border:1px solid var(--line-2);background:var(--panel);border-radius:20px;padding:4px 10px;font-size:11.5px;color:var(--fg-2)}.sugg button:hover{border-color:var(--violet);color:var(--fg)}.term{background:#050910;border:1px solid var(--line);border-radius:9px;padding:12px 14px;font-family:var(--f-mono);font-size:12px;line-height:1.7;min-height:260px;max-height:420px;overflow:auto;color:#c9d4e6}.term .o{color:#6fd3f5}.term .i{color:#c9d4e6}.term .g{color:#46db93}.term .r{color:#ff6b74}.term .y{color:#f5c15a}.term .d{color:#5e6d88}.skel{background:linear-gradient(90deg,var(--panel-2),var(--panel-3),var(--panel-2));background-size:200% 100%;animation:sh 1.4s infinite;border-radius:6px}@keyframes sh{to{background-position:-200% 0}}.swatch{border-radius:9px;border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column}.swatch .c{height:56px}.swatch .t{padding:8px 10px;font-size:11.5px;line-height:1.35}.swatch .t code{font-family:var(--f-mono);color:var(--muted);font-size:10.5px}.intg{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel)}.intg .lg{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:13px;color:#fff;flex:none}.empty{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:26px 16px;color:var(--muted);font-size:12.5px}.empty .ico{width:42px;height:42px;border-radius:12px}.demo-tag{font-size:9.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--warn);border:1px dashed color-mix(in srgb,var(--warn) 50%,transparent);padding:1px 5px;border-radius:4px}.bp{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.bp div{border:1px solid var(--line-2);border-radius:6px;background:var(--panel-2);display:grid;place-items:center;font-size:10.5px;color:var(--muted);padding:4px}hr.sep{border:0;border-top:1px solid var(--line);margin:0}.mobile-only{display:none}@media (max-width:1280px){.s3.rsp,.s4.rsp{grid-column:span 6}.s5.rsp,.s7.rsp,.s8.rsp{grid-column:span 12}.prof .t{display:none}}@media (max-width:1100px){.app{grid-template-columns:var(--nav-w-c) minmax(0,1fr)}.app .nav-label,.app .nav-item span,.app .nav-item .cnt,.app .brand-t,.app .nav-foot .usage{display:none}.app .nav-item{justify-content:center;padding:9px 0}.app .nav-label{display:block;height:1px;background:var(--line);margin:0 8px 8px;padding:0;font-size:0}.app .brand{justify-content:center;padding:0}.app .nav-item .cdot{display:block}#collapseBtn{display:none}.s4,.s5,.s6,.s7,.s8,.s3{grid-column:span 12}.s6.keep,.s4.keep,.s3.keep{grid-column:span 6}.ai-btn span{display:none}}@media (max-width:760px){.app,.app.collapsed{grid-template-columns:minmax(0,1fr)}.nav{position:fixed;left:0;top:0;bottom:0;width:min(290px,86vw);transform:translate(-102%);transition:transform .22s;box-shadow:var(--shadow);z-index:75}.app.mnav .nav{transform:none}.app .nav-label,.app .nav-item span,.app .nav-item .cnt,.app .brand-t,.app .nav-foot .usage{display:revert}.app .nav-item span{display:inline}.app .nav-item .cnt{display:inline-block}.app .nav-label{display:block;height:auto;background:none;margin:0;padding:0 10px 6px;font-size:10px}.app .nav-item{justify-content:flex-start;padding:9px 10px}.app .brand{justify-content:flex-start;padding:0 16px}.app .nav-item .cdot{display:none}.mobile-only{display:grid}.desk-only{display:none!important}.search{max-width:none}.search .kbd{display:none}.search input{padding-right:10px}.s6.keep,.s4.keep,.s3.keep,.s3.rsp,.s4.rsp,.s6.rsp{grid-column:span 12}.ph h1{font-size:21px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi .v{font-size:20px}.g{gap:12px}.notif{width:calc(100vw - 24px)}.kv{grid-template-columns:minmax(0,1fr)}.kv dt{margin-top:4px}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}html,body,#root{min-height:100%}body{margin:0}.login{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(1200px 600px at 20% -10%,var(--accent-soft),transparent),radial-gradient(900px 500px at 110% 110%,var(--violet-soft),transparent),var(--bg)}.login-card{width:min(400px,100%);background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r-lg);padding:28px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow)}.err-text{color:var(--crit);font-size:12px}.spin{width:16px;height:16px;border-radius:50%;border:2px solid var(--line-2);border-top-color:var(--accent);animation:spin .7s linear infinite;display:inline-block}.page-load{display:flex;align-items:center;gap:10px;color:var(--muted);padding:40px 0;justify-content:center}.next-phase{border:1px dashed var(--line-2);border-radius:var(--r-md);background:var(--panel);padding:28px;display:flex;flex-direction:column;gap:14px}.dropzone{border:1.5px dashed var(--line-2);border-radius:var(--r-md);padding:22px;text-align:center;color:var(--muted);background:var(--panel-2);cursor:pointer;transition:border-color .15s,background .15s}.dropzone.on,.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.tree{font-family:var(--f-mono);font-size:12px}.tree .node{padding:4px 0 4px 14px;border-left:1px solid var(--line-2);margin-left:6px}.tree .tterm{display:flex;gap:8px;align-items:center;padding:2px 0;flex-wrap:wrap}.linkish{border:0;background:none;padding:0;color:var(--accent);font:inherit;cursor:pointer;text-align:left}.linkish:hover{text-decoration:underline}.md{font-size:13px;line-height:1.6;overflow-wrap:anywhere}.md p{margin:0 0 8px}.md h4{font-size:12.5px;margin:12px 0 6px;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-2)}.md ul,.md ol{margin:4px 0 10px;padding-left:20px}.md li{margin:3px 0}.md blockquote{margin:8px 0;padding:8px 12px;border-left:3px solid var(--warn);background:var(--warn-soft);border-radius:0 6px 6px 0}.md code{background:var(--panel-3);padding:1px 5px;border-radius:4px}.cite{border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);background:var(--accent-soft);color:var(--accent);font:600 10.5px var(--f-mono);padding:0 5px;border-radius:4px;cursor:pointer;margin:0 1px;line-height:1.6;vertical-align:1px}.cite:hover{background:var(--accent);color:var(--accent-ink)}details>summary{list-style:none}details>summary::-webkit-details-marker{display:none}.callout{overflow-wrap:anywhere}.pick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pick button{display:flex;flex-direction:column;gap:4px;text-align:left;padding:10px 11px;border-radius:9px;border:1px solid var(--line);background:var(--panel-2);color:var(--fg-2);min-width:0;cursor:pointer}.pick button b{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--fg)}.pick button small{font-size:11px;color:var(--muted);line-height:1.35}.pick button:hover{border-color:var(--line-2)}.pick button.on{border-color:var(--c1);background:color-mix(in srgb,var(--c1) 10%,var(--panel-2));box-shadow:inset 0 0 0 1px var(--c1)}.pick button:focus-visible{outline:2px solid var(--c1);outline-offset:2px}@media (max-width:640px){.pick{grid-template-columns:repeat(2,minmax(0,1fr))}}.disc-line{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:12px;margin-bottom:8px}.disc-line .muted{overflow-wrap:anywhere}.disc-skip{margin-top:8px;font-size:12px;color:var(--muted)}.disc-skip summary{cursor:pointer}.disc-skip>div{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;max-height:140px;overflow:auto}.srv-auth{display:flex;gap:6px;align-items:center;font-size:12px;flex-wrap:wrap}.fixitem{border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:var(--panel-2)}.fixitem.on{border-color:color-mix(in srgb,var(--c1) 60%,var(--line))}.fixrec{display:flex;flex-direction:column;gap:4px;font-size:11.5px}.fixrec>div{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;min-width:0}.fixrec .faint{grid-column:1/-1;overflow-wrap:anywhere;font-family:var(--f-mono);font-size:10.5px}.fixrec code{font-family:var(--f-mono);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all;color:var(--muted);min-width:0;flex:1}.fixrec code.new{color:var(--fg)}.fixchecks{margin:6px 0 0;padding-left:16px;font-size:11.5px;display:flex;flex-direction:column;gap:2px}.fixchecks li.info{color:var(--muted)}.fixchecks li.pass{color:var(--ok)}.fixchecks li.warn{color:var(--warn)}.fixchecks li.block{color:var(--crit)}.selbox{width:15px;height:15px;accent-color:var(--c1);cursor:pointer}.selbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--c1) 9%,var(--panel));font-size:12.5px;position:sticky;top:0;z-index:2}.kindtag{font-size:10px;padding:1px 5px;border-radius:4px;margin-right:6px;background:var(--panel-2);border:1px solid var(--line);color:var(--muted)}.kindtag.warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}.progress{height:6px;border-radius:4px;background:var(--panel-2);overflow:hidden}.progress span{display:block;height:100%;background:var(--c1);transition:width .4s}.bulkres{max-height:360px;overflow:auto}.bulkres details{border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:var(--panel-2)}.bulkres summary{display:flex;gap:6px;align-items:center;flex-wrap:wrap;cursor:pointer;font-size:12.5px}.bulkres ul{margin:6px 0 0;padding-left:18px;font-size:12px;display:flex;flex-direction:column;gap:2px}.bulkres li.ok{color:var(--ok)}.bulkres li.warn{color:var(--warn)}.bulkres li.crit{color:var(--crit)}.or{display:flex;align-items:center;gap:10px;color:var(--faint);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.or:before,.or:after{content:"";flex:1;height:1px;background:var(--line)}.otp{font-size:20px;letter-spacing:.35em;text-align:center;height:44px}.qr{background:#fff;border-radius:10px;padding:10px;width:200px;max-width:100%;margin:0 auto;line-height:0}.qr svg{width:100%;height:auto}.codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.codes code{font-family:var(--f-mono);font-size:13px;padding:7px 9px;border:1px dashed var(--line-2);border-radius:7px;text-align:center;background:var(--panel-2);color:var(--fg)}.steps{margin:0;padding-left:18px;font-size:12.5px;color:var(--muted);display:flex;flex-direction:column;gap:4px}.pickcard{display:flex;gap:12px;align-items:flex-start;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);color:var(--fg);cursor:pointer}.pickcard:hover:not(:disabled){border-color:var(--c1)}.pickcard:disabled{opacity:.5;cursor:not-allowed}.pickcard span{display:flex;flex-direction:column;gap:2px}.pickcard small{color:var(--muted);font-size:12px}.secrow{display:flex;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);flex-wrap:wrap}.pwmeter{position:relative;height:6px;border-radius:4px;background:var(--panel-2);margin-top:-4px}.pwmeter span{position:absolute;inset:0 auto 0 0;border-radius:4px;background:var(--crit);transition:width .2s}.pwmeter span.s3{background:var(--warn)}.pwmeter span.s4,.pwmeter span.s5{background:var(--ok)}.pwmeter small{position:absolute;right:0;top:8px;font-size:11px;color:var(--muted)}.mx td.rl .linkish{max-width:100%;overflow:hidden;text-overflow:ellipsis;display:block}
