:root{color:#18252b;background:#f4f7f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #18252b;--muted: #6c7b80;--line: #dfe7e5;--panel: #ffffff;--accent: #e2ad42;--accent-dark: #8a5c0c;--teal: #1e5d5b;--soft-teal: #e6f2ef;--danger: #a9433d;--soft-danger: #fbeceb}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f4f7f6}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}.loading-screen{display:grid;min-height:100vh;place-items:center;align-content:center;gap:1rem;color:var(--muted)}.loading-mark,.brand-mark{display:inline-grid;width:2rem;height:2rem;place-items:center;border-radius:8px;background:var(--teal);color:#fff;font-weight:800}.loading-screen p{margin:0;font-size:.9rem}.auth-screen{display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,.85fr);min-height:100vh;background:#102b30}.auth-panel{display:flex;width:min(29rem,100%);min-height:100vh;margin:0 auto;padding:4rem clamp(1.5rem,7vw,6rem);flex-direction:column;justify-content:center;background:#f8fbfa}.auth-aside{display:grid;align-content:center;padding:clamp(2rem,8vw,8rem);color:#eef7f4;background:#102b30}.auth-aside h2{max-width:26rem;margin:1rem 0;font-size:clamp(2rem,4vw,3.6rem);line-height:1.05;font-weight:500;letter-spacing:0}.auth-aside p{max-width:25rem;margin:0;color:#abc5c2;font-size:1rem;line-height:1.7}.aside-kicker,.eyebrow{color:var(--accent-dark);font-size:.72rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.auth-aside .aside-kicker{color:#e2ad42}.brand-lockup{display:inline-flex;align-items:center;gap:.65rem;color:var(--ink);font-size:1.05rem;font-weight:750}.auth-panel .brand-lockup{margin-bottom:4rem}.brand-mark{width:2.25rem;height:2.25rem}.auth-panel h1{margin:.5rem 0;font-size:2.3rem;line-height:1.1;font-weight:600;letter-spacing:0}.auth-copy{margin:0 0 2rem;color:var(--muted);line-height:1.6}.login-form{display:grid;gap:1rem}.login-form label,.inline-form label{display:grid;gap:.4rem;color:#415158;font-size:.79rem;font-weight:650}input,select{width:100%;min-height:2.8rem;border:1px solid #cbd8d5;border-radius:6px;background:#fff;color:var(--ink);padding:.65rem .75rem;outline:none}input:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #1e5d5b1f}.check-label{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:.5rem!important;font-weight:500!important}.check-label input{width:1rem;min-height:1rem;accent-color:var(--teal)}.button{min-height:2.8rem;padding:.65rem 1rem;border:1px solid transparent;border-radius:6px;font-size:.85rem;font-weight:700}.button-primary{background:var(--teal);color:#fff}.button-primary:hover:not(:disabled){background:#174b49}.button-block{width:100%;margin-top:.5rem}.alert{padding:.7rem .85rem;border-radius:6px;font-size:.83rem;line-height:1.45}.alert-danger{border:1px solid #efc4c1;background:var(--soft-danger);color:var(--danger)}.app-shell{min-height:100vh;color:var(--ink)}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:1.2rem;height:4.25rem;padding:0 2rem;border-bottom:1px solid var(--line);background:#fffffff5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand-button{padding:0;border:0;background:transparent}.topbar-spacer{flex:1}.icon-button{display:inline-grid;width:2.3rem;height:2.3rem;place-items:center;border:0;border-radius:6px;background:transparent;color:var(--ink);font-size:1.25rem}.menu-button{display:none}.tenant-picker{display:grid;min-width:12rem;gap:.15rem;color:var(--muted);font-size:.68rem;font-weight:650}.tenant-picker select{min-height:2.2rem;padding:.35rem .55rem}.profile-button{display:flex;align-items:center;gap:.65rem;padding:0;border:0;background:transparent;text-align:left}.avatar{display:inline-grid;width:2.2rem;height:2.2rem;place-items:center;border-radius:50%;background:#dceeea;color:var(--teal);font-size:.8rem;font-weight:800}.profile-copy{display:grid;gap:.12rem;min-width:8rem}.profile-copy strong{overflow:hidden;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.profile-copy small{overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.sidebar{position:fixed;top:4.25rem;bottom:0;left:0;z-index:20;display:flex;width:16.5rem;flex-direction:column;overflow-y:auto;border-right:1px solid var(--line);background:#fff}.sidebar-context{display:grid;gap:.22rem;margin:1.65rem 1.3rem 1rem;padding-bottom:1.3rem;border-bottom:1px solid var(--line)}.sidebar-context .eyebrow{color:var(--muted);font-size:.65rem}.sidebar-context strong{overflow:hidden;font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.sidebar-context small{color:var(--muted);font-size:.72rem;text-transform:capitalize}.primary-nav{display:grid;gap:.25rem;padding:0 .8rem}.nav-item{display:flex;align-items:center;gap:.7rem;min-height:2.5rem;padding:.55rem .65rem;border:0;border-radius:6px;background:transparent;color:#58686d;font-size:.83rem;font-weight:600;text-align:left}.nav-item:hover{background:#f0f5f3;color:var(--ink)}.nav-item.active{background:var(--soft-teal);color:var(--teal)}.nav-icon{display:inline-grid;width:1.35rem;height:1.35rem;place-items:center;border:1px solid currentColor;border-radius:4px;font-size:.62rem;font-weight:800}.sidebar-section{display:grid;gap:.25rem;margin:1.5rem .8rem 0;padding:1rem .5rem;border-top:1px solid var(--line)}.sidebar-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem;color:var(--muted);font-size:.68rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.text-button,.back-link{padding:0;border:0;background:transparent;color:var(--teal);font-size:.76rem;font-weight:700}.text-button:hover,.back-link:hover{text-decoration:underline}.network-link{display:flex;align-items:center;gap:.55rem;overflow:hidden;min-height:2.1rem;padding:.4rem;border:0;border-radius:5px;background:transparent;color:#5c6a6e;font-size:.78rem;text-align:left;text-overflow:ellipsis;white-space:nowrap}.network-link:hover,.network-link.active{background:#f0f5f3;color:var(--ink)}.network-dot{width:.45rem;height:.45rem;flex:0 0 auto;border-radius:50%;background:var(--accent)}.sidebar-note{padding:.4rem;color:var(--muted);font-size:.75rem}.sidebar-footer{display:flex;align-items:center;gap:.45rem;margin-top:auto;padding:1rem 1.3rem;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem}.status-dot{display:inline-block;width:.45rem;height:.45rem;border-radius:50%;background:#a7b7b5}.status-dot-good{background:#42a676}.status-dot-neutral{background:#c7a14f}.main-content{margin-left:16.5rem}.content-wrap{width:min(100%,1120px);margin:0 auto;padding:1.25rem clamp(1.25rem,4vw,3rem) 4rem}.breadcrumb{display:flex;gap:.55rem;margin-bottom:2rem;color:#95a2a3;font-size:.72rem}.breadcrumb strong{color:var(--ink);font-weight:650}.page-section{display:grid;gap:1.4rem}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.page-heading h1{margin:.4rem 0 .45rem;font-size:clamp(1.65rem,3vw,2.2rem);line-height:1.1;font-weight:620;letter-spacing:0}.page-heading p:not(.eyebrow){margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.page-heading .back-link{display:block;margin-bottom:1.1rem}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.stat-card{display:grid;gap:.35rem;min-height:8.3rem;padding:1.15rem;border:1px solid var(--line);border-radius:7px;background:var(--panel)}.stat-card span{color:var(--muted);font-size:.77rem;font-weight:650}.stat-card strong{font-size:2rem;font-weight:600;line-height:1}.stat-card small{color:#92a09f;font-size:.72rem}.overview-grid,.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.panel{min-width:0;border:1px solid var(--line);border-radius:7px;background:var(--panel)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.15rem 1.25rem;border-bottom:1px solid #edf2f0}.panel-heading h2,.unsupported-panel h2{margin:0;font-size:1rem;font-weight:700}.panel-heading p,.unsupported-panel p{margin:.3rem 0 0;color:var(--muted);font-size:.76rem;line-height:1.5}.compact-list{display:grid;padding:.35rem 1.25rem}.list-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:1rem;min-height:3.4rem;padding:.7rem 0;border:0;border-bottom:1px solid #edf2f0;background:transparent;color:var(--ink);text-align:left}.list-row:last-child{border-bottom:0}.list-row:not(.static):hover{color:var(--teal)}.list-row span:first-child{display:grid;gap:.25rem;min-width:0}.list-row strong{overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.list-row small{overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.row-arrow{color:var(--muted);font-size:1rem}.state-box{padding:2rem 1.25rem;color:var(--muted);font-size:.82rem;line-height:1.5;text-align:center}.state-error{color:var(--danger)}.health-list{display:grid;gap:.85rem;padding:1.25rem}.health-list div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;font-size:.8rem}.health-list strong{color:var(--muted);font-size:.72rem;font-weight:600}.create-panel{overflow:hidden}.inline-form{display:grid;grid-template-columns:1.2fr 1fr auto;align-items:end;gap:.8rem;padding:1.15rem 1.25rem}.inline-form .button{min-width:9rem}.create-panel .alert{margin:0 1.25rem 1.15rem}.configuration-panel{display:grid;gap:1.4rem}.configuration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;margin-top:1.4rem}.network-tabs{display:flex;gap:.35rem;overflow-x:auto;border-bottom:1px solid var(--line)}.network-tabs button{flex:0 0 auto;padding:.7rem .85rem;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:.78rem;font-weight:700;cursor:pointer}.network-tabs button:hover,.network-tabs button.active{border-bottom-color:var(--teal);color:var(--teal)}.topology-panel{overflow:hidden}.topology-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.8fr);gap:1rem}.topology-grid>.compact-form{padding-right:.5rem}.topology-status{display:grid;align-content:start;gap:.7rem;padding:1.15rem 1.25rem;border-left:1px solid #edf2f0}.status-line{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.78rem}.blocking-state{padding:.8rem;border-left:3px solid var(--danger);background:#fff7f6;color:#8e3d38;font-size:.76rem;line-height:1.45}.blocking-state strong{display:block;margin-bottom:.35rem}.blocking-state p{margin:.25rem 0 0}.state-inline{color:var(--muted);font-size:.76rem;line-height:1.45}.compact-form{display:grid;gap:.75rem;padding:1.15rem 1.25rem}.compact-form label{display:grid;gap:.35rem;color:#415158;font-size:.76rem;font-weight:650}.compact-form .check-label{display:flex;align-items:center;gap:.5rem;font-weight:500}.compact-form .check-label input{width:1rem;min-height:1rem;accent-color:var(--teal)}.row-actions{display:inline-flex;align-items:center;gap:.7rem}.danger-button{color:var(--danger)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:.8rem}th{padding:.75rem 1.25rem;border-bottom:1px solid var(--line);background:#f8faf9;color:var(--muted);font-size:.68rem;font-weight:750;text-transform:uppercase}td{padding:.85rem 1.25rem;border-bottom:1px solid #edf2f0;color:#526168;white-space:nowrap}td:first-child{display:grid;gap:.2rem}td strong{color:var(--ink);font-size:.82rem}td small{color:var(--muted);font-size:.68rem}.clickable-row{cursor:pointer}.clickable-row:hover{background:#f5faf8}.definition-list{display:grid;gap:0;margin:0;padding:.55rem 1.25rem}.definition-list div{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid #edf2f0}.definition-list div:last-child{border-bottom:0}.definition-list dt{color:var(--muted);font-size:.75rem}.definition-list dd{margin:0;color:var(--ink);font-size:.82rem;text-align:right}.status-pill{display:inline-flex;align-items:center;min-height:1.45rem;padding:.2rem .5rem;border-radius:999px;font-size:.68rem;font-weight:750;text-transform:capitalize}.status-good{background:#e5f4ec;color:#25774c}.status-bad{background:#fbeceb;color:#a9433d}.status-neutral{background:#eef2f1;color:#68787a}.unsupported-panel{padding:1.25rem}.unsupported-panel .status-pill{margin-top:1rem}.monospace{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.74rem!important}@media(max-width:900px){.auth-screen{grid-template-columns:1fr}.auth-aside{display:none}.auth-panel{width:min(32rem,100%);padding:2rem 1.5rem}.auth-panel .brand-lockup{margin-bottom:3rem}.sidebar{transform:translate(-100%);transition:transform .16s ease;box-shadow:12px 0 28px #102b301f}.sidebar.sidebar-open{transform:translate(0)}.nav-backdrop{position:fixed;top:4.25rem;right:0;bottom:0;left:0;z-index:19;background:#102b304d}.main-content{margin-left:0}.menu-button{display:inline-grid}.topbar{padding:0 1rem}.profile-copy{display:none}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.tenant-picker{min-width:0;max-width:8rem}.tenant-picker span{display:none}.brand-lockup span:last-child{display:none}.content-wrap{padding:1rem .9rem 3rem}.breadcrumb{margin-bottom:1.4rem}.page-heading{align-items:flex-start;flex-direction:column;gap:1rem}.page-heading .button{width:100%}.stat-grid,.overview-grid,.detail-grid,.configuration-grid,.topology-grid{grid-template-columns:1fr}.topology-status{border-top:1px solid #edf2f0;border-left:0}.inline-form{grid-template-columns:1fr}.inline-form .button{width:100%}th,td{padding-right:.8rem;padding-left:.8rem}}
