.app[data-v-3ec7e490]{height:100%}.market-selector[data-v-865a8234]{display:flex;align-items:center;gap:8px}.market-list[data-v-865a8234]{display:flex;gap:4px;background:#161b22;padding:4px;border-radius:8px}.market-btn[data-v-865a8234]{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;background:transparent;color:#8b949e;font-size:13px;cursor:pointer;border-radius:6px;transition:all .2s}.market-btn[data-v-865a8234]:hover{background:#21262d;color:#c9d1d9}.market-btn.active[data-v-865a8234]{background:var(--market-color);color:#fff}.market-icon[data-v-865a8234]{font-size:16px}.market-name[data-v-865a8234]{font-weight:500}.header[data-v-9795db3c]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.header-left[data-v-9795db3c]{display:flex;align-items:center;gap:12px}.menu-btn[data-v-9795db3c]{background:none;border:none;color:var(--text-primary);padding:4px;border-radius:4px;cursor:pointer;transition:background-color .2s}.menu-btn[data-v-9795db3c]:hover{background-color:var(--bg-tertiary)}.title-section[data-v-9795db3c]{display:flex;flex-direction:column}.title[data-v-9795db3c]{font-size:18px;font-weight:600;color:var(--primary-color);margin:0}.subtitle[data-v-9795db3c]{font-size:12px;color:var(--text-secondary)}.header-right[data-v-9795db3c]{display:flex;align-items:center;gap:16px}.connection-status[data-v-9795db3c]{display:flex;align-items:center;gap:6px;font-size:12px;padding:4px 8px;border-radius:4px;background:var(--bg-tertiary)}.connection-status.connected .status-dot[data-v-9795db3c]{background:var(--success-color)}.connection-status.disconnected .status-dot[data-v-9795db3c]{background:var(--text-secondary)}.status-dot[data-v-9795db3c]{width:8px;height:8px;border-radius:50%}.symbol-info[data-v-9795db3c]{display:flex;align-items:center;gap:8px}.price[data-v-9795db3c]{font-weight:600;font-size:15px;color:var(--text-primary)}.price.up[data-v-9795db3c]{color:var(--success-color)}.price.down[data-v-9795db3c]{color:var(--danger-color)}.change[data-v-9795db3c]{font-size:13px;font-weight:500}.change.up[data-v-9795db3c]{color:var(--success-color)}.change.down[data-v-9795db3c]{color:var(--danger-color)}.sidebar[data-v-0db6c641]{width:240px;background-color:var(--bg-secondary);border-right:1px solid var(--border-color);padding:16px;overflow-y:auto;flex-shrink:0}.section[data-v-0db6c641]{margin-bottom:24px}.section-title[data-v-0db6c641]{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;margin-bottom:12px}.interval-grid[data-v-0db6c641]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.interval-btn[data-v-0db6c641]{padding:8px 12px;font-size:12px;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);transition:all .2s}.interval-btn[data-v-0db6c641]:hover{border-color:var(--primary-color)}.interval-btn.active[data-v-0db6c641]{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.indicator-list[data-v-0db6c641],.dimension-list[data-v-0db6c641]{display:flex;flex-direction:column;gap:8px}.indicator-item[data-v-0db6c641],.dimension-item[data-v-0db6c641]{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-primary);cursor:pointer}.indicator-item input[data-v-0db6c641],.dimension-item input[data-v-0db6c641]{width:16px;height:16px;accent-color:var(--primary-color)}.ai-section[data-v-0db6c641]{border-top:1px solid var(--border-color);padding-top:16px}.analyze-btn[data-v-0db6c641]{width:100%;padding:10px 16px;font-size:14px;font-weight:500;background-color:var(--primary-color);border:none;border-radius:6px;color:#fff;transition:background-color .2s;margin-top:12px}.analyze-btn[data-v-0db6c641]:hover:not(:disabled){background-color:var(--primary-dark)}.analyze-btn[data-v-0db6c641]:disabled{opacity:.6;cursor:not-allowed}.main-content[data-v-84467a29]{flex:1;overflow:hidden;display:flex;flex-direction:column}.content[data-v-84467a29]{padding:16px;overflow-y:auto;height:100%}.loading[data-v-84467a29]{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;gap:12px;color:var(--text-secondary)}.spinner[data-v-84467a29]{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin-84467a29 1s linear infinite}@keyframes spin-84467a29{to{transform:rotate(360deg)}}.chart-wrapper[data-v-73c140e1]{width:100%;height:100%;position:relative;background-color:#0d1117}.chart-container[data-v-73c140e1]{width:100%;height:100%}.indicator-cards[data-v-9a9c62a1]{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:16px}.card[data-v-9a9c62a1]{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:12px}.card-title[data-v-9a9c62a1]{font-size:12px;color:var(--text-secondary);margin-bottom:8px;display:flex;align-items:center;gap:6px}.realtime-badge[data-v-9a9c62a1]{font-size:10px;padding:1px 4px;background-color:var(--warning-color);color:#fff;border-radius:3px}.realtime-badge.connected[data-v-9a9c62a1]{background-color:var(--success-color)}.indicator-value[data-v-9a9c62a1],.price-value[data-v-9a9c62a1]{font-size:16px;font-weight:600;color:var(--text-primary)}.price-card[data-v-9a9c62a1]{background-color:var(--bg-tertiary)}.price-value[data-v-9a9c62a1]{font-size:24px;color:var(--primary-color)}.price-change[data-v-9a9c62a1]{font-size:14px;margin-top:4px}.price-change.up[data-v-9a9c62a1]{color:var(--success-color)}.price-change.down[data-v-9a9c62a1]{color:var(--danger-color)}.indicator-desc[data-v-9a9c62a1]{font-size:11px;color:var(--text-secondary);margin-top:4px}.indicator-desc.signal[data-v-9a9c62a1]{font-weight:600}.indicator-desc.signal.overbought[data-v-9a9c62a1]{color:var(--danger-color)}.indicator-desc.signal.oversold[data-v-9a9c62a1]{color:var(--success-color)}.indicator-bb[data-v-9a9c62a1]{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--text-primary)}.ai-analysis[data-v-69f308f9]{width:100%;padding:0}.error-message[data-v-69f308f9]{padding:12px;background-color:#da36331a;border:1px solid var(--danger-color);border-radius:6px;color:var(--danger-color);font-size:13px}.loading-state[data-v-69f308f9]{text-align:center;padding:40px;color:var(--text-secondary)}.loading-spinner[data-v-69f308f9]{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin-69f308f9 1s linear infinite;margin:0 auto 16px}@keyframes spin-69f308f9{to{transform:rotate(360deg)}}.analysis-result[data-v-69f308f9]{padding:20px}.result-header[data-v-69f308f9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--border-color)}.header-left[data-v-69f308f9]{display:flex;align-items:center;gap:12px}.result-header .symbol[data-v-69f308f9]{font-size:18px;font-weight:700;color:#f0f6fc}.result-header .interval[data-v-69f308f9]{font-size:12px;padding:2px 8px;background-color:var(--primary-color);border-radius:4px;color:#fff}.result-header .timestamp[data-v-69f308f9]{font-size:12px;color:var(--text-secondary)}.section-title[data-v-69f308f9]{font-size:15px;font-weight:600;color:#f0f6fc;margin-bottom:12px}.suggestion[data-v-69f308f9]{margin-bottom:20px}.divider[data-v-69f308f9]{height:1px;background:linear-gradient(90deg,var(--border-color) 0%,transparent 100%);margin:20px 0}.dimensions-result[data-v-69f308f9]{margin-top:20px}.dimension-item[data-v-69f308f9]{margin-bottom:16px;padding-bottom:16px;border-bottom:1px dashed var(--border-color)}.dimension-item[data-v-69f308f9]:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.dimension-header[data-v-69f308f9]{font-size:14px;font-weight:600;color:#58a6ff;margin-bottom:8px}.markdown-content[data-v-69f308f9]{font-size:13px;color:var(--text-secondary);line-height:1.8}.markdown-content[data-v-69f308f9] p{margin:0 0 10px}.markdown-content[data-v-69f308f9] ul,.markdown-content[data-v-69f308f9] ol{margin:0 0 10px;padding-left:24px}.markdown-content[data-v-69f308f9] li{margin:4px 0}.markdown-content[data-v-69f308f9] strong{color:#f0f6fc}.markdown-content[data-v-69f308f9] .highlight{background-color:#388bfd26;padding:2px 6px;border-radius:4px}.dashboard[data-v-4f5154f8]{display:flex;flex-direction:column;height:100vh;overflow:hidden}.dashboard-body[data-v-4f5154f8]{display:flex;flex:1;overflow:hidden}.content-wrapper[data-v-4f5154f8]{display:flex;flex-direction:column;gap:16px;height:100%;overflow-y:auto;padding:16px}.content-wrapper[data-v-4f5154f8]::-webkit-scrollbar{width:6px}.content-wrapper[data-v-4f5154f8]::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:3px}.content-wrapper[data-v-4f5154f8]::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.chart-section[data-v-4f5154f8]{height:500px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;flex-shrink:0}.chart-header[data-v-4f5154f8]{padding:12px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0;display:flex;justify-content:space-between;align-items:center}.chart-header h2[data-v-4f5154f8]{font-size:14px;font-weight:600;color:var(--text-primary)}.chart-controls[data-v-4f5154f8]{display:flex;align-items:center;gap:16px}.auto-update-control[data-v-4f5154f8]{display:flex;align-items:center;gap:8px}.toggle-switch[data-v-4f5154f8]{position:relative;display:inline-block;width:40px;height:20px}.toggle-switch input[data-v-4f5154f8]{opacity:0;width:0;height:0}.toggle-slider[data-v-4f5154f8]{position:absolute;cursor:pointer;inset:0;background-color:#30363d;transition:.3s;border-radius:20px}.toggle-slider[data-v-4f5154f8]:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:#8b949e;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider[data-v-4f5154f8]{background-color:var(--primary-color)}.toggle-switch input:checked+.toggle-slider[data-v-4f5154f8]:before{transform:translate(20px);background-color:#fff}.auto-update-label[data-v-4f5154f8]{font-size:12px;color:var(--text-secondary)}.countdown[data-v-4f5154f8]{font-size:12px;color:var(--primary-color);font-family:SF Mono,Consolas,monospace;min-width:32px}.last-update[data-v-4f5154f8]{font-size:12px;color:var(--text-tertiary)}.updating[data-v-4f5154f8]{font-size:12px;color:var(--primary-color);animation:pulse-4f5154f8 1s infinite}@keyframes pulse-4f5154f8{0%,to{opacity:1}50%{opacity:.5}}.indicator-tags[data-v-4f5154f8]{display:flex;gap:8px}.indicator-tag[data-v-4f5154f8]{padding:2px 8px;font-size:11px;background-color:var(--primary-color);border-radius:4px;color:#fff}.chart-container[data-v-4f5154f8]{flex:1;min-height:0}.analysis-section[data-v-4f5154f8]{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;flex-shrink:0;padding-bottom:0}.analysis-header[data-v-4f5154f8]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color);background-color:var(--bg-tertiary)}.analysis-header h3[data-v-4f5154f8]{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.close-btn[data-v-4f5154f8]{width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);font-size:20px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn[data-v-4f5154f8]:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.chart-placeholder[data-v-4f5154f8]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#8b949e}.loading-spinner[data-v-4f5154f8]{width:40px;height:40px;border:3px solid var(--bg-tertiary);border-top-color:var(--primary-color);border-radius:50%;animation:spin-4f5154f8 1s linear infinite}@keyframes spin-4f5154f8{to{transform:rotate(360deg)}}.chart-placeholder p[data-v-4f5154f8]{margin-top:12px;font-size:14px}.chart-placeholder.error[data-v-4f5154f8]{color:#da3633}.chart-placeholder.error p[data-v-4f5154f8]:before{content:"⚠️ "}.dashboard[data-v-6d11051d]{min-height:100vh;background-color:var(--bg-primary)}.dashboard-content[data-v-6d11051d]{display:flex;min-height:calc(100vh - 60px)}.sidebar[data-v-6d11051d]{width:240px;background-color:var(--bg-secondary);border-right:1px solid var(--border-color);padding:16px;overflow-y:auto;flex-shrink:0}.section[data-v-6d11051d]{margin-bottom:24px}.section-title[data-v-6d11051d]{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;margin-bottom:12px}.stock-list[data-v-6d11051d]{list-style:none;padding:0;margin:0}.stock-item[data-v-6d11051d]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:6px;cursor:pointer;transition:all .2s}.stock-item[data-v-6d11051d]:hover{background-color:var(--bg-tertiary)}.stock-item.active[data-v-6d11051d]{background-color:var(--primary-color);color:#fff}.stock-name[data-v-6d11051d]{font-weight:500;font-size:13px}.stock-code[data-v-6d11051d]{font-size:11px;color:var(--text-secondary)}.stock-item.active .stock-code[data-v-6d11051d]{color:#ffffffb3}.interval-grid[data-v-6d11051d]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.interval-btn[data-v-6d11051d]{padding:8px 12px;font-size:12px;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;transition:all .2s}.interval-btn[data-v-6d11051d]:hover{border-color:var(--primary-color)}.interval-btn.active[data-v-6d11051d]{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.quote-card[data-v-6d11051d]{padding:16px;background:var(--bg-tertiary);border-radius:8px;text-align:center}.quote-card.up[data-v-6d11051d]{border-left:3px solid var(--success-color)}.quote-card.down[data-v-6d11051d]{border-left:3px solid var(--danger-color)}.quote-price[data-v-6d11051d]{font-size:28px;font-weight:600;color:var(--text-primary)}.quote-change[data-v-6d11051d]{font-size:16px;font-weight:500;margin:4px 0 12px}.quote-card.up .quote-change[data-v-6d11051d]{color:var(--success-color)}.quote-card.down .quote-change[data-v-6d11051d]{color:var(--danger-color)}.quote-details[data-v-6d11051d]{font-size:12px;color:var(--text-secondary)}.quote-row[data-v-6d11051d]{display:flex;justify-content:space-between;padding:4px 0}.quote-loading[data-v-6d11051d]{text-align:center;color:var(--text-secondary);padding:20px;background:var(--bg-tertiary);border-radius:8px}.status-info[data-v-6d11051d]{font-size:13px}.status-row[data-v-6d11051d]{display:flex;justify-content:space-between;margin-bottom:8px;color:var(--text-secondary)}.status-row span[data-v-6d11051d]:last-child{color:var(--text-primary)}.status-on[data-v-6d11051d]{color:var(--success-color)}.status-off[data-v-6d11051d]{color:var(--text-secondary)}.main-content[data-v-6d11051d]{flex:1;padding:16px 20px;overflow-y:auto}.chart-section[data-v-6d11051d]{margin-top:16px}.chart-header[data-v-6d11051d]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 4px}.chart-header h2[data-v-6d11051d]{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.chart-controls[data-v-6d11051d]{display:flex;align-items:center;gap:16px}.auto-update-control[data-v-6d11051d]{display:flex;align-items:center;gap:8px}.toggle-switch[data-v-6d11051d]{position:relative;display:inline-block;width:40px;height:20px}.toggle-switch input[data-v-6d11051d]{opacity:0;width:0;height:0}.toggle-slider[data-v-6d11051d]{position:absolute;cursor:pointer;inset:0;background-color:var(--bg-tertiary);transition:.3s;border-radius:20px}.toggle-slider[data-v-6d11051d]:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.toggle-slider[data-v-6d11051d]{background-color:var(--primary-color)}input:checked+.toggle-slider[data-v-6d11051d]:before{transform:translate(20px)}.auto-update-label[data-v-6d11051d]{font-size:13px;color:var(--text-secondary)}.countdown[data-v-6d11051d]{font-size:12px;color:var(--primary-color);font-weight:500}.last-update[data-v-6d11051d]{font-size:12px;color:var(--text-secondary)}.updating[data-v-6d11051d]{font-size:12px;color:var(--primary-color)}.loading[data-v-6d11051d],.error[data-v-6d11051d]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.loading-spinner[data-v-6d11051d]{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin-6d11051d 1s linear infinite;margin-bottom:16px}@keyframes spin-6d11051d{to{transform:rotate(360deg)}}.error button[data-v-6d11051d]{margin-top:16px;padding:8px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #f7931a;--primary-dark: #e6820d;--bg-color: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--text-primary: #f0f6fc;--text-secondary: #8b949e;--border-color: #30363d;--success-color: #238636;--danger-color: #da3633;--warning-color: #d29922}html,body,#app{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:var(--bg-color);color:var(--text-primary);line-height:1.5}a{color:var(--primary-color);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}.flex{display:flex}.flex-center{display:flex;justify-content:center;align-items:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.m-1{margin:4px}.m-2{margin:8px}.m-3{margin:12px}.m-4{margin:16px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}
