.login-page[data-v-0684b725]{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 50%,#bfdbfe 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-container[data-v-0684b725]{background:#fff;border:1px solid #e5e7eb;border-radius:16px;width:400px;padding:48px 40px;box-shadow:0 4px 24px #00000014}.login-header[data-v-0684b725]{text-align:center;margin-bottom:36px}.logo-icon[data-v-0684b725]{margin-bottom:16px;font-size:48px}.login-header h1[data-v-0684b725]{color:#111827;margin:0 0 8px;font-size:24px;font-weight:700}.login-header p[data-v-0684b725]{color:#6b7280;margin:0;font-size:14px}.login-form[data-v-0684b725]{flex-direction:column;gap:20px;display:flex}.form-group[data-v-0684b725]{flex-direction:column;gap:6px;display:flex}.form-group label[data-v-0684b725]{color:#374151;font-size:14px;font-weight:500}.form-group input[data-v-0684b725]{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;padding:12px 16px;font-size:15px;transition:border-color .2s,box-shadow .2s}.form-group input[data-v-0684b725]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input[data-v-0684b725]::placeholder{color:#9ca3af}.error-msg[data-v-0684b725]{color:#dc2626;text-align:center;font-size:13px}.success-msg[data-v-0684b725]{color:#059669;text-align:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;margin-bottom:16px;padding:10px 12px;font-size:13px}.login-btn[data-v-0684b725]{color:#fff;letter-spacing:2px;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;margin-top:4px;padding:12px;font-size:15px;font-weight:600;transition:opacity .2s,transform .1s}.login-btn[data-v-0684b725]:hover{opacity:.9}.login-btn[data-v-0684b725]:disabled{opacity:.6;cursor:not-allowed}.login-btn[data-v-0684b725]:active{transform:scale(.98)}.sidebar[data-v-142a96ba]{background:#fff;border-right:1px solid #e5e7eb;flex-direction:column;flex-shrink:0;width:240px;height:100vh;display:flex;overflow-y:auto}.sidebar-brand[data-v-142a96ba]{border-bottom:1px solid #e5e7eb;align-items:center;gap:12px;padding:20px;display:flex}.brand-icon[data-v-142a96ba]{font-size:28px}.brand-text[data-v-142a96ba]{color:#111827;letter-spacing:.5px;font-size:18px;font-weight:700}.sidebar-nav[data-v-142a96ba]{flex-direction:column;flex:1;gap:2px;padding:12px 0;display:flex}.nav-group[data-v-142a96ba]{flex-direction:column;display:flex}.nav-item[data-v-142a96ba]{color:#111827;cursor:pointer;letter-spacing:.3px;-webkit-user-select:none;user-select:none;border-radius:0;align-items:center;gap:12px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .15s;display:flex}.nav-item[data-v-142a96ba]:hover{background:#f3f4f6}.nav-item.active[data-v-142a96ba]{color:#111827;background:0 0}.nav-icon[data-v-142a96ba]{flex-shrink:0;font-size:18px}.nav-arrow[data-v-142a96ba]{color:#9ca3af;margin-left:auto;font-size:14px;transition:transform .2s}.nav-arrow.open[data-v-142a96ba]{transform:rotate(90deg)}.nav-sub[data-v-142a96ba]{max-height:0;transition:max-height .25s;overflow:hidden}.nav-sub.open[data-v-142a96ba]{max-height:240px}.nav-sub-item[data-v-142a96ba]{color:#111827;letter-spacing:.2px;cursor:pointer;border-radius:0;padding:8px 16px 8px 48px;font-size:13px;font-weight:400;transition:background .15s}.nav-sub-item[data-v-142a96ba]:hover{background:#e5e7eb}.nav-sub-item.active[data-v-142a96ba]{color:#111827;background:0 0}.nav-sub-item.active[data-v-142a96ba]:hover{background:#e5e7eb}.sidebar-footer[data-v-142a96ba]{border-top:1px solid #e5e7eb;padding:16px 12px}.user-info[data-v-142a96ba]{align-items:center;gap:10px;margin-bottom:12px;padding:0 8px;display:flex}.user-avatar[data-v-142a96ba]{color:#fff;background:#374151;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:600;display:flex}.user-name[data-v-142a96ba]{color:#374151;font-size:13px;font-weight:500}.logout-btn[data-v-142a96ba]{color:#6b7280;cursor:pointer;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:0;width:100%;padding:10px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.logout-btn[data-v-142a96ba]:hover{color:#374151;background:#e5e7eb}.dashboard-layout[data-v-3bf7ae52]{background:#f9fafb;width:100%;min-width:0;height:100vh;display:flex;overflow:hidden}.main-content[data-v-3bf7ae52]{flex:1;min-width:0;overflow-y:auto}.dashboard[data-v-9fa05dfa]{height:100%;padding:16px}.page-header[data-v-9fa05dfa]{margin-bottom:16px}.page-header h1[data-v-9fa05dfa]{color:#111827;margin:0 0 4px;font-size:28px;font-weight:700}.greeting[data-v-9fa05dfa]{color:#6b7280;margin:0;font-size:15px}.stats-grid[data-v-9fa05dfa]{grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:20px;display:grid}.stat-card[data-v-9fa05dfa]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;align-items:flex-start;gap:16px;padding:24px;display:flex}.stat-icon[data-v-9fa05dfa]{font-size:32px}.stat-info[data-v-9fa05dfa]{flex-direction:column;gap:4px;display:flex}.stat-label[data-v-9fa05dfa]{color:#6b7280;font-size:13px}.stat-value[data-v-9fa05dfa]{color:#111827;letter-spacing:.5px;font-size:24px;font-weight:700}.stat-change[data-v-9fa05dfa]{font-size:13px}.stat-change.up[data-v-9fa05dfa]{color:#16a34a}.stat-change.down[data-v-9fa05dfa]{color:#dc2626}.up[data-v-9fa05dfa]{color:#16a34a}.down[data-v-9fa05dfa]{color:#dc2626}.content-grid[data-v-9fa05dfa]{grid-template-columns:1fr 1fr;gap:20px;display:grid}.card[data-v-9fa05dfa]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px}.card h2[data-v-9fa05dfa]{color:#111827;margin:0 0 20px;font-size:18px;font-weight:600}.stock-table[data-v-9fa05dfa]{border-collapse:collapse;width:100%}.stock-table th[data-v-9fa05dfa]{color:#6b7280;text-align:left;border-bottom:1px solid #e5e7eb;padding:8px 0;font-size:13px;font-weight:500}.stock-table td[data-v-9fa05dfa]{color:#374151;border-bottom:1px solid #f3f4f6;padding:10px 0;font-size:14px}.stock-table .code[data-v-9fa05dfa]{color:#2563eb;font-weight:600}.news-list[data-v-9fa05dfa]{flex-direction:column;gap:12px;display:flex}.news-item[data-v-9fa05dfa]{align-items:flex-start;gap:12px;display:flex}.news-time[data-v-9fa05dfa]{color:#9ca3af;flex-shrink:0;min-width:50px;font-size:13px}.news-text[data-v-9fa05dfa]{color:#374151;font-size:14px;line-height:1.4}.etf-page[data-v-3461f0e7]{height:100%;padding:16px}.page-header[data-v-3461f0e7]{margin-bottom:8px}.page-header h1[data-v-3461f0e7]{color:#111827;margin:0;font-size:28px;font-weight:700}.card[data-v-3461f0e7]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;overflow-x:auto}.etf-table[data-v-3461f0e7]{border-collapse:collapse;white-space:nowrap;width:100%}.etf-table th[data-v-3461f0e7]{color:#6b7280;text-align:left;border-bottom:1px solid #e5e7eb;padding:8px 12px;font-size:13px;font-weight:500}.etf-table tbody tr[data-v-3461f0e7]{transition:background-color .15s}.etf-table tbody tr.hover[data-v-3461f0e7]{background-color:#f0f5ff}.etf-table tbody tr.selected[data-v-3461f0e7]{background-color:#dbeafe}.etf-table td[data-v-3461f0e7]{color:#374151;border-bottom:1px solid #f3f4f6;padding:10px 12px;font-size:14px}.etf-table .code[data-v-3461f0e7]{color:#2563eb;font-weight:600}.etf-table td.up[data-v-3461f0e7]{color:#dc2626}.etf-table td.down[data-v-3461f0e7]{color:#16a34a}.etf-table th[data-v-3461f0e7]:nth-child(9),.etf-table td[data-v-3461f0e7]:nth-child(9){text-align:right;font-variant-numeric:tabular-nums;width:96px}.toggle-btn[data-v-3461f0e7]{cursor:pointer;border:none;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:500;transition:opacity .2s;display:inline-block}.toggle-btn[data-v-3461f0e7]:hover{opacity:.8}.toggle-btn.active[data-v-3461f0e7]{color:#dc2626;background:#fee2e2}.toggle-btn.inactive[data-v-3461f0e7]{color:#9ca3af;background:#f3f4f6}.link-btns[data-v-3461f0e7]{gap:6px;display:flex}.link-btn[data-v-3461f0e7]{color:#111827;cursor:pointer;background:#d1d5db;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:400;text-decoration:none;transition:opacity .2s;display:inline-block}.link-btn[data-v-3461f0e7]:hover{opacity:.8}.loading[data-v-3461f0e7]{text-align:center;color:#6b7280;padding:48px 0;font-size:15px}.error-msg[data-v-3461f0e7]{color:#dc2626;text-align:center;padding:48px 0;font-size:14px}.show-btn[data-v-3461f0e7]{color:#fff;background:#2563eb}.drawer-overlay[data-v-3461f0e7]{z-index:900;opacity:0;pointer-events:none;background:#0000004d;transition:opacity .3s;position:fixed;inset:0}.drawer-overlay.open[data-v-3461f0e7]{opacity:1;pointer-events:auto}.drawer[data-v-3461f0e7]{z-index:910;background:#fff;flex-direction:column;width:800px;max-width:90vw;height:100vh;transition:transform .3s;display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-2px 0 12px #00000026}.drawer.open[data-v-3461f0e7]{transform:translate(0)}.drawer-header[data-v-3461f0e7]{border-bottom:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.drawer-header h2[data-v-3461f0e7]{color:#111827;margin:0;font-size:18px;font-weight:600}.drawer-close[data-v-3461f0e7]{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:20px}.drawer-close[data-v-3461f0e7]:hover{color:#111827}.drawer-body[data-v-3461f0e7]{flex:1;padding:16px 20px;overflow-y:auto}.constituent-record[data-v-3461f0e7]{margin-bottom:24px}.record-date[data-v-3461f0e7]{color:#6b7280;margin-bottom:8px;font-size:13px}.constituent-record h3[data-v-3461f0e7]{color:#374151;margin:12px 0 6px;font-size:15px;font-weight:600}.sub-table[data-v-3461f0e7]{border-collapse:collapse;white-space:nowrap;width:100%;font-size:14px}.sub-table th[data-v-3461f0e7]{color:#6b7280;text-align:left;border-bottom:1px solid #e5e7eb;padding:8px 12px;font-size:13px;font-weight:500}.sub-table td[data-v-3461f0e7]{color:#374151;border-bottom:1px solid #f3f4f6;padding:10px 12px;font-size:14px}.sub-table .code[data-v-3461f0e7]{color:#2563eb;font-weight:600}.sub-table td.up[data-v-3461f0e7]{color:#dc2626}.sub-table td.down[data-v-3461f0e7]{color:#16a34a}.stat-badge[data-v-3461f0e7]{color:#4338ca;cursor:default;background:#e0e7ff;border-radius:2px;margin-left:4px;padding:1px 6px;font-size:11px;font-weight:500;display:inline-block}.etf-constituent-page[data-v-6f4337e5]{padding:16px}.page-header[data-v-6f4337e5]{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.page-header h1[data-v-6f4337e5]{color:#111827;margin:0 0 6px;font-size:28px;font-weight:700}.page-header p[data-v-6f4337e5]{color:#6b7280;margin:0;font-size:14px}.header-meta[data-v-6f4337e5]{color:#1d4ed8;white-space:nowrap;background:#eff6ff;border-radius:999px;padding:10px 14px;font-size:13px;font-weight:600}.card[data-v-6f4337e5]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:16px}.toolbar-card[data-v-6f4337e5]{padding:12px 16px}.search-input[data-v-6f4337e5]{border:1px solid #d1d5db;border-radius:8px;outline:none;width:min(420px,100%);padding:10px 14px;font-size:14px}.search-input[data-v-6f4337e5]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.table-card[data-v-6f4337e5]{overflow-x:auto}.constituent-table[data-v-6f4337e5]{border-collapse:collapse;width:100%}.constituent-table th[data-v-6f4337e5],.constituent-table td[data-v-6f4337e5]{text-align:left;vertical-align:top;border-bottom:1px solid #e5e7eb;padding:12px 10px}.constituent-table tbody tr[data-v-6f4337e5]{transition:background-color .15s}.constituent-table tbody tr[data-v-6f4337e5]:hover{background-color:#f0f5ff}.constituent-table th[data-v-6f4337e5]:nth-child(3),.constituent-table th[data-v-6f4337e5]:nth-child(4),.constituent-table th[data-v-6f4337e5]:nth-child(5),.constituent-table th[data-v-6f4337e5]:nth-child(6),.constituent-table th[data-v-6f4337e5]:nth-child(7),.constituent-table th[data-v-6f4337e5]:nth-child(8),.constituent-table th[data-v-6f4337e5]:nth-child(9),.constituent-table th[data-v-6f4337e5]:nth-child(10),.constituent-table td[data-v-6f4337e5]:nth-child(3),.constituent-table td[data-v-6f4337e5]:nth-child(4),.constituent-table td[data-v-6f4337e5]:nth-child(5),.constituent-table td[data-v-6f4337e5]:nth-child(6),.constituent-table td[data-v-6f4337e5]:nth-child(7),.constituent-table td[data-v-6f4337e5]:nth-child(8),.constituent-table td[data-v-6f4337e5]:nth-child(9),.constituent-table td[data-v-6f4337e5]:nth-child(10){text-align:right}.constituent-table th[data-v-6f4337e5]{color:#6b7280;font-size:13px;font-weight:600}.constituent-table td[data-v-6f4337e5]{color:#374151;font-size:14px}.code[data-v-6f4337e5]{color:#2563eb;font-weight:700}.code-cell[data-v-6f4337e5]{width:120px}.code-link[data-v-6f4337e5]{color:#2563eb;cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:14px;font-weight:700}.code-link[data-v-6f4337e5]:hover{text-decoration:underline}.constituent-table td[data-v-6f4337e5]:first-child,.constituent-table td[data-v-6f4337e5]:nth-child(2){text-align:left}.state-text[data-v-6f4337e5]{color:#6b7280;padding:16px;font-size:14px}.state-text.error[data-v-6f4337e5]{color:#dc2626}.detail-row td[data-v-6f4337e5]{background:#f9fafb;padding:0}.detail-card[data-v-6f4337e5]{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:10px;width:calc(100% - 20px);margin:12px 10px;padding:14px 16px;display:flex}.detail-title[data-v-6f4337e5]{color:#111827;font-size:13px;font-weight:600}.detail-tags[data-v-6f4337e5]{flex-wrap:wrap;gap:8px;display:flex}.detail-tag[data-v-6f4337e5]{color:#3730a3;background:#e0e7ff;border-radius:999px;align-items:center;padding:5px 10px;font-size:12px;display:inline-flex}.change-up[data-v-6f4337e5]{color:#dc2626;font-weight:600}.change-down[data-v-6f4337e5]{color:#16a34a;font-weight:600}.change-flat[data-v-6f4337e5]{color:#111827;font-weight:600}.settings-page[data-v-41042d57]{justify-content:center;align-items:flex-start;min-height:100%;padding:32px 24px;display:flex}.settings-card[data-v-41042d57]{background:#fff;border:1px solid #e5e7eb;border-radius:16px;width:min(560px,100%);padding:32px;box-shadow:0 4px 24px #0000000f}.page-header[data-v-41042d57]{margin-bottom:28px}.page-header h1[data-v-41042d57]{color:#111827;margin:0 0 8px;font-size:24px;font-weight:700}.page-header p[data-v-41042d57]{color:#6b7280;margin:0;font-size:14px;line-height:1.6}.password-form[data-v-41042d57]{flex-direction:column;gap:18px;display:flex}.form-group[data-v-41042d57]{flex-direction:column;gap:6px;display:flex}.form-group label[data-v-41042d57]{color:#374151;font-size:14px;font-weight:500}.form-group input[data-v-41042d57]{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;padding:12px 16px;font-size:15px;transition:border-color .2s,box-shadow .2s}.form-group input[data-v-41042d57]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input[data-v-41042d57]::placeholder{color:#9ca3af}.error-msg[data-v-41042d57]{color:#dc2626;text-align:center;font-size:13px}.submit-btn[data-v-41042d57]{color:#fff;letter-spacing:1px;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;margin-top:6px;padding:12px;font-size:15px;font-weight:600;transition:opacity .2s,transform .1s}.submit-btn[data-v-41042d57]:hover{opacity:.9}.submit-btn[data-v-41042d57]:disabled{opacity:.6;cursor:not-allowed}.submit-btn[data-v-41042d57]:active{transform:scale(.98)}.drawer-overlay[data-v-745501f9]{opacity:0;pointer-events:none;z-index:40;background:#0f172a73;transition:opacity .2s;position:fixed;inset:0}.drawer-overlay.open[data-v-745501f9]{opacity:1;pointer-events:auto}.drawer[data-v-745501f9]{z-index:50;background:#f8fafc;flex-direction:column;width:min(980px,92vw);height:100vh;transition:transform .25s;display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-24px 0 48px #0f172a2e}.drawer.open[data-v-745501f9]{transform:translate(0)}.drawer-header[data-v-745501f9]{color:#f8fafc;background:linear-gradient(135deg,#0f172a,#1e293b);border-bottom:1px solid #94a3b833;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px;display:flex}.drawer-header h2[data-v-745501f9]{margin:0 0 6px;font-size:20px}.drawer-header p[data-v-745501f9]{color:#cbd5e1;margin:0;font-size:13px}.drawer-close[data-v-745501f9]{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:999px;flex:none;width:36px;height:36px}.drawer-body[data-v-745501f9]{background:#f8fafc;flex:1;padding:16px 18px 24px;overflow:auto}.drawer-state[data-v-745501f9]{color:#475569;padding:24px 20px}.drawer-state.error[data-v-745501f9]{color:#dc2626}.summary-grid[data-v-745501f9]{grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:16px;display:grid}.summary-card[data-v-745501f9]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:repeat(7,minmax(0,1fr));gap:16px;padding:14px 16px;display:grid}.summary-item[data-v-745501f9]{flex-direction:column;gap:8px;display:flex}.summary-item span[data-v-745501f9]{color:#64748b;font-size:12px}.summary-item strong[data-v-745501f9]{color:#0f172a;font-size:18px}.summary-item strong.change-up[data-v-745501f9]{color:#dc2626}.summary-item strong.change-down[data-v-745501f9]{color:#059669}.summary-item strong.change-flat[data-v-745501f9]{color:#111827}.chart-panel[data-v-745501f9],.tech-section[data-v-745501f9]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;margin-bottom:14px;padding:14px}.section-title.compact[data-v-745501f9]{margin-bottom:10px}.section-title.compact h3[data-v-745501f9]{color:#0f172a;margin:0;font-size:16px}.section-title.compact span[data-v-745501f9]{color:#64748b;font-size:12px}.tech-chart[data-v-745501f9]{background:#fff;border:none;border-radius:12px;width:100%;height:320px;margin-top:10px}.tech-chart.short[data-v-745501f9]{height:220px}@media (width<=768px){.drawer[data-v-745501f9]{width:100vw}.summary-card[data-v-745501f9]{grid-template-columns:repeat(2,minmax(0,1fr))}.tech-chart[data-v-745501f9]{height:260px}.tech-chart.short[data-v-745501f9]{height:200px}}.modal-overlay[data-v-c7132a0d]{z-index:1000;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card[data-v-c7132a0d]{background:#fff;border-radius:16px;width:min(520px,100%);overflow:hidden;box-shadow:0 20px 45px #0f172a33}.modal-header[data-v-c7132a0d]{border-bottom:1px solid #e5e7eb;justify-content:space-between;gap:16px;padding:20px 20px 16px;display:flex}.modal-header h3[data-v-c7132a0d]{color:#111827;margin:0 0 6px;font-size:20px;font-weight:700}.modal-header p[data-v-c7132a0d]{color:#6b7280;margin:0;font-size:14px}.close-btn[data-v-c7132a0d]{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:0;font-size:18px}.modal-body[data-v-c7132a0d]{flex-direction:column;gap:12px;padding:20px;display:flex}.field-group[data-v-c7132a0d]{flex-direction:column;gap:8px;display:flex}.empty-msg[data-v-c7132a0d]{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 12px;font-size:13px}.field-group label[data-v-c7132a0d]{color:#374151;font-size:14px;font-weight:600}.field-group select[data-v-c7132a0d]{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:10px;outline:none;padding:12px 14px;font-size:15px}.field-group select[data-v-c7132a0d]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.selection-hint[data-v-c7132a0d]{color:#065f46;background:#ecfdf5;border:1px solid #d1fae5;border-radius:10px;padding:10px 12px;font-size:13px}.error-msg[data-v-c7132a0d]{color:#dc2626;font-size:13px}.modal-footer[data-v-c7132a0d]{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;padding:16px 20px 20px;display:flex}.secondary-btn[data-v-c7132a0d],.primary-btn[data-v-c7132a0d]{cursor:pointer;border:none;border-radius:10px;padding:12px 18px;font-size:14px;font-weight:600}.secondary-btn[data-v-c7132a0d]{color:#374151;background:#e5e7eb}.primary-btn[data-v-c7132a0d]{color:#fff;background:linear-gradient(135deg,#10b981,#059669)}.primary-btn[data-v-c7132a0d]:disabled{opacity:.6;cursor:not-allowed}.tracked-page[data-v-08584c47]{padding:16px}.page-header[data-v-08584c47]{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.page-header h1[data-v-08584c47]{color:#111827;margin:0 0 6px;font-size:28px;font-weight:700}.page-header p[data-v-08584c47]{color:#6b7280;margin:0;font-size:14px}.card[data-v-08584c47]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:20px}.list-card[data-v-08584c47]{overflow-x:auto}.add-form[data-v-08584c47]{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.form-group[data-v-08584c47]{flex-direction:column;flex:0 0 240px;gap:6px;display:flex}.form-group label[data-v-08584c47]{color:#374151;font-size:14px;font-weight:500}.form-group input[data-v-08584c47]{color:#111827;border:1px solid #d1d5db;border-radius:8px;outline:none;padding:12px 14px;font-size:15px}.form-group input[data-v-08584c47]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.add-btn[data-v-08584c47],.delete-btn[data-v-08584c47]{cursor:pointer;border:none;border-radius:8px;font-size:14px;font-weight:600}.add-btn[data-v-08584c47]{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);padding:12px 18px}.add-btn[data-v-08584c47]:disabled{opacity:.6;cursor:not-allowed}.member-add-btn[data-v-08584c47]{cursor:pointer;color:#fff;white-space:nowrap;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;margin-right:8px;padding:8px 12px;font-size:13px;font-weight:600}.member-add-btn[data-v-08584c47]:disabled{opacity:.6;cursor:not-allowed}.delete-btn[data-v-08584c47]{color:#b91c1c;background:#fee2e2;padding:8px 12px}.section-title[data-v-08584c47]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.section-title h2[data-v-08584c47]{color:#111827;margin:0;font-size:18px}.section-title span[data-v-08584c47]{color:#6b7280;font-size:13px}.tracked-table[data-v-08584c47]{border-collapse:collapse;width:100%}.tracked-table th[data-v-08584c47],.tracked-table td[data-v-08584c47]{text-align:left;border-bottom:1px solid #e5e7eb;padding:12px 10px}.tracked-table tbody tr[data-v-08584c47]{transition:background-color .15s}.tracked-table tbody tr[data-v-08584c47]:hover{background-color:#f0f5ff}.tracked-table th[data-v-08584c47]{color:#6b7280;font-size:13px;font-weight:600}.tracked-table td[data-v-08584c47]{color:#374151;font-size:14px}.tracked-table th[data-v-08584c47],.tracked-table td[data-v-08584c47]{white-space:nowrap}.tracked-table th[data-v-08584c47]:nth-child(3),.tracked-table th[data-v-08584c47]:nth-child(4),.tracked-table th[data-v-08584c47]:nth-child(5),.tracked-table th[data-v-08584c47]:nth-child(6),.tracked-table th[data-v-08584c47]:nth-child(7),.tracked-table th[data-v-08584c47]:nth-child(8),.tracked-table th[data-v-08584c47]:nth-child(9),.tracked-table th[data-v-08584c47]:nth-child(10),.tracked-table td[data-v-08584c47]:nth-child(3),.tracked-table td[data-v-08584c47]:nth-child(4),.tracked-table td[data-v-08584c47]:nth-child(5),.tracked-table td[data-v-08584c47]:nth-child(6),.tracked-table td[data-v-08584c47]:nth-child(7),.tracked-table td[data-v-08584c47]:nth-child(8),.tracked-table td[data-v-08584c47]:nth-child(9),.tracked-table td[data-v-08584c47]:nth-child(10){text-align:right}.tracked-table th[data-v-08584c47]:nth-child(11),.tracked-table td[data-v-08584c47]:nth-child(11){text-align:center}.code-cell[data-v-08584c47]{width:120px}.code-btn[data-v-08584c47]{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:0;font-weight:700}.code-btn[data-v-08584c47]:hover{text-decoration:underline}.tracked-table .code[data-v-08584c47]{color:#2563eb;font-weight:700}.change-up[data-v-08584c47]{color:#dc2626;font-weight:600}.change-down[data-v-08584c47]{color:#059669;font-weight:600}.change-flat[data-v-08584c47]{color:#111827;font-weight:600}.state-text[data-v-08584c47]{color:#6b7280;padding:8px 0;font-size:14px}.error-msg[data-v-08584c47]{color:#dc2626;margin-top:12px;font-size:13px}.success-msg[data-v-08584c47]{color:#059669;margin-top:12px;font-size:13px}.sector-page[data-v-fc9861c2]{padding:16px}.page-header[data-v-fc9861c2]{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.page-header h1[data-v-fc9861c2]{color:#111827;margin:0 0 6px;font-size:28px;font-weight:700}.page-header p[data-v-fc9861c2]{color:#6b7280;margin:0;font-size:14px}.card[data-v-fc9861c2]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:20px}.add-form[data-v-fc9861c2]{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.form-group[data-v-fc9861c2]{flex-direction:column;flex:0 0 280px;gap:6px;display:flex}.form-group-wide[data-v-fc9861c2]{flex-basis:360px}.form-group label[data-v-fc9861c2]{color:#374151;font-size:14px;font-weight:500}.form-group input[data-v-fc9861c2]{color:#111827;border:1px solid #d1d5db;border-radius:8px;outline:none;padding:12px 14px;font-size:15px}.form-group input[data-v-fc9861c2]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.add-btn[data-v-fc9861c2],.delete-btn[data-v-fc9861c2]{cursor:pointer;border:none;border-radius:8px;font-size:14px;font-weight:600}.add-btn[data-v-fc9861c2]{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);padding:12px 18px}.cancel-btn[data-v-fc9861c2],.edit-btn[data-v-fc9861c2],.move-btn[data-v-fc9861c2],.member-btn[data-v-fc9861c2],.member-add-btn[data-v-fc9861c2]{cursor:pointer;border:none;border-radius:8px;font-size:14px;font-weight:600}.cancel-btn[data-v-fc9861c2]{color:#374151;background:#e5e7eb;padding:12px 18px}.edit-btn[data-v-fc9861c2]{color:#1d4ed8;background:#dbeafe;margin-right:8px;padding:8px 12px}.move-btn[data-v-fc9861c2]{color:#6d28d9;background:#ede9fe;margin-right:8px;padding:8px 12px}.member-btn[data-v-fc9861c2]{color:#15803d;background:#dcfce7;margin-right:8px;padding:8px 12px}.member-add-btn[data-v-fc9861c2]{color:#fff;background:linear-gradient(135deg,#10b981,#059669);padding:12px 18px}.delete-btn[data-v-fc9861c2]{color:#b91c1c;background:#fee2e2;padding:8px 12px}.section-title[data-v-fc9861c2]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.section-title h2[data-v-fc9861c2]{color:#111827;margin:0;font-size:18px}.section-title span[data-v-fc9861c2]{color:#6b7280;font-size:13px}.sector-table[data-v-fc9861c2]{border-collapse:collapse;width:100%}.sector-table th[data-v-fc9861c2],.sector-table td[data-v-fc9861c2]{text-align:left;white-space:nowrap;border-bottom:1px solid #e5e7eb;padding:12px 10px}.sector-table th[data-v-fc9861c2]{color:#6b7280;font-size:13px;font-weight:600}.sector-table td[data-v-fc9861c2]{color:#374151;font-size:14px}.sector-table tbody tr[data-v-fc9861c2]{transition:background-color .15s}.sector-table tbody tr[data-v-fc9861c2]:hover{background-color:#f0f5ff}.sector-table th[data-v-fc9861c2]:nth-child(3),.sector-table td[data-v-fc9861c2]:nth-child(3),.sector-table th[data-v-fc9861c2]:nth-child(4),.sector-table td[data-v-fc9861c2]:nth-child(4){text-align:center}.actions-cell[data-v-fc9861c2]{white-space:nowrap}.sector-name[data-v-fc9861c2]{color:#111827;font-size:15px;font-weight:600}.sector-description[data-v-fc9861c2]{color:#374151;font-size:14px}.member-row td[data-v-fc9861c2]{background:#f8fafc}.member-panel[data-v-fc9861c2]{flex-direction:column;gap:12px;padding:4px 2px 6px;display:flex}.member-form[data-v-fc9861c2]{flex-direction:column;gap:8px;display:flex}.member-form label[data-v-fc9861c2]{color:#374151;font-size:13px;font-weight:600}.member-form-row[data-v-fc9861c2]{flex-wrap:wrap;gap:10px;display:flex}.member-form-row input[data-v-fc9861c2]{color:#111827;border:1px solid #d1d5db;border-radius:8px;outline:none;flex:0 260px;padding:12px 14px;font-size:14px}.member-form-row input[data-v-fc9861c2]:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.member-empty[data-v-fc9861c2]{color:#6b7280;font-size:13px}.member-list[data-v-fc9861c2]{flex-wrap:wrap;gap:10px;display:flex}.member-chip[data-v-fc9861c2]{color:#065f46;cursor:grab;-webkit-user-select:none;user-select:none;background:#ecfdf5;border:1px solid #d1fae5;border-radius:999px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:inline-flex}.member-chip.is-dragging[data-v-fc9861c2]{opacity:.55}.member-chip.is-drop-target[data-v-fc9861c2]{border-color:#10b981;box-shadow:0 0 0 2px #10b9812e}.member-chip-text[data-v-fc9861c2]{white-space:nowrap}.member-chip button[data-v-fc9861c2]{cursor:pointer;color:#dc2626;background:0 0;border:none;padding:0;font-size:12px;font-weight:600}.state-text[data-v-fc9861c2]{color:#6b7280;padding:8px 0;font-size:14px}.error-msg[data-v-fc9861c2]{color:#dc2626;margin-top:12px;font-size:13px}.success-msg[data-v-fc9861c2]{color:#059669;margin-top:12px;font-size:13px}@media (width<=768px){.form-group[data-v-fc9861c2],.form-group-wide[data-v-fc9861c2]{flex-basis:100%}.sector-table[data-v-fc9861c2]{min-width:100%}.delete-btn[data-v-fc9861c2],.edit-btn[data-v-fc9861c2],.move-btn[data-v-fc9861c2],.member-btn[data-v-fc9861c2]{padding:8px 12px}.cancel-btn[data-v-fc9861c2]{padding:12px 18px}.member-form-row input[data-v-fc9861c2]{flex:100%}.member-chip[data-v-fc9861c2]{border-radius:16px;flex-wrap:wrap;justify-content:space-between;width:100%}}.strategy-page[data-v-9615afde]{padding:16px}.page-header[data-v-9615afde]{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.page-header h1[data-v-9615afde]{color:#111827;margin:0 0 6px;font-size:28px;font-weight:700}.page-header p[data-v-9615afde]{color:#6b7280;margin:0;font-size:14px}.card[data-v-9615afde]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:20px}.list-card[data-v-9615afde]{overflow-x:auto}.section-title[data-v-9615afde]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.tracked-table[data-v-9615afde]{border-collapse:collapse;width:100%}.tracked-table th[data-v-9615afde],.tracked-table td[data-v-9615afde]{text-align:left;border-bottom:1px solid #e5e7eb;padding:12px 10px}.tracked-table tbody tr[data-v-9615afde]{transition:background-color .15s}.tracked-table tbody tr[data-v-9615afde]:hover{background-color:#f0f5ff}.tracked-table th[data-v-9615afde]{color:#6b7280;font-size:13px;font-weight:600}.tracked-table td[data-v-9615afde]{color:#374151;font-size:14px}.tracked-table th[data-v-9615afde],.tracked-table td[data-v-9615afde]{white-space:nowrap}.tracked-table th[data-v-9615afde]:nth-child(3),.tracked-table th[data-v-9615afde]:nth-child(4),.tracked-table th[data-v-9615afde]:nth-child(5),.tracked-table th[data-v-9615afde]:nth-child(6),.tracked-table th[data-v-9615afde]:nth-child(7),.tracked-table th[data-v-9615afde]:nth-child(8),.tracked-table th[data-v-9615afde]:nth-child(9),.tracked-table th[data-v-9615afde]:nth-child(10),.tracked-table td[data-v-9615afde]:nth-child(3),.tracked-table td[data-v-9615afde]:nth-child(4),.tracked-table td[data-v-9615afde]:nth-child(5),.tracked-table td[data-v-9615afde]:nth-child(6),.tracked-table td[data-v-9615afde]:nth-child(7),.tracked-table td[data-v-9615afde]:nth-child(8),.tracked-table td[data-v-9615afde]:nth-child(9),.tracked-table td[data-v-9615afde]:nth-child(10){text-align:right}.tracked-table th[data-v-9615afde]:nth-child(11),.tracked-table td[data-v-9615afde]:nth-child(11){text-align:center}.code-cell[data-v-9615afde]{width:120px}.code-btn[data-v-9615afde]{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:0;font-weight:700}.code-btn[data-v-9615afde]:hover{text-decoration:underline}.change-up[data-v-9615afde]{color:#dc2626;font-weight:600}.change-down[data-v-9615afde]{color:#059669;font-weight:600}.change-flat[data-v-9615afde]{color:#111827;font-weight:600}.state-text[data-v-9615afde]{color:#6b7280;padding:8px 0;font-size:14px}.error-msg[data-v-9615afde]{color:#dc2626;margin-top:12px;font-size:13px}.success-msg[data-v-9615afde]{color:#059669;margin-top:12px;font-size:13px}.add-track-btn[data-v-9615afde]{cursor:pointer;color:#fff;white-space:nowrap;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600}.add-track-btn[data-v-9615afde]:disabled{opacity:.6;cursor:not-allowed}.action-row[data-v-9615afde]{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.add-category-btn[data-v-9615afde]{cursor:pointer;color:#fff;white-space:nowrap;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;margin-right:8px;padding:8px 12px;font-size:13px;font-weight:600}.action-row .add-track-btn[data-v-9615afde],.action-row .add-category-btn[data-v-9615afde]{margin-right:0}.add-category-btn[data-v-9615afde]:disabled{opacity:.6;cursor:not-allowed}.price-chart-card[data-v-38cb5fc3]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:14px}.price-chart-row[data-v-38cb5fc3]{align-items:center;gap:16px;display:flex}.price-chart-header[data-v-38cb5fc3]{text-align:center;flex:0 0 120px;justify-content:center;align-items:center;display:flex}.price-name-wrap[data-v-38cb5fc3]{width:100%}.stock-code[data-v-38cb5fc3]{color:#0f172a;margin:0;font-size:16px;font-weight:700;line-height:1.2}.stock-name[data-v-38cb5fc3]{color:#475569;margin-top:4px;font-size:14px;font-weight:600;line-height:1.2}.price-chart-body[data-v-38cb5fc3]{flex:1;min-width:0}.price-chart[data-v-38cb5fc3]{width:100%;height:360px}.chart-empty[data-v-38cb5fc3]{color:#6b7280;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;justify-content:center;align-items:center;min-height:360px;font-size:14px;display:flex}@media (width<=768px){.price-chart-row[data-v-38cb5fc3]{flex-direction:column;align-items:stretch}.price-chart-header[data-v-38cb5fc3]{flex:none}.price-chart[data-v-38cb5fc3]{height:300px}.chart-empty[data-v-38cb5fc3]{min-height:300px}}.strategy-category-page[data-v-974303a0]{padding:16px}.page-header[data-v-974303a0]{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.page-header h1[data-v-974303a0]{color:#111827;margin:0 0 6px;font-size:28px;font-weight:700}.page-header p[data-v-974303a0]{color:#6b7280;margin:0;font-size:14px}.card[data-v-974303a0]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:20px}.selector-row[data-v-974303a0]{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.selector-group[data-v-974303a0]{flex:0 0 320px}.form-group[data-v-974303a0]{flex-direction:column;gap:6px;display:flex}.form-group label[data-v-974303a0]{color:#374151;font-size:14px;font-weight:500}.form-group select[data-v-974303a0]{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;padding:12px 14px;font-size:15px}.form-group select[data-v-974303a0]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.selector-hint[data-v-974303a0]{color:#6b7280;font-size:13px}.state-text[data-v-974303a0]{color:#6b7280;padding:8px 0;font-size:14px}.error-msg[data-v-974303a0]{color:#dc2626;margin-bottom:12px;font-size:13px}.success-msg[data-v-974303a0]{color:#059669;margin-bottom:12px;font-size:13px}.member-list[data-v-974303a0]{flex-direction:column;gap:14px;display:flex}.member-row[data-v-974303a0]{width:100%}@media (width<=768px){.selector-group[data-v-974303a0]{flex-basis:100%}.member-list[data-v-974303a0]{gap:12px}}
