.mobile-drawer[data-v-14ea09bc]{position:fixed;inset:0;z-index:var(--z-modal);display:flex}.mobile-overlay[data-v-14ea09bc]{position:absolute;inset:0;background:#0f172a66;backdrop-filter:blur(2px)}.mobile-panel[data-v-14ea09bc]{position:relative;width:280px;max-width:85vw;height:100%;display:flex;flex-direction:column;background:var(--color-bg-surface);box-shadow:var(--shadow-popup)}.mobile-header[data-v-14ea09bc]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:var(--border-default);flex-shrink:0}.mobile-logo[data-v-14ea09bc]{display:flex;align-items:center;gap:var(--space-2)}.mobile-logo__text[data-v-14ea09bc]{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900)}.mobile-close[data-v-14ea09bc]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;color:var(--color-gray-500);cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast),color var(--transition-fast)}.mobile-close[data-v-14ea09bc]:hover{background:var(--color-bg-hover);color:var(--color-gray-900)}.mobile-nav[data-v-14ea09bc]{flex:1;overflow-y:auto;padding:var(--space-2);min-width:0}.mobile-nav-item[data-v-14ea09bc]{display:block;width:100%;padding:var(--space-2) var(--space-3);border:none;background:none;color:var(--color-gray-600);font-size:var(--text-base);text-align:left;cursor:pointer;border-radius:var(--radius-md);transition:background-color var(--transition-fast),color var(--transition-fast);margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-nav-item[data-v-14ea09bc]:hover{background:var(--color-bg-hover)}.mobile-nav-item.is-active[data-v-14ea09bc]{color:var(--color-primary-500);background:var(--color-primary-50);font-weight:var(--font-medium)}.mobile-footer[data-v-14ea09bc]{flex-shrink:0;padding:var(--space-3) var(--space-4);border-top:var(--border-default);background:var(--color-gray-50)}.mobile-user[data-v-14ea09bc]{display:flex;align-items:center;gap:var(--space-2);min-width:0}.mobile-avatar[data-v-14ea09bc]{width:32px;height:32px;border-radius:50%;background:var(--color-primary-500);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:var(--font-medium);flex-shrink:0}.mobile-user-info[data-v-14ea09bc]{display:flex;flex-direction:column;gap:1px;min-width:0}.mobile-user-name[data-v-14ea09bc]{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-user-role[data-v-14ea09bc]{font-size:var(--text-xs);color:var(--color-gray-500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slide-fade-enter-active[data-v-14ea09bc],.slide-fade-leave-active[data-v-14ea09bc]{transition:all .25s var(--ease-out)}.slide-fade-enter-from[data-v-14ea09bc],.slide-fade-leave-to[data-v-14ea09bc]{opacity:0}.slide-fade-enter-from .mobile-panel[data-v-14ea09bc],.slide-fade-leave-to .mobile-panel[data-v-14ea09bc]{transform:translate(-100%)}.shell-nav[data-v-1af4e453]{display:flex;min-height:0;height:100%}.rail[data-v-1af4e453]{width:var(--rail-width);padding:14px 0;background:var(--color-bg-surface);border-right:var(--border-default);display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.rail-logo[data-v-1af4e453]{width:28px;height:28px;margin-bottom:10px;border:none;border-radius:7px;background:var(--color-primary-500);color:var(--color-gray-0);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast)}.rail-logo[data-v-1af4e453]:hover{background:var(--color-primary-600);transform:translateY(-1px)}.rail-items[data-v-1af4e453],.rail-bottom[data-v-1af4e453]{display:flex;flex-direction:column;align-items:center;gap:4px}.rail-bottom[data-v-1af4e453]{margin-top:auto;position:relative}.rail-item[data-v-1af4e453]{position:relative;width:36px;height:36px;border:none;border-radius:8px;background:transparent;color:var(--color-gray-500);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.rail-item[data-v-1af4e453]:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:#1f2128;color:#fff;font-size:12px;font-weight:400;white-space:nowrap;padding:5px 9px;border-radius:4px;box-shadow:0 2px 8px #00000026;pointer-events:none;opacity:0;transition:opacity var(--transition-fast);z-index:var(--z-tooltip)}.rail-item[data-v-1af4e453]:hover:not(.active){background:var(--color-bg-hover);color:var(--color-gray-900)}.rail-item[data-v-1af4e453]:hover:after{opacity:1}.rail-item.active[data-v-1af4e453]{background:var(--color-primary-50);color:var(--color-primary-500)}.rail-item.active[data-v-1af4e453]:after{background:var(--color-primary-500)}.rail-user-wrap[data-v-1af4e453]{position:relative}.rail-avatar[data-v-1af4e453]{width:28px;height:28px;border:none;border-radius:50%;background:var(--color-primary-500);color:var(--color-gray-0);font-size:11px;font-weight:var(--font-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast)}.rail-avatar[data-v-1af4e453]:hover{background:var(--color-primary-600);transform:translateY(-1px)}.rail-user-menu[data-v-1af4e453]{position:absolute;left:calc(100% + 12px);bottom:0;width:208px;background:var(--color-bg-surface);border:var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-popup);overflow:hidden;z-index:var(--z-dropdown)}.user-menu-header[data-v-1af4e453]{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:var(--border-default)}.user-menu-avatar[data-v-1af4e453]{width:30px;height:30px;border-radius:50%;background:var(--color-primary-500);color:var(--color-gray-0);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:var(--font-medium);flex-shrink:0}.user-menu-copy[data-v-1af4e453]{min-width:0}.user-menu-name[data-v-1af4e453]{color:var(--color-gray-900);font-size:var(--text-base);font-weight:var(--font-medium);line-height:1.3}.user-menu-role[data-v-1af4e453]{margin-top:2px;color:var(--color-gray-500);font-size:var(--text-sm);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-item[data-v-1af4e453]{width:100%;padding:8px 16px;border:none;background:transparent;color:var(--color-gray-700);font-size:var(--text-base);text-align:left;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.user-menu-item[data-v-1af4e453]:hover{background:var(--color-bg-hover);color:var(--color-gray-900)}.user-menu-item--danger[data-v-1af4e453]{color:var(--color-danger-500)}.user-menu-item--danger[data-v-1af4e453]:hover{background:var(--color-danger-bg);color:var(--color-danger-text)}.sidebar[data-v-1af4e453]{width:var(--sidebar-width);background:var(--color-bg-sunken);border-right:var(--border-default);padding:16px 0;flex-shrink:0;min-height:0}.sidebar-scroll[data-v-1af4e453]{height:100%;overflow-y:auto;overflow-x:hidden}.sidebar-section+.sidebar-section[data-v-1af4e453]{margin-top:16px}.sidebar-title[data-v-1af4e453]{padding:0 14px 8px;font-size:11px;color:var(--color-gray-400);letter-spacing:.6px;text-transform:uppercase}.sidebar-item[data-v-1af4e453]{width:100%;padding:7px 14px;border:none;background:transparent;color:var(--color-gray-600);font-size:12.5px;line-height:1.35;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.sidebar-item[data-v-1af4e453]:hover{background:#f0f0f4}.sidebar-item.active[data-v-1af4e453]{margin-right:10px;border-radius:0 20px 20px 0;background:var(--color-primary-50);color:var(--color-primary-500);font-weight:var(--font-medium)}.fade-enter-active[data-v-1af4e453],.fade-leave-active[data-v-1af4e453]{transition:opacity .15s ease,transform .15s ease}.fade-enter-from[data-v-1af4e453],.fade-leave-to[data-v-1af4e453]{opacity:0;transform:translateY(4px)}@media (max-width: 1024px){.shell-nav[data-v-1af4e453]{display:none}}.tags-view[data-v-b57467b4]{width:100%;height:100%;display:flex;align-items:center;overflow:hidden}.tags-view-wrapper[data-v-b57467b4]{height:100%;display:flex;align-items:center;gap:var(--space-1);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.tags-view-wrapper[data-v-b57467b4]::-webkit-scrollbar{display:none}.tab[data-v-b57467b4]{height:100%;display:flex;align-items:center;gap:var(--space-1);padding:0 var(--space-2);color:var(--color-gray-600);font-size:var(--text-sm);line-height:1.2;cursor:pointer;flex-shrink:0;white-space:nowrap;transition:background-color var(--transition-fast),color var(--transition-fast)}.tab[data-v-b57467b4]:hover{color:var(--color-gray-900)}.tab.active[data-v-b57467b4]{height:26px;margin:6px 2px;border-radius:var(--radius-md);background:#f2f1fc;color:var(--color-gray-900);font-weight:var(--font-medium)}.tab-title[data-v-b57467b4]{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-close[data-v-b57467b4]{width:12px;height:12px;padding:0;border:none;background:transparent;color:var(--color-gray-400);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color var(--transition-fast)}.tab-close[data-v-b57467b4]:hover{color:var(--color-gray-900)}.app-layout[data-v-f6e530bf]{display:flex;width:100%;min-width:var(--app-min-width);height:100vh;overflow-x:auto;overflow-y:hidden;background:var(--color-bg-page)}.main[data-v-f6e530bf]{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--color-bg-page)}.mobile-header[data-v-f6e530bf]{display:none}.tabbar[data-v-f6e530bf]{height:var(--tabbar-height);padding:0 20px;background:var(--color-bg-surface);border-bottom:var(--border-default);display:flex;align-items:center;flex-shrink:0;position:relative;z-index:var(--z-tabbar)}.content-area[data-v-f6e530bf]{flex:1;min-height:0;padding:var(--content-padding);background:var(--color-bg-page)}.content-scroll[data-v-f6e530bf]{width:100%;height:100%;overflow:auto;display:flex;flex-direction:column;gap:var(--space-6)}.content-scroll[data-v-f6e530bf]>*{width:100%;max-width:none;margin:0}.announcement-modal-overlay[data-v-f6e530bf]{position:fixed;inset:0;background:#11131866;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-mask)}.announcement-modal[data-v-f6e530bf]{width:min(560px,calc(100vw - 32px));background:var(--color-bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:modalIn-f6e530bf .18s ease}@keyframes modalIn-f6e530bf{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal-header[data-v-f6e530bf]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);border-bottom:var(--border-default)}.modal-title[data-v-f6e530bf]{display:flex;align-items:center;gap:8px;font-size:var(--text-lg);font-weight:var(--font-medium);color:var(--color-gray-900)}.title-icon[data-v-f6e530bf]{color:var(--color-primary-500)}.modal-close[data-v-f6e530bf]{width:32px;height:32px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-gray-500);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.modal-close[data-v-f6e530bf]:hover{background:var(--color-bg-hover);color:var(--color-gray-900)}.modal-body[data-v-f6e530bf]{padding:var(--space-6)}.announcement-type[data-v-f6e530bf]{display:inline-flex;align-items:center;border-radius:var(--radius-full);padding:2px 10px;font-size:var(--text-xs);margin-bottom:12px}.type-info[data-v-f6e530bf]{background:var(--color-info-bg);color:var(--color-info-text)}.type-warning[data-v-f6e530bf]{background:var(--color-warning-bg);color:var(--color-warning-text)}.type-important[data-v-f6e530bf]{background:var(--color-danger-bg);color:var(--color-danger-text)}.type-update[data-v-f6e530bf]{background:var(--color-success-bg);color:var(--color-success-text)}.announcement-title[data-v-f6e530bf]{margin:0 0 12px;font-size:var(--text-xl);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--color-gray-900)}.announcement-content[data-v-f6e530bf]{color:var(--color-gray-700);font-size:var(--text-base);line-height:var(--leading-normal);white-space:pre-wrap;word-break:break-word}.announcement-meta[data-v-f6e530bf]{margin-top:16px;padding-top:12px;border-top:var(--border-default)}.publish-time[data-v-f6e530bf]{color:var(--color-gray-500);font-size:var(--text-sm)}.modal-footer[data-v-f6e530bf]{display:flex;justify-content:flex-end;gap:8px;padding:0 var(--space-6) var(--space-6);border-top:var(--border-default)}.btn-primary[data-v-f6e530bf]{min-height:32px;padding:7px 16px;border:none;border-radius:var(--radius-md);background:var(--color-primary-500);color:var(--color-gray-0);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:background-color var(--transition-fast)}.btn-primary[data-v-f6e530bf]:hover{background:var(--color-primary-600)}.modal-enter-active[data-v-f6e530bf],.modal-leave-active[data-v-f6e530bf]{transition:opacity .18s ease}.modal-enter-from[data-v-f6e530bf],.modal-leave-to[data-v-f6e530bf]{opacity:0}@media (max-width: 1024px){.app-layout[data-v-f6e530bf]{display:block}.mobile-header[data-v-f6e530bf]{height:44px;padding:0 20px;background:var(--color-bg-surface);border-bottom:var(--border-default);display:flex;align-items:center;justify-content:space-between;gap:8px}.mobile-header__button[data-v-f6e530bf]{width:32px;height:32px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-gray-700);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.mobile-header__title[data-v-f6e530bf]{flex:1;min-width:0;text-align:center;color:var(--color-gray-900);font-size:var(--text-base);font-weight:var(--font-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tabbar[data-v-f6e530bf]{padding:0 20px}.content-area[data-v-f6e530bf]{padding:16px 20px}}.pagination-bar[data-v-b15632ad]{width:100%;flex-shrink:0}.pagination-bar.is-sticky[data-v-b15632ad]{position:sticky;bottom:0;background:var(--el-bg-color);border-top:1px solid var(--el-border-color-lighter);margin-top:var(--space-3);padding:var(--space-2_5) 0;z-index:5}.pagination-inner[data-v-b15632ad]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.pagination-info[data-v-b15632ad]{font-size:var(--text-sm);color:var(--el-text-color-secondary);white-space:nowrap}.pagination-info strong[data-v-b15632ad]{color:var(--el-text-color-primary);font-weight:var(--weight-semibold)}@media (max-width: 768px){.pagination-inner[data-v-b15632ad]{flex-direction:column;align-items:stretch;gap:var(--space-2)}.pagination-info[data-v-b15632ad]{text-align:center}}.filter-history[data-v-58551910]{display:inline-block}.history-list[data-v-58551910]{max-height:400px;overflow-y:auto}.loading-state[data-v-58551910],.empty-state[data-v-58551910]{padding:var(--space-10) 0;text-align:center;color:var(--el-text-color-secondary)}.loading-state[data-v-58551910]{display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.history-items[data-v-58551910]{display:flex;flex-direction:column;gap:var(--space-3)}.history-item[data-v-58551910]{padding:var(--space-3);border:1px solid var(--el-border-color-lighter);border-radius:var(--radius-md);transition:all var(--duration-fast) var(--ease-out)}.history-item[data-v-58551910]:hover{border-color:var(--color-primary-100);box-shadow:0 0 0 1px var(--color-primary-100)}.history-item-header[data-v-58551910]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.history-name[data-v-58551910]{font-weight:var(--weight-medium);color:var(--el-text-color-primary)}.history-params[data-v-58551910]{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-2)}.history-footer[data-v-58551910]{display:flex;justify-content:space-between;align-items:center}.history-time[data-v-58551910]{font-size:var(--text-xs);color:var(--el-text-color-secondary)}
