.login-page[data-v-cba3faec]{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f6f6f7}.login-card[data-v-cba3faec]{background:#fff;border-radius:12px;padding:2.5rem 2rem;width:340px;box-shadow:0 2px 12px #00000014}h1[data-v-cba3faec]{font-size:1.3rem;text-align:center;margin-bottom:4px;color:#1a1a1a}.login-sub[data-v-cba3faec]{text-align:center;color:#888;font-size:.85rem;margin-bottom:1.5rem}label[data-v-cba3faec]{display:block;font-size:.85rem;color:#555;margin-bottom:4px;margin-top:1rem}input[data-v-cba3faec]{width:100%;padding:.6rem .75rem;border:1px solid #ddd;border-radius:8px;font-size:.9rem;outline:none;transition:border .2s}input[data-v-cba3faec]:focus{border-color:#5672cd}button[data-v-cba3faec]{width:100%;margin-top:1.5rem;padding:.7rem;background:#5672cd;color:#fff;border:none;border-radius:8px;font-size:.95rem;cursor:pointer;transition:background .2s}button[data-v-cba3faec]:hover:not(:disabled){background:#4a63b5}button[data-v-cba3faec]:disabled{opacity:.6;cursor:not-allowed}.login-error[data-v-cba3faec]{color:#e53e3e;font-size:.83rem;text-align:center;margin-top:.8rem}.admin-panel[data-v-078e52ba]{max-width:860px;margin:0 auto;padding:32px 24px}.admin-header[data-v-078e52ba]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.admin-header h2[data-v-078e52ba]{font-size:18px;color:#1f2329;margin:0}.btn-back[data-v-078e52ba]{background:none;border:1px solid #d0d5dd;border-radius:6px;padding:5px 14px;font-size:13px;color:#555;cursor:pointer}.btn-back[data-v-078e52ba]:hover{border-color:#999}.msg[data-v-078e52ba]{padding:8px 14px;border-radius:6px;margin-bottom:12px;font-size:13px}.msg-error[data-v-078e52ba]{background:#fee;color:#c00}.msg-success[data-v-078e52ba]{background:#efe;color:#060}.toolbar[data-v-078e52ba]{margin-bottom:16px}.btn-primary[data-v-078e52ba]{background:#5672cd;color:#fff;border:none;padding:7px 16px;border-radius:6px;font-size:13px;cursor:pointer}.btn-primary[data-v-078e52ba]:hover{opacity:.9}.add-form[data-v-078e52ba]{background:#f9fafb;padding:16px;border-radius:8px;margin-bottom:16px}.form-row[data-v-078e52ba]{margin-bottom:10px}.form-row label[data-v-078e52ba]{display:block;font-size:12px;color:#666;margin-bottom:3px}.form-row input[type=text][data-v-078e52ba],.form-row input[type=password][data-v-078e52ba],.form-row input[data-v-078e52ba]:not([type]){width:100%;max-width:260px;padding:7px 10px;border:1px solid #d0d5dd;border-radius:6px;font-size:13px}.module-checks[data-v-078e52ba]{display:flex;gap:16px;flex-wrap:wrap}.check-item[data-v-078e52ba]{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#444;white-space:nowrap;cursor:pointer;margin-right:8px}.check-item input[data-v-078e52ba]{cursor:pointer}.data-table[data-v-078e52ba]{width:100%;border-collapse:collapse;font-size:13px}.data-table th[data-v-078e52ba],.data-table td[data-v-078e52ba]{padding:10px 12px;border-bottom:1px solid #e5e7eb;text-align:left}.data-table th[data-v-078e52ba]{background:#f9fafb;font-weight:600;color:#555;font-size:12px}.role-tag[data-v-078e52ba]{display:inline-block;padding:2px 8px;background:#eef;color:#5672cd;border-radius:4px;font-size:11px;margin-right:4px}.role-tag.sub[data-v-078e52ba]{background:#fdf2f8;color:#be185d}.role-tag.adm[data-v-078e52ba]{background:#fef3c7;color:#b45309}.sub-note[data-v-078e52ba]{font-size:12px;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:6px 12px;margin:0 0 14px}.module-tag[data-v-078e52ba]{display:inline-block;padding:2px 8px;background:#f0fdf4;color:#15803d;border-radius:4px;font-size:11px;margin-right:4px;margin-bottom:2px}.module-tag.all[data-v-078e52ba]{background:#fef3c7;color:#b45309}.edit-row[data-v-078e52ba]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pw-input[data-v-078e52ba]{width:130px;padding:4px 8px;border:1px solid #d0d5dd;border-radius:4px;font-size:12px}.btn-sm[data-v-078e52ba]{padding:3px 10px;border:1px solid #d0d5dd;background:#fff;border-radius:4px;font-size:11px;cursor:pointer;margin-right:4px}.btn-sm.btn-primary[data-v-078e52ba]{background:#5672cd;color:#fff;border-color:#5672cd}.btn-danger[data-v-078e52ba]{color:#e53e3e;border-color:#fecaca}.btn-danger[data-v-078e52ba]:hover{background:#fef2f2}.loading[data-v-078e52ba]{text-align:center;color:#999;padding:40px}.upload-panel[data-v-7e8c5931]{display:flex;flex-direction:column;gap:12px}.upload-box[data-v-7e8c5931]{border:2px dashed #d0d5dd;border-radius:12px;padding:32px 24px;text-align:center;transition:all .2s;background:#fafbfc}.upload-box.sub[data-v-7e8c5931]{padding:20px 24px}.upload-box.dragging[data-v-7e8c5931]{border-color:#5672cd;background:#f0f4ff}.upload-icon[data-v-7e8c5931]{font-size:36px;margin-bottom:8px}.upload-text[data-v-7e8c5931]{font-size:14px;color:#333;margin:0 0 4px}.upload-zone.small .upload-text[data-v-7e8c5931]{font-size:13px}.upload-link[data-v-7e8c5931]{color:#5672cd;cursor:pointer;text-decoration:underline}.upload-hint[data-v-7e8c5931]{font-size:12px;color:#999;margin:0}.upload-done[data-v-7e8c5931]{text-align:left}.upload-loading[data-v-7e8c5931]{display:flex;align-items:center;gap:10px;justify-content:center;font-size:14px;color:#666}.file-info[data-v-7e8c5931]{display:flex;align-items:center;gap:10px;font-size:14px}.file-icon[data-v-7e8c5931]{font-size:16px}.file-name[data-v-7e8c5931]{font-weight:600;color:#333}.file-meta[data-v-7e8c5931]{color:#888;font-size:12px}.file-clear[data-v-7e8c5931]{margin-left:auto;background:none;border:1px solid #d0d5dd;border-radius:6px;padding:3px 10px;font-size:12px;color:#666;cursor:pointer}.file-clear[data-v-7e8c5931]:hover{border-color:#999}.upload-privacy[data-v-7e8c5931]{text-align:center;font-size:11px;color:#bbb;margin:0}.upload-error[data-v-7e8c5931]{color:#e53e3e;font-size:13px;text-align:center;margin:0}.mini-spinner[data-v-7e8c5931]{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#5672cd;border-radius:50%;animation:spin-7e8c5931 .7s linear infinite}@keyframes spin-7e8c5931{to{transform:rotate(360deg)}}.config-form[data-v-8e6f8b9c]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:28px;margin-top:20px}.form-title[data-v-8e6f8b9c]{font-size:16px;color:#333;margin:0 0 20px;font-weight:600}.form-divider[data-v-8e6f8b9c]{font-size:13px;color:#888;margin:20px 0 12px;padding-bottom:6px;border-bottom:1px solid #e5e7eb}.form-grid[data-v-8e6f8b9c]{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.form-row[data-v-8e6f8b9c]{margin-bottom:4px}.form-row label[data-v-8e6f8b9c]{display:block;font-size:13px;color:#555;margin-bottom:4px}.form-select[data-v-8e6f8b9c],.form-input[data-v-8e6f8b9c]{width:100%;padding:8px 12px;border:1px solid #d0d5dd;border-radius:8px;font-size:14px;color:#333;background:#fff;outline:none;transition:border .2s}.form-select[data-v-8e6f8b9c]:focus,.form-input[data-v-8e6f8b9c]:focus{border-color:#5672cd}.form-actions[data-v-8e6f8b9c]{margin-top:24px;text-align:right}.btn-generate[data-v-8e6f8b9c]{padding:10px 32px;background:#5672cd;color:#fff;border:none;border-radius:8px;font-size:15px;cursor:pointer;transition:background .2s}.btn-generate[data-v-8e6f8b9c]:hover:not(:disabled){background:#4a63b5}.btn-generate[data-v-8e6f8b9c]:disabled{opacity:.5;cursor:not-allowed}.summary-section[data-v-2132ff65]{margin-bottom:40px}.chart-table-wrap[data-v-2132ff65]{overflow-x:auto;margin:16px 0}.section-title[data-v-2132ff65]{font-size:20px;color:#1f2329;font-weight:700;border-bottom:2px solid #e5e6eb;padding-bottom:10px;margin:0 0 24px}h4[data-v-2132ff65]{font-size:15px;color:#1f2329;margin:24px 0 12px;font-weight:600}h5[data-v-2132ff65]{font-size:14px;color:#646a73;margin:20px 0 8px;font-weight:600}.summary-bullets[data-v-2132ff65]{list-style:disc;padding-left:20px;font-size:13px;color:#333;line-height:2;margin:4px 0 16px}.report-table[data-v-2132ff65]{width:100%;border-collapse:collapse;font-size:13px;margin:8px 0 16px}.report-table th[data-v-2132ff65]{background:#f5f6f7;padding:8px 12px;text-align:center;font-weight:600;color:#555;border:1px solid #e5e6eb}.report-table td[data-v-2132ff65]{padding:8px 12px;border:1px solid #e5e6eb;text-align:center;color:#333}.orange-header th[data-v-2132ff65]{background:#ed7d31;color:#fff;border-color:#d46b1f}.th-left[data-v-2132ff65],.td-left[data-v-2132ff65]{text-align:left!important}.td-indent[data-v-2132ff65]{padding-left:24px!important}.sum-row[data-v-2132ff65]{background:#f9fafb;font-weight:600}.sub-row td[data-v-2132ff65]{color:#666}.placeholder-note[data-v-2132ff65]{color:#999;font-size:13px;font-style:italic;margin:8px 0}.reg-row[data-v-2132ff65]{display:flex;gap:16px;align-items:flex-start;margin:8px 0 16px}.reg-table[data-v-2132ff65]{flex:1;min-width:0}.reg-chart[data-v-2132ff65]{width:280px;flex-shrink:0;border:1px solid #f0f0f0;border-radius:6px;overflow:hidden}.reg-chart-img[data-v-2132ff65]{width:100%;height:auto;display:block}.callout[data-v-2132ff65]{border-radius:8px;padding:14px 18px;margin:20px 0;font-size:13px;line-height:1.8}.callout-green[data-v-2132ff65]{background:#f0faf0;border-left:4px solid #52c41a}.callout-orange[data-v-2132ff65]{background:#fff8f0;border-left:4px solid #faad14}.callout-title[data-v-2132ff65]{font-weight:600;margin-bottom:4px}.cost-title[data-v-2132ff65]{font-size:14px;margin:24px 0 8px}.chart-table[data-v-2132ff65]{width:100%;min-width:1200px;border-collapse:collapse;border:1px solid #e5e6eb;table-layout:fixed}.chart-table th[data-v-2132ff65]{background:#f5f6f7;padding:10px 8px;font-size:13px;font-weight:600;color:#333;text-align:center;border:1px solid #e5e6eb;width:25%}.chart-table td[data-v-2132ff65]{padding:8px;border:1px solid #e5e6eb;vertical-align:top;text-align:center}.chart-img[data-v-2132ff65]{width:100%;height:auto;display:block}.chart-label[data-v-2132ff65]{font-size:11px;color:#888;text-align:center;margin:4px 0 8px}.text-cell[data-v-2132ff65]{padding:16px 12px!important;text-align:left!important}.text-cell p[data-v-2132ff65]{font-size:13px;font-weight:600;color:#333;margin:0 0 8px}.text-cell ul[data-v-2132ff65]{list-style:disc;padding-left:16px;font-size:12px;color:#555;line-height:2;margin:0}.comp-table[data-v-2132ff65]{width:100%;border-collapse:collapse;font-size:10px;margin-bottom:8px}.comp-table th[data-v-2132ff65]{background:#f0f1f3;padding:3px 5px;text-align:center;font-weight:600;color:#555;border:1px solid #e5e6eb;white-space:nowrap}.comp-table td[data-v-2132ff65]{padding:2px 5px;text-align:center;border:1px solid #e5e6eb;color:#333;white-space:nowrap}.comp-table td[data-v-2132ff65]:first-child,.comp-table td[data-v-2132ff65]:nth-child(2){text-align:left}.channel-section[data-v-288fa042]{margin-bottom:40px}.section-title[data-v-288fa042]{font-size:20px;color:#1f2329;font-weight:700;border-bottom:2px solid #e5e6eb;padding-bottom:10px;margin:0 0 24px}h4[data-v-288fa042]{font-size:15px;color:#1f2329;margin:24px 0 12px;font-weight:600}h5[data-v-288fa042]{font-size:14px;color:#646a73;margin:20px 0 8px;font-weight:600}.callout-blue[data-v-288fa042]{display:none}.channel-note[data-v-288fa042]{border-left:3px solid #d0d5dd;padding:8px 16px;margin:0 0 20px;background:#f9fafb}.channel-note p[data-v-288fa042]{font-size:13px;color:#666;margin:0}.analysis-bullets[data-v-288fa042]{list-style:none;padding:0;font-size:13px;color:#333;line-height:2;margin:8px 0 16px}.analysis-bullets li[data-v-288fa042]{margin:0}.analysis-bullets .sub-bullet[data-v-288fa042]{padding-left:20px;position:relative}.analysis-bullets .sub-bullet[data-v-288fa042]:before{content:"•";position:absolute;left:8px}.pie-grid[data-v-288fa042]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:16px 0}.pie-cell[data-v-288fa042]{background:#fff;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden}.pie-img[data-v-288fa042]{width:100%;height:auto;display:block}.channel-table-wrap[data-v-288fa042]{margin-bottom:24px;overflow-x:auto}.report-table[data-v-288fa042]{width:100%;min-width:900px;border-collapse:collapse;font-size:12px}.report-table th[data-v-288fa042]{background:#f5f6f7;padding:7px 10px;text-align:center;font-weight:600;color:#555;border:1px solid #e5e6eb;white-space:nowrap}.orange-header th[data-v-288fa042]{background:#ed7d31;color:#fff;border-color:#d46b1f}.report-table td[data-v-288fa042]{padding:6px 10px;border:1px solid #e5e6eb;text-align:center;color:#333}.th-left[data-v-288fa042],.report-table th[data-v-288fa042]:first-child,.td-left[data-v-288fa042]{text-align:left}.change-up[data-v-288fa042]{color:#52c41a}.change-down[data-v-288fa042]{color:#e53e3e}.subtotal-row[data-v-288fa042]{background:#f2f7ed;font-weight:600}.subtotal-row td[data-v-288fa042]{border-top:1px solid #dce8d2}.total-row[data-v-288fa042]{background:#f2f7ed;font-weight:600}.total-row td[data-v-288fa042]{border-top:2px solid #dce8d2}.report-view[data-v-e1c11e94]{max-width:1300px;margin:0 auto;padding:0 32px 60px;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Segoe UI,sans-serif;color:#1f2329;line-height:1.75}.report-toolbar[data-v-e1c11e94]{display:flex;align-items:center;justify-content:space-between;padding:12px 0;margin-bottom:12px;border-bottom:1px solid #e5e7eb;position:sticky;top:0;background:#fff;z-index:10}.toolbar-btn[data-v-e1c11e94]{background:none;border:1px solid #d0d5dd;border-radius:6px;padding:6px 14px;font-size:13px;color:#555;cursor:pointer}.toolbar-btn[data-v-e1c11e94]:hover{border-color:#999;color:#333}.toolbar-right[data-v-e1c11e94]{display:flex;gap:8px}.copy-toast[data-v-e1c11e94]{background:#52c41a;color:#fff;text-align:center;padding:8px 16px;border-radius:6px;font-size:13px;margin-bottom:12px}.report-header[data-v-e1c11e94]{text-align:center;margin:20px 0 24px}.report-header h1[data-v-e1c11e94]{font-size:22px;color:#1f2329;margin:0}.data-time[data-v-e1c11e94]{font-size:14px;margin:0 0 8px}.field-note[data-v-e1c11e94]{border-left:3px solid #d0d5dd;padding:8px 16px;margin:0 0 24px;background:#f9fafb}.field-note p[data-v-e1c11e94]{font-size:13px;color:#666;margin:0}.extra-section[data-v-e1c11e94]{margin-bottom:40px}.section-title[data-v-e1c11e94]{font-size:20px;color:#1f2329;font-weight:700;border-bottom:2px solid #e5e6eb;padding-bottom:10px;margin:0 0 24px}.section-title-h1[data-v-e1c11e94]{font-size:24px;color:#1f2329;font-weight:700;border-bottom:2px solid #e5e6eb;padding-bottom:10px;margin:0 0 24px}.placeholder-text[data-v-e1c11e94]{color:#bbb;font-style:italic;font-size:14px}.payment-table[data-v-e1c11e94]{width:100%;border-collapse:collapse;font-size:13px;margin:8px 0 16px}.payment-table th[data-v-e1c11e94]{background:#f5f6f7;padding:8px 12px;text-align:center;font-weight:600;color:#555;border:1px solid #e5e6eb}.payment-table td[data-v-e1c11e94]{padding:8px 12px;border:1px solid #e5e6eb;color:#333}.payment-table td[data-v-e1c11e94]:first-child{font-weight:500}.payment-notes[data-v-e1c11e94]{font-size:13px;color:#333;line-height:2;padding-left:20px;margin:12px 0}.checkbox-item[data-v-e1c11e94]{display:flex;align-items:center;gap:8px;font-size:14px;color:#333}.checkbox-item input[data-v-e1c11e94]{width:16px;height:16px}@media print{.no-print[data-v-e1c11e94]{display:none!important}.report-view[data-v-e1c11e94]{max-width:100%;padding:0}}.report-view[data-v-e1c11e94] img{cursor:zoom-in}.lightbox-overlay[data-v-e1c11e94]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;display:flex;align-items:center;justify-content:center;z-index:9999;cursor:zoom-out;padding:40px}.lightbox-img[data-v-e1c11e94]{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:4px;box-shadow:0 8px 32px #0006;cursor:default;background:#fff;padding:16px}.lightbox-close[data-v-e1c11e94]{position:fixed;top:20px;right:28px;background:none;border:none;color:#fff;font-size:28px;cursor:pointer;opacity:.7;transition:opacity .2s}.lightbox-close[data-v-e1c11e94]:hover{opacity:1}.version-report[data-v-5330d747]{min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Segoe UI,sans-serif}.config-stage[data-v-5330d747]{max-width:680px;margin:0 auto;padding:40px 24px 60px}.page-header[data-v-5330d747]{text-align:center;margin-bottom:32px}.page-header h1[data-v-5330d747]{font-size:24px;color:#1f2329;margin:0 0 8px}.page-header p[data-v-5330d747]{font-size:14px;color:#888;margin:0}.loading-overlay[data-v-5330d747]{position:fixed;top:0;right:0;bottom:0;left:0;background:#ffffffd9;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100}.loading-spinner[data-v-5330d747]{width:36px;height:36px;border:3px solid #e5e7eb;border-top-color:#5672cd;border-radius:50%;animation:spin-5330d747 .8s linear infinite;margin-bottom:12px}@keyframes spin-5330d747{to{transform:rotate(360deg)}}.loading-overlay p[data-v-5330d747]{font-size:14px;color:#666}.reg-upload[data-v-5f0aa27f]{display:flex;flex-direction:column;gap:12px}.upload-box[data-v-5f0aa27f]{border:2px dashed #d0d5dd;border-radius:12px;padding:32px 24px;text-align:center;transition:all .2s;background:#fafbfc}.upload-box.dragging[data-v-5f0aa27f]{border-color:#5672cd;background:#f0f4ff}.upload-icon[data-v-5f0aa27f]{font-size:36px;margin-bottom:8px}.upload-text[data-v-5f0aa27f]{font-size:14px;color:#333;margin:0 0 4px}.upload-link[data-v-5f0aa27f]{color:#5672cd;cursor:pointer;text-decoration:underline}.upload-hint[data-v-5f0aa27f]{font-size:12px;color:#999;margin:0}.upload-loading[data-v-5f0aa27f]{display:flex;align-items:center;gap:10px;justify-content:center;font-size:14px;color:#666}.backup-bar[data-v-5f0aa27f]{display:flex;justify-content:center;gap:10px}.backup-btn[data-v-5f0aa27f]{display:inline-flex;align-items:center;padding:4px 14px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:12px;color:#555;cursor:pointer}.backup-btn[data-v-5f0aa27f]:hover{border-color:#5672cd;color:#5672cd}.upload-saved[data-v-5f0aa27f]{text-align:center;font-size:12px;color:#6b8e23;margin:0}.upload-privacy[data-v-5f0aa27f]{text-align:center;font-size:11px;color:#bbb;margin:0}.upload-error[data-v-5f0aa27f]{color:#e53e3e;font-size:13px;text-align:center;margin:0}.dataset-list[data-v-5f0aa27f]{display:flex;flex-direction:column;gap:8px}.dataset-item[data-v-5f0aa27f]{display:flex;align-items:flex-start;gap:10px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:10px 14px}.ds-icon[data-v-5f0aa27f]{font-size:15px;margin-top:2px}.ds-info[data-v-5f0aa27f]{display:flex;flex-direction:column;gap:2px;min-width:0}.ds-title[data-v-5f0aa27f]{font-size:14px;font-weight:600;color:#333}.ds-meta[data-v-5f0aa27f]{font-size:12px;color:#888}.ds-files[data-v-5f0aa27f]{font-size:11px;color:#bbb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-del[data-v-5f0aa27f]{margin-left:auto;padding:2px 8px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;font-size:12px;color:#999;cursor:pointer;flex-shrink:0}.ds-del[data-v-5f0aa27f]:hover{color:#e53e3e;border-color:#fca5a5}.clear-btn[data-v-5f0aa27f]{align-self:flex-end;background:none;border:1px solid #d0d5dd;border-radius:6px;padding:4px 12px;font-size:12px;color:#666;cursor:pointer}.clear-btn[data-v-5f0aa27f]:hover{border-color:#e53e3e;color:#e53e3e}.mini-spinner[data-v-5f0aa27f]{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#5672cd;border-radius:50%;animation:spin-5f0aa27f .7s linear infinite}@keyframes spin-5f0aa27f{to{transform:rotate(360deg)}}.filter-bar[data-v-5529db56]{background:#f7f8fa;border-radius:8px;padding:12px 16px;display:flex;flex-direction:column;gap:10px;font-size:13px}.filter-row[data-v-5529db56]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.f-label[data-v-5529db56]{color:#888;font-size:12px;white-space:nowrap}.f-gap[data-v-5529db56]{margin-left:10px}.filter-row select[data-v-5529db56]{padding:3px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:13px;background:#fff;max-width:170px}.date-input[data-v-5529db56]{padding:4px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:12px;width:130px}.preset-btn[data-v-5529db56]{padding:2px 10px;border:1px solid #d0d5dd;border-radius:12px;background:#fff;font-size:12px;color:#666;cursor:pointer}.preset-btn.on[data-v-5529db56]{border-color:#5672cd;color:#5672cd;background:#f0f4ff}.gran-radio[data-v-5529db56]{padding:3px 14px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:13px;color:#555;cursor:pointer;-webkit-user-select:none;user-select:none}.gran-radio.on[data-v-5529db56]{border-color:#5672cd;color:#5672cd;background:#f0f4ff;font-weight:600}.query-btn[data-v-5529db56]{margin-left:auto;padding:4px 20px;border:1px solid #5672cd;border-radius:6px;background:#5672cd;font-size:13px;color:#fff;cursor:pointer;font-weight:600}.query-btn[data-v-5529db56]:hover{background:#4560b8}.query-btn.dirty[data-v-5529db56]{animation:pulse-btn-5529db56 1.5s infinite}@keyframes pulse-btn-5529db56{0%,to{box-shadow:none}50%{box-shadow:0 0 0 3px #5672cd4d}}.filter-dirty-hint[data-v-5529db56]{font-size:11px;color:#b45309}.ver-warn[data-v-5529db56]{color:#b45309;font-size:12px}.ver-ok[data-v-5529db56]{color:#6b8e23;font-size:12px}.ver-config[data-v-5529db56]{font-size:13px}.ver-config summary[data-v-5529db56]{cursor:pointer;color:#777;font-size:12px;-webkit-user-select:none;user-select:none}.ver-body[data-v-5529db56]{margin-top:8px;display:flex;flex-direction:column;gap:6px}.ver-body textarea[data-v-5529db56]{width:100%;max-width:420px;box-sizing:border-box;padding:8px 10px;border:1px solid #d0d5dd;border-radius:6px;font-size:13px;font-family:inherit;resize:vertical}.ver-hint[data-v-5529db56]{font-size:12px;color:#999;margin:0}.ver-error[data-v-5529db56]{font-size:12px;color:#e53e3e;margin:0}.ver-actions[data-v-5529db56]{display:flex;align-items:center;gap:10px}.apply-btn[data-v-5529db56]{padding:3px 18px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:13px;color:#555;cursor:pointer}.apply-btn.dirty[data-v-5529db56]{background:#5672cd;color:#fff;border-color:#5672cd;font-weight:600}.ver-preview[data-v-5529db56]{font-size:12px;color:#555;margin:0;display:flex;flex-wrap:wrap;gap:6px}.ver-seg[data-v-5529db56]{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1px 10px}.config-panel[data-v-e96d78b7]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:10px 16px;margin-bottom:16px;font-size:13px}.config-panel summary[data-v-e96d78b7]{cursor:pointer;color:#555;font-weight:500;-webkit-user-select:none;user-select:none}.config-grid[data-v-e96d78b7]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px 16px;margin-top:12px}.config-grid label[data-v-e96d78b7],.redline-row label[data-v-e96d78b7]{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#666;font-size:12px}.config-grid input[data-v-e96d78b7],.redline-row input[data-v-e96d78b7]{width:70px;padding:3px 6px;border:1px solid #d0d5dd;border-radius:5px;font-size:12px;text-align:right}.unit[data-v-e96d78b7]{color:#999}.redline-row[data-v-e96d78b7]{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px dashed #e5e7eb}.redline-title[data-v-e96d78b7]{font-size:12px;color:#b45309}.summary-card[data-v-e03d37e2]{border-radius:10px;padding:16px 20px;margin-bottom:24px;border:1px solid #e5e7eb;background:#fff}.summary-card.healthy[data-v-e03d37e2]{border-color:#86efac;background:#f0fdf4}.summary-card.warning[data-v-e03d37e2]{border-color:#fcd34d;background:#fffbeb}.summary-card.critical[data-v-e03d37e2]{border-color:#fca5a5;background:#fef2f2}.card-head[data-v-e03d37e2]{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.status-badge[data-v-e03d37e2]{font-size:15px;font-weight:700;color:#1f2329}.copy-btn[data-v-e03d37e2]{padding:3px 12px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:12px;color:#555;cursor:pointer}.copy-btn[data-v-e03d37e2]:hover{border-color:#999}.card-body p[data-v-e03d37e2]{font-size:13px;line-height:1.8;color:#333;margin:0 0 4px}.card-body[data-v-e03d37e2] .hl-crit{color:#dc2626;font-weight:600}.card-body[data-v-e03d37e2] .hl-warn{color:#d97706;font-weight:500}.card-body[data-v-e03d37e2] .hl-label{font-weight:600;color:#1f2329}.trend-section[data-v-e63ebd9b]{margin-bottom:32px}.section-title[data-v-e63ebd9b]{font-size:18px;color:#1f2329;font-weight:700;border-bottom:2px solid #e5e6eb;padding-bottom:8px;margin:0 0 16px}.group-title[data-v-e63ebd9b]{font-size:14px;font-weight:600;color:#555;margin:0 0 10px}.group-head[data-v-e63ebd9b]{display:flex;align-items:center;justify-content:space-between;margin-top:20px;margin-bottom:10px}.group-head .group-title[data-v-e63ebd9b]{margin:0}.toggle-btn[data-v-e63ebd9b]{padding:3px 12px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:12px;color:#555;cursor:pointer}.toggle-btn[data-v-e63ebd9b]:hover{border-color:#999;color:#333}.group-empty[data-v-e63ebd9b]{font-size:13px;color:#999;background:#fafbfc;border-radius:8px;padding:12px 16px;margin:0 0 12px}.chart-grid[data-v-e63ebd9b]{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:12px}.chart-cell[data-v-e63ebd9b]{border:1px solid #f0f0f0;border-radius:8px;padding:4px;background:#fff}.chart-img[data-v-e63ebd9b]{width:100%;height:auto;display:block}.chart-caption[data-v-e63ebd9b]{font-size:12px;color:#888;margin:4px 8px 6px;line-height:1.6}.chart-caption.abnormal[data-v-e63ebd9b]{color:#555}.chart-caption[data-v-e63ebd9b] .hl-crit{color:#dc2626;font-weight:600}.chart-caption[data-v-e63ebd9b] .hl-warn{color:#d97706;font-weight:500}.chart-caption[data-v-e63ebd9b] .hl-label{font-weight:600;color:#333}.anomaly-section[data-v-4b603946]{margin-bottom:32px}.section-title[data-v-4b603946]{font-size:18px;color:#1f2329;font-weight:700;border-bottom:2px solid #e5e6eb;padding-bottom:8px;margin:0 0 16px}.table-caption[data-v-4b603946]{font-size:12px;color:#888;margin:0 0 10px;line-height:1.6}.drift-title[data-v-4b603946]{font-size:14px;color:#1f2329;font-weight:600;margin:20px 0 8px}.table-wrap[data-v-4b603946]{overflow-x:auto}.anomaly-table[data-v-4b603946]{width:100%;border-collapse:collapse;font-size:13px}.anomaly-table th[data-v-4b603946]{background:#f5f6f7;padding:8px 10px;text-align:left;font-weight:600;color:#333;border:1px solid #e5e6eb;white-space:nowrap}.anomaly-table td[data-v-4b603946]{padding:7px 10px;border:1px solid #e5e6eb;color:#444}.anomaly-table .num[data-v-4b603946]{text-align:right;font-variant-numeric:tabular-nums}.anomaly-table tr.critical[data-v-4b603946]{background:#fff5f5}.anomaly-table tr.critical.positive[data-v-4b603946],.anomaly-table tr.warning.positive[data-v-4b603946]{background:#f0fdf4}.anomaly-table tr.seg-row td[data-v-4b603946]{background:#eef1f6;color:#3b4253;font-weight:700;font-size:12px;padding:6px 10px;letter-spacing:.5px}.anomaly-table tr.sub-row td[data-v-4b603946]{background:#f7f8fa;color:#666;font-weight:600;font-size:12px;padding:5px 10px}.anomaly-table td.indent[data-v-4b603946]{padding-left:22px}.down[data-v-4b603946]{color:#e53e3e;font-weight:600}.up[data-v-4b603946]{color:#16a34a;font-weight:600}.level-tag[data-v-4b603946]{font-size:11px;padding:1px 8px;border-radius:10px}.level-tag.warning[data-v-4b603946]{background:#fef3c7;color:#b45309}.level-tag.critical[data-v-4b603946]{background:#fee2e2;color:#b91c1c}.level-tag.positive[data-v-4b603946]{background:#dcfce7;color:#166534}.redline-tag[data-v-4b603946]{font-size:11px;padding:1px 8px;border-radius:10px;background:#b91c1c;color:#fff;margin-left:4px}.drill-section[data-v-1137a5a2]{margin-bottom:32px}.section-title[data-v-1137a5a2]{font-size:18px;color:#1f2329;font-weight:700;border-bottom:2px solid #e5e6eb;padding-bottom:8px;margin:0 0 16px}.window-bar[data-v-1137a5a2]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#f7f8fa;border-radius:8px;padding:10px 14px;margin-bottom:16px;font-size:13px;color:#333}.window-bar select[data-v-1137a5a2]{padding:3px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:13px;background:#fff}.drill-query-btn[data-v-1137a5a2]{margin-left:auto;padding:4px 16px;border:1px solid #5672cd;border-radius:6px;background:#5672cd;font-size:13px;color:#fff;cursor:pointer;font-weight:600}.drill-query-btn[data-v-1137a5a2]:hover{background:#4560b8}.drill-query-btn.dirty[data-v-1137a5a2]{animation:pulse-drill-1137a5a2 1.5s infinite}@keyframes pulse-drill-1137a5a2{0%,to{box-shadow:none}50%{box-shadow:0 0 0 3px #5672cd4d}}.channel-select[data-v-1137a5a2]{max-width:160px}.win-label[data-v-1137a5a2]{color:#888;font-size:12px}.win-info[data-v-1137a5a2]{color:#555;font-size:12px}.empty-hint[data-v-1137a5a2]{font-size:13px;color:#999;background:#fafbfc;border-radius:8px;padding:16px}.filter-hint[data-v-1137a5a2]{font-size:12px;color:#8a6d3b;background:#fffaf0;border:1px solid #fde68a;border-radius:6px;padding:6px 12px;margin:0 0 12px;line-height:1.6}.level-hint[data-v-1137a5a2]{font-size:12px;color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:6px;padding:6px 12px;margin:0 0 12px;line-height:1.6}.concord-block[data-v-1137a5a2]{margin-bottom:28px}.concord-conclusion[data-v-1137a5a2]{font-size:13px;line-height:1.7;border-radius:6px;padding:8px 12px;margin:0 0 12px}.concord-conclusion.global[data-v-1137a5a2]{background:#fffaf0;color:#8a6d3b;border:1px solid #fde68a}.concord-conclusion.local[data-v-1137a5a2]{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.concord-conclusion.none[data-v-1137a5a2]{background:#f0fdf4;color:#3f6212;border:1px solid #bbf7d0}.concord-layer[data-v-1137a5a2]{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:6px 0;border-bottom:1px dashed #eee;font-size:12px}.layer-name[data-v-1137a5a2]{color:#888;min-width:56px;white-space:nowrap}.layer-chips[data-v-1137a5a2]{display:inline-flex;gap:5px;flex-wrap:wrap}.chip[data-v-1137a5a2]{padding:1px 9px;border-radius:10px;white-space:nowrap;background:#f3f4f6;color:#666;border:1px solid #e5e7eb}.chip.down[data-v-1137a5a2]{background:#fee2e2;color:#b91c1c;border-color:#fecaca}.chip.up[data-v-1137a5a2]{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.chip.small[data-v-1137a5a2]{color:#bbb}.chip.more[data-v-1137a5a2]{background:transparent;border:none;color:#aaa}.layer-verdict[data-v-1137a5a2]{color:#555;line-height:1.6}.layer-verdict.diverged[data-v-1137a5a2]{color:#b45309;font-weight:500}.dim-block[data-v-1137a5a2]{margin-bottom:28px}.dim-title[data-v-1137a5a2]{font-size:15px;font-weight:600;color:#1f2329;margin:0 0 10px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dim-delta[data-v-1137a5a2]{font-size:12px;color:#888;font-weight:400}.dim-caption[data-v-1137a5a2]{font-size:12px;color:#8a6d3b;background:#fffaf0;border-radius:6px;padding:6px 12px;margin:0 0 10px;line-height:1.7}.dim-caption[data-v-1137a5a2] .hl-crit,.level-hint[data-v-1137a5a2] .hl-crit{color:#dc2626;font-weight:600}.dim-caption[data-v-1137a5a2] .hl-warn,.level-hint[data-v-1137a5a2] .hl-warn{color:#d97706;font-weight:600}.dim-body[data-v-1137a5a2]{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}.contrib-img[data-v-1137a5a2]{width:560px;max-width:100%;height:auto;border:1px solid #f0f0f0;border-radius:8px}.table-wrap[data-v-1137a5a2]{overflow-x:auto;flex:1;min-width:360px}.slice-table[data-v-1137a5a2]{width:100%;border-collapse:collapse;font-size:12px}.slice-table th[data-v-1137a5a2]{background:#f5f6f7;padding:6px 9px;text-align:left;font-weight:600;color:#333;border:1px solid #e5e6eb;white-space:nowrap}.slice-table td[data-v-1137a5a2]{padding:5px 9px;border:1px solid #e5e6eb;color:#444}.slice-table .num[data-v-1137a5a2]{text-align:right;font-variant-numeric:tabular-nums}.slice-table th.sortable[data-v-1137a5a2]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.slice-table th.sortable[data-v-1137a5a2]:hover{background:#eef0f3}.sort-ind[data-v-1137a5a2]{color:#5672cd;font-size:11px}.share[data-v-1137a5a2]{color:#666;white-space:nowrap}.calc-note[data-v-1137a5a2]{background:#fafbfc;border:1px solid #e5e7eb;border-radius:8px;padding:8px 14px;font-size:12px;margin-bottom:20px}.calc-note summary[data-v-1137a5a2]{cursor:pointer;color:#555;font-weight:500;-webkit-user-select:none;user-select:none}.calc-note p[data-v-1137a5a2]{margin:8px 0 0;color:#555;line-height:1.8}.slice-table tr.sig[data-v-1137a5a2]{background:#fff5f5}.slice-table tr.sig td[data-v-1137a5a2]:first-child:before{content:"⚠ ";color:#e53e3e}.down[data-v-1137a5a2]{color:#e53e3e}.up[data-v-1137a5a2]{color:#16a34a}.ci[data-v-1137a5a2]{color:#999}.agg-tag[data-v-1137a5a2]{display:inline-block;margin-left:5px;padding:0 6px;font-size:11px;color:#888;background:#f0f1f3;border-radius:8px}.calibrate-page[data-v-8300c025]{padding:20px 24px;max-width:1200px;margin:0 auto}.page-header h2[data-v-8300c025]{font-size:18px;margin:0 0 4px;color:#1f2329}.page-header p[data-v-8300c025]{font-size:13px;color:#666;margin:0}.upload-section[data-v-8300c025]{margin:16px 0}.upload-btn[data-v-8300c025]{display:inline-block;padding:8px 20px;background:#5672cd;color:#fff;border-radius:6px;font-size:13px;cursor:pointer}.upload-btn[data-v-8300c025]:hover{background:#4a63b5}.data-summary[data-v-8300c025]{display:flex;gap:16px;font-size:12px;color:#666;padding:8px 12px;background:#f8fafc;border-radius:6px;margin-bottom:12px}.progress-bar[data-v-8300c025]{position:relative;height:24px;background:#e5e7eb;border-radius:4px;margin:12px 0;overflow:hidden}.progress-fill[data-v-8300c025]{height:100%;background:#5672cd;transition:width .2s}.progress-text[data-v-8300c025]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:#333}.status-msg[data-v-8300c025]{font-size:13px;color:#555;margin:8px 0}.rec-card[data-v-8300c025]{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:16px 20px;margin:16px 0}.rec-card h3[data-v-8300c025]{font-size:14px;margin:0 0 10px;color:#0c4a6e}.rec-row[data-v-8300c025]{display:flex;gap:32px}.rec-item[data-v-8300c025]{display:flex;flex-direction:column}.rec-label[data-v-8300c025]{font-size:11px;color:#666}.rec-value[data-v-8300c025]{font-size:22px;font-weight:700;color:#1e3a5f}.rec-note[data-v-8300c025]{font-size:11px;color:#888}.rec-explain[data-v-8300c025]{font-size:11px;color:#888;margin:10px 0 0}.chart-section[data-v-8300c025],.marginal-section[data-v-8300c025]{margin:20px 0}.chart-section h3[data-v-8300c025]{font-size:14px;margin:0 0 8px;color:#333}.chart-section h3 small[data-v-8300c025]{font-size:11px;color:#999}.chart-box[data-v-8300c025]{width:100%;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.heatmap-box[data-v-8300c025]{height:400px}.marginal-section[data-v-8300c025]{display:flex;gap:16px}.marginal-box[data-v-8300c025]{flex:1;height:280px}.detail-section[data-v-8300c025]{margin:20px 0}.detail-section h3[data-v-8300c025]{font-size:14px;color:#333;margin:0 0 8px}.detail-count[data-v-8300c025]{font-size:12px;color:#888;font-weight:400}.detail-table[data-v-8300c025]{width:100%;border-collapse:collapse;font-size:12px}.detail-table th[data-v-8300c025],.detail-table td[data-v-8300c025]{padding:6px 10px;border:1px solid #e5e7eb;text-align:center}.detail-table th[data-v-8300c025]{background:#f8fafc;color:#555;font-weight:600}.neg[data-v-8300c025]{color:#dc2626}.pos[data-v-8300c025]{color:#16a34a}.level-critical[data-v-8300c025]{color:#dc2626;font-weight:600}.level-warning[data-v-8300c025]{color:#f59e0b}.no-alerts[data-v-8300c025]{font-size:13px;color:#888}.reg-diag[data-v-250bfa84]{max-width:1100px;margin:0 auto;padding:32px 24px 60px;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Segoe UI,sans-serif}.page-header[data-v-250bfa84]{text-align:center;margin-bottom:24px}.page-header h1[data-v-250bfa84]{font-size:24px;color:#1f2329;margin:0 0 8px}.page-header p[data-v-250bfa84]{font-size:14px;color:#888;margin:0}.sub-tabs[data-v-250bfa84]{display:flex;gap:4px;justify-content:center;margin-bottom:20px}.sub-tab[data-v-250bfa84]{padding:6px 18px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:13px;color:#555;cursor:pointer}.sub-tab[data-v-250bfa84]:hover{background:#f3f4f6}.sub-tab.active[data-v-250bfa84]{background:#eef1fb;color:#5672cd;font-weight:600;border-color:#5672cd}.project-bar[data-v-250bfa84]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px;padding:10px 14px;background:#f7f8fa;border-radius:8px}.proj-label[data-v-250bfa84]{font-size:12px;color:#888;margin-right:4px}.proj-btn[data-v-250bfa84]{padding:4px 14px;border:1px solid #d0d5dd;border-radius:16px;background:#fff;font-size:13px;color:#555;cursor:pointer;transition:all .15s}.proj-btn[data-v-250bfa84]:hover{border-color:#5672cd;color:#5672cd}.proj-btn.active[data-v-250bfa84]{border-color:#5672cd;background:#eef2ff;color:#5672cd;font-weight:600}.proj-add[data-v-250bfa84]{border-style:dashed}.proj-clear[data-v-250bfa84]{color:#b45309;border-color:#fde68a}.proj-clear[data-v-250bfa84]:hover{background:#fffbeb}.proj-del[data-v-250bfa84]{color:#999;border-color:#e5e7eb}.proj-del[data-v-250bfa84]:hover{color:#e53e3e;border-color:#fca5a5}.empty-state[data-v-250bfa84]{margin-top:24px;background:#fafbfc;border-radius:10px;padding:20px 24px}.empty-state h3[data-v-250bfa84]{font-size:15px;color:#1f2329;margin:0 0 12px}.guide-table[data-v-250bfa84]{width:100%;border-collapse:collapse;font-size:13px}.guide-table th[data-v-250bfa84]{background:#f0f1f3;padding:8px 10px;text-align:left;border:1px solid #e5e6eb;color:#333}.guide-table td[data-v-250bfa84]{padding:8px 10px;border:1px solid #e5e6eb;color:#555}.guide-note[data-v-250bfa84]{font-size:12px;color:#888;margin:12px 0 0;line-height:1.7}.guide-note code[data-v-250bfa84],.guide-body code[data-v-250bfa84]{background:#eef0f3;padding:1px 5px;border-radius:4px;font-size:12px}.export-guide[data-v-250bfa84]{background:#fafbfc;border:1px solid #e5e7eb;border-radius:8px;padding:10px 16px;font-size:13px}.export-guide summary[data-v-250bfa84]{cursor:pointer;color:#555;font-weight:500;-webkit-user-select:none;user-select:none}.guide-body[data-v-250bfa84]{margin-top:10px}.guide-body p[data-v-250bfa84]{margin:0 0 8px;line-height:1.7;color:#444}.glossary[data-v-250bfa84]{background:#fafbfc;border:1px solid #e5e7eb;border-radius:10px;padding:12px 18px;font-size:13px;margin-bottom:24px}.glossary summary[data-v-250bfa84]{cursor:pointer;color:#1f2329;font-weight:600;font-size:14px;-webkit-user-select:none;user-select:none}.glossary-body[data-v-250bfa84]{margin-top:14px}.glossary-body h4[data-v-250bfa84]{font-size:14px;color:#1f2329;margin:20px 0 10px;padding-bottom:6px;border-bottom:1px solid #e5e7eb}.glossary-body h4[data-v-250bfa84]:first-child{margin-top:0}.glossary-body dl[data-v-250bfa84]{margin:0}.glossary-body dt[data-v-250bfa84]{font-weight:600;color:#333;margin:14px 0 4px;font-size:13px}.glossary-body dt[data-v-250bfa84]:first-child{margin-top:0}.glossary-body dd[data-v-250bfa84]{margin:0;padding:0 0 0 16px;color:#555;line-height:1.8;border-left:3px solid #e5e7eb}.glossary-body dd p[data-v-250bfa84]{margin:4px 0}.glossary-body dd br[data-v-250bfa84]{line-height:2}.qos-upload[data-v-c10ee959]{margin:0 0 20px}.upload-box[data-v-c10ee959]{border:2px dashed #d0d5dd;border-radius:12px;padding:32px;text-align:center;transition:border-color .2s,background .2s;cursor:pointer}.upload-box.dragging[data-v-c10ee959]{border-color:#5672cd;background:#f0f4ff}.upload-icon[data-v-c10ee959]{font-size:32px;margin-bottom:8px}.upload-text[data-v-c10ee959]{font-size:14px;color:#333;margin:0}.upload-link[data-v-c10ee959]{color:#5672cd;cursor:pointer;text-decoration:underline}.upload-hint[data-v-c10ee959]{font-size:12px;color:#888;margin:8px 0 0}.upload-loading[data-v-c10ee959]{display:flex;align-items:center;justify-content:center;gap:8px;color:#666}.mini-spinner[data-v-c10ee959]{width:16px;height:16px;border:2px solid #ddd;border-top-color:#5672cd;border-radius:50%;animation:spin-c10ee959 .6s linear infinite}@keyframes spin-c10ee959{to{transform:rotate(360deg)}}.dataset-list[data-v-c10ee959]{margin:12px 0}.dataset-item[data-v-c10ee959]{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f9fafb;border-radius:8px;margin-bottom:6px}.ds-icon[data-v-c10ee959]{font-size:18px}.ds-info[data-v-c10ee959]{flex:1}.ds-title[data-v-c10ee959]{font-size:13px;font-weight:600;color:#1f2329;display:block}.ds-meta[data-v-c10ee959]{font-size:12px;color:#666}.ds-del[data-v-c10ee959]{border:none;background:none;color:#999;cursor:pointer;font-size:14px;padding:4px 8px}.ds-del[data-v-c10ee959]:hover{color:#e53e3e}.clear-btn[data-v-c10ee959]{font-size:12px;color:#e53e3e;border:1px solid #fecaca;border-radius:6px;background:#fff;padding:3px 10px;cursor:pointer;margin-top:4px}.clear-btn[data-v-c10ee959]:hover{background:#fef2f2}.backup-bar[data-v-c10ee959]{display:flex;align-items:center;gap:8px;margin:8px 0}.backup-btn[data-v-c10ee959]{font-size:12px;color:#555;border:1px solid #d0d5dd;border-radius:6px;background:#fff;padding:4px 10px;cursor:pointer}.backup-btn[data-v-c10ee959]:hover{border-color:#999}.upload-saved[data-v-c10ee959]{font-size:12px;color:#16a34a;margin:8px 0 0}.upload-privacy[data-v-c10ee959]{font-size:11px;color:#aaa;margin:4px 0 0}.upload-error[data-v-c10ee959]{font-size:12px;color:#e53e3e;margin:4px 0 0}.filter-bar[data-v-735b4d85]{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px 18px;margin-bottom:16px}.filter-row[data-v-735b4d85]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.filter-row[data-v-735b4d85]:last-child{margin-bottom:0}.f-label[data-v-735b4d85]{font-size:12px;color:#666;white-space:nowrap}.f-gap[data-v-735b4d85]{margin-left:12px}select[data-v-735b4d85]{padding:4px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:12px;background:#fff;max-width:140px}.date-input[data-v-735b4d85]{padding:4px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:12px;width:130px}.preset-btn[data-v-735b4d85]{padding:3px 10px;border:1px solid #e5e7eb;border-radius:14px;background:#fff;font-size:11px;color:#555;cursor:pointer}.preset-btn.on[data-v-735b4d85]{background:#eef1fb;border-color:#5672cd;color:#5672cd}.gran-radio[data-v-735b4d85]{padding:3px 10px;border:1px solid #e5e7eb;border-radius:14px;font-size:11px;color:#555;cursor:pointer}.gran-radio.on[data-v-735b4d85]{background:#eef1fb;border-color:#5672cd;color:#5672cd}.query-btn[data-v-735b4d85]{margin-left:auto;padding:5px 18px;border:none;border-radius:6px;background:#5672cd;color:#fff;font-size:12px;cursor:pointer}.query-btn.dirty[data-v-735b4d85]{animation:pulse-735b4d85 1.5s infinite}@keyframes pulse-735b4d85{0%,to{box-shadow:0 0 #5672cd66}50%{box-shadow:0 0 0 6px #5672cd00}}.filter-dirty-hint[data-v-735b4d85],.ver-warn[data-v-735b4d85]{font-size:11px;color:#f59e0b}.ver-ok[data-v-735b4d85]{font-size:11px;color:#16a34a}.ver-config[data-v-735b4d85]{margin-top:8px}.ver-config summary[data-v-735b4d85]{font-size:12px;color:#666;cursor:pointer}.ver-body[data-v-735b4d85]{margin-top:8px}.ver-body textarea[data-v-735b4d85]{width:100%;font-size:12px;font-family:monospace;border:1px solid #d0d5dd;border-radius:6px;padding:8px;resize:vertical}.ver-actions[data-v-735b4d85]{display:flex;align-items:center;gap:8px;margin-top:6px}.apply-btn[data-v-735b4d85]{padding:3px 12px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:12px;cursor:pointer}.apply-btn.dirty[data-v-735b4d85]{border-color:#f59e0b;color:#f59e0b}.ver-hint[data-v-735b4d85]{font-size:11px;color:#999;margin:6px 0 0}.ver-preview[data-v-735b4d85]{font-size:11px;color:#555;margin:6px 0 0}.ver-seg[data-v-735b4d85]{background:#f3f4f6;padding:2px 6px;border-radius:4px;margin-right:6px}.funnel-section[data-v-13660bcb]{margin-bottom:24px}.section-title[data-v-13660bcb]{font-size:16px;font-weight:600;color:#1f2329;margin:0 0 12px}.view-toggle[data-v-13660bcb]{display:flex;gap:4px;margin-bottom:12px}.view-radio[data-v-13660bcb]{padding:4px 12px;border:1px solid #e5e7eb;border-radius:14px;font-size:12px;color:#555;cursor:pointer}.view-radio.on[data-v-13660bcb]{background:#eef1fb;border-color:#5672cd;color:#5672cd}.table-wrap[data-v-13660bcb]{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px}.funnel-table[data-v-13660bcb]{width:max-content;min-width:100%;border-collapse:collapse;font-size:12px}.funnel-table th[data-v-13660bcb],.funnel-table td[data-v-13660bcb]{padding:6px 10px;border-bottom:1px solid #f0f0f0;text-align:center;white-space:nowrap}.funnel-table th[data-v-13660bcb]{background:#f9fafb;font-weight:600;color:#374151;position:sticky;top:0;z-index:1}.sticky-col[data-v-13660bcb]{position:sticky;left:0;background:#fff;z-index:2;text-align:left!important;font-weight:500}thead .sticky-col[data-v-13660bcb]{background:#f9fafb;z-index:3}.num-cell[data-v-13660bcb]{color:#666}.sep-col[data-v-13660bcb]{border-left:2px solid #e5e7eb}.total-row td[data-v-13660bcb]{font-weight:600;background:#f9fafb!important;border-top:2px solid #e5e7eb}.drilldown[data-v-13660bcb]{margin-top:8px}.drill-controls[data-v-13660bcb]{display:flex;align-items:center;gap:8px;margin-bottom:10px}.drill-controls select[data-v-13660bcb]{padding:4px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:12px}.f-label[data-v-13660bcb]{font-size:12px;color:#666}.diff-pos[data-v-13660bcb]{color:#16a34a;font-weight:500}.diff-neg[data-v-13660bcb]{color:#dc2626;font-weight:500}.trend-section[data-v-22091309]{margin-bottom:24px}.section-title[data-v-22091309]{font-size:16px;font-weight:600;color:#1f2329;margin:0 0 12px}.event-picker[data-v-22091309]{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}.f-label[data-v-22091309]{font-size:12px;color:#666;line-height:24px}.ev-check[data-v-22091309]{padding:2px 8px;border:1px solid #e5e7eb;border-radius:12px;font-size:11px;color:#666;cursor:pointer}.ev-check.on[data-v-22091309]{background:#eef1fb;border-color:#5672cd;color:#5672cd}.chart-grid[data-v-22091309]{display:grid;gap:12px}.chart-cell[data-v-22091309]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:8px}.chart-img[data-v-22091309]{width:100%;height:auto;display:block}.error-section[data-v-c264f446]{margin-bottom:24px}.section-title[data-v-c264f446]{font-size:16px;font-weight:600;color:#1f2329;margin:0 0 4px}.section-desc[data-v-c264f446]{font-size:12px;color:#888;margin:0 0 12px}.sub-title[data-v-c264f446]{font-size:14px;font-weight:600;color:#1f2329;margin:16px 0 6px}.compare-desc[data-v-c264f446]{font-size:12px;color:#666;margin:0 0 8px}.err-controls[data-v-c264f446]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.err-controls select[data-v-c264f446]{padding:4px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:12px}.f-label[data-v-c264f446]{font-size:12px;color:#666}.chart-cell[data-v-c264f446]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:8px;margin-bottom:12px}.chart-img[data-v-c264f446]{width:100%;height:auto;display:block}.table-wrap[data-v-c264f446]{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px}.err-table[data-v-c264f446]{width:100%;border-collapse:collapse;font-size:12px}.err-table th[data-v-c264f446],.err-table td[data-v-c264f446]{padding:6px 12px;border-bottom:1px solid #f0f0f0;text-align:center}.err-table th[data-v-c264f446]{background:#f9fafb;font-weight:600;color:#374151}.sticky-col[data-v-c264f446]{text-align:left!important}.num-cell[data-v-c264f446]{color:#666}.err-compare[data-v-c264f446]{margin-top:16px}.device-drill[data-v-c264f446]{margin-top:20px}.drill-controls[data-v-c264f446]{display:flex;align-items:center;gap:8px;margin-bottom:10px}.drill-controls select[data-v-c264f446]{padding:4px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:12px;min-width:160px}.no-data[data-v-c264f446]{font-size:12px;color:#999;margin:8px 0}.rom-trend[data-v-c264f446]{margin-bottom:14px}.trend-title[data-v-c264f446]{font-size:13px;font-weight:600;color:#374151;margin:0;padding:8px 12px 4px}.trend-note[data-v-c264f446]{font-size:11px;color:#999;margin:4px 0 0;padding:4px 12px 8px}.error-heatmap[data-v-ef7cdc87]{margin-bottom:24px}.section-title[data-v-ef7cdc87]{font-size:16px;font-weight:600;color:#1f2329;margin:0 0 4px}.section-desc[data-v-ef7cdc87]{font-size:12px;color:#888;margin:0 0 12px}.vol-hint[data-v-ef7cdc87]{color:#aaa}.summary-card[data-v-fe282a98]{border:1px solid #e5e7eb;border-radius:10px;padding:14px 18px;margin-bottom:16px;background:#fff}.status-healthy[data-v-fe282a98]{border-left:4px solid #16a34a}.status-warning[data-v-fe282a98]{border-left:4px solid #f59e0b}.status-critical[data-v-fe282a98]{border-left:4px solid #dc2626}.card-header[data-v-fe282a98]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.status-badge[data-v-fe282a98]{font-size:12px;font-weight:600;padding:2px 8px;border-radius:10px}.status-healthy .status-badge[data-v-fe282a98]{background:#dcfce7;color:#166534}.status-warning .status-badge[data-v-fe282a98]{background:#fef3c7;color:#92400e}.status-critical .status-badge[data-v-fe282a98]{background:#fef2f2;color:#991b1b}.copy-btn[data-v-fe282a98]{border:1px solid #d0d5dd;border-radius:6px;background:#fff;padding:3px 10px;font-size:11px;color:#555;cursor:pointer}.copy-btn[data-v-fe282a98]:hover{border-color:#999}.summary-line[data-v-fe282a98]{font-size:13px;color:#374151;margin:4px 0;line-height:1.6}.summary-line[data-v-fe282a98] .hl-red{color:#dc2626;font-weight:600}.summary-line[data-v-fe282a98] .hl-green{color:#16a34a;font-weight:600}.qos-diag[data-v-e3c7169a]{max-width:1200px;margin:0 auto;padding:24px}.page-header[data-v-e3c7169a]{margin-bottom:20px}.page-header h1[data-v-e3c7169a]{font-size:20px;font-weight:700;color:#1f2329;margin:0}.page-header p[data-v-e3c7169a]{font-size:13px;color:#666;margin:6px 0 0}.project-bar[data-v-e3c7169a]{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.proj-label[data-v-e3c7169a]{font-size:12px;color:#666}.proj-btn[data-v-e3c7169a]{padding:4px 12px;border:1px solid #e5e7eb;border-radius:16px;background:#fff;font-size:12px;color:#555;cursor:pointer}.proj-btn.active[data-v-e3c7169a]{background:#eef1fb;border-color:#5672cd;color:#5672cd;font-weight:600}.proj-btn.proj-add[data-v-e3c7169a]{border-style:dashed;color:#888}.proj-btn.proj-del[data-v-e3c7169a]{color:#e53e3e;border-color:#fecaca}.proj-btn.proj-del[data-v-e3c7169a]:hover{background:#fef2f2}.empty-state[data-v-e3c7169a]{margin:20px 0;padding:20px;background:#f9fafb;border-radius:10px;border:1px solid #e5e7eb}.empty-state h3[data-v-e3c7169a]{font-size:15px;font-weight:600;color:#1f2329;margin:0 0 12px}.guide-table[data-v-e3c7169a]{width:100%;border-collapse:collapse;font-size:12px}.guide-table th[data-v-e3c7169a],.guide-table td[data-v-e3c7169a]{padding:8px 12px;border:1px solid #e5e7eb;text-align:left}.guide-table th[data-v-e3c7169a]{background:#f3f4f6;font-weight:600}.guide-table td code[data-v-e3c7169a]{background:#eef1fb;padding:1px 4px;border-radius:3px;font-size:11px}.guide-note[data-v-e3c7169a]{font-size:12px;color:#666;margin:10px 0 0}.guide-note code[data-v-e3c7169a]{background:#eef1fb;padding:1px 4px;border-radius:3px;font-size:11px}.glossary[data-v-e3c7169a],.export-guide[data-v-e3c7169a]{margin:16px 0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px 16px}.glossary summary[data-v-e3c7169a],.export-guide summary[data-v-e3c7169a]{cursor:pointer;font-size:13px;font-weight:600;color:#555;-webkit-user-select:none;user-select:none}.glossary-body[data-v-e3c7169a],.guide-body[data-v-e3c7169a]{margin-top:12px;font-size:13px;line-height:1.8;color:#333}.glossary-body h4[data-v-e3c7169a]{font-size:14px;font-weight:700;color:#1f2329;margin:16px 0 8px;border-bottom:1px solid #f0f0f0;padding-bottom:4px}.glossary-body h4[data-v-e3c7169a]:first-child{margin-top:0}.glossary-body dl[data-v-e3c7169a]{margin:0 0 8px}.glossary-body dt[data-v-e3c7169a]{font-weight:600;color:#374151;margin-top:8px}.glossary-body dd[data-v-e3c7169a]{margin:2px 0 0 16px;color:#555}.glossary-body dd p[data-v-e3c7169a]{margin:2px 0}.glossary-table[data-v-e3c7169a]{width:100%;border-collapse:collapse;font-size:12px;margin-top:8px}.glossary-table th[data-v-e3c7169a],.glossary-table td[data-v-e3c7169a]{padding:4px 10px;border:1px solid #e5e7eb;text-align:left}.glossary-table th[data-v-e3c7169a]{background:#f3f4f6;font-weight:600}.guide-body p[data-v-e3c7169a]{margin:6px 0}.guide-body code[data-v-e3c7169a]{background:#eef1fb;padding:1px 4px;border-radius:3px;font-size:11px}.pay-upload[data-v-a5b84c31]{margin:0 0 20px}.upload-box[data-v-a5b84c31]{border:2px dashed #d0d5dd;border-radius:12px;padding:32px;text-align:center;transition:border-color .2s,background .2s;cursor:pointer}.upload-box.dragging[data-v-a5b84c31]{border-color:#5672cd;background:#f0f4ff}.upload-icon[data-v-a5b84c31]{font-size:32px;margin-bottom:8px}.upload-text[data-v-a5b84c31]{font-size:14px;color:#333;margin:0}.upload-link[data-v-a5b84c31]{color:#5672cd;cursor:pointer;text-decoration:underline}.upload-hint[data-v-a5b84c31]{font-size:12px;color:#888;margin:8px 0 0}.upload-loading[data-v-a5b84c31]{display:flex;align-items:center;justify-content:center;gap:8px;color:#666}.mini-spinner[data-v-a5b84c31]{width:16px;height:16px;border:2px solid #ddd;border-top-color:#5672cd;border-radius:50%;animation:spin-a5b84c31 .6s linear infinite}@keyframes spin-a5b84c31{to{transform:rotate(360deg)}}.dataset-summary[data-v-a5b84c31]{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f9fafb;border-radius:8px;margin:12px 0}.ds-icon[data-v-a5b84c31]{font-size:18px}.ds-info[data-v-a5b84c31]{flex:1}.ds-title[data-v-a5b84c31]{font-size:13px;font-weight:600;color:#1f2329;display:block}.ds-meta[data-v-a5b84c31]{font-size:12px;color:#666}.ds-del[data-v-a5b84c31]{border:none;background:none;color:#999;cursor:pointer;font-size:14px;padding:4px 8px}.ds-del[data-v-a5b84c31]:hover{color:#e53e3e}.backup-bar[data-v-a5b84c31]{display:flex;align-items:center;gap:8px;margin:8px 0}.backup-btn[data-v-a5b84c31]{font-size:12px;color:#555;border:1px solid #d0d5dd;border-radius:6px;background:#fff;padding:4px 10px;cursor:pointer}.backup-btn[data-v-a5b84c31]:hover{border-color:#999}.backup-btn[data-v-a5b84c31]:disabled{opacity:.5;cursor:not-allowed}.upload-saved[data-v-a5b84c31]{font-size:12px;color:#16a34a;margin:8px 0 0}.upload-privacy[data-v-a5b84c31]{font-size:11px;color:#aaa;margin:4px 0 0}.upload-error[data-v-a5b84c31]{font-size:12px;color:#e53e3e;margin:4px 0 0}.pay-filter[data-v-4a87bf59]{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px 16px;margin-bottom:16px}.filter-row[data-v-4a87bf59]{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:10px}.filter-row[data-v-4a87bf59]:last-child{margin-bottom:0}.filter-group[data-v-4a87bf59]{display:flex;align-items:center;gap:6px}.filter-group>label[data-v-4a87bf59]{font-size:12px;color:#666;white-space:nowrap}.filter-group select[data-v-4a87bf59]{padding:4px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:12px}.date-input[data-v-4a87bf59]{padding:4px 8px;border:1px solid #d0d5dd;border-radius:6px;font-size:12px;width:130px}.preset-btn[data-v-4a87bf59]{padding:2px 10px;border:1px solid #d0d5dd;border-radius:12px;background:#fff;font-size:11px;color:#666;cursor:pointer}.preset-btn.on[data-v-4a87bf59]{border-color:#5672cd;color:#5672cd;background:#f0f4ff}.gran-group[data-v-4a87bf59]{margin-left:12px}.gran-radio[data-v-4a87bf59]{padding:3px 10px;border:1px solid #d0d5dd;border-radius:6px;font-size:11px;color:#555;cursor:pointer;-webkit-user-select:none;user-select:none}.gran-radio.on[data-v-4a87bf59]{border-color:#5672cd;color:#5672cd;background:#f0f4ff;font-weight:600}.sep[data-v-4a87bf59]{color:#999;font-size:12px}.cat-checks[data-v-4a87bf59]{display:flex;gap:8px;flex-wrap:wrap}.check-item[data-v-4a87bf59]{display:inline-flex;align-items:center;gap:3px;font-size:12px;color:#444;cursor:pointer;white-space:nowrap}.check-item input[data-v-4a87bf59]{cursor:pointer}.btn-query[data-v-4a87bf59]{padding:5px 16px;background:#5672cd;color:#fff;border:none;border-radius:6px;font-size:12px;cursor:pointer;margin-left:auto}.btn-query[data-v-4a87bf59]:hover{opacity:.9}.ver-config[data-v-4a87bf59]{margin-top:10px}.ver-config summary[data-v-4a87bf59]{font-size:12px;color:#5672cd;cursor:pointer;-webkit-user-select:none;user-select:none}.ver-body[data-v-4a87bf59]{margin-top:8px}.ver-body textarea[data-v-4a87bf59]{width:100%;max-width:400px;padding:8px 10px;border:1px solid #d0d5dd;border-radius:6px;font-size:12px;font-family:monospace;resize:vertical}.ver-actions[data-v-4a87bf59]{display:flex;align-items:center;gap:8px;margin-top:6px}.apply-btn[data-v-4a87bf59]{padding:3px 12px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:12px;cursor:pointer;color:#555}.apply-btn.dirty[data-v-4a87bf59]{border-color:#5672cd;color:#5672cd;font-weight:600}.apply-btn[data-v-4a87bf59]:hover{background:#f3f4f6}.ver-warn[data-v-4a87bf59]{font-size:11px;color:#d97706}.ver-hint[data-v-4a87bf59]{font-size:11px;color:#888;margin:6px 0 0}.ver-error[data-v-4a87bf59]{font-size:11px;color:#e53e3e;margin:4px 0 0}.ver-preview[data-v-4a87bf59]{font-size:11px;color:#444;margin:6px 0 0;line-height:1.8}.ver-seg[data-v-4a87bf59]{display:inline-block;background:#eef1fb;padding:1px 6px;border-radius:3px;margin-right:6px;white-space:nowrap}.config-panel[data-v-32f4565c]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:10px 16px;margin-bottom:16px;font-size:13px}.config-panel summary[data-v-32f4565c]{cursor:pointer;color:#555;font-weight:500;-webkit-user-select:none;user-select:none;font-size:12px}.config-grid[data-v-32f4565c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px 16px;margin-top:12px}.config-grid label[data-v-32f4565c]{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#666;font-size:12px;white-space:nowrap}.config-grid input[data-v-32f4565c]{width:60px;padding:3px 6px;border:1px solid #d0d5dd;border-radius:5px;font-size:12px;text-align:right}.unit[data-v-32f4565c]{color:#999;font-size:11px}.hint[data-v-32f4565c]{color:#999;font-size:10px}.pay-summary[data-v-659c78b4]{margin-bottom:20px}.insight-card[data-v-659c78b4]{border-radius:10px;padding:14px 18px;margin-bottom:16px;border:1px solid #e5e7eb;background:#fff}.insight-card.good[data-v-659c78b4]{border-color:#86efac;background:#f0fdf4}.insight-card.warning[data-v-659c78b4]{border-color:#fcd34d;background:#fffbeb}.insight-card.critical[data-v-659c78b4]{border-color:#fca5a5;background:#fef2f2}.insight-card.neutral[data-v-659c78b4]{border-color:#e5e7eb;background:#f9fafb}.card-head[data-v-659c78b4]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.status-badge[data-v-659c78b4]{font-size:14px;font-weight:700;color:#1f2329}.copy-btn[data-v-659c78b4]{padding:3px 12px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:12px;color:#555;cursor:pointer}.copy-btn[data-v-659c78b4]:hover{border-color:#999}.card-body p[data-v-659c78b4]{font-size:13px;line-height:1.8;color:#333;margin:0 0 4px}.card-body[data-v-659c78b4] .hl-up{color:#dc2626;font-weight:600}.card-body[data-v-659c78b4] .hl-down{color:#16a34a;font-weight:600}.section-title[data-v-659c78b4]{font-size:15px;font-weight:600;color:#1f2329;margin:0 0 10px}.summary-grid[data-v-659c78b4]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.summary-item[data-v-659c78b4]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px}.summary-item.diverge[data-v-659c78b4]{border-color:#fbbf24;background:#fffbeb}.item-header[data-v-659c78b4]{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.item-cat[data-v-659c78b4]{font-size:13px;font-weight:600;color:#1f2329}.item-badge[data-v-659c78b4]{font-size:10px;color:#d97706;background:#fef3c7;padding:1px 6px;border-radius:4px}.item-metrics[data-v-659c78b4]{display:flex;gap:16px}.metric[data-v-659c78b4]{display:flex;flex-direction:column}.metric-val[data-v-659c78b4]{font-size:15px;font-weight:700;color:#1f2329}.metric-val.up[data-v-659c78b4]{color:#dc2626}.metric-val.down[data-v-659c78b4]{color:#16a34a}.metric-label[data-v-659c78b4]{font-size:11px;color:#888}.diverge-note[data-v-659c78b4]{margin-top:10px;font-size:12px;color:#d97706;background:#fffbeb;padding:6px 10px;border-radius:6px}.pay-trend[data-v-180ddfb4]{margin-bottom:24px}.section-title[data-v-180ddfb4]{font-size:16px;font-weight:600;color:#1f2329;margin:0 0 12px}.view-toggle[data-v-180ddfb4]{display:flex;gap:4px;margin-bottom:12px}.view-toggle button[data-v-180ddfb4]{padding:4px 12px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:12px;color:#555;cursor:pointer}.view-toggle button.active[data-v-180ddfb4]{background:#eef1fb;border-color:#5672cd;color:#5672cd;font-weight:600}.chart-container[data-v-180ddfb4]{width:100%;height:380px;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.facet-chart[data-v-180ddfb4]{width:100%;height:320px}.chart-cell[data-v-180ddfb4]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:8px}.facet-grid[data-v-180ddfb4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:10px}.pay-compare[data-v-3e9da01c]{margin-bottom:24px}.section-title[data-v-3e9da01c]{font-size:16px;font-weight:600;color:#1f2329;margin:0 0 12px}.mode-toggle[data-v-3e9da01c]{display:flex;gap:4px;margin-bottom:10px}.mode-toggle button[data-v-3e9da01c]{padding:4px 12px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:12px;color:#555;cursor:pointer}.mode-toggle button.active[data-v-3e9da01c]{background:#eef1fb;border-color:#5672cd;color:#5672cd;font-weight:600}.table-wrap[data-v-3e9da01c]{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px}.compare-table[data-v-3e9da01c]{width:100%;border-collapse:collapse;font-size:12px}.compare-table th[data-v-3e9da01c],.compare-table td[data-v-3e9da01c]{padding:8px 12px;border-bottom:1px solid #f0f0f0;text-align:center}.compare-table th[data-v-3e9da01c]{background:#f9fafb;font-weight:600;color:#374151}.sticky-col[data-v-3e9da01c]{text-align:left!important;white-space:nowrap}.num-cell[data-v-3e9da01c]{font-variant-numeric:tabular-nums}.change-up[data-v-3e9da01c]{color:#dc2626}.change-down[data-v-3e9da01c]{color:#16a34a}.total-row td[data-v-3e9da01c]{border-top:2px solid #e5e7eb;background:#f9fafb}.pay-mix[data-v-1beaf086]{margin-bottom:24px}.section-title[data-v-1beaf086]{font-size:16px;font-weight:600;color:#1f2329;margin:0 0 4px}.section-desc[data-v-1beaf086]{font-size:12px;color:#888;margin:0 0 12px}.chart-container[data-v-1beaf086]{width:100%;height:360px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px}.table-wrap[data-v-1beaf086]{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px}.mix-table[data-v-1beaf086]{width:100%;border-collapse:collapse;font-size:12px}.mix-table th[data-v-1beaf086],.mix-table td[data-v-1beaf086]{padding:8px 12px;border-bottom:1px solid #f0f0f0;text-align:center}.mix-table th[data-v-1beaf086]{background:#f9fafb;font-weight:600;color:#374151}.sticky-col[data-v-1beaf086]{text-align:left!important}.num-cell[data-v-1beaf086]{font-variant-numeric:tabular-nums}.change-up[data-v-1beaf086]{color:#dc2626}.change-down[data-v-1beaf086]{color:#16a34a}.pay-category[data-v-ae720283]{max-width:1200px;margin:0 auto;padding:24px}.page-header[data-v-ae720283]{margin-bottom:20px}.page-header h1[data-v-ae720283]{font-size:20px;font-weight:700;color:#1f2329;margin:0}.page-header p[data-v-ae720283]{font-size:13px;color:#666;margin:6px 0 0}.project-bar[data-v-ae720283]{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.proj-label[data-v-ae720283]{font-size:12px;color:#666}.proj-btn[data-v-ae720283]{padding:4px 12px;border:1px solid #e5e7eb;border-radius:16px;background:#fff;font-size:12px;color:#555;cursor:pointer}.proj-btn.active[data-v-ae720283]{background:#eef1fb;border-color:#5672cd;color:#5672cd;font-weight:600}.proj-btn.proj-add[data-v-ae720283]{border-style:dashed;color:#888}.proj-btn.proj-del[data-v-ae720283]{color:#e53e3e;border-color:#fecaca}.proj-btn.proj-del[data-v-ae720283]:hover{background:#fef2f2}.empty-state[data-v-ae720283]{margin:20px 0;padding:20px;background:#f9fafb;border-radius:10px;border:1px solid #e5e7eb}.empty-state h3[data-v-ae720283]{font-size:15px;font-weight:600;color:#1f2329;margin:0 0 12px}.guide-table[data-v-ae720283]{width:100%;border-collapse:collapse;font-size:12px}.guide-table th[data-v-ae720283],.guide-table td[data-v-ae720283]{padding:8px 12px;border:1px solid #e5e7eb;text-align:left}.guide-table th[data-v-ae720283]{background:#f3f4f6;font-weight:600}.guide-table td code[data-v-ae720283]{background:#eef1fb;padding:1px 4px;border-radius:3px;font-size:11px}.guide-note[data-v-ae720283]{font-size:12px;color:#666;margin:10px 0 0}.glossary[data-v-ae720283],.export-guide[data-v-ae720283]{margin:16px 0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px 16px}.glossary summary[data-v-ae720283],.export-guide summary[data-v-ae720283]{cursor:pointer;font-size:13px;font-weight:600;color:#555;-webkit-user-select:none;user-select:none}.glossary-body[data-v-ae720283],.guide-body[data-v-ae720283]{margin-top:12px;font-size:13px;line-height:1.8;color:#333}.glossary-body h4[data-v-ae720283]{font-size:14px;font-weight:700;color:#1f2329;margin:16px 0 8px;border-bottom:1px solid #f0f0f0;padding-bottom:4px}.glossary-body h4[data-v-ae720283]:first-child{margin-top:0}.glossary-body dl[data-v-ae720283]{margin:0 0 8px}.glossary-body dt[data-v-ae720283]{font-weight:600;color:#374151;margin-top:8px}.glossary-body dd[data-v-ae720283]{margin:2px 0 0 16px;color:#555}.glossary-body dd p[data-v-ae720283]{margin:2px 0}.glossary-table[data-v-ae720283]{width:100%;border-collapse:collapse;font-size:12px;margin-top:8px}.glossary-table th[data-v-ae720283],.glossary-table td[data-v-ae720283]{padding:4px 10px;border:1px solid #e5e7eb;text-align:left}.glossary-table th[data-v-ae720283]{background:#f3f4f6;font-weight:600}.guide-body p[data-v-ae720283]{margin:6px 0}.guide-body code[data-v-ae720283]{background:#eef1fb;padding:1px 4px;border-radius:3px;font-size:11px}.loading-page[data-v-a2a2ab97]{display:flex;align-items:center;justify-content:center;min-height:100vh;color:#888;font-size:14px}.app-header[data-v-a2a2ab97]{display:flex;align-items:center;gap:24px;padding:10px 24px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:50}.header-title[data-v-a2a2ab97]{font-size:15px;font-weight:600;color:#1f2329;white-space:nowrap}.header-nav[data-v-a2a2ab97]{display:flex;gap:4px;flex:1}.nav-btn[data-v-a2a2ab97]{padding:5px 14px;border:none;border-radius:6px;background:transparent;font-size:13px;color:#555;cursor:pointer}.nav-btn[data-v-a2a2ab97]:hover{background:#f3f4f6;color:#1f2329}.nav-btn.active[data-v-a2a2ab97]{background:#eef1fb;color:#5672cd;font-weight:600}.header-right[data-v-a2a2ab97]{display:flex;align-items:center;gap:12px}.header-user[data-v-a2a2ab97]{font-size:13px;color:#666}.header-btn[data-v-a2a2ab97]{padding:4px 12px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:12px;color:#555;cursor:pointer}.header-btn[data-v-a2a2ab97]:hover{border-color:#999;color:#333}.header-btn-logout[data-v-a2a2ab97]{color:#e53e3e;border-color:#fecaca}.header-btn-logout[data-v-a2a2ab97]:hover{background:#fef2f2}.app-main[data-v-a2a2ab97]{min-height:calc(100vh - 50px)}.no-module[data-v-a2a2ab97]{display:flex;align-items:center;justify-content:center;min-height:60vh;color:#888;font-size:14px}.modal-mask[data-v-a2a2ab97]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:100}.modal-card[data-v-a2a2ab97]{background:#fff;border-radius:12px;padding:24px;width:320px;box-shadow:0 4px 24px #00000026}.modal-card h3[data-v-a2a2ab97]{margin:0 0 8px;font-size:16px;color:#1f2329}.modal-card label[data-v-a2a2ab97]{display:block;font-size:12px;color:#666;margin:12px 0 4px}.modal-card input[data-v-a2a2ab97]{width:100%;padding:7px 10px;box-sizing:border-box;border:1px solid #d0d5dd;border-radius:6px;font-size:13px}.modal-card input[data-v-a2a2ab97]:focus{outline:none;border-color:#5672cd}.modal-error[data-v-a2a2ab97]{color:#e53e3e;font-size:12px;margin:10px 0 0}.modal-success[data-v-a2a2ab97]{color:#16a34a;font-size:12px;margin:10px 0 0}.modal-actions[data-v-a2a2ab97]{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.modal-submit[data-v-a2a2ab97]{padding:4px 16px;border:none;border-radius:6px;background:#5672cd;color:#fff;font-size:12px;cursor:pointer}.modal-submit[data-v-a2a2ab97]:hover:not(:disabled){background:#4a63b5}.modal-submit[data-v-a2a2ab97]:disabled{opacity:.6;cursor:not-allowed}
