.todo-panel[data-v-b4cf9ea7]{background:linear-gradient(135deg,#fff8f0,#fff3e0);border:1px solid #ffe0b2;border-radius:12px;padding:20px;margin-bottom:20px}.todo-panel h3[data-v-b4cf9ea7]{color:#e65100;margin-bottom:16px;font-size:18px;font-weight:600}.warning-card[data-v-b4cf9ea7]{background:#fff;border-radius:10px;padding:16px;box-shadow:0 2px 12px #e651001a}.warning-header[data-v-b4cf9ea7]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px dashed #ffe0b2}.warning-title[data-v-b4cf9ea7]{display:flex;align-items:center;gap:8px;color:#e65100;font-size:15px;font-weight:600;margin:0}.warning-icon[data-v-b4cf9ea7]{font-size:20px}.warning-count[data-v-b4cf9ea7]{background:linear-gradient(135deg,#ff9800,#e65100);color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.warning-list[data-v-b4cf9ea7]{list-style:none;padding:0;margin:0}.warning-list li[data-v-b4cf9ea7]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(135deg,#fff8f0,#fff3e0);border-radius:8px;margin-bottom:10px;transition:all .3s ease;border:1px solid #ffe0b2}.warning-list li[data-v-b4cf9ea7]:hover{transform:translate(4px);box-shadow:0 4px 16px #e6510026}.warning-list li[data-v-b4cf9ea7]:last-child{margin-bottom:0}.warning-item-content[data-v-b4cf9ea7]{flex:1;min-width:0}.warning-item-title[data-v-b4cf9ea7]{display:flex;align-items:center;gap:8px;color:#333;font-size:14px;margin-bottom:6px}.warning-item-study[data-v-b4cf9ea7]{color:#888;font-size:12px;font-weight:400}.warning-item-meta[data-v-b4cf9ea7]{display:flex;gap:16px;font-size:12px;color:#666}.modal-overlay[data-v-b4cf9ea7]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.modal-container[data-v-b4cf9ea7]{background:#fff;border-radius:12px;width:480px;max-width:90vw;box-shadow:0 16px 48px #00000040;overflow:hidden}.modal-header-warning[data-v-b4cf9ea7]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fff3e0;border-bottom:1px solid #ffe0b2;font-size:16px;font-weight:600;color:#e65100}.modal-close[data-v-b4cf9ea7]{background:none;border:none;font-size:22px;color:#999;cursor:pointer;line-height:1}.modal-close[data-v-b4cf9ea7]:hover{color:#333}.modal-body[data-v-b4cf9ea7]{padding:20px}.modal-warning-text[data-v-b4cf9ea7]{margin:0 0 12px;font-size:14px;color:#555}.missing-date-list[data-v-b4cf9ea7]{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.missing-date-item[data-v-b4cf9ea7]{padding:8px 12px;background:#fff3e0;border-left:3px solid #e65100;border-radius:4px;font-size:14px;color:#e65100;font-weight:500}.modal-summary-row[data-v-b4cf9ea7]{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:#666;padding-top:12px;border-top:1px solid #eee}.modal-summary-row strong[data-v-b4cf9ea7]{color:#333}.modal-footer[data-v-b4cf9ea7]{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #eee;background:#fafafa}.modal-btn[data-v-b4cf9ea7]{padding:8px 20px;border-radius:6px;font-size:14px;cursor:pointer;border:none;font-weight:500}.modal-btn-secondary[data-v-b4cf9ea7]{background:#f5f5f5;color:#666;border:1px solid #ddd}.modal-btn-secondary[data-v-b4cf9ea7]:hover{background:#eee}.modal-btn-primary[data-v-b4cf9ea7]{background:#ff9800;color:#fff}.modal-btn-primary[data-v-b4cf9ea7]:hover{background:#f57c00}.pending-upload-bar[data-v-b4cf9ea7]{display:flex;align-items:center;gap:12px;padding:10px 16px;margin:0 16px 12px;background:#e8f5e9;border:1px solid #a5d6a7;border-radius:8px;flex-wrap:wrap}.pending-upload-icon[data-v-b4cf9ea7]{font-size:18px}.pending-upload-text[data-v-b4cf9ea7]{font-size:13px;color:#333;flex:1;min-width:200px}.pending-upload-text strong[data-v-b4cf9ea7]{color:#2e7d32}.button-primary-small[data-v-b4cf9ea7]{background:#4caf50;color:#fff;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500}.button-primary-small[data-v-b4cf9ea7]:hover{background:#388e3c}.button-batch-save[data-v-b4cf9ea7]{background:#2196f3;color:#fff;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500}.button-batch-save[data-v-b4cf9ea7]:hover{background:#1565c0}.warning-item-principal[data-v-b4cf9ea7]{background:#f5f5f5;padding:2px 8px;border-radius:4px}.warning-item-expired[data-v-b4cf9ea7]{color:#e53935;font-weight:500}.warning-item-expired strong[data-v-b4cf9ea7]{color:#c62828;font-size:14px}.combobox-wrapper[data-v-b4cf9ea7]{position:relative}.combobox-input[data-v-b4cf9ea7]{width:100%;box-sizing:border-box}.dropdown-options[data-v-b4cf9ea7]{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #0000001a;z-index:100;max-height:200px;overflow-y:auto}.dropdown-option[data-v-b4cf9ea7]{padding:10px 14px;cursor:pointer;transition:background .2s ease;font-size:13px}.dropdown-option[data-v-b4cf9ea7]:hover{background:#f5f5f5}.new-principal-hint[data-v-b4cf9ea7]{font-size:12px;color:#27ae60;margin-top:6px;padding-left:4px}.filter-section[data-v-b4cf9ea7]{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #e9ecef;border-radius:12px;padding:20px 24px;margin-bottom:20px;display:flex;flex-wrap:wrap;gap:20px;align-items:flex-end;box-shadow:0 2px 8px #0000000a}.filter-group[data-v-b4cf9ea7]{display:flex;flex-direction:column;gap:6px;min-width:180px;flex:1;max-width:240px}.filter-label[data-v-b4cf9ea7]{font-size:12px;font-weight:500;color:#555;letter-spacing:.3px}.filter-input[data-v-b4cf9ea7],.filter-select[data-v-b4cf9ea7]{padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-size:13px;transition:all .3s ease;background:#fff;outline:none}.filter-input[data-v-b4cf9ea7]:focus,.filter-select[data-v-b4cf9ea7]:focus{border-color:#4a90d9;box-shadow:0 0 0 3px #4a90d91a}.filter-input[data-v-b4cf9ea7]::placeholder{color:#aaa}.filter-select[data-v-b4cf9ea7]{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.filter-reset[data-v-b4cf9ea7]{padding:10px 24px;background:linear-gradient(135deg,#6c757d,#495057);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s ease;height:fit-content}.filter-reset[data-v-b4cf9ea7]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6c757d4d}.filter-reset[data-v-b4cf9ea7]:active{transform:translateY(0)}.status-expired[data-v-b4cf9ea7]{background-color:#ffebee;color:#c62828;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.status-active[data-v-b4cf9ea7]{background-color:#e8f5e9;color:#2e7d32;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.status-reported[data-v-b4cf9ea7]{background-color:#e3f2fd;color:#1565c0;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.notification[data-v-b4cf9ea7]{position:fixed;top:80px;left:50%;transform:translate(-50%);padding:16px 32px;border-radius:10px;color:#fff;font-weight:600;font-size:15px;display:flex;align-items:center;gap:10px;z-index:10000;box-shadow:0 6px 30px #00000040;min-width:300px;justify-content:center}.notification.success[data-v-b4cf9ea7]{background:linear-gradient(135deg,#27ae60,#1e8449)}.notification.error[data-v-b4cf9ea7]{background:linear-gradient(135deg,#e74c3c,#c0392b)}.notification.warning[data-v-b4cf9ea7]{background:linear-gradient(135deg,#ff9800,#f57c00)}.notification-icon[data-v-b4cf9ea7]{width:24px;height:24px;background:#fff3;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:14px;font-weight:700}.notification-message[data-v-b4cf9ea7]{font-size:14px}.slide-fade-enter-active[data-v-b4cf9ea7]{transition:all .4s ease-out}.slide-fade-leave-active[data-v-b4cf9ea7]{transition:all .3s ease-in}.slide-fade-enter-from[data-v-b4cf9ea7],.slide-fade-leave-to[data-v-b4cf9ea7]{transform:translate(100%);opacity:0}.detail-report-checkbox[data-v-b4cf9ea7]{width:16px;height:16px;cursor:pointer;accent-color:#409eff;flex-shrink:0}.detail-report-item[data-v-b4cf9ea7]{cursor:pointer}.detail-report-item-checked[data-v-b4cf9ea7]{background:#e8f4fd!important;border-color:#409eff!important}.detail-report-item[data-v-b4cf9ea7]:hover{background:#e8f4fd;border-color:#b3d7ff;transform:translate(4px)}.detail-report-subitem[data-v-b4cf9ea7]{padding-left:48px!important;cursor:default!important;background:#fafafa!important;border-color:#eee!important;font-size:13px}.detail-report-subitem[data-v-b4cf9ea7]:hover{background:#fafafa!important;border-color:#eee!important;transform:none!important}.detail-report-subicon[data-v-b4cf9ea7]{font-size:13px}.button-secondary[data-v-b4cf9ea7]{background:#f0f0f0!important;color:#666!important}.button-secondary[data-v-b4cf9ea7]:hover{background:#e0e0e0!important}.detail-modal[data-v-b4cf9ea7]{max-width:640px!important}.detail-section[data-v-b4cf9ea7]{margin-bottom:20px}.detail-section-title[data-v-b4cf9ea7]{font-size:15px;font-weight:600;color:#333;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #eee}.detail-info-grid[data-v-b4cf9ea7]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-info-item[data-v-b4cf9ea7]{display:flex;flex-direction:column;gap:4px}.detail-info-label[data-v-b4cf9ea7]{font-size:12px;color:#888;font-weight:500}.detail-info-value[data-v-b4cf9ea7]{font-size:14px;color:#333;font-weight:600}.detail-empty[data-v-b4cf9ea7]{text-align:center;color:#999;font-size:14px;padding:30px 0}.detail-report-group[data-v-b4cf9ea7]{margin-bottom:12px}.detail-report-group-title[data-v-b4cf9ea7]{font-size:13px;font-weight:600;color:#555;margin:0 0 6px;padding:0 4px}.detail-report-list[data-v-b4cf9ea7]{list-style:none;padding:0;margin:0}.detail-report-icon[data-v-b4cf9ea7]{font-size:20px}.detail-report-name[data-v-b4cf9ea7]{flex:1;font-size:14px;font-weight:500;color:#333}.detail-report-count[data-v-b4cf9ea7]{font-size:12px;color:#888;background:#e8e8e8;padding:2px 10px;border-radius:12px}.report-result-section[data-v-3ef7b086]{background:#fff;border-radius:16px;padding:24px;margin-top:20px;border:2px solid #e9ecef;box-shadow:0 4px 20px #00000014}.result-header[data-v-3ef7b086]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f1f3f4}.result-header h3[data-v-3ef7b086]{margin:0;font-size:18px;color:#1a1a1a;font-weight:700}.back-button[data-v-3ef7b086]{background:linear-gradient(135deg,#6c757d,#495057);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s}.back-button[data-v-3ef7b086]:hover{background:linear-gradient(135deg,#495057,#2d3436);transform:translateY(-2px)}.result-summary[data-v-3ef7b086]{display:flex;gap:30px;margin-bottom:20px;padding:16px;background:#f8f9fa;border-radius:12px}.summary-item[data-v-3ef7b086]{display:flex;align-items:center;gap:8px}.summary-label[data-v-3ef7b086]{font-size:14px;color:#6c757d;font-weight:500}.summary-value[data-v-3ef7b086]{font-size:14px;color:#28a745;font-weight:700}.result-list[data-v-3ef7b086]{display:flex;flex-direction:column;gap:16px}.result-item[data-v-3ef7b086]{background:#fafafa;border:1px solid #e9ecef;border-radius:12px;padding:20px;transition:all .3s}.result-item[data-v-3ef7b086]:hover{border-color:#007bff;box-shadow:0 4px 12px #007bff1a}.item-header[data-v-3ef7b086]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.item-room[data-v-3ef7b086]{font-size:16px;font-weight:700;color:#1a1a1a}.item-type[data-v-3ef7b086]{font-size:12px;padding:4px 12px;border-radius:20px;font-weight:500}.item-type.temp[data-v-3ef7b086]{background:#fff3cd;color:#856404}.item-type.humidity[data-v-3ef7b086]{background:#d1ecf1;color:#0c5460}.item-type.diff[data-v-3ef7b086]{background:#f8d7da;color:#721c24}.item-tags[data-v-3ef7b086]{display:flex;align-items:center;gap:8px}.item-trial-tag[data-v-3ef7b086]{font-size:12px;padding:4px 12px;border-radius:20px;font-weight:500;background:#cce5ff;color:#004085}.item-content[data-v-3ef7b086]{margin-bottom:12px}.item-content p[data-v-3ef7b086]{margin:4px 0;font-size:14px;color:#495057}.item-detail[data-v-3ef7b086]{color:#6c757d!important;font-size:13px!important}.item-standard[data-v-3ef7b086]{color:#28a745!important;font-size:12px!important;font-style:italic}.item-time[data-v-3ef7b086]{display:flex;gap:20px;font-size:12px;color:#6c757d}.description-header[data-v-3ef7b086]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.description-label[data-v-3ef7b086]{font-size:14px;font-weight:600;color:#495057}.report-description[data-v-3ef7b086]{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;padding:16px 20px;font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.6;color:#495057;white-space:pre-wrap;word-break:break-all;max-height:300px;overflow-y:auto;box-shadow:inset 0 1px 3px #0000000d}.report-description[data-v-3ef7b086]::-webkit-scrollbar{width:6px}.report-description[data-v-3ef7b086]::-webkit-scrollbar-track{background:#e9ecef;border-radius:3px}:is()[data-v-3ef7b086]{background:#adb5bd;border-radius:3px}:is()[data-v-3ef7b086]:hover{background:#6c757d}.upload-progress[data-v-3ef7b086]{background:#fff;border-radius:12px;padding:16px 20px;margin-top:16px;border:1px solid #e9ecef;box-shadow:0 2px 8px #0000000f}.progress-header[data-v-3ef7b086]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;color:#495057}.progress-percent[data-v-3ef7b086]{font-weight:600;color:#007bff}.progress-bar[data-v-3ef7b086]{height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.progress-fill[data-v-3ef7b086]{height:100%;background:linear-gradient(135deg,#007bff,#0056b3);border-radius:4px;transition:width .3s ease}.upload-success[data-v-3ef7b086]{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#d4edda,#c3e6cb);border:1px solid #28a745;border-radius:12px;padding:14px 20px;margin-top:16px;animation:fadeIn-3ef7b086 .3s ease}@keyframes fadeIn-3ef7b086{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.success-icon[data-v-3ef7b086]{width:24px;height:24px;background:#28a745;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.success-text[data-v-3ef7b086]{font-size:14px;color:#155724;font-weight:500}.report-actions[data-v-3ef7b086]{margin-top:24px;display:flex;justify-content:center}.btn-generate-report[data-v-3ef7b086]{background:linear-gradient(135deg,#4a90d9,#357abd);color:#fff;border:none;padding:14px 40px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;letter-spacing:1px}.btn-generate-report[data-v-3ef7b086]:hover{transform:translateY(-2px);box-shadow:0 4px 16px #4a90d966}.btn-generate-report[data-v-3ef7b086]:active{transform:translateY(0)}.btn-generate-report[data-v-3ef7b086]:disabled{background:#cbd5e0;cursor:not-allowed;transform:none;box-shadow:none}.config-section[data-v-e66404e6]{background:#fff;border-radius:16px;padding:24px;margin-bottom:20px;border:2px solid #e9ecef;box-shadow:0 4px 20px #00000014}.config-section h3[data-v-e66404e6]{margin:0 0 20px;font-size:16px;color:#1a1a1a;font-weight:700;display:flex;align-items:center;gap:10px}.config-section h3[data-v-e66404e6]:before{content:"";width:4px;height:20px;background:linear-gradient(135deg,#007bff,#0056b3);border-radius:2px}.config-grid[data-v-e66404e6]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.config-item[data-v-e66404e6]{display:flex;flex-direction:column;gap:8px}.config-item label[data-v-e66404e6]{font-size:14px;color:#495057;font-weight:600}.config-input[data-v-e66404e6]{padding:12px 16px;border:2px solid #dee2e6;border-radius:10px;font-size:15px;transition:all .3s ease;background:#f8f9fa}.config-input[data-v-e66404e6]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;background:#fff}.config-select[data-v-e66404e6]{padding:12px 16px;border:2px solid #dee2e6;border-radius:10px;font-size:15px;transition:all .3s ease;background:#f8f9fa;cursor:pointer;min-width:200px}.config-select[data-v-e66404e6]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;background:#fff}.time-range-container[data-v-e66404e6]{display:flex;gap:30px;flex-wrap:wrap}.time-range-item[data-v-e66404e6]{display:flex;flex-direction:column;gap:8px}.time-input[data-v-e66404e6]{padding:12px 16px;border:2px solid #dee2e6;border-radius:10px;font-size:15px;transition:all .3s ease;background:#f8f9fa;min-width:120px}.time-input[data-v-e66404e6]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;background:#fff}.area-filter[data-v-e66404e6]{display:flex;flex-wrap:wrap;gap:12px}.area-tag[data-v-e66404e6]{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #dee2e6;border-radius:25px;padding:10px 20px;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);font-size:14px;font-weight:600;color:#495057}.area-tag[data-v-e66404e6]:hover{border-color:#007bff;background:linear-gradient(135deg,#f0f7ff,#e6f0ff)}.area-tag.active[data-v-e66404e6]{border-color:#28a745;background:linear-gradient(135deg,#28a745,#218838);color:#fff}.config-actions[data-v-e66404e6]{display:flex;gap:15px;margin-top:20px;flex-wrap:wrap}.save-button[data-v-e66404e6],.reset-button[data-v-e66404e6],.load-button[data-v-e66404e6]{padding:14px 30px;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);border:none}.save-button[data-v-e66404e6]{background:linear-gradient(135deg,#28a745,#218838);color:#fff;box-shadow:0 4px 15px #28a7454d}.save-button[data-v-e66404e6]:hover{transform:translateY(-3px);box-shadow:0 8px 25px #28a74566}.reset-button[data-v-e66404e6]{background:linear-gradient(135deg,#ffc107,#e0a800);color:#1a1a1a;box-shadow:0 4px 15px #ffc1074d}.reset-button[data-v-e66404e6]:hover{transform:translateY(-3px);box-shadow:0 8px 25px #ffc10766}.load-button[data-v-e66404e6]{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;box-shadow:0 4px 15px #007bff4d}.load-button[data-v-e66404e6]:hover{transform:translateY(-3px);box-shadow:0 8px 25px #007bff66}.section-card[data-v-e66404e6]{background:#fff;border-radius:16px;padding:24px;margin-bottom:24px;border:2px solid #e9ecef;box-shadow:0 4px 20px #00000014}.section-header[data-v-e66404e6]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #f1f3f4}.section-header h3[data-v-e66404e6]{margin:0;font-size:18px;color:#1a1a1a;font-weight:700;display:flex;align-items:center;gap:10px}.section-header h3[data-v-e66404e6]:before{content:"";width:4px;height:24px;background:linear-gradient(135deg,#007bff,#0056b3);border-radius:2px}.section-header h4[data-v-e66404e6]{margin:0 0 16px;font-size:15px;color:#2d3436;font-weight:600}.refresh-btn[data-v-e66404e6]{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #667eea4d}.refresh-btn[data-v-e66404e6]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.refresh-icon[data-v-e66404e6]{font-size:16px}.table-container[data-v-e66404e6]{overflow-x:auto;border-radius:12px;border:1px solid #e9ecef}.criteria-table[data-v-e66404e6]{width:100%;border-collapse:collapse;background:#fff}.criteria-table thead[data-v-e66404e6]{background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.criteria-table th[data-v-e66404e6]{padding:14px 16px;text-align:left;font-size:14px;font-weight:700;color:#495057;border-bottom:2px solid #dee2e6;white-space:nowrap}.criteria-table td[data-v-e66404e6]{padding:14px 16px;font-size:14px;color:#2d3436;border-bottom:1px solid #f1f3f4;white-space:nowrap}.criteria-table tbody tr[data-v-e66404e6]:hover{background:linear-gradient(135deg,#f0f7ff,#e6f0ff)}.merged-area[data-v-e66404e6]{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);font-weight:700;color:#2e7d32;vertical-align:middle;position:relative}.merged-area[data-v-e66404e6]:before{content:"";position:absolute;left:8px;top:50%;transform:translateY(-50%);width:4px;height:60%;background:linear-gradient(180deg,#4caf50,#2e7d32);border-radius:2px}.criteria-table tbody tr:last-child td[data-v-e66404e6]{border-bottom:none}.empty-row[data-v-e66404e6]{text-align:center;color:#6c757d;font-style:italic}.action-buttons[data-v-e66404e6]{display:flex;gap:8px}.action-btn[data-v-e66404e6]{padding:8px 12px;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:4px}.edit-btn[data-v-e66404e6]{background:linear-gradient(135deg,#ffc107,#e0a800);color:#1a1a1a}.edit-btn[data-v-e66404e6]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ffc10766}.delete-btn[data-v-e66404e6]{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.delete-btn[data-v-e66404e6]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #dc354566}.notification-overlay[data-v-e66404e6]{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:1000;animation:fadeIn-e66404e6 .3s ease}.notification-toast[data-v-e66404e6]{display:flex;align-items:center;gap:12px;padding:16px 24px;border-radius:12px;font-size:15px;font-weight:600;box-shadow:0 8px 32px #00000026;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideUp-e66404e6 .4s cubic-bezier(.34,1.56,.64,1)}.notification-toast.success[data-v-e66404e6]{background:linear-gradient(135deg,#4caf50f2,#43a047f2);color:#fff}.notification-toast.error[data-v-e66404e6]{background:linear-gradient(135deg,#dc3545f2,#cb202df2);color:#fff}.notification-toast.info[data-v-e66404e6]{background:linear-gradient(135deg,#17a2b8f2,#117b8df2);color:#fff}.notification-icon[data-v-e66404e6]{font-size:20px}.notification-text[data-v-e66404e6]{min-width:120px}@keyframes fadeIn-e66404e6{0%{opacity:0}to{opacity:1}}@keyframes slideUp-e66404e6{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.import-area[data-v-39f17a67]{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px dashed #64b5f6;border-radius:12px;padding:40px;text-align:center;cursor:pointer;transition:all .3s ease;margin-bottom:20px}.import-area[data-v-39f17a67]:hover{background:linear-gradient(135deg,#bbdefb,#90caf9);border-color:#42a5f5;transform:translateY(-2px);box-shadow:0 8px 24px #42a5f533}.file-upload-label[data-v-39f17a67]{display:flex;flex-direction:column;align-items:center;gap:10px;color:#1976d2}.upload-icon[data-v-39f17a67]{font-size:48px}.upload-text[data-v-39f17a67]{font-size:16px;font-weight:500}.upload-hint[data-v-39f17a67]{font-size:12px;color:#64b5f6}.hidden-file-input[data-v-39f17a67]{display:none}.config-section[data-v-39f17a67]{background:#f8f9fa;padding:16px;border-radius:8px;margin-bottom:16px}.config-section h4[data-v-39f17a67]{margin-bottom:12px;color:#333}.config-row[data-v-39f17a67]{display:flex;align-items:center;gap:10px;margin-bottom:10px}.config-row label[data-v-39f17a67]{font-size:14px;color:#555}.config-input[data-v-39f17a67]{width:80px;padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.stats-section[data-v-39f17a67]{display:flex;align-items:center;gap:20px;margin-bottom:16px;padding:12px 16px;background:#f8f9fa;border-radius:8px}.stat-item[data-v-39f17a67]{display:flex;align-items:center;gap:8px}.stat-label[data-v-39f17a67]{font-size:14px;color:#666}.stat-value[data-v-39f17a67]{font-size:16px;font-weight:600;color:#333}.stat-value.warning[data-v-39f17a67]{color:#e74c3c}.stat-value.info[data-v-39f17a67]{color:#3498db}.config-toggle[data-v-39f17a67]{margin-left:auto;padding:6px 12px;background:#6c757d;color:#fff;border:none;border-radius:4px;font-size:13px;cursor:pointer}.config-toggle[data-v-39f17a67]:hover{background:#5a6268}.filter-section[data-v-39f17a67]{display:flex;align-items:center;justify-content:center;gap:8px;align-self:center;margin-left:auto}.filter-label[data-v-39f17a67]{font-size:13px;color:#666;line-height:1.5}.filter-select[data-v-39f17a67]{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:13px;background:#fff;cursor:pointer;vertical-align:middle;line-height:1.5;height:32px;box-sizing:border-box}.filter-select[data-v-39f17a67]:focus{outline:none;border-color:#2196f3}.table-container[data-v-39f17a67]{overflow-x:auto}.data-table[data-v-39f17a67]{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 12px #00000014}.data-table th[data-v-39f17a67]{background:linear-gradient(135deg,#1976d2,#1565c0);color:#fff;padding:14px 16px;text-align:left;font-weight:600;font-size:13px}.data-table td[data-v-39f17a67]{padding:12px 16px;color:#444;font-size:13px;border-bottom:1px solid #eee}.data-table tbody tr[data-v-39f17a67]{transition:background-color .2s ease}.data-table tbody tr.even[data-v-39f17a67]{background:#fff}.data-table tbody tr.odd[data-v-39f17a67]{background:#f8f9fa}.data-table tbody tr[data-v-39f17a67]:hover{background:#e3f2fd}.data-table tbody tr.pressure[data-v-39f17a67]{background:#fff5f5}.data-table tbody tr.pressure.odd[data-v-39f17a67]{background:#fef2f2}.data-table tbody tr.pressure[data-v-39f17a67]:hover{background:#ffebee}.data-table tbody tr:last-child td[data-v-39f17a67]{border-bottom:none}.unrecovered[data-v-39f17a67]{color:#e74c3c;font-weight:500}.empty-state[data-v-39f17a67]{text-align:center;padding:60px 20px;color:#999}.empty-icon[data-v-39f17a67]{font-size:64px;margin-bottom:16px}.empty-state p[data-v-39f17a67]{margin:8px 0;font-size:14px}.empty-hint[data-v-39f17a67]{color:#bbb!important;font-size:12px!important}.button-primary[data-v-39f17a67]{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;cursor:pointer;font-weight:500}.button-primary[data-v-39f17a67]:hover{background:linear-gradient(135deg,#1976d2,#1565c0)}.button-secondary[data-v-39f17a67]{background:#6c757d;color:#fff;border:none;padding:8px 16px;border-radius:4px;font-size:13px;cursor:pointer}.button-secondary[data-v-39f17a67]:hover{background:#5a6268}.flex-space-between[data-v-39f17a67]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.lab-floor-plan[data-v-7e2b0da2]{font-family:Microsoft YaHei,PingFang SC,sans-serif;max-width:1600px;margin:0 auto;padding:20px;background:#fff}.header[data-v-7e2b0da2]{background:linear-gradient(90deg,#2e7d32,#4caf50,#2e7d32);color:#fff;padding:20px;text-align:center;margin-bottom:20px;box-shadow:0 4px 12px #2e7d324d;position:relative}.header .tip[data-v-7e2b0da2]{font-size:14px;color:#fffc;margin-top:8px;margin-bottom:0}.header h1[data-v-7e2b0da2]{font-size:28px;font-weight:700;margin:0;letter-spacing:4px}.floor-switch[data-v-7e2b0da2]{position:absolute;top:10px;right:20px;display:flex;gap:8px}.floor-btn[data-v-7e2b0da2]{padding:8px 16px;border:1px solid rgba(255,255,255,.3);background:#ffffff1a;color:#fff;border-radius:4px;cursor:pointer;font-size:14px;transition:all .3s ease}.floor-btn[data-v-7e2b0da2]:hover{background:#fff3}.floor-btn.active[data-v-7e2b0da2]{background:#ffffff4d;border-color:#ffffff80}.plan-container[data-v-7e2b0da2]{display:flex;gap:10px}.plan-content[data-v-7e2b0da2]{flex:0 0 auto;min-width:100%;background:#fff;border:2px solid #ddd;padding:15px;border-radius:8px;position:relative}.row[data-v-7e2b0da2]{display:flex;gap:6px;margin-bottom:6px;align-items:stretch;height:100px}.room[data-v-7e2b0da2]{border:1px solid #999;padding:8px 6px;text-align:center;position:relative;transition:all .2s ease;cursor:pointer;flex:1 1 80px;min-width:80px;max-width:120px;height:80px;display:flex;flex-direction:column;justify-content:center;align-items:center;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;overflow:hidden}.room[data-v-7e2b0da2]:hover{transform:scale(1.02);box-shadow:0 2px 8px #0003;z-index:10;background-color:#ffffffe6!important;border-color:#666!important}.room .icon[data-v-7e2b0da2]{display:block;font-size:14px;margin-bottom:2px}.room .number[data-v-7e2b0da2]{display:block;font-size:11px;font-weight:700;color:#333;margin-bottom:2px}.room .name[data-v-7e2b0da2]{display:block;font-size:9px;color:#666;line-height:1.2}.room.spf[data-v-7e2b0da2]{background-color:#e8f5e9;border-color:#4caf50}.room.ordinary-1[data-v-7e2b0da2]{background-color:#e3f2fd;border-color:#2196f3}.room.ordinary-2[data-v-7e2b0da2]{background-color:#f3e5f5;border-color:#9c27b0}.room.ordinary-3[data-v-7e2b0da2]{background-color:#e0f7fa;border-color:#00bcd4}.room.toxic[data-v-7e2b0da2]{background-color:#ffebee;border-color:#f44336}.room.surgery[data-v-7e2b0da2]{background-color:#fff3e0;border-color:#ff9800}.room.breeding[data-v-7e2b0da2]{background-color:#e8f5e9;border-color:#4caf50}.room.utility[data-v-7e2b0da2]{background-color:#f5f5f5;border-color:#9e9e9e}.room.tall[data-v-7e2b0da2]{flex:0 0 60px}.room.elevator[data-v-7e2b0da2]{flex:0 0 70px}.room.entrance[data-v-7e2b0da2]{flex:0 0 65px}.room.stair[data-v-7e2b0da2],.room.power[data-v-7e2b0da2]{flex:0 0 55px}.room.machine[data-v-7e2b0da2]{flex:0 0 60px}.room.ac-room[data-v-7e2b0da2]{flex:0 0 50px}.room.clean-area[data-v-7e2b0da2]{flex:0 0 100px;display:flex;align-items:center;justify-content:center}.room.clean-area .name[data-v-7e2b0da2]{font-size:10px;font-weight:700}.passage[data-v-7e2b0da2]{background:#fff;border:none;flex:0 1 30px;min-width:10px;max-width:60px}.passage.wide[data-v-7e2b0da2]{flex:1 1 80px;min-width:30px;max-width:150px}.vertical-rooms[data-v-7e2b0da2]{display:flex;flex-direction:column;gap:6px;height:100%}.room.half-height[data-v-7e2b0da2]{height:47px!important;flex:0 0 auto!important}.room.double-width[data-v-7e2b0da2]{width:160px!important}.room.width-90[data-v-7e2b0da2]{width:100px!important}.corridor-label[data-v-7e2b0da2]{text-align:center;font-size:12px;color:#666;margin:4px 0;font-weight:500}.legend[data-v-7e2b0da2]{width:220px;background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;padding:16px}.legend-item[data-v-7e2b0da2]{display:flex;align-items:center;gap:10px;margin-bottom:12px}.legend-item[data-v-7e2b0da2]:last-child{margin-bottom:0}.color-box[data-v-7e2b0da2]{width:24px;height:16px;border:1px solid #999;border-radius:2px}.color-box.spf[data-v-7e2b0da2]{background-color:#c8e6c9;border-color:#4caf50}.color-box.ordinary-1[data-v-7e2b0da2]{background-color:#bbdefb;border-color:#2196f3}.color-box.ordinary-2[data-v-7e2b0da2]{background-color:#e1bee7;border-color:#9c27b0}.color-box.ordinary-3[data-v-7e2b0da2]{background-color:#b2ebf2;border-color:#00bcd4}.color-box.surgery[data-v-7e2b0da2]{background-color:#fff3e0;border-color:#ff9800}.color-box.breeding[data-v-7e2b0da2]{background-color:#e8f5e9;border-color:#4caf50;border-color:#00bcd4}.color-box.toxic[data-v-7e2b0da2]{background-color:#ffcdd2;border-color:#f44336}.legend-item .label[data-v-7e2b0da2]{font-size:13px;color:#333;line-height:1.4}.legend-tip[data-v-7e2b0da2]{margin-top:12px;padding-top:12px;border-top:1px solid #eee}.modal-overlay[data-v-7e2b0da2]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-7e2b0da2]{background:#fff;border-radius:12px;width:90%;max-width:500px;box-shadow:0 20px 40px #0003}.modal-header[data-v-7e2b0da2]{padding:20px;border-bottom:1px solid #eee}.modal-header h3[data-v-7e2b0da2]{margin:0;font-size:18px;color:#333}.modal-body[data-v-7e2b0da2]{padding:20px}.form-group[data-v-7e2b0da2]{margin-bottom:16px}.form-row[data-v-7e2b0da2]{display:flex;gap:16px}.form-row .form-group[data-v-7e2b0da2]{flex:1}.form-group label[data-v-7e2b0da2]{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#333}.plan-textarea[data-v-7e2b0da2]{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px;resize:vertical;box-sizing:border-box}.form-input[data-v-7e2b0da2]{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box}.form-select[data-v-7e2b0da2]{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box;background-color:#fff}.plans-list[data-v-7e2b0da2]{margin-bottom:20px;padding:12px;background:#f9f9f9;border-radius:8px}.plans-list label[data-v-7e2b0da2]{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#333}.plan-item[data-v-7e2b0da2]{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#fff;border:1px solid #eee;border-radius:6px;margin-bottom:8px;cursor:pointer;transition:all .2s ease}.plan-item[data-v-7e2b0da2]:hover{background:#f0f8ff;border-color:#4caf50}.plan-item[data-v-7e2b0da2]:last-child{margin-bottom:0}.plan-content[data-v-7e2b0da2]{flex:1;min-width:0}.plan-text[data-v-7e2b0da2]{display:block;font-size:13px;color:#333;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-date[data-v-7e2b0da2]{display:block;font-size:11px;color:#666;margin-bottom:2px}.plan-rooms[data-v-7e2b0da2]{display:block;font-size:11px;color:#999;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-item.merged[data-v-7e2b0da2]{padding:10px;display:flex;align-items:flex-start}.plan-item.merged .plan-content[data-v-7e2b0da2]{flex:1;min-width:0;word-break:break-all}.plan-item.merged .plan-text[data-v-7e2b0da2]{white-space:normal;overflow:visible;text-overflow:clip;margin-bottom:4px}.status-select[data-v-7e2b0da2]{flex-shrink:0;margin-left:12px;width:80px;max-width:80px;font-size:12px;padding:4px 8px}.plan-status[data-v-7e2b0da2]{display:inline-block;font-size:11px;padding:2px 6px;border-radius:4px}.plan-status.pending[data-v-7e2b0da2]{background:#fff3e0;color:#ff9800}.plan-status.in-progress[data-v-7e2b0da2]{background:#e3f2fd;color:#2196f3}.plan-status.completed[data-v-7e2b0da2]{background:#e8f5e9;color:#4caf50}.plan-status.cancelled[data-v-7e2b0da2]{background:#ffebee;color:#f44336}.btn-delete[data-v-7e2b0da2]{background:#f44336;color:#fff;padding:6px 12px;font-size:12px}.btn-delete[data-v-7e2b0da2]:hover{background:#d32f2f}.modal-footer[data-v-7e2b0da2]{padding:16px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:12px}.btn[data-v-7e2b0da2]{padding:10px 24px;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s ease}.btn-cancel[data-v-7e2b0da2]{background:#f5f5f5;color:#666}.btn-cancel[data-v-7e2b0da2]:hover{background:#eee}.btn-save[data-v-7e2b0da2]{background:#4caf50;color:#fff}.btn-save[data-v-7e2b0da2]:hover{background:#43a047}.room .plan[data-v-7e2b0da2]{font-size:9px;margin-top:2px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70px;padding:1px 3px;border-radius:2px}.room .plan.pending[data-v-7e2b0da2]{color:#ff9800;background:#ff980026;padding:1px 3px;border-radius:3px}.room .plan.in-progress[data-v-7e2b0da2]{color:#2196f3;background:#2196f326;padding:1px 3px;border-radius:3px}.room-with-plans[data-v-7e2b0da2]{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:flex-start!important;padding:5px;width:80px!important;flex:none!important}.room-with-plans .room-info[data-v-7e2b0da2]{flex:1;text-align:center;display:flex;flex-direction:column;align-items:center}.room-with-plans .room-info .number[data-v-7e2b0da2],.room-with-plans .room-info .name[data-v-7e2b0da2]{display:block}.room-with-plans .room-plans[data-v-7e2b0da2]{flex-shrink:0;width:40px;text-align:left;max-height:30px;overflow-y:auto}.room-with-plans .room-plans .plan[data-v-7e2b0da2]{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:1px;width:38px;font-size:9px}.room-checkbox[data-v-7e2b0da2]{position:absolute;top:2px;left:2px;width:14px;height:14px;cursor:pointer;z-index:10}.room.clickable[data-v-7e2b0da2]{cursor:pointer;pointer-events:auto;z-index:1}.room.clickable[data-v-7e2b0da2]:hover{background-color:#4caf501a;z-index:10}.batch-actions[data-v-7e2b0da2]{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#e8f5e9;border-radius:8px;margin-bottom:16px;border:1px solid #c8e6c9}.batch-actions span[data-v-7e2b0da2]{font-size:14px;color:#2e7d32;font-weight:500}.batch-actions .btn[data-v-7e2b0da2]{padding:6px 16px;font-size:13px}.test-container[data-v-720ade74]{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:400px;gap:20px}.button-group[data-v-720ade74]{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.test-button[data-v-720ade74]{padding:12px 24px;font-size:16px;background:linear-gradient(135deg,#4a90d9,#357abd);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease}.test-button[data-v-720ade74]:hover{transform:translateY(-2px);box-shadow:0 4px 16px #4a90d966}.test-button[data-v-720ade74]:active{transform:translateY(0)}.test-button.secondary[data-v-720ade74]{background:linear-gradient(135deg,#48bb78,#38a169)}.test-button.secondary[data-v-720ade74]:hover{box-shadow:0 4px 16px #48bb7866}.test-button[data-v-720ade74]:disabled{background:#cbd5e0;cursor:not-allowed;transform:none;box-shadow:none}.upload-section[data-v-720ade74]{width:100%;max-width:500px;display:flex;flex-direction:column;align-items:center;gap:16px}.upload-section h3[data-v-720ade74]{margin:0;color:#2d3748;font-size:16px}.upload-area[data-v-720ade74]{width:100%;min-height:150px;border:2px dashed #cbd5e0;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;background:#f7fafc}.upload-area[data-v-720ade74]:hover{border-color:#4a90d9;background:#ebf8ff}.upload-placeholder[data-v-720ade74]{text-align:center;padding:20px}.upload-icon[data-v-720ade74]{font-size:48px;display:block;margin-bottom:12px}.upload-placeholder p[data-v-720ade74]{margin:8px 0;color:#4a5568}.upload-hint[data-v-720ade74]{font-size:12px;color:#718096}.file-info[data-v-720ade74]{position:relative;text-align:center;padding:20px 40px}.file-icon[data-v-720ade74]{font-size:48px;display:block;margin-bottom:8px}.file-name[data-v-720ade74]{font-weight:600;color:#2d3748;margin:4px 0;word-break:break-all}.file-size[data-v-720ade74]{font-size:12px;color:#718096;margin:4px 0}.remove-file[data-v-720ade74]{position:absolute;top:8px;right:8px;background:#fc8181;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center}.remove-file[data-v-720ade74]:hover{background:#f56565}.result-message[data-v-720ade74]{padding:12px 20px;border-radius:6px;font-size:14px;max-width:400px;text-align:center}.result-message.success[data-v-720ade74]{background:#c6f6d5;color:#22543d}.result-message.error[data-v-720ade74]{background:#fed7d7;color:#742a2a}.notes-container[data-v-907d2a84]{display:flex;height:calc(100vh - 60px);background:#f5f7fa}.sidebar[data-v-907d2a84]{width:280px;min-width:280px;background:linear-gradient(180deg,#f8f9fc,#fff);border-right:1px solid #e8e8e8;display:flex;flex-direction:column;overflow:hidden;box-shadow:2px 0 8px #0000000a}.sidebar-header[data-v-907d2a84]{padding:16px;border-bottom:1px solid #e8e8e8;background:#fff}.add-note-btn[data-v-907d2a84]{width:100%;padding:10px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;box-shadow:0 2px 6px #667eea4d}.add-note-btn[data-v-907d2a84]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.add-note-btn[data-v-907d2a84]:active{transform:translateY(0)}.nav-menu[data-v-907d2a84]{flex:1;overflow-y:auto;padding:0;display:flex;flex-direction:column}.nav-toolbar[data-v-907d2a84]{padding:12px;border-bottom:1px solid #e8e8e8;background:#fff}.search-box[data-v-907d2a84]{position:relative;margin-bottom:8px}.search-icon[data-v-907d2a84]{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:14px;pointer-events:none}.search-input[data-v-907d2a84]{width:100%;padding:8px 12px 8px 32px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;transition:all .2s;background:#f7fafc}.search-input[data-v-907d2a84]:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.search-clear[data-v-907d2a84]{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px;color:#a0aec0;cursor:pointer;padding:4px;border-radius:50%;transition:all .2s;width:18px;height:18px;display:flex;align-items:center;justify-content:center}.search-clear[data-v-907d2a84]:hover{background:#e2e8f0;color:#4a5568}.note-count[data-v-907d2a84]{font-size:12px;color:#718096;padding:4px 8px;background:#f7fafc;border-radius:4px;display:inline-block}.child-notes-section[data-v-907d2a84]{padding:16px 20px;border-top:1px solid #e8e8e8;background:#fafbfc}.child-notes-header[data-v-907d2a84]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.child-notes-title[data-v-907d2a84]{font-size:14px;font-weight:600;color:#2d3748}.child-notes-count[data-v-907d2a84]{font-size:12px;color:#718096}.child-notes-list[data-v-907d2a84]{display:flex;flex-direction:column;gap:8px}.child-note-item[data-v-907d2a84]{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s;border:1px solid #e2e8f0}.child-note-item[data-v-907d2a84]:hover{background:#f7fafc;border-color:#cbd5e0;transform:translate(4px)}.child-note-icon[data-v-907d2a84]{font-size:16px}.child-note-title[data-v-907d2a84]{flex:1;font-size:14px;color:#2d3748}.child-note-date[data-v-907d2a84]{font-size:11px;color:#a0aec0}.category-custom[data-v-907d2a84]{margin-left:8px;width:150px!important}.nav-list-root[data-v-907d2a84]{list-style:none;padding:12px;margin:0;flex:1;overflow-y:auto}.tree-item[data-v-907d2a84]{list-style:none;margin:4px 0}.tree-node[data-v-907d2a84]{padding:12px 14px;cursor:pointer;display:flex;align-items:center;gap:10px;transition:all .25s cubic-bezier(.4,0,.2,1);border-radius:10px;font-size:14px;color:#2d3748;-webkit-user-select:none;user-select:none;position:relative;background:#fff;margin-bottom:4px;border:1px solid transparent}.tree-node[data-v-907d2a84]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;border-radius:3px;transition:background .25s}.tree-node[data-v-907d2a84]:hover{background:#fff;border-color:#e2e8f0;box-shadow:0 2px 8px #0000000f;transform:translate(2px)}.tree-node[data-v-907d2a84]:hover:before{background:#cbd5e0}.tree-node.active[data-v-907d2a84]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:500;border-color:transparent;box-shadow:0 4px 12px #667eea4d;transform:translate(0)}.tree-node.active[data-v-907d2a84]:before{background:#fff}.tree-arrow[data-v-907d2a84]{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:10px;color:#a0aec0;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:6px;background:#f7fafc;flex-shrink:0}.tree-node:hover .tree-arrow[data-v-907d2a84]{background:#edf2f7;color:#718096}.tree-arrow.expanded[data-v-907d2a84]{transform:rotate(90deg);color:#667eea;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.tree-arrow.tree-leaf[data-v-907d2a84]{visibility:hidden}.tree-icon[data-v-907d2a84]{font-size:16px;flex-shrink:0;transition:transform .2s}.tree-node:hover .tree-icon[data-v-907d2a84]{transform:scale(1.1)}.tree-node.active .tree-icon[data-v-907d2a84]{filter:brightness(1.2)}.tree-title[data-v-907d2a84]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5;font-weight:400}.tree-node.active .tree-title[data-v-907d2a84]{font-weight:500}.tree-children[data-v-907d2a84]{list-style:none;padding:0;margin:4px 0 4px 12px;position:relative;overflow:hidden}.tree-children[data-v-907d2a84]:before{content:"";position:absolute;left:-8px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#e2e8f0 0%,transparent 100%);border-radius:2px}.nav-empty[data-v-907d2a84]{padding:60px 20px;text-align:center;color:#a0aec0;font-size:14px;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center}.empty-icon[data-v-907d2a84]{font-size:48px;margin-bottom:16px;opacity:.6}.nav-empty p[data-v-907d2a84]{margin:6px 0}.nav-empty-hint[data-v-907d2a84]{color:#cbd5e0;font-size:12px;margin-top:8px}.notes-content[data-v-907d2a84]{flex:1;display:flex;flex-direction:column;overflow:hidden}.content-header[data-v-907d2a84]{padding:18px 30px;background:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.header-left h2[data-v-907d2a84]{margin:0 0 6px;color:#333;font-size:22px}.breadcrumb[data-v-907d2a84]{font-size:12px;color:#888}.breadcrumb-item[data-v-907d2a84]{cursor:pointer}.breadcrumb-item[data-v-907d2a84]:hover{color:#1976d2;text-decoration:underline}.header-right[data-v-907d2a84]{display:flex;gap:8px;align-items:center}.edit-btn[data-v-907d2a84],.add-child-btn[data-v-907d2a84],.delete-btn[data-v-907d2a84]{padding:7px 16px;border:none;border-radius:6px;cursor:pointer;font-size:13px;transition:background .2s}.edit-btn[data-v-907d2a84]{background:#2196f3;color:#fff}.edit-btn[data-v-907d2a84]:hover{background:#1976d2}.add-child-btn[data-v-907d2a84]{background:#fff;color:#2196f3;border:1px solid #2196F3}.add-child-btn[data-v-907d2a84]:hover{background:#e3f2fd}.delete-btn[data-v-907d2a84]{background:#fff;color:#e53935;border:1px solid #e53935}.delete-btn[data-v-907d2a84]:hover{background:#ffebee}.content-body[data-v-907d2a84]{flex:1;padding:30px;overflow-y:auto;background:#fff;margin:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.edit-mode[data-v-907d2a84]{display:flex;flex-direction:column;gap:12px;height:100%}.edit-title[data-v-907d2a84]{display:flex;align-items:center;gap:10px;font-size:14px;color:#555}.title-input[data-v-907d2a84]{flex:1;padding:8px 12px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px}.title-input[data-v-907d2a84]:focus{outline:none;border-color:#2196f3}.md-toolbar[data-v-907d2a84]{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;color:#4a5568;gap:12px;flex-wrap:wrap}.md-toolbar-title[data-v-907d2a84]{font-weight:500;color:#2d3748}.md-toolbar-hint[data-v-907d2a84]{color:#a0aec0;font-size:12px}.md-split[data-v-907d2a84]{flex:1;display:flex;gap:16px;min-height:400px}.md-editor[data-v-907d2a84]{flex:1;min-height:400px;padding:15px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;line-height:1.8;resize:none;font-family:Consolas,Monaco,Courier New,monospace;background:#fff}.note-editor[data-v-907d2a84]:focus{outline:none;border-color:#2196f3}.md-preview[data-v-907d2a84]{flex:1;border:1px solid #e2e8f0;border-radius:6px;overflow-y:auto;background:#fafafa;display:flex;flex-direction:column}.md-preview-header[data-v-907d2a84]{padding:8px 14px;background:#edf2f7;border-bottom:1px solid #e2e8f0;font-size:12px;color:#4a5568;font-weight:500;flex-shrink:0}.md-preview .note-display[data-v-907d2a84]{flex:1;padding:20px;overflow-y:auto}.md-preview[data-v-907d2a84]::-webkit-scrollbar,.md-preview .note-display[data-v-907d2a84]::-webkit-scrollbar{width:6px}.md-preview[data-v-907d2a84]::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.view-mode[data-v-907d2a84]{height:100%}.note-display[data-v-907d2a84] h1,.note-display[data-v-907d2a84] h2,.note-display[data-v-907d2a84] h3{margin-top:20px;margin-bottom:12px;color:#2d3748;line-height:1.4}.note-display[data-v-907d2a84] h1{font-size:24px;border-bottom:2px solid #e2e8f0;padding-bottom:8px}.note-display[data-v-907d2a84] h2{font-size:20px;border-bottom:1px solid #e2e8f0;padding-bottom:6px}.note-display[data-v-907d2a84] h3{font-size:17px}.note-display[data-v-907d2a84] ul,.note-display[data-v-907d2a84] ol{margin:10px 0;padding-left:28px}.note-display[data-v-907d2a84] li{margin:6px 0;line-height:1.7}.note-display[data-v-907d2a84] blockquote{margin:12px 0;padding:10px 16px;background:#f7fafc;border-left:4px solid #667eea;color:#4a5568;border-radius:0 4px 4px 0}.note-display[data-v-907d2a84] strong{color:#2d3748;font-weight:600}.note-display[data-v-907d2a84] em{color:#4a5568}.note-display[data-v-907d2a84] a{color:#2196f3;text-decoration:none}.note-display[data-v-907d2a84] a:hover{text-decoration:underline}.note-display[data-v-907d2a84] hr{border:none;border-top:1px solid #e2e8f0;margin:20px 0}.note-display[data-v-907d2a84] table{border-collapse:collapse;margin:15px 0;width:100%}.note-display[data-v-907d2a84] th,.note-display[data-v-907d2a84] td{border:1px solid #e2e8f0;padding:8px 12px;text-align:left}.note-display[data-v-907d2a84] th{background:#edf2f7;font-weight:600}.note-display[data-v-907d2a84]{line-height:1.8;color:#333;font-size:14px}.note-display[data-v-907d2a84] p{margin-bottom:15px}.note-display[data-v-907d2a84] code{background:#f6f8fa;padding:2px 6px;border-radius:3px;font-family:Consolas,Monaco,monospace;font-size:13px;color:#e91e63}.note-display[data-v-907d2a84] pre{background:#f6f8fa;border:1px solid #e0e0e0;border-radius:6px;padding:15px;overflow-x:auto;margin:15px 0}.note-display[data-v-907d2a84] pre code{color:#333;padding:0;background:none}.content-footer[data-v-907d2a84]{padding:15px 30px;background:#fff;border-top:1px solid #e0e0e0;text-align:right}.last-updated[data-v-907d2a84]{font-size:12px;color:#999}.empty-content[data-v-907d2a84]{justify-content:center;align-items:center}.empty-hint[data-v-907d2a84]{color:#999;font-size:15px}.nav-menu[data-v-907d2a84]::-webkit-scrollbar,.content-body[data-v-907d2a84]::-webkit-scrollbar{width:6px}.nav-menu[data-v-907d2a84]::-webkit-scrollbar-track,.content-body[data-v-907d2a84]::-webkit-scrollbar-track{background:#f5f5f5}.nav-menu[data-v-907d2a84]::-webkit-scrollbar-thumb,.content-body[data-v-907d2a84]::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.nav-menu[data-v-907d2a84]::-webkit-scrollbar-thumb:hover,.content-body[data-v-907d2a84]::-webkit-scrollbar-thumb:hover{background:#999}.wps-config-container[data-v-3849c0b2]{max-width:720px;margin:40px auto;padding:0 20px}.config-card[data-v-3849c0b2]{background:#fff;border-radius:16px;padding:40px;border:2px solid #e9ecef;box-shadow:0 4px 20px #00000014}.config-card h2[data-v-3849c0b2]{margin:0 0 8px;font-size:1.6em;color:#1a1a2e}.config-desc[data-v-3849c0b2]{color:#666;margin:0 0 32px;font-size:1em}.steps[data-v-3849c0b2]{display:flex;flex-direction:column;gap:24px}.step[data-v-3849c0b2]{display:flex;gap:16px;align-items:flex-start}.step-number[data-v-3849c0b2]{width:36px;height:36px;border-radius:50%;background:#4a90d9;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1em;flex-shrink:0}.step-content[data-v-3849c0b2]{flex:1}.step-content h3[data-v-3849c0b2]{margin:0 0 6px;font-size:1.1em;color:#1a1a2e}.step-content p[data-v-3849c0b2]{margin:0 0 12px;color:#555;line-height:1.6}.download-button[data-v-3849c0b2]{padding:10px 24px;background:#4a90d9;color:#fff;border:none;border-radius:8px;font-size:1em;cursor:pointer;transition:background .2s}.download-button[data-v-3849c0b2]:hover{background:#357abd}.path-label[data-v-3849c0b2]{font-size:.85em;color:#888;white-space:nowrap}.path-box[data-v-3849c0b2]{display:flex;align-items:center;gap:12px;background:#f5f7fa;padding:12px 16px;border-radius:8px;border:1px solid #e0e4e8;margin-bottom:8px}.path-box code[data-v-3849c0b2]{font-size:.95em;color:#333;word-break:break-all}.copy-button[data-v-3849c0b2]{padding:6px 16px;background:#fff;color:#4a90d9;border:1px solid #4a90d9;border-radius:6px;font-size:.85em;cursor:pointer;white-space:nowrap;transition:all .2s}.copy-button[data-v-3849c0b2]:hover{background:#4a90d9;color:#fff}.open-button[data-v-3849c0b2]{padding:6px 16px;background:#fff;color:#28a745;border:1px solid #28a745;border-radius:6px;font-size:.85em;cursor:pointer;white-space:nowrap;transition:all .2s}.open-button[data-v-3849c0b2]:hover{background:#28a745;color:#fff}.method-hint[data-v-3849c0b2]{margin-top:8px;font-size:.9em!important;color:#888!important;line-height:1.6!important}.method-hint code[data-v-3849c0b2]{background:#f0f2f5;padding:2px 6px;border-radius:3px;font-size:.95em}.tip-box[data-v-3849c0b2]{background:#fff8e1;border:1px solid #ffe082;border-radius:8px;padding:10px 16px;margin-top:8px;font-size:.9em;color:#6d4c00;line-height:1.6}.tip-box kbd[data-v-3849c0b2]{background:#fff3cd;border:1px solid #cca300;border-radius:3px;padding:1px 6px;font-size:.9em}.path-hint[data-v-3849c0b2]{font-size:.9em;color:#888!important}.path-hint kbd[data-v-3849c0b2]{background:#f0f0f0;border:1px solid #ccc;border-radius:3px;padding:1px 6px;font-size:.9em}.notification[data-v-3849c0b2]{margin-top:24px;padding:12px 20px;border-radius:8px;font-size:.95em}.notification.success[data-v-3849c0b2]{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.notification.error[data-v-3849c0b2]{background:#fbe9e7;color:#c62828;border:1px solid #ef9a9a}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Microsoft YaHei,Arial,sans-serif;background-color:#f5f7fa;min-height:100vh}.navbar{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:15px 0;box-shadow:0 2px 10px #0000001a}.navbar-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 20px}.navbar-brand{font-size:20px;font-weight:700}.nav-links{display:flex;gap:20px}.nav-link{padding:8px 16px;border-radius:4px;cursor:pointer;transition:background-color .3s}.nav-link.active,.nav-link:hover{background-color:#fff3}.nav-link.dropdown{position:relative}.wps-config-link{text-decoration:none;color:inherit;font-size:.85em;opacity:.7}.wps-config-link:hover{opacity:1}.dropdown-content{position:absolute;top:100%;left:0;background-color:#fff;min-width:160px;box-shadow:0 8px 16px #0003;border-radius:8px;margin-top:5px;overflow:hidden;z-index:1000}.dropdown-item{padding:10px 16px;color:#333;cursor:pointer;transition:background-color .3s}.dropdown-item:hover{background-color:#f5f7fa}.dropdown-item.active{background-color:#667eea;color:#fff}.notification{position:fixed;top:80px;right:20px;padding:15px 25px;border-radius:8px;color:#fff;font-weight:500;z-index:1000;display:block}.notification.success{background-color:#27ae60}.notification.error{background-color:#e74c3c}.container{max-width:95%;margin:30px auto;padding:0 20px}.content-panel{display:block}.panel{background:#fff;border-radius:10px;padding:30px;box-shadow:0 2px 15px #00000014;margin-bottom:30px}.panel h2{color:#2c3e50;margin-bottom:25px;font-size:20px;border-bottom:2px solid #667eea;padding-bottom:10px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#555;font-weight:500}.form-group input,.form-group select{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea}button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 30px;border-radius:6px;font-size:14px;cursor:pointer;transition:transform .2s,box-shadow .2s}button:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}.btn-secondary{background:linear-gradient(135deg,#95a5a6,#7f8c8d)}.btn-secondary:hover{box-shadow:0 4px 15px #95a5a666}.btn-success{background:linear-gradient(135deg,#27ae60,#1e8449)}.btn-success:hover{box-shadow:0 4px 15px #27ae6066}.project-list{margin-top:20px}.project-item{background:#f8f9fa;border-radius:8px;padding:20px;margin-bottom:15px;border-left:4px solid #667eea;transition:box-shadow .3s}.project-item:hover{box-shadow:0 2px 10px #0000001a}.project-item h3{color:#2c3e50;margin-bottom:10px;font-size:16px}.project-meta{display:flex;flex-wrap:wrap;gap:15px;font-size:14px;color:#7f8c8d}.project-actions{margin-top:15px;display:flex;gap:10px}.btn-delete{background-color:#e74c3c}.btn-delete:hover{background-color:#c0392b;box-shadow:0 4px 15px #e74c3c66}.empty-state{text-align:center;padding:40px;color:#999}.filter-section{margin-bottom:25px}.filter-row{display:flex;gap:20px;margin-bottom:15px}.filter-row .form-group{flex:1;margin-bottom:0}.result-summary{display:flex;gap:30px;margin-bottom:20px}.summary-item{background:#f8f9fa;padding:15px 25px;border-radius:8px;text-align:center}.summary-value{display:block;font-size:24px;font-weight:700;color:#667eea}.summary-label{font-size:14px;color:#7f8c8d}.deviation-table{width:100%;border-collapse:collapse;margin-top:20px}.deviation-table th,.deviation-table td{padding:12px 15px;text-align:left;border-bottom:1px solid #ddd}.deviation-table th{background-color:#667eea;color:#fff;font-weight:500}.deviation-table tr:hover{background-color:#f5f5f5}.high-deviation{background-color:#ffebee!important;color:#c62828}.status-warning{background-color:#fff3e0;color:#e65100;padding:4px 10px;border-radius:12px;font-size:12px}.status-danger{background-color:#ffebee;color:#c62828;padding:4px 10px;border-radius:12px;font-size:12px}.status-success{background-color:#e8f5e9;color:#2e7d32;padding:4px 10px;border-radius:12px;font-size:12px}.status-info{background-color:#e3f2fd;color:#1565c0;padding:4px 10px;border-radius:12px;font-size:12px}.param-list{margin-top:20px}.param-item{background:#f8f9fa;border-radius:8px;padding:20px;margin-bottom:15px;border-left:4px solid #3498db;display:flex;justify-content:space-between;align-items:flex-start}.param-item:hover{box-shadow:0 2px 10px #0000001a}.param-content{flex:1}.param-content h4{color:#2c3e50;margin-bottom:10px;font-size:16px}.param-meta{display:flex;flex-wrap:wrap;gap:15px;font-size:14px;color:#7f8c8d}.param-actions{display:flex;gap:10px}.btn-edit{background-color:#3498db}.btn-edit:hover{background-color:#2980b9;box-shadow:0 4px 15px #3498db66}.filter-actions{display:flex;gap:15px;margin-top:20px}.saved-results-list{margin-top:20px}.result-item{background:#f8f9fa;border-radius:8px;padding:20px;margin-bottom:15px;border-left:4px solid #e67e22}.result-item h4{color:#2c3e50;margin-bottom:10px;font-size:16px}.result-meta{display:flex;flex-wrap:wrap;gap:15px;font-size:14px;color:#7f8c8d;margin-bottom:10px}.result-actions{display:flex;gap:10px}.btn-download{background-color:#e67e22}.btn-download:hover{background-color:#d35400;box-shadow:0 4px 15px #e67e2266}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:10px;padding:30px;width:90%;max-width:500px;box-shadow:0 5px 20px #0003}.todo-panel{display:block;background:linear-gradient(135deg,#fff8f0,#fff3e0);border-radius:12px;padding:25px;margin-bottom:25px;border:1px solid #ffe0b2}.todo-panel h3{color:#e65100;font-size:16px;margin-bottom:15px;display:flex;align-items:center;gap:8px}.todo-panel h3:before{content:"!";background-color:#ff9800;color:#fff;width:20px;height:20px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:12px;font-weight:700}.expired-project{color:#e74c3c;font-size:14px}.action-button{margin-left:10px;padding:6px 16px;font-size:12px;border-radius:4px;border:none;cursor:pointer;transition:all .3s}.button-edit{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.button-edit:hover{transform:translateY(-1px);box-shadow:0 3px 10px #3498db66}.button-delete{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.button-delete:hover{transform:translateY(-1px);box-shadow:0 3px 10px #e74c3c66}.warning-card{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-left:4px solid #ff9800;padding:20px;border-radius:10px;margin-bottom:15px}.warning-title{color:#e65100;margin-bottom:12px;font-size:14px;font-weight:600}.warning-list{list-style-type:none;padding-left:0;color:#555}.warning-list li{padding:10px 15px;background:#fffc;border-radius:8px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}.list-item{margin-bottom:5px}.table-container{border-radius:12px;box-shadow:0 2px 10px #0000000d;border:1px solid #e8e8e8;overflow:hidden}.data-table{width:100%;border-collapse:collapse;background:#fff;table-layout:auto}.data-table thead{background:linear-gradient(135deg,#667eea,#764ba2);position:sticky;top:0}.data-table thead th{padding:14px 12px;text-align:center;color:#fff;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.data-table thead th:first-child{border-radius:12px 0 0}.data-table thead th:last-child{border-radius:0 12px 0 0}.data-table tbody tr{border-bottom:1px solid #f0f0f0;transition:all .3s ease}.data-table tbody tr:hover{background:linear-gradient(135deg,#f8f9ff,#f0f2ff)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:last-child td:first-child{border-radius:0 0 0 12px}.data-table tbody tr:last-child td:last-child{border-radius:0 0 12px}.data-table tbody td{padding:12px;color:#444;font-size:13px;text-align:center;white-space:nowrap}.data-table tbody td:not(:last-child){max-width:150px;overflow:hidden;text-overflow:ellipsis}.data-table tbody td:first-child{white-space:normal;text-overflow:unset;line-height:1.5;max-width:200px}.data-table tbody td:last-child{min-width:110px}.data-table tbody tr.row-expired{background:linear-gradient(135deg,#ffebee,#ffcdd2)}.data-table tbody tr.row-expired td{color:#c62828;font-weight:500}.data-table tbody tr.row-reported{background:linear-gradient(135deg,#e3f2fd,#bbdefb)}.data-table tbody tr.row-reported td{color:#1565c0}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-state:before{content:"";display:block;width:80px;height:80px;background:#f5f5f5;border-radius:50%;margin:0 auto 20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24' fill='none' stroke='%23ccc' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-bottom:25px}.stat-card{background:#fff;border-radius:12px;padding:20px;text-align:center;box-shadow:0 2px 10px #0000000d;border:1px solid #e8e8e8}.stat-card .stat-value{display:block;font-size:32px;font-weight:700;color:#667eea;margin-bottom:5px}.stat-card .stat-label{font-size:14px;color:#888}.stat-card.warning .stat-value{color:#ff9800}.stat-card.success .stat-value{color:#27ae60}.filter-row-flex{display:flex;justify-content:space-between;align-items:center}.panel-title{margin-bottom:20px;color:#2c3e50}.create-button{padding:10px 20px;border:1px solid #ddd;border-radius:6px;background:#f5f5f5;cursor:pointer}.submit-button{padding:10px 20px;border:none;border-radius:6px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;cursor:pointer}.form-input{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px}.file-upload-button{margin-right:10px}.clear-button{display:inline-block}.analysis-section{background:#fff;border-radius:12px;padding:25px;margin-bottom:25px;box-shadow:0 2px 10px #0000000d}.analysis-section h3{color:#2c3e50;margin-bottom:20px;font-size:18px;border-bottom:2px solid #667eea;padding-bottom:10px}.analysis-section h4{color:#34495e;margin:20px 0 15px;font-size:16px}.analysis-section h5{color:#555;margin:15px 0 10px;font-size:14px}.report-summary{background:linear-gradient(135deg,#f8f9ff,#f0f2ff);border-radius:10px;padding:20px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.summary-item{display:flex;justify-content:space-between;padding:10px 15px;background:#fff;border-radius:8px}.summary-item .label{color:#7f8c8d;font-size:14px}.summary-item .value{color:#2c3e50;font-weight:600;font-size:14px}.analysis-block{margin-bottom:25px;padding:20px;background:#fafafa;border-radius:10px}.analysis-stats{display:flex;gap:20px;margin-bottom:15px}.stat-item{flex:1;padding:15px;border-radius:8px;text-align:center}.stat-item.warning{background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.stat-item.danger{background:linear-gradient(135deg,#ffebee,#ffcdd2)}.stat-label{display:block;color:#666;font-size:13px;margin-bottom:5px}.stat-value{display:block;font-size:24px;font-weight:700;color:#e65100}.stat-item.danger .stat-value{color:#c62828}.deviation-list{margin-top:10px}.deviation-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}.deviation-table th,.deviation-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #eee;font-size:13px}.deviation-table th{background:#667eea;color:#fff;font-weight:500}.deviation-table tr:hover{background:#f8f9ff}.more-info{color:#999;font-size:12px;margin-top:10px}.conclusion{background:#fff;padding:15px;border-radius:8px;border-left:4px solid #667eea}.conclusion p{color:#555;line-height:1.6;margin:0}.export-actions{margin-top:20px;text-align:right}.text-danger{color:#c62828;font-weight:600}.text-warning{color:#e65100;font-weight:600}.status-display{display:block}.status-loading{background-color:#fff3e0;color:#e65100}.status-success{background-color:#e8f5e9;color:#2e7d32}.status-error{background-color:#ffebee;color:#c62828}.disabled{opacity:.6;cursor:not-allowed}.highlight{background-color:#ffebee!important;color:#c62828}.text-center{text-align:center}.flex-space-between{display:flex;justify-content:space-between;align-items:center}.flex-gap-10{gap:10px}.flex-gap-15{gap:15px}.flex-gap-20{gap:20px}.justify-end{justify-content:flex-end}.button-group{display:flex;gap:15px;justify-content:flex-end}.button-group .submit-button{min-width:100px;padding:10px 24px;text-align:center}.margin-bottom-15{margin-bottom:15px}.margin-bottom-20{margin-bottom:20px}.margin-top-20{margin-top:20px}.padding-15{padding:15px}.border-left-warning{border-left:4px solid #ff9800}.border-left-primary{border-left:4px solid #667eea}.border-left-info{border-left:4px solid #3498db}.border-left-orange{border-left:4px solid #e67e22}.font-bold{font-weight:700}.color-red{color:#e74c3c}.color-blue{color:#3498db}.color-green{color:#27ae60}.color-orange{color:#e67e22}.width-full{width:100%}.pointer{cursor:pointer}.hoverable:hover{box-shadow:0 2px 10px #0000001a}.table-responsive{overflow-x:auto}.table-basic{width:100%;border-collapse:collapse;margin-top:20px}.table-th{padding:12px 15px;text-align:left;border-bottom:1px solid #ddd;background-color:#667eea;color:#fff;font-weight:500}.table-td{padding:12px 15px;text-align:left;border-bottom:1px solid #ddd}.table-tr-hover:hover{background-color:#f5f5f5}.button-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 30px;border-radius:6px;font-size:14px;cursor:pointer;transition:transform .2s,box-shadow .2s}.button-primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}.button-secondary{background:linear-gradient(135deg,#95a5a6,#7f8c8d)}.button-secondary:hover{box-shadow:0 4px 15px #95a5a666}.button-success{background:linear-gradient(135deg,#27ae60,#1e8449)}.button-success:hover{box-shadow:0 4px 15px #27ae6066}.button-download{background-color:#e67e22}.button-download:hover{background-color:#d35400;box-shadow:0 4px 15px #e67e2266}.input-basic{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s}.input-basic:focus{outline:none;border-color:#667eea}.select-basic{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s}.select-basic:focus{outline:none;border-color:#667eea}.label-basic{display:block;margin-bottom:8px;color:#555;font-weight:500}.form-group-basic{margin-bottom:20px}.upload-section{background:linear-gradient(135deg,#f8f9ff,#f0f2ff);border-radius:12px;padding:25px;margin-bottom:25px;border:2px dashed #667eea}.upload-section h3{color:#2c3e50;margin-bottom:20px;font-size:16px}.upload-area{background:#fff;border:2px dashed #ddd;border-radius:10px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .3s}.upload-area:hover{border-color:#667eea;background:#f8f9ff}.upload-area.dragover{border-color:#667eea;background:#eef2ff}.upload-icon{font-size:48px;margin-bottom:15px}.upload-area p{color:#666;margin:5px 0;font-size:14px}.upload-hint{font-size:12px!important;color:#999!important}.uploaded-files{margin-top:20px}.uploaded-files h4{color:#555;margin-bottom:10px;font-size:14px}.file-list{display:flex;flex-wrap:wrap;gap:10px}.file-item{display:flex;align-items:center;background:#fff;padding:8px 12px;border-radius:6px;border:1px solid #e8e8e8}.file-name{font-size:13px;color:#555;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remove-file-btn{background:#e74c3c;color:#fff;border:none;border-radius:50%;width:20px;height:20px;font-size:14px;cursor:pointer;margin-left:8px;display:flex;align-items:center;justify-content:center;padding:0}.upload-actions{display:flex;gap:15px;margin-top:20px}.hidden-file-input{display:none}
