:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f2f4f8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--panel:#171b20;--panel-2:#20262d;--panel-3:#262d35;--line:#34404a;--muted:#9da9b7;--text:#f4f7fb;--network:#39a9e8;--management:#f2cf5b;--storage:#4fd1b1;--power:#f08a43;--kvm:#c58af9;--serial:#d4dae3;--good:#4ed083;--warning:#f0c34e;--danger:#f16666;--unknown:#9ba6b2;background:#101316;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(#1f262df2,#101316),#101316;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{color:inherit}.app-shell{min-height:100vh;padding:20px}.app-header{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;padding-bottom:16px;display:grid}.eyebrow{color:var(--management);text-transform:uppercase;letter-spacing:0;font-size:.75rem;font-weight:700}h1,h2,h3,p{margin-top:0}h1{margin-bottom:4px;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.05}h2{margin-bottom:12px;font-size:1.05rem}h3{color:#d8e0e8;text-transform:uppercase;margin-bottom:10px;font-size:.86rem}.subtle,.muted{color:var(--muted)}.header-actions{align-items:center;gap:12px;display:flex}.status-strip,.filter-group,.category-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.status-chip,.status-pill,.filter-toggle{white-space:nowrap;border:1px solid #ffffff1f;border-radius:6px;padding:5px 8px;font-size:.78rem;font-weight:700}.status-chip{background:#ffffff0f}.status-online{color:var(--good)}.status-degraded{color:var(--warning)}.status-offline{color:var(--danger)}.status-unknown{color:var(--unknown)}.icon-button,.text-button,.filter-toggle{cursor:pointer;background:#ffffff0f;border:1px solid #ffffff24}.icon-button{border-radius:6px;place-items:center;width:38px;height:38px;display:inline-grid}.icon-button:disabled,.text-button:disabled{cursor:not-allowed;opacity:.55}.header-error{color:#ffd7d7;background:#f166661f;border:1px solid #f1666666;border-radius:6px;grid-column:1/-1;padding:10px 12px}.filters{grid-template-columns:minmax(220px,360px) minmax(240px,auto);gap:12px;padding:16px 0;display:grid}.category-group{grid-column:1/-1}.search-field{background:#ffffff0f;border:1px solid #ffffff24;border-radius:6px;align-items:center;gap:9px;height:40px;padding:0 12px;display:flex}.search-field input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.filter-toggle{color:#dbe4ec;min-height:34px}.filter-toggle.active{color:#f5fbff;background:#39a9e829;border-color:#39a9e8b3}.workspace{grid-template-columns:minmax(240px,300px) minmax(520px,1fr) minmax(270px,340px);align-items:stretch;gap:16px;display:grid}.left-rail{grid-template-rows:minmax(320px,1fr) auto;gap:16px;min-height:0;display:grid}.device-list,.alert-feed,.inspector,.topology-stage{background:var(--panel);border:1px solid #ffffff1a;border-radius:8px}.device-list{max-height:calc(100vh - 210px);padding:8px;overflow:auto}.device-row,.alert-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;width:100%}.device-row{border-left:3px solid #0000;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.device-row:hover,.device-row.selected{background:#ffffff0f}.device-row.selected{border-left-color:var(--network)}.device-row-title,.device-row-subtitle{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.device-row-title{font-weight:800}.device-row-subtitle{color:var(--muted);margin-top:2px;font-size:.78rem}.status-dot{background:currentColor;border-radius:50%;width:10px;height:10px}.alert-feed{padding:12px}.alert-row{margin-top:8px;padding:10px;display:block}.alert-row:not(:disabled):hover{background:#ffffff0f}.alert-row span,.alert-row small{display:block}.alert-row small{color:var(--muted);margin-top:4px}.alert-warning{border-left:3px solid var(--warning)}.alert-critical{border-left:3px solid var(--danger)}.alert-info{border-left:3px solid var(--network)}.topology-stage{grid-template-columns:minmax(110px,150px) minmax(260px,380px) minmax(150px,210px);gap:22px;min-height:calc(100vh - 210px);padding:18px;display:grid;position:relative;overflow:hidden}.external-stack{z-index:2;flex-direction:column;justify-content:flex-start;gap:12px;padding-top:56px;display:flex}.external-node{color:#1a2027;cursor:pointer;background:#edf2f7;border:1px solid #ffffff29;border-radius:6px;align-items:center;gap:8px;width:100%;min-height:64px;padding:10px;font-weight:850;display:flex}.external-node.selected{outline:2px solid var(--management)}.cable-overlay{pointer-events:none;z-index:1;width:calc(100% - 36px);height:calc(100% - 36px);position:absolute;inset:18px}.cable{fill:none;stroke-width:.45px;opacity:.75;pointer-events:stroke;cursor:pointer}.cable.selected{stroke-width:.9px;opacity:1}.cable.muted{opacity:.12}.cable-network,.legend-line.cable-network{stroke:var(--network);background:var(--network)}.cable-management,.legend-line.cable-management{stroke:var(--management);background:var(--management)}.cable-storage,.legend-line.cable-storage{stroke:var(--storage);background:var(--storage)}.cable-power,.legend-line.cable-power{stroke:var(--power);background:var(--power)}.cable-kvm,.legend-line.cable-kvm{stroke:var(--kvm);background:var(--kvm)}.cable-serial,.legend-line.cable-serial{stroke:var(--serial);background:var(--serial)}.cable.status-degraded{stroke-dasharray:2 1.5}.rack-anchor{fill:currentColor;stroke:#11161c;stroke-width:.25px}.rack-anchor.selected{stroke:var(--management);stroke-width:.45px}.rack-shell{z-index:2;flex-direction:column;min-width:0;display:flex}.rack-title{text-align:center;color:#d4dde7;margin-bottom:8px;font-weight:800}.rack-grid{background:linear-gradient(90deg,#ffffff0f,#fff0),#e7edf2;border:3px solid #c8d0d7;border-radius:7px;flex:1;min-height:610px;padding:8px 8px 8px 34px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #7d8993}.rack-unit-line{pointer-events:none;border-top:1px solid #232d3726;min-height:0}.rack-unit-line span{color:#60707d;font-size:.62rem;position:absolute;left:8px;transform:translateY(-50%)}.rack-device{color:#fff;cursor:pointer;text-align:left;background:repeating-linear-gradient(90deg,#ffffff1a 0 6px,#0000000f 6px 12px),#303842;border:1px solid #0000005c;border-left:5px solid #6e7883;border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:2px 0;padding:8px 10px;display:grid;position:relative;overflow:hidden}.rack-device:hover,.rack-device.selected{box-shadow:0 0 0 2px #f2cf5bb3}.rack-device.category-network{border-left-color:var(--network)}.rack-device.category-management{border-left-color:var(--management)}.rack-device.category-compute{border-left-color:#c8d0d8}.rack-device.category-storage{border-left-color:var(--storage)}.rack-device.category-power{border-left-color:var(--power)}.rack-device.category-kvm{border-left-color:var(--kvm)}.rack-device.status-degraded:after,.rack-device.status-offline:after{content:"!";color:#13161a;border-radius:50%;place-items:center;width:24px;height:24px;font-weight:900;display:grid;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.rack-device.status-degraded:after{background:var(--warning)}.rack-device.status-offline:after{background:var(--danger)}.rack-device-label{align-items:center;gap:8px;min-width:0;font-weight:850;display:flex}.rack-device-label span:last-child,.rack-device-model{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rack-device-model{color:#cdd7e0;max-width:120px;font-size:.72rem}.legend-panel{z-index:2;background:#171b20eb;border:1px solid #ffffff1f;border-radius:6px;align-self:start;padding:14px}.legend-row{color:#dce5ee;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;margin:10px 0;font-size:.82rem;display:grid}.legend-line{border-radius:2px;height:3px;display:block}.node-icon{background:#ffffff1a;border-radius:5px;flex:none;place-items:center;width:24px;height:24px;display:inline-grid}.node-icon.large{width:42px;height:42px}.inspector{max-height:calc(100vh - 210px);padding:16px;overflow:auto}.inspector.empty{text-align:center;color:var(--muted);place-content:center;display:grid}.inspector-heading{border-bottom:1px solid #ffffff1a;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding-bottom:14px;display:grid}.inspector-heading h2{overflow-wrap:anywhere;margin-bottom:6px}.status-pill{padding:4px 7px;display:inline-block}.status-pill.compact{padding:2px 6px;font-size:.72rem}.facts{grid-template-columns:80px minmax(0,1fr);gap:8px 12px;margin:16px 0;display:grid}.facts dt{color:var(--muted);font-size:.78rem}.facts dd{overflow-wrap:anywhere;margin:0}.summary{color:#dce5ee;line-height:1.45}.management-link,.text-button{border-radius:6px;align-items:center;gap:7px;text-decoration:none;display:inline-flex}.management-link{color:#b9e8ff;background:#39a9e826;margin-bottom:14px;padding:8px 10px}.text-button{color:#dfe9f4;padding:6px 8px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 16px;display:grid}.metric{background:#ffffff0f;border-radius:6px;padding:9px}.metric span,.metric strong{display:block}.metric span{color:var(--muted);font-size:.75rem}.metric strong{margin-top:3px;font-size:1rem}.metric-good strong{color:var(--good)}.metric-warning strong{color:var(--warning)}.metric-danger strong{color:var(--danger)}.inspector-section{border-top:1px solid #ffffff1a;margin-top:14px;padding-top:14px}.port-list,.link-list{gap:8px;display:grid}.port-row,.link-row{background:#ffffff0e;border-radius:6px}.port-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.link-row{border-left:3px solid;padding:8px}.link-row span,.link-row small{display:block}.link-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px}.probe-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.probe-result{background:#ffffff0f;border-radius:6px;gap:3px;padding:9px;display:grid}.probe-result.ok strong{color:var(--good)}.probe-result.failed strong,.probe-error{color:var(--danger)}.probe-result span,.probe-result small{color:var(--muted)}.loading-state{text-align:center;min-height:45vh;color:var(--muted);place-content:center;display:grid}@media (width<=1180px){.workspace{grid-template-columns:260px minmax(420px,1fr)}.inspector{grid-column:1/-1;max-height:none}}@media (width<=860px){.app-shell{padding:12px}.app-header,.filters,.workspace{grid-template-columns:1fr}.header-actions{justify-content:space-between;align-items:flex-start}.left-rail{grid-template-rows:auto auto}.device-list,.inspector{max-height:none}.topology-stage{grid-template-columns:1fr;min-height:auto}.external-stack{flex-direction:row;padding-top:0;overflow-x:auto}.external-node{min-width:140px}.cable-overlay{display:none}.rack-grid{min-height:520px}.legend-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;display:grid}.legend-panel h2{grid-column:1/-1}}
