:root{--bg:#050505;--surface-1:#0d0d0d;--surface-2:#121212;--surface-3:#181818;--surface-4:#1e1e1e;--border:#ffffff0b;--border-2:#ffffff12;--border-3:#ffffff29;--text-1:#ececec;--text-2:#7a7a7a;--text-3:#3d3d3d;--accent:#e8a020;--accent-dim:#e8a0201f;--pos:#30d158;--pos-dim:#30d1581a;--neg:#ff453a;--neg-dim:#ff453a1a;--blue:#0a84ff;--font-ui:"IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", "Roboto Mono", monospace;--radius:3px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{background:radial-gradient(ellipse 110% 45% at 50% -15%, #e8a02012 0%, transparent 100%), radial-gradient(ellipse 55% 70% at 100% 110%, #0c144673 0%, transparent 100%), var(--bg);color:var(--text-1);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}body:before{content:"";z-index:9999;pointer-events:none;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:256px 256px;position:fixed;inset:0}#root{text-align:left;border:none;flex-direction:column;width:100%;max-width:100%;height:100%;display:flex}*{scrollbar-width:none}::-webkit-scrollbar{display:none}button{touch-action:manipulation}.pos{color:var(--pos)}.neg{color:var(--neg)}.c-accent{color:var(--accent)}.hdr{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);z-index:100;background:#050505e0;flex-shrink:0;align-items:center;gap:18px;height:40px;padding:0 20px;display:flex;position:sticky;top:0}.hdr-brand{font-family:var(--font-mono);color:var(--accent);letter-spacing:.18em;text-transform:uppercase;flex-shrink:0;font-size:11px;font-weight:600}.hdr-spacer{flex:1}.hdr-currency{font-family:var(--font-mono);-webkit-user-select:none;user-select:none;align-items:center;gap:4px;font-size:11px;display:flex}.hdr-ccy-sep{color:var(--text-3)}.hdr-ccy-on{color:var(--text-1);cursor:default;font-weight:600}.hdr-ccy-off{color:var(--text-3);cursor:pointer;border-radius:3px;padding:1px 3px;transition:color .1s}.hdr-ccy-off:hover{color:var(--text-2)}.hdr-wl{font-family:var(--font-mono);color:var(--text-3);cursor:default;align-items:center;gap:5px;font-size:11px;display:flex}.hdr-wl-star{color:var(--accent);font-size:10px}.hdr-status{align-items:center;gap:7px;display:flex}.hdr-dot{background:var(--pos);border-radius:50%;flex-shrink:0;width:5px;height:5px;transition:background .3s}.hdr-dot.loading{animation:1s ease-in-out infinite dot-pulse}.hdr-dot.refreshing{opacity:.55;animation:2.4s ease-in-out infinite dot-pulse}.hdr-dot.offline{background:var(--text-3)}@keyframes dot-pulse{0%,to{opacity:1}50%{opacity:.3}}.hdr-clock{font-family:var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:11px}.sl-page{flex-direction:column;min-height:calc(100svh - 48px);display:flex;overflow-y:auto}.sl-page.minimal .sl-container{justify-content:center;align-items:center;max-width:680px;min-height:100svh;padding:24px;display:flex}.sl-page.minimal .sl-hero{text-align:center;width:100%;padding:0}.sl-page.minimal .sl-brand-wrap{justify-content:center}.sl-page.minimal .sl-pill-wrap{margin:0 auto}.sl-page.minimal .sl-title{margin-bottom:18px}.sl-container{width:100%;max-width:1120px;margin:0 auto;padding:0 24px 80px}.sl-hero{text-align:left;padding:66px 0 32px;position:relative}.sl-hero:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(#ffffff0a 0%,#0000 65%);border-radius:50%;width:860px;height:620px;position:fixed;top:-100px;left:50%;transform:translate(-50%)}.sl-brand-wrap{z-index:1;align-items:center;gap:10px;margin-bottom:16px;display:flex;position:relative}.sl-brand{font-family:var(--font-mono);color:var(--accent);letter-spacing:.15em;text-transform:uppercase;font-size:10px;font-weight:600}.sl-logo{opacity:.92;width:18px;height:18px;display:block}.sl-title{font-family:var(--font-ui);color:var(--text-1);letter-spacing:-.025em;z-index:1;margin-bottom:22px;font-size:clamp(36px,6vw,56px);font-weight:700;line-height:1.08;position:relative}.sl-cursor{color:var(--text-3);animation:1s step-end infinite sl-blink}@keyframes sl-blink{0%,to{opacity:1}50%{opacity:0}}.sl-pill-wrap{z-index:5;width:100%;max-width:540px;position:relative}.sl-pill{background:var(--border);border:1px solid var(--border-2);border-radius:100px;align-items:center;gap:10px;width:100%;height:52px;padding:0 8px 0 20px;transition:border-color .2s;display:flex}.sl-pill:focus-within{border-color:var(--border-3)}.sl-pill-icon{font-family:var(--font-mono);color:var(--text-3);-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:13px}.sl-pill-input{color:var(--text-1);font-family:var(--font-ui);background:0 0;border:none;outline:none;flex:1;font-size:15px}.sl-pill-input::placeholder{color:var(--text-3)}.sl-pill-clear{color:var(--text-3);cursor:pointer;background:0 0;border:none;border-radius:100px;flex-shrink:0;padding:6px 10px;font-size:14px;line-height:1;transition:color .1s}.sl-pill-clear:hover{color:var(--text-1)}.sl-autofill{border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f0f0ff5;border-radius:9px;margin-top:8px;overflow:hidden}.sl-autofill-item{text-align:left;width:100%;color:var(--text-2);cursor:pointer;border:none;border-bottom:1px solid var(--border);font-family:var(--font-ui);background:0 0;justify-content:space-between;align-items:center;padding:9px 11px;font-size:12px;display:flex}.sl-autofill-item:last-child{border-bottom:none}.sl-autofill-item.on,.sl-autofill-item:hover{color:var(--text-1);background:#ffffff08}.sl-autofill-item strong{color:var(--text-1);font-weight:600}.sl-autofill-symbol{font-family:var(--font-mono);color:var(--accent);letter-spacing:.04em;flex-shrink:0;min-width:64px;margin-right:12px;font-size:11px}.sl-autofill-exch{color:var(--text-3);font-family:var(--font-mono);flex-shrink:0;margin-left:10px;font-size:10px}.sl-hint{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.02em;z-index:1;margin-top:12px;font-size:11px;position:relative}.sl-hint-refresh{align-items:center;gap:5px;display:inline-flex}.sl-hint-dot{background:var(--pos);opacity:.6;border-radius:50%;width:4px;height:4px;animation:2s ease-in-out infinite dot-pulse;display:inline-block}.sl-content{grid-template-columns:minmax(0,1fr);align-items:start;gap:22px;display:grid}.sl-content.with-rail{grid-template-columns:minmax(0,1fr) 320px}.sl-main{min-width:0}.sl-rail{align-self:start;position:sticky;top:62px}.sl-head{border-bottom:1px solid var(--border);grid-template-columns:1fr 80px 80px 88px 30px;gap:8px;margin:0 -10px 4px;padding:0 10px 8px;display:grid}.sl-sort-btn{color:var(--text-3);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;text-align:right;cursor:pointer;background:0 0;border:none;padding:0;font-size:10px}.sl-sort-btn.left{text-align:left}.sl-sort-btn:hover{color:var(--text-2)}.sl-sort-btn.on{color:var(--accent)}.sl-row{border-bottom:1px solid var(--border);cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin:0 -10px;padding:13px 10px;transition:background 80ms;display:flex}.sl-row:hover{background:#ffffff07}.sl-row.active{background:var(--accent-dim);border:1px solid #e8a02033}.sl-row-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.sl-ticker{font-family:var(--font-mono);color:var(--accent);letter-spacing:.04em;flex-shrink:0;min-width:64px;font-size:12px;font-weight:600}.sl-name{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.sl-exch{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.04em;flex-shrink:0;font-size:10px}.sl-row-right{flex-shrink:0;align-items:center;gap:14px;display:flex}.sl-price{font-family:var(--font-mono);color:var(--text-1);font-variant-numeric:tabular-nums;text-align:right;min-width:66px;font-size:13px;font-weight:500}.sl-chg{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;min-width:54px;font-size:12px}.sl-chg.pos{color:var(--pos)}.sl-chg.neg{color:var(--neg)}.sl-chg.neu{color:var(--text-3)}.sl-cap{font-family:var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums;text-align:right;min-width:56px;font-size:11px}.sl-star{cursor:pointer;touch-action:manipulation;background:0 0;border:none;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .1s}.sl-star.on{color:var(--accent)}.sl-star.off{color:var(--text-3)}.sl-star.off:hover{color:var(--accent)}.sl-empty{font-family:var(--font-mono);color:var(--text-3);text-align:center;padding:48px 0;font-size:12px}.sl-empty-hint{color:var(--text-3);opacity:.7;letter-spacing:.04em;margin-top:6px;font-size:10px}@keyframes sl-pulse{0%,to{opacity:.25}50%{opacity:.5}}.sl-skel-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:13px 10px;display:flex}.sl-skel-bar{background:var(--surface-3);border-radius:3px;height:10px;animation:1.6s ease-in-out infinite sl-pulse}@media (width<=980px){.sl-content.with-rail{grid-template-columns:minmax(0,1fr)}.sl-rail{position:static}}@media (width<=640px){.sl-hero{padding:52px 0 28px}.sl-name{max-width:130px}.sl-cap,.sl-exch{display:none}.sl-head{grid-template-columns:1fr 80px 80px 30px}.sl-head .sl-sort-cap,.sl-hint{display:none}}@media (width<=400px){.sl-page.minimal .sl-title{font-size:clamp(28px,9vw,48px)}.sl-pill-wrap{max-width:calc(100vw - 48px)}}.sd-page{-webkit-overflow-scrolling:touch;min-height:calc(100svh - 48px);overflow-y:auto}.sd-container{width:100%;max-width:820px;margin:0 auto;padding:0 24px 80px}.sd-nav{padding:24px 0 0}.sd-back{color:var(--text-3);font-family:var(--font-mono);cursor:pointer;touch-action:manipulation;background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:11px;transition:color .15s;display:flex}.sd-back:hover{color:var(--text-1)}.sd-hero{padding:28px 0 24px}.sd-hero-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.sd-ticker-line{align-items:center;gap:10px;margin-bottom:6px;display:flex}.sd-logo{border:1px solid var(--border);object-fit:cover;background:var(--surface-2);border-radius:6px;flex-shrink:0;width:28px;height:28px}.sd-ticker{font-family:var(--font-mono);color:var(--accent);letter-spacing:.02em;font-size:24px;font-weight:700;line-height:1}.sd-star{cursor:pointer;color:var(--text-3);touch-action:manipulation;background:0 0;border:none;padding:2px 4px;font-size:16px;line-height:1;transition:color .1s}.sd-star.on,.sd-star:hover{color:var(--accent)}.sd-company{color:var(--text-2);margin-bottom:10px;font-size:14px}.sd-chips{gap:12px;display:flex}.sd-chip{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.06em;font-size:10px}.sd-price-block{text-align:right}.sd-price{font-family:var(--font-mono);color:var(--text-1);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:34px;font-weight:700;line-height:1}.sd-chg-row{justify-content:flex-end;align-items:center;gap:8px;margin-top:6px;display:flex}.sd-chg{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px;font-weight:500}.sd-chg.pos{color:var(--pos)}.sd-chg.neg{color:var(--neg)}.sd-ccy-note{font-family:var(--font-mono);color:var(--text-3);font-size:10px}.sd-52w{font-family:var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums;align-items:center;gap:10px;padding:14px 0 2px;font-size:11px;display:flex}.sd-52w-track{background:var(--surface-3);border-radius:1px;flex:1;height:2px;position:relative}.sd-52w-dot{background:var(--text-1);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;transform:translate(-50%,-50%)}.sd-52w-label{letter-spacing:.06em;text-transform:uppercase;font-size:10px}.sd-divider{background:var(--border);height:1px}.sd-chart{padding:20px 0}.sd-chart-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.sd-chart-label{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:10px;display:flex}.sd-chart-source{font-family:var(--font-mono);color:var(--text-3);opacity:.6;letter-spacing:.04em;font-size:9px}.sd-live{color:var(--pos)}.sd-ranges{align-items:center;gap:6px;display:flex}.sd-range-btn{border:1px solid var(--border);color:var(--text-3);font-family:var(--font-mono);letter-spacing:.04em;cursor:pointer;background:0 0;border-radius:999px;padding:4px 9px;font-size:10px;transition:color .12s,border-color .12s,background .12s}.sd-range-btn:hover{color:var(--text-2);border-color:var(--border-2)}.sd-range-btn.on{color:var(--accent);background:#e8a02014;border-color:#e8a02059;font-weight:600}.sd-desc{color:var(--text-2);max-width:72ch;padding-top:14px;font-size:13px;line-height:1.6}.sd-metrics{padding:20px 0}.sd-metrics-grid{grid-template-columns:repeat(4,1fr);gap:24px 16px;display:grid}.sd-kv{flex-direction:column;gap:5px;display:flex}.sd-k{color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;font-size:10px}.sd-v{font-family:var(--font-mono);color:var(--text-1);font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.sd-v-flex{font-family:var(--font-mono);color:var(--text-1);align-items:center;padding-top:2px;font-size:15px;font-weight:500;display:flex}.sd-analyst{padding:20px 0}.sd-section-label{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px;font-size:10px}.sd-analyst-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.sd-cons{font-family:var(--font-mono);letter-spacing:.06em;flex-shrink:0;font-size:11px;font-weight:700}.sd-cons.buy{color:var(--pos)}.sd-cons.sell{color:var(--neg)}.sd-cons.hold{color:var(--text-2)}.sd-bars{flex:1;gap:2px;height:3px;display:flex}.sd-bar{border-radius:2px;min-width:4px}.sd-bar-buy{background:var(--pos)}.sd-bar-hold{background:var(--text-3)}.sd-bar-sell{background:var(--neg)}.sd-bar-counts{font-family:var(--font-mono);color:var(--text-3);justify-content:space-between;margin-bottom:4px;font-size:9px;display:flex}.sd-analyst-meta{color:var(--text-3);font-size:11px;line-height:1.6}.sd-analyst-meta+.sd-analyst-meta{margin-top:4px}.sd-news-item{border-top:1px solid var(--border);padding:10px 0}.sd-news-item:first-of-type{border-top:none;padding-top:0}.sd-news-title{color:var(--text-1);margin-bottom:3px;font-size:12px;line-height:1.5;text-decoration:none;display:block}.sd-news-title:hover{color:var(--accent)}.sd-news-meta{font-family:var(--font-mono);color:var(--text-3);font-size:10px}.sd-expand-btn{font-family:var(--font-mono);color:var(--text-3);cursor:pointer;letter-spacing:.04em;background:0 0;border:none;padding:6px 0 0;font-size:10px;transition:color .1s}.sd-expand-btn:hover{color:var(--text-2)}@keyframes sd-pulse{0%,to{opacity:.2}50%{opacity:.45}}.sd-skel{background:var(--surface-3);border-radius:3px;height:9px;margin-bottom:9px;animation:1.6s ease-in-out infinite sd-pulse}.sd-skel-sm{width:40%;animation-delay:.1s}.sd-skel-md{width:70%;animation-delay:.2s}.sd-skel-lg{width:90%;animation-delay:50ms}.sd-insuf{color:var(--text-3);font-size:11px;font-family:var(--font-mono);letter-spacing:.02em}.sd-earn-section{margin-top:14px}.sd-earn-title{font-size:10px;font-family:var(--font-mono);color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}.sd-earn-grid{grid-template-columns:1fr 1fr 1fr;gap:4px 12px;display:grid}.sd-earn-hd{color:var(--text-3);font-size:10px}.sd-earn-hd.right{text-align:right}.sd-earn-period{color:var(--text-2);font-size:11px}.sd-earn-val{color:var(--text-1);text-align:right;font-size:11px}@media (width<=640px){.sd-price{font-size:26px}.sd-ticker{font-size:20px}.sd-hero-row{flex-direction:column;gap:12px}.sd-price-block{text-align:left}.sd-chg-row{justify-content:flex-start}.sd-metrics-grid{grid-template-columns:repeat(2,1fr)}.sd-metrics-grid .sd-kv:last-child:nth-child(odd){grid-column:span 2}.sd-container{padding:0 16px 80px}}.ts-app{flex-direction:column;min-height:100%;display:flex}.ts-rail-card{border:1px solid var(--border);background:#ffffff05;border-radius:10px;margin-bottom:12px;padding:14px}.ts-rail-title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:10px;font-size:10px}.ts-watch-row{grid-template-columns:1fr 72px 78px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.ts-watch-row:last-child{margin-bottom:0}.ts-watch-ticker{font-family:var(--font-mono);color:var(--accent);align-items:center;gap:6px;font-size:11px;display:inline-flex}.ts-watch-price{font-family:var(--font-mono);color:var(--text-2);text-align:right;font-size:11px}.ts-input{border:1px solid var(--border);width:100%;color:var(--text-1);font-family:var(--font-mono);background:#ffffff05;border-radius:7px;outline:none;padding:6px 7px;font-size:11px}.ts-input:focus{border-color:var(--border-2)}.ts-input[type=number]{-moz-appearance:textfield}.ts-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}.ts-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.ts-muted{color:var(--text-3);font-size:11px;line-height:1.5}.ts-table{border-collapse:collapse;width:100%}.ts-table th{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;text-align:right;white-space:nowrap;padding:0 0 6px;font-size:9px}.ts-table th:first-child,.ts-table td:first-child{text-align:left}.ts-table td{border-top:1px solid var(--border);color:var(--text-2);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;padding:6px 0;font-size:11px}.ts-table .ts-col-ticker{color:var(--accent);font-family:var(--font-mono)}.ts-pos{color:var(--pos)}.ts-neg{color:var(--neg)}.ts-inline-form{grid-template-columns:1fr auto;gap:8px;margin:0 0 10px;display:grid}.ts-btn{border:1px solid var(--border);color:var(--text-2);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:7px;padding:0 8px;font-size:10px;transition:color .1s,border-color .1s}.ts-btn:hover{color:var(--text-1);border-color:var(--border-2)}.ts-earn-item{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:7px 0;display:flex}.ts-earn-item:first-of-type{border-top:none;padding-top:0}.ts-earn-ticker{font-family:var(--font-mono);color:var(--accent);font-size:11px}.ts-earn-date{font-family:var(--font-mono);color:var(--text-2);font-size:11px}.ts-toast{background:var(--surface-3);border:1px solid var(--border-2);font-family:var(--font-mono);color:var(--text-1);z-index:1000;pointer-events:none;white-space:nowrap;border-radius:20px;padding:8px 18px;font-size:12px;animation:.18s ts-toast-in;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}@keyframes ts-toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.ai-wrap{padding:20px 20px 28px}.ai-hd{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.ai-title{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600}.ai-gen-btn{font-family:var(--font-ui);color:var(--accent);cursor:pointer;touch-action:manipulation;white-space:nowrap;background:0 0;border:none;padding:0;font-size:11px;transition:opacity .1s}.ai-gen-btn:hover:not(:disabled){opacity:.7}.ai-gen-btn:disabled{opacity:.35;cursor:not-allowed}.ai-key-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.ai-key-input{border:none;border-bottom:1px solid var(--border-2);color:var(--text-2);font-family:var(--font-mono);background:0 0;outline:none;flex:1;padding:4px 0;font-size:11px;transition:border-color .15s}.ai-key-input::placeholder{color:var(--text-3)}.ai-key-input:focus{border-color:var(--accent)}.ai-key-save{font-family:var(--font-mono);color:var(--text-3);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:10px;transition:color .1s}.ai-key-save:hover{color:var(--text-1)}.ai-key-clear{font-family:var(--font-mono);color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:0;font-size:10px;transition:color .1s}.ai-key-clear:hover{color:var(--neg)}.ai-key-hint{color:var(--text-3);margin-bottom:12px;font-size:10px;line-height:1.5}.ai-signal-row{align-items:center;gap:10px;margin-bottom:10px;display:flex}.ai-signal{font-family:var(--font-mono);letter-spacing:.06em;font-size:11px;font-weight:700}.sig-buy{color:var(--pos)}.sig-sell{color:var(--neg)}.sig-hold{color:var(--text-2)}.sig-watch{color:var(--accent)}.ai-sent{color:var(--text-3);font-size:11px}.sent-bullish{color:var(--pos)}.sent-bearish{color:var(--neg)}.sent-neutral{color:var(--text-2)}.ai-summary{color:var(--text-1);margin-bottom:14px;font-size:12px;line-height:1.65}.ai-cases{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.ai-case-hd{letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:600}.bull-hd{color:var(--pos)}.bear-hd{color:var(--neg)}.ai-case-list{list-style:none}.ai-case-item{color:var(--text-2);margin-bottom:3px;padding-left:10px;font-size:11px;line-height:1.5;position:relative}.ai-case-item:before{content:"·";color:var(--text-3);position:absolute;left:0}.ai-range-hd{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:600}.ai-range-track{background:var(--surface-4);border-radius:1px;height:2px;margin-bottom:6px;position:relative}.ai-range-fill{background:var(--border-2);border-radius:1px;position:absolute;inset:0}.ai-range-now{background:var(--text-1);border-radius:50%;width:5px;height:5px;position:absolute;top:-1.5px;transform:translate(-50%)}.ai-range-mid{background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:-2.5px;transform:translate(-50%)}.ai-range-nums{font-family:var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:10px;display:flex}.ai-error{color:var(--neg);font-size:12px;line-height:1.5}@keyframes ai-pulse{0%,to{opacity:.35}50%{opacity:.6}}.ai-skel{background:var(--surface-3);border-radius:2px;height:10px;margin-bottom:8px;animation:1.6s ease-in-out infinite ai-pulse}.ai-key-display{font-family:var(--font-mono);color:var(--text-3);flex:1;font-size:11px}
