@import "https://fonts.googleapis.com/css2?family=Inter+Tight:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&family=Noto+Sans+TC:wght@400;500;600;700&display=swap";:root{--bg:#090b0f;--bg-soft:#0d1016;--panel:#121722;--panel-hi:#171d29;--panel-top:#202838;--surface-1:var(--panel);--surface-2:var(--panel-hi);--surface-3:var(--panel-top);--line:#e6ecff13;--line-soft:#e6ecff0b;--line-strong:#e6ecff24;--text:#edf0f6;--text-hi:#fff;--text-dim:#edf0f6ad;--text-mute:#edf0f670;--text-sub:#edf0f647;--up:#2fd06f;--up-soft:#2fd06f21;--down:#f25f5c;--down-soft:#f25f5c21;--ai:#f5a524;--ai-soft:#f5a52426;--ai-muted:#f5a52414;--info:#45b7ff;--info-soft:#45b7ff21;--warn:#f59e0b;--warn-soft:#f59e0b24;--cat-a:#2fd06f;--cat-a-soft:#2fd06f1f;--cat-b:#45b7ff;--cat-b-soft:#45b7ff1f;--cat-bg:#a78bfa;--cat-bg-soft:#a78bfa1f;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-sans:"Inter Tight", "Inter", "Noto Sans TC", system-ui, -apple-system, sans-serif;--shadow-panel:0 18px 48px #00000047;--r-sm:4px;--r-md:6px;--r-lg:8px;--r-xl:10px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:radial-gradient(circle at 84% 4%, #f5a52413, transparent 26rem), radial-gradient(circle at 5% 0%, #45b7ff0e, transparent 22rem), var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-size:14px;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}::-webkit-scrollbar-track{background:0 0}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:0}.up{color:var(--up)}.down{color:var(--down)}.neutral-color{color:var(--text-mute)}button,input,select,textarea{font-family:var(--font-sans)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #f5a5248c}.spinner{border:2px solid var(--line-strong);border-top-color:var(--ai);border-radius:50%;width:30px;height:30px;margin:0 auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading{text-align:center;color:var(--text-mute);flex-direction:column;align-items:center;gap:14px;padding:48px 20px;display:flex}.error-msg{background:var(--down-soft);border-radius:var(--r-lg);color:var(--down);border:1px solid #ef44444d;padding:12px 16px;font-size:13px}.state-block{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);min-height:128px;color:var(--text-dim);justify-content:center;align-items:center;gap:14px;padding:24px 20px;display:flex;box-shadow:inset 0 1px #ffffff06}.state-block-compact{justify-content:flex-start;min-height:0;padding:10px 12px}.state-block-inline{width:auto;min-height:0;display:inline-flex}.state-block-mark{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--bg-soft);width:34px;height:34px;color:var(--text-mute);font-family:var(--font-mono);flex:0 0 34px;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:inline-flex}.state-block-title{color:var(--text);font-size:13px;font-weight:800}.state-block-message{max-width:620px;color:var(--text-mute);margin-top:2px;font-size:12px;line-height:1.55}.state-block-action{margin-top:10px}.state-block-page-message{margin-bottom:12px}.state-block-up .state-block-mark{color:var(--up);background:var(--up-soft);border-color:#2fd06f47}.state-block-info .state-block-mark{color:var(--info);background:var(--info-soft);border-color:#45b7ff47}.state-block-warn .state-block-mark{color:var(--warn);background:var(--warn-soft);border-color:#f59e0b47}.state-block-down .state-block-mark{color:var(--down);background:var(--down-soft);border-color:#f25f5c47}.state-block-spinner{border:2px solid #45b7ff33;border-top-color:var(--info);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.public-legal-shell{min-height:100vh;color:var(--text);background:linear-gradient(#ffffff06 1px,#0000 1px) 0 0/76px 76px,linear-gradient(90deg,#ffffff06 1px,#0000 1px) 0 0/76px 76px,radial-gradient(circle at 82% 10%,#f5a52414,#0000 24rem),radial-gradient(circle at 12% 18%,#45b7ff0e,#0000 23rem),#080a0d;padding:22px}.public-legal-topbar{justify-content:space-between;align-items:center;gap:18px;width:min(100%,980px);min-height:44px;margin:0 auto 22px;display:flex}.public-legal-brand{color:var(--text);align-items:center;gap:10px;font-weight:900;text-decoration:none;display:inline-flex}.public-legal-brand em{color:var(--ai);font-family:var(--font-mono);letter-spacing:.06em;border:1px solid #f5a5243d;border-radius:4px;padding:1px 5px;font-size:9px;font-style:normal}.public-legal-topbar nav{align-items:center;gap:8px;display:flex}.public-legal-topbar nav a{min-height:32px;color:var(--text-mute);font-family:var(--font-mono);background:#ffffff06;border:1px solid #ffffff14;border-radius:7px;align-items:center;padding:0 11px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.public-legal-topbar nav a[aria-current=page]{color:var(--ai);background:#f5a52417;border-color:#f5a52457}.public-legal-card{background:linear-gradient(#f5a52409,#0000 140px),#111419f7;border:1px solid #ffffff1c;border-radius:12px;width:min(100%,980px);margin:0 auto;overflow:hidden;box-shadow:0 28px 90px #0000007a,inset 0 1px #ffffff0a}.public-legal-title-row{border-bottom:1px solid #ffffff14;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px;padding:30px 30px 24px;display:grid}.public-legal-kicker{color:var(--ai);letter-spacing:.08em;margin-bottom:8px;font-size:11px;font-weight:900}.public-legal-title-row h1{color:var(--text-hi);letter-spacing:0;font-size:clamp(32px,6vw,56px);line-height:.96}.public-legal-title-row p:not(.public-legal-kicker){max-width:620px;color:var(--text-dim);margin-top:13px;font-size:15px}.public-legal-meta{text-align:right;background:#ffffff07;border:1px solid #ffffff14;border-radius:8px;min-width:124px;padding:11px 12px}.public-legal-meta span,.public-legal-meta strong{display:block}.public-legal-meta span{color:var(--text-sub);letter-spacing:.12em;font-size:10px;font-weight:900}.public-legal-meta strong{color:var(--text);margin-top:3px;font-size:12px}.public-legal-summary{color:var(--text);background:#f5a52411;border:1px solid #f5a52438;border-radius:8px;gap:8px;margin:24px 30px 0;padding:14px 16px;font-size:13px;font-weight:700;line-height:1.65;display:grid}.public-legal-content{gap:24px;padding:8px 30px 30px;display:grid}.public-legal-section{color:var(--text-dim);font-size:13px;line-height:1.76}.public-legal-section p+p{margin-top:8px}.public-legal-section .login-info-list{gap:9px}.public-legal-footer{min-height:44px;color:var(--text-sub);letter-spacing:.06em;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:16px;padding:12px 30px;font-size:10.5px;display:flex}.card{background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);margin-bottom:12px;padding:16px}.card h3{color:var(--text-mute);letter-spacing:0;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:700}.macro-risk-body{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:12px;padding:14px 16px;display:grid}.macro-decision-card,.macro-next-card,.macro-focus-card,.macro-timeline-card,.macro-policy-strip{min-width:0}.macro-decision-card,.macro-risk-summary-card,.macro-action-card,.macro-next-card,.macro-focus-card,.macro-timeline-card,.macro-policy-strip{border:1px solid var(--line-soft);background:linear-gradient(180deg, #ffffff04, #fff0) var(--bg-soft);border-radius:10px}.macro-decision-card{background:linear-gradient(135deg, #f59e0b1a, #45b7ff06 48%, #ffffff03) var(--bg-soft);border-color:#f59e0b33;padding:15px 16px}.macro-risk-summary-card{background:linear-gradient(180deg, #f59e0b14, #f59e0b06) var(--bg-soft);border-color:#f59e0b2e;padding:13px 14px}.macro-decision-head,.macro-risk-summary-head,.macro-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.macro-risk-kicker{color:var(--text-mute);letter-spacing:0;font-size:9px;font-weight:800}.macro-decision-title{color:var(--text-hi);margin-top:4px;font-size:20px;font-weight:900;line-height:1.18}.macro-risk-title,.macro-card-title{color:var(--text);margin-top:3px;font-size:14px;font-weight:900;line-height:1.25}.macro-risk-desc{color:var(--text-dim);margin-top:10px;font-size:12px;line-height:1.65}.macro-decision-copy{max-width:760px;color:var(--text-dim);margin-top:10px;font-size:13px;line-height:1.65}.macro-decision-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10px;margin-top:14px;display:grid}.macro-key-event-card,.macro-action-card-primary{border:1px solid var(--line-soft);background:#090c126b;border-radius:9px;min-width:0;padding:12px 13px}.macro-key-event-date{color:var(--ai);font:900 18px/1 var(--font-mono);margin-top:8px}.macro-key-event-title{color:var(--text);margin-top:8px;font-size:14px;font-weight:900;line-height:1.25}.macro-key-event-desc{color:var(--text-mute);margin-top:6px;font-size:11px;line-height:1.55}.macro-impact-label{color:var(--text-mute);letter-spacing:0;margin-top:10px;font-size:9px;font-weight:800}.macro-risk-tags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.macro-risk-tags span{color:var(--warn);font:700 10px/1.2 var(--font-mono);background:#f59e0b1a;border:1px solid #f59e0b2e;border-radius:999px;padding:3px 7px}.macro-action-card{padding:12px 14px}.macro-action-copy{color:var(--text);margin-top:6px;font-size:12px;line-height:1.65}.macro-focus-card,.macro-next-card,.macro-timeline-card,.macro-policy-strip{padding:12px 14px}.macro-count-pill{background:var(--info-soft);color:var(--info);font:800 10px/1 var(--font-mono);border:1px solid #45b7ff38;border-radius:999px;flex:none;padding:4px 8px}.macro-focus-event{border-top:1px solid var(--line-soft);grid-template-columns:56px minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px 0;display:grid}.macro-focus-event:first-of-type,.macro-event-row:first-of-type{border-top:0}.macro-focus-date,.macro-event-date{color:var(--text-mute);font:800 11px/1.4 var(--font-mono)}.macro-focus-title,.macro-event-title{color:var(--text);font-size:12px;font-weight:900;line-height:1.3}.macro-focus-desc,.macro-event-desc{color:var(--text-dim);margin-top:3px;font-size:11px;line-height:1.55}.macro-focus-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.macro-timeline-card,.macro-policy-strip{grid-column:1/-1}.macro-event-row{border-top:1px solid var(--line-soft);grid-template-columns:54px 58px minmax(0,1fr);align-items:start;gap:10px;padding:10px 0;display:grid}.macro-link-button,.macro-more-row{background:var(--ai-soft);color:var(--ai);cursor:pointer;border:1px solid #f5a52447;border-radius:6px;font-size:11px;font-weight:800}.macro-link-button{padding:5px 10px}.macro-more-row{width:100%;margin-top:4px;padding:9px 10px}.macro-empty-note{color:var(--text-mute);padding:12px 0 2px;font-size:12px}.macro-policy-strip{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.macro-policy-item{min-width:0;color:var(--text-dim);align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex}.search-box{border-bottom:1px solid var(--line);padding:14px 20px}.search-row{gap:8px;display:flex}.search-row input{background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:var(--r-md);text-transform:uppercase;font-size:13px;font-family:var(--font-mono);outline:none;flex:1;padding:10px 14px;transition:border-color .15s}.search-row input:focus{border-color:#f5a524a6}.search-row input::placeholder{color:var(--text-mute);font-family:var(--font-sans);text-transform:none}.search-row button{background:var(--ai);color:#000;border-radius:var(--r-md);cursor:pointer;border:none;padding:10px 20px;font-size:13px;font-weight:700}.quick-tags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.tag{background:var(--panel);border:1px solid var(--line);color:var(--text-dim);cursor:pointer;font-size:11px;font-family:var(--font-mono);border-radius:20px;padding:3px 10px;transition:all .15s}.tag:hover{color:var(--ai);border-color:#f5a5248c}.analysis-tabs{background:var(--bg);border-bottom:1px solid var(--line);justify-content:space-between;align-items:stretch;padding:0 20px;display:flex}.analysis-tabs-left{display:flex}.analysis-tab{color:var(--text-dim);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font-sans);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 18px;transition:color .15s}.analysis-tab:hover{color:var(--text)}.analysis-tab.active{color:var(--ai);border-bottom-color:var(--ai)}.analysis-tabs-stock{align-items:center;gap:10px;padding:0 4px;display:flex}.tabs-symbol{color:var(--text-mute);font-size:12px;font-weight:700;font-family:var(--font-mono)}.tabs-price{color:var(--text);font-size:16px;font-weight:700;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.price-card .symbol{font-size:20px;font-weight:700;font-family:var(--font-mono)}.price-card .stock-name{color:var(--text-mute);margin-top:2px;margin-bottom:12px;font-size:12px}.price-row{align-items:baseline;gap:10px;display:flex}.price-row .price{font-size:32px;font-weight:700;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.prediction-card{border-radius:var(--r-lg);border:1px solid;margin-bottom:12px;padding:16px}.prediction-card.up{background:#22c55e14;border-color:#22c55e4d}.prediction-card.down{background:#ef444414;border-color:#ef44444d}.prediction-card.neutral{background:var(--panel);border-color:var(--line)}.pred-title{color:var(--text-mute);letter-spacing:.1em;margin-bottom:6px;font-size:11px;font-weight:600}.pred-signal{margin-bottom:6px;font-size:24px;font-weight:700}.pred-row{justify-content:space-between;margin-top:10px;display:flex}.pred-item label{color:var(--text-mute);font-size:11px;display:block}.pred-item span{font-size:15px;font-weight:600;font-family:var(--font-mono)}.confidence-bar{background:var(--panel-top);border-radius:4px;height:5px;margin-top:10px;overflow:hidden}.confidence-fill{border-radius:4px;height:100%;transition:width .6s}.ind-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ind-item{background:var(--panel-hi);border-radius:var(--r-md);border:1px solid var(--line-soft);padding:10px}.ind-item label{color:var(--text-mute);letter-spacing:.1em;margin-bottom:4px;font-size:10px;font-weight:600;display:block}.ind-item span{font-size:14px;font-weight:600;font-family:var(--font-mono)}.chart-wrap{height:220px;position:relative}.period-tabs{gap:4px;margin-bottom:12px;display:flex}.period-tab{color:var(--text-mute);border-radius:var(--r-sm);cursor:pointer;font-size:11px;font-family:var(--font-mono);background:0 0;border:1px solid #0000;padding:4px 10px;font-weight:500;transition:all .15s}.period-tab:hover{color:var(--text);border-color:var(--line)}.period-tab.active{background:var(--panel-top);color:var(--text);border-color:var(--line-strong)}.stat-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px;display:grid}.stat-item{background:var(--panel-hi);border-radius:var(--r-md);text-align:center;border:1px solid var(--line-soft);padding:10px}.stat-item label{color:var(--text-mute);letter-spacing:.1em;margin-bottom:4px;font-size:10px;font-weight:600;display:block}.stat-item span{font-size:18px;font-weight:700;font-family:var(--font-mono)}.trade-table{border-collapse:collapse;width:100%;font-size:12px}.trade-table th{color:var(--text-mute);text-align:left;border-bottom:1px solid var(--line);letter-spacing:.1em;padding:6px;font-size:10px;font-weight:700}.trade-table td{border-bottom:1px solid var(--line-soft);font-family:var(--font-mono);padding:7px 6px}.trade-correct{color:var(--up)}.trade-wrong{color:var(--down)}.trade-skip{color:var(--text-mute)}.conf-filter{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:12px 16px;display:flex}.conf-filter label{color:var(--text-mute);white-space:nowrap;font-size:12px}.conf-filter input[type=range]{min-width:80px;accent-color:var(--ai);flex:1}.conf-filter span{color:var(--ai);text-align:right;min-width:40px;font-size:14px;font-weight:600;font-family:var(--font-mono)}.entry-score-wrap{text-align:center;margin-bottom:16px}.entry-score-num{font-size:52px;font-weight:800;line-height:1;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.entry-score-label{color:var(--text-dim);margin-top:6px;font-size:13px}.entry-bar{background:var(--panel-top);border-radius:6px;height:8px;margin:10px 0;overflow:hidden}.entry-bar-fill{border-radius:6px;height:100%;transition:width .8s}.score-breakdown{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.score-item{background:var(--panel-hi);border-radius:var(--r-md);border:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.score-item label{color:var(--text-mute);font-size:11px}.score-item span{color:var(--info);font-size:14px;font-weight:700;font-family:var(--font-mono)}.news-item{border-bottom:1px solid var(--line-soft);padding:10px 0}.news-item:last-child{border-bottom:none}.news-title{color:var(--text);margin-bottom:4px;font-size:13px;line-height:1.4;text-decoration:none;display:block}.news-title:hover{color:var(--info)}.news-meta{color:var(--text-mute);gap:10px;font-size:11px;display:flex}.sentiment-bar{align-items:center;gap:8px;margin-bottom:12px;font-size:12px;display:flex}.sent-dot{border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.watchlist-section{padding:16px 20px}.watchlist-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.watchlist-header h2{font-size:14px;font-weight:700}.watchlist-add{gap:6px;display:flex}.watchlist-add input{background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:var(--r-md);text-transform:uppercase;width:110px;font-size:13px;font-family:var(--font-mono);outline:none;padding:7px 10px;transition:border-color .15s}.watchlist-add input:focus{border-color:var(--ai)}.watchlist-add button{background:var(--up);color:#000;border-radius:var(--r-md);cursor:pointer;border:none;padding:7px 12px;font-size:13px;font-weight:700}.watchlist-empty{text-align:center;color:var(--text-mute);padding:28px;font-size:13px}.wl-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);margin-bottom:8px;padding:14px 16px}.wl-top{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.wl-symbol{font-size:16px;font-weight:700;font-family:var(--font-mono)}.wl-price .price{font-size:16px;font-weight:700;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.wl-price .change{font-size:12px;font-family:var(--font-mono)}.wl-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px;display:grid}.wl-item{background:var(--panel-hi);border-radius:var(--r-md);border:1px solid var(--line-soft);padding:7px 10px}.wl-item label{color:var(--text-mute);letter-spacing:.08em;margin-bottom:2px;font-size:10px;font-weight:600;display:block}.wl-item span{font-size:12px;font-weight:600;font-family:var(--font-mono)}.wl-actions{gap:6px;display:flex}.wl-btn{border-radius:var(--r-md);cursor:pointer;border:none;flex:1;padding:6px;font-size:12px;font-weight:600}.wl-btn-detail{background:var(--info-soft);color:var(--info);border:1px solid #38bdf833}.wl-btn-remove{background:var(--down-soft);color:var(--down);border:1px solid #ef444433}.action-btn{background:var(--panel);border:1px solid var(--line);width:100%;color:var(--text-dim);border-radius:var(--r-md);cursor:pointer;font-size:13px;font-family:var(--font-sans);margin-bottom:8px;padding:10px;transition:all .15s}.action-btn:hover{border-color:var(--ai);color:var(--ai)}.action-btn:disabled{opacity:.45;cursor:not-allowed}.action-btn.primary{background:var(--ai-soft);color:var(--ai);border-color:#f5a52459;font-weight:700}.content{padding:16px 20px}.dashboard-page{width:100%;min-width:0;max-width:100%;overflow-x:hidden}.dashboard-layout-shell{flex-direction:column;gap:16px;width:100%;min-width:0;max-width:1440px;margin:0 auto;padding:22px 24px 40px;display:flex;overflow-x:hidden}.dashboard-grid{gap:16px;width:100%;min-width:0;display:grid}.dashboard-grid>*{min-width:0}.dashboard-grid-hero{grid-template-columns:minmax(0,1.35fr) minmax(220px,240px) minmax(0,1.2fr)}.dashboard-grid-triple{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1.2fr)}.dashboard-grid-split{grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);align-items:start}.dashboard-page [style*="background: var(--panel)"]{background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel)!important}.dashboard-page [style*="border: 1px solid var(--line)"]{box-shadow:inset 0 1px #ffffff06}.dashboard-page button{min-height:28px}.dashboard-page button:hover{filter:brightness(1.08)}.research-page{width:100%}.research-market-strip,.research-search-section,.research-stock-header,.research-content{max-width:1440px;margin-left:auto;margin-right:auto}.research-market-strip,.research-search-section,.research-stock-header{box-shadow:inset 0 1px #ffffff06;background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel)!important}.research-stock-header{border-radius:var(--r-lg);margin-top:14px;margin-bottom:14px;border:1px solid var(--line)!important}.research-search-section{background:0 0!important}.research-search-input{box-shadow:inset 0 1px #ffffff06}.research-quick-tags button{min-height:28px}.research-quick-tags button:hover{color:var(--ai)!important;border-color:#f5a52473!important}.research-detail{flex-direction:column;gap:12px;width:100%;min-width:0;padding-bottom:24px;display:flex}.research-chart-grid{grid-template-columns:minmax(0,1fr) minmax(300px,320px);align-items:start;gap:12px;display:grid}.research-chart-panel,.ai-decision-card,.technical-indicators-panel{background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);min-width:0;box-shadow:inset 0 1px #ffffff06}.research-chart-panel{padding:14px 16px;overflow:hidden}.stock-chart-header{justify-content:space-between;align-items:center;gap:10px;min-width:0;margin-bottom:10px;display:flex}.stock-chart-legend-row{align-items:center;gap:10px;min-width:0;display:flex}.stock-chart-title{color:var(--text-mute);letter-spacing:0;white-space:nowrap;flex:none;font-size:10px;font-weight:700}.stock-chart-legend{flex-wrap:wrap;align-items:center;gap:6px 8px;min-width:0;display:flex}.stock-chart-legend-item{color:var(--text-mute);font-family:var(--font-mono);white-space:nowrap;align-items:center;gap:4px;font-size:9px;font-weight:600;line-height:1;display:inline-flex}.stock-chart-legend-line{border-radius:1px;width:16px;height:2px}.stock-chart-periods{border:1px solid var(--line);background:var(--bg);border-radius:6px;flex:none;gap:2px;padding:3px;display:inline-flex}.stock-chart-main-canvas{min-width:0;height:238px}.stock-chart-indicator{border-top:1px solid var(--line-soft);margin-top:8px;padding-top:8px}.stock-chart-indicator-labels{min-width:0;color:var(--text-mute);letter-spacing:0;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-bottom:4px;font-size:8px;font-weight:700;line-height:1.2;display:flex}.stock-chart-indicator-labels span{white-space:nowrap}.stock-chart-indicator-canvas{min-width:0;height:62px}.stock-chart-main-canvas canvas,.stock-chart-indicator-canvas canvas{display:block;width:100%!important;height:100%!important}.stock-chart-period-button{min-width:30px;min-height:24px;color:var(--text-mute);cursor:pointer;font-family:var(--font-mono);background:0 0;border:none;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:500;line-height:1}.stock-chart-period-button.is-active{background:var(--panel-top);color:var(--text);font-weight:700}.ai-decision-card{border-top-style:solid;border-top-width:3px;flex-direction:column;gap:0;padding:15px;display:flex}.ai-decision-title{color:var(--text-mute);letter-spacing:0;margin-bottom:10px;font-size:10px;font-weight:700}.ai-decision-header{flex-direction:column;align-items:center;margin-bottom:12px;display:flex}.ai-decision-ring-wrap{line-height:0}.ai-decision-signal{letter-spacing:0;margin-top:7px;font-size:18px;font-weight:800;line-height:1.1}.ai-decision-confidence{color:var(--text-mute);margin-top:3px;font-size:10px}.ai-decision-info-rows{border-top:1px solid var(--line-soft);flex-direction:column;gap:0;padding-top:9px;display:flex}.ai-decision-info-row{justify-content:space-between;align-items:center;gap:12px;padding:5px 0;display:flex}.ai-decision-info-label,.ai-decision-range-label{color:var(--text-mute);font-size:10px}.ai-decision-info-value{color:var(--text);font-family:var(--font-mono);text-align:right;white-space:nowrap;font-size:11px;font-weight:700}.short-term-model-note{border-top:1px solid var(--line-soft);color:var(--text-mute);margin-top:8px;padding-top:8px;font-size:10px;line-height:1.5}.ai-decision-price-range{border-top:1px solid var(--line-soft);margin-top:8px;padding-top:9px}.ai-decision-price-title{color:var(--text-mute);letter-spacing:0;margin-bottom:7px;font-size:9px;font-weight:700}.ai-decision-range-row{background:var(--bg-soft);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:9px 11px;display:flex}.ai-decision-range-row+.ai-decision-range-row{margin-top:6px}.ai-decision-range-label{flex:none;font-weight:700}.ai-decision-range-value{text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px;font-weight:800;overflow:hidden}.ai-decision-cta{background:var(--ai);color:#000;cursor:pointer;width:100%;min-height:36px;font-family:var(--font-sans);letter-spacing:0;border:none;border-radius:6px;margin-top:14px;padding:9px 10px;font-size:12px;font-weight:700;line-height:1.15}.research-summary-strip{background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);border:1px solid var(--line);border-left:3px solid var(--text-mute);border-radius:var(--r-lg);grid-template-columns:220px minmax(0,1fr);align-items:stretch;gap:12px;padding:14px 16px;display:grid;box-shadow:inset 0 1px #ffffff06}.research-summary-strip.up{border-left-color:var(--up)}.research-summary-strip.warn{border-left-color:var(--warn)}.research-summary-strip.down{border-left-color:var(--down)}.research-summary-primary{border-right:1px solid var(--line-soft);flex-direction:column;justify-content:center;gap:2px;min-width:0;padding-right:12px;display:flex}.research-summary-eyebrow,.research-summary-label,.longterm-section-label{color:var(--text-mute);letter-spacing:0;font-size:10px;font-weight:700}.research-summary-signal{font-size:24px;font-weight:800;line-height:1.1}.research-summary-caption,.research-summary-sub{color:var(--text-mute);font-size:11px}.research-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.research-summary-cell{background:var(--bg-soft);border:1px solid var(--line-soft);border-radius:var(--r-md);min-width:0;padding:10px 12px;position:relative;overflow:hidden}.research-summary-cell:before{content:"";background:var(--cell-accent,var(--line-soft));opacity:.72;height:2px;position:absolute;top:0;left:0;right:0}.research-summary-cell--price{--cell-accent:var(--text-mute)}.research-summary-cell--range{--cell-accent:var(--ai)}.research-summary-cell--trend{--cell-accent:var(--info)}.research-summary-cell--model{--cell-accent:var(--warn)}.research-summary-value{text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin-top:3px;font-size:14px;font-weight:800;overflow:hidden}.technical-indicators-panel{padding:14px}.technical-indicators-title{color:var(--text-mute);letter-spacing:0;margin-bottom:12px;font-size:10px;font-weight:700}.technical-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.technical-indicator-tile{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:6px;min-width:0;padding:9px 11px}.technical-indicator-head{justify-content:space-between;align-items:center;gap:6px;min-width:0;margin-bottom:4px;display:flex}.technical-indicator-label{min-width:0;color:var(--text-mute);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700;overflow:hidden}.technical-indicator-status{border:1px solid var(--line-soft);max-width:52px;color:var(--text-mute);letter-spacing:0;text-align:center;white-space:nowrap;background:#ffffff09;border-radius:999px;flex:none;padding:2px 5px;font-size:9px;font-weight:800;line-height:1}.technical-indicator-status--up{color:var(--up);background:#10b98114;border-color:#10b98147}.technical-indicator-status--down{color:var(--down);background:#ef444414;border-color:#ef444447}.technical-indicator-status--warn{color:var(--warn);background:#f5a52414;border-color:#f5a5244d}.technical-indicator-status--info{color:var(--info);background:#38bdf813;border-color:#38bdf840}.technical-indicator-status--neutral{border-color:var(--line-soft);color:var(--text-mute);background:#ffffff06}.technical-indicator-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700;overflow:hidden}.tracker-page{width:100%;max-width:1440px;margin:0 auto}.tracker-toolbar{background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:12px 14px;box-shadow:inset 0 1px #ffffff06}.tracker-table,.tracker-page [style*="background: var(--panel)"]{background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel)!important}.tracker-page [style*="border: 1px solid var(--line)"]{box-shadow:inset 0 1px #ffffff06}.tracker-page button:hover{filter:brightness(1.08)}.tracker-page table,.tracker-table{font-variant-numeric:tabular-nums}.backtest-history-page{max-width:1440px;margin:0 auto}.backtest-overview-card,.backtest-category-card,.backtest-history-card{box-shadow:inset 0 1px #ffffff06}.backtest-metric-grid{border-top:1px solid var(--line-soft);grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:16px;padding-top:14px;display:grid}.backtest-metric-card{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:9px;min-width:0;padding:12px 13px}.backtest-metric-label{color:var(--text-mute);letter-spacing:0;font-size:10px;font-weight:800}.backtest-metric-value{font-family:var(--font-mono);margin-top:7px;font-size:22px;font-weight:900;line-height:1}.backtest-metric-sub{color:var(--text-mute);margin-top:7px;font-size:10px;line-height:1.35}@media (width<=1100px){.dashboard-layout-shell{max-width:none}.dashboard-grid-hero,.dashboard-grid-triple,.dashboard-grid-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dashboard-grid-hero>:first-child,.dashboard-grid-split>:first-child{grid-column:1/-1}.research-chart-grid{grid-template-columns:minmax(0,1fr)!important}.ai-decision-card{width:100%}.technical-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.research-summary-strip{grid-template-columns:minmax(0,1fr)}.research-summary-primary{border-right:0;border-bottom:1px solid var(--line-soft);padding-bottom:10px;padding-right:0}.research-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tracker-toolbar{flex-wrap:wrap}}@media (width<=760px){.dashboard-layout-shell{gap:12px;padding:14px 12px 28px}.dashboard-grid-hero,.dashboard-grid-triple,.dashboard-grid-split{grid-template-columns:minmax(0,1fr);gap:12px}.dashboard-grid-hero>*,.dashboard-grid-split>:first-child{grid-column:auto}.dashboard-summary-stats,.dashboard-portfolio-stats,.dashboard-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dashboard-table-head{display:none!important}.dashboard-pick-row,.dashboard-watch-row,.dashboard-scan-row{gap:8px 10px;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;padding:12px 14px!important}.dashboard-scan-row{background:#ffffff04;border-radius:9px;margin:10px 12px;border:1px solid var(--line-soft)!important}.dashboard-pick-row>*,.dashboard-watch-row>*,.dashboard-scan-row>*{min-width:0}.dashboard-mobile-cell{align-items:center;gap:10px;padding:7px 0;text-align:right!important;justify-content:space-between!important;display:flex!important}.dashboard-mobile-cell:before{content:attr(data-label);color:var(--text-mute);font:700 10px/1 var(--font-sans);letter-spacing:0;white-space:nowrap;flex:none}.dashboard-symbol-cell,.dashboard-entry-cell,.dashboard-action-cell{grid-column:1/-1}.dashboard-symbol-cell{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:8px;padding:9px 10px}.dashboard-entry-cell{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:8px;flex-wrap:wrap;padding:8px 10px;text-align:left!important;justify-content:flex-start!important}.dashboard-entry-cell:before{width:100%;margin-bottom:2px}.dashboard-action-cell{border-top:1px solid var(--line-soft);padding-top:8px;justify-content:stretch!important;gap:8px!important}.dashboard-action-cell button{flex:1 1 0;min-height:32px}.dashboard-action-cell span{text-align:center;border:1px solid var(--line-soft);border-radius:7px;width:100%;padding:7px 0}.research-market-strip,.research-search-section,.research-content{padding-left:14px!important;padding-right:14px!important}.research-stock-header{margin-left:14px;margin-right:14px;align-items:flex-start!important}.research-stock-header>div{min-width:0}.research-search-section>div:first-child{flex-direction:column}.research-search-section>div:first-child>button{min-height:40px}.research-search-input{width:100%}.research-quick-tags{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px!important;display:grid!important}.research-quick-tags button{text-overflow:ellipsis;min-width:0;overflow:hidden;padding-left:8px!important;padding-right:8px!important}.technical-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.research-detail{gap:10px}.research-chart-grid{gap:10px!important}.research-summary-strip,.research-chart-panel,.ai-decision-card,.technical-indicators-panel{padding:10px}.research-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.research-summary-strip{gap:8px}.research-summary-primary{padding-bottom:8px}.research-summary-signal{font-size:21px}.research-summary-cell{padding:8px 9px}.research-summary-value,.technical-indicator-value{white-space:normal;overflow-wrap:anywhere}.stock-chart-header{flex-direction:column;align-items:stretch;gap:7px}.stock-chart-legend-row{flex-wrap:wrap;gap:6px 9px}.stock-chart-legend{gap:5px 7px}.stock-chart-periods{align-self:flex-end;margin-left:0}.stock-chart-period-button{min-width:29px;padding-left:7px;padding-right:7px}.stock-chart-main-canvas{height:220px}.stock-chart-indicator{margin-top:7px;padding-top:7px}.stock-chart-indicator-labels{gap:4px 8px;margin-bottom:5px}.stock-chart-indicator-canvas{height:68px}.ai-decision-card{padding-top:11px}.ai-decision-title{margin-bottom:8px}.ai-decision-header{margin-bottom:10px}.ai-decision-ring-wrap svg{width:96px;height:96px}.ai-decision-info-rows{padding-top:8px}.short-term-model-note{line-height:1.45}.ai-decision-range-row{padding:8px 10px}.technical-indicators-title{margin-bottom:9px}.technical-grid{gap:7px!important}.technical-indicator-tile{padding:8px 9px}.technical-indicator-head{flex-wrap:wrap;align-items:flex-start;gap:4px 6px}.technical-indicator-status{max-width:100%}.research-watchlist{padding:14px 0 22px!important}.research-watchlist-toolbar{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;gap:10px!important;display:grid!important}.research-watchlist-add{box-sizing:border-box;width:100%}.research-watchlist-add input{flex:auto;min-width:0;width:auto!important}.research-watchlist-add button{min-height:34px}.research-watchlist-card{box-shadow:none!important;background:0 0!important;border:0!important;overflow:visible!important}.research-watchlist-head{display:none!important}.research-watchlist-row{background:var(--panel);border-radius:10px;gap:8px 10px;margin-bottom:10px;box-shadow:inset 0 1px #ffffff06;border:1px solid var(--line)!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;min-width:0!important;padding:13px!important}.research-watchlist-row>*{min-width:0}.research-watchlist-cell{align-items:center;gap:10px;padding:7px 0;text-align:right!important;justify-content:space-between!important;display:flex!important}.research-watchlist-cell:before{content:attr(data-label);color:var(--text-mute);font:700 10px/1 var(--font-sans);letter-spacing:0;white-space:nowrap;flex:none}.research-watchlist-symbol,.research-watchlist-message,.research-watchlist-actions{grid-column:1/-1!important}.research-watchlist-symbol{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:8px;padding:9px 10px}.research-watchlist-actions{border-top:1px solid var(--line-soft);padding-top:8px;justify-content:stretch!important;gap:8px!important}.research-watchlist-actions button{flex:1 1 0;min-height:32px}.tracker-page{padding-left:12px!important;padding-right:12px!important}.tracker-stat-grid{grid-template-columns:minmax(0,1fr)!important}.tracker-toolbar{align-items:stretch!important}.tracker-toolbar>div{max-width:100%}.watchlist-page .tracker-toolbar{flex-direction:column}.watchlist-filter-tabs,.watchlist-add-control{width:100%}.watchlist-filter-tabs>button{flex:1 1 0;min-height:32px}.watchlist-add-control{box-sizing:border-box}.watchlist-add-control input{flex:auto;min-width:0;width:auto!important}.watchlist-add-control button{flex:none;min-height:32px}.watchlist-table-head{display:none!important}.watchlist-table-row{gap:8px 10px;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;min-width:0!important;padding:13px!important}.watchlist-cell{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:7px;align-items:center;gap:10px;min-width:0;padding:8px 10px;text-align:right!important;justify-content:space-between!important;display:flex!important}.watchlist-cell:before{content:attr(data-label);color:var(--text-mute);font:700 10px/1 var(--font-sans);letter-spacing:0;white-space:nowrap}.watchlist-symbol,.watchlist-market,.watchlist-actions,.watchlist-row-message{background:0 0;border:0;padding:0}.watchlist-symbol:before,.watchlist-market:before,.watchlist-actions:before,.watchlist-row-message:before{content:none}.watchlist-symbol{grid-column:1/2;align-items:flex-start;justify-content:flex-start!important;font-size:15px!important}.watchlist-market{grid-column:2/3;justify-content:flex-end!important}.watchlist-row-message{text-align:center!important;grid-column:1/-1!important;justify-content:center!important}.watchlist-actions{grid-column:1/-1;gap:8px!important}.watchlist-actions button{flex:1 1 0;min-height:34px}.watchlist-score-badge{width:100%}.macro-risk-body{grid-template-columns:minmax(0,1fr);padding:12px}.macro-decision-grid{grid-template-columns:minmax(0,1fr)}.macro-decision-title{font-size:18px}.macro-focus-event{grid-template-columns:48px minmax(0,1fr)}.macro-focus-event>span{grid-column:2/3;justify-self:start}.macro-event-row{grid-template-columns:48px minmax(0,1fr)}.macro-event-row>span{grid-column:2/3;justify-self:start}.macro-event-row>div:last-child{grid-column:1/-1}.macro-card-head,.macro-risk-summary-head,.macro-policy-strip{align-items:flex-start}.backtest-history-page{padding:14px 12px 24px!important}.backtest-summary-row,.backtest-summary-actions,.backtest-history-toolbar{align-items:stretch!important}.backtest-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.backtest-metric-card{padding:10px}.backtest-metric-value{font-size:19px}.backtest-summary-actions,.backtest-filter-group{width:100%}.backtest-summary-actions button,.backtest-filter-group button,.backtest-history-toolbar>button{flex:1 1 0;min-height:34px}.backtest-stat-grid{grid-template-columns:minmax(0,1fr)!important}.backtest-history-card{border-radius:10px!important}.backtest-records-table{overflow-x:visible!important}.backtest-records-head{display:none!important}.backtest-record-row{gap:8px 10px;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;min-width:0!important;padding:12px!important}.backtest-record-cell{text-align:right;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:7px 0;display:flex!important}.backtest-record-cell:before{content:attr(data-label);color:var(--text-mute);font:700 10px/1 var(--font-sans);letter-spacing:0;white-space:nowrap;flex:none}.backtest-record-symbol,.backtest-entry-cell,.backtest-status-cell{grid-column:1/-1}.backtest-record-symbol{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:8px;padding:9px 10px}.backtest-entry-cell{border:1px solid var(--line-soft);background:var(--bg-soft);text-align:left;border-radius:8px;flex-wrap:wrap;justify-content:flex-start;padding:8px 10px}.backtest-entry-cell:before{width:100%;margin-bottom:2px}.backtest-status-cell{justify-content:center;min-height:32px}}@media (width<=430px){.watchlist-table-row,.backtest-record-row{grid-template-columns:minmax(0,1fr)!important}}@media (width<=720px){.public-legal-shell{padding:14px}.public-legal-topbar{flex-direction:column;align-items:stretch;margin-bottom:14px}.public-legal-topbar nav{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.public-legal-topbar nav a{justify-content:center;padding:0 8px}.public-legal-title-row{grid-template-columns:minmax(0,1fr);padding:22px 18px 20px}.public-legal-title-row h1{font-size:34px;line-height:1}.public-legal-meta{text-align:left;width:100%}.public-legal-summary{margin:18px 18px 0}.public-legal-content{padding:4px 18px 22px}.public-legal-footer{flex-direction:column;align-items:flex-start;padding:12px 18px}}.login-shell{max-width:100vw;min-height:100vh;color:var(--text);background:linear-gradient(#ffffff06 1px,#0000 1px) 0 0/76px 76px,linear-gradient(90deg,#ffffff06 1px,#0000 1px) 0 0/76px 76px,radial-gradient(circle at 76% 42%,#f5a52417,#0000 23rem),radial-gradient(circle at 12% 48%,#2fd06f0b,#0000 24rem),#080a0d;overflow:hidden}.login-ticker{background:#050607;border-bottom:1px solid #ffffff14;height:34px;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.login-ticker-track{align-items:center;width:max-content;height:100%;animation:34s linear infinite loginTicker;display:flex}.login-ticker-item{min-width:190px;font-family:var(--font-mono);white-space:nowrap;border-right:1px solid #ffffff0d;align-items:center;gap:8px;padding:0 18px;font-size:11px;display:inline-flex}.login-ticker-symbol{color:var(--text);font-weight:800}.login-ticker-price{color:var(--text-mute)}.login-ticker-change{font-weight:800}.login-ticker-change.up,.login-ticker-spark.up{color:var(--up)}.login-ticker-change.down,.login-ticker-spark.down{color:var(--down)}.login-ticker-spark{flex:0 0 56px;width:56px;height:18px}.login-ticker-spark path{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}@keyframes loginTicker{0%{transform:translate(0,0)}to{transform:translate(-50%)}}.login-stage{background:radial-gradient(circle at 32% 54%,#f5a52412,#0000 24rem),linear-gradient(#ffffff05,#fff0),#080a0d;border:1px solid #ffffff17;grid-template-rows:auto 1fr auto;width:min(1376px,100vw - 34px);max-width:calc(100vw - 34px);min-height:calc(100vh - 70px);margin:18px auto;display:grid;overflow:hidden;box-shadow:0 22px 60px #00000061}.login-topbar,.login-footer{justify-content:space-between;align-items:center;gap:18px;padding:20px clamp(24px,4vw,54px);display:flex}.login-brand{align-items:center;gap:10px;font-weight:900;display:inline-flex}.login-brand-mark{background:var(--ai);color:#090b0f;border-radius:8px;place-items:center;width:28px;height:28px;font-weight:900;display:inline-grid}.login-brand em{color:var(--ai);font-family:var(--font-mono);background:#f5a5242e;border-radius:4px;padding:3px 6px;font-size:10px;font-style:normal;font-weight:800}.login-market-status{color:var(--up);letter-spacing:.08em;white-space:nowrap;flex:none;align-items:center;gap:8px;font-size:11px;font-weight:800;display:inline-flex}.login-market-status span,.login-card-status span{background:var(--up);border-radius:999px;width:6px;height:6px;box-shadow:0 0 16px #2fd06fd1}.login-market-status time{color:var(--text-mute);margin-left:10px;font-weight:700}.login-grid{grid-template-columns:minmax(0,1.05fr) minmax(340px,410px);align-items:center;gap:clamp(24px,5vw,88px);min-width:0;padding:clamp(42px,6vw,74px) clamp(24px,4vw,54px) clamp(48px,6vw,78px);display:grid}.login-hero{min-width:0;max-width:560px}.login-kicker,.login-card-status{color:var(--text-mute);letter-spacing:.08em;font-size:11px;font-weight:800}.login-hero h1{color:var(--text-hi);margin:22px 0;font-size:clamp(38px,4.8vw,64px);font-weight:900;line-height:1.03}.login-hero h1 span{color:var(--ai);display:block}.login-mobile-summary{color:var(--text-mute);font-size:13px;display:none}.login-feature-list{gap:12px;margin-top:28px;display:grid}.login-feature{background:#111419d1;border:1px solid #ffffff17;border-radius:8px;align-items:center;gap:14px;min-height:58px;padding:12px 14px;display:flex;box-shadow:inset 0 1px #ffffff09}.login-feature-icon{width:42px;height:34px;color:var(--ai);font-family:var(--font-mono);background:#ffffff09;border-radius:6px;flex:0 0 42px;place-items:center;font-size:10px;font-weight:900;display:inline-grid}.login-feature strong,.login-feature small{display:block}.login-feature strong{color:var(--text);font-size:13px}.login-feature small{color:var(--text-mute);margin-top:2px;font-size:11px}.login-stats{gap:28px;margin-top:34px;display:flex}.login-stats span,.login-stats strong,.login-stats small{display:block}.login-stats strong{color:var(--text-hi);font-family:var(--font-mono);letter-spacing:-.02em;font-size:24px}.login-stats small{color:var(--text-mute);font-size:11px}.login-card{background:linear-gradient(#ffffff06,#fff0),#101318f0;border:1px solid #ffffff1a;border-radius:10px;justify-self:center;width:min(410px,100%);min-width:0;padding:28px 30px;box-shadow:0 28px 80px #0000007a,0 0 0 1px #00000080}.login-card-status{align-items:center;gap:8px;margin-bottom:18px;font-size:10px;display:flex}.login-card h2{color:var(--text-hi);margin:0 0 12px;font-size:25px;line-height:1.2}.login-card h2 span{color:var(--ai)}.login-card p{color:var(--text-mute);margin:0 0 18px;font-size:13px;line-height:1.75}.login-google-button,.login-secondary-button,.login-submit-button,.login-mode-tabs button{cursor:pointer;border-radius:8px;width:100%;min-height:40px;font-weight:900;transition:transform .14s,border-color .14s,background .14s,color .14s}.login-google-button:hover,.login-secondary-button:hover,.login-submit-button:hover,.login-mode-tabs button:hover{transform:translateY(-1px)}.login-google-button:disabled,.login-submit-button:disabled{cursor:wait;opacity:.62;transform:none}.login-google-button{color:#10141a;background:#f8fafc;border:1px solid #ffffff2e;justify-content:center;align-items:center;gap:10px;display:inline-flex}.login-google-button span{color:#4285f4;font-weight:900}.login-google-button.is-disabled{color:var(--text-mute);cursor:not-allowed;background:#f5a52414;border-color:#f5a5242e}.login-google-button.is-disabled span{opacity:.72}.login-divider{color:var(--text-sub);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:18px 0;font-size:11px;display:grid}.login-divider span{background:#ffffff14;height:1px}.login-secondary-button,.login-mode-tabs button{color:var(--text);background:#ffffff09;border:1px solid #ffffff14}.login-mode-tabs{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.login-mode-tabs button.active{color:var(--ai);background:#f5a5241f;border-color:#f5a5245c}.login-fields{gap:10px;margin-top:12px;display:grid}.login-fields input{width:100%;min-height:42px;color:var(--text-hi);background:#07090c;border:1px solid #ffffff1a;border-radius:8px;padding:11px 13px;font-size:14px}.login-fields input::placeholder{color:var(--text-sub)}.login-message{border-radius:8px;margin-top:12px;padding:10px 12px;font-size:13px;line-height:1.55}.login-message.error{background:var(--down-soft);color:#ff9b98;border:1px solid #f25f5c42}.login-message.notice{background:var(--up-soft);color:#9df2ba;border:1px solid #2fd06f3d}.login-verification-panel{color:var(--text);background:#f5a52413;border:1px solid #f5a5243d;border-radius:8px;gap:8px;margin-top:12px;padding:12px;display:grid}.login-verification-panel strong{color:var(--ai);letter-spacing:.06em;font-size:11px}.login-verification-panel p{color:var(--text-mute);margin:0;font-size:12px;line-height:1.65}.login-verification-panel span{color:var(--text-hi);overflow-wrap:anywhere}.login-verification-panel button{min-height:34px;color:var(--ai);cursor:pointer;background:#f5a52424;border:1px solid #f5a52447;border-radius:7px;font-weight:900}.login-verification-panel button:disabled{cursor:wait;opacity:.62}.login-browser-warning{color:var(--text);background:linear-gradient(#f5a5241a,#f5a5240b),#090b0fc7;border:1px solid #f5a52447;border-radius:8px;gap:10px;margin-top:12px;padding:12px;display:grid}.login-browser-warning strong{color:var(--ai);letter-spacing:.1em;font-size:10.5px}.login-browser-warning p{color:var(--text);margin:0;font-size:12.5px;line-height:1.65}.login-browser-warning code{overflow-wrap:anywhere;max-width:100%;color:var(--text-hi);font-family:var(--font-mono);background:#0000003d;border:1px solid #ffffff17;border-radius:7px;padding:9px 10px;font-size:11px;display:block}.login-browser-warning-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.login-browser-warning-actions button,.login-browser-warning-link{cursor:pointer;border-radius:7px;min-height:34px;font-weight:900}.login-browser-warning-actions button{color:var(--ai);background:#f5a5241f;border:1px solid #f5a52442}.login-browser-warning-link{color:var(--text-mute);background:#ffffff09;border:1px solid #ffffff14}.login-beta-note{color:var(--text-mute);background:#f5a52412;border:1px solid #f5a52433;border-radius:8px;margin-top:16px;padding:12px;font-size:12px;line-height:1.65}.login-beta-note strong{color:var(--ai);letter-spacing:.04em;margin-bottom:2px;font-size:11px;display:block}.login-help-text{color:var(--text-mute);margin-top:10px;font-size:12px;line-height:1.6}.login-actions-row{min-height:18px;margin-top:10px}.login-actions-row button,.login-card-links button,.login-footer button,.login-info-footer a{color:var(--ai);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:800;text-decoration:none}.login-submit-button{background:var(--ai);color:#090b0f;border:0;margin-top:8px}.login-card-links{color:var(--text-mute);flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;font-size:12px;display:flex}.login-footer{color:var(--text-sub);border-top:1px solid #ffffff12;font-size:11px}.login-footer nav{align-items:center;gap:16px;display:flex}.login-info-overlay{z-index:50;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#000000b8;place-items:center;padding:24px;animation:.18s both loginInfoFade;display:grid;position:fixed;inset:0}.login-info-modal{background:linear-gradient(#f5a52409,#0000 110px),#111419fa;border:1px solid #ffffff21;border-radius:12px;grid-template-rows:auto minmax(0,1fr) auto;width:min(100%,580px);max-height:min(78vh,720px);animation:.2s both loginInfoModalIn;display:grid;overflow:hidden;box-shadow:0 28px 90px #00000094,inset 0 1px #ffffff0a}.login-info-modal.terms{width:min(100%,620px)}.login-info-modal.status{width:min(100%,560px)}.login-info-handle{display:none}.login-info-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:16px;min-height:52px;padding:14px 14px 14px 18px;display:flex}.login-info-header h2{color:var(--text);letter-spacing:.1em;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:900;display:inline-flex}.login-info-header h2 span,.login-info-header h2 i{color:var(--ai)}.login-info-header h2 i{background:currentColor;width:2px;height:12px;animation:1.1s step-end infinite loginCaret;display:inline-block}.login-info-header button{min-height:28px;color:var(--text-mute);font-family:var(--font-mono);cursor:pointer;background:#ffffff09;border:1px solid #ffffff17;border-radius:7px;align-items:center;gap:5px;padding:0 8px;font-size:11px;display:inline-flex}.login-info-header button span{color:var(--text);font-size:14px;line-height:1}.login-info-header button small{letter-spacing:.08em;font-size:10px}.login-info-body{min-height:0;color:var(--text-dim);padding:20px 22px 22px;font-size:13px;line-height:1.72;overflow:auto}.login-info-body p+p{margin-top:8px}.login-info-lead{color:var(--text);margin-bottom:18px;font-weight:700}.login-info-section{margin-top:18px}.login-info-rule{grid-template-columns:18px auto 1fr;align-items:center;gap:10px;margin-bottom:12px;display:grid}.login-info-rule span{background:#ffffff17;height:1px}.login-info-rule strong{color:var(--text-sub);font-family:var(--font-mono);letter-spacing:.14em;font-size:10.5px;font-weight:900}.login-info-kv{background:#ffffff06;border:1px solid #ffffff14;border-radius:7px;gap:0;display:grid;overflow:hidden}.login-info-kv-row{grid-template-columns:108px minmax(0,1fr);gap:16px;padding:10px 13px;display:grid}.login-info-kv-row+.login-info-kv-row{border-top:1px dashed #ffffff12}.login-info-kv-row strong{color:var(--ai);font-family:var(--font-mono);font-size:11px}.login-info-list{gap:8px;list-style:none;display:grid}.login-info-list li{padding-left:17px;position:relative}.login-info-list li:before{content:"›";color:var(--ai);font-family:var(--font-mono);font-weight:900;position:absolute;left:0}.login-risk-callout{color:var(--text);background:#f25f5c14;border:1px solid #f25f5c47;border-radius:7px;align-items:flex-start;gap:12px;margin-top:14px;padding:12px;display:flex}.login-risk-callout strong{color:var(--down);font-family:var(--font-mono);letter-spacing:.12em;border:1px solid #f25f5c61;border-radius:4px;flex:none;padding:2px 7px;font-size:10px}.login-info-ack{background:var(--ai);color:#090b0f;min-height:34px;font-family:var(--font-mono);cursor:pointer;border:0;border-radius:7px;margin:18px 0 0 auto;padding:0 13px;font-size:11px;font-weight:900;display:block}.login-status-summary{background:#f5a52412;border:1px solid #f5a5243d;border-radius:8px;align-items:center;gap:12px;margin-bottom:16px;padding:13px 14px;display:flex}.login-status-summary strong,.login-status-summary small{display:block}.login-status-summary strong{color:var(--text);font-size:13px}.login-status-summary small{color:var(--text-sub);font-family:var(--font-mono);letter-spacing:.13em;margin-top:2px;font-size:10px}.login-status-dot,.login-status-value i{border-radius:999px;width:9px;height:9px;display:inline-block}.login-status-dot.warn,.login-status-value.warn i{background:var(--ai);box-shadow:0 0 14px #f5a5248c}.login-status-table{background:#ffffff05;border:1px solid #ffffff14;border-radius:8px;overflow:hidden}.login-status-head,.login-status-row{grid-template-columns:minmax(130px,.9fr) minmax(0,1.4fr);align-items:center;gap:14px;display:grid}.login-status-head{color:var(--text-sub);font-family:var(--font-mono);letter-spacing:.14em;padding:9px 12px;font-size:10px}.login-status-row{border-top:1px solid #ffffff0f;padding:12px}.login-status-row strong{color:var(--text);font-size:12px}.login-status-value{min-width:0;font-family:var(--font-mono);align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex}.login-status-value.ok{color:var(--up)}.login-status-value.ok i{background:var(--up);box-shadow:0 0 14px #2fd06f8c}.login-status-value.warn{color:var(--ai)}.login-status-value.env{color:var(--text-mute)}.login-status-value.env i{border:1px solid}.login-status-value small{color:var(--text-mute);font-family:var(--font-sans);font-size:11px;font-weight:600}.login-info-muted{color:var(--text-mute);font-size:12px}.login-info-footer{min-height:40px;color:var(--text-sub);letter-spacing:.06em;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:18px;padding:10px 14px;font-size:10.5px;display:flex}@keyframes loginInfoFade{0%{opacity:0}to{opacity:1}}@keyframes loginInfoModalIn{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes loginCaret{0%,49%{opacity:1}50%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.login-ticker-track,.login-info-overlay,.login-info-modal,.login-info-header h2 i{animation:none}}@media (width<=1100px){.login-stage{width:auto;max-width:none;margin:12px}.login-topbar,.login-footer{padding-left:24px;padding-right:24px}.login-grid{flex-direction:column;align-items:stretch;gap:26px;display:flex}.login-hero{max-width:680px}.login-hero h1{font-size:clamp(34px,8vw,56px)}.login-feature-list{max-width:640px}.login-card{justify-self:auto;width:min(100%,460px)}}@media (width<=820px){.login-shell{overflow:auto}.login-stage{width:auto;max-width:none;min-height:calc(100vh - 58px);margin:12px 14px}.login-topbar,.login-footer{padding:18px}.login-market-status{display:none}.login-grid{flex-direction:column;align-items:stretch;gap:18px;min-width:0;padding:18px 18px 34px;display:flex}.login-hero{order:0;min-width:0}.login-kicker,.login-feature-list,.login-stats{display:none}.login-hero h1{overflow-wrap:anywhere;max-width:100%;margin:4px 0 8px;font-size:28px;line-height:1.18}.login-mobile-summary{display:block}.login-card{order:1;width:100%;min-width:0;padding:24px 18px}.login-card p,.login-beta-note,.login-browser-warning,.login-browser-warning-actions button,.login-browser-warning-link,.login-help-text,.login-fields input{overflow-wrap:anywhere}.login-browser-warning-actions{grid-template-columns:1fr}.login-footer{flex-direction:column;align-items:flex-start;gap:10px;overflow:hidden}.login-footer nav{flex:none;gap:10px}.login-info-overlay{place-items:end stretch;padding:0}.login-info-modal,.login-info-modal.terms,.login-info-modal.status{border-bottom:0;border-left:0;border-right:0;border-radius:12px 12px 0 0;width:100%;max-height:88vh;animation:.28s both loginInfoSheetIn}.login-info-handle{background:#ffffff24;border-radius:999px;justify-self:center;width:36px;height:3px;margin-top:8px;display:block}.login-info-header{min-height:48px;padding:12px 14px}.login-info-header h2{font-size:11px}.login-info-body{padding:18px;font-size:12px}.login-info-kv-row{grid-template-columns:1fr;gap:3px;padding:11px 12px}.login-status-head,.login-status-row{grid-template-columns:minmax(96px,.75fr) minmax(0,1.25fr);gap:10px}.login-status-value{flex-wrap:wrap;font-size:11px}.login-info-footer{flex-direction:column;align-items:flex-start;gap:4px}}@keyframes loginInfoSheetIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}.portfolio-ai-card{--portfolio-ai-tone:var(--ai);border:1px solid var(--line);border-top:3px solid var(--portfolio-ai-tone);border-radius:var(--r-lg);background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);margin-bottom:10px;padding:14px 16px;box-shadow:inset 0 1px #ffffff06}.portfolio-ai-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.portfolio-ai-kicker{color:var(--text-mute);letter-spacing:0;font-size:9px;font-weight:800}.portfolio-ai-title{color:var(--text);margin-top:4px;font-size:15px;font-weight:850;line-height:1.25}.portfolio-ai-title span{color:var(--portfolio-ai-tone)}.portfolio-ai-score-pill{border:1px solid color-mix(in srgb, var(--portfolio-ai-tone) 40%, transparent);background:color-mix(in srgb, var(--portfolio-ai-tone) 12%, transparent);color:var(--portfolio-ai-tone);font-family:var(--font-mono);border-radius:999px;flex:none;align-items:baseline;gap:3px;padding:5px 9px;display:inline-flex}.portfolio-ai-score-pill strong{font-size:18px;line-height:1}.portfolio-ai-score-pill span{color:var(--text-mute);font-size:10px;font-weight:800}.portfolio-ai-layout{grid-template-columns:minmax(210px,.9fr) minmax(260px,1.05fr) minmax(300px,1.45fr);align-items:stretch;gap:12px;display:grid}.portfolio-ai-score-panel{border:1px solid var(--line-soft);background:#ffffff05;border-radius:8px;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.portfolio-ai-score-panel .ai-score-ring{width:82px;height:82px;filter:drop-shadow(0 0 10px color-mix(in srgb, var(--portfolio-ai-tone) 18%, transparent));display:block;overflow:visible}.portfolio-ai-score-panel div{gap:4px;min-width:0;display:grid}.portfolio-ai-score-panel strong{font-size:13px;font-weight:850}.portfolio-ai-score-panel span{color:var(--text-sub);font-size:11px;line-height:1.45}.portfolio-ai-breakdown{grid-template-columns:repeat(5,minmax(0,1fr));align-content:center;gap:6px;display:grid}.portfolio-ai-chip{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:8px;min-width:0;padding:8px 9px}.portfolio-ai-chip span{color:var(--text-mute);margin-bottom:4px;font-size:9px;font-weight:750;display:block}.portfolio-ai-chip strong{color:var(--text);font-family:var(--font-mono);font-size:13px;font-weight:850}.portfolio-ai-signal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.portfolio-ai-signal{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:8px;min-width:0;padding:10px}.portfolio-ai-signal span{margin-bottom:6px;font-size:9px;font-weight:800;display:block}.portfolio-ai-signal strong{color:var(--text-sub);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:11px;font-weight:650;line-height:1.45;display:-webkit-box;overflow:hidden}.portfolio-ai-signal.is-up span{color:var(--up)}.portfolio-ai-signal.is-warn span{color:var(--warn)}.portfolio-ai-signal.is-ai span{color:var(--ai)}.portfolio-ai-details{border-top:1px solid var(--line-soft);color:var(--text-sub);margin-top:10px}.portfolio-ai-details summary{width:fit-content;color:var(--text-mute);cursor:pointer;padding-top:9px;font-size:11px;font-weight:800}.portfolio-ai-details-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:10px;display:grid}.portfolio-ai-details-grid span{color:var(--text-mute);margin-bottom:6px;font-size:9px;font-weight:800;display:block}.portfolio-ai-details-grid p{color:var(--text-sub);margin:0 0 5px;font-size:11px;line-height:1.45}.portfolio-trade-actions{grid-template-columns:repeat(2,minmax(44px,1fr));justify-content:end;gap:6px;min-width:112px;display:grid}.portfolio-trade-actions.is-disabled{opacity:.72;grid-template-columns:repeat(2,minmax(44px,1fr))}.portfolio-trade-actions.is-disabled button{min-width:44px}.portfolio-trade-action-note{white-space:nowrap;grid-column:1/-1;justify-self:end;width:max-content;max-width:100%}.portfolio-risk-profile{grid-template-columns:124px minmax(0,1fr);align-items:center;gap:12px;width:100%;display:grid}.portfolio-risk-profile-body{gap:8px;min-width:0;display:grid}.portfolio-risk-profile-title{color:var(--text);justify-content:space-between;align-items:baseline;gap:10px;font-size:12px;font-weight:800;display:flex}.portfolio-risk-profile-title strong{font-family:var(--font-mono);color:var(--text-mute);font-size:12px}.portfolio-risk-rail{width:100%;max-width:160px}.portfolio-risk-profile-metrics{color:var(--text-mute);font:700 10px/1.2 var(--font-sans);gap:5px;display:grid}.portfolio-holdings-preview{background:linear-gradient(180deg, #ffffff04, #fff0) var(--panel)}@media (width<=760px){.portfolio-page .tracker-toolbar{align-items:stretch!important}.portfolio-page .tracker-toolbar>div:first-child{width:100%}.portfolio-page .tracker-toolbar>div:first-child button{flex:1 1 0;min-height:34px}.portfolio-chart-grid,.portfolio-summary-grid{grid-template-columns:minmax(0,1fr)!important}.portfolio-section-bar{flex-wrap:wrap;gap:8px;align-items:stretch!important}.portfolio-section-bar>span{flex:1 0 100%}.portfolio-section-bar>button{flex:1 1 0;min-height:34px}.portfolio-holdings-preview{grid-template-columns:minmax(0,1fr)!important}.portfolio-risk-profile{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.portfolio-risk-profile-body{justify-items:center;width:100%}.portfolio-risk-profile-title{width:100%}.portfolio-primary-action-head{flex-direction:column}.portfolio-ai-card{border-radius:10px!important;padding:13px!important}.portfolio-ai-head{align-items:flex-start;margin-bottom:10px}.portfolio-ai-title{font-size:14px}.portfolio-ai-layout{grid-template-columns:minmax(0,1fr);gap:9px}.portfolio-ai-score-panel{grid-template-columns:74px minmax(0,1fr);gap:8px;padding:9px}.portfolio-ai-score-panel .ai-score-ring{width:72px;height:72px}.portfolio-ai-breakdown{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.portfolio-ai-chip{padding:7px 6px}.portfolio-ai-chip strong{font-size:12px}.portfolio-ai-signal-grid{grid-template-columns:minmax(0,1fr)}.portfolio-ai-signal{padding:9px 10px}.portfolio-ai-signal strong{-webkit-line-clamp:2}.portfolio-ai-details-grid{grid-template-columns:minmax(0,1fr);gap:8px}.portfolio-holdings-card,.portfolio-primary-action-card,.portfolio-manual-card,.portfolio-tradebook-card{border-radius:10px!important}.portfolio-holdings-card{box-shadow:none!important;background:0 0!important;border:0!important}.portfolio-holdings-table,.portfolio-trades-table{border:0!important;overflow-x:visible!important}.portfolio-holdings-head,.portfolio-trades-head{display:none!important}.portfolio-holdings-row,.portfolio-trades-row,.portfolio-activity-row,.portfolio-recent-activity-row{gap:8px 10px;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;min-width:0!important;padding:13px!important}.portfolio-holdings-row{background:var(--panel);border-radius:10px;margin-bottom:10px;box-shadow:inset 0 1px #ffffff06;border:1px solid var(--line)!important}.portfolio-holdings-row>*,.portfolio-trades-row>*,.portfolio-activity-row>*,.portfolio-recent-activity-row>*{min-width:0}.portfolio-mobile-cell{background:0 0;border:0;border-radius:0;gap:10px;padding:6px 2px;text-align:right!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.portfolio-mobile-cell:before{content:attr(data-label);color:var(--text-mute);font:700 10px/1 var(--font-sans);letter-spacing:0;white-space:nowrap;flex:none}.portfolio-holding-symbol{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:8px;grid-column:1/-1;padding:9px 10px;align-items:flex-start!important}.portfolio-holding-symbol:before{margin-top:3px}.portfolio-holding-actions,.portfolio-trade-notes,.portfolio-trade-actions-cell{grid-column:1/-1}.portfolio-holding-actions,.portfolio-trade-actions-cell{border-top:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr);padding-top:8px;text-align:left!important;justify-content:stretch!important;align-items:stretch!important;display:grid!important}.portfolio-trade-actions-cell:before{justify-self:start;margin-bottom:6px}.portfolio-activity-main{border:1px solid var(--line-soft);background:#ffffff05;border-radius:8px;grid-column:1/-1;grid-template-columns:minmax(0,1fr);padding:9px 10px;text-align:left!important;justify-content:stretch!important;align-items:flex-start!important;gap:4px!important;display:grid!important}.portfolio-activity-main:before{width:100%;margin-bottom:2px}.portfolio-activity-main strong,.portfolio-activity-main span{overflow-wrap:anywhere;text-align:left;max-width:100%;display:block}.portfolio-activity-time{border-top:1px solid var(--line-soft);white-space:nowrap;grid-column:1/-1;gap:10px;padding:7px 10px;text-align:left!important;justify-content:flex-start!important}.portfolio-activity-time:before{flex:none}.portfolio-trade-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;justify-content:stretch!important;gap:8px!important;display:grid!important}.portfolio-holding-actions button,.portfolio-trade-actions button{flex:1 1 0;min-height:32px}.portfolio-trade-action-note{text-align:left;white-space:nowrap;grid-column:1/-1;width:100%}.portfolio-signal-detail{padding:12px!important}.portfolio-signal-detail>div{flex-wrap:wrap;align-items:flex-start!important}.portfolio-signal-detail button{flex:140px;min-height:34px}.portfolio-recent-trade-row,.portfolio-recent-activity-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}.portfolio-recent-trade-row>:nth-child(3),.portfolio-recent-trade-row>:last-child,.portfolio-recent-activity-row>:nth-child(2){grid-column:1/-1}.portfolio-tradebook-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.portfolio-trade-filters{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;display:grid!important}.portfolio-trade-filters>*,.portfolio-page form>*{width:100%!important}.portfolio-trade-filters input,.portfolio-trade-filters select,.portfolio-page form input{box-sizing:border-box;width:100%!important}.portfolio-trade-filters button,.portfolio-page form button[type=submit]{min-height:36px}.portfolio-trade-filters [style*="display: inline-flex"],.portfolio-page form [style*="display: inline-flex"]{flex-wrap:wrap;display:flex!important}.portfolio-trade-filters [style*="display: inline-flex"] button,.portfolio-page form [style*="display: inline-flex"] button{flex:72px}.portfolio-page form{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;display:grid!important}}@media (width<=430px){.portfolio-trades-row,.portfolio-recent-trade-row,.portfolio-tradebook-stats{grid-template-columns:minmax(0,1fr)!important}.portfolio-activity-row,.portfolio-recent-activity-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}.portfolio-activity-main,.portfolio-trade-actions-cell,.portfolio-recent-activity-row>:nth-child(2){grid-column:1/-1}}.app-shell{background:radial-gradient(circle at 88% 0%, #f5a52412, transparent 26rem), radial-gradient(circle at 2% 0%, #45b7ff0b, transparent 24rem), var(--bg)!important}.app-main{background:0 0}.app-sidebar{box-shadow:inset -1px 0 #ffffff05}.sidebar-nav-button:hover{background:var(--panel-hi)!important;color:var(--text)!important}.topbar-search input::placeholder{color:var(--text-mute)}.topbar-search input::-webkit-search-cancel-button{display:none}.topbar-search-icon-btn:hover,.topbar-search-submit:hover{filter:brightness(1.12)}.topbar-search-hint{z-index:45;background:var(--panel-hi);max-width:min(280px,100vw - 32px);color:var(--warn);border:1px solid #f5a5243d;border-radius:6px;padding:5px 8px;font-size:10px;font-weight:700;position:absolute;top:calc(100% + 6px);left:12px;box-shadow:0 8px 24px #00000047}@media (width<=760px){.app-shell{flex-direction:column!important}.app-sidebar{z-index:40;border-right:0!important;border-bottom:1px solid var(--line)!important;flex-direction:column!important;width:100%!important;height:auto!important;max-height:none!important;position:sticky!important;top:0!important}.sidebar-logo{border-bottom:1px solid var(--line-soft)!important;padding:10px 14px 8px!important}.sidebar-logo>div{gap:8px!important}.sidebar-nav{scrollbar-width:none;scroll-snap-type:x proximity;flex:none!important;gap:6px!important;padding:8px 10px 10px!important;display:flex!important;overflow:auto hidden!important}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-section{display:contents}.sidebar-section-label,.sidebar-footer{display:none!important}.sidebar-nav-button{scroll-snap-align:start;white-space:nowrap!important;background:var(--panel)!important;text-align:center!important;border-bottom:2px solid #0000!important;border-left:0!important;border-radius:8px!important;flex-direction:column!important;flex:0 0 72px!important;justify-content:center!important;gap:4px!important;width:auto!important;min-width:72px!important;margin-bottom:0!important;padding:7px 6px!important;font-size:10px!important;line-height:1.1!important}.sidebar-nav-button[style*="var(--panel)"]{box-shadow:inset 0 1px #ffffff06}.app-main{width:100%;overflow:visible!important}.app-topbar{z-index:35;flex-wrap:wrap;min-height:52px;position:sticky;top:105px;gap:8px!important;height:auto!important;padding:10px 14px!important}.topbar-title{flex:auto;min-width:110px}.topbar-search{order:3;flex:1 0 100%!important;min-width:0!important;max-width:none!important;margin-left:0!important}.topbar-search-submit{padding:4px 7px!important}.topbar-spacer,.topbar-live{display:none!important}}.dashboard-card{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);min-width:0;overflow:hidden;box-shadow:inset 0 1px #ffffff06}.dashboard-card-padded{flex-direction:column;gap:14px;padding:18px;display:flex}.dashboard-card-fill{flex-direction:column;height:100%;display:flex}.dashboard-card-body-fill{flex:1}.dashboard-card-header{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:14px 16px;display:flex}.dashboard-card-header-compact{border-bottom:0;padding:0}.dashboard-card-title{color:var(--text-mute);letter-spacing:0;font-size:9px;font-weight:700}.dashboard-card-subtitle{color:var(--text-dim);font-size:var(--dashboard-card-subtitle-size,10px);margin-top:2px;line-height:1.5}.dashboard-card-spacer{flex:1}.dashboard-card-action{background:var(--ai-soft);min-height:24px;color:var(--ai);cursor:pointer;font-family:var(--font-sans);white-space:nowrap;border:1px solid #f5a52442;border-radius:4px;padding:4px 10px;font-size:10px;font-weight:600}.dashboard-card-action-muted{border-color:var(--line);background:var(--bg-soft);color:var(--text-dim);font-size:9px}.dashboard-card-action-primary{background:var(--ai);color:#000;border:none;border-radius:6px;flex:1;font-size:11px;font-weight:700}.dashboard-card-action-row{gap:6px;display:flex}.dashboard-card-action-row .dashboard-card-action{border-radius:6px;min-height:30px;padding:7px 14px;font-size:11px}.dashboard-card-meta-tight{color:var(--text-mute);margin-top:-8px;font-size:9px}.dashboard-card-insight{background:var(--ai-muted);color:var(--text-mute);border:1px solid #f5a52429;border-radius:6px;padding:8px 12px;font-size:10px;line-height:1.5}.dashboard-card-insight-clamped{-webkit-line-clamp:2;border-color:#f5a5242e;border-radius:7px;-webkit-box-orient:vertical;padding:9px 12px;font-size:11px;line-height:1.6;display:-webkit-box;overflow:hidden}.dashboard-table-head-row{border-bottom:1px solid var(--line-soft);background:var(--bg-soft);color:var(--text-mute);letter-spacing:0;padding:7px 16px;font-size:8px;font-weight:700;display:grid}.dashboard-top-picks-columns{grid-template-columns:80px 1fr 48px 70px 80px}.dashboard-scan-head{grid-template-columns:80px 50px 40px 80px 120px 70px 70px 96px}.dashboard-watchlist-head{grid-template-columns:64px 1fr 54px 44px 36px;padding:6px 14px}.dashboard-align-right{text-align:right}.dashboard-pick-row,.dashboard-scan-row{border-bottom:1px solid var(--line-soft);cursor:pointer;align-items:center;transition:background .1s;display:grid}.dashboard-pick-row{grid-template-columns:80px 1fr 48px 70px 80px;padding:12px 16px}.dashboard-scan-row{grid-template-columns:80px 50px 40px 80px 120px 70px 70px 96px;padding:11px 16px}.dashboard-pick-row.is-last,.dashboard-scan-row.is-last{border-bottom:0}.dashboard-pick-row:hover{background:#ffffff06}.dashboard-scan-row:hover{background:#ffffff05}.dashboard-pick-row>*,.dashboard-scan-row>*{min-width:0}.dashboard-pick-symbol,.dashboard-scan-symbol,.dashboard-pick-target,.dashboard-row-score-value,.dashboard-row-upside,.dashboard-row-empty,.dashboard-scan-price,.dashboard-scan-entry,.dashboard-scan-stop,.dashboard-scan-target{font-family:var(--font-mono)}.dashboard-pick-symbol{color:var(--text);font-size:13px;font-weight:800}.dashboard-row-category{background:var(--dashboard-row-category-bg);color:var(--dashboard-row-category-color);border-radius:3px;align-items:center;padding:1px 5px;font-size:8px;font-weight:700;display:inline-flex}.dashboard-pick-score-cell{padding-right:12px}.dashboard-row-score-meter{flex:1;align-items:center;gap:6px;min-width:0;margin-bottom:3px;display:flex}.dashboard-row-score-track{background:#ffffff14;border-radius:2px;flex:1;height:3px;overflow:hidden}.dashboard-row-score-fill{width:var(--dashboard-row-score-width);background:var(--dashboard-row-score-color);border-radius:2px;height:100%}.dashboard-row-score-value{color:var(--dashboard-row-score-color);flex-shrink:0;font-size:11px;font-weight:800}.dashboard-pick-target{color:var(--text-dim);font-size:11px;font-weight:700}.dashboard-row-upside{font-size:12px;font-weight:800}.dashboard-row-upside.is-up{color:var(--up)}.dashboard-row-upside.is-down{color:var(--down)}.dashboard-row-empty{color:var(--text-mute);font-size:11px}.dashboard-scan-symbol{color:var(--text);font-size:12px;font-weight:800}.dashboard-scan-row .dashboard-row-score{color:var(--dashboard-row-score-color)}.dashboard-scan-price{color:var(--text);font-size:11px}.dashboard-scan-entry,.dashboard-scan-stop,.dashboard-scan-target{font-size:10px}.dashboard-scan-entry{color:var(--info)}.dashboard-scan-stop{color:var(--down)}.dashboard-scan-target{color:var(--up)}.dashboard-scan-actions{gap:4px;display:flex}.dashboard-row-action-button{background:var(--ai-soft);color:var(--ai);cursor:pointer;font-family:var(--font-sans);border:1px solid #f5a52442;border-radius:3px;padding:3px 7px;font-size:9px;font-weight:600}.dashboard-pick-row .dashboard-row-action-button{border-radius:4px;padding-inline:8px}.dashboard-row-action-button.is-muted{border-color:var(--line);background:var(--bg-soft);color:var(--text-mute)}.dashboard-ranking-loading-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:9px 0;display:flex}.dashboard-ranking-loading-row-scan{align-items:flex-start}.dashboard-state-block.dashboard-ranking-empty-state{background:0 0;border-color:#0000}.dashboard-state-block{--dashboard-state-accent:var(--text-mute);--dashboard-state-block-padding:16px;min-width:0;padding:var(--dashboard-state-block-padding);border:1px solid color-mix(in srgb, var(--dashboard-state-accent) 18%, transparent);background:color-mix(in srgb, var(--dashboard-state-accent) 5%, transparent);color:var(--text-mute);border-radius:8px;flex-direction:column;gap:6px;display:flex;position:relative;overflow:hidden}.dashboard-state-block.is-loading{--dashboard-state-accent:var(--info)}.dashboard-state-block.is-empty{--dashboard-state-accent:var(--text-mute)}.dashboard-state-block.is-unavailable{--dashboard-state-accent:var(--warn)}.dashboard-state-block-inline{margin-bottom:10px;padding:10px 12px}.dashboard-state-block-accent{background:color-mix(in srgb, var(--dashboard-state-accent) 70%, transparent);width:2px;position:absolute;inset:0 auto 0 0}.dashboard-state-block-title{color:var(--text);font-size:12px;font-weight:800;line-height:1.35}.dashboard-state-block-detail{max-width:42rem;color:var(--text-mute);font-size:10px;line-height:1.55}.dashboard-state-block-action{border:1px solid color-mix(in srgb, var(--dashboard-state-accent) 28%, transparent);background:color-mix(in srgb, var(--dashboard-state-accent) 10%, transparent);min-height:24px;color:var(--dashboard-state-accent);cursor:pointer;font-family:var(--font-sans);border-radius:4px;align-self:flex-start;margin-top:2px;padding:4px 9px;font-size:10px;font-weight:700}.dashboard-state-block-skeleton{flex-direction:column;gap:8px;margin-top:4px;display:flex}.dashboard-state-block-skeleton-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}@media (width<=760px){.dashboard-pick-row,.dashboard-scan-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px 10px;padding:12px 14px}.dashboard-scan-row,.dashboard-scan-row.is-last{border:1px solid var(--line-soft);background:#ffffff04;border-radius:9px;margin:10px 12px}}.dashboard-ai-summary-card{border-top:3px solid var(--dashboard-state-color);gap:16px;padding:20px;position:relative}.dashboard-ai-summary-glow{background:var(--dashboard-state-bg);pointer-events:none;border-radius:50%;width:180px;height:180px;position:absolute;top:-40px;right:-40px}.dashboard-ai-summary-copy{flex:1;min-width:0}.dashboard-ai-summary-kicker{margin-bottom:6px}.dashboard-ai-summary-headline{color:var(--text);margin-bottom:10px;font-size:15px;font-weight:800;line-height:1.35}.dashboard-market-price{color:var(--text);font-family:var(--font-mono);font-size:18px;font-weight:800}.dashboard-market-state-pill{background:color-mix(in srgb, var(--dashboard-state-color) 13%, transparent);color:var(--dashboard-state-color);letter-spacing:0;border-radius:100px;padding:2px 7px;font-size:9px;font-weight:800}.dashboard-quick-actions{gap:8px;padding:16px 14px}.dashboard-quick-actions-intro{margin-bottom:4px}.dashboard-quick-actions-intro .dashboard-card-subtitle{margin-top:4px}.dashboard-quick-action-button{border:1px solid var(--line-soft);background:var(--bg-soft);cursor:pointer;font-family:var(--font-sans);text-align:left;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;transition:background .12s,border-color .12s;display:flex}.dashboard-quick-action-button:hover{border-color:color-mix(in srgb, var(--dashboard-action-color) 25%, transparent);background:#ffffff0d}.dashboard-quick-action-icon{width:28px;height:28px;color:var(--dashboard-action-color);background:#ffffff09;border-radius:6px;flex:0 0 28px;justify-content:center;align-items:center;display:inline-flex}.dashboard-quick-action-label{color:var(--text);font-size:12px;font-weight:700}.dashboard-quick-action-sub{color:var(--text-mute);margin-top:1px;font-size:10px}.dashboard-quick-action-link{color:var(--text-mute);margin-left:auto;font-size:12px}.dashboard-portfolio-metric-label{color:var(--text-mute);margin-bottom:3px;font-size:9px;font-weight:700}.dashboard-portfolio-main-value{color:var(--text);font-family:var(--font-mono);letter-spacing:0;font-size:26px;font-weight:800}.dashboard-portfolio-day-row{align-items:center;gap:8px;margin-top:4px;display:flex}.dashboard-portfolio-day-value{font-family:var(--font-mono);font-size:13px;font-weight:700}.dashboard-portfolio-day-pill{font-family:var(--font-mono);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.dashboard-portfolio-day-pill.is-up{background:var(--up-soft);color:var(--up)}.dashboard-portfolio-day-pill.is-down{background:var(--down-soft);color:var(--down)}.dashboard-portfolio-day-label{color:var(--text-mute);font-size:9px}.dashboard-portfolio-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.dashboard-stat-tile{background:var(--bg-soft);border-radius:6px;min-width:0;padding:8px 10px}.dashboard-stat-tile-label{color:var(--text-mute);letter-spacing:0;margin-bottom:3px;font-size:8px;font-weight:700}.dashboard-stat-tile-value{font-family:var(--font-mono);font-size:13px;font-weight:800}.dashboard-portfolio-skeleton{flex-direction:column;gap:8px;display:flex}.dashboard-portfolio-skeleton-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.dashboard-empty-note{color:var(--text-mute);text-align:center;padding:16px 0;font-size:12px}.dashboard-watchlist-card .dashboard-empty-note{padding:24px 14px;font-size:11px}.dashboard-inline-link{color:var(--ai);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0}.dashboard-skeleton-row{border-bottom:1px solid var(--line-soft);gap:10px;padding:12px 14px;display:flex}.dashboard-row-symbol,.dashboard-row-price,.dashboard-row-change,.dashboard-row-score,.dashboard-row-rsi{font-family:var(--font-mono)}.dashboard-row-symbol{color:var(--text);font-size:12px;font-weight:800}.dashboard-row-market{color:var(--text-mute);margin-top:1px;font-size:8px}.dashboard-row-price{color:var(--text);font-size:12px;font-weight:700}.dashboard-row-change{font-size:9px;font-weight:700}.dashboard-row-score{font-size:11px;font-weight:800}.dashboard-row-rsi{font-size:11px}.dashboard-row-link{color:var(--text-mute);font-size:14px}.dashboard-assistant-card{min-height:0}.dashboard-assistant-prompts{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;gap:6px;padding:12px 16px;display:flex}.dashboard-assistant-prompt{border:1px solid var(--line-soft);background:var(--bg-soft);color:var(--text-dim);cursor:pointer;font-family:var(--font-sans);border-radius:20px;padding:4px 10px;font-size:10px;font-weight:500}.dashboard-assistant-thread{flex-direction:column;flex:1;gap:10px;min-height:80px;max-height:220px;padding:12px 14px;display:flex;overflow-y:auto}.dashboard-assistant-empty{color:var(--text-mute);text-align:center;padding-top:16px;font-size:11px}.dashboard-assistant-message-row{display:flex}.dashboard-assistant-message-row.is-user{justify-content:flex-end}.dashboard-assistant-message-row.is-assistant{justify-content:flex-start}.dashboard-assistant-message{border:1px solid var(--line-soft);background:var(--bg-soft);max-width:85%;color:var(--text);white-space:pre-wrap;padding:8px 12px;font-size:11px;line-height:1.6}.dashboard-assistant-message.is-user{background:var(--panel-top);border-radius:10px 10px 2px}.dashboard-assistant-message.is-assistant{border-radius:10px 10px 10px 2px}.dashboard-assistant-typing{gap:4px;padding:6px 0;display:flex}.dashboard-assistant-typing-dot{background:var(--ai);border-radius:50%;width:5px;height:5px;animation:1.2s infinite tdot}@keyframes tdot{0%,60%,to{opacity:.2;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.dashboard-assistant-composer{border-top:1px solid var(--line);padding:10px 14px}.dashboard-assistant-input-wrap{border:1px solid var(--line);background:var(--bg-soft);border-radius:7px;gap:6px;padding:6px 8px 6px 12px;display:flex}.dashboard-assistant-input{min-width:0;color:var(--text);font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1;font-size:12px}.dashboard-assistant-send{background:var(--ai);color:#000;cursor:pointer;border:none;border-radius:5px;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:inline-flex}.dashboard-assistant-send:disabled{background:var(--bg-soft);color:var(--text-mute);cursor:not-allowed}.chat-page button:hover{filter:brightness(1.08)}.chat-page [style*="background: var(--panel)"]{background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel)!important}.chat-page [style*="border: 1px solid var(--line)"]{box-shadow:inset 0 1px #ffffff06}@media (width<=760px){.chat-page{min-height:calc(100vh - 118px);flex-direction:column!important;height:auto!important}.chat-main-column{min-height:0;flex:none!important}.chat-toolbar{gap:10px;align-items:flex-start!important;padding:10px 12px!important}.chat-toolbar>span{flex:180px;line-height:1.45}.chat-toolbar>button{flex:none}.chat-message-list{min-height:180px;max-height:42vh;flex:none!important;padding:14px 12px!important}.chat-message-wrap{max-width:min(88%,520px)!important}.chat-message-bubble{font-size:13px!important;line-height:1.65!important}.chat-suggestion-row{max-height:96px;overflow-y:auto;padding:0 12px 10px!important}.chat-suggestion-row button{flex:160px;min-height:32px}.chat-input-shell{padding:10px 12px 14px!important}.chat-side-panel{border-left:0!important;border-top:1px solid var(--line)!important;grid-template-columns:minmax(0,1fr)!important;width:auto!important;padding:10px 12px 14px!important;display:grid!important;overflow:visible!important}.chat-side-card{border-radius:10px!important}.chat-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px!important;display:grid!important}.chat-quick-grid button{min-width:0}.chat-status-card,.chat-model-card{display:none!important}}@media (width<=430px){.chat-quick-grid{grid-template-columns:minmax(0,1fr)!important}}.scan-page{width:100%}.scan-page-shell{padding:18px 22px 28px}.scan-page>*{max-width:1440px;margin-left:auto;margin-right:auto}.scan-page button{min-height:28px}.scan-page button:hover{filter:brightness(1.08)}.scan-hero{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);min-width:0;box-shadow:var(--shadow-panel), inset 0 1px 0 #ffffff06;flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:16px;padding:15px 18px;display:flex}.scan-hero-primary{min-width:150px}.scan-hero-kicker,.scan-hero-metric-label{color:var(--text-mute);letter-spacing:0;margin-bottom:4px;font-size:10px;font-weight:700}.scan-hero-total-row{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.scan-hero-total{color:var(--text);font-family:var(--font-mono);font-size:20px;font-weight:800}.scan-hero-time{color:var(--text-dim);font-size:11px}.scan-hero-empty{color:var(--text-dim);font-size:13px}.scan-hero-metrics{border-left:1px solid var(--line);grid-template-columns:repeat(4,minmax(58px,max-content));gap:16px;min-width:0;padding-left:18px;display:grid}.scan-hero-metric{min-width:0}.scan-hero-metric-value{font-family:var(--font-mono);font-size:18px;font-weight:750}.scan-hero-metric-value-a{color:var(--cat-a)}.scan-hero-metric-value-b{color:var(--cat-b)}.scan-hero-metric-value-b-growth{color:var(--cat-bg)}.scan-hero-metric-value-market{color:var(--ai)}.scan-hero-spacer{flex:80px}.scan-hero-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.scan-hero-message{color:var(--up);text-align:right;flex:1 0 100%;font-size:11px}.scan-hero-message-success{color:var(--up)}.scan-hero-message-error{color:var(--down)}.scan-action-button{border:1px solid var(--line);color:var(--text-dim);cursor:pointer;font-family:var(--font-sans);white-space:nowrap;background:0 0;border-radius:6px;padding:7px 13px;font-size:12px;font-weight:650}.scan-action-button-info{background:var(--info-soft);color:var(--info);border-color:#38bdf84d}.scan-action-button-primary{background:var(--ai);color:#000;border-color:#0000;font-weight:750}.scan-action-button:disabled{cursor:not-allowed;opacity:.58}.scan-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.scan-category-card{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);min-width:0;color:var(--text);cursor:pointer;font-family:var(--font-sans);text-align:left;flex-direction:column;gap:10px;padding:14px;transition:border-color .16s,background .16s;display:flex}.scan-category-card-active{border-color:var(--scan-category-color);background:linear-gradient(135deg, var(--panel) 0%, var(--scan-category-soft) 100%)}.scan-category-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.scan-category-tag,.market-discovery-tag,.stock-opportunity-cat-tag{letter-spacing:0;white-space:nowrap;border-radius:4px;align-items:center;width:fit-content;padding:2px 8px;font-weight:750;display:inline-flex}.scan-category-tag,.stock-opportunity-cat-tag{background:var(--scan-category-soft);color:var(--scan-category-color)}.scan-category-tag-sm{font-size:11px}.market-discovery-tag{background:var(--market-discovery-card-soft);color:var(--market-discovery-card-color)}.market-discovery-tag-sm{font-size:9px}.scan-category-card-count{color:var(--scan-category-color);font-family:var(--font-mono);font-size:25px;font-weight:850}.scan-category-card-title{color:var(--text);margin-bottom:3px;font-size:13px;font-weight:750}.scan-category-card-desc{color:var(--text-dim);font-size:11px;line-height:1.45}.scan-category-stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding-top:10px;display:grid}.scan-category-stat{min-width:0}.scan-category-stat-label{color:var(--text-mute);letter-spacing:0;margin-bottom:2px;font-size:9px}.scan-category-stat-value{font-family:var(--font-mono);font-size:12px;font-weight:750}.scan-category-stat-value-positive{color:var(--up)}.scan-category-stat-value-negative{color:var(--down)}.market-discovery-section{margin-bottom:14px}.market-discovery-shell,.stock-opportunity-shell{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);overflow:hidden;box-shadow:inset 0 1px #ffffff06}.market-discovery-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:11px 15px;display:flex}.market-discovery-title{color:var(--text);font-size:13px;font-weight:750}.market-discovery-summary{color:var(--text-dim);margin-top:2px;font-size:11px;line-height:1.45}.market-discovery-count{text-align:right;flex:none}.market-discovery-count-value{color:var(--ai);font-family:var(--font-mono);font-size:20px;font-weight:850}.market-discovery-count-label{color:var(--text-mute);font-size:10px}.market-discovery-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;padding:14px;display:grid}.market-discovery-state{color:var(--text-mute);text-align:center;padding:24px 16px;font-size:12px}.market-discovery-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex-direction:column;gap:9px;min-width:0;min-height:172px;padding:13px;display:flex}.market-discovery-card-head,.market-discovery-card-footer{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.market-discovery-symbol{color:var(--text);font-family:var(--font-mono);overflow-wrap:anywhere;font-size:16px;font-weight:850}.market-discovery-meta{color:var(--text-mute);align-items:center;gap:6px;margin-top:4px;font-size:10px;display:flex}.market-discovery-reason{color:var(--text);font-size:12px;font-weight:750;line-height:1.35}.market-discovery-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.market-discovery-stat{min-width:0}.market-discovery-stat-label{color:var(--text-mute);margin-bottom:3px;font-size:9px}.market-discovery-stat-value{color:var(--text);overflow-wrap:anywhere;font-size:11px;font-weight:750}.market-discovery-stat-value-upside-positive{color:var(--up)}.market-discovery-stat-value-upside-neutral{color:var(--text)}.market-discovery-condition{border:1px solid var(--line);background:var(--bg-soft);color:var(--text-dim);border-radius:6px;padding:7px 9px;font-size:10px;line-height:1.45}.market-discovery-card-footer{align-items:center;margin-top:auto}.market-discovery-bucket{color:var(--text-mute);font-size:10px}.market-discovery-action,.stock-opportunity-action{cursor:pointer;font-family:var(--font-sans);white-space:nowrap;border:1px solid #0000;border-radius:4px;font-size:10px;font-weight:750}.market-discovery-action{border-color:color-mix(in srgb, var(--market-discovery-card-color) 25%, transparent);background:var(--market-discovery-card-soft);color:var(--market-discovery-card-color);padding:5px 12px}.stock-opportunity-action{border-color:color-mix(in srgb, var(--scan-category-color) 25%, transparent);background:var(--scan-category-soft);color:var(--scan-category-color)}.stock-opportunity-shell{margin-bottom:14px}.stock-opportunity-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-width:0;padding:11px 15px;display:flex}.stock-opportunity-toolbar-title{min-width:0;color:var(--text);white-space:nowrap;flex-wrap:wrap;align-items:baseline;gap:6px;font-size:13px;font-weight:750;display:flex}.stock-opportunity-count{color:var(--text-mute);font-size:11px;font-weight:600}.stock-opportunity-toolbar-spacer{flex:auto}.stock-opportunity-toolbar-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.stock-opportunity-segment{border:1px solid var(--line);background:var(--bg);border-radius:6px;gap:2px;min-width:0;max-width:100%;padding:3px;display:inline-flex}.stock-opportunity-segment-view{flex:none}.stock-opportunity-segment-filter{flex:auto}.stock-opportunity-segment-button{min-height:26px;color:var(--text-dim);cursor:pointer;font-family:var(--font-sans);white-space:nowrap;background:0 0;border:0;border-radius:4px;padding:4px 10px;font-size:11px;font-weight:550}.stock-opportunity-segment-button-active{background:var(--panel-top);color:var(--text);font-weight:700}.stock-opportunity-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.stock-opportunity-table-panel,.stock-opportunity-report-panel{min-width:0}.stock-opportunity-report-panel{overflow:hidden}.stock-opportunity-header,.stock-opportunity-row{min-width:980px;display:grid}.stock-opportunity-header{border-bottom:1px solid var(--line);background:var(--bg-soft);color:var(--text-mute);letter-spacing:0;padding:8px 15px;font-size:9px;font-weight:750}.stock-opportunity-header-cell{cursor:default;-webkit-user-select:none;user-select:none;align-items:center;gap:3px;display:flex}.stock-opportunity-header-cell-sortable{cursor:pointer}.stock-opportunity-header-cell-active,.stock-opportunity-header-cell-sortable:hover{color:var(--ai)}.stock-opportunity-sort-icon{font-size:7px}.stock-opportunity-row{border-bottom:1px solid var(--line-soft);align-items:center;padding:11px 15px;transition:background .1s}.stock-opportunity-row>*{min-width:0}.stock-opportunity-row:hover{background:#ffffff05}.stock-opportunity-symbol{min-width:0}.stock-opportunity-symbol-code,.stock-opportunity-price,.stock-opportunity-cell-value{color:var(--text);font-family:var(--font-mono);font-size:13px;font-weight:750}.stock-opportunity-symbol-code{overflow-wrap:anywhere;font-weight:850}.stock-opportunity-symbol-name{color:var(--text-mute);overflow-wrap:anywhere;margin-top:1px;font-size:10px}.stock-opportunity-risk{color:var(--warn);margin-top:1px;font-size:9px}.stock-opportunity-change{font-family:var(--font-mono);font-size:10px;font-weight:650}.stock-opportunity-score{justify-content:center;display:flex}.scan-score-ring{flex-shrink:0}.scan-score-ring-track{stroke:#ffffff12}.scan-score-ring-value{font-family:var(--font-mono);font-size:11px;font-weight:800}.scan-score-empty{color:var(--text-mute);font-size:11px}.stock-opportunity-score-ring{flex-shrink:0}.stock-opportunity-entry{min-width:0;padding-right:14px}.stock-opportunity-entry-note{color:var(--text-mute);font-size:10px;font-style:italic}.stock-opportunity-cell-label{color:var(--text-mute);margin-bottom:2px;font-size:9px}.stock-opportunity-upside-label{margin-top:1px;margin-bottom:0}.stock-opportunity-analyst{font-size:10px;font-weight:750}.stock-opportunity-muted-value{color:var(--text-mute);font-size:11px}.scan-value-positive{color:var(--up)}.scan-value-negative{color:var(--down)}.scan-value-neutral{color:var(--text-mute)}.scan-value-warning{color:var(--warn)}.stock-opportunity-actions{flex-direction:column;align-items:flex-end;gap:4px;min-width:0;display:flex}.stock-opportunity-action{min-height:24px;padding:4px 12px}.scan-entry-bar{width:100%;min-width:100px}.scan-entry-bar-labels{color:var(--text-mute);font-family:var(--font-mono);flex-wrap:wrap;gap:6px;margin-bottom:5px;font-size:10px;display:flex}.scan-entry-bar-divider{color:var(--line-strong)}.scan-entry-bar-label-value{overflow-wrap:anywhere}.scan-entry-bar-label-entry{color:var(--info)}.scan-entry-bar-label-stop{color:var(--down)}.scan-entry-bar-label-target{color:var(--up)}.scan-entry-bar-track{background:#ffffff0f;border-radius:2px;height:4px;position:relative}.scan-entry-bar-zone,.scan-entry-bar-marker,.scan-entry-bar-current{position:absolute}.scan-entry-bar-zone{background:var(--info);border-radius:2px;height:100%;top:0}.scan-entry-bar-marker{border-radius:1px;width:2px;height:8px;top:-2px}.scan-entry-bar-marker-stop{background:var(--down)}.scan-entry-bar-marker-target{background:var(--up)}.scan-entry-bar-current{background:var(--scan-entry-current-color);width:3px;height:10px;box-shadow:0 0 4px var(--scan-entry-current-color);border-radius:1.5px;top:-3px}.scan-row-tags{flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:100%;display:flex}.scan-row-tag{background:var(--scan-row-tag-bg);min-width:0;max-width:90px;color:var(--scan-row-tag-color);overflow-wrap:anywhere;border-radius:3px;padding:1px 5px;font-size:9px;font-weight:650;line-height:1.2;overflow:hidden}.stock-opportunity-empty{min-width:980px;color:var(--text-mute);text-align:center;padding:46px 0;font-size:13px}.stock-opportunity-report{min-width:0;padding:15px 18px;overflow:hidden}.stock-opportunity-report-meta{color:var(--text-mute);letter-spacing:0;margin-bottom:10px;font-size:10px;font-weight:750}.stock-opportunity-report-body{min-width:0;max-width:920px;color:var(--text-dim);word-break:break-word;white-space:pre-wrap;font-size:13px;line-height:1.78}.stock-opportunity-report-disclaimer{border-top:1px solid var(--line);color:var(--text-mute);margin-top:12px;padding-top:9px;font-size:11px;line-height:1.5}.stock-opportunity-report-empty{color:var(--text-mute);text-align:center;padding:20px 0;font-size:13px;line-height:1.55}.stock-opportunity-report-meta,.stock-opportunity-report-body,.stock-opportunity-report-disclaimer,.stock-opportunity-report-empty{overflow-wrap:anywhere}.scan-watchlist-errors{min-width:0;margin-top:14px}.scan-watchlist-errors-title{color:var(--text-mute);margin-bottom:6px;font-size:11px}.scan-watchlist-error-item{color:var(--down);overflow-wrap:anywhere;font-size:11px;line-height:1.45}.scan-empty-shell{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);min-height:300px;box-shadow:var(--shadow-panel), inset 0 1px 0 #ffffff06;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:14px;display:grid;overflow:hidden}.scan-empty-main{flex-direction:column;justify-content:center;min-width:0;padding:28px 30px;display:flex}.scan-empty-content{min-width:0}.scan-empty-kicker{background:var(--warn-soft);width:fit-content;color:var(--warn);border:1px solid #f5a5243d;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.scan-empty-title{max-width:660px;color:var(--text);margin-top:14px;font-size:24px;font-weight:850;line-height:1.25}.scan-empty-copy{max-width:680px;color:var(--text-dim);margin-top:10px;font-size:13px;line-height:1.75}.scan-empty-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:22px;display:grid}.scan-empty-step{border:1px solid var(--line-soft);background:var(--bg-soft);min-width:0;color:var(--text-dim);border-radius:8px;padding:10px 11px;font-size:11px;font-weight:750}.scan-empty-step span{color:var(--ai);font-family:var(--font-mono);margin-bottom:6px;font-size:10px;font-weight:900;display:block}.scan-empty-actions{border-left:1px solid var(--line);background:#0000001f;gap:10px;min-width:0;padding:16px;display:grid}.scan-empty-action{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--text-dim);text-align:left;cursor:pointer;font-family:var(--font-sans);border-radius:10px;gap:6px;padding:14px;display:grid;min-height:0!important}.scan-empty-action-primary{background:linear-gradient(180deg, #f5a52421, #f5a52409) var(--panel);border-color:#f5a52457}.scan-empty-action:disabled{cursor:wait;opacity:.62}.scan-empty-action-meta{color:var(--text-mute);font-size:10px;font-family:var(--font-mono);text-transform:uppercase;font-weight:800}.scan-empty-action-title{color:var(--text);font-size:13px;font-weight:850}.scan-empty-action-desc{color:var(--text-mute);font-size:11px;line-height:1.55}.scan-empty-action-cta{background:var(--bg-soft);width:fit-content;color:var(--ai);border-radius:6px;margin-top:4px;padding:5px 9px;font-size:11px;font-weight:850}.scan-empty-action-primary .scan-empty-action-cta{background:var(--ai);color:#000}@media (width<=1100px){.scan-hero{align-items:flex-start}.scan-hero-metrics{border-left:0;padding-left:0}.scan-hero-spacer{display:none}.scan-hero-actions{justify-content:flex-start;width:100%}.scan-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-opportunity-toolbar{flex-wrap:wrap}.stock-opportunity-toolbar-spacer{display:none}.stock-opportunity-toolbar-controls{flex:100%;justify-content:flex-start}.scan-empty-shell{grid-template-columns:minmax(0,1fr)}.scan-empty-actions{border-left:0;border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.scan-page-shell{padding:14px 12px 24px}.scan-hero{grid-template-columns:minmax(0,1fr);display:grid;gap:10px!important;padding:12px!important}.scan-hero-primary{min-width:0}.scan-hero-total{font-size:19px}.scan-hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.scan-hero-metric{border:1px solid var(--line-soft);background:#ffffff05;border-radius:7px;padding:8px 9px}.scan-hero-metric-label{margin-bottom:2px}.scan-hero-metric-value{font-size:16px}.scan-hero-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.scan-hero-message{text-align:left;grid-column:1/-1}.scan-action-button{width:100%;min-width:0;padding:7px 8px}.scan-category-grid,.market-discovery-grid{grid-template-columns:minmax(0,1fr)}.scan-category-card,.market-discovery-card{padding:12px}.scan-category-card-count{font-size:22px}.market-discovery-header{align-items:flex-start;padding:10px 12px}.market-discovery-grid{padding:12px}.market-discovery-card{min-height:0}.market-discovery-stats{gap:6px}.stock-opportunity-toolbar{align-items:flex-start;padding:10px 12px}.stock-opportunity-toolbar-title{width:100%}.stock-opportunity-toolbar-controls{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:7px;width:100%;display:grid}.stock-opportunity-segment{width:100%;overflow-x:auto}.stock-opportunity-segment-button{flex:1 0 auto;min-height:30px;padding:5px 9px}.stock-opportunity-header,.stock-opportunity-row,.stock-opportunity-empty{min-width:920px}.stock-opportunity-report{padding:12px}.stock-opportunity-report-meta{margin-bottom:8px;line-height:1.35}.stock-opportunity-report-body{font-size:12px;line-height:1.72}.stock-opportunity-report-disclaimer{margin-top:10px;padding-top:8px;font-size:10px}.scan-entry-bar{min-width:0}.scan-entry-bar-labels{gap:4px;font-size:9px;line-height:1.25}.scan-row-tags{gap:3px}.scan-row-tag{max-width:76px}.scan-empty-shell{min-height:0}.scan-empty-main{padding:16px 14px}.scan-empty-title{margin-top:10px;font-size:18px}.scan-empty-copy{margin-top:8px;font-size:12px;line-height:1.55}.scan-empty-flow,.scan-empty-actions{grid-template-columns:minmax(0,1fr)}.scan-empty-flow{gap:6px;margin-top:14px}.scan-empty-step{align-items:center;gap:8px;padding:8px 9px;font-size:10px;display:flex}.scan-empty-step span{margin-bottom:0}.scan-empty-actions{gap:8px;padding:10px}.scan-empty-action{gap:4px;padding:10px}.scan-empty-action-desc{line-height:1.4}.scan-empty-action-cta{margin-top:2px}}@media (width<=520px){.scan-hero-actions{grid-template-columns:minmax(0,1fr)}}.alerts-page{padding:18px 20px 24px}.alerts-summary-card,.alerts-feed-header,.alerts-side-section,.alerts-push-card,.alerts-toolbar{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel);box-shadow:inset 0 1px #ffffff06}.alerts-summary-card{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;margin-bottom:14px;padding:14px 16px;display:grid}.alerts-summary-kicker{color:var(--text-mute);letter-spacing:0;font-size:10px;font-weight:800}.alerts-summary-title{color:var(--text);margin-top:4px;font-size:18px;font-weight:850;line-height:1.2}.alerts-summary-copy{color:var(--text-sub);margin-top:4px;font-size:11px;line-height:1.45}.alerts-summary-number{color:var(--warn);font-family:var(--font-mono);font-size:34px;font-weight:900;line-height:1}.alerts-summary-meta{flex-wrap:wrap;justify-content:flex-end;gap:6px;min-width:0;display:flex}.alerts-summary-meta span{border:1px solid var(--line-soft);background:var(--bg-soft);color:var(--text-sub);white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750}.alerts-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:start;gap:14px;display:grid}.alerts-feed-panel,.alerts-side-panel,.alerts-history-panel,.alerts-notification-list,.alert-notification-card,.alert-notification-content,.alerts-push-card,.alerts-push-summary,.alerts-rule-row,.alerts-toolbar,.alerts-toolbar-actions{min-width:0}.alerts-feed-panel{gap:10px;display:grid}.alerts-side-panel{gap:12px;display:grid;position:sticky;top:82px}.alerts-feed-header{justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.alerts-history-panel{border-top:1px solid var(--line-soft);margin-top:16px;padding-top:14px}.alerts-history-header{margin-bottom:10px}.alerts-feed-title,.alerts-side-title,.alerts-push-title{color:var(--text);font-size:13px;font-weight:800}.alerts-feed-subtitle,.alerts-side-copy,.alerts-push-summary{color:var(--text-mute);margin-top:3px;font-size:11px;line-height:1.45}.alerts-push-summary{overflow-wrap:anywhere}.alerts-push-message{color:var(--up)}.alerts-feed-count{background:var(--warn-soft);color:var(--warn);border:1px solid #f5a5243d;border-radius:999px;flex:none;padding:5px 9px;font-size:11px;font-weight:800}.alerts-feed-actions,.alerts-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.alerts-feed-actions{flex:none;justify-content:flex-end;gap:8px}.alerts-toolbar{flex-wrap:wrap;margin-bottom:0}.alerts-scan-status{color:var(--text-dim);overflow-wrap:anywhere;font-size:12px;line-height:1.45}.alerts-scan-status .is-refreshing{color:var(--ai)}.alerts-scan-status .is-error{color:var(--down)}.alerts-toolbar-actions,.alerts-push-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.alerts-action-button,.alerts-section-toggle,.alerts-load-more-button,.alert-read-button,.alerts-rule-toggle,.alerts-market-tabs button{cursor:pointer;border-radius:8px;min-width:0;min-height:34px;font-size:12px;font-weight:800}.alerts-action-button,.alert-read-button{border:1px solid var(--line-strong);color:var(--text-dim);background:0 0;padding:7px 12px}.alerts-action-button.is-ai{background:var(--ai);color:#000;border-color:#0000}.alerts-action-button.is-success{background:var(--up);color:#000;border-color:#0000}.alerts-action-button:disabled,.alerts-section-toggle:disabled,.alerts-load-more-button:disabled,.alert-read-button:disabled{cursor:wait;opacity:.58}.alerts-section-toggle,.alerts-load-more-button{border:1px solid var(--line-strong);color:var(--text-dim);background:0 0}.alerts-section-toggle{flex:none;padding:6px 10px}.alerts-load-more-button{width:100%;margin-top:12px;padding:9px 12px}.alerts-market-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.alerts-market-tabs button{border:1px solid var(--line);background:var(--bg-soft);color:var(--text-dim)}.alerts-market-tabs button.is-active{background:var(--warn-soft);color:var(--warn);border-color:#f5a5246b}.alerts-market-tabs span{color:var(--text-mute);font-family:var(--font-mono);margin-left:5px;font-size:10px;font-weight:800}.alerts-state-block.state-block{margin:0}.alerts-state-block.state-block-compact{min-height:58px}.alerts-notification-list{gap:10px;display:grid}.alert-notification-card{--alert-level-color:var(--info);--alert-level-bg:var(--info-soft);border:1px solid var(--line);border-left:3px solid var(--alert-level-color);cursor:pointer;border-radius:10px;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.alert-notification-card.is-unread{background:linear-gradient(#ffffff05,#fff0)}.alert-notification-card.is-read{background:var(--panel)}.alert-notification-card.is-level-success{--alert-level-color:var(--up);--alert-level-bg:var(--up-soft)}.alert-notification-card.is-level-warning{--alert-level-color:var(--warn);--alert-level-bg:var(--warn-soft)}.alert-notification-card.is-level-info{--alert-level-color:var(--info);--alert-level-bg:var(--info-soft)}.alert-notification-dot{background:var(--alert-level-color);border-radius:50%;flex:0 0 10px;width:10px;height:10px;margin-top:6px}.alert-notification-card.is-read .alert-notification-dot{background:var(--line-strong)}.alert-notification-content{flex:auto}.alert-notification-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.alert-notification-title{min-width:0;color:var(--text);overflow-wrap:anywhere;font-size:13px;font-weight:750}.alert-notification-tag{background:var(--alert-level-bg);max-width:100%;color:var(--alert-level-color);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:750;overflow:hidden}.alert-notification-message{color:var(--text-dim);overflow-wrap:anywhere;margin-top:6px;font-size:12px;line-height:1.7}.alert-notification-meta{color:var(--text-mute);overflow-wrap:anywhere;margin-top:8px;font-size:10px;line-height:1.45}.alert-read-button{border-radius:6px;flex:none;min-height:30px;padding:5px 10px;font-size:11px;font-weight:750}.alerts-history-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.alerts-filter-field{gap:4px;min-width:0;display:grid}.alerts-filter-field span,.alerts-history-progress{color:var(--text-mute);font-size:10px;font-weight:750}.alerts-filter-field select,.alerts-filter-field input{border:1px solid var(--line);background:var(--bg-soft);width:100%;min-width:0;color:var(--text);border-radius:8px;padding:7px 10px;font-size:12px}.alerts-history-progress{margin-bottom:10px}.alerts-side-section,.alerts-push-card{padding:12px 14px}.alerts-collapsible-head{justify-content:space-between;align-items:flex-start;gap:10px;width:100%;display:flex}.alerts-rule-row{flex-wrap:wrap;gap:8px;margin-top:10px;margin-bottom:0;display:flex}.alerts-rule-row.is-saving{opacity:.75}.alerts-rule-toggle{border:1px solid var(--line-strong);color:var(--text-dim);white-space:nowrap;background:0 0;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:750}.alerts-rule-toggle.is-enabled{background:var(--ai-soft);color:var(--ai)}.alerts-push-card{gap:0;display:grid}.alerts-push-card.is-subscribed{border-color:#2fd06f47}.alerts-push-card.is-rebind-needed,.alerts-push-card.is-denied,.alerts-push-card.is-unavailable{border-color:#f5a52452}.alerts-push-settings{gap:10px;width:100%;margin-top:12px;display:grid}.alerts-push-help{border:1px solid var(--line);color:var(--text-dim);background:#ffffff06;border-radius:8px;padding:9px 10px;font-size:11px;line-height:1.6}.alerts-push-help.is-warn{color:var(--warn);background:var(--warn-soft);border-color:#f5a52459}.alerts-push-ios-guide{color:var(--text-dim);background:#2386ff14;border:1px solid #2386ff47;border-radius:8px;padding:10px 12px}.alerts-push-ios-title{color:var(--text);margin-bottom:6px;font-size:12px;font-weight:800}.alerts-push-ios-guide ol{margin:0;padding-left:18px}.alerts-push-ios-guide li{margin:4px 0;font-size:11px;line-height:1.55}.alerts-push-status-grid{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.alerts-push-status-line{border:1px solid var(--line);background:#ffffff05;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:9px 10px;display:flex}.alerts-push-status-line span{color:var(--text-mute);font-size:10px;font-weight:700}.alerts-push-status-line strong{min-width:0;color:var(--text-dim);text-align:right;overflow-wrap:anywhere;font-size:11px;font-weight:800}.alerts-push-status-line strong.is-ok{color:var(--up)}.alerts-push-status-line strong.is-warn{color:var(--warn)}.alerts-push-status-line strong.is-muted{color:var(--text-mute)}.alerts-push-actions{width:100%}.push-onboarding-backdrop{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000094;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.push-onboarding-modal{border:1px solid var(--line-strong);background:var(--panel);width:min(420px,100%);color:var(--text);border-radius:14px;padding:18px;box-shadow:0 24px 70px #00000073}.push-onboarding-icon{background:var(--ai-soft);width:34px;height:34px;color:var(--ai);border-radius:10px;place-items:center;margin-bottom:12px;font-size:12px;font-weight:900;display:grid}.push-onboarding-title{font-size:18px;font-weight:900;line-height:1.35}.push-onboarding-copy,.push-onboarding-note,.push-onboarding-error{color:var(--text-dim);margin-top:8px;font-size:13px;line-height:1.65}.push-onboarding-steps{border:1px solid var(--line);color:var(--text-dim);background:#ffffff06;border-radius:10px;margin:14px 0 0;padding:12px 12px 12px 32px;font-size:13px;line-height:1.7}.push-onboarding-steps li{margin:4px 0}.push-onboarding-note{border:1px solid var(--line);background:#ffffff06;border-radius:8px;padding:9px 10px}.push-onboarding-error{color:var(--down)}.push-onboarding-actions{grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:10px;margin-top:16px;display:grid}.push-onboarding-actions button{cursor:pointer;border-radius:9px;min-width:0;min-height:42px;font-size:13px;font-weight:900}.push-onboarding-primary{background:var(--up);color:#000;border:none}.push-onboarding-secondary{border:1px solid var(--line-strong);color:var(--text-dim);background:0 0}.push-onboarding-actions button:disabled{cursor:wait;opacity:.6}@media (width<=760px){.alerts-page{padding-top:14px;padding-bottom:22px}.alerts-summary-card{border-radius:10px;grid-template-columns:minmax(0,1fr);gap:10px;margin-bottom:10px;padding:12px}.alerts-summary-number{font-size:30px}.alerts-summary-meta{justify-content:flex-start}.alerts-layout{flex-direction:column;align-items:stretch;gap:10px;display:flex}.alerts-side-panel{order:2;gap:10px;width:100%;position:static}.alerts-feed-panel{order:1;gap:8px;width:100%}.alerts-feed-header{align-items:flex-start;padding:11px 12px}.alerts-feed-actions{flex-direction:column;align-items:flex-end;gap:6px}.alerts-feed-count{white-space:nowrap;font-size:10px}.alerts-history-filters{grid-template-columns:minmax(0,1fr)}.alerts-collapsible-head{align-items:center}.alerts-side-section,.alerts-push-card{border-radius:10px;padding:12px}.alerts-toolbar{grid-template-columns:minmax(0,1fr);gap:10px;margin-bottom:0;display:grid}.alerts-toolbar-actions,.alerts-push-actions{width:100%}.alerts-rule-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.alerts-rule-toggle{text-overflow:ellipsis;padding:8px 6px;overflow:hidden}.alerts-notification-list{gap:8px}.alert-notification-card{border-radius:10px;grid-template-columns:10px minmax(0,1fr);gap:10px;padding:12px;display:grid}.alert-notification-dot{margin-top:5px}.alert-notification-head{align-items:flex-start;gap:6px}.alert-notification-message{line-height:1.6}.alert-read-button{grid-column:1/-1;width:100%;min-height:34px;margin-top:2px}}.longterm-view{width:100%}.longterm-view .card,.longterm-panel{min-width:0;box-shadow:inset 0 1px #ffffff06;background:linear-gradient(180deg, #ffffff05, #fff0) var(--panel)!important}.longterm-panel--header{overflow:hidden}.longterm-backtest-panel,.longterm-panel--layer,.longterm-panel--thesis,.longterm-panel--backtest{height:100%}.longterm-header-layout,.longterm-score-breakdown,.longterm-summary-list,.longterm-entry-panel,.longterm-entry-grid,.longterm-layer-grid,.longterm-metric-grid,.longterm-thesis-grid,.longterm-note-list,.longterm-header-summary{min-width:0}.longterm-summary-list{overflow-wrap:anywhere}.longterm-score-breakdown{min-width:170px}.longterm-entry-panel{box-sizing:border-box}.longterm-entry-grid>*{min-width:0}.longterm-kv-row:last-child{border-bottom:0!important}.longterm-backtest-panel{border:1px solid var(--line);border-radius:var(--r-lg);padding:16px}.longterm-backtest-title{color:var(--text-mute);letter-spacing:0;margin-bottom:12px;font-size:10px;font-weight:700}.longterm-backtest-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.longterm-backtest-toolbar-label{color:var(--text-mute);flex:none;font-size:12px;font-weight:700}.longterm-backtest-periods{border:1px solid var(--line);background:var(--bg);border-radius:6px;gap:2px;min-width:0;padding:3px;display:inline-flex}.longterm-backtest-period-button{min-width:0;min-height:26px;color:var(--text-dim);cursor:pointer;font-family:var(--font-mono);white-space:nowrap;background:0 0;border:0;border-radius:4px;padding:4px 12px;font-size:11px;font-weight:600}.longterm-backtest-period-button.active{background:var(--panel-top);color:var(--text);font-weight:800}.longterm-backtest-run-button{background:var(--ai);color:#000;cursor:pointer;min-height:30px;font-family:var(--font-sans);border:0;border-radius:6px;font-size:11px;font-weight:800;margin:0!important;padding:6px 16px!important}.longterm-backtest-run-button:disabled{background:var(--panel-top);color:var(--text-mute);cursor:not-allowed}.longterm-backtest-error{color:var(--down);margin-bottom:8px;font-size:11px}.longterm-backtest-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.tw-longterm-view .longterm-backtest-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px}.longterm-backtest-metric{border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--bg-soft);min-width:0;padding:10px 12px}.longterm-backtest-metric-label{color:var(--text-mute);letter-spacing:0;margin-bottom:5px;font-size:9px;font-weight:700;display:block}.longterm-backtest-metric-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:16px;font-weight:800}.longterm-backtest-benchmark{border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--bg-soft);margin-top:10px;padding:10px 12px}.longterm-backtest-benchmark-row{color:var(--text-mute);justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.longterm-backtest-benchmark-value{text-align:right;min-width:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;font-weight:800}.longterm-backtest-benchmark-note{color:var(--text-mute);margin-top:6px;font-size:10px;line-height:1.45}.longterm-view .action-btn{width:auto;min-width:132px;margin-bottom:12px}.industry-comparison-card{margin-top:12px;overflow:hidden}.industry-comparison-header{flex-wrap:wrap;align-items:center;gap:8px 10px;min-width:0;padding:12px 14px 8px;display:flex}.industry-comparison-title{color:var(--text);font-size:13px;font-weight:800;line-height:1.25}.industry-comparison-group{min-width:0;color:var(--text-mute);overflow-wrap:anywhere;font-size:11px;font-weight:600;line-height:1.35}.industry-comparison-badges{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.industry-comparison-badge{border:1px solid color-mix(in srgb, var(--industry-badge-color) 32%, transparent);background:color-mix(in srgb, var(--industry-badge-color) 13%, transparent);color:var(--industry-badge-color);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:800;line-height:1.35}.industry-comparison-peers{color:var(--text-mute);overflow-wrap:anywhere;padding:0 14px 9px;font-size:11px;line-height:1.45}.industry-comparison-section-title{color:var(--text-mute);letter-spacing:0;padding:5px 14px 6px;font-size:10px;font-weight:800}.industry-comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 14px 12px;display:grid}.industry-comparison-metric{border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--bg-soft);flex-direction:column;min-width:0;min-height:118px;padding:10px 11px;display:flex}.industry-comparison-metric-head{color:var(--text-mute);margin-bottom:4px;font-size:10px;font-weight:700;line-height:1.25}.industry-comparison-metric-value-row{flex-wrap:wrap;align-items:baseline;gap:7px;min-width:0;margin-bottom:4px;display:flex}.industry-comparison-metric-value{color:var(--text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:18px;font-weight:800;line-height:1.15}.industry-comparison-diff,.industry-comparison-comment{color:var(--industry-metric-color)}.industry-comparison-diff{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11px;font-weight:800;line-height:1.2}.industry-comparison-median{color:var(--text-mute);margin-bottom:5px;font-size:10px;line-height:1.35}.industry-comparison-median span{color:var(--text-sub);margin-left:6px;display:inline-block}.industry-comparison-comment{overflow-wrap:anywhere;margin-top:auto;font-size:10px;line-height:1.4}.industry-comparison-footer{border-top:1px solid var(--line-soft);color:var(--text-sub);padding:8px 14px 11px;font-size:10px;line-height:1.45}.industry-comparison-launch{min-height:34px;width:100%!important;margin:12px 0!important}.industry-comparison-unavailable{padding:13px 14px}.industry-comparison-unavailable-message{color:var(--text-mute);margin-top:6px;font-size:12px;line-height:1.45}.tw-longterm-view>.industry-comparison-card,.tw-longterm-view>.industry-comparison-launch{grid-column:1/-1}.longterm-launch{padding:18px 0 24px}.longterm-launch-card{background:linear-gradient(180deg, #f5a5240e, #ffffff03) var(--panel);border-radius:var(--r-lg);border:1px solid #f5a52433;justify-content:space-between;align-items:center;gap:18px;min-height:112px;padding:18px 20px;display:flex}.longterm-launch-card--error{background:linear-gradient(180deg, #f8514913, #ffffff03) var(--panel);border-color:#f8514947}.longterm-launch-title{color:var(--text);margin-top:4px;font-size:20px;font-weight:800}.longterm-launch-copy{max-width:520px;color:var(--text-dim);margin-top:4px;font-size:12px;line-height:1.6}.longterm-layer-grid{align-items:stretch}.longterm-layer-card{height:100%}.tw-longterm-view{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-bottom:24px;display:grid}.tw-longterm-view>.action-btn,.tw-longterm-view>.longterm-panel--header,.tw-longterm-view>.longterm-panel--thesis,.tw-longterm-view>.longterm-panel--backtest,.tw-longterm-view.etf>.card{grid-column:1/-1}.tw-longterm-view .card{margin-bottom:0}.tw-longterm-view .card h3{color:var(--text-mute);letter-spacing:0;margin-bottom:12px}.tw-longterm-view .ind-grid,.tw-longterm-view .longterm-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tw-longterm-view .entry-score-wrap{margin-bottom:10px}.tw-longterm-view .entry-score-num{font-size:48px}.tw-longterm-view .score-breakdown{grid-template-columns:repeat(4,minmax(0,1fr))}.tw-longterm-view .longterm-summary-list{background:var(--bg-soft);border:1px solid var(--line-soft);border-radius:var(--r-md);padding:12px 14px}.tw-longterm-view .score-item,.tw-longterm-view .ind-item,.tw-longterm-view .stat-item{min-width:0}.tw-longterm-view .score-item span,.tw-longterm-view .ind-item span,.tw-longterm-view .stat-item span,.longterm-metric-grid span{overflow-wrap:anywhere}.longterm-source-notice{border-radius:var(--r-md);background:#d2992212;border:1px solid #d2992247;padding:11px 12px}.longterm-source-notice-title{color:var(--text);font-size:12px;font-weight:800;line-height:1.35}.longterm-source-notice-copy{color:var(--text-mute);overflow-wrap:anywhere;margin-top:4px;font-size:11px;line-height:1.5}.longterm-source-summary{border:1px solid var(--line-soft);border-radius:var(--r-md);background:#ffffff06;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.longterm-source-summary-main{align-items:center;gap:10px;min-width:0;display:flex}.longterm-source-summary-providers{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.longterm-source-chip{border:1px solid var(--line-soft);border-radius:var(--r-sm);background:var(--bg-soft);color:var(--text-dim);padding:5px 7px;font-size:10px;font-weight:700;line-height:1}.longterm-source-summary-status{min-width:220px;color:var(--text-mute);text-align:right;justify-content:flex-end;align-items:center;gap:8px;font-size:11px;line-height:1.45;display:flex}.longterm-source-summary-status span:first-child{color:var(--text-dim);white-space:nowrap;font-weight:800}@media (width<=1100px){.longterm-layer-grid,.tw-longterm-view{grid-template-columns:minmax(0,1fr)!important}.longterm-backtest-panel,.longterm-panel--layer,.longterm-panel--thesis,.longterm-panel--backtest{height:auto}.tw-longterm-view .score-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.longterm-launch-card{flex-direction:column;align-items:stretch}.longterm-launch-card .action-btn,.longterm-view .action-btn{width:100%}.longterm-view{overflow-x:hidden}.longterm-panel{padding:12px!important}.longterm-source-summary,.longterm-source-summary-main,.longterm-source-summary-status{flex-direction:column;align-items:flex-start}.longterm-source-summary-status{text-align:left;gap:4px;min-width:0}.longterm-panel--header>.longterm-header-layout{gap:12px!important}.longterm-panel--header svg{width:84px;height:84px}.longterm-header-summary{min-width:0!important}.longterm-score-breakdown{min-width:0;grid-template-columns:minmax(0,1fr)!important;gap:7px!important;width:100%!important;display:grid!important}.longterm-layer-score{min-width:0}.longterm-entry-panel{margin-top:10px!important;padding:10px!important}.longterm-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}.longterm-metric-grid,.longterm-thesis-grid,.tw-longterm-view .score-breakdown,.tw-longterm-view .ind-grid,.longterm-view .stat-grid{grid-template-columns:minmax(0,1fr)!important}.longterm-backtest-toolbar{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.longterm-backtest-periods{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.longterm-backtest-period-button,.longterm-backtest-run-button{width:100%}.longterm-backtest-metrics,.tw-longterm-view .longterm-backtest-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.longterm-backtest-metric{padding:9px 10px}.longterm-backtest-benchmark-row{flex-direction:column;align-items:flex-start;gap:4px}.longterm-backtest-benchmark-value{text-align:left}.industry-comparison-card{margin-top:10px}.industry-comparison-header{flex-direction:column;align-items:flex-start;padding:11px 12px 7px}.industry-comparison-badges{width:100%;margin-left:0}.industry-comparison-badge{text-align:center;flex:96px}.industry-comparison-peers,.industry-comparison-section-title{padding-left:12px;padding-right:12px}.industry-comparison-grid{grid-template-columns:minmax(0,1fr);gap:7px;padding:0 12px 10px}.industry-comparison-metric{min-height:0;padding:9px 10px}.industry-comparison-metric-value{font-size:17px}.industry-comparison-footer,.industry-comparison-unavailable{padding-left:12px;padding-right:12px}.tw-longterm-view{gap:10px;padding-bottom:18px}.tw-longterm-view .card h3{margin-bottom:9px}.tw-longterm-view .entry-score-wrap{margin-bottom:8px}.tw-longterm-view .entry-score-num{font-size:40px}.tw-longterm-view .longterm-summary-list{padding:9px 10px}.news-meta,.sentiment-bar{flex-wrap:wrap}}
