:root{font-family:Plus Jakarta Sans,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;font-feature-settings:"kern" 1,"liga" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--surface-page: #09090b;--surface-0: #0c0c0f;--surface-1: #141418;--surface-2: #1a1a1f;--surface-3: #222228;--surface-4: #2a2a32;--line-subtle: rgba(255, 255, 255, .045);--line-default: rgba(255, 255, 255, .07);--line-strong: rgba(255, 255, 255, .1);--line-focus: rgba(96, 165, 250, .45);--surface-border: var(--line-default);--surface-border-strong: var(--line-strong);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .45);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .35), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 8px 24px rgba(0, 0, 0, .42), 0 2px 6px rgba(0, 0, 0, .22);--shadow-lg: 0 20px 50px rgba(0, 0, 0, .55), 0 8px 16px rgba(0, 0, 0, .28);--shadow-inset-top: inset 0 1px 0 rgba(255, 255, 255, .04);--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--left-toolbar-width: 240px;--dashboard-sidebar-width: 296px;--text: rgba(250, 250, 250, .96);--text-secondary: rgba(255, 255, 255, .62);--text-muted: rgba(255, 255, 255, .45);--text-faint: rgba(255, 255, 255, .32);--page-title-size: 18px;--page-title-weight: 600;--page-title-line-height: 1.3;--page-title-letter-spacing: .015em;--page-title-color: rgba(255, 255, 255, .92);--page-desc-size: 12px;--page-desc-line-height: 1.45;--page-desc-color: rgba(255, 255, 255, .42);--panel-title-size: 14px;--panel-title-weight: 600;--panel-title-color: rgba(255, 255, 255, .9);--panel-subtitle-size: 11px;--panel-subtitle-color: rgba(255, 255, 255, .42);--panel-padding: 14px 16px;--panel-padding-compact: 12px 14px;--section-gap-md: 12px;--empty-title-size: 15px;--empty-detail-size: 13px;--banner-radius: 10px;--banner-padding: 10px 12px;--button-radius: 10px;--button-radius-sm: 8px;--accent: #3b82f6;--accent-soft: rgba(59, 130, 246, .14);--accent-ring: rgba(59, 130, 246, .22);--lux-line: linear-gradient( 90deg, transparent 0%, rgba(212, 175, 125, .35) 50%, transparent 100% );--bg: var(--surface-page);--bg-glow-a: transparent;--bg-glow-b: transparent;--bg-vignette: transparent;--bg-grid: transparent;--glass-bg: var(--surface-2);--glass-bg-soft: var(--surface-3);--glass-border: var(--surface-border);--glass-border-strong: var(--surface-border-strong);--glass-shadow: var(--shadow-md);--glass-shadow-strong: var(--shadow-lg);--glass-outline-blue: 0 0 0 0 transparent;--glass-outline-purple: 0 0 0 0 transparent;--map-viewport-pad: 10px 12px;--map-viewport-radius: var(--radius-lg);--map-viewport-border: 1px solid rgba(255, 255, 255, .06);--map-viewport-shadow: 0 10px 32px rgba(0, 0, 0, .4);--map-viewport-surface: #0c0c10}html{background-color:var(--surface-page);background-image:radial-gradient(ellipse 100% 70% at 50% -15%,rgba(59,130,246,.07),transparent 55%),radial-gradient(ellipse 80% 50% at 100% 0%,rgba(212,175,125,.04),transparent 45%);background-attachment:fixed}body{margin:0;padding:0;width:100vw;height:100vh;overflow:hidden;background:transparent;color:var(--text)}#app{width:100%;height:100%;display:flex;flex-direction:column;margin:0;padding:0;max-width:none}.font-mono{font-family:JetBrains Mono,SF Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}.glass-card{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--surface-2) 0%,var(--surface-1) 100%);border:1px solid var(--line-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-md),var(--shadow-inset-top)}.glass-card:before{content:"";position:absolute;left:12%;right:12%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.14) 45%,rgba(212,175,125,.25) 50%,rgba(255,255,255,.12) 55%,transparent);pointer-events:none;z-index:1}.glass-card:after{display:none}.glass-card-inner{position:relative;background:var(--surface-3);border:1px solid var(--line-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-inset-top)}.glass-dialog.el-dialog{position:relative;overflow:hidden;background:linear-gradient(180deg,#1c1c22,#141418);border:1px solid var(--line-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg),var(--shadow-inset-top)}.glass-dialog.el-dialog:before{content:"";position:absolute;left:10%;right:10%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12) 50%,transparent);pointer-events:none}.glass-dialog .el-dialog__header{position:relative;padding:18px 22px 14px;margin-right:0;border-bottom:1px solid var(--line-subtle)}.glass-dialog .el-dialog__title{font-weight:600;font-size:16px;letter-spacing:.03em;color:var(--text);background:none;-webkit-background-clip:unset;background-clip:unset;text-shadow:none}.glass-dialog .el-dialog__headerbtn{top:16px;right:18px}.glass-dialog .el-dialog__headerbtn .el-dialog__close{color:var(--text-muted);transition:color .15s ease}.glass-dialog .el-dialog__headerbtn:hover .el-dialog__close{color:var(--text)}.glass-dialog .el-dialog__body{position:relative;padding:20px 22px;color:var(--text-secondary);font-size:14px}.glass-dialog .el-dialog__footer{position:relative;padding:14px 22px 18px;border-top:1px solid var(--line-subtle);background:#00000026}.glass-dialog .el-divider--horizontal{border-top-color:var(--line-default)}.glass-dialog .el-input__wrapper,.glass-dialog .el-select__wrapper{background:var(--surface-3);border:1px solid var(--line-strong);box-shadow:var(--shadow-inset-top);border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease}.glass-dialog .el-input__wrapper:hover,.glass-dialog .el-select__wrapper:hover{border-color:#3b82f659}.glass-dialog .el-input__wrapper.is-focus,.glass-dialog .el-select__wrapper.is-focused{border-color:var(--line-focus);box-shadow:0 0 0 3px var(--accent-ring),var(--shadow-inset-top)}.glass-dialog .el-radio__label,.glass-dialog .el-form-item__label{color:var(--text-secondary)}.glass-dialog .el-button{border-radius:8px;font-weight:500;letter-spacing:.02em}.glass-dialog .el-button--primary{box-shadow:0 2px 12px #3b82f647}.glass-dialog .el-tag{border:1px solid var(--line-default);border-radius:6px}.glass-dialog .el-table{--el-table-bg-color: transparent;--el-table-tr-bg-color: transparent;--el-table-header-bg-color: var(--surface-3);--el-table-row-hover-bg-color: rgba(255, 255, 255, .035);--el-table-border-color: var(--line-subtle);background:transparent;border-radius:8px;overflow:hidden}.glass-dialog .el-table__inner-wrapper:before{background-color:var(--line-subtle)!important}.glass-dialog .el-table__header-wrapper th.el-table__cell{background:var(--surface-3)!important;color:var(--text-muted)!important;font-weight:600;font-size:12px;letter-spacing:.04em;text-transform:uppercase;border-bottom-color:var(--line-default)!important}.glass-dialog .el-table__body td.el-table__cell{background:transparent!important;border-bottom-color:var(--line-subtle)!important;color:var(--text-secondary)!important}.glass-dialog .el-table__body tr:hover>td.el-table__cell{background:#ffffff09!important}.page-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;gap:16px;min-height:0}.page-header__left{display:flex;flex-direction:column;gap:4px;min-width:0}.page-header__title{margin:0;font-size:var(--page-title-size);font-weight:var(--page-title-weight);color:var(--page-title-color);white-space:nowrap;line-height:var(--page-title-line-height);letter-spacing:var(--page-title-letter-spacing)}.page-header__desc{font-size:var(--page-desc-size);color:var(--page-desc-color);white-space:nowrap;line-height:var(--page-desc-line-height)}.page-header__actions{flex-shrink:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.page-view{box-sizing:border-box;padding:20px 24px;display:flex;flex-direction:column;gap:16px;height:100%;min-height:0;overflow:hidden}.section-gap{gap:16px}.btn-unified{border-radius:8px;font-weight:500;transition:all .15s ease}.tag-unified{border-radius:6px;font-weight:500}.input-unified{border-radius:8px}.page-view--scroll{overflow:auto}.dark{--el-bg-color: var(--surface-page);--el-bg-color-page: var(--surface-page);--el-text-color-primary: var(--text);--el-text-color-regular: var(--text-secondary);--el-border-color: var(--line-default);--el-border-color-light: var(--line-subtle);--el-fill-color-blank: var(--surface-2);--el-fill-color-light: var(--surface-3);--el-color-primary: #3b82f6;--el-color-primary-light-3: #60a5fa;--el-color-primary-light-5: #93c5fd;--el-color-primary-light-7: #bfdbfe;--el-color-primary-light-9: rgba(59, 130, 246, .12);--el-color-primary-dark-2: #2563eb;--el-border-radius-base: 8px;--el-border-radius-small: 6px;--el-border-radius-extra-small: 4px}.dark .el-button{border-radius:var(--button-radius);font-weight:600;letter-spacing:.01em;transition:all .18s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff08}.dark .el-button--primary{background:#3b82f629;border-color:#60a5fa33;box-shadow:0 6px 16px #3b82f624,inset 0 1px #ffffff0d;color:#eaf3fff5}.dark .el-button--primary:hover{background:#3b82f638;border-color:#60a5fa47;transform:translateY(-1px);box-shadow:0 8px 18px #3b82f629,inset 0 1px #ffffff0f}.dark .el-button--primary:active{transform:translateY(0);background:#3b82f62e;box-shadow:inset 0 1px #ffffff08}.dark .el-button--default{background:#ffffff09;border:1px solid var(--line-default);color:#ffffffd1;box-shadow:inset 0 1px #ffffff08}.dark .el-button--default:hover{background:#ffffff0e;border-color:#ffffff1f;color:#fffffff2;transform:translateY(-1px)}.dark .el-button--default:active{transform:translateY(0);background:#ffffff0a;box-shadow:0 1px #0000001a inset}.dark .el-button.is-plain{background:#ffffff05;border:1px solid rgba(255,255,255,.08)}.dark .el-button.is-plain:hover{background:#ffffff0d;border-color:#ffffff1f}.dark .el-button--text{color:#cbd5e1e0;border-radius:var(--button-radius-sm);padding:5px 10px;font-weight:600;background:#ffffff09;border:1px solid rgba(255,255,255,.06)}.dark .el-button--text:hover{background:#ffffff0f;border-color:#ffffff1a;color:#fffffff2}.dark .el-button--text.el-button--primary{color:#e3effff2;background:#3b82f629;border-color:#60a5fa2e}.dark .el-button--text.el-button--primary:hover{background:#3b82f638;border-color:#60a5fa42;color:#eef5fffa}.dark .el-button--text.el-button--success{color:#bbe9cbe6;background:#22c55e17;border-color:#22c55e1f}.dark .el-button--text.el-button--success:hover{background:#22c55e1f;border-color:#22c55e2e;color:#cef2daf5}.dark .el-button--text.el-button--warning{color:#eed193e6;background:#f59e0b14;border-color:#f59e0b1c}.dark .el-button--text.el-button--warning:hover{background:#f59e0b1c;border-color:#f59e0b2b;color:#f5deaaf5}.dark .el-button--text.el-button--danger{color:#e8bbbbe6;background:#ef444414;border-color:#ef44441c}.dark .el-button--text.el-button--danger:hover{background:#ef44441c;border-color:#ef44442b;color:#f1cacaf5}.dark .el-button--danger{background:#ef44441f;border-color:#ef44442e;box-shadow:0 6px 14px #ef44441f;color:#f5d6d6f2}.dark .el-button--danger:hover{background:#ef444429;border-color:#ef44443d;transform:translateY(-1px);box-shadow:0 8px 16px #ef444424}.dark .el-button--danger.is-plain{background:#ef44440d;border:1px solid rgba(239,68,68,.18);color:#e9b5b5db}.dark .el-button--danger.is-plain:hover{background:#ef444417;border-color:#ef444442;transform:translateY(-1px)}.dark .el-button--success{background:#22c55e1f;border-color:#22c55e2e;box-shadow:0 6px 14px #22c55e1c;color:#ddf5e5f2}.dark .el-button--success:hover{background:#22c55e29;border-color:#22c55e3d;transform:translateY(-1px);box-shadow:0 8px 16px #22c55e21}.dark .el-button--success.is-plain{background:#22c55e0d;border:1px solid rgba(34,197,94,.18);color:#b3ebc7db}.dark .el-button--success.is-plain:hover{background:#22c55e17;border-color:#22c55e42;transform:translateY(-1px)}.dark .el-button--warning{background:#f59e0b1f;border-color:#f59e0b2e;box-shadow:0 6px 14px #f59e0b1c;color:#f7e8cdf2}.dark .el-button--warning:hover{background:#f59e0b29;border-color:#f59e0b3d;transform:translateY(-1px);box-shadow:0 8px 16px #f59e0b21}.dark .el-button--warning.is-plain{background:#f59e0b0d;border:1px solid rgba(245,158,11,.18);color:#f0d18adb}.dark .el-button--warning.is-plain:hover{background:#f59e0b17;border-color:#f59e0b42;transform:translateY(-1px)}.dark .el-button--small{padding:6px 14px;font-size:13px;border-radius:var(--button-radius-sm)}.dark .el-button--small .el-icon{font-size:13px}.dark .el-button .el-icon+span{margin-left:6px}.dark .el-button span+.el-icon{margin-left:6px}.btn-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btn-group--tight{gap:6px}.btn-group--spaced{gap:12px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.toolbar__left,.toolbar__right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end;padding-top:12px;border-top:1px solid var(--line-subtle);margin-top:12px}.dark .el-dialog__footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 22px 18px;background:#00000026;border-top:1px solid var(--line-subtle)}.dark .el-card{--el-card-bg-color: var(--surface-2);border-color:var(--line-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-md),var(--shadow-inset-top);overflow:hidden}.dark .el-card__header{padding:14px 16px;border-bottom:1px solid var(--line-subtle);background:linear-gradient(180deg,var(--surface-3) 0%,var(--surface-2) 100%)}.dark .el-card__body{padding:16px}.dark .el-table{--el-table-bg-color: transparent;--el-table-tr-bg-color: transparent;--el-table-header-bg-color: rgba(255, 255, 255, .02);--el-table-row-hover-bg-color: rgba(255, 255, 255, .035);--el-table-border-color: var(--line-subtle);background:transparent}.dark .el-table th.el-table__cell{color:#ffffff75;font-weight:600;font-size:12px;border-bottom-color:var(--line-subtle)}.dark .el-table td.el-table__cell{color:#ffffffd1;border-bottom-color:#ffffff0d}.dark .el-table__row:hover>td.el-table__cell{background:#ffffff09!important}.dark .el-table__inner-wrapper:before{background-color:#ffffff0d}.dark .el-input__wrapper{background:var(--surface-3);border:1px solid var(--line-default);box-shadow:var(--shadow-inset-top);border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.dark .el-input__wrapper:hover{border-color:#ffffff1f;background:var(--surface-4)}.dark .el-input__wrapper.is-focus{border-color:var(--line-focus);box-shadow:0 0 0 3px var(--accent-ring),var(--shadow-inset-top);background:var(--surface-4)}.dark .el-select__wrapper{background:var(--surface-3);border:1px solid var(--line-default);box-shadow:var(--shadow-inset-top);border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.dark .el-select__wrapper:hover{border-color:#ffffff1f;background:var(--surface-4)}.dark .el-select__wrapper.is-focused{border-color:var(--line-focus);box-shadow:0 0 0 3px var(--accent-ring),var(--shadow-inset-top);background:var(--surface-4)}.dark .el-empty__description p{color:var(--text-muted)}.dark .el-tag{border-radius:6px;font-weight:500;padding:3px 10px;border:1px solid var(--line-default);background:var(--surface-3)}.dark .el-tag--info{background:#94a3b81f;border-color:#94a3b840;color:#cbd5e1}.dark .el-tag--success{background:#22c55e1f;border-color:#22c55e40;color:#86efac}.dark .el-tag--warning{background:#f59e0b1f;border-color:#f59e0b40;color:#fcd34d}.dark .el-tag--danger{background:#ef44441f;border-color:#ef444440;color:#fca5a5}.dark .el-radio-button__inner{border-radius:8px;border:1px solid var(--line-default);background:var(--surface-3);color:var(--text-secondary);font-weight:500;transition:all .15s ease}.dark .el-radio-button__inner:hover{color:var(--text);background:var(--surface-4)}.dark .el-radio-button.is-active .el-radio-button__inner{background:var(--accent-soft);border-color:#3b82f659;color:#fff;box-shadow:0 1px #ffffff0f inset}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;color:var(--text, rgba(250, 250, 250, .96));font-family:Plus Jakarta Sans,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif}#app{width:100%;height:100%;overflow:hidden}
