:root{--bg:#071427;--bg-soft:#091a31;--card:#101f38;--card-alt:#142744;--text:#e5eeff;--muted:#9aaed2;--primary:#4096ff;--border:#223a5f;--danger:#ff5b6e}:root[data-theme=light]{--bg:#fff;--bg-soft:#fff;--card:#fff;--card-alt:#fff;--text:#111b2f;--muted:#6a7a97;--primary:#1677ff;--border:#e5ecf8;--danger:#cf1322}*{box-sizing:border-box}html,body,#app{background:var(--bg);width:100%;min-height:100%;color:var(--text);margin:0;font-family:Inter,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}.app-shell{min-height:100vh;background:var(--bg)!important}.app-shell .ant-layout{background:var(--bg)!important}.logo-wrap{color:#d8ecff;align-items:center;gap:10px;height:64px;padding:0 16px;font-weight:600;display:flex}.pulse-dot{background:#00e6a8;border-radius:50%;width:10px;height:10px;box-shadow:0 0 10px #00e6a8cc}.app-header{border-bottom:1px solid var(--border);justify-content:flex-end;align-items:center;padding:0 16px;display:flex;background:var(--bg-soft)!important}.app-header .ant-btn-text,.app-header .ant-btn-link,.app-header .ant-dropdown-trigger,.app-header .ant-btn .anticon{color:var(--text)!important}.header-right{align-items:center;gap:8px;display:flex}.header-action.ant-btn{height:34px;border:1px solid var(--border)!important;background:var(--card-alt)!important;color:var(--text)!important;border-radius:9px!important}.header-action.ant-btn:hover,.header-action.ant-btn:focus{border-color:var(--primary)!important;color:var(--primary)!important}.user-link{background:var(--card-alt);border:1px solid var(--border);border-radius:999px;padding:7px 12px;font-weight:600;color:var(--text)!important}.content-wrap{background:var(--bg);padding:18px}.page-wrap{flex-direction:column;gap:12px;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.page-head h2{margin:0;font-size:20px;font-weight:650}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.metric-card,.chart-card,.table-card,.login-card{overflow:hidden;box-shadow:0 10px 28px #00000029;background:color-mix(in srgb, var(--card), transparent 0%)!important;border:1px solid var(--border)!important;border-radius:12px!important}.metric-card .ant-card-body,.chart-card .ant-card-body,.table-card .ant-card-body{padding:14px!important}.chart-card .ant-card-head,.table-card .ant-card-head{min-height:42px;border-bottom-color:color-mix(in srgb, var(--border), transparent 26%)!important}.chart-card .ant-card-head-title,.table-card .ant-card-head-title{letter-spacing:.1px;font-size:13px;font-weight:600}.table-card .ant-table-tbody>tr{transition:background-color .15s}.table-card .ant-table-tbody>tr:hover>td{background:color-mix(in srgb, var(--card-alt), transparent 68%)!important}.metric-label{color:var(--muted);font-size:13px}.metric-value{color:var(--text);font-size:24px;font-weight:700}.chart{height:290px}.topology-chart{height:540px}.ant-typography,.ant-form-item-label>label,.ant-descriptions-item-label,.ant-descriptions-item-content,.ant-table,.ant-table-thead>tr>th,.ant-table-tbody>tr>td,.ant-input,.ant-input-password,.ant-select-selection-item,.ant-select-selection-placeholder,.ant-empty-description,.ant-pagination-item a,.ant-statistic-content,.ant-modal-title,.ant-modal-content,.ant-drawer-title,.ant-drawer-body,.ant-menu-item,.ant-menu-title-content,.ant-dropdown-menu-item,.ant-dropdown-menu-submenu-title,.ant-select-item,.ant-select-item-option-content,.ant-select-selection-search-input,.ant-picker-content th,.ant-picker-cell-inner{color:var(--text)!important}.ant-modal-content,.ant-drawer-content,.ant-dropdown-menu,.ant-select-dropdown,.ant-picker-dropdown .ant-picker-panel-container,.ant-popover-inner,.ant-tooltip-inner{background:var(--card)!important;border:1px solid var(--border)!important}.ant-dropdown-menu-item:hover,.ant-dropdown-menu-submenu-title:hover,.ant-select-item-option-active:not(.ant-select-item-option-disabled),.ant-select-item-option-selected:not(.ant-select-item-option-disabled),.ant-menu-item:hover,.ant-menu-submenu-title:hover{background:color-mix(in srgb, var(--card-alt), transparent 20%)!important}.ant-menu,.ant-dropdown-menu,.ant-select-dropdown,.ant-picker-panel,.ant-picker-header,.ant-picker-content{background:var(--card)!important;color:var(--text)!important}.ant-table-thead>tr>th{background:color-mix(in srgb, var(--card-alt), transparent 8%)!important;border-bottom:1px solid var(--border)!important}.ant-table-tbody>tr>td{font-size:13px;border-bottom:1px solid color-mix(in srgb, var(--border), transparent 30%)!important}.ant-table-wrapper .ant-table,.ant-table-wrapper .ant-table-container,.ant-table-wrapper .ant-table-content,.ant-table-wrapper .ant-table-body,.ant-table-wrapper .ant-table-placeholder>td{background:var(--card)!important}.ant-table-wrapper .ant-table-pagination.ant-pagination{margin-top:12px;margin-bottom:0}.ant-input,.ant-input-password,.ant-select-selector,.ant-picker,.ant-btn-default{background:color-mix(in srgb, var(--card-alt), transparent 3%)!important;border-color:var(--border)!important;border-radius:8px!important}.ant-input:focus,.ant-input-focused,.ant-select-focused .ant-select-selector,.ant-picker-focused{box-shadow:0 0 0 2px color-mix(in srgb, var(--primary), transparent 72%)!important}.ant-input::placeholder,.ant-select-selection-placeholder,.ant-empty-description,.ant-table-cell .ant-typography-secondary,.ant-form-item-explain,.ant-form-item-extra{color:var(--muted)!important}.ant-btn-primary{box-shadow:0 8px 16px #1677ff47;border-radius:8px!important}.ant-btn{transition:transform .12s,box-shadow .12s}.ant-btn:active{transform:translateY(1px)}.ant-btn-dangerous{border-color:color-mix(in srgb, var(--danger), white 10%)!important;color:color-mix(in srgb, var(--danger), white 14%)!important}.ant-tabs .ant-tabs-nav{margin-bottom:10px}.pm-tabs .ant-tabs-tab{padding:8px 10px}.pm-tabs .ant-tabs-ink-bar{background:var(--primary)}:root[data-theme=light] .ant-btn-primary{box-shadow:0 8px 18px #1677ff33}:root[data-theme=light] .table-card,:root[data-theme=light] .chart-card,:root[data-theme=light] .metric-card,:root[data-theme=light] .login-card{box-shadow:0 8px 24px #0c224214}:root[data-theme=light] .ant-layout-sider{box-shadow:inset -1px 0 #e6edf9;background:#fff!important}:root[data-theme=light] .logo-wrap{color:#183153}:root[data-theme=light] .ant-layout-sider .ant-menu{color:#1b3558!important;background:#fff!important}:root[data-theme=light] .ant-layout-sider .ant-menu-item{color:#1b3558!important}:root[data-theme=light] .ant-layout-sider .ant-menu-item-selected{color:#1554d1!important;background:#eaf2ff!important}:root[data-theme=light] .ant-layout-sider .ant-menu-item:hover{color:#1554d1!important;background:#f1f6ff!important}:root[data-theme=dark] .ant-layout-sider,:root[data-theme=dark] .ant-layout-sider .ant-menu{background:#041126!important}:root[data-theme=dark] .content-wrap{background:#071427}:root[data-theme=dark] .ant-layout-sider .ant-menu-item,:root[data-theme=dark] .ant-layout-sider .ant-menu-submenu-title{color:#d8e8ff!important}:root[data-theme=dark] .ant-layout-sider .ant-menu-item-selected{color:#6db0ff!important;background:#16335a!important}:root[data-theme=dark] .ant-layout-sider .ant-menu-item:hover{color:#8cc3ff!important;background:#102b4f!important}:root[data-theme=dark] .ant-table-tbody>tr>td{color:#d9e8ff!important;background:#112645!important}:root[data-theme=dark] .ant-table-placeholder .ant-empty-description,:root[data-theme=dark] .ant-empty-description{color:#9db4d6!important}.ant-layout-sider .ant-menu-item,.ant-layout-sider .ant-menu-submenu-title{border-radius:10px!important;width:calc(100% - 16px)!important;margin-inline:8px!important}.ant-tag{border-radius:999px;padding-inline:8px;font-size:12px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--muted), transparent 42%);border-radius:999px}::-webkit-scrollbar-track{background:0 0}.login-page{place-items:center;min-height:100vh;padding:18px;display:grid}.login-card{width:min(460px,100%)}.login-card h1{margin:0 0 8px}.desc{color:var(--muted);margin:0 0 16px}.pm-empty{flex-direction:column;gap:2px;display:flex}.pm-empty-title{color:var(--text);font-size:13px;font-weight:600}.pm-empty-subtitle{color:var(--muted);font-size:12px}.pm-range-select{width:120px}.pm-source-select{width:180px}.pm-filter-input{width:220px!important}.pm-filter-input-md{width:200px!important}.pm-filter-input-sm{width:180px!important}.pm-filter-input-xs{width:160px!important}.pm-filter-select{width:140px!important}.pm-filter-select-sm{width:130px!important}.pm-filter-select-lg{width:180px!important}@media (width<=1024px){.summary-grid,.chart-grid{grid-template-columns:1fr}.content-wrap{padding:10px}.topology-chart{height:420px}}@media (width<=768px){.page-head h2{font-size:18px}.metric-card .ant-card-body,.chart-card .ant-card-body,.table-card .ant-card-body{padding:12px!important}.metric-value{font-size:20px}.pm-filter-input,.pm-filter-input-md,.pm-filter-input-sm,.pm-filter-input-xs,.pm-filter-select,.pm-filter-select-sm,.pm-filter-select-lg,.pm-source-select,.pm-range-select{width:100%!important}.table-card :is(.ant-btn-sm,.ant-btn.ant-btn-sm){min-height:36px;padding-inline:10px;font-size:12px}.table-card :is(.ant-switch,.ant-switch-small){min-width:34px;height:22px}}
