*,*:before,*:after{box-sizing:border-box}html,body,#app{max-width:100%;overflow-x:hidden}html,body{overscroll-behavior:none}body{margin:0;font-family:Segoe UI,PingFang SC,Microsoft Yahei,sans-serif;background:#f5f7fa}#app{width:100%;min-height:100vh}.tabs-card{background:#fff;border-radius:8px;padding:12px 16px 0;margin-bottom:0}.tab-count{display:inline-block;min-width:18px;padding:0 5px;margin-left:4px;font-size:11px;line-height:16px;text-align:center;border-radius:8px;background:#f0f2f5;color:#909399}.is-active .tab-count{background:#409eff1f;color:#409eff}.status-tabs{background:#fff;border-radius:0 0 8px 8px;padding:10px 16px;margin-bottom:4px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.status-tabs-left{display:flex;align-items:center}.status-tabs-right{font-size:12px;color:#909399}.chip-count{display:inline-block;min-width:16px;padding:0 4px;margin-left:3px;font-size:11px;line-height:15px;text-align:center;border-radius:8px;background:#f0f2f5;color:#909399}.el-radio-button__original-radio:checked+.el-radio-button__inner .chip-count{background:#ffffff40;color:#fff}.tabs-card+.status-tabs{border-radius:0 0 8px 8px}.list-header{margin-bottom:8px}.el-card{border-radius:8px;border-color:#ebeef5}.page-title{position:relative;padding-left:14px}.page-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:18px;border-radius:3px;background:#409eff}.board-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;background:#fff;border:1px solid #ebeef5;border-radius:8px;padding:10px 14px;margin-bottom:14px}.board-section{background:#fff;border:1px solid #ebeef5;border-radius:8px;padding:14px 16px;margin-bottom:16px}.board-section-title{display:flex;align-items:center;font-size:14px;font-weight:600;color:#303133;margin-bottom:10px;padding-left:12px;position:relative;line-height:1.5}.board-section-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:14px;border-radius:3px;background:#409eff}.board-section-title--green:before{background:#67c23a}.board-section-title--orange:before{background:#e6a23c}.board-section-title--red:before{background:#f56c6c}.board-section-title--gray:before{background:#909399}.board-section-hint{font-size:12px;color:#909399;font-weight:400;margin-left:8px}.login-page[data-v-779c4f6c]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.login-card[data-v-779c4f6c]{width:420px}.login-title[data-v-779c4f6c]{display:flex;align-items:center;justify-content:center;gap:10px;font-size:24px;font-weight:600;color:#333}.login-logo[data-v-779c4f6c]{width:36px;height:36px;object-fit:contain;border-radius:6px}.login-avatar[data-v-779c4f6c]{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#667eea;color:#fff;font-size:18px;font-weight:600}.login-title-text[data-v-779c4f6c]{font-size:24px;font-weight:600;color:#333}.login-btn[data-v-779c4f6c]{width:100%;margin-top:10px}.register-link[data-v-779c4f6c]{margin-top:16px;text-align:center;font-size:14px;color:#909399}.register-link a[data-v-779c4f6c]{color:#409eff;text-decoration:none}.register-link a[data-v-779c4f6c]:hover{text-decoration:underline}.register-page[data-v-f50cca45]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.register-card[data-v-f50cca45]{width:460px}.register-title[data-v-f50cca45]{text-align:center;font-size:24px;font-weight:600;color:#333}.register-btn[data-v-f50cca45]{width:100%;margin-top:10px}.login-link[data-v-f50cca45]{margin-top:16px;text-align:center;font-size:14px;color:#909399}.login-link a[data-v-f50cca45]{color:#409eff;text-decoration:none}.login-link a[data-v-f50cca45]:hover{text-decoration:underline}.change-password-form[data-v-f85887de]{padding:4px 8px 0 0}.form-actions[data-v-f85887de]{text-align:right;margin-top:4px}.layout[data-v-e7955b72]{height:100vh}.sidebar[data-v-e7955b72]{border-right:1px solid #ebeef5;background:#fff;overflow-y:auto}.logo[data-v-e7955b72]{height:56px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;border-bottom:1px solid #ebeef5}.user-info[data-v-e7955b72]{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ebeef5;font-size:13px;color:#606266}.menu[data-v-e7955b72]{border-right:none}.menu-search[data-v-e7955b72]{margin:8px 12px 4px;width:calc(100% - 24px)}.menu-search-results[data-v-e7955b72]{padding:4px 0;overflow-y:auto}.menu-search-item[data-v-e7955b72]{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;font-size:14px;color:#303133;cursor:pointer;line-height:1.4}.menu-search-item[data-v-e7955b72]:hover{background:#ecf5ff;color:#409eff}.menu-search-item.active[data-v-e7955b72]{color:#409eff;font-weight:600}.menu-search-group[data-v-e7955b72]{font-size:12px;color:#a8abb2;flex-shrink:0;margin-left:8px}.menu-search-empty[data-v-e7955b72]{padding:24px 0;text-align:center;color:#909399;font-size:13px}.topbar[data-v-e7955b72]{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ebeef5;font-weight:500}.topbar-right[data-v-e7955b72]{display:flex;align-items:center;gap:16px}.notification-trigger[data-v-e7955b72]{cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center}.notification-panel[data-v-e7955b72]{width:320px;max-height:400px;overflow:hidden;display:flex;flex-direction:column}.notification-header[data-v-e7955b72]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #ebeef5;font-weight:500}.notification-list[data-v-e7955b72]{overflow-y:auto;max-height:340px}.notification-item[data-v-e7955b72]{padding:10px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .2s}.notification-item[data-v-e7955b72]:hover{background:#f5f7fa}.notification-item.unread[data-v-e7955b72]{background:#f0f9ff}.notification-title[data-v-e7955b72]{font-size:14px;color:#303133;font-weight:500;margin-bottom:4px}.notification-content[data-v-e7955b72]{font-size:12px;color:#606266;line-height:1.4;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-meta[data-v-e7955b72]{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#909399}.notification-empty[data-v-e7955b72]{padding:24px;text-align:center;color:#909399;font-size:14px}.username[data-v-e7955b72]{color:#606266;font-weight:400}.username-trigger[data-v-e7955b72]{cursor:pointer;display:inline-flex;align-items:center}.username-trigger[data-v-e7955b72]:hover{color:#409eff}.private-mode-menu-item[data-v-e7955b72]{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:8px 16px}.private-mode-menu-label[data-v-e7955b72]{font-size:14px;color:#303133}.private-mode-menu-desc[data-v-e7955b72]{font-size:12px;color:#909399;padding:0 16px 10px}.notification-section[data-v-e7955b72]{border-top:1px solid #ebeef5;background:#fafafa}.notification-section-title[data-v-e7955b72]{padding:8px 16px 4px;font-size:12px;color:#909399;font-weight:600}.notification-section .notification-list[data-v-e7955b72]{max-height:180px}.notification-footer[data-v-e7955b72]{padding:6px 16px 10px;text-align:center}.main[data-v-e7955b72]{background:#f5f7fa;overflow-y:auto}.changelog-release[data-v-e7955b72]{margin-bottom:12px}.changelog-version[data-v-e7955b72]{font-weight:600;font-size:15px;color:#303133;margin-bottom:8px}.changelog-date[data-v-e7955b72]{font-weight:400;font-size:12px;color:#909399;margin-left:8px}.changelog-items[data-v-e7955b72]{margin:0;padding-left:20px}.changelog-items li[data-v-e7955b72]{font-size:14px;color:#606266;line-height:2}.search-bar[data-v-7f2234a1]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.search-bar__left[data-v-7f2234a1]{display:flex;align-items:center;flex-wrap:wrap;row-gap:8px;gap:12px}.search-bar__right[data-v-7f2234a1]{display:flex;align-items:center;gap:8px}.page-template[data-v-c51c127f]{padding:16px}.page-title[data-v-c51c127f]{position:relative;padding-left:14px}.page-title[data-v-c51c127f]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:18px;border-radius:3px;background:#409eff}.page-header[data-v-c51c127f]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.page-title[data-v-c51c127f]{font-size:18px;font-weight:600;margin:0;color:#303133}.page-header__actions[data-v-c51c127f]{display:flex;align-items:center;gap:8px}.page-header__left[data-v-c51c127f]{display:flex;align-items:center;gap:10px}.page-stats[data-v-c51c127f]{margin-bottom:16px}.page-search[data-v-c51c127f]{margin-bottom:0}.page-table[data-v-c51c127f]{margin-top:10px}.page-pagination[data-v-c51c127f]{display:flex;justify-content:flex-end;margin-top:16px}[data-v-5500e671] .mapping-duplicate-row td.el-table__cell{background-color:#fef0f0!important}[data-v-5500e671] .mapping-duplicate-row td.el-table__cell .cell{color:#c45656}.result-files[data-v-5c2ef05c]{margin-top:8px}.file-item[data-v-5c2ef05c]{padding:4px 0}.stat-card-group[data-v-ee5b5c4c]{margin:15px 0}.stat-card[data-v-ee5b5c4c]{text-align:center;padding:12px 0 10px;border-radius:8px;border:1px solid #ebeef5;cursor:pointer;transition:all .2s;font-size:12px;background:#fff;-webkit-user-select:none;user-select:none}.stat-card[data-v-ee5b5c4c]:hover{box-shadow:0 2px 12px #00000014;transform:translateY(-1px)}.stat-card.no-click[data-v-ee5b5c4c]{cursor:default}.stat-card.no-click[data-v-ee5b5c4c]:hover{box-shadow:none;transform:none}.stat-card-label[data-v-ee5b5c4c]{line-height:1.4;margin-bottom:4px;font-size:13px}.stat-card-count[data-v-ee5b5c4c]{font-size:24px;font-weight:700;line-height:1.2}.stat-card-sub[data-v-ee5b5c4c]{margin-top:3px;font-size:11px;color:#a8abb2}.stat-card.active[data-v-ee5b5c4c],.stat-card.active .stat-card-count[data-v-ee5b5c4c],.stat-card.active .stat-card-label[data-v-ee5b5c4c]{color:#fff}.stat-card.active .stat-card-sub[data-v-ee5b5c4c]{color:#ffffffbf}.lazy-image-wrapper[data-v-8ceb1cbb]{display:inline-block;position:relative;width:100%;height:100%}.lazy-image[data-v-8ceb1cbb]{width:100%;height:100%;object-fit:cover;cursor:pointer}.image-placeholder[data-v-8ceb1cbb],.image-error[data-v-8ceb1cbb]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f5f7fa;border-radius:4px}.placeholder-box[data-v-8ceb1cbb],.error-box[data-v-8ceb1cbb]{display:flex;flex-direction:column;align-items:center;gap:4px;color:#909399}.error-box[data-v-8ceb1cbb]{color:#f56c6c;cursor:pointer}.error-text[data-v-8ceb1cbb]{font-size:12px}.file-thumbs[data-v-8e17e5ae]{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}.file-thumb[data-v-8e17e5ae]{position:relative;width:72px;height:88px;border:1px solid #dcdfe6;border-radius:4px;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;background:#fff}.file-thumb[data-v-8e17e5ae]:hover{border-color:#409eff}.thumb-img[data-v-8e17e5ae]{width:100%;height:100%;object-fit:cover}.thumb-icon[data-v-8e17e5ae]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#909399;gap:2px}.thumb-ext[data-v-8e17e5ae]{font-size:10px;text-transform:uppercase}.thumb-name[data-v-8e17e5ae]{font-size:10px;color:#606266;padding:2px 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-top:1px solid #ebeef5}.thumb-delete[data-v-8e17e5ae]{position:absolute;top:3px;right:3px;width:16px;height:16px;background:#00000080;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;cursor:pointer}.thumb-delete[data-v-8e17e5ae]:hover{background:#f56c6c}.thumb-missing[data-v-8e17e5ae]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 2px;gap:2px}.missing-text[data-v-8e17e5ae]{color:#e6a23c;font-size:10px}.thumbs-empty[data-v-8e17e5ae]{font-size:12px;color:#c0c4cc;margin:6px 0}.pdf-viewer[data-v-d7ab7c26]{display:flex;flex-direction:column;align-items:center;width:100%;height:100%;background:#f5f5f5;position:relative}.pdf-viewer__page[data-v-d7ab7c26]{width:100%;display:flex;justify-content:center;overflow:auto;flex:1}.pdf-viewer__canvas[data-v-d7ab7c26]{max-width:100%;box-shadow:0 2px 8px #00000026;background:#fff;display:block}.pdf-viewer__toolbar[data-v-d7ab7c26]{display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 16px;background:#fff;border-top:1px solid #eee;width:100%;position:sticky;bottom:0}.pdf-viewer__btn[data-v-d7ab7c26]{padding:6px 14px;border:1px solid #dcdfe6;border-radius:4px;background:#fff;cursor:pointer}.pdf-viewer__btn[data-v-d7ab7c26]:disabled{color:#c0c4cc;cursor:not-allowed}.pdf-viewer__page-info[data-v-d7ab7c26]{font-size:14px;color:#606266}.pdf-viewer__loading[data-v-d7ab7c26],.pdf-viewer__error[data-v-d7ab7c26]{display:flex;align-items:center;justify-content:center;height:100%;color:#909399}.pdf-viewer__error[data-v-d7ab7c26]{color:#f56c6c}.pdf-viewer__overlay[data-v-d7ab7c26]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;background:#f5f5f5}.signature-image[data-v-a8d7b935]{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:6px}.signature-image.bordered[data-v-a8d7b935]{border:1px dashed #ccc}.sig-img[data-v-a8d7b935]{max-height:140%;max-width:140%;width:auto;height:auto;object-fit:contain;transform:rotate(-90deg);filter:brightness(.3) contrast(2)}.sig-img.clickable[data-v-a8d7b935]{cursor:pointer}.sig-empty[data-v-a8d7b935]{color:#999;font-size:13px}.sig-viewer[data-v-a8d7b935]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;background:#000000b8;display:flex;align-items:center;justify-content:center}.sig-viewer-img[data-v-a8d7b935]{max-height:80vh;max-width:80vw;background:#fff;transform:rotate(-90deg);filter:brightness(.3) contrast(2)}.contract-file-viewer[data-v-7d747812]{padding:16px}.viewer-section[data-v-7d747812]{margin-bottom:24px}.section-title[data-v-7d747812]{font-size:14px;font-weight:600;color:#303133;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #ebeef5}.pdf-container[data-v-7d747812]{max-width:794px;margin:0 auto;display:flex;justify-content:center;background:#f5f5f5;border-radius:4px;overflow:auto;padding:20px 0}.attachment-grid[data-v-7d747812]{display:flex;flex-wrap:wrap;gap:16px}.attachment-item[data-v-7d747812]{text-align:center}.attachment-actions[data-v-7d747812]{margin-top:8px}.signature-grid[data-v-7d747812]{display:flex;flex-wrap:wrap;gap:24px}.signature-item[data-v-7d747812]{text-align:center}.sig-label[data-v-7d747812]{font-size:12px;color:#606266;margin-bottom:8px}.sign-method[data-v-7d747812]{margin-top:12px;font-size:12px;color:#909399}.empty-state[data-v-7d747812]{padding:40px 0}.elevator-archive[data-v-d161a8b3]{padding:20px}.contract-status-card[data-v-d161a8b3]{padding:12px 15px;border-radius:8px;margin-bottom:12px;border:1px solid transparent;font-size:13px}.contract-status-card .cs-main[data-v-d161a8b3]{display:flex;align-items:center;gap:10px;margin-bottom:6px}.contract-status-card .cs-source[data-v-d161a8b3]{color:#909399;font-size:12px}.contract-status-card .cs-detail[data-v-d161a8b3]{color:#606266;margin-bottom:4px}.contract-status-card .cs-message[data-v-d161a8b3]{color:#303133}.contract-status-card.cs-in_contract[data-v-d161a8b3]{background:#f0f9eb;border-color:#e1f3d8}.contract-status-card.cs-expired[data-v-d161a8b3]{background:#fef0f0;border-color:#fde2e2}.contract-status-card.cs-need_confirm[data-v-d161a8b3]{background:#f4f4f5;border-color:#e9e9eb}.toolbar[data-v-d161a8b3]{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.search-results[data-v-d161a8b3]{background:#f5f7fa;padding:15px;border-radius:8px;margin-top:20px}.search-header[data-v-d161a8b3]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.search-header span[data-v-d161a8b3]{font-weight:700;color:#409eff}.image-preview-list[data-v-d161a8b3]{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.image-item[data-v-d161a8b3]{position:relative;width:100px;height:100px;border:1px solid #dcdfe6;border-radius:4px;overflow:hidden;cursor:pointer}.image-item[data-v-d161a8b3]:hover{border-color:#409eff}.preview-thumbnail[data-v-d161a8b3]{width:100%;height:100%;object-fit:cover}.delete-icon[data-v-d161a8b3]{position:absolute;top:4px;right:4px;width:18px;height:18px;background:#00000080;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer}.delete-icon[data-v-d161a8b3]:hover{background:#f56c6c}.temp-image-item[data-v-d161a8b3]{border-color:#e6a23c;background:#fdf6ec}.temp-images-title[data-v-d161a8b3],.saved-images-title[data-v-d161a8b3]{font-size:12px;color:#909399;margin-bottom:5px}.saved-images-title[data-v-d161a8b3]{color:#67c23a}.image-upload-section[data-v-d161a8b3]{display:flex;gap:20px;padding:15px;background:#fafafa;border-radius:8px;border:1px solid #ebeef5;align-items:flex-start}.temp-images[data-v-d161a8b3],.saved-images[data-v-d161a8b3]{min-width:150px}.detail-view[data-v-d161a8b3]{padding:10px 0}.components-empty-hint[data-v-d161a8b3]{margin-top:8px;padding:10px 12px;background:#f5f7fa;border-radius:6px;font-size:12px;color:#909399;line-height:1.7}.detail-dialog-header[data-v-d161a8b3]{display:flex;justify-content:space-between;align-items:center;width:100%;padding-right:12px}.ai-conflict[data-v-d161a8b3] .el-form-item__label{color:#e6a23c;font-weight:600}.ai-conflict[data-v-d161a8b3] .el-input__wrapper{background-color:#fdf6ec;box-shadow:0 0 0 1px #e6a23c inset}.detail-images[data-v-d161a8b3]{margin-top:20px}.detail-images h4[data-v-d161a8b3]{margin-bottom:10px;color:#606266}.detail-tabs[data-v-d161a8b3]{margin-top:-10px}.detail-tabs[data-v-d161a8b3] .el-tabs__header{margin-bottom:15px}.mc-block[data-v-d161a8b3]{margin-bottom:14px}.mc-title[data-v-d161a8b3]{font-size:13px;font-weight:600;color:#606266;margin-bottom:8px}.detail-tabs[data-v-d161a8b3] .el-tabs__nav-wrap,.detail-tabs[data-v-d161a8b3] .el-tabs__nav-scroll{overflow:visible!important}.detail-tabs[data-v-d161a8b3] .el-tabs__nav{display:flex;flex-wrap:wrap;white-space:normal;transform:none!important}.detail-tabs[data-v-d161a8b3] .el-tabs__nav-prev,.detail-tabs[data-v-d161a8b3] .el-tabs__nav-next,.detail-tabs[data-v-d161a8b3] .el-tabs__active-bar{display:none!important}.detail-tabs[data-v-d161a8b3] .el-tabs__item.is-active{border-bottom:2px solid var(--el-color-primary)}.timeline-record[data-v-d161a8b3]{display:flex;flex-wrap:wrap;align-items:center;gap:4px 0}.timeline-record.clickable[data-v-d161a8b3]{cursor:pointer}.timeline-record.clickable:hover .tl-title[data-v-d161a8b3]{color:#409eff}.timeline-record .tl-title[data-v-d161a8b3]{font-weight:600;font-size:13px;color:#303133}.timeline-record .tl-summary[data-v-d161a8b3]{width:100%;font-size:12px;color:#909399;margin-top:2px}.eng-card[data-v-d161a8b3]{border:1px solid #ebeef5;border-radius:6px;padding:12px;margin-bottom:12px}.eng-card-header[data-v-d161a8b3]{display:flex;align-items:center;gap:10px}.eng-card-title[data-v-d161a8b3]{font-weight:600;font-size:14px;color:#303133}.eng-files-title[data-v-d161a8b3]{font-weight:600;font-size:13px;color:#606266;margin:12px 0 8px}.eng-files-grid[data-v-d161a8b3]{display:flex;flex-wrap:wrap;gap:12px}.eng-file-item[data-v-d161a8b3]{display:flex;flex-direction:column;align-items:center;gap:4px;width:90px}.eng-file-img[data-v-d161a8b3]{width:80px;height:80px;border:1px solid #eee;border-radius:4px;cursor:pointer}.eng-file-doc[data-v-d161a8b3]{width:80px;height:80px;border:1px dashed #dcdfe6;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:28px}.eng-file-label[data-v-d161a8b3]{font-size:12px;text-align:center;word-break:break-all}.eng-file-meta[data-v-d161a8b3]{font-size:11px;color:#909399;text-align:center}.eng-files-empty[data-v-d161a8b3]{font-size:12px;color:#909399}.inspection-history-section[data-v-d161a8b3]{padding:10px 0}.inspection-history-section .section-header[data-v-d161a8b3]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.inspection-history-section .section-header h4[data-v-d161a8b3]{margin:0;color:#303133;font-size:14px}.inspection-collapse[data-v-d161a8b3]{border-radius:4px}.inspection-collapse .year-title[data-v-d161a8b3]{font-weight:500;color:#303133;font-size:14px}.placeholder-section[data-v-d161a8b3]{padding:40px 20px;text-align:center}.archive-section[data-v-d161a8b3]{margin-top:20px;padding:15px;background:#f5f7fa;border-radius:8px}.overall-completeness[data-v-d161a8b3]{background:#fff;padding:15px;border-radius:6px;margin-bottom:15px;border:1px solid #ebeef5}.completeness-header[data-v-d161a8b3]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.completeness-title[data-v-d161a8b3]{font-weight:600;color:#303133;font-size:15px}.completeness-rate[data-v-d161a8b3]{font-weight:700;font-size:20px}.text-success[data-v-d161a8b3]{color:#67c23a}.text-warning[data-v-d161a8b3]{color:#e6a23c}.text-danger[data-v-d161a8b3]{color:#f56c6c}.completeness-summary[data-v-d161a8b3]{text-align:center;font-size:13px;color:#606266;margin-top:6px}.missing-tags[data-v-d161a8b3]{margin-top:10px;display:flex;flex-wrap:wrap;align-items:center;gap:5px}.missing-label[data-v-d161a8b3]{color:#606266;font-size:13px}.archive-header[data-v-d161a8b3]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.archive-header h4[data-v-d161a8b3]{margin:0;color:#303133}.year-switcher[data-v-d161a8b3]{display:flex;align-items:center;gap:8px}.year-label[data-v-d161a8b3]{font-size:14px;font-weight:600;color:#303133;min-width:60px;text-align:center}.checklist[data-v-d161a8b3]{margin-bottom:12px}.check-row[data-v-d161a8b3]{display:flex;align-items:center;padding:10px 12px;border-bottom:1px solid #ebeef5;gap:10px}.check-row[data-v-d161a8b3]:last-child{border-bottom:none}.check-row.done[data-v-d161a8b3]{background:#f0f9eb;opacity:.8}.check-icon[data-v-d161a8b3]{font-size:16px}.check-name[data-v-d161a8b3]{flex:1;font-size:14px;color:#303133}.progress-bar[data-v-d161a8b3]{height:8px;background:#e0e0e0;border-radius:4px;margin:10px 0 6px}.progress-fill[data-v-d161a8b3]{height:100%;background:#67c23a;border-radius:4px;transition:width .3s}.progress-text[data-v-d161a8b3]{text-align:center;font-size:13px;color:#606266;margin-bottom:10px}.archived-files[data-v-d161a8b3]{margin-top:15px}.archived-files h5[data-v-d161a8b3]{margin:0 0 10px;color:#606266;font-size:14px}.file-grid[data-v-d161a8b3]{display:flex;flex-wrap:wrap;gap:10px}.file-tag[data-v-d161a8b3]{position:absolute;bottom:2px;left:2px;background:#0009;color:#fff;font-size:10px;padding:1px 4px;border-radius:3px}.fold-title[data-v-d161a8b3]{display:flex;align-items:center;gap:10px}.subfolder-name[data-v-d161a8b3]{font-size:13px;color:#606266;padding:8px 0;border-bottom:1px solid #ebeef5;cursor:pointer}.subfolder-name[data-v-d161a8b3]:last-child{border-bottom:none}.other-files-section[data-v-d161a8b3]{margin-top:20px;padding:15px;background:#f5f7fa;border-radius:8px}.year-files[data-v-d161a8b3]{margin-top:10px;padding:10px;background:#f5f7fa;border-radius:6px}.year-files-title[data-v-d161a8b3]{font-size:13px;font-weight:600;color:#303133;margin-bottom:6px}.year-file-block[data-v-d161a8b3]{padding:6px 8px;background:#fff;border:1px solid #ebeef5;border-radius:4px;margin-bottom:8px}.year-file-block[data-v-d161a8b3]:last-child{margin-bottom:0}.year-file-head[data-v-d161a8b3]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.year-file-name[data-v-d161a8b3]{font-size:13px;color:#303133;font-weight:600}.cell-editable[data-v-d161a8b3]{display:inline-flex;align-items:center;gap:4px}.cell-editable.editable[data-v-d161a8b3]{cursor:pointer;color:#409eff;border-bottom:1px dashed #409eff;padding-bottom:1px}.cell-editable.editable[data-v-d161a8b3]:hover{color:#66b1ff;border-bottom-color:#66b1ff}.cell-edit-icon[data-v-d161a8b3]{font-size:13px;color:#409eff}.other-files-section h4[data-v-d161a8b3]{margin:0 0 10px;color:#303133}.subfolder-card[data-v-d161a8b3]{display:flex;flex-direction:column;align-items:center;justify-content:center;width:120px;height:100px;border:1px solid #dcdfe6;border-radius:8px;background:#f5f7fa;cursor:pointer;transition:all .2s;gap:8px;padding:10px}.subfolder-card[data-v-d161a8b3]:hover{border-color:#409eff;background:#ecf5ff;transform:translateY(-2px);box-shadow:0 4px 12px #409eff26}.subfolder-name[data-v-d161a8b3]{font-size:13px;color:#303133;text-align:center;word-break:break-all;line-height:1.3;max-width:100%}.file-item[data-v-d161a8b3]{position:relative;width:100px;height:120px;border:1px solid #dcdfe6;border-radius:4px;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px;transition:all .2s}.file-item[data-v-d161a8b3]:hover{border-color:#409eff;background:#f5f7fa}.delete-file-btn[data-v-d161a8b3]{position:absolute;top:4px;right:4px;z-index:2}.file-item .preview-thumbnail[data-v-d161a8b3]{width:100%;height:80px;object-fit:cover;border-radius:2px}.file-icon[data-v-d161a8b3]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;height:80px;background:#f5f7fa;border-radius:2px}.file-icon .file-ext[data-v-d161a8b3]{font-size:10px;color:#909399;background:#e4e7ed;padding:1px 6px;border-radius:2px}.pdf-icon[data-v-d161a8b3]{color:#e6a23c}.pdf-icon .file-ext[data-v-d161a8b3]{color:#fff;background:#e6a23c}.file-name[data-v-d161a8b3]{font-size:11px;color:#606266;text-align:center;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-count strong[data-v-d161a8b3]{font-size:16px;margin:0 4px}.archive-stats-summary[data-v-d161a8b3]{background:#f5f7fa;border-radius:8px;padding:15px 18px;margin-bottom:15px}.verif-stats-tip[data-v-d161a8b3]{font-size:12px;color:#909399;line-height:1.6;margin-bottom:12px}.verif-stats-card[data-v-d161a8b3]{background:#f5f7fa;border-radius:8px;padding:12px 16px;margin-bottom:12px}.verif-card-title[data-v-d161a8b3]{font-size:14px;font-weight:600;color:#303133;margin-bottom:10px}.verif-card-grid[data-v-d161a8b3]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.verif-cell[data-v-d161a8b3]{background:#fff;border:1px solid #e4e7ed;border-radius:6px;padding:10px 12px;text-align:center}.verif-warn-cell[data-v-d161a8b3]{background:#fdf6ec;border-color:#f3d19e}.verif-num[data-v-d161a8b3]{font-size:22px;font-weight:700;color:#303133;line-height:1.3}.verif-label[data-v-d161a8b3]{font-size:12px;color:#909399;margin-top:2px}.summary-header[data-v-d161a8b3]{display:flex;align-items:center;font-size:15px;margin-bottom:12px;color:#303133}.summary-total[data-v-d161a8b3]{font-weight:500}.summary-missing[data-v-d161a8b3]{color:#f56c6c;font-weight:500}.summary-categories[data-v-d161a8b3]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.summary-category-item[data-v-d161a8b3]{background:#fff;border:1px solid #e4e7ed;border-radius:6px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;transition:all .2s}.summary-category-item[data-v-d161a8b3]:not(.empty){cursor:pointer}.summary-category-item[data-v-d161a8b3]:not(.empty):hover{border-color:#409eff;box-shadow:0 2px 8px #409eff26}.summary-category-item.empty[data-v-d161a8b3]{opacity:.7;background:#fafafa}.category-info[data-v-d161a8b3]{display:flex;flex-direction:column;gap:4px}.category-name[data-v-d161a8b3]{font-size:13px;color:#606266}.category-count[data-v-d161a8b3]{font-size:18px;font-weight:600;color:#f56c6c}.category-count.zero[data-v-d161a8b3]{color:#67c23a}.category-empty[data-v-d161a8b3]{font-size:12px;color:#909399}@media (max-width: 768px){.summary-categories[data-v-d161a8b3]{grid-template-columns:repeat(2,1fr)}}.print-tips[data-v-d161a8b3]{margin-bottom:15px}.sign-print-page[data-v-d161a8b3]{width:210mm;height:297mm;margin:0 auto;background:#fff;border:1px dashed #ccc;box-sizing:border-box;padding:20mm 0 0;position:relative}.sign-print-cutline[data-v-d161a8b3]{text-align:center;color:#999;font-size:12px;margin-bottom:5mm;border-bottom:1px dashed #999;padding-bottom:2mm;width:100mm;margin-left:auto;margin-right:auto}.sign-print-box[data-v-d161a8b3]{width:100mm;height:150mm;margin:0 auto;border:1px solid #333;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fff}.sign-print-box img[data-v-d161a8b3]{width:100%;height:100%;object-fit:contain}.sign-print-info[data-v-d161a8b3]{text-align:center;margin-top:10mm;color:#666;font-size:12px}.crop-tips[data-v-d161a8b3]{margin-bottom:12px}.crop-container[data-v-d161a8b3]{position:relative;width:640px;height:420px;margin:0 auto;overflow:hidden;background:#e0e0e0;border:1px solid #ccc;border-radius:4px}.crop-canvas[data-v-d161a8b3]{position:absolute;top:0;left:0;cursor:grab;touch-action:none}.crop-canvas[data-v-d161a8b3]:active{cursor:grabbing}.crop-frame[data-v-d161a8b3]{position:absolute;top:50%;left:50%;width:300px;height:450px;transform:translate(-50%,-50%);border:2px dashed #f56c6c;pointer-events:none;box-shadow:0 0 0 9999px #00000073;z-index:10}.crop-frame[data-v-d161a8b3]:before{content:"100mm × 150mm";position:absolute;top:-24px;left:50%;transform:translate(-50%);color:#f56c6c;font-size:12px;white-space:nowrap}.crop-actions[data-v-d161a8b3]{margin-top:12px;text-align:center}@media print{@page{size:A4;margin:0}body[data-v-d161a8b3] *{visibility:hidden}.el-overlay[data-v-d161a8b3],.el-overlay-dialog[data-v-d161a8b3]{position:static!important;overflow:visible!important}.el-dialog[data-v-d161a8b3],.el-dialog[data-v-d161a8b3] *{visibility:visible;box-shadow:none!important}.el-dialog[data-v-d161a8b3]{position:absolute;left:0;top:0;width:100%!important;margin:0!important}.el-dialog__header[data-v-d161a8b3],.el-dialog__footer[data-v-d161a8b3],.print-tips[data-v-d161a8b3]{display:none!important}.el-dialog__body[data-v-d161a8b3]{padding:0!important}.sign-print-page[data-v-d161a8b3]{border:none;page-break-after:always}}.column-selector-popper .el-dropdown-menu{padding:8px 0}.col-selector-panel{width:260px;max-height:460px;display:flex;flex-direction:column}.col-selector-title{padding:4px 14px 8px;font-size:13px;font-weight:600;color:#303133;border-bottom:1px solid #f0f2f5}.col-selector-group{padding:6px 14px;overflow-y:auto}.col-selector-item{display:flex;align-items:center;width:100%;margin:4px 0}.col-selector-item .el-checkbox__label{font-size:13px}.col-selector-footer{padding:4px 14px 2px;border-top:1px solid #f0f2f5;text-align:right}.system-settings[data-v-eb97a423]{padding:20px}.card-header[data-v-eb97a423]{display:flex;justify-content:space-between;align-items:center;font-size:18px;font-weight:600}.form-tip[data-v-eb97a423]{font-size:12px;color:#999;margin-top:4px}.validation-error[data-v-eb97a423]{font-size:12px;color:#f56c6c;margin-top:4px}.is-loading[data-v-eb97a423]{animation:rotate-eb97a423 1.5s linear infinite}@keyframes rotate-eb97a423{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.module-user-item[data-v-eb97a423]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin-bottom:4px;border-radius:4px;cursor:pointer;transition:all .2s}.module-user-item[data-v-eb97a423]:hover{background:#f5f7fa}.module-user-item.active[data-v-eb97a423]{background:#ecf5ff;border:1px solid #409eff}.module-user-item .user-name[data-v-eb97a423]{font-size:14px;color:#303133}.module-user-item .user-phone[data-v-eb97a423]{color:#999;font-size:12px;margin-left:6px}.module-checkbox-item[data-v-eb97a423]{padding:8px 0;border-bottom:1px solid #f0f0f0;display:flex;align-items:center}.module-checkbox-item[data-v-eb97a423]:last-child{border-bottom:none}.module-checkbox-item .module-code[data-v-eb97a423]{color:#909399;font-size:12px;margin-left:4px}.maintenance-management[data-v-0de54f5c]{padding:20px}.toolbar[data-v-0de54f5c]{display:flex;gap:10px;flex-wrap:wrap;align-items:center;background:#fff;border:1px solid #ebeef5;border-radius:8px;padding:10px 14px;margin-bottom:14px}.no-data[data-v-0de54f5c]{color:#909399}[data-v-0de54f5c] .row-urgent{background-color:#fef0f0!important}[data-v-0de54f5c] .row-expiring{background-color:#fdf6ec!important}.history-section[data-v-0de54f5c]{margin-top:30px;padding-top:20px;border-top:2px solid #eee}.history-section h3[data-v-0de54f5c]{margin:0 0 15px;color:#303133}.history-toolbar[data-v-0de54f5c]{display:flex;gap:10px;margin-bottom:15px;flex-wrap:wrap;align-items:center}.history-list[data-v-0de54f5c]{min-height:200px}.group-title[data-v-0de54f5c]{font-size:16px;font-weight:600;color:#303133}.group-count[data-v-0de54f5c]{margin-left:10px;color:#909399;font-size:14px}.history-cards[data-v-0de54f5c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:15px;padding:10px 0}.history-card[data-v-0de54f5c]{cursor:pointer}.card-header[data-v-0de54f5c]{display:flex;justify-content:space-between;align-items:center}.elevator-code[data-v-0de54f5c]{font-weight:600;font-size:14px;color:#303133}.card-footer[data-v-0de54f5c]{display:flex;gap:8px;justify-content:flex-end}.overdue-card[data-v-0de54f5c]{border:1px solid #ffd591;border-radius:8px;margin-top:12px}.overdue-card[data-v-0de54f5c] .el-card__header{background:#fff8ed;padding:12px 16px}.overdue-toggle-bar[data-v-0de54f5c]{display:flex;align-items:center;gap:8px;background:#fff8ed;border:1px solid #ffd591;border-radius:8px;padding:12px 16px;margin-top:12px;cursor:pointer;color:#d46b08;font-size:14px;transition:all .2s}.overdue-toggle-bar[data-v-0de54f5c]:hover{background:#fff3e0;box-shadow:0 2px 8px #e6a23c26}.unit-lookup-tip[data-v-b52d3aa1]{display:flex;align-items:center;gap:8px;margin:-6px 0 12px}.unit-lookup-note[data-v-b52d3aa1]{font-size:12px;color:#909399}.identity-tip[data-v-b52d3aa1]{margin-top:6px;font-size:12px;color:#909399;line-height:1.5}.acct-list[data-v-b52d3aa1]{width:100%}.acct-list-head[data-v-b52d3aa1]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.acct-list-title[data-v-b52d3aa1]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.acct-list-note[data-v-b52d3aa1]{font-size:12px;color:#909399}.ts-page[data-v-b52d3aa1]{padding:4px}.stat-cards[data-v-b52d3aa1]{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:12px}.stat-card .stat-num[data-v-b52d3aa1]{font-size:26px;font-weight:700;color:#303133}.stat-num.ok[data-v-b52d3aa1]{color:#67c23a}.stat-num.warn[data-v-b52d3aa1]{color:#e6a23c}.stat-num.bad[data-v-b52d3aa1]{color:#f56c6c}.stat-sub[data-v-b52d3aa1]{font-size:14px;color:#909399;font-weight:400}.stat-label[data-v-b52d3aa1]{margin-top:4px;font-size:12px;color:#909399}.stat-note[data-v-b52d3aa1]{margin-top:2px;font-size:11px;color:#c0c4cc;line-height:1.4}.acct-cell[data-v-b52d3aa1]{display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.3}.acct-seq[data-v-b52d3aa1]{font-size:11px;color:#909399}.stat-title[data-v-b52d3aa1]{font-size:12px;color:#909399;margin-bottom:6px}.stat-reasons[data-v-b52d3aa1]{font-size:12px;color:#606266;min-height:40px}.reason-line[data-v-b52d3aa1]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px;line-height:1.7}.stat-empty[data-v-b52d3aa1]{color:#c0c4cc}.action-card[data-v-b52d3aa1]{display:flex;flex-direction:column;justify-content:center;align-items:center}.filter-card[data-v-b52d3aa1]{margin-bottom:12px}.filter-row[data-v-b52d3aa1]{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.elevator-filter[data-v-b52d3aa1]{display:flex;align-items:center;gap:6px}.elevator-label[data-v-b52d3aa1]{font-size:12px;color:#909399;white-space:nowrap}.batch-row[data-v-b52d3aa1]{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}.table-card[data-v-b52d3aa1],.calendar-card[data-v-b52d3aa1]{margin-bottom:12px}.cal-header[data-v-b52d3aa1]{display:flex;justify-content:space-between;align-items:center}.cal-cell[data-v-b52d3aa1]{min-height:56px;cursor:pointer;padding:2px 4px;border-radius:4px}.cal-cell[data-v-b52d3aa1]:hover{background:#f0f7ff}.cal-today[data-v-b52d3aa1]{background:#ecf5ff}.cal-day[data-v-b52d3aa1]{font-size:13px;color:#303133}.cal-badges[data-v-b52d3aa1]{display:flex;flex-direction:column;gap:2px;margin-top:2px}.badge[data-v-b52d3aa1]{font-size:10px;padding:0 3px;border-radius:3px;width:fit-content}.badge.ok[data-v-b52d3aa1]{background:#f0f9eb;color:#67c23a}.badge.fail[data-v-b52d3aa1]{background:#fef0f0;color:#f56c6c}.progress-meta[data-v-b52d3aa1]{margin-top:10px;font-size:13px;color:#606266}.done-box[data-v-b52d3aa1]{padding:16px;border-radius:6px;font-size:14px}.done-box.success[data-v-b52d3aa1]{background:#f0f9eb;color:#67c23a}.done-box.failed[data-v-b52d3aa1]{background:#fef0f0;color:#f56c6c}.log-box[data-v-b52d3aa1]{margin-top:12px;max-height:260px;overflow-y:auto;background:#f5f7fa;border-radius:6px;padding:8px 12px;font-size:12px}.log-line[data-v-b52d3aa1]{padding:2px 0;display:flex;gap:8px}.log-time[data-v-b52d3aa1]{color:#909399;flex-shrink:0}.log-msg[data-v-b52d3aa1]{word-break:break-all}.log-running[data-v-b52d3aa1]{color:#409eff}.log-failed[data-v-b52d3aa1]{color:#f56c6c}.log-info[data-v-b52d3aa1]{color:#606266}.missed-alert[data-v-b52d3aa1]{margin-bottom:12px}.missed-alert-row[data-v-b52d3aa1]{display:flex;align-items:center;gap:12px}.missed-alert-text[data-v-b52d3aa1]{flex:1}.batch-card[data-v-b52d3aa1]{margin-bottom:12px}.batch-header[data-v-b52d3aa1]{display:flex;justify-content:space-between;align-items:center}.records-stats[data-v-b52d3aa1]{margin-bottom:10px;padding:8px 12px;border-radius:6px;background:#f4f4f5;font-size:13px;color:#606266}.import-tip[data-v-b52d3aa1]{margin-bottom:12px;font-size:12px;color:#909399;line-height:1.6}.import-row[data-v-b52d3aa1]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.import-summary[data-v-b52d3aa1]{margin-bottom:8px;font-size:13px;color:#606266}.schedule-alert[data-v-b52d3aa1]{margin-bottom:14px}.schedule-fix[data-v-b52d3aa1]{margin-right:8px;color:#606266}.table-header-row[data-v-b52d3aa1]{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:12px}.table-count[data-v-b52d3aa1]{font-size:13px;color:#606266}.table-scope-tip[data-v-b52d3aa1]{font-size:12px;color:#909399}.table-scope-tip.warn[data-v-b52d3aa1]{color:#e6a23c}.empty-guide[data-v-b52d3aa1]{padding:24px 0;font-size:13px;color:#909399}
