wealth-alpha-chat-widget 1.0.9 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.css CHANGED
@@ -283,11 +283,11 @@
283
283
  color: var(--red);
284
284
  }
285
285
  .chat_markdown .sec .lbl {
286
- font-size: 13px;
286
+ font-size: 10.5px;
287
287
  font-weight: 700;
288
288
  text-transform: uppercase;
289
- letter-spacing: 0.05em;
290
- color: var(--text-muted, #666);
289
+ letter-spacing: 0.7px;
290
+ color: #1c2c5b;
291
291
  margin-bottom: 6px;
292
292
  display: flex;
293
293
  align-items: center;
@@ -657,11 +657,11 @@
657
657
  background: #fbfcff;
658
658
  }
659
659
  .chat_markdown .evt .body .lbl {
660
- font-size: 13px;
660
+ font-size: 10.5px;
661
661
  font-weight: 700;
662
662
  text-transform: uppercase;
663
- letter-spacing: 0.05em;
664
- color: var(--text-muted, #666);
663
+ letter-spacing: 0.7px;
664
+ color: #1c2c5b;
665
665
  margin-top: 8px;
666
666
  margin-bottom: 6px;
667
667
  }
@@ -680,15 +680,24 @@
680
680
  display: flex;
681
681
  align-items: center;
682
682
  gap: 6px;
683
+ padding: 9px 12px;
684
+ border: 1px solid;
685
+ border-radius: 10px;
683
686
  }
684
687
  .chat_markdown .ih.neg {
685
688
  color: #dc2626;
689
+ border-color: #fca5a5;
690
+ background: #fef2f2;
686
691
  }
687
692
  .chat_markdown .ih.mod {
688
693
  color: #b45309;
694
+ border-color: #f3c98a;
695
+ background: #fffaf2;
689
696
  }
690
697
  .chat_markdown .ih.pos {
691
698
  color: #16a34a;
699
+ border-color: #86efac;
700
+ background: #f3fdf6;
692
701
  }
693
702
  .chat_markdown .pill {
694
703
  display: block;
@@ -1286,7 +1295,7 @@
1286
1295
  }
1287
1296
  .chat_markdown .dstock .fs .num {
1288
1297
  font-weight: 800;
1289
- font-size: 18px;
1298
+ font-size: 17px;
1290
1299
  color: #1c2c5b;
1291
1300
  line-height: 1;
1292
1301
  }
@@ -1297,27 +1306,15 @@
1297
1306
  letter-spacing: 0.4px;
1298
1307
  margin-top: 2px;
1299
1308
  }
