@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--color-primary:#00d4ff;--color-primary-dim:#00d4ff26;--color-primary-glow:#00d4ff66;--color-accent:#7c3aed;--color-accent-dim:#7c3aed26;--color-bull:#00d084;--color-bull-dim:#00d08426;--color-bear:#ff4d6a;--color-bear-dim:#ff4d6a26;--color-neutral:#f59e0b;--color-neutral-dim:#f59e0b26;--bg-base:#080c14;--bg-surface:#0d1421;--bg-elevated:#111827;--bg-card:#141e2e;--bg-hover:#1a2540;--bg-active:#1f2d4a;--bg-glass:#0d1421cc;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-strong:#ffffff2e;--border-primary:#00d4ff4d;--text-primary:#e8edf5;--text-secondary:#8892a4;--text-muted:#4d5a6e;--text-inverse:#080c14;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", "Courier New", monospace;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 20px #0006;--shadow-lg:0 8px 40px #00000080;--shadow-glow:0 0 20px #00d4ff33;--shadow-glow-green:0 0 16px #00d08440;--shadow-glow-red:0 0 16px #ff4d6a40;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease;--sidebar-width:300px;--header-height:60px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body{font-family:var(--font-sans);background:var(--bg-base);color:var(--text-primary);height:100vh;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;overflow:hidden}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.font-mono{font-family:var(--font-mono)}.text-bull{color:var(--color-bull)}.text-bear{color:var(--color-bear)}.text-neutral{color:var(--color-neutral)}.text-primary{color:var(--color-primary)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rating-badge{border-radius:var(--radius-full);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.rating-badge.strongBuy{color:#00e091;background:#00d0842e;border:1px solid #00d08459}.rating-badge.buy{color:var(--color-bull);background:#00d0841a;border:1px solid #00d08440}.rating-badge.hold{color:var(--color-neutral);background:#f59e0b1a;border:1px solid #f59e0b40}.rating-badge.sell{color:var(--color-bear);background:#ff4d6a1a;border:1px solid #ff4d6a40}.rating-badge.strongSell{color:#ff2649;background:#ff4d6a2e;border:1px solid #ff4d6a59}.skeleton{background:linear-gradient(90deg, var(--bg-elevated) 25%, var(--bg-hover) 50%, var(--bg-elevated) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.fade-enter-active,.fade-leave-active{transition:opacity .2s,transform .2s}.fade-enter-from,.fade-leave-to{opacity:0;transform:translateY(4px)}.slide-enter-active,.slide-leave-active{transition:all .25s}.slide-enter-from{opacity:0;transform:translate(-8px)}.slide-leave-to{opacity:0;transform:translate(8px)}.stock-item-main[data-v-400eccda]{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.stock-symbol-badge[data-v-400eccda]{border-radius:var(--radius-md);background:var(--bg-hover);border:1px solid var(--border-default);width:auto;min-width:40px;height:32px;font-size:11px;font-weight:700;font-family:var(--font-mono);color:var(--text-secondary);letter-spacing:-.3px;flex-shrink:0;justify-content:center;align-items:center;padding:0 5px;display:flex}.stock-symbol-badge.index-badge[data-v-400eccda]{color:#d8b4fe;background:#a855f726;border-color:#a855f766}.stock-item.selected .stock-symbol-badge[data-v-400eccda]{background:var(--color-primary-dim);border-color:var(--border-primary);color:var(--color-primary)}.stock-item.selected .stock-symbol-badge.index-badge[data-v-400eccda]{color:#f3e8ff;background:#a855f740;border-color:#a855f7}.stock-info[data-v-400eccda]{flex:1;min-width:0}.stock-name-row[data-v-400eccda]{align-items:center;gap:var(--space-2);margin-bottom:1px;display:flex}.stock-name[data-v-400eccda]{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:115px;font-size:12.5px;font-weight:600;overflow:hidden}.stock-symbol[data-v-400eccda]{color:var(--text-muted);font-size:10px;font-family:var(--font-mono)}.ema-tag[data-v-400eccda]{color:#00e091;letter-spacing:.2px;background:#00e09126;border:1px solid #00e09166;border-radius:3px;padding:0 4px;font-size:9.5px;font-weight:700}.stock-price-row[data-v-400eccda]{align-items:center;gap:var(--space-2);display:flex}.stock-price[data-v-400eccda]{color:var(--text-secondary);font-size:11px}.stock-change[data-v-400eccda]{font-size:11px;font-weight:500}.stock-item-right[data-v-400eccda]{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.stock-rating-dot[data-v-400eccda]{border-radius:50%;flex-shrink:0;width:7px;height:7px}.stock-rating-dot.strongBuy[data-v-400eccda]{background:#00e091;box-shadow:0 0 5px #00d084}.stock-rating-dot.buy[data-v-400eccda]{background:var(--color-bull)}.stock-rating-dot.hold[data-v-400eccda]{background:var(--color-neutral)}.stock-rating-dot.sell[data-v-400eccda]{background:var(--color-bear)}.stock-rating-dot.strongSell[data-v-400eccda]{background:#ff1a3a}.remove-watchlist-btn[data-v-400eccda]{width:18px;height:18px;color:var(--text-muted);cursor:pointer;opacity:0;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:flex}.stock-item:hover .remove-watchlist-btn[data-v-400eccda]{opacity:1}.remove-watchlist-btn[data-v-400eccda]:hover{color:#ff4d6a;background:#ff4d6a26;border-color:#ff4d6a}.industry-tree[data-v-f44c62ae]{flex-direction:column;height:100%;display:flex;overflow:hidden}.tree-filter-bar[data-v-f44c62ae]{padding:8px var(--space-4);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;display:flex}.tree-stats[data-v-f44c62ae]{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:11px;display:flex}.stat-divider[data-v-f44c62ae]{color:var(--border-default)}.ema-filter-btn[data-v-f44c62ae]{border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0a;border:1px solid #ffffff1f;align-items:center;gap:6px;padding:3px 8px;font-size:11px;font-weight:600;display:flex}.ema-filter-btn[data-v-f44c62ae]:hover{color:var(--text-primary);background:#ffffff14}.ema-filter-btn.active[data-v-f44c62ae]{color:#00e091;background:#00e09126;border-color:#00e091;box-shadow:0 0 10px #00e09133}.ema-badge[data-v-f44c62ae]{border-radius:var(--radius-sm);color:inherit;background:#ffffff1a;padding:1px 5px;font-size:9.5px}.ema-filter-btn.active .ema-badge[data-v-f44c62ae]{color:#0d1117;background:#00e091;font-weight:700}.crypto-top-badge[data-v-f44c62ae]{border-radius:var(--radius-full);color:#d8b4fe;background:#a855f726;border:1px solid #a855f766;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:flex}.tree-content[data-v-f44c62ae]{padding:var(--space-2) 0;flex:1;overflow-y:auto}.tree-loading[data-v-f44c62ae]{padding:var(--space-4);text-align:center;color:var(--text-muted);font-size:12px}.load-more-btn[data-v-f44c62ae]{width:calc(100% - var(--space-4));margin:var(--space-2) var(--space-2) 0;border-radius:var(--radius-sm);border:1px dashed var(--border-default);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:8px;font-size:11px}.load-more-btn[data-v-f44c62ae]:hover{color:var(--text-primary);border-color:var(--color-primary)}.industry-group[data-v-f44c62ae]{margin-bottom:2px}.industry-header[data-v-f44c62ae]{align-items:center;gap:var(--space-2);width:100%;padding:10px var(--space-4);color:var(--text-secondary);font-family:var(--font-sans);letter-spacing:.03em;cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;font-size:12px;font-weight:700;display:flex}.industry-header[data-v-f44c62ae]:hover{background:var(--bg-hover);color:var(--text-primary)}.industry-header.expanded[data-v-f44c62ae]{color:var(--color-primary);background:#00d4ff0a}.industry-icon[data-v-f44c62ae]{flex-shrink:0;font-size:15px}.industry-name[data-v-f44c62ae]{flex:1;align-items:baseline;gap:5px;display:flex}.industry-name small[data-v-f44c62ae]{color:var(--text-muted);text-transform:none;font-size:10px;font-weight:400}.industry-count[data-v-f44c62ae]{background:var(--bg-hover);color:var(--text-muted);border-radius:var(--radius-full);padding:1px 7px;font-size:10px;font-weight:500}.expand-arrow[data-v-f44c62ae]{color:var(--text-muted);transition:transform var(--transition-fast);font-size:16px;line-height:1}.expand-arrow.rotated[data-v-f44c62ae]{transform:rotate(90deg)}.sub-section[data-v-f44c62ae]{padding-left:var(--space-2);border-left:1px solid #ffffff0d;margin-left:18px}.subcategory-group[data-v-f44c62ae]{margin:2px 0}.subcategory-header[data-v-f44c62ae]{align-items:center;gap:var(--space-2);width:100%;padding:7px var(--space-3);color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);text-align:left;border-radius:var(--radius-sm);background:0 0;border:none;font-size:11px;font-weight:600;display:flex}.subcategory-header[data-v-f44c62ae]:hover{background:var(--bg-hover);color:var(--text-primary)}.subcategory-header.expanded[data-v-f44c62ae]{color:#a5b4fc}.subcategory-dot[data-v-f44c62ae]{background:var(--border-default);border-radius:50%;flex-shrink:0;width:5px;height:5px}.subcategory-header.expanded .subcategory-dot[data-v-f44c62ae]{background:#a5b4fc;box-shadow:0 0 5px #a5b4fc}.subcategory-name[data-v-f44c62ae]{flex:1;font-size:11.5px}.subcategory-count[data-v-f44c62ae]{background:var(--bg-elevated);color:var(--text-muted);border-radius:var(--radius-full);padding:1px 6px;font-size:9.5px}.sub-arrow[data-v-f44c62ae]{font-size:14px}.stock-list[data-v-f44c62ae]{overflow:hidden}.sub-stock-list[data-v-f44c62ae]{padding-left:var(--space-3);border-left:1px dashed #ffffff14;margin-left:10px}.stock-item[data-v-f44c62ae]{align-items:center;gap:var(--space-2);width:100%;padding:7px var(--space-3);color:var(--text-primary);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);text-align:left;border-radius:var(--radius-sm);background:0 0;border:none;margin:1px 0;display:flex}.stock-item[data-v-f44c62ae]:hover{background:var(--bg-hover)}.stock-item.selected[data-v-f44c62ae]{background:var(--color-primary-dim);border-right:2px solid var(--color-primary)}.expand-enter-active[data-v-f44c62ae]{animation:.22s expand-down-f44c62ae}.expand-leave-active[data-v-f44c62ae]{animation:.18s reverse expand-down-f44c62ae}@keyframes expand-down-f44c62ae{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.tree-empty[data-v-f44c62ae]{padding:var(--space-8);justify-content:center;align-items:center;gap:var(--space-2);flex-direction:column;flex:1;display:flex}.empty-icon[data-v-f44c62ae]{opacity:.5;font-size:32px}.empty-text[data-v-f44c62ae]{color:var(--text-secondary);font-size:13px;font-weight:500}.empty-hint[data-v-f44c62ae]{color:var(--text-muted);font-size:11px}.monthly-returns-container[data-v-56168086]{background-color:var(--color-surface);border-radius:12px;margin-top:2rem;padding:1.5rem;box-shadow:0 4px 6px #0000004d}.section-title[data-v-56168086]{color:var(--color-text);border-bottom:1px solid var(--color-border);margin:0 0 1rem;padding-bottom:.5rem;font-size:1.1rem}.table-wrapper[data-v-56168086]{overflow-x:auto}.returns-table[data-v-56168086]{border-collapse:separate;border-spacing:2px;text-align:right;width:100%;font-size:.9rem}.returns-table th[data-v-56168086]{color:#aaa;border-bottom:1px solid var(--color-border);text-align:center;padding:.75rem .5rem;font-weight:400}.returns-table td[data-v-56168086]{text-align:center;border-radius:4px;padding:.5rem;transition:transform .2s}.returns-table td[data-v-56168086]:hover{z-index:2;position:relative;transform:scale(1.05);box-shadow:0 0 8px #00000080}.year-cell[data-v-56168086]{color:var(--color-text);font-weight:700;text-align:left!important;background-color:#0000!important}.ytd-col[data-v-56168086]{font-weight:700;color:#fff!important}.ytd-cell[data-v-56168086]{border-left:2px solid var(--color-border)}.empty-state[data-v-56168086]{text-align:center;color:#777;padding:2rem!important}.stats-row td[data-v-56168086]{border-top:2px solid var(--color-border)}.stat-label-cell[data-v-56168086]{color:var(--color-text);white-space:nowrap;font-weight:700;text-align:left!important;background-color:#0000!important}.winrate-row td[data-v-56168086]:not(.stat-label-cell){color:var(--text-secondary,#aaa);font-size:.85em}@media (width<=768px){.returns-table[data-v-56168086]{font-size:.8rem}.returns-table td[data-v-56168086],.returns-table th[data-v-56168086]{padding:.4rem .2rem}}.evaluation-dashboard[data-v-da250303]{background-color:var(--color-surface);border-radius:12px;margin-top:1.5rem;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 4px 6px #0000004d}.section-title[data-v-da250303]{color:var(--color-text);border-bottom:1px solid var(--color-border);margin:0 0 1.5rem;padding-bottom:.5rem;font-size:1.1rem}.flex-row[data-v-da250303]{flex-wrap:wrap;align-items:flex-start;gap:2rem;display:flex}.chart-section[data-v-da250303]{background:#0000001a;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:1rem;display:flex}.eval-text-section[data-v-da250303]{flex:300px}.scores-grid[data-v-da250303]{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:16px;display:grid}.score-item[data-v-da250303]{flex-direction:column;gap:4px;display:flex}.score-label[data-v-da250303]{color:#bbb;font-size:.85rem}.score-bar-track[data-v-da250303]{background:#ffffff1a;border-radius:3px;width:100%;height:6px;overflow:hidden}.score-bar-fill[data-v-da250303]{border-radius:3px;height:100%;transition:width .6s}.score-num[data-v-da250303]{text-align:right;margin-top:2px;font-size:.9rem;font-weight:700}.grade-badge[data-v-da250303]{border-radius:20px;padding:4px 12px;font-size:.9rem;font-weight:700}.mt-4[data-v-da250303]{margin-top:1.5rem}.mt-3[data-v-da250303]{margin-top:1rem}.text-block[data-v-da250303]{background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;padding:1rem}.block-title[data-v-da250303]{align-items:center;gap:8px;margin-bottom:.75rem;font-weight:700;display:flex}.dot[data-v-da250303]{border-radius:50%;width:8px;height:8px;display:inline-block}.dot.green[data-v-da250303]{background:#00e091;box-shadow:0 0 8px #00e091}.dot.red[data-v-da250303]{background:#ff4d6a;box-shadow:0 0 8px #ff4d6a}.reason-list[data-v-da250303],.risk-list[data-v-da250303]{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.reason-list li[data-v-da250303],.risk-list li[data-v-da250303]{color:#ddd;padding-left:14px;font-size:.9rem;line-height:1.5;position:relative}.reason-list li[data-v-da250303]:before{content:"✓";color:#00e091;position:absolute;left:0}.risk-list li[data-v-da250303]:before{content:"⚠";color:#ff4d6a;position:absolute;left:0}.loading-content[data-v-da250303]{text-align:center;color:#aaa;padding:2rem}.stock-detail[data-v-63024eec]{background:var(--bg-base);min-height:100%}.detail-header[data-v-63024eec]{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);padding:var(--space-6)}.header-top[data-v-63024eec]{justify-content:space-between;align-items:flex-start;gap:var(--space-8);margin-bottom:var(--space-5);display:flex}.watchlist-btn[data-v-63024eec]{border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:4px;min-width:60px;padding:8px 14px;display:flex}.watchlist-btn[data-v-63024eec]:hover{color:#f59e0b;background:#f59e0b14;border-color:#f59e0b}.watchlist-btn.in-watchlist[data-v-63024eec]{color:#f59e0b;background:#f59e0b1f;border-color:#f59e0b}.watchlist-star[data-v-63024eec]{transition:transform var(--transition-fast);font-size:20px;line-height:1}.watchlist-btn:hover .watchlist-star[data-v-63024eec],.watchlist-btn.in-watchlist .watchlist-star[data-v-63024eec]{transform:scale(1.2)}.watchlist-label[data-v-63024eec]{letter-spacing:.03em;font-size:10px;font-weight:600}.stock-identity[data-v-63024eec]{align-items:flex-start;gap:var(--space-4);display:flex}.symbol-large[data-v-63024eec]{font-family:var(--font-mono);color:var(--color-primary);background:var(--color-primary-dim);border:1px solid var(--border-primary);border-radius:var(--radius-md);white-space:nowrap;letter-spacing:.05em;padding:6px 14px;font-size:13px;font-weight:700}.stock-names[data-v-63024eec]{flex:1}.stock-fullname[data-v-63024eec]{color:var(--text-primary);margin-bottom:var(--space-2);font-size:20px;font-weight:700;line-height:1.2}.stock-meta[data-v-63024eec]{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.market-badge[data-v-63024eec]{border-radius:var(--radius-full);padding:2px 10px;font-size:11px;font-weight:600}.market-badge.tw[data-v-63024eec]{color:#ff8080;background:#ff50501f;border:1px solid #ff505040}.market-badge.us[data-v-63024eec]{color:#60a5fa;background:#0078ff1f;border:1px solid #0078ff40}.market-badge.crypto[data-v-63024eec]{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b40}.market-badge.commodity[data-v-63024eec]{color:#fbbf24;background:#eab30826;border:1px solid #eab30859}.stock-meta-sep[data-v-63024eec]{color:var(--border-default)}.stock-meta-text[data-v-63024eec]{color:var(--text-muted);font-size:12px}.price-section[data-v-63024eec]{text-align:right;flex-shrink:0}.price-current[data-v-63024eec]{color:var(--text-primary);letter-spacing:-1px;margin-bottom:var(--space-1);font-size:32px;font-weight:700;line-height:1.1}.price-change-row[data-v-63024eec]{justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.price-change[data-v-63024eec],.price-change-pct[data-v-63024eec]{font-size:14px;font-weight:600}.price-date[data-v-63024eec]{font-size:11px}.range-bar-section[data-v-63024eec]{align-items:center;gap:var(--space-4);display:flex}.range-label[data-v-63024eec]{white-space:nowrap;flex-direction:column;align-items:flex-start;gap:2px;min-width:80px;font-size:11px;display:flex}.range-label[data-v-63024eec]:last-child{align-items:flex-end}.range-label .font-mono[data-v-63024eec]{color:var(--text-secondary);font-size:12px}.range-track[data-v-63024eec]{background:var(--bg-elevated);border-radius:var(--radius-full);flex:1;height:6px;position:relative;overflow:visible}.range-fill[data-v-63024eec]{background:linear-gradient(90deg, var(--color-bear), var(--color-neutral), var(--color-bull));border-radius:var(--radius-full);height:100%}.range-current-dot[data-v-63024eec]{border:2px solid var(--color-primary);width:12px;height:12px;box-shadow:0 0 8px var(--color-primary);background:#fff;border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.detail-body[data-v-63024eec]{gap:var(--space-5);padding:var(--space-5);grid-template-columns:1fr 1fr;align-items:start;display:grid}.detail-body.is-crypto-body[data-v-63024eec]{grid-template-columns:1fr}.section-card[data-v-63024eec]{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-4)}.section-title[data-v-63024eec]{align-items:center;gap:var(--space-2);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-4);font-size:13px;font-weight:700;display:flex}.section-icon[data-v-63024eec]{font-size:15px}.broker-count[data-v-63024eec]{color:var(--text-muted);text-transform:none;letter-spacing:0;margin-left:auto;font-size:11px;font-weight:400}.metrics-grid[data-v-63024eec]{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.metric-card[data-v-63024eec]{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-4);transition:border-color var(--transition-fast)}.metric-card[data-v-63024eec]:hover{border-color:var(--border-default)}.metric-card.highlight[data-v-63024eec]{border-color:var(--border-primary);background:var(--color-primary-dim)}.metric-label[data-v-63024eec]{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2);font-size:11px}.metric-value[data-v-63024eec]{color:var(--text-primary);margin-bottom:var(--space-1);font-size:20px;font-weight:700}.metric-sub[data-v-63024eec]{color:var(--text-muted);font-size:10px}.rsi-bar[data-v-63024eec]{margin:var(--space-2) 0 var(--space-1)}.rsi-track[data-v-63024eec]{border-radius:var(--radius-sm);height:14px;display:flex;position:relative;overflow:hidden}.rsi-zone[data-v-63024eec]{letter-spacing:.03em;color:#fff;opacity:.9;justify-content:center;align-items:center;font-size:8px;font-weight:600;display:flex}.rsi-zone.oversold[data-v-63024eec]{color:var(--color-bull);background:#00d08466;flex:30}.rsi-zone.neutral[data-v-63024eec]{color:var(--text-muted);background:#ffffff0d;flex:40}.rsi-zone.overbought[data-v-63024eec]{color:var(--color-bear);background:#ff4d6a66;flex:30}.rsi-cursor[data-v-63024eec]{background:#fff;border-radius:1px;width:2px;position:absolute;top:0;bottom:0;transform:translate(-50%);box-shadow:0 0 4px #ffffff80}.target-range[data-v-63024eec]{align-items:center;gap:var(--space-3);display:flex}.target-item[data-v-63024eec]{min-width:90px}.target-item.right[data-v-63024eec]{text-align:right}.target-label[data-v-63024eec]{margin-bottom:2px;font-size:10px}.target-value[data-v-63024eec]{font-size:14px;font-weight:600}.target-bar-wrapper[data-v-63024eec]{flex:1}.target-bar[data-v-63024eec]{background:var(--bg-elevated);border-radius:var(--radius-full);height:8px;margin-bottom:var(--space-2);position:relative}.target-bar-fill[data-v-63024eec]{background:linear-gradient(90deg, var(--color-bear), var(--color-primary));border-radius:var(--radius-full);height:100%}.target-current-line[data-v-63024eec]{background:#fff;border-radius:1px;width:2px;position:absolute;top:-4px;bottom:-4px;transform:translate(-50%)}.target-current-label[data-v-63024eec]{color:var(--text-muted);white-space:nowrap;font-size:9px;position:absolute;top:-18px;left:50%;transform:translate(-50%)}.target-upside[data-v-63024eec]{text-align:center;font-size:12px;font-weight:600}.consensus-layout[data-v-63024eec]{align-items:center;gap:var(--space-5);display:flex}.consensus-chart-wrapper[data-v-63024eec]{flex-shrink:0;width:120px;height:120px;position:relative}.consensus-chart-wrapper canvas[data-v-63024eec]{width:120px!important;height:120px!important}.consensus-center-label[data-v-63024eec]{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.consensus-main-rating[data-v-63024eec]{text-align:center;font-size:11px;font-weight:700}.consensus-main-rating.strongBuy[data-v-63024eec]{color:#00e091}.consensus-main-rating.buy[data-v-63024eec]{color:var(--color-bull)}.consensus-main-rating.hold[data-v-63024eec]{color:var(--color-neutral)}.consensus-main-rating.sell[data-v-63024eec]{color:var(--color-bear)}.consensus-legend[data-v-63024eec]{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.legend-item[data-v-63024eec]{align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:12px;display:flex}.legend-dot[data-v-63024eec]{border-radius:2px;flex-shrink:0;width:8px;height:8px}.legend-dot.strongBuy[data-v-63024eec]{background:#00e091}.legend-dot.buy[data-v-63024eec]{background:var(--color-bull)}.legend-dot.hold[data-v-63024eec]{background:var(--color-neutral)}.legend-dot.sell[data-v-63024eec]{background:var(--color-bear)}.legend-pct[data-v-63024eec]{color:var(--text-muted);margin-left:auto;font-size:11px}.brokers-card[data-v-63024eec]{height:fit-content}.sort-controls[data-v-63024eec]{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.sort-label[data-v-63024eec]{color:var(--text-muted);font-size:11px}.sort-btn[data-v-63024eec]{font-size:11px;font-family:var(--font-sans);border-radius:var(--radius-full);border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:3px 10px}.sort-btn[data-v-63024eec]:hover{background:var(--bg-hover);color:var(--text-primary)}.sort-btn.active[data-v-63024eec]{background:var(--color-primary-dim);border-color:var(--border-primary);color:var(--color-primary)}.rating-summary-bar[data-v-63024eec]{border-radius:var(--radius-full);height:6px;margin-bottom:var(--space-4);gap:2px;display:flex;overflow:hidden}.rating-bar-seg[data-v-63024eec]{color:#fff;border-radius:2px;justify-content:center;align-items:center;min-width:0;font-size:9px;font-weight:700;transition:width .5s;display:flex;overflow:hidden}.rating-bar-seg.strongBuy[data-v-63024eec]{background:#00e091}.rating-bar-seg.buy[data-v-63024eec]{background:var(--color-bull)}.rating-bar-seg.hold[data-v-63024eec]{background:var(--color-neutral)}.rating-bar-seg.sell[data-v-63024eec]{background:var(--color-bear)}.broker-table-wrapper[data-v-63024eec]{margin:0 -var(--space-5);padding:0 var(--space-5);overflow-x:auto}.broker-table[data-v-63024eec]{border-collapse:collapse;width:100%;font-size:13px}.broker-table thead th[data-v-63024eec]{text-align:left;padding:8px var(--space-3);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-subtle);font-size:10px;font-weight:600}.broker-row[data-v-63024eec]{border-bottom:1px solid var(--border-subtle);transition:background var(--transition-fast)}.broker-row[data-v-63024eec]:last-child{border-bottom:none}.broker-row[data-v-63024eec]:hover{background:var(--bg-hover)}.broker-row td[data-v-63024eec]{padding:10px var(--space-3);vertical-align:middle}.broker-name-cell[data-v-63024eec]{align-items:center;gap:var(--space-2);display:flex}.broker-avatar[data-v-63024eec]{border-radius:var(--radius-sm);background:var(--bg-hover);border:1px solid var(--border-default);width:28px;height:28px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex}.disclaimer[data-v-63024eec]{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--bg-elevated);border-radius:var(--radius-md);border-left:3px solid var(--color-neutral);color:var(--text-muted);font-size:11px;line-height:1.6}.login-gate-hint[data-v-63024eec]{align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;display:flex}.login-gate-icon[data-v-63024eec]{font-size:18px;line-height:1}.login-gate-text[data-v-63024eec]{flex:1}.login-gate-btn[data-v-63024eec]{background:var(--color-primary);color:var(--text-inverse);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast);border:none;flex-shrink:0;padding:7px 14px;font-size:12.5px;font-weight:600}.login-gate-btn[data-v-63024eec]:hover{opacity:.9}.trend-and-news-section[data-v-63024eec]{gap:var(--space-6);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);padding:var(--space-5) var(--space-6);grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid}.trend-and-news-section.has-news[data-v-63024eec]{grid-template-columns:minmax(0,1fr) 380px}@media (width<=1200px){.trend-and-news-section.has-news[data-v-63024eec]{grid-template-columns:minmax(0,1fr)}}.trend-chart-main[data-v-63024eec]{flex-direction:column;min-width:0;display:flex}.trend-chart-header[data-v-63024eec]{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.trend-chart-title[data-v-63024eec]{align-items:center;gap:var(--space-2);font-weight:600;font-size:var(--text-md);color:var(--text-base);display:flex}.trend-subtitle[data-v-63024eec]{font-size:var(--text-xs);background:var(--bg-card);color:var(--accent-blue);border-radius:var(--radius-full);border:1px solid #3b82f633;padding:2px 8px}.trend-tabs[data-v-63024eec]{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-subtle);padding:2px;display:flex}.trend-tab[data-v-63024eec]{border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-muted);transition:all var(--transition-fast);background:0 0;padding:4px 12px}.trend-tab[data-v-63024eec]:hover{color:var(--text-base)}.trend-tab.active[data-v-63024eec]{background:var(--bg-surface);color:var(--accent-blue);box-shadow:var(--shadow-sm);font-weight:600}.trend-canvas-container[data-v-63024eec]{width:100%;height:260px;position:relative}.trend-legend-bar[data-v-63024eec]{justify-content:flex-end;gap:var(--space-6);margin-top:var(--space-3);font-size:var(--text-xs);color:#fff;font-weight:500;display:flex}.legend-item-trend[data-v-63024eec]{align-items:center;gap:var(--space-2);display:flex}.legend-box[data-v-63024eec]{border-radius:2px;width:12px;height:4px}.line-box[data-v-63024eec]{background:#00e091}.bar-box[data-v-63024eec]{background:#00e09166}.trend-news-sidebar[data-v-63024eec]{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-4);flex-direction:column;max-height:356px;display:flex;overflow:hidden}.trend-news-header[data-v-63024eec]{margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.trend-news-title[data-v-63024eec]{align-items:center;gap:var(--space-2);color:var(--text-secondary);letter-spacing:.04em;font-size:13px;font-weight:700;display:flex}.trend-news-subtitle[data-v-63024eec]{color:var(--text-muted);font-size:11px}.news-list[data-v-63024eec]{gap:var(--space-3);flex-direction:column;flex:1;padding-right:4px;display:flex;overflow-y:auto}.news-list[data-v-63024eec]::-webkit-scrollbar{width:5px}.news-list[data-v-63024eec]::-webkit-scrollbar-track{border-radius:var(--radius-full);background:#ffffff08}.news-list[data-v-63024eec]::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff26}.news-list[data-v-63024eec]::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.news-item[data-v-63024eec]{justify-content:space-between;align-items:flex-start;gap:var(--space-3);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all var(--transition-fast);flex-shrink:0;padding:10px 12px;text-decoration:none;display:flex}.news-item[data-v-63024eec]:hover{background:var(--bg-hover);border-color:var(--color-primary);transform:translate(2px);box-shadow:0 4px 12px #0006}.news-main[data-v-63024eec]{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.news-title[data-v-63024eec]{color:var(--text-primary);transition:color var(--transition-fast);word-break:break-word;font-size:12px;font-weight:600;line-height:1.5}.news-item:hover .news-title[data-v-63024eec]{color:var(--color-primary)}.news-meta[data-v-63024eec]{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.news-badge[data-v-63024eec]{background:var(--color-primary-dim);color:var(--color-primary);border-radius:var(--radius-sm);letter-spacing:.3px;padding:2px 6px;font-size:10px;font-weight:700}.news-time[data-v-63024eec]{color:var(--text-muted);font-size:11px;font-family:var(--font-mono)}.news-arrow[data-v-63024eec]{font-size:var(--text-md);color:var(--text-muted);transition:transform var(--transition-fast);flex-shrink:0}.news-item:hover .news-arrow[data-v-63024eec]{color:var(--color-primary);transform:translate(2px,-2px)}.pi-cycle-btn[data-v-63024eec]{letter-spacing:.3px;font-weight:600;transition:all .25s;color:#00f0ff!important;background:#00f0ff14!important;border:1px solid #00f0ff47!important}.pi-cycle-btn[data-v-63024eec]:hover{box-shadow:0 0 14px #00f0ff61;background:#00f0ff2e!important;border-color:#00f0ff!important}.pi-cycle-btn.active[data-v-63024eec]{box-shadow:0 0 16px #ff007f73,0 0 10px #00f0ff59;color:#fff!important;background:linear-gradient(135deg,#00f0ff40,#ff007f40)!important;border-color:#ff007f!important}.trend-tab-sep[data-v-63024eec]{color:#ffffff29;align-self:center;margin:0 4px}.pi-cycle-panel[data-v-63024eec]{border-radius:var(--radius-lg,12px);background:linear-gradient(135deg,#0f172aeb,#1e293beb);border:1px solid #00f0ff40;margin-top:16px;padding:18px 22px;box-shadow:0 10px 28px #00000073,inset 0 1px 1px #ffffff14}.pi-cycle-header[data-v-63024eec]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.pi-cycle-title[data-v-63024eec]{color:#f8fafc;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.pi-icon[data-v-63024eec]{font-size:18px}.pi-status-badge[data-v-63024eec]{border-radius:20px;padding:5px 14px;font-size:13px;font-weight:600}.status-safe[data-v-63024eec]{color:#00e091;background:#00e09126;border:1px solid #00e09152}.status-warn[data-v-63024eec]{color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b52}.status-alert[data-v-63024eec]{color:#ff007f;background:#ff007f38;border:1px solid #ff007f73;box-shadow:0 0 14px #ff007f73}.pi-cycle-metrics[data-v-63024eec]{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:14px;display:grid}.pi-metric-box[data-v-63024eec]{background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;padding:14px;transition:border-color .2s}.pi-metric-box[data-v-63024eec]:hover{border-color:#ffffff2e}.pi-metric-box.highlight-box[data-v-63024eec]{background:#00f0ff0a;border-color:#00f0ff38}.pi-metric-label[data-v-63024eec]{color:#94a3b8;margin-bottom:6px;font-size:12px;font-weight:500}.pi-metric-value[data-v-63024eec]{margin-bottom:4px;font-size:19px;font-weight:700}.text-cyan[data-v-63024eec]{color:#00f0ff!important}.text-pink[data-v-63024eec]{color:#ff007f!important}.pi-metric-sub[data-v-63024eec]{color:#64748b;font-size:11px}.pi-cycle-desc[data-v-63024eec]{color:#cbd5e1;background:#00000040;border-left:3px solid #00f0ff;border-radius:6px;padding:12px 16px;font-size:12.5px;line-height:1.6}.crypto-quant-dashboard[data-v-63024eec]{margin-top:var(--space-4);padding:0 var(--space-6) var(--space-6)}.quant-main-card[data-v-63024eec]{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:0 4px 20px #00000040}.crypto-quant-grid[data-v-63024eec]{gap:var(--space-5);margin-top:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=1100px){.crypto-quant-grid[data-v-63024eec]{grid-template-columns:1fr}}.quant-card[data-v-63024eec]{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-3);background:#0f172a99;flex-direction:column;transition:all .25s;display:flex;position:relative;overflow:hidden}.quant-card[data-v-63024eec]:hover{border-color:#38bdf866;transform:translateY(-2px);box-shadow:0 4px 15px #00d4ff14}.quant-card-header[data-v-63024eec]{align-items:center;gap:var(--space-3);display:flex}.quant-icon[data-v-63024eec]{border-radius:var(--radius-md);background:#ffffff0d;border:1px solid #ffffff14;justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;display:flex}.quant-title[data-v-63024eec]{color:var(--text-base);font-size:14px;font-weight:700}.quant-subtitle[data-v-63024eec]{color:var(--text-muted);margin-top:2px;font-size:11px}.quant-value-row[data-v-63024eec]{align-items:baseline;gap:var(--space-2);display:flex}.quant-main-value[data-v-63024eec]{letter-spacing:-.5px;font-size:26px;font-weight:800}.quant-badge[data-v-63024eec]{border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.badge-danger[data-v-63024eec]{color:#ef4444;background:#ef444433;border:1px solid #ef444466}.badge-warn[data-v-63024eec]{color:#eab308;background:#eab30833;border:1px solid #eab30866}.badge-success[data-v-63024eec]{color:#22c55e;background:#22c55e33;border:1px solid #22c55e66}.quant-status-desc[data-v-63024eec]{font-size:13px;line-height:1.4}.quant-expl[data-v-63024eec]{color:var(--text-muted);padding:10px var(--space-3);border-radius:var(--radius-sm);background:#00000040;border-left:3px solid #38bdf880;margin-top:auto;font-size:11.5px;line-height:1.6}.crypto-intro-card[data-v-63024eec]{margin-bottom:var(--space-4)}.crypto-intro-text[data-v-63024eec]{color:var(--text-secondary);margin-top:var(--space-2);white-space:pre-line;font-size:13.5px;line-height:1.8}.quant-gauge-wrap[data-v-63024eec]{flex-direction:column;gap:4px;margin:6px 0;display:flex}.zscore-track[data-v-63024eec]{background:#ffffff0d;border-radius:6px;height:12px;display:flex;position:relative;overflow:hidden}.z-zone[data-v-63024eec]{color:#fffc;flex:1;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:flex}.z-green[data-v-63024eec]{background:linear-gradient(90deg,#10b981,#34d399)}.z-blue[data-v-63024eec]{background:linear-gradient(90deg,#38bdf8,#60a5fa)}.z-yellow[data-v-63024eec]{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.z-red[data-v-63024eec]{background:linear-gradient(90deg,#f87171,#ef4444)}.zscore-cursor[data-v-63024eec]{background:#fff;border-radius:2px;width:4px;transition:left .4s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:0;box-shadow:0 0 8px #fff,0 0 12px #00d4ff}.zscore-labels[data-v-63024eec],.funding-labels[data-v-63024eec],.fng-labels[data-v-63024eec]{color:var(--text-muted);justify-content:space-between;font-size:10px;display:flex}.quant-meter-wrap[data-v-63024eec]{flex-direction:column;gap:4px;margin:6px 0;display:flex}.funding-track[data-v-63024eec]{background:#ffffff14;border-radius:6px;height:12px;position:relative;overflow:hidden}.funding-mid-line[data-v-63024eec]{z-index:2;background:#fff6;width:2px;position:absolute;top:0;bottom:0;left:50%}.funding-bar[data-v-63024eec]{border-radius:4px;transition:all .4s;position:absolute;top:0;bottom:0}.funding-bull[data-v-63024eec]{background:linear-gradient(90deg,#f59e0b,#ef4444)}.funding-bear[data-v-63024eec]{background:linear-gradient(90deg,#38bdf8,#10b981)}.oi-visual-bar[data-v-63024eec]{background:#ffffff14;border-radius:4px;height:8px;margin:6px 0;overflow:hidden}.oi-bar-fill[data-v-63024eec]{background:linear-gradient(90deg,#00d4ff,#8a2be2);border-radius:4px;height:100%;transition:width .5s}.fng-gauge-wrap[data-v-63024eec]{flex-direction:column;gap:4px;margin:6px 0;display:flex}.fng-rainbow-track[data-v-63024eec]{background:linear-gradient(90deg,#ef4444 0%,#f97316 25%,#eab308 50%,#10b981 75%,#06b6d4 100%);border-radius:6px;height:12px;position:relative;box-shadow:inset 0 1px 3px #0006}.fng-cursor[data-v-63024eec]{background:#fff;border-radius:3px;width:6px;margin-left:-3px;transition:left .4s cubic-bezier(.4,0,.2,1);position:absolute;top:-3px;bottom:-3px;box-shadow:0 0 8px #fff,0 0 12px #000}.chip-highlight[data-v-63024eec]{background:#00d4ff0a!important;border-color:#00d4ff59!important}.chips-analysis-section[data-v-63024eec]{margin-top:var(--space-4);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-5)}.chips-tw-grid[data-v-63024eec]{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=1100px){.chips-tw-grid[data-v-63024eec]{grid-template-columns:1fr}}.chip-box[data-v-63024eec]{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-4);background:#0f172a99;flex-direction:column;transition:all .25s;display:flex}.chip-box[data-v-63024eec]:hover{border-color:#38bdf866;box-shadow:0 4px 15px #00d4ff14}.chip-track[data-v-63024eec]{background:#ffffff14;border-radius:4px;height:8px;overflow:hidden}.chip-bar[data-v-63024eec]{border-radius:4px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.bg-bull[data-v-63024eec]{background:#ef4444!important}.bg-bear[data-v-63024eec]{background:#10b981!important}.chips-us-box[data-v-63024eec]{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-5);margin-top:var(--space-4);background:#0f172a99}.welcome-view[data-v-01fd6a09]{justify-content:center;align-items:center;min-height:100%;display:flex;position:relative;overflow:hidden}.welcome-content[data-v-01fd6a09]{z-index:2;text-align:center;max-width:480px;padding:var(--space-8);position:relative}.welcome-icon[data-v-01fd6a09]{margin-bottom:var(--space-5);font-size:64px;animation:4s ease-in-out infinite float-01fd6a09}@keyframes float-01fd6a09{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.welcome-title[data-v-01fd6a09]{background:linear-gradient(135deg, var(--color-primary), #7c3aed);-webkit-text-fill-color:transparent;margin-bottom:var(--space-3);letter-spacing:-.5px;-webkit-background-clip:text;background-clip:text;font-size:28px;font-weight:800}.welcome-subtitle[data-v-01fd6a09]{color:var(--text-secondary);margin-bottom:var(--space-6);font-size:14px;line-height:1.8}.feature-list[data-v-01fd6a09]{gap:var(--space-3);text-align:left;grid-template-columns:1fr 1fr;display:grid}.feature-item[data-v-01fd6a09]{align-items:flex-start;gap:var(--space-3);background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-4);transition:all var(--transition-fast);display:flex}.feature-item[data-v-01fd6a09]:hover{border-color:var(--border-primary);background:var(--color-primary-dim)}.feature-icon[data-v-01fd6a09]{flex-shrink:0;margin-top:2px;font-size:20px}.feature-name[data-v-01fd6a09]{color:var(--text-primary);margin-bottom:2px;font-size:13px;font-weight:600}.feature-desc[data-v-01fd6a09]{color:var(--text-muted);font-size:11px;line-height:1.5}.welcome-bg[data-v-01fd6a09]{z-index:1;pointer-events:none;position:absolute;inset:0}.bg-grid[data-v-01fd6a09]{background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0}.bg-glow[data-v-01fd6a09]{filter:blur(80px);opacity:.12;border-radius:50%;position:absolute}.glow-1[data-v-01fd6a09]{background:var(--color-primary);width:400px;height:400px;top:-100px;right:-100px}.glow-2[data-v-01fd6a09]{background:var(--color-accent);width:300px;height:300px;bottom:-80px;left:-80px}.recommend-view[data-v-5843a342]{background:var(--bg-base);flex-direction:column;min-height:100%;display:flex;overflow-x:hidden}.hero-section[data-v-5843a342]{border-bottom:1px solid var(--border-subtle);padding:40px 32px 28px;position:relative;overflow:hidden}.hero-bg[data-v-5843a342]{z-index:0;pointer-events:none;position:absolute;inset:0}.hero-grid[data-v-5843a342]{background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0}.hero-glow[data-v-5843a342]{filter:blur(80px);border-radius:50%;position:absolute}.glow-1[data-v-5843a342]{background:#00d4ff14;width:500px;height:300px;top:-60px;left:-80px}.glow-2[data-v-5843a342]{background:#7c3aed14;width:400px;height:300px;top:-40px;right:-60px}.glow-3[data-v-5843a342]{background:#00e0910f;width:300px;height:200px;bottom:-40px;left:40%}.hero-content[data-v-5843a342]{z-index:1;position:relative}.hero-badge[data-v-5843a342]{color:var(--color-primary);letter-spacing:.05em;background:#00d4ff1a;border:1px solid #00d4ff4d;border-radius:100px;align-items:center;gap:8px;margin-bottom:14px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-flex}.badge-dot[data-v-5843a342]{background:var(--color-primary);border-radius:50%;width:6px;height:6px;animation:2s infinite pulse-5843a342}.hero-title[data-v-5843a342]{background:linear-gradient(135deg, #fff 0%, var(--color-primary) 60%, #7c3aed 100%);-webkit-text-fill-color:transparent;letter-spacing:-1px;-webkit-background-clip:text;background-clip:text;margin:0 0 10px;font-size:32px;font-weight:900}.hero-subtitle[data-v-5843a342]{color:var(--text-secondary);max-width:700px;margin:0 0 18px;font-size:14px;line-height:1.75}.weight-chips[data-v-5843a342]{flex-wrap:wrap;gap:6px;display:flex}.weight-chip[data-v-5843a342]{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:100px;align-items:center;gap:4px;padding:3px 10px;font-size:10.5px;display:inline-flex}.weight-label[data-v-5843a342]{color:var(--text-secondary)}.weight-pct[data-v-5843a342]{color:var(--color-primary);font-weight:700;font-family:var(--font-mono)}.filter-bar[data-v-5843a342]{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d1421eb;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 32px;display:flex;position:sticky;top:0}.filter-left[data-v-5843a342]{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.filter-group[data-v-5843a342]{align-items:center;gap:8px;display:flex}.filter-label[data-v-5843a342]{color:var(--text-muted);white-space:nowrap;letter-spacing:.03em;font-size:11px;font-weight:600}.filter-tabs[data-v-5843a342]{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;gap:3px;padding:3px;display:flex}.filter-tab[data-v-5843a342]{color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:5px;padding:4px 12px;transition:all .15s}.filter-tab[data-v-5843a342]:hover{color:var(--text-primary);background:var(--bg-hover)}.filter-tab.active[data-v-5843a342]{background:var(--color-primary-dim);color:var(--color-primary);font-weight:600}.filter-select[data-v-5843a342]{background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--text-primary);font-family:var(--font-sans);cursor:pointer;border-radius:6px;outline:none;padding:5px 10px;font-size:12px}.filter-right[data-v-5843a342]{flex-shrink:0;align-items:center;gap:12px;display:flex}.result-count[data-v-5843a342]{color:var(--text-muted);white-space:nowrap;font-size:12px}.result-count strong[data-v-5843a342]{color:var(--color-primary);font-family:var(--font-mono)}.refresh-btn[data-v-5843a342]{color:var(--color-primary);font-size:12px;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;background:#00d4ff14;border:1px solid #00d4ff59;border-radius:100px;align-items:center;gap:6px;padding:6px 14px;font-weight:600;transition:all .2s;display:flex}.refresh-btn[data-v-5843a342]:hover:not(:disabled){background:#00d4ff2e;transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff33}.refresh-btn[data-v-5843a342]:disabled{opacity:.6;cursor:not-allowed}.refresh-btn.loading[data-v-5843a342]{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b66}.refresh-icon[data-v-5843a342]{font-size:14px}.refresh-icon.spin[data-v-5843a342]{animation:1s linear infinite spin-5843a342}@keyframes spin-5843a342{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.last-update[data-v-5843a342]{color:var(--text-muted);font-size:10.5px;font-family:var(--font-mono);white-space:nowrap}.cards-grid[data-v-5843a342]{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px;padding:24px 32px;display:grid}.stock-card[data-v-5843a342]{background:var(--bg-card,#0d1421);border:1px solid var(--border-subtle);border-radius:16px;flex-direction:column;gap:14px;padding:20px;transition:all .25s cubic-bezier(.4,0,.2,1);animation:.4s both cardFadeIn-5843a342;display:flex;position:relative;overflow:hidden}.stock-card[data-v-5843a342]:before{content:"";opacity:0;border-radius:16px 16px 0 0;height:2px;transition:opacity .2s;position:absolute;top:0;left:0;right:0}.stock-card.grade-strong_buy[data-v-5843a342]:before{background:linear-gradient(90deg,#00e091,#00d084)}.stock-card.grade-buy[data-v-5843a342]:before{background:linear-gradient(90deg,#38bdf8,#0284c7)}.stock-card.grade-watch[data-v-5843a342]:before{background:linear-gradient(90deg,#f59e0b,#d97706)}.stock-card[data-v-5843a342]:hover{border-color:#00d4ff40;transform:translateY(-4px);box-shadow:0 12px 40px #0006,0 0 0 1px #00d4ff1a}.stock-card[data-v-5843a342]:hover:before{opacity:1}@keyframes cardFadeIn-5843a342{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card-top[data-v-5843a342]{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card-identity[data-v-5843a342]{flex:1;min-width:0}.card-symbol[data-v-5843a342]{color:var(--text-primary);font-size:22px;font-weight:800;font-family:var(--font-mono);letter-spacing:-.5px}.card-name[data-v-5843a342]{color:var(--text-base,#e2e8f0);margin-top:2px;font-size:14px;font-weight:600}.card-meta[data-v-5843a342]{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.card-market-badge[data-v-5843a342]{border-radius:100px;padding:2px 8px;font-size:10px;font-weight:700}.card-market-badge.us[data-v-5843a342]{color:#93c5fd;background:#3b82f626;border:1px solid #3b82f659}.card-market-badge.tw[data-v-5843a342]{color:#6ee7b7;background:#10b98126;border:1px solid #10b98159}.card-industry[data-v-5843a342]{color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:100px;padding:2px 8px;font-size:10.5px}.card-recommend-date[data-v-5843a342]{color:var(--text-muted);font-size:10.5px;font-family:var(--font-mono);align-items:center;gap:5px;margin-top:6px;display:flex}.date-icon[data-v-5843a342]{font-size:11px}.score-ring-wrapper[data-v-5843a342]{flex-shrink:0}.score-ring[data-v-5843a342]{width:100px;height:100px;position:relative}.score-ring-center[data-v-5843a342]{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.score-num[data-v-5843a342]{font-size:24px;font-weight:900;font-family:var(--font-mono);line-height:1}.score-grade-label[data-v-5843a342]{letter-spacing:.04em;margin-top:2px;font-size:8.5px;font-weight:700}.score-color-strong_buy[data-v-5843a342]{color:#00e091}.score-color-buy[data-v-5843a342]{color:#38bdf8}.score-color-watch[data-v-5843a342]{color:#f59e0b}.score-color-avoid[data-v-5843a342]{color:#ff4d6a}.card-price-row[data-v-5843a342]{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.price-live[data-v-5843a342]{align-items:baseline;gap:8px;display:flex}.price-value[data-v-5843a342]{color:var(--text-primary);font-size:18px;font-weight:700}.price-change[data-v-5843a342]{font-size:13px;font-weight:600}.price-loading[data-v-5843a342],.price-unavailable[data-v-5843a342]{color:var(--text-muted);align-items:center;gap:6px;font-size:12px;display:flex}.buy-zone[data-v-5843a342]{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.buy-zone-label[data-v-5843a342]{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:9.5px;font-weight:600}.buy-zone-value[data-v-5843a342]{color:#f59e0b;font-size:12px;font-weight:600}.score-bars[data-v-5843a342]{flex-direction:column;gap:5px;display:flex}.score-bar-row[data-v-5843a342]{align-items:center;gap:8px;display:flex}.score-bar-label[data-v-5843a342]{color:var(--text-muted);text-align:right;flex-shrink:0;width:72px;font-size:10px}.score-bar-track[data-v-5843a342]{background:#ffffff0f;border-radius:100px;flex:1;height:5px;overflow:hidden}.score-bar-fill[data-v-5843a342]{border-radius:100px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.score-bar-fill.score-excellent[data-v-5843a342]{background:linear-gradient(90deg,#00e091,#00c070)}.score-bar-fill.score-good[data-v-5843a342]{background:linear-gradient(90deg,#38bdf8,#0ea5e9)}.score-bar-fill.score-neutral[data-v-5843a342]{background:linear-gradient(90deg,#f59e0b,#d97706)}.score-bar-fill.score-poor[data-v-5843a342]{background:linear-gradient(90deg,#ff4d6a,#e11d48)}.score-bar-num[data-v-5843a342]{font-size:10px;font-family:var(--font-mono);text-align:right;flex-shrink:0;width:24px;font-weight:700}.score-bar-num.score-excellent[data-v-5843a342]{color:#00e091}.score-bar-num.score-good[data-v-5843a342]{color:#38bdf8}.score-bar-num.score-neutral[data-v-5843a342]{color:#f59e0b}.score-bar-num.score-poor[data-v-5843a342]{color:#ff4d6a}.radar-wrapper[data-v-5843a342]{justify-content:center;padding:4px 0;display:flex}.card-section[data-v-5843a342]{flex-direction:column;gap:6px;display:flex}.card-section-title[data-v-5843a342]{color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.section-dot[data-v-5843a342]{border-radius:50%;flex-shrink:0;width:5px;height:5px}.section-dot.green[data-v-5843a342]{background:#00e091;box-shadow:0 0 5px #00e091}.section-dot.red[data-v-5843a342]{background:#ff4d6a;box-shadow:0 0 5px #ff4d6a}.reason-list[data-v-5843a342],.risk-list[data-v-5843a342]{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.reason-item[data-v-5843a342]{color:var(--text-secondary);padding-left:14px;font-size:11.5px;line-height:1.6;position:relative}.reason-item[data-v-5843a342]:before{content:"✓";color:#00e091;font-size:10px;font-weight:700;position:absolute;left:0}.risk-item[data-v-5843a342]{color:var(--text-muted);padding-left:14px;font-size:11.5px;line-height:1.6;position:relative}.risk-item[data-v-5843a342]:before{content:"⚡";font-size:9px;position:absolute;left:0}.backtest-section[data-v-5843a342]{background:#ffffff06;border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.backtest-header[data-v-5843a342]{justify-content:space-between;align-items:center;gap:8px;display:flex}.backtest-title[data-v-5843a342]{color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.backtest-note[data-v-5843a342]{color:var(--text-muted);font-size:9.5px;font-style:italic}.backtest-grid[data-v-5843a342]{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.backtest-item[data-v-5843a342]{background:#ffffff08;border:1px solid #ffffff0a;border-radius:7px;flex-direction:column;gap:3px;padding:8px;display:flex}.backtest-item.highlight[data-v-5843a342]{background:#00e0910d;border-color:#00e09133}.bt-label[data-v-5843a342]{color:var(--text-muted);white-space:nowrap;font-size:9.5px;font-weight:600}.bt-value[data-v-5843a342]{font-size:13px;font-weight:700}.bt-value.text-bear[data-v-5843a342]{color:#ff4d6a}.bt-value.text-cyan[data-v-5843a342]{color:#06b6d4}.perf-insufficient[data-v-5843a342]{text-align:center;color:var(--text-muted);background:#ffffff05;border:1px dashed #ffffff1a;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:13px;display:flex}.perf-no-data-icon[data-v-5843a342]{opacity:.7;font-size:16px}.card-grade-footer[data-v-5843a342]{letter-spacing:.03em;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:11px;font-weight:700;display:flex}.grade-footer-strong_buy[data-v-5843a342]{color:#00e091;background:#00e0911a;border:1px solid #00e09140}.grade-footer-buy[data-v-5843a342]{color:#38bdf8;background:#38bdf81a;border:1px solid #38bdf840}.grade-footer-watch[data-v-5843a342]{color:#f59e0b;background:#f59e0b1a;border:1px solid #f59e0b40}.grade-dot[data-v-5843a342]{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 6px}.grade-score[data-v-5843a342]{font-family:var(--font-mono);opacity:.8;margin-left:auto}.empty-state[data-v-5843a342]{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:80px 32px;display:flex}.empty-icon[data-v-5843a342]{opacity:.4;font-size:48px}.empty-text[data-v-5843a342]{color:var(--text-secondary);font-size:16px;font-weight:600}.empty-hint[data-v-5843a342]{color:var(--text-muted);font-size:13px}.disclaimer-footer[data-v-5843a342]{border-top:1px solid var(--border-subtle);align-items:flex-start;gap:10px;margin-top:8px;padding:16px 32px 24px;display:flex}.disclaimer-icon[data-v-5843a342]{flex-shrink:0;margin-top:1px;font-size:14px}.disclaimer-text[data-v-5843a342]{color:var(--text-muted);font-size:11px;line-height:1.7}.disclaimer-text strong[data-v-5843a342]{color:var(--text-secondary)}.loading-dot[data-v-5843a342]{background:var(--color-primary);border-radius:50%;width:6px;height:6px;animation:1s infinite pulse-5843a342}@keyframes pulse-5843a342{0%,to{opacity:1}50%{opacity:.3}}.font-mono[data-v-5843a342]{font-family:var(--font-mono,"JetBrains Mono", monospace)}.auth-overlay[data-v-71d53fea]{z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-modal[data-v-71d53fea]{width:320px;max-width:calc(100vw - 2 * var(--space-4));background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-6) var(--space-5) var(--space-5);position:relative}.auth-close[data-v-71d53fea]{top:var(--space-3);right:var(--space-3);color:var(--text-muted);cursor:pointer;padding:var(--space-1);background:0 0;border:none;font-size:16px;line-height:1;position:absolute}.auth-close[data-v-71d53fea]:hover{color:var(--text-primary)}.auth-title[data-v-71d53fea]{margin:0 0 var(--space-2);color:var(--text-primary);font-size:18px}.auth-hint[data-v-71d53fea]{margin:0 0 var(--space-4);color:var(--text-secondary);font-size:12.5px}.auth-form[data-v-71d53fea]{gap:var(--space-3);flex-direction:column;display:flex}.auth-field[data-v-71d53fea]{gap:var(--space-1);color:var(--text-secondary);flex-direction:column;font-size:12.5px;display:flex}.auth-field input[data-v-71d53fea]{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);transition:border-color var(--transition-fast);outline:none;padding:8px 10px;font-size:13.5px}.auth-field input[data-v-71d53fea]:focus{border-color:var(--border-primary)}.password-input-wrap[data-v-71d53fea]{display:flex;position:relative}.password-input-wrap input[data-v-71d53fea]{width:100%;padding-right:34px!important}.password-toggle-btn[data-v-71d53fea]{width:30px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:none;justify-content:center;align-items:center;font-size:14px;line-height:1;display:flex;position:absolute;top:0;bottom:0;right:0}.password-toggle-btn[data-v-71d53fea]:hover{color:var(--text-secondary)}.remember-field[data-v-71d53fea]{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:12.5px;display:flex}.auth-error[data-v-71d53fea]{color:var(--color-bear);margin:0;font-size:12.5px}.auth-submit[data-v-71d53fea]{margin-top:var(--space-1);background:var(--color-primary);color:var(--text-inverse);border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--transition-fast);border:none;padding:9px;font-size:13.5px;font-weight:600}.auth-submit[data-v-71d53fea]:disabled{opacity:.6;cursor:not-allowed}.auth-submit[data-v-71d53fea]:not(:disabled):hover{opacity:.9}.auth-switch[data-v-71d53fea]{width:100%;margin-top:var(--space-4);color:var(--text-secondary);cursor:pointer;text-align:center;background:0 0;border:none;font-size:12.5px;display:block}.auth-switch[data-v-71d53fea]:hover{color:var(--color-primary)}.admin-panel[data-v-72e8413e]{padding:var(--space-6);max-width:1100px;margin:0 auto}.admin-title[data-v-72e8413e]{margin:0 0 var(--space-5);color:var(--text-primary);font-size:20px}.admin-error[data-v-72e8413e]{color:var(--color-bear);background:var(--color-bear-dim);border-radius:var(--radius-sm);padding:var(--space-3);border:1px solid #ff4d6a4d;font-size:13px}.admin-loading[data-v-72e8413e]{color:var(--text-secondary)}.admin-section[data-v-72e8413e]{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-5)}.admin-section-title[data-v-72e8413e]{margin:0 0 var(--space-2);color:var(--text-primary);font-size:15px}.admin-hint[data-v-72e8413e]{margin:0 0 var(--space-4);color:var(--text-secondary);font-size:12.5px}.tab-checkboxes[data-v-72e8413e]{gap:var(--space-4);flex-wrap:wrap;display:flex}.create-form[data-v-72e8413e]{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.inline-input[data-v-72e8413e]{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);outline:none;padding:7px 10px;font-size:13px}.inline-input[data-v-72e8413e]:focus{border-color:var(--color-primary)}.inline-input-sm[data-v-72e8413e]{width:140px;padding:4px 8px;font-size:12px}.tab-checkbox[data-v-72e8413e]{color:var(--text-primary);cursor:pointer;align-items:center;gap:6px;font-size:13.5px;display:flex}.table-wrapper[data-v-72e8413e]{overflow-x:auto}.users-table[data-v-72e8413e]{border-collapse:collapse;width:100%;font-size:13px}.users-table th[data-v-72e8413e]{text-align:center;padding:var(--space-2) var(--space-3);color:var(--text-secondary);border-bottom:1px solid var(--border-default);white-space:nowrap;font-weight:500}.users-table td[data-v-72e8413e]{text-align:center;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.col-email[data-v-72e8413e],.col-date[data-v-72e8413e]{text-align:left;white-space:nowrap}.col-date[data-v-72e8413e]{color:var(--text-secondary);font-size:12px}.reset-btn[data-v-72e8413e]{border:1px solid var(--border-default);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;padding:4px 10px;font-size:11.5px}.reset-btn[data-v-72e8413e]:hover{border-color:var(--color-primary);color:var(--color-primary)}.following-default[data-v-72e8413e]{color:var(--text-muted);white-space:nowrap;font-size:11.5px}.disabled-tag[data-v-72e8413e]{color:var(--color-bear);white-space:nowrap;margin-left:6px;font-size:11px;display:inline-block}.col-actions[data-v-72e8413e]{white-space:nowrap}.action-btn[data-v-72e8413e]{border:1px solid var(--border-default);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;margin:0 2px;padding:4px 10px;font-size:11.5px}.action-btn[data-v-72e8413e]:hover{border-color:var(--color-primary);color:var(--color-primary)}.action-btn[data-v-72e8413e]:disabled{opacity:.6;cursor:not-allowed}.action-btn.save-btn[data-v-72e8413e]{border-color:var(--color-primary);color:var(--color-primary)}.action-btn.delete-btn[data-v-72e8413e]{color:var(--color-bear);border-color:#ff4d6a66}.action-btn.delete-btn[data-v-72e8413e]:hover{background:var(--color-bear-dim)}.app-header[data-v-fae28904]{height:var(--header-height);padding:0 var(--space-5);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);align-items:center;gap:var(--space-5);z-index:100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0d1421f2;flex-shrink:0;display:flex}.header-left[data-v-fae28904]{flex-shrink:0}.logo[data-v-fae28904]{align-items:center;gap:var(--space-2);display:flex}.logo-icon[data-v-fae28904]{filter:drop-shadow(0 0 8px #00d4ff80);font-size:22px}.logo-text[data-v-fae28904]{background:linear-gradient(135deg, var(--color-primary), #7c3aed);-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;background-clip:text;font-size:18px;font-weight:800}.logo-badge[data-v-fae28904]{letter-spacing:.08em;color:var(--color-primary);background:var(--color-primary-dim);border-radius:var(--radius-full);border:1px solid #00d4ff4d;align-self:flex-start;margin-top:2px;padding:1px 6px;font-size:9px;font-weight:700}.header-center[data-v-fae28904]{flex:1;justify-content:center;display:flex}.market-nav[data-v-fae28904]{gap:var(--space-1);background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);padding:4px;display:flex}.market-tab[data-v-fae28904]{align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:13px;font-weight:500;font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none;padding:6px 18px;display:flex}.market-tab[data-v-fae28904]:hover{color:var(--text-primary);background:var(--bg-hover)}.market-tab.active[data-v-fae28904]{background:var(--bg-active);color:var(--color-primary);box-shadow:0 0 12px #00d4ff1f}.market-icon[data-v-fae28904]{font-size:15px}.header-right[data-v-fae28904]{align-items:center;gap:var(--space-4);flex-shrink:0;display:flex}.search-wrapper[data-v-fae28904]{align-items:center;display:flex;position:relative}.search-icon[data-v-fae28904]{pointer-events:none;font-size:13px;position:absolute;left:10px}.search-input[data-v-fae28904]{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);color:var(--text-primary);font-family:var(--font-sans);width:220px;transition:all var(--transition-fast);outline:none;padding:7px 36px 7px 32px;font-size:13px}.search-input[data-v-fae28904]::placeholder{color:var(--text-muted)}.search-input[data-v-fae28904]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-dim);width:260px}.search-kbd[data-v-fae28904]{color:var(--text-muted);background:var(--bg-hover);border:1px solid var(--border-default);font-size:10px;font-family:var(--font-sans);border-radius:4px;padding:1px 5px;position:absolute;right:10px}.search-clear[data-v-fae28904]{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:2px 4px;font-size:12px;position:absolute;right:10px}.search-clear[data-v-fae28904]:hover{color:var(--text-primary);background:var(--bg-hover)}.sync-status[data-v-fae28904]{border-radius:var(--radius-full);color:#38bdf8;letter-spacing:.02em;white-space:nowrap;background:#00d4ff14;border:1px solid #00d4ff40;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:500;display:flex}.sync-dot[data-v-fae28904]{background:#38bdf8;border-radius:50%;width:6px;height:6px;animation:2s infinite pulse-fae28904;box-shadow:0 0 6px #38bdf8}.header-time[data-v-fae28904]{font-family:var(--font-mono);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.time-dot[data-v-fae28904]{border-radius:50%;flex-shrink:0;width:7px;height:7px}.time-dot.green[data-v-fae28904]{background:var(--color-bull);box-shadow:0 0 6px var(--color-bull);animation:2s infinite pulse-fae28904}.time-dot.red[data-v-fae28904]{background:var(--text-muted)}.auth-area[data-v-fae28904]{align-items:center;display:flex}.auth-btn[data-v-fae28904]{background:var(--color-primary-dim);color:var(--color-primary);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);border:1px solid #00d4ff4d;padding:5px 14px;font-size:12.5px;font-weight:600}.auth-btn[data-v-fae28904]:hover{background:var(--color-primary-glow)}.user-chip[data-v-fae28904]{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-full);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;padding:4px 6px 4px 10px;font-size:12px;display:flex}.user-icon[data-v-fae28904]{font-size:12px}.user-email[data-v-fae28904]{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.logout-btn[data-v-fae28904]{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-full);transition:all var(--transition-fast);background:0 0;border:none;padding:3px 8px;font-size:11px}.logout-btn[data-v-fae28904]:hover{color:var(--color-bear);background:var(--color-bear-dim)}@keyframes pulse-fae28904{0%,to{opacity:1}50%{opacity:.4}}.app-main[data-v-fae28904]{flex:1;display:flex;overflow:hidden}.sidebar[data-v-fae28904]{width:var(--sidebar-width);background:var(--bg-surface);border-right:1px solid var(--border-subtle);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.main-panel[data-v-fae28904]{background:var(--bg-base);flex:1;overflow:auto}.main-panel.full-width[data-v-fae28904]{width:100%}.watchlist-count[data-v-fae28904]{color:#0a0f1a;background:#f59e0b;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:4px;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.watchlist-empty-view[data-v-fae28904]{justify-content:center;align-items:center;gap:var(--space-4);height:100%;min-height:400px;padding:var(--space-8);text-align:center;flex-direction:column;display:flex}.watchlist-empty-icon[data-v-fae28904]{font-size:56px;animation:3s ease-in-out infinite float-fae28904}@keyframes float-fae28904{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.watchlist-empty-title[data-v-fae28904]{font-size:var(--text-xl);color:var(--text-base);margin:0;font-weight:700}.watchlist-empty-desc[data-v-fae28904]{font-size:var(--text-sm);color:var(--text-muted);margin:0;line-height:1.8}.star-inline[data-v-fae28904]{color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:4px;padding:1px 8px;font-weight:600}.watchlist-empty-hints[data-v-fae28904]{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.hint-chip[data-v-fae28904]{border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);padding:8px 18px;font-weight:500}.hint-chip[data-v-fae28904]:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-dim)}.sync-status[data-v-fae28904]{border-radius:var(--radius-full);border:1px solid var(--border-subtle);font-size:var(--text-xs);color:var(--text-secondary);transition:all var(--transition-fast);background:#0d142199;align-items:center;gap:6px;padding:4px 12px;display:inline-flex}.sync-status.clickable[data-v-fae28904]{cursor:pointer}.sync-status.clickable[data-v-fae28904]:hover{color:#38bdf8;background:#38bdf826;border-color:#38bdf866;transform:translateY(-1px)}.sync-status.syncing[data-v-fae28904]{color:#38bdf8;background:#38bdf833;border-color:#38bdf8}
