.login-stage{--pane-left-1: #3b7aee;--pane-left-2: #122b73;--pane-left-grad: linear-gradient(135deg, #3b7aee 0%, #122b73 100%);--btn-grad: linear-gradient(135deg, #4a8cf7 0%, #1c4fd9 100%);--bg-form-1: #f4f8fe;--bg-form-2: #e9f0ff;--accent: #1d4ed8;--text-1: #10203f;--text-2: #6b7c99;--text-3: #9aabbf;--border: #d8e3f7;--checkbox-border: #c3d3ec}.login-stage{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:row;background:#0b1220;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,-apple-system,sans-serif;overflow:hidden}.login-stage *{box-sizing:border-box}.login-stage .pane-left{flex:1 1 55%;position:relative;padding:56px 64px;background:var(--pane-left-grad);display:flex;flex-direction:column;gap:32px;overflow:hidden;min-height:100vh}.login-stage .brand-header{position:relative;z-index:3;display:flex;flex-direction:column;gap:24px}.login-stage .brand-row{display:flex;align-items:center;gap:16px}.login-stage .brand-mark{width:52px;height:52px;border-radius:14px;background:#fff;box-shadow:0 4px 14px #00000024;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.login-stage .brand-mark img{width:40px;height:40px;display:block;border-radius:6px}.login-stage .brand-name{font-size:34px;line-height:46px;font-weight:700;color:#fff;letter-spacing:1px}.login-stage .slogan-group{display:flex;flex-direction:column;gap:16px}.login-stage .slogan{font-size:32px;line-height:46px;font-weight:800;background:linear-gradient(180deg,#fff,#d6e3ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#fff;letter-spacing:5px;margin:0}.login-stage .slogan-rule{width:88px;height:4px;border-radius:2px;background:linear-gradient(90deg,#fff,#fff0)}.login-stage .deco{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.login-stage .deco-orbits{position:relative;width:88%;max-width:720px;height:auto;aspect-ratio:624 / 480;z-index:2}.login-stage .deco-bg-logo{filter:blur(1.5px) saturate(1.1)}.login-stage .spin-ring{transform-origin:312px 240px;animation:spin-ring 30s linear infinite}@keyframes spin-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-stage .pane-right{flex:0 0 45%;min-width:480px;background:linear-gradient(135deg,var(--bg-form-1) 0%,var(--bg-form-2) 100%);padding:48px;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh}.login-stage .form-col{width:360px;max-width:100%;display:flex;flex-direction:column;gap:16px}.login-stage .form-title{font-size:30px;line-height:40px;font-weight:700;color:var(--text-1);margin:0}.login-stage .form-sub{font-size:16px;line-height:24px;color:var(--text-2);margin:0}.login-stage .form-fields{width:100%;display:flex;flex-direction:column;gap:14px}.login-stage .field-label{width:100%;font-size:16px;line-height:24px;font-weight:500;color:var(--text-1)}.login-stage .input{width:100%;height:52px;padding:0 16px;border:1px solid var(--border);border-radius:10px;background:#fff;font:inherit;font-size:16px;color:var(--text-1);outline:none;transition:border-color .15s,box-shadow .15s}.login-stage .input::placeholder{color:var(--text-3)}.login-stage .input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1d4ed81f}.login-stage .pwd-wrap{position:relative;width:100%}.login-stage .pwd-wrap .input{padding-right:48px}.login-stage .pwd-eye{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:38px;height:38px;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--text-3);border-radius:8px;cursor:pointer;transition:color .15s,background .15s}.login-stage .pwd-eye:hover{color:var(--text-2);background:#0000000d}.login-stage .pwd-eye.on{color:var(--accent)}.login-stage .pwd-eye svg{width:21px;height:21px}.login-stage .opts-row{width:100%;display:flex;justify-content:space-between;align-items:center}.login-stage .remember{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.login-stage .checkbox{width:18px;height:18px;border:1.5px solid var(--checkbox-border);border-radius:4px;background:#fff;display:inline-block;position:relative;transition:background .15s,border-color .15s}.login-stage .remember input{display:none}.login-stage .remember input:checked+.checkbox{background:var(--accent);border-color:var(--accent)}.login-stage .remember input:checked+.checkbox:after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.login-stage .remember-label{font-size:14px;color:var(--text-2)}.login-stage .forgot-link{font-size:14px;color:var(--accent);text-decoration:none;background:none;border:none;cursor:pointer;padding:0}.login-stage .forgot-link:hover{text-decoration:underline}.login-stage .login-btn{width:100%;height:52px;background:var(--btn-grad);color:#fff;border:none;border-radius:10px;font:inherit;font-size:18px;font-weight:500;letter-spacing:4px;cursor:pointer;box-shadow:0 8px 18px #1c4fd94d;transition:filter .15s,transform .05s,box-shadow .15s}.login-stage .login-btn:hover{filter:brightness(1.06);box-shadow:0 10px 22px #1c4fd95c}.login-stage .login-btn:active{transform:translateY(1px)}.login-stage .login-btn:disabled{background:#a9c4f5;box-shadow:none;cursor:not-allowed}.login-stage .footer-link{font-size:14px;color:#8fa1bc;margin:0}.login-stage .error{color:#dc2626;font-size:13px;margin:0;width:100%}@media (max-width: 1180px){.login-stage{flex-direction:column}.login-stage .pane-left{flex:0 0 auto;min-height:380px;padding:40px 32px}.login-stage .pane-right{flex:1 1 auto;min-width:0;padding:40px 32px}.login-stage .slogan{font-size:24px;letter-spacing:3px}}.ra-root[data-v-97d7734e]{font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif}.ra-bar[data-v-97d7734e]{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e8eefa;border-radius:12px;padding:11px 16px;margin-bottom:16px;cursor:pointer;box-shadow:0 2px 8px #1890ff0f;transition:box-shadow .2s ease}.ra-bar[data-v-97d7734e]:hover{box-shadow:0 4px 14px #1890ff24}.ra-bar-accent[data-v-97d7734e]{width:3px;height:18px;border-radius:2px;background:#1890ff;flex-shrink:0}.ra-bar-kicker[data-v-97d7734e]{font-size:13px;font-weight:700;color:#10203f;flex-shrink:0}.ra-ver[data-v-97d7734e]{font-size:12px;font-weight:600;color:#1890ff;background:#e8f3ff;border-radius:6px;padding:2px 8px;flex-shrink:0;line-height:18px}.ra-bar-title[data-v-97d7734e]{font-size:14px;font-weight:700;color:#10203f;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1}.ra-bar-actions[data-v-97d7734e]{display:flex;align-items:center;gap:6px;flex-shrink:0}.ra-link[data-v-97d7734e]{border:none;background:none;color:#1890ff;font-size:13px;cursor:pointer;padding:2px 4px}.ra-link[data-v-97d7734e]:hover{text-decoration:underline}.ra-close[data-v-97d7734e]{border:none;background:none;color:#9aabbf;font-size:18px;line-height:1;cursor:pointer;padding:0 4px}.ra-close[data-v-97d7734e]:hover{color:#10203f}.ra-mask[data-v-97d7734e]{position:fixed;top:0;right:0;bottom:0;left:0;background:#10203f73;z-index:1000}.ra-drawer[data-v-97d7734e]{position:fixed;top:0;right:0;height:100vh;width:428px;max-width:92vw;background:#fff;z-index:1001;box-shadow:-6px 0 24px #10203f29;display:flex;flex-direction:column}.ra-head[data-v-97d7734e]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eef1f6;flex-shrink:0}.ra-head-title[data-v-97d7734e]{font-size:16px;font-weight:700;color:#10203f}.ra-head-close[data-v-97d7734e]{border:none;background:none;font-size:22px;color:#9aabbf;cursor:pointer;line-height:1}.ra-head-close[data-v-97d7734e]:hover{color:#10203f}.ra-fade-enter-active[data-v-97d7734e],.ra-fade-leave-active[data-v-97d7734e]{transition:opacity .25s ease}.ra-fade-enter-from[data-v-97d7734e],.ra-fade-leave-to[data-v-97d7734e]{opacity:0}.ra-slide-enter-active[data-v-97d7734e],.ra-slide-leave-active[data-v-97d7734e]{transition:transform .28s ease}.ra-slide-enter-from[data-v-97d7734e],.ra-slide-leave-to[data-v-97d7734e]{transform:translate(100%)}.ra-list[data-v-97d7734e]{flex:1;overflow-y:auto;padding:14px}.ra-state[data-v-97d7734e]{text-align:center;color:#9aabbf;font-size:14px;padding:40px 0}.ra-retry[data-v-97d7734e]{color:#1890ff;cursor:pointer;margin-left:8px}.ra-card[data-v-97d7734e]{border:1px solid #eef1f6;border-radius:12px;padding:14px 16px;margin-bottom:12px;cursor:pointer;transition:box-shadow .2s ease,border-color .2s ease}.ra-card[data-v-97d7734e]:hover{border-color:#1890ff;box-shadow:0 4px 14px #1890ff1f}.ra-card-top[data-v-97d7734e]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ra-date[data-v-97d7734e]{font-size:12px;color:#9aabbf}.ra-card-title[data-v-97d7734e]{font-size:15px;font-weight:600;color:#10203f;margin-bottom:6px}.ra-card-summary[data-v-97d7734e]{font-size:13px;color:#6b7c99;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:10px}.ra-tags[data-v-97d7734e]{display:flex;flex-wrap:wrap;gap:6px}.ra-tag[data-v-97d7734e]{font-size:12px;border-radius:5px;padding:2px 8px;line-height:18px}.ra-tag.t-0[data-v-97d7734e]{color:#1890ff;background:#e8f3ff}.ra-tag.t-1[data-v-97d7734e]{color:#22a45d;background:#e8f7ee}.ra-tag.t-2[data-v-97d7734e]{color:#eb7b1d;background:#fff3e6}.ra-tag.t-3[data-v-97d7734e]{color:#7c5ce0;background:#f3eefe}.ra-detail[data-v-97d7734e]{flex:1;overflow-y:auto;padding:16px 20px}.ra-back[data-v-97d7734e]{border:none;background:none;color:#1890ff;font-size:13px;cursor:pointer;padding:0 0 12px}.ra-back[data-v-97d7734e]:hover{text-decoration:underline}.ra-det-head[data-v-97d7734e]{display:flex;align-items:center;gap:10px;margin-bottom:10px}.ra-det-title[data-v-97d7734e]{font-size:18px;font-weight:700;color:#10203f;margin:0 0 12px;line-height:1.4}.ra-groups[data-v-97d7734e]{margin-top:18px}.ra-group[data-v-97d7734e]{margin-bottom:18px}.ra-group-title[data-v-97d7734e]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;margin:0 0 10px;color:#10203f}.ra-group-dot[data-v-97d7734e]{width:8px;height:8px;border-radius:50%}.ra-group-title.gc-add[data-v-97d7734e]{color:#16814a}.ra-group-title.gc-add .ra-group-dot[data-v-97d7734e]{background:#22a45d}.ra-group-title.gc-opt[data-v-97d7734e]{color:#1668c0}.ra-group-title.gc-opt .ra-group-dot[data-v-97d7734e]{background:#1890ff}.ra-group-title.gc-fix[data-v-97d7734e]{color:#c05a10}.ra-group-title.gc-fix .ra-group-dot[data-v-97d7734e]{background:#eb7b1d}.ra-group-list[data-v-97d7734e]{margin:0;padding:0;list-style:none}.ra-item[data-v-97d7734e]{position:relative;font-size:13.5px;color:#3d4c66;line-height:1.6;padding-left:14px;margin-bottom:8px}.ra-item[data-v-97d7734e]:before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:2px;background:#c9d4e4}.ra-footnote[data-v-97d7734e]{margin-top:20px;padding-top:14px;border-top:1px dashed #eef1f6;font-size:12px;color:#9aabbf}.portal[data-v-f3f3c4a1]{height:100vh;display:flex;flex-direction:row;overflow:hidden;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,Hiragino Sans GB,system-ui,-apple-system,Segoe UI,sans-serif;color:#10203f;-webkit-font-smoothing:antialiased}.sidebar[data-v-f3f3c4a1]{width:264px;flex:0 0 264px;background:linear-gradient(170deg,#2563d9,#0f2470);display:flex;flex-direction:column;transition:margin-left .25s ease}.portal.collapsed .sidebar[data-v-f3f3c4a1]{margin-left:-264px}.portal.module-open .sidebar[data-v-f3f3c4a1],.portal.module-open .top-header[data-v-f3f3c4a1]{display:none}.portal.module-open .main-area[data-v-f3f3c4a1]{width:100%}.sidebar-brand[data-v-f3f3c4a1]{display:flex;align-items:center;gap:11px;padding:22px 20px}.sb-logo[data-v-f3f3c4a1]{width:40px;height:40px;border-radius:10px;background:#fff;padding:3px;object-fit:contain;flex-shrink:0}.sb-text[data-v-f3f3c4a1]{display:flex;flex-direction:column;min-width:0;line-height:1.2}.sb-title[data-v-f3f3c4a1]{font-size:21px;font-weight:700;color:#fff}.sb-subtitle[data-v-f3f3c4a1]{font-size:13px;font-weight:400;color:#c3d4f2;margin-top:3px;letter-spacing:.5px;white-space:nowrap}.sidebar-nav[data-v-f3f3c4a1]{flex:1;padding:12px;display:flex;flex-direction:column;gap:6px;overflow-y:auto}.nav-item[data-v-f3f3c4a1]{display:flex;align-items:center;gap:11px;width:100%;height:48px;padding:12px;text-align:left;border:none;background:transparent;border-radius:10px;color:#c9d6f2;font-size:15px;font-weight:500;line-height:1.4;cursor:pointer;transition:background .18s,color .18s}.nav-ico[data-v-f3f3c4a1]{flex:0 0 18px;width:18px;height:18px;display:block}.nav-label[data-v-f3f3c4a1]{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-item[data-v-f3f3c4a1]:hover{background:#ffffff14;color:#fff}.nav-item.active[data-v-f3f3c4a1]{background:#fff;color:#1d4ed8}.main-area[data-v-f3f3c4a1]{flex:1;min-width:0;display:flex;flex-direction:column}.top-header[data-v-f3f3c4a1]{height:64px;flex:0 0 64px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 16px;box-shadow:0 2px 8px #0f224d0d;position:relative;z-index:2}.menu-btn[data-v-f3f3c4a1]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;border-radius:8px;cursor:pointer;flex-shrink:0;transition:background .18s}.menu-btn[data-v-f3f3c4a1]:hover{background:#f4f8fe}.top-left[data-v-f3f3c4a1]{display:flex;align-items:center;gap:14px}.page-title[data-v-f3f3c4a1]{font-size:15px;font-weight:600;color:#10203f;line-height:1.5;white-space:nowrap}.search-box[data-v-f3f3c4a1]{display:flex;align-items:center;gap:8px;width:300px;max-width:40vw;height:32px;padding:0 12px;background:#f4f8fe;border-radius:16px;color:#8a97a8;transition:box-shadow .18s,background .18s}.search-box[data-v-f3f3c4a1]:focus-within,.search-box[data-v-f3f3c4a1]:hover{background:#eef4fe;box-shadow:inset 0 0 0 1px #d8e3f7}.search-ico[data-v-f3f3c4a1]{flex-shrink:0}.search-box input[data-v-f3f3c4a1]{flex:1;min-width:0;border:none;background:transparent;outline:none;font:inherit;font-size:13px;color:#10203f}.search-box input[data-v-f3f3c4a1]::placeholder{color:#8a97a8}.search-clear[data-v-f3f3c4a1]{border:none;background:transparent;font-size:18px;line-height:1;color:#8a97a8;cursor:pointer;padding:0 4px}.search-clear[data-v-f3f3c4a1]:hover{color:#10203f}.header-right[data-v-f3f3c4a1]{display:flex;align-items:center;gap:18px;margin-left:auto}.bell[data-v-f3f3c4a1]{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:8px;cursor:pointer;transition:background .18s}.bell[data-v-f3f3c4a1]:hover{background:#f4f8fe}.bell-dot[data-v-f3f3c4a1]{position:absolute;top:3px;right:4px;width:7px;height:7px;border-radius:50%;background:#f26b1d;border:1.5px solid #fff}.user-menu[data-v-f3f3c4a1]{position:relative}.user-trigger[data-v-f3f3c4a1]{display:flex;align-items:center;gap:8px;height:40px;padding:0 10px 0 4px;border:1px solid transparent;background:transparent;border-radius:20px;cursor:pointer;transition:background .18s,border-color .18s}.user-trigger[data-v-f3f3c4a1]:hover,.user-trigger.open[data-v-f3f3c4a1]{background:#f4f8fe;border-color:#d8e3f7}.ut-avatar[data-v-f3f3c4a1]{width:32px;height:32px;border-radius:50%;background:#1d4ed8;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ut-name[data-v-f3f3c4a1]{font-size:13px;font-weight:500;color:#10203f;line-height:1.5;max-width:96px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ut-caret[data-v-f3f3c4a1]{display:flex;flex-shrink:0;transition:transform .2s}.user-trigger.open .ut-caret[data-v-f3f3c4a1]{transform:rotate(180deg)}.user-dropdown[data-v-f3f3c4a1]{position:absolute;top:calc(100% + 8px);right:0;width:216px;background:#fff;border:1px solid #e4ebf7;border-radius:12px;box-shadow:0 12px 32px #0f224d1f;padding:14px;z-index:60}.ud-head[data-v-f3f3c4a1]{display:flex;align-items:center;gap:10px}.ud-avatar[data-v-f3f3c4a1]{width:38px;height:38px;border-radius:50%;background:#1d4ed8;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ud-info[data-v-f3f3c4a1]{min-width:0;line-height:1.5}.ud-name[data-v-f3f3c4a1]{font-size:14px;font-weight:500;color:#10203f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ud-account[data-v-f3f3c4a1]{font-size:12px;color:#6b7c99;font-variant-numeric:tabular-nums}.ud-role-row[data-v-f3f3c4a1]{margin-top:10px}.ud-role[data-v-f3f3c4a1]{display:inline-block;font-size:12px;line-height:1.5;color:#1d4ed8;background:#e8f0fe;padding:2px 10px;border-radius:999px}.ud-divider[data-v-f3f3c4a1]{height:1px;background:#e4ebf7;margin:12px -14px}.ud-logout[data-v-f3f3c4a1]{display:flex;align-items:center;gap:8px;width:100%;height:36px;padding:0 10px;border:none;background:transparent;border-radius:8px;font-size:13px;line-height:1.5;color:#a32d2d;cursor:pointer;transition:background .15s}.ud-logout[data-v-f3f3c4a1]:hover{background:#fcebeb}.ud-logout svg[data-v-f3f3c4a1]{flex-shrink:0}.drop-enter-active[data-v-f3f3c4a1],.drop-leave-active[data-v-f3f3c4a1]{transition:opacity .18s,transform .18s}.drop-enter-from[data-v-f3f3c4a1],.drop-leave-to[data-v-f3f3c4a1]{opacity:0;transform:translateY(-6px)}.view[data-v-f3f3c4a1]{flex:1;min-height:0;display:flex;flex-direction:column;background:#f4f8fe}.content[data-v-f3f3c4a1]{flex:1;overflow-y:auto;padding:36px 52px;display:flex;flex-direction:column;gap:24px;align-items:center}.content[data-v-f3f3c4a1]>*{width:100%;max-width:1180px}.greet-panel[data-v-f3f3c4a1]{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:26px 28px;border-radius:16px;background:linear-gradient(90deg,#edf5ff,#fafcff);border:1px solid #e0ebfa}.greet-title[data-v-f3f3c4a1]{font-size:21px;font-weight:600;color:#3d4e70;line-height:1.5}.greet-date[data-v-f3f3c4a1]{font-size:13px;color:#8494ac;line-height:1.6;margin-top:6px;font-variant-numeric:tabular-nums}.greet-motto[data-v-f3f3c4a1]{font-size:14px;color:#7e90ac;white-space:nowrap;letter-spacing:.3px}.section[data-v-f3f3c4a1]{display:flex;flex-direction:column;gap:12px}.section-head[data-v-f3f3c4a1]{display:flex;align-items:center;gap:8px}.section-bar[data-v-f3f3c4a1]{width:3px;height:16px;border-radius:2px;background:#2563d9;flex-shrink:0}.section-title[data-v-f3f3c4a1]{font-size:15px;font-weight:600;color:#10203f;line-height:1.5}.section-count[data-v-f3f3c4a1]{display:flex;align-items:center;height:20px;padding:0 10px;border-radius:10px;background:#eef3fc;font-size:11px;color:#6b7c99;font-variant-numeric:tabular-nums}.cards-grid[data-v-f3f3c4a1]{display:flex;flex-wrap:wrap;gap:14px}.mod-card[data-v-f3f3c4a1]{display:flex;align-items:center;gap:12px;width:274px;flex:0 0 274px;height:64px;padding:11px;background:#fff;border:1px solid #e4ebf7;border-radius:12px;cursor:pointer;transition:box-shadow .2s,transform .2s,border-color .2s,background .2s}.mod-card[data-v-f3f3c4a1]:hover{border-color:#d8e3f7;transform:translateY(-1px);box-shadow:0 8px 20px #1d4ed814}.mod-card[data-v-f3f3c4a1]:active{transform:translateY(0)}.mod-card.recent[data-v-f3f3c4a1]{background:#f1f7ff;border-color:#dce8fb}.mod-card.recent[data-v-f3f3c4a1]:hover{background:#ecf3fe;border-color:#cddff8}.mod-icon[data-v-f3f3c4a1]{width:42px;height:42px;flex:0 0 42px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#fff;flex-shrink:0;transition:transform .22s ease}.mod-card:hover .mod-icon[data-v-f3f3c4a1]{transform:scale(1.04)}.m-icon[data-v-f3f3c4a1]{display:block;overflow:visible;flex-shrink:0}.mod-name[data-v-f3f3c4a1]{flex:1;min-width:0;font-size:14px;font-weight:500;color:#10203f;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mod-arrow[data-v-f3f3c4a1]{flex:0 0 16px;display:flex;flex-shrink:0;transition:transform .2s}.mod-card:hover .mod-arrow[data-v-f3f3c4a1]{transform:translate(3px)}.mod-card.unlinked[data-v-f3f3c4a1]{background:#f4f6fa;border-color:#e6ebf3}.mod-card.unlinked[data-v-f3f3c4a1]:hover{background:#f4f6fa;border-color:#dbe3ee;box-shadow:none;transform:none}.mod-card.unlinked .mod-icon[data-v-f3f3c4a1]{filter:grayscale(.55);opacity:.75}.mod-card.unlinked .mod-name[data-v-f3f3c4a1]{color:#8a99b3;font-weight:500}.mod-card.unlinked .mod-arrow[data-v-f3f3c4a1]{opacity:.5}.mod-tag[data-v-f3f3c4a1]{flex-shrink:0;font-size:11px;line-height:1.5;color:#96a3b8;background:#eaeff6;border-radius:4px;padding:1px 6px;white-space:nowrap}.mod-card.skeleton[data-v-f3f3c4a1]{cursor:default;gap:12px}.mod-card.skeleton[data-v-f3f3c4a1]:hover{transform:none;box-shadow:none;border-color:#e4ebf7;background:#fff}.sk-icon[data-v-f3f3c4a1]{width:42px;height:42px;border-radius:10px;background:#f4f8fe;flex-shrink:0}.sk-line[data-v-f3f3c4a1]{height:12px;border-radius:6px;background:#eef0f3}.sk-line.w60[data-v-f3f3c4a1]{width:60%;height:14px}.sk-title[data-v-f3f3c4a1]{width:120px;height:16px;border-radius:6px;background:#eef0f3}.mod-card.skeleton .sk-icon[data-v-f3f3c4a1],.mod-card.skeleton .sk-line[data-v-f3f3c4a1],.sk-title[data-v-f3f3c4a1]{background:linear-gradient(90deg,#eef0f3 25%,#e3e6ea 37%,#eef0f3 63%);background-size:400% 100%;animation:shimmer-f3f3c4a1 1.3s ease infinite}@keyframes shimmer-f3f3c4a1{0%{background-position:100% 0}to{background-position:-100% 0}}.state[data-v-f3f3c4a1]{background:#f7faff;border:1px dashed #d8e3f7;border-radius:14px;padding:48px 24px;text-align:center}.state-icon[data-v-f3f3c4a1]{width:48px;height:48px;border-radius:50%;background:#fcebeb;color:#a32d2d;font-size:22px;font-weight:500;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}.state-msg[data-v-f3f3c4a1]{color:#8a99b3;font-size:13px;font-weight:400;line-height:1.6;margin-bottom:18px}.state-actions[data-v-f3f3c4a1]{display:flex;gap:12px;justify-content:center}.btn-primary[data-v-f3f3c4a1],.btn-ghost[data-v-f3f3c4a1]{height:38px;padding:0 20px;border-radius:8px;font-size:13px;font-weight:400;line-height:1.5;transition:all .2s}.btn-primary[data-v-f3f3c4a1]{border:none;background:#1d4ed8;color:#fff}.btn-primary[data-v-f3f3c4a1]:hover{background:#1e49d6}.btn-ghost[data-v-f3f3c4a1]{border:1px solid #e4ebf7;background:#fff;color:#6b7c99}.btn-ghost[data-v-f3f3c4a1]:hover{border-color:#1d4ed8;color:#1d4ed8}.stage-header[data-v-f3f3c4a1]{height:52px;flex-shrink:0;background:#fff;border-bottom:1px solid #e4ebf7;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.stage-left[data-v-f3f3c4a1]{display:flex;align-items:center;gap:16px;min-width:0}.back-btn[data-v-f3f3c4a1]{height:32px;padding:0 14px;border:1px solid #e4ebf7;border-radius:8px;background:#fff;color:#6b7c99;font-size:13px;font-weight:400;line-height:1.5;cursor:pointer;flex-shrink:0;transition:all .2s}.back-btn[data-v-f3f3c4a1]:hover{border-color:#1d4ed8;color:#1d4ed8;background:#1d4ed80f}.stage-title[data-v-f3f3c4a1]{font-size:15px;font-weight:500;color:#10203f;line-height:1.5}.open-new[data-v-f3f3c4a1]{height:32px;padding:0 14px;border:1px solid #e4ebf7;border-radius:8px;background:#fff;color:#1d4ed8;font-size:13px;font-weight:400;line-height:1.5;cursor:pointer;transition:all .2s}.open-new[data-v-f3f3c4a1]:hover{border-color:#1d4ed8;background:#1d4ed80f}.module-frame[data-v-f3f3c4a1]{flex:1;min-height:0;border:none;background:#fff;display:block}.toast[data-v-f3f3c4a1]{position:fixed;left:50%;bottom:40px;transform:translate(-50%);background:#1f2329e6;color:#fff;font-size:13px;padding:10px 18px;border-radius:8px;z-index:100}.fade-enter-active[data-v-f3f3c4a1],.fade-leave-active[data-v-f3f3c4a1]{transition:opacity .25s,transform .25s}.fade-enter-from[data-v-f3f3c4a1],.fade-leave-to[data-v-f3f3c4a1]{opacity:0;transform:translate(-50%) translateY(8px)}.content[data-v-f3f3c4a1]::-webkit-scrollbar,.sidebar-nav[data-v-f3f3c4a1]::-webkit-scrollbar{width:8px}.content[data-v-f3f3c4a1]::-webkit-scrollbar-thumb,.sidebar-nav[data-v-f3f3c4a1]::-webkit-scrollbar-thumb{background:#d5e1f5;border-radius:4px}.content[data-v-f3f3c4a1]::-webkit-scrollbar-track,.sidebar-nav[data-v-f3f3c4a1]::-webkit-scrollbar-track{background:transparent}@media (max-width: 1240px){.mod-card[data-v-f3f3c4a1],.mod-card.recent[data-v-f3f3c4a1]{width:calc(50% - 7px);flex:0 0 calc(50% - 7px)}}@media (max-width: 980px){.search-box[data-v-f3f3c4a1]{width:200px}.greet-motto[data-v-f3f3c4a1],.ut-name[data-v-f3f3c4a1],.ut-caret[data-v-f3f3c4a1]{display:none}.user-trigger[data-v-f3f3c4a1]{padding:0 3px}}@media (max-width: 760px){.sidebar[data-v-f3f3c4a1]{width:72px;flex:0 0 72px}.portal.collapsed .sidebar[data-v-f3f3c4a1]{margin-left:-72px}.sb-text[data-v-f3f3c4a1]{display:none}.sidebar-brand[data-v-f3f3c4a1]{justify-content:center;padding:14px 0}.nav-item[data-v-f3f3c4a1]{justify-content:center;gap:0;padding:14px 0}.nav-label[data-v-f3f3c4a1]{display:none}.mod-card[data-v-f3f3c4a1],.mod-card.recent[data-v-f3f3c4a1]{width:100%;flex:0 0 100%}.content[data-v-f3f3c4a1]{padding:20px}}:root{--brand: #4f6ef7;--brand-2: #7c5cf0;--brand-grad: linear-gradient(135deg, #4f6ef7 0%, #7c5cf0 100%);--text: #1f2329;--text-2: #4e5969;--text-3: #86909c;--bg: #f5f7fa;--card: #ffffff;--border: #eaecef;--danger: #f53f3f;--shadow-sm: 0 2px 8px rgba(31, 35, 41, .06);--shadow-md: 0 8px 24px rgba(31, 35, 41, .1);--shadow-lg: 0 16px 48px rgba(79, 110, 247, .18)}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#d4d7de;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#c0c4cc}
