@charset "UTF-8";.password-dialog[data-v-92c286bd] .el-dialog{border-radius:var(--radius-xl);overflow:hidden}.password-dialog[data-v-92c286bd] .el-dialog__header{text-align:center;padding-bottom:0}.password-dialog[data-v-92c286bd] .el-dialog__header .el-dialog__title{font-size:18px;font-weight:600}.password-dialog[data-v-92c286bd] .el-dialog__body{padding:20px 24px 24px}.password-dialog[data-v-92c286bd] .el-dialog__footer{padding:0 24px 24px}.dialog-content[data-v-92c286bd]{text-align:center}.dialog-content .dialog-icon[data-v-92c286bd]{font-size:48px;margin-bottom:16px}.dialog-content .dialog-tip[data-v-92c286bd]{font-size:14px;color:var(--text-secondary);margin-bottom:20px}.dialog-content .error-msg[data-v-92c286bd]{font-size:13px;color:var(--danger-color);margin-top:12px}.dialog-footer[data-v-92c286bd]{display:flex;gap:12px}.dialog-footer .el-button[data-v-92c286bd]{flex:1}.announcement-bar[data-v-5c960596]{display:flex;align-items:center;height:36px;background:linear-gradient(90deg,var(--primary-color),var(--primary-color-light));color:#fff;padding:0 16px;position:relative;overflow:hidden;flex-shrink:0}.announcement-content[data-v-5c960596]{flex:1;display:flex;align-items:center;overflow:hidden;margin-right:40px}.announcement-icon[data-v-5c960596]{font-size:16px;margin-right:12px;flex-shrink:0;animation:shake-5c960596 2s ease-in-out infinite}@keyframes shake-5c960596{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.announcement-text-wrapper[data-v-5c960596]{flex:1;overflow:hidden;white-space:nowrap}.announcement-text[data-v-5c960596]{display:inline-block;font-size:14px;font-weight:500;white-space:nowrap;animation:scroll-left-5c960596 linear infinite;padding-left:100%}@keyframes scroll-left-5c960596{0%{transform:translate(0)}to{transform:translate(-100%)}}.close-btn[data-v-5c960596]{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:24px;height:24px;border:none;background:#fff3;border-radius:50%;color:#fff;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-btn[data-v-5c960596]:hover{background:#ffffff4d;transform:translateY(-50%) scale(1.1)}.layout-wrapper[data-v-c2ba2bcc]{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden}.main-layout[data-v-c2ba2bcc]{display:flex;width:100%;flex:1;overflow:hidden}.sidebar[data-v-c2ba2bcc]{width:220px;height:100%;background:var(--bg-secondary);border-right:1px solid var(--border-color-light);display:flex;flex-direction:column;flex-shrink:0;transition:width var(--transition-normal)}.sidebar__logo[data-v-c2ba2bcc]{padding:24px 20px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border-color-light);min-height:77px}.sidebar__logo .logo-icon[data-v-c2ba2bcc]{font-size:28px;flex-shrink:0}.sidebar__logo .logo-text[data-v-c2ba2bcc]{font-size:18px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden}.sidebar__nav[data-v-c2ba2bcc]{flex:1;padding:16px 12px;display:flex;flex-direction:column;gap:4px;overflow:hidden}.sidebar__footer[data-v-c2ba2bcc]{border-top:1px solid var(--border-color-light)}.sidebar__status[data-v-c2ba2bcc]{padding:16px 20px}.nav-item[data-v-c2ba2bcc]{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;overflow:hidden}.nav-item[data-v-c2ba2bcc]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.nav-item--active[data-v-c2ba2bcc]{background:var(--primary-color)!important;color:var(--text-inverse)!important}.nav-item--active .nav-item__icon[data-v-c2ba2bcc]{color:var(--text-inverse)}.nav-item__icon[data-v-c2ba2bcc]{font-size:20px;color:inherit;flex-shrink:0}.nav-item__text[data-v-c2ba2bcc]{font-size:15px;font-weight:500;overflow:hidden}.status-indicator[data-v-c2ba2bcc]{display:flex;align-items:center;gap:8px}.status-indicator .status-dot[data-v-c2ba2bcc]{width:8px;height:8px;border-radius:50%;background:var(--danger-color);transition:background var(--transition-normal);flex-shrink:0}.status-indicator .status-text[data-v-c2ba2bcc]{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden}.status-indicator.is-connected .status-dot[data-v-c2ba2bcc]{background:var(--success-color)}.collapse-btn[data-v-c2ba2bcc]{width:100%;padding:12px 20px;display:flex;align-items:center;justify-content:center;gap:8px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.collapse-btn[data-v-c2ba2bcc]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.main-content[data-v-c2ba2bcc]{flex:1;overflow:hidden;background:var(--bg-primary)}.sidebar-collapsed .sidebar[data-v-c2ba2bcc]{width:68px}.sidebar-collapsed .sidebar__logo[data-v-c2ba2bcc]{padding:24px 16px;justify-content:center}.sidebar-collapsed .sidebar__nav[data-v-c2ba2bcc]{padding:16px 8px}.sidebar-collapsed .sidebar__status[data-v-c2ba2bcc]{padding:16px;justify-content:center}.sidebar-collapsed .nav-item[data-v-c2ba2bcc]{padding:12px;justify-content:center}.sidebar-collapsed .status-indicator[data-v-c2ba2bcc]{justify-content:center}.sidebar-collapsed .collapse-btn[data-v-c2ba2bcc]{padding:12px}*{margin:0;padding:0;box-sizing:border-box}html,body,#app{width:100%;height:100%;overflow:hidden}.app-container{width:100%;height:100%;background-color:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--primary-color: #007aff;--primary-color-light: #5ac8fa;--primary-color-dark: #0051a8;--success-color: #34c759;--warning-color: #ff9500;--danger-color: #ff3b30;--info-color: #5856d6;--bg-primary: #f5f5f7;--bg-secondary: #ffffff;--bg-tertiary: #e5e5ea;--bg-elevated: #ffffff;--text-primary: #1d1d1f;--text-secondary: #86868b;--text-tertiary: #aeaeb2;--text-inverse: #ffffff;--border-color: #d2d2d7;--border-color-light: #e5e5ea;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 12px 40px rgba(0, 0, 0, .15);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--font-xs: 11px;--font-sm: 13px;--font-md: 15px;--font-lg: 17px;--font-xl: 20px;--font-2xl: 24px;--font-3xl: 28px}body{background-color:var(--bg-primary);color:var(--text-primary);font-size:var(--font-md);line-height:1.5}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0003;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#0000004d}::selection{background-color:var(--primary-color);color:var(--text-inverse)}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-col{display:flex;flex-direction:column}.flex-1{flex:1}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.apple-card{background:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow var(--transition-normal)}.apple-card:hover{box-shadow:var(--shadow-md)}.apple-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;font-size:var(--font-md);font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.apple-btn:focus{outline:none}.apple-btn--primary{background:var(--primary-color);color:var(--text-inverse)}.apple-btn--primary:hover{background:var(--primary-color-dark)}.apple-btn--primary:active{transform:scale(.98)}.apple-btn--secondary{background:var(--bg-tertiary);color:var(--text-primary)}.apple-btn--secondary:hover{background:var(--border-color)}.apple-btn--text{background:transparent;color:var(--primary-color)}.apple-btn--text:hover{background:#007aff1a}.apple-btn:disabled{opacity:.5;cursor:not-allowed}.el-button{border-radius:var(--radius-md)!important;font-weight:500!important}.el-button--primary{--el-button-bg-color: var(--primary-color) !important;--el-button-border-color: var(--primary-color) !important}.el-button--primary:hover{--el-button-hover-bg-color: var(--primary-color-dark) !important;--el-button-hover-border-color: var(--primary-color-dark) !important}.el-input__wrapper{border-radius:var(--radius-sm)!important;box-shadow:none!important;border:1px solid var(--border-color)!important}.el-input__wrapper:hover{border-color:var(--primary-color)!important}.el-input__wrapper.is-focus{border-color:var(--primary-color)!important;box-shadow:0 0 0 3px #007aff1a!important}.el-dialog{border-radius:var(--radius-xl)!important;overflow:hidden}.el-dialog .el-dialog__header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-color-light)}.el-dialog .el-dialog__body{padding:var(--spacing-lg)}.el-dialog .el-dialog__footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--border-color-light)}.el-message{border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important}.el-slider__runway{height:4px!important;border-radius:var(--radius-full)!important}.el-slider__bar{height:4px!important;border-radius:var(--radius-full)!important;background:var(--primary-color)!important}.el-slider__button{width:16px!important;height:16px!important;border:2px solid var(--primary-color)!important;box-shadow:var(--shadow-sm)!important}.el-table{--el-table-border-color: var(--border-color-light);--el-table-header-bg-color: var(--bg-primary)}.el-table th.el-table__cell{font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn var(--transition-normal)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp var(--transition-normal)}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-normal)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:all var(--transition-normal)}.slide-enter-from{opacity:0;transform:translate(-20px)}.slide-leave-to{opacity:0;transform:translate(20px)}
