:root{--bg:#eef1f4;--panel:#fff;--panel-2:#f7f9fb;--ink:#172026;--muted:#5f6b76;--line:#d8dde3;--brand:#ff550c;--accent:#0f766e;--accent-2:#2563eb;--nav-text:#1a1a1a;--nav-muted:#595959;--healthy:#093;--healthy-bg:#0099331a;--healthy-border:#00993340;--watch:#f27f0d;--watch-bg:#f27f0d1a;--watch-border:#f27f0d40;--critical:#ec4545;--critical-bg:#ec45451a;--critical-border:#ec454540;--unknown:#6b7280;--unknown-bg:#6b728012;--unknown-border:#6b728033;--shadow:0 14px 40px #1f29371f;--hover:#0000000a;--node-healthy:#e6f5ec;--node-watch:#fef3e6;--node-critical:#fde9e9;--node-unknown:#f5f3eb;--detail-width:360px;--left-width:220px}:root.dark{--bg:#0e1014;--panel:#15181e;--panel-2:#1b1f26;--ink:#e8e8ea;--muted:#e8e8ea9e;--line:#ffffff1a;--brand:#ff6625;--accent:#56c58a;--accent-2:#7ba4f7;--nav-text:#f2f2f2;--nav-muted:#a6a6a6;--healthy:#31ad5a;--healthy-bg:#31ad5a4d;--healthy-border:#31ad5a66;--watch:#f4983b;--watch-bg:#f4983b4d;--watch-border:#f4983b66;--critical:#e55;--critical-bg:#ee55554d;--critical-border:#e556;--unknown:#52555d;--unknown-bg:#ffffff0d;--unknown-border:#ffffff1a;--shadow:0 14px 40px #0006;--hover:#ffffff0f;--node-healthy:#0f2418;--node-watch:#261e0e;--node-critical:#2a1313;--node-unknown:#1a1a18}*,:before,:after{box-sizing:border-box}button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}html,body{background:var(--bg);height:100%;color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:12px;line-height:1.45;overflow:hidden}button,input{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.app-shell{grid-template-rows:auto 1fr;height:100vh;display:grid}.workspace{grid-template-columns:var(--left-width) 1fr 6px var(--detail-width);gap:6px;min-height:0;padding:6px 8px 8px;transition:grid-template-columns .22s;display:grid}.topbar{border-bottom:1px solid var(--line);background:var(--panel-2);align-items:center;gap:12px;height:38px;padding:0 16px;display:flex}.topbar-org{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.topbar-sep{color:var(--muted);opacity:.5;margin:0 -4px;font-size:11px}.topbar-name{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.topbar-pills{gap:6px;margin-left:auto;display:flex}.topbar-pill{border-radius:999px;padding:2px 10px;font-size:11px;font-weight:700}.topbar-pill.healthy{background:var(--healthy-bg);color:var(--healthy)}.topbar-pill.watch{background:var(--watch-bg);color:var(--watch)}.topbar-pill.critical{background:var(--critical-bg);color:var(--critical)}.topbar-live{color:var(--muted);align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.topbar-live-dot{background:var(--healthy);width:6px;height:6px;box-shadow:0 0 0 3px var(--healthy-bg);--glow:var(--healthy-bg);border-radius:50%;animation:2s ease-in-out infinite dot-breathe}.status-dot-pulse{animation:2s ease-in-out infinite dot-breathe}.status-dot-pulse.hero-dot{animation:2s ease-in-out infinite hero-breathe}@keyframes dot-breathe{0%,to{box-shadow:0 0 0 0 var(--glow)}50%{box-shadow:0 0 0 3px var(--glow)}}@keyframes hero-breathe{0%,to{box-shadow:0 0 0 3px var(--glow), 0 0 0 4px var(--ring)}50%{box-shadow:0 0 0 5px var(--glow), 0 0 0 6px var(--ring)}}.theme-toggle{border:1px solid var(--line);background:var(--panel);width:28px;height:28px;color:var(--muted);cursor:pointer;border-radius:6px;place-items:center;margin-left:4px;font-size:14px;transition:background .12s,border-color .12s;display:grid}.theme-toggle:hover{background:var(--hover);border-color:var(--muted)}.topbar-divider{background:var(--line);flex-shrink:0;width:1px;height:18px;margin:0 6px}.topbar-mcp{border:1px solid var(--line);background:var(--panel);height:28px;color:var(--muted);cursor:pointer;letter-spacing:.05em;border-radius:6px;margin-left:4px;padding:0 10px;font-family:monospace;font-size:10px;font-weight:700;transition:background .12s,border-color .12s,color .12s}.topbar-mcp:hover{background:var(--hover);border-color:var(--muted);color:var(--ink)}.field-label{color:var(--nav-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:10px;font-weight:600;display:block}.left-panel{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex-direction:column;grid-column:1;min-height:0;transition:opacity .18s,border-color .18s;display:flex;overflow-y:auto}.panel-footer{border-top:1px solid var(--line);flex-shrink:0;align-items:center;gap:4px;margin-top:auto;padding:6px 10px;display:flex}.panel-footer-btn{border:1px solid var(--line);background:var(--panel-2);height:28px;color:var(--muted);cursor:pointer;border-radius:6px;padding:0 10px;font-size:11px;font-weight:600;transition:background .1s,color .1s,border-color .1s}.panel-footer-btn:hover{background:var(--hover);color:var(--ink);border-color:var(--muted)}.panel-footer-icon{border:1px solid var(--line);background:var(--panel-2);width:28px;height:28px;color:var(--muted);cursor:pointer;border-radius:6px;flex-shrink:0;place-items:center;font-size:14px;transition:background .1s,color .1s,border-color .1s;display:grid}.panel-footer-icon:hover{background:var(--hover);color:var(--ink);border-color:var(--muted)}.route-health-row{border-bottom:1px solid var(--line);border-radius:4px;padding:8px 4px;transition:background .1s}.route-health-row:hover{background:var(--panel-2)}.route-health-row.active{background:var(--panel-2);outline:2px solid var(--brand);outline-offset:-2px}.route-health-top{align-items:center;gap:6px;margin-bottom:8px;display:flex}.route-health-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:600;overflow:hidden}.route-health-status{flex-shrink:0;font-size:10px;font-weight:600}.route-health-status.healthy{color:var(--healthy)}.route-health-status.watch{color:var(--watch)}.route-health-status.critical{color:var(--critical)}.route-health-status.unknown{color:var(--unknown)}.route-dot-bar{align-items:center;padding:0 4px;display:flex}.route-dot-step{flex:1;align-items:center;min-width:0;display:flex}.route-dot-step:first-child{flex:none}.route-dot-pip{cursor:pointer;border-radius:50%;flex-shrink:0;width:10px;height:10px;position:relative}.route-dot-pip.healthy{background:var(--healthy)}.route-dot-pip.watch{background:var(--watch)}.route-dot-pip.critical{background:var(--critical)}.route-dot-pip.unknown{background:var(--unknown);opacity:.4}.route-dot-line{background:var(--healthy);opacity:.3;flex:1;min-width:6px;height:2px}.route-dot-line.critical{background:var(--critical);opacity:.5}.route-dot-tip{background:var(--panel);border:1px solid var(--line);white-space:nowrap;z-index:50;pointer-events:none;border-radius:8px;align-items:flex-start;gap:6px;padding:8px 10px;font-size:11px;line-height:1.4;display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000026}.route-dot-tip:after{content:"";border:5px solid #0000;border-top-color:var(--line);position:absolute;top:100%;left:50%;transform:translate(-50%)}.route-dot-pip:hover .route-dot-tip{display:flex}.route-dot-step:last-child .route-dot-tip{left:auto;right:0;transform:none}.route-dot-step:last-child .route-dot-tip:after{left:auto;right:4px;transform:none}.route-dot-step:first-child .route-dot-tip{left:0;transform:none}.route-dot-step:first-child .route-dot-tip:after{left:4px;transform:none}.route-health-firing{margin-top:6px}.system-palette{flex-direction:column;gap:0;height:100%;display:flex}.sp-header{padding:10px 12px 8px}.sp-label{letter-spacing:.06em;text-transform:uppercase;color:var(--brand);font-size:10px;font-weight:600}.sp-title{margin-top:2px;font-size:15px;font-weight:600}.sp-hint{color:var(--muted);margin-top:3px;font-size:11px;line-height:1.4}.sp-toggle{background:var(--panel-2);border:1px solid var(--line);border-radius:7px;margin:0 12px;padding:2px;display:flex}.sp-tab{font:inherit;cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:5px;flex:1;padding:5px 8px;font-size:11px;font-weight:500;transition:all .1s}.sp-tab.active{background:var(--panel);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0000000f}.sp-filter{border:1px solid var(--line);background:var(--panel);font:inherit;color:var(--ink);border-radius:6px;outline:none;margin:8px 12px;padding:6px 10px;font-size:12px}.sp-filter:focus{border-color:var(--brand)}.sp-list{flex-direction:column;flex:1;gap:4px;padding:0 12px 12px;display:flex;overflow-y:auto}.sp-item{border:1px solid var(--line);background:var(--panel);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:7px;align-items:center;gap:8px;padding:7px 10px;transition:border-color .1s,background .1s;display:flex}.sp-item:hover{border-color:var(--muted);background:var(--panel-2)}.sp-item:active{cursor:grabbing}.sp-item.dragging{opacity:.3}.sp-item-info{flex:1;min-width:0}.sp-item-name{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex;overflow:hidden}.sp-item-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:10px;overflow:hidden}.sp-shared{color:var(--muted);background:var(--panel-2);border-radius:3px;flex-shrink:0;padding:1px 5px;font-size:9px;font-weight:700}.panel-section{border-bottom:1px solid var(--line);flex-shrink:0;padding:12px 10px}.panel-section:first-child{padding-top:8px}.panel-section:last-child{border-bottom:0}.surface-list{gap:5px;display:grid}.surface-nav-item{border:1px solid var(--line);border-left:3px solid var(--line);background:var(--panel);width:100%;min-height:34px;color:var(--nav-text);cursor:pointer;text-align:left;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px 6px 10px;font-size:12px;font-weight:600;transition:background .1s,border-color .1s;display:flex}.surface-nav-item:hover{background:var(--panel-2)}.surface-nav-item.healthy{border-left-color:var(--healthy)}.surface-nav-item.watch{border-left-color:var(--watch)}.surface-nav-item.critical{border-left-color:var(--critical)}.surface-nav-item.selected{border-color:var(--brand);border-left-width:3px;border-left-color:var(--brand)}.surface-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.nav-status-pill{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:9px;font-weight:800}.nav-status-pill.watch{background:var(--watch-bg);color:var(--watch);border:1px solid var(--watch-border)}.nav-status-pill.critical{background:var(--critical-bg);color:var(--critical);border:1px solid var(--critical-border)}.segments{background:var(--panel-2);border:1px solid #c8d2dc;border-radius:7px;grid-template-columns:repeat(3,1fr);padding:3px;display:grid}.segment{height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;font-size:12px;font-weight:500;transition:all .1s}.segment.active{background:var(--panel);color:var(--ink);font-weight:600;box-shadow:0 1px 4px #0f172a1a}.source-list{gap:7px;display:grid}.source-chip strong{color:var(--ink)}.policy-copy{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.graph-banner{border-bottom:1px solid var(--line);background:var(--panel-2);align-items:center;gap:12px;padding:6px 14px;display:flex}.banner-title{color:var(--ink);white-space:nowrap;font-size:13px;font-weight:700}.banner-controls{align-items:center;gap:8px;margin-left:auto;display:flex}.legend-item{color:var(--muted);white-space:nowrap;align-items:center;gap:4px;font-size:11px;display:flex}.legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.legend-dot.healthy{background:var(--healthy)}.legend-dot.watch{background:var(--watch)}.legend-dot.critical{background:var(--critical)}.legend-dot.unknown{background:var(--unknown);border:1px dashed var(--unknown)}.route-bar{border-bottom:1px solid var(--line);background:var(--panel-2);flex-shrink:0;align-items:center;gap:4px;min-height:38px;padding:6px 12px;display:flex;overflow-x:auto}.route-bar-divider{background:var(--line);flex-shrink:0;align-self:stretch;width:1px;margin:0 6px}.hide-others-btn{margin-left:auto}.route-pill{border:1px solid var(--line);background:var(--panel);height:25px;color:var(--muted);white-space:nowrap;cursor:pointer;border-radius:999px;padding:0 12px;font-size:11px;font-weight:500;transition:all .1s}.route-pill:hover{background:var(--panel-2);color:var(--ink);border-color:#b0bcc8}.route-pill.active{border-color:var(--accent);color:var(--accent);background:var(--healthy-bg);font-weight:600}.graph-viewport{cursor:grab;background-color:#f8fafc;background-image:linear-gradient(#17202609 1px,#0000 1px),linear-gradient(90deg,#17202609 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:0;position:relative;overflow:hidden}.graph-viewport.panning{cursor:grabbing}.graph-canvas{transform-origin:0 0;will-change:transform;width:1400px;height:900px;position:absolute;top:0;left:0}.edge-layer{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.edge-path{fill:none;stroke:#b8c4cf;stroke-width:1.5px;marker-end:url(#arrow)}.node-layer{width:100%;height:100%;position:absolute;top:0;left:0}.node-card{border:2px solid var(--line);background:var(--panel);cursor:pointer;-webkit-user-select:none;user-select:none;width:220px;min-height:148px;box-shadow:var(--shadow);border-radius:8px;grid-template-rows:auto auto auto auto 1fr;gap:5px;padding:9px;transition:opacity .12s,border-color .12s,box-shadow .12s,background .12s,transform .12s;display:grid}.node-card:hover{transform:translateY(-2px);box-shadow:0 18px 48px #1f293729}.node-card.selected{box-shadow:var(--shadow);outline:3px solid #2563eb38}.node-card.healthy{border-color:var(--healthy-border);background:var(--node-healthy)}.node-card.watch{border-color:var(--watch-border);background:var(--node-watch)}.node-card.critical{border-color:var(--critical-border);background:var(--node-critical)}.node-card.unknown{border-style:dashed;border-color:var(--unknown-border);background:var(--node-unknown)}.node-card.dimmed{opacity:.26;pointer-events:none}.node-card-heading strong{overflow-wrap:anywhere;font-size:13px;line-height:1.15}.node-card-status-row{flex-wrap:wrap;gap:4px;display:flex}.node-card-badge{background:var(--panel-2);color:var(--muted);text-transform:uppercase;border-radius:999px;flex:none;padding:3px 6px;font-size:9px;font-weight:900;line-height:1.15}.node-card-badge.health.healthy{background:var(--healthy-bg);color:var(--healthy)}.node-card-badge.health.watch{background:var(--watch-bg);color:var(--watch)}.node-card-badge.health.critical{background:var(--critical-bg);color:var(--critical)}.node-card-badge.health.unknown{background:var(--unknown-bg);color:var(--unknown);border:1px solid var(--unknown-border)}.node-page-chip{background:var(--panel-2);color:var(--muted);overflow-wrap:anywhere;border-radius:6px;padding:4px 6px;font-size:10px;font-weight:800;line-height:1.2;display:block}.node-card-metrics{gap:4px;display:grid}.node-card-metric{border-top:1px solid var(--line);gap:2px;padding-top:5px;display:grid}.node-card-metric b{color:var(--ink);overflow-wrap:anywhere;font-size:11px;line-height:1.15}.node-card-metric small{color:var(--muted);font-size:10px;line-height:1.2}.node-card-metric.watch b{color:var(--watch)}.node-card-metric.critical b{color:var(--critical)}.node-card-gap{border-top:1px solid var(--line);color:var(--muted);overflow-wrap:anywhere;margin:0;padding-top:5px;font-size:10px;font-weight:700;line-height:1.25}.node-card-gap.watch{color:var(--watch)}.node-card-gap.critical{color:var(--critical)}.detail-resizer{cursor:col-resize;border-radius:999px;grid-column:3;align-self:stretch;min-height:80px;transition:opacity .18s;position:relative}.detail-resizer:before{content:"";background:var(--line);border-radius:999px;width:2px;position:absolute;top:10px;bottom:10px;left:50%;transform:translate(-50%)}.detail-resizer:hover:before,body.detail-resizing .detail-resizer:before{background:var(--accent-2)}body.detail-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.detail-panel{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex-direction:column;grid-column:4;min-height:0;transition:opacity .18s,border-color .18s;display:flex;overflow-y:auto}#detail{flex:1;padding:0 0 10px;overflow-y:auto}.detail-header{border-bottom:1px solid var(--line);background:var(--panel);z-index:1;justify-content:space-between;align-items:flex-start;gap:8px;padding:8px 10px;display:flex;position:sticky;top:0}.detail-node-label{letter-spacing:-.01em;margin-bottom:3px;font-size:13px;font-weight:700}.detail-node-status,.status-pill{background:var(--panel-2);min-height:20px;color:var(--muted);text-transform:uppercase;border-radius:999px;align-items:center;padding:2px 7px;font-size:10px;font-weight:800;display:inline-flex}.detail-node-status.healthy,.status-pill.healthy{background:var(--healthy-bg);color:var(--healthy)}.detail-node-status.watch,.status-pill.watch{background:var(--watch-bg);color:var(--watch)}.detail-node-status.critical,.status-pill.critical{background:var(--critical-bg);color:var(--critical)}.detail-close{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;font-size:18px;line-height:1}.detail-close:hover{background:var(--panel-2);color:var(--ink)}.detail-edit-btn{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;font-size:14px}.detail-edit-btn:hover{background:var(--panel-2);color:var(--ink)}.dp-fire-card{border:1px solid var(--line);border-radius:6px;flex-direction:column;gap:3px;margin-bottom:6px;padding:7px 9px;display:flex}.dp-fire-critical{border-left:3px solid var(--critical)}.dp-fire-watch{border-left:3px solid var(--watch)}.dp-fire-top{align-items:center;gap:5px;display:flex}.dp-fire-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;font-weight:600;overflow:hidden}.dp-fire-val{flex-shrink:0;font-size:13px;font-weight:700}.dp-val-critical{color:var(--critical)}.dp-val-watch{color:var(--watch)}.dp-fire-msg{color:var(--ink);font-size:10px;line-height:1.4}.dp-fire-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:5px;font-size:9px;display:flex}.dp-fire-since{font-style:italic}.dp-fire-link{color:var(--accent);margin-left:auto;font-size:9px;text-decoration:none}.dp-fire-link:hover{text-decoration:underline}.dp-sub-list{flex-direction:column;gap:0;display:flex}.dp-sub-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:5px 0;display:flex}.dp-sub-header:hover .dp-sub-label{color:var(--accent)}.dp-sub-bar{border-radius:2px;flex-shrink:0;width:3px;height:14px}.dp-bar-g{background:var(--healthy)}.dp-bar-o{background:var(--watch)}.dp-bar-r{background:var(--critical)}.dp-bar-x{background:var(--unknown)}.dp-sub-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex:1;font-size:9px;font-weight:700;transition:color .1s}.dp-sub-counts{flex-shrink:0;gap:3px;display:flex}.dp-cnt{border-radius:3px;padding:1px 5px;font-size:9px;font-weight:700}.dp-cnt-g{background:var(--healthy-bg);color:var(--healthy)}.dp-cnt-o{background:var(--watch-bg);color:var(--watch)}.dp-cnt-r{background:var(--critical-bg);color:var(--critical)}.dp-cnt-x{background:var(--unknown-bg);color:var(--muted)}.dp-sub-chev{color:var(--muted);flex-shrink:0;font-size:10px}.dp-sub-body{flex-direction:column;gap:0;padding:2px 0 6px 9px;display:flex}.dp-mon-row{border-bottom:1px solid var(--line);align-items:center;gap:5px;padding:4px 0;font-size:11px;display:flex}.dp-mon-row:last-child{border-bottom:none}.dp-mon-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.dp-mon-val{flex-shrink:0;font-size:10px;font-weight:700}.dp-mon-val-healthy{color:var(--healthy)}.dp-mon-val-watch{color:var(--watch)}.dp-mon-val-critical{color:var(--critical)}.dp-mon-val-unknown{color:var(--muted)}.dp-mon-link{color:var(--accent);opacity:0;font-size:9px;text-decoration:none}.dp-mon-row:hover .dp-mon-link{opacity:1}.dp-desc{color:var(--muted);font-size:11px;line-height:1.5}.dp-log-row{color:inherit;border-radius:3px;align-items:center;gap:4px;padding:3px 0;font-size:10px;text-decoration:none;display:flex}.dp-log-row:hover{background:var(--panel-2)}.dp-log-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dp-log-arrow{color:var(--muted);opacity:0;font-size:9px}.dp-log-row:hover .dp-log-arrow{opacity:1}.detail-section{border-bottom:1px solid var(--line);padding:8px 10px}.detail-section:last-child{border-bottom:0}.section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:10px;font-weight:700;display:block}.empty-note{color:var(--muted);font-size:12px;line-height:1.4}.health-decision{align-items:center;gap:8px;margin-bottom:6px;display:flex}.health-decision-text{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.4}.surface-summary-bar{border-bottom:1px solid var(--line);padding:8px 10px}.surface-summary-counts{gap:10px;font-size:11px;font-weight:600;display:flex}.attention-row{text-align:left;cursor:pointer;width:100%;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:0 0;align-items:center;gap:7px;padding:6px 0;font-size:12px;display:flex}.attention-row:last-child{border-bottom:0}.attention-row span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attention-row:hover{color:var(--accent)}.node-list-row{border:1px solid var(--line);background:var(--panel);text-align:left;cursor:pointer;border-radius:6px;flex-direction:column;gap:2px;width:100%;margin-bottom:4px;padding:5px 8px;transition:border-color .15s,background .15s;display:flex}.node-list-row:hover{border-color:var(--accent);background:var(--panel-2)}.node-list-row.draggable-node{cursor:grab}.node-list-row.draggable-node:active{cursor:grabbing}.node-list-row.dragging{opacity:.3}.node-list-row.critical{border-left:3px solid var(--critical)}.node-list-row.watch{border-left:3px solid var(--watch)}.node-list-header{align-items:center;gap:6px;display:flex}.node-list-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;font-weight:600;overflow:hidden}.node-list-status{flex-shrink:0;font-size:9px;font-weight:700}.node-list-status.healthy{color:var(--healthy)}.node-list-status.watch{color:var(--watch)}.node-list-status.critical{color:var(--critical)}.node-list-status.unknown{color:var(--muted)}.node-list-meta{color:var(--muted);padding-left:14px;font-size:9px}.node-list-empty{color:var(--muted);font-style:italic}.node-list-firing{flex-direction:column;gap:2px;margin-top:2px;padding-left:14px;display:flex}.node-list-alert{align-items:center;gap:4px;font-size:9px;font-weight:600;display:flex}.node-list-alert.critical{color:var(--critical)}.node-list-alert.watch{color:var(--watch)}.monitor-row{border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:7px 0;display:flex}.monitor-row:last-child{border-bottom:0}.monitor-state-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2s ease-in-out infinite dot-breathe}.monitor-state-dot.healthy{background:var(--healthy);--glow:var(--healthy-bg)}.monitor-state-dot.watch{background:var(--watch);--glow:var(--watch-bg)}.monitor-state-dot.critical{background:var(--critical);--glow:var(--critical-bg)}.monitor-state-dot.unknown{background:var(--unknown);border:1px dashed var(--unknown);animation:none}.source-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:3px;flex-shrink:0;height:16px;padding:0 5px;font-size:9px;font-weight:800;line-height:16px}.source-posthog{color:#c2410c;background:#c2410c1a}.source-datadog{color:#6d28d9;background:#6d28d91a}.source-slack{color:#7e22ce;background:#7e22ce1a}.source-custom{color:#0f766e;background:#0f766e1a}.monitor-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;overflow:hidden}.monitor-actions{flex-shrink:0;align-items:center;gap:3px;display:flex}.icon-btn{border:1px solid var(--line);background:var(--panel-2);width:22px;height:22px;color:var(--muted);cursor:pointer;border-radius:5px;flex-shrink:0;place-items:center;font-size:14px;line-height:1;text-decoration:none;transition:all .1s;display:grid}.icon-btn:hover{background:var(--line);color:var(--ink)}.attach-btn{color:var(--healthy);border-color:var(--healthy-border)}.attach-btn:hover{background:var(--healthy-bg);border-color:var(--healthy)}.detach-btn{color:var(--critical);border-color:var(--critical-border)}.detach-btn:hover{background:var(--critical-bg);border-color:var(--critical)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.pin-btn{opacity:.3;font-size:11px}.pin-btn:hover{opacity:.7}.pin-btn.pinned{opacity:1}.monitor-search{background:var(--panel);width:100%;height:30px;color:var(--ink);border:1px solid #c8d2dc;border-radius:6px;margin-bottom:8px;padding:0 9px;font-size:12px}.monitor-search:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #0f766e1f}.monitor-picker{max-height:300px;overflow-y:auto}html,body,#root{height:100%;overflow:hidden}.graph-region{flex-direction:column;grid-column:2;min-width:400px;min-height:0;display:flex}.graph-region.has-border{border:1px solid var(--line);border-radius:8px;overflow:clip}.graph-flow-wrapper{flex-direction:column;flex:1;min-height:0;display:flex}.graph-flow-wrapper .react-flow{flex:1;min-height:0}.react-flow__node-healthNode{width:220px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.react-flow__node-healthNode:focus{outline:none}.react-flow__handle.rf-handle{background:var(--panel-2);border:2px solid #b8c5d4;width:10px;height:10px;box-shadow:0 0 0 2px #f8fafc}.react-flow__controls{--xy-controls-box-shadow:0 1px 4px #1720261a;--xy-controls-button-background-color:var(--panel);--xy-controls-button-background-color-hover:var(--panel-2);--xy-controls-button-color:var(--muted);--xy-controls-button-color-hover:var(--muted);--xy-controls-button-border-color:var(--line);border:1px solid var(--line);border-radius:7px;overflow:hidden}.react-flow__controls-button{border:0;border-bottom:1px solid var(--line);fill:var(--muted);color:var(--muted)}.react-flow__controls-button:hover{fill:var(--ink);color:var(--ink)}.zoom-pct-btn{font-variant-numeric:tabular-nums;letter-spacing:-.01em;width:100%;border-bottom:0!important;font-size:10px!important;font-weight:600!important}.react-flow__edge-path{stroke-opacity:.7}.edit-toggle{border:1px solid var(--line);background:var(--panel);height:30px;color:var(--muted);cursor:pointer;border-radius:7px;padding:0 12px;font-size:12px;font-weight:600;transition:all .1s}.edit-toggle:hover{background:var(--panel-2);color:var(--ink)}.edit-toggle.active{border-color:var(--brand);background:var(--panel-2);color:var(--brand)}.add-node-btn{border:1px solid var(--line);background:var(--panel);height:32px;color:var(--ink);cursor:pointer;border-radius:7px;padding:0 14px;font-size:12px;font-weight:700}.add-node-btn:hover{background:var(--panel-2)}.workspace.left-collapsed{grid-template-columns:0px 1fr 6px var(--detail-width)}.workspace.left-collapsed .left-panel{opacity:0;pointer-events:none;border-color:#0000;overflow:hidden}.workspace.right-collapsed{grid-template-columns:var(--left-width) 1fr 0px 0px}.workspace.right-hidden{grid-template-columns:var(--left-width) 1fr 0px 0px;transition:none}.workspace.left-collapsed.right-collapsed{grid-template-columns:0 1fr 0 0}.workspace.left-collapsed.right-hidden{grid-template-columns:0 1fr 0 0;transition:none}.workspace.right-hidden .detail-resizer,.workspace.right-hidden .detail-panel{display:none}.workspace.right-collapsed .detail-resizer,.workspace.right-collapsed .detail-panel{opacity:0;pointer-events:none;border-color:#0000;transition:opacity .18s;overflow:hidden}.left-panel.collapsed,.detail-panel.collapsed{border-color:#0000;overflow:hidden}.panel-toolbar{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:4px;min-width:0;padding:6px 8px;display:flex;overflow:hidden}.panel-toolbar .home-nav-btn{flex:1;min-width:0}.panel-toolbar-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:700;overflow:hidden}.panel-collapse-btn{border:1px solid var(--line);background:var(--panel-2);width:28px;height:28px;color:var(--ink);cursor:pointer;border-radius:6px;flex-shrink:0;place-items:center;font-size:16px;font-weight:700;transition:background .1s,border-color .1s;display:grid}.panel-collapse-btn:hover{background:var(--line);border-color:var(--border-2,#b0b8c4)}.corner-toggle{border:1px solid var(--line);background:var(--panel);width:26px;height:26px;color:var(--ink);cursor:pointer;z-index:10;border-radius:6px;place-items:center;font-size:14px;font-weight:700;transition:background .1s,opacity .2s;animation:.25s both corner-fade-in;display:grid;position:absolute;bottom:10px;box-shadow:0 1px 4px #00000014}@keyframes corner-fade-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.corner-toggle:hover{background:var(--panel-2)}.corner-toggle.left{left:10px}.corner-toggle.right{right:10px}.workspace{position:relative}.node-compact{align-items:center;gap:7px;height:36px;grid-template-rows:none!important;width:160px!important;min-height:36px!important;padding:0 10px!important;display:flex!important}.compact-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.compact-dot.healthy{background:var(--healthy)}.compact-dot.watch{background:var(--watch)}.compact-dot.critical{background:var(--critical)}.compact-dot.unknown{background:var(--unknown);border:1px dashed var(--unknown)}.compact-label{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:600;overflow:hidden}.tidy-btn{border:1px solid var(--line);background:var(--panel);color:var(--muted);font:inherit;cursor:pointer;border-radius:6px;padding:5px 12px;font-size:11px;font-weight:600;transition:background .1s,color .1s}.tidy-btn:hover{background:var(--panel-2);color:var(--ink)}.add-node-form{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;align-items:center;gap:4px;padding:5px 7px;display:flex}.add-node-input{background:var(--panel);width:160px;height:28px;color:var(--ink);border:1px solid #c8d2dc;border-radius:5px;padding:0 8px;font-size:12px}.add-node-input:focus{border-color:var(--accent);outline:none}.add-node-cancel{border:1px solid var(--line);background:var(--panel-2);width:26px;height:28px;color:var(--muted);cursor:pointer;border-radius:5px;place-items:center;font-size:16px;line-height:1;display:grid}.add-node-cancel:hover{background:var(--line);color:var(--ink)}.legend-divider{background:var(--line);width:1px;height:14px;margin:0 2px}.legend-edge{border-radius:1px;flex-shrink:0;width:20px;height:2px;display:inline-block}.legend-edge.primary{background:#9aa8ba}.legend-edge.recovery{background:repeating-linear-gradient(90deg,#b98a2f 0 6px,#0000 6px 10px)}.legend-edge.support{background:repeating-linear-gradient(90deg,#c66f69 0 8px,#0000 8px 14px)}.legend-edge.loop{background:repeating-linear-gradient(90deg,#8b9aab 0 4px,#0000 4px 9px)}.url-paste-form{gap:4px;margin-bottom:6px;display:flex}.url-paste-input{background:var(--panel);height:30px;color:var(--ink);border:1px solid #c8d2dc;border-radius:6px;flex:1;min-width:0;padding:0 8px;font-size:12px}.url-paste-input:focus{border-color:var(--accent);outline:none}.url-paste-input:disabled{opacity:.5}.url-paste-btn{border:1px solid var(--brand);background:var(--panel);width:30px;height:30px;color:var(--brand);cursor:pointer;border-radius:6px;flex-shrink:0;place-items:center;font-size:14px;display:grid}.url-paste-btn:hover{background:var(--panel-2)}.url-paste-btn:disabled{opacity:.4;cursor:not-allowed}.url-paste-error{color:var(--critical);margin-bottom:6px;font-size:11px}.monitor-search-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-top:10px;margin-bottom:6px;font-size:10px;font-weight:700}.monitor-row-right{flex-shrink:0;align-items:center;gap:3px;display:flex}.monitor-status-pill{text-transform:uppercase;letter-spacing:.04em;border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:9px;font-weight:800}.monitor-status-pill.healthy{background:var(--healthy-bg);color:var(--healthy)}.monitor-status-pill.watch{background:var(--watch-bg);color:var(--watch)}.monitor-status-pill.critical{background:var(--critical-bg);color:var(--critical)}.monitor-status-pill.unknown{background:var(--unknown-bg);color:var(--unknown)}.search-loading{font-style:italic}.search-msg{color:var(--muted);font-size:11px}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#17202661;place-items:center;display:grid;position:fixed;inset:0}.search-modal{border:1px solid var(--line);background:var(--panel);border-radius:10px;width:min(680px,100vw - 40px);max-height:calc(100vh - 80px);display:grid;overflow:hidden;box-shadow:0 24px 70px #0f172a47}.search-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 14px;display:flex}.search-modal-title{font-size:15px;font-weight:700}.search-modal-subtitle{color:var(--muted);margin-top:2px;font-size:12px}.search-modal-input-row{border-bottom:1px solid var(--line);background:var(--panel-2);padding:12px 18px}.search-modal-input{border:1px solid var(--line);background:var(--panel);width:100%;height:36px;color:var(--ink);border-radius:7px;padding:0 12px;font-size:13px}.search-modal-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #0f766e1f}.search-modal-body{min-height:120px;overflow-y:auto}.search-modal-state{color:var(--muted);padding:20px 18px;font-size:13px}.search-modal-hint{line-height:1.6}.search-modal-msg{color:var(--watch)}.search-modal-results{display:grid}.search-result-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 18px;display:flex}.search-result-row:last-child{border-bottom:0}.search-result-row:hover{background:var(--panel-2)}.search-result-main{flex:1;min-width:0}.search-result-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.search-result-meta{align-items:center;gap:6px;margin-top:4px;display:flex}.search-result-link{color:var(--accent);font-size:11px;text-decoration:none}.search-result-link:hover{text-decoration:underline}.search-result-add{border:1px solid var(--healthy-border);background:var(--healthy-bg);height:28px;color:var(--healthy);cursor:pointer;border-radius:6px;flex-shrink:0;padding:0 12px;font-size:12px;font-weight:600;transition:all .1s}.search-result-add:hover{background:var(--healthy-bg)}.search-result-add:disabled{opacity:.4;cursor:not-allowed}.search-monitors-btn{border:1px dashed var(--border-2,#c4cdd6);width:100%;height:32px;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;margin-top:8px;font-size:12px;font-weight:500;transition:all .1s}.search-monitors-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--healthy-bg)}.node-monitor-dot{vertical-align:middle;border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-right:4px;display:inline-block}.node-monitor-dot.healthy{background:var(--healthy)}.node-monitor-dot.watch{background:var(--watch)}.node-monitor-dot.critical{background:var(--critical)}.node-monitor-dot.unknown{background:var(--unknown)}.search-modal-import-row{border-bottom:1px solid var(--line);background:var(--watch-bg);padding:10px 18px}.dash-import-result{color:var(--healthy);margin-top:6px;font-size:12px;font-weight:600}.search-modal{grid-template-rows:auto auto auto 1fr}.source-chip{border:1px solid var(--line);background:var(--panel-2);color:var(--muted);cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:13px;transition:background .1s,border-color .1s;display:flex}.source-chip:hover{background:var(--hover);border-color:var(--accent)}.catalog-modal{border:1px solid var(--line);background:var(--panel);border-radius:10px;grid-template-columns:300px 1fr;width:min(860px,100vw - 40px);height:calc(100vh - 80px);max-height:680px;display:grid;overflow:hidden;box-shadow:0 24px 70px #0f172a47}.catalog-left{border-right:1px solid var(--line);grid-template-rows:auto 1fr;display:grid;overflow:hidden}.catalog-left-header{border-bottom:1px solid var(--line);background:var(--panel-2);gap:8px;padding:12px;display:grid}.catalog-source-tabs{flex-wrap:wrap;gap:3px;display:flex}.catalog-source-tab{border:1px solid var(--line);background:var(--panel);height:26px;color:var(--muted);cursor:pointer;border-radius:999px;padding:0 10px;font-size:11px;font-weight:500;transition:all .1s}.catalog-source-tab:hover{background:var(--panel-2);color:var(--ink)}.catalog-source-tab.active{background:var(--panel);border-color:var(--brand);color:var(--brand);font-weight:600}.catalog-search{background:var(--panel);width:100%;height:30px;color:var(--ink);border:1px solid #c8d2dc;border-radius:6px;padding:0 9px;font-size:12px}.catalog-search:focus{border-color:var(--accent);outline:none}.catalog-state-filters{flex-wrap:wrap;gap:4px;display:flex}.catalog-state-btn{border:1px solid var(--line);height:22px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;padding:0 7px;font-size:10px;font-weight:600;transition:all .1s}.catalog-state-btn.active{background:var(--panel);color:var(--ink);border-color:var(--border-2,#c4cdd6)}.catalog-state-btn.healthy.active{background:var(--healthy-bg);color:var(--healthy);border-color:var(--healthy-border)}.catalog-state-btn.watch.active{background:var(--watch-bg);color:var(--watch);border-color:var(--watch-border)}.catalog-state-btn.critical.active{background:var(--critical-bg);color:var(--critical);border-color:var(--critical-border)}.catalog-list{overflow-y:auto}.catalog-list-item{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;align-items:flex-start;gap:8px;width:100%;padding:9px 12px;transition:background 80ms;display:flex}.catalog-list-item:last-child{border-bottom:0}.catalog-list-item:hover{background:var(--panel-2)}.catalog-list-item.active{background:var(--healthy-bg)}.catalog-list-item .monitor-state-dot{flex-shrink:0;margin-top:3px}.catalog-list-item-body{flex:1;min-width:0}.catalog-list-name{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:12px;font-weight:600;overflow:hidden}.catalog-list-meta{align-items:center;gap:5px;margin-top:3px;display:flex}.catalog-right{background:var(--panel);position:relative;overflow-y:auto}.catalog-close{position:absolute;top:12px;right:12px}.catalog-empty{color:var(--muted);padding:40px 24px;font-size:13px}.catalog-detail{padding:20px 20px 20px 24px}.catalog-detail-name{letter-spacing:-.01em;margin-bottom:8px;font-size:17px;font-weight:700;line-height:1.25}.catalog-detail-badges{align-items:center;gap:6px;display:flex}.catalog-detail-section{border-bottom:1px solid var(--line);padding:10px 0}.catalog-detail-section:last-of-type{border-bottom:0}.catalog-detail-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:4px;font-size:10px;font-weight:700}.catalog-detail-value{color:var(--ink);font-size:13px;line-height:1.4}.catalog-detail-id{color:var(--muted);word-break:break-all;font-family:ui-monospace,monospace;font-size:11px}.catalog-detail-link{color:var(--accent);font-size:13px;font-weight:500;text-decoration:none}.catalog-detail-link:hover{text-decoration:underline}.catalog-detail-hint{background:var(--panel-2);border:1px solid var(--line);color:var(--muted);border-radius:7px;margin-top:20px;padding:10px 12px;font-size:11px;line-height:1.45}.catalog-preview-section{border-bottom:1px solid var(--line);margin-bottom:4px;padding-bottom:12px}.catalog-preview-state{color:var(--muted);padding:16px 0;font-size:12px}.catalog-preview-no-key{background:var(--panel-2);border:1px solid var(--line);color:var(--muted);border-radius:7px;padding:14px;font-size:12px}.catalog-preview-no-key-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink);margin-bottom:4px;font-size:11px;font-weight:700}.catalog-preview-desc{color:var(--muted);margin-bottom:10px;font-size:12px;line-height:1.4}.catalog-preview-refresh{color:var(--muted);margin-top:6px;font-size:10px}.spark-chart-wrap{margin-top:8px}.spark-chart-svg{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;width:100%;height:auto;display:block}.spark-legend{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.spark-legend-item{color:var(--muted);align-items:center;font-size:11px;display:flex}.catalog-preview-dd{margin-top:4px}.catalog-detail-header{margin-bottom:12px;padding-top:4px;padding-right:40px}.catalog-mode-tabs{border:1px solid var(--line);background:var(--panel-2);border-radius:7px;gap:0;display:flex;overflow:hidden}.catalog-mode-tab{height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:1;font-size:12px;font-weight:500;transition:all .1s}.catalog-mode-tab.active{background:var(--panel);color:var(--ink);font-weight:600;box-shadow:0 1px 3px #1720261a}.catalog-list-item-wrap{border-bottom:1px solid var(--line);align-items:stretch;transition:background 80ms;display:flex}.catalog-list-item-wrap:last-child{border-bottom:0}.catalog-list-item-wrap:hover{background:var(--panel-2)}.catalog-list-item-wrap.active{background:var(--healthy-bg)}.catalog-list-item-wrap .catalog-list-item{border-bottom:0;flex:1}.catalog-list-item-wrap .catalog-list-item:hover{background:0 0}.catalog-list-action{border:0;border-left:1px solid var(--line);cursor:pointer;opacity:0;background:0 0;flex-shrink:0;width:28px;font-size:14px;transition:opacity .1s,background .1s}.catalog-list-item-wrap:hover .catalog-list-action,.catalog-list-action.active{opacity:1}.catalog-list-action.delete{color:var(--critical)}.catalog-list-action.delete:hover{background:var(--critical-bg)}.catalog-list-action.add{color:var(--healthy)}.catalog-list-action.add:hover{background:var(--healthy-bg)}.logs-table-wrap{margin-top:4px}.logs-query-badge{background:var(--panel-2);border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:5px;margin-bottom:8px;padding:5px 8px;font-size:11px;overflow-x:auto}.logs-query-badge code{font-family:ui-monospace,monospace}.logs-table{border:1px solid var(--line);border-radius:6px;font-size:11px;overflow:hidden}.logs-table-head{background:var(--panel-2);border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);grid-template-columns:110px 62px 90px 1fr;gap:8px;padding:5px 8px;font-size:10px;font-weight:700;display:grid}.logs-table-row{border-bottom:1px solid var(--line);grid-template-columns:110px 62px 90px 1fr;align-items:start;gap:8px;padding:5px 8px;display:grid}.logs-table-row:last-child{border-bottom:0}.logs-table-row:hover{background:var(--panel-2)}.log-col-time{color:var(--muted);white-space:nowrap;padding-top:2px;font-size:10px}.log-col-service{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding-top:2px;overflow:hidden}.log-col-message{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);overflow:hidden}.log-status-pill{text-transform:uppercase;border-radius:3px;padding:1px 5px;font-size:9px;font-weight:700;display:inline-block}.log-status-pill.error{background:var(--critical-bg);color:var(--critical)}.log-status-pill.warn{background:var(--watch-bg);color:var(--watch)}.log-status-pill.info{color:#2563eb;background:#3b82f61a}.log-status-pill.debug{background:var(--unknown-bg);color:var(--unknown)}.monitor-status-detail{padding:4px 0}.msd-state-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.msd-state-badge{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.msd-state-badge.healthy{background:var(--healthy-bg);color:var(--healthy)}.msd-state-badge.watch{background:var(--watch-bg);color:var(--watch)}.msd-state-badge.critical{background:var(--critical-bg);color:var(--critical)}.msd-state-badge.unknown{background:var(--unknown-bg);color:var(--unknown)}.msd-type-label{color:var(--muted);font-size:11px;font-weight:500}.msd-message{color:var(--ink);white-space:pre-wrap;border-bottom:1px solid var(--line);margin-bottom:10px;padding-bottom:12px;font-size:13px;line-height:1.55}.msd-query-section{margin-top:4px}.msd-query-toggle{color:var(--muted);cursor:pointer;text-transform:uppercase;letter-spacing:.06em;background:0 0;border:0;padding:0;font-size:11px;font-weight:600}.msd-query-toggle:hover{color:var(--ink)}.msd-query-body{background:var(--panel-2);border:1px solid var(--line);color:var(--muted);white-space:pre-wrap;word-break:break-all;border-radius:6px;margin:6px 0 0;padding:8px 10px;font-family:ui-monospace,monospace;font-size:11px;line-height:1.5}.view-toggle-group{border:1px solid var(--line);background:var(--panel-2);border-radius:7px;gap:2px;padding:3px;display:flex}.view-toggle-btn{height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:0 12px;font-size:12px;font-weight:500;transition:all .1s}.view-toggle-btn.active{background:var(--panel);color:var(--ink);font-weight:600;box-shadow:0 1px 4px #0f172a1a}.swimlane-wrapper{flex:1;min-height:0;overflow:auto}.sw-view{flex-direction:column;gap:10px;padding:10px 12px;display:flex}.sw-lane{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.sw-lane-border-healthy{border-left:4px solid var(--healthy)}.sw-lane-border-watch{border-left:4px solid var(--watch)}.sw-lane-border-critical{border-left:4px solid var(--critical)}.sw-lane-border-unknown{border-left:4px solid var(--unknown);border-left-style:dashed}.sw-lane-header{background:var(--panel-2);border-bottom:1px solid var(--line);grid-template-columns:minmax(200px,260px) 1fr auto;align-items:center;gap:16px;padding:12px 16px;display:grid}.sw-lane-info{min-width:0}.sw-lane-top{align-items:center;gap:8px;display:flex}.sw-lane-name{letter-spacing:-.1px;white-space:nowrap;font-size:14px;font-weight:600}.sw-lane-status{font-size:11px;font-weight:600}.sw-lane-status.healthy{color:var(--healthy)}.sw-lane-status.watch{color:var(--watch)}.sw-lane-status.critical{color:var(--critical)}.sw-lane-status.unknown{color:var(--unknown)}.sw-lane-counts{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:5px;font-size:11px;display:flex}.sw-cnt{font-weight:700}.sw-cnt.ok{color:var(--healthy)}.sw-cnt.warn{color:var(--watch)}.sw-cnt.crit{color:var(--critical)}.sw-cnt-total{color:var(--muted)}.sw-lane-strip{justify-content:flex-end;align-items:center;gap:10px;display:flex}.sw-strip-label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;white-space:nowrap;font-size:10px;font-weight:600}.sw-history{align-items:stretch;gap:2px;height:20px;display:flex}.sw-bar{border-radius:1.5px;width:4px}.sw-bar.ok{background:var(--healthy);opacity:.85}.sw-bar.watch{background:var(--watch)}.sw-bar.critical{background:var(--critical)}.sw-lane-actions{gap:4px;display:none}.sw-lane:hover .sw-lane-actions{display:flex}.sw-lane-btn{border:1px solid var(--line);background:var(--panel);width:24px;height:24px;color:var(--muted);cursor:pointer;border-radius:5px;place-items:center;font-size:13px;display:grid}.sw-lane-btn:hover{background:var(--panel-2);color:var(--ink)}.sw-lane-btn.delete:hover{background:var(--critical-bg);color:var(--critical)}.sw-lane-nodes{align-items:stretch;gap:0;padding:14px 16px;display:flex;overflow-x:auto}.sw-lane-nodes::-webkit-scrollbar{height:6px}.sw-lane-nodes::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.sw-lane-step{flex-shrink:0;align-items:center;display:flex}.sw-arrow{flex-shrink:0;align-items:center;padding:0 2px;display:flex}.sw-node{background:var(--panel);cursor:pointer;text-align:left;min-width:180px;max-width:240px;font:inherit;color:inherit;border-radius:8px;flex:none;padding:10px 12px;transition:border-color .12s,box-shadow .12s,transform .12s;position:relative}.sw-node:hover{transform:translateY(-1px);box-shadow:0 4px 16px #1f29371a}.sw-node.healthy{border:1.5px solid var(--healthy-border)}.sw-node.watch{border:1.5px solid var(--watch-border)}.sw-node.critical{border:1.5px solid var(--critical-border)}.sw-node.unknown{border:1.5px dashed var(--unknown-border)}.sw-node.selected{box-shadow:0 0 0 2px var(--brand)}.sw-node-head{grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.sw-node-name{letter-spacing:-.1px;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;font-size:13px;font-weight:600;display:flex;overflow:hidden}.sw-node-badge{letter-spacing:.6px;border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:9px;font-weight:700}.sw-node-badge.healthy{color:var(--healthy);background:var(--healthy-bg)}.sw-node-badge.watch{color:var(--watch);background:var(--watch-bg)}.sw-node-badge.critical{color:var(--critical);background:var(--critical-bg)}.sw-node-badge.unknown{color:var(--unknown);background:var(--unknown-bg)}.sw-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.sw-dot.sm{width:5px;height:5px}.sw-dot.healthy{background:var(--healthy)}.sw-dot.watch{background:var(--watch)}.sw-dot.critical{background:var(--critical)}.sw-dot.unknown{background:var(--unknown)}.sw-node-subs{flex-direction:column;gap:3px;margin-top:8px;display:flex}.sw-sub-row{align-items:center;gap:6px;display:flex}.sw-sub-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.sw-node-meta{color:var(--muted);margin-top:6px;font-size:11px}.sw-firing{border:1px solid #0000;border-radius:5px;align-items:center;gap:5px;margin-top:8px;padding:4px 7px;font-size:10px;display:flex}.sw-firing.critical{color:var(--critical);background:var(--critical-bg);border-color:var(--critical-border)}.sw-firing.watch{color:var(--watch);background:var(--watch-bg);border-color:var(--watch-border)}.sw-firing-name{text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono,monospace);overflow:hidden}.sw-node-remove{border:1px solid var(--line);background:var(--panel);width:20px;height:20px;color:var(--critical);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:11px;font-weight:700;line-height:1;display:flex;position:absolute;top:-8px;right:-8px;box-shadow:0 2px 6px #0000001f}.sw-palette{background:var(--panel);border:1px solid var(--line);border-radius:8px;align-items:center;gap:8px;padding:8px 12px;display:flex;overflow-x:auto}.sw-palette::-webkit-scrollbar{height:6px}.sw-palette::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.sw-palette-label{text-transform:uppercase;letter-spacing:.6px;color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:10px;font-weight:600}.sw-palette-item{background:var(--panel-2);border:1px dashed var(--line);cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:6px;flex:none;align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:flex}.sw-palette-item:active{cursor:grabbing}.sw-palette-item.dragging{opacity:.3}.sw-node.draggable{cursor:grab}.sw-node.draggable:active{cursor:grabbing}.sw-node.dragging{opacity:.25;transform:scale(.96)}.sw-drop-indicator{background:var(--brand);border-radius:2px;flex-shrink:0;align-self:stretch;width:3px;min-height:40px;margin:0 2px;animation:.8s ease-in-out infinite alternate sw-drop-pulse}@keyframes sw-drop-pulse{0%{opacity:.4}to{opacity:1}}.sw-lane.drag-over{outline:2px dashed var(--brand);outline-offset:-2px}.sw-draft-lane{border:2px dashed var(--brand)!important;border-left-width:2px!important}.sw-draft-header{background:var(--panel-2);border-bottom:1px dashed var(--brand);align-items:center;gap:10px;padding:10px 16px;display:flex}.sw-draft-input{border:1px solid var(--line);background:var(--panel);font:inherit;color:inherit;border-radius:6px;flex:1;padding:6px 10px}.sw-draft-input:focus{border-color:var(--brand);outline:none}.sw-draft-empty{text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:8px;flex:1;margin:4px;padding:24px 16px;font-size:13px;font-style:italic}.sw-draft-actions{flex-shrink:0;gap:6px;display:flex}.sw-draft-save{background:var(--brand);color:#fff;cursor:pointer;font-size:12px;font-weight:600;font:inherit;border:none;border-radius:6px;padding:6px 14px;transition:opacity .1s}.sw-draft-save:hover{opacity:.85}.sw-draft-save:disabled{opacity:.4;cursor:not-allowed}.route-editor-modal{border:1px solid var(--line);background:var(--panel);border-radius:10px;grid-template-rows:auto 1fr auto;width:min(780px,100vw - 40px);height:calc(100vh - 80px);max-height:640px;display:grid;overflow:hidden;box-shadow:0 24px 70px #0f172a47}.route-editor-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 14px;display:flex}.route-editor-title{font-size:15px;font-weight:700}.route-editor-subtitle{color:var(--muted);margin-top:2px;font-size:12px}.route-editor-body{grid-template-columns:240px 1fr;display:grid;overflow:hidden}.route-editor-picker{border-right:1px solid var(--line);background:var(--panel-2);padding:14px;overflow-y:auto}.route-editor-builder{padding:14px 18px;overflow-y:auto}.route-editor-section-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:8px;font-size:10px;font-weight:700;display:block}.route-picker-list{gap:3px;display:grid}.route-picker-item{cursor:pointer;border-radius:6px;align-items:center;gap:7px;padding:6px 7px;font-size:12px;transition:background 80ms;display:flex}.route-picker-item:hover{background:var(--panel)}.route-picker-item.checked{background:var(--healthy-bg)}.route-picker-checkbox{cursor:pointer;flex-shrink:0}.route-picker-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.route-picker-order{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:18px;height:18px;font-size:9px;font-weight:800;display:grid}.route-name-input{background:var(--panel);width:100%;height:36px;color:var(--ink);border:1px solid #c8d2dc;border-radius:7px;padding:0 10px;font-size:13px;font-weight:600}.route-name-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #0f766e1f}.route-steps-empty{color:var(--muted);padding:20px 0;font-size:12px}.route-steps-list{gap:4px;display:grid}.route-step-row{border:1px solid var(--line);background:var(--panel);border-radius:6px;align-items:center;gap:8px;padding:7px 9px;font-size:12px;display:flex}.route-step-num{background:var(--panel-2);width:18px;height:18px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;font-size:10px;font-weight:800;display:grid}.route-step-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.route-step-actions{flex-shrink:0;gap:2px;display:flex}.route-step-btn{border:1px solid var(--line);background:var(--panel-2);width:22px;height:22px;color:var(--muted);cursor:pointer;border-radius:4px;place-items:center;font-size:12px;display:grid}.route-step-btn:hover{background:var(--line);color:var(--ink)}.route-step-btn:disabled{opacity:.3;cursor:not-allowed}.route-step-btn.remove:hover{background:var(--critical-bg);color:var(--critical);border-color:var(--critical-border)}.route-editor-footer{border-top:1px solid var(--line);background:var(--panel-2);justify-content:flex-end;align-items:center;gap:8px;padding:12px 18px;display:flex}.route-editor-cancel{border:1px solid var(--line);background:var(--panel);height:34px;color:var(--muted);cursor:pointer;border-radius:7px;padding:0 14px;font-size:13px}.route-editor-cancel:hover{color:var(--ink)}.route-editor-save{border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;border-radius:7px;height:34px;padding:0 18px;font-size:13px;font-weight:600;transition:opacity .1s}.route-editor-save:hover{opacity:.85}.route-editor-save:disabled{opacity:.5;cursor:not-allowed}.topbar-home-btn{cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.topbar-home-btn h1{transition:color .1s}.topbar-home-btn:hover h1{color:var(--accent)}.home-page{align-content:start;gap:28px;padding:28px 32px 40px;display:grid;overflow-y:auto}.home-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:20px;display:flex}.home-system-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px;font-size:11px;font-weight:700}.home-system-status{letter-spacing:-.02em;font-size:22px;font-weight:700}.home-system-status.healthy{color:var(--healthy)}.home-system-status.watch{color:var(--watch)}.home-system-status.critical{color:var(--critical)}.home-header-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:10px;display:flex}.home-summary-pills{gap:8px;display:flex}.home-pill{border:1px solid var(--line);background:var(--panel);text-align:center;border-radius:8px;min-width:72px;padding:8px 12px}.home-pill strong{letter-spacing:-.02em;margin-bottom:3px;font-size:22px;font-weight:700;line-height:1;display:block}.home-pill span{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:10px;font-weight:700}.home-pill.healthy strong{color:var(--healthy)}.home-pill.watch strong{color:var(--watch)}.home-pill.critical strong{color:var(--critical)}.home-global-bar{background:var(--line);border-radius:999px;width:240px;height:5px;display:flex;overflow:hidden}.home-bar-seg{height:100%;transition:width .3s}.home-bar-seg.healthy{background:var(--healthy)}.home-bar-seg.watch{background:var(--watch)}.home-bar-seg.critical{background:var(--critical)}.home-bar-seg.unknown{background:var(--unknown)}.home-surfaces{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px;display:grid}.home-surface-card{border:2px solid var(--line);border-left:5px solid var(--line);background:var(--panel);cursor:pointer;text-align:left;border-radius:10px;gap:12px;padding:18px;transition:box-shadow .15s,border-color .15s,transform .1s;display:grid;box-shadow:0 2px 8px #1720260f}.home-surface-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px #1720261f}.home-surface-card.healthy{border-left-color:var(--healthy);background:#fbfffe}.home-surface-card.watch{border-left-color:var(--watch);background:#fffef9;border-color:#b76d0040}.home-surface-card.critical{border-left-color:var(--critical);background:#fffaf9;border-color:#c7352d40}:root.dark .home-surface-card.healthy{background:var(--node-healthy);border-color:var(--healthy-border)}:root.dark .home-surface-card.watch{background:var(--node-watch);border-color:var(--watch-border)}:root.dark .home-surface-card.critical{background:var(--node-critical);border-color:var(--critical-border)}.home-card-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.home-card-name{letter-spacing:-.01em;font-size:18px;font-weight:700}.home-card-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:800}.home-card-badge.healthy{background:var(--healthy-bg);color:var(--healthy)}.home-card-badge.watch{background:var(--watch-bg);color:var(--watch)}.home-card-badge.critical{background:var(--critical-bg);color:var(--critical)}.home-card-badge.unknown{background:var(--unknown-bg);color:var(--unknown)}.home-card-breakdown{flex-wrap:wrap;gap:6px;display:flex}.home-breakdown-item{border:1px solid #0000;border-radius:4px;padding:3px 9px;font-size:12px;font-weight:600}.home-breakdown-item.healthy{background:var(--healthy-bg);color:var(--healthy);border-color:var(--healthy-border)}.home-breakdown-item.watch{background:var(--watch-bg);color:var(--watch);border-color:var(--watch-border)}.home-breakdown-item.critical{background:var(--critical-bg);color:var(--critical);border-color:var(--critical-border)}.home-breakdown-item.unknown{background:var(--unknown-bg);color:var(--unknown);border-color:var(--unknown-border)}.home-card-alerts{background:var(--watch-bg);border:1px solid var(--watch-border);border-radius:7px;gap:6px;padding:10px 12px;display:grid}.home-alert-row{align-items:center;gap:7px;font-size:12px;display:flex;overflow:hidden}.home-alert-name{flex-shrink:0;font-weight:600}.home-alert-monitor{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.home-alert-more{color:var(--muted);font-size:11px}.home-card-gaps{gap:2px;display:grid}.home-gap-label{color:var(--watch);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.home-gap-names{color:var(--muted);font-size:12px}.home-card-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-top:10px;display:flex}.home-card-sources{flex-wrap:wrap;gap:5px;display:flex}.home-card-no-monitors{color:var(--muted);font-size:11px}.surface-tile{transition:transform .15s,box-shadow .15s}.surface-tile:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1f29371a}.d2-node-row{transition:background .1s}.d2-node-row:hover{background:var(--panel-2)!important}.home-card-cta{color:var(--accent);white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:700}.status-view{flex-direction:column;min-height:0;display:flex;overflow-y:auto}.status-hero{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:14px;padding:14px 20px;display:flex}.status-hero.healthy{background:var(--healthy-bg)}.status-hero.watch{background:var(--watch-bg)}.status-hero.critical{background:var(--critical-bg)}.status-hero-body{flex:1}.status-hero-title{margin-bottom:5px;font-size:14px;font-weight:700}.status-hero.healthy .status-hero-title{color:var(--healthy)}.status-hero.watch .status-hero-title{color:var(--watch)}.status-hero.critical .status-hero-title{color:var(--critical)}.status-hero-pills{flex-wrap:wrap;gap:5px;display:flex}.shp{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.shp.healthy{color:var(--healthy);background:#16875d1f}.shp.watch{color:var(--watch);background:#b76d001f}.shp.critical{color:var(--critical);background:#c7352d1f}.shp.unknown{background:var(--unknown-bg);color:var(--unknown)}.status-col-header{border-bottom:1px solid var(--line);background:var(--panel-2);flex-shrink:0;grid-template-columns:1fr 180px 130px;gap:16px;padding:5px 20px;display:grid}.status-strip-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);text-align:center;font-size:10px;font-weight:700}.status-groups-list{flex-direction:column;flex:1;display:flex;overflow-y:auto}.status-surface-group{border-bottom:1px solid var(--line)}.status-surface-group:last-child{border-bottom:0}.status-surface-header{background:var(--panel-2);cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:11px 20px;transition:background .1s;display:flex}.status-surface-header:hover{background:var(--hover)}.status-surface-left{align-items:center;gap:8px;display:flex}.status-surface-right{align-items:center;gap:10px;display:flex}.status-dot-md{border-radius:50%;flex-shrink:0;width:10px;height:10px}.status-dot-md.healthy{background:var(--healthy)}.status-dot-md.watch{background:var(--watch)}.status-dot-md.critical{background:var(--critical)}.status-dot-md.unknown{background:var(--unknown)}.status-surface-name{color:var(--ink);font-size:13px;font-weight:700}.status-surface-chip{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:800}.status-surface-chip.watch{background:var(--watch-bg);color:var(--watch);border:1px solid var(--watch-border)}.status-surface-chip.unknown{background:var(--unknown-bg);color:var(--unknown);border:1px solid var(--unknown-border)}.status-surface-toggle{color:var(--muted);font-size:10px}.status-label{white-space:nowrap;font-size:12px;font-weight:700}.status-label.healthy{color:var(--healthy)}.status-label.watch{color:var(--watch)}.status-label.critical{color:var(--critical)}.status-label.unknown{color:var(--unknown)}.status-surface-nodes{display:grid}.status-node-row{border:0;border-bottom:1px solid var(--line);background:var(--panel);text-align:left;cursor:pointer;grid-template-columns:1fr 180px 130px;align-items:center;gap:16px;padding:10px 20px 10px 34px;transition:background 80ms;display:grid}.status-node-row:last-child{border-bottom:0}.status-node-row:hover{background:var(--panel-2)}.status-node-info{min-width:0}.status-node-top{align-items:center;gap:8px;margin-bottom:3px;display:flex}.status-dot-sm{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot-sm.healthy{background:var(--healthy)}.status-dot-sm.watch{background:var(--watch)}.status-dot-sm.critical{background:var(--critical)}.status-dot-sm.unknown{background:var(--unknown);border:1.5px dashed var(--unknown)}.status-node-name{color:var(--ink);font-size:13px;font-weight:500}.status-node-sub{padding-left:16px;font-size:11px;line-height:1.3}.status-node-sub.alert{color:var(--watch);font-weight:600}.status-node-sub.dim{color:var(--muted)}.history-strip{align-items:stretch;gap:2px;height:28px;display:flex}.history-seg{border-radius:2px;flex:1;min-width:3px}.history-seg.healthy{background:var(--healthy);opacity:.75}.history-seg.watch{background:var(--watch);opacity:.85}.history-seg.critical{background:var(--critical)}.history-seg.unknown{background:var(--unknown)}.home-nav-btn{border:1px solid var(--line);border-left:3px solid var(--line);background:var(--panel);width:100%;min-height:34px;color:var(--nav-text);cursor:pointer;text-align:left;border-radius:6px;justify-content:space-between;align-items:center;gap:4px;min-width:0;padding:6px 8px 6px 10px;font-size:12px;font-weight:600;transition:background .1s,border-color .1s;display:flex;overflow:hidden}.home-nav-btn:hover{background:var(--panel-2)}.home-nav-btn.healthy{border-left-color:var(--healthy)}.home-nav-btn.watch{border-left-color:var(--watch)}.home-nav-btn.critical{border-left-color:var(--critical)}.home-nav-btn.active{border-color:var(--brand);border-left-width:3px;border-left-color:var(--brand)}.detail-label-input{letter-spacing:-.01em;border:1px solid var(--accent);background:var(--panel);width:100%;color:var(--ink);border-radius:5px;outline:none;padding:2px 6px;font-size:15px;font-weight:700;box-shadow:0 0 0 2px #0f766e1f}.detail-header-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.detail-delete-btn{border:1px solid var(--critical-border);background:var(--critical-bg);height:26px;color:var(--critical);cursor:pointer;border-radius:5px;padding:0 10px;font-size:11px;font-weight:700}.detail-delete-btn:hover{background:var(--critical-bg)}.detail-description{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--ink);resize:vertical;border-radius:6px;min-height:40px;padding:6px 8px;font-family:inherit;font-size:12px;line-height:1.45}.detail-description:focus{border-color:var(--accent);outline:none}.route-editor-hint{color:var(--watch);flex:1;font-size:12px;font-weight:500}.subsystem-group{border:1px solid var(--line);border-radius:7px;margin-bottom:8px;overflow:hidden}.subsystem-group.sub-watch{border-left:3px solid var(--watch)}.subsystem-group.sub-critical{border-left:3px solid var(--critical)}.subsystem-group.sub-healthy{border-left:3px solid var(--healthy)}.subsystem-group.sub-unknown{border-left:3px solid #c9d2db}.subsystem-group-header{background:var(--panel-2);border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:7px 8px;display:flex}.subsystem-toggle{color:var(--muted);cursor:pointer;background:0 0;border:0;width:14px;padding:0;font-size:10px}.subsystem-group-label{color:var(--ink);cursor:text;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:600;overflow:hidden}.subsystem-label-input{border:1px solid var(--accent);border-radius:3px;outline:none;flex:1;min-width:0;padding:1px 4px;font-size:12px;font-weight:600}.subsystem-remove-btn{width:20px;height:20px;color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:0;place-items:center;font-size:14px;transition:opacity .1s;display:grid}.subsystem-group-header:hover .subsystem-remove-btn{opacity:1}.subsystem-remove-btn:hover{color:var(--critical)}.subsystem-monitors{padding:4px 6px}.add-subsystem-btn{border:1px dashed var(--line);width:100%;height:30px;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;margin-top:6px;font-size:11px;font-weight:600;transition:all .1s}.add-subsystem-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--healthy-bg)}.node-subsystems{border-top:1px solid var(--line);flex-wrap:wrap;gap:3px;padding-top:5px;display:flex}.node-sub-pill{background:var(--panel-2);color:var(--muted);border-radius:999px;align-items:center;gap:3px;padding:2px 6px;font-size:9px;font-weight:700;display:inline-flex}.node-sub-pill.healthy{background:var(--healthy-bg);color:var(--healthy)}.node-sub-pill.watch{background:var(--watch-bg);color:var(--watch)}.node-sub-pill.critical{background:var(--critical-bg);color:var(--critical)}.node-sub-dot{background:currentColor;border-radius:50%;width:5px;height:5px}.detail-add-desc-btn{border:1px dashed var(--line);width:100%;height:28px;color:var(--muted);cursor:pointer;background:0 0;border-radius:5px;font-size:11px}.detail-add-desc-btn:hover{border-color:var(--accent);color:var(--accent)}.detail-description-view{position:relative}.detail-description-text{color:var(--ink);cursor:default;font-size:13px;line-height:1.6}.detail-desc-edit-btn{border:1px solid var(--line);background:var(--panel-2);width:24px;height:24px;color:var(--muted);cursor:pointer;opacity:0;border-radius:5px;place-items:center;font-size:12px;transition:opacity .1s;display:grid;position:absolute;top:0;right:0}.detail-description-view:hover .detail-desc-edit-btn{opacity:1}.detail-desc-edit-btn:hover{background:var(--line);color:var(--ink)}.draggable-monitor{cursor:grab}.draggable-monitor.dragging{opacity:.4}.drag-handle{color:var(--muted);cursor:grab;-webkit-user-select:none;user-select:none;letter-spacing:1px;flex-shrink:0;font-size:10px}.drop-zone.drag-over,.subsystem-group.drag-over{outline:2px dashed var(--accent);outline-offset:-2px;background:#0f766e0a}.drop-hint{padding:6px 8px;font-style:italic}.drop-label{color:var(--muted);padding:6px 8px 4px;font-size:11px;font-weight:600}.node-card-grouped{border-top:1px solid var(--line);gap:2px;padding-top:5px;display:grid}.node-sub-section{gap:2px;padding:3px 0;display:grid}.node-sub-section+.node-sub-section{border-top:1px solid var(--line);padding-top:5px}.node-sub-header{align-items:center;gap:5px;margin-bottom:2px;display:flex}.node-sub-name{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:10px;font-weight:600;overflow:hidden}.node-sub-count{color:var(--muted);background:var(--panel-2);border-radius:3px;flex-shrink:0;padding:0 4px;font-size:9px;font-weight:700}.react-flow__nodesselection-rect{z-index:-1!important}.react-flow__node-healthNode{z-index:1}.node-sub-rows{border-top:1px solid var(--line);gap:0;padding-top:6px;display:grid}.node-sub-row{border-bottom:1px solid #f0f2f5;align-items:center;gap:6px;padding:4px 0;font-size:11px;display:flex}.node-sub-row:last-child{border-bottom:0}.node-sub-row-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.node-sub-row-count{color:var(--muted);text-align:right;min-width:14px;font-size:10px;font-weight:700}.node-sub-row-status{text-align:right;min-width:44px;font-size:10px;font-weight:700}.node-sub-row-status.healthy{color:var(--healthy)}.node-sub-row-status.watch{color:var(--watch)}.node-sub-row-status.critical{color:var(--critical)}.node-sub-row-status.unknown{color:var(--unknown)}.related-logs-note{color:var(--muted);margin-bottom:8px;font-size:11px;font-style:italic}.related-log-row{border-bottom:1px solid var(--line);color:inherit;cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:5px 0;font-size:12px;text-decoration:none;transition:background .15s;display:flex}.related-log-row:hover{background:var(--panel-2)}.related-log-row:last-child{border-bottom:0}.log-link-arrow{color:var(--muted);opacity:0;margin-left:auto;font-size:11px;transition:opacity .15s}.related-log-row:hover .log-link-arrow{opacity:1}.log-query-chip{color:var(--muted);background:var(--panel-2);text-overflow:ellipsis;white-space:nowrap;border-radius:3px;flex-shrink:0;max-width:160px;padding:1px 5px;font-size:9px;overflow:hidden}.history-nav-btn{border:1px solid var(--line);background:var(--panel);width:100%;height:28px;color:var(--muted);cursor:pointer;text-align:left;border-radius:6px;align-items:center;gap:7px;margin-top:8px;padding:0 8px;font-size:11px;font-weight:600;transition:background .1s;display:flex}.history-nav-btn:hover{background:var(--panel-2);color:var(--ink)}.token-modal{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;flex-direction:column;width:440px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.token-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 16px;font-size:14px;display:flex}.token-body{flex-direction:column;gap:12px;padding:16px;display:flex}.token-note{color:var(--ink);opacity:.7;font-size:12px;line-height:1.5}.token-warning{color:var(--watch);background:color-mix(in srgb, var(--watch) 10%, transparent);border-radius:6px;padding:8px 10px;font-size:12px;font-weight:600}.token-field{flex-direction:column;gap:4px;display:flex}.token-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:600}.token-value-row{align-items:stretch;gap:6px;display:flex}.token-value{background:var(--panel-2);border:1px solid var(--line);word-break:break-all;color:var(--ink);border-radius:5px;flex:1;padding:6px 8px;font-family:monospace;font-size:11px;line-height:1.4}.token-command{white-space:pre-wrap;word-break:break-word;max-height:160px;font-size:10px;overflow-y:auto}.token-copy{background:var(--panel-2);border:1px solid var(--line);cursor:pointer;color:var(--ink);white-space:nowrap;border-radius:5px;padding:0 10px;font-family:inherit;font-size:10px;font-weight:600}.token-copy:hover{background:var(--line)}.token-actions{gap:8px;display:flex}.token-btn{border:1px solid var(--line);cursor:pointer;color:var(--ink);background:var(--panel);border-radius:6px;padding:8px 14px;font-family:inherit;font-size:12px;font-weight:600}.token-btn:disabled{opacity:.5;cursor:default}.token-btn-primary{background:var(--ink);color:var(--panel);border-color:var(--ink)}.token-btn-primary:hover:not(:disabled){opacity:.9}.token-btn-danger{color:var(--critical);border-color:var(--critical)}.token-btn-danger:hover{background:color-mix(in srgb, var(--critical) 10%, transparent)}.token-btn-done{text-align:center;width:100%}.token-client-tabs{background:var(--panel);border:1px solid var(--line);border-radius:6px;gap:2px;margin-bottom:2px;padding:2px;display:flex}.token-client-tab{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:4px;flex:1;padding:5px 0;font-family:inherit;font-size:10px;font-weight:600;transition:background .1s,color .1s}.token-client-tab:hover{color:var(--ink)}.token-client-tab.active{background:var(--panel-2);color:var(--ink)}.history-modal{background:var(--panel);border-radius:12px;flex-direction:column;width:420px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003}.history-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 16px;font-size:14px;display:flex}.history-empty{text-align:center;color:var(--muted);padding:32px 16px;font-size:13px}.history-list{flex:1;padding:8px 0;overflow-y:auto}.history-entry{align-items:flex-start;gap:0;padding:6px 16px 6px 8px;transition:background .1s;display:flex}.history-entry:hover{background:var(--panel-2)}.history-entry.rollback .history-action{color:var(--muted);font-style:italic}.history-timeline{flex-direction:column;flex-shrink:0;align-items:center;width:24px;padding-top:5px;display:flex}.history-dot{background:var(--line);border-radius:50%;flex-shrink:0;width:8px;height:8px}.history-dot.latest{background:var(--accent,#2d7ff9)}.history-line{background:var(--line);flex:1;width:1px;min-height:20px;margin-top:4px}.history-content{flex:1;min-width:0;padding:2px 8px}.history-action{color:var(--ink);font-size:12px;font-weight:500;line-height:1.4;display:block}.history-time{color:var(--muted);margin-top:2px;font-size:10px;display:block}.history-rollback-btn{border:1px solid var(--line);background:var(--panel);color:var(--muted);cursor:pointer;opacity:0;border-radius:5px;flex-shrink:0;margin-top:2px;padding:3px 10px;font-size:10px;font-weight:600;transition:all .15s}.history-entry:hover .history-rollback-btn{opacity:1}.history-rollback-btn:hover{background:var(--panel-2);color:var(--ink);border-color:var(--border-2,#c4cdd6)}.history-rollback-btn:disabled{opacity:.3;cursor:not-allowed}.ne-modal{background:var(--panel);border-radius:10px;flex-direction:column;width:92vw;max-width:1200px;height:85vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.ne-header{border-bottom:1px solid var(--line);background:var(--panel);flex-shrink:0;align-items:center;gap:10px;padding:10px 16px;display:flex}.ne-title{flex:1;font-size:15px;font-weight:700}.ne-close{cursor:pointer;width:28px;height:28px;color:var(--muted);background:0 0;border:none;border-radius:4px;place-items:center;font-size:18px;display:grid}.ne-close:hover{background:var(--panel2)}.ne-body{flex:1;grid-template-columns:220px 1fr 280px;display:grid;overflow:hidden}.ne-col{border-right:1px solid var(--line);background:var(--panel);flex-direction:column;gap:10px;padding:14px;display:flex;overflow-y:auto}.ne-col:last-child{border-right:none}.ne-col-center{flex:2}.ne-col-right{background:var(--panel)}.ne-col-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:10px;font-weight:700}.ne-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px;font-size:9px;font-weight:700;display:block}.ne-input{border:1px solid var(--line);background:var(--panel);width:100%;font-size:12px;font:inherit;border-radius:5px;padding:5px 8px}.ne-input:focus{border-color:var(--accent);outline:none}.ne-textarea{resize:vertical;font-size:11px;line-height:1.5}.ne-btn{cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:11px;font-weight:600;font:inherit;border-radius:5px;padding:5px 12px}.ne-btn:hover{background:var(--panel2)}.ne-btn:disabled{opacity:.4;cursor:not-allowed}.ne-btn-primary{background:var(--brand);color:#fff;border-color:var(--brand)}.ne-btn-danger{color:var(--critical);border-color:var(--critical)}.ne-btn-sm{padding:2px 8px;font-size:9px}.ne-source{text-transform:uppercase;border-radius:2px;flex-shrink:0;padding:1px 4px;font-size:8px;font-weight:800}.ne-source.dd{color:#7b3fa0;background:#f0e6f6}.ne-source.ph{color:#1d6fb5;background:#e6f0f8}.ne-badge{text-transform:uppercase;border-radius:3px;flex-shrink:0;padding:2px 6px;font-size:8px;font-weight:800}.ne-badge-healthy{background:var(--healthy-bg);color:var(--healthy)}.ne-badge-watch{background:var(--watch-bg);color:var(--watch)}.ne-badge-critical{background:var(--critical-bg);color:var(--critical)}.ne-badge-unknown{background:var(--unknown-bg);color:var(--muted)}.ne-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.ne-dot-healthy{background:var(--healthy)}.ne-dot-watch{background:var(--watch)}.ne-dot-critical{background:var(--critical)}.ne-dot-unknown{background:var(--unknown)}.ne-sub-rows{border:1px solid var(--line);border-radius:6px;overflow:hidden}.ne-sub-row{border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:6px 8px;font-size:11px;display:flex}.ne-sub-row:last-child{border-bottom:none}.ne-sub-row:hover{background:var(--panel)}.ne-sub-row-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.ne-sub-row-count{color:var(--muted);font-size:9px;font-weight:700}.ne-runbook-rows{flex-direction:column;gap:2px;display:flex}.ne-runbook-row{border-radius:4px;align-items:center;gap:6px;padding:3px 4px;font-size:11px;display:flex}.ne-runbook-row:hover{background:var(--panel)}.ne-runbook-icon{flex-shrink:0;font-size:12px}.ne-runbook-link{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);flex:1;font-weight:500;text-decoration:none;overflow:hidden}.ne-runbook-link:hover{text-decoration:underline}.ne-runbook-sub{color:var(--muted);background:var(--panel-2);white-space:nowrap;border-radius:3px;padding:1px 5px;font-size:9px}.ne-runbook-row .ne-mon-action{opacity:0}.ne-runbook-row:hover .ne-mon-action{opacity:1}.ne-logs{flex-direction:column;gap:3px;display:flex}.ne-log-row{color:inherit;border-radius:3px;align-items:center;gap:4px;padding:2px 0;font-size:10px;text-decoration:none;display:flex}.ne-log-row:hover{background:var(--panel)}.ne-log-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ne-log-arrow{color:var(--muted);opacity:0;font-size:9px}.ne-log-row:hover .ne-log-arrow{opacity:1}.ne-mon-card{border:1px solid var(--line);background:var(--panel);border-radius:6px;flex-direction:column;gap:4px;padding:8px 10px;transition:border-color .1s;display:flex}.ne-mon-card:hover{border-color:var(--line)}.ne-mon-card.ne-critical{border-left:3px solid var(--critical)}.ne-mon-card.ne-watch{border-left:3px solid var(--watch)}.ne-mon-top{align-items:center;gap:6px;display:flex}.ne-mon-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;font-weight:600;overflow:hidden}.ne-mon-actions{opacity:.3;gap:2px;display:flex}.ne-mon-card:hover .ne-mon-actions{opacity:1}.ne-mon-action{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:3px;padding:1px 3px;font-size:11px}.ne-mon-action:hover{background:var(--panel2)}.ne-mon-action.pinned{opacity:1;color:var(--accent)}.ne-mon-action.detach:hover{color:var(--critical)}.ne-mon-msg{color:var(--ink);padding-left:13px;font-size:10px;line-height:1.4}.ne-mon-value{align-items:baseline;gap:5px;padding-left:13px;display:flex}.ne-mon-val{font-size:14px;font-weight:700}.ne-val-healthy{color:var(--healthy)}.ne-val-watch{color:var(--watch)}.ne-val-critical{color:var(--critical)}.ne-val-unknown{color:var(--muted)}.ne-mon-val-label{color:var(--muted);font-size:9px}.ne-mon-msg p{margin:0 0 2px}.ne-mon-msg p:last-child{margin:0}.ne-mon-msg code{background:var(--panel);border-radius:2px;padding:0 3px;font-size:9px}.ne-mon-msg a{color:var(--accent);text-decoration:none}.ne-mon-msg a:hover{text-decoration:underline}.ne-mon-msg strong{font-weight:700}.ne-mon-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;padding-left:13px;font-size:9px;display:flex}.ne-mon-since{font-style:italic}.ne-mon-link{color:var(--accent);font-size:9px;text-decoration:none}.ne-mon-link:hover{text-decoration:underline}.ne-sub-select{color:var(--muted);background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:3px;height:18px;margin-left:auto;padding:0 4px;font-size:9px}.ne-sub-select:hover{border-color:var(--accent)}.ne-uptime{align-items:center;gap:0;margin-top:2px;padding-left:13px;display:flex}.ne-uptime-bars{flex:1;gap:1px;display:flex}.ne-up-bar{border-radius:1.5px;flex:1;min-width:2px;height:14px;transition:opacity .1s}.ne-up-bar.g{background:var(--healthy);opacity:.25}.ne-up-bar.g:hover{opacity:.5}.ne-up-bar.o{background:var(--watch);opacity:.7}.ne-up-bar.o:hover{opacity:1}.ne-up-bar.r{background:var(--critical);opacity:.7}.ne-up-bar.r:hover{opacity:1}.ne-uptime-label{color:var(--muted);margin-left:6px;font-size:8px}.ne-search-results{flex-direction:column;gap:4px;margin-top:6px;display:flex}.ne-search-result{border:1px solid var(--line);background:var(--panel);border-radius:6px;padding:6px 8px}.ne-search-status{color:var(--muted);margin-top:4px;font-size:10px}.ne-url-error{color:var(--critical);margin-top:2px;font-size:10px}.ne-empty{color:var(--muted);padding:12px 0;font-size:11px;font-style:italic}.sidebar-section-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.sidebar-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--nav-muted);font-size:10px;font-weight:600}.sidebar-add-btn{width:16px;height:16px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:13px;line-height:1;display:flex}.sidebar-add-btn:hover{background:var(--hover);color:var(--ink)}.sidebar-inline-input{border:1px solid var(--accent);background:var(--bg);color:var(--ink);border-radius:5px;outline:none;flex:1;padding:5px 8px;font-family:inherit;font-size:12px}.sidebar-inline-save,.sidebar-inline-cancel{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:5px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-family:inherit;font-size:11px;display:flex}.sidebar-inline-save{color:var(--healthy)}.sidebar-inline-save:hover{background:var(--hover)}.sidebar-inline-cancel{color:var(--muted)}.sidebar-inline-cancel:hover{background:var(--hover)}.sidebar-draft-divider{letter-spacing:.06em;text-transform:uppercase;color:var(--nav-muted);margin:6px 0 4px;font-size:10px;font-weight:600}.surface-nav-item.draft{opacity:.7;border-style:dashed}.nav-draft-pill,.nav-status-pill.draft{letter-spacing:.4px;text-transform:uppercase;color:var(--muted);background:var(--panel-2);border-radius:4px;padding:1px 6px;font-size:9px;font-weight:700}.sr-row{transition:background .12s,border-color .12s}.sr-search::placeholder{opacity:.5}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}
