*{margin:0;padding:0;box-sizing:border-box}body{font-family:Microsoft YaHei,sans-serif;background:#f5f7fa;color:#333}.ai-platform-container[data-v-d1a62c6b]{display:flex;flex-wrap:wrap;width:100%;height:100vh;overflow:hidden;background-color:#f5f7fa;color:#333}.platform-header[data-v-d1a62c6b]{width:100%;height:60px;background:#fff;box-shadow:0 2px 6px #0000000f;display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:fixed;top:0;left:0;z-index:99;border-bottom:1px solid #e8e8e8}.logo[data-v-d1a62c6b]{font-size:18px;font-weight:700;color:#1677ff;display:flex;align-items:center;gap:8px}.desktop-tag[data-v-d1a62c6b]{font-size:11px;font-weight:600;color:#fff;background:#1677ff;border-radius:999px;padding:2px 8px}.header-right[data-v-d1a62c6b]{display:flex;gap:15px;align-items:center;color:#595959}.role-badge[data-v-d1a62c6b]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-admin[data-v-d1a62c6b]{background:#1677ff33;color:#1677ff;border:1px solid rgba(22,119,255,.4)}.role-employee[data-v-d1a62c6b]{background:#52c41a33;color:#52c41a;border:1px solid rgba(82,196,26,.4)}.role-client[data-v-d1a62c6b]{background:#faad1433;color:#faad14;border:1px solid rgba(250,173,20,.4)}.logout-btn[data-v-d1a62c6b]{padding:6px 12px;background:#f0f2f5;border:1px solid #d9d9d9;color:#595959;border-radius:4px;cursor:pointer}.logout-btn[data-v-d1a62c6b]:hover:not(:disabled){background:#e8e8e8;color:#333}.logout-btn[data-v-d1a62c6b]:disabled{opacity:.6;cursor:not-allowed}.platform-sidebar[data-v-d1a62c6b]{width:220px;height:calc(100vh - 60px);background:#fff;box-shadow:2px 0 6px #0000000f;padding-top:10px;position:fixed;top:60px;left:0;border-right:1px solid #e8e8e8}.menu-list[data-v-d1a62c6b]{list-style:none}.menu-list li[data-v-d1a62c6b]{height:48px;line-height:48px;padding:0 20px;cursor:pointer;font-size:14px;color:#595959;transition:all .3s}.menu-list li[data-v-d1a62c6b]:hover{color:#333;background:#f0f2f5}.menu-list li.active[data-v-d1a62c6b]{background:#1677ff26;color:#1677ff;border-left:3px solid #1677ff}.menu-list .menu-divider[data-v-d1a62c6b]{height:1px;line-height:1px;padding:0;margin:8px 16px;background:#e8e8e8;cursor:default}.menu-list .menu-divider[data-v-d1a62c6b]:hover{background:#e8e8e8}.platform-content[data-v-d1a62c6b]{margin-left:220px;margin-top:60px;flex:1;padding:20px;overflow-y:auto;background-color:#f5f7fa;height:calc(100vh - 60px)}.task-runner[data-v-951582a2]{display:flex;flex-direction:column;gap:12px}.runner-info[data-v-951582a2]{display:flex;flex-direction:column;gap:6px;padding:12px 16px;background:#fafafa;border-radius:8px;border:1px solid #f0f2f5}.info-row[data-v-951582a2]{display:flex;align-items:flex-start;gap:12px;font-size:13px}.info-label[data-v-951582a2]{color:#a0a0a0;min-width:100px;flex-shrink:0}.info-value[data-v-951582a2]{color:#595959;word-break:break-all}.info-value.highlight[data-v-951582a2]{color:#1677ff}.status-pill[data-v-951582a2]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;background:#f0f2f5;border:1px solid #d9d9d9;color:#595959}.status-pill.running[data-v-951582a2]{background:#1677ff24;border-color:#1677ff;color:#1677ff}.status-pill.finished[data-v-951582a2]{background:#00b42a24;border-color:#00b42a;color:#52c41a}.status-pill.error[data-v-951582a2],.status-pill.cancelled[data-v-951582a2]{background:#ff4d4f24;border-color:#ff4d4f;color:#ff4d4f}.status-pill.waiting[data-v-951582a2]{background:#faad1424;border-color:#faad14;color:#faad14}.log-panel[data-v-951582a2]{background:#fff;border-radius:10px;border:1px solid #e8e8e8;display:flex;flex-direction:column;min-height:300px;max-height:500px}.panel-header[data-v-951582a2]{padding:12px 16px;border-bottom:1px solid #e8e8e8;display:flex;justify-content:space-between;align-items:center;font-weight:600;color:#333;font-size:13px}.status-indicator[data-v-951582a2]{width:8px;height:8px;border-radius:50%;background:#bfbfbf}.status-indicator.running[data-v-951582a2]{background:#00b42a;box-shadow:0 0 8px #00b42a99;animation:pulse-951582a2 1.5s infinite}@keyframes pulse-951582a2{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.log-box[data-v-951582a2]{flex:1;padding:12px;font-size:12px;overflow-y:auto;font-family:Consolas,Monaco,monospace;display:flex;flex-direction:column;gap:4px;background:#f5f7fa}.empty-log[data-v-951582a2]{color:#bfbfbf;text-align:center;margin-top:20px}.log-line[data-v-951582a2]{display:flex;gap:10px;line-height:1.5;padding:3px 0;border-bottom:1px solid #fafafa}.log-line[data-v-951582a2]:last-child{border-bottom:none}.log-line .time[data-v-951582a2]{color:#bfbfbf;min-width:70px;-webkit-user-select:none;user-select:none;flex-shrink:0}.log-line .content[data-v-951582a2]{color:#595959;word-break:break-all}.log-line.success .content[data-v-951582a2]{color:#00b42a}.log-line.warn .content[data-v-951582a2]{color:#faad14}.log-line.info .content[data-v-951582a2]{color:#1677ff}.ai-task-page[data-v-a9125415]{padding:20px;max-width:1200px;margin:0 auto;height:100vh;overflow-y:auto;box-sizing:border-box}.page-header[data-v-a9125415]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;flex-wrap:wrap;gap:16px}.page-title[data-v-a9125415]{font-size:24px;font-weight:700;color:#1a1a1a;margin-bottom:8px}.page-subtitle[data-v-a9125415]{font-size:14px;color:#8c8c8c}.header-right[data-v-a9125415]{display:flex;align-items:center;gap:12px}.scheduler-status[data-v-a9125415]{display:flex;align-items:center;gap:8px;padding:8px 14px;background:#fff;border-radius:8px;border:1px solid #e8e8e8;font-size:13px;color:#8c8c8c}.status-dot[data-v-a9125415]{width:8px;height:8px;border-radius:50%;background:#bfbfbf;flex-shrink:0}.status-dot.active[data-v-a9125415]{background:#00b42a;box-shadow:0 0 6px #00b42a99;animation:pulse-a9125415 1.5s infinite}@keyframes pulse-a9125415{0%,to{opacity:1}50%{opacity:.5}}.status-text[data-v-a9125415]{color:#595959;font-weight:500}.task-count[data-v-a9125415]{color:#a0a0a0;font-size:12px}.scheduler-btn[data-v-a9125415]{padding:8px 16px;border-radius:6px;cursor:pointer;border:1px solid #d9d9d9;background:#f0f2f5;color:#333;font-size:13px;font-weight:500;transition:all .2s}.start-scheduler[data-v-a9125415]{background:#1677ff;color:#fff;border:none}.start-scheduler[data-v-a9125415]:hover{background:#4096ff}.stop-scheduler[data-v-a9125415]{color:#ff4d4f;border-color:#ff4d4f}.stop-scheduler[data-v-a9125415]:hover{background:#ff4d4f1a}.tool-bar[data-v-a9125415]{display:flex;gap:12px;margin-bottom:24px}.tool-bar button[data-v-a9125415]{padding:10px 16px;border-radius:6px;background:#f0f2f5;color:#333;cursor:pointer;border:1px solid #d9d9d9;transition:all .2s;font-size:14px}.tool-bar button[data-v-a9125415]:hover{background:#e8e8e8;border-color:#d9d9d9}.primary-btn[data-v-a9125415]{background:#1677ff!important;color:#fff!important;border:none!important}.primary-btn[data-v-a9125415]:hover{background:#4096ff!important}.secondary-btn[data-v-a9125415]{background:transparent!important}.task-list-container[data-v-a9125415]{min-height:200px}.empty-state[data-v-a9125415]{display:flex;justify-content:center;align-items:center;height:200px;color:#bfbfbf;background:#fff;border-radius:8px;border:1px dashed #e8e8e8}.task-list[data-v-a9125415]{display:flex;flex-direction:column;gap:12px}.task-card[data-v-a9125415]{background:#fff;border-radius:10px;border:1px solid #e8e8e8;display:flex;overflow:hidden;transition:all .2s}.task-card[data-v-a9125415]:hover{border-color:#d9d9d9;box-shadow:0 2px 8px #00000014}.task-card.inactive[data-v-a9125415]{opacity:.55}.card-left-bar[data-v-a9125415]{width:4px;flex-shrink:0}.bar-active[data-v-a9125415]{background:#1677ff}.bar-inactive[data-v-a9125415]{background:#bfbfbf}.card-body[data-v-a9125415]{flex:1;padding:16px 20px}.card-header[data-v-a9125415]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.card-title-row[data-v-a9125415]{display:flex;align-items:center;gap:10px}.type-tag[data-v-a9125415]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;letter-spacing:.5px}.type-tag.long_term[data-v-a9125415]{background:#1677ff1f;color:#1677ff;border:1px solid rgba(22,119,255,.3)}.type-tag.scheduled[data-v-a9125415]{background:#faad141f;color:#faad14;border:1px solid rgba(250,173,20,.3)}.type-tag.once[data-v-a9125415]{background:#722ed11f;color:#722ed1;border:1px solid rgba(114,46,209,.3)}.task-name[data-v-a9125415]{font-size:16px;font-weight:600;color:#1a1a1a}.card-actions[data-v-a9125415]{display:flex;align-items:center;gap:4px}.action-btn[data-v-a9125415]{padding:4px 14px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;border:1px solid;transition:all .2s;white-space:nowrap}.start-action-btn[data-v-a9125415]{background:transparent;color:#52c41a;border-color:#52c41a}.start-action-btn[data-v-a9125415]:hover:not(:disabled){background:#00b42a1a}.start-action-btn[data-v-a9125415]:disabled{opacity:.5;cursor:not-allowed;color:#a0a0a0;border-color:#d9d9d9}.stop-action-btn[data-v-a9125415]{background:transparent;color:#ff4d4f;border-color:#ff4d4f}.stop-action-btn[data-v-a9125415]:hover:not(:disabled){background:#ff4d4f1a}.stop-action-btn[data-v-a9125415]:disabled{opacity:.6;cursor:not-allowed}.icon-btn[data-v-a9125415]{background:transparent;border:none;cursor:pointer;font-size:14px;color:#8c8c8c;padding:4px 8px;border-radius:4px;transition:all .2s;opacity:0}.task-card:hover .icon-btn[data-v-a9125415]{opacity:1}.icon-btn[data-v-a9125415]:hover{background:#e8e8e8;color:#1a1a1a}.delete-btn[data-v-a9125415]:hover{color:#ff4d4f}.card-goal[data-v-a9125415]{color:#595959;font-size:13px;line-height:1.5;margin-bottom:10px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.card-meta[data-v-a9125415]{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#a0a0a0}.meta-item[data-v-a9125415]{display:inline-flex;align-items:center;gap:4px}.status-meta.st-active[data-v-a9125415]{color:#52c41a}.status-meta.st-inactive[data-v-a9125415]{color:#a0a0a0}.card-runtime[data-v-a9125415]{display:flex;align-items:center;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid #f0f2f5;font-size:12px}.rt-pill[data-v-a9125415]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.rt-pill.rt-queued[data-v-a9125415]{background:#6464641a;color:#8c8c8c;border:1px solid #d9d9d9}.rt-pill.rt-running[data-v-a9125415]{background:#1677ff24;color:#1677ff;border:1px solid #1677ff}.rt-pill.rt-paused[data-v-a9125415]{background:#64646414;color:#a0a0a0;border:1px solid #d9d9d9}.rt-pill.rt-completed[data-v-a9125415]{background:#52c41a1f;color:#52c41a;border:1px solid rgba(82,196,26,.3)}.rt-meta[data-v-a9125415]{color:#a0a0a0}.rt-running-now[data-v-a9125415]{color:#1677ff;font-weight:500}.monitor-section[data-v-a9125415]{margin-top:24px;background:#fff;border-radius:10px;border:1px solid #e8e8e8;overflow:hidden}.monitor-header[data-v-a9125415]{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid #f0f2f5}.monitor-header-left[data-v-a9125415]{display:flex;justify-content:space-between;align-items:center;flex:1;cursor:pointer;-webkit-user-select:none;user-select:none}.monitor-header-left[data-v-a9125415]:hover{opacity:.8}.monitor-stop-btn[data-v-a9125415]{flex-shrink:0;margin-left:16px}.monitor-title[data-v-a9125415]{display:flex;align-items:center;gap:10px;color:#333;font-weight:600;font-size:14px}.live-dot[data-v-a9125415]{width:8px;height:8px;border-radius:50%;background:#1677ff;animation:pulse-a9125415 1.5s infinite}.monitor-toggle[data-v-a9125415]{color:#a0a0a0;font-size:12px}.monitor-body[data-v-a9125415]{padding:16px}.modal-overlay[data-v-a9125415]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content[data-v-a9125415]{background:#f0f2f5;width:560px;max-height:85vh;overflow-y:auto;border-radius:12px;border:1px solid #d9d9d9;box-shadow:0 10px 30px #00000026}.modal-header[data-v-a9125415]{padding:16px 24px;border-bottom:1px solid #d9d9d9;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#f0f2f5;z-index:1}.modal-header h3[data-v-a9125415]{margin:0;color:#1a1a1a;font-size:18px}.close-icon[data-v-a9125415]{color:#8c8c8c;font-size:24px;cursor:pointer;line-height:1}.close-icon[data-v-a9125415]:hover{color:#1a1a1a}.modal-body[data-v-a9125415]{padding:24px}.form-group[data-v-a9125415]{margin-bottom:18px}.form-group label[data-v-a9125415]{display:block;color:#595959;margin-bottom:8px;font-size:14px;font-weight:500}.required[data-v-a9125415]{color:#ff4d4f}.form-group input[data-v-a9125415],.form-group textarea[data-v-a9125415],.form-group select[data-v-a9125415]{width:100%;padding:10px;background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#333;font-size:14px;outline:none;box-sizing:border-box;transition:border-color .2s}.form-group input[data-v-a9125415]:focus,.form-group textarea[data-v-a9125415]:focus,.form-group select[data-v-a9125415]:focus{border-color:#1677ff}.form-hint[data-v-a9125415]{margin-top:6px;font-size:12px;color:#1677ff}.form-row[data-v-a9125415]{display:flex;gap:16px}.flex-1[data-v-a9125415]{flex:1}.type-selector[data-v-a9125415]{display:flex;gap:12px}.type-option[data-v-a9125415]{flex:1;padding:14px;background:#fff;border:1px solid #d9d9d9;border-radius:8px;cursor:pointer;display:flex;gap:12px;align-items:center;transition:all .2s}.type-option[data-v-a9125415]:hover{border-color:#d9d9d9;background:#f5f7fa}.type-option.selected[data-v-a9125415]{border-color:#1677ff;background:#1677ff14}.type-icon[data-v-a9125415]{font-size:24px;flex-shrink:0}.type-label[data-v-a9125415]{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.type-desc[data-v-a9125415]{font-size:11px;color:#a0a0a0;line-height:1.4}.kb-selector[data-v-a9125415]{display:flex;flex-wrap:wrap;gap:12px}.kb-check[data-v-a9125415]{display:flex;align-items:center;gap:6px;font-size:13px;color:#595959;cursor:pointer}.kb-check input[type=checkbox][data-v-a9125415]{width:auto;accent-color:#1677ff}.no-kb[data-v-a9125415]{color:#bfbfbf;font-size:13px}.modal-footer[data-v-a9125415]{padding:16px 24px;border-top:1px solid #d9d9d9;display:flex;justify-content:flex-end;gap:12px;position:sticky;bottom:0;background:#f0f2f5}.cancel-btn[data-v-a9125415],.save-btn[data-v-a9125415]{padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;border:none;transition:all .2s}.cancel-btn[data-v-a9125415]{background:transparent;color:#595959;border:1px solid #d9d9d9}.cancel-btn[data-v-a9125415]:hover{background:#e8e8e8;color:#1a1a1a}.save-btn[data-v-a9125415]{background:#1677ff;color:#fff}.save-btn[data-v-a9125415]:hover{background:#4096ff}.save-btn[data-v-a9125415]:disabled{opacity:.6;cursor:not-allowed}.chat-page[data-v-09042dd3]{display:flex;height:calc(100vh - 100px);gap:0}.chat-sidebar[data-v-09042dd3]{width:260px;background:#fafafa;border-right:1px solid #e8e8e8;display:flex;flex-direction:column;border-radius:8px 0 0 8px}.sidebar-header[data-v-09042dd3]{padding:16px;border-bottom:1px solid #e8e8e8;display:flex;justify-content:space-between;align-items:center}.sidebar-title[data-v-09042dd3]{color:#595959;font-size:14px;font-weight:500}.new-chat-btn[data-v-09042dd3]{padding:6px 12px;background:#1677ff;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px}.new-chat-btn[data-v-09042dd3]:hover{background:#4096ff}.session-list[data-v-09042dd3]{flex:1;overflow-y:auto;padding:8px}.session-item[data-v-09042dd3]{padding:12px;border-radius:8px;cursor:pointer;margin-bottom:4px;transition:background .2s}.session-item[data-v-09042dd3]:hover{background:#f0f2f5}.session-item.active[data-v-09042dd3]{background:#1677ff26;border-left:3px solid #1677ff}.session-topic[data-v-09042dd3]{color:#333;font-size:14px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-meta[data-v-09042dd3]{color:#bfbfbf;font-size:12px}.no-sessions[data-v-09042dd3]{text-align:center;color:#8c8c8c;padding:40px 0;font-size:14px}.chat-main[data-v-09042dd3]{flex:1;display:flex;flex-direction:column;background:#f5f7fa;border-radius:0 8px 8px 0}.chat-header[data-v-09042dd3]{padding:16px 24px;border-bottom:1px solid #e8e8e8;background:#fafafa}.chat-title[data-v-09042dd3]{font-size:18px;font-weight:700;color:#1a1a1a;display:flex;align-items:center;gap:10px}.route-badge[data-v-09042dd3]{font-size:11px;padding:3px 8px;border-radius:4px;font-weight:400}.route-kb_search[data-v-09042dd3]{background:#52c41a26;color:#52c41a}.route-phone_automation[data-v-09042dd3]{background:#722ed126;color:#9254de}.route-rag_answer[data-v-09042dd3]{background:#1677ff26;color:#1677ff}.route-finish[data-v-09042dd3]{background:#99999926;color:#8c8c8c}.chat-subtitle[data-v-09042dd3]{color:#bfbfbf;font-size:12px;margin-top:4px}.messages-container[data-v-09042dd3]{flex:1;overflow-y:auto;padding:20px 24px}.welcome-state[data-v-09042dd3]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#bfbfbf}.welcome-icon[data-v-09042dd3]{font-size:48px;margin-bottom:16px}.welcome-text[data-v-09042dd3]{font-size:20px;color:#595959;margin-bottom:8px}.welcome-hint[data-v-09042dd3]{font-size:14px;color:#8c8c8c;margin-bottom:24px}.quick-actions[data-v-09042dd3]{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.quick-actions button[data-v-09042dd3]{padding:8px 16px;background:#f0f2f5;color:#595959;border:1px solid #d9d9d9;border-radius:20px;cursor:pointer;font-size:13px;transition:all .2s}.quick-actions button[data-v-09042dd3]:hover{background:#e8e8e8;border-color:#1677ff;color:#1677ff}.message-row[data-v-09042dd3]{display:flex;gap:12px;margin-bottom:20px;max-width:80%}.message-row.msg-user[data-v-09042dd3]{margin-left:auto;flex-direction:row-reverse}.message-avatar[data-v-09042dd3]{width:36px;height:36px;border-radius:50%;background:#f0f2f5;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.message-bubble[data-v-09042dd3]{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:12px 16px}.msg-user .message-bubble[data-v-09042dd3]{background:#1677ff;border-color:#1677ff;color:#fff}.message-content[data-v-09042dd3]{font-size:14px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.message-route[data-v-09042dd3]{margin-top:8px;font-size:11px;color:#bfbfbf;border-top:1px solid #e8e8e8;padding-top:6px}.thinking[data-v-09042dd3]{display:flex;gap:4px;padding:16px 20px}.thinking .dot[data-v-09042dd3]{width:8px;height:8px;border-radius:50%;background:#d9d9d9;animation:bounce-09042dd3 1.4s infinite ease-in-out both}.thinking .dot[data-v-09042dd3]:nth-child(1){animation-delay:0s}.thinking .dot[data-v-09042dd3]:nth-child(2){animation-delay:.2s}.thinking .dot[data-v-09042dd3]:nth-child(3){animation-delay:.4s}@keyframes bounce-09042dd3{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.input-area[data-v-09042dd3]{padding:16px 24px;border-top:1px solid #e8e8e8;background:#fafafa}.kb-selector[data-v-09042dd3]{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:12px;color:#bfbfbf}.kb-chips[data-v-09042dd3]{display:flex;gap:6px;flex-wrap:wrap}.kb-chip[data-v-09042dd3]{padding:4px 10px;border-radius:12px;background:#f0f2f5;color:#8c8c8c;font-size:12px;cursor:pointer;border:1px solid #e8e8e8;transition:all .2s}.kb-chip[data-v-09042dd3]:hover{border-color:#8c8c8c}.kb-chip.selected[data-v-09042dd3]{background:#1677ff26;color:#1677ff;border-color:#1677ff}.input-row[data-v-09042dd3]{display:flex;gap:12px;align-items:flex-end}.input-row textarea[data-v-09042dd3]{flex:1;padding:10px 14px;background:#fff;border:1px solid #d9d9d9;border-radius:8px;color:#333;font-size:14px;outline:none;resize:none;min-height:40px;max-height:120px;line-height:1.5;font-family:inherit}.input-row textarea[data-v-09042dd3]:focus{border-color:#1677ff}.send-btn[data-v-09042dd3]{padding:10px 20px;background:#1677ff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;white-space:nowrap;transition:background .2s}.send-btn[data-v-09042dd3]:hover:not(:disabled){background:#4096ff}.send-btn[data-v-09042dd3]:disabled{opacity:.5;cursor:not-allowed}.knowledge-page[data-v-e0c8a8ac]{padding:20px;max-width:1200px;margin:0 auto}.page-header[data-v-e0c8a8ac]{margin-bottom:24px}.page-title[data-v-e0c8a8ac]{font-size:24px;font-weight:700;color:#1a1a1a;margin-bottom:8px}.page-subtitle[data-v-e0c8a8ac]{font-size:14px;color:#8c8c8c}.category-tabs[data-v-e0c8a8ac]{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.tab-item[data-v-e0c8a8ac]{padding:10px 20px;background:#f0f2f5;border-radius:8px;cursor:pointer;color:#8c8c8c;transition:all .3s ease;border:1px solid #e8e8e8;display:flex;align-items:center;gap:8px;font-weight:500}.tab-item[data-v-e0c8a8ac]:hover{background:#e8e8e8;color:#333}.tab-item.active[data-v-e0c8a8ac]{background:#1677ff26;color:#1677ff;border-color:#1677ff}.tab-icon[data-v-e0c8a8ac]{font-size:16px}.add-cat-btn[data-v-e0c8a8ac]{border-style:dashed;color:#bfbfbf}.add-cat-btn[data-v-e0c8a8ac]:hover{border-color:#1677ff;color:#1677ff;background:#1677ff0d}.tool-bar[data-v-e0c8a8ac]{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.tool-bar button[data-v-e0c8a8ac]{padding:10px 16px;border-radius:6px;background:#f0f2f5;color:#333;cursor:pointer;border:1px solid #d9d9d9;transition:all .2s;font-size:14px}.tool-bar button[data-v-e0c8a8ac]:hover:not(:disabled){background:#e8e8e8;border-color:#d9d9d9}.tool-bar button[data-v-e0c8a8ac]:disabled{opacity:.5;cursor:not-allowed}.primary-btn[data-v-e0c8a8ac]{background:#1677ff!important;color:#fff!important;border:none!important}.primary-btn[data-v-e0c8a8ac]:hover:not(:disabled){background:#4096ff!important}.upload-btn[data-v-e0c8a8ac]{background:#52c41a!important;color:#fff!important;border:none!important}.upload-btn[data-v-e0c8a8ac]:hover:not(:disabled){background:#73d13d!important}.sync-btn[data-v-e0c8a8ac]{background:#722ed1!important;color:#fff!important;border:none!important}.sync-btn[data-v-e0c8a8ac]:hover:not(:disabled){background:#9254de!important}.secondary-btn[data-v-e0c8a8ac]{background:transparent!important}.danger-btn[data-v-e0c8a8ac]{color:#ff4d4f!important;border-color:#ff4d4f!important}.danger-btn[data-v-e0c8a8ac]:hover:not(:disabled){background:#ff4d4f1a!important}.upload-progress-bar[data-v-e0c8a8ac]{position:relative;height:32px;background:#fff;border-radius:6px;margin-bottom:16px;overflow:hidden;border:1px solid #e8e8e8}.progress-fill[data-v-e0c8a8ac]{height:100%;background:linear-gradient(90deg,#1677ff,#4096ff);transition:width .3s ease;border-radius:6px}.progress-text[data-v-e0c8a8ac]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#333;font-size:13px;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.1)}.toast-message[data-v-e0c8a8ac]{padding:10px 16px;border-radius:6px;margin-bottom:16px;font-size:14px;animation:fadeIn-e0c8a8ac .3s ease}.toast-message.success[data-v-e0c8a8ac]{background:#52c41a26;color:#52c41a;border:1px solid rgba(82,196,26,.3)}.toast-message.error[data-v-e0c8a8ac]{background:#ff4d4f26;color:#ff4d4f;border:1px solid rgba(255,77,79,.3)}@keyframes fadeIn-e0c8a8ac{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.knowledge-list-container[data-v-e0c8a8ac]{min-height:400px}.empty-state[data-v-e0c8a8ac]{display:flex;justify-content:center;align-items:center;height:200px;color:#bfbfbf;background:#fff;border-radius:8px;border:1px dashed #e8e8e8}.knowledge-list[data-v-e0c8a8ac]{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:16px}.know-item[data-v-e0c8a8ac]{background:#fff;padding:20px;border-radius:12px;border:1px solid #e8e8e8;transition:all .3s ease;position:relative;overflow:hidden}.know-item[data-v-e0c8a8ac]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;border-color:#d9d9d9}.know-item[data-v-e0c8a8ac]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#1677ff;opacity:.7}.item-header[data-v-e0c8a8ac]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cate-tag[data-v-e0c8a8ac]{color:#1677ff;font-size:12px;background:#1677ff1a;padding:4px 8px;border-radius:4px;font-weight:500}.item-actions[data-v-e0c8a8ac]{display:flex;gap:8px;opacity:0;transition:opacity .2s}.know-item:hover .item-actions[data-v-e0c8a8ac]{opacity:1}.action-icon[data-v-e0c8a8ac]{cursor:pointer;font-size:14px;color:#8c8c8c}.action-icon.delete[data-v-e0c8a8ac]:hover{color:#ff4d4f}.q[data-v-e0c8a8ac],.a[data-v-e0c8a8ac]{margin-bottom:8px;line-height:1.6;font-size:14px}.q[data-v-e0c8a8ac]{color:#1a1a1a;font-weight:500}.a[data-v-e0c8a8ac]{color:#595959}.label[data-v-e0c8a8ac]{color:#bfbfbf;margin-right:6px;font-weight:700}.modal-overlay[data-v-e0c8a8ac]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content[data-v-e0c8a8ac]{background:#f0f2f5;width:520px;border-radius:12px;border:1px solid #d9d9d9;box-shadow:0 10px 30px #00000026;overflow:hidden}.modal-header[data-v-e0c8a8ac]{padding:16px 24px;border-bottom:1px solid #d9d9d9;display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-e0c8a8ac]{margin:0;color:#1a1a1a;font-size:18px}.close-icon[data-v-e0c8a8ac]{color:#8c8c8c;font-size:24px;cursor:pointer;line-height:1}.close-icon[data-v-e0c8a8ac]:hover{color:#1a1a1a}.modal-body[data-v-e0c8a8ac]{padding:24px}.form-group[data-v-e0c8a8ac]{margin-bottom:16px}.form-group label[data-v-e0c8a8ac]{display:block;color:#595959;margin-bottom:8px;font-size:14px}.form-group input[data-v-e0c8a8ac],.form-group textarea[data-v-e0c8a8ac]{width:100%;padding:10px;background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#333;font-size:14px;outline:none;box-sizing:border-box}.form-group input[data-v-e0c8a8ac]:focus,.form-group textarea[data-v-e0c8a8ac]:focus{border-color:#1677ff}.small-modal[data-v-e0c8a8ac]{width:400px}.modal-footer[data-v-e0c8a8ac]{padding:16px 24px;border-top:1px solid #d9d9d9;display:flex;justify-content:flex-end;gap:12px}.cancel-btn[data-v-e0c8a8ac],.save-btn[data-v-e0c8a8ac]{padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;border:none;transition:all .2s}.cancel-btn[data-v-e0c8a8ac]{background:transparent;color:#595959;border:1px solid #d9d9d9}.cancel-btn[data-v-e0c8a8ac]:hover{background:#e8e8e8;color:#1a1a1a}.save-btn[data-v-e0c8a8ac]{background:#1677ff;color:#fff}.save-btn[data-v-e0c8a8ac]:hover{background:#4096ff}.save-btn[data-v-e0c8a8ac]:disabled{opacity:.6;cursor:not-allowed}.upload-area[data-v-e0c8a8ac]{border:2px dashed #d9d9d9;border-radius:12px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .3s ease;background:#fff}.upload-area[data-v-e0c8a8ac]:hover,.upload-area.drag-over[data-v-e0c8a8ac]{border-color:#1677ff;background:#1677ff0d}.upload-icon[data-v-e0c8a8ac]{font-size:40px;margin-bottom:12px}.upload-text[data-v-e0c8a8ac]{color:#595959;font-size:15px;margin-bottom:8px}.upload-hint[data-v-e0c8a8ac]{color:#bfbfbf;font-size:12px}.file-list[data-v-e0c8a8ac]{margin-top:16px;max-height:200px;overflow-y:auto}.file-list-header[data-v-e0c8a8ac]{display:flex;justify-content:space-between;align-items:center;color:#595959;font-size:13px;margin-bottom:8px}.clear-files[data-v-e0c8a8ac]{color:#ff4d4f;cursor:pointer;font-size:12px}.file-item[data-v-e0c8a8ac]{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border-radius:6px;margin-bottom:4px;font-size:13px}.file-name[data-v-e0c8a8ac]{flex:1;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size[data-v-e0c8a8ac]{color:#bfbfbf;font-size:12px;white-space:nowrap}.file-remove[data-v-e0c8a8ac]{color:#8c8c8c;cursor:pointer;font-size:16px;line-height:1}.file-remove[data-v-e0c8a8ac]:hover{color:#ff4d4f}.scrcpy-screen[data-v-ad2cdd35]{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.panel-header[data-v-ad2cdd35]{padding:12px 16px;border-bottom:1px solid #e8e8e8;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.device-selector select[data-v-ad2cdd35],.player-select select[data-v-ad2cdd35]{width:100%;background:#f0f2f5;color:#333;border:1px solid #d9d9d9;border-radius:6px;padding:8px}.screen-status[data-v-ad2cdd35]{display:flex;justify-content:space-between;font-size:12px;color:#8c8c8c}.live-badge[data-v-ad2cdd35]{color:#4ade80}.screen-controls[data-v-ad2cdd35]{display:flex;align-items:center;justify-content:space-between;gap:8px}.player-select[data-v-ad2cdd35]{display:flex;align-items:center;gap:8px;flex:1;font-size:12px;color:#8c8c8c}.player-select select[data-v-ad2cdd35]{flex:1}.open-link[data-v-ad2cdd35]{color:#60a5fa;font-size:12px;text-decoration:none;white-space:nowrap}.phone-screen-wrapper[data-v-ad2cdd35]{flex:1;min-height:0;padding:12px;display:flex;justify-content:center}.phone-screen[data-v-ad2cdd35]{width:100%;max-width:420px;height:100%;min-height:0;background:#000;border-radius:16px;overflow:hidden;position:relative;border:1px solid #e8e8e8;box-shadow:inset 0 0 0 1px #0000000a}.screen-placeholder[data-v-ad2cdd35]{height:100%;display:flex;align-items:center;justify-content:center;color:#a0a0a0;padding:16px;text-align:center}.screen-placeholder.error[data-v-ad2cdd35]{color:#f87171}.screen-iframe[data-v-ad2cdd35]{width:100%;height:100%;border:0;display:block;background:#000}.screen-toolbar[data-v-ad2cdd35]{padding:12px 16px;border-top:1px solid #e8e8e8;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.screen-toolbar button[data-v-ad2cdd35]{background:#e8e8e8;color:#333;border:1px solid #d9d9d9;border-radius:6px;padding:8px 12px;cursor:pointer}.screen-toolbar button[data-v-ad2cdd35]:disabled{opacity:.5;cursor:not-allowed}.screen-input[data-v-ad2cdd35]{display:flex;gap:8px}.screen-input input[data-v-ad2cdd35]{flex:1;background:#f0f2f5;color:#333;border:1px solid #d9d9d9;border-radius:6px;padding:8px}.clear-btn[data-v-ad2cdd35]{flex-shrink:0}.screen-action[data-v-ad2cdd35]{padding:0 16px 12px;font-size:12px;color:#8c8c8c}.screen-action.error[data-v-ad2cdd35]{color:#f87171}.scrcpy-screen[data-v-5ad1c4fd]{display:flex;flex-direction:column;height:100%;min-height:0}.panel-header[data-v-5ad1c4fd]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.device-selector[data-v-5ad1c4fd]{display:flex;gap:8px;align-items:center}.device-selector select[data-v-5ad1c4fd]{min-width:220px;height:36px;border:1px solid #d9d9d9;border-radius:8px;padding:0 10px}.ghost[data-v-5ad1c4fd]{height:36px;padding:0 12px;border:1px solid #d9d9d9;background:#fff;border-radius:8px;cursor:pointer}.live-badge[data-v-5ad1c4fd]{margin-left:8px;font-size:12px;color:#1677ff;background:#e6f4ff;border-radius:999px;padding:2px 8px}.phone-screen-wrapper[data-v-5ad1c4fd]{flex:1;min-height:360px;background:#0b0f19;border-radius:24px;padding:16px}.phone-screen[data-v-5ad1c4fd]{width:100%;height:100%;border-radius:16px;overflow:hidden;background:#000;position:relative;display:flex;align-items:center;justify-content:center}.mirror-canvas[data-v-5ad1c4fd]{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;cursor:pointer}.screen-placeholder[data-v-5ad1c4fd]{color:#9ca3af;text-align:center;white-space:pre-wrap;padding:24px}.screen-placeholder.error[data-v-5ad1c4fd]{color:#ff7875}.screen-toolbar[data-v-5ad1c4fd]{display:flex;gap:8px;align-items:center;margin-top:10px}.screen-toolbar button[data-v-5ad1c4fd]{height:34px;padding:0 12px;border-radius:8px;border:1px solid #d9d9d9;background:#fff;cursor:pointer}.screen-input[data-v-5ad1c4fd]{flex:1;display:flex;gap:8px}.screen-input input[data-v-5ad1c4fd]{flex:1;height:34px;border:1px solid #d9d9d9;border-radius:8px;padding:0 10px}.device-notice[data-v-ece0eaa2]{padding:10px 16px;border-radius:8px;margin-bottom:12px;font-size:13px;font-weight:500}.device-notice.info[data-v-ece0eaa2]{background:#1677ff14;color:#1677ff;border:1px solid rgba(22,119,255,.3)}.device-notice.warning[data-v-ece0eaa2]{background:#faad1414;color:#d48806;border:1px solid rgba(250,173,20,.3)}.device-notice.error[data-v-ece0eaa2]{background:#ff4d4f14;color:#ff4d4f;border:1px solid rgba(255,77,79,.3)}.phone-console-page[data-v-ece0eaa2]{color:#333;height:100%;overflow:hidden;display:flex;flex-direction:column}.page-header[data-v-ece0eaa2]{margin-bottom:16px;flex-shrink:0}.page-title[data-v-ece0eaa2]{font-size:20px;margin-bottom:4px;font-weight:700;color:#1a1a1a}.page-subtitle[data-v-ece0eaa2]{font-size:13px;color:#8c8c8c}.console-layout[data-v-ece0eaa2]{display:flex;flex:1;min-height:0;overflow:hidden;gap:20px}.screen-panel[data-v-ece0eaa2]{width:460px;flex-shrink:0;background:#fff;border-radius:12px;border:1px solid #e8e8e8;display:flex;flex-direction:column;overflow:hidden}.interaction-panel[data-v-ece0eaa2]{flex:1;background:#fff;border-radius:12px;border:1px solid #e8e8e8;display:flex;flex-direction:column;overflow:hidden}.interaction-placeholder[data-v-ece0eaa2]{flex:1;display:flex;align-items:center;justify-content:center;color:#bfbfbf;font-size:16px}.panel-header[data-v-ece0eaa2]{padding:12px 14px;background:#e8ecf3;border-bottom:1px solid #d9e0ea;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0}.device-selector select[data-v-ece0eaa2]{background:#f5f7fa;color:#333;border:1px solid #d9d9d9;padding:6px 10px;border-radius:6px;outline:none}.screen-status[data-v-ece0eaa2]{display:flex;gap:12px;font-size:12px;color:#8c8c8c}.screen-controls[data-v-ece0eaa2]{display:flex;align-items:center;gap:10px}.interval-select[data-v-ece0eaa2]{display:flex;align-items:center;gap:6px;font-size:12px;color:#8c8c8c}.interval-select select[data-v-ece0eaa2]{background:#f5f7fa;color:#333;border:1px solid #d9d9d9;padding:4px 6px;border-radius:4px}.refresh-btn[data-v-ece0eaa2],.screen-toolbar button[data-v-ece0eaa2]{padding:6px 12px;border-radius:6px;border:1px solid #d9d9d9;background:#f0f2f5;color:#333;cursor:pointer}.refresh-btn[data-v-ece0eaa2]:hover:not(:disabled),.screen-toolbar button[data-v-ece0eaa2]:hover:not(:disabled){background:#e8e8e8}.refresh-btn[data-v-ece0eaa2]:disabled,.screen-toolbar button[data-v-ece0eaa2]:disabled{opacity:.5;cursor:not-allowed}.phone-screen-wrapper[data-v-ece0eaa2]{flex:1;min-height:0;overflow:hidden;padding:12px}.phone-screen[data-v-ece0eaa2]{width:100%;height:100%;background:#0a0c10;border-radius:14px;overflow:hidden;position:relative;border:1px solid #343c49}.screen-image[data-v-ece0eaa2]{width:100%;height:100%;object-fit:contain;display:block;background:#050607;cursor:crosshair;touch-action:none}.gesture-line[data-v-ece0eaa2]{position:absolute;height:3px;background:linear-gradient(90deg,#1677ff33,#53a2ff);transform-origin:left center;border-radius:999px;box-shadow:0 0 0 1px #ffffff1f;pointer-events:none}.screen-placeholder[data-v-ece0eaa2]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;color:#c2cad7;background:radial-gradient(circle at 20% 20%,rgba(22,119,255,.16),transparent 28%),radial-gradient(circle at 80% 15%,rgba(0,180,42,.16),transparent 26%),linear-gradient(180deg,#11151c,#090b0f)}.screen-placeholder.error[data-v-ece0eaa2]{color:#ff9d9d}.screen-toolbar[data-v-ece0eaa2]{padding:12px;border-top:1px solid #d9e0ea;display:flex;gap:10px;align-items:center;flex-shrink:0}.screen-input[data-v-ece0eaa2]{display:flex;gap:8px;flex:1}.screen-input input[data-v-ece0eaa2]{flex:1;padding:8px 12px;border-radius:6px;border:1px solid #d9d9d9;background:#e8ecf3;color:#333;outline:none}.clear-btn[data-v-ece0eaa2]{padding:8px 12px;border-radius:6px;border:1px solid #d9d9d9;background:#f0f2f5;color:#333;cursor:pointer;transition:all .2s}.clear-btn[data-v-ece0eaa2]:hover:not(:disabled){background:#d9d9d9}.clear-btn[data-v-ece0eaa2]:disabled{opacity:.5;cursor:not-allowed}.messages-list[data-v-ece0eaa2]{flex:1;min-height:0;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.empty-chat[data-v-ece0eaa2]{text-align:center;color:#bfbfbf;font-size:13px;margin-top:20px}.message-item[data-v-ece0eaa2]{display:flex}.message-item.user[data-v-ece0eaa2]{justify-content:flex-end}.message-item.system[data-v-ece0eaa2],.message-item.step[data-v-ece0eaa2]{justify-content:flex-start}.message-bubble[data-v-ece0eaa2]{max-width:80%;padding:8px 12px;border-radius:10px;font-size:13px;line-height:1.5;word-break:break-word}.message-item.user .message-bubble[data-v-ece0eaa2]{background:#1677ff;color:#fff}.message-item.system .message-bubble[data-v-ece0eaa2]{background:#f0f2f5;color:#8c8c8c}.step-content[data-v-ece0eaa2]{width:100%;padding:8px 12px;background:#e8f5e9;border-radius:8px;font-size:12px;line-height:1.5;border-left:3px solid #52c41a;color:#2e7d32}.step-content.step-error[data-v-ece0eaa2]{border-left-color:#ff4d4f;background:#fce4ec}.step-header[data-v-ece0eaa2]{display:flex;gap:12px;margin-bottom:4px;flex-wrap:wrap}.step-phase[data-v-ece0eaa2],.step-tool[data-v-ece0eaa2]{color:#2e7d32;font-weight:500}.step-reason[data-v-ece0eaa2]{color:#388e3c;margin-bottom:4px}.step-status[data-v-ece0eaa2]{display:inline-block;padding:2px 6px;border-radius:4px;background:#c8e6c9;color:#52c41a;font-size:11px;font-weight:500}.step-status.error[data-v-ece0eaa2],.step-status.failed[data-v-ece0eaa2]{background:#ffcdd2;color:#ff4d4f}.chat-input-area[data-v-ece0eaa2]{flex-shrink:0;padding:10px 14px;border-top:1px solid #d9e0ea;background:#e8ecf3}.input-wrapper[data-v-ece0eaa2]{display:flex;gap:8px;align-items:center}.input-wrapper input[data-v-ece0eaa2]{flex:1;padding:8px 12px;border-radius:6px;border:1px solid #e8e8e8;background:#f0f2f5;color:#333;font-size:13px;outline:none}.input-wrapper input[data-v-ece0eaa2]::placeholder{color:#bfbfbf}.input-wrapper input[data-v-ece0eaa2]:disabled{opacity:.5;cursor:not-allowed}.input-wrapper button[data-v-ece0eaa2]{padding:8px 16px;border-radius:6px;border:none;background:#1677ff;color:#fff;font-size:13px;cursor:pointer;white-space:nowrap}.input-wrapper button[data-v-ece0eaa2]:hover:not(:disabled){background:#4096ff}.input-wrapper .stop-btn[data-v-ece0eaa2]{background:#ff4d4f}.input-wrapper .stop-btn[data-v-ece0eaa2]:hover:not(:disabled){background:#f66}.input-wrapper button[data-v-ece0eaa2]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 900px){.console-layout[data-v-ece0eaa2]{flex-direction:column;overflow:auto}.screen-panel[data-v-ece0eaa2]{width:100%;min-height:500px}.interaction-panel[data-v-ece0eaa2]{min-height:300px}}.monitor-page[data-v-be3bbf92]{padding:20px;max-width:1200px;margin:0 auto}.page-header[data-v-be3bbf92]{margin-bottom:24px;display:flex;flex-wrap:wrap;align-items:baseline;gap:12px}.page-title[data-v-be3bbf92]{font-size:24px;font-weight:700;color:#1a1a1a}.page-subtitle[data-v-be3bbf92]{font-size:14px;color:#8c8c8c;flex:1}.refresh-btn[data-v-be3bbf92]{padding:8px 16px;background:#f0f2f5;color:#595959;border:1px solid #d9d9d9;border-radius:6px;cursor:pointer;font-size:13px}.refresh-btn[data-v-be3bbf92]:hover:not(:disabled){background:#e8e8e8;color:#1a1a1a}.refresh-btn[data-v-be3bbf92]:disabled{opacity:.5;cursor:not-allowed}.card-grid[data-v-be3bbf92]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card[data-v-be3bbf92]{background:#fff;border:1px solid #e8e8e8;border-radius:10px;padding:20px}.stat-card.health-healthy[data-v-be3bbf92]{border-left:4px solid #52c41a}.stat-card.health-degraded[data-v-be3bbf92]{border-left:4px solid #faad14}.stat-card.health-unhealthy[data-v-be3bbf92]{border-left:4px solid #ff4d4f}.stat-label[data-v-be3bbf92]{font-size:13px;color:#bfbfbf;margin-bottom:8px}.stat-value[data-v-be3bbf92]{font-size:24px;font-weight:700;color:#1a1a1a}.stat-detail[data-v-be3bbf92]{font-size:12px;color:#8c8c8c;margin-top:4px}.section[data-v-be3bbf92]{margin-bottom:24px}.section-header[data-v-be3bbf92]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-title[data-v-be3bbf92]{font-size:16px;font-weight:600;color:#333;margin-bottom:12px}.section-header .section-title[data-v-be3bbf92]{margin-bottom:0}.action-btn[data-v-be3bbf92]{padding:6px 12px;border-radius:6px;font-size:12px;cursor:pointer;border:1px solid #d9d9d9;background:#f0f2f5;color:#595959}.action-btn.danger[data-v-be3bbf92]{color:#ff4d4f;border-color:#ff4d4f}.action-btn.danger[data-v-be3bbf92]:hover{background:#ff4d4f1a}.check-list[data-v-be3bbf92]{background:#fff;border:1px solid #e8e8e8;border-radius:8px;overflow:hidden}.check-item[data-v-be3bbf92]{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #f0f2f5;font-size:14px}.check-item[data-v-be3bbf92]:last-child{border-bottom:none}.check-dot[data-v-be3bbf92]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dot-healthy[data-v-be3bbf92]{background:#52c41a}.dot-degraded[data-v-be3bbf92]{background:#faad14}.dot-unhealthy[data-v-be3bbf92]{background:#ff4d4f}.check-name[data-v-be3bbf92]{color:#333;font-weight:500;width:140px}.check-status[data-v-be3bbf92]{color:#8c8c8c;width:80px}.check-detail[data-v-be3bbf92]{color:#bfbfbf;flex:1}.cache-grid[data-v-be3bbf92]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cache-card[data-v-be3bbf92]{background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:16px}.cache-name[data-v-be3bbf92]{font-size:14px;color:#595959;font-weight:500;margin-bottom:12px}.cache-stats[data-v-be3bbf92]{display:flex;flex-direction:column;gap:8px}.cache-stat[data-v-be3bbf92]{display:flex;justify-content:space-between;font-size:13px}.cache-stat-label[data-v-be3bbf92]{color:#bfbfbf}.cache-stat-value[data-v-be3bbf92]{color:#333;font-weight:500}.latency-table[data-v-be3bbf92]{background:#fff;border:1px solid #e8e8e8;border-radius:8px;overflow:hidden}.latency-header[data-v-be3bbf92],.latency-row[data-v-be3bbf92]{display:grid;grid-template-columns:1.5fr repeat(5,1fr);padding:10px 16px;font-size:13px;gap:8px}.latency-header[data-v-be3bbf92]{background:#f0f2f5;color:#8c8c8c;font-weight:500}.latency-row[data-v-be3bbf92]{color:#595959;border-top:1px solid #f0f2f5}.empty-log[data-v-be3bbf92]{background:#fff;border:1px dashed #e8e8e8;border-radius:8px;padding:40px;text-align:center;color:#8c8c8c}.audit-list[data-v-be3bbf92]{background:#fff;border:1px solid #e8e8e8;border-radius:8px;overflow:hidden;max-height:400px;overflow-y:auto}.audit-item[data-v-be3bbf92]{display:flex;gap:12px;padding:10px 16px;border-bottom:1px solid #f0f2f5;font-size:13px;align-items:center}.audit-item[data-v-be3bbf92]:last-child{border-bottom:none}.audit-time[data-v-be3bbf92]{color:#8c8c8c;width:80px;flex-shrink:0}.audit-action[data-v-be3bbf92]{font-weight:500;width:160px;flex-shrink:0}.action-ok[data-v-be3bbf92]{color:#52c41a}.action-fail[data-v-be3bbf92]{color:#ff4d4f}.audit-user[data-v-be3bbf92]{color:#8c8c8c;width:100px;flex-shrink:0}.audit-detail[data-v-be3bbf92]{color:#bfbfbf;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 768px){.card-grid[data-v-be3bbf92]{grid-template-columns:repeat(2,1fr)}.cache-grid[data-v-be3bbf92]{grid-template-columns:1fr}}.modal-overlay[data-v-fec245ae]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.import-modal[data-v-fec245ae]{background:#fff;border-radius:12px;width:820px;max-width:95vw;max-height:85vh;overflow-y:auto;box-shadow:0 8px 32px #00000026;border:1px solid #e8e8e8}.modal-header[data-v-fec245ae]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e8e8e8}.modal-header h3[data-v-fec245ae]{margin:0;font-size:16px;color:#333}.close-icon[data-v-fec245ae]{cursor:pointer;font-size:22px;color:#8c8c8c;line-height:1}.close-icon[data-v-fec245ae]:hover{color:#333}.modal-body[data-v-fec245ae]{padding:20px}.upload-section[data-v-fec245ae]{text-align:center}.drop-zone[data-v-fec245ae]{border:2px dashed #d9d9d9;border-radius:10px;padding:48px 24px;cursor:pointer;transition:border-color .2s}.drop-zone[data-v-fec245ae]:hover{border-color:#1677ff}.drop-icon[data-v-fec245ae]{font-size:40px;margin-bottom:12px}.drop-zone p[data-v-fec245ae]{margin:6px 0;color:#595959;font-size:14px}.drop-hint[data-v-fec245ae]{color:#bfbfbf!important;font-size:12px!important}.template-row[data-v-fec245ae]{margin-top:16px}.link-btn[data-v-fec245ae]{background:none;border:none;color:#1677ff;cursor:pointer;font-size:13px;text-decoration:underline}.loading-text[data-v-fec245ae]{margin-top:16px;color:#1677ff}.preview-header[data-v-fec245ae]{display:flex;align-items:center;gap:16px;margin-bottom:12px}.preview-count[data-v-fec245ae]{font-size:14px;color:#333;font-weight:500}.dup-warning[data-v-fec245ae]{font-size:13px;color:#faad14}.preview-table-container[data-v-fec245ae]{max-height:400px;overflow-y:auto;border:1px solid #e8e8e8;border-radius:8px}.preview-table[data-v-fec245ae]{width:100%;border-collapse:collapse;font-size:13px}.preview-table th[data-v-fec245ae]{background:#f5f7fa;color:#595959;font-weight:500;padding:10px 12px;text-align:left;position:sticky;top:0;border-bottom:1px solid #e8e8e8}.preview-table td[data-v-fec245ae]{padding:8px 12px;border-bottom:1px solid #f0f2f5;color:#333}.dup-row[data-v-fec245ae]{background:#faad140f}.dup-tag[data-v-fec245ae]{display:inline-block;font-size:11px;color:#faad14;background:#faad141f;padding:1px 6px;border-radius:4px;margin-left:6px}.status-ok[data-v-fec245ae]{color:#52c41a;font-size:12px}.status-warn[data-v-fec245ae]{color:#faad14;font-size:12px}.preview-actions[data-v-fec245ae]{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.primary-btn[data-v-fec245ae]{background:#1677ff;color:#fff;border:none;border-radius:6px;padding:8px 20px;font-size:14px;cursor:pointer}.primary-btn[data-v-fec245ae]:disabled{opacity:.5;cursor:not-allowed}.primary-btn[data-v-fec245ae]:hover:not(:disabled){background:#4096ff}.secondary-btn[data-v-fec245ae]{background:#fff;color:#333;border:1px solid #d9d9d9;border-radius:6px;padding:8px 16px;font-size:14px;cursor:pointer}.secondary-btn[data-v-fec245ae]:hover{border-color:#1677ff;color:#1677ff}.customers-page[data-v-115ab493]{padding:0;max-width:1200px;margin:0 auto}.page-header[data-v-115ab493]{margin-bottom:24px}.page-title[data-v-115ab493]{font-size:24px;font-weight:700;color:#1a1a1a;margin-bottom:8px}.page-subtitle[data-v-115ab493]{font-size:14px;color:#8c8c8c}.tool-bar[data-v-115ab493]{display:flex;gap:12px;margin-bottom:24px;align-items:center;flex-wrap:wrap}.search-box[data-v-115ab493]{display:flex;flex:1;min-width:260px;max-width:480px;gap:0}.search-box input[data-v-115ab493]{flex:1;padding:10px 14px;background:#fff;border:1px solid #d9d9d9;border-radius:8px 0 0 8px;color:#333;font-size:14px;outline:none;box-sizing:border-box}.search-box input[data-v-115ab493]:focus{border-color:#1677ff}.search-box input[data-v-115ab493]::placeholder{color:#bfbfbf}.search-btn[data-v-115ab493]{padding:10px 16px;background:#1677ff;color:#fff;border:none;border-radius:0 8px 8px 0;cursor:pointer;font-size:14px;white-space:nowrap;transition:background .2s}.search-btn[data-v-115ab493]:hover{background:#4096ff}.clear-search-btn[data-v-115ab493]{padding:10px 14px;background:transparent;color:#8c8c8c;border:1px solid #d9d9d9;border-left:none;border-radius:0 8px 8px 0;cursor:pointer;font-size:13px;white-space:nowrap;transition:all .2s}.clear-search-btn[data-v-115ab493]:hover{color:#333;background:#e8e8e8}.search-btn[data-v-115ab493]:has(+.clear-search-btn){border-radius:0}.tool-bar-actions[data-v-115ab493]{display:flex;gap:10px;align-items:center}.import-btn[data-v-115ab493]{padding:10px 20px;background:#fff;color:#333;border:1px solid #d9d9d9;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;white-space:nowrap;transition:all .2s}.import-btn[data-v-115ab493]:hover{border-color:#1677ff;color:#1677ff}.export-btn[data-v-115ab493]{padding:10px 20px;background:#fff;color:#333;border:1px solid #d9d9d9;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;white-space:nowrap;transition:all .2s}.export-btn[data-v-115ab493]:hover{border-color:#52c41a;color:#52c41a}.primary-btn[data-v-115ab493]{padding:10px 20px;background:#1677ff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;white-space:nowrap;transition:background .2s}.primary-btn[data-v-115ab493]:hover{background:#4096ff}.customer-table-container[data-v-115ab493]{min-height:400px}.empty-state[data-v-115ab493]{display:flex;justify-content:center;align-items:center;height:200px;color:#bfbfbf;background:#fff;border-radius:8px;border:1px dashed #e8e8e8;font-size:14px}.customer-table[data-v-115ab493]{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;border:1px solid #e8e8e8}.customer-table thead[data-v-115ab493]{background:#f0f2f5;border-bottom:2px solid #e8e8e8}.customer-table th[data-v-115ab493]{padding:12px 16px;text-align:left;font-size:14px;font-weight:600;color:#595959;white-space:nowrap}.customer-table td[data-v-115ab493]{padding:12px 16px;font-size:13px;color:#333;border-bottom:1px solid #f0f2f5}.customer-row[data-v-115ab493]{cursor:pointer;transition:background .2s}.customer-row[data-v-115ab493]:hover{background:#f0f2f5}.name-cell[data-v-115ab493]{font-weight:600;color:#1a1a1a}.status-badge[data-v-115ab493]{font-size:12px;padding:3px 10px;border-radius:10px;font-weight:500;display:inline-block}.status-active[data-v-115ab493]{background:#52c41a26;color:#52c41a}.status-inactive[data-v-115ab493]{background:#6663;color:#bfbfbf}.tags-cell[data-v-115ab493]{max-width:200px}.table-tags[data-v-115ab493]{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.tag-pill[data-v-115ab493]{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500;line-height:1.6;white-space:nowrap}.more-tags[data-v-115ab493]{font-size:11px;color:#8c8c8c}.action-cell[data-v-115ab493]{white-space:nowrap}.edit-btn[data-v-115ab493]{padding:5px 14px;background:transparent;color:#1677ff;border:1px solid #1677ff;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s;margin-right:8px}.edit-btn[data-v-115ab493]:hover{background:#1677ff1a}.delete-btn[data-v-115ab493]{padding:5px 14px;background:transparent;color:#ff4d4f;border:1px solid #ff4d4f;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.delete-btn[data-v-115ab493]:hover{background:#ff4d4f1a}.pagination[data-v-115ab493]{display:flex;justify-content:space-between;align-items:center;padding:16px 0;margin-top:16px;border-top:1px solid #e8e8e8}.pagination-info[data-v-115ab493]{font-size:13px;color:#8c8c8c}.pagination-controls[data-v-115ab493]{display:flex;gap:8px;align-items:center}.page-btn[data-v-115ab493]{padding:6px 12px;background:#f0f2f5;border:1px solid #d9d9d9;border-radius:6px;color:#333;cursor:pointer;font-size:13px;transition:all .2s}.page-btn[data-v-115ab493]:hover:not(:disabled){background:#e8e8e8;border-color:#1677ff;color:#1677ff}.page-btn[data-v-115ab493]:disabled{opacity:.4;cursor:not-allowed}.page-numbers[data-v-115ab493]{display:flex;gap:4px}.page-number[data-v-115ab493]{padding:6px 12px;background:#f0f2f5;border:1px solid #d9d9d9;border-radius:6px;color:#333;cursor:pointer;font-size:13px;transition:all .2s}.page-number[data-v-115ab493]:hover{border-color:#1677ff;color:#1677ff}.page-number.active[data-v-115ab493]{background:#1677ff;border-color:#1677ff;color:#fff}.page-size-select[data-v-115ab493]{padding:6px 10px;background:#f0f2f5;border:1px solid #d9d9d9;border-radius:6px;color:#333;font-size:13px;cursor:pointer;outline:none}.page-size-select option[data-v-115ab493]{background:#f0f2f5;color:#333}.modal-overlay[data-v-115ab493]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content[data-v-115ab493]{background:#f0f2f5;width:520px;max-height:90vh;overflow-y:auto;border-radius:12px;border:1px solid #d9d9d9;box-shadow:0 10px 30px #00000080}.modal-header[data-v-115ab493]{padding:16px 24px;border-bottom:1px solid #d9d9d9;display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-115ab493]{margin:0;color:#1a1a1a;font-size:18px}.close-icon[data-v-115ab493]{color:#8c8c8c;font-size:24px;cursor:pointer;line-height:1}.close-icon[data-v-115ab493]:hover{color:#1a1a1a}.modal-body[data-v-115ab493]{padding:24px}.form-group[data-v-115ab493]{margin-bottom:16px}.form-group label[data-v-115ab493]{display:block;color:#595959;margin-bottom:8px;font-size:14px}.required[data-v-115ab493]{color:#ff4d4f}.form-group input[data-v-115ab493],.form-group textarea[data-v-115ab493],.form-group select[data-v-115ab493]{width:100%;padding:10px;background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#333;font-size:14px;outline:none;box-sizing:border-box;font-family:Microsoft YaHei,sans-serif}.form-group input[data-v-115ab493]:focus,.form-group textarea[data-v-115ab493]:focus,.form-group select[data-v-115ab493]:focus{border-color:#1677ff}.form-group input[data-v-115ab493]::placeholder,.form-group textarea[data-v-115ab493]::placeholder{color:#bfbfbf}.form-group select[data-v-115ab493]{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238c8c8c' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}.form-group select option[data-v-115ab493]{background:#f0f2f5;color:#333}.form-group textarea[data-v-115ab493]{resize:vertical;min-height:60px}.form-row[data-v-115ab493]{display:flex;gap:16px}.form-group.half[data-v-115ab493]{flex:1}.modal-footer[data-v-115ab493]{padding:16px 24px;border-top:1px solid #d9d9d9;display:flex;justify-content:flex-end;gap:12px}.cancel-btn[data-v-115ab493],.save-btn[data-v-115ab493]{padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;border:none;transition:all .2s}.cancel-btn[data-v-115ab493]{background:transparent;color:#595959;border:1px solid #d9d9d9}.cancel-btn[data-v-115ab493]:hover{background:#e8e8e8;color:#333}.save-btn[data-v-115ab493]{background:#1677ff;color:#fff}.save-btn[data-v-115ab493]:hover{background:#4096ff}.save-btn[data-v-115ab493]:disabled{opacity:.6;cursor:not-allowed}.customer-detail-page[data-v-9f35028b]{min-height:100%;color:#333}.page-header[data-v-9f35028b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.header-left[data-v-9f35028b]{display:flex;align-items:center;gap:16px}.back-btn[data-v-9f35028b]{background:none;border:1px solid #d9d9d9;color:#8c8c8c;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.back-btn[data-v-9f35028b]:hover{color:#333;border-color:#bfbfbf}.page-title[data-v-9f35028b]{font-size:22px;font-weight:700;color:#1a1a1a}.page-subtitle[data-v-9f35028b]{display:flex;align-items:center;gap:8px}.status-badge[data-v-9f35028b]{display:inline-block;padding:2px 10px;border-radius:10px;font-size:12px;font-weight:500}.status-badge.active[data-v-9f35028b]{background:#52c41a26;color:#52c41a}.status-badge.inactive[data-v-9f35028b]{background:#99999926;color:#8c8c8c}.status-badge.prospect[data-v-9f35028b]{background:#1677ff26;color:#1677ff}.status-badge.vip[data-v-9f35028b]{background:#faad1426;color:#faad14}.detail-grid[data-v-9f35028b]{display:grid;grid-template-columns:1fr 380px;gap:24px;align-items:start}@media (max-width: 900px){.detail-grid[data-v-9f35028b]{grid-template-columns:1fr}}.info-card[data-v-9f35028b],.policies-card[data-v-9f35028b],.timeline-card[data-v-9f35028b]{background:#fff;border-radius:10px;padding:20px;margin-bottom:20px;border:1px solid #e8e8e8}.card-title[data-v-9f35028b]{font-size:15px;font-weight:600;color:#333;margin-bottom:16px}.card-title-row[data-v-9f35028b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-title-row .card-title[data-v-9f35028b]{margin-bottom:0}.info-grid[data-v-9f35028b]{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px}.info-row[data-v-9f35028b]{display:flex;flex-direction:column;gap:4px}.info-row.full-width[data-v-9f35028b]{grid-column:1 / -1}.info-label[data-v-9f35028b]{font-size:12px;color:#bfbfbf;text-transform:uppercase;letter-spacing:.5px}.info-value[data-v-9f35028b]{font-size:14px;color:#333;word-break:break-word}.notes-text[data-v-9f35028b]{white-space:pre-wrap;line-height:1.6;color:#595959}.tags-row[data-v-9f35028b]{display:flex;flex-wrap:wrap;gap:6px}.tag-pill[data-v-9f35028b]{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:500;color:#333;border:1px solid #d9d9d9}.policies-table-wrap[data-v-9f35028b]{overflow-x:auto}.policies-table[data-v-9f35028b]{width:100%;border-collapse:collapse;font-size:13px}.policies-table th[data-v-9f35028b]{text-align:left;padding:8px 12px;font-weight:500;color:#8c8c8c;border-bottom:1px solid #e8e8e8;font-size:12px;white-space:nowrap}.policies-table td[data-v-9f35028b]{padding:10px 12px;color:#333;border-bottom:1px solid #f0f2f5}.policies-table tr:last-child td[data-v-9f35028b]{border-bottom:none}.type-tag[data-v-9f35028b]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;background:#1677ff1f;color:#1677ff}.type-tag.pension[data-v-9f35028b]{background:#722ed11f;color:#722ed1}.type-tag.accident[data-v-9f35028b]{background:#faad141f;color:#faad14}.type-tag.critical_illness[data-v-9f35028b]{background:#ff4d4f1f;color:#ff4d4f}.type-tag.medical[data-v-9f35028b]{background:#52c41a1f;color:#52c41a}.type-tag.education[data-v-9f35028b]{background:#13c2c21f;color:#13c2c2}.type-tag.life_value[data-v-9f35028b]{background:#1677ff1f;color:#1677ff}.policy-status[data-v-9f35028b]{font-size:12px;font-weight:500}.policy-status.active[data-v-9f35028b]{color:#52c41a}.policy-status.paid_up[data-v-9f35028b]{color:#1677ff}.policy-status.expired[data-v-9f35028b]{color:#ff4d4f}.policy-status.pending[data-v-9f35028b]{color:#faad14}.policy-status.cancelled[data-v-9f35028b]{color:#8c8c8c}.payment-end-row[data-v-9f35028b]{display:flex;gap:8px;align-items:center}.payment-end-row input[type=month][data-v-9f35028b]{flex:1}.empty-hint[data-v-9f35028b]{text-align:center;color:#bfbfbf;padding:32px 0;font-size:14px}.timeline[data-v-9f35028b]{position:relative;padding-left:20px}.timeline[data-v-9f35028b]:before{content:"";position:absolute;left:5px;top:0;bottom:0;width:2px;background:#e8e8e8;border-radius:1px}.timeline-date-label[data-v-9f35028b]{font-size:12px;font-weight:600;color:#8c8c8c;margin:16px 0 8px;padding-left:14px;position:relative}.timeline-date-label[data-v-9f35028b]:first-child{margin-top:0}.timeline-item[data-v-9f35028b]{position:relative;margin-bottom:12px;padding-left:14px}.timeline-dot[data-v-9f35028b]{position:absolute;left:-20px;top:12px;width:10px;height:10px;border-radius:50%;background:#1677ff;border:2px solid #ffffff;z-index:1}.timeline-dot.birthday[data-v-9f35028b]{background:#faad14}.timeline-dot.renewal[data-v-9f35028b]{background:#52c41a}.timeline-dot.silence[data-v-9f35028b]{background:#8c8c8c}.timeline-dot.mass_message[data-v-9f35028b]{background:#722ed1}.timeline-dot.call[data-v-9f35028b]{background:#1677ff}.timeline-dot.wechat[data-v-9f35028b]{background:#13c2c2}.timeline-dot.note[data-v-9f35028b]{background:#eb2f96}.timeline-card-body[data-v-9f35028b]{background:#f0f2f5;border-radius:8px;padding:12px 14px;border:1px solid #e8e8e8}.evt-header[data-v-9f35028b]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.evt-icon[data-v-9f35028b]{font-size:14px}.evt-title[data-v-9f35028b]{font-size:14px;font-weight:600;color:#333}.evt-content[data-v-9f35028b]{font-size:13px;color:#8c8c8c;line-height:1.5;margin-bottom:4px;white-space:pre-wrap}.evt-time[data-v-9f35028b]{font-size:11px;color:#bfbfbf}.primary-btn[data-v-9f35028b]{background:#1677ff;color:#fff;border:none;padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.primary-btn[data-v-9f35028b]:hover:not(:disabled){background:#4096ff}.primary-btn[data-v-9f35028b]:disabled{opacity:.6;cursor:not-allowed}.secondary-btn[data-v-9f35028b]{background:#f0f2f5;color:#595959;border:1px solid #d9d9d9;padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.secondary-btn[data-v-9f35028b]:hover{background:#e8e8e8;color:#333}.small-primary-btn[data-v-9f35028b]{background:#1677ff;color:#fff;border:none;padding:5px 12px;border-radius:5px;cursor:pointer;font-size:12px;font-weight:500;transition:background .2s}.small-primary-btn[data-v-9f35028b]:hover{background:#4096ff}.modal-overlay[data-v-9f35028b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}.modal-content[data-v-9f35028b]{background:#f0f2f5;border-radius:12px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;border:1px solid #d9d9d9;box-shadow:0 12px 40px #00000080}.modal-sm[data-v-9f35028b]{max-width:440px}.modal-header[data-v-9f35028b]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e8e8e8}.modal-header h3[data-v-9f35028b]{margin:0;font-size:16px;font-weight:600;color:#1a1a1a}.close-icon[data-v-9f35028b]{font-size:22px;color:#8c8c8c;cursor:pointer;line-height:1;-webkit-user-select:none;user-select:none}.close-icon[data-v-9f35028b]:hover{color:#1a1a1a}.modal-body[data-v-9f35028b]{padding:20px}.modal-footer[data-v-9f35028b]{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px;border-top:1px solid #e8e8e8}.form-grid[data-v-9f35028b]{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-group[data-v-9f35028b]{display:flex;flex-direction:column;gap:5px}.form-group.full-width[data-v-9f35028b]{grid-column:1 / -1}.form-group label[data-v-9f35028b]{font-size:12px;color:#8c8c8c;font-weight:500}.form-input[data-v-9f35028b]{background:#fff;border:1px solid #d9d9d9;color:#333;padding:8px 12px;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s;font-family:inherit}.form-input[data-v-9f35028b]:focus{border-color:#1677ff}.form-input[data-v-9f35028b]::placeholder{color:#bfbfbf}.form-textarea[data-v-9f35028b]{resize:vertical;min-height:60px}.form-hint[data-v-9f35028b]{margin:4px 0 0;font-size:12px;color:#8c8c8c}select.form-input[data-v-9f35028b]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.loading-state[data-v-9f35028b],.error-state[data-v-9f35028b]{text-align:center;padding:80px 0;font-size:15px;color:#8c8c8c}.error-state[data-v-9f35028b]{color:#ff4d4f}.toast-message[data-v-9f35028b]{position:fixed;bottom:32px;left:50%;transform:translate(-50%);padding:10px 24px;border-radius:8px;font-size:14px;font-weight:500;z-index:300;box-shadow:0 4px 16px #0006;animation:toast-in-9f35028b .25s ease}.toast-message.success[data-v-9f35028b]{background:#fff;color:#52c41a;border:1px solid #e8e8e8}.toast-message.error[data-v-9f35028b]{background:#fff;color:#ff4d4f;border:1px solid #e8e8e8}@keyframes toast-in-9f35028b{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.payment-action-row[data-v-9f35028b]{display:flex;gap:4px;margin-top:4px}.mark-renewed-btn[data-v-9f35028b]{padding:2px 8px;font-size:11px;border-radius:4px;border:1px solid #52c41a;background:#52c41a14;color:#52c41a;cursor:pointer;font-weight:500;transition:all .2s}.mark-renewed-btn[data-v-9f35028b]:hover{background:#52c41a33}.mark-paidup-btn[data-v-9f35028b]{padding:2px 8px;font-size:11px;border-radius:4px;border:1px solid #1677ff;background:#1677ff14;color:#1677ff;cursor:pointer;font-weight:500;transition:all .2s}.mark-paidup-btn[data-v-9f35028b]:hover{background:#1677ff33}.due-soon-text[data-v-9f35028b]{color:#faad14;font-weight:500}.due-soon-tag[data-v-9f35028b]{font-size:11px;background:#faad1426;color:#faad14;padding:1px 6px;border-radius:3px;margin-left:4px;font-weight:500}.pay-status-badge[data-v-9f35028b]{font-size:12px;font-weight:600}.mark-paid-btn[data-v-9f35028b]{padding:2px 8px;font-size:11px;border-radius:4px;border:1px solid #52c41a;background:#52c41a14;color:#52c41a;cursor:pointer;font-weight:500;transition:all .2s;margin-top:4px}.mark-paid-btn[data-v-9f35028b]:hover{background:#52c41a40}.modal-overlay[data-v-aedb6b9f]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:2000}.import-modal[data-v-aedb6b9f]{width:95vw;max-width:1100px;max-height:85vh;display:flex;flex-direction:column;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;border:1px solid #e8e8e8}.modal-header[data-v-aedb6b9f]{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #e8e8e8}.modal-header h3[data-v-aedb6b9f]{margin:0;font-size:18px;color:#1a1a1a}.close-icon[data-v-aedb6b9f]{font-size:22px;cursor:pointer;color:#8c8c8c}.modal-body[data-v-aedb6b9f]{flex:1;overflow-y:auto;padding:20px 24px}.modal-footer[data-v-aedb6b9f]{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;border-top:1px solid #e8e8e8}.upload-area[data-v-aedb6b9f]{display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px 0}.drop-zone[data-v-aedb6b9f]{width:100%;max-width:500px;padding:48px 24px;border:2px dashed #d9d9d9;border-radius:12px;text-align:center;cursor:pointer;transition:all .2s;background:#fafafa}.drop-zone[data-v-aedb6b9f]:hover,.drop-zone.drag-over[data-v-aedb6b9f]{border-color:#1677ff;background:#1677ff0a}.drop-icon[data-v-aedb6b9f]{font-size:40px;margin-bottom:12px}.drop-text[data-v-aedb6b9f]{font-size:15px;color:#333;margin:0 0 6px}.drop-hint[data-v-aedb6b9f]{font-size:13px;color:#8c8c8c;margin:0}.template-section[data-v-aedb6b9f]{text-align:center}.template-hint[data-v-aedb6b9f]{font-size:13px;color:#8c8c8c;margin:0 0 8px}.download-template-btn[data-v-aedb6b9f]{background:transparent;border:1px solid #1677ff;color:#1677ff;padding:6px 16px;border-radius:6px;cursor:pointer;font-size:13px}.download-template-btn[data-v-aedb6b9f]:hover{background:#1677ff0f}.preview-header[data-v-aedb6b9f]{display:flex;align-items:center;gap:16px;margin-bottom:12px}.preview-count[data-v-aedb6b9f]{font-size:14px;color:#333;font-weight:600}.preview-errors[data-v-aedb6b9f]{font-size:13px;color:#ff4d4f}.match-summary[data-v-aedb6b9f]{display:flex;gap:8px;margin-bottom:14px}.match-badge[data-v-aedb6b9f]{font-size:12px;padding:3px 10px;border-radius:12px;font-weight:600}.match-badge.exact[data-v-aedb6b9f]{background:#52c41a1f;color:#52c41a}.match-badge.multiple[data-v-aedb6b9f]{background:#faad141f;color:#faad14}.match-badge.none[data-v-aedb6b9f]{background:#ff4d4f1f;color:#ff4d4f}.preview-table-wrap[data-v-aedb6b9f]{overflow-x:auto;border:1px solid #e8e8e8;border-radius:8px}.preview-table[data-v-aedb6b9f]{width:100%;border-collapse:collapse;font-size:13px}.preview-table th[data-v-aedb6b9f]{background:#f0f2f5;padding:8px 10px;text-align:left;color:#595959;font-weight:600;border-bottom:1px solid #e8e8e8;white-space:nowrap}.preview-table td[data-v-aedb6b9f]{padding:8px 10px;border-bottom:1px solid #f0f2f5;color:#333;vertical-align:top}.preview-table tr.row-error[data-v-aedb6b9f]{background:#ff4d4f0a}.row-num[data-v-aedb6b9f]{width:36px;text-align:center;color:#8c8c8c}.mono[data-v-aedb6b9f]{font-family:SF Mono,monospace;font-size:12px}.customer-cell[data-v-aedb6b9f]{min-width:120px}.customer-name[data-v-aedb6b9f]{font-weight:600;color:#1a1a1a}.customer-action[data-v-aedb6b9f]{font-size:11px;margin-top:2px}.new-action[data-v-aedb6b9f]{color:#1677ff}.match-action[data-v-aedb6b9f]{color:#52c41a}.match-status[data-v-aedb6b9f]{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:600;white-space:nowrap}.status-exact[data-v-aedb6b9f]{background:#52c41a1f;color:#52c41a}.status-multiple[data-v-aedb6b9f]{background:#faad141f;color:#faad14}.status-none[data-v-aedb6b9f]{background:#ff4d4f1f;color:#ff4d4f}.status-new[data-v-aedb6b9f]{background:#1677ff1f;color:#1677ff}.status-selected[data-v-aedb6b9f]{background:#52c41a1f;color:#52c41a}.resolve-btn[data-v-aedb6b9f]{background:transparent;border:1px solid #d9d9d9;color:#1677ff;padding:3px 10px;border-radius:4px;cursor:pointer;font-size:12px}.resolve-btn[data-v-aedb6b9f]:hover{background:#f0f2f5}.resolve-area[data-v-aedb6b9f]{padding:0}.resolve-header[data-v-aedb6b9f]{display:flex;align-items:center;gap:16px;margin-bottom:20px}.resolve-header h4[data-v-aedb6b9f]{margin:0;font-size:16px;color:#1a1a1a}.back-btn[data-v-aedb6b9f]{background:transparent;border:1px solid #d9d9d9;color:#595959;padding:5px 12px;border-radius:6px;cursor:pointer;font-size:13px}.back-btn[data-v-aedb6b9f]:hover{background:#f0f2f5}.match-title[data-v-aedb6b9f]{font-size:13px;color:#8c8c8c;margin:0 0 10px;font-weight:600}.match-option[data-v-aedb6b9f]{border:1px solid #e8e8e8;border-radius:8px;padding:12px 16px;margin-bottom:8px;cursor:pointer;transition:all .15s;background:#fff}.match-option[data-v-aedb6b9f]:hover{border-color:#1677ff;background:#1677ff05}.match-option.selected[data-v-aedb6b9f]{border-color:#1677ff;background:#1677ff0a}.match-option-main[data-v-aedb6b9f]{display:flex;align-items:center;gap:10px}.match-radio[data-v-aedb6b9f]{width:16px;height:16px;border-radius:50%;border:2px solid #d9d9d9;flex-shrink:0}.match-radio.checked[data-v-aedb6b9f]{border-color:#1677ff;background:#1677ff;box-shadow:inset 0 0 0 3px #fff}.match-name[data-v-aedb6b9f]{font-size:14px;font-weight:600;color:#1a1a1a}.match-option-meta[data-v-aedb6b9f]{display:flex;gap:12px;margin-top:6px;padding-left:26px;font-size:12px;color:#8c8c8c}.match-tags[data-v-aedb6b9f]{display:flex;gap:4px}.match-tag[data-v-aedb6b9f]{background:#f0f2f5;color:#595959;padding:1px 6px;border-radius:3px;font-size:11px}.new-customer-section[data-v-aedb6b9f]{margin-top:20px}.new-customer-form[data-v-aedb6b9f]{margin-top:10px;padding:12px 16px;background:#fafafa;border-radius:8px;border:1px solid #e8e8e8}.new-customer-form label[data-v-aedb6b9f]{display:block;font-size:13px;color:#595959;margin-bottom:6px}.required[data-v-aedb6b9f]{color:#ff4d4f}.form-input[data-v-aedb6b9f]{width:100%;padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;color:#333;background:#fff;box-sizing:border-box}.form-input[data-v-aedb6b9f]:focus{outline:none;border-color:#1677ff}.form-hint[data-v-aedb6b9f]{font-size:12px;color:#8c8c8c;margin:6px 0 0}.resolve-footer[data-v-aedb6b9f]{margin-top:20px;display:flex;justify-content:flex-end}.confirm-resolve-btn[data-v-aedb6b9f]{background:#1677ff;color:#fff;border:none;padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600}.confirm-resolve-btn[data-v-aedb6b9f]:disabled{opacity:.5;cursor:not-allowed}.cancel-btn[data-v-aedb6b9f]{background:#fff;border:1px solid #d9d9d9;color:#595959;padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px}.cancel-btn[data-v-aedb6b9f]:hover{background:#f0f2f5}.save-btn[data-v-aedb6b9f]{background:#1677ff;color:#fff;border:none;padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600}.save-btn[data-v-aedb6b9f]:disabled{opacity:.5;cursor:not-allowed}.policies-page[data-v-37f3a04c]{padding:20px;max-width:1200px;margin:0 auto;background:#f5f7fa;min-height:100vh}.page-header[data-v-37f3a04c]{margin-bottom:24px}.page-title[data-v-37f3a04c]{font-size:24px;font-weight:700;color:#1a1a1a;margin-bottom:8px}.page-subtitle[data-v-37f3a04c]{font-size:14px;color:#8c8c8c}.renewal-banner[data-v-37f3a04c]{background:#faad1414;border:1px solid rgba(250,173,20,.35);border-radius:12px;padding:16px 20px;margin-bottom:20px}.renewal-banner-header[data-v-37f3a04c]{display:flex;align-items:center;gap:10px;margin-bottom:12px}.renewal-icon[data-v-37f3a04c]{font-size:20px}.renewal-title[data-v-37f3a04c]{font-size:16px;font-weight:600;color:#faad14}.renewal-count[data-v-37f3a04c]{font-size:13px;color:#d4a017;margin-left:auto}.renewal-list[data-v-37f3a04c]{display:flex;flex-wrap:wrap;gap:8px}.renewal-item[data-v-37f3a04c]{display:flex;align-items:center;gap:8px;background:#faad141a;border:1px solid rgba(250,173,20,.2);border-radius:6px;padding:6px 12px;font-size:13px}.renewal-product[data-v-37f3a04c]{color:#333;font-weight:500}.renewal-customer[data-v-37f3a04c]{color:#8c8c8c}.renewal-date[data-v-37f3a04c]{color:#faad14;font-weight:500;font-family:monospace}.filter-bar[data-v-37f3a04c]{display:flex;align-items:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}.status-filters[data-v-37f3a04c]{display:flex;gap:8px;flex-wrap:wrap}.filter-chip[data-v-37f3a04c]{padding:6px 14px;border-radius:16px;background:#fff;border:1px solid #e8e8e8;color:#8c8c8c;cursor:pointer;font-size:13px;transition:all .2s;white-space:nowrap}.filter-chip[data-v-37f3a04c]:hover{background:#f0f2f5;color:#333;border-color:#d9d9d9}.filter-chip.active[data-v-37f3a04c]{background:#1677ff26;color:#1677ff;border-color:#1677ff}.search-box[data-v-37f3a04c]{flex:1;min-width:180px}.search-box input[data-v-37f3a04c]{width:100%;padding:8px 14px;background:#fff;border:1px solid #e8e8e8;border-radius:8px;color:#333;font-size:13px;outline:none;box-sizing:border-box;transition:border-color .2s}.search-box input[data-v-37f3a04c]:focus{border-color:#1677ff}.search-box input[data-v-37f3a04c]::placeholder{color:#bfbfbf}.advanced-search[data-v-37f3a04c]{display:flex;align-items:center;gap:8px;background:#fff;padding:10px 20px;border-radius:8px;margin-bottom:16px;box-shadow:0 1px 3px #0000000f}.date-field-select[data-v-37f3a04c]{padding:6px 10px;border:1px solid #d9d9d9;border-radius:6px;font-size:13px;background:#fff;color:#333}.date-input[data-v-37f3a04c]{padding:6px 10px;border:1px solid #d9d9d9;border-radius:6px;font-size:13px;color:#333}.date-sep[data-v-37f3a04c]{color:#8c8c8c;font-size:13px}.clear-date-btn[data-v-37f3a04c]{padding:4px 12px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;color:#8c8c8c;font-size:12px;cursor:pointer;transition:all .2s}.clear-date-btn[data-v-37f3a04c]:hover{color:#1677ff;border-color:#1677ff}.primary-btn[data-v-37f3a04c]{padding:8px 18px;border-radius:8px;background:#1677ff;color:#fff;border:none;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s;white-space:nowrap}.primary-btn[data-v-37f3a04c]:hover{background:#4096ff}.import-btn[data-v-37f3a04c]{padding:8px 18px;border-radius:8px;background:#fff;color:#333;border:1px solid #d9d9d9;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;white-space:nowrap}.import-btn[data-v-37f3a04c]:hover{border-color:#1677ff;color:#1677ff}.policy-table-container[data-v-37f3a04c]{min-height:300px}.empty-state[data-v-37f3a04c]{display:flex;flex-direction:column;justify-content:center;align-items:center;height:220px;color:#bfbfbf;background:#fff;border-radius:12px;border:1px dashed #e8e8e8}.empty-state p[data-v-37f3a04c]{margin:0;font-size:14px}.empty-icon[data-v-37f3a04c]{font-size:48px;margin-bottom:12px;opacity:.4}.policy-table[data-v-37f3a04c]{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;border:1px solid #e8e8e8}.policy-table thead[data-v-37f3a04c]{background:#f0f2f5;border-bottom:2px solid #e8e8e8}.policy-table th[data-v-37f3a04c]{padding:12px 16px;text-align:left;font-size:14px;font-weight:600;color:#595959;white-space:nowrap}.policy-table td[data-v-37f3a04c]{padding:12px 16px;font-size:13px;color:#333;border-bottom:1px solid #f0f2f5}.policy-row[data-v-37f3a04c]{transition:background .2s}.policy-row[data-v-37f3a04c]:hover{background:#f0f2f5}.policy-row.renewal-highlight[data-v-37f3a04c]{background:#faad141a}.product-name[data-v-37f3a04c]{font-weight:600;color:#1a1a1a}.mono[data-v-37f3a04c]{font-family:SF Mono,Menlo,Consolas,monospace;font-size:12px}.premium-value[data-v-37f3a04c]{color:#faad14;font-weight:600}.renewal-soon-text[data-v-37f3a04c]{color:#faad14;font-weight:500}.renewal-soon-tag[data-v-37f3a04c]{font-size:11px;background:#faad1426;color:#faad14;padding:1px 6px;border-radius:3px;margin-left:6px;font-weight:500}.action-cell[data-v-37f3a04c]{white-space:nowrap}.edit-btn[data-v-37f3a04c]{padding:5px 14px;background:transparent;color:#1677ff;border:1px solid #1677ff;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s;margin-right:8px}.edit-btn[data-v-37f3a04c]:hover{background:#1677ff1a}.delete-btn[data-v-37f3a04c]{padding:5px 14px;background:transparent;color:#ff4d4f;border:1px solid #ff4d4f;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.delete-btn[data-v-37f3a04c]:hover{background:#ff4d4f1a}.pagination[data-v-37f3a04c]{display:flex;justify-content:space-between;align-items:center;padding:16px 0;margin-top:16px;border-top:1px solid #e8e8e8}.pagination-info[data-v-37f3a04c]{font-size:13px;color:#8c8c8c}.pagination-controls[data-v-37f3a04c]{display:flex;gap:8px;align-items:center}.page-btn[data-v-37f3a04c]{padding:6px 12px;background:#f0f2f5;border:1px solid #d9d9d9;border-radius:6px;color:#333;cursor:pointer;font-size:13px;transition:all .2s}.page-btn[data-v-37f3a04c]:hover:not(:disabled){background:#e8e8e8;border-color:#1677ff;color:#1677ff}.page-btn[data-v-37f3a04c]:disabled{opacity:.4;cursor:not-allowed}.page-numbers[data-v-37f3a04c]{display:flex;gap:4px}.page-number[data-v-37f3a04c]{padding:6px 12px;background:#f0f2f5;border:1px solid #d9d9d9;border-radius:6px;color:#333;cursor:pointer;font-size:13px;transition:all .2s}.page-number[data-v-37f3a04c]:hover{border-color:#1677ff;color:#1677ff}.page-number.active[data-v-37f3a04c]{background:#1677ff;border-color:#1677ff;color:#fff}.page-size-select[data-v-37f3a04c]{padding:6px 10px;background:#f0f2f5;border:1px solid #d9d9d9;border-radius:6px;color:#333;font-size:13px;cursor:pointer;outline:none}.page-size-select option[data-v-37f3a04c]{background:#f0f2f5;color:#333}.type-tag[data-v-37f3a04c]{font-size:12px;font-weight:600;padding:3px 10px;border-radius:4px;letter-spacing:.5px;display:inline-block}.type-pension[data-v-37f3a04c]{color:#722ed1;background:#722ed11f}.type-education[data-v-37f3a04c]{color:#13c2c2;background:#13c2c21f}.type-critical_illness[data-v-37f3a04c]{color:#ff4d4f;background:#ff4d4f1f}.type-medical[data-v-37f3a04c]{color:#52c41a;background:#52c41a1f}.type-accident[data-v-37f3a04c]{color:#faad14;background:#faad141f}.type-life_value[data-v-37f3a04c]{color:#1677ff;background:#1677ff1f}.status-badge[data-v-37f3a04c]{font-size:12px;font-weight:500;padding:3px 10px;border-radius:10px;display:inline-block}.status-active[data-v-37f3a04c]{color:#52c41a;background:#52c41a1f}.status-paid_up[data-v-37f3a04c]{color:#1677ff;background:#1677ff1f}.status-expired[data-v-37f3a04c]{color:#ff4d4f;background:#ff4d4f1f}.status-lapsed[data-v-37f3a04c]{color:#faad14;background:#faad141f}.status-cancelled[data-v-37f3a04c]{color:#8c8c8c;background:#9999991f}.payment-action-row[data-v-37f3a04c]{display:flex;gap:4px;margin-top:6px}.mark-renewed-btn[data-v-37f3a04c]{padding:2px 8px;font-size:11px;border-radius:4px;border:1px solid #52c41a;background:#52c41a14;color:#52c41a;cursor:pointer;font-weight:500;transition:all .2s}.mark-renewed-btn[data-v-37f3a04c]:hover{background:#52c41a33}.mark-paidup-btn[data-v-37f3a04c]{padding:2px 8px;font-size:11px;border-radius:4px;border:1px solid #1677ff;background:#1677ff14;color:#1677ff;cursor:pointer;font-weight:500;transition:all .2s}.mark-paidup-btn[data-v-37f3a04c]:hover{background:#1677ff33}.due-soon-text[data-v-37f3a04c]{color:#faad14;font-weight:500}.due-soon-tag[data-v-37f3a04c]{font-size:11px;background:#faad1426;color:#faad14;padding:1px 6px;border-radius:3px;margin-left:6px;font-weight:500}.pay-status-badge[data-v-37f3a04c]{font-size:12px;font-weight:600}.mark-paid-btn[data-v-37f3a04c]{padding:2px 8px;font-size:11px;border-radius:4px;border:1px solid #52c41a;background:#52c41a14;color:#52c41a;cursor:pointer;font-weight:500;transition:all .2s;margin-top:4px}.mark-paid-btn[data-v-37f3a04c]:hover{background:#52c41a40}.modal-overlay[data-v-37f3a04c]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content[data-v-37f3a04c]{background:#f0f2f5;width:580px;max-width:95vw;max-height:90vh;overflow-y:auto;border-radius:12px;border:1px solid #d9d9d9;box-shadow:0 10px 30px #00000080}.modal-header[data-v-37f3a04c]{padding:16px 24px;border-bottom:1px solid #d9d9d9;display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-37f3a04c]{margin:0;color:#1a1a1a;font-size:18px}.close-icon[data-v-37f3a04c]{color:#8c8c8c;font-size:24px;cursor:pointer;line-height:1}.close-icon[data-v-37f3a04c]:hover{color:#1a1a1a}.modal-body[data-v-37f3a04c]{padding:24px}.form-row[data-v-37f3a04c]{display:flex;gap:16px;margin-bottom:0}.form-row .form-group[data-v-37f3a04c],.form-row-3 .form-group[data-v-37f3a04c]{flex:1}.form-group[data-v-37f3a04c]{margin-bottom:16px}.form-group label[data-v-37f3a04c]{display:block;color:#595959;margin-bottom:8px;font-size:14px}.required[data-v-37f3a04c]{color:#ff4d4f}.form-hint[data-v-37f3a04c]{font-size:12px;color:#8c8c8c;margin:4px 0 0}.form-group input[data-v-37f3a04c],.form-group textarea[data-v-37f3a04c],.form-group select[data-v-37f3a04c]{width:100%;padding:10px;background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#333;font-size:14px;outline:none;box-sizing:border-box;font-family:inherit;transition:border-color .2s}.form-group select[data-v-37f3a04c]{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238c8c8c' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px;cursor:pointer}.form-group select option[data-v-37f3a04c]{background:#fff;color:#333}.form-group input[data-v-37f3a04c]:focus,.form-group textarea[data-v-37f3a04c]:focus,.form-group select[data-v-37f3a04c]:focus{border-color:#1677ff}.form-group input[data-v-37f3a04c]::placeholder,.form-group textarea[data-v-37f3a04c]::placeholder{color:#bfbfbf}.form-group input[type=date][data-v-37f3a04c]::-webkit-calendar-picker-indicator,.form-group input[type=month][data-v-37f3a04c]::-webkit-calendar-picker-indicator{cursor:pointer}.payment-end-row[data-v-37f3a04c]{display:flex;gap:8px;align-items:center}.payment-end-row input[type=month][data-v-37f3a04c]{flex:1}.modal-footer[data-v-37f3a04c]{padding:16px 24px;border-top:1px solid #d9d9d9;display:flex;justify-content:flex-end;gap:12px}.cancel-btn[data-v-37f3a04c],.save-btn[data-v-37f3a04c]{padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px;border:none;transition:all .2s}.cancel-btn[data-v-37f3a04c]{background:transparent;color:#595959;border:1px solid #d9d9d9}.cancel-btn[data-v-37f3a04c]:hover{background:#e8e8e8;color:#333}.save-btn[data-v-37f3a04c]{background:#1677ff;color:#fff}.save-btn[data-v-37f3a04c]:hover{background:#4096ff}.save-btn[data-v-37f3a04c]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.policies-page[data-v-37f3a04c]{padding:16px}.filter-bar[data-v-37f3a04c]{flex-direction:column;align-items:stretch}.status-filters[data-v-37f3a04c]{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.policy-grid[data-v-37f3a04c]{grid-template-columns:1fr}.form-row[data-v-37f3a04c],.form-row-3[data-v-37f3a04c]{flex-direction:column;gap:0}.card-actions[data-v-37f3a04c]{opacity:1}.modal-content[data-v-37f3a04c]{width:95vw}.renewal-banner[data-v-37f3a04c]{padding:12px 14px}.renewal-list[data-v-37f3a04c]{flex-direction:column}}.reminders-page[data-v-279fb573]{max-width:800px;margin:0 auto;padding:20px 16px 40px;min-height:100vh;background:#f5f7fa;color:#333}.page-header[data-v-279fb573]{margin-bottom:20px}.page-title[data-v-279fb573]{font-size:22px;font-weight:600;color:#1a1a1a}.page-subtitle[data-v-279fb573]{font-size:13px;color:#bfbfbf;margin-top:4px}.tab-bar[data-v-279fb573]{display:flex;border-bottom:1px solid #f0f2f5;margin-bottom:20px}.tab-btn[data-v-279fb573]{flex:1;background:none;border:none;border-bottom:2px solid transparent;padding:12px 0;font-size:15px;color:#8c8c8c;cursor:pointer;transition:color .2s,border-color .2s}.tab-btn[data-v-279fb573]:hover{color:#595959}.tab-btn.active[data-v-279fb573]{color:#1677ff;border-bottom:2px solid #1677ff}.loading-state[data-v-279fb573]{text-align:center;padding:48px 0;color:#bfbfbf;font-size:14px}.empty-hint[data-v-279fb573]{text-align:center;padding:20px 0;color:#bfbfbf;font-size:13px}.rules-header-row[data-v-279fb573]{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.rules-count[data-v-279fb573]{font-size:13px;color:#8c8c8c}.add-rule-btn[data-v-279fb573]{padding:8px 18px;font-size:13px}.schedule-bar[data-v-279fb573]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#fff;border-radius:10px;padding:12px 16px;margin-bottom:14px}.schedule-left[data-v-279fb573]{display:flex;align-items:center;gap:12px}.schedule-label[data-v-279fb573]{font-size:13px;color:#262626;font-weight:500}.schedule-time[data-v-279fb573]{padding:6px 10px;font-size:13px;border:1px solid #d9d9d9;border-radius:6px;color:#262626;background:#fff}.schedule-time[data-v-279fb573]:disabled{background:#f5f5f5;color:#bfbfbf;cursor:not-allowed}.schedule-save-btn[data-v-279fb573]{padding:7px 16px;font-size:13px}.schedule-save-btn[data-v-279fb573]:disabled{opacity:.6;cursor:not-allowed}.schedule-hint[data-v-279fb573]{font-size:12px;color:#8c8c8c}.rule-card[data-v-279fb573]{background:#fff;border-radius:10px;padding:16px;margin-bottom:12px}.rule-top-row[data-v-279fb573]{display:flex;align-items:center;justify-content:space-between}.rule-title-row[data-v-279fb573]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rule-name[data-v-279fb573]{font-size:16px;font-weight:600;color:#333}.rule-desc[data-v-279fb573]{font-size:13px;color:#8c8c8c;margin-top:6px}.badge[data-v-279fb573]{display:inline-block;font-size:11px;padding:2px 8px;border-radius:10px}.system-badge[data-v-279fb573]{background:#d9e0ea;color:#5a9ef5}.type-badge[data-v-279fb573]{background:#f0f2f5;color:#8c8c8c}.rule-actions-row[data-v-279fb573]{display:flex;align-items:center;gap:8px}.icon-btn[data-v-279fb573]{background:none;border:none;color:#8c8c8c;font-size:16px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .15s,color .15s}.icon-btn[data-v-279fb573]:hover{background:#e8e8e8;color:#333}.icon-btn.danger[data-v-279fb573]:hover{background:#fff1f0;color:#ff4d4f}.rule-config-summary[data-v-279fb573]{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.config-chip[data-v-279fb573]{font-size:12px;background:#f0f2f5;color:#595959;padding:3px 10px;border-radius:12px}.toggle-switch[data-v-279fb573]{position:relative;display:inline-block;width:40px;height:22px;cursor:pointer}.toggle-switch input[data-v-279fb573]{opacity:0;width:0;height:0;position:absolute}.toggle-slider[data-v-279fb573]{position:absolute;top:0;left:0;right:0;bottom:0;background:#bfbfbf;border-radius:22px;transition:background .25s}.toggle-slider[data-v-279fb573]:before{content:"";position:absolute;width:16px;height:16px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:transform .25s}.toggle-switch input:checked+.toggle-slider[data-v-279fb573]{background:#1677ff}.toggle-switch input:checked+.toggle-slider[data-v-279fb573]:before{transform:translate(18px)}.preview-section[data-v-279fb573]{background:#fff;border-radius:10px;padding:16px;margin-bottom:14px}.preview-header[data-v-279fb573]{display:flex;align-items:center;gap:10px;margin-bottom:12px}.preview-title[data-v-279fb573]{font-size:15px;font-weight:600;color:#333}.preview-count[data-v-279fb573]{font-size:13px;color:#8c8c8c}.preview-actions-row[data-v-279fb573]{margin-top:10px}.plan-status-bar[data-v-279fb573]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#fff;border-radius:10px;padding:12px 16px;margin-bottom:14px}.plan-status-left[data-v-279fb573]{display:flex;align-items:center;gap:10px}.plan-date-input[data-v-279fb573]{padding:5px 10px;font-size:13px;border:1px solid #d9d9d9;border-radius:6px;color:#262626;background:#fff}.plan-status-text[data-v-279fb573]{font-size:12px;color:#8c8c8c}.plan-status-actions[data-v-279fb573]{display:flex;align-items:center;gap:12px}.rule-paused[data-v-279fb573]{opacity:.6}.rule-paused-badge[data-v-279fb573]{display:inline-block;font-size:11px;background:#fff7e6;color:#d46b08;padding:2px 8px;border-radius:8px;border:1px solid #ffd591}.rule-pause-btn[data-v-279fb573]{color:#d46b08}.customer-paused[data-v-279fb573]{opacity:.55}.customer-paused-badge[data-v-279fb573]{display:inline-block;font-size:11px;background:#fff7e6;color:#d46b08;padding:1px 8px;border-radius:8px;border:1px solid #ffd591;margin-left:6px}.customer-pause-btn[data-v-279fb573]{color:#d46b08;margin-right:auto;font-size:12px}.rule-pause-btn[data-v-279fb573]:hover{color:#fa8c16}.policy-count-badge[data-v-279fb573]{display:inline-block;font-size:11px;background:#e8f4ff;color:#1677ff;padding:1px 7px;border-radius:8px;margin-left:6px;font-weight:400}.preview-contact[data-v-279fb573]{font-size:12px;color:#8c8c8c;margin-top:4px;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.preview-message[data-v-279fb573]{font-size:12px;color:#595959;margin-top:6px;background:#f6f8fa;border-radius:6px;padding:8px 10px;line-height:1.5;white-space:pre-wrap}.trigger-btn[data-v-279fb573]{margin-left:auto;background:#1677ff;color:#fff;border:none;border-radius:6px;padding:6px 14px;font-size:13px;cursor:pointer;transition:opacity .2s}.trigger-btn[data-v-279fb573]:hover{opacity:.85}.trigger-btn[data-v-279fb573]:disabled{opacity:.5;cursor:not-allowed}.trigger-btn-sm[data-v-279fb573]{margin-left:0;padding:4px 12px;font-size:12px}.preview-card-actions[data-v-279fb573]{margin-top:8px;display:flex;justify-content:flex-end}.preview-list[data-v-279fb573]{display:flex;flex-direction:column;gap:8px}.preview-card[data-v-279fb573]{background:#fafafa;border-radius:8px;padding:10px 14px}.preview-name[data-v-279fb573]{font-size:14px;font-weight:500;color:#333;margin-bottom:4px}.preview-meta[data-v-279fb573]{font-size:12px;color:#8c8c8c;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.meta-divider[data-v-279fb573]{color:#d9d9d9;margin:0 4px}.mass-section[data-v-279fb573]{background:#fff;border-radius:10px;padding:16px;margin-bottom:14px}.mass-select-header[data-v-279fb573]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.mass-label[data-v-279fb573]{font-size:14px;font-weight:500;color:#333}.select-actions[data-v-279fb573]{display:flex;align-items:center;gap:4px}.link-btn[data-v-279fb573]{background:none;border:none;color:#1677ff;font-size:13px;cursor:pointer;padding:0}.link-btn[data-v-279fb573]:hover{text-decoration:underline}.link-divider[data-v-279fb573]{color:#d9d9d9;font-size:13px}.customer-checkbox-list[data-v-279fb573]{max-height:320px;overflow-y:auto;border:1px solid #e8e8e8;border-radius:8px}.customer-checkbox-list[data-v-279fb573]::-webkit-scrollbar{width:6px}.customer-checkbox-list[data-v-279fb573]::-webkit-scrollbar-track{background:#fafafa}.customer-checkbox-list[data-v-279fb573]::-webkit-scrollbar-thumb{background:#d9d9d9;border-radius:3px}.customer-check-row[data-v-279fb573]{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;border-bottom:1px solid #f0f2f5;transition:background .15s}.customer-check-row[data-v-279fb573]:last-child{border-bottom:none}.customer-check-row[data-v-279fb573]:hover{background:#f0f2f5}.customer-check-row.checked[data-v-279fb573]{background:#e8ecf3}.custom-checkbox[data-v-279fb573]{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.custom-checkbox input[data-v-279fb573]{opacity:0;width:0;height:0;position:absolute}.checkmark[data-v-279fb573]{width:18px;height:18px;border:2px solid #d9d9d9;border-radius:4px;background:#fff;display:inline-block;position:relative;transition:background .2s,border-color .2s}.custom-checkbox input:checked~.checkmark[data-v-279fb573]{background:#1677ff;border-color:#1677ff}.checkmark[data-v-279fb573]:after{content:"";position:absolute;display:none;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.custom-checkbox input:checked~.checkmark[data-v-279fb573]:after{display:block}.customer-info[data-v-279fb573]{display:flex;align-items:center;gap:8px;min-width:0}.customer-name[data-v-279fb573]{font-size:14px;color:#333;white-space:nowrap}.customer-wechat[data-v-279fb573]{font-size:12px;color:#bfbfbf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mass-textarea[data-v-279fb573]{min-height:120px}.delay-row[data-v-279fb573]{display:flex;align-items:center;gap:10px}.delay-row .form-label[data-v-279fb573]{margin-bottom:0;white-space:nowrap}.delay-row .form-input[data-v-279fb573]{width:80px}.delay-row .form-hint[data-v-279fb573]{margin-left:0}.mass-send-row[data-v-279fb573]{display:flex;align-items:center;gap:14px;margin-top:6px}.send-btn[data-v-279fb573]{min-width:120px}.mass-result[data-v-279fb573]{font-size:13px;color:#52c41a}.mass-result.error[data-v-279fb573]{color:#ff4d4f}.form-row[data-v-279fb573]{margin-bottom:14px}.form-label[data-v-279fb573]{display:block;font-size:13px;color:#8c8c8c;margin-bottom:6px}.form-input[data-v-279fb573]{background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#333;padding:8px 12px;font-size:14px;outline:none;transition:border-color .2s}.form-input[data-v-279fb573]:focus{border-color:#1677ff}.full-input[data-v-279fb573]{width:100%;box-sizing:border-box}.number-input[data-v-279fb573]{width:80px;display:inline-block;vertical-align:middle}.form-hint[data-v-279fb573]{display:inline-block;font-size:12px;color:#bfbfbf;margin-left:10px;vertical-align:middle}.form-textarea[data-v-279fb573]{width:100%;background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#333;padding:10px 12px;font-size:14px;resize:vertical;outline:none;box-sizing:border-box;font-family:inherit;transition:border-color .2s}.form-textarea[data-v-279fb573]:focus{border-color:#1677ff}.template-vars[data-v-279fb573]{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.var-chip[data-v-279fb573]{display:inline-block;padding:3px 10px;background:#f0f5ff;border:1px solid #adc6ff;border-radius:4px;font-size:12px;color:#2f54eb;cursor:pointer;transition:background .2s}.var-chip[data-v-279fb573]:hover{background:#d6e4ff}.primary-btn[data-v-279fb573]{background:#1677ff;color:#fff;border:none;border-radius:8px;padding:10px 28px;font-size:15px;font-weight:500;cursor:pointer;transition:opacity .2s}.primary-btn[data-v-279fb573]:hover{opacity:.85}.primary-btn[data-v-279fb573]:disabled{opacity:.5;cursor:not-allowed}.cancel-btn[data-v-279fb573]{background:#e8e8e8;color:#333;border:none;border-radius:8px;padding:10px 24px;font-size:14px;cursor:pointer;transition:opacity .2s}.cancel-btn[data-v-279fb573]:hover{opacity:.85}.modal-overlay[data-v-279fb573]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-279fb573]{background:#fff;border-radius:12px;width:520px;max-width:90vw;max-height:85vh;overflow-y:auto;box-shadow:0 8px 32px #0006;border:1px solid #e8e8e8}.modal-header[data-v-279fb573]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e8e8e8}.modal-title[data-v-279fb573]{font-size:17px;font-weight:600;color:#333}.modal-close[data-v-279fb573]{background:none;border:none;color:#8c8c8c;font-size:22px;cursor:pointer;padding:0 4px;line-height:1}.modal-close[data-v-279fb573]:hover{color:#333}.modal-body[data-v-279fb573]{padding:20px}.modal-footer[data-v-279fb573]{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid #e8e8e8}.toast-message[data-v-279fb573]{position:fixed;bottom:32px;left:50%;transform:translate(-50%);padding:10px 24px;border-radius:8px;font-size:14px;font-weight:500;z-index:300;box-shadow:0 4px 16px #0000001f;animation:toast-in-279fb573 .25s ease}.toast-message.success[data-v-279fb573]{background:#fff;color:#52c41a;border:1px solid #e8e8e8}.toast-message.error[data-v-279fb573]{background:#fff;color:#ff4d4f;border:1px solid #e8e8e8}@keyframes toast-in-279fb573{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.batch-page[data-v-6889c095]{padding:20px;max-width:1200px;margin:0 auto;background:#f5f7fa;min-height:100vh}.page-header[data-v-6889c095]{margin-bottom:20px}.page-title[data-v-6889c095]{font-size:24px;font-weight:700;color:#1a1a1a;margin-bottom:4px}.page-subtitle[data-v-6889c095]{font-size:14px;color:#8c8c8c}.filter-bar[data-v-6889c095]{display:flex;align-items:flex-end;gap:12px;background:#fff;padding:16px 20px;border-radius:8px;margin-bottom:20px;box-shadow:0 1px 3px #0000000f}.filter-group[data-v-6889c095]{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.filter-group label[data-v-6889c095]{font-size:12px;color:#8c8c8c;font-weight:500}.filter-input[data-v-6889c095]{padding:6px 10px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;background:#fff}.filter-days[data-v-6889c095]{width:72px}.filter-row[data-v-6889c095]{display:flex;align-items:center;gap:4px}.filter-hint[data-v-6889c095]{font-size:12px;color:#8c8c8c;white-space:nowrap}.filter-operator[data-v-6889c095]{min-width:140px}.filter-action[data-v-6889c095]{margin-left:auto;flex-shrink:0}.primary-btn[data-v-6889c095]{padding:8px 20px;background:#1677ff;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background .2s}.primary-btn[data-v-6889c095]:hover{background:#4096ff}.primary-btn[data-v-6889c095]:disabled{background:#bfbfbf;cursor:not-allowed}.results-section[data-v-6889c095]{background:#fff;border-radius:8px;padding:16px 20px;margin-bottom:20px;box-shadow:0 1px 3px #0000000f}.results-header[data-v-6889c095]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.results-count[data-v-6889c095]{font-size:14px;font-weight:500}.results-hint[data-v-6889c095]{font-size:12px;color:#8c8c8c;font-weight:400}.results-actions[data-v-6889c095]{display:flex;gap:4px;align-items:center}.link-btn[data-v-6889c095]{background:none;border:none;color:#1677ff;cursor:pointer;font-size:13px}.link-btn[data-v-6889c095]:hover{text-decoration:underline}.link-divider[data-v-6889c095]{color:#d9d9d9;margin:0 2px}.empty-state[data-v-6889c095]{text-align:center;padding:40px 0;color:#8c8c8c;font-size:14px}.results-table[data-v-6889c095]{width:100%;border-collapse:collapse;font-size:13px}.results-table th[data-v-6889c095]{text-align:left;padding:8px 10px;background:#fafafa;color:#8c8c8c;font-weight:500;font-size:12px;border-bottom:1px solid #f0f0f0}.results-table td[data-v-6889c095]{padding:10px;border-bottom:1px solid #f5f5f5;vertical-align:middle}.results-table tr.no-contact[data-v-6889c095]{opacity:.5}.col-check[data-v-6889c095]{width:36px;text-align:center}.mono[data-v-6889c095]{font-family:SF Mono,Menlo,monospace;font-size:12px}.contact-tag[data-v-6889c095]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px}.contact-tag.group[data-v-6889c095]{background:#e6f4ff;color:#0958d9}.contact-tag.personal[data-v-6889c095]{background:#f6ffed;color:#389e0d}.contact-tag.none[data-v-6889c095]{background:#f5f5f5;color:#bfbfbf}.send-section[data-v-6889c095]{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 1px 3px #0000000f}.send-header[data-v-6889c095]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.send-title[data-v-6889c095]{font-size:16px;font-weight:500}.send-count[data-v-6889c095]{font-size:13px;color:#1677ff;font-weight:500}.template-area label[data-v-6889c095]{display:block;font-size:12px;color:#8c8c8c;margin-bottom:4px}.template-input[data-v-6889c095]{width:100%;padding:10px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;line-height:1.6;resize:vertical;box-sizing:border-box;font-family:inherit}.template-input[data-v-6889c095]:focus{outline:none;border-color:#1677ff;box-shadow:0 0 0 2px #1677ff1a}.template-vars[data-v-6889c095]{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.var-chip[data-v-6889c095]{display:inline-block;padding:3px 10px;background:#f0f5ff;border:1px solid #adc6ff;border-radius:4px;font-size:12px;color:#2f54eb;cursor:pointer;transition:all .2s}.var-chip[data-v-6889c095]:hover{background:#d6e4ff}.merge-area[data-v-6889c095]{margin-top:12px;padding:8px 0}.checkbox-option[data-v-6889c095]{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:14px;color:#595959}.checkbox-option input[type=checkbox][data-v-6889c095]{width:16px;height:16px;accent-color:#1677ff}.schedule-area[data-v-6889c095]{margin-top:16px;padding:12px 0}.schedule-label[data-v-6889c095]{display:block;font-size:12px;color:#8c8c8c;margin-bottom:8px}.schedule-options[data-v-6889c095]{display:flex;gap:16px}.radio-option[data-v-6889c095]{display:flex;align-items:center;gap:6px;cursor:pointer;padding:6px 14px;border-radius:6px;border:1px solid #d9d9d9;background:#fff;transition:all .2s;font-size:14px}.radio-option[data-v-6889c095]:hover{border-color:#91caff}.radio-option.active[data-v-6889c095]{border-color:#1677ff;background:#e6f4ff;color:#1677ff}.radio-option input[type=radio][data-v-6889c095]{accent-color:#1677ff}.radio-text[data-v-6889c095]{font-size:14px}.schedule-time[data-v-6889c095]{margin-top:10px;display:flex;align-items:center;gap:8px}.time-input[data-v-6889c095]{padding:6px 10px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;background:#fff;color:#1a1a1a}.time-input[data-v-6889c095]:focus{outline:none;border-color:#1677ff;box-shadow:0 0 0 2px #1677ff1a}.time-hint[data-v-6889c095]{font-size:12px;color:#8c8c8c}.send-footer[data-v-6889c095]{margin-top:16px;display:flex;justify-content:flex-end}.send-btn[data-v-6889c095]{padding:10px 28px;font-size:15px}.toast[data-v-6889c095]{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:10px 24px;border-radius:8px;font-size:14px;color:#fff;z-index:1000;box-shadow:0 4px 12px #00000026}.toast.success[data-v-6889c095]{background:#52c41a}.toast.error[data-v-6889c095]{background:#ff4d4f}.task-runs-page[data-v-e97caa88]{padding:24px;max-width:960px;margin:0 auto;min-height:100vh;background:#f5f7fa;color:#333}.page-header[data-v-e97caa88]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.page-title[data-v-e97caa88]{font-size:22px;font-weight:700;color:#1a1a1a}.page-subtitle[data-v-e97caa88]{font-size:13px;color:#bfbfbf;margin-top:2px}.refresh-btn[data-v-e97caa88]{background:#fff;border:1px solid #d9d9d9;border-radius:8px;padding:8px 12px;cursor:pointer;font-size:18px;color:#595959;transition:all .2s}.refresh-btn[data-v-e97caa88]:hover{background:#f0f2f5;color:#1677ff}.refresh-icon[data-v-e97caa88]{display:inline-block}.refresh-icon.spinning[data-v-e97caa88]{animation:spin-e97caa88 1s linear infinite}@keyframes spin-e97caa88{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.date-nav[data-v-e97caa88]{display:flex;align-items:center;gap:10px;margin-bottom:16px;background:#fff;padding:12px 16px;border-radius:10px;border:1px solid #e8e8e8}.date-nav-btn[data-v-e97caa88]{background:none;border:1px solid #d9d9d9;border-radius:6px;padding:6px 14px;font-size:16px;color:#595959;cursor:pointer;transition:all .2s}.date-nav-btn[data-v-e97caa88]:hover:not(:disabled){background:#f0f2f5;color:#1677ff;border-color:#1677ff}.date-nav-btn[data-v-e97caa88]:disabled{opacity:.3;cursor:not-allowed}.date-display[data-v-e97caa88]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .2s}.date-display[data-v-e97caa88]:hover{background:#f0f2f5}.date-text[data-v-e97caa88]{font-size:15px;font-weight:600;color:#333}.today-badge[data-v-e97caa88]{font-size:11px;background:#1677ff1a;color:#1677ff;padding:2px 8px;border-radius:10px;font-weight:500}.date-picker-input[data-v-e97caa88]{position:absolute;opacity:0;width:0;height:0}.goto-today-btn[data-v-e97caa88]{background:none;border:1px solid #1677ff;color:#1677ff;border-radius:6px;padding:4px 12px;font-size:12px;cursor:pointer;transition:all .2s}.goto-today-btn[data-v-e97caa88]:hover{background:#1677ff;color:#fff}.stats-row[data-v-e97caa88]{display:flex;gap:16px;margin-bottom:16px}.stat-item[data-v-e97caa88]{flex:1;background:#fff;border:1px solid #e8e8e8;border-radius:10px;padding:14px 16px;text-align:center}.stat-value[data-v-e97caa88]{display:block;font-size:24px;font-weight:700;color:#333}.stat-label[data-v-e97caa88]{display:block;font-size:12px;color:#8c8c8c;margin-top:2px}.stat-success .stat-value[data-v-e97caa88]{color:#52c41a}.stat-error .stat-value[data-v-e97caa88]{color:#ff4d4f}.loading-state[data-v-e97caa88]{text-align:center;padding:48px 0;color:#8c8c8c;font-size:14px}.empty-state[data-v-e97caa88]{text-align:center;padding:60px 0;color:#8c8c8c}.empty-icon[data-v-e97caa88]{font-size:48px;margin-bottom:12px;opacity:.4}.run-list[data-v-e97caa88]{display:flex;flex-direction:column;gap:10px}.run-card[data-v-e97caa88]{background:#fff;border:1px solid #e8e8e8;border-radius:10px;overflow:hidden;cursor:pointer;transition:all .2s}.run-card[data-v-e97caa88]:hover{border-color:#bfbfbf;box-shadow:0 2px 8px #0000000f}.run-card-main[data-v-e97caa88]{display:flex;align-items:flex-start;padding:14px 16px;gap:12px}.run-left[data-v-e97caa88]{padding-top:6px;flex-shrink:0}.run-status-dot[data-v-e97caa88]{display:inline-block;width:10px;height:10px;border-radius:50%;background:#d9d9d9}.dot-finished[data-v-e97caa88]{background:#52c41a}.dot-error[data-v-e97caa88]{background:#ff4d4f}.dot-cancelled[data-v-e97caa88]{background:#faad14}.dot-idle[data-v-e97caa88]{background:#8c8c8c}.dot-running[data-v-e97caa88]{background:#1677ff;animation:pulse-e97caa88 1.5s infinite}@keyframes pulse-e97caa88{0%,to{opacity:1}50%{opacity:.4}}.run-info[data-v-e97caa88]{flex:1;min-width:0}.run-title-row[data-v-e97caa88]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.run-task-name[data-v-e97caa88]{font-size:15px;font-weight:600;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-status-badge[data-v-e97caa88]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;flex-shrink:0}.badge-finished[data-v-e97caa88]{background:#52c41a1f;color:#52c41a}.badge-error[data-v-e97caa88]{background:#ff4d4f1f;color:#ff4d4f}.badge-cancelled[data-v-e97caa88]{background:#faad141f;color:#faad14}.badge-idle[data-v-e97caa88]{background:#8c8c8c1f;color:#8c8c8c}.badge-running[data-v-e97caa88]{background:#1677ff1f;color:#1677ff}.run-meta[data-v-e97caa88]{display:flex;align-items:center;gap:6px;font-size:12px;color:#8c8c8c;margin-bottom:4px;flex-wrap:wrap}.meta-sep[data-v-e97caa88]{color:#d9d9d9}.device-meta[data-v-e97caa88]{font-family:monospace;font-size:11px}.run-summary[data-v-e97caa88]{font-size:12px;color:#595959;line-height:1.5;margin-top:4px;word-break:break-all}.run-error[data-v-e97caa88]{font-size:12px;color:#ff4d4f;line-height:1.5;margin-top:4px;word-break:break-all}.run-expand-icon[data-v-e97caa88]{flex-shrink:0;font-size:10px;color:#bfbfbf;padding-top:8px;transition:transform .2s}.run-expand-icon.expanded[data-v-e97caa88]{transform:rotate(180deg)}.run-detail[data-v-e97caa88]{border-top:1px solid #f0f2f5;padding:16px;background:#fafbfc}.detail-loading[data-v-e97caa88],.detail-error[data-v-e97caa88]{text-align:center;color:#8c8c8c;font-size:13px;padding:12px}.detail-error[data-v-e97caa88]{color:#ff4d4f}.detail-content[data-v-e97caa88]{display:flex;flex-direction:column;gap:12px}.detail-section[data-v-e97caa88]{display:flex;flex-direction:column;gap:4px}.detail-label[data-v-e97caa88]{font-size:11px;color:#8c8c8c;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.detail-value[data-v-e97caa88]{font-size:13px;color:#333;word-break:break-all;font-family:monospace}.detail-value.error-text[data-v-e97caa88]{color:#ff4d4f}.detail-value.empty-text[data-v-e97caa88]{color:#bfbfbf;font-style:italic;font-family:inherit}.history-list[data-v-e97caa88]{display:flex;flex-direction:column;gap:8px;margin-top:4px}.history-step[data-v-e97caa88]{background:#fff;border:1px solid #e8e8e8;border-radius:6px;padding:10px 12px}.history-step.border-error[data-v-e97caa88]{border-color:#ff4d4f59}.history-step.border-ok[data-v-e97caa88]{border-color:#52c41a40}.history-step.border-skipped[data-v-e97caa88]{border-color:#8c8c8c4d}.step-header[data-v-e97caa88]{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}.step-number[data-v-e97caa88]{font-size:11px;color:#8c8c8c;font-weight:600}.step-type[data-v-e97caa88]{font-size:12px;color:#1677ff;font-weight:500;background:#1677ff14;padding:1px 6px;border-radius:3px}.step-action[data-v-e97caa88]{font-size:12px;color:#595959;background:#f5f5f5;padding:1px 6px;border-radius:3px}.step-status[data-v-e97caa88]{font-size:11px;padding:1px 6px;border-radius:3px;margin-left:auto}.step-done[data-v-e97caa88]{background:#8c8c8c1f;color:#8c8c8c}.step-ok[data-v-e97caa88]{background:#52c41a1a;color:#52c41a}.step-error[data-v-e97caa88]{background:#ff4d4f1a;color:#ff4d4f}.step-running[data-v-e97caa88]{background:#1677ff1a;color:#1677ff}.step-skipped[data-v-e97caa88]{background:#faad141f;color:#d48806}.step-content[data-v-e97caa88]{font-size:12px;color:#595959;line-height:1.5;margin-top:6px;word-break:break-word}.step-reason[data-v-e97caa88]{color:#8c8c8c}.step-field-label[data-v-e97caa88]{display:inline-block;min-width:32px;margin-right:6px;font-size:11px;color:#bfbfbf;font-weight:600}.step-result[data-v-e97caa88]{font-size:12px;color:#595959;line-height:1.45;margin-top:6px;padding:8px 10px;background:#fafafa;border-radius:4px;word-break:break-word}.edge-page[data-v-9b080cbd]{max-width:920px;margin:0 auto}.page-header[data-v-9b080cbd]{margin-bottom:20px}.page-title[data-v-9b080cbd]{font-size:24px;font-weight:700;color:#1a1a1a;margin-bottom:8px}.page-subtitle[data-v-9b080cbd]{font-size:14px;color:#8c8c8c;line-height:1.5}.card[data-v-9b080cbd]{background:#fff;border:1px solid #ececec;border-radius:12px;padding:20px;margin-bottom:16px}.card-title[data-v-9b080cbd]{font-size:16px;font-weight:600;margin-bottom:16px}.empty-state[data-v-9b080cbd],.empty-block[data-v-9b080cbd]{padding:24px 0;color:#666}.info-grid[data-v-9b080cbd]{display:flex;flex-direction:column;gap:12px}.info-row[data-v-9b080cbd]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.label[data-v-9b080cbd]{width:110px;color:#8c8c8c;font-size:13px;flex-shrink:0}.value[data-v-9b080cbd]{color:#222;font-size:14px}.mono[data-v-9b080cbd]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.actions[data-v-9b080cbd]{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}.ghost-btn[data-v-9b080cbd]{border-radius:8px;padding:10px 16px;font-size:14px;cursor:pointer;background:#fafafa;border:1px solid #d9d9d9;color:#333}.ghost-btn[data-v-9b080cbd]:disabled{opacity:.6;cursor:not-allowed}.status-badge[data-v-9b080cbd]{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:12px}.status-badge.on[data-v-9b080cbd]{background:#f6ffed;color:#389e0d}.status-badge.off[data-v-9b080cbd]{background:#f5f5f5;color:#8c8c8c}.hint[data-v-9b080cbd]{color:#8c8c8c;font-size:12px}.env-box[data-v-9b080cbd]{margin-top:18px;background:#0f172a;color:#e2e8f0;border-radius:10px;padding:14px}.env-title[data-v-9b080cbd]{font-size:12px;color:#94a3b8;margin-bottom:8px}.env-box pre[data-v-9b080cbd]{margin:0;white-space:pre-wrap;word-break:break-all;font-size:12px;line-height:1.6}.node-table[data-v-9b080cbd]{width:100%;border-collapse:collapse;font-size:13px}.node-table th[data-v-9b080cbd],.node-table td[data-v-9b080cbd]{text-align:left;padding:10px 8px;border-bottom:1px solid #f0f0f0}.node-table th[data-v-9b080cbd]{color:#8c8c8c;font-weight:500}.model-config-page[data-v-330c397e]{padding:24px;max-width:800px}.page-header h1[data-v-330c397e]{font-size:22px;margin-bottom:4px}.subtitle[data-v-330c397e]{color:#666;font-size:14px;margin-bottom:24px}.config-card[data-v-330c397e],.info-card[data-v-330c397e]{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:24px;margin-bottom:20px}.section-title[data-v-330c397e]{font-size:16px;font-weight:600;margin-bottom:6px}.section-desc[data-v-330c397e]{font-size:13px;color:#888;margin-bottom:16px}.form-grid[data-v-330c397e]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-item label[data-v-330c397e]{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:#333}.form-item input[data-v-330c397e],.form-item select[data-v-330c397e]{width:100%;padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;box-sizing:border-box}.form-item input[data-v-330c397e]:focus,.form-item select[data-v-330c397e]:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e51a}.actions[data-v-330c397e]{margin-top:24px;display:flex;align-items:center;gap:12px}.btn-save[data-v-330c397e]{padding:10px 24px;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer}.btn-save[data-v-330c397e]:disabled{opacity:.6;cursor:not-allowed}.btn-save[data-v-330c397e]:hover:not(:disabled){background:#4338ca}.save-msg[data-v-330c397e]{font-size:13px;color:#16a34a}.save-msg.error[data-v-330c397e]{color:#dc2626}.info-text p[data-v-330c397e]{font-size:13px;color:#555;line-height:1.8;margin-bottom:8px}.loading-state[data-v-330c397e]{padding:40px;text-align:center;color:#999}@media (max-width: 640px){.form-grid[data-v-330c397e]{grid-template-columns:1fr}}.user-management-page[data-v-7f4fed07]{color:#333;height:100%;overflow-y:auto}.page-header[data-v-7f4fed07]{margin-bottom:16px}.page-title[data-v-7f4fed07]{font-size:20px;margin-bottom:4px;font-weight:700;color:#1a1a1a}.page-subtitle[data-v-7f4fed07]{font-size:13px;color:#8c8c8c}.toolbar[data-v-7f4fed07]{display:flex;gap:10px;margin-bottom:16px}.btn-primary[data-v-7f4fed07]{padding:8px 16px;border-radius:6px;border:none;background:#1677ff;color:#fff;font-size:13px;cursor:pointer}.btn-primary[data-v-7f4fed07]:hover:not(:disabled){background:#4096ff}.btn-primary[data-v-7f4fed07]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-7f4fed07]{padding:8px 16px;border-radius:6px;border:1px solid #d9d9d9;background:#f0f2f5;color:#595959;font-size:13px;cursor:pointer}.btn-secondary[data-v-7f4fed07]:hover:not(:disabled){background:#e8e8e8}.btn-secondary[data-v-7f4fed07]:disabled{opacity:.5;cursor:not-allowed}.btn-small[data-v-7f4fed07]{padding:4px 10px;border-radius:4px;border:1px solid #d9d9d9;background:#f0f2f5;color:#595959;font-size:12px;cursor:pointer}.btn-small[data-v-7f4fed07]:hover{background:#e8e8e8}.btn-small+.btn-small[data-v-7f4fed07]{margin-left:6px}.btn-danger[data-v-7f4fed07]{border-color:#ffccc7;background:#fff1f0;color:#cf1322}.btn-success[data-v-7f4fed07]{border-color:#b7eb8f;background:#f6ffed;color:#389e0d}.error-banner[data-v-7f4fed07]{padding:10px 16px;border-radius:8px;margin-bottom:12px;font-size:13px;background:#ff4d4f1a;color:#ff4d4f;border:1px solid rgba(255,77,79,.3)}.user-table-wrapper[data-v-7f4fed07]{background:#fff;border-radius:12px;border:1px solid #e8e8e8;overflow:hidden}.user-table[data-v-7f4fed07]{width:100%;border-collapse:collapse}.user-table th[data-v-7f4fed07],.user-table td[data-v-7f4fed07]{padding:12px 16px;text-align:left;border-bottom:1px solid #e8e8e8;font-size:13px}.user-table th[data-v-7f4fed07]{background:#e8ecf3;color:#8c8c8c;font-weight:600;font-size:12px;text-transform:uppercase}.user-table tbody tr[data-v-7f4fed07]:hover{background:#f0f2f5}.empty-row[data-v-7f4fed07]{text-align:center;color:#bfbfbf;padding:40px 16px!important}.role-select[data-v-7f4fed07]{background:#f0f2f5;color:#333;border:1px solid #d9d9d9;padding:4px 8px;border-radius:4px;outline:none;font-size:12px}.status-badge[data-v-7f4fed07]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.status-badge.active[data-v-7f4fed07]{background:#52c41a33;color:#52c41a}.status-badge.inactive[data-v-7f4fed07]{background:#ff4d4f33;color:#ff4d4f}.modal-overlay[data-v-7f4fed07]{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-7f4fed07]{background:#fff;border:1px solid #e8e8e8;border-radius:12px;width:420px;max-width:90vw}.modal-header[data-v-7f4fed07]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e8e8e8}.modal-header h3[data-v-7f4fed07]{margin:0;font-size:16px;color:#1a1a1a}.modal-close[data-v-7f4fed07]{background:none;border:none;color:#8c8c8c;font-size:20px;cursor:pointer}.modal-body[data-v-7f4fed07]{padding:20px}.modal-footer[data-v-7f4fed07]{padding:12px 20px;border-top:1px solid #e8e8e8;display:flex;justify-content:flex-end;gap:10px}.form-group[data-v-7f4fed07]{margin-bottom:14px}.form-group label[data-v-7f4fed07]{display:block;font-size:12px;color:#8c8c8c;margin-bottom:6px}.form-group input[data-v-7f4fed07],.form-group select[data-v-7f4fed07]{width:100%;padding:8px 12px;border-radius:6px;border:1px solid #d9d9d9;background:#e8ecf3;color:#333;font-size:13px;outline:none;box-sizing:border-box}.form-group input[data-v-7f4fed07]:focus,.form-group select[data-v-7f4fed07]:focus{border-color:#1677ff}.form-error[data-v-7f4fed07]{color:#ff4d4f;font-size:12px;margin-top:8px}.form-success[data-v-7f4fed07]{color:#52c41a;font-size:12px;margin-top:8px}.auth-page[data-v-cf5f992c]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f7fa;padding:24px}.auth-card[data-v-cf5f992c]{width:100%;max-width:420px;background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:32px;color:#333}h1[data-v-cf5f992c]{font-size:24px;margin-bottom:8px;color:#1a1a1a}.subtitle[data-v-cf5f992c]{color:#8c8c8c;margin-bottom:12px;font-size:14px}.desktop-hint[data-v-cf5f992c]{color:#1677ff;background:#e6f4ff;border:1px solid #91caff;border-radius:8px;padding:8px 10px;font-size:13px;margin-bottom:20px}.desktop-hint code[data-v-cf5f992c]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}form[data-v-cf5f992c]{display:flex;flex-direction:column;gap:16px}label[data-v-cf5f992c]{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#595959}input[data-v-cf5f992c]{padding:10px 12px;border-radius:6px;border:1px solid #d9d9d9;background:#fff;color:#333}input[data-v-cf5f992c]:focus{outline:none;border-color:#1677ff}.primary-btn[data-v-cf5f992c]{margin-top:8px;padding:10px 16px;border:none;border-radius:6px;background:#1677ff;color:#fff;cursor:pointer;font-size:15px}.primary-btn[data-v-cf5f992c]:disabled{opacity:.6;cursor:not-allowed}.error[data-v-cf5f992c]{color:#ff4d4f;font-size:13px}.links[data-v-cf5f992c]{margin-top:20px;display:flex;justify-content:space-between;font-size:13px}.links a[data-v-cf5f992c],.link-btn[data-v-cf5f992c]{color:#1677ff;text-decoration:none;background:none;border:none;padding:0;cursor:pointer;font-size:13px}.auth-page[data-v-917efc3e]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f7fa;padding:24px}.auth-card[data-v-917efc3e]{width:100%;max-width:420px;background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:32px;color:#333}h1[data-v-917efc3e]{font-size:24px;margin-bottom:8px;color:#1a1a1a}.subtitle[data-v-917efc3e]{color:#8c8c8c;margin-bottom:24px;font-size:14px}form[data-v-917efc3e]{display:flex;flex-direction:column;gap:16px}label[data-v-917efc3e]{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#595959}input[data-v-917efc3e]{padding:10px 12px;border-radius:6px;border:1px solid #d9d9d9;background:#fff;color:#333}input[data-v-917efc3e]:focus{outline:none;border-color:#1677ff}.primary-btn[data-v-917efc3e]{margin-top:8px;padding:10px 16px;border:none;border-radius:6px;background:#1677ff;color:#fff;cursor:pointer;font-size:15px}.primary-btn[data-v-917efc3e]:disabled{opacity:.6;cursor:not-allowed}.error[data-v-917efc3e]{color:#ff4d4f;font-size:13px}.links[data-v-917efc3e]{margin-top:20px;font-size:13px}.links a[data-v-917efc3e]{color:#1677ff;text-decoration:none}.auth-page[data-v-1cc8d7d0]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f7fa;padding:24px}.auth-card[data-v-1cc8d7d0]{width:100%;max-width:420px;background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:32px;color:#333}h1[data-v-1cc8d7d0]{font-size:24px;margin-bottom:8px;color:#1a1a1a}.subtitle[data-v-1cc8d7d0]{color:#8c8c8c;margin-bottom:24px;font-size:14px}form[data-v-1cc8d7d0]{display:flex;flex-direction:column;gap:16px}label[data-v-1cc8d7d0]{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#595959}input[data-v-1cc8d7d0]{padding:10px 12px;border-radius:6px;border:1px solid #d9d9d9;background:#fff;color:#333}.primary-btn[data-v-1cc8d7d0]{margin-top:8px;padding:10px 16px;border:none;border-radius:6px;background:#1677ff;color:#fff;cursor:pointer}.error[data-v-1cc8d7d0]{color:#ff4d4f;font-size:13px}.success[data-v-1cc8d7d0]{color:#73d13d;font-size:13px}.debug[data-v-1cc8d7d0]{font-size:13px;color:#8c8c8c;word-break:break-all}.debug a[data-v-1cc8d7d0]{color:#1677ff}.links[data-v-1cc8d7d0]{margin-top:20px;font-size:13px}.links a[data-v-1cc8d7d0]{color:#1677ff;text-decoration:none}.auth-page[data-v-8f8d0485]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f7fa;padding:24px}.auth-card[data-v-8f8d0485]{width:100%;max-width:420px;background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:32px;color:#333}h1[data-v-8f8d0485]{font-size:24px;margin-bottom:8px;color:#1a1a1a}.subtitle[data-v-8f8d0485]{color:#8c8c8c;margin-bottom:24px;font-size:14px}form[data-v-8f8d0485]{display:flex;flex-direction:column;gap:16px}label[data-v-8f8d0485]{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#595959}input[data-v-8f8d0485]{padding:10px 12px;border-radius:6px;border:1px solid #d9d9d9;background:#fff;color:#333}.primary-btn[data-v-8f8d0485]{margin-top:8px;padding:10px 16px;border:none;border-radius:6px;background:#1677ff;color:#fff;cursor:pointer}.error[data-v-8f8d0485]{color:#ff4d4f;font-size:13px}.success[data-v-8f8d0485]{color:#73d13d;font-size:13px}.links[data-v-8f8d0485]{margin-top:20px;font-size:13px}.links a[data-v-8f8d0485]{color:#1677ff;text-decoration:none}
