.shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh;background-color:var(--color-bg)}.sidebar{display:flex;flex-direction:column;height:100vh;position:sticky;top:0;overflow-y:auto;background-color:var(--color-surface);border-right:1px solid var(--color-border)}.sidebar-top{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-lg) var(--space-lg) var(--space-md)}.brand-mark{width:24px;height:24px;flex-shrink:0}.brand-name{font-family:var(--font-family-base);font-size:var(--font-size-goal);font-weight:var(--font-weight-semibold);color:var(--color-text);letter-spacing:-.01em}.sidebar-toggle{margin-left:auto;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:transparent;color:var(--color-text-muted);cursor:pointer;font-size:14px;line-height:1}.sidebar-toggle:hover{background-color:var(--color-surface-2);color:var(--color-text)}.nav-group{padding:var(--space-sm) var(--space-sm)}.nav-group-label{display:block;padding:var(--space-sm) var(--space-md) var(--space-xs);font-family:var(--font-family-base);font-size:var(--font-size-label);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;color:var(--color-text-muted)}.nav-item{display:flex;align-items:center;gap:var(--space-md);width:100%;padding:8px var(--space-md);border:none;border-radius:var(--radius-md);background-color:transparent;color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-body);text-align:left;cursor:pointer}.nav-item:hover{background-color:var(--color-surface-2);color:var(--color-text)}.nav-item[data-active=true]{background-color:var(--color-accent-weak);color:var(--color-accent)}.nav-glyph{flex-shrink:0;width:18px;text-align:center}.nav-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-badge{flex-shrink:0;min-width:18px;padding:0 6px;border-radius:999px;background-color:var(--color-warn-weak);color:var(--color-warn);font-size:var(--font-size-label);font-weight:var(--font-weight-medium);text-align:center}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border)}.sidebar-avatar{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border-radius:var(--radius-sm);background-color:var(--color-surface-2);color:var(--color-text);font-size:var(--font-size-label);font-weight:var(--font-weight-medium);text-transform:uppercase}.sidebar-identity{min-width:0;line-height:1.2}.sidebar-user{font-family:var(--font-family-base);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-version{font-family:var(--font-family-base);font-size:var(--font-size-label);color:var(--color-text-muted)}.shell-main{display:flex;flex-direction:column;min-width:0;height:100vh;overflow:hidden}.shell-header{display:flex;align-items:center;gap:var(--space-md);flex-shrink:0;padding:var(--space-md) var(--space-xl);border-bottom:1px solid var(--color-border);background-color:var(--color-surface)}.breadcrumb{font-family:var(--font-family-base);font-size:var(--font-size-body);color:var(--color-text-muted)}.breadcrumb-sep{margin:0 var(--space-xs);color:var(--color-text-faint)}.breadcrumb-current{color:var(--color-text);font-weight:var(--font-weight-medium)}.needs-pill{display:inline-flex;align-items:center;gap:var(--space-xs);padding:2px 10px;border-radius:999px;background-color:var(--color-warn-weak);color:var(--color-warn);font-family:var(--font-family-base);font-size:var(--font-size-label);font-weight:var(--font-weight-medium)}.shell-user{font-family:var(--font-family-base);font-size:var(--font-size-body);color:var(--color-text-muted)}.shell-signout{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:transparent;color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-body);padding:6px 14px;cursor:pointer}.shell-signout:hover{background-color:var(--color-surface-2)}.shell-body{flex:1;overflow-y:auto;padding:var(--space-xl)}.shell-panel{min-height:100%;border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-bg)}.shell-footer{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0;padding:var(--space-sm) var(--space-xl);border-top:1px solid var(--color-border);font-family:var(--font-family-base);font-size:var(--font-size-label);color:var(--color-text-muted)}.conn-dot{display:inline-block;width:7px;height:7px;border-radius:999px;background-color:var(--color-ok)}.shell[data-collapsed=true]{grid-template-columns:64px 1fr}.shell[data-collapsed=true] .brand-name,.shell[data-collapsed=true] .nav-group-label,.shell[data-collapsed=true] .nav-label,.shell[data-collapsed=true] .nav-badge,.shell[data-collapsed=true] .sidebar-identity{display:none}.shell[data-collapsed=true] .sidebar-top,.shell[data-collapsed=true] .sidebar-bottom{justify-content:center}.shell[data-collapsed=true] .sidebar-toggle{margin-left:0}@media (max-width: 900px){.shell,.shell[data-collapsed=true]{grid-template-columns:64px 1fr}.brand-name,.nav-group-label,.nav-label,.nav-badge,.sidebar-identity,.sidebar-toggle{display:none}}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(data:font/woff2;base64,) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(data:font/woff2;base64,) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg: #000000;--color-surface: #1a1a1a;--color-surface-2: #333333;--color-border: rgba(255, 255, 255, .12);--color-border-strong: rgba(255, 255, 255, .2);--color-text: #fafafa;--color-text-muted: #c2c6ce;--color-text-faint: #808080;--color-accent: #70fbc7;--color-accent-hover: #c6fde9;--color-accent-weak: rgba(112, 251, 199, .14);--color-accent-ink: #000000;--color-accent-deep: #008864;--color-ok: #23c965;--color-warn: #ffc14a;--color-danger: #fb564b;--color-danger-hover: #ff7066;--color-info: #3994ff;--color-ok-weak: color-mix(in srgb, var(--color-ok) 14%, transparent);--color-warn-weak: color-mix(in srgb, var(--color-warn) 14%, transparent);--color-danger-weak: color-mix(in srgb, var(--color-danger) 14%, transparent);--color-info-weak: color-mix(in srgb, var(--color-info) 14%, transparent);--font-family-base: Poppins, "Nunito Sans", Nunito, Arial, sans-serif;--font-family-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-size-goal: 16px;--font-size-body: 14px;--font-size-data: 14px;--font-size-label: 11px;--font-size-mono: 12px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--line-height-goal: 1.3;--line-height-body: 1.55;--line-height-data: 1.4;--line-height-label: 1.4;--line-height-mono: 1.45;--letter-spacing-label: .6px;--shadow-modal: 0 12px 48px rgba(0, 0, 0, .6);--space-xs: 6px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 20px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover)}code,pre,.mono-block{font-family:var(--font-family-mono);font-size:var(--font-size-mono);line-height:var(--line-height-mono)}
