.login-page[data-v-7babefe7]{justify-content:center;align-items:center;min-height:100vh;display:flex}.form-card[data-v-7babefe7]{background:#fff;border-radius:8px;width:400px;padding:40px;box-shadow:0 2px 12px #00000014}h2[data-v-7babefe7]{text-align:center;color:#1a1a1a;margin-bottom:30px}.form-group[data-v-7babefe7]{margin-bottom:20px}label[data-v-7babefe7]{color:#666;margin-bottom:6px;font-size:14px;display:block}input[data-v-7babefe7]{border-radius:4px;width:100%;padding:10px 12px;font-size:14px;transition:border-color .3s}input[data-v-7babefe7]:focus{border-color:#1890ff}.btn-primary[data-v-7babefe7]{color:#fff;background:#1890ff;border-radius:4px;width:100%;padding:10px;font-size:16px;transition:background .3s}.btn-primary[data-v-7babefe7]:hover{background:#40a9ff}.btn-primary[data-v-7babefe7]:disabled{cursor:not-allowed;background:#91d5ff}.error-msg[data-v-7babefe7]{color:#ff4d4f;text-align:center;margin-bottom:10px;font-size:14px}.form-footer[data-v-7babefe7]{text-align:center;color:#999;margin-top:20px;font-size:14px}.form-footer a[data-v-7babefe7]{color:#1890ff}.register-page[data-v-fe067a98]{justify-content:center;align-items:center;min-height:100vh;display:flex}.form-card[data-v-fe067a98]{background:#fff;border-radius:8px;width:420px;padding:40px;box-shadow:0 2px 12px #00000014}h2[data-v-fe067a98]{text-align:center;color:#1a1a1a;margin-bottom:30px}.form-group[data-v-fe067a98]{margin-bottom:20px}label[data-v-fe067a98]{color:#666;margin-bottom:6px;font-size:14px;display:block}input[data-v-fe067a98]{border-radius:4px;width:100%;padding:10px 12px;font-size:14px;transition:border-color .3s}input[data-v-fe067a98]:focus{border-color:#1890ff}.hint[data-v-fe067a98]{color:#999;margin-top:4px;font-size:12px}.btn-primary[data-v-fe067a98]{color:#fff;background:#1890ff;border-radius:4px;width:100%;padding:10px;font-size:16px;transition:background .3s}.btn-primary[data-v-fe067a98]:hover{background:#40a9ff}.btn-primary[data-v-fe067a98]:disabled{cursor:not-allowed;background:#91d5ff}.error-msg[data-v-fe067a98]{color:#ff4d4f;text-align:center;margin-bottom:10px;font-size:14px}.form-footer[data-v-fe067a98]{text-align:center;color:#999;margin-top:20px;font-size:14px}.form-footer a[data-v-fe067a98]{color:#1890ff}.dashboard[data-v-5876b40c]{flex-direction:column;min-height:100vh;display:flex}.header[data-v-5876b40c]{color:#fff;background:#001529;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex}.header-left h1[data-v-5876b40c]{font-size:20px;font-weight:600}.header-right[data-v-5876b40c]{align-items:center;gap:16px;display:flex}.user-info[data-v-5876b40c]{font-size:14px}.admin-badge[data-v-5876b40c]{color:#fff;background:#52c41a;border-radius:4px;margin-left:8px;padding:2px 8px;font-size:12px;display:inline-block}.btn-logout[data-v-5876b40c]{color:#fff;background:0 0;border:1px solid #ffffff4d;border-radius:4px;padding:6px 16px;font-size:14px;transition:all .3s}.btn-logout[data-v-5876b40c]:hover{color:#ff4d4f;border-color:#ff4d4f}.layout[data-v-5876b40c]{flex:1;display:flex}.sidebar[data-v-5876b40c]{background:#fff;border-right:1px solid #f0f0f0;flex-shrink:0;width:220px;padding:16px 0}.nav-item[data-v-5876b40c]{color:#333;border-left:3px solid #0000;padding:12px 24px;font-size:14px;transition:all .3s;display:block}.nav-item[data-v-5876b40c]:hover{color:#1890ff;background:#e6f7ff}.nav-item.active[data-v-5876b40c]{color:#1890ff;background:#e6f7ff;border-left-color:#1890ff}.main-content[data-v-5876b40c]{background:#f0f2f5;flex:1;padding:24px}.welcome[data-v-5876b40c]{background:#fff;border-radius:8px;margin-bottom:24px;padding:24px}.welcome h2[data-v-5876b40c]{margin-bottom:8px}.welcome p[data-v-5876b40c]{color:#666}.modules[data-v-5876b40c]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.module-card[data-v-5876b40c]{cursor:pointer;background:#fff;border:1px solid #f0f0f0;border-radius:8px;padding:24px;transition:all .3s}.module-card[data-v-5876b40c]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.module-card h3[data-v-5876b40c]{margin-bottom:8px}.module-card p[data-v-5876b40c]{color:#666;font-size:14px}.dashboard[data-v-fde6be90]{flex-direction:column;min-height:100vh;display:flex}.header[data-v-fde6be90]{color:#fff;background:#001529;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex}.header-left h1[data-v-fde6be90]{font-size:20px;font-weight:600}.header-right[data-v-fde6be90]{align-items:center;gap:16px;display:flex}.user-info[data-v-fde6be90]{font-size:14px}.admin-badge[data-v-fde6be90]{color:#fff;background:#52c41a;border-radius:4px;margin-left:8px;padding:2px 8px;font-size:12px;display:inline-block}.btn-logout[data-v-fde6be90]{color:#fff;background:0 0;border:1px solid #ffffff4d;border-radius:4px;padding:6px 16px;font-size:14px}.btn-logout[data-v-fde6be90]:hover{color:#ff4d4f;border-color:#ff4d4f}.layout[data-v-fde6be90]{flex:1;display:flex}.sidebar[data-v-fde6be90]{background:#fff;border-right:1px solid #f0f0f0;flex-shrink:0;width:220px;padding:16px 0}.nav-item[data-v-fde6be90]{color:#333;border-left:3px solid #0000;padding:12px 24px;font-size:14px;display:block}.nav-item[data-v-fde6be90]:hover{color:#1890ff;background:#e6f7ff}.nav-item.active[data-v-fde6be90]{color:#1890ff;background:#e6f7ff;border-left-color:#1890ff}.main-content[data-v-fde6be90]{background:#f0f2f5;flex:1;padding:24px}.section[data-v-fde6be90]{margin-bottom:32px}.section-header[data-v-fde6be90]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-header h2[data-v-fde6be90]{font-size:18px}.header-actions[data-v-fde6be90]{align-items:center;gap:8px;display:flex}.count-input[data-v-fde6be90]{text-align:center;border-radius:4px;width:80px;padding:8px 12px;font-size:14px}.count-input[data-v-fde6be90]:focus{border-color:#1890ff}.table-card[data-v-fde6be90]{background:#fff;border-radius:8px;padding:16px}table[data-v-fde6be90]{border-collapse:collapse;width:100%}th[data-v-fde6be90],td[data-v-fde6be90]{text-align:left;border-bottom:1px solid #f0f0f0;padding:12px 16px;font-size:14px}th[data-v-fde6be90]{color:#666;background:#fafafa;font-weight:600}td[data-v-fde6be90]{color:#333}.empty[data-v-fde6be90]{text-align:center;color:#999;padding:32px}.role-admin[data-v-fde6be90]{color:#52c41a;font-weight:600}.role-user[data-v-fde6be90]{color:#1890ff}.btn-edit[data-v-fde6be90]{color:#fff;background:#1890ff;border-radius:4px;padding:4px 12px;font-size:12px}.btn-edit[data-v-fde6be90]:hover{background:#40a9ff}.btn-primary[data-v-fde6be90]{color:#fff;background:#1890ff;border-radius:4px;padding:8px 20px;font-size:14px}.btn-primary[data-v-fde6be90]:hover{background:#40a9ff}.btn-primary[data-v-fde6be90]:disabled{cursor:not-allowed;background:#91d5ff}.btn-delete[data-v-fde6be90]{color:#fff;background:#ff4d4f;border-radius:4px;padding:4px 12px;font-size:12px}.btn-delete[data-v-fde6be90]:hover{background:#ff7875}.code-text[data-v-fde6be90]{background:#f5f5f5;border-radius:4px;padding:2px 8px;font-family:Courier New,monospace;font-size:13px}.modal-overlay[data-v-fde6be90]{z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-fde6be90]{background:#fff;border-radius:8px;width:400px;padding:24px}.modal h3[data-v-fde6be90]{margin-bottom:20px}.form-group[data-v-fde6be90]{margin-bottom:16px}.form-group label[data-v-fde6be90]{color:#666;margin-bottom:6px;font-size:14px;display:block}.form-group input[data-v-fde6be90]{border-radius:4px;width:100%;padding:8px 12px;font-size:14px}.form-group input[data-v-fde6be90]:focus{border-color:#1890ff}.modal-actions[data-v-fde6be90]{justify-content:flex-end;gap:12px;margin-top:20px;display:flex}.btn-cancel[data-v-fde6be90]{background:#f5f5f5;border-radius:4px;padding:8px 20px;font-size:14px}.btn-cancel[data-v-fde6be90]:hover{background:#d9d9d9}.error-msg[data-v-fde6be90]{color:#ff4d4f;margin-bottom:10px;font-size:14px}.success-msg[data-v-fde6be90]{color:#52c41a;margin-bottom:10px;font-size:14px}.asset-management[data-v-59851719]{flex-direction:column;min-height:100vh;display:flex}.header[data-v-59851719]{color:#fff;background:#001529;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex}.header-left h1[data-v-59851719]{font-size:20px;font-weight:600}.header-right[data-v-59851719]{align-items:center;gap:16px;display:flex}.user-info[data-v-59851719]{font-size:14px}.admin-badge[data-v-59851719]{color:#fff;background:#52c41a;border-radius:4px;margin-left:8px;padding:2px 8px;font-size:12px;display:inline-block}.btn-logout[data-v-59851719]{color:#fff;background:0 0;border:1px solid #ffffff4d;border-radius:4px;padding:6px 16px;font-size:14px;transition:all .3s}.btn-logout[data-v-59851719]:hover{color:#ff4d4f;border-color:#ff4d4f}.layout[data-v-59851719]{flex:1;display:flex}.sidebar[data-v-59851719]{background:#fff;border-right:1px solid #f0f0f0;flex-shrink:0;width:220px;padding:16px 0}.nav-item[data-v-59851719]{color:#333;border-left:3px solid #0000;padding:12px 24px;font-size:14px;transition:all .3s;display:block}.nav-item[data-v-59851719]:hover{color:#1890ff;background:#e6f7ff}.nav-item.active[data-v-59851719]{color:#1890ff;background:#e6f7ff;border-left-color:#1890ff}.main-content[data-v-59851719]{background:#f0f2f5;flex:1;padding:24px;overflow-y:auto}.section[data-v-59851719]{max-width:1100px}.section-header[data-v-59851719]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-header h2[data-v-59851719]{font-size:20px;font-weight:600}.section-header-left[data-v-59851719]{align-items:center;gap:12px;display:flex}.total-amount[data-v-59851719]{color:#555;background:#f0f5ff;border-radius:6px;padding:4px 12px;font-size:14px}.total-amount strong[data-v-59851719]{color:#1890ff;font-size:16px}.btn-primary[data-v-59851719]{color:#fff;background:#1890ff;border:none;border-radius:6px;padding:8px 20px;font-size:14px;transition:background .2s}.btn-primary[data-v-59851719]:hover{background:#40a9ff}.btn-small[data-v-59851719]{color:#fff;background:#1890ff;border:none;border-radius:4px;padding:4px 12px;font-size:13px}.btn-small[data-v-59851719]:hover{background:#40a9ff}.btn-icon[data-v-59851719]{opacity:.6;background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:16px;transition:opacity .2s,background .2s}.btn-icon[data-v-59851719]:hover{opacity:1;background:#f0f0f0}.btn-danger-icon[data-v-59851719]:hover{background:#fff1f0}.btn-cancel[data-v-59851719]{color:#666;background:#f5f5f5;border:1px solid #d9d9d9;border-radius:6px;padding:8px 20px;font-size:14px}.btn-cancel[data-v-59851719]:hover{background:#e8e8e8}.btn-danger[data-v-59851719]{color:#fff;background:#ff4d4f;border:none;border-radius:6px;padding:8px 20px;font-size:14px}.btn-danger[data-v-59851719]:hover{background:#ff7875}.loading[data-v-59851719],.empty[data-v-59851719]{text-align:center;color:#999;padding:40px;font-size:14px}.fund-list[data-v-59851719]{flex-direction:column;gap:8px;display:flex}.fund-card[data-v-59851719]{background:#fff;border:1px solid #f0f0f0;border-radius:8px;transition:all .2s;overflow:hidden}.fund-card[data-v-59851719]:hover{border-color:#d9d9d9}.fund-card.expanded[data-v-59851719]{border-color:#1890ff;box-shadow:0 2px 8px #1890ff14}.fund-header[data-v-59851719]{cursor:pointer;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.fund-info[data-v-59851719]{align-items:center;gap:12px;display:flex}.fund-name[data-v-59851719]{color:#333;font-size:16px;font-weight:500}.fund-meta[data-v-59851719]{color:#999;font-size:13px}.fund-rate[data-v-59851719]{border-radius:10px;padding:1px 8px;font-size:12px;font-weight:500}.fund-actions[data-v-59851719]{gap:4px;display:flex}.fund-detail[data-v-59851719]{background:#fafafa;border-top:1px solid #f0f0f0;padding:16px 20px}.detail-header[data-v-59851719]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.detail-header h3[data-v-59851719]{color:#555;font-size:15px;font-weight:500}.detail-actions[data-v-59851719]{align-items:center;gap:8px;display:flex}.btn-toggle-view[data-v-59851719]{color:#666;background:#f5f5f5;border:1px solid #d9d9d9;border-radius:4px;padding:4px 12px;font-size:13px;transition:all .2s}.btn-toggle-view[data-v-59851719]:hover{color:#1890ff;border-color:#1890ff}.btn-toggle-view.active[data-v-59851719]{color:#1890ff;background:#e6f7ff;border-color:#1890ff}.chart-container[data-v-59851719]{background:#fff;border:1px solid #f0f0f0;border-radius:8px;padding:12px;overflow-x:auto}.chart-legend[data-v-59851719]{align-items:center;gap:20px;margin-bottom:8px;padding-left:8px;display:flex}.legend-item[data-v-59851719]{color:#555;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:13px;transition:opacity .2s;display:inline-flex}.legend-item[data-v-59851719]:hover{opacity:.7}.legend-item.legend-off[data-v-59851719]{opacity:.35;text-decoration:line-through}.legend-dot[data-v-59851719]{border-radius:50%;width:10px;height:10px;display:inline-block}.amount-dot[data-v-59851719]{fill:#1890ff;background:#1890ff}.rate-dot[data-v-59851719]{fill:#f5222d;background:#f5222d}.line-chart[data-v-59851719]{width:100%;max-width:700px;height:auto;display:block}.grid-line[data-v-59851719]{stroke:#f0f0f0;stroke-width:1px}.axis-label[data-v-59851719]{fill:#999;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:11px}.axis-label-right[data-v-59851719]{fill:#f5222d}.axis-title[data-v-59851719]{fill:#999;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px}.chart-line[data-v-59851719]{fill:none;stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.amount-line[data-v-59851719]{stroke:#1890ff}.rate-line[data-v-59851719]{stroke:#f5222d;stroke-dasharray:5 3}.chart-dot[data-v-59851719]{stroke:#fff;stroke-width:2px}.chart-dot.amount-dot[data-v-59851719]{fill:#1890ff}.chart-dot.rate-dot[data-v-59851719]{fill:#f5222d}.chart-dot-ring[data-v-59851719]{fill:#0000;stroke-width:1px;opacity:.3}.chart-dot-ring.amount-dot-ring[data-v-59851719]{stroke:#1890ff}.chart-label[data-v-59851719]{fill:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;font-weight:600}.chart-label-rate[data-v-59851719]{fill:#f5222d;font-size:11px}.records-timeline[data-v-59851719],.record-item-wrapper[data-v-59851719]{flex-direction:column;display:flex}.record-row[data-v-59851719]{background:#fff;border:1px solid #f0f0f0;border-radius:6px;align-items:center;gap:16px;padding:10px 12px;transition:background .2s;display:flex}.record-row[data-v-59851719]:hover{background:#f5f9ff}.record-index[data-v-59851719]{color:#1890ff;background:#e6f7ff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:600;display:flex}.record-field[data-v-59851719]{flex:1;min-width:0}.record-field label[data-v-59851719]{color:#999;margin-bottom:2px;font-size:11px;display:block}.record-value[data-v-59851719]{color:#333;font-variant-numeric:tabular-nums;font-size:14px}.record-value.amount[data-v-59851719]{font-weight:600}.change-positive[data-v-59851719]{color:#52c41a;font-weight:600}.change-negative[data-v-59851719]{color:#ff4d4f;font-weight:600}.record-actions[data-v-59851719]{flex-shrink:0;gap:2px;display:flex}.rate-divider[data-v-59851719]{align-items:center;gap:10px;padding:4px 0 4px 44px;display:flex}.rate-line[data-v-59851719]{background:linear-gradient(90deg,#d9d9d9,#0000);flex:1;height:1px}.rate-badge[data-v-59851719]{white-space:nowrap;border-radius:12px;align-items:center;gap:4px;padding:2px 10px;font-size:12px;display:inline-flex}.rate-positive[data-v-59851719]{color:#52c41a;background:#f6ffed;border:1px solid #b7eb8f}.rate-negative[data-v-59851719]{color:#ff4d4f;background:#fff1f0;border:1px solid #ffa39e}.rate-zero[data-v-59851719]{color:#999;background:#f5f5f5;border:1px solid #d9d9d9}.rate-label[data-v-59851719]{opacity:.7}.rate-value[data-v-59851719]{font-variant-numeric:tabular-nums;font-weight:600}.modal-overlay[data-v-59851719]{z-index:1000;background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-59851719]{background:#fff;border-radius:12px;width:440px;max-width:90vw;padding:24px;box-shadow:0 8px 24px #0000001f}.modal-sm[data-v-59851719]{width:360px}.modal h3[data-v-59851719]{margin-bottom:16px;font-size:18px}.modal p[data-v-59851719]{color:#666;margin-bottom:16px;font-size:14px}.input[data-v-59851719]{border:1px solid #d9d9d9;border-radius:6px;width:100%;padding:8px 12px;font-size:14px;transition:border-color .2s}.input[data-v-59851719]:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff1a}.form-group[data-v-59851719]{margin-bottom:14px}.form-group label[data-v-59851719]{color:#666;margin-bottom:4px;font-size:13px;display:block}.modal-actions[data-v-59851719]{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}@media (width<=768px){.sidebar[data-v-59851719]{display:none}.main-content[data-v-59851719]{padding:12px}.section-header[data-v-59851719]{flex-wrap:wrap;gap:8px}.section-header h2[data-v-59851719]{font-size:17px}.total-amount[data-v-59851719]{padding:2px 8px;font-size:12px}.total-amount strong[data-v-59851719]{font-size:14px}.fund-header[data-v-59851719]{padding:10px 12px}.fund-info[data-v-59851719]{flex-wrap:wrap;gap:8px}.fund-name[data-v-59851719]{font-size:15px}.fund-meta[data-v-59851719]{font-size:12px}.fund-rate[data-v-59851719]{padding:0 6px;font-size:11px}.fund-detail[data-v-59851719]{padding:12px}.detail-header[data-v-59851719]{flex-wrap:wrap;gap:6px}.record-row[data-v-59851719]{gap:8px;padding:8px}.record-index[data-v-59851719]{width:22px;height:22px;font-size:11px}.record-field label[data-v-59851719]{font-size:10px}.record-value[data-v-59851719]{font-size:13px}.record-actions[data-v-59851719]{gap:0}.btn-icon[data-v-59851719]{padding:2px 4px;font-size:14px}.rate-divider[data-v-59851719]{padding:4px 0 4px 34px}.modal[data-v-59851719]{max-width:96vw;padding:16px}.modal-sm[data-v-59851719]{width:auto}.line-chart[data-v-59851719]{max-width:100%}.chart-container[data-v-59851719]{padding:8px}.chart-legend[data-v-59851719]{gap:12px;font-size:12px}}*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background-color:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;outline:none}input{border:1px solid #d9d9d9;outline:none}