1300
- .chat_markdown .qrow {
1301
- display: flex;
1302
- gap: 6px;
1303
- flex-wrap: wrap;
1304
- align-items: center;
1309
+ .chat_markdown .dstock .nm {
1310
+ font-size: 14px;
1305
1311
  }
1312
+ .chat_markdown .qrow,
1306
1313
  .chat_markdown .qrow.qrow-grid {
1307
- display: grid;
1308
- grid-template-columns: 1fr 1fr;
1309
- gap: 6px;
1310
- }
1311
- .chat_markdown .qrow.qrow-grid .qtag {
1312
- min-height: 38px;
1313
- width: 100%;
1314
- box-sizing: border-box;
1315
1314
  display: flex;
1315
+ gap: 6px;
1316
+ flex-wrap: wrap;
1316
1317
  align-items: center;
1317
- justify-content: center;
1318
- text-align: center;
1319
- line-height: 1.2;
1320
- padding: 4px 6px;
1321
1318
  }
1322
1319
  .chat_markdown .qtag {
1323
1320
  font-size: 10.5px;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/styles/chat.module.css"],"sourcesContent":["@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@600;700;800&display=swap');\n\n.root {\n --wac-brand: #1a2d5a;\n --wac-brand-contrast: #ffffff;\n --wac-bg: #ffffff;\n --wac-fg: #1f2937;\n --wac-muted: #6b7280;\n --wac-border: #e5e7eb;\n --wac-bot-bg: #f3f4f6;\n --wac-user-bg: var(--wac-brand);\n --wac-chip-bg: #e7ebf7;\n --wac-chip-fg: #1c2c5b;\n --wac-chip-active-bg: var(--wac-brand);\n --wac-chip-active-fg: #ffffff;\n --wac-radius: 14px;\n --wac-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);\n font-family: 'Manrope', system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';\n color: var(--wac-fg);\n box-sizing: border-box;\n}\n\n.root *,\n.root *::before,\n.root *::after {\n box-sizing: inherit;\n}\n\n/* Sora for headings/labels/symbols — mirrors the HTML prototype */\n.headerTitle,\n.menuItemTitle,\n.markdown :global(.wa-card-sym),\n.markdown :global(.sec) :global(.lbl),\n.markdown :global(.wa-verdict-lbl) {\n font-family: 'Sora', 'Manrope', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';\n}\n\n.floatingButton {\n position: fixed;\n bottom: 24px;\n z-index: 2147483646;\n width: 60px;\n height: 60px;\n border-radius: 50%;\n background: var(--wac-brand);\n color: var(--wac-brand-contrast);\n border: none;\n cursor: pointer;\n box-shadow: var(--wac-shadow);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 26px;\n transition: transform 0.15s ease, box-shadow 0.15s ease;\n}\n\n.floatingButton:hover {\n transform: translateY(-2px);\n box-shadow: 0 16px 48px rgba(0, 0, 0, 0.22);\n}\n\n.positionRight {\n right: 24px;\n}\n\n.positionLeft {\n left: 24px;\n}\n\n.widget {\n position: fixed;\n bottom: 24px;\n z-index: 2147483647;\n width: 420px;\n max-width: calc(100vw - 24px);\n height: min(760px, calc(100vh - 48px));\n background: var(--wac-bg);\n color: var(--wac-fg);\n border-radius: 24px;\n box-shadow: 0 18px 50px -18px rgba(28, 44, 91, 0.45);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border: 1px solid var(--wac-border);\n}\n\n@media (max-width: 640px) {\n .widget {\n width: calc(100vw - 12px);\n height: calc(100vh - 24px);\n bottom: 12px;\n }\n .positionRight,\n .positionLeft {\n right: 6px;\n left: auto;\n }\n .floatingButton {\n width: 56px;\n height: 56px;\n bottom: 16px;\n }\n /* Both positions collapse to right: 6px on mobile, so sync popup */\n .popupBubbleLeft,\n .popupBubbleRight {\n right: 72px;\n left: auto;\n bottom: 16px;\n max-width: calc(100vw - 84px);\n }\n}\n\n.header {\n background: linear-gradient(135deg, var(--wac-brand) 0%, #15224a 100%);\n color: var(--wac-brand-contrast);\n padding: 15px 18px 13px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n}\n\n.headerTitle {\n font-weight: 700;\n font-size: 17px;\n line-height: 1.2;\n}\n\n.headerMeta {\n font-size: 11px;\n opacity: 0.85;\n margin-top: 2px;\n}\n\n.headerActions {\n display: flex;\n gap: 4px;\n align-items: center;\n}\n\n.iconButton {\n background: transparent;\n color: inherit;\n border: none;\n cursor: pointer;\n font-size: 18px;\n padding: 4px 8px;\n border-radius: 6px;\n line-height: 1;\n}\n\n.iconButton:hover {\n background: rgba(255, 255, 255, 0.15);\n}\n\n.body {\n flex: 1;\n overflow-y: auto;\n padding: 14px;\n display: flex;\n flex-direction: column;\n gap: 10px;\n background: #fafafa;\n scroll-behavior: smooth;\n}\n\n.body::-webkit-scrollbar {\n width: 6px;\n}\n\n.body::-webkit-scrollbar-thumb {\n background: #d1d5db;\n border-radius: 3px;\n}\n\n.bubble {\n /* max-width: 80%; */\n padding: 10px 14px;\n border-radius: 12px;\n font-size: 14px;\n line-height: 1.45;\n word-wrap: break-word;\n white-space: pre-wrap;\n}\n\n/* markdown-it output inside a bot bubble.\n markdown-it (breaks: true) emits a <br> for every \\n in the source,\n so we MUST NOT also apply white-space: pre-wrap here — otherwise every\n newline gets rendered twice (once via <br>, once via the literal \\n in\n CSS) and the bubble looks double-spaced. */\n.markdown {\n white-space: normal;\n --card-bg: #ffffff;\n --text: var(--wac-fg);\n --text-muted: var(--wac-muted);\n --green: #16a34a;\n --red: #dc2626;\n}\n.markdown p {\n margin: 0 0 6px 0;\n}\n.markdown p:last-child {\n margin-bottom: 0;\n}\n.markdown br {\n /* Make consecutive <br>s collapse a bit — keeps line rhythm tight. */\n line-height: 1.4;\n}\n.markdown strong {\n font-weight: 700;\n color: var(--wac-fg);\n letter-spacing: 0.2px;\n}\n.markdown em {\n font-style: italic;\n color: var(--wac-muted);\n}\n.markdown ul,\n.markdown ol {\n margin: 4px 0 6px 0;\n padding-left: 22px;\n}\n.markdown li {\n margin: 1px 0;\n}\n.markdown a {\n color: var(--wac-brand);\n text-decoration: underline;\n}\n.markdown code {\n background: rgba(0, 0, 0, 0.06);\n padding: 1px 4px;\n border-radius: 4px;\n font-family: ui-monospace, SFMono-Regular, Menlo, monospace;\n font-size: 12.5px;\n}\n.markdown h1,\n.markdown h2,\n.markdown h3 {\n margin: 6px 0 2px 0;\n font-size: 14px;\n font-weight: 700;\n}\n\n/* Price snapshot grid (backend: price_snapshot_template.py).\n Seamless joined panel — 1px hairline dividers + one rounded border around the\n whole grid (mirrors wealth-alpha_1.1.html `.mgrid`), NOT separate boxes. */\n.markdown :global(.mgrid) {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 1px;\n background: #eceffa;\n border: 1px solid #eceffa;\n border-radius: 10px;\n overflow: hidden;\n margin-top: 8px;\n}\n\n.markdown :global(.mgrid) :global(.wa-price) {\n background: var(--card-bg, #fff);\n padding: 12px 14px;\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.markdown :global(.mgrid) :global(.k) {\n font-size: 11px;\n color: var(--text-muted, #888);\n font-weight: 500;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n}\n\n.markdown :global(.mgrid) :global(.wa-price-value) {\n font-size: 18px;\n font-weight: 700;\n color: var(--text, #111);\n}\n\n.markdown :global(.mgrid) :global(.wa-price-value.up) {\n color: var(--green);\n}\n\n.markdown :global(.mgrid) :global(.wa-price-value.down) {\n color: var(--red);\n}\n\n.markdown :global(.mgrid) :global(.n) {\n font-size: 12px;\n font-weight: 500;\n color: var(--text-muted, #888);\n}\n\n.markdown :global(.mgrid) :global(.n.up) {\n color: var(--green);\n}\n\n.markdown :global(.mgrid) :global(.n.down) {\n color: var(--red);\n}\n\n.markdown :global(.sec) :global(.lbl) {\n font-size: 13px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n color: var(--text-muted, #666);\n margin-bottom: 6px;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.markdown :global(.mgrid) :global(.wa-price.full-width) {\n grid-column: 1 / -1;\n text-align: center;\n align-items: center;\n justify-content: center;\n}\n/* ── Stock Analysis Card — existing investor flow ────────────────────────── */\n\n/* Outer card wrapper */\n.markdown :global(.wa-analysis-card) {\n background: #fff;\n border: 1px solid #e6e9f5;\n border-radius: 18px;\n overflow: hidden;\n box-shadow: 0 12px 34px -24px rgba(28, 44, 91, 0.4);\n margin-bottom: 4px;\n}\n\n/* Card header — navy gradient */\n.markdown :global(.wa-card-head) {\n background: linear-gradient(135deg, #22356e 0%, #15224a 100%);\n color: #fff;\n padding: 14px 16px 13px;\n position: relative;\n}\n.markdown :global(.wa-card-date) {\n float: right;\n font-size: 11px;\n opacity: 0.7;\n font-weight: 600;\n}\n.markdown :global(.wa-card-tag) {\n display: inline-block;\n font-size: 9.5px;\n font-weight: 800;\n letter-spacing: 1px;\n background: rgba(255, 255, 255, 0.16);\n padding: 3px 9px;\n border-radius: 6px;\n margin-bottom: 8px;\n}\n.markdown :global(.wa-card-sym) {\n font-weight: 700;\n font-size: 17px;\n line-height: 1.2;\n}\n.markdown :global(.wa-card-meta) {\n font-size: 11.5px;\n opacity: 0.8;\n margin-top: 3px;\n}\n\n/* Section container */\n.markdown :global(.sec) {\n padding: 12px 14px;\n border-top: 1px solid #eceffa;\n}\n\n/* Metric grid — flat variant inherits the seamless joined panel from `.mgrid`\n above; just adjusts the top margin (mirrors 1.1 `.mgrid.flat`). */\n.markdown :global(.mgrid.flat) {\n margin-top: 9px;\n}\n\n/* Metric cell — no individual border/radius; the parent grid frames them and\n the 1px gap shows the divider line through (1.1 `.m`). */\n.markdown :global(.mgrid) :global(.m) {\n background: #fff;\n padding: 10px 13px;\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n.markdown :global(.mgrid) :global(.m) :global(.k) {\n font-size: 9.5px;\n color: #737b97;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n font-weight: 700;\n}\n.markdown :global(.mgrid) :global(.m) :global(.v) {\n font-size: 14px;\n font-weight: 700;\n color: #1c2438;\n margin-top: 2px;\n}\n.markdown :global(.mgrid) :global(.m) :global(.n) {\n font-size: 10.5px;\n font-weight: 700;\n color: #737b97;\n margin-top: 1px;\n}\n/* Score colour modifiers on .n inside metric cells */\n.markdown :global(.mgrid) :global(.m) :global(.n.good) {\n color: #16a34a;\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.avg) {\n color: #737b97;\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.low) {\n color: #b45309;\n}\n\n/* Regime label inside metric cell */\n.markdown :global(.wa-regime) {\n font-size: 12px;\n}\n\n/* Your Position block */\n.markdown :global(.wa-pos) {\n margin-top: 9px;\n border-radius: 12px;\n padding: 12px 14px;\n border: 1px solid #e5e7eb;\n background: #f9fafb;\n}\n.markdown :global(.wa-pos.profit) {\n background: linear-gradient(135deg, #ecfdf3, #f7fef9);\n border-color: #bbf7d0;\n}\n.markdown :global(.wa-pos.loss) {\n background: linear-gradient(135deg, #fef2f2, #fff5f5);\n border-color: #fecaca;\n}\n.markdown :global(.wa-pl) {\n font-weight: 800;\n font-size: 22px;\n line-height: 1;\n color: #1c2438;\n}\n.markdown :global(.wa-pl.up) {\n color: #16a34a;\n}\n.markdown :global(.wa-pl.down) {\n color: #dc2626;\n}\n.markdown :global(.wa-zone) {\n font-size: 11px;\n font-weight: 700;\n color: #737b97;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n margin-top: 4px;\n}\n.markdown :global(.wa-summ) {\n font-size: 12.5px;\n line-height: 1.5;\n margin-top: 8px;\n color: #3a4159;\n}\n\n/* Key-value rows (Trend Structure, Indicators) */\n.markdown :global(.kv) {\n display: flex;\n gap: 8px;\n font-size: 12.5px;\n line-height: 1.5;\n margin-bottom: 7px;\n}\n.markdown :global(.kv:last-child) {\n margin-bottom: 0;\n}\n.markdown :global(.kk) {\n font-weight: 700;\n color: #1c2c5b;\n flex: 0 0 auto;\n min-width: 90px;\n}\n.markdown :global(.vv) {\n color: #3a4159;\n}\n\n/* Recovery level value */\n.markdown :global(.wa-recovery) {\n font-size: 11.5px;\n color: #3a4159;\n}\n\n/* Verdict block */\n.markdown :global(.wa-verdict) {\n padding: 13px 16px;\n border-top: 1px solid #eceffa;\n background: #fafbff;\n}\n.markdown :global(.wa-verdict-lbl) {\n font-size: 10.5px;\n font-weight: 700;\n letter-spacing: 0.7px;\n text-transform: uppercase;\n color: #1c2c5b;\n margin-bottom: 8px;\n}\n.markdown :global(.wa-verdict-list) {\n margin: 0;\n padding-left: 20px;\n list-style-type: disc;\n list-style-position: outside;\n font-size: 12.5px;\n line-height: 1.55;\n color: #3a4159;\n}\n.markdown :global(.wa-verdict-list) li {\n display: list-item;\n margin-bottom: 6px;\n padding-left: 2px;\n}\n.markdown :global(.wa-verdict-list) li:last-child {\n margin-bottom: 0;\n}\n\n/* Business Health bullets and scale note */\n.markdown :global(.wa-bullets) {\n margin: 8px 0 4px 0;\n padding-left: 17px;\n font-size: 12px;\n line-height: 1.5;\n color: #3a4159;\n}\n.markdown :global(.wa-bullets) li {\n margin-bottom: 4px;\n}\n.markdown :global(.wa-scale-note) {\n font-size: 10.5px;\n color: #737b97;\n margin-top: 6px;\n line-height: 1.4;\n}\n\n/* VS Peers */\n.markdown :global(.wa-peer-ctx) {\n font-size: 12px;\n color: #737b97;\n margin-bottom: 8px;\n font-weight: bold;\n}\n.markdown :global(.wa-peer-row) {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 7px 10px;\n border-radius: 8px;\n background: #f8f9fc;\n border: 1px solid #eceffa;\n margin-bottom: 6px;\n font-size: 12px;\n}\n.markdown :global(.wa-peer-sym) {\n font-weight: 700;\n color: #1c2c5b;\n}\n.markdown :global(.wa-peer-detail) {\n color: #3a4159;\n}\n.markdown :global(.wa-peer-detail) :global(.up) {\n color: #16a34a;\n font-weight: 700;\n}\n.markdown :global(.wa-peer-detail) :global(.down) {\n color: #dc2626;\n font-weight: 700;\n}\n.markdown :global(.wa-peer-empty) {\n font-size: 12px;\n color: #737b97;\n line-height: 1.5;\n padding: 4px 0;\n}\n.markdown :global(.wa-top-peer) {\n font-size: 11.5px;\n color: #1c2c5b;\n font-weight: 600;\n margin-top: 4px;\n padding: 6px 10px;\n background: #eef2ff;\n border-radius: 8px;\n}\n\n/* ── New Investor Flow — Signal, AI Lens, Indicators, Invalidation ───────── */\n\n/* Signal badge + label row */\n.markdown :global(.wa-signal-header) {\n display: flex;\n align-items: center;\n gap: 10px;\n flex-wrap: wrap;\n margin-bottom: 10px;\n}\n.markdown :global(.wa-signal-lbl) {\n font-size: 13px;\n font-weight: 600;\n color: #3a4159;\n flex: 1;\n}\n.markdown :global(.wa-signal-level) {\n padding: 10px 0;\n}\n.markdown :global(.wa-signal-level) :global(.kv) {\n gap: 4px;\n align-items: center;\n margin-bottom: 0;\n}\n.markdown :global(.wa-signal-level) :global(.kk) {\n min-width: auto;\n}\n\n/* Direction / action badges (shared across flows) */\n.markdown :global(.wa-badge) {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 6px 13px;\n border-radius: 999px;\n font-size: 12px;\n font-weight: 800;\n letter-spacing: 0.3px;\n white-space: nowrap;\n}\n.markdown :global(.wa-b-buy) {\n background: #dcfce7;\n color: #16a34a;\n}\n.markdown :global(.wa-b-sell) {\n background: #fee2e2;\n color: #dc2626;\n}\n.markdown :global(.wa-b-wait) {\n background: #fef3e0;\n color: #b45309;\n}\n.markdown :global(.wa-b-info) {\n background: #e0ecff;\n color: #2563eb;\n}\n\n/* ── Macro Event card (.evt) ─────────────────────────────────────────────── */\n.markdown :global(.evt) {\n border: 1px solid #e6e9f5;\n border-radius: 16px;\n overflow: hidden;\n margin-bottom: 12px;\n background: #fff;\n box-shadow: 0 12px 30px -24px rgba(28, 44, 91, 0.4);\n}\n.markdown :global(.evt .top) {\n padding: 13px 15px;\n display: flex;\n gap: 11px;\n align-items: flex-start;\n}\n.markdown :global(.evt .num) {\n width: 26px;\n height: 26px;\n flex: 0 0 auto;\n border-radius: 8px;\n background: #1c2c5b;\n color: #fff;\n display: grid;\n place-items: center;\n font-weight: 700;\n font-size: 13px;\n}\n.markdown :global(.evt .ti) {\n font-weight: 700;\n font-size: 13.5px;\n line-height: 1.25;\n color: #1c2438;\n}\n.markdown :global(.evt .dt) {\n font-size: 11px;\n color: #737b97;\n margin-top: 2px;\n}\n.markdown :global(.evt .news) {\n padding: 0 15px 12px;\n font-size: 12.5px;\n line-height: 1.5;\n color: #3a4159;\n}\n.markdown :global(.evt .news .imp) {\n display: inline-block;\n margin-top: 7px;\n}\n.markdown :global(.evt .body) {\n padding: 11px 15px;\n border-top: 1px solid #eceffa;\n background: #fbfcff;\n}\n.markdown :global(.evt .body) :global(.lbl) {\n font-size: 13px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n color: var(--text-muted, #666);\n margin-top: 8px;\n margin-bottom: 6px;\n}\n.markdown :global(.evt .body) :global(.wa-verdict-text) {\n margin: 4px 0 0;\n}\n\n/* ── Sector impact block (.impact) ──────────────────────────────────────── */\n.markdown :global(.impact) {\n margin-top: 8px;\n}\n.markdown :global(.ih) {\n font-size: 10.5px;\n font-weight: 800;\n letter-spacing: 0.4px;\n text-transform: uppercase;\n margin-bottom: 7px;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n.markdown :global(.ih.neg) { color: #dc2626; }\n.markdown :global(.ih.mod) { color: #b45309; }\n.markdown :global(.ih.pos) { color: #16a34a; }\n\n/* ── Sector impact pill (.pill) ─────────────────────────────────────────── */\n.markdown :global(.pill) {\n display: block;\n font-size: 12px;\n line-height: 1.45;\n padding: 8px 11px;\n border-radius: 10px;\n margin-bottom: 6px;\n border: 1px solid;\n}\n.markdown :global(.pill b) { font-weight: 700; }\n.markdown :global(.pill.neg) {\n background: #fee2e2;\n border-color: #fecaca;\n color: #7f1d1d;\n}\n.markdown :global(.pill.mod) {\n background: #fef3e0;\n border-color: #fde2b8;\n color: #7c4a03;\n}\n.markdown :global(.pill.pos) {\n background: #dcfce7;\n border-color: #bbf7d0;\n color: #14532d;\n}\n\n/* Confidence score row */\n.markdown :global(.wa-conf-row) {\n display: flex;\n align-items: center;\n gap: 9px;\n margin-top: 10px;\n padding: 8px 12px;\n background: #f8f9fc;\n border-radius: 10px;\n border: 1px solid #eceffa;\n}\n.markdown :global(.wa-conf-badge) {\n font-size: 13px;\n font-weight: 800;\n padding: 4px 10px;\n border-radius: 999px;\n background: #eceffa;\n color: #1c2c5b;\n}\n.markdown :global(.wa-conf-badge.good) {\n background: #dcfce7;\n color: #16a34a;\n}\n.markdown :global(.wa-conf-badge.low) {\n background: #fee2e2;\n color: #dc2626;\n}\n.markdown :global(.wa-conf-badge.avg) {\n background: #fef3e0;\n color: #b45309;\n}\n.markdown :global(.wa-conf-text) {\n font-size: 12px;\n color: #3a4159;\n flex: 1;\n}\n\n/* AI Lens */\n.markdown :global(.wa-ai-heading) {\n font-size: 13.5px;\n font-weight: 700;\n color: #1c2c5b;\n margin-bottom: 5px;\n}\n.markdown :global(.wa-ai-insight) {\n font-size: 12.5px;\n line-height: 1.55;\n color: #3a4159;\n margin-bottom: 6px;\n}\n\n/* Invalidation */\n.markdown :global(.wa-inv-text) {\n font-size: 12.5px;\n line-height: 1.5;\n color: #3a4159;\n}\n.markdown :global(.wa-inv-status) {\n margin-top: 8px;\n}\n\n/* Text verdict (new investor flow — single string, not a bullet list) */\n.markdown :global(.wa-verdict-text) {\n font-size: 12.5px;\n line-height: 1.55;\n color: #3a4159;\n}\n\n/* ── Portfolio Risk — Gauge, Action Rows, Clist, Allocation Bars ────────── */\n\n/* Health score gauge (red → amber → green gradient) */\n.markdown :global(.gauge) {\n height: 10px;\n border-radius: 6px;\n background: linear-gradient(90deg, #dc2626 0%, #f59e0b 50%, #16a34a 100%);\n position: relative;\n margin: 6px 0 28px;\n}\n.markdown :global(.wa-portfolio-gauge-wrap) {\n padding: 4px 22px 32px;\n overflow: visible;\n}\n.markdown :global(.wa-portfolio-health-gauge) {\n margin: 6px 0 0;\n}\n.markdown :global(.gauge) :global(.pin),\n.markdown :global(.wa-portfolio-gauge-pin) {\n position: absolute;\n top: -4px;\n width: 5px;\n height: 18px;\n border-radius: 3px;\n background: #1c2c5b;\n box-shadow: 0 0 0 3px #fff;\n transform: translateX(-50%);\n}\n.markdown :global(.gauge) :global(.lab),\n.markdown :global(.wa-portfolio-gauge-score) {\n position: absolute;\n top: 17px;\n font-size: 11px;\n font-weight: 800;\n color: #1c2c5b;\n transform: translateX(-50%);\n white-space: nowrap;\n}\n\n/* Portfolio performance header — two-line summary */\n.markdown :global(.wa-portfolio-performance-head) :global(.wa-portfolio-header-title) {\n margin-top: 2px;\n line-height: 1.25;\n}\n.markdown :global(.wa-portfolio-header-meta) {\n margin-top: 8px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n.markdown :global(.wa-portfolio-header-summary) {\n font-size: 11.5px;\n line-height: 1.45;\n opacity: 0.92;\n color: #fff;\n}\n.markdown :global(.wa-portfolio-header-risk) {\n font-size: 11px;\n line-height: 1.4;\n opacity: 0.75;\n color: #fff;\n}\n\n/* Portfolio health section spacing */\n.markdown :global(.wa-portfolio-health-section) {\n overflow: visible;\n}\n.markdown :global(.wa-portfolio-health-verdict) {\n margin-top: 2px;\n}\n\n/* CAGR / Risk metric rows */\n.markdown :global(.wa-portfolio-metrics-block) {\n padding: 10px 0 6px;\n margin-top: 4px;\n}\n.markdown :global(.wa-portfolio-metric-row) {\n align-items: flex-start;\n gap: 10px;\n margin-bottom: 6px;\n}\n.markdown :global(.wa-portfolio-metric-row):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-metric-label) {\n min-width: 48px;\n flex-shrink: 0;\n}\n.markdown :global(.wa-portfolio-metric-value) {\n flex: 1;\n line-height: 1.45;\n}\n\n/* Portfolio optimization bullet lists */\n.markdown :global(.wa-portfolio-bullet-list) {\n margin: 0;\n padding-left: 20px;\n list-style-type: disc;\n list-style-position: outside;\n font-size: 12.5px;\n line-height: 1.55;\n color: #3a4159;\n}\n.markdown :global(.wa-portfolio-bullet-list) li {\n display: list-item;\n margin-bottom: 6px;\n padding-left: 2px;\n}\n.markdown :global(.wa-portfolio-bullet-list) li:last-child {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-concerns-list),\n.markdown :global(.wa-portfolio-actions-needed-list) {\n margin-top: 2px;\n}\n.markdown :global(.wa-portfolio-verdict-block) :global(.wa-portfolio-verdict-list) {\n margin-top: 0;\n}\n\n/* Health check — Current Mix vs Target (Stocks row full-width centered) */\n.markdown :global(.wa-portfolio-mix-grid) :global(.wa-portfolio-mix-stocks-full) {\n grid-column: 1 / -1;\n text-align: center;\n align-items: center;\n justify-content: center;\n}\n.markdown :global(.wa-portfolio-mix-stocks-full) :global(.v) {\n text-align: center;\n}\n\n/* Health check — Stock / ETF deviation rows */\n.markdown :global(.wa-portfolio-deviation-block) {\n padding: 10px 0 4px;\n margin-top: 6px;\n}\n.markdown :global(.wa-portfolio-deviation-row) {\n align-items: flex-start;\n gap: 10px;\n margin-bottom: 8px;\n}\n.markdown :global(.wa-portfolio-deviation-row):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-deviation-label) {\n min-width: 108px;\n flex-shrink: 0;\n}\n.markdown :global(.wa-portfolio-deviation-value) {\n flex: 1;\n line-height: 1.45;\n}\n\n/* Health check — Structure Points cards */\n.markdown :global(.wa-portfolio-structure-section) {\n padding-bottom: 14px;\n}\n.markdown :global(.wa-portfolio-structure-card) {\n border: 1px solid #e6e9f5;\n border-radius: 12px;\n padding: 11px 13px;\n margin-bottom: 8px;\n background: #f8f9fc;\n}\n.markdown :global(.wa-portfolio-structure-card):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-structure-card-head) {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n margin-bottom: 6px;\n}\n.markdown :global(.wa-portfolio-structure-symbol) {\n font-weight: 800;\n font-size: 13px;\n color: #1c2c5b;\n letter-spacing: 0.02em;\n}\n.markdown :global(.wa-portfolio-structure-score-badge) {\n font-size: 10px;\n font-weight: 700;\n padding: 3px 8px;\n border-radius: 999px;\n background: #eceffa;\n color: #1c2c5b;\n white-space: nowrap;\n}\n.markdown :global(.wa-portfolio-structure-line) {\n font-size: 12px;\n line-height: 1.45;\n color: #3a4159;\n margin-bottom: 4px;\n}\n.markdown :global(.wa-portfolio-structure-line) :global(.up) {\n color: var(--green);\n font-weight: 700;\n}\n.markdown :global(.wa-portfolio-structure-line) :global(.down) {\n color: var(--red);\n font-weight: 700;\n}\n.markdown :global(.wa-portfolio-structure-line):last-of-type {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-structure-meta) {\n font-size: 11.5px;\n line-height: 1.4;\n color: #737b97;\n margin-top: 4px;\n}\n\n/* Portfolio build — Sector Allocation card layout */\n.markdown :global(.wa-portfolio-sector-card-head) {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n margin-bottom: 8px;\n}\n.markdown :global(.wa-portfolio-sector-return) {\n flex: 1;\n text-align: center;\n font-size: 11px;\n font-weight: 600;\n color: #3a4159;\n white-space: nowrap;\n}\n.markdown :global(.wa-portfolio-sector-return) :global(.up) {\n color: var(--green);\n font-weight: 700;\n}\n.markdown :global(.wa-portfolio-sector-return) :global(.down) {\n color: var(--red);\n font-weight: 700;\n}\n.markdown :global(.wa-portfolio-sector-capital-line) {\n font-size: 12px;\n font-weight: 700;\n color: #3a4159;\n margin-bottom: 6px;\n}\n.markdown :global(.wa-portfolio-sector-bullet-list) {\n list-style: none;\n padding-left: 0;\n margin: 0;\n font-size: 12px;\n line-height: 1.5;\n}\n.markdown :global(.wa-portfolio-sector-bullet-list) li {\n margin-bottom: 4px;\n padding-left: 0;\n}\n.markdown :global(.wa-portfolio-sector-bullet-list) li::before {\n content: \"· \";\n font-weight: 700;\n color: #737b97;\n}\n.markdown :global(.wa-portfolio-sector-bullet-list) li:last-child {\n margin-bottom: 0;\n}\n\n/* Health verdict text */\n.markdown :global(.wa-health-text) {\n font-size: 12px;\n font-weight: 600;\n color: #dc2626;\n line-height: 1.5;\n margin-top: 4px;\n}\n.markdown :global(.wa-health-text.ok) {\n color: #16a34a;\n}\n.markdown :global(.wa-health-text.warn) {\n color: #b45309;\n}\n\n/* Action rows — EXIT / TRIM / ADD / HOLD / SWITCH / REVIEW */\n.markdown :global(.act) {\n display: flex;\n gap: 10px;\n align-items: flex-start;\n padding: 10px 12px;\n border-radius: 12px;\n margin-bottom: 8px;\n border: 1px solid #e5e7eb;\n background: #f9fafb;\n}\n.markdown :global(.act):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.act.exit) {\n background: #fee2e2;\n border-color: #fecaca;\n}\n.markdown :global(.act.trim) {\n background: #fef3e0;\n border-color: #fde2b8;\n}\n.markdown :global(.act.add) {\n background: #dcfce7;\n border-color: #bbf7d0;\n}\n.markdown :global(.act.hold) {\n background: #f1f3fa;\n border-color: #e0e4f0;\n}\n.markdown :global(.act.switch) {\n background: #e0ecff;\n border-color: #bfdbfe;\n}\n/* Action type label pill */\n.markdown :global(.act) :global(.at) {\n flex: 0 0 auto;\n font-size: 10px;\n font-weight: 800;\n letter-spacing: 0.5px;\n padding: 4px 8px;\n border-radius: 6px;\n color: #fff;\n white-space: nowrap;\n}\n.markdown :global(.act.exit) :global(.at) { background: #dc2626; }\n.markdown :global(.act.trim) :global(.at) { background: #b45309; }\n.markdown :global(.act.add) :global(.at) { background: #16a34a; }\n.markdown :global(.act.hold) :global(.at) { background: #737b97; }\n.markdown :global(.act.switch) :global(.at) { background: #2563eb; }\n/* Action description */\n.markdown :global(.act) :global(.ad) {\n font-size: 12.5px;\n line-height: 1.45;\n}\n.markdown :global(.act) :global(.ad) b {\n font-weight: 700;\n color: #1c2c5b;\n}\n.markdown :global(.act) :global(.ad) :global(.r) {\n color: #3a4159;\n display: block;\n margin-top: 2px;\n}\n\n/* Concerns / actions bullet list */\n.markdown :global(.clist) {\n margin: 0;\n padding-left: 17px;\n font-size: 12px;\n line-height: 1.5;\n color: #3a4159;\n}\n.markdown :global(.clist) li {\n margin-bottom: 5px;\n}\n.markdown :global(.clist) li:last-child {\n margin-bottom: 0;\n}\n\n/* Asset allocation bars */\n.markdown :global(.alloc) {\n margin-top: 6px;\n}\n.markdown :global(.alloc) :global(.row) {\n display: flex;\n align-items: center;\n gap: 9px;\n margin-bottom: 9px;\n font-size: 12px;\n}\n.markdown :global(.alloc) :global(.row):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.alloc) :global(.nm) {\n width: 54px;\n font-weight: 700;\n color: #1c2c5b;\n flex-shrink: 0;\n}\n.markdown :global(.alloc) :global(.bar) {\n flex: 1;\n height: 8px;\n border-radius: 5px;\n background: #eef0f7;\n overflow: hidden;\n}\n.markdown :global(.alloc) :global(.bar) i {\n display: block;\n height: 100%;\n border-radius: 5px;\n background: #1c2c5b;\n}\n.markdown :global(.alloc) :global(.pct) {\n width: 42px;\n text-align: right;\n font-weight: 700;\n color: #1c2438;\n flex-shrink: 0;\n}\n\n/* Return value colour helpers inside metric grid .v cells */\n.markdown :global(.mgrid) :global(.v.up) {\n color: var(--green);\n}\n.markdown :global(.mgrid) :global(.v.down) {\n color: var(--red);\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.up) {\n color: var(--green);\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.down) {\n color: var(--red);\n}\n.markdown :global(.mgrid) :global(.v.low) {\n color: #b45309;\n}\n\n/* Signal score emphasis inside kv rows (Tradable Candidate) */\n.markdown :global(.kv) :global(.vv) :global(b.up) {\n color: var(--green);\n}\n.markdown :global(.kv) :global(.vv) :global(b.down) {\n color: var(--red);\n}\n.markdown :global(.kv) :global(.vv) :global(b.low) {\n color: #b45309;\n}\n\n/* ── Crypto Analysis — stance row, metric notes, kv stacks ──────────────── */\n.markdown :global(.wa-crypto-stance-row) {\n margin-top: 8px;\n}\n.markdown :global(.wa-crypto-stance-row-lg) {\n margin-top: 11px;\n}\n.markdown :global(.wa-crypto-stance-reason) {\n font-size: 12px;\n color: #3a4159;\n margin-top: 8px;\n line-height: 1.5;\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.wa-crypto-metric-detail) {\n font-weight: 500;\n line-height: 1.35;\n}\n.markdown :global(.wa-crypto-kv-primary) {\n display: block;\n font-size: 14px;\n font-weight: 700;\n}\n.markdown :global(.wa-crypto-kv-note) {\n display: block;\n font-size: 10.5px;\n font-weight: 700;\n margin-top: 2px;\n}\n.markdown :global(.wa-crypto-kv-note.up) {\n color: var(--green);\n}\n.markdown :global(.wa-crypto-kv-note.down) {\n color: var(--red);\n}\n.markdown :global(.wa-crypto-kv-note.low) {\n color: #b45309;\n}\n.markdown :global(.wa-crypto-kv-note.avg) {\n color: #737b97;\n}\n.markdown :global(.wa-crypto-kv-detail) {\n display: block;\n font-size: 10.5px;\n font-weight: 500;\n color: #737b97;\n margin-top: 2px;\n line-height: 1.35;\n}\n\n/* ── Stock Discovery & New Listings Card Components ─────────────────────── */\n\n/* Individual stock card */\n.markdown :global(.dstock) {\n border: 1px solid #e6e9f5;\n border-radius: 14px;\n padding: 12px 13px;\n margin-bottom: 10px;\n background: #fff;\n}\n.markdown :global(.dstock):last-child {\n margin-bottom: 0;\n}\n\n/* Stock card header row */\n.markdown :global(.dh) {\n display: flex;\n align-items: center;\n gap: 9px;\n margin-bottom: 9px;\n}\n\n/* Rank number chip */\n.markdown :global(.rank) {\n width: 24px;\n height: 24px;\n flex: 0 0 auto;\n border-radius: 6px;\n background: #e7ebf7;\n color: #1c2c5b;\n display: grid;\n place-items: center;\n font-weight: 800;\n font-size: 12px;\n}\n\n/* Stock symbol + company name */\n.markdown :global(.nm) {\n font-weight: 700;\n font-size: 13.5px;\n line-height: 1.2;\n color: #1c2438;\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n}\n/* Inline badge inside .nm — smaller than the standalone badge */\n.markdown :global(.nm) :global(.wa-badge) {\n font-size: 10px;\n padding: 3px 8px;\n vertical-align: middle;\n}\n.markdown :global(.co) {\n font-size: 10.5px;\n color: #737b97;\n margin-top: 2px;\n}\n\n/* Fundamental score (right-aligned) */\n.markdown :global(.dstock) :global(.fs) {\n margin-left: auto;\n text-align: right;\n flex-shrink: 0;\n}\n.markdown :global(.dstock) :global(.fs) :global(.num) {\n font-weight: 800;\n font-size: 18px;\n color: #1c2c5b;\n line-height: 1;\n}\n.markdown :global(.dstock) :global(.fs) :global(.cap) {\n font-size: 8.5px;\n color: #737b97;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n margin-top: 2px;\n}\n\n/* Quality/Value/Growth/Confidence tag row */\n.markdown :global(.qrow) {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n align-items: center;\n}\n.markdown :global(.qrow.qrow-grid) {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 6px;\n}\n.markdown :global(.qrow.qrow-grid) :global(.qtag) {\n min-height: 38px;\n width: 100%;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n line-height: 1.2;\n padding: 4px 6px;\n}\n.markdown :global(.qtag) {\n font-size: 10.5px;\n font-weight: 700;\n padding: 4px 9px;\n border-radius: 7px;\n border: 1px solid #e0e4f0;\n background: #f1f3fa;\n color: #475069;\n}\n.markdown :global(.qtag) :global(.qk) {\n opacity: 0.55;\n font-weight: 600;\n margin-right: 3px;\n}\n.markdown :global(.qtag.good) {\n background: #dcfce7;\n border-color: #bbf7d0;\n color: #14532d;\n}\n.markdown :global(.qtag.avg) {\n background: #f1f3fa;\n border-color: #e0e4f0;\n color: #475069;\n}\n.markdown :global(.qtag.low) {\n background: #fef3e0;\n border-color: #fde2b8;\n color: #7c4a03;\n}\n\n/* 3M return line below score tags (Peer Analysis dstock cards) */\n.markdown :global(.dstock) :global(.wa-peer-detail) {\n margin-top: 6px;\n font-size: 11.5px;\n}\n\n/* Scoring note footer */\n.markdown :global(.wa-disc-footer) {\n font-size: 11px;\n color: #737b97;\n line-height: 1.5;\n padding: 10px 14px;\n border-top: 1px solid #eceffa;\n}\n\n.bubbleBot {\n align-self: flex-start;\n background: var(--wac-bot-bg);\n color: #1c2438;\n border-bottom-left-radius: 4px;\n}\n\n.bubbleUser {\n align-self: flex-end;\n background: var(--wac-user-bg);\n color: var(--wac-brand-contrast);\n border-bottom-right-radius: 4px;\n}\n\n/* Card responses: the card supplies its own bg/border/radius, so the bubble\n must add no frame, padding or background around it. */\n.bubbleCard {\n align-self: stretch;\n background: transparent;\n padding: 0;\n border-radius: 0;\n}\n\n/* Safety disclaimer below card responses — mirrors HTML prototype `.disc` */\n.disclaimer {\n font-size: 10.5px;\n color: var(--wac-muted);\n line-height: 1.5;\n background: #fff;\n border: 1px solid var(--wac-border);\n border-radius: 12px;\n padding: 10px 12px;\n margin: 6px 0 2px;\n}\n.disclaimer b {\n color: var(--wac-brand);\n}\n\n/* Like / dislike feedback row (above the disclaimer, on card responses) */\n/* Feedback band — mirrors wealth-alpha_1.1.html `.fb` (top border, light band,\n label left, 34×34 rounded-10 buttons, currentColor icons → green/red on-state) */\n.feedbackRow {\n display: flex;\n align-items: center;\n gap: 10px;\n padding: 10px 14px;\n background: #fafbff;\n /* Continue the card frame down the sides and round the bottom so the band\n reads as the card's footer (1.1 `.fb` lives inside the card). The top\n border is the section divider above the buttons. */\n border: 1px solid var(--wac-border);\n border-top-color: #eceffa;\n border-bottom-left-radius: 18px;\n border-bottom-right-radius: 18px;\n margin-bottom: 4px;\n}\n\n/* Open the bottom of the card the band attaches to, so the two fuse into one\n rounded card. Only the LAST card in a multi-card response connects. */\n.bubbleCard:has(+ .feedbackRow) :global(.wa-analysis-card:last-child) {\n margin-bottom: 0;\n border-bottom: none;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n}\n.feedbackLabel {\n font-size: 11px;\n color: var(--wac-muted);\n font-weight: 600;\n margin-right: auto;\n}\n.feedbackBtn {\n width: 34px;\n height: 34px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border: 1px solid var(--wac-border);\n background: #fff;\n border-radius: 10px;\n color: var(--wac-brand);\n cursor: pointer;\n font-family: inherit;\n transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease, color 0.15s ease;\n}\n.feedbackBtn:hover {\n background: var(--wac-chip-bg);\n transform: translateY(-1px);\n}\n.feedbackBtnUp {\n background: #dcfce7;\n border-color: #bbf7d0;\n color: #16a34a;\n}\n.feedbackBtnDown {\n background: #fee2e2;\n border-color: #fecaca;\n color: #dc2626;\n}\n.feedbackIcon {\n width: 16px;\n height: 16px;\n fill: none;\n stroke: currentColor;\n stroke-width: 2;\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n\n/* ── CREATE PORTFOLIO — selectable sector rows (mirrors wealth-alpha_1.1.html .srow) ── */\n.markdown :global(.srow) {\n display: flex;\n align-items: center;\n gap: 11px;\n padding: 11px 12px;\n border: 1px solid #e6e9f5;\n border-radius: 14px;\n background: #fff;\n margin-bottom: 9px;\n cursor: pointer;\n transition: border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;\n}\n.markdown :global(.srow):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.srow):hover {\n border-color: #c7cef0;\n transform: translateY(-1px);\n box-shadow: 0 10px 22px -18px rgba(28, 44, 91, 0.5);\n}\n.markdown :global(.srow.selected) {\n background: linear-gradient(135deg, #ecfdf3, #f7fef9);\n border-color: #86efac;\n}\n.markdown :global(.srow) :global(.box) {\n width: 22px;\n height: 22px;\n flex: 0 0 auto;\n border-radius: 7px;\n border: 2px solid #cdd4ec;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #fff;\n transition: 0.15s;\n}\n.markdown :global(.srow.selected) :global(.box) {\n background: #16a34a;\n border-color: #16a34a;\n}\n.markdown :global(.srow.selected) :global(.box)::after {\n content: \"✓\";\n}\n.markdown :global(.srow) :global(.info) {\n flex: 1;\n min-width: 0;\n}\n.markdown :global(.srow) :global(.nm) {\n font-family: 'Sora', 'Manrope', sans-serif;\n font-weight: 700;\n font-size: 13.5px;\n color: #1c2438;\n line-height: 1.2;\n}\n.markdown :global(.srow) :global(.sub) {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-top: 6px;\n}\n.markdown :global(.srow) :global(.mini) {\n flex: 1;\n height: 6px;\n border-radius: 4px;\n background: #eef0f7;\n overflow: hidden;\n max-width: 90px;\n}\n.markdown :global(.srow) :global(.mini) i {\n display: block;\n height: 100%;\n border-radius: 4px;\n}\n.markdown :global(.srow) :global(.ret) {\n font-family: 'Sora', 'Manrope', sans-serif;\n font-weight: 800;\n font-size: 14.5px;\n flex: 0 0 auto;\n text-align: right;\n min-width: 58px;\n}\n.markdown :global(.tag-pill) {\n font-size: 9px;\n font-weight: 800;\n letter-spacing: 0.4px;\n padding: 3px 7px;\n border-radius: 6px;\n text-transform: uppercase;\n}\n.markdown :global(.tag-pill.strong) {\n background: #dcfce7;\n color: #16a34a;\n}\n.markdown :global(.tag-pill.neutral) {\n background: #fef3e0;\n color: #b45309;\n}\n.markdown :global(.tag-pill.weak) {\n background: #fee2e2;\n color: #dc2626;\n}\n.markdown :global(.wa-sel-summary) {\n margin-top: 4px;\n padding: 10px 12px;\n border-radius: 12px;\n background: #fff;\n border: 1px dashed #bbf7d0;\n font-size: 12.5px;\n color: #14532d;\n line-height: 1.5;\n}\n.markdown :global(.wa-sel-summary) :global(.chk) {\n color: #16a34a;\n font-weight: 800;\n margin-right: 5px;\n}\n.markdown :global(.wa-sel-summary) b {\n color: #1c2438;\n}\n\n.bubbleMeta {\n font-size: 10px;\n color: var(--wac-muted);\n margin-top: 4px;\n text-align: right;\n}\n\n.chipRow {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-top: 8px;\n}\n\n.chip {\n padding: 7px 12px;\n background: var(--wac-chip-bg);\n color: var(--wac-chip-fg);\n border: 1px solid transparent;\n border-radius: 999px;\n font-size: 13px;\n cursor: pointer;\n transition: background 0.15s ease, transform 0.15s ease;\n font-family: inherit;\n}\n\n.chip:hover:not(:disabled) {\n background: #d8def2;\n transform: translateY(-1px);\n}\n\n.chipActive {\n background: var(--wac-chip-active-bg);\n color: var(--wac-chip-active-fg);\n}\n\n.chipDisabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.typing {\n align-self: flex-start;\n display: inline-flex;\n gap: 4px;\n padding: 10px 14px;\n background: var(--wac-bot-bg);\n border-radius: 12px;\n border-bottom-left-radius: 4px;\n}\n\n.typingDot {\n width: 7px;\n height: 7px;\n background: var(--wac-muted);\n border-radius: 50%;\n animation: wacBlink 1.2s infinite ease-in-out both;\n}\n\n.typingDot:nth-child(2) {\n animation-delay: 0.18s;\n}\n.typingDot:nth-child(3) {\n animation-delay: 0.36s;\n}\n\n@keyframes wacBlink {\n 0%, 80%, 100% { opacity: 0.3; transform: scale(0.85); }\n 40% { opacity: 1; transform: scale(1); }\n}\n\n.input {\n display: flex;\n gap: 8px;\n padding: 10px 12px;\n border-top: 1px solid var(--wac-border);\n background: var(--wac-bg);\n}\n\n.inputBox {\n flex: 1;\n padding: 12px 16px;\n border: 1.6px solid var(--wac-brand);\n border-radius: 14px;\n font-size: 14px;\n outline: none;\n font-family: inherit;\n background: var(--wac-bg);\n color: var(--wac-fg);\n}\n\n.inputBox:focus {\n border-color: var(--wac-brand);\n background: var(--wac-bg);\n}\n\n.inputBox:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n.sendButton {\n padding: 0 20px;\n background: var(--wac-brand);\n color: var(--wac-brand-contrast);\n border: none;\n border-radius: 14px;\n font-weight: 700;\n cursor: pointer;\n font-size: 14px;\n font-family: inherit;\n}\n\n.sendButton:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.hiddenFileInput {\n position: absolute;\n width: 0;\n height: 0;\n opacity: 0;\n overflow: hidden;\n pointer-events: none;\n}\n\n.csvButton {\n flex-shrink: 0;\n padding: 0 12px;\n background: var(--wac-chip-bg);\n color: var(--wac-chip-fg);\n border: 1px solid var(--wac-border);\n border-radius: 999px;\n font-size: 13px;\n font-weight: 600;\n cursor: pointer;\n font-family: inherit;\n white-space: nowrap;\n}\n\n.csvButton:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.authGate {\n margin: auto;\n text-align: center;\n padding: 32px 24px;\n max-width: 280px;\n display: flex;\n flex-direction: column;\n gap: 12px;\n align-items: center;\n}\n\n.authGateIcon {\n font-size: 36px;\n}\n\n.authGateTitle {\n font-size: 16px;\n font-weight: 600;\n}\n\n.authGateText {\n font-size: 13px;\n color: var(--wac-muted);\n line-height: 1.5;\n}\n\n.authGateButton {\n margin-top: 8px;\n padding: 10px 20px;\n background: var(--wac-brand);\n color: var(--wac-brand-contrast);\n border: none;\n border-radius: 999px;\n cursor: pointer;\n font-weight: 600;\n font-size: 14px;\n font-family: inherit;\n}\n\n.authGateDisclaimer {\n margin-top: 16px;\n padding-top: 12px;\n border-top: 1px dashed var(--wac-border);\n font-size: 11px;\n color: var(--wac-muted);\n line-height: 1.5;\n text-align: left;\n width: 100%;\n}\n\n.authGateDisclaimerTitle {\n font-weight: 700;\n letter-spacing: 0.6px;\n font-size: 10px;\n margin-bottom: 4px;\n color: var(--wac-fg);\n}\n\n.errorBanner {\n background: #fef2f2;\n border: 1px solid #fecaca;\n color: #991b1b;\n padding: 8px 12px;\n font-size: 12px;\n border-radius: 8px;\n margin: 0 14px 8px;\n}\n\n/* ── Greeting popup bubble ─────────────────────────────────────── */\n\n.popupBubble {\n position: fixed;\n bottom: 24px;\n z-index: 2147483646;\n background: var(--wac-brand);\n color: var(--wac-brand-contrast);\n border-radius: 12px;\n padding: 12px 36px 12px 14px;\n font-size: 13px;\n line-height: 1.45;\n box-shadow: var(--wac-shadow);\n border: none;\n max-width: 240px;\n animation: wacPopIn 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);\n}\n\n/* Shared arrow base — direction is set per-position class below */\n.popupBubble::after {\n content: '';\n position: absolute;\n width: 12px;\n height: 12px;\n background: var(--wac-brand);\n}\n\n/* Popup to the LEFT of a right-positioned button — arrow points right */\n.popupBubbleRight {\n right: 94px;\n}\n\n.popupBubbleRight::after {\n right: -7px;\n top: 50%;\n border-top: 1px solid var(--wac-brand);\n border-right: 1px solid var(--wac-brand);\n transform: translateY(-50%) rotate(45deg);\n}\n\n/* Popup to the RIGHT of a left-positioned button — arrow points left */\n.popupBubbleLeft {\n left: 94px;\n}\n\n.popupBubbleLeft::after {\n left: -7px;\n top: 50%;\n border-bottom: 1px solid var(--wac-brand);\n border-left: 1px solid var(--wac-brand);\n transform: translateY(-50%) rotate(45deg);\n}\n\n.popupDismiss {\n position: absolute;\n top: 8px;\n right: 8px;\n background: transparent;\n border: none;\n cursor: pointer;\n font-size: 14px;\n color: var(--wac-brand-contrast);\n line-height: 1;\n padding: 2px 4px;\n border-radius: 4px;\n font-family: inherit;\n opacity: 0.75;\n}\n\n.popupDismiss:hover {\n background: rgba(255, 255, 255, 0.15);\n opacity: 1;\n}\n\n@keyframes wacPopIn {\n 0% { opacity: 0; transform: scale(0.85) translateY(8px); }\n 100% { opacity: 1; transform: scale(1) translateY(0); }\n}\n\n/* ── Menu grid (root chips rendered as cards) ───────────────────── */\n.menuGrid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 6px;\n margin-top: 6px;\n}\n\n.menuItem {\n background: #fff;\n border: 1px solid #e6e9f5;\n border-radius: 14px;\n padding: 14px;\n cursor: pointer;\n text-align: left;\n font-family: inherit;\n transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s;\n}\n\n.menuItem:hover {\n transform: translateY(-2px);\n box-shadow: 0 8px 20px -12px rgba(28, 44, 91, 0.45);\n border-color: #d4d9ee;\n}\n\n.menuItemIcon {\n width: 46px;\n height: 46px;\n border-radius: 12px;\n display: grid;\n place-items: center;\n font-size: 22px;\n margin-bottom: 12px;\n}\n\n/* Main-menu SVG icon — mirrors wealth-alpha-final.html .cmd .ico svg */\n.menuItemSvg {\n width: 24px;\n height: 24px;\n stroke: #fff;\n fill: none;\n stroke-width: 2.2;\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n\n.menuItemTitle {\n font-size: 14px;\n font-weight: 700;\n color: #1c2438;\n line-height: 1.2;\n}\n\n.menuItemSub {\n font-size: 11.5px;\n color: #737b97;\n margin-top: 3px;\n line-height: 1.3;\n}\n\n.menuIconGreen { background: linear-gradient(135deg, #10b981, #059669); }\n.menuIconBlue { background: linear-gradient(135deg, #3b82f6, #2563eb); }\n.menuIconLeaf { background: linear-gradient(135deg, #65c466, #3f9c43); }\n.menuIconRed { background: linear-gradient(135deg, #f43f5e, #e11d48); }\n.menuIconOrange { background: linear-gradient(135deg, #fb923c, #ea580c); }\n.menuIconGold { background: linear-gradient(135deg, #fbbf24, #d97706); }\n.menuIconTeal { background: linear-gradient(135deg, #14b8a6, #0d9488); }\n.menuIconPurple { background: linear-gradient(135deg, #8b5cf6, #7c3aed); }\n\n\n.chat_bubbleBot {\n background-color: var(--wac-bg) !important; \n}"],"mappings":"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","names":["root","headerTitle","menuItemTitle","markdown","floatingButton","positionRight","positionLeft","widget","popupBubbleLeft","popupBubbleRight","header","headerMeta","headerActions","iconButton","body","bubble","bubbleBot","bubbleUser","bubbleCard","disclaimer","feedbackRow","feedbackLabel","feedbackBtn","feedbackBtnUp","feedbackBtnDown","feedbackIcon","bubbleMeta","chipRow","chip","chipActive","chipDisabled","typing","typingDot","wacBlink","input","inputBox","sendButton","hiddenFileInput","csvButton","authGate","authGateIcon","authGateTitle","authGateText","authGateButton","authGateDisclaimer","authGateDisclaimerTitle","errorBanner","popupBubble","popupDismiss","wacPopIn","menuGrid","menuItem","menuItemIcon","menuItemSvg","menuItemSub","menuIconGreen","menuIconBlue","menuIconLeaf","menuIconRed","menuIconOrange","menuIconGold","menuIconTeal","menuIconPurple","chat_bubbleBot"]}
1
+ {"version":3,"sources":["../src/styles/chat.module.css"],"sourcesContent":["@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@600;700;800&display=swap');\n\n.root {\n --wac-brand: #1a2d5a;\n --wac-brand-contrast: #ffffff;\n --wac-bg: #ffffff;\n --wac-fg: #1f2937;\n --wac-muted: #6b7280;\n --wac-border: #e5e7eb;\n --wac-bot-bg: #f3f4f6;\n --wac-user-bg: var(--wac-brand);\n --wac-chip-bg: #e7ebf7;\n --wac-chip-fg: #1c2c5b;\n --wac-chip-active-bg: var(--wac-brand);\n --wac-chip-active-fg: #ffffff;\n --wac-radius: 14px;\n --wac-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);\n font-family: 'Manrope', system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';\n color: var(--wac-fg);\n box-sizing: border-box;\n}\n\n.root *,\n.root *::before,\n.root *::after {\n box-sizing: inherit;\n}\n\n/* Sora for headings/labels/symbols — mirrors the HTML prototype */\n.headerTitle,\n.menuItemTitle,\n.markdown :global(.wa-card-sym),\n.markdown :global(.sec) :global(.lbl),\n.markdown :global(.wa-verdict-lbl) {\n font-family: 'Sora', 'Manrope', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';\n}\n\n.floatingButton {\n position: fixed;\n bottom: 24px;\n z-index: 2147483646;\n width: 60px;\n height: 60px;\n border-radius: 50%;\n background: var(--wac-brand);\n color: var(--wac-brand-contrast);\n border: none;\n cursor: pointer;\n box-shadow: var(--wac-shadow);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 26px;\n transition: transform 0.15s ease, box-shadow 0.15s ease;\n}\n\n.floatingButton:hover {\n transform: translateY(-2px);\n box-shadow: 0 16px 48px rgba(0, 0, 0, 0.22);\n}\n\n.positionRight {\n right: 24px;\n}\n\n.positionLeft {\n left: 24px;\n}\n\n.widget {\n position: fixed;\n bottom: 24px;\n z-index: 2147483647;\n width: 420px;\n max-width: calc(100vw - 24px);\n height: min(760px, calc(100vh - 48px));\n background: var(--wac-bg);\n color: var(--wac-fg);\n border-radius: 24px;\n box-shadow: 0 18px 50px -18px rgba(28, 44, 91, 0.45);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border: 1px solid var(--wac-border);\n}\n\n@media (max-width: 640px) {\n .widget {\n width: calc(100vw - 12px);\n height: calc(100vh - 24px);\n bottom: 12px;\n }\n .positionRight,\n .positionLeft {\n right: 6px;\n left: auto;\n }\n .floatingButton {\n width: 56px;\n height: 56px;\n bottom: 16px;\n }\n /* Both positions collapse to right: 6px on mobile, so sync popup */\n .popupBubbleLeft,\n .popupBubbleRight {\n right: 72px;\n left: auto;\n bottom: 16px;\n max-width: calc(100vw - 84px);\n }\n}\n\n.header {\n background: linear-gradient(135deg, var(--wac-brand) 0%, #15224a 100%);\n color: var(--wac-brand-contrast);\n padding: 15px 18px 13px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n}\n\n.headerTitle {\n font-weight: 700;\n font-size: 17px;\n line-height: 1.2;\n}\n\n.headerMeta {\n font-size: 11px;\n opacity: 0.85;\n margin-top: 2px;\n}\n\n.headerActions {\n display: flex;\n gap: 4px;\n align-items: center;\n}\n\n.iconButton {\n background: transparent;\n color: inherit;\n border: none;\n cursor: pointer;\n font-size: 18px;\n padding: 4px 8px;\n border-radius: 6px;\n line-height: 1;\n}\n\n.iconButton:hover {\n background: rgba(255, 255, 255, 0.15);\n}\n\n.body {\n flex: 1;\n overflow-y: auto;\n padding: 14px;\n display: flex;\n flex-direction: column;\n gap: 10px;\n background: #fafafa;\n scroll-behavior: smooth;\n}\n\n.body::-webkit-scrollbar {\n width: 6px;\n}\n\n.body::-webkit-scrollbar-thumb {\n background: #d1d5db;\n border-radius: 3px;\n}\n\n.bubble {\n /* max-width: 80%; */\n padding: 10px 14px;\n border-radius: 12px;\n font-size: 14px;\n line-height: 1.45;\n word-wrap: break-word;\n white-space: pre-wrap;\n}\n\n/* markdown-it output inside a bot bubble.\n markdown-it (breaks: true) emits a <br> for every \\n in the source,\n so we MUST NOT also apply white-space: pre-wrap here — otherwise every\n newline gets rendered twice (once via <br>, once via the literal \\n in\n CSS) and the bubble looks double-spaced. */\n.markdown {\n white-space: normal;\n --card-bg: #ffffff;\n --text: var(--wac-fg);\n --text-muted: var(--wac-muted);\n --green: #16a34a;\n --red: #dc2626;\n}\n.markdown p {\n margin: 0 0 6px 0;\n}\n.markdown p:last-child {\n margin-bottom: 0;\n}\n.markdown br {\n /* Make consecutive <br>s collapse a bit — keeps line rhythm tight. */\n line-height: 1.4;\n}\n.markdown strong {\n font-weight: 700;\n color: var(--wac-fg);\n letter-spacing: 0.2px;\n}\n.markdown em {\n font-style: italic;\n color: var(--wac-muted);\n}\n.markdown ul,\n.markdown ol {\n margin: 4px 0 6px 0;\n padding-left: 22px;\n}\n.markdown li {\n margin: 1px 0;\n}\n.markdown a {\n color: var(--wac-brand);\n text-decoration: underline;\n}\n.markdown code {\n background: rgba(0, 0, 0, 0.06);\n padding: 1px 4px;\n border-radius: 4px;\n font-family: ui-monospace, SFMono-Regular, Menlo, monospace;\n font-size: 12.5px;\n}\n.markdown h1,\n.markdown h2,\n.markdown h3 {\n margin: 6px 0 2px 0;\n font-size: 14px;\n font-weight: 700;\n}\n\n/* Price snapshot grid (backend: price_snapshot_template.py).\n Seamless joined panel — 1px hairline dividers + one rounded border around the\n whole grid (mirrors wealth-alpha_1.1.html `.mgrid`), NOT separate boxes. */\n.markdown :global(.mgrid) {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 1px;\n background: #eceffa;\n border: 1px solid #eceffa;\n border-radius: 10px;\n overflow: hidden;\n margin-top: 8px;\n}\n\n.markdown :global(.mgrid) :global(.wa-price) {\n background: var(--card-bg, #fff);\n padding: 12px 14px;\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.markdown :global(.mgrid) :global(.k) {\n font-size: 11px;\n color: var(--text-muted, #888);\n font-weight: 500;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n}\n\n.markdown :global(.mgrid) :global(.wa-price-value) {\n font-size: 18px;\n font-weight: 700;\n color: var(--text, #111);\n}\n\n.markdown :global(.mgrid) :global(.wa-price-value.up) {\n color: var(--green);\n}\n\n.markdown :global(.mgrid) :global(.wa-price-value.down) {\n color: var(--red);\n}\n\n.markdown :global(.mgrid) :global(.n) {\n font-size: 12px;\n font-weight: 500;\n color: var(--text-muted, #888);\n}\n\n.markdown :global(.mgrid) :global(.n.up) {\n color: var(--green);\n}\n\n.markdown :global(.mgrid) :global(.n.down) {\n color: var(--red);\n}\n\n.markdown :global(.sec) :global(.lbl) {\n font-size: 10.5px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.7px;\n color: #1c2c5b;\n margin-bottom: 6px;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.markdown :global(.mgrid) :global(.wa-price.full-width) {\n grid-column: 1 / -1;\n text-align: center;\n align-items: center;\n justify-content: center;\n}\n/* ── Stock Analysis Card — existing investor flow ────────────────────────── */\n\n/* Outer card wrapper */\n.markdown :global(.wa-analysis-card) {\n background: #fff;\n border: 1px solid #e6e9f5;\n border-radius: 18px;\n overflow: hidden;\n box-shadow: 0 12px 34px -24px rgba(28, 44, 91, 0.4);\n margin-bottom: 4px;\n}\n\n/* Card header — navy gradient */\n.markdown :global(.wa-card-head) {\n background: linear-gradient(135deg, #22356e 0%, #15224a 100%);\n color: #fff;\n padding: 14px 16px 13px;\n position: relative;\n}\n.markdown :global(.wa-card-date) {\n float: right;\n font-size: 11px;\n opacity: 0.7;\n font-weight: 600;\n}\n.markdown :global(.wa-card-tag) {\n display: inline-block;\n font-size: 9.5px;\n font-weight: 800;\n letter-spacing: 1px;\n background: rgba(255, 255, 255, 0.16);\n padding: 3px 9px;\n border-radius: 6px;\n margin-bottom: 8px;\n}\n.markdown :global(.wa-card-sym) {\n font-weight: 700;\n font-size: 17px;\n line-height: 1.2;\n}\n.markdown :global(.wa-card-meta) {\n font-size: 11.5px;\n opacity: 0.8;\n margin-top: 3px;\n}\n\n/* Section container */\n.markdown :global(.sec) {\n padding: 12px 14px;\n border-top: 1px solid #eceffa;\n}\n\n/* Metric grid — flat variant inherits the seamless joined panel from `.mgrid`\n above; just adjusts the top margin (mirrors 1.1 `.mgrid.flat`). */\n.markdown :global(.mgrid.flat) {\n margin-top: 9px;\n}\n\n/* Metric cell — no individual border/radius; the parent grid frames them and\n the 1px gap shows the divider line through (1.1 `.m`). */\n.markdown :global(.mgrid) :global(.m) {\n background: #fff;\n padding: 10px 13px;\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n.markdown :global(.mgrid) :global(.m) :global(.k) {\n font-size: 9.5px;\n color: #737b97;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n font-weight: 700;\n}\n.markdown :global(.mgrid) :global(.m) :global(.v) {\n font-size: 14px;\n font-weight: 700;\n color: #1c2438;\n margin-top: 2px;\n}\n.markdown :global(.mgrid) :global(.m) :global(.n) {\n font-size: 10.5px;\n font-weight: 700;\n color: #737b97;\n margin-top: 1px;\n}\n/* Score colour modifiers on .n inside metric cells */\n.markdown :global(.mgrid) :global(.m) :global(.n.good) {\n color: #16a34a;\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.avg) {\n color: #737b97;\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.low) {\n color: #b45309;\n}\n\n/* Regime label inside metric cell */\n.markdown :global(.wa-regime) {\n font-size: 12px;\n}\n\n/* Your Position block */\n.markdown :global(.wa-pos) {\n margin-top: 9px;\n border-radius: 12px;\n padding: 12px 14px;\n border: 1px solid #e5e7eb;\n background: #f9fafb;\n}\n.markdown :global(.wa-pos.profit) {\n background: linear-gradient(135deg, #ecfdf3, #f7fef9);\n border-color: #bbf7d0;\n}\n.markdown :global(.wa-pos.loss) {\n background: linear-gradient(135deg, #fef2f2, #fff5f5);\n border-color: #fecaca;\n}\n.markdown :global(.wa-pl) {\n font-weight: 800;\n font-size: 22px;\n line-height: 1;\n color: #1c2438;\n}\n.markdown :global(.wa-pl.up) {\n color: #16a34a;\n}\n.markdown :global(.wa-pl.down) {\n color: #dc2626;\n}\n.markdown :global(.wa-zone) {\n font-size: 11px;\n font-weight: 700;\n color: #737b97;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n margin-top: 4px;\n}\n.markdown :global(.wa-summ) {\n font-size: 12.5px;\n line-height: 1.5;\n margin-top: 8px;\n color: #3a4159;\n}\n\n/* Key-value rows (Trend Structure, Indicators) */\n.markdown :global(.kv) {\n display: flex;\n gap: 8px;\n font-size: 12.5px;\n line-height: 1.5;\n margin-bottom: 7px;\n}\n.markdown :global(.kv:last-child) {\n margin-bottom: 0;\n}\n.markdown :global(.kk) {\n font-weight: 700;\n color: #1c2c5b;\n flex: 0 0 auto;\n min-width: 90px;\n}\n.markdown :global(.vv) {\n color: #3a4159;\n}\n\n/* Recovery level value */\n.markdown :global(.wa-recovery) {\n font-size: 11.5px;\n color: #3a4159;\n}\n\n/* Verdict block */\n.markdown :global(.wa-verdict) {\n padding: 13px 16px;\n border-top: 1px solid #eceffa;\n background: #fafbff;\n}\n.markdown :global(.wa-verdict-lbl) {\n font-size: 10.5px;\n font-weight: 700;\n letter-spacing: 0.7px;\n text-transform: uppercase;\n color: #1c2c5b;\n margin-bottom: 8px;\n}\n.markdown :global(.wa-verdict-list) {\n margin: 0;\n padding-left: 20px;\n list-style-type: disc;\n list-style-position: outside;\n font-size: 12.5px;\n line-height: 1.55;\n color: #3a4159;\n}\n.markdown :global(.wa-verdict-list) li {\n display: list-item;\n margin-bottom: 6px;\n padding-left: 2px;\n}\n.markdown :global(.wa-verdict-list) li:last-child {\n margin-bottom: 0;\n}\n\n/* Business Health bullets and scale note */\n.markdown :global(.wa-bullets) {\n margin: 8px 0 4px 0;\n padding-left: 17px;\n font-size: 12px;\n line-height: 1.5;\n color: #3a4159;\n}\n.markdown :global(.wa-bullets) li {\n margin-bottom: 4px;\n}\n.markdown :global(.wa-scale-note) {\n font-size: 10.5px;\n color: #737b97;\n margin-top: 6px;\n line-height: 1.4;\n}\n\n/* VS Peers */\n.markdown :global(.wa-peer-ctx) {\n font-size: 12px;\n color: #737b97;\n margin-bottom: 8px;\n font-weight: bold;\n}\n.markdown :global(.wa-peer-row) {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 7px 10px;\n border-radius: 8px;\n background: #f8f9fc;\n border: 1px solid #eceffa;\n margin-bottom: 6px;\n font-size: 12px;\n}\n.markdown :global(.wa-peer-sym) {\n font-weight: 700;\n color: #1c2c5b;\n}\n.markdown :global(.wa-peer-detail) {\n color: #3a4159;\n}\n.markdown :global(.wa-peer-detail) :global(.up) {\n color: #16a34a;\n font-weight: 700;\n}\n.markdown :global(.wa-peer-detail) :global(.down) {\n color: #dc2626;\n font-weight: 700;\n}\n.markdown :global(.wa-peer-empty) {\n font-size: 12px;\n color: #737b97;\n line-height: 1.5;\n padding: 4px 0;\n}\n.markdown :global(.wa-top-peer) {\n font-size: 11.5px;\n color: #1c2c5b;\n font-weight: 600;\n margin-top: 4px;\n padding: 6px 10px;\n background: #eef2ff;\n border-radius: 8px;\n}\n\n/* ── New Investor Flow — Signal, AI Lens, Indicators, Invalidation ───────── */\n\n/* Signal badge + label row */\n.markdown :global(.wa-signal-header) {\n display: flex;\n align-items: center;\n gap: 10px;\n flex-wrap: wrap;\n margin-bottom: 10px;\n}\n.markdown :global(.wa-signal-lbl) {\n font-size: 13px;\n font-weight: 600;\n color: #3a4159;\n flex: 1;\n}\n.markdown :global(.wa-signal-level) {\n padding: 10px 0;\n}\n.markdown :global(.wa-signal-level) :global(.kv) {\n gap: 4px;\n align-items: center;\n margin-bottom: 0;\n}\n.markdown :global(.wa-signal-level) :global(.kk) {\n min-width: auto;\n}\n\n/* Direction / action badges (shared across flows) */\n.markdown :global(.wa-badge) {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 6px 13px;\n border-radius: 999px;\n font-size: 12px;\n font-weight: 800;\n letter-spacing: 0.3px;\n white-space: nowrap;\n}\n.markdown :global(.wa-b-buy) {\n background: #dcfce7;\n color: #16a34a;\n}\n.markdown :global(.wa-b-sell) {\n background: #fee2e2;\n color: #dc2626;\n}\n.markdown :global(.wa-b-wait) {\n background: #fef3e0;\n color: #b45309;\n}\n.markdown :global(.wa-b-info) {\n background: #e0ecff;\n color: #2563eb;\n}\n\n/* ── Macro Event card (.evt) ─────────────────────────────────────────────── */\n.markdown :global(.evt) {\n border: 1px solid #e6e9f5;\n border-radius: 16px;\n overflow: hidden;\n margin-bottom: 12px;\n background: #fff;\n box-shadow: 0 12px 30px -24px rgba(28, 44, 91, 0.4);\n}\n.markdown :global(.evt .top) {\n padding: 13px 15px;\n display: flex;\n gap: 11px;\n align-items: flex-start;\n}\n.markdown :global(.evt .num) {\n width: 26px;\n height: 26px;\n flex: 0 0 auto;\n border-radius: 8px;\n background: #1c2c5b;\n color: #fff;\n display: grid;\n place-items: center;\n font-weight: 700;\n font-size: 13px;\n}\n.markdown :global(.evt .ti) {\n font-weight: 700;\n font-size: 13.5px;\n line-height: 1.25;\n color: #1c2438;\n}\n.markdown :global(.evt .dt) {\n font-size: 11px;\n color: #737b97;\n margin-top: 2px;\n}\n.markdown :global(.evt .news) {\n padding: 0 15px 12px;\n font-size: 12.5px;\n line-height: 1.5;\n color: #3a4159;\n}\n.markdown :global(.evt .news .imp) {\n display: inline-block;\n margin-top: 7px;\n}\n.markdown :global(.evt .body) {\n padding: 11px 15px;\n border-top: 1px solid #eceffa;\n background: #fbfcff;\n}\n.markdown :global(.evt .body) :global(.lbl) {\n font-size: 10.5px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.7px;\n color: #1c2c5b;\n margin-top: 8px;\n margin-bottom: 6px;\n}\n.markdown :global(.evt .body) :global(.wa-verdict-text) {\n margin: 4px 0 0;\n}\n\n/* ── Sector impact block (.impact) ──────────────────────────────────────── */\n.markdown :global(.impact) {\n margin-top: 8px;\n}\n.markdown :global(.ih) {\n font-size: 10.5px;\n font-weight: 800;\n letter-spacing: 0.4px;\n text-transform: uppercase;\n margin-bottom: 7px;\n display: flex;\n align-items: center;\n gap: 6px;\n /* Rounded bordered box around the impact heading (Opportunity / Most\n Affected / Moderate). Border + tint are colour-coded per variant below. */\n padding: 9px 12px;\n border: 1px solid;\n border-radius: 10px;\n}\n.markdown :global(.ih.neg) { color: #dc2626; border-color: #fca5a5; background: #fef2f2; }\n.markdown :global(.ih.mod) { color: #b45309; border-color: #f3c98a; background: #fffaf2; }\n.markdown :global(.ih.pos) { color: #16a34a; border-color: #86efac; background: #f3fdf6; }\n\n/* ── Sector impact pill (.pill) ─────────────────────────────────────────── */\n.markdown :global(.pill) {\n display: block;\n font-size: 12px;\n line-height: 1.45;\n padding: 8px 11px;\n border-radius: 10px;\n margin-bottom: 6px;\n border: 1px solid;\n}\n.markdown :global(.pill b) { font-weight: 700; }\n.markdown :global(.pill.neg) {\n background: #fee2e2;\n border-color: #fecaca;\n color: #7f1d1d;\n}\n.markdown :global(.pill.mod) {\n background: #fef3e0;\n border-color: #fde2b8;\n color: #7c4a03;\n}\n.markdown :global(.pill.pos) {\n background: #dcfce7;\n border-color: #bbf7d0;\n color: #14532d;\n}\n\n/* Confidence score row */\n.markdown :global(.wa-conf-row) {\n display: flex;\n align-items: center;\n gap: 9px;\n margin-top: 10px;\n padding: 8px 12px;\n background: #f8f9fc;\n border-radius: 10px;\n border: 1px solid #eceffa;\n}\n.markdown :global(.wa-conf-badge) {\n font-size: 13px;\n font-weight: 800;\n padding: 4px 10px;\n border-radius: 999px;\n background: #eceffa;\n color: #1c2c5b;\n}\n.markdown :global(.wa-conf-badge.good) {\n background: #dcfce7;\n color: #16a34a;\n}\n.markdown :global(.wa-conf-badge.low) {\n background: #fee2e2;\n color: #dc2626;\n}\n.markdown :global(.wa-conf-badge.avg) {\n background: #fef3e0;\n color: #b45309;\n}\n.markdown :global(.wa-conf-text) {\n font-size: 12px;\n color: #3a4159;\n flex: 1;\n}\n\n/* AI Lens */\n.markdown :global(.wa-ai-heading) {\n font-size: 13.5px;\n font-weight: 700;\n color: #1c2c5b;\n margin-bottom: 5px;\n}\n.markdown :global(.wa-ai-insight) {\n font-size: 12.5px;\n line-height: 1.55;\n color: #3a4159;\n margin-bottom: 6px;\n}\n\n/* Invalidation */\n.markdown :global(.wa-inv-text) {\n font-size: 12.5px;\n line-height: 1.5;\n color: #3a4159;\n}\n.markdown :global(.wa-inv-status) {\n margin-top: 8px;\n}\n\n/* Text verdict (new investor flow — single string, not a bullet list) */\n.markdown :global(.wa-verdict-text) {\n font-size: 12.5px;\n line-height: 1.55;\n color: #3a4159;\n}\n\n/* ── Portfolio Risk — Gauge, Action Rows, Clist, Allocation Bars ────────── */\n\n/* Health score gauge (red → amber → green gradient) */\n.markdown :global(.gauge) {\n height: 10px;\n border-radius: 6px;\n background: linear-gradient(90deg, #dc2626 0%, #f59e0b 50%, #16a34a 100%);\n position: relative;\n margin: 6px 0 28px;\n}\n.markdown :global(.wa-portfolio-gauge-wrap) {\n padding: 4px 22px 32px;\n overflow: visible;\n}\n.markdown :global(.wa-portfolio-health-gauge) {\n margin: 6px 0 0;\n}\n.markdown :global(.gauge) :global(.pin),\n.markdown :global(.wa-portfolio-gauge-pin) {\n position: absolute;\n top: -4px;\n width: 5px;\n height: 18px;\n border-radius: 3px;\n background: #1c2c5b;\n box-shadow: 0 0 0 3px #fff;\n transform: translateX(-50%);\n}\n.markdown :global(.gauge) :global(.lab),\n.markdown :global(.wa-portfolio-gauge-score) {\n position: absolute;\n top: 17px;\n font-size: 11px;\n font-weight: 800;\n color: #1c2c5b;\n transform: translateX(-50%);\n white-space: nowrap;\n}\n\n/* Portfolio performance header — two-line summary */\n.markdown :global(.wa-portfolio-performance-head) :global(.wa-portfolio-header-title) {\n margin-top: 2px;\n line-height: 1.25;\n}\n.markdown :global(.wa-portfolio-header-meta) {\n margin-top: 8px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n.markdown :global(.wa-portfolio-header-summary) {\n font-size: 11.5px;\n line-height: 1.45;\n opacity: 0.92;\n color: #fff;\n}\n.markdown :global(.wa-portfolio-header-risk) {\n font-size: 11px;\n line-height: 1.4;\n opacity: 0.75;\n color: #fff;\n}\n\n/* Portfolio health section spacing */\n.markdown :global(.wa-portfolio-health-section) {\n overflow: visible;\n}\n.markdown :global(.wa-portfolio-health-verdict) {\n margin-top: 2px;\n}\n\n/* CAGR / Risk metric rows */\n.markdown :global(.wa-portfolio-metrics-block) {\n padding: 10px 0 6px;\n margin-top: 4px;\n}\n.markdown :global(.wa-portfolio-metric-row) {\n align-items: flex-start;\n gap: 10px;\n margin-bottom: 6px;\n}\n.markdown :global(.wa-portfolio-metric-row):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-metric-label) {\n min-width: 48px;\n flex-shrink: 0;\n}\n.markdown :global(.wa-portfolio-metric-value) {\n flex: 1;\n line-height: 1.45;\n}\n\n/* Portfolio optimization bullet lists */\n.markdown :global(.wa-portfolio-bullet-list) {\n margin: 0;\n padding-left: 20px;\n list-style-type: disc;\n list-style-position: outside;\n font-size: 12.5px;\n line-height: 1.55;\n color: #3a4159;\n}\n.markdown :global(.wa-portfolio-bullet-list) li {\n display: list-item;\n margin-bottom: 6px;\n padding-left: 2px;\n}\n.markdown :global(.wa-portfolio-bullet-list) li:last-child {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-concerns-list),\n.markdown :global(.wa-portfolio-actions-needed-list) {\n margin-top: 2px;\n}\n.markdown :global(.wa-portfolio-verdict-block) :global(.wa-portfolio-verdict-list) {\n margin-top: 0;\n}\n\n/* Health check — Current Mix vs Target (Stocks row full-width centered) */\n.markdown :global(.wa-portfolio-mix-grid) :global(.wa-portfolio-mix-stocks-full) {\n grid-column: 1 / -1;\n text-align: center;\n align-items: center;\n justify-content: center;\n}\n.markdown :global(.wa-portfolio-mix-stocks-full) :global(.v) {\n text-align: center;\n}\n\n/* Health check — Stock / ETF deviation rows */\n.markdown :global(.wa-portfolio-deviation-block) {\n padding: 10px 0 4px;\n margin-top: 6px;\n}\n.markdown :global(.wa-portfolio-deviation-row) {\n align-items: flex-start;\n gap: 10px;\n margin-bottom: 8px;\n}\n.markdown :global(.wa-portfolio-deviation-row):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-deviation-label) {\n min-width: 108px;\n flex-shrink: 0;\n}\n.markdown :global(.wa-portfolio-deviation-value) {\n flex: 1;\n line-height: 1.45;\n}\n\n/* Health check — Structure Points cards */\n.markdown :global(.wa-portfolio-structure-section) {\n padding-bottom: 14px;\n}\n.markdown :global(.wa-portfolio-structure-card) {\n border: 1px solid #e6e9f5;\n border-radius: 12px;\n padding: 11px 13px;\n margin-bottom: 8px;\n background: #f8f9fc;\n}\n.markdown :global(.wa-portfolio-structure-card):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-structure-card-head) {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n margin-bottom: 6px;\n}\n.markdown :global(.wa-portfolio-structure-symbol) {\n font-weight: 800;\n font-size: 13px;\n color: #1c2c5b;\n letter-spacing: 0.02em;\n}\n.markdown :global(.wa-portfolio-structure-score-badge) {\n font-size: 10px;\n font-weight: 700;\n padding: 3px 8px;\n border-radius: 999px;\n background: #eceffa;\n color: #1c2c5b;\n white-space: nowrap;\n}\n.markdown :global(.wa-portfolio-structure-line) {\n font-size: 12px;\n line-height: 1.45;\n color: #3a4159;\n margin-bottom: 4px;\n}\n.markdown :global(.wa-portfolio-structure-line) :global(.up) {\n color: var(--green);\n font-weight: 700;\n}\n.markdown :global(.wa-portfolio-structure-line) :global(.down) {\n color: var(--red);\n font-weight: 700;\n}\n.markdown :global(.wa-portfolio-structure-line):last-of-type {\n margin-bottom: 0;\n}\n.markdown :global(.wa-portfolio-structure-meta) {\n font-size: 11.5px;\n line-height: 1.4;\n color: #737b97;\n margin-top: 4px;\n}\n\n/* Portfolio build — Sector Allocation card layout */\n.markdown :global(.wa-portfolio-sector-card-head) {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n margin-bottom: 8px;\n}\n.markdown :global(.wa-portfolio-sector-return) {\n flex: 1;\n text-align: center;\n font-size: 11px;\n font-weight: 600;\n color: #3a4159;\n white-space: nowrap;\n}\n.markdown :global(.wa-portfolio-sector-return) :global(.up) {\n color: var(--green);\n font-weight: 700;\n}\n.markdown :global(.wa-portfolio-sector-return) :global(.down) {\n color: var(--red);\n font-weight: 700;\n}\n.markdown :global(.wa-portfolio-sector-capital-line) {\n font-size: 12px;\n font-weight: 700;\n color: #3a4159;\n margin-bottom: 6px;\n}\n.markdown :global(.wa-portfolio-sector-bullet-list) {\n list-style: none;\n padding-left: 0;\n margin: 0;\n font-size: 12px;\n line-height: 1.5;\n}\n.markdown :global(.wa-portfolio-sector-bullet-list) li {\n margin-bottom: 4px;\n padding-left: 0;\n}\n.markdown :global(.wa-portfolio-sector-bullet-list) li::before {\n content: \"· \";\n font-weight: 700;\n color: #737b97;\n}\n.markdown :global(.wa-portfolio-sector-bullet-list) li:last-child {\n margin-bottom: 0;\n}\n\n/* Health verdict text */\n.markdown :global(.wa-health-text) {\n font-size: 12px;\n font-weight: 600;\n color: #dc2626;\n line-height: 1.5;\n margin-top: 4px;\n}\n.markdown :global(.wa-health-text.ok) {\n color: #16a34a;\n}\n.markdown :global(.wa-health-text.warn) {\n color: #b45309;\n}\n\n/* Action rows — EXIT / TRIM / ADD / HOLD / SWITCH / REVIEW */\n.markdown :global(.act) {\n display: flex;\n gap: 10px;\n align-items: flex-start;\n padding: 10px 12px;\n border-radius: 12px;\n margin-bottom: 8px;\n border: 1px solid #e5e7eb;\n background: #f9fafb;\n}\n.markdown :global(.act):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.act.exit) {\n background: #fee2e2;\n border-color: #fecaca;\n}\n.markdown :global(.act.trim) {\n background: #fef3e0;\n border-color: #fde2b8;\n}\n.markdown :global(.act.add) {\n background: #dcfce7;\n border-color: #bbf7d0;\n}\n.markdown :global(.act.hold) {\n background: #f1f3fa;\n border-color: #e0e4f0;\n}\n.markdown :global(.act.switch) {\n background: #e0ecff;\n border-color: #bfdbfe;\n}\n/* Action type label pill */\n.markdown :global(.act) :global(.at) {\n flex: 0 0 auto;\n font-size: 10px;\n font-weight: 800;\n letter-spacing: 0.5px;\n padding: 4px 8px;\n border-radius: 6px;\n color: #fff;\n white-space: nowrap;\n}\n.markdown :global(.act.exit) :global(.at) { background: #dc2626; }\n.markdown :global(.act.trim) :global(.at) { background: #b45309; }\n.markdown :global(.act.add) :global(.at) { background: #16a34a; }\n.markdown :global(.act.hold) :global(.at) { background: #737b97; }\n.markdown :global(.act.switch) :global(.at) { background: #2563eb; }\n/* Action description */\n.markdown :global(.act) :global(.ad) {\n font-size: 12.5px;\n line-height: 1.45;\n}\n.markdown :global(.act) :global(.ad) b {\n font-weight: 700;\n color: #1c2c5b;\n}\n.markdown :global(.act) :global(.ad) :global(.r) {\n color: #3a4159;\n display: block;\n margin-top: 2px;\n}\n\n/* Concerns / actions bullet list */\n.markdown :global(.clist) {\n margin: 0;\n padding-left: 17px;\n font-size: 12px;\n line-height: 1.5;\n color: #3a4159;\n}\n.markdown :global(.clist) li {\n margin-bottom: 5px;\n}\n.markdown :global(.clist) li:last-child {\n margin-bottom: 0;\n}\n\n/* Asset allocation bars */\n.markdown :global(.alloc) {\n margin-top: 6px;\n}\n.markdown :global(.alloc) :global(.row) {\n display: flex;\n align-items: center;\n gap: 9px;\n margin-bottom: 9px;\n font-size: 12px;\n}\n.markdown :global(.alloc) :global(.row):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.alloc) :global(.nm) {\n width: 54px;\n font-weight: 700;\n color: #1c2c5b;\n flex-shrink: 0;\n}\n.markdown :global(.alloc) :global(.bar) {\n flex: 1;\n height: 8px;\n border-radius: 5px;\n background: #eef0f7;\n overflow: hidden;\n}\n.markdown :global(.alloc) :global(.bar) i {\n display: block;\n height: 100%;\n border-radius: 5px;\n background: #1c2c5b;\n}\n.markdown :global(.alloc) :global(.pct) {\n width: 42px;\n text-align: right;\n font-weight: 700;\n color: #1c2438;\n flex-shrink: 0;\n}\n\n/* Return value colour helpers inside metric grid .v cells */\n.markdown :global(.mgrid) :global(.v.up) {\n color: var(--green);\n}\n.markdown :global(.mgrid) :global(.v.down) {\n color: var(--red);\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.up) {\n color: var(--green);\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.down) {\n color: var(--red);\n}\n.markdown :global(.mgrid) :global(.v.low) {\n color: #b45309;\n}\n\n/* Signal score emphasis inside kv rows (Tradable Candidate) */\n.markdown :global(.kv) :global(.vv) :global(b.up) {\n color: var(--green);\n}\n.markdown :global(.kv) :global(.vv) :global(b.down) {\n color: var(--red);\n}\n.markdown :global(.kv) :global(.vv) :global(b.low) {\n color: #b45309;\n}\n\n/* ── Crypto Analysis — stance row, metric notes, kv stacks ──────────────── */\n.markdown :global(.wa-crypto-stance-row) {\n margin-top: 8px;\n}\n.markdown :global(.wa-crypto-stance-row-lg) {\n margin-top: 11px;\n}\n.markdown :global(.wa-crypto-stance-reason) {\n font-size: 12px;\n color: #3a4159;\n margin-top: 8px;\n line-height: 1.5;\n}\n.markdown :global(.mgrid) :global(.m) :global(.n.wa-crypto-metric-detail) {\n font-weight: 500;\n line-height: 1.35;\n}\n.markdown :global(.wa-crypto-kv-primary) {\n display: block;\n font-size: 14px;\n font-weight: 700;\n}\n.markdown :global(.wa-crypto-kv-note) {\n display: block;\n font-size: 10.5px;\n font-weight: 700;\n margin-top: 2px;\n}\n.markdown :global(.wa-crypto-kv-note.up) {\n color: var(--green);\n}\n.markdown :global(.wa-crypto-kv-note.down) {\n color: var(--red);\n}\n.markdown :global(.wa-crypto-kv-note.low) {\n color: #b45309;\n}\n.markdown :global(.wa-crypto-kv-note.avg) {\n color: #737b97;\n}\n.markdown :global(.wa-crypto-kv-detail) {\n display: block;\n font-size: 10.5px;\n font-weight: 500;\n color: #737b97;\n margin-top: 2px;\n line-height: 1.35;\n}\n\n/* ── Stock Discovery & New Listings Card Components ─────────────────────── */\n\n/* Individual stock card */\n.markdown :global(.dstock) {\n border: 1px solid #e6e9f5;\n border-radius: 14px;\n padding: 12px 13px;\n margin-bottom: 10px;\n background: #fff;\n}\n.markdown :global(.dstock):last-child {\n margin-bottom: 0;\n}\n\n/* Stock card header row */\n.markdown :global(.dh) {\n display: flex;\n align-items: center;\n gap: 9px;\n margin-bottom: 9px;\n}\n\n/* Rank number chip */\n.markdown :global(.rank) {\n width: 24px;\n height: 24px;\n flex: 0 0 auto;\n border-radius: 6px;\n background: #e7ebf7;\n color: #1c2c5b;\n display: grid;\n place-items: center;\n font-weight: 800;\n font-size: 12px;\n}\n\n/* Stock symbol + company name */\n.markdown :global(.nm) {\n font-weight: 700;\n font-size: 13.5px;\n line-height: 1.2;\n color: #1c2438;\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n}\n/* Inline badge inside .nm — smaller than the standalone badge */\n.markdown :global(.nm) :global(.wa-badge) {\n font-size: 10px;\n padding: 3px 8px;\n vertical-align: middle;\n}\n.markdown :global(.co) {\n font-size: 10.5px;\n color: #737b97;\n margin-top: 2px;\n}\n\n/* Fundamental score (right-aligned) */\n.markdown :global(.dstock) :global(.fs) {\n margin-left: auto;\n text-align: right;\n flex-shrink: 0;\n}\n.markdown :global(.dstock) :global(.fs) :global(.num) {\n font-weight: 800;\n font-size: 17px;\n color: #1c2c5b;\n line-height: 1;\n}\n.markdown :global(.dstock) :global(.fs) :global(.cap) {\n font-size: 8.5px;\n color: #737b97;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n margin-top: 2px;\n}\n/* Discovery stock symbol — 14px per reference (.dstock .nm), vs the generic\n .nm (13.5px) shared with the sector-selection rows. */\n.markdown :global(.dstock) :global(.nm) {\n font-size: 14px;\n}\n\n/* Quality/Value/Growth/Confidence tag row */\n/* Score tags (Quality/Value/Growth/Conf.) render as small inline pills that\n wrap — matching the wealth-alpha-final.html `.qrow`/`.qtag` reference. The\n backend still tags these rows with `qrow-grid`, but we intentionally do NOT\n turn them into a large 2-column grid; they stay compact like the design. */\n.markdown :global(.qrow),\n.markdown :global(.qrow.qrow-grid) {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n align-items: center;\n}\n.markdown :global(.qtag) {\n font-size: 10.5px;\n font-weight: 700;\n padding: 4px 9px;\n border-radius: 7px;\n border: 1px solid #e0e4f0;\n background: #f1f3fa;\n color: #475069;\n}\n.markdown :global(.qtag) :global(.qk) {\n opacity: 0.55;\n font-weight: 600;\n margin-right: 3px;\n}\n.markdown :global(.qtag.good) {\n background: #dcfce7;\n border-color: #bbf7d0;\n color: #14532d;\n}\n.markdown :global(.qtag.avg) {\n background: #f1f3fa;\n border-color: #e0e4f0;\n color: #475069;\n}\n.markdown :global(.qtag.low) {\n background: #fef3e0;\n border-color: #fde2b8;\n color: #7c4a03;\n}\n\n/* 3M return line below score tags (Peer Analysis dstock cards) */\n.markdown :global(.dstock) :global(.wa-peer-detail) {\n margin-top: 6px;\n font-size: 11.5px;\n}\n\n/* Scoring note footer */\n.markdown :global(.wa-disc-footer) {\n font-size: 11px;\n color: #737b97;\n line-height: 1.5;\n padding: 10px 14px;\n border-top: 1px solid #eceffa;\n}\n\n.bubbleBot {\n align-self: flex-start;\n background: var(--wac-bot-bg);\n color: #1c2438;\n border-bottom-left-radius: 4px;\n}\n\n.bubbleUser {\n align-self: flex-end;\n background: var(--wac-user-bg);\n color: var(--wac-brand-contrast);\n border-bottom-right-radius: 4px;\n}\n\n/* Card responses: the card supplies its own bg/border/radius, so the bubble\n must add no frame, padding or background around it. */\n.bubbleCard {\n align-self: stretch;\n background: transparent;\n padding: 0;\n border-radius: 0;\n}\n\n/* Safety disclaimer below card responses — mirrors HTML prototype `.disc` */\n.disclaimer {\n font-size: 10.5px;\n color: var(--wac-muted);\n line-height: 1.5;\n background: #fff;\n border: 1px solid var(--wac-border);\n border-radius: 12px;\n padding: 10px 12px;\n margin: 6px 0 2px;\n}\n.disclaimer b {\n color: var(--wac-brand);\n}\n\n/* Like / dislike feedback row (above the disclaimer, on card responses) */\n/* Feedback band — mirrors wealth-alpha_1.1.html `.fb` (top border, light band,\n label left, 34×34 rounded-10 buttons, currentColor icons → green/red on-state) */\n.feedbackRow {\n display: flex;\n align-items: center;\n gap: 10px;\n padding: 10px 14px;\n background: #fafbff;\n /* Continue the card frame down the sides and round the bottom so the band\n reads as the card's footer (1.1 `.fb` lives inside the card). The top\n border is the section divider above the buttons. */\n border: 1px solid var(--wac-border);\n border-top-color: #eceffa;\n border-bottom-left-radius: 18px;\n border-bottom-right-radius: 18px;\n margin-bottom: 4px;\n}\n\n/* Open the bottom of the card the band attaches to, so the two fuse into one\n rounded card. Only the LAST card in a multi-card response connects. */\n.bubbleCard:has(+ .feedbackRow) :global(.wa-analysis-card:last-child) {\n margin-bottom: 0;\n border-bottom: none;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n}\n.feedbackLabel {\n font-size: 11px;\n color: var(--wac-muted);\n font-weight: 600;\n margin-right: auto;\n}\n.feedbackBtn {\n width: 34px;\n height: 34px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border: 1px solid var(--wac-border);\n background: #fff;\n border-radius: 10px;\n color: var(--wac-brand);\n cursor: pointer;\n font-family: inherit;\n transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease, color 0.15s ease;\n}\n.feedbackBtn:hover {\n background: var(--wac-chip-bg);\n transform: translateY(-1px);\n}\n.feedbackBtnUp {\n background: #dcfce7;\n border-color: #bbf7d0;\n color: #16a34a;\n}\n.feedbackBtnDown {\n background: #fee2e2;\n border-color: #fecaca;\n color: #dc2626;\n}\n.feedbackIcon {\n width: 16px;\n height: 16px;\n fill: none;\n stroke: currentColor;\n stroke-width: 2;\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n\n/* ── CREATE PORTFOLIO — selectable sector rows (mirrors wealth-alpha_1.1.html .srow) ── */\n.markdown :global(.srow) {\n display: flex;\n align-items: center;\n gap: 11px;\n padding: 11px 12px;\n border: 1px solid #e6e9f5;\n border-radius: 14px;\n background: #fff;\n margin-bottom: 9px;\n cursor: pointer;\n transition: border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;\n}\n.markdown :global(.srow):last-child {\n margin-bottom: 0;\n}\n.markdown :global(.srow):hover {\n border-color: #c7cef0;\n transform: translateY(-1px);\n box-shadow: 0 10px 22px -18px rgba(28, 44, 91, 0.5);\n}\n.markdown :global(.srow.selected) {\n background: linear-gradient(135deg, #ecfdf3, #f7fef9);\n border-color: #86efac;\n}\n.markdown :global(.srow) :global(.box) {\n width: 22px;\n height: 22px;\n flex: 0 0 auto;\n border-radius: 7px;\n border: 2px solid #cdd4ec;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #fff;\n transition: 0.15s;\n}\n.markdown :global(.srow.selected) :global(.box) {\n background: #16a34a;\n border-color: #16a34a;\n}\n.markdown :global(.srow.selected) :global(.box)::after {\n content: \"✓\";\n}\n.markdown :global(.srow) :global(.info) {\n flex: 1;\n min-width: 0;\n}\n.markdown :global(.srow) :global(.nm) {\n font-family: 'Sora', 'Manrope', sans-serif;\n font-weight: 700;\n font-size: 13.5px;\n color: #1c2438;\n line-height: 1.2;\n}\n.markdown :global(.srow) :global(.sub) {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-top: 6px;\n}\n.markdown :global(.srow) :global(.mini) {\n flex: 1;\n height: 6px;\n border-radius: 4px;\n background: #eef0f7;\n overflow: hidden;\n max-width: 90px;\n}\n.markdown :global(.srow) :global(.mini) i {\n display: block;\n height: 100%;\n border-radius: 4px;\n}\n.markdown :global(.srow) :global(.ret) {\n font-family: 'Sora', 'Manrope', sans-serif;\n font-weight: 800;\n font-size: 14.5px;\n flex: 0 0 auto;\n text-align: right;\n min-width: 58px;\n}\n.markdown :global(.tag-pill) {\n font-size: 9px;\n font-weight: 800;\n letter-spacing: 0.4px;\n padding: 3px 7px;\n border-radius: 6px;\n text-transform: uppercase;\n}\n.markdown :global(.tag-pill.strong) {\n background: #dcfce7;\n color: #16a34a;\n}\n.markdown :global(.tag-pill.neutral) {\n background: #fef3e0;\n color: #b45309;\n}\n.markdown :global(.tag-pill.weak) {\n background: #fee2e2;\n color: #dc2626;\n}\n.markdown :global(.wa-sel-summary) {\n margin-top: 4px;\n padding: 10px 12px;\n border-radius: 12px;\n background: #fff;\n border: 1px dashed #bbf7d0;\n font-size: 12.5px;\n color: #14532d;\n line-height: 1.5;\n}\n.markdown :global(.wa-sel-summary) :global(.chk) {\n color: #16a34a;\n font-weight: 800;\n margin-right: 5px;\n}\n.markdown :global(.wa-sel-summary) b {\n color: #1c2438;\n}\n\n.bubbleMeta {\n font-size: 10px;\n color: var(--wac-muted);\n margin-top: 4px;\n text-align: right;\n}\n\n.chipRow {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-top: 8px;\n}\n\n.chip {\n padding: 7px 12px;\n background: var(--wac-chip-bg);\n color: var(--wac-chip-fg);\n border: 1px solid transparent;\n border-radius: 999px;\n font-size: 13px;\n cursor: pointer;\n transition: background 0.15s ease, transform 0.15s ease;\n font-family: inherit;\n}\n\n.chip:hover:not(:disabled) {\n background: #d8def2;\n transform: translateY(-1px);\n}\n\n.chipActive {\n background: var(--wac-chip-active-bg);\n color: var(--wac-chip-active-fg);\n}\n\n.chipDisabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.typing {\n align-self: flex-start;\n display: inline-flex;\n gap: 4px;\n padding: 10px 14px;\n background: var(--wac-bot-bg);\n border-radius: 12px;\n border-bottom-left-radius: 4px;\n}\n\n.typingDot {\n width: 7px;\n height: 7px;\n background: var(--wac-muted);\n border-radius: 50%;\n animation: wacBlink 1.2s infinite ease-in-out both;\n}\n\n.typingDot:nth-child(2) {\n animation-delay: 0.18s;\n}\n.typingDot:nth-child(3) {\n animation-delay: 0.36s;\n}\n\n@keyframes wacBlink {\n 0%, 80%, 100% { opacity: 0.3; transform: scale(0.85); }\n 40% { opacity: 1; transform: scale(1); }\n}\n\n.input {\n display: flex;\n gap: 8px;\n padding: 10px 12px;\n border-top: 1px solid var(--wac-border);\n background: var(--wac-bg);\n}\n\n.inputBox {\n flex: 1;\n padding: 12px 16px;\n border: 1.6px solid var(--wac-brand);\n border-radius: 14px;\n font-size: 14px;\n outline: none;\n font-family: inherit;\n background: var(--wac-bg);\n color: var(--wac-fg);\n}\n\n.inputBox:focus {\n border-color: var(--wac-brand);\n background: var(--wac-bg);\n}\n\n.inputBox:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n.sendButton {\n padding: 0 20px;\n background: var(--wac-brand);\n color: var(--wac-brand-contrast);\n border: none;\n border-radius: 14px;\n font-weight: 700;\n cursor: pointer;\n font-size: 14px;\n font-family: inherit;\n}\n\n.sendButton:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.hiddenFileInput {\n position: absolute;\n width: 0;\n height: 0;\n opacity: 0;\n overflow: hidden;\n pointer-events: none;\n}\n\n.csvButton {\n flex-shrink: 0;\n padding: 0 12px;\n background: var(--wac-chip-bg);\n color: var(--wac-chip-fg);\n border: 1px solid var(--wac-border);\n border-radius: 999px;\n font-size: 13px;\n font-weight: 600;\n cursor: pointer;\n font-family: inherit;\n white-space: nowrap;\n}\n\n.csvButton:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.authGate {\n margin: auto;\n text-align: center;\n padding: 32px 24px;\n max-width: 280px;\n display: flex;\n flex-direction: column;\n gap: 12px;\n align-items: center;\n}\n\n.authGateIcon {\n font-size: 36px;\n}\n\n.authGateTitle {\n font-size: 16px;\n font-weight: 600;\n}\n\n.authGateText {\n font-size: 13px;\n color: var(--wac-muted);\n line-height: 1.5;\n}\n\n.authGateButton {\n margin-top: 8px;\n padding: 10px 20px;\n background: var(--wac-brand);\n color: var(--wac-brand-contrast);\n border: none;\n border-radius: 999px;\n cursor: pointer;\n font-weight: 600;\n font-size: 14px;\n font-family: inherit;\n}\n\n.authGateDisclaimer {\n margin-top: 16px;\n padding-top: 12px;\n border-top: 1px dashed var(--wac-border);\n font-size: 11px;\n color: var(--wac-muted);\n line-height: 1.5;\n text-align: left;\n width: 100%;\n}\n\n.authGateDisclaimerTitle {\n font-weight: 700;\n letter-spacing: 0.6px;\n font-size: 10px;\n margin-bottom: 4px;\n color: var(--wac-fg);\n}\n\n.errorBanner {\n background: #fef2f2;\n border: 1px solid #fecaca;\n color: #991b1b;\n padding: 8px 12px;\n font-size: 12px;\n border-radius: 8px;\n margin: 0 14px 8px;\n}\n\n/* ── Greeting popup bubble ─────────────────────────────────────── */\n\n.popupBubble {\n position: fixed;\n bottom: 24px;\n z-index: 2147483646;\n background: var(--wac-brand);\n color: var(--wac-brand-contrast);\n border-radius: 12px;\n padding: 12px 36px 12px 14px;\n font-size: 13px;\n line-height: 1.45;\n box-shadow: var(--wac-shadow);\n border: none;\n max-width: 240px;\n animation: wacPopIn 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);\n}\n\n/* Shared arrow base — direction is set per-position class below */\n.popupBubble::after {\n content: '';\n position: absolute;\n width: 12px;\n height: 12px;\n background: var(--wac-brand);\n}\n\n/* Popup to the LEFT of a right-positioned button — arrow points right */\n.popupBubbleRight {\n right: 94px;\n}\n\n.popupBubbleRight::after {\n right: -7px;\n top: 50%;\n border-top: 1px solid var(--wac-brand);\n border-right: 1px solid var(--wac-brand);\n transform: translateY(-50%) rotate(45deg);\n}\n\n/* Popup to the RIGHT of a left-positioned button — arrow points left */\n.popupBubbleLeft {\n left: 94px;\n}\n\n.popupBubbleLeft::after {\n left: -7px;\n top: 50%;\n border-bottom: 1px solid var(--wac-brand);\n border-left: 1px solid var(--wac-brand);\n transform: translateY(-50%) rotate(45deg);\n}\n\n.popupDismiss {\n position: absolute;\n top: 8px;\n right: 8px;\n background: transparent;\n border: none;\n cursor: pointer;\n font-size: 14px;\n color: var(--wac-brand-contrast);\n line-height: 1;\n padding: 2px 4px;\n border-radius: 4px;\n font-family: inherit;\n opacity: 0.75;\n}\n\n.popupDismiss:hover {\n background: rgba(255, 255, 255, 0.15);\n opacity: 1;\n}\n\n@keyframes wacPopIn {\n 0% { opacity: 0; transform: scale(0.85) translateY(8px); }\n 100% { opacity: 1; transform: scale(1) translateY(0); }\n}\n\n/* ── Menu grid (root chips rendered as cards) ───────────────────── */\n.menuGrid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 6px;\n margin-top: 6px;\n}\n\n.menuItem {\n background: #fff;\n border: 1px solid #e6e9f5;\n border-radius: 14px;\n padding: 14px;\n cursor: pointer;\n text-align: left;\n font-family: inherit;\n transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s;\n}\n\n.menuItem:hover {\n transform: translateY(-2px);\n box-shadow: 0 8px 20px -12px rgba(28, 44, 91, 0.45);\n border-color: #d4d9ee;\n}\n\n.menuItemIcon {\n width: 46px;\n height: 46px;\n border-radius: 12px;\n display: grid;\n place-items: center;\n font-size: 22px;\n margin-bottom: 12px;\n}\n\n/* Main-menu SVG icon — mirrors wealth-alpha-final.html .cmd .ico svg */\n.menuItemSvg {\n width: 24px;\n height: 24px;\n stroke: #fff;\n fill: none;\n stroke-width: 2.2;\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n\n.menuItemTitle {\n font-size: 14px;\n font-weight: 700;\n color: #1c2438;\n line-height: 1.2;\n}\n\n.menuItemSub {\n font-size: 11.5px;\n color: #737b97;\n margin-top: 3px;\n line-height: 1.3;\n}\n\n.menuIconGreen { background: linear-gradient(135deg, #10b981, #059669); }\n.menuIconBlue { background: linear-gradient(135deg, #3b82f6, #2563eb); }\n.menuIconLeaf { background: linear-gradient(135deg, #65c466, #3f9c43); }\n.menuIconRed { background: linear-gradient(135deg, #f43f5e, #e11d48); }\n.menuIconOrange { background: linear-gradient(135deg, #fb923c, #ea580c); }\n.menuIconGold { background: linear-gradient(135deg, #fbbf24, #d97706); }\n.menuIconTeal { background: linear-gradient(135deg, #14b8a6, #0d9488); }\n.menuIconPurple { background: linear-gradient(135deg, #8b5cf6, #7c3aed); }\n\n\n.chat_bubbleBot {\n background-color: var(--wac-bg) !important; \n}"],"mappings":"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","names":["root","headerTitle","menuItemTitle","markdown","floatingButton","positionRight","positionLeft","widget","popupBubbleLeft","popupBubbleRight","header","headerMeta","headerActions","iconButton","body","bubble","bubbleBot","bubbleUser","bubbleCard","disclaimer","feedbackRow","feedbackLabel","feedbackBtn","feedbackBtnUp","feedbackBtnDown","feedbackIcon","bubbleMeta","chipRow","chip","chipActive","chipDisabled","typing","typingDot","wacBlink","input","inputBox","sendButton","hiddenFileInput","csvButton","authGate","authGateIcon","authGateTitle","authGateText","authGateButton","authGateDisclaimer","authGateDisclaimerTitle","errorBanner","popupBubble","popupDismiss","wacPopIn","menuGrid","menuItem","menuItemIcon","menuItemSvg","menuItemSub","menuIconGreen","menuIconBlue","menuIconLeaf","menuIconRed","menuIconOrange","menuIconGold","menuIconTeal","menuIconPurple","chat_bubbleBot"]}
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { useState, useRef, useEffect, useCallback, useReducer, useMemo } from 'react';
2
+ import { useState, useRef, useEffect, useCallback, useReducer, useLayoutEffect, useMemo } from 'react';
3
3
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
4
4
  import DOMPurify from 'isomorphic-dompurify';
5
5
 
@@ -888,40 +888,48 @@ var CARD_DISCLAIMER = "AI-assisted, educational only. Not financial advice. Cons
888
888
  var SECTOR_TOGGLE_PREFIX = "__portfolio_sector_toggle:::";
889
889
  var SECTORS_DONE_ID = "__portfolio_sectors_done";
890
890
  var escapeHtml = (s) => s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
891
- function collectSelectedSectors(root) {
892
- return Array.from(
893
- root.querySelectorAll(`.srow[data-chip^="${SECTOR_TOGGLE_PREFIX}"]`)
894
- ).filter((row) => row.classList.contains("selected")).map((row) => (row.getAttribute("data-chip") ?? "").slice(SECTOR_TOGGLE_PREFIX.length)).filter(Boolean);
895
- }
891
+ var sectorNameOf = (row) => (row.getAttribute("data-chip") ?? "").slice(SECTOR_TOGGLE_PREFIX.length);
896
892
  function MessageBubble({ message, onChipClick, onFeedback }) {
897
893
  const isBot = message.role === "bot";
898
894
  const [rating, setRating] = useState(null);
899
895
  const markdownRef = useRef(null);
900
896
  const isSectorCard = isBot && message.content.includes(SECTOR_TOGGLE_PREFIX);
897
+ const [selectedSectors, setSelectedSectors] = useState(() => /* @__PURE__ */ new Set());
901
898
  const rate = (value) => {
902
899
  setRating(value);
903
900
  onFeedback?.(message.id, value);
904
901
  };
905
902
  const isCard = isBot && message.content.includes("<div");
906
903
  const bubbleClass = isBot ? `${chat_default.bubble} ${isCard ? chat_default.bubbleCard : chat_default.bubbleBot}` : `${chat_default.bubble} ${chat_default.bubbleUser}`;
907
- const refreshSectorSummary = () => {
904
+ const applySelectionToDom = useCallback(() => {
908
905
  const root = markdownRef.current;
909
906
  if (!root) return;
910
- const names = collectSelectedSectors(root);
907
+ root.querySelectorAll(`.srow[data-chip^="${SECTOR_TOGGLE_PREFIX}"]`).forEach((row) => row.classList.toggle("selected", selectedSectors.has(sectorNameOf(row))));
911
908
  const summary = root.querySelector(".wa-sel-summary");
912
909
  if (summary) {
910
+ const names = Array.from(selectedSectors);
913
911
  const list = names.length ? names.map(escapeHtml).join(", ") : "\u2014";
914
912
  summary.innerHTML = `<span class="chk">\u2705</span>Selected (<b>${names.length}</b>): <b>${list}</b>`;
915
913
  }
916
- };
914
+ }, [selectedSectors]);
915
+ useLayoutEffect(() => {
916
+ if (isSectorCard) applySelectionToDom();
917
+ }, [isSectorCard, applySelectionToDom, message.content]);
917
918
  const handleMarkdownClick = (e) => {
918
919
  const toggleRow = e.target.closest(
919
920
  `.srow[data-chip^="${SECTOR_TOGGLE_PREFIX}"]`
920
921
  );
921
922
  if (toggleRow) {
922
923
  e.preventDefault();
923
- toggleRow.classList.toggle("selected");
924
- refreshSectorSummary();
924
+ const name = sectorNameOf(toggleRow);
925
+ if (name) {
926
+ setSelectedSectors((prev) => {
927
+ const next = new Set(prev);
928
+ if (next.has(name)) next.delete(name);
929
+ else next.add(name);
930
+ return next;
931
+ });
932
+ }
925
933
  return;
926
934
  }
927
935
  const anchor = e.target.closest("a");
@@ -931,7 +939,7 @@ function MessageBubble({ message, onChipClick, onFeedback }) {
931
939
  };
932
940
  const handleChipClick = (chip) => {
933
941
  if (isSectorCard && chip.id === SECTORS_DONE_ID) {
934
- const names = markdownRef.current ? collectSelectedSectors(markdownRef.current) : [];
942
+ const names = Array.from(selectedSectors);
935
943
  const id = names.length ? `${SECTORS_DONE_ID}:::${names.join(",")}` : SECTORS_DONE_ID;
936
944
  onChipClick({ ...chip, id });
937
945
  return;