*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,sans-serif}.layout{display:flex;min-height:100vh;background:#edeef3}.sidebar{width:160px;background:#fff;border-radius:0 16px 16px 0;padding:0;display:flex;flex-direction:column;box-shadow:2px 0 12px #0000000a;position:fixed;top:0;left:0;bottom:0;z-index:100}.logo{padding:20px 16px 16px;display:flex;align-items:center;gap:8px}.logo-img{width:28px;height:28px;border-radius:6px}.logo-text{font-size:16px;font-weight:700;color:#333}nav{flex:1;padding:0 8px;overflow-y:auto}.nav-section-title{padding:14px 12px 6px;font-size:11px;font-weight:600;color:#999;letter-spacing:1px;-webkit-user-select:none;user-select:none}.nav-section-title:first-child{padding-top:4px}.nav-item{display:flex;align-items:center;gap:8px;padding:10px 12px;margin-bottom:2px;border-radius:8px;color:#666;text-decoration:none;font-size:14px;transition:all .2s;position:relative}.nav-item:hover{background:#f0f1f8;color:#333}.nav-item.router-link-exact-active,.nav-item.router-link-active[href="/testing"],.nav-item.router-link-active[href="/requirements"],.nav-item.router-link-active[href="/tasks"],.nav-item.router-link-active[href="/versions"],.nav-item.router-link-active[href="/servers"],.nav-item.router-link-active[href="/project-details"],.nav-item.router-link-active[href="/external-apis"],.nav-item.router-link-active[href="/project-management"],.nav-item.router-link-active[href="/flowchart"],.nav-item.router-link-active[href="/dev-management"],.nav-item.router-link-active[href="/stage-templates"]{background:#f0f1f8;color:#5c6bc0;font-weight:500}.nav-item.router-link-exact-active:before,.nav-item.router-link-active[href="/testing"]:before,.nav-item.router-link-active[href="/requirements"]:before,.nav-item.router-link-active[href="/tasks"]:before,.nav-item.router-link-active[href="/versions"]:before,.nav-item.router-link-active[href="/servers"]:before,.nav-item.router-link-active[href="/project-details"]:before,.nav-item.router-link-active[href="/external-apis"]:before,.nav-item.router-link-active[href="/project-management"]:before,.nav-item.router-link-active[href="/flowchart"]:before,.nav-item.router-link-active[href="/dev-management"]:before,.nav-item.router-link-active[href="/stage-templates"]:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:#5c6bc0;border-radius:0 2px 2px 0}.nav-icon{width:16px;height:16px;flex-shrink:0}.token-rank-nav-label{white-space:nowrap;font-size:13px}.nav-group{margin-bottom:2px}.nav-group-title{width:100%;border:none;background:transparent;cursor:pointer;font:inherit;font-size:14px;font-weight:400;color:#666;text-align:left}.nav-group-title:hover{background:#f0f1f8;color:#333}.nav-group-title.active{background:transparent;color:#666;font-weight:400}.nav-caret{width:14px;height:14px;margin-left:auto;transition:transform .2s;opacity:.55}.nav-group.open .nav-caret{transform:rotate(180deg)}.nav-sub{padding:0 0 4px}.nav-sub-item{padding-left:28px!important;font-size:13px!important;font-weight:400!important;margin-bottom:1px}.nav-sub-icon{width:14px;height:14px;flex-shrink:0;filter:grayscale(1) opacity(.55)}.nav-sub-item:hover .nav-sub-icon,.nav-sub-item.router-link-active .nav-sub-icon{filter:none;opacity:1}.nav-badge{background:#e74c3c;color:#fff;font-size:11px;font-weight:600;min-width:18px;height:18px;line-height:18px;text-align:center;border-radius:9px;padding:0 5px;margin-left:auto}.sidebar-bottom{padding:12px 8px;border-top:1px solid #f0f0f5}.settings-btn{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:none;border-radius:8px;color:#666;font-size:14px;cursor:pointer;transition:all .2s}.settings-btn:hover{background:#f0f1f8;color:#333}.main-area{flex:1;display:flex;flex-direction:column;min-width:0;margin-left:160px}.topbar{height:64px;background:#ffffffb8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:50}.breadcrumb{font-size:16px;font-weight:500;color:#333}.topbar-center{flex:1;display:flex;justify-content:flex-start;align-items:center;padding-left:24px}.topbar-right{display:flex;align-items:center;gap:16px}.user-name{font-size:14px;color:#666}.btn-logout{padding:4px 12px;font-size:12px;color:#999;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer}.btn-logout:hover{color:#e53935;border-color:#e53935}.topbar-avatar{width:28px;height:28px;border-radius:50%;cursor:pointer;image-rendering:pixelated;object-fit:cover}.avatar-grid{display:flex;flex-wrap:wrap;gap:8px}.avatar-option{width:48px;height:48px;border-radius:8px;cursor:pointer;border:2px solid transparent;image-rendering:pixelated;object-fit:cover;transition:all .15s}.avatar-option:hover{border-color:#bbb}.avatar-option.selected{border-color:#333;box-shadow:0 0 0 2px #333}.profile-input{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none;box-sizing:border-box}.profile-input:focus{border-color:#5c6bc0}.btn-profile-save{background:#333;color:#fff;border:none;padding:6px 18px;border-radius:6px;cursor:pointer;font-size:13px}.btn-profile-save:hover{background:#555}.log-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.log-modal{background:#fff;border-radius:12px;width:720px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000026}.log-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0f0f5}.log-header h3{font-size:16px;font-weight:600;color:#333}.log-close{background:none;border:none;font-size:22px;color:#999;cursor:pointer;line-height:1}.log-close:hover{color:#333}.log-body{flex:1;overflow-y:auto;padding:0}.log-table{width:100%;border-collapse:collapse;font-size:13px}.log-table th{background:#fafafa;padding:10px 12px;text-align:left;color:#888;font-weight:500;border-bottom:1px solid #f0f0f5;position:sticky;top:0}.log-table td{padding:10px 12px;border-bottom:1px solid #f5f5f5;color:#555}.log-table tr:hover td{background:#fafbff}.nav-item.router-link-active[href="/canvas"]{background:#f0f1f8;color:#5c6bc0;font-weight:500}.nav-item.router-link-active[href="/canvas"]:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:#5c6bc0;border-radius:0 2px 2px 0}.content{flex:1;padding:0 16px 16px;overflow-y:auto}.login-page[data-v-7f426f54]{display:flex;height:100vh;background:#f0f0f5}.login-left[data-v-7f426f54]{flex:1;background:#f5f5fa;display:flex;flex-direction:column;padding:30px 40px}.left-header[data-v-7f426f54]{display:flex;justify-content:space-between;align-items:center}.brand[data-v-7f426f54]{display:flex;align-items:center;gap:8px}.brand-logo[data-v-7f426f54]{width:32px;height:32px;border-radius:8px}.brand-name[data-v-7f426f54]{font-size:18px;font-weight:700;color:#333}.btn-toggle[data-v-7f426f54]{padding:6px 20px;border:1px solid #5c6bc0;color:#5c6bc0;background:transparent;border-radius:6px;cursor:pointer;font-size:13px}.btn-toggle[data-v-7f426f54]:hover{background:#5c6bc0;color:#fff}.form-area[data-v-7f426f54]{flex:1;display:flex;flex-direction:column;justify-content:center;max-width:400px;margin:0 auto;width:100%}.form-area h2[data-v-7f426f54]{font-size:26px;font-weight:600;color:#333;margin-bottom:30px}.form-box[data-v-7f426f54]{display:flex;flex-direction:column;gap:16px}.form-field[data-v-7f426f54]{position:relative}.form-field input[data-v-7f426f54]{width:100%;padding:12px 14px;border:none;border-radius:8px;background:#fff;font-size:14px;outline:none;box-shadow:0 1px 4px #0000000a}.form-field input[data-v-7f426f54]:focus{box-shadow:0 0 0 2px #5c6bc04d}.eye[data-v-7f426f54]{position:absolute;right:12px;top:50%;transform:translateY(-50%);cursor:pointer;font-size:16px;-webkit-user-select:none;user-select:none}.btn-submit[data-v-7f426f54]{width:100%;padding:12px;background:#5c6bc0;color:#fff;border:none;border-radius:8px;font-size:15px;cursor:pointer;letter-spacing:4px;margin-top:8px}.btn-submit[data-v-7f426f54]:hover{background:#4a5ab9}.btn-submit[data-v-7f426f54]:disabled{opacity:.6;cursor:not-allowed}.remember-field[data-v-7f426f54]{display:flex;align-items:center;gap:6px;font-size:13px;color:#666;cursor:pointer;-webkit-user-select:none;user-select:none}.remember-field input[data-v-7f426f54]{width:14px;height:14px;cursor:pointer}.hint[data-v-7f426f54]{color:#999;font-size:12px;text-align:center;margin-top:8px}.err[data-v-7f426f54]{color:#e53935;font-size:13px;text-align:center;margin-top:12px}.success[data-v-7f426f54]{color:#43a047;font-size:13px;text-align:center;margin-top:12px}.login-right[data-v-7f426f54]{flex:1;background:linear-gradient(135deg,#5c6bc0,#7986cb);display:flex;align-items:center;justify-content:center}.right-content[data-v-7f426f54]{text-align:center;color:#fff}.right-logo[data-v-7f426f54]{width:80px;height:80px;border-radius:20px;margin-bottom:20px;padding:6px;background:#fff}.right-content h1[data-v-7f426f54]{font-size:36px;font-weight:700;margin-bottom:10px;letter-spacing:4px}.right-content p[data-v-7f426f54]{font-size:16px;opacity:.8;letter-spacing:2px}@media (max-width: 768px){.login-right[data-v-7f426f54]{display:none}}.home[data-v-595159ef]{padding:20px}.loading[data-v-595159ef]{text-align:center;padding:80px 0;color:#999}.kpi-grid[data-v-595159ef]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px}.kpi-card[data-v-595159ef]{background:#fff;border-radius:12px;padding:18px 20px;display:flex;align-items:center;gap:14px;box-shadow:0 2px 8px #0000000a;transition:transform .2s,box-shadow .2s}.kpi-card[data-v-595159ef]:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.kpi-icon[data-v-595159ef]{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-icon svg[data-v-595159ef]{width:22px;height:22px}.kpi-value[data-v-595159ef]{font-size:26px;font-weight:700;color:#333;line-height:1.2}.kpi-label[data-v-595159ef]{font-size:13px;color:#888;margin-top:2px}.chart-grid[data-v-595159ef]{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.chart-card[data-v-595159ef]{background:#fff;border-radius:12px;padding:16px 18px;box-shadow:0 2px 8px #0000000a}.chart-title[data-v-595159ef]{font-size:15px;font-weight:600;color:#333;margin-bottom:8px;padding-left:8px;border-left:3px solid #5c6bc0}.chart[data-v-595159ef]{height:240px}.ops-log[data-v-595159ef]{max-height:240px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:4px}.ops-log[data-v-595159ef]::-webkit-scrollbar{width:6px}.ops-log[data-v-595159ef]::-webkit-scrollbar-thumb{background:#ddd;border-radius:3px}.ops-shortcuts[data-v-595159ef]{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.shortcut-btn[data-v-595159ef]{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 10px;border-radius:8px;background:#f8f9fc;color:#5c6bc0;text-decoration:none;font-size:13px;transition:all .2s}.shortcut-btn[data-v-595159ef]:hover{background:#eef0fa;transform:translateY(-1px)}.shortcut-btn svg[data-v-595159ef]{width:24px;height:24px}.bottom-grid[data-v-595159ef]{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.card[data-v-595159ef]{background:#fff;border-radius:12px;padding:16px 18px;box-shadow:0 2px 8px #0000000a}.card-header[data-v-595159ef]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #f0f0f5}.card-title[data-v-595159ef]{font-size:15px;font-weight:600;color:#333}.card-more[data-v-595159ef]{font-size:12px;color:#5c6bc0;text-decoration:none}.card-more[data-v-595159ef]:hover{text-decoration:underline}.card-hint[data-v-595159ef]{font-size:12px;color:#bbb}.log-list[data-v-595159ef],.task-list[data-v-595159ef],.req-list[data-v-595159ef]{display:flex;flex-direction:column;gap:8px}.log-item[data-v-595159ef],.task-item[data-v-595159ef],.req-item[data-v-595159ef]{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:6px;font-size:13px;transition:background .15s}.log-item[data-v-595159ef]:hover,.task-item[data-v-595159ef]:hover,.req-item[data-v-595159ef]:hover{background:#f8f9fc}.log-user[data-v-595159ef]{color:#5c6bc0;font-weight:500;min-width:60px}.log-action[data-v-595159ef]{color:#333;min-width:70px}.log-target[data-v-595159ef]{color:#888;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-time[data-v-595159ef]{color:#aaa;font-size:12px}.task-status[data-v-595159ef]{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500;flex-shrink:0}.st-未开始[data-v-595159ef]{background:#f0f1f8;color:#5c6bc0}.st-进行中[data-v-595159ef]{background:#e8f5e9;color:#26a69a}.st-已完成[data-v-595159ef]{background:#fff8e1;color:#ffca28}.task-name[data-v-595159ef]{flex:1;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-end[data-v-595159ef]{color:#aaa;font-size:12px;flex-shrink:0}.req-item[data-v-595159ef]{cursor:pointer}.req-no[data-v-595159ef]{color:#5c6bc0;font-size:12px;font-weight:500;min-width:90px}.req-title[data-v-595159ef]{flex:1;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.req-pri[data-v-595159ef]{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500}.pri-P0[data-v-595159ef]{background:#fdecea;color:#e74c3c}.pri-P1[data-v-595159ef]{background:#fff3e0;color:#ff9800}.pri-P2[data-v-595159ef]{background:#fff8e1;color:#ffca28}.pri-P3[data-v-595159ef]{background:#f0f1f8;color:#90a4ae}.req-status[data-v-595159ef]{font-size:12px;color:#888;min-width:60px;text-align:right}.welcome[data-v-595159ef]{background:linear-gradient(135deg,#5c6bc0,#7986cb);border-radius:12px;padding:24px 28px;display:flex;align-items:center;gap:16px;color:#fff;margin-bottom:18px;box-shadow:0 4px 12px #5c6bc040}.welcome-avatar[data-v-595159ef]{width:56px;height:56px;border-radius:50%;border:2px solid rgba(255,255,255,.5)}.welcome-hi[data-v-595159ef]{font-size:20px;font-weight:600;margin-bottom:4px}.welcome-sub[data-v-595159ef]{font-size:13px;opacity:.9}.empty[data-v-595159ef]{text-align:center;color:#bbb;font-size:13px;padding:24px 0}@media (max-width: 900px){.chart-grid[data-v-595159ef],.bottom-grid[data-v-595159ef],.risk-grid[data-v-595159ef]{grid-template-columns:1fr}}.section-card[data-v-595159ef]{background:var(--card-bg, #fff);border:1px solid var(--border, #eee);border-radius:10px;padding:16px 18px;margin-bottom:16px}.section-header[data-v-595159ef]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-title[data-v-595159ef]{font-size:15px;font-weight:600;color:var(--text, #333)}.section-more[data-v-595159ef]{font-size:12px;color:#888;text-decoration:none}.section-more[data-v-595159ef]:hover{color:#333}.project-scroll[data-v-595159ef]{display:flex;gap:12px;overflow-x:auto;padding-bottom:4px}.project-card[data-v-595159ef]{min-width:200px;padding:12px;border-radius:8px;background:#fafafa;border:1px solid #eee;border-left:3px solid #43a047}.project-card.ps-warning[data-v-595159ef]{border-left-color:#fb8c00}.project-card.ps-delayed[data-v-595159ef]{border-left-color:#e53935;background:#fff5f5}.project-top[data-v-595159ef]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.project-name[data-v-595159ef]{font-size:13px;font-weight:600;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.stage-tag[data-v-595159ef]{font-size:11px;padding:2px 6px;border-radius:4px;background:#e3f2fd;color:#1976d2}.progress-bar[data-v-595159ef]{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden;margin-bottom:8px}.progress-fill[data-v-595159ef]{height:100%;background:linear-gradient(90deg,#66bb6a,#43a047);transition:width .3s}.project-bottom[data-v-595159ef]{display:flex;justify-content:space-between;font-size:11px;color:#888}.delivery-date[data-v-595159ef]{color:#666}.member-table[data-v-595159ef]{width:100%;border-collapse:collapse;font-size:13px}.member-table th[data-v-595159ef]{text-align:left;padding:8px 12px;background:#f5f5f5;color:#666;font-weight:500;font-size:12px;border-bottom:1px solid #e0e0e0}.member-table td[data-v-595159ef]{padding:10px 12px;border-bottom:1px solid #f0f0f0;color:#333}.member-table tr.ms-fighting[data-v-595159ef]{background:#f1f8e9}.member-table tr.ms-struggling[data-v-595159ef]{background:#fffde7}.member-table tr.ms-crashing[data-v-595159ef]{background:#ffebee}.th-sub[data-v-595159ef]{font-size:11px;font-weight:400;color:#999}.member-cell[data-v-595159ef]{display:flex;align-items:center;gap:8px}.member-avatar[data-v-595159ef]{width:24px;height:24px;border-radius:4px;image-rendering:pixelated;object-fit:cover}.bug-count[data-v-595159ef]{display:inline-block;background:#e53935;color:#fff;font-size:11px;padding:1px 6px;border-radius:10px}.completion-bar[data-v-595159ef]{position:relative;width:80px;height:16px;background:#e0e0e0;border-radius:8px;overflow:hidden}.completion-fill[data-v-595159ef]{position:absolute;left:0;top:0;height:100%;background:#66bb6a;transition:width .3s}.completion-text[data-v-595159ef]{position:relative;z-index:1;font-size:11px;color:#333;line-height:16px;text-align:center;display:block}.status-tag[data-v-595159ef]{font-size:11px;padding:2px 8px;border-radius:10px}.status-tag.st-fighting[data-v-595159ef]{background:#e8f5e9;color:#2e7d32}.status-tag.st-normal[data-v-595159ef]{background:#e3f2fd;color:#1565c0}.status-tag.st-struggling[data-v-595159ef]{background:#fff8e1;color:#f57c00}.status-tag.st-crashing[data-v-595159ef]{background:#ffebee;color:#c62828}.risk-grid[data-v-595159ef]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.risk-card[data-v-595159ef]{background:var(--card-bg, #fff);border:1px solid var(--border, #eee);border-radius:10px;padding:14px}.risk-header[data-v-595159ef]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.risk-title[data-v-595159ef]{font-size:14px;font-weight:600;color:#333}.risk-count[data-v-595159ef]{background:#e53935;color:#fff;font-size:11px;padding:1px 8px;border-radius:10px}.risk-list[data-v-595159ef]{max-height:200px;overflow-y:auto}.risk-item[data-v-595159ef]{padding:8px 0;border-bottom:1px dashed #f0f0f0}.risk-item[data-v-595159ef]:last-child{border-bottom:none}.risk-item.delayed .risk-item-name[data-v-595159ef]{color:#c62828}.risk-item-name[data-v-595159ef]{font-size:12px;color:#333;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.risk-item-meta[data-v-595159ef]{display:flex;justify-content:space-between;font-size:11px;color:#888}.overdue-days[data-v-595159ef]{color:#e53935}.sev-critical[data-v-595159ef]{color:#e53935;font-weight:600}.sev-serious[data-v-595159ef]{color:#fb8c00;font-weight:600}.sev-normal[data-v-595159ef],.sev-cosmetic[data-v-595159ef]{color:#888}.view-tabs[data-v-595159ef]{display:inline-flex;background:#fff;border-radius:10px;padding:4px;gap:4px;box-shadow:0 2px 8px #0000000a}.tab-item[data-v-595159ef]{padding:6px 24px;font-size:14px;color:#888;border-radius:8px;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.tab-item[data-v-595159ef]:hover{color:#5c6bc0}.tab-item.active[data-v-595159ef]{background:linear-gradient(135deg,#5c6bc0,#7986cb);color:#fff;font-weight:500;box-shadow:0 2px 8px #5c6bc04d}.first-screen-grid[data-v-595159ef]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:16px;align-items:stretch}.first-screen-grid .grid-col[data-v-595159ef]{display:flex;flex-direction:column;min-width:0;margin-bottom:0}.first-screen-grid .grid-col .section-header[data-v-595159ef]{margin-bottom:14px;flex-shrink:0}.first-screen-grid .grid-content[data-v-595159ef]{flex:1;min-height:0}.count-badge[data-v-595159ef]{display:inline-block;min-width:22px;height:20px;line-height:20px;padding:0 6px;margin-left:8px;background:linear-gradient(135deg,#ff7043,#ff8a65);color:#fff;border-radius:10px;font-size:12px;font-weight:600;text-align:center}.pending-list[data-v-595159ef]{display:flex;flex-direction:column;gap:8px;overflow-y:auto}.pending-row-item[data-v-595159ef]{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:#fafafa;border-left:3px solid #ddd;cursor:pointer;transition:all .2s}.pending-row-item[data-v-595159ef]:hover{background:#f0f0f5;transform:translate(2px)}.pending-row-item.pi-leave[data-v-595159ef]{border-left-color:#ff9800}.pending-row-item.pi-task_link[data-v-595159ef]{border-left-color:#5c6bc0}.pending-row-item .pending-type[data-v-595159ef]{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500;flex-shrink:0}.pending-row-item .pending-row-info[data-v-595159ef]{flex:1;overflow:hidden}.pending-row-item .pending-row-title[data-v-595159ef]{font-size:13px;font-weight:500;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px}.pending-row-item .pending-row-meta[data-v-595159ef]{font-size:11px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pending-arrow[data-v-595159ef]{color:#ccc;font-size:18px;flex-shrink:0}.kpi-grid-2x3[data-v-595159ef]{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);gap:14px}.kpi-grid-2x3 .kpi-card[data-v-595159ef]{margin-bottom:0}.ops-shortcuts-vertical[data-v-595159ef]{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);gap:14px}.ops-shortcuts-vertical .shortcut-btn[data-v-595159ef]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 8px;background:#fff;border-radius:12px;color:#555;border:1px solid #f0f0f0;box-shadow:0 2px 8px #0000000a;transition:all .2s;text-decoration:none;min-height:0}.ops-shortcuts-vertical .shortcut-btn[data-v-595159ef]:hover{background:linear-gradient(135deg,#eef0fa,#f5f5fa);border-color:#c5cae9;color:#5c6bc0;transform:translateY(-2px);box-shadow:0 6px 16px #5c6bc01f}.ops-shortcuts-vertical .shortcut-btn svg[data-v-595159ef]{width:28px;height:28px;flex-shrink:0}.ops-shortcuts-vertical .shortcut-btn span[data-v-595159ef]{font-size:13px;font-weight:500;text-align:center}.risk-grid-2[data-v-595159ef]{grid-template-columns:repeat(2,1fr)}.risk-grid-2 .risk-card[data-v-595159ef]{background:linear-gradient(135deg,#fff,#fafafa)}.risk-grid-2 .risk-card .risk-header[data-v-595159ef]{background:linear-gradient(90deg,#f5f5f5,#fafafa);margin:-14px -14px 10px;padding:10px 14px;border-radius:10px 10px 0 0}.project-card[data-v-595159ef]{border-left:3px solid transparent;border-image:linear-gradient(180deg,#66bb6a,#43a047) 1}.project-card.ps-warning[data-v-595159ef]{border-image:linear-gradient(180deg,#ffa726,#fb8c00) 1}.project-card.ps-delayed[data-v-595159ef]{border-image:linear-gradient(180deg,#ef5350,#e53935) 1}.status-tag.st-fighting[data-v-595159ef]{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32}.status-tag.st-normal[data-v-595159ef]{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0}.status-tag.st-struggling[data-v-595159ef]{background:linear-gradient(135deg,#fff8e1,#ffecb3);color:#f57c00}.status-tag.st-crashing[data-v-595159ef]{background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#c62828}.modal-mask[data-v-595159ef]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-595159ef]{background:#fff;border-radius:12px;width:560px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003}.modal-lg[data-v-595159ef]{width:720px}.modal-header[data-v-595159ef]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0f0f0;background:linear-gradient(135deg,#fff,#fafafa);border-radius:12px 12px 0 0}.modal-header h3[data-v-595159ef]{margin:0;font-size:16px;font-weight:600;color:#333}.modal-close[data-v-595159ef]{font-size:24px;color:#999;cursor:pointer;line-height:1}.modal-close[data-v-595159ef]:hover{color:#333}.modal-body[data-v-595159ef]{padding:16px 20px;overflow-y:auto;flex:1}.pending-item[data-v-595159ef]{padding:14px;border-radius:10px;background:#fafafa;margin-bottom:10px;border-left:3px solid #ddd;transition:all .2s}.pending-item[data-v-595159ef]:hover{background:#f5f5f5}.pending-item.pi-leave[data-v-595159ef]{border-left-color:#ff9800}.pending-item.pi-task_link[data-v-595159ef]{border-left-color:#5c6bc0}.pending-row[data-v-595159ef]{display:flex;align-items:center;gap:10px;margin-bottom:6px}.pending-type[data-v-595159ef]{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500;flex-shrink:0}.type-leave[data-v-595159ef]{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#e65100}.type-task[data-v-595159ef]{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0}.pending-title[data-v-595159ef]{font-size:14px;font-weight:500;color:#333;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pending-meta[data-v-595159ef]{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#888;margin-bottom:10px}.pending-actions[data-v-595159ef]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btn[data-v-595159ef]{font-size:12px;padding:6px 14px;border-radius:6px;border:none;cursor:pointer;transition:all .2s;font-weight:500}.btn-approve[data-v-595159ef]{background:linear-gradient(135deg,#66bb6a,#43a047);color:#fff}.btn-approve[data-v-595159ef]:hover{transform:translateY(-1px);box-shadow:0 4px 10px #43a0474d}.btn-reject[data-v-595159ef]{background:linear-gradient(135deg,#ef5350,#e53935);color:#fff}.btn-reject[data-v-595159ef]:hover{transform:translateY(-1px);box-shadow:0 4px 10px #e539354d}.btn-confirm[data-v-595159ef]{background:linear-gradient(135deg,#42a5f5,#1e88e5);color:#fff}.btn-confirm[data-v-595159ef]:hover{transform:translateY(-1px);box-shadow:0 4px 10px #2196f34d}.btn-dismiss[data-v-595159ef]{background:#f5f5f5;color:#888;border:1px solid #e0e0e0}.btn-dismiss[data-v-595159ef]:hover{background:#eee}.btn-link[data-v-595159ef]{font-size:12px;color:#5c6bc0;text-decoration:none;margin-left:auto;padding:6px 8px}.btn-link[data-v-595159ef]:hover{text-decoration:underline}.link-select[data-v-595159ef]{font-size:13px;padding:6px 10px;border-radius:6px;border:1px solid #ddd;background:#fff;color:#333;min-width:200px;outline:none}.link-select[data-v-595159ef]:focus{border-color:#5c6bc0}.kpi-icon[data-v-595159ef]{box-shadow:0 4px 12px #0000001a}@media (max-width: 1100px){.first-screen-grid[data-v-595159ef]{grid-template-columns:1fr;gap:12px}.pending-list[data-v-595159ef]{max-height:240px}.kpi-grid-2x3[data-v-595159ef],.ops-shortcuts-vertical[data-v-595159ef]{grid-template-rows:auto}}@media (max-width: 700px){.risk-grid-2[data-v-595159ef]{grid-template-columns:1fr}.view-tabs[data-v-595159ef]{width:100%;justify-content:center}.kpi-grid-2x3[data-v-595159ef]{grid-template-columns:1fr;grid-template-rows:repeat(6,auto)}}.dashboard[data-v-5b96763b]{width:100%}.card[data-v-5b96763b]{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a}.card-header[data-v-5b96763b]{padding:16px 20px;border-bottom:1px solid #f0f0f5}.card-title[data-v-5b96763b]{font-size:16px;font-weight:500;color:#333}.card-body[data-v-5b96763b]{padding:20px}.section[data-v-5b96763b]{margin-bottom:36px;padding-bottom:24px;border-bottom:1px solid #f5f5fa}.section[data-v-5b96763b]:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-title[data-v-5b96763b]{font-size:18px;font-weight:600;color:#333;margin-bottom:16px}.subsection[data-v-5b96763b]{margin-bottom:20px;padding-left:8px}.subsection-title[data-v-5b96763b]{font-size:15px;font-weight:500;color:#555;margin-bottom:10px}.paragraph[data-v-5b96763b]{font-size:14px;color:#666;line-height:1.7;margin-bottom:10px}.warning-text[data-v-5b96763b]{font-size:14px;color:#e53935;font-weight:700;margin-bottom:10px}.paragraph.small[data-v-5b96763b]{font-size:13px;color:#888;font-style:italic}.list[data-v-5b96763b]{font-size:14px;color:#666;line-height:1.9;margin:8px 0 12px 16px}.list li[data-v-5b96763b]{margin-bottom:8px}.rule-box[data-v-5b96763b]{background:#fafbff;border-radius:10px;padding:16px 18px;margin-top:12px}.rule-title[data-v-5b96763b]{font-size:14px;font-weight:500;color:#5c6bc0;margin-bottom:8px}.data-table[data-v-5b96763b]{width:100%;border-collapse:collapse;margin:12px 0}.data-table th[data-v-5b96763b],.data-table td[data-v-5b96763b]{border:1px solid #e0e2e8;padding:10px 12px;text-align:left;font-size:13px}.data-table th[data-v-5b96763b]{background:#f7f8fc;font-weight:500;color:#555}.data-table td[data-v-5b96763b]{color:#666;line-height:1.6}.highlight[data-v-5b96763b]{color:#e53935!important}.red[data-v-5b96763b]{color:#e53935;font-weight:600}.highlight-box[data-v-5b96763b]{background:#fff5f5;border:1px solid #ffcdd2}.flow-steps[data-v-5b96763b]{display:flex;align-items:flex-start;gap:8px;margin:16px 0;overflow-x:auto;padding-bottom:8px}.flow-step[data-v-5b96763b]{display:flex;align-items:flex-start;gap:10px;background:#f7f8fc;border-radius:10px;padding:12px 14px;min-width:140px;flex-shrink:0}.step-num[data-v-5b96763b]{width:28px;height:28px;border-radius:50%;background:#e53935;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.step-content h4[data-v-5b96763b]{font-size:13px;font-weight:600;color:#333;margin-bottom:4px}.step-content p[data-v-5b96763b]{font-size:12px;color:#888;margin:0;line-height:1.5}.flow-arrow[data-v-5b96763b]{color:#e53935;font-size:20px;font-weight:700;align-self:center;flex-shrink:0}.toc[data-v-5b96763b]{background:#f7f8fc;border-radius:10px;padding:16px 20px;margin-bottom:28px}.toc-title[data-v-5b96763b]{font-size:15px;font-weight:600;color:#333;margin-bottom:10px}.toc-list[data-v-5b96763b]{display:flex;flex-direction:column;gap:6px 0}.toc-item[data-v-5b96763b]{font-size:14px;color:#555;text-decoration:none;padding:4px 0;transition:color .2s}.toc-item[data-v-5b96763b]:hover{color:#333;text-decoration:underline}.toc-highlight[data-v-5b96763b]{color:#e53935!important;font-weight:600}.toc-highlight[data-v-5b96763b]:hover{color:#c62828!important}.example-image[data-v-5b96763b]{width:100%;max-width:900px;border-radius:8px;display:block;margin-top:8px}.req-page[data-v-deda2f4a]{padding:0}.toolbar[data-v-deda2f4a]{margin-bottom:16px;display:flex;gap:8px}.btn[data-v-deda2f4a]{padding:8px 16px;border-radius:6px;border:none;cursor:pointer;font-size:13px}.btn-primary[data-v-deda2f4a]{background:#333;color:#fff}.btn-primary[data-v-deda2f4a]:hover{background:#555}.btn-collect[data-v-deda2f4a]{background:#fff;color:#333;border:1px solid #ddd}.btn-collect[data-v-deda2f4a]:hover{background:#f5f5f5}.btn-default[data-v-deda2f4a]{background:#f5f5f5;color:#666;border:1px solid #ddd}.card[data-v-deda2f4a]{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a;overflow:hidden}.table[data-v-deda2f4a]{width:100%;border-collapse:collapse;font-size:13px}.table th[data-v-deda2f4a]{background:#fafafa;padding:10px 12px;text-align:left;color:#888;font-weight:500;border-bottom:1px solid #f0f0f5}.table td[data-v-deda2f4a]{padding:10px 12px;border-bottom:1px solid #f5f5f5;color:#555}.table tr:hover td[data-v-deda2f4a]{background:#fafbff}.table tr.child-row td[data-v-deda2f4a]{background:#fcfcfe}.name-cell[data-v-deda2f4a]{font-weight:500;color:#333}.submitted-tag[data-v-deda2f4a]{display:inline-block;font-size:11px;font-weight:500;color:#4caf50;background:#e8f5e9;padding:1px 6px;border-radius:4px;margin-left:6px;vertical-align:middle}.attachment-tag[data-v-deda2f4a]{display:inline-block;font-size:11px;font-weight:500;color:#5c6bc0;background:#eef0ff;padding:1px 6px;border-radius:4px;margin-left:4px;vertical-align:middle}.child-prefix[data-v-deda2f4a]{color:#bbb}.children-badge[data-v-deda2f4a]{font-size:11px;color:#999;background:#f5f5f5;padding:1px 6px;border-radius:4px;margin-left:6px}.children-badge.clickable[data-v-deda2f4a]{color:#5c6bc0;background:#e8eaf6;cursor:pointer}.children-badge.clickable[data-v-deda2f4a]:hover{background:#c5cae9}.empty[data-v-deda2f4a]{text-align:center;color:#999;padding:60px 0}.type-tag[data-v-deda2f4a]{font-size:11px;padding:2px 8px;border-radius:4px}.type-new[data-v-deda2f4a]{background:#e8f5e9;color:#2e7d32}.type-iteration[data-v-deda2f4a]{background:#fff3e0;color:#ef6c00}.priority-tag[data-v-deda2f4a]{font-size:11px;padding:2px 6px;border-radius:4px;font-weight:500}.p-P0[data-v-deda2f4a]{background:#ffebee;color:#c62828}.p-P1[data-v-deda2f4a]{background:#fff3e0;color:#e65100}.p-P2[data-v-deda2f4a]{background:#e8f5e9;color:#2e7d32}.p-P3[data-v-deda2f4a]{background:#f5f5f5;color:#999}.action-cell[data-v-deda2f4a]{white-space:nowrap}.btn-link[data-v-deda2f4a]{background:none;border:none;color:#5c6bc0;cursor:pointer;font-size:12px;padding:2px 6px}.btn-link[data-v-deda2f4a]:hover{text-decoration:underline}.btn-danger[data-v-deda2f4a]{color:#e53935}.btn-iteration[data-v-deda2f4a]{color:#ef6c00}.btn-share[data-v-deda2f4a]{color:#2e7d32}.btn-detail[data-v-deda2f4a]{color:#1565c0}.btn-pdf[data-v-deda2f4a]{color:#5c6bc0}.modal-mask[data-v-deda2f4a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding-top:40px}.modal[data-v-deda2f4a]{background:#fff;border-radius:12px;width:600px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000026}.modal-lg[data-v-deda2f4a]{width:900px}.modal-header[data-v-deda2f4a]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0f0f5}.modal-header h3[data-v-deda2f4a]{font-size:16px;font-weight:600;color:#333}.modal-close[data-v-deda2f4a]{background:none;border:none;font-size:22px;color:#999;cursor:pointer}.modal-close[data-v-deda2f4a]:hover{color:#333}.modal-body[data-v-deda2f4a]{flex:1;overflow-y:auto;padding:16px 20px}.modal-footer[data-v-deda2f4a]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid #f0f0f5}.form-section[data-v-deda2f4a]{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #f0f0f5}.form-section[data-v-deda2f4a]:last-child{border-bottom:none}.form-upload-area[data-v-deda2f4a]{display:flex;align-items:center;gap:8px;padding:12px;border:1px dashed #ccc;border-radius:6px;cursor:pointer;color:#999;font-size:13px;transition:border-color .2s}.form-upload-area[data-v-deda2f4a]:hover{border-color:#5c6bc0;color:#5c6bc0}.form-file-list[data-v-deda2f4a]{margin-top:8px;display:flex;flex-direction:column;gap:4px}.form-file-item[data-v-deda2f4a]{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#f5f5ff;border-radius:4px;font-size:13px}.form-file-name[data-v-deda2f4a]{flex:1;color:#333}.form-file-remove[data-v-deda2f4a]{background:none;border:none;color:#999;cursor:pointer;font-size:16px}.form-file-remove[data-v-deda2f4a]:hover{color:#e53935}.section-label[data-v-deda2f4a]{font-size:14px;font-weight:600;color:#333;margin-bottom:12px}.form-group[data-v-deda2f4a]{margin-bottom:12px}.form-group label[data-v-deda2f4a]{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group input[data-v-deda2f4a],.form-group textarea[data-v-deda2f4a],.form-group select[data-v-deda2f4a]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none;box-sizing:border-box}.form-group input[data-v-deda2f4a]:focus,.form-group textarea[data-v-deda2f4a]:focus,.form-group select[data-v-deda2f4a]:focus{border-color:#5c6bc0}.form-select[data-v-deda2f4a]{width:100%}.form-row[data-v-deda2f4a]{display:flex;gap:12px}.form-row .form-group[data-v-deda2f4a],.flex-1[data-v-deda2f4a]{flex:1}.required[data-v-deda2f4a]{color:#e53935}.dynamic-list[data-v-deda2f4a]{display:flex;flex-direction:column;gap:6px}.dynamic-item[data-v-deda2f4a]{display:flex;align-items:center;gap:6px}.inline-input[data-v-deda2f4a]{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:12px;outline:none}.inline-input[data-v-deda2f4a]:focus{border-color:#5c6bc0}.inline-input.short[data-v-deda2f4a]{width:80px}.inline-input.flex-1[data-v-deda2f4a]{flex:1}.inline-select[data-v-deda2f4a]{padding:6px 4px;border:1px solid #ddd;border-radius:4px;font-size:12px;outline:none;width:60px}.inline-check[data-v-deda2f4a]{font-size:12px;color:#666;white-space:nowrap;display:flex;align-items:center;gap:2px}.arrow[data-v-deda2f4a]{color:#999;font-size:14px;flex-shrink:0}.flow-step[data-v-deda2f4a]{width:20px;height:20px;background:#f0f0f5;border-radius:50%;text-align:center;line-height:20px;font-size:11px;color:#666;flex-shrink:0}.btn-remove[data-v-deda2f4a]{width:22px;height:22px;border-radius:50%;border:1px solid #ddd;background:#fff;color:#999;cursor:pointer;font-size:14px;line-height:1;flex-shrink:0}.btn-remove[data-v-deda2f4a]:hover{border-color:#e53935;color:#e53935}.btn-add[data-v-deda2f4a]{background:none;border:1px dashed #ccc;color:#5c6bc0;padding:4px 12px;border-radius:4px;cursor:pointer;font-size:12px}.btn-add[data-v-deda2f4a]:hover{border-color:#5c6bc0}.share-card-body[data-v-deda2f4a]{display:flex;flex-direction:column;align-items:center}.share-card[data-v-deda2f4a]{text-align:center;width:100%;max-width:320px;padding:36px 32px;background:#fff;border-radius:16px;box-sizing:border-box}.share-card-top[data-v-deda2f4a]{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:28px}.share-card-logo[data-v-deda2f4a]{width:48px;height:48px;border-radius:10px}.share-brand-name[data-v-deda2f4a]{font-size:22px;font-weight:700;color:#333}.share-brand-desc[data-v-deda2f4a]{font-size:14px;color:#888;margin-top:4px}.share-qr-wrap[data-v-deda2f4a]{display:flex;justify-content:center;margin-bottom:20px}.share-qr-canvas[data-v-deda2f4a]{border-radius:8px}.share-card-url[data-v-deda2f4a]{font-size:11px;color:#bbb;word-break:break-all;line-height:1.5}.share-actions[data-v-deda2f4a]{display:flex;gap:10px;margin-top:20px}.btn-save-img[data-v-deda2f4a]{background:#fff;color:#333;border:1px solid #ddd;padding:6px 14px;border-radius:6px;font-size:13px;cursor:pointer;white-space:nowrap}.btn-save-img[data-v-deda2f4a]:hover{background:#f5f5f5}.hint[data-v-deda2f4a]{font-size:12px;color:#999;font-weight:400}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.dp-mask[data-v-5b354fda]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000}.dp-modal[data-v-5b354fda]{background:var(--card-bg, #fff);border-radius:12px;width:90vw;max-width:1100px;height:88vh;display:flex;flex-direction:column;box-shadow:0 12px 48px #00000040;overflow:hidden}.dp-header[data-v-5b354fda]{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;border-bottom:1px solid var(--border, #eee);background:var(--sidebar-bg, #f9f9f9);flex-shrink:0}.dp-title-wrap[data-v-5b354fda]{display:flex;align-items:center;gap:10px;min-width:0}.dp-title[data-v-5b354fda]{font-size:14px;font-weight:600;color:var(--text, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:600px}.dp-type-tag[data-v-5b354fda]{font-size:10px;padding:2px 8px;border-radius:8px;font-weight:500;flex-shrink:0}.type-pdf[data-v-5b354fda]{background:#ffebee;color:#c62828}.type-md[data-v-5b354fda]{background:#e3f2fd;color:#1565c0}.type-docx[data-v-5b354fda],.type-doc[data-v-5b354fda]{background:#e8f5e9;color:#2e7d32}.type-image[data-v-5b354fda]{background:#fff3e0;color:#e65100}.dp-actions[data-v-5b354fda]{display:flex;align-items:center;gap:8px;flex-shrink:0}.dp-btn[data-v-5b354fda]{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border:1px solid var(--border, #e0e0e0);background:var(--card-bg, #fff);color:var(--text, #333);border-radius:6px;font-size:12px;cursor:pointer;transition:all .15s}.dp-btn[data-v-5b354fda]:hover{border-color:#555;background:var(--sidebar-bg, #f5f5f5)}.dp-close[data-v-5b354fda]{font-size:22px;padding:0 10px;line-height:1;border:none;background:none;color:#999}.dp-close[data-v-5b354fda]:hover{color:#333;background:var(--sidebar-bg, #f5f5f5)}.dp-body[data-v-5b354fda]{flex:1;overflow:auto;background:var(--card-bg, #fff);position:relative}.dp-iframe[data-v-5b354fda]{width:100%;height:100%;border:none}.dp-image-wrap[data-v-5b354fda]{width:100%;height:100%;overflow:auto;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.dp-image[data-v-5b354fda]{max-width:100%;max-height:100%;border-radius:6px;box-shadow:0 2px 12px #0000001a}.dp-md-content[data-v-5b354fda]{padding:32px 48px;font-size:14px;color:var(--text, #333);line-height:1.7;max-width:880px;margin:0 auto}.dp-md-content[data-v-5b354fda] h1,.dp-md-content[data-v-5b354fda] h2,.dp-md-content[data-v-5b354fda] h3{margin:20px 0 10px;color:var(--text, #333);font-weight:600}.dp-md-content[data-v-5b354fda] h1{font-size:22px;border-bottom:2px solid var(--border, #eee);padding-bottom:8px}.dp-md-content[data-v-5b354fda] h2{font-size:18px}.dp-md-content[data-v-5b354fda] h3{font-size:15px}.dp-md-content[data-v-5b354fda] p{margin:8px 0}.dp-md-content[data-v-5b354fda] ul,.dp-md-content[data-v-5b354fda] ol{margin:8px 0;padding-left:24px}.dp-md-content[data-v-5b354fda] li{margin:4px 0}.dp-md-content[data-v-5b354fda] code{background:var(--sidebar-bg, #f5f5f5);padding:2px 6px;border-radius:3px;font-size:13px;font-family:monospace}.dp-md-content[data-v-5b354fda] pre{background:#0d1117;padding:14px 16px;border-radius:8px;overflow-x:auto;margin:12px 0;border:1px solid #1f2329}.dp-md-content[data-v-5b354fda] pre code{background:none;padding:0;color:#c9d1d9;font-size:13px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.dp-md-content[data-v-5b354fda] blockquote{margin:10px 0;padding:8px 14px;border-left:4px solid var(--border, #d0d7de);background:var(--sidebar-bg, #f6f8fa);color:#57606a;border-radius:0 6px 6px 0}.dp-md-content[data-v-5b354fda] blockquote p{margin:4px 0}.dp-md-content[data-v-5b354fda] a{color:#0969da;text-decoration:none;border-bottom:1px solid rgba(9,105,218,.3)}.dp-md-content[data-v-5b354fda] a:hover{border-bottom-color:#0969da}.dp-md-content[data-v-5b354fda] hr{border:none;border-top:1px solid var(--border, #d0d7de);margin:18px 0}.dp-md-content[data-v-5b354fda] strong{font-weight:600}.dp-md-content[data-v-5b354fda] table{width:100%;border-collapse:collapse;margin:12px 0}.dp-md-content[data-v-5b354fda] th,.dp-md-content[data-v-5b354fda] td{border:1px solid var(--border, #eee);padding:8px 12px;text-align:left}.dp-md-content[data-v-5b354fda] th{background:var(--sidebar-bg, #f9f9f9);font-weight:600}.dp-md-content[data-v-5b354fda] img{max-width:100%;height:auto}.dp-loading[data-v-5b354fda]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#888;font-size:13px}.dp-spinner[data-v-5b354fda]{width:32px;height:32px;border:3px solid var(--border, #eee);border-top-color:#333;border-radius:50%;animation:dp-spin-5b354fda .8s linear infinite}@keyframes dp-spin-5b354fda{to{transform:rotate(360deg)}}.dp-error[data-v-5b354fda]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#999;font-size:13px}.dp-error svg[data-v-5b354fda]{color:#ccc}.task-hall[data-v-3e04de19]{display:flex;flex-direction:column;height:calc(100vh - 100px);gap:12px;margin-top:12px}.hall-topbar[data-v-3e04de19]{display:flex;justify-content:space-between;align-items:center;padding:0 4px}.view-switch[data-v-3e04de19]{display:flex;gap:4px;background:#fff;border-radius:8px;padding:4px;box-shadow:0 1px 4px #0000000a}.view-btn[data-v-3e04de19]{background:transparent;color:#666;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;transition:all .15s}.view-btn.active[data-v-3e04de19]{background:#333;color:#fff}.view-btn[data-v-3e04de19]:hover:not(.active){background:#f0f0f5}.topbar-actions[data-v-3e04de19]{display:flex;gap:8px;align-items:center}.btn-history[data-v-3e04de19]{background:#f0f0f5;color:#333;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px}.btn-history[data-v-3e04de19]:hover{background:#e0e0e8}.btn-add[data-v-3e04de19]{background:#333;color:#fff;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;display:inline-flex;align-items:center;gap:4px}.btn-add[data-v-3e04de19]:hover{background:#555}.btn-drawer[data-v-3e04de19]{background:#f0f0f5;color:#333;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;display:inline-flex;align-items:center;gap:4px}.btn-drawer[data-v-3e04de19]:hover{background:#e0e0e8}.monster-view[data-v-3e04de19]{flex:1;display:flex;gap:0;min-height:0;position:relative;border-radius:12px;overflow:hidden;background-image:url(/man/left_panel_bg.jpg);background-size:100% 130%;background-position:bottom center;background-repeat:no-repeat}.left-panel[data-v-3e04de19]{width:280px;flex-shrink:0;display:flex;flex-direction:column;gap:0;position:relative;z-index:1;background:transparent}.left-panel-bg[data-v-3e04de19]{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0;filter:brightness(.7)}.left-panel-content[data-v-3e04de19]{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px;height:100%;padding:12px}.user-coverflow[data-v-3e04de19]{background:#00000080;border:2px solid #fff;border-radius:12px;padding:12px;box-shadow:none;height:280px;display:flex;flex-direction:column}.coverflow-head[data-v-3e04de19]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.coverflow-title[data-v-3e04de19]{font-size:13px;font-weight:500;color:#ffffffb3;flex-shrink:0}.coverflow-search[data-v-3e04de19]{flex:1;padding:4px 8px;border:1px solid rgba(255,255,255,.15);border-radius:4px;font-size:12px;outline:none;background:#ffffff14;color:#ffffffe6}.coverflow-search[data-v-3e04de19]::placeholder{color:#fff6}.coverflow-search[data-v-3e04de19]:focus{border-color:#5da9f8;background:#ffffff1f}.coverflow-reset[data-v-3e04de19]{background:#ffffff14;color:#ffffffb3;border:none;width:22px;height:22px;border-radius:50%;cursor:pointer;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0}.coverflow-reset[data-v-3e04de19]:hover{background:#d32f2f;color:#fff}.coverflow-stage[data-v-3e04de19]{flex:1;position:relative;perspective:1000px;perspective-origin:50% 50%;overflow:hidden;outline:none;display:flex;align-items:center;justify-content:center}.coverflow-track[data-v-3e04de19]{position:relative;transform-style:preserve-3d;transition:transform .4s cubic-bezier(.22,.61,.36,1);width:110px;height:140px}.user-cover-item[data-v-3e04de19]{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff14;border:2px solid rgba(255,255,255,.15);border-radius:10px;cursor:pointer;transition:opacity .3s,border-color .2s;backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;padding:10px 6px;gap:4px;box-sizing:border-box}.user-cover-item.active[data-v-3e04de19],.user-cover-item.matched[data-v-3e04de19]{border-color:#ffb300;box-shadow:0 0 0 2px #ffb300,0 4px 12px #ffb3004d;background:#ffb3001f}.uc-avatar[data-v-3e04de19]{width:56px;height:56px;border-radius:50%;background:#ffffff1a;overflow:hidden;display:flex;align-items:center;justify-content:center}.uc-avatar-img[data-v-3e04de19]{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}.uc-avatar-fallback[data-v-3e04de19]{font-size:22px;font-weight:600;color:#fff9}.uc-name[data-v-3e04de19]{font-size:13px;font-weight:500;color:#ffffffe6;text-align:center}.uc-role[data-v-3e04de19]{font-size:10px;color:#ffffffb3;background:#ffffff1a;padding:1px 6px;border-radius:8px}.cover-nav[data-v-3e04de19]{position:absolute;bottom:4px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:8px;z-index:10}.cover-btn[data-v-3e04de19]{background:#ffffff1f;color:#ffffffd9;border:1px solid rgba(255,255,255,.2);padding:2px 8px;border-radius:4px;cursor:pointer;font-size:12px}.cover-btn[data-v-3e04de19]:hover{background:#ffffff38;color:#fff}.cover-counter[data-v-3e04de19]{font-size:11px;color:#ffffffb3;background:#0006;padding:2px 8px;border-radius:4px}.info-panel[data-v-3e04de19]{flex:1;background:#00000080;border:2px solid #fff;border-radius:12px;padding:14px;box-shadow:none;overflow-y:auto;display:flex;flex-direction:column}.info-personal[data-v-3e04de19]{display:flex;flex-direction:column;gap:12px;height:100%}.info-card[data-v-3e04de19]{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.info-avatar[data-v-3e04de19]{width:60px;height:60px;border-radius:12px;background:#ffffff14;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-avatar-img[data-v-3e04de19]{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}.info-avatar-fallback[data-v-3e04de19]{font-size:24px;font-weight:600;color:#fff9}.info-meta[data-v-3e04de19]{flex:1;min-width:0}.info-hp[data-v-3e04de19]{display:flex;align-items:center;gap:8px}.info-hp-label[data-v-3e04de19]{font-size:11px;font-weight:600;color:#ffffffb3;flex-shrink:0}.info-hp-bar[data-v-3e04de19]{flex:1;display:grid;grid-template-columns:repeat(4,1fr);gap:3px;height:14px}.info-hp-cell[data-v-3e04de19]{background:#e53935;border-radius:3px;box-shadow:inset 0 0 0 1px #00000026}.info-name[data-v-3e04de19]{font-size:16px;font-weight:600;color:#ffffffe6;margin-bottom:2px}.info-role[data-v-3e04de19]{font-size:11px;color:#ffffffb3;background:#ffffff1a;padding:2px 8px;border-radius:8px;display:inline-block}.info-stats[data-v-3e04de19]{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1)}.info-stat-item[data-v-3e04de19]{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.info-stat-num[data-v-3e04de19]{font-size:20px;font-weight:700;color:#ffffffe6}.info-stat-lbl[data-v-3e04de19]{font-size:11px;color:#ffffff8c}.info-stat-divider[data-v-3e04de19]{width:1px;height:30px;background:#ffffff1a}.info-task-list[data-v-3e04de19]{flex:1;display:flex;flex-direction:column;gap:6px;min-height:0}.info-task-title[data-v-3e04de19]{font-size:12px;color:#fff9;font-weight:500}.info-task-items[data-v-3e04de19]{flex:1;min-height:0;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.info-task-row[data-v-3e04de19]{display:flex;align-items:center;gap:6px;padding:6px 8px;background:#ffffff0f;border-radius:6px;cursor:pointer;font-size:12px;transition:background .15s}.info-task-row[data-v-3e04de19]:hover{background:#ffffff1f}.info-task-name[data-v-3e04de19]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffffffe6}.info-task-date[data-v-3e04de19]{font-size:11px;color:#ffffff8c}.info-task-tag[data-v-3e04de19]{font-size:10px;padding:1px 6px;border-radius:8px}.info-task-tag.overdue[data-v-3e04de19]{color:#ff5252;background:#e5393533}.info-task-tag.urgent[data-v-3e04de19]{color:#ffb74d;background:#fb8c0033}.info-task-tag.normal[data-v-3e04de19]{color:#81c784;background:#43a04733}.info-task-tag.pending[data-v-3e04de19]{color:#ffffffb3;background:#ffffff1a}.info-task-tag.done[data-v-3e04de19]{color:#64b5f6;background:#1976d233}.info-team[data-v-3e04de19]{display:flex;flex-direction:column;gap:14px;height:100%}.info-team-title[data-v-3e04de19]{font-size:14px;font-weight:600;color:#ffffffe6;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.team-stat-grid[data-v-3e04de19]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.team-stat-card[data-v-3e04de19]{background:#ffffff0f;border-radius:8px;padding:12px;text-align:center}.team-stat-num[data-v-3e04de19]{font-size:22px;font-weight:700;color:#ffffffe6}.team-stat-lbl[data-v-3e04de19]{font-size:11px;color:#ffffff8c;margin-top:2px}.team-dist[data-v-3e04de19]{display:flex;flex-direction:column;gap:6px}.team-dist-title[data-v-3e04de19]{font-size:12px;color:#fff9;font-weight:500}.team-dist-item[data-v-3e04de19]{display:flex;align-items:center;gap:6px;font-size:12px}.team-dist-label[data-v-3e04de19]{width:50px;color:#fff9}.team-dist-bar-wrap[data-v-3e04de19]{flex:1;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.team-dist-bar[data-v-3e04de19]{height:100%;transition:width .3s}.team-dist-bar.overdue[data-v-3e04de19]{background:#e53935}.team-dist-bar.urgent[data-v-3e04de19]{background:#fb8c00}.team-dist-bar.normal[data-v-3e04de19]{background:#43a047}.team-dist-bar.pending[data-v-3e04de19]{background:#bdbdbd}.team-dist-count[data-v-3e04de19]{width:30px;text-align:right;color:#ffffffe6;font-weight:500}.empty-sm[data-v-3e04de19]{text-align:center;color:#ffffff59;font-size:12px;padding:12px 0}.right-panel[data-v-3e04de19]{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.monster-stage[data-v-3e04de19]{flex:1;position:relative;perspective:1400px;perspective-origin:50% 30%;overflow:hidden;outline:none;background:transparent;border-radius:12px;box-shadow:none}.monster-track[data-v-3e04de19]{position:absolute;left:70%;top:70%;width:0;height:0;transform-style:preserve-3d;transition:transform .5s ease}.monster-item[data-v-3e04de19]{position:absolute;left:-120px;top:-140px;width:240px;height:280px;cursor:pointer;transition:opacity .3s,transform .4s ease;transform-style:preserve-3d;padding:0;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;background:transparent;border:none;border-radius:0;animation:monsterDrop-3e04de19 .6s cubic-bezier(.25,.8,.25,1) both,monsterBreathe-3e04de19 3s ease-in-out .7s infinite}@keyframes monsterBreathe-3e04de19{0%,to{margin-top:0}50%{margin-top:-6px}}@keyframes monsterDrop-3e04de19{0%{margin-top:-500px;opacity:0}60%{opacity:1}to{margin-top:0;opacity:1}}.title-days[data-v-3e04de19]{font-weight:600;color:#4a90d9;margin-right:2px}.title-days.days-overdue[data-v-3e04de19]{color:#ff5252}.title-dispatcher[data-v-3e04de19]{color:#ffffffb3;margin-right:2px}.classic-name .title-dispatcher[data-v-3e04de19],.task-card-name .title-dispatcher[data-v-3e04de19]{color:#888}.title-badge[data-v-3e04de19]{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:50%;padding:0 4px;font-size:11px;font-weight:700;color:#fff;background:#4a90d9;margin-right:3px;vertical-align:middle}.title-badge.badge-overdue[data-v-3e04de19]{background:#ff5252}.monster-title-tag[data-v-3e04de19]{font-size:13px;font-weight:500;color:#fff;background:#0009;padding:3px 10px;border-radius:12px;margin-bottom:4px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative;z-index:2}.monster-item.overdue .monster-title-tag[data-v-3e04de19]{color:#ff5252}.monster-item.urgent .monster-title-tag[data-v-3e04de19],.monster-item.normal .monster-title-tag[data-v-3e04de19],.monster-item.pending .monster-title-tag[data-v-3e04de19]{color:#fff}.monster-img-wrap[data-v-3e04de19]{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;width:100%;transform:scale(1.32)}.monster-img[data-v-3e04de19]{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(0,0,0,.85))}.hero-track[data-v-3e04de19]{position:absolute;left:15%;top:70%;width:0;height:0;transform-style:preserve-3d;z-index:50}.hero-item[data-v-3e04de19]{position:absolute;left:-100px;top:-170px;width:200px;height:260px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;transform-style:preserve-3d;animation:monsterDrop-3e04de19 .6s cubic-bezier(.25,.8,.25,1) both,monsterBreathe-3e04de19 3s ease-in-out .7s infinite}.hero-title-tag[data-v-3e04de19]{font-size:13px;font-weight:600;color:#fff;background:#5da9f8d9;padding:3px 12px;border-radius:12px;margin-bottom:4px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 2px 8px #5da9f866}.hero-img-wrap[data-v-3e04de19]{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;width:100%;transform:scale(.945)}.hero-img[data-v-3e04de19]{max-width:100%;max-height:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 8px 16px rgba(0,0,0,.85))}.stage-nav[data-v-3e04de19]{position:absolute;bottom:8px;right:12px;display:flex;align-items:center;gap:6px;z-index:10}.stage-tip-vertical[data-v-3e04de19]{position:absolute;top:50%;right:8px;transform:translateY(-50%);writing-mode:vertical-rl;text-orientation:mixed;font-size:12px;color:#00000073;letter-spacing:2px;pointer-events:none;z-index:5;font-weight:500}.btn-all-tasks[data-v-3e04de19]{position:absolute;top:50%;right:12px;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;background:#000000b3;color:#fff;border:none;border-radius:16px;cursor:pointer;z-index:10;transition:background .15s,transform .15s}.btn-all-tasks[data-v-3e04de19]:hover{background:#000000e0;transform:translateY(-50%) scale(1.05)}.btn-all-tasks svg[data-v-3e04de19]{display:block}.btn-all-tasks-text[data-v-3e04de19]{writing-mode:vertical-rl;text-orientation:upright;font-size:12px;letter-spacing:2px;font-weight:500}.tasks-drawer[data-v-3e04de19]{position:absolute;top:0;right:0;bottom:0;width:70%;background:#141419f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20;display:flex;flex-direction:column;box-shadow:-8px 0 24px #0003}.btn-drawer-close[data-v-3e04de19]{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:4px;padding:6px 10px 6px 12px;background:#ffffff14;color:#fff;border:none;border-radius:14px;cursor:pointer;z-index:2;font-size:12px;transition:background .15s}.btn-drawer-close[data-v-3e04de19]:hover{background:#ffffff2e}.btn-drawer-close-text[data-v-3e04de19]{letter-spacing:1px}.drawer-header[data-v-3e04de19]{width:100%;padding:14px 16px;color:#fff;font-size:15px;font-weight:600;letter-spacing:2px;border-bottom:1px solid rgba(255,255,255,.06);box-sizing:border-box;display:flex;justify-content:center;align-items:center;align-self:stretch;flex:0 0 auto}.drawer-count[data-v-3e04de19]{font-size:12px;color:#ffffff80;font-weight:400}.drawer-body[data-v-3e04de19]{flex:1;overflow-y:auto;padding:12px}.drawer-slide-enter-active[data-v-3e04de19],.drawer-slide-leave-active[data-v-3e04de19]{transition:transform .28s ease}.drawer-slide-enter-from[data-v-3e04de19],.drawer-slide-leave-to[data-v-3e04de19]{transform:translate(100%)}.all-tasks-stage[data-v-3e04de19]{flex:1;position:relative;background:linear-gradient(180deg,#fafafa,#f0f0f5);border-radius:12px;overflow-y:auto;padding:12px}.all-tasks-grid[data-v-3e04de19]{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px}.task-card-dark[data-v-3e04de19]{background:transparent;color:#fff;border-radius:10px;padding:14px;display:flex;gap:14px;cursor:pointer;transition:transform .15s,background .15s;border:1px solid #ccc}.task-card-dark[data-v-3e04de19]:hover{transform:translateY(-2px);border-color:#999}.task-card-img[data-v-3e04de19]{width:66px;height:66px;flex-shrink:0}.task-card-monster[data-v-3e04de19]{width:100%;height:100%;object-fit:contain}.task-card-body[data-v-3e04de19]{flex:1;min-width:0}.task-card-name[data-v-3e04de19]{font-size:15px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:6px}.task-card-desc[data-v-3e04de19]{font-size:12px;color:#fff9;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:6px}.task-card-meta[data-v-3e04de19]{display:flex;gap:8px;align-items:center;margin-bottom:4px}.task-card-field[data-v-3e04de19]{font-size:12px;color:#ffffffbf}.task-card-field label[data-v-3e04de19]{color:#ffffff80;margin-right:2px}.task-card-date[data-v-3e04de19]{font-size:12px;color:#ffffff8c}.task-card-tag[data-v-3e04de19]{font-size:11px;padding:2px 7px;border-radius:3px;background:#ffffff1f;color:#fff}.task-card-tag.overdue[data-v-3e04de19]{background:#ff525240;color:#ff8a80}.task-card-tag.urgent[data-v-3e04de19]{background:#ffab4040;color:#ffcc80}.task-card-tag.normal[data-v-3e04de19]{background:#66bb6a40;color:#a5d6a7}.task-card-tag.pending[data-v-3e04de19]{background:#90a4ae40;color:#cfd8dc}.task-card-people[data-v-3e04de19]{font-size:12px;color:#ffffffb3}.classic-view[data-v-3e04de19]{flex:1;display:flex;gap:12px;min-height:0}.classic-users[data-v-3e04de19]{width:170px;flex-shrink:0;background:#fff;border-radius:12px;padding:12px;box-shadow:0 1px 4px #0000000a;overflow-y:auto;display:flex;flex-direction:column}.classic-users-title[data-v-3e04de19]{font-size:13px;color:#666;font-weight:500;margin-bottom:10px;padding:0 4px}.classic-users-list[data-v-3e04de19]{display:flex;flex-direction:column;gap:4px;overflow-y:auto;flex:1;min-height:0}.classic-user-item[data-v-3e04de19]{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:8px;cursor:pointer;transition:background .15s}.classic-user-item[data-v-3e04de19]:hover{background:#f0f0f5}.classic-user-item.active[data-v-3e04de19]{background:#eaf3ff;box-shadow:inset 0 0 0 1px #5da9f8}.classic-user-avatar[data-v-3e04de19]{width:36px;height:36px;border-radius:50%;background:#eee;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}.classic-user-img[data-v-3e04de19]{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}.classic-user-fallback[data-v-3e04de19]{font-size:14px;font-weight:600;color:#555}.classic-user-name[data-v-3e04de19]{font-size:13px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classic-list[data-v-3e04de19]{flex:1;background:#fff;border-radius:12px;padding:14px;box-shadow:0 1px 4px #0000000a;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.classic-row[data-v-3e04de19]{display:grid;grid-template-columns:2fr 1fr 1fr 2fr 1.2fr .8fr;align-items:center;gap:8px;padding:10px 12px;background:#fafafa;border-radius:8px;cursor:pointer;font-size:13px;transition:background .15s}.classic-row[data-v-3e04de19]:hover{background:#f0f0f5}.classic-row.classic-head[data-v-3e04de19]{background:#f0f0f5;cursor:default;font-weight:600;color:#555;font-size:12px}.classic-row.classic-head[data-v-3e04de19]:hover{background:#f0f0f5}.classic-name[data-v-3e04de19]{color:#333;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classic-dispatcher[data-v-3e04de19]{color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classic-owner[data-v-3e04de19]{color:#666}.classic-date[data-v-3e04de19],.classic-created[data-v-3e04de19]{color:#999;font-size:12px}.classic-days[data-v-3e04de19]{color:#666;font-weight:500}.classic-tag[data-v-3e04de19]{font-size:11px;padding:2px 6px;border-radius:8px;text-align:center}.classic-tag.overdue[data-v-3e04de19]{color:#d32f2f;background:#ffebee}.classic-tag.urgent[data-v-3e04de19]{color:#f57c00;background:#fff3e0}.classic-tag.normal[data-v-3e04de19]{color:#388e3c;background:#e8f5e9}.classic-tag.pending[data-v-3e04de19]{color:#757575;background:#f0f0f5}.classic-tag.done[data-v-3e04de19]{color:#1976d2;background:#e3f2fd}.drawer-mask[data-v-3e04de19]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;z-index:300;display:flex;justify-content:flex-end}.drawer[data-v-3e04de19]{width:480px;background:#fff;height:100%;box-shadow:-8px 0 40px #0000001f;display:flex;flex-direction:column;animation:drawerIn-3e04de19 .3s ease}@keyframes drawerIn-3e04de19{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header[data-v-3e04de19]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #f0f0f5}.drawer-header h3[data-v-3e04de19]{font-size:16px;font-weight:500;color:#333}.drawer-body[data-v-3e04de19]{flex:1;overflow-y:auto;padding:14px 18px}.drawer-filter[data-v-3e04de19]{display:flex;gap:8px;margin-bottom:12px}.drawer-search[data-v-3e04de19]{flex:1;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none}.drawer-search[data-v-3e04de19]:focus{border-color:#5c6bc0}.drawer-select[data-v-3e04de19]{padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none;background:#fff}.drawer-list[data-v-3e04de19]{display:flex;flex-direction:column;gap:6px}.drawer-row[data-v-3e04de19]{display:grid;grid-template-columns:2fr 1fr 1fr .8fr .8fr;align-items:center;gap:8px;padding:10px 12px;background:#fafafa;border-radius:8px;cursor:pointer;font-size:13px;transition:background .15s}.drawer-row[data-v-3e04de19]:hover{background:#f0f0f5}.drawer-name[data-v-3e04de19]{color:#333;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-owner[data-v-3e04de19]{color:#666}.drawer-date[data-v-3e04de19]{color:#999;font-size:12px}.empty-hint[data-v-3e04de19]{text-align:center;color:#ccc;font-size:12px;padding:20px 0}.empty-grid[data-v-3e04de19]{text-align:center;color:#ccc;padding:60px 0;font-size:14px}.status-tag[data-v-3e04de19]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px}.status-tag.status-active[data-v-3e04de19]{color:#555;background:#eee}.status-tag.status-done[data-v-3e04de19]{color:#333;background:#ddd}.status-tag.status-rejected[data-v-3e04de19]{color:#fff;background:#e74c3c}.modal-mask[data-v-3e04de19]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-3e04de19]{background:#fff;border-radius:16px;box-shadow:0 8px 40px #0000001f;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.modal-header[data-v-3e04de19]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #f0f0f5;flex-shrink:0}.modal-header h3[data-v-3e04de19]{font-size:16px;font-weight:500;color:#333}.modal-close[data-v-3e04de19]{font-size:22px;color:#999;cursor:pointer}.modal-close[data-v-3e04de19]:hover{color:#333}.modal-body[data-v-3e04de19]{padding:18px 22px;flex:1;overflow-y:auto}.modal-footer[data-v-3e04de19]{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid #f0f0f5;flex-shrink:0}.form-group[data-v-3e04de19]{margin-bottom:14px}.form-group label[data-v-3e04de19]{display:block;font-size:13px;color:#666;margin-bottom:6px}.form-group input[data-v-3e04de19],.form-group textarea[data-v-3e04de19],.form-group select[data-v-3e04de19],.form-select[data-v-3e04de19]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none;box-sizing:border-box}.form-group input[data-v-3e04de19]:focus,.form-group textarea[data-v-3e04de19]:focus,.form-select[data-v-3e04de19]:focus{border-color:#5c6bc0}.form-row[data-v-3e04de19]{display:flex;gap:12px}.form-group.half[data-v-3e04de19]{flex:1}.required[data-v-3e04de19]{color:#e53935}.ai-name-hint[data-v-3e04de19]{margin-top:8px;font-size:12px;color:#888;line-height:1.5}.ai-name-hint.hint-error[data-v-3e04de19]{color:#e53935;font-weight:500}.btn-cancel[data-v-3e04de19]{background:#f0f0f5;color:#333;border:none;padding:8px 18px;border-radius:6px;cursor:pointer;font-size:13px;transition:background .15s}.btn-cancel[data-v-3e04de19]:hover{background:#e4e4ea}.btn-confirm[data-v-3e04de19]{background:#333;color:#fff;border:none;padding:8px 18px;border-radius:6px;cursor:pointer;font-size:13px}.btn-confirm[data-v-3e04de19]:hover{background:#555}.btn-confirm.btn-danger[data-v-3e04de19]{background:#e74c3c}.btn-confirm.btn-danger[data-v-3e04de19]:hover{background:#c0392b}.btn-cancel.btn-danger[data-v-3e04de19]{background:#fff5f4;color:#e74c3c;border:1px solid #f5c6c0}.btn-cancel.btn-danger[data-v-3e04de19]:hover{background:#ffebe9;border-color:#e74c3c}.footer-divider[data-v-3e04de19]{width:1px;height:20px;background:#e0e0e6;margin:0 4px;align-self:center}.reject-confirm-mask[data-v-3e04de19]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:300}.reject-confirm-box[data-v-3e04de19]{background:#fff;border-radius:12px;padding:24px;width:360px;text-align:center}.reject-confirm-box p[data-v-3e04de19]{margin:0 0 20px;font-size:14px;color:#333;line-height:1.6}.reject-confirm-actions[data-v-3e04de19]{display:flex;gap:12px;justify-content:center}.executor-checkboxes[data-v-3e04de19]{display:flex;flex-wrap:wrap;gap:8px}.checkbox-item[data-v-3e04de19]{display:flex;align-items:center;gap:4px;font-size:13px;color:#555;cursor:pointer}.checkbox-item input[data-v-3e04de19]{accent-color:#333}.detail-row[data-v-3e04de19]{display:flex;align-items:flex-start;padding:8px 0;border-bottom:1px solid #f5f5fa;gap:12px}.detail-row.col[data-v-3e04de19]{flex-direction:column}.detail-label[data-v-3e04de19]{font-size:13px;color:#999;min-width:70px;flex-shrink:0}.detail-row span[data-v-3e04de19]:not(.detail-label):not(.status-tag){font-size:13px;color:#333}.detail-row p[data-v-3e04de19]{font-size:13px;color:#333;margin:4px 0 0;line-height:1.6}.att-item[data-v-3e04de19]{display:flex;align-items:center;gap:8px;padding:2px 0}.att-item a[data-v-3e04de19]{font-size:13px;color:#5c6bc0;text-decoration:none}.att-item a[data-v-3e04de19]:hover{text-decoration:underline}.btn-link[data-v-3e04de19]{background:#fff;border:1px solid #d0d0e0;color:#5c6bc0;font-size:12px;cursor:pointer;padding:2px 8px;border-radius:3px;text-decoration:none;transition:all .15s}.btn-link[data-v-3e04de19]:hover{background:#5c6bc0;color:#fff;border-color:#5c6bc0}.duration-display[data-v-3e04de19]{padding:8px 10px;background:#f8f8fc;border:1px solid #e8e8f0;border-radius:6px;font-size:13px;color:#333}.datetime-split[data-v-3e04de19]{display:flex;gap:8px}.datetime-split input[type=date][data-v-3e04de19]{flex:3;min-width:150px}.datetime-split input[type=time][data-v-3e04de19]{flex:2;min-width:90px}.att-list[data-v-3e04de19]{margin-bottom:8px}.att-row[data-v-3e04de19]{display:flex;align-items:center;gap:8px;padding:4px 0}.att-link[data-v-3e04de19]{font-size:13px;color:#5c6bc0;text-decoration:none}.att-link[data-v-3e04de19]:hover{text-decoration:underline}.att-del[data-v-3e04de19]{color:#e53935;cursor:pointer;font-size:16px;line-height:1}.att-upload[data-v-3e04de19]{display:flex;align-items:center;gap:8px}.btn-upload[data-v-3e04de19]{background:#f0f0f5;color:#333;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px}.btn-upload[data-v-3e04de19]:hover{background:#e0e0e8}.pending-hint[data-v-3e04de19]{font-size:12px;color:#999}.history-table[data-v-3e04de19]{width:100%;border-collapse:collapse;font-size:13px}.history-table th[data-v-3e04de19]{text-align:left;padding:8px;background:#f8f8fc;color:#666;font-weight:500;border-bottom:1px solid #eee}.history-table td[data-v-3e04de19]{padding:8px;border-bottom:1px solid #f5f5fa;color:#333}.link-btn[data-v-3e04de19]{color:#5c6bc0;cursor:pointer;margin-right:8px}.link-btn[data-v-3e04de19]:hover{text-decoration:underline}.link-btn.danger[data-v-3e04de19]{color:#e53935}.ext-badge[data-v-3e04de19]{position:absolute;top:6px;right:6px;background:#6a4b9c;color:#fff;font-size:11px;font-weight:600;padding:1px 6px;border-radius:8px;line-height:1.4;z-index:2;box-shadow:0 1px 3px #6a4b9c66}.unmatched-hint[data-v-3e04de19]{color:#e65100;font-size:12px;font-weight:500;background:#fff3e0;padding:1px 6px;border-radius:4px;border:1px dashed #ffa726}.ext-notice[data-v-3e04de19]{background:#f3e8ff;border:1px solid #cfa3ff;border-left:3px solid #6a4b9c;padding:8px 12px;border-radius:6px;margin-bottom:12px;font-size:12px;color:#4a2c70;line-height:1.5}.ext-notice[data-v-3e04de19]:before{content:"ⓘ ";font-weight:700}.ext-source-tag[data-v-3e04de19]{background:#6a4b9c;color:#fff;font-size:11px;font-weight:500;padding:2px 8px;border-radius:10px}.btn-unmatched[data-v-3e04de19]{background:#f0f0f5;color:#333;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;position:relative}.btn-unmatched[data-v-3e04de19]:hover{background:#e0e0e8}.badge-count[data-v-3e04de19]{display:inline-block;min-width:18px;height:18px;background:#e53935;color:#fff;font-size:11px;font-weight:700;border-radius:9px;padding:0 5px;margin-left:4px;line-height:18px;text-align:center}.unmatched-table .td-name[data-v-3e04de19]{min-width:160px}.unmatched-table .td-phone[data-v-3e04de19]{font-family:monospace;color:#555}.unmatched-table .td-ext-id[data-v-3e04de19]{font-size:10px;color:#aaa;margin-top:2px;font-family:monospace}.unmatched-table .ext-badge[data-v-3e04de19]{position:static;display:inline-block;margin-right:4px;vertical-align:middle}.assign-select[data-v-3e04de19]{padding:4px 6px;font-size:12px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;min-width:100px}.assign-select[data-v-3e04de19]:focus{outline:none;border-color:#6a4b9c}.drawer-row .ext-badge[data-v-3e04de19],.classic-row .ext-badge[data-v-3e04de19]{position:static;display:inline-block;margin-right:4px;vertical-align:middle}.btn-kill[data-v-3e04de19]{position:absolute;top:-8px;right:8px;background:#333;color:#fff;border:none;padding:3px 10px;border-radius:4px;font-size:11px;cursor:pointer;z-index:3}.btn-kill[data-v-3e04de19]:hover{background:#111}.monster-item .ext-badge[data-v-3e04de19]{top:-8px;left:8px}.toolbar[data-v-a697d2af]{margin-bottom:16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-bar[data-v-a697d2af]{display:flex;align-items:center;gap:10px;margin-left:auto}.search-input[data-v-a697d2af]{padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;width:220px;outline:none}.search-input[data-v-a697d2af]:focus{border-color:#5c6bc0}.filter-select[data-v-a697d2af]{min-width:160px}.filter-select-value[data-v-a697d2af]{padding:8px 12px!important;font-size:13px!important;min-height:36px!important}.filter-select-value .placeholder[data-v-a697d2af]{color:#999}.card[data-v-a697d2af]{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a;overflow:hidden}.table[data-v-a697d2af]{width:100%;border-collapse:collapse;font-size:14px}.table th[data-v-a697d2af]{text-align:left;padding:14px 16px;background:#fafafa;color:#666;font-weight:500;border-bottom:1px solid #f0f0f0;white-space:nowrap}.table td[data-v-a697d2af]{padding:12px 16px;border-bottom:1px solid #f5f5f5;color:#333}.table tbody tr[data-v-a697d2af]:hover{background:#fafafa}.name-cell[data-v-a697d2af]{font-weight:500}.link[data-v-a697d2af]{color:#3498db;text-decoration:none;word-break:break-all}.link[data-v-a697d2af]:hover{text-decoration:underline}.empty-text[data-v-a697d2af]{color:#ccc}.empty[data-v-a697d2af]{text-align:center;color:#999;padding:40px 0!important}.thumb[data-v-a697d2af]{width:60px;height:40px;object-fit:cover;border-radius:4px;cursor:pointer;border:1px solid #eee}.thumb[data-v-a697d2af]:hover{opacity:.8}.status-tag[data-v-a697d2af]{display:inline-block;padding:2px 10px;border-radius:10px;font-size:12px;white-space:nowrap}.status-tag.dev[data-v-a697d2af]{background:#f5f5f5;color:#999}.status-tag.demo[data-v-a697d2af]{background:#e8f5e9;color:#4caf50}.status-tag.commercial[data-v-a697d2af]{background:#e3f2fd;color:#2196f3}.id-cell[data-v-a697d2af]{position:relative;padding-left:20px!important}.status-bar[data-v-a697d2af]{position:absolute;left:0;top:6px;bottom:6px;width:4px;border-radius:2px}.action-cell[data-v-a697d2af]{white-space:nowrap}.btn-link[data-v-a697d2af]{background:none;border:none;color:#3498db;cursor:pointer;font-size:13px;padding:4px 8px}.btn-link[data-v-a697d2af]:hover{text-decoration:underline}.btn-link.btn-danger[data-v-a697d2af]{color:#e74c3c}.modal-mask[data-v-a697d2af]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-a697d2af]{background:#fff;border-radius:12px;width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.modal-header[data-v-a697d2af]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #f0f0f0}.modal-header h3[data-v-a697d2af]{margin:0;font-size:16px;font-weight:600}.modal-close[data-v-a697d2af]{cursor:pointer;font-size:22px;color:#999;line-height:1}.modal-close[data-v-a697d2af]:hover{color:#333}.modal-body[data-v-a697d2af]{padding:20px 24px}.modal-footer[data-v-a697d2af]{padding:16px 24px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;gap:12px}.form-group[data-v-a697d2af]{margin-bottom:16px}.form-group label[data-v-a697d2af]{display:block;margin-bottom:6px;font-size:13px;color:#555;font-weight:500}.form-group input[data-v-a697d2af],.form-select[data-v-a697d2af]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box;outline:none}.form-group input[data-v-a697d2af]:focus,.form-select[data-v-a697d2af]:focus{border-color:#3498db}.required[data-v-a697d2af]{color:#e74c3c}.upload-area[data-v-a697d2af]{border:2px dashed #ddd;border-radius:8px;padding:20px;text-align:center;cursor:pointer;outline:none}.upload-area[data-v-a697d2af]:hover{border-color:#5c6bc0}.upload-hint[data-v-a697d2af]{color:#999;font-size:13px}.preview-list[data-v-a697d2af]{display:flex;gap:8px;flex-wrap:wrap}.preview-item[data-v-a697d2af]{position:relative;width:64px;height:64px}.preview-item img[data-v-a697d2af]{width:100%;height:100%;object-fit:cover;border-radius:6px;cursor:zoom-in}.preview-item .remove[data-v-a697d2af]{position:absolute;top:-6px;right:-6px;width:16px;height:16px;background:#ff4d4f;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:11px}.btn-sm[data-v-a697d2af]{border:none;padding:4px 12px;border-radius:6px;cursor:pointer;font-size:12px}.btn-sm.btn-default[data-v-a697d2af]{background:#f0f0f5;color:#333}.custom-select[data-v-a697d2af]{position:relative;width:100%}.custom-select-value[data-v-a697d2af]{width:100%;padding:8px 32px 8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box;outline:none;cursor:pointer;min-height:40px;background:#fff}.custom-select-value[data-v-a697d2af]:hover{border-color:#3498db}.custom-select-arrow[data-v-a697d2af]{font-size:10px;color:#999;position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}.custom-select-dropdown[data-v-a697d2af]{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:100;max-height:240px;overflow-y:auto}.custom-select-option[data-v-a697d2af]{padding:10px 12px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px}.custom-select-option[data-v-a697d2af]:hover{background:#f5f5f5}.custom-select-option.active[data-v-a697d2af]{background:#e8f4fd}.ip-text[data-v-a697d2af]{color:#999;font-size:13px}.btn[data-v-a697d2af]{border:none;padding:7px 16px;border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s}.btn-primary[data-v-a697d2af]{background:#333;color:#fff}.btn-primary[data-v-a697d2af]:hover{background:#555}.btn-default[data-v-a697d2af]{background:#f5f5f5;color:#333}.btn-default[data-v-a697d2af]:hover{background:#eee}.preview-overlay[data-v-a697d2af]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:2000;cursor:zoom-out}.preview-full[data-v-a697d2af]{max-width:90%;max-height:90%;border-radius:8px}.toolbar[data-v-fb8dadf5]{margin-bottom:16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-bar[data-v-fb8dadf5]{display:flex;align-items:center;gap:10px;margin-left:auto}.search-input[data-v-fb8dadf5]{padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;width:200px;outline:none}.search-input[data-v-fb8dadf5]:focus{border-color:#5c6bc0}.filter-select-native[data-v-fb8dadf5]{padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;background:#fff;outline:none;min-width:110px}.card[data-v-fb8dadf5]{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a;overflow:auto}.table[data-v-fb8dadf5]{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed;min-width:1080px}.table th[data-v-fb8dadf5]{text-align:left;padding:10px 8px;background:#fafafa;color:#666;font-weight:500;border-bottom:1px solid #f0f0f0;white-space:nowrap}.table td[data-v-fb8dadf5]{padding:10px 8px;border-bottom:1px solid #f5f5f5;color:#333;vertical-align:middle;overflow:hidden}.table tbody tr[data-v-fb8dadf5]:hover{background:#fafafa}.name-cell[data-v-fb8dadf5]{font-weight:500;white-space:nowrap}.col-idx[data-v-fb8dadf5]{width:44px}.col-status[data-v-fb8dadf5]{width:64px}.col-own[data-v-fb8dadf5]{width:52px}.col-ip[data-v-fb8dadf5]{width:128px}.col-os[data-v-fb8dadf5]{width:72px}.col-spec[data-v-fb8dadf5]{width:64px}.col-disk[data-v-fb8dadf5]{width:58px}.col-bt[data-v-fb8dadf5]{width:200px}.col-user[data-v-fb8dadf5]{width:80px}.col-pwd[data-v-fb8dadf5]{width:72px}.col-remark[data-v-fb8dadf5]{width:140px}.col-date[data-v-fb8dadf5]{width:96px;white-space:nowrap}.col-act[data-v-fb8dadf5]{width:168px}.ellipsis[data-v-fb8dadf5]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.link[data-v-fb8dadf5]{color:#3498db;text-decoration:none}.link[data-v-fb8dadf5]:hover{text-decoration:underline}.empty-text[data-v-fb8dadf5]{color:#ccc}.empty[data-v-fb8dadf5]{text-align:center;color:#999;padding:40px 0!important}.status-tag[data-v-fb8dadf5]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;white-space:nowrap}.status-tag.ok[data-v-fb8dadf5]{background:#e8f5e9;color:#43a047}.status-tag.idle[data-v-fb8dadf5]{background:#fff8e1;color:#f9a825}.status-tag.off[data-v-fb8dadf5]{background:#f5f5f5;color:#999}.own-tag[data-v-fb8dadf5]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;white-space:nowrap}.own-tag.test[data-v-fb8dadf5]{background:#e3f2fd;color:#1e88e5}.own-tag.prod[data-v-fb8dadf5]{background:#e8f5e9;color:#43a047}.own-tag.client[data-v-fb8dadf5]{background:#fce4ec;color:#e91e63}.action-cell[data-v-fb8dadf5]{white-space:nowrap}.btn[data-v-fb8dadf5]{border:none;padding:7px 16px;border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s}.btn-primary[data-v-fb8dadf5]{background:#333;color:#fff}.btn-primary[data-v-fb8dadf5]:hover{background:#555}.btn-default[data-v-fb8dadf5]{background:#f5f5f5;color:#333}.btn-default[data-v-fb8dadf5]:hover{background:#eee}.btn-link[data-v-fb8dadf5]{background:none;border:none;color:#3498db;cursor:pointer;font-size:13px;padding:2px 6px}.btn-link[data-v-fb8dadf5]:hover{text-decoration:underline}.btn-link.btn-danger[data-v-fb8dadf5]{color:#e74c3c}.modal-mask[data-v-fb8dadf5]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-fb8dadf5]{background:#fff;border-radius:12px;width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.pwd-modal[data-v-fb8dadf5]{width:400px}.modal-header[data-v-fb8dadf5]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #f0f0f0}.modal-header h3[data-v-fb8dadf5]{margin:0;font-size:16px;font-weight:600}.modal-close[data-v-fb8dadf5]{cursor:pointer;font-size:22px;color:#999;line-height:1}.modal-body[data-v-fb8dadf5]{padding:18px 22px}.modal-footer[data-v-fb8dadf5]{padding:14px 22px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;gap:12px}.form-row[data-v-fb8dadf5]{display:flex;gap:12px}.form-row .form-group[data-v-fb8dadf5]{flex:1}.form-group[data-v-fb8dadf5]{margin-bottom:14px}.form-group label[data-v-fb8dadf5]{display:block;margin-bottom:6px;font-size:13px;color:#555;font-weight:500}.form-group input[data-v-fb8dadf5],.form-select[data-v-fb8dadf5]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box;outline:none;background:#fff}.form-group input[data-v-fb8dadf5]:focus,.form-select[data-v-fb8dadf5]:focus{border-color:#5c6bc0}.required[data-v-fb8dadf5]{color:#e74c3c}.pwd-box[data-v-fb8dadf5]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:16px;padding:14px 16px;background:#f7f8fc;border-radius:8px;word-break:break-all;-webkit-user-select:all;user-select:all}.toolbar[data-v-871dc141]{margin-bottom:16px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.title-block[data-v-871dc141]{display:flex;flex-direction:column;gap:4px}.title-block h3[data-v-871dc141]{margin:0;font-size:16px;font-weight:600;color:#333}.sub[data-v-871dc141]{font-size:13px;color:#666;display:flex;align-items:center;gap:8px}.card[data-v-871dc141]{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a;overflow:auto}.table[data-v-871dc141]{width:100%;border-collapse:collapse;font-size:14px;table-layout:fixed;min-width:900px}.table th[data-v-871dc141]{text-align:left;padding:12px;background:#fafafa;color:#666;font-weight:500;border-bottom:1px solid #f0f0f0;white-space:nowrap}.table td[data-v-871dc141]{padding:10px 12px;border-bottom:1px solid #f5f5f5;color:#333;overflow:hidden;vertical-align:middle}.table tbody tr[data-v-871dc141]:hover{background:#fafafa}.ellipsis[data-v-871dc141]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.link[data-v-871dc141]{color:#3498db;text-decoration:none}.link[data-v-871dc141]:hover{text-decoration:underline}.empty-text[data-v-871dc141]{color:#ccc}.empty[data-v-871dc141]{text-align:center;color:#999;padding:40px 0!important}.status-tag[data-v-871dc141]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;white-space:nowrap}.status-tag.ok[data-v-871dc141]{background:#e8f5e9;color:#43a047}.status-tag.idle[data-v-871dc141]{background:#fff8e1;color:#f9a825}.status-tag.off[data-v-871dc141]{background:#f5f5f5;color:#999}.action-cell[data-v-871dc141]{white-space:nowrap}.btn-link[data-v-871dc141]{background:none;border:none;color:#3498db;cursor:pointer;font-size:13px;padding:2px 6px}.btn-link[data-v-871dc141]:hover{text-decoration:underline}.btn-link.btn-danger[data-v-871dc141]{color:#e74c3c}.btn[data-v-871dc141]{border:none;padding:7px 16px;border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s}.btn-primary[data-v-871dc141]{background:#333;color:#fff}.btn-primary[data-v-871dc141]:hover{background:#555}.btn-default[data-v-871dc141]{background:#f5f5f5;color:#333}.btn-default[data-v-871dc141]:hover{background:#eee}.modal-mask[data-v-871dc141]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-871dc141]{background:#fff;border-radius:12px;width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.modal-header[data-v-871dc141]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #f0f0f0}.modal-header h3[data-v-871dc141]{margin:0;font-size:16px;font-weight:600}.modal-close[data-v-871dc141]{cursor:pointer;font-size:22px;color:#999;line-height:1}.modal-body[data-v-871dc141]{padding:18px 22px}.modal-footer[data-v-871dc141]{padding:14px 22px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;gap:12px}.form-group[data-v-871dc141]{margin-bottom:14px}.form-group label[data-v-871dc141]{display:block;margin-bottom:6px;font-size:13px;color:#555;font-weight:500}.form-group input[data-v-871dc141]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box;outline:none}.form-group input[data-v-871dc141]:focus{border-color:#5c6bc0}.required[data-v-871dc141]{color:#e74c3c}.toolbar[data-v-8d74482e]{margin-bottom:16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-bar[data-v-8d74482e]{display:flex;align-items:center;gap:10px;margin-left:auto}.search-input[data-v-8d74482e]{padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;width:220px;outline:none}.search-input[data-v-8d74482e]:focus{border-color:#5c6bc0}.filter-select-native[data-v-8d74482e]{padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;background:#fff;outline:none;min-width:110px}.card[data-v-8d74482e]{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a;overflow:auto}.table[data-v-8d74482e]{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed;min-width:1180px}.table th[data-v-8d74482e]{text-align:left;padding:10px 8px;background:#fafafa;color:#666;font-weight:500;border-bottom:1px solid #f0f0f0;white-space:nowrap}.table td[data-v-8d74482e]{padding:10px 8px;border-bottom:1px solid #f5f5f5;color:#333;vertical-align:middle;overflow:hidden}.table tbody tr[data-v-8d74482e]:hover{background:#fafafa}.col-idx[data-v-8d74482e]{width:44px}.col-name[data-v-8d74482e]{width:120px}.col-url[data-v-8d74482e]{width:140px}.col-clients[data-v-8d74482e]{width:100px}.col-status[data-v-8d74482e]{width:64px}.col-ip[data-v-8d74482e]{width:120px}.col-git[data-v-8d74482e]{width:140px}.col-branch[data-v-8d74482e]{width:90px}.col-date[data-v-8d74482e]{width:96px;white-space:nowrap}.col-act[data-v-8d74482e]{width:168px}.name-cell[data-v-8d74482e]{font-weight:500}.ellipsis[data-v-8d74482e]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.link[data-v-8d74482e]{color:#3498db;text-decoration:none}.link[data-v-8d74482e]:hover{text-decoration:underline}.empty-text[data-v-8d74482e]{color:#ccc}.empty[data-v-8d74482e]{text-align:center;color:#999;padding:40px 0!important}.tag[data-v-8d74482e]{display:inline-block;padding:1px 7px;margin:0 4px 2px 0;border-radius:8px;background:#eef0f8;color:#5c6bc0;font-size:12px}.status-tag[data-v-8d74482e]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;white-space:nowrap}.status-tag.demo[data-v-8d74482e]{background:#f5f5f5;color:#888}.status-tag.test[data-v-8d74482e]{background:#fff8e1;color:#f9a825}.status-tag.online[data-v-8d74482e]{background:#e8f5e9;color:#43a047}.action-cell[data-v-8d74482e]{white-space:nowrap}.btn[data-v-8d74482e]{border:none;padding:7px 16px;border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s}.btn-primary[data-v-8d74482e]{background:#333;color:#fff}.btn-primary[data-v-8d74482e]:hover{background:#555}.btn-default[data-v-8d74482e]{background:#f5f5f5;color:#333}.btn-default[data-v-8d74482e]:hover{background:#eee}.btn-link[data-v-8d74482e]{background:none;border:none;color:#3498db;cursor:pointer;font-size:13px;padding:2px 6px}.btn-link[data-v-8d74482e]:hover{text-decoration:underline}.btn-link.btn-danger[data-v-8d74482e]{color:#e74c3c}.modal-mask[data-v-8d74482e]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-8d74482e]{background:#fff;border-radius:12px;width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.modal-header[data-v-8d74482e]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #f0f0f0}.modal-header h3[data-v-8d74482e]{margin:0;font-size:16px;font-weight:600}.modal-close[data-v-8d74482e]{cursor:pointer;font-size:22px;color:#999;line-height:1}.modal-body[data-v-8d74482e]{padding:18px 22px}.modal-footer[data-v-8d74482e]{padding:14px 22px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;gap:12px}.form-row[data-v-8d74482e]{display:flex;gap:12px}.form-row .form-group[data-v-8d74482e]{flex:1}.form-group[data-v-8d74482e]{margin-bottom:14px}.form-group label[data-v-8d74482e]{display:block;margin-bottom:6px;font-size:13px;color:#555;font-weight:500}.form-group input[data-v-8d74482e],.form-select[data-v-8d74482e]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box;outline:none;background:#fff}.form-group input[data-v-8d74482e]:focus,.form-select[data-v-8d74482e]:focus{border-color:#5c6bc0}.required[data-v-8d74482e]{color:#e74c3c}.check-row[data-v-8d74482e]{display:flex;gap:16px;flex-wrap:wrap;padding-top:4px}.check-item[data-v-8d74482e]{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#444;font-weight:400;cursor:pointer}.toolbar[data-v-adaf4f88]{margin-bottom:16px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.title-block[data-v-adaf4f88]{display:flex;flex-direction:column;gap:4px}.title-block h3[data-v-adaf4f88]{margin:0;font-size:16px;font-weight:600;color:#333}.sub[data-v-adaf4f88]{font-size:13px;color:#666}.card[data-v-adaf4f88]{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a;overflow:auto}.table[data-v-adaf4f88]{width:100%;border-collapse:collapse;font-size:14px;table-layout:fixed;min-width:960px}.table th[data-v-adaf4f88]{text-align:left;padding:12px;background:#fafafa;color:#666;font-weight:500;border-bottom:1px solid #f0f0f0;white-space:nowrap}.table td[data-v-adaf4f88]{padding:10px 12px;border-bottom:1px solid #f5f5f5;color:#333;overflow:hidden;vertical-align:middle}.table tbody tr[data-v-adaf4f88]:hover{background:#fafafa}.ellipsis[data-v-adaf4f88]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.link[data-v-adaf4f88]{color:#3498db;text-decoration:none}.link[data-v-adaf4f88]:hover{text-decoration:underline}.empty-text[data-v-adaf4f88]{color:#ccc}.empty[data-v-adaf4f88]{text-align:center;color:#999;padding:40px 0!important}.type-tag[data-v-adaf4f88]{display:inline-block;padding:2px 8px;border-radius:8px;background:#eef0f8;color:#5c6bc0;font-size:12px}.action-cell[data-v-adaf4f88]{white-space:nowrap}.btn-link[data-v-adaf4f88]{background:none;border:none;color:#3498db;cursor:pointer;font-size:13px;padding:2px 6px}.btn-link[data-v-adaf4f88]:hover{text-decoration:underline}.btn-link.btn-danger[data-v-adaf4f88]{color:#e74c3c}.btn[data-v-adaf4f88]{border:none;padding:7px 16px;border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s}.btn-primary[data-v-adaf4f88]{background:#333;color:#fff}.btn-primary[data-v-adaf4f88]:hover{background:#555}.btn-default[data-v-adaf4f88]{background:#f5f5f5;color:#333}.btn-default[data-v-adaf4f88]:hover{background:#eee}.modal-mask[data-v-adaf4f88]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-adaf4f88]{background:#fff;border-radius:12px;width:540px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.modal-header[data-v-adaf4f88]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #f0f0f0}.modal-header h3[data-v-adaf4f88]{margin:0;font-size:16px;font-weight:600}.modal-close[data-v-adaf4f88]{cursor:pointer;font-size:22px;color:#999;line-height:1}.modal-body[data-v-adaf4f88]{padding:18px 22px}.modal-footer[data-v-adaf4f88]{padding:14px 22px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;gap:12px}.form-row[data-v-adaf4f88]{display:flex;gap:12px}.form-row .form-group[data-v-adaf4f88]{flex:1}.form-group[data-v-adaf4f88]{margin-bottom:14px}.form-group label[data-v-adaf4f88]{display:block;margin-bottom:6px;font-size:13px;color:#555;font-weight:500}.form-group input[data-v-adaf4f88],.form-select[data-v-adaf4f88]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box;outline:none;background:#fff}.form-group input[data-v-adaf4f88]:focus,.form-select[data-v-adaf4f88]:focus{border-color:#5c6bc0}.required[data-v-adaf4f88]{color:#e74c3c}.toolbar[data-v-504ce2fe]{margin-bottom:16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-bar[data-v-504ce2fe]{display:flex;align-items:center;gap:10px;margin-left:auto}.search-input[data-v-504ce2fe]{padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;width:240px;outline:none}.search-input[data-v-504ce2fe]:focus{border-color:#5c6bc0}.filter-select-native[data-v-504ce2fe]{padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;background:#fff;outline:none;min-width:110px}.card[data-v-504ce2fe]{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a;overflow:auto}.table[data-v-504ce2fe]{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed;min-width:1100px}.table th[data-v-504ce2fe]{text-align:left;padding:10px 8px;background:#fafafa;color:#666;font-weight:500;border-bottom:1px solid #f0f0f0;white-space:nowrap}.table td[data-v-504ce2fe]{padding:10px 8px;border-bottom:1px solid #f5f5f5;color:#333;vertical-align:middle;overflow:hidden}.table tbody tr[data-v-504ce2fe]:hover{background:#fafafa}.col-idx[data-v-504ce2fe]{width:44px}.col-type[data-v-504ce2fe]{width:80px}.col-name[data-v-504ce2fe]{width:130px}.col-company[data-v-504ce2fe]{width:110px}.col-url[data-v-504ce2fe]{width:160px}.col-account[data-v-504ce2fe]{width:110px}.col-owner[data-v-504ce2fe]{width:100px}.col-remark[data-v-504ce2fe]{width:120px}.col-date[data-v-504ce2fe]{width:96px;white-space:nowrap}.col-act[data-v-504ce2fe]{width:110px}.name-cell[data-v-504ce2fe]{font-weight:500}.ellipsis[data-v-504ce2fe]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.link[data-v-504ce2fe]{color:#3498db;text-decoration:none}.link[data-v-504ce2fe]:hover{text-decoration:underline}.empty-text[data-v-504ce2fe]{color:#ccc}.empty[data-v-504ce2fe]{text-align:center;color:#999;padding:40px 0!important}.type-tag[data-v-504ce2fe]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;white-space:nowrap}.type-tag.sms[data-v-504ce2fe]{background:#e3f2fd;color:#1e88e5}.type-tag.ai[data-v-504ce2fe]{background:#f3e5f5;color:#8e24aa}.type-tag.oss[data-v-504ce2fe]{background:#e8f5e9;color:#43a047}.type-tag.pay[data-v-504ce2fe]{background:#fff3e0;color:#fb8c00}.type-tag.map[data-v-504ce2fe]{background:#e0f7fa;color:#00838f}.type-tag.push[data-v-504ce2fe]{background:#fce4ec;color:#e91e63}.type-tag.other[data-v-504ce2fe]{background:#f5f5f5;color:#888}.action-cell[data-v-504ce2fe]{white-space:nowrap}.btn[data-v-504ce2fe]{border:none;padding:7px 16px;border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s}.btn-primary[data-v-504ce2fe]{background:#333;color:#fff}.btn-primary[data-v-504ce2fe]:hover{background:#555}.btn-default[data-v-504ce2fe]{background:#f5f5f5;color:#333}.btn-default[data-v-504ce2fe]:hover{background:#eee}.btn-link[data-v-504ce2fe]{background:none;border:none;color:#3498db;cursor:pointer;font-size:13px;padding:2px 6px}.btn-link[data-v-504ce2fe]:hover{text-decoration:underline}.btn-link.btn-danger[data-v-504ce2fe]{color:#e74c3c}.modal-mask[data-v-504ce2fe]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-504ce2fe]{background:#fff;border-radius:12px;width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.modal-header[data-v-504ce2fe]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #f0f0f0}.modal-header h3[data-v-504ce2fe]{margin:0;font-size:16px;font-weight:600}.modal-close[data-v-504ce2fe]{cursor:pointer;font-size:22px;color:#999;line-height:1}.modal-body[data-v-504ce2fe]{padding:18px 22px}.modal-footer[data-v-504ce2fe]{padding:14px 22px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;gap:12px}.form-row[data-v-504ce2fe]{display:flex;gap:12px}.form-row .form-group[data-v-504ce2fe]{flex:1}.form-group[data-v-504ce2fe]{margin-bottom:14px}.form-group label[data-v-504ce2fe]{display:block;margin-bottom:6px;font-size:13px;color:#555;font-weight:500}.form-group input[data-v-504ce2fe],.form-select[data-v-504ce2fe]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box;outline:none;background:#fff}.form-group input[data-v-504ce2fe]:focus,.form-select[data-v-504ce2fe]:focus{border-color:#5c6bc0}.required[data-v-504ce2fe]{color:#e74c3c}.testing-layout[data-v-58b762f9]{display:flex;gap:16px;height:calc(100vh - 96px)}.project-panel[data-v-58b762f9]{width:260px;flex-shrink:0;background:var(--card-bg, #fff);border-radius:12px;padding:14px 12px;box-shadow:0 1px 4px #0000000a;display:flex;flex-direction:column;overflow:hidden}.panel-header[data-v-58b762f9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.panel-title[data-v-58b762f9]{font-size:14px;font-weight:500;color:var(--text, #333)}.btn-add[data-v-58b762f9]{background:#333;color:#fff;border:none;width:24px;height:24px;border-radius:6px;cursor:pointer;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;text-decoration:none}.btn-add[data-v-58b762f9]:hover{background:#555;color:#fff}.project-form[data-v-58b762f9]{margin-bottom:10px}.project-form input[data-v-58b762f9]{width:100%;padding:6px 8px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;outline:none;margin-bottom:6px;box-sizing:border-box;background:var(--card-bg, #fff);color:var(--text, #333)}.project-form input[data-v-58b762f9]:focus{border-color:#555}.linked-select[data-v-58b762f9]{width:100%;padding:6px 8px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:12px;outline:none;margin-bottom:6px;box-sizing:border-box;background:var(--card-bg, #fff);color:var(--text, #333)}.linked-select[data-v-58b762f9]:focus{border-color:#555}.project-form-btns[data-v-58b762f9]{display:flex;gap:6px}.btn-sm[data-v-58b762f9]{border:none;padding:4px 12px;border-radius:6px;cursor:pointer;font-size:12px}.btn-sm.btn-primary[data-v-58b762f9]{background:#333;color:#fff}.btn-sm.btn-default[data-v-58b762f9]{background:var(--sidebar-bg, #f5f5f5);color:var(--text, #333)}.project-list[data-v-58b762f9]{flex:1;overflow-y:auto}.project-item[data-v-58b762f9]{display:flex;justify-content:space-between;align-items:center;padding:8px 6px;border-radius:8px;cursor:pointer;margin-bottom:4px;transition:background .15s}.project-item[data-v-58b762f9]:hover{background:var(--sidebar-bg, #f5f5f5)}.project-item.active[data-v-58b762f9]{background:var(--sidebar-bg, #f0f0f0);box-shadow:0 0 0 2px #555 inset}.project-item-main[data-v-58b762f9]{flex:1;overflow:hidden;min-width:0}.project-item-name[data-v-58b762f9]{font-size:13px;font-weight:500;color:var(--text, #333);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-item-linked[data-v-58b762f9]{font-size:11px;color:#999;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-item-actions[data-v-58b762f9]{display:none;gap:2px;flex-shrink:0;margin-left:4px}.project-item:hover .project-item-actions[data-v-58b762f9]{display:flex}.btn-item-edit[data-v-58b762f9],.btn-item-del[data-v-58b762f9]{border:none;background:transparent;cursor:pointer;padding:2px 4px;font-size:14px;line-height:1;border-radius:4px;color:#888}.btn-item-edit[data-v-58b762f9]:hover{color:#333;background:#0000000f}.btn-item-del[data-v-58b762f9]:hover{color:#e53935;background:#e5393514}.project-name[data-v-58b762f9]{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;color:var(--text, #333)}.project-actions[data-v-58b762f9]{display:none;gap:2px;flex-shrink:0}.project-item:hover .project-actions[data-v-58b762f9]{display:flex}.btn-tiny[data-v-58b762f9]{border:none;background:none;cursor:pointer;font-size:14px;color:#999;padding:0 2px;line-height:1}.btn-tiny[data-v-58b762f9]:hover{color:#5c6bc0}.btn-tiny.btn-danger[data-v-58b762f9]:hover{color:#ff4d4f}.empty-sm[data-v-58b762f9]{text-align:center;color:#ccc;font-size:13px;padding:24px 0}.bug-panel[data-v-58b762f9]{flex:1;min-width:0;display:flex;flex-direction:column}.card[data-v-58b762f9]{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a;flex:1;display:flex;flex-direction:column;overflow:hidden}.card-header[data-v-58b762f9]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #f0f0f5;flex-shrink:0}.card-title[data-v-58b762f9]{font-size:15px;font-weight:500;color:#333}.table-wrapper[data-v-58b762f9]{flex:1;overflow-x:auto;overflow-y:auto}.table[data-v-58b762f9]{width:100%;border-collapse:collapse;min-width:980px}.table th[data-v-58b762f9]{padding:12px;font-size:12px;color:#999;font-weight:400;text-align:left;border-bottom:1px solid #f0f0f5;white-space:nowrap}.table td[data-v-58b762f9]{padding:12px;font-size:13px;color:#333;border-bottom:1px solid #f5f5fa}.table tr:last-child td[data-v-58b762f9]{border-bottom:none}.table tr:hover td[data-v-58b762f9]{background:#fafbff}.text-center[data-v-58b762f9]{text-align:center}.text-muted[data-v-58b762f9]{color:#999;font-size:12px}.wrap-cell[data-v-58b762f9]{white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.5}.thumb-list[data-v-58b762f9]{display:flex;gap:4px;flex-wrap:wrap;justify-content:center}.thumb[data-v-58b762f9]{width:40px;height:40px;object-fit:cover;border-radius:4px;cursor:zoom-in}.status-tag[data-v-58b762f9]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;white-space:nowrap}.status-tag.open[data-v-58b762f9]{background:#e53935;color:#fff}.status-tag.fixing[data-v-58b762f9]{background:#e6f7ff;color:#1890ff}.status-tag.closed[data-v-58b762f9]{background:#f6ffed;color:#52c41a}.btn[data-v-58b762f9]{border:none;padding:7px 16px;border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s}.btn-primary[data-v-58b762f9]{background:#333;color:#fff}.btn-primary[data-v-58b762f9]:hover{background:#555}.btn-primary[data-v-58b762f9]:disabled{opacity:.5}.btn-default[data-v-58b762f9]{background:#f0f0f5;color:#333}.btn-text[data-v-58b762f9]{background:none;border:none;cursor:pointer;font-size:12px;padding:2px 6px}.btn-edit[data-v-58b762f9]{color:#5c6bc0}.btn-delete[data-v-58b762f9]{color:#ff4d4f}.empty[data-v-58b762f9]{text-align:center;color:#999;padding:60px;font-size:14px}.modal-mask[data-v-58b762f9]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-58b762f9]{background:#fff;border-radius:16px;width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 40px #0000001f}.modal-header[data-v-58b762f9]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #f0f0f5}.modal-header h3[data-v-58b762f9]{font-size:15px;font-weight:500;color:#333}.modal-close[data-v-58b762f9]{font-size:22px;color:#999;cursor:pointer}.modal-body[data-v-58b762f9]{padding:20px 22px}.modal-footer[data-v-58b762f9]{padding:14px 22px;border-top:1px solid #f0f0f5;display:flex;justify-content:flex-end;gap:10px}.form-group[data-v-58b762f9]{margin-bottom:14px}.form-group label[data-v-58b762f9]{display:block;margin-bottom:6px;font-size:13px;color:#333;font-weight:500}.required[data-v-58b762f9]{color:#ff4d4f}.form-group input[data-v-58b762f9],.form-group textarea[data-v-58b762f9]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;outline:none}.form-group input[data-v-58b762f9]:focus,.form-group textarea[data-v-58b762f9]:focus{border-color:#5c6bc0}.upload-area[data-v-58b762f9]{border:2px dashed #ddd;border-radius:8px;padding:20px;text-align:center;cursor:pointer;outline:none}.upload-area[data-v-58b762f9]:hover{border-color:#5c6bc0}.upload-hint[data-v-58b762f9]{color:#999;font-size:13px}.preview-list[data-v-58b762f9]{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.preview-item[data-v-58b762f9]{position:relative;width:64px;height:64px}.preview-item img[data-v-58b762f9]{width:100%;height:100%;object-fit:cover;border-radius:6px;cursor:zoom-in}.preview-item .remove[data-v-58b762f9]{position:absolute;top:-6px;right:-6px;width:16px;height:16px;background:#ff4d4f;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:11px}.image-viewer[data-v-58b762f9]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;cursor:zoom-out}.image-viewer img[data-v-58b762f9]{max-width:90%;max-height:90%;border-radius:4px}.id-cell[data-v-58b762f9]{position:relative;padding-left:14px!important}.severity-bar[data-v-58b762f9]{position:absolute;left:0;top:6px;bottom:6px;width:4px;border-radius:2px}.quip[data-v-58b762f9]{color:#999;font-size:12px;font-weight:400}.form-select[data-v-58b762f9]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;outline:none;background:#fff}.form-select[data-v-58b762f9]:focus{border-color:#5c6bc0}.img-count[data-v-58b762f9]{color:#999;font-weight:400;font-size:12px}.tab-bar[data-v-58b762f9]{display:flex;gap:0;padding:0 22px;border-bottom:1px solid #f0f0f5}.tab-item[data-v-58b762f9]{padding:10px 20px;font-size:14px;cursor:pointer;color:#999;border-bottom:2px solid transparent;transition:all .2s}.tab-item.active[data-v-58b762f9]{color:#333;font-weight:500;border-bottom-color:#333}.tab-item[data-v-58b762f9]:hover{color:#333}.field-hint[data-v-58b762f9]{font-size:12px;color:#999;margin-bottom:8px}.steps-list[data-v-58b762f9]{display:flex;flex-direction:column;gap:6px}.step-row[data-v-58b762f9]{display:flex;align-items:center;gap:6px}.step-num[data-v-58b762f9]{font-size:13px;color:#999;min-width:20px;text-align:right}.step-input[data-v-58b762f9]{flex:1;padding:7px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;outline:none}.step-input[data-v-58b762f9]:focus{border-color:#5c6bc0}.step-remove[data-v-58b762f9]{border:none;background:none;color:#ccc;font-size:18px;cursor:pointer;padding:0 4px;line-height:1}.step-remove[data-v-58b762f9]:hover{color:#ff4d4f}.step-add[data-v-58b762f9]{border:none;background:none;color:#5c6bc0;font-size:13px;cursor:pointer;padding:4px 0;text-align:left;margin-top:2px}.step-add[data-v-58b762f9]:hover{text-decoration:underline}.type-tag[data-v-58b762f9]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;white-space:nowrap}.type-tag.function[data-v-58b762f9]{background:#e8eaf6;color:#5c6bc0}.type-tag.ui[data-v-58b762f9]{background:#fff3e0;color:#e67e22}.remark-cell[data-v-58b762f9]{font-size:12px;color:#666;max-width:180px}.action-cell[data-v-58b762f9]{position:relative;white-space:nowrap}.btn-handle[data-v-58b762f9]{color:#5c6bc0!important}.handle-menu[data-v-58b762f9]{position:absolute;right:0;top:100%;z-index:10;background:#fff;border-radius:10px;box-shadow:0 4px 20px #0000001f;width:220px;padding:6px 0;text-align:left}.handle-option[data-v-58b762f9]{padding:8px 14px;cursor:pointer;display:flex;flex-direction:column;gap:2px}.handle-option[data-v-58b762f9]:hover{background:#f5f5fa}.handle-label[data-v-58b762f9]{font-size:13px;font-weight:500;color:#333}.handle-desc[data-v-58b762f9]{font-size:11px;color:#999}.status-tag.verifying[data-v-58b762f9]{color:#fb8c00}.status-tag.closed[data-v-58b762f9]{color:#43a047}.canvas-page[data-v-1f64f564]{padding:8px 0 24px}.page-header[data-v-1f64f564]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.header-left[data-v-1f64f564]{display:flex;align-items:baseline;gap:12px}.header-left h2[data-v-1f64f564]{font-size:18px;font-weight:600;color:#333}.subtitle[data-v-1f64f564]{font-size:12px;color:#999}.btn-primary[data-v-1f64f564]{padding:8px 16px;background:#333;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px}.btn-primary[data-v-1f64f564]:hover{background:#555}.btn-ghost[data-v-1f64f564]{padding:8px 16px;background:#f5f5f5;color:#666;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:13px}.btn-ghost[data-v-1f64f564]:hover{color:#333}.empty[data-v-1f64f564]{text-align:center;color:#999;padding:80px 0}.empty-icon[data-v-1f64f564]{font-size:48px;margin-bottom:12px}.canvas-grid[data-v-1f64f564]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.canvas-card[data-v-1f64f564]{position:relative;background:#fff;border-radius:10px;overflow:hidden;cursor:pointer;box-shadow:0 1px 4px #0000000a;transition:all .2s;border:1px solid #f0f0f5}.canvas-card[data-v-1f64f564]:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.card-preview[data-v-1f64f564]{height:120px;background:#fafbff;border-bottom:1px solid #f0f0f5;position:relative;padding:8px;display:flex;align-items:center;justify-content:center}.mini-grid[data-v-1f64f564]{width:100%;height:100%;display:grid;grid-template-columns:repeat(10,1fr);grid-template-rows:repeat(10,1fr);gap:2px}.mini-cell[data-v-1f64f564]{background:#c8ccd6;border-radius:2px}.preview-empty[data-v-1f64f564]{color:#c0c4cc;font-size:12px;position:absolute}.card-body[data-v-1f64f564]{padding:10px 12px}.card-title[data-v-1f64f564]{font-size:14px;font-weight:500;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px}.card-meta[data-v-1f64f564]{font-size:12px;color:#999;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.readonly-tag[data-v-1f64f564]{margin-left:auto;color:#888;background:#f3f4f8;padding:1px 6px;border-radius:3px;font-size:11px}.card-actions[data-v-1f64f564]{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:0;transition:opacity .2s}.canvas-card:hover .card-actions[data-v-1f64f564]{opacity:1}.card-btn[data-v-1f64f564]{width:26px;height:26px;padding:0;border:none;background:#ffffffeb;border-radius:6px;cursor:pointer;font-size:13px;box-shadow:0 1px 4px #00000014}.card-btn[data-v-1f64f564]:hover{background:#fff}.card-btn.danger[data-v-1f64f564]:hover{color:#e53935}.modal-overlay[data-v-1f64f564]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-1f64f564]{background:#fff;border-radius:12px;width:420px;box-shadow:0 8px 32px #00000026}.modal-header[data-v-1f64f564]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0f0f5}.modal-header h3[data-v-1f64f564]{font-size:15px;font-weight:600;color:#333}.modal-close[data-v-1f64f564]{background:none;border:none;font-size:22px;color:#999;cursor:pointer;line-height:1}.modal-close[data-v-1f64f564]:hover{color:#333}.modal-body[data-v-1f64f564]{padding:20px}.form-row[data-v-1f64f564]{display:flex;flex-direction:column;gap:6px}.form-row label[data-v-1f64f564]{font-size:13px;color:#666}.modal-input[data-v-1f64f564]{padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none}.modal-input[data-v-1f64f564]:focus{border-color:#5c6bc0}.modal-footer[data-v-1f64f564]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid #f0f0f5}.editor-page[data-v-945a2578]{display:flex;flex-direction:column;height:calc(100vh - 80px);margin:0 0 -16px}.toolbar[data-v-945a2578]{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:8px 12px;border-radius:10px;box-shadow:0 1px 4px #0000000a;margin-bottom:8px}.tool-group[data-v-945a2578]{display:flex;align-items:center;gap:6px}.canvas-title[data-v-945a2578]{font-size:14px;font-weight:600;color:#333;margin-left:8px}.readonly-badge[data-v-945a2578]{margin-left:10px;font-size:11px;color:#888;background:#f3f4f8;padding:2px 8px;border-radius:3px;font-weight:400}.tool-btn[data-v-945a2578]{padding:6px 12px;background:#f5f6fa;color:#555;border:1px solid transparent;border-radius:6px;cursor:pointer;font-size:13px;transition:all .15s}.tool-btn[data-v-945a2578]:hover:not(:disabled){background:#ebedf3;color:#333}.tool-btn.active[data-v-945a2578]{background:#5c6bc0;color:#fff}.tool-btn.primary[data-v-945a2578]{background:#333;color:#fff}.tool-btn.primary[data-v-945a2578]:hover:not(:disabled){background:#555}.tool-btn[data-v-945a2578]:disabled{opacity:.4;cursor:not-allowed}.divider[data-v-945a2578]{width:1px;height:18px;background:#e0e0e8;margin:0 4px}.canvas-wrap[data-v-945a2578]{flex:1;overflow:auto;background:#edeef3;padding:24px;border-radius:10px}.canvas-area[data-v-945a2578]{position:relative;background-color:#fff;background-image:linear-gradient(to right,#ecedf2 1px,transparent 1px),linear-gradient(to bottom,#ecedf2 1px,transparent 1px);box-shadow:0 2px 12px #0000000f;cursor:crosshair;-webkit-user-select:none;user-select:none}.cell-block[data-v-945a2578]{position:absolute;background:#c8ccd6;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:13px;color:#2c3038;cursor:move;padding:6px 10px;box-sizing:border-box;transition:box-shadow .15s,background .15s;text-align:center;word-break:break-word;line-height:1.4}.cell-block[data-v-945a2578]:hover{background:#b8bcc7}.cell-block.selected[data-v-945a2578]{background:#a8b0c2;box-shadow:0 0 0 2px #5c6bc0}.cell-text[data-v-945a2578]{pointer-events:none;max-width:100%;white-space:pre-wrap;word-break:break-word;text-align:center}.cell-edit[data-v-945a2578]{width:100%;height:100%;border:none;outline:none;background:#fff;padding:6px 10px;box-sizing:border-box;font-size:13px;resize:none;text-align:center;font-family:inherit;line-height:1.4}.cell-actions[data-v-945a2578]{position:absolute;top:-14px;right:-8px;display:flex;gap:3px;z-index:5}.cell-btn[data-v-945a2578]{width:24px;height:24px;padding:0;border:none;background:#fff;color:#555;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000026}.cell-btn[data-v-945a2578]:hover{background:#f5f5f5;color:#5c6bc0}.cell-btn.danger[data-v-945a2578]:hover{color:#e53935}.color-picker[data-v-945a2578]{position:absolute;top:22px;right:-8px;z-index:6;background:#fff;border-radius:8px;padding:6px;box-shadow:0 4px 14px #0000002e;display:grid;grid-template-columns:repeat(6,18px);gap:4px}.color-swatch[data-v-945a2578]{width:18px;height:18px;border-radius:4px;cursor:pointer;border:1px solid rgba(0,0,0,.06)}.color-swatch[data-v-945a2578]:hover{transform:scale(1.15)}.color-swatch.active[data-v-945a2578]{box-shadow:0 0 0 2px #5c6bc0}.select-frame[data-v-945a2578]{position:absolute;background:#5c6bc01f;border:1.5px dashed #5c6bc0;border-radius:4px;pointer-events:none}.pending-frame[data-v-945a2578]{position:absolute;background:#5c6bc014;border:2px dashed #5c6bc0;border-radius:6px;pointer-events:auto}.pending-actions[data-v-945a2578]{position:absolute;top:-14px;right:-4px;display:flex;gap:4px}.pending-btn[data-v-945a2578]{width:24px;height:24px;padding:0;border:none;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000026}.pending-btn.confirm[data-v-945a2578]{background:#4caf50;color:#fff}.pending-btn.confirm[data-v-945a2578]:hover{background:#43a047}.pending-btn.cancel[data-v-945a2578]{background:#fff;color:#666}.pending-btn.cancel[data-v-945a2578]:hover{background:#f5f5f5;color:#e53935}.group-frame[data-v-945a2578]{position:absolute;border:2.5px solid #6b6f7a;border-radius:6px;background:transparent;pointer-events:auto;cursor:pointer;box-sizing:content-box;margin-left:-2.5px;margin-top:-2.5px}.group-name[data-v-945a2578]{position:absolute;top:-11px;left:50%;transform:translate(-50%);background:#fff;padding:0 8px;line-height:18px;height:18px;font-size:12px;color:#555;font-weight:500;white-space:nowrap;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;border-radius:3px;-webkit-user-select:none;user-select:none}.group-frame.active .group-name[data-v-945a2578]{color:#5c6bc0}.group-frame[data-v-945a2578]:hover{border-color:#5c6bc0}.group-frame.active[data-v-945a2578]{border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc033}.export-frame[data-v-945a2578]{position:absolute;background:transparent;border:1.5px dashed #999;border-radius:4px;pointer-events:none}.status-bar[data-v-945a2578]{background:#fff;padding:6px 14px;border-radius:10px;font-size:12px;color:#888;margin-top:8px;display:flex;align-items:center;gap:8px;box-shadow:0 1px 4px #0000000a}.dirty-tag[data-v-945a2578]{margin-left:auto;color:#e53935}.release-check-page[data-v-c6d58f32]{width:100%}.toolbar[data-v-c6d58f32]{margin-bottom:16px;display:flex;gap:8px}.btn[data-v-c6d58f32]{padding:6px 14px;border-radius:6px;font-size:13px;cursor:pointer;border:none;transition:all .15s}.btn-primary[data-v-c6d58f32]{background:#333;color:#fff}.btn-primary[data-v-c6d58f32]:hover{background:#555}.btn-default[data-v-c6d58f32]{background:#f5f5f5;color:#666;border:1px solid #e0e0e0}.btn-default[data-v-c6d58f32]:hover{background:#eee}.btn-text[data-v-c6d58f32]{background:none;border:none;cursor:pointer;font-size:13px;padding:2px 6px}.btn-delete[data-v-c6d58f32]{color:#e53935}.btn-supplement[data-v-c6d58f32]{color:#3498db}.card[data-v-c6d58f32]{background:#fff;border-radius:10px;margin-bottom:12px;box-shadow:0 1px 4px #0000000a}.card-header[data-v-c6d58f32]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #f5f5fa}.card-header-left[data-v-c6d58f32]{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.card-header-right[data-v-c6d58f32]{display:flex;align-items:center;gap:10px;flex-shrink:0}.desc-text[data-v-c6d58f32]{font-size:13px;color:#999}.supplement-text[data-v-c6d58f32]{color:#3498db;font-size:12px}.time-text[data-v-c6d58f32]{font-size:12px;color:#999}.user-name[data-v-c6d58f32]{font-size:13px;color:#333;font-weight:500;margin-right:8px}.status-tag[data-v-c6d58f32]{font-size:12px;padding:2px 8px;border-radius:10px;flex-shrink:0}.tag-pending[data-v-c6d58f32]{background:#fff3e0;color:#e65100}.tag-done[data-v-c6d58f32]{background:#e8f5e9;color:#2e7d32}.card-body[data-v-c6d58f32]{padding:12px 16px}.screenshot-grid[data-v-c6d58f32]{display:flex;gap:8px;flex-wrap:wrap}.form-grid[data-v-c6d58f32]{max-width:none}.screenshot-item[data-v-c6d58f32]{width:100px;height:75px;border-radius:8px;overflow:hidden;position:relative;flex-shrink:0}.screenshot-item img[data-v-c6d58f32]{width:100%;height:100%;object-fit:cover}.screenshot-item.has-img[data-v-c6d58f32]{cursor:pointer;border:1px solid #eee}.screenshot-item.has-img:hover .remove-hint[data-v-c6d58f32]{opacity:1}.remove-hint[data-v-c6d58f32]{position:absolute;top:0;right:0;bottom:0;left:0;background:#ef4444b3;color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.upload-slot[data-v-c6d58f32]{border:2px dashed #ddd;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;outline:none;cursor:text;transition:all .15s}.upload-slot[data-v-c6d58f32]:focus{border-color:#5c6bc0;background:#f5f6ff}.paste-tip[data-v-c6d58f32]{font-size:11px;color:#bbb;pointer-events:none}.upload-btn[data-v-c6d58f32]{display:inline-block;padding:4px 12px;font-size:12px;background:#f5f5f5;border:1px dashed #ccc;border-radius:4px;cursor:pointer;color:#666}.upload-btn[data-v-c6d58f32]:hover{border-color:#5c6bc0;color:#5c6bc0}.count-tip[data-v-c6d58f32]{font-size:12px;color:#999;margin-top:6px}.empty-text[data-v-c6d58f32]{color:#999;font-size:13px;padding:8px 0}.empty-state[data-v-c6d58f32]{text-align:center;color:#999;padding:60px 0;font-size:14px}.modal-overlay[data-v-c6d58f32]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-c6d58f32]{background:#fff;border-radius:12px;width:600px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000026}.modal-header[data-v-c6d58f32]{display:flex;align-items:center;padding:12px 20px;border-bottom:1px solid #f0f0f5;gap:8px}.modal-header h3[data-v-c6d58f32]{font-size:16px;font-weight:600;color:#333;flex-shrink:0}.form-warning[data-v-c6d58f32]{font-size:12px;color:#e53935;margin:0}.modal-close[data-v-c6d58f32]{background:none;border:none;font-size:22px;color:#999;cursor:pointer;margin-left:auto}.modal-body[data-v-c6d58f32]{flex:1;overflow-y:auto;padding:16px 20px}.modal-footer[data-v-c6d58f32]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid #f0f0f5}.form-group[data-v-c6d58f32]{margin-bottom:16px}.form-group label[data-v-c6d58f32]{display:block;font-size:13px;color:#666;margin-bottom:6px}.form-textarea[data-v-c6d58f32]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none;resize:vertical;box-sizing:border-box;font-family:inherit}.form-textarea[data-v-c6d58f32]:focus{border-color:#5c6bc0}.preview-overlay[data-v-c6d58f32]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;cursor:pointer}.preview-img[data-v-c6d58f32]{max-width:90vw;max-height:90vh;border-radius:8px}.leave-page[data-v-226da9a7]{display:flex;height:calc(100vh - 60px);gap:0}.user-panel[data-v-226da9a7]{width:220px;border-right:1px solid #eee;padding:16px 12px;overflow-y:auto;background:#fafafa}.panel-title[data-v-226da9a7]{font-size:15px;font-weight:600;margin-bottom:12px;color:#333}.user-card[data-v-226da9a7]{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;cursor:pointer;margin-bottom:4px;transition:background .15s}.user-card[data-v-226da9a7]:hover{background:#f0f0f0}.user-card.active[data-v-226da9a7]{background:#e8e8e8}.card-avatar[data-v-226da9a7]{width:36px;height:36px;border-radius:6px;overflow:hidden;flex-shrink:0;background:#ddd;display:flex;align-items:center;justify-content:center}.avatar-img[data-v-226da9a7]{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}.avatar-fallback[data-v-226da9a7]{font-size:14px;font-weight:600;color:#666}.card-info[data-v-226da9a7]{flex:1;min-width:0}.card-name[data-v-226da9a7]{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-meta[data-v-226da9a7]{font-size:11px;margin-top:2px;display:flex;align-items:center;gap:6px}.card-badge[data-v-226da9a7]{background:#e74c3c;color:#fff;font-size:10px;font-weight:600;min-width:16px;height:16px;line-height:16px;text-align:center;border-radius:8px;padding:0 4px}.balance-pos[data-v-226da9a7]{color:#43a047}.balance-neg[data-v-226da9a7]{color:#e53935}.empty-hint[data-v-226da9a7]{color:#999;text-align:center;padding:20px;font-size:13px}.content-panel[data-v-226da9a7]{flex:1;padding:20px 24px;overflow-y:auto}.overview-header[data-v-226da9a7],.detail-header[data-v-226da9a7]{display:flex;align-items:center;gap:16px;margin-bottom:16px}.header-actions[data-v-226da9a7]{margin-left:auto;display:flex;gap:8px}.s-table[data-v-226da9a7]{width:100%;border-collapse:collapse;font-size:13px}.s-table th[data-v-226da9a7]{padding:10px 12px;background:#fafafa;border-bottom:2px solid #eee;text-align:left;font-weight:600;color:#666;font-size:12px}.s-table td[data-v-226da9a7]{padding:10px 12px;border-bottom:1px solid #f0f0f0;color:#333}.s-table tr:hover td[data-v-226da9a7]{background:#fafafa}.status-tag[data-v-226da9a7]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;white-space:nowrap}.tag-ok[data-v-226da9a7]{background:#e8f5e9;color:#2e7d32}.tag-bad[data-v-226da9a7]{background:#ffebee;color:#c62828}.type-tag[data-v-226da9a7]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px}.tag-passive[data-v-226da9a7]{background:#e3f2fd;color:#1565c0}.tag-active[data-v-226da9a7]{background:#fff3e0;color:#e65100}.tag-absent[data-v-226da9a7]{background:#ffebee;color:#c62828}.tag-leave[data-v-226da9a7]{background:#e8eaf6;color:#283593}.tag-active-leave[data-v-226da9a7]{background:#fff3e0;color:#e65100}.approval-tag[data-v-226da9a7]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px}.tag-pending[data-v-226da9a7]{background:#fff8e1;color:#f57f17}.tag-approved[data-v-226da9a7]{background:#e8f5e9;color:#2e7d32}.tag-rejected[data-v-226da9a7]{background:#ffebee;color:#c62828}.btn[data-v-226da9a7]{padding:6px 14px;border-radius:6px;border:none;font-size:13px;cursor:pointer;transition:opacity .15s}.btn[data-v-226da9a7]:hover{opacity:.85}.btn-primary[data-v-226da9a7]{background:#333;color:#fff;border:1px solid #333;border-radius:6px;cursor:pointer}.btn-secondary[data-v-226da9a7]{background:#f5f5f5;color:#333;border:1px solid #ddd}.btn-default[data-v-226da9a7]{background:#fff;color:#666;border:1px solid #ddd}.btn-sm[data-v-226da9a7]{padding:4px 10px;font-size:12px;border-radius:6px}.btn-text[data-v-226da9a7]{background:none;border:none;cursor:pointer;font-size:12px;padding:2px 6px}.btn-approve[data-v-226da9a7]{color:#43a047}.btn-reject[data-v-226da9a7]{color:#e53935}.btn-delete[data-v-226da9a7]{color:#999}.btn-delete[data-v-226da9a7]:hover{color:#e53935}.btn-detail[data-v-226da9a7]{color:#5c6bc0}.btn-detail[data-v-226da9a7]:hover{color:#3949ab}.detail-row[data-v-226da9a7]{display:flex;align-items:flex-start;padding:8px 0;border-bottom:1px solid #f5f5f5}.detail-row[data-v-226da9a7]:last-child{border-bottom:none}.detail-label[data-v-226da9a7]{width:70px;flex-shrink:0;color:#999;font-size:13px}.detail-value[data-v-226da9a7]{flex:1;font-size:13px;color:#333}.detail-images[data-v-226da9a7]{display:flex;flex-wrap:wrap;gap:8px}.detail-img[data-v-226da9a7]{width:120px;height:90px;object-fit:cover;border-radius:6px;cursor:pointer;border:1px solid #eee}.stat-cards[data-v-226da9a7]{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.stat-card[data-v-226da9a7]{flex:1;min-width:140px;padding:14px 16px;background:#fafafa;border-radius:10px;border:1px solid #eee}.stat-label[data-v-226da9a7]{font-size:12px;color:#888;margin-bottom:4px}.stat-value[data-v-226da9a7]{font-size:22px;font-weight:700;color:#333}.stat-sub[data-v-226da9a7]{font-size:11px;color:#999;margin-top:2px}.stat-red[data-v-226da9a7]{color:#e53935}.card-ok[data-v-226da9a7]{border-color:#a5d6a7;background:#f1f8e9}.card-bad[data-v-226da9a7]{border-color:#ef9a9a;background:#fff3f0}.calendar-section[data-v-226da9a7]{margin-top:20px}.calendar-toolbar[data-v-226da9a7]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.calendar-label[data-v-226da9a7]{font-size:14px;font-weight:600}.calendar-grid[data-v-226da9a7]{overflow-x:auto}.cal-header[data-v-226da9a7],.cal-row[data-v-226da9a7]{display:flex}.cal-name-cell[data-v-226da9a7]{width:80px;min-width:80px;padding:6px 8px;font-size:12px;font-weight:500;border-bottom:1px solid #f0f0f0;display:flex;align-items:center}.cal-day-cell[data-v-226da9a7]{width:36px;min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:11px;border-bottom:1px solid #f0f0f0;border-right:1px solid #f8f8f8;cursor:pointer}.cal-day-cell[data-v-226da9a7]:hover{background:#f0f0f0}.cell-empty[data-v-226da9a7]{background:#fff}.cell-absent[data-v-226da9a7]{background:#ffebee;color:#c62828}.cell-leave[data-v-226da9a7]{background:#e8eaf6;color:#283593}.cell-active-leave[data-v-226da9a7]{background:#fff3e0;color:#e65100}.cell-full[data-v-226da9a7]{background:#e8f5e9}.cal-check[data-v-226da9a7]{color:#43a047;font-weight:700}.cal-text[data-v-226da9a7]{font-size:10px}.person-calendar[data-v-226da9a7]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:20px}.pc-day[data-v-226da9a7]{min-height:60px;border-radius:6px;padding:4px 6px;cursor:pointer;transition:background .15s}.pc-day[data-v-226da9a7]:hover{opacity:.85}.pc-normal[data-v-226da9a7]{background:#f9f9f9;border:1px solid #eee}.pc-absent[data-v-226da9a7]{background:#ffebee;border:1px solid #ef9a9a}.pc-leave[data-v-226da9a7]{background:#e8eaf6;border:1px solid #9fa8da}.pc-active-leave[data-v-226da9a7]{background:#fff3e0;border:1px solid #ffcc80}.pc-full[data-v-226da9a7]{background:#e8f5e9;border:1px solid #a5d6a7}.pc-day-num[data-v-226da9a7]{font-size:12px;color:#666;font-weight:500}.pc-day-content[data-v-226da9a7]{font-size:10px;color:#333;margin-top:2px}.pc-full .pc-day-content[data-v-226da9a7]{color:#43a047;font-weight:700;font-size:14px}.detail-section[data-v-226da9a7]{margin-top:24px}.section-header[data-v-226da9a7]{display:flex;align-items:center;gap:12px;margin-bottom:10px}.section-header h5[data-v-226da9a7]{font-size:14px;font-weight:600;color:#333}.wr-modal[data-v-226da9a7]{width:440px;border-radius:16px;overflow:hidden;box-shadow:0 12px 40px #00000026}.wr-modal-header[data-v-226da9a7]{padding:20px 24px 16px;border-bottom:none}.wr-modal-header h3[data-v-226da9a7]{font-size:16px;font-weight:600;color:#1a1a1a}.wr-date-badge[data-v-226da9a7]{display:inline-block;margin-left:12px;padding:2px 10px;background:#f5f5f5;color:#666;font-size:12px;border-radius:10px}.wr-modal-body[data-v-226da9a7]{padding:8px 24px 20px}.wr-modal-footer[data-v-226da9a7]{padding:16px 24px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;gap:8px}.wr-section[data-v-226da9a7]{margin-bottom:20px}.wr-section[data-v-226da9a7]:last-child{margin-bottom:0}.wr-label[data-v-226da9a7]{font-size:13px;color:#666;margin-bottom:10px;font-weight:500}.wr-hint[data-v-226da9a7]{font-size:12px;color:#999;margin-top:8px;padding:8px 12px;background:#fff8e1;border-radius:6px;color:#b26a00}.wr-type-cards[data-v-226da9a7]{display:flex;gap:10px}.wr-type-card[data-v-226da9a7]{flex:1;display:flex;align-items:center;gap:12px;padding:14px 16px;border:2px solid #e8e8e8;border-radius:10px;cursor:pointer;transition:all .2s;position:relative;background:#fafafa}.wr-type-card[data-v-226da9a7]:hover{border-color:#ccc;background:#f5f5f5}.wr-type-card.active.workday[data-v-226da9a7]{border-color:#4caf50;background:#f1f8e9}.wr-type-card.active.restday[data-v-226da9a7]{border-color:#ff9800;background:#fff3e0}.wr-type-card.active .wr-type-name[data-v-226da9a7]{color:#1a1a1a}.wr-type-icon[data-v-226da9a7]{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.wr-icon-work[data-v-226da9a7]{background:#e8f5e9;color:#4caf50}.wr-icon-rest[data-v-226da9a7]{background:#fff3e0;color:#ff9800}.wr-type-card.active .wr-icon-work[data-v-226da9a7]{background:#4caf50;color:#fff}.wr-type-card.active .wr-icon-rest[data-v-226da9a7]{background:#ff9800;color:#fff}.wr-type-info[data-v-226da9a7]{flex:1}.wr-type-name[data-v-226da9a7]{font-size:14px;font-weight:600;color:#333}.wr-type-desc[data-v-226da9a7]{font-size:12px;color:#999;margin-top:2px}.wr-type-check[data-v-226da9a7]{color:#4caf50;flex-shrink:0}.wr-row[data-v-226da9a7]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#fafafa;border-radius:10px;border:1px solid #eee}.wr-row-label[data-v-226da9a7]{display:flex;align-items:center;gap:8px;font-size:14px;color:#333;font-weight:500}.wr-row-label svg[data-v-226da9a7]{color:#666}.wr-icon-loop[data-v-226da9a7]{font-size:18px;color:#666;font-weight:700}.wr-toggle[data-v-226da9a7]{width:44px;height:24px;border-radius:12px;background:#ddd;position:relative;cursor:pointer;transition:background .2s;flex-shrink:0}.wr-toggle.on[data-v-226da9a7]{background:#333}.wr-toggle-thumb[data-v-226da9a7]{width:20px;height:20px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:left .2s;box-shadow:0 1px 3px #0003}.wr-toggle.on .wr-toggle-thumb[data-v-226da9a7]{left:22px}.wr-cycle-options[data-v-226da9a7]{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.wr-cycle-btn[data-v-226da9a7]{flex:1;min-width:70px;padding:10px 12px;border:1px solid #e8e8e8;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;transition:all .2s;background:#fff}.wr-cycle-btn[data-v-226da9a7]:hover{border-color:#ccc}.wr-cycle-btn.active[data-v-226da9a7]{border-color:#333;background:#333;color:#fff}.wr-cycle-num[data-v-226da9a7]{font-size:18px;font-weight:600}.wr-cycle-label[data-v-226da9a7]{font-size:11px;color:#999}.wr-cycle-btn.active .wr-cycle-label[data-v-226da9a7]{color:#ffffffb3}.wr-cycle-input-wrap[data-v-226da9a7]{display:flex;align-items:center;gap:4px;padding:8px 10px;border:1px solid #e8e8e8;border-radius:8px;background:#fff}.wr-cycle-input[data-v-226da9a7]{width:50px;border:none;outline:none;font-size:14px;font-weight:600;color:#333;text-align:center}.wr-cycle-input[data-v-226da9a7]::-webkit-inner-spin-button{-webkit-appearance:none}.wr-cycle-unit[data-v-226da9a7]{font-size:12px;color:#999}.cal-day-head[data-v-226da9a7]{font-weight:600;color:#555;background:#fafafa;transition:all .15s}.cal-day-clickable[data-v-226da9a7]{cursor:pointer}.cal-day-clickable[data-v-226da9a7]:hover{background:#e3f2fd!important;color:#1976d2!important}.cal-day-head.cal-day-work[data-v-226da9a7]{background:#e3f2fd;color:#1565c0}.cal-day-head.cal-day-rest[data-v-226da9a7]{background:#fff3e0;color:#e65100}.modal-mask[data-v-226da9a7]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-226da9a7]{background:#fff;border-radius:12px;width:520px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000026}.modal-header[data-v-226da9a7]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f0f0f0}.modal-header h3[data-v-226da9a7]{font-size:15px;font-weight:600}.modal-close[data-v-226da9a7]{font-size:20px;cursor:pointer;color:#999;background:none;border:none}.modal-body[data-v-226da9a7]{padding:16px 20px;overflow-y:auto}.modal-footer[data-v-226da9a7]{padding:12px 20px;border-top:1px solid #f0f0f0;text-align:right}.form-group[data-v-226da9a7]{margin-bottom:14px}.form-group label[data-v-226da9a7]{display:block;font-size:13px;color:#666;margin-bottom:4px}.form-group input[data-v-226da9a7],.form-group select[data-v-226da9a7],.form-group textarea[data-v-226da9a7]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none;box-sizing:border-box}.form-group input[data-v-226da9a7]:focus,.form-group select[data-v-226da9a7]:focus,.form-group textarea[data-v-226da9a7]:focus{border-color:#5c6bc0}.required[data-v-226da9a7]{color:#e53935}.help-tip[data-v-226da9a7]{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#eee;color:#666;font-size:11px;cursor:help;position:relative}.tip-content[data-v-226da9a7]{position:absolute;top:100%;left:0;background:#333;color:#fff;padding:8px 12px;border-radius:6px;font-size:12px;line-height:1.6;white-space:nowrap;z-index:100;margin-top:4px}.upload-area[data-v-226da9a7]{border:2px dashed #ddd;border-radius:8px;padding:16px;text-align:center;cursor:pointer;min-height:80px;outline:none;transition:border-color .2s}.upload-area[data-v-226da9a7]:focus{border-color:#999}.upload-hint[data-v-226da9a7]{color:#999;font-size:13px;margin:0}.upload-sub-hint[data-v-226da9a7]{color:#bbb;font-size:11px;margin:4px 0 0}.upload-warning[data-v-226da9a7]{color:#e74c3c;font-size:12px;font-weight:600;margin:4px 0 0}.required-mark[data-v-226da9a7]{color:#e74c3c;margin-left:2px}.preview-list[data-v-226da9a7]{display:flex;flex-wrap:wrap;gap:8px}.preview-item[data-v-226da9a7]{position:relative;width:72px;height:72px;border-radius:6px;overflow:hidden;cursor:pointer}.preview-item img[data-v-226da9a7]{width:100%;height:100%;object-fit:cover}.preview-item .remove[data-v-226da9a7]{position:absolute;top:2px;right:2px;width:18px;height:18px;background:#00000080;color:#fff;border-radius:50%;font-size:12px;line-height:18px;text-align:center;cursor:pointer}.workday-rules-panel[data-v-226da9a7]{margin:12px 0;border:1px solid #e0e0e0;border-radius:8px;background:#fafafa;overflow:hidden}.wrp-header[data-v-226da9a7]{padding:10px 14px;background:#f5f5f5;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-weight:600;font-size:13px}.wrp-toggle[data-v-226da9a7]{color:#1976d2;font-size:12px;font-weight:400}.wrp-list[data-v-226da9a7]{padding:8px 14px;max-height:240px;overflow-y:auto}.wrp-item[data-v-226da9a7]{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid #f0f0f0;font-size:12px}.wrp-item[data-v-226da9a7]:last-child{border-bottom:none}.wrp-date[data-v-226da9a7]{font-weight:600;min-width:90px}.wrp-type[data-v-226da9a7]{padding:1px 6px;border-radius:4px;font-size:11px}.tag-work[data-v-226da9a7]{background:#e8f5e9;color:#2e7d32}.tag-rest[data-v-226da9a7]{background:#ffebee;color:#c62828}.wrp-cycle[data-v-226da9a7]{color:#5c6bc0}.wrp-ended[data-v-226da9a7]{color:#999;font-size:11px}.wrp-item .btn-sm[data-v-226da9a7]{margin-left:auto;padding:2px 8px;font-size:11px}.share-page[data-v-83fc20ee]{min-height:100vh;min-height:100dvh;background:#f7f8fa}.share-center[data-v-83fc20ee]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;color:#666;font-size:15px}.loading-spinner[data-v-83fc20ee]{width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#5c6bc0;border-radius:50%;animation:spin-83fc20ee .8s linear infinite;margin-bottom:12px}@keyframes spin-83fc20ee{to{transform:rotate(360deg)}}.error-icon[data-v-83fc20ee]{width:56px;height:56px;border-radius:50%;background:#ffebee;color:#c62828;font-size:28px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.share-center h2[data-v-83fc20ee]{font-size:20px;color:#333;margin-bottom:8px}.wizard[data-v-83fc20ee]{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;padding:0 24px;box-sizing:border-box}.wizard-top[data-v-83fc20ee]{display:flex;align-items:center;gap:10px;padding:24px 0 12px}.wizard-logo[data-v-83fc20ee]{width:36px;height:36px;border-radius:8px}.wizard-brand[data-v-83fc20ee]{font-size:18px;font-weight:700;color:#333}.home-question[data-v-83fc20ee]{font-size:24px;font-weight:600;color:#222;margin:40px 0 32px;line-height:1.4}.home-actions[data-v-83fc20ee]{display:flex;flex-direction:column;gap:16px}.home-btn[data-v-83fc20ee]{display:flex;align-items:center;gap:12px;padding:18px 20px;border-radius:12px;font-size:17px;font-weight:500;cursor:pointer;border:2px solid transparent;transition:all .2s}.home-btn svg[data-v-83fc20ee]{flex-shrink:0}.home-btn-yes[data-v-83fc20ee]{background:#eef0ff;color:#3f51b5;border-color:#c5cae9}.home-btn-yes[data-v-83fc20ee]:active{background:#d1d5f0}.home-btn-no[data-v-83fc20ee]{background:#fff3e0;color:#e65100;border-color:#ffcc80}.home-btn-no[data-v-83fc20ee]:active{background:#ffe0b2}.wizard-slogan[data-v-83fc20ee]{font-size:22px;font-weight:600;color:#222;margin-bottom:24px;line-height:1.4}.upload-area[data-v-83fc20ee]{border:2px dashed #d0d0d0;border-radius:12px;padding:32px 20px;text-align:center;background:#fff;cursor:pointer;transition:all .2s}.upload-area[data-v-83fc20ee]:active,.upload-dragover[data-v-83fc20ee]{border-color:#5c6bc0;background:#f5f5ff}.upload-text[data-v-83fc20ee]{font-size:15px;color:#666;margin-top:12px}.upload-hint[data-v-83fc20ee]{font-size:12px;color:#aaa;margin-top:8px}.file-list[data-v-83fc20ee]{margin-top:16px;display:flex;flex-direction:column;gap:8px}.file-item[data-v-83fc20ee]{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#fff;border-radius:8px;border:1px solid #eee}.file-name[data-v-83fc20ee]{flex:1;font-size:14px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size[data-v-83fc20ee]{font-size:12px;color:#999;flex-shrink:0}.file-remove[data-v-83fc20ee]{width:24px;height:24px;border:none;background:none;color:#999;font-size:18px;cursor:pointer;flex-shrink:0;line-height:1}.file-remove[data-v-83fc20ee]:active{color:#e53935}.wizard-progress[data-v-83fc20ee]{margin-bottom:32px}.progress-bar[data-v-83fc20ee]{height:4px;background:#e8e8e8;border-radius:2px;overflow:hidden}.progress-fill[data-v-83fc20ee]{height:100%;border-radius:2px;transition:width .3s ease}.progress-text[data-v-83fc20ee]{font-size:12px;color:#999;margin-top:6px;text-align:right}.wizard-body[data-v-83fc20ee]{flex:1}.step-content[data-v-83fc20ee]{animation:fadeIn-83fc20ee .25s ease}@keyframes fadeIn-83fc20ee{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.step-number[data-v-83fc20ee]{font-size:13px;color:#5c6bc0;font-weight:600;margin-bottom:8px}.step-question[data-v-83fc20ee]{font-size:20px;font-weight:600;color:#222;line-height:1.4;margin-bottom:8px}.step-hint[data-v-83fc20ee]{font-size:13px;color:#999;margin-bottom:20px;line-height:1.5}.step-input[data-v-83fc20ee]{width:100%;padding:14px 16px;border:1px solid #e0e0e0;border-radius:10px;font-size:16px;outline:none;box-sizing:border-box;background:#fff;transition:border-color .2s}.step-input[data-v-83fc20ee]:focus{border-color:#5c6bc0}.step-textarea[data-v-83fc20ee]{width:100%;padding:14px 16px;border:1px solid #e0e0e0;border-radius:10px;font-size:16px;outline:none;box-sizing:border-box;background:#fff;resize:vertical;line-height:1.6;transition:border-color .2s}.step-textarea[data-v-83fc20ee]:focus{border-color:#5c6bc0}.wizard-actions[data-v-83fc20ee]{display:flex;justify-content:space-between;align-items:center;padding:20px 0 32px}.btn-prev[data-v-83fc20ee]{padding:12px 28px;border:1px solid #ddd;border-radius:10px;background:#fff;color:#666;font-size:15px;cursor:pointer}.btn-prev[data-v-83fc20ee]:active{background:#f5f5f5}.btn-next[data-v-83fc20ee]{padding:12px 28px;border:none;border-radius:10px;background:#5c6bc0;color:#fff;font-size:15px;font-weight:600;cursor:pointer}.btn-next[data-v-83fc20ee]:active{background:#4a5ab0}.btn-submit[data-v-83fc20ee]{padding:12px 28px;border:none;border-radius:10px;background:#333;color:#fff;font-size:15px;font-weight:600;cursor:pointer}.btn-submit[data-v-83fc20ee]:active{background:#555}.btn-submit[data-v-83fc20ee]:disabled{background:#ccc;cursor:not-allowed}.change-list[data-v-83fc20ee]{display:flex;flex-direction:column;gap:8px}.change-item[data-v-83fc20ee]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.change-input[data-v-83fc20ee]{padding:10px 12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;outline:none;flex:1;min-width:0;box-sizing:border-box}.change-input[data-v-83fc20ee]:focus{border-color:#5c6bc0}.change-input.short[data-v-83fc20ee]{width:72px;flex:none}.change-arrow[data-v-83fc20ee]{color:#999;font-size:16px;flex-shrink:0}.btn-remove[data-v-83fc20ee]{width:28px;height:28px;border-radius:50%;border:1px solid #ddd;background:#fff;color:#999;cursor:pointer;font-size:16px;line-height:1;flex-shrink:0}.btn-remove[data-v-83fc20ee]:active{border-color:#e53935;color:#e53935}.btn-add[data-v-83fc20ee]{background:none;border:1px dashed #ccc;color:#5c6bc0;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px}.btn-add[data-v-83fc20ee]:active{border-color:#5c6bc0}.detail-page[data-v-df8b79b0]{padding:0 0 40px}.loading-center[data-v-df8b79b0]{display:flex;justify-content:center;padding:80px 0}.loading-spinner[data-v-df8b79b0]{width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#5c6bc0;border-radius:50%;animation:spin-df8b79b0 .8s linear infinite}.detail-nav[data-v-df8b79b0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.btn-back[data-v-df8b79b0]{background:none;border:none;color:#5c6bc0;cursor:pointer;font-size:14px}.btn-back[data-v-df8b79b0]:hover{text-decoration:underline}.nav-actions[data-v-df8b79b0]{display:flex;gap:8px}.detail-card[data-v-df8b79b0]{background:#fff;border-radius:10px;padding:20px 24px;margin-bottom:12px;box-shadow:0 1px 3px #0000000a}.header-top[data-v-df8b79b0]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.req-no[data-v-df8b79b0]{font-size:13px;color:#999;background:#f5f5f5;padding:2px 8px;border-radius:4px}.detail-title[data-v-df8b79b0]{font-size:18px;font-weight:600;color:#333;margin-bottom:10px}.detail-meta[data-v-df8b79b0]{display:flex;gap:16px;font-size:12px;color:#888}.card-title[data-v-df8b79b0]{font-size:15px;font-weight:600;color:#333;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #f0f0f5}.card-title-row[data-v-df8b79b0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.card-title-row .card-title[data-v-df8b79b0]{margin-bottom:0;padding-bottom:0;border-bottom:none}.field-group[data-v-df8b79b0]{margin-bottom:16px}.field-group[data-v-df8b79b0]:last-child{margin-bottom:0}.field-group label[data-v-df8b79b0]{display:block;font-size:12px;color:#888;margin-bottom:6px}.field-text[data-v-df8b79b0]{font-size:13px;color:#555;white-space:pre-wrap;line-height:1.6}.attachment-list[data-v-df8b79b0]{display:flex;flex-direction:column;gap:6px}.attachment-item[data-v-df8b79b0]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:#f5f5ff;border-radius:6px}.attachment-name[data-v-df8b79b0]{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#333;flex:1;min-width:0}.attachment-name span[data-v-df8b79b0]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-actions[data-v-df8b79b0]{display:flex;gap:6px;flex-shrink:0}.btn-att[data-v-df8b79b0]{padding:3px 10px;font-size:12px;border-radius:4px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center}.btn-preview[data-v-df8b79b0]{background:#fff;color:#26a69a;border:1px solid #26a69a}.btn-preview[data-v-df8b79b0]:hover{background:#26a69a;color:#fff}.btn-download[data-v-df8b79b0]{background:#fff;color:#78909c;border:1px solid #78909c}.btn-download[data-v-df8b79b0]:hover{background:#78909c;color:#fff}.btn-ai-analyze[data-v-df8b79b0]{padding:3px 10px;font-size:12px;border-radius:4px;background:#fff;color:#5c6bc0;border:1px solid #5c6bc0;cursor:pointer;white-space:nowrap}.btn-ai-analyze[data-v-df8b79b0]:hover:not(:disabled){background:#5c6bc0;color:#fff}.btn-ai-analyze[data-v-df8b79b0]:disabled{opacity:.5;cursor:not-allowed}.ai-loading[data-v-df8b79b0]{text-align:center;padding:40px 0}.ai-spinner[data-v-df8b79b0]{width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#5c6bc0;border-radius:50%;margin:0 auto 12px;animation:spin-df8b79b0 .8s linear infinite}@keyframes spin-df8b79b0{to{transform:rotate(360deg)}}.ai-result[data-v-df8b79b0]{display:flex;flex-direction:column;gap:12px}.ai-field[data-v-df8b79b0]{display:flex;flex-direction:column;gap:4px}.ai-field label[data-v-df8b79b0]{font-size:13px;font-weight:600;color:#333}.ai-input[data-v-df8b79b0]{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:13px;font-family:inherit;resize:vertical}.ai-input[data-v-df8b79b0]:focus{outline:none;border-color:#5c6bc0}.ai-actions[data-v-df8b79b0]{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.ai-empty[data-v-df8b79b0]{text-align:center;padding:40px 0;color:#999}.dynamic-item[data-v-df8b79b0]{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:6px 8px;background:#f9f9fc;border-radius:4px}.inline-input[data-v-df8b79b0]{flex:1;min-width:80px;padding:5px 8px;border:1px solid #ddd;border-radius:3px;font-size:12px}.inline-input.short[data-v-df8b79b0]{flex:0 0 90px}.arrow[data-v-df8b79b0]{color:#999;font-size:14px}.btn-remove[data-v-df8b79b0]{width:24px;height:24px;border:none;border-radius:3px;background:#ff5252;color:#fff;cursor:pointer;font-size:14px;display:inline-flex;align-items:center;justify-content:center}.btn-remove[data-v-df8b79b0]:hover{background:#d32f2f}.btn-add[data-v-df8b79b0]{padding:6px 12px;border:1px dashed #5c6bc0;background:transparent;color:#5c6bc0;border-radius:4px;cursor:pointer;font-size:12px;align-self:flex-start}.btn-add[data-v-df8b79b0]:hover{background:#e8eaf6}.dynamic-sub-label[data-v-df8b79b0]{font-size:12px;color:#888;margin-top:6px;margin-bottom:2px}.inline-label[data-v-df8b79b0]{font-size:12px;color:#666;min-width:32px}.detail-table[data-v-df8b79b0]{width:100%;border-collapse:collapse;font-size:13px}.detail-table th[data-v-df8b79b0]{padding:8px 10px;background:#fafafa;text-align:left;color:#888;font-weight:500;border-bottom:1px solid #f0f0f5}.detail-table td[data-v-df8b79b0]{padding:8px 10px;border-bottom:1px solid #f5f5f5;color:#555}.detail-table .label-cell[data-v-df8b79b0]{background:#fafafa;color:#888;width:80px}.empty-section[data-v-df8b79b0]{text-align:center;color:#ccc;padding:24px 0;font-size:13px}.priority-tag[data-v-df8b79b0]{font-size:11px;padding:2px 8px;border-radius:4px}.p-P0[data-v-df8b79b0]{background:#ffebee;color:#c62828}.p-P1[data-v-df8b79b0]{background:#fff3e0;color:#e65100}.p-P2[data-v-df8b79b0]{background:#e8f5e9;color:#2e7d32}.p-P3[data-v-df8b79b0]{background:#f5f5f5;color:#999}.action-cell[data-v-df8b79b0]{white-space:nowrap}.name-cell[data-v-df8b79b0]{font-weight:500;color:#333}.link-name[data-v-df8b79b0]{color:#5c6bc0;text-decoration:none}.link-name[data-v-df8b79b0]:hover{text-decoration:underline}.btn-link[data-v-df8b79b0]{background:none;border:none;color:#5c6bc0;cursor:pointer;font-size:12px;padding:2px 6px}.btn-link[data-v-df8b79b0]:hover{text-decoration:underline}.btn-share[data-v-df8b79b0]{color:#2e7d32}.btn-pdf[data-v-df8b79b0]{color:#5c6bc0}.btn-danger[data-v-df8b79b0]{color:#e53935}.btn[data-v-df8b79b0]{padding:6px 16px;border-radius:6px;border:none;cursor:pointer;font-size:13px}.btn-sm[data-v-df8b79b0]{padding:4px 12px;font-size:12px}.iteration-actions[data-v-df8b79b0]{display:flex;gap:8px}.btn-collect[data-v-df8b79b0]{background:#fff;color:#333;border:1px solid #ddd}.btn-collect[data-v-df8b79b0]:hover{background:#f5f5f5}.btn-primary[data-v-df8b79b0]{background:#333;color:#fff}.btn-primary[data-v-df8b79b0]:hover{background:#555}.btn-default[data-v-df8b79b0]{background:#f5f5f5;color:#666;border:1px solid #ddd}.btn-default[data-v-df8b79b0]:hover{background:#eee}.modal-mask[data-v-df8b79b0]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding-top:40px}.modal[data-v-df8b79b0]{background:#fff;border-radius:12px;width:600px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000026}.modal-lg[data-v-df8b79b0]{width:800px}.modal-header[data-v-df8b79b0]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0f0f5}.modal-header h3[data-v-df8b79b0]{font-size:16px;font-weight:600;color:#333}.modal-close[data-v-df8b79b0]{background:none;border:none;font-size:22px;color:#999;cursor:pointer}.modal-close[data-v-df8b79b0]:hover{color:#333}.modal-body[data-v-df8b79b0]{padding:16px 20px;overflow-y:auto;flex:1}.modal-footer[data-v-df8b79b0]{padding:12px 20px;border-top:1px solid #f0f0f5;display:flex;justify-content:flex-end;gap:8px}.form-section[data-v-df8b79b0]{margin-bottom:20px}.form-upload-area[data-v-df8b79b0]{display:flex;align-items:center;gap:8px;padding:12px;border:1px dashed #ccc;border-radius:6px;cursor:pointer;color:#999;font-size:13px;transition:border-color .2s}.form-upload-area[data-v-df8b79b0]:hover{border-color:#5c6bc0;color:#5c6bc0}.form-file-list[data-v-df8b79b0]{margin-top:8px;display:flex;flex-direction:column;gap:4px}.form-file-item[data-v-df8b79b0]{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#f5f5ff;border-radius:4px;font-size:13px}.form-file-name[data-v-df8b79b0]{flex:1;color:#333}.form-file-remove[data-v-df8b79b0]{background:none;border:none;color:#999;cursor:pointer;font-size:16px}.form-file-remove[data-v-df8b79b0]:hover{color:#e53935}.section-label[data-v-df8b79b0]{font-size:14px;font-weight:600;color:#333;margin-bottom:12px}.form-row[data-v-df8b79b0]{display:flex;gap:12px}.form-group[data-v-df8b79b0]{margin-bottom:12px}.form-group.flex-1[data-v-df8b79b0]{flex:1}.form-group label[data-v-df8b79b0]{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group input[data-v-df8b79b0],.form-group textarea[data-v-df8b79b0],.form-group select[data-v-df8b79b0]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none;box-sizing:border-box}.form-group input[data-v-df8b79b0]:focus,.form-group textarea[data-v-df8b79b0]:focus{border-color:#5c6bc0}.form-select[data-v-df8b79b0]{width:auto;min-width:100px}.required[data-v-df8b79b0]{color:#e53935}.dynamic-list[data-v-df8b79b0]{display:flex;flex-direction:column;gap:6px}.dynamic-item[data-v-df8b79b0]{display:flex;align-items:center;gap:6px}.inline-input[data-v-df8b79b0]{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:12px;outline:none}.inline-input[data-v-df8b79b0]:focus{border-color:#5c6bc0}.inline-input.short[data-v-df8b79b0]{width:80px}.inline-input.flex-1[data-v-df8b79b0]{flex:1}.arrow[data-v-df8b79b0]{color:#999;font-size:14px;flex-shrink:0}.flow-step[data-v-df8b79b0]{width:20px;height:20px;background:#f0f0f5;border-radius:50%;text-align:center;line-height:20px;font-size:11px;color:#666;flex-shrink:0}.btn-remove[data-v-df8b79b0]{width:22px;height:22px;border-radius:50%;border:1px solid #ddd;background:#fff;color:#999;cursor:pointer;font-size:14px;line-height:1;flex-shrink:0}.btn-remove[data-v-df8b79b0]:hover{border-color:#e53935;color:#e53935}.btn-add[data-v-df8b79b0]{background:none;border:1px dashed #ccc;color:#5c6bc0;padding:4px 12px;border-radius:4px;cursor:pointer;font-size:12px}.btn-add[data-v-df8b79b0]:hover{border-color:#5c6bc0}.inline-check[data-v-df8b79b0]{font-size:12px;color:#666;white-space:nowrap;display:flex;align-items:center;gap:2px}.share-card-body[data-v-df8b79b0]{display:flex;justify-content:center}.share-card[data-v-df8b79b0]{text-align:center;width:100%}.share-card-top[data-v-df8b79b0]{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:20px}.share-brand-name[data-v-df8b79b0]{font-size:20px;font-weight:600;color:#333}.share-brand-desc[data-v-df8b79b0]{font-size:13px;color:#888;margin-top:2px}.share-qr-wrap[data-v-df8b79b0]{display:flex;justify-content:center;margin-bottom:16px}.share-qr-canvas[data-v-df8b79b0]{border-radius:8px}.share-card-tip[data-v-df8b79b0]{font-size:12px;color:#999;margin-bottom:16px}.share-link-box[data-v-df8b79b0]{display:flex;gap:8px}.share-input[data-v-df8b79b0]{flex:1;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;background:#f9f9f9}.hint[data-v-df8b79b0]{font-size:12px;color:#999;font-weight:400}.settings-page[data-v-79bc33cb]{min-height:100vh;background:#f5f6fa}.page-header[data-v-79bc33cb]{display:flex;justify-content:space-between;align-items:center;padding:16px 32px;background:#fff;border-bottom:1px solid #e8eaf0;box-shadow:0 1px 3px #0000000a}.page-header h2[data-v-79bc33cb]{font-size:18px;font-weight:600;color:#333;margin:0}.btn-close[data-v-79bc33cb]{padding:6px 14px;border-radius:6px;border:1px solid #ddd;background:#fff;color:#555;font-size:13px;cursor:pointer;transition:all .2s}.btn-close[data-v-79bc33cb]:hover{background:#f5f5f5;border-color:#ccc}.settings-body[data-v-79bc33cb]{max-width:1280px;margin:20px auto;background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000000a;overflow:hidden}.tabs[data-v-79bc33cb]{display:flex;gap:0;border-bottom:1px solid #f0f0f5;padding:0 24px;background:#fafbff}.tabs span[data-v-79bc33cb]{padding:14px 20px;font-size:14px;color:#666;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tabs span.active[data-v-79bc33cb]{color:#333;border-bottom-color:#333;font-weight:500}.tabs span[data-v-79bc33cb]:hover{color:#333}.tab-body[data-v-79bc33cb]{padding:20px 24px 28px}.toolbar[data-v-79bc33cb]{margin-bottom:12px}.inline-form[data-v-79bc33cb]{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.inline-form input[data-v-79bc33cb],.inline-form select[data-v-79bc33cb]{padding:6px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none}.inline-form input[data-v-79bc33cb]:focus,.inline-form select[data-v-79bc33cb]:focus{border-color:#5c6bc0}.s-table[data-v-79bc33cb]{width:100%;border-collapse:collapse}.s-table th[data-v-79bc33cb]{padding:10px 12px;font-size:12px;color:#999;font-weight:400;text-align:left;border-bottom:1px solid #f0f0f5}.s-table td[data-v-79bc33cb]{padding:10px 12px;font-size:13px;color:#333;border-bottom:1px solid #f5f5fa}.s-table tr:hover td[data-v-79bc33cb]{background:#fafbff}.text-center[data-v-79bc33cb]{text-align:center}.btn[data-v-79bc33cb]{border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px}.btn-primary[data-v-79bc33cb]{background:#333;color:#fff}.btn-primary[data-v-79bc33cb]:hover{background:#555}.btn-default[data-v-79bc33cb]{background:#f0f0f5;color:#333}.btn-text[data-v-79bc33cb]{background:none;border:none;cursor:pointer;font-size:12px;padding:2px 6px}.btn-edit[data-v-79bc33cb]{color:#5c6bc0}.btn-delete[data-v-79bc33cb]{color:#ff4d4f}.empty-tip[data-v-79bc33cb]{text-align:center;color:#ccc;font-size:13px;padding:24px}.perm-desc[data-v-79bc33cb]{font-size:13px;color:#999;margin-bottom:12px}.perm-table input[type=checkbox][data-v-79bc33cb]{width:16px;height:16px;cursor:pointer;accent-color:#333}.module-row td[data-v-79bc33cb]{font-size:13px;font-weight:500;color:#333;background:#f8f8fc;padding:8px 12px!important}.perm-row .perm-name[data-v-79bc33cb]{padding-left:28px!important;color:#555}.code[data-v-79bc33cb]{color:#999;font-size:11px}.role-form[data-v-79bc33cb]{background:#f8f9fc;border:1px solid #e8eaf0;border-radius:8px;padding:16px;margin-bottom:16px}.form-row[data-v-79bc33cb]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.form-row label[data-v-79bc33cb]{width:80px;font-size:13px;color:#555;flex-shrink:0}.form-row input[data-v-79bc33cb],.form-row select[data-v-79bc33cb]{flex:1;padding:6px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;outline:none}.form-row input[data-v-79bc33cb]:focus,.form-row select[data-v-79bc33cb]:focus{border-color:#5c6bc0}.form-row input[data-v-79bc33cb]:disabled{background:#f0f0f0;color:#999;cursor:not-allowed}.form-actions[data-v-79bc33cb]{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.scope-tag[data-v-79bc33cb]{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500}.sc-self[data-v-79bc33cb]{background:#f0f1f8;color:#5c6bc0}.sc-all[data-v-79bc33cb]{background:#e8f5e9;color:#26a69a}.sc-admin[data-v-79bc33cb]{background:#fff3e0;color:#ff9800}.status-badge[data-v-79bc33cb]{font-size:12px;padding:2px 8px;border-radius:4px}.status-badge.pending[data-v-79bc33cb]{color:#fb8c00;background:#fff3e0}.status-badge.approved[data-v-79bc33cb]{color:#43a047;background:#e8f5e9}.status-badge.rejected[data-v-79bc33cb]{color:#e53935;background:#ffebee}.pm-layout[data-v-b2a42e21]{display:flex;gap:16px;height:calc(100vh - 100px)}.project-panel[data-v-b2a42e21]{width:260px;flex-shrink:0;background:var(--card-bg, #fff);border-radius:12px;padding:14px 12px;box-shadow:0 1px 4px #0000000a;display:flex;flex-direction:column;overflow:hidden}.panel-header[data-v-b2a42e21]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.panel-title[data-v-b2a42e21]{font-size:14px;font-weight:500;color:var(--text, #333)}.btn-add[data-v-b2a42e21]{background:#333;color:#fff;border:none;width:24px;height:24px;border-radius:6px;cursor:pointer;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center}.btn-add[data-v-b2a42e21]:hover{background:#555}.search-wrap[data-v-b2a42e21]{margin-bottom:10px}.search-input[data-v-b2a42e21]{width:100%;padding:6px 10px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:12px;background:var(--card-bg, #fff);color:var(--text, #333);box-sizing:border-box}.cover-flow-stage[data-v-b2a42e21]{flex:1;position:relative;perspective:1000px;perspective-origin:50% 50%;overflow:hidden;outline:none;min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 0 50px}.cover-flow-track[data-v-b2a42e21]{position:relative;transform-style:preserve-3d;transition:transform .4s cubic-bezier(.22,.61,.36,1);width:220px;height:80px}.cover-item[data-v-b2a42e21]{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:var(--card-bg, #fff);border:1px solid var(--border, #e0e0e0);box-shadow:0 2px 6px #00000014;cursor:pointer;transition:background .2s,box-shadow .2s,opacity .3s;backface-visibility:hidden}.cover-item.focused[data-v-b2a42e21]{background:#eaf3ff;border-color:#5da9f8;box-shadow:0 4px 16px #5da9f859}.cover-item.active[data-v-b2a42e21]{background:#d4e8ff;box-shadow:0 0 0 2px #333 inset,0 4px 18px #00000026}.cover-item[data-v-b2a42e21]:not(.focused){opacity:.55}.cover-item.matched[data-v-b2a42e21]{opacity:1;border-color:#ffb300;box-shadow:0 0 0 2px #ffb300,0 4px 12px #ffb3004d}.cover-item.focused .folder-icon[data-v-b2a42e21]{transform:translateY(-2px) scale(1.1)}.folder-icon[data-v-b2a42e21]{flex-shrink:0;width:42px;height:36px;display:flex;align-items:center;justify-content:center;transition:transform .2s;filter:drop-shadow(0 1px 1px rgba(0,0,0,.1))}.cover-item.focused .folder-icon[data-v-b2a42e21]{filter:drop-shadow(0 3px 4px rgba(93,169,248,.5))}.cover-info[data-v-b2a42e21]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.item-code[data-v-b2a42e21]{font-size:11px;color:#888;font-family:monospace}.item-name[data-v-b2a42e21]{font-size:13px;font-weight:500;color:var(--text, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-meta[data-v-b2a42e21]{display:flex;justify-content:space-between;align-items:center;font-size:11px}.item-stage[data-v-b2a42e21]{padding:1px 6px;border-radius:8px;font-size:10px}.cover-nav[data-v-b2a42e21]{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;background:var(--sidebar-bg, #f5f5f5);padding:4px 10px;border-radius:16px;font-size:12px}.cover-btn[data-v-b2a42e21]{background:none;border:none;cursor:pointer;font-size:14px;color:#5da9f8;padding:2px 6px;border-radius:4px;transition:background .15s}.cover-btn[data-v-b2a42e21]:hover:not(:disabled){background:#5da9f826}.cover-btn[data-v-b2a42e21]:disabled{opacity:.3;cursor:not-allowed}.cover-counter[data-v-b2a42e21]{color:var(--text, #333);font-family:monospace;min-width:50px;text-align:center}.stage-req[data-v-b2a42e21]{background:#e3f2fd;color:#1976d2}.stage-dev[data-v-b2a42e21]{background:#fff3e0;color:#f57c00}.stage-test[data-v-b2a42e21]{background:#f3e5f5;color:#7b1fa2}.stage-done[data-v-b2a42e21]{background:#e8f5e9;color:#388e3c}.stage-pause[data-v-b2a42e21]{background:#f5f5f5;color:#9e9e9e}.stage-default[data-v-b2a42e21]{background:#f5f5f5;color:#616161}.status-normal-text[data-v-b2a42e21]{color:#43a047}.status-warning-text[data-v-b2a42e21]{color:#fb8c00}.status-delayed-text[data-v-b2a42e21]{color:#e53935}.empty-hint[data-v-b2a42e21]{text-align:center;color:#ccc;font-size:12px;padding:20px 0}.detail-panel[data-v-b2a42e21]{flex:1;background:var(--card-bg, #fff);border-radius:12px;padding:20px;box-shadow:0 1px 4px #0000000a;overflow-y:auto}.overview-header[data-v-b2a42e21]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.overview-title[data-v-b2a42e21]{margin:0;font-size:18px;font-weight:600;color:var(--text, #333)}.overview-row[data-v-b2a42e21]{display:grid;gap:14px;margin-bottom:14px}.overview-row-stats[data-v-b2a42e21]{grid-template-columns:3fr 2fr;align-items:stretch}.overview-row-logs[data-v-b2a42e21]{grid-template-columns:1fr 1fr;align-items:stretch}.overview-left-col[data-v-b2a42e21]{display:flex;flex-direction:column;gap:14px;min-width:0}.overview-row .card[data-v-b2a42e21],.overview-row .stat-cards[data-v-b2a42e21]{margin-bottom:0}.overview-left-col .card[data-v-b2a42e21]{display:flex;flex-direction:column;min-height:260px}.overview-left-col .card .recent-list[data-v-b2a42e21]{flex:1;min-height:0}.card-logs[data-v-b2a42e21]{display:flex;flex-direction:column;align-self:stretch}.card-logs .recent-list[data-v-b2a42e21]{flex:1;overflow-y:auto;min-height:0;max-height:460px;padding-right:4px}.card-logs .recent-list[data-v-b2a42e21]::-webkit-scrollbar{width:6px}.card-logs .recent-list[data-v-b2a42e21]::-webkit-scrollbar-thumb{background:silver;border-radius:3px}.card-logs .recent-list[data-v-b2a42e21]::-webkit-scrollbar-thumb:hover{background:#999}.card-logs .recent-list[data-v-b2a42e21]::-webkit-scrollbar-track{background:transparent}.stat-cards[data-v-b2a42e21]{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.stat-card[data-v-b2a42e21]{border-radius:8px;padding:14px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;transition:transform .15s,box-shadow .15s}.stat-card[data-v-b2a42e21]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.stat-card[data-v-b2a42e21]:nth-child(1){background:#e3f2fd}.stat-card:nth-child(1) .stat-num[data-v-b2a42e21]{color:#1976d2}.stat-card[data-v-b2a42e21]:nth-child(2){background:#fff3e0}.stat-card:nth-child(2) .stat-num[data-v-b2a42e21]{color:#f57c00}.stat-card[data-v-b2a42e21]:nth-child(3){background:#e8f5e9}.stat-card:nth-child(3) .stat-num[data-v-b2a42e21]{color:#388e3c}.stat-card[data-v-b2a42e21]:nth-child(4){background:#f3e5f5}.stat-card:nth-child(4) .stat-num[data-v-b2a42e21]{color:#7b1fa2}.stat-card[data-v-b2a42e21]:nth-child(5){background:#e0f7fa}.stat-card:nth-child(5) .stat-num[data-v-b2a42e21]{color:#0097a7}.stat-num[data-v-b2a42e21]{font-size:26px;font-weight:700;line-height:1.2}.stat-name[data-v-b2a42e21]{font-size:11px;color:#666;margin-top:4px;font-weight:500}.card[data-v-b2a42e21]{background:var(--card-bg, #fff);border:1px solid var(--border, #eee);border-radius:8px;padding:16px;margin-bottom:14px}.card-title[data-v-b2a42e21]{font-size:14px;font-weight:600;color:var(--text, #333);margin-bottom:12px;padding-bottom:8px;border-bottom:1px dashed var(--border, #eee)}.dist-list[data-v-b2a42e21]{display:flex;flex-direction:column;gap:10px}.dist-item[data-v-b2a42e21]{display:flex;align-items:center;gap:10px}.dist-label[data-v-b2a42e21]{width:70px;font-size:12px;color:#666}.dist-bar-wrap[data-v-b2a42e21]{flex:1;height:10px;background:#f0f0f0;border-radius:5px;overflow:hidden}.dist-bar[data-v-b2a42e21]{height:100%;transition:width .3s}.dist-bar.stage-req[data-v-b2a42e21]{background:#1976d2}.dist-bar.stage-dev[data-v-b2a42e21]{background:#f57c00}.dist-bar.stage-test[data-v-b2a42e21]{background:#7b1fa2}.dist-bar.stage-done[data-v-b2a42e21]{background:#388e3c}.dist-bar.stage-pause[data-v-b2a42e21]{background:#9e9e9e}.dist-bar.stage-default[data-v-b2a42e21]{background:#616161}.dist-count[data-v-b2a42e21]{width:30px;text-align:right;font-size:12px;font-weight:600;color:var(--text, #333)}.recent-item.log-item[data-v-b2a42e21]{grid-template-columns:90px 70px 1fr 80px;font-size:12px}.log-user[data-v-b2a42e21]{color:var(--text, #333);font-weight:500}.log-action[data-v-b2a42e21]{color:#666}.log-target[data-v-b2a42e21]{color:#888;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-list[data-v-b2a42e21]{display:flex;flex-direction:column;gap:6px}.recent-item[data-v-b2a42e21]{display:grid;grid-template-columns:100px 1fr 80px 90px;gap:10px;align-items:center;padding:8px 10px;border-radius:6px;cursor:pointer;font-size:12px;transition:background .15s}.recent-item[data-v-b2a42e21]:hover{background:var(--sidebar-bg, #f5f5f5)}.recent-code[data-v-b2a42e21]{font-family:monospace;color:#888}.recent-name[data-v-b2a42e21]{color:var(--text, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-stage[data-v-b2a42e21]{padding:2px 8px;border-radius:8px;font-size:10px;text-align:center}.recent-date[data-v-b2a42e21]{color:#888;text-align:right}.empty-sm[data-v-b2a42e21]{text-align:center;color:#ccc;font-size:12px;padding:16px 0}.phase-dev-list[data-v-b2a42e21]{margin-top:14px;padding-top:12px;border-top:1px dashed var(--border, #f0f0f0)}.phase-dev-header[data-v-b2a42e21]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.phase-dev-title[data-v-b2a42e21]{font-size:13px;font-weight:600;color:var(--text, #333)}.phase-dev-count[data-v-b2a42e21]{display:inline-block;min-width:18px;height:18px;line-height:18px;padding:0 6px;border-radius:9px;background:#f0f1f8;color:#5c6bc0;font-size:11px;font-weight:600;text-align:center}.phase-dev-list .dev-list[data-v-b2a42e21]{display:flex;flex-direction:column;gap:4px}.phase-dev-list .dev-item[data-v-b2a42e21]{display:grid;grid-template-columns:120px 1fr 70px 70px 100px 14px;gap:8px;align-items:center;padding:7px 10px;border-radius:5px;cursor:pointer;font-size:12px;transition:background .15s;border:1px solid var(--border, #f5f5f5)}.phase-dev-list .dev-item[data-v-b2a42e21]:hover{background:var(--sidebar-bg, #f5f8ff);border-color:#ccc}.phase-dev-list .dev-no[data-v-b2a42e21]{font-family:monospace;color:#1976d2;font-size:11px}.phase-dev-list .dev-title[data-v-b2a42e21]{color:var(--text, #333);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phase-dev-list .dev-stage-tag[data-v-b2a42e21],.phase-dev-list .dev-status-tag[data-v-b2a42e21]{display:inline-block;padding:1px 6px;border-radius:6px;font-size:10px;font-weight:500;text-align:center}.phase-dev-list .dev-time[data-v-b2a42e21]{color:#888;font-size:11px;text-align:right}.phase-dev-list .dev-arrow[data-v-b2a42e21]{color:#ccc}.phase-dev-list .dev-stage-requirement[data-v-b2a42e21]{background:#e3f2fd;color:#1976d2}.phase-dev-list .dev-stage-planning[data-v-b2a42e21]{background:#fff8e1;color:#f57c00}.phase-dev-list .dev-stage-develop[data-v-b2a42e21]{background:#fff3e0;color:#ef6c00}.phase-dev-list .dev-stage-test[data-v-b2a42e21]{background:#f3e5f5;color:#7b1fa2}.phase-dev-list .dev-stage-release[data-v-b2a42e21]{background:#e8f5e9;color:#2e7d32}.phase-dev-list .dev-status-progress[data-v-b2a42e21]{background:#e3f2fd;color:#1976d2}.phase-dev-list .dev-status-done[data-v-b2a42e21]{background:#e8f5e9;color:#2e7d32}.phase-dev-list .dev-status-cancel[data-v-b2a42e21]{background:#f5f5f5;color:#999}.phase-dev-list .empty-sm[data-v-b2a42e21]{padding:10px 0}.phase-dev-list .dev-view-all[data-v-b2a42e21]{display:block;margin-top:6px;padding:6px 0;color:var(--accent, #333);font-size:12px;text-align:center;cursor:pointer;border-top:1px dashed var(--border, #e0d6c2);transition:color .15s}.phase-dev-list .dev-view-all[data-v-b2a42e21]:hover{color:#000;text-decoration:underline}.dev-list-modal[data-v-b2a42e21]{width:800px;max-width:92vw}.dev-list-table[data-v-b2a42e21]{display:flex;flex-direction:column;font-size:13px}.dev-list-thead[data-v-b2a42e21],.dev-list-row[data-v-b2a42e21]{display:grid;grid-template-columns:110px 1fr 100px 90px 110px;gap:10px;padding:8px 10px;align-items:center}.dev-list-thead[data-v-b2a42e21]{background:var(--sidebar-bg, #2a2a2a);color:var(--text-light, #e8dcc8);font-weight:600;border-radius:4px}.dev-list-row[data-v-b2a42e21]{border-bottom:1px solid var(--border, #e0d6c2);cursor:pointer;transition:background .15s}.dev-list-row[data-v-b2a42e21]:hover{background:var(--hover-bg, #f5f0e8)}.dev-list-row[data-v-b2a42e21]:last-child{border-bottom:none}.dev-list-table .col-no[data-v-b2a42e21]{color:var(--text-secondary, #888);font-size:12px}.dev-list-table .col-title[data-v-b2a42e21]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dev-list-table .col-time[data-v-b2a42e21]{color:var(--text-secondary, #888);font-size:12px}.detail-header[data-v-b2a42e21]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;gap:16px;flex-wrap:wrap}.detail-title-wrap[data-v-b2a42e21]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.detail-code[data-v-b2a42e21]{font-size:12px;color:#888;font-family:monospace}.btn-back[data-v-b2a42e21]{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--border, #e0e0e0);background:var(--card-bg, #fff);color:var(--text, #333);padding:4px 10px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .15s}.btn-back[data-v-b2a42e21]:hover{background:var(--sidebar-bg, #f5f5f5);border-color:#555}.detail-title[data-v-b2a42e21]{margin:0;font-size:18px;font-weight:600;color:var(--text, #333)}.stage-tag[data-v-b2a42e21]{font-size:11px;padding:2px 10px;border-radius:10px;font-weight:500}.status-tag[data-v-b2a42e21]{font-size:11px;padding:2px 10px;border-radius:10px;font-weight:500;background:#e8f5e9;color:#388e3c}.status-tag.status-warning-text[data-v-b2a42e21]{background:#fff3e0;color:#fb8c00}.status-tag.status-delayed-text[data-v-b2a42e21]{background:#ffebee;color:#e53935}.detail-actions[data-v-b2a42e21]{display:flex;gap:8px}.progress-section[data-v-b2a42e21]{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.progress-info[data-v-b2a42e21]{display:flex;justify-content:space-between;font-size:12px;color:#666}.progress-num[data-v-b2a42e21]{color:var(--text, #333);font-weight:600}.progress-bar[data-v-b2a42e21]{height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden}.progress-fill[data-v-b2a42e21]{height:100%;background:linear-gradient(90deg,#43a047,#66bb6a);transition:width .3s}.resource-grid[data-v-b2a42e21]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.resource-card[data-v-b2a42e21]{background:var(--card-bg, #fff);border:1px solid var(--border, #eee);border-radius:8px;padding:14px}.resource-card.has-warn[data-v-b2a42e21]{border-color:#ffcdd2;background:#fff8f8}.resource-head[data-v-b2a42e21]{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.resource-name[data-v-b2a42e21]{font-size:13px;color:#888}.resource-count[data-v-b2a42e21]{font-size:20px;font-weight:600;color:var(--text, #333)}.resource-card.has-warn .resource-count[data-v-b2a42e21]{color:#e53935}.resource-desc[data-v-b2a42e21]{font-size:11px;color:#aaa}.info-grid[data-v-b2a42e21]{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 24px}.info-item[data-v-b2a42e21]{display:flex;flex-direction:column;gap:4px}.info-label[data-v-b2a42e21]{font-size:11px;color:#999}.info-value[data-v-b2a42e21]{font-size:13px;color:var(--text, #333);font-weight:500}.info-value.mono[data-v-b2a42e21]{font-family:monospace}.info-link[data-v-b2a42e21]{font-size:13px;color:#1976d2;text-decoration:none;word-break:break-all}.info-link[data-v-b2a42e21]:hover{text-decoration:underline}.remark-block[data-v-b2a42e21]{margin-top:16px;padding-top:12px;border-top:1px dashed var(--border, #eee)}.remark-label[data-v-b2a42e21]{font-size:12px;color:#888;margin-bottom:6px}.remark-content[data-v-b2a42e21]{font-size:13px;color:var(--text, #333);padding:10px 12px;background:var(--sidebar-bg, #f9f9f9);border-radius:6px;line-height:1.6;white-space:pre-wrap}.modal-mask[data-v-b2a42e21]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-b2a42e21]{background:var(--card-bg, #fff);border-radius:8px;width:560px;max-height:90vh;display:flex;flex-direction:column}.modal-header[data-v-b2a42e21]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border, #eee)}.modal-header h3[data-v-b2a42e21]{margin:0;font-size:16px;color:var(--text, #333)}.modal-close[data-v-b2a42e21]{font-size:24px;cursor:pointer;color:#999;line-height:1}.modal-body[data-v-b2a42e21]{padding:20px;overflow-y:auto;flex:1}.modal-footer[data-v-b2a42e21]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border, #eee)}.form-group[data-v-b2a42e21]{margin-bottom:14px}.form-group label[data-v-b2a42e21]{display:block;font-size:13px;color:var(--text, #333);margin-bottom:6px;font-weight:500}.form-group input[data-v-b2a42e21],.form-group textarea[data-v-b2a42e21],.form-group .form-select[data-v-b2a42e21]{width:100%;padding:8px 12px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;background:var(--card-bg, #fff);color:var(--text, #333);box-sizing:border-box}.form-group textarea[data-v-b2a42e21]{resize:vertical;font-family:inherit}.form-row[data-v-b2a42e21]{display:flex;gap:12px}.form-group.half[data-v-b2a42e21]{flex:1}.required[data-v-b2a42e21]{color:#e53935}.btn-primary[data-v-b2a42e21],.btn-default[data-v-b2a42e21],.btn-danger[data-v-b2a42e21]{padding:6px 16px;border:none;border-radius:6px;font-size:13px;cursor:pointer;font-weight:500}.btn-primary[data-v-b2a42e21]{background:#333;color:#fff}.btn-primary[data-v-b2a42e21]:hover{background:#555}.btn-primary[data-v-b2a42e21]:disabled{background:#999;cursor:not-allowed}.btn-default[data-v-b2a42e21]{background:var(--card-bg, #fff);color:var(--text, #333);border:1px solid var(--border, #e0e0e0)}.btn-danger[data-v-b2a42e21]{background:#fff;color:#e53935;border:1px solid #ffcdd2}.btn-danger[data-v-b2a42e21]:hover{background:#ffebee}.phases-list[data-v-b2a42e21]{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:16px}@media (max-width: 1100px){.phases-list[data-v-b2a42e21]{grid-template-columns:1fr}}.phase-card[data-v-b2a42e21]{background:var(--card-bg, #fff);border:1px solid var(--border, #e0e0e0);border-radius:12px;overflow:hidden}.phase-card-header[data-v-b2a42e21]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border, #e0e0e0);background:var(--sidebar-bg, #f9f9f9)}.phase-title-wrap[data-v-b2a42e21]{display:flex;align-items:center;gap:10px}.phase-title[data-v-b2a42e21]{margin:0;font-size:15px;font-weight:600;color:var(--text, #333)}.phase-actions[data-v-b2a42e21]{display:flex;gap:6px}.phase-card-body[data-v-b2a42e21]{padding:16px}.phase-icon-btn[data-v-b2a42e21]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border, #e0e0e0);background:var(--card-bg, #fff);color:#666;border-radius:6px;cursor:pointer;transition:all .15s;padding:0}.phase-icon-btn[data-v-b2a42e21]:hover{border-color:#555;color:#333;background:var(--sidebar-bg, #f5f5f5)}.phase-icon-btn-danger[data-v-b2a42e21]:hover{border-color:#e53935;color:#e53935;background:#fff5f5}.btn-add-sm[data-v-b2a42e21]{background:#333;color:#fff;border:none;width:22px;height:22px;border-radius:5px;cursor:pointer;font-size:14px;line-height:1;display:inline-flex;align-items:center;justify-content:center;margin-left:8px;vertical-align:middle}.btn-add-sm[data-v-b2a42e21]:hover{background:#555}.card-title[data-v-b2a42e21]{display:flex;align-items:center;justify-content:space-between}.card-title>span[data-v-b2a42e21]:first-child{flex:1}.dev-list[data-v-b2a42e21]{display:flex;flex-direction:column;gap:6px}.dev-item[data-v-b2a42e21]{display:grid;grid-template-columns:130px 1fr 70px 70px 120px 16px;gap:10px;align-items:center;padding:10px 12px;border-radius:6px;cursor:pointer;font-size:12px;transition:background .15s;border:1px solid var(--border, #f0f0f0)}.dev-item[data-v-b2a42e21]:hover{background:var(--sidebar-bg, #f5f5f5);border-color:#ccc}.dev-no[data-v-b2a42e21]{font-family:monospace;color:#1976d2;font-size:12px}.dev-title[data-v-b2a42e21]{color:var(--text, #333);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dev-stage-tag[data-v-b2a42e21],.dev-status-tag[data-v-b2a42e21]{display:inline-block;padding:2px 8px;border-radius:8px;font-size:10px;font-weight:500;text-align:center}.dev-stage-requirement[data-v-b2a42e21]{background:#e3f2fd;color:#1976d2}.dev-stage-planning[data-v-b2a42e21]{background:#fff8e1;color:#f57c00}.dev-stage-develop[data-v-b2a42e21]{background:#fff3e0;color:#ef6c00}.dev-stage-test[data-v-b2a42e21]{background:#f3e5f5;color:#7b1fa2}.dev-stage-release[data-v-b2a42e21]{background:#e8f5e9;color:#2e7d32}.dev-status-progress[data-v-b2a42e21]{background:#e3f2fd;color:#1976d2}.dev-status-done[data-v-b2a42e21]{background:#e8f5e9;color:#2e7d32}.dev-status-cancel[data-v-b2a42e21]{background:#f5f5f5;color:#999}.dev-time[data-v-b2a42e21]{color:#888;font-size:11px;text-align:right}.dev-arrow[data-v-b2a42e21]{color:#ccc;flex-shrink:0}.fc-page[data-v-69a67684]{padding:0;height:calc(100vh - 96px)}.fc-container[data-v-69a67684]{display:flex;gap:16px;height:100%}.fc-left[data-v-69a67684]{width:380px;background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a;padding:20px;overflow-y:auto;flex-shrink:0;display:flex;flex-direction:column}.fc-section-h[data-v-69a67684]{font-size:12px;color:#999;margin-bottom:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.fc-examples[data-v-69a67684]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.fc-example-btn[data-v-69a67684]{background:#f5f5f5;border:1px solid #e0e0e0;color:#666;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px;transition:all .2s}.fc-example-btn[data-v-69a67684]:hover{background:#eef0ff;border-color:#5c6bc0;color:#5c6bc0}.fc-textarea-wrap[data-v-69a67684]{position:relative;margin-bottom:14px;flex:1;display:flex;flex-direction:column}.fc-textarea-wrap textarea[data-v-69a67684]{width:100%;flex:1;min-height:280px;background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;color:#333;padding:14px;font-size:13px;line-height:1.8;resize:none;font-family:inherit;transition:border-color .2s;box-sizing:border-box}.fc-textarea-wrap textarea[data-v-69a67684]:focus{outline:none;border-color:#5c6bc0;background:#fff}.fc-textarea-wrap textarea[data-v-69a67684]::placeholder{color:#aaa}.fc-char-count[data-v-69a67684]{position:absolute;bottom:8px;right:12px;font-size:11px;color:#bbb;background:#fffc;padding:0 4px;border-radius:4px}.fc-btn-generate[data-v-69a67684]{width:100%;padding:12px;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px}.fc-btn-generate[data-v-69a67684]:disabled{opacity:.6;cursor:not-allowed}.fc-spinner[data-v-69a67684]{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:fc-spin-69a67684 .6s linear infinite}@keyframes fc-spin-69a67684{to{transform:rotate(360deg)}}.fc-right[data-v-69a67684]{flex:1;background:transparent;overflow-y:auto;min-width:0;display:flex;flex-direction:column}.fc-empty[data-v-69a67684]{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;color:#ccc;text-align:center;background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000a}.fc-empty svg[data-v-69a67684]{width:64px;height:64px;margin-bottom:14px;opacity:.4}.fc-empty p[data-v-69a67684]{font-size:14px}.fc-result[data-v-69a67684]{display:flex;flex-direction:column;gap:16px;flex:1}.fc-block[data-v-69a67684]{padding:18px 20px}.fc-block-title[data-v-69a67684]{font-size:15px;color:#5c6bc0;margin-bottom:14px;font-weight:600;border-left:3px solid #5c6bc0;padding-left:10px}.fc-swimlane-container[data-v-69a67684]{overflow-x:auto;padding-bottom:8px}.fc-mermaid[data-v-69a67684]{width:100%;overflow-x:auto;text-align:center;padding:12px;background:#fafafa;border:1px solid #e0e0e0;border-radius:8px}.fc-mermaid[data-v-69a67684] svg{max-width:100%;height:auto}.fc-bottom-grid[data-v-69a67684]{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 1200px){.fc-bottom-grid[data-v-69a67684]{grid-template-columns:1fr}}.fc-field-table[data-v-69a67684]{width:100%;border-collapse:collapse;font-size:13px}.fc-field-table th[data-v-69a67684]{background:#fafafa;color:#888;padding:10px 12px;text-align:left;border-bottom:1px solid #f0f0f5;font-weight:500;font-size:12px}.fc-field-table td[data-v-69a67684]{padding:8px 12px;border-bottom:1px solid #f5f5f5;color:#555;vertical-align:top}.fc-field-table tr:hover td[data-v-69a67684]{background:#fafbff}.fc-field-table tr.ai-suggest td[data-v-69a67684]{background:#fcfcfe;color:#888}.fc-field-table tr.ai-suggest:hover td[data-v-69a67684]{background:#f8f9ff}.fc-tag-ai[data-v-69a67684]{display:inline-block;background:#eef0ff;color:#5c6bc0;font-size:10px;padding:1px 6px;border-radius:3px;margin-left:4px;vertical-align:middle}.fc-rules-list[data-v-69a67684]{list-style:none;padding:0;margin:0}.fc-rules-list li[data-v-69a67684]{background:#fafafa;border:1px solid #f0f0f5;border-left:3px solid #5c6bc0;padding:10px 14px;margin-bottom:6px;border-radius:0 6px 6px 0;font-size:13px;color:#555;position:relative}.fc-rules-list li[data-v-69a67684]:last-child{margin-bottom:0}.fc-rule-text[data-v-69a67684]{display:block;width:calc(100% - 24px)}.fc-rule-del[data-v-69a67684]{position:absolute;right:8px;top:8px}.fc-btn-add[data-v-69a67684]{background:none;border:1px dashed #ccc;color:#999;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:12px;margin-top:10px;width:100%;transition:all .2s}.fc-btn-add[data-v-69a67684]:hover{border-color:#5c6bc0;color:#5c6bc0;background:#f8f9ff}.fc-editable[data-v-69a67684]{cursor:text;border-radius:3px;padding:1px 4px;transition:background .15s;display:inline-block;min-width:30px}.fc-editable[data-v-69a67684]:hover{background:#f0f1f8}.fc-editable[data-v-69a67684]:focus{background:#eef0ff;outline:1px solid #5c6bc0}.fc-row-actions[data-v-69a67684]{text-align:center}.fc-btn-del[data-v-69a67684]{background:none;border:none;color:#ccc;cursor:pointer;font-size:16px;padding:2px 6px;border-radius:4px;transition:all .15s;line-height:1}.fc-btn-del[data-v-69a67684]:hover{color:#e74c3c;background:#e74c3c1a}.fc-export-bar[data-v-69a67684]{display:flex;gap:10px;padding-top:16px;margin-top:4px}.fc-btn-export[data-v-69a67684]{background:#333;color:#fff;border:1px solid #333;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.fc-btn-export[data-v-69a67684]:hover:not(:disabled){background:#555;border-color:#555}.fc-btn-export[data-v-69a67684]:disabled{background:#f5f5f5;color:#ccc;border:1px solid #e0e0e0;cursor:not-allowed}.dm-layout[data-v-49ba7070]{display:flex;flex-direction:column;gap:14px;height:100%;margin-top:12px}.hall-topbar[data-v-49ba7070]{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 4px;flex-wrap:wrap}.view-switch[data-v-49ba7070]{display:flex;gap:4px;background:var(--card-bg, #fff);border-radius:8px;padding:4px;box-shadow:0 1px 4px #0000000a}.view-btn[data-v-49ba7070]{background:transparent;color:#666;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;transition:all .15s}.view-btn.active[data-v-49ba7070]{background:#333;color:#fff}.view-btn[data-v-49ba7070]:hover:not(.active){background:var(--sidebar-bg, #f0f0f5)}.dm-header[data-v-49ba7070]{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.dm-title[data-v-49ba7070]{margin:0;font-size:18px;font-weight:600;color:var(--text, #333)}.dm-filters[data-v-49ba7070]{display:flex;gap:8px;align-items:center}.dm-search[data-v-49ba7070]{padding:6px 12px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;background:var(--card-bg, #fff);color:var(--text, #333);width:200px;box-sizing:border-box}.dm-board[data-v-49ba7070]{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr 1fr;gap:14px;flex:1;min-height:0}.dm-stage-col[data-v-49ba7070]{background:var(--card-bg, #fff);border-radius:10px;box-shadow:0 1px 4px #0000000a;display:flex;flex-direction:column;overflow:hidden;min-height:0}.dm-stage-header[data-v-49ba7070]{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border, #f0f0f0)}.dm-stage-header h4[data-v-49ba7070]{margin:0;font-size:14px;font-weight:600;color:var(--text, #333)}.dm-stage-dot[data-v-49ba7070]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dm-stage-count[data-v-49ba7070]{margin-left:auto;background:var(--sidebar-bg, #f0f0f0);color:#888;font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500}.stage-requirement .dm-stage-dot[data-v-49ba7070]{background:#7b1fa2}.stage-planning .dm-stage-dot[data-v-49ba7070]{background:#1976d2}.stage-develop .dm-stage-dot[data-v-49ba7070]{background:#00838f}.stage-test .dm-stage-dot[data-v-49ba7070]{background:#f57c00}.stage-release .dm-stage-dot[data-v-49ba7070]{background:#2e7d32}.stage-delivered .dm-stage-dot[data-v-49ba7070]{background:#607d8b}.dm-stage-body[data-v-49ba7070]{padding:10px;display:flex;flex-direction:column;gap:8px;flex:1;overflow-y:auto;min-height:0}.dm-item[data-v-49ba7070]{background:var(--sidebar-bg, #fafafa);border-radius:8px;padding:10px 12px 10px 62px;cursor:pointer;transition:all .15s;position:relative;min-height:90px}.dm-item[data-v-49ba7070]:hover{background:var(--sidebar-bg, #f0f0f0);transform:translate(2px)}.dm-folder-icon[data-v-49ba7070]{position:absolute;left:8px;top:50%;transform:translateY(-50%)}.dm-folder-icon svg[data-v-49ba7070]{display:block}.dm-item-no[data-v-49ba7070]{font-family:monospace;font-size:11px;color:#1976d2;margin-bottom:4px}.dm-item-title[data-v-49ba7070]{font-size:13px;font-weight:500;color:var(--text, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:6px}.dm-item-meta[data-v-49ba7070]{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#999}.dm-item-executor[data-v-49ba7070]{color:#555;font-weight:500}.dm-item-time[data-v-49ba7070]{font-size:11px}.dm-stage-empty[data-v-49ba7070]{text-align:center;color:#ccc;font-size:12px;padding:30px 0}.global-view[data-v-49ba7070]{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0;overflow-y:auto}.section-title[data-v-49ba7070]{margin:0;font-size:15px;font-weight:600;color:var(--text, #333)}.gantt-section[data-v-49ba7070]{background:var(--card-bg, #fff);border-radius:10px;padding:14px 16px;box-shadow:0 1px 4px #0000000a}.gantt-toolbar[data-v-49ba7070]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.gantt-pager[data-v-49ba7070]{display:flex;align-items:center;gap:6px}.pager-btn[data-v-49ba7070]{width:26px;height:26px;border:1px solid var(--border, #e0e0e0);background:var(--card-bg, #fff);border-radius:6px;cursor:pointer;font-size:16px;color:#555;display:flex;align-items:center;justify-content:center}.pager-btn[data-v-49ba7070]:hover{background:var(--sidebar-bg, #f5f5f5)}.pager-label[data-v-49ba7070]{font-size:14px;font-weight:600;color:var(--text, #333);min-width:100px;text-align:center}.pager-today[data-v-49ba7070]{margin-left:6px;padding:4px 10px;border:1px solid var(--border, #e0e0e0);background:var(--card-bg, #fff);border-radius:6px;cursor:pointer;font-size:12px;color:#555}.pager-today[data-v-49ba7070]:hover{background:var(--sidebar-bg, #f5f5f5)}.gantt-legend[data-v-49ba7070]{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:#666}.legend-item[data-v-49ba7070]{display:inline-flex;align-items:center;gap:4px}.legend-dot[data-v-49ba7070]{display:inline-block;width:8px;height:8px;border-radius:50%}.legend-bar[data-v-49ba7070]{display:inline-block;width:16px;height:8px;border-radius:2px}.legend-bar.planned[data-v-49ba7070]{opacity:.3;border:1px dashed;box-sizing:border-box}.legend-bar.actual[data-v-49ba7070]{opacity:.95}.legend-line[data-v-49ba7070]{display:inline-block;width:2px;height:12px}.gantt-wrap[data-v-49ba7070]{border:1px solid var(--border, #eee);border-radius:6px;overflow:hidden}.gantt-header[data-v-49ba7070]{display:flex;align-items:stretch;background:var(--sidebar-bg, #fafafa);border-bottom:1px solid var(--border, #eee);position:sticky;top:0;z-index:2}.gantt-name-col[data-v-49ba7070]{width:220px;flex-shrink:0;padding:8px 12px;border-right:1px solid var(--border, #eee);font-size:12px;color:#666;font-weight:600;display:flex;align-items:center}.gantt-dates[data-v-49ba7070]{display:grid;flex:1}.gantt-date-cell[data-v-49ba7070]{text-align:center;font-size:11px;color:#888;padding:6px 0;border-right:1px solid var(--border, #f0f0f0)}.gantt-date-cell.weekend[data-v-49ba7070]{color:#e53935;background:#e539350a}.gantt-date-cell.today[data-v-49ba7070]{background:#fff8e1;color:#f57c00;font-weight:600}.gantt-body[data-v-49ba7070]{max-height:480px;overflow-y:auto}.gantt-row[data-v-49ba7070]{display:flex;align-items:stretch;border-bottom:1px solid var(--border, #f5f5f5);cursor:pointer;transition:background .15s}.gantt-row[data-v-49ba7070]:hover{background:var(--sidebar-bg, #fafafa)}.gantt-row .gantt-name-col[data-v-49ba7070]{flex-direction:column;justify-content:center;font-weight:400;cursor:pointer}.gantt-no[data-v-49ba7070]{font-family:monospace;font-size:11px;color:#1976d2;margin-bottom:2px}.gantt-title[data-v-49ba7070]{font-size:12px;color:var(--text, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gantt-track[data-v-49ba7070]{flex:1;position:relative;min-height:44px}.gantt-grid[data-v-49ba7070]{display:grid;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.gantt-grid-cell[data-v-49ba7070]{border-right:1px solid var(--border, #f5f5f5)}.gantt-grid-cell.weekend[data-v-49ba7070]{background:#e5393508}.gantt-grid-cell.today[data-v-49ba7070]{background:#f57c000d}.gantt-marks[data-v-49ba7070]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mark-point[data-v-49ba7070]{position:absolute;top:50%;width:10px;height:10px;border-radius:50%;transform:translate(-50%,-50%);z-index:3}.mark-submit[data-v-49ba7070]{background:#7b1fa2;box-shadow:0 0 0 2px #7b1fa233}.mark-bar[data-v-49ba7070]{position:absolute;height:9px;border-radius:3px;z-index:2}.mark-bar.planned[data-v-49ba7070]{top:8px;opacity:.3;border:1px dashed currentColor;box-sizing:border-box}.mark-bar.actual[data-v-49ba7070]{top:24px;opacity:.95;box-shadow:0 1px 2px #00000026}.bar-dev[data-v-49ba7070]{background:#00838f;color:#00838f}.bar-test[data-v-49ba7070]{background:#f57c00;color:#f57c00}.bar-release[data-v-49ba7070]{background:#2e7d32;color:#2e7d32}.mark-line[data-v-49ba7070]{position:absolute;top:2px;bottom:2px;width:2px;transform:translate(-50%);z-index:4}.line-expected[data-v-49ba7070]{background:repeating-linear-gradient(to bottom,#e53935 0,#e53935 3px,transparent 3px,transparent 6px)}.gantt-empty[data-v-49ba7070]{padding:40px 0;text-align:center;color:#ccc;font-size:13px}.load-section[data-v-49ba7070]{background:var(--card-bg, #fff);border-radius:10px;padding:14px 16px;box-shadow:0 1px 4px #0000000a}.load-section .section-title[data-v-49ba7070]{margin-bottom:12px}.load-grid[data-v-49ba7070]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.load-card[data-v-49ba7070]{background:var(--sidebar-bg, #fafafa);border-radius:8px;padding:12px 14px;border:1px solid var(--border, #f0f0f0)}.load-header[data-v-49ba7070]{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px dashed var(--border, #eee)}.load-avatar[data-v-49ba7070]{width:36px;height:36px;border-radius:50%;object-fit:cover}.load-avatar-fallback[data-v-49ba7070]{width:36px;height:36px;border-radius:50%;background:#ddd;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600}.load-meta[data-v-49ba7070]{flex:1;min-width:0}.load-name[data-v-49ba7070]{font-size:14px;font-weight:600;color:var(--text, #333)}.load-role[data-v-49ba7070]{font-size:11px;color:#999;margin-top:2px}.load-stats[data-v-49ba7070]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.load-stat-item[data-v-49ba7070]{text-align:center;padding:8px 4px;border-radius:6px}.stat-progress[data-v-49ba7070]{background:#00838f14}.stat-pending[data-v-49ba7070]{background:#f57c0014}.stat-total[data-v-49ba7070]{background:#33333314}.load-stat-num[data-v-49ba7070]{font-size:20px;font-weight:700;line-height:1.2}.stat-progress .load-stat-num[data-v-49ba7070]{color:#00838f}.stat-pending .load-stat-num[data-v-49ba7070]{color:#f57c00}.stat-total .load-stat-num[data-v-49ba7070]{color:#333}.load-stat-lbl[data-v-49ba7070]{font-size:11px;color:#666;margin-top:2px}.load-stat-sub[data-v-49ba7070]{font-size:10px;color:#999;margin-top:2px}.modal-mask[data-v-49ba7070]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-49ba7070]{background:var(--card-bg, #fff);border-radius:8px;width:560px;max-height:90vh;display:flex;flex-direction:column}.modal-header[data-v-49ba7070]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border, #eee)}.modal-header h3[data-v-49ba7070]{margin:0;font-size:16px;color:var(--text, #333)}.modal-close[data-v-49ba7070]{font-size:24px;cursor:pointer;color:#999;line-height:1}.modal-close[data-v-49ba7070]:hover{color:#333}.modal-body[data-v-49ba7070]{padding:20px;overflow-y:auto;flex:1}.modal-footer[data-v-49ba7070]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border, #eee)}.form-group[data-v-49ba7070]{margin-bottom:14px}.form-group label[data-v-49ba7070]{display:block;font-size:13px;color:var(--text, #333);margin-bottom:6px;font-weight:500}.form-group input[data-v-49ba7070],.form-group textarea[data-v-49ba7070],.form-group .form-select[data-v-49ba7070]{width:100%;padding:8px 12px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;background:var(--card-bg, #fff);color:var(--text, #333);box-sizing:border-box}.form-group textarea[data-v-49ba7070]{resize:vertical;font-family:inherit}.required[data-v-49ba7070]{color:#e53935}.form-hint[data-v-49ba7070]{font-size:11px;color:#999;margin-top:4px}.btn-primary[data-v-49ba7070],.btn-default[data-v-49ba7070]{padding:6px 16px;border:none;border-radius:6px;font-size:13px;cursor:pointer;font-weight:500}.btn-primary[data-v-49ba7070]{background:#333;color:#fff}.btn-primary[data-v-49ba7070]:hover{background:#555}.btn-primary[data-v-49ba7070]:disabled{background:#999;cursor:not-allowed}.btn-default[data-v-49ba7070]{background:var(--card-bg, #fff);color:var(--text, #333);border:1px solid var(--border, #e0e0e0)}.btn-default[data-v-49ba7070]:hover{background:var(--sidebar-bg, #f5f5f5)}.drd-toast[data-v-44836a41]{position:fixed;top:24px;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:10px 20px;border-radius:6px;font-size:13px;z-index:9999;box-shadow:0 4px 12px #0003;pointer-events:none;white-space:nowrap}.toast-fade-enter-active[data-v-44836a41],.toast-fade-leave-active[data-v-44836a41]{transition:opacity .25s,top .25s}.toast-fade-enter-from[data-v-44836a41],.toast-fade-leave-to[data-v-44836a41]{opacity:0;top:12px}.drd-layout[data-v-44836a41]{display:flex;flex-direction:column;gap:0;height:100%}.drd-header[data-v-44836a41]{background:var(--card-bg, #fff);border-radius:12px;padding:18px 22px;margin:16px 20px 0;box-shadow:0 1px 4px #0000000a;display:flex;flex-direction:column;gap:12px;position:relative;z-index:2}.drd-title-wrap[data-v-44836a41]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.btn-back[data-v-44836a41]{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--border, #e0e0e0);background:var(--card-bg, #fff);color:var(--text, #333);padding:5px 10px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .15s}.btn-back[data-v-44836a41]:hover{background:var(--sidebar-bg, #f5f5f5);border-color:#555}.dev-no[data-v-44836a41]{font-family:monospace;color:#1976d2;font-size:13px}.drd-title[data-v-44836a41]{margin:0;font-size:18px;font-weight:600;color:var(--text, #333)}.status-tag[data-v-44836a41]{font-size:11px;padding:2px 10px;border-radius:10px;font-weight:500}.status-progress[data-v-44836a41]{background:#e3f2fd;color:#1976d2}.status-done[data-v-44836a41]{background:#e8f5e9;color:#2e7d32}.status-cancel[data-v-44836a41]{background:#f5f5f5;color:#999}.drd-meta[data-v-44836a41]{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:#888}.meta-item label[data-v-44836a41]{color:#aaa;margin-right:4px}.meta-item strong[data-v-44836a41]{color:var(--text, #333);font-weight:500}.drd-desc[data-v-44836a41]{font-size:13px;color:#666;padding:10px 12px;background:var(--sidebar-bg, #f9f9f9);border-radius:6px;line-height:1.6;white-space:pre-wrap}.stage-tag[data-v-44836a41]{display:inline-block;padding:2px 10px;border-radius:10px;font-size:11px;font-weight:500}.stage-requirement[data-v-44836a41]{background:#e3f2fd;color:#1976d2}.stage-planning[data-v-44836a41]{background:#fff8e1;color:#f57c00}.stage-develop[data-v-44836a41]{background:#fff3e0;color:#ef6c00}.stage-test[data-v-44836a41]{background:#f3e5f5;color:#7b1fa2}.stage-release[data-v-44836a41]{background:#e8f5e9;color:#2e7d32}.drd-main[data-v-44836a41]{display:flex;gap:24px;margin-top:16px;align-items:flex-start;justify-content:space-between;background:#edeef3;border-radius:12px;padding:10px 20px;position:relative}.dev-timeline-v[data-v-44836a41]{width:320px;flex-shrink:0;background:#ffffffb8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:12px;padding:20px 18px;position:relative;z-index:2;min-height:calc(100vh - 220px);overflow-y:auto}.tlv-node[data-v-44836a41]{position:relative;padding-bottom:24px}.tlv-node[data-v-44836a41]:last-child{padding-bottom:0}.tlv-row[data-v-44836a41]{display:flex;align-items:flex-start;gap:12px}.tlv-clickable[data-v-44836a41]{cursor:pointer}.tlv-clickable:hover .tlv-dot[data-v-44836a41]{transform:scale(1.15);transition:transform .2s}.tlv-dot[data-v-44836a41]{width:28px;height:28px;border-radius:50%;background:#eee;color:#999;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:2px solid #ddd;transition:all .2s;flex-shrink:0;z-index:2;margin-top:2px}.tlv-num[data-v-44836a41]{line-height:1}.tlv-check[data-v-44836a41]{display:inline-flex;color:#fff;line-height:1}.tlv-info[data-v-44836a41]{flex:1;min-width:0}.tlv-title[data-v-44836a41]{font-size:14px;font-weight:600;color:var(--text, #333);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tlv-badge[data-v-44836a41]{display:inline-block;padding:1px 8px;border-radius:8px;font-size:11px;font-weight:500;background:#e3f2fdb3;color:#1565c0}.tlv-badge-done[data-v-44836a41]{background:#e8f5e9b3;color:#2e7d32}.tlv-badge-pending[data-v-44836a41]{background:#f5f5f5b3;color:#999}.tlv-stage-range[data-v-44836a41]{margin-top:4px;font-size:12px;color:var(--text-secondary, #888);line-height:1.4}.tlv-detail[data-v-44836a41]{margin-top:8px;margin-left:40px;padding:6px 10px;background:transparent;border-left:2px solid rgba(255,255,255,.6);border-radius:0}.tlv-detail-list[data-v-44836a41]{display:flex;flex-direction:column;gap:6px}.tlv-detail-item[data-v-44836a41]{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px;line-height:1.5}.tlv-detail-user[data-v-44836a41]{font-weight:600;color:var(--text, #333)}.tlv-detail-action[data-v-44836a41]{color:var(--accent, #1565c0);font-size:11px}.tlv-detail-pending[data-v-44836a41]{color:#ff9800}.tlv-detail-doc[data-v-44836a41]{color:var(--text-secondary, #666);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tlv-detail-time[data-v-44836a41]{color:#999;font-size:11px;margin-left:4px}.tlv-detail-empty[data-v-44836a41]{font-size:12px;color:#bbb;font-style:italic}.tlv-line[data-v-44836a41]{position:absolute;left:14px;top:30px;width:2px;height:calc(100% - 30px);background:#e0e0e0;z-index:1}.tlv-line.line-done[data-v-44836a41]{background:#4caf50}.tlv-done .tlv-dot[data-v-44836a41]{background:#4caf50;border-color:#4caf50;color:#fff}.tlv-current .tlv-dot[data-v-44836a41]{background:var(--accent, #1565c0);border-color:var(--accent, #1565c0);color:#fff;box-shadow:0 0 0 4px #1565c033}.tlv-current .tlv-detail[data-v-44836a41]{background:transparent;border-left-color:var(--accent, #1565c0)}.tlv-active .tlv-dot[data-v-44836a41]{transform:scale(1.2)}.tlv-active.tlv-current .tlv-dot[data-v-44836a41]{box-shadow:0 0 0 6px #1565c040}.tlv-active.tlv-done .tlv-dot[data-v-44836a41]{box-shadow:0 0 0 6px #4caf5040}.tlv-active:not(.tlv-current):not(.tlv-done) .tlv-dot[data-v-44836a41]{box-shadow:0 0 0 6px #96969633}.drd-main .stages-list[data-v-44836a41]{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:grab}.drd-main .stages-list.is-dragging[data-v-44836a41]{cursor:grabbing}.stages-drag-wrapper[data-v-44836a41]{display:flex;align-items:center;justify-content:center;will-change:transform}.dev-calendar[data-v-44836a41]{width:320px;flex-shrink:0;background:#ffffffb8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:12px;padding:18px 16px;position:relative;z-index:2;min-height:calc(100vh - 220px)}.cal-header[data-v-44836a41]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cal-title[data-v-44836a41]{font-size:14px;font-weight:600;color:var(--text, #333)}.cal-nav-btn[data-v-44836a41]{background:none;border:1px solid var(--border, #e0e0e0);border-radius:4px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#666;transition:all .15s}.cal-nav-btn[data-v-44836a41]:hover{background:#f0f0f0;color:#333}.cal-weekdays[data-v-44836a41]{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.cal-weekday[data-v-44836a41]{text-align:center;font-size:11px;color:#999;padding:4px 0;font-weight:500}.cal-grid[data-v-44836a41]{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-day[data-v-44836a41]{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:12px;color:var(--text, #333);position:relative}.cal-day-num[data-v-44836a41]{line-height:1}.cal-day-other[data-v-44836a41]{color:#ccc}.cal-day-today[data-v-44836a41]{background:var(--accent, #1565c0);color:#fff;font-weight:600}.cal-day-today .cal-day-num[data-v-44836a41]{color:#fff}.cal-day[style*=background] .cal-day-num[data-v-44836a41]{color:#fff;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.cal-day-expected[data-v-44836a41]{border:2px dashed #e91e63;box-sizing:border-box}.cal-day-mark[data-v-44836a41]{position:absolute;bottom:1px;left:0;right:0;text-align:center;font-size:7px;color:#e91e63;line-height:1;white-space:nowrap;overflow:hidden}.cal-legend[data-v-44836a41]{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(0,0,0,.06)}.legend-item[data-v-44836a41]{display:flex;align-items:center;gap:4px;font-size:10px;color:#666}.legend-dot[data-v-44836a41]{width:10px;height:10px;border-radius:2px;display:inline-block}.legend-dot-light[data-v-44836a41]{opacity:.5}.dev-timeline[data-v-44836a41]{display:flex;align-items:flex-start;background:var(--card-bg, #fff);border:1px solid var(--border, #e0e0e0);border-radius:12px;padding:20px 16px 14px;position:relative}.tl-node[data-v-44836a41]{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;min-width:0}.tl-clickable[data-v-44836a41]{cursor:pointer}.tl-clickable:hover .tl-dot[data-v-44836a41]{transform:scale(1.15);transition:transform .2s}.tl-dot[data-v-44836a41]{width:28px;height:28px;border-radius:50%;background:#eee;color:#999;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:2px solid #ddd;transition:all .2s;z-index:2}.tl-num[data-v-44836a41]{line-height:1}.tl-check[data-v-44836a41]{display:inline-flex;color:#fff;line-height:1}.tl-line[data-v-44836a41]{position:absolute;top:14px;left:50%;width:100%;height:2px;background:#e0e0e0;z-index:1}.tl-line.line-done[data-v-44836a41]{background:#4caf50}.tl-title[data-v-44836a41]{margin-top:8px;font-size:12px;font-weight:600;color:var(--text, #333);text-align:center}.tl-time[data-v-44836a41]{margin-top:3px;font-size:11px;color:#999;text-align:center;line-height:1.4;word-break:break-all}.tl-done .tl-dot[data-v-44836a41]{background:#4caf50;border-color:#4caf50;color:#fff}.tl-done .tl-title[data-v-44836a41]{color:#2e7d32}.tl-current .tl-dot[data-v-44836a41]{background:#1976d2;border-color:#1976d2;color:#fff;box-shadow:0 0 0 4px #1976d226}.tl-current .tl-title[data-v-44836a41]{color:#1976d2}.tl-accept.tl-done .tl-dot[data-v-44836a41]{background:#ff9800;border-color:#ff9800}.tl-accept.tl-done .tl-title[data-v-44836a41]{color:#ef6c00}.accept-bar[data-v-44836a41]{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(90deg,#fff8e1,#fff3e0);border:1px solid #ffe0b2;border-radius:8px}.btn-accept[data-v-44836a41]{display:inline-flex;align-items:center;justify-content:center;padding:8px 22px;background:#ff9800;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-accept[data-v-44836a41]:hover{background:#f57c00}.btn-accept[data-v-44836a41]:disabled{background:#ffb74d;cursor:not-allowed}.accept-hint[data-v-44836a41]{font-size:12px;color:#795548}.stages-list[data-v-44836a41]{display:flex;gap:0;perspective:1400px;overflow-x:auto;overflow-y:visible;padding:60px 80px;scroll-behavior:smooth;align-items:center;justify-content:center;flex:1;min-height:0}.stages-list[data-v-44836a41]::-webkit-scrollbar{height:6px}.stages-list[data-v-44836a41]::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.stage-card[data-v-44836a41]{background:var(--card-bg, #fff);border:1px solid var(--border, #e0e0e0);border-radius:12px;overflow:visible;position:relative;min-width:360px;min-height:450px;flex-shrink:0;margin-right:-240px;cursor:pointer;transition:transform .4s ease,box-shadow .3s,filter .3s,opacity .3s;transform-style:preserve-3d;backface-visibility:hidden;-webkit-backface-visibility:hidden}.stage-card[data-v-44836a41]:last-child{margin-right:0}.stage-card[data-v-44836a41]:hover{border-color:#4a90d9;box-shadow:0 0 0 2px #4a90d926,0 2px 8px #4a90d914;z-index:2}.stage-card.is-current[data-v-44836a41]{border-color:#5c6bc0;box-shadow:0 0 0 2px #5c6bc026}.stage-card.is-current[data-v-44836a41]:hover{border-color:#4a90d9;box-shadow:0 0 0 2px #4a90d926,0 2px 8px #4a90d914}.stage-card-header[data-v-44836a41]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border, #f0f0f0);background:var(--sidebar-bg, #f9f9f9);border-radius:12px 12px 0 0}.stage-left[data-v-44836a41]{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.stage-index[data-v-44836a41]{width:26px;height:26px;border-radius:50%;background:#333;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.stage-requirement .stage-index[data-v-44836a41]{background:#1976d2}.stage-planning .stage-index[data-v-44836a41]{background:#f57c00}.stage-develop .stage-index[data-v-44836a41]{background:#ef6c00}.stage-test .stage-index[data-v-44836a41]{background:#7b1fa2}.stage-release .stage-index[data-v-44836a41]{background:#2e7d32}.stage-head-info[data-v-44836a41]{flex:1;min-width:0}.stage-head-title[data-v-44836a41]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.stage-head-title h4[data-v-44836a41]{margin:0;font-size:13px;font-weight:600;color:var(--text, #333)}.stage-status-tag[data-v-44836a41]{font-size:11px;padding:2px 8px;border-radius:8px;font-weight:500}.ss-pending[data-v-44836a41]{background:#f5f5f5;color:#888}.ss-uploaded[data-v-44836a41]{background:#e8f5e9;color:#2e7d32}.current-tag[data-v-44836a41]{font-size:10px;padding:1px 6px;border-radius:4px;background:#5c6bc0;color:#fff;font-weight:500}.stage-head-meta[data-v-44836a41]{display:flex;gap:10px;margin-top:3px;font-size:11px;color:#888;flex-wrap:wrap}.meta-pair label[data-v-44836a41]{color:#aaa}.meta-pair strong[data-v-44836a41]{color:var(--text, #333);font-weight:500}.stage-right[data-v-44836a41]{display:flex;gap:6px;flex-shrink:0}.stage-card-body[data-v-44836a41]{padding:16px 14px;display:flex;flex-direction:column;gap:12px}.stage-plan-dates[data-v-44836a41]{background:#f5f7fa;border:1px solid #eef0f4;border-radius:6px;padding:8px 10px;display:flex;flex-direction:column;gap:4px}.plan-date-row[data-v-44836a41]{display:flex;align-items:center;gap:8px;font-size:12px}.plan-date-label[data-v-44836a41]{color:#7c7c7c;min-width:64px;flex-shrink:0}.plan-date-value[data-v-44836a41]{color:var(--text, #333);font-weight:500}.form-date-input[data-v-44836a41]{width:100%;padding:7px 10px;border:1px solid var(--border, #e0e0e0);border-radius:4px;font-size:13px;color:var(--text, #333);background:#fff;font-family:inherit}.form-date-input[data-v-44836a41]:focus{outline:none;border-color:#5c6bc0}.date-range-row[data-v-44836a41]{display:flex;align-items:center;gap:8px}.date-range-divider[data-v-44836a41]{color:#999;font-size:13px;flex-shrink:0}.plan-date-block[data-v-44836a41]{display:flex;flex-direction:column;gap:10px}.stage-info-grid[data-v-44836a41]{display:grid;grid-template-columns:1fr;gap:12px;align-items:center}.info-item[data-v-44836a41]{display:flex;flex-direction:column;gap:4px}.info-item-full[data-v-44836a41]{grid-column:1 / -1}.info-label[data-v-44836a41]{font-size:11px;color:#999}.info-value[data-v-44836a41]{font-size:13px;color:var(--text, #333);font-weight:500}.info-value.empty[data-v-44836a41]{color:#ccc;font-weight:400}.info-value.attachment[data-v-44836a41]{display:flex;align-items:center;gap:10px}.attach-name[data-v-44836a41]{color:#1976d2;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:400px}.stage-actions[data-v-44836a41]{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding-top:16px;border-top:1px dashed var(--border, #f0f0f0)}.action-hint[data-v-44836a41]{font-size:12px;color:#aaa;padding:4px 8px}.action-hint.action-done[data-v-44836a41]{color:#2e7d32}.stage-arrow[data-v-44836a41]{display:none}.attach-item[data-v-44836a41]{display:inline-flex;align-items:center;gap:6px;margin-right:12px;margin-bottom:4px}.form-file-list[data-v-44836a41]{margin-top:8px;display:flex;flex-direction:column;gap:4px}.form-file-item[data-v-44836a41]{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--sidebar-bg, #f5f5f5);border-radius:4px;font-size:13px}.form-file-name[data-v-44836a41]{flex:1;color:var(--text, #333);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-file-remove[data-v-44836a41]{background:none;border:none;color:#999;cursor:pointer;font-size:18px;padding:0 4px;line-height:1}.form-file-remove[data-v-44836a41]:hover{color:#e53935}.form-file-list-existing[data-v-44836a41]{margin-bottom:8px}.form-file-item-existing[data-v-44836a41]{background:#2e7d3214}.form-file-list-title[data-v-44836a41]{font-size:12px;color:#888;margin-bottom:4px}.btn-row[data-v-44836a41]{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--border, #e0e0e0);background:var(--card-bg, #fff);color:var(--text, #333);border-radius:6px;font-size:12px;cursor:pointer;transition:all .15s}.btn-row[data-v-44836a41]:hover{border-color:#555;background:var(--sidebar-bg, #f5f5f5)}.btn-link[data-v-44836a41]{background:#fff;border:1px solid #d0d0e0;color:#1976d2;font-size:12px;cursor:pointer;padding:2px 8px;border-radius:3px;text-decoration:none;transition:all .15s}.btn-link[data-v-44836a41]:hover{background:#1976d2;color:#fff;border-color:#1976d2}.btn-primary[data-v-44836a41],.btn-default[data-v-44836a41]{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border:none;border-radius:6px;font-size:13px;cursor:pointer;font-weight:500}.btn-primary[data-v-44836a41]{background:#333;color:#fff}.btn-primary[data-v-44836a41]:hover{background:#555}.btn-primary[data-v-44836a41]:disabled{background:#999;cursor:not-allowed}.btn-default[data-v-44836a41]{background:var(--card-bg, #fff);color:var(--text, #333);border:1px solid var(--border, #e0e0e0)}.btn-default[data-v-44836a41]:hover{background:var(--sidebar-bg, #f5f5f5)}.btn-default[data-v-44836a41]:disabled{color:#bbb;border-color:var(--border, #eee);background:var(--sidebar-bg, #f9f9f9);cursor:not-allowed;opacity:.7}.btn-notify[data-v-44836a41]{margin-left:8px}.stage-tasks-history[data-v-44836a41]{margin-top:4px;padding-top:12px;border-top:1px dashed var(--border, #f0f0f0);display:flex;flex-direction:column;gap:6px}.tasks-history-title[data-v-44836a41]{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#888}.tasks-history-list[data-v-44836a41]{display:flex;flex-direction:column;gap:4px;max-height:140px;overflow-y:auto;padding-right:4px}.tasks-history-list[data-v-44836a41]::-webkit-scrollbar{width:4px}.tasks-history-list[data-v-44836a41]::-webkit-scrollbar-thumb{background:#ddd;border-radius:2px}.task-history-item[data-v-44836a41]{display:flex;align-items:center;gap:8px;padding:5px 8px;background:var(--sidebar-bg, #f9f9f9);border-radius:4px;font-size:11px;border-left:2px solid #999}.task-history-item.ths-待处理[data-v-44836a41]{border-left-color:#1976d2}.task-history-item.ths-进行中[data-v-44836a41]{border-left-color:#f57c00}.task-history-item.ths-已完成[data-v-44836a41]{border-left-color:#4caf50}.task-history-item.ths-已拒绝[data-v-44836a41]{border-left-color:#e53935}.th-name[data-v-44836a41]{flex:1;color:var(--text, #333);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.th-meta[data-v-44836a41]{display:inline-flex;align-items:center;gap:8px;font-size:10px;color:#999;flex-shrink:0}.th-owner[data-v-44836a41]{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.th-date[data-v-44836a41]{color:#aaa}.th-status[data-v-44836a41]{font-size:10px;padding:1px 6px;border-radius:8px;font-weight:500;flex-shrink:0}.status-tag-待处理[data-v-44836a41]{background:#e3f2fd;color:#1976d2}.status-tag-进行中[data-v-44836a41]{background:#fff8e1;color:#f57c00}.status-tag-已完成[data-v-44836a41]{background:#e8f5e9;color:#2e7d32}.status-tag-已拒绝[data-v-44836a41]{background:#ffebee;color:#c62828}.form-row[data-v-44836a41]{display:flex;gap:12px}.form-row .form-group[data-v-44836a41]{flex:1}.datetime-split[data-v-44836a41]{display:flex;gap:6px}.datetime-split input[data-v-44836a41]{flex:1}.form-select[data-v-44836a41]{width:100%;padding:8px 12px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;background:var(--card-bg, #fff);color:var(--text, #333);box-sizing:border-box}.stage-doc-check-item[data-v-44836a41]{cursor:pointer;border:1px solid transparent}.stage-doc-check-item[data-v-44836a41]:hover{background:#eef0f4}.stage-doc-check-item.checked[data-v-44836a41]{background:#e8eaf6;border-color:#5c6bc0}.stage-doc-check-item input[type=checkbox][data-v-44836a41]{width:14px;height:14px;accent-color:#5c6bc0;cursor:pointer;margin:0;flex-shrink:0}.att-upload[data-v-44836a41]{display:flex;align-items:center;gap:8px}.pending-hint[data-v-44836a41]{font-size:11px;color:#888}.modal-mask[data-v-44836a41]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-44836a41]{background:var(--card-bg, #fff);border-radius:8px;width:560px;max-height:90vh;display:flex;flex-direction:column}.modal-header[data-v-44836a41]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border, #eee)}.modal-header h3[data-v-44836a41]{margin:0;font-size:16px;color:var(--text, #333)}.modal-close[data-v-44836a41]{font-size:24px;cursor:pointer;color:#999;line-height:1}.modal-close[data-v-44836a41]:hover{color:#333}.modal-body[data-v-44836a41]{padding:20px;overflow-y:auto;flex:1}.modal-footer[data-v-44836a41]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border, #eee)}.tpl-list[data-v-44836a41]{display:flex;flex-direction:column;gap:10px}.tpl-item[data-v-44836a41]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid var(--border, #eee);border-radius:8px;transition:all .15s}.tpl-item[data-v-44836a41]:hover{border-color:var(--accent, #1565c0);background:var(--card-bg-hover, #f5f7fa)}.tpl-item-main[data-v-44836a41]{flex:1;min-width:0}.tpl-item-name[data-v-44836a41]{font-size:14px;font-weight:500;color:var(--text, #333);margin-bottom:4px}.tpl-item-meta[data-v-44836a41]{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-secondary, #999)}.tpl-item-type[data-v-44836a41]{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;font-weight:600;color:#fff;background:#888}.tpl-item-type.type-docx[data-v-44836a41]{background:#2b579a}.tpl-item-type.type-pdf[data-v-44836a41]{background:#e53935}.tpl-item-type.type-md[data-v-44836a41]{background:#42a5f5}.tpl-item-version[data-v-44836a41]{padding:1px 5px;border-radius:3px;background:var(--bg-tag, #eef2f7);color:var(--text-secondary, #666)}.tpl-item-actions[data-v-44836a41]{display:flex;gap:6px;flex-shrink:0}.btn-default[data-v-44836a41]{padding:6px 14px;border:1px solid var(--border, #ddd);border-radius:4px;background:var(--card-bg, #fff);color:var(--text, #333);cursor:pointer;font-size:13px}.btn-default[data-v-44836a41]:hover{background:var(--card-bg-hover, #f5f7fa)}.form-group[data-v-44836a41]{margin-bottom:14px}.form-group label[data-v-44836a41]{display:block;font-size:13px;color:var(--text, #333);margin-bottom:6px;font-weight:500}.form-group input[data-v-44836a41],.form-group textarea[data-v-44836a41],.form-group .form-select[data-v-44836a41]{width:100%;padding:8px 12px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;background:var(--card-bg, #fff);color:var(--text, #333);box-sizing:border-box}.executor-check-list[data-v-44836a41]{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;padding:8px;border:1px solid var(--border, #e0e0e0);border-radius:6px;background:var(--card-bg, #fff)}.executor-check-item[data-v-44836a41]{display:block;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:13px;line-height:1.6;transition:all .15s;border:1px solid transparent}.executor-check-item[data-v-44836a41]:hover{background:var(--sidebar-bg, #f5f5f5)}.executor-check-item[data-v-44836a41]:has(input:checked){background:#f0f0f0;border-color:#333}.executor-check-item input[type=checkbox][data-v-44836a41]{vertical-align:middle;margin:0 8px 0 0;width:15px;height:15px;accent-color:#333;cursor:pointer}.form-hint-inline[data-v-44836a41]{font-size:11px;color:#999;font-weight:400;margin-left:4px}.form-group textarea[data-v-44836a41]{resize:vertical;font-family:inherit}.required[data-v-44836a41]{color:#e53935}.form-hint[data-v-44836a41]{font-size:11px;color:#888;margin-top:4px}.form-hint strong[data-v-44836a41]{color:var(--text, #333)}.form-hint-block[data-v-44836a41]{display:flex;align-items:center;gap:6px;padding:10px 12px;background:var(--sidebar-bg, #f9f9f9);border-radius:6px;font-size:12px;color:#666;margin-top:8px}.form-hint-warn[data-v-44836a41]{background:#fff8e1;color:#f57c00;margin-bottom:12px;margin-top:0}.file-pick-wrap[data-v-44836a41]{display:flex;align-items:center;gap:10px}.file-name[data-v-44836a41]{font-size:12px;color:var(--text, #333);padding:4px 10px;background:var(--sidebar-bg, #f5f5f5);border-radius:4px}.file-hint[data-v-44836a41]{font-size:12px;color:#999}.st-layout[data-v-3cc60416]{display:flex;flex-direction:column;gap:14px}.st-header[data-v-3cc60416]{display:flex;justify-content:space-between;align-items:center}.st-title[data-v-3cc60416]{margin:0;font-size:18px;font-weight:600;color:var(--text, #333)}.st-actions[data-v-3cc60416]{display:flex;gap:8px}.st-tabs[data-v-3cc60416]{display:flex;gap:4px;background:var(--card-bg, #fff);padding:6px;border-radius:10px;box-shadow:0 1px 4px #0000000a}.st-tab[data-v-3cc60416]{flex:1;border:none;background:transparent;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:13px;color:#666;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:6px}.st-tab[data-v-3cc60416]:hover{background:var(--sidebar-bg, #f5f5f5);color:var(--text, #333)}.st-tab.active[data-v-3cc60416]{background:#333;color:#fff;font-weight:500}.st-tab-count[data-v-3cc60416]{display:inline-block;min-width:18px;height:18px;line-height:18px;padding:0 5px;border-radius:9px;background:#00000014;color:inherit;font-size:11px;font-weight:600}.st-tab.active .st-tab-count[data-v-3cc60416]{background:#ffffff40}.st-card[data-v-3cc60416]{background:var(--card-bg, #fff);border-radius:12px;padding:4px 0;box-shadow:0 1px 4px #0000000a;overflow:hidden}.st-table[data-v-3cc60416]{width:100%;border-collapse:collapse;font-size:13px}.st-table th[data-v-3cc60416]{background:var(--sidebar-bg, #f9f9f9);padding:10px 14px;text-align:left;color:#888;font-weight:500;font-size:12px;border-bottom:1px solid var(--border, #f0f0f0)}.st-table td[data-v-3cc60416]{padding:12px 14px;border-bottom:1px solid var(--border, #f5f5f5);color:var(--text, #333);vertical-align:middle}.st-table tr:last-child td[data-v-3cc60416]{border-bottom:none}.st-table tbody tr:hover td[data-v-3cc60416]{background:var(--sidebar-bg, #fafbff)}.tpl-name[data-v-3cc60416]{font-weight:500;color:var(--text, #333)}.tpl-version[data-v-3cc60416]{font-family:monospace;color:#888;font-size:12px}.tpl-type-tag[data-v-3cc60416]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600}.type-pdf[data-v-3cc60416]{background:#ffebee;color:#c62828}.type-md[data-v-3cc60416]{background:#e3f2fd;color:#1565c0}.type-docx[data-v-3cc60416],.type-doc[data-v-3cc60416]{background:#e8f5e9;color:#2e7d32}.tpl-status[data-v-3cc60416]{display:inline-block;padding:2px 10px;border-radius:10px;font-size:11px;font-weight:500}.status-active[data-v-3cc60416]{background:#e8f5e9;color:#2e7d32}.status-inactive[data-v-3cc60416]{background:#f5f5f5;color:#999}.tpl-time[data-v-3cc60416]{color:#888;font-size:12px}.empty-row[data-v-3cc60416]{text-align:center;color:#ccc;padding:40px 0!important;font-size:13px}.row-actions[data-v-3cc60416]{display:flex;gap:4px;flex-wrap:wrap}.btn-row[data-v-3cc60416]{display:inline-flex;align-items:center;gap:3px;padding:4px 8px;border:1px solid var(--border, #e0e0e0);background:var(--card-bg, #fff);color:var(--text, #333);border-radius:4px;font-size:12px;cursor:pointer;transition:all .15s}.btn-row[data-v-3cc60416]:hover{border-color:#555;background:var(--sidebar-bg, #f5f5f5)}.btn-row.btn-danger[data-v-3cc60416]{color:#e53935;border-color:#ffcdd2}.btn-row.btn-danger[data-v-3cc60416]:hover{background:#ffebee}.modal-mask[data-v-3cc60416]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-3cc60416]{background:var(--card-bg, #fff);border-radius:8px;width:560px;max-height:90vh;display:flex;flex-direction:column}.modal-header[data-v-3cc60416]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border, #eee)}.modal-header h3[data-v-3cc60416]{margin:0;font-size:16px;color:var(--text, #333)}.modal-close[data-v-3cc60416]{font-size:24px;cursor:pointer;color:#999;line-height:1}.modal-close[data-v-3cc60416]:hover{color:#333}.modal-body[data-v-3cc60416]{padding:20px;overflow-y:auto;flex:1}.modal-footer[data-v-3cc60416]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border, #eee)}.form-group[data-v-3cc60416]{margin-bottom:14px}.form-group label[data-v-3cc60416]{display:block;font-size:13px;color:var(--text, #333);margin-bottom:6px;font-weight:500}.form-group input[data-v-3cc60416]{width:100%;padding:8px 12px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;background:var(--card-bg, #fff);color:var(--text, #333);box-sizing:border-box}.required[data-v-3cc60416]{color:#e53935}.file-pick-wrap[data-v-3cc60416]{display:flex;align-items:center;gap:10px}.file-name[data-v-3cc60416]{font-size:12px;color:var(--text, #333);padding:4px 10px;background:var(--sidebar-bg, #f5f5f5);border-radius:4px}.file-hint[data-v-3cc60416]{font-size:12px;color:#999}.upload-hint[data-v-3cc60416]{display:flex;align-items:center;gap:6px;padding:10px 12px;background:var(--sidebar-bg, #f9f9f9);border-radius:6px;font-size:12px;color:#888;margin-top:8px}.btn-primary[data-v-3cc60416],.btn-default[data-v-3cc60416]{padding:6px 16px;border:none;border-radius:6px;font-size:13px;cursor:pointer;font-weight:500}.btn-primary[data-v-3cc60416]{background:#333;color:#fff}.btn-primary[data-v-3cc60416]:hover{background:#555}.btn-primary[data-v-3cc60416]:disabled{background:#999;cursor:not-allowed}.btn-default[data-v-3cc60416]{background:var(--card-bg, #fff);color:var(--text, #333);border:1px solid var(--border, #e0e0e0)}.btn-default[data-v-3cc60416]:hover{background:var(--sidebar-bg, #f5f5f5)}.dg-layout[data-v-ef05d25d]{padding:20px;max-width:1400px;margin:0 auto}.dg-header[data-v-ef05d25d]{margin-bottom:20px}.dg-title[data-v-ef05d25d]{font-size:20px;color:var(--text, #333);margin:0 0 4px}.dg-subtitle[data-v-ef05d25d]{font-size:13px;color:#888}.dg-main[data-v-ef05d25d]{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dg-input-panel[data-v-ef05d25d],.dg-result-panel[data-v-ef05d25d]{background:var(--card-bg, #fff);border:1px solid var(--border, #e8e8f0);border-radius:8px;padding:20px;min-height:500px}.dg-section[data-v-ef05d25d]{margin-bottom:20px}.dg-section-title[data-v-ef05d25d]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text, #333);margin-bottom:10px}.dg-part-tag[data-v-ef05d25d]{display:inline-block;padding:2px 8px;background:#5c6bc0;color:#fff;border-radius:4px;font-size:11px;font-weight:500}.dg-required-mark[data-v-ef05d25d]{color:#e53935;font-size:14px;margin-left:-4px}.dg-sub-block[data-v-ef05d25d]{margin-bottom:8px}.dg-sub-label[data-v-ef05d25d]{font-size:12px;color:#888;margin-bottom:6px}.dg-or-divider[data-v-ef05d25d]{text-align:center;color:#bbb;font-size:12px;margin:8px 0;position:relative}.dg-or-divider[data-v-ef05d25d]:before,.dg-or-divider[data-v-ef05d25d]:after{content:"";display:inline-block;width:40%;height:1px;background:var(--border, #e0e0e0);vertical-align:middle;margin:0 8px}.dg-form-row[data-v-ef05d25d]{display:flex;gap:8px;align-items:center}.dg-select[data-v-ef05d25d]{flex:1;padding:8px 10px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;background:#fff;color:var(--text, #333)}.dg-select[data-v-ef05d25d]:focus{outline:none;border-color:#5c6bc0}.dg-textarea[data-v-ef05d25d]{width:100%;padding:10px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;font-family:inherit;resize:vertical;min-height:120px;background:#fff;color:var(--text, #333)}.dg-textarea[data-v-ef05d25d]:focus{outline:none;border-color:#5c6bc0}.dg-upload-area[data-v-ef05d25d]{display:flex;align-items:center;gap:10px}.dg-btn-upload[data-v-ef05d25d]{padding:8px 14px;background:#f0f0f5;border:1px dashed #5c6bc0;border-radius:6px;color:#5c6bc0;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.dg-btn-upload[data-v-ef05d25d]:hover{background:#e8e8f5}.dg-upload-hint[data-v-ef05d25d]{font-size:12px;color:#999}.dg-att-list[data-v-ef05d25d]{margin-top:10px;display:flex;flex-direction:column;gap:6px}.dg-att-item[data-v-ef05d25d]{display:flex;align-items:center;gap:10px;padding:6px 10px;background:#f8f8fc;border-radius:4px;font-size:12px}.dg-att-name[data-v-ef05d25d]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text, #333)}.dg-att-size[data-v-ef05d25d]{color:#999}.dg-att-remove[data-v-ef05d25d]{background:none;border:none;color:#e53935;cursor:pointer;font-size:16px;line-height:1;padding:0 4px}.dg-empty-hint[data-v-ef05d25d]{font-size:12px;color:#999;padding:8px 0}.dg-actions[data-v-ef05d25d]{margin-top:24px}.dg-btn-generate[data-v-ef05d25d]{width:100%;padding:12px;background:#5c6bc0;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}.dg-btn-generate[data-v-ef05d25d]:hover:not(:disabled){background:#4a5ab0}.dg-btn-generate[data-v-ef05d25d]:disabled{background:#b0bec5;cursor:not-allowed}.dg-loading[data-v-ef05d25d]{display:inline-flex;align-items:center;gap:8px}.dg-spinner[data-v-ef05d25d]{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:dg-spin-ef05d25d .8s linear infinite}@keyframes dg-spin-ef05d25d{to{transform:rotate(360deg)}}.dg-btn-link[data-v-ef05d25d]{background:none;border:none;color:#5c6bc0;cursor:pointer;font-size:13px;padding:4px 8px;text-decoration:underline}.dg-btn-link[data-v-ef05d25d]:hover{color:#4a5ab0}.dg-btn-link[data-v-ef05d25d]:disabled{color:#bbb;cursor:not-allowed}.dg-result-empty[data-v-ef05d25d]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:400px;color:#ccc;gap:12px}.dg-result-empty p[data-v-ef05d25d]{font-size:13px;color:#999}.dg-result-content[data-v-ef05d25d]{display:flex;flex-direction:column;height:100%}.dg-result-header[data-v-ef05d25d]{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid var(--border, #e8e8f0);margin-bottom:12px}.dg-result-name[data-v-ef05d25d]{font-size:15px;font-weight:600;color:var(--text, #333);margin-bottom:4px;word-break:break-all}.dg-result-info[data-v-ef05d25d]{font-size:12px;color:#888}.dg-result-actions[data-v-ef05d25d]{display:flex;gap:4px}.dg-btn-regenerate[data-v-ef05d25d]{color:#ff9800}.dg-result-preview[data-v-ef05d25d]{flex:1;overflow:auto;background:#f8f8fc;border-radius:6px;padding:12px}.dg-result-preview pre[data-v-ef05d25d]{margin:0;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.6;color:var(--text, #333);font-family:inherit}.re-layout[data-v-5489d25a]{padding:20px;max-width:1400px;margin:0 auto}.re-header[data-v-5489d25a]{margin-bottom:20px}.re-title[data-v-5489d25a]{font-size:20px;color:var(--text, #333);margin:0 0 4px}.re-subtitle[data-v-5489d25a]{font-size:13px;color:#888}.re-main[data-v-5489d25a]{display:grid;grid-template-columns:1fr 1fr;gap:20px}.re-input-panel[data-v-5489d25a],.re-result-panel[data-v-5489d25a]{background:var(--card-bg, #fff);border:1px solid var(--border, #e8e8f0);border-radius:8px;padding:20px;min-height:500px}.re-section[data-v-5489d25a]{margin-bottom:20px}.re-section-title[data-v-5489d25a]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text, #333);margin-bottom:10px}.re-part-tag[data-v-5489d25a]{display:inline-block;padding:2px 8px;background:#5c6bc0;color:#fff;border-radius:4px;font-size:11px;font-weight:500}.re-required-mark[data-v-5489d25a]{color:#e53935;font-size:14px;margin-left:-4px}.re-sub-block[data-v-5489d25a]{margin-bottom:12px}.re-sub-label[data-v-5489d25a]{font-size:12px;color:#888;margin-bottom:6px}.re-count[data-v-5489d25a]{color:#5c6bc0;font-weight:600}.re-quick-buttons[data-v-5489d25a]{display:flex;gap:8px}.re-quick-btn[data-v-5489d25a]{padding:6px 14px;background:#f0f0f5;border:1px solid var(--border, #e0e0e0);border-radius:6px;color:#666;font-size:13px;cursor:pointer;transition:all .15s}.re-quick-btn[data-v-5489d25a]:hover{background:#e8e8f5;color:#5c6bc0;border-color:#5c6bc0}.re-quick-btn.active[data-v-5489d25a]{background:#5c6bc0;color:#fff;border-color:#5c6bc0}.re-date-row[data-v-5489d25a]{display:flex;align-items:center;gap:8px}.re-date-input[data-v-5489d25a]{flex:1;padding:8px 10px;border:1px solid var(--border, #e0e0e0);border-radius:6px;font-size:13px;background:#fff;color:var(--text, #333);font-family:inherit}.re-date-input[data-v-5489d25a]:focus{outline:none;border-color:#5c6bc0}.re-date-divider[data-v-5489d25a]{font-size:13px;color:#888;flex-shrink:0}.re-range-hint[data-v-5489d25a]{margin-top:6px;font-size:12px;color:#999}.re-multi-trigger[data-v-5489d25a]{display:flex;align-items:center;gap:8px;min-height:38px;padding:4px 10px;border:1px solid var(--border, #e0e0e0);border-radius:6px;background:#fff;cursor:pointer;transition:border-color .15s}.re-multi-trigger[data-v-5489d25a]:hover{border-color:#5c6bc0}.re-multi-tags[data-v-5489d25a]{flex:1;display:flex;flex-wrap:wrap;gap:4px;align-items:center}.re-multi-placeholder[data-v-5489d25a]{color:#aaa;font-size:13px}.re-tag[data-v-5489d25a]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#f0f1f8;color:#5c6bc0;border-radius:4px;font-size:12px;line-height:1.4}.re-tag-remove[data-v-5489d25a]{background:none;border:none;color:#999;cursor:pointer;font-size:14px;line-height:1;padding:0;display:inline-flex;align-items:center}.re-tag-remove[data-v-5489d25a]:hover{color:#e53935}.re-multi-caret[data-v-5489d25a]{width:14px;height:14px;flex-shrink:0;transition:transform .2s;opacity:.55}.re-multi-caret.open[data-v-5489d25a]{transform:rotate(180deg)}.re-multi-panel[data-v-5489d25a]{margin-top:4px;border:1px solid var(--border, #e0e0e0);border-radius:6px;background:#fff;overflow:hidden;box-shadow:0 4px 12px #0000000f}.re-multi-search[data-v-5489d25a]{display:flex;gap:8px;padding:8px;border-bottom:1px solid #f0f0f5;align-items:center}.re-multi-search-input[data-v-5489d25a]{flex:1;padding:6px 10px;border:1px solid var(--border, #e0e0e0);border-radius:4px;font-size:13px;outline:none}.re-multi-search-input[data-v-5489d25a]:focus{border-color:#5c6bc0}.re-multi-actions[data-v-5489d25a]{display:flex;gap:4px;flex-shrink:0}.re-multi-action-btn[data-v-5489d25a]{padding:4px 10px;background:#f5f5fa;border:1px solid var(--border, #e0e0e0);border-radius:4px;color:#666;font-size:12px;cursor:pointer;white-space:nowrap}.re-multi-action-btn[data-v-5489d25a]:hover{background:#e8e8f5;color:#5c6bc0}.re-multi-list[data-v-5489d25a]{max-height:220px;overflow-y:auto;padding:4px 0}.re-multi-option[data-v-5489d25a]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;font-size:13px;color:var(--text, #333);transition:background .15s}.re-multi-option[data-v-5489d25a]:hover{background:#f8f8fc}.re-multi-option.checked[data-v-5489d25a]{background:#f0f1f8}.re-checkbox[data-v-5489d25a]{margin:0;flex-shrink:0;accent-color:#5c6bc0}.re-option-name[data-v-5489d25a]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.re-multi-empty[data-v-5489d25a]{padding:24px 12px;text-align:center;color:#aaa;font-size:13px}.re-actions[data-v-5489d25a]{margin-top:24px}.re-btn-generate[data-v-5489d25a]{width:100%;padding:12px;background:#5c6bc0;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}.re-btn-generate[data-v-5489d25a]:hover:not(:disabled){background:#4a5ab0}.re-btn-generate[data-v-5489d25a]:disabled{background:#b0bec5;cursor:not-allowed}.re-loading[data-v-5489d25a]{display:inline-flex;align-items:center;gap:8px}.re-spinner[data-v-5489d25a]{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:re-spin-5489d25a .8s linear infinite}@keyframes re-spin-5489d25a{to{transform:rotate(360deg)}}.re-result-empty[data-v-5489d25a]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:400px;color:#ccc;gap:12px}.re-result-empty p[data-v-5489d25a]{font-size:13px;color:#999}.re-result-content[data-v-5489d25a]{display:flex;flex-direction:column;height:100%}.re-result-header[data-v-5489d25a]{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid var(--border, #e8e8f0);margin-bottom:12px}.re-result-name[data-v-5489d25a]{font-size:15px;font-weight:600;color:var(--text, #333);margin-bottom:4px}.re-result-info[data-v-5489d25a]{font-size:12px;color:#888}.re-result-actions[data-v-5489d25a]{display:flex;gap:4px}.re-btn-link[data-v-5489d25a]{background:none;border:none;color:#5c6bc0;cursor:pointer;font-size:13px;padding:4px 8px;text-decoration:underline}.re-btn-link[data-v-5489d25a]:hover{color:#4a5ab0}.re-result-preview[data-v-5489d25a]{flex:1;overflow:auto;background:#f8f8fc;border-radius:6px;padding:12px}.re-result-preview pre[data-v-5489d25a]{margin:0;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.6;color:var(--text, #333);font-family:inherit}.task-admin[data-v-5bd026f8]{padding:20px}.header[data-v-5bd026f8]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.header h2[data-v-5bd026f8]{margin:0;font-size:18px}.filter-bar[data-v-5bd026f8]{display:flex;gap:12px;margin-bottom:16px}.filter-input[data-v-5bd026f8]{flex:1;padding:8px 12px;border:1px solid var(--border, #ddd);border-radius:6px;font-size:13px;background:var(--card-bg, #fff);color:var(--text, #333)}.filter-select[data-v-5bd026f8]{padding:8px 12px;border:1px solid var(--border, #ddd);border-radius:6px;font-size:13px;background:var(--card-bg, #fff);color:var(--text, #333)}.data-table[data-v-5bd026f8]{width:100%;border-collapse:collapse;font-size:13px}.data-table th[data-v-5bd026f8]{text-align:left;padding:10px 8px;border-bottom:2px solid var(--border, #ddd);color:var(--text-secondary, #888);font-weight:600}.data-table td[data-v-5bd026f8]{padding:10px 8px;border-bottom:1px solid var(--border, #eee);color:var(--text, #333)}.td-name[data-v-5bd026f8]{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty[data-v-5bd026f8]{text-align:center;color:#ccc;padding:40px 0}.status-tag[data-v-5bd026f8]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px}.status-active[data-v-5bd026f8]{color:#555;background:#eee}.status-done[data-v-5bd026f8]{color:#333;background:#ddd}.status-rejected[data-v-5bd026f8]{color:#fff;background:#e74c3c}.btn-primary[data-v-5bd026f8]{background:#333;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px}.btn-primary[data-v-5bd026f8]:hover{background:#555}.btn-default[data-v-5bd026f8]{background:var(--sidebar-bg, #f5f5f5);color:var(--text, #333);border:1px solid var(--border, #ddd);padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px}.btn-row[data-v-5bd026f8]{background:none;border:1px solid var(--border, #ddd);padding:4px 10px;border-radius:4px;cursor:pointer;font-size:12px;color:var(--text, #333);margin-right:4px}.btn-row[data-v-5bd026f8]:hover{background:var(--sidebar-bg, #f5f5f5)}.btn-danger-text[data-v-5bd026f8]{color:#e74c3c}.btn-danger-text[data-v-5bd026f8]:disabled{color:#ccc;cursor:not-allowed}.modal-mask[data-v-5bd026f8]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-5bd026f8]{background:var(--card-bg, #fff);border-radius:12px;width:560px;max-height:85vh;overflow-y:auto}.modal-header[data-v-5bd026f8]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border, #eee)}.modal-header h3[data-v-5bd026f8]{margin:0;font-size:16px;color:var(--text, #333)}.modal-close[data-v-5bd026f8]{cursor:pointer;font-size:22px;color:#999}.modal-body[data-v-5bd026f8]{padding:20px}.modal-footer[data-v-5bd026f8]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border, #eee)}.form-group[data-v-5bd026f8]{margin-bottom:14px}.form-group label[data-v-5bd026f8]{display:block;margin-bottom:4px;font-size:13px;color:var(--text, #333)}.form-group input[data-v-5bd026f8],.form-group textarea[data-v-5bd026f8],.form-group select[data-v-5bd026f8]{width:100%;padding:8px;border:1px solid var(--border, #ddd);border-radius:6px;font-size:13px;background:var(--card-bg, #fff);color:var(--text, #333);box-sizing:border-box}.form-group input[data-v-5bd026f8]:disabled,.form-group textarea[data-v-5bd026f8]:disabled,.form-group select[data-v-5bd026f8]:disabled{background:#f5f5f5}.form-row[data-v-5bd026f8]{display:flex;gap:12px}.form-group.half[data-v-5bd026f8]{flex:1}.required[data-v-5bd026f8]{color:#e53935}.datetime-split[data-v-5bd026f8]{display:flex;gap:8px}.datetime-split input[type=date][data-v-5bd026f8]{flex:3;min-width:150px}.datetime-split input[type=time][data-v-5bd026f8]{flex:2;min-width:90px}.ext-notice[data-v-5bd026f8]{background:#fff3cd;color:#856404;padding:8px 12px;border-radius:6px;margin-bottom:14px;font-size:12px}.token-rank-page[data-v-cd23f62b]{min-height:100%;margin:0 -16px -16px;padding:0 16px 40px;background:#fff;color:#111827}.rank-shell[data-v-cd23f62b]{width:min(100%,768px);margin:0 auto;padding-top:6px}.rank-toolbar[data-v-cd23f62b]{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;margin-bottom:10px}.sync-state[data-v-cd23f62b]{display:flex;align-items:center;min-width:0;color:#9ca3af;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-dot[data-v-cd23f62b]{width:7px;height:7px;margin-right:7px;border-radius:50%;background:#d1d5db;flex:0 0 auto}.status-dot.online[data-v-cd23f62b]{background:#10b981;box-shadow:0 0 0 3px #d1fae5}.toolbar-actions[data-v-cd23f62b]{display:flex;align-items:center;gap:8px;flex:0 0 auto}.my-button[data-v-cd23f62b],.icon-command[data-v-cd23f62b],.sync-button[data-v-cd23f62b]{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:5px 10px;border:1px solid #e5e7eb;border-radius:7px;background:#fff;color:#4b5563;font-size:12px;cursor:pointer}.my-button[data-v-cd23f62b]:hover{border-color:#9ca3af;color:#111827}.how-button[data-v-cd23f62b]{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:5px 10px;border:1px solid #111827;border-radius:7px;background:#111827;color:#fff;font-size:12px;cursor:pointer}.how-button[data-v-cd23f62b]:hover{background:#374151}.sync-button[data-v-cd23f62b]{background:#111827;border-color:#111827;color:#fff}.icon-command[data-v-cd23f62b]:hover{border-color:#9ca3af;color:#111827}.sync-button[data-v-cd23f62b]:hover:not(:disabled){background:#374151}.sync-button[data-v-cd23f62b]:disabled{opacity:.45;cursor:not-allowed}.my-button svg[data-v-cd23f62b],.icon-command svg[data-v-cd23f62b],.how-button svg[data-v-cd23f62b],.sync-button svg[data-v-cd23f62b]{width:14px;height:14px;flex:0 0 auto}.spinning[data-v-cd23f62b]{animation:spin-cd23f62b .8s linear infinite}@keyframes spin-cd23f62b{to{transform:rotate(360deg)}}.filter-row[data-v-cd23f62b]{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:8px}.filter-chip[data-v-cd23f62b]{flex:0 0 auto;min-height:30px;padding:5px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;font-size:14px;line-height:18px;white-space:nowrap;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.filter-chip[data-v-cd23f62b]:hover{border-color:#d1d5db;color:#111827}.filter-chip.selected[data-v-cd23f62b],.filter-label[data-v-cd23f62b]{border-color:#d1d5db;background:#f3f4f6;color:#111827;font-weight:600}.more-chip[data-v-cd23f62b]{color:#9ca3af}.chip-count[data-v-cd23f62b]{margin-left:4px;color:#9ca3af;font-size:12px;font-weight:400}.expanded-models[data-v-cd23f62b]{margin:-1px 0 10px;padding:10px 12px;border-left:2px solid #e5e7eb;background:#fafafa}.model-group+.model-group[data-v-cd23f62b]{margin-top:10px}.model-vendor[data-v-cd23f62b]{margin-bottom:6px;color:#9ca3af;font-size:12px;font-weight:600}.model-options[data-v-cd23f62b]{display:flex;flex-wrap:wrap;gap:7px}.model-options .filter-chip[data-v-cd23f62b]{min-height:27px;padding:4px 9px;font-size:12px}.range-metric-row[data-v-cd23f62b]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:2px 0 15px}.range-row[data-v-cd23f62b]{flex:1 1 auto;margin-bottom:0}.metric-tabs[data-v-cd23f62b]{display:grid;grid-template-columns:repeat(3,auto);flex:0 0 auto;padding:2px;border-radius:8px;background:#f3f4f6}.metric-tabs button[data-v-cd23f62b]{min-height:24px;padding:3px 10px;border:0;border-radius:6px;background:transparent;color:#9ca3af;font-size:12px;white-space:nowrap;cursor:pointer}.metric-tabs button.selected[data-v-cd23f62b]{background:#fff;color:#111827;font-weight:600;box-shadow:0 1px 2px #0f172a17}.rank-summary[data-v-cd23f62b]{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin-bottom:12px;color:#9ca3af;font-size:12px}.rank-summary>span[data-v-cd23f62b]:first-child{color:#6b7280;font-size:14px}.rank-summary strong[data-v-cd23f62b]{color:#111827;font-size:17px;font-variant-numeric:tabular-nums}.rank-summary small[data-v-cd23f62b]{margin-left:4px;color:#9ca3af;font-size:11px;font-weight:400}.rank-summary .my-rank[data-v-cd23f62b]{padding:2px 7px;border-radius:4px;background:#ecfdf5;color:#047857}.summary-secondary[data-v-cd23f62b]{margin:-6px 0 12px;color:#9ca3af;font-size:11px;font-variant-numeric:tabular-nums}.sync-notice[data-v-cd23f62b],.error-state[data-v-cd23f62b]{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:49px;margin-bottom:16px;padding:10px 12px;border:1px solid #d1fae5;border-radius:8px;background:#f0fdf4;color:#6b7280;font-size:13px}.sync-notice button[data-v-cd23f62b],.error-state button[data-v-cd23f62b]{flex:0 0 auto;padding:5px 10px;border:1px solid #a7f3d0;border-radius:7px;background:#fff;color:#047857;font-size:12px;font-weight:600;cursor:pointer}.sync-notice button[data-v-cd23f62b]:disabled{opacity:.45;cursor:not-allowed}.error-state[data-v-cd23f62b]{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.error-state button[data-v-cd23f62b]{border-color:#fecaca;color:#b91c1c}.ranking-list[data-v-cd23f62b]{display:flex;flex-direction:column;gap:8px;list-style:none;transition:opacity .2s}.ranking-list.dimmed[data-v-cd23f62b]{opacity:.55}.rank-item[data-v-cd23f62b]{display:flex;align-items:center;gap:12px;min-height:66px;padding:12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.rank-number[data-v-cd23f62b]{width:32px;flex:0 0 32px;text-align:center;color:#9ca3af;font-size:13px;font-variant-numeric:tabular-nums}.medal[data-v-cd23f62b]{font-size:20px}.rank-avatar[data-v-cd23f62b]{position:relative;width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#f3f4f6;color:#6b7280;font-size:13px;font-weight:700}.rank-avatar img[data-v-cd23f62b]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.rank-person[data-v-cd23f62b]{min-width:0;flex:1 1 auto}.person-line[data-v-cd23f62b]{display:flex;align-items:center;gap:6px;min-width:0}.person-line strong[data-v-cd23f62b]{overflow:hidden;color:#111827;font-size:15px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.city-tag[data-v-cd23f62b]{flex:0 0 auto;padding:1px 5px;border-radius:4px;background:#f3f4f6;color:#9ca3af;font-size:10px}.tool-breakdown[data-v-cd23f62b]{display:flex;gap:0 10px;min-width:0;margin-top:4px;overflow:hidden;color:#9ca3af;font-size:12px;white-space:nowrap}.tool-breakdown span[data-v-cd23f62b]{flex:0 0 auto}.rank-value[data-v-cd23f62b]{flex:0 0 auto;text-align:right;font-variant-numeric:tabular-nums}.rank-value strong[data-v-cd23f62b]{display:block;color:#111827;font-size:16px;line-height:21px}.rank-value span[data-v-cd23f62b]{display:block;color:#9ca3af;font-size:11px;white-space:nowrap}.loading-list[data-v-cd23f62b]{display:flex;flex-direction:column;gap:8px}.loading-row[data-v-cd23f62b]{display:flex;align-items:center;gap:12px;height:66px;padding:12px;border:1px solid #e5e7eb;border-radius:8px}.loading-row i[data-v-cd23f62b],.loading-row span[data-v-cd23f62b],.loading-row b[data-v-cd23f62b]{display:block;background:#f3f4f6;animation:pulse-cd23f62b 1.2s ease-in-out infinite}.loading-row i[data-v-cd23f62b]{width:36px;height:36px;border-radius:50%}.loading-row span[data-v-cd23f62b]{width:42%;height:12px;border-radius:4px}.loading-row b[data-v-cd23f62b]{width:82px;height:16px;margin-left:auto;border-radius:4px}@keyframes pulse-cd23f62b{50%{opacity:.45}}.empty-state[data-v-cd23f62b]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:190px;color:#9ca3af;font-size:13px}.empty-state svg[data-v-cd23f62b]{width:34px;height:34px;color:#d1d5db}.dialog-mask[data-v-cd23f62b]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:20px;background:#11182759}.city-dialog[data-v-cd23f62b]{width:min(100%,360px);padding:18px;border-radius:8px;background:#fff;box-shadow:0 16px 36px #0f172a2e}.dialog-title[data-v-cd23f62b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.dialog-title h3[data-v-cd23f62b]{font-size:16px;font-weight:600}.dialog-title button[data-v-cd23f62b]{width:28px;height:28px;border:0;background:transparent;color:#9ca3af;font-size:22px;cursor:pointer}.city-dialog input[data-v-cd23f62b]{width:100%;height:38px;padding:0 10px;border:1px solid #d1d5db;border-radius:7px;outline:none;font-size:14px}.city-dialog input[data-v-cd23f62b]:focus{border-color:#6b7280;box-shadow:0 0 0 3px #f3f4f6}.how-dialog[data-v-cd23f62b]{width:min(100%,660px);padding:18px;border-radius:8px;background:#fff;box-shadow:0 16px 36px #0f172a2e}.how-lead[data-v-cd23f62b]{margin:-4px 0 12px;color:#6b7280;font-size:13px;line-height:1.65}.prompt-box[data-v-cd23f62b]{display:block;width:100%;min-height:250px;resize:vertical;padding:12px;border:1px solid #d1d5db;border-radius:7px;outline:none;background:#f9fafb;color:#374151;font:12px/1.65 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.prompt-error[data-v-cd23f62b]{margin-top:8px;color:#b91c1c;font-size:12px}.prompt-actions[data-v-cd23f62b]{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.prompt-actions button[data-v-cd23f62b]{min-height:32px;padding:5px 13px;border-radius:7px;font-size:13px;cursor:pointer}.prompt-actions .regenerate[data-v-cd23f62b]{border:1px solid #d1d5db;background:#fff;color:#4b5563}.prompt-actions .regenerate[data-v-cd23f62b]:disabled,.prompt-actions .save[data-v-cd23f62b]:disabled{opacity:.45;cursor:not-allowed}.dialog-actions[data-v-cd23f62b]{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.dialog-actions button[data-v-cd23f62b]{min-height:32px;padding:5px 14px;border-radius:7px;font-size:13px;cursor:pointer}.dialog-actions .cancel[data-v-cd23f62b]{border:1px solid #e5e7eb;background:#fff;color:#6b7280}.dialog-actions .save[data-v-cd23f62b]{border:1px solid #111827;background:#111827;color:#fff}.rank-toast[data-v-cd23f62b]{position:fixed;left:50%;top:24px;z-index:1300;transform:translate(-50%);padding:9px 16px;border-radius:7px;background:#111827;color:#fff;font-size:13px;box-shadow:0 8px 24px #0f172a33}@media (max-width: 760px){.token-rank-page[data-v-cd23f62b]{padding-left:12px;padding-right:12px}.rank-toolbar[data-v-cd23f62b]{align-items:flex-start}.sync-state[data-v-cd23f62b]{padding-top:8px}.my-button span[data-v-cd23f62b],.icon-command span[data-v-cd23f62b]{display:none}.my-button[data-v-cd23f62b],.icon-command[data-v-cd23f62b]{width:30px;padding:5px;justify-content:center}.how-button span[data-v-cd23f62b]{display:none}.how-button[data-v-cd23f62b]{width:30px;padding:5px;justify-content:center}.filter-row[data-v-cd23f62b]{flex-wrap:nowrap;overflow-x:auto;margin-left:-12px;margin-right:-12px;padding:1px 12px 5px;scrollbar-width:none}.filter-row[data-v-cd23f62b]::-webkit-scrollbar{display:none}.expanded-models .model-options[data-v-cd23f62b]{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.range-metric-row[data-v-cd23f62b]{display:block}.metric-tabs[data-v-cd23f62b]{grid-template-columns:repeat(3,1fr);width:100%;margin-top:8px}.rank-item[data-v-cd23f62b]{gap:8px;padding:10px 8px}.rank-number[data-v-cd23f62b]{width:26px;flex-basis:26px}.rank-avatar[data-v-cd23f62b]{width:32px;height:32px;flex-basis:32px}.rank-value strong[data-v-cd23f62b]{font-size:14px}.rank-value span[data-v-cd23f62b]{max-width:96px;overflow:hidden;text-overflow:ellipsis}.tool-breakdown[data-v-cd23f62b]{max-width:100%}}.token-me-page[data-v-935e4bf4]{min-height:100%;margin:0 -16px -16px;padding:0 16px 48px;background:#f8fafc;color:#111827}.token-me-shell[data-v-935e4bf4]{width:min(100%,980px);margin:0 auto;padding-top:20px}.me-header[data-v-935e4bf4],.profile-strip[data-v-935e4bf4],.panel-heading[data-v-935e4bf4],.breakdown-label[data-v-935e4bf4],.connect-notice[data-v-935e4bf4]{display:flex;align-items:center;justify-content:space-between;gap:16px}.me-header[data-v-935e4bf4]{margin-bottom:20px}.me-heading[data-v-935e4bf4]{display:flex;align-items:center;gap:12px}.back-button[data-v-935e4bf4]{width:32px;height:32px;display:grid;place-items:center;border:1px solid #e5e7eb;border-radius:7px;background:#fff;color:#6b7280;cursor:pointer}.back-button svg[data-v-935e4bf4]{width:16px;height:16px}.eyebrow[data-v-935e4bf4]{margin-bottom:3px;color:#9ca3af;font-size:12px}h1[data-v-935e4bf4],h2[data-v-935e4bf4],p[data-v-935e4bf4]{margin:0}h1[data-v-935e4bf4]{font-size:25px;letter-spacing:0}h2[data-v-935e4bf4]{font-size:15px}.me-actions[data-v-935e4bf4]{display:flex;gap:8px}.link-button[data-v-935e4bf4],.primary-button[data-v-935e4bf4],.connect-notice button[data-v-935e4bf4],.error-panel button[data-v-935e4bf4]{min-height:32px;padding:6px 13px;border-radius:7px;font-size:13px;cursor:pointer}.link-button[data-v-935e4bf4]{border:1px solid #e5e7eb;background:#fff;color:#4b5563}.primary-button[data-v-935e4bf4],.connect-notice button[data-v-935e4bf4]{border:1px solid #111827;background:#111827;color:#fff}.profile-strip[data-v-935e4bf4]{min-height:76px;margin-bottom:16px;padding:14px 16px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.profile-identity[data-v-935e4bf4]{display:flex;align-items:center;gap:11px;min-width:0}.profile-avatar[data-v-935e4bf4]{position:relative;width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;overflow:hidden;border-radius:50%;background:#f3f4f6;color:#6b7280;font-weight:700}.profile-avatar img[data-v-935e4bf4]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.profile-copy[data-v-935e4bf4]{display:flex;flex-direction:column;gap:3px;min-width:0}.profile-copy strong[data-v-935e4bf4]{font-size:15px}.profile-copy span[data-v-935e4bf4]{color:#9ca3af;font-size:12px}.connection-state[data-v-935e4bf4]{display:flex;align-items:center;gap:6px;color:#9ca3af;font-size:12px;white-space:nowrap}.connection-state small[data-v-935e4bf4]{color:#c4c9d2}.connection-state.connected[data-v-935e4bf4]{color:#047857}.state-dot[data-v-935e4bf4]{width:7px;height:7px;border-radius:50%;background:#d1d5db}.connected .state-dot[data-v-935e4bf4]{background:#10b981;box-shadow:0 0 0 3px #d1fae5}.period-tabs[data-v-935e4bf4]{display:flex;gap:4px;margin-bottom:16px;padding:3px;border-radius:8px;background:#eef2f7;width:fit-content}.period-tabs button[data-v-935e4bf4]{min-height:28px;padding:4px 13px;border:0;border-radius:6px;background:transparent;color:#6b7280;font-size:12px;cursor:pointer}.period-tabs button.selected[data-v-935e4bf4]{background:#fff;color:#111827;font-weight:600;box-shadow:0 1px 2px #0f172a14}.metric-grid[data-v-935e4bf4]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.metric-card[data-v-935e4bf4]{min-height:108px;padding:15px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.metric-card.accent[data-v-935e4bf4]{border-color:#c7d2fe;background:#f8faff}.metric-card span[data-v-935e4bf4],.metric-card small[data-v-935e4bf4]{display:block;color:#9ca3af;font-size:12px}.metric-card strong[data-v-935e4bf4]{display:block;margin:10px 0 3px;color:#111827;font-size:23px;font-variant-numeric:tabular-nums}.metric-card small[data-v-935e4bf4]{color:#b0b7c3}.insight-line[data-v-935e4bf4]{display:flex;flex-wrap:wrap;gap:7px 20px;margin:13px 2px 18px;color:#9ca3af;font-size:12px}.content-grid[data-v-935e4bf4]{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(290px,.7fr);gap:12px;margin-bottom:12px}.panel[data-v-935e4bf4]{min-width:0;padding:17px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.panel-heading[data-v-935e4bf4]{align-items:flex-start;margin-bottom:17px}.panel-heading p[data-v-935e4bf4]{margin-top:4px;color:#9ca3af;font-size:12px}.panel-heading>span[data-v-935e4bf4]{color:#9ca3af;font-size:11px;white-space:nowrap}.trend-chart[data-v-935e4bf4]{display:flex;gap:10px;height:216px}.chart-y[data-v-935e4bf4]{display:flex;flex-direction:column;justify-content:space-between;padding:2px 0 22px;color:#b0b7c3;font-size:10px;text-align:right}.chart-area[data-v-935e4bf4]{position:relative;flex:1;border-bottom:1px solid #e5e7eb;background:repeating-linear-gradient(to bottom,transparent 0,transparent 53px,#f1f5f9 54px)}.chart-bars[data-v-935e4bf4]{display:flex;align-items:flex-end;justify-content:space-around;height:100%;gap:4px;padding:0 4px;overflow-x:auto}.bar-column[data-v-935e4bf4]{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:26px;height:100%}.bar[data-v-935e4bf4]{width:14px;min-height:4px;border-radius:4px 4px 0 0;background:#111827}.bar-column span[data-v-935e4bf4]{margin-top:7px;color:#9ca3af;font-size:9px;white-space:nowrap;transform:rotate(-35deg);transform-origin:center top}.breakdown-list[data-v-935e4bf4]{display:flex;flex-direction:column;gap:14px}.breakdown-label strong[data-v-935e4bf4]{min-width:0;overflow:hidden;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.breakdown-label span[data-v-935e4bf4]{color:#4b5563;font-size:12px;font-variant-numeric:tabular-nums}.progress-track[data-v-935e4bf4]{height:5px;margin-top:7px;overflow:hidden;border-radius:99px;background:#f1f5f9}.progress-track i[data-v-935e4bf4]{display:block;height:100%;border-radius:inherit;background:#111827}.breakdown-item small[data-v-935e4bf4]{display:block;margin-top:4px;color:#b0b7c3;font-size:10px}.table-panel[data-v-935e4bf4]{margin-bottom:12px}.model-table[data-v-935e4bf4]{overflow:hidden;border:1px solid #eef2f7;border-radius:7px}.model-row[data-v-935e4bf4]{display:grid;grid-template-columns:minmax(0,1.7fr) .8fr .55fr .7fr;align-items:center;gap:12px;min-height:42px;padding:0 12px;border-bottom:1px solid #f1f5f9;color:#6b7280;font-size:12px;font-variant-numeric:tabular-nums}.model-row[data-v-935e4bf4]:last-child{border-bottom:0}.model-row.header[data-v-935e4bf4]{min-height:34px;background:#f8fafc;color:#9ca3af;font-size:11px}.model-row[data-v-935e4bf4]>:not(:first-child){text-align:right}.model-row strong[data-v-935e4bf4]{color:#111827;font-weight:600}.model-name[data-v-935e4bf4]{display:flex;align-items:center;gap:7px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-name i[data-v-935e4bf4]{width:7px;height:7px;flex:0 0 7px;border-radius:50%}.panel-empty[data-v-935e4bf4]{display:grid;place-items:center;min-height:150px;color:#a8b0bc;font-size:13px}.error-panel[data-v-935e4bf4]{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding:11px 13px;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;color:#b91c1c;font-size:13px}.error-panel button[data-v-935e4bf4]{border:1px solid #fecaca;background:#fff;color:#b91c1c}.me-loading[data-v-935e4bf4]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.me-loading i[data-v-935e4bf4]{height:108px;border-radius:8px;background:#eef2f7;animation:pulse-935e4bf4 1.2s ease-in-out infinite}@keyframes pulse-935e4bf4{50%{opacity:.45}}.connect-notice[data-v-935e4bf4]{margin-top:12px;padding:14px 16px;border:1px solid #c7d2fe;border-radius:8px;background:#f8faff}.connect-notice div[data-v-935e4bf4]{display:flex;flex-direction:column;gap:4px}.connect-notice strong[data-v-935e4bf4]{font-size:13px}.connect-notice span[data-v-935e4bf4]{color:#7c8798;font-size:12px}@media (max-width: 760px){.token-me-page[data-v-935e4bf4]{padding-left:12px;padding-right:12px}.token-me-shell[data-v-935e4bf4]{padding-top:12px}.me-header[data-v-935e4bf4],.profile-strip[data-v-935e4bf4]{align-items:flex-start}.me-actions[data-v-935e4bf4],.profile-strip[data-v-935e4bf4]{flex-direction:column}.connection-state[data-v-935e4bf4]{align-self:flex-start;flex-wrap:wrap;white-space:normal}.period-tabs[data-v-935e4bf4]{width:100%;overflow-x:auto}.period-tabs button[data-v-935e4bf4]{flex:1 0 auto}.metric-grid[data-v-935e4bf4]{grid-template-columns:repeat(2,1fr)}.content-grid[data-v-935e4bf4]{grid-template-columns:1fr}.model-row[data-v-935e4bf4]{grid-template-columns:minmax(0,1.45fr) .8fr .55fr}.model-row[data-v-935e4bf4]>:last-child{display:none}.connect-notice[data-v-935e4bf4]{align-items:flex-start}}
