@gengage/assistant-fe 0.5.2 → 0.5.4

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.
@@ -1,7 +1,7 @@
1
- import { c as ba, d as va, h as xa, p as ya, r as wa, s as Gt, t as _a } from "./api-paths-HBfd3rta.js";
1
+ import { c as ba, d as va, h as xa, p as ya, r as wa, s as Gt, t as _a } from "./api-paths-5v4fJh3b.js";
2
2
  import { A as _e, C as ka, D as Ca, E as Sa, M as oe, N as pe, O as Ea, S as mt, T as Pa, _ as La, a as xe, b as Aa, d as Ta, f as Ia, g as Ma, h as Na, j as me, l as Ba, m as za, p as Ra, u as Ha, v as Fa, w as ft, x as Da } from "./context-BBuSsXZ9.js";
3
- import { i as Ne, s as $t, t as Oa } from "./widget-base-BcrlFdYt.js";
4
- import { a as le, i as Ua, n as ja, o as qa, r as Va, s as Ga, t as bt } from "./fastIntent-nyosR4rE.js";
3
+ import { i as Ne, s as $t, t as Oa } from "./widget-base-DTsBXrHi.js";
4
+ import { a as le, i as Ua, n as ja, o as Va, r as qa, s as Ga, t as bt } from "./fastIntent-CWB807V4.js";
5
5
  import { t as De } from "./locale-CfqNifrU.js";
6
6
  import { a as Wt, i as Kt, n as ue, r as Yt, t as J } from "./price-formatter-xI3g9Cd4.js";
7
7
  function vt() {
@@ -880,7 +880,7 @@ var kn = class {
880
880
  this.togglePanel(), this._onPanelToggle?.();
881
881
  });
882
882
  let C = null, A = null;
883
- const _ = 24, M = (y) => {
883
+ const _ = 24, N = (y) => {
884
884
  if (!(this._options.getMobileViewport?.() ?? window.innerWidth <= 768)) return;
885
885
  const $ = y.changedTouches?.[0];
886
886
  $ && (C = $.clientX, A = $.clientY);
@@ -893,8 +893,8 @@ var kn = class {
893
893
  const ie = re < 0;
894
894
  ie !== this._panelCollapsed && (this._ignoreNextDividerClick = !0, this.setPanelCollapsed(ie), this._onPanelToggle?.());
895
895
  };
896
- this._dividerEl.addEventListener("touchstart", M, { passive: !0 }), this._dividerEl.addEventListener("touchend", I, { passive: !0 }), this._cleanups.push(() => {
897
- this._dividerEl.removeEventListener("touchstart", M), this._dividerEl.removeEventListener("touchend", I);
896
+ this._dividerEl.addEventListener("touchstart", N, { passive: !0 }), this._dividerEl.addEventListener("touchend", I, { passive: !0 }), this._cleanups.push(() => {
897
+ this._dividerEl.removeEventListener("touchstart", N), this._dividerEl.removeEventListener("touchend", I);
898
898
  }), this._dividerEl.appendChild(g), f.appendChild(this._dividerEl);
899
899
  const w = document.createElement("div");
900
900
  w.className = "gengage-chat-conversation", w.dataset.gengagePart = "chat-conversation", this._conversationEl = w, w.appendChild(i);
@@ -928,31 +928,31 @@ var kn = class {
928
928
  L(), y.deltaY < -6 && this._presentationFocusThreadId && this._options.presentation?.onFormerMessagesHint?.();
929
929
  };
930
930
  this.messagesEl.addEventListener("wheel", F, { passive: !0 }), this._cleanups.push(() => this.messagesEl.removeEventListener("wheel", F));
931
- const q = (y) => {
931
+ const V = (y) => {
932
932
  L(), this._touchStartY = y.touches[0]?.clientY ?? null;
933
933
  }, D = (y) => {
934
934
  L();
935
935
  const $ = y.touches[0]?.clientY, ae = this._touchStartY;
936
936
  typeof $ == "number" && typeof ae == "number" && $ - ae > 10 && this._presentationFocusThreadId && this._options.presentation?.onFormerMessagesHint?.();
937
937
  };
938
- this.messagesEl.addEventListener("touchstart", q, { passive: !0 }), this.messagesEl.addEventListener("touchmove", D, { passive: !0 }), this._cleanups.push(() => {
939
- this.messagesEl.removeEventListener("touchstart", q), this.messagesEl.removeEventListener("touchmove", D);
938
+ this.messagesEl.addEventListener("touchstart", V, { passive: !0 }), this.messagesEl.addEventListener("touchmove", D, { passive: !0 }), this._cleanups.push(() => {
939
+ this.messagesEl.removeEventListener("touchstart", V), this.messagesEl.removeEventListener("touchmove", D);
940
940
  }), w.appendChild(this.messagesEl), this._panelFloatingEl = document.createElement("div"), this._panelFloatingEl.className = "gengage-chat-panel-float", this._panelFloatingEl.dataset.gengagePart = "chat-panel-floating-layer", this._panelEl.appendChild(this._panelFloatingEl), this._resetPanelAiZoneElement(), this._pillsEl = document.createElement("div"), this._pillsEl.className = "gengage-chat-pills", this._pillsEl.dataset.gengagePart = "chat-suggestion-pills", this._pillsEl.setAttribute("role", "toolbar"), this._pillsEl.setAttribute("aria-label", this.i18n.suggestionsAriaLabel), this._pillsEl.style.display = "none";
941
941
  const K = document.createElement("div");
942
942
  K.className = "gengage-chat-pills-scroll", K.dataset.gengagePart = "chat-suggestion-pills-scroll", this._pillsEl.appendChild(K);
943
- const V = document.createElement("button");
944
- V.className = "gengage-chat-pills-arrow gds-btn gds-btn-ghost", V.dataset.gengagePart = "chat-suggestion-pills-more", V.type = "button", V.setAttribute("aria-label", this.i18n.moreSuggestionsAriaLabel), V.textContent = "›", V.addEventListener("click", () => {
943
+ const q = document.createElement("button");
944
+ q.className = "gengage-chat-pills-arrow gds-btn gds-btn-ghost", q.dataset.gengagePart = "chat-suggestion-pills-more", q.type = "button", q.setAttribute("aria-label", this.i18n.moreSuggestionsAriaLabel), q.textContent = "›", q.addEventListener("click", () => {
945
945
  K.scrollBy({
946
946
  left: 150,
947
947
  behavior: "smooth"
948
948
  });
949
- }), this._pillsEl.appendChild(V);
949
+ }), this._pillsEl.appendChild(q);
950
950
  let Q = !1;
951
951
  const R = () => {
952
952
  Q || (Q = !0, requestAnimationFrame(() => {
953
953
  Q = !1;
954
954
  const y = K.scrollLeft + K.clientWidth >= K.scrollWidth - 4;
955
- V.style.display = y ? "none" : "";
955
+ q.style.display = y ? "none" : "";
956
956
  }));
957
957
  };
958
958
  K.addEventListener("scroll", R, { passive: !0 }), this._cleanups.push(() => {
@@ -998,18 +998,18 @@ var kn = class {
998
998
  O.type = "button", O.className = "gengage-chat-attach-menu-item gds-btn gds-btn-ghost", O.dataset.gengagePart = "chat-attach-menu-select-photo", O.setAttribute("role", "menuitem"), O.innerHTML = `<span class="gengage-chat-attach-menu-icon" aria-hidden="true"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z"/><circle cx="12" cy="13" r="4"/></svg></span><span class="gengage-chat-attach-menu-label">${this.i18n.attachMenuSelectPhoto}</span>`, O.addEventListener("click", (y) => {
999
999
  y.stopPropagation(), this._closeAttachMenu(), this._fileInput.click();
1000
1000
  });
1001
- const N = document.createElement("div");
1002
- N.className = "gengage-chat-attach-menu-sep", N.dataset.gengagePart = "chat-attach-menu-separator", N.setAttribute("aria-hidden", "true");
1001
+ const M = document.createElement("div");
1002
+ M.className = "gengage-chat-attach-menu-sep", M.dataset.gengagePart = "chat-attach-menu-separator", M.setAttribute("aria-hidden", "true");
1003
1003
  const H = document.createElement("button");
1004
1004
  H.type = "button", H.className = "gengage-chat-attach-menu-item gds-btn gds-btn-ghost", H.dataset.gengagePart = "chat-attach-menu-paste", H.setAttribute("role", "menuitem"), H.innerHTML = `<span class="gengage-chat-attach-menu-icon" aria-hidden="true"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 2H9a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1Z"/><path d="M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2"/><path d="M16 4h2a2 2 0 0 1 2 2v4"/><path d="M21 14H11"/><path d="m15 10-4 4 4 4"/></svg></span><span class="gengage-chat-attach-menu-label">${this.i18n.attachMenuPaste}</span>`, H.addEventListener("click", (y) => {
1005
1005
  y.stopPropagation();
1006
1006
  const $ = typeof navigator.clipboard?.read == "function" ? navigator.clipboard.read() : void 0;
1007
1007
  this._pasteImageFromClipboardMenu($);
1008
- }), T.appendChild(O), T.appendChild(N), T.appendChild(H), v.appendChild(P), v.appendChild(T), this._previewStrip = document.createElement("div"), this._previewStrip.className = "gengage-chat-attachment-preview gengage-chat-attachment-preview--hidden gds-card-soft", this._previewStrip.dataset.gengagePart = "chat-attachment-preview";
1008
+ }), T.appendChild(O), T.appendChild(M), T.appendChild(H), v.appendChild(P), v.appendChild(T), this._previewStrip = document.createElement("div"), this._previewStrip.className = "gengage-chat-attachment-preview gengage-chat-attachment-preview--hidden gds-card-soft", this._previewStrip.dataset.gengagePart = "chat-attachment-preview";
1009
1009
  const G = document.createElement("img");
1010
1010
  G.className = "gengage-chat-attachment-preview-thumb", G.dataset.gengagePart = "chat-attachment-preview-thumb", G.alt = "", this._previewName = document.createElement("span"), this._previewName.className = "gengage-chat-attachment-name", this._previewName.dataset.gengagePart = "chat-attachment-preview-name";
1011
- const te = document.createElement("button");
1012
- te.className = "gengage-chat-attachment-remove gds-btn gds-btn-ghost", te.dataset.gengagePart = "chat-attachment-preview-remove", te.type = "button", te.setAttribute("aria-label", this.i18n.removeAttachmentButton), te.textContent = "×", te.addEventListener("click", () => this.clearAttachment()), this._previewStrip.appendChild(G), this._previewStrip.appendChild(this._previewName), this._previewStrip.appendChild(te), this.sendBtn = document.createElement("button"), this.sendBtn.className = "gengage-chat-send gds-btn gds-btn-primary", this.sendBtn.dataset.gengagePart = "chat-send", this.sendBtn.type = "button", this.sendBtn.disabled = !0, this.sendBtn.setAttribute("aria-label", this.i18n.sendButton), this.sendBtn.dataset.tooltip = this.i18n.sendButton, this._renderSendButtonIcon("send"), this.sendBtn.addEventListener("click", () => {
1011
+ const ee = document.createElement("button");
1012
+ ee.className = "gengage-chat-attachment-remove gds-btn gds-btn-ghost", ee.dataset.gengagePart = "chat-attachment-preview-remove", ee.type = "button", ee.setAttribute("aria-label", this.i18n.removeAttachmentButton), ee.textContent = "×", ee.addEventListener("click", () => this.clearAttachment()), this._previewStrip.appendChild(G), this._previewStrip.appendChild(this._previewName), this._previewStrip.appendChild(ee), this.sendBtn = document.createElement("button"), this.sendBtn.className = "gengage-chat-send gds-btn gds-btn-primary", this.sendBtn.dataset.gengagePart = "chat-send", this.sendBtn.type = "button", this.sendBtn.disabled = !0, this.sendBtn.setAttribute("aria-label", this.i18n.sendButton), this.sendBtn.dataset.tooltip = this.i18n.sendButton, this._renderSendButtonIcon("send"), this.sendBtn.addEventListener("click", () => {
1013
1013
  if (this._sendStopHandler) {
1014
1014
  const y = this._sendStopHandler;
1015
1015
  this.hideStopButton(), y();
@@ -1025,8 +1025,8 @@ var kn = class {
1025
1025
  const $ = y.dataTransfer?.files[0];
1026
1026
  $ && this._routeAttachmentFile($);
1027
1027
  });
1028
- const ee = document.createElement("div");
1029
- ee.className = "gengage-chat-input-pill gds-input-shell", ee.dataset.gengagePart = "chat-input-shell", ee.appendChild(v), ee.appendChild(this.inputEl), this._voiceEnabled && Ua() && (this._micBtn = document.createElement("button"), this._micBtn.className = "gengage-chat-mic-btn gds-btn gds-btn-ghost", this._micBtn.dataset.gengagePart = "chat-mic-button", this._micBtn.type = "button", this._micBtn.setAttribute("aria-label", this.i18n.voiceButton), this._micBtn.innerHTML = '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z"/><path d="M19 10v2a7 7 0 0 1-14 0v-2"/><line x1="12" y1="19" x2="12" y2="23"/><line x1="8" y1="23" x2="16" y2="23"/></svg>', this._micBtn.addEventListener("click", () => this._toggleVoice()), ee.appendChild(this._micBtn), this._voiceInput = new Va({
1028
+ const te = document.createElement("div");
1029
+ te.className = "gengage-chat-input-pill gds-input-shell", te.dataset.gengagePart = "chat-input-shell", te.appendChild(v), te.appendChild(this.inputEl), this._voiceEnabled && Ua() && (this._micBtn = document.createElement("button"), this._micBtn.className = "gengage-chat-mic-btn gds-btn gds-btn-ghost", this._micBtn.dataset.gengagePart = "chat-mic-button", this._micBtn.type = "button", this._micBtn.setAttribute("aria-label", this.i18n.voiceButton), this._micBtn.innerHTML = '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z"/><path d="M19 10v2a7 7 0 0 1-14 0v-2"/><line x1="12" y1="19" x2="12" y2="23"/><line x1="8" y1="23" x2="16" y2="23"/></svg>', this._micBtn.addEventListener("click", () => this._toggleVoice()), te.appendChild(this._micBtn), this._voiceInput = new qa({
1030
1030
  onInterim: (y) => {
1031
1031
  this._resizeRafId !== null && (cancelAnimationFrame(this._resizeRafId), this._resizeRafId = null), this.inputEl.value = y, this.inputEl.style.height = "auto", this.inputEl.style.height = `${Math.min(this.inputEl.scrollHeight, 120)}px`;
1032
1032
  },
@@ -1042,7 +1042,7 @@ var kn = class {
1042
1042
  onError: (y, $) => {
1043
1043
  this._micBtn?.classList.remove("gengage-chat-mic-btn--active");
1044
1044
  }
1045
- }, { lang: this._voiceLang })), ee.appendChild(this.sendBtn), U.appendChild(this._previewStrip), U.appendChild(this._fileInput), U.appendChild(ee), w.appendChild(U), f.appendChild(w), this._comparisonDockSlotEl = document.createElement("div"), this._comparisonDockSlotEl.className = "gengage-chat-comparison-dock-slot", this._comparisonDockSlotEl.dataset.gengagePart = "comparison-dock-slot", f.appendChild(this._comparisonDockSlotEl), this.root.appendChild(f), this._setupHorizontalSwipe(w);
1045
+ }, { lang: this._voiceLang })), te.appendChild(this.sendBtn), U.appendChild(this._previewStrip), U.appendChild(this._fileInput), U.appendChild(te), w.appendChild(U), f.appendChild(w), this._comparisonDockSlotEl = document.createElement("div"), this._comparisonDockSlotEl.className = "gengage-chat-comparison-dock-slot", this._comparisonDockSlotEl.dataset.gengagePart = "comparison-dock-slot", f.appendChild(this._comparisonDockSlotEl), this.root.appendChild(f), this._setupHorizontalSwipe(w);
1046
1046
  const ne = document.createElement("div");
1047
1047
  ne.className = "gengage-chat-footer", ne.dataset.gengagePart = "chat-footer", ne.textContent = this.i18n.poweredBy, this.root.appendChild(ne);
1048
1048
  const se = (y) => {
@@ -1085,10 +1085,10 @@ var kn = class {
1085
1085
  removeMessageBubble(a) {
1086
1086
  this._firstBotMessageIds.delete(a), this.messagesEl.querySelector(`[data-message-id="${le(a)}"]`)?.remove(), this._presentationFocusThreadId && this._applyPresentationCollapsed();
1087
1087
  }
1088
- showTypingIndicator(a) {
1088
+ showTypingIndicator(a, e = "auto") {
1089
1089
  this.removeTypingIndicator();
1090
- const e = this._thinkingSteps.length > 0 ? this._thinkingSteps.slice(-3) : a ? [a] : this.i18n.loadingSequenceGeneric, { root: t, binding: n } = this._createLoadingSequence("chat", e, "chat-typing-indicator", "gengage-chat-typing");
1091
- t.dataset.typing = "true", this._typingLoadingBinding = n, this.messagesEl.appendChild(t), this._scrollToBottom(!0);
1090
+ const t = this._thinkingSteps.length > 0 ? this._thinkingSteps.slice(-3) : a ? [a] : this.i18n.loadingSequenceGeneric, { root: n, binding: r } = this._createLoadingSequence("chat", t, "chat-typing-indicator", "gengage-chat-typing");
1091
+ n.dataset.typing = "true", this._typingLoadingBinding = r, this.messagesEl.appendChild(n), this.setTypingIndicatorMode(e), this._scrollToBottom(!0);
1092
1092
  }
1093
1093
  addThinkingStep(a) {
1094
1094
  const e = a.trim();
@@ -1101,6 +1101,15 @@ var kn = class {
1101
1101
  removeTypingIndicator() {
1102
1102
  this._destroyLoadingBinding(this._typingLoadingBinding), this._typingLoadingBinding = null, this.messagesEl.querySelector(".gengage-chat-typing")?.remove(), this._thinkingSteps = [], this.hideStopButton();
1103
1103
  }
1104
+ setTypingIndicatorMode(a) {
1105
+ const e = this.messagesEl.querySelector(".gengage-chat-typing"), t = this._typingLoadingBinding;
1106
+ if (!e || !t) return;
1107
+ const n = a === "auto" ? this._panelOwnsProgressSurface() ? "presence" : "full" : a;
1108
+ e.dataset.progressMode !== n && (e.classList.toggle("gengage-chat-typing--presence", n === "presence"), e.dataset.progressMode = n, n === "presence" ? (t.labelEl.setAttribute("aria-hidden", "true"), t.labelEl.classList.add("gengage-sr-only"), e.setAttribute("aria-label", this.i18n.loadingMessage)) : (t.labelEl.removeAttribute("aria-hidden"), t.labelEl.classList.remove("gengage-sr-only"), e.removeAttribute("aria-label")));
1109
+ }
1110
+ _panelOwnsProgressSurface() {
1111
+ return (this._options.getMobileViewport?.() ?? window.innerWidth <= 768) || !this._panelVisible || this._panelCollapsed ? !1 : this._panelLoadingBinding !== null || this._panelAiZoneLoadingBinding !== null;
1112
+ }
1104
1113
  showStopButton(a) {
1105
1114
  this._sendStopHandler = a, this.sendBtn.disabled = !1, this.sendBtn.classList.add("gengage-chat-send--stop", "gds-btn-secondary"), this.sendBtn.classList.remove("gds-btn-primary"), this.sendBtn.setAttribute("aria-label", this.i18n.stopGenerating), this.sendBtn.dataset.tooltip = this.i18n.stopGenerating, this._renderSendButtonIcon("stop");
1106
1115
  }
@@ -1253,21 +1262,28 @@ var kn = class {
1253
1262
  return this._pendingAttachment;
1254
1263
  }
1255
1264
  setPanelAiZoneState(a, e) {
1256
- if (this._panelAiZoneEl.isConnected && (this._clearPanelAiZoneState(), a !== "hidden"))
1265
+ if (this._panelAiZoneEl.isConnected && (this._clearPanelAiZoneState(), a !== "hidden")) {
1257
1266
  if (this._panelAiZoneEl.removeAttribute("hidden"), a === "analyzing") {
1258
1267
  this._panelAiZoneEl.innerHTML = "";
1259
1268
  const t = [e?.analyzingLabel ?? this.i18n.aiAnalysisAnalyzingLabel, ...this.i18n.loadingSequencePanel], { root: n, binding: r } = this._createLoadingSequence("panel", this._thinkingSteps.length > 0 ? this._thinkingSteps.slice(-3) : t, "panel-ai-zone-loading", "gengage-chat-panel-ai-zone-inner");
1260
1269
  this._panelAiZoneLoadingBinding = r, this._panelAiZoneEl.appendChild(n);
1261
1270
  } else a === "results" && e?.resultEl && (this._panelAiZoneEl.innerHTML = "", this._panelAiZoneEl.appendChild(e.resultEl));
1271
+ this.setTypingIndicatorMode("auto");
1272
+ }
1262
1273
  }
1263
1274
  _clearPanelAiZoneState() {
1264
- this._destroyLoadingBinding(this._panelAiZoneLoadingBinding), this._panelAiZoneLoadingBinding = null, this._panelAiZoneEl.innerHTML = "", this._panelAiZoneEl.setAttribute("hidden", "");
1275
+ this._destroyLoadingBinding(this._panelAiZoneLoadingBinding), this._panelAiZoneLoadingBinding = null, this._panelAiZoneEl.innerHTML = "", this._panelAiZoneEl.setAttribute("hidden", ""), this.setTypingIndicatorMode("auto");
1265
1276
  }
1266
1277
  _resetPanelAiZoneElement() {
1267
1278
  this._panelAiZoneEl = document.createElement("div"), this._panelAiZoneEl.className = "gengage-chat-panel-ai-zone", this._panelAiZoneEl.setAttribute("hidden", "");
1268
1279
  }
1269
1280
  _emitHostShellSync() {
1270
- this._onHostShellSync?.();
1281
+ this.setTypingIndicatorMode("auto"), this._onHostShellSync?.();
1282
+ }
1283
+ _applyPanelCollapsedState() {
1284
+ this._panelEl.classList.toggle("gengage-chat-panel--collapsed", this._panelCollapsed);
1285
+ const a = this._dividerEl.querySelector(".gengage-chat-panel-divider-toggle");
1286
+ a && (a.textContent = this._panelCollapsed ? "«" : "»");
1271
1287
  }
1272
1288
  _syncPanelTopBarFromContent(a) {
1273
1289
  const e = a.querySelector(".gengage-chat-product-grid-head");
@@ -1411,10 +1427,10 @@ var kn = class {
1411
1427
  A.className = "gengage-chat-comparison-skeleton-shimmer gengage-chat-comparison-skeleton-special-line", C.appendChild(A), i.appendChild(C);
1412
1428
  const _ = document.createElement("div");
1413
1429
  _.className = "gengage-chat-comparison-skeleton-table-wrap";
1414
- const M = document.createElement("div");
1415
- M.className = "gengage-chat-comparison-skeleton-table-head";
1430
+ const N = document.createElement("div");
1431
+ N.className = "gengage-chat-comparison-skeleton-table-head";
1416
1432
  const I = document.createElement("div");
1417
- I.className = "gengage-chat-comparison-skeleton-table-corner", M.appendChild(I);
1433
+ I.className = "gengage-chat-comparison-skeleton-table-corner", N.appendChild(I);
1418
1434
  for (let w = 0; w < 3; w++) {
1419
1435
  const k = document.createElement("div");
1420
1436
  k.className = "gengage-chat-comparison-skeleton-table-col";
@@ -1423,9 +1439,9 @@ var kn = class {
1423
1439
  const j = document.createElement("div");
1424
1440
  j.className = "gengage-chat-comparison-skeleton-shimmer gengage-chat-comparison-skeleton-table-th-name";
1425
1441
  const Z = document.createElement("div");
1426
- Z.className = "gengage-chat-comparison-skeleton-shimmer gengage-chat-comparison-skeleton-table-th-price", k.appendChild(B), k.appendChild(j), k.appendChild(Z), M.appendChild(k);
1442
+ Z.className = "gengage-chat-comparison-skeleton-shimmer gengage-chat-comparison-skeleton-table-th-price", k.appendChild(B), k.appendChild(j), k.appendChild(Z), N.appendChild(k);
1427
1443
  }
1428
- _.appendChild(M);
1444
+ _.appendChild(N);
1429
1445
  for (let w = 0; w < 3; w++) {
1430
1446
  const k = document.createElement("div");
1431
1447
  k.className = "gengage-chat-comparison-skeleton-table-row";
@@ -1448,7 +1464,7 @@ var kn = class {
1448
1464
  }
1449
1465
  break;
1450
1466
  }
1451
- this._panelEl.appendChild(e), this._panelEl.appendChild(this._panelFloatingEl), this._panelVisible = !0, this._panelEl.classList.add("gengage-chat-panel--visible"), this.root.classList.add("gengage-chat-drawer--with-panel"), this._syncComparisonDockVisibility(), this._emitHostShellSync();
1467
+ this._panelEl.appendChild(e), this._panelEl.appendChild(this._panelFloatingEl), this._panelVisible = !0, this._panelEl.classList.add("gengage-chat-panel--visible"), this.root.classList.add("gengage-chat-drawer--with-panel"), this._applyPanelCollapsedState(), this._syncComparisonDockVisibility(), this._emitHostShellSync();
1452
1468
  }
1453
1469
  updatePanelTopBar(a, e, t) {
1454
1470
  const n = this._options.getMobileViewport?.() ?? !1;
@@ -1525,9 +1541,7 @@ var kn = class {
1525
1541
  return this._panelCollapsed;
1526
1542
  }
1527
1543
  setPanelCollapsed(a) {
1528
- this._panelCollapsed = a, a ? this._panelEl.classList.add("gengage-chat-panel--collapsed") : this._panelEl.classList.remove("gengage-chat-panel--collapsed");
1529
- const e = this._dividerEl.querySelector(".gengage-chat-panel-divider-toggle");
1530
- e && (e.textContent = a ? "«" : "»"), this._emitHostShellSync();
1544
+ this._panelCollapsed = a, this._applyPanelCollapsedState(), this._emitHostShellSync();
1531
1545
  }
1532
1546
  persistPanelState(a) {
1533
1547
  try {
@@ -1988,8 +2002,8 @@ function Dn(a) {
1988
2002
  C.className = "gengage-chat-comparison-highlights-label", C.textContent = s?.highlightsLabel ?? "Key Highlights", g.appendChild(C);
1989
2003
  const A = document.createElement("ul");
1990
2004
  for (const _ of r) {
1991
- const M = document.createElement("li");
1992
- M.textContent = _, A.appendChild(M);
2005
+ const N = document.createElement("li");
2006
+ N.textContent = _, A.appendChild(N);
1993
2007
  }
1994
2008
  g.appendChild(A), l.appendChild(g);
1995
2009
  }
@@ -2110,12 +2124,12 @@ function Oe(a, e = 18) {
2110
2124
  return n;
2111
2125
  }
2112
2126
  var Qe = "General", St = 220, jn = 6;
2113
- function qn(a) {
2127
+ function Vn(a) {
2114
2128
  if (typeof a != "string") return [Qe];
2115
2129
  const e = a.split(/[,;|/]+/).map((t) => t.trim().replace(/\s+/g, " ")).filter((t) => t.length > 0);
2116
2130
  return e.length === 0 ? [Qe] : Array.from(new Set(e.map((t) => t.toLocaleLowerCase()))).map((t) => e.find((n) => n.toLocaleLowerCase() === t) ?? Qe);
2117
2131
  }
2118
- function Vn(a) {
2132
+ function qn(a) {
2119
2133
  return a === "positive" || a === "negative" || a === "neutral" ? a : "neutral";
2120
2134
  }
2121
2135
  function Gn(a) {
@@ -2142,11 +2156,11 @@ function Yn(a, e) {
2142
2156
  }
2143
2157
  const r = n.filter((f) => f !== null && typeof f == "object"), i = /* @__PURE__ */ new Map();
2144
2158
  for (const f of r) {
2145
- const m = Vn(f.review_class), g = Gn(f.review_text), C = qn(f.review_tag);
2159
+ const m = qn(f.review_class), g = Gn(f.review_text), C = Vn(f.review_tag);
2146
2160
  for (const A of C) {
2147
2161
  const _ = A.toLocaleLowerCase();
2148
- let M = i.get(_);
2149
- if (M || (M = {
2162
+ let N = i.get(_);
2163
+ if (N || (N = {
2150
2164
  key: _,
2151
2165
  label: A,
2152
2166
  mentions: 0,
@@ -2154,12 +2168,12 @@ function Yn(a, e) {
2154
2168
  negative: 0,
2155
2169
  neutral: 0,
2156
2170
  snippets: []
2157
- }, i.set(_, M)), M.mentions += 1, m === "positive" ? M.positive += 1 : m === "negative" ? M.negative += 1 : M.neutral += 1, g.length > 0 && M.snippets.length < jn && !M.snippets.some((I) => I.text === g)) {
2171
+ }, i.set(_, N)), N.mentions += 1, m === "positive" ? N.positive += 1 : m === "negative" ? N.negative += 1 : N.neutral += 1, g.length > 0 && N.snippets.length < jn && !N.snippets.some((I) => I.text === g)) {
2158
2172
  const I = {
2159
2173
  text: g,
2160
2174
  tone: m
2161
2175
  };
2162
- f.review_rating !== void 0 && String(f.review_rating).length > 0 && (I.rating = f.review_rating), M.snippets.push(I);
2176
+ f.review_rating !== void 0 && String(f.review_rating).length > 0 && (I.rating = f.review_rating), N.snippets.push(I);
2163
2177
  }
2164
2178
  }
2165
2179
  }
@@ -2197,8 +2211,8 @@ function Yn(a, e) {
2197
2211
  for (const A of f.snippets) {
2198
2212
  const _ = document.createElement("article");
2199
2213
  _.className = "gengage-chat-review-snippet", _.dataset.tone = A.tone;
2200
- const M = document.createElement("div");
2201
- if (M.className = "gengage-chat-review-snippet-text", M.textContent = `"${A.text}"`, _.appendChild(M), A.rating !== void 0 && String(A.rating).length > 0) {
2214
+ const N = document.createElement("div");
2215
+ if (N.className = "gengage-chat-review-snippet-text", N.textContent = `"${A.text}"`, _.appendChild(N), A.rating !== void 0 && String(A.rating).length > 0) {
2202
2216
  const I = document.createElement("div");
2203
2217
  I.className = "gengage-chat-review-snippet-rating", I.textContent = `★ ${String(A.rating)}`, _.appendChild(I);
2204
2218
  }
@@ -2449,10 +2463,10 @@ function Pt(a, e, t, n) {
2449
2463
  }
2450
2464
  }
2451
2465
  _.childNodes.length > 0 && r.appendChild(_);
2452
- const M = !!(s && e.topPicksLoadingSku === s), I = (d || h) && !x;
2453
- if (M || d || h) {
2466
+ const N = !!(s && e.topPicksLoadingSku === s), I = (d || h) && !x;
2467
+ if (N || d || h) {
2454
2468
  const w = document.createElement("div");
2455
- if (w.className = "gengage-chat-ai-toppick-spinner", w.dataset.gengagePart = "ai-top-pick-spinner", w.style.display = M ? "" : "none", r.appendChild(w), I) {
2469
+ if (w.className = "gengage-chat-ai-toppick-spinner", w.dataset.gengagePart = "ai-top-pick-spinner", w.style.display = N ? "" : "none", r.appendChild(w), I) {
2456
2470
  const k = document.createElement("button");
2457
2471
  k.className = "gengage-chat-ai-toppick-cta gds-btn gds-btn-primary", k.dataset.gengagePart = "ai-top-pick-cta", k.type = "button", k.textContent = d ? e.i18n?.addToCartButton ?? "Add to Cart" : e.i18n?.viewDetails ?? "View Details", k.addEventListener("click", (B) => {
2458
2472
  if (B.stopPropagation(), d) {
@@ -2851,8 +2865,8 @@ function fr(a, e) {
2851
2865
  if (p) {
2852
2866
  const g = ze(e, t), C = Ue(e, t), A = !!(d && d !== p), _ = document.createElement("div");
2853
2867
  _.className = "gengage-chat-product-summary__price", _.dataset.gengagePart = "product-summary-price";
2854
- const M = !!(g && A), I = Ye(e, t);
2855
- if (M) {
2868
+ const N = !!(g && A), I = Ye(e, t);
2869
+ if (N) {
2856
2870
  const w = Ze({
2857
2871
  reasonText: g,
2858
2872
  salePriceFormatted: J(p, e.pricing),
@@ -3071,7 +3085,7 @@ function At(a, e, t, n, r, i, o) {
3071
3085
  const d = document.createElement("span");
3072
3086
  d.className = "gengage-chat-product-details-current-price", d.textContent = J(n, e.pricing), a.appendChild(d);
3073
3087
  }
3074
- const p = Ve(t, "discountPercent", "price_discount_rate");
3088
+ const p = qe(t, "discountPercent", "price_discount_rate");
3075
3089
  if (!e.hideProductDiscountBadge && typeof p == "number" && p > 0) {
3076
3090
  const d = document.createElement("span");
3077
3091
  d.className = "gengage-chat-product-details-discount-badge", d.textContent = `%${Yt(p)}`, a.appendChild(d);
@@ -3102,10 +3116,10 @@ function st(a, e) {
3102
3116
  E.className = "gengage-chat-product-card-img", E.loading = "lazy", oe(E, "src", o);
3103
3117
  const F = n.name;
3104
3118
  F && (E.alt = F), ue(E), b.appendChild(E);
3105
- const q = n.discountPercent;
3106
- if (!e.hideProductDiscountBadge && typeof q == "number" && q > 0) {
3119
+ const V = n.discountPercent;
3120
+ if (!e.hideProductDiscountBadge && typeof V == "number" && V > 0) {
3107
3121
  const R = document.createElement("span");
3108
- R.className = "gengage-chat-product-card-discount-badge", R.textContent = `%${Yt(q)}`, b.appendChild(R);
3122
+ R.className = "gengage-chat-product-card-discount-badge", R.textContent = `%${Yt(V)}`, b.appendChild(R);
3109
3123
  }
3110
3124
  const D = document.createElement("div");
3111
3125
  D.className = "gengage-chat-product-card-img-actions";
@@ -3120,8 +3134,8 @@ function st(a, e) {
3120
3134
  P && P.setAttribute("fill", R.classList.contains("gengage-chat-favorite-btn--active") ? "currentColor" : "none"), e.onFavoriteToggle(K, n);
3121
3135
  }), D.appendChild(R);
3122
3136
  }
3123
- const V = n.sku, Q = e.i18n?.findSimilarLabel ?? "Find Similar";
3124
- if (V) {
3137
+ const q = n.sku, Q = e.i18n?.findSimilarLabel ?? "Find Similar";
3138
+ if (q) {
3125
3139
  const R = document.createElement("button");
3126
3140
  R.className = "gengage-chat-find-similar-pill", R.type = "button", R.setAttribute("aria-label", Q), R.dataset.tooltip = Q, R.innerHTML = '<span class="gengage-chat-find-similar-pill-icon" aria-hidden="true"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.25" stroke-linecap="round" stroke-linejoin="round"><circle cx="10.5" cy="10.5" r="6.5"/><path d="M16 16l5.5 5.5"/></svg></span>';
3127
3141
  const U = document.createElement("span");
@@ -3129,7 +3143,7 @@ function st(a, e) {
3129
3143
  v.stopPropagation(), e.onAction({
3130
3144
  title: Q,
3131
3145
  type: "findSimilar",
3132
- payload: { sku: V }
3146
+ payload: { sku: q }
3133
3147
  });
3134
3148
  }), D.appendChild(R);
3135
3149
  }
@@ -3144,27 +3158,27 @@ function st(a, e) {
3144
3158
  }
3145
3159
  const l = n.rating, p = n.reviewCount, d = n.price, h = n.originalPrice, u = n.price_async, x = ze(e, n), f = Ue(e, n), m = !!(h && d && h !== d && parseFloat(d) > 0), g = !!(x && m), C = !!(x && !g || m && f === "inline"), A = typeof l == "number" && Number.isFinite(l) && l > 0, _ = document.createElement("div");
3146
3160
  _.className = "gengage-chat-product-card-meta-row";
3147
- const M = document.createElement("div");
3148
- M.className = "gengage-chat-product-card-price gengage-chat-product-card-price-block";
3161
+ const N = document.createElement("div");
3162
+ N.className = "gengage-chat-product-card-price gengage-chat-product-card-price-block";
3149
3163
  const I = C ? (() => {
3150
3164
  const b = document.createElement("div");
3151
- return b.className = "gengage-chat-product-card-price-stack", x && !g && b.appendChild(Ke(x)), b.appendChild(M), b;
3152
- })() : M;
3165
+ return b.className = "gengage-chat-product-card-price-stack", x && !g && b.appendChild(Ke(x)), b.appendChild(N), b;
3166
+ })() : N;
3153
3167
  if (u === !0) {
3154
3168
  const b = document.createElement("span");
3155
- b.className = "gengage-chat-price-skeleton", M.appendChild(b), setTimeout(() => {
3156
- b.parentElement && (d && parseFloat(d) > 0 ? Lt(M, e, n, d, n.originalPrice) : b.remove());
3169
+ b.className = "gengage-chat-price-skeleton", N.appendChild(b), setTimeout(() => {
3170
+ b.parentElement && (d && parseFloat(d) > 0 ? Lt(N, e, n, d, n.originalPrice) : b.remove());
3157
3171
  }, 300);
3158
- } else d && parseFloat(d) > 0 && Lt(M, e, n, d, h);
3159
- if ((M.childElementCount > 0 || u === !0) && _.appendChild(I), A) {
3172
+ } else d && parseFloat(d) > 0 && Lt(N, e, n, d, h);
3173
+ if ((N.childElementCount > 0 || u === !0) && _.appendChild(I), A) {
3160
3174
  const b = document.createElement("div");
3161
3175
  b.className = "gengage-chat-product-card-rating gengage-chat-product-card-rating-compact";
3162
3176
  const E = Kt(l), F = [`${E.toFixed(1)}`, "out of 5 stars"];
3163
3177
  typeof p == "number" && Number.isFinite(p) && F.push(`(${p} reviews)`), b.setAttribute("aria-label", F.join(" "));
3164
- const q = document.createElement("span");
3165
- q.className = "gengage-chat-product-card-rating-compact-star", q.setAttribute("aria-hidden", "true"), q.innerHTML = '<svg width="12" height="12" viewBox="0 0 24 24" fill="currentColor"><path d="M12 3.6l2.58 5.23 5.77.84-4.17 4.07.98 5.75L12 16.78l-5.16 2.71.99-5.75L3.66 9.67l5.76-.84L12 3.6z"/></svg>';
3178
+ const V = document.createElement("span");
3179
+ V.className = "gengage-chat-product-card-rating-compact-star", V.setAttribute("aria-hidden", "true"), V.innerHTML = '<svg width="12" height="12" viewBox="0 0 24 24" fill="currentColor"><path d="M12 3.6l2.58 5.23 5.77.84-4.17 4.07.98 5.75L12 16.78l-5.16 2.71.99-5.75L3.66 9.67l5.76-.84L12 3.6z"/></svg>';
3166
3180
  const D = document.createElement("span");
3167
- D.className = "gengage-chat-product-card-rating-compact-value", D.textContent = E.toFixed(1), b.appendChild(q), b.appendChild(D), _.appendChild(b);
3181
+ D.className = "gengage-chat-product-card-rating-compact-value", D.textContent = E.toFixed(1), b.appendChild(V), b.appendChild(D), _.appendChild(b);
3168
3182
  }
3169
3183
  _.childElementCount === 0 && (_.classList.add("gengage-chat-product-card-meta-row--empty"), _.setAttribute("aria-hidden", "true")), s.appendChild(_);
3170
3184
  const w = n.name;
@@ -3222,18 +3236,18 @@ function st(a, e) {
3222
3236
  b.className = "gengage-chat-comparison-select-wrapper";
3223
3237
  const E = e.comparisonSelectedSkus?.includes(j) ?? !1;
3224
3238
  E && b.classList.add("gengage-chat-comparison-select-wrapper--selected");
3225
- const F = n.name ?? j, q = e.i18n?.comparisonSelectCardHint ?? "Tap anywhere on the card to add or remove it from comparison.";
3226
- b.setAttribute("role", "group"), b.setAttribute("aria-label", `${String(F)}. ${q}`);
3239
+ const F = n.name ?? j, V = e.i18n?.comparisonSelectCardHint ?? "Tap anywhere on the card to add or remove it from comparison.";
3240
+ b.setAttribute("role", "group"), b.setAttribute("aria-label", `${String(F)}. ${V}`);
3227
3241
  const D = document.createElement("button");
3228
3242
  D.type = "button", D.className = "gengage-chat-comparison-checkbox", D.dataset.selected = E ? "true" : "false", D.setAttribute("aria-pressed", E ? "true" : "false");
3229
3243
  const K = document.createElement("span");
3230
3244
  K.className = "gengage-chat-comparison-checkbox-icon", K.innerHTML = E ? '<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6L9 17l-5-5"/></svg>' : '<span class="gengage-chat-comparison-checkbox-dot"></span>';
3231
- const V = document.createElement("span");
3232
- V.className = "gengage-chat-comparison-checkbox-label", V.textContent = E ? e.i18n?.comparisonSelectedLabel ?? "Selected" : e.i18n?.comparisonSelectLabel ?? "Select to compare", D.appendChild(K), D.appendChild(V), D.addEventListener("click", (R) => {
3245
+ const q = document.createElement("span");
3246
+ q.className = "gengage-chat-comparison-checkbox-label", q.textContent = E ? e.i18n?.comparisonSelectedLabel ?? "Selected" : e.i18n?.comparisonSelectLabel ?? "Select to compare", D.appendChild(K), D.appendChild(q), D.addEventListener("click", (R) => {
3233
3247
  R.stopPropagation(), e.onToggleComparisonSku?.(j);
3234
3248
  });
3235
3249
  const Q = document.createElement("div");
3236
- return Q.className = "gengage-chat-comparison-card-hint", Q.setAttribute("aria-hidden", "true"), Q.textContent = q, b.addEventListener("click", (R) => {
3250
+ return Q.className = "gengage-chat-comparison-card-hint", Q.setAttribute("aria-hidden", "true"), Q.textContent = V, b.addEventListener("click", (R) => {
3237
3251
  R.target.closest(".gengage-chat-comparison-checkbox") || (R.stopPropagation(), e.onToggleComparisonSku?.(j));
3238
3252
  }), b.appendChild(D), b.appendChild(Q), b.appendChild(t), b;
3239
3253
  }
@@ -3290,7 +3304,7 @@ function de(a, ...e) {
3290
3304
  }
3291
3305
  }
3292
3306
  }
3293
- function Ve(a, ...e) {
3307
+ function qe(a, ...e) {
3294
3308
  for (const t of e) {
3295
3309
  const n = a[t];
3296
3310
  if (typeof n == "number" && Number.isFinite(n)) return n;
@@ -3364,7 +3378,7 @@ function ke(a, ...e) {
3364
3378
  return de(a, ...e);
3365
3379
  }
3366
3380
  function Tt(a, ...e) {
3367
- return Ve(a, ...e);
3381
+ return qe(a, ...e);
3368
3382
  }
3369
3383
  function sa(a) {
3370
3384
  return ke(a, "value", "option_value", "attribute_value", "label", "title", "name", "variant_name", "sku");
@@ -3439,7 +3453,7 @@ function jr(a, e) {
3439
3453
  t.className = "gengage-chat-product-details-panel";
3440
3454
  const n = a.props?.product ?? a.props;
3441
3455
  if (!n) return t;
3442
- const r = de(n, "name"), i = de(n, "brand"), o = de(n, "sku"), s = de(n, "cartCode", "cart_code"), c = de(n, "price"), l = de(n, "originalPrice", "price_original"), p = je(n, "price_async"), d = ze(e, n), h = Ue(e, n), u = !!(l && c && l !== c), x = je(n, "inStock", "in_stock"), f = Ve(n, "reviewCount", "review_count"), m = Ve(n, "rating"), g = Ar(n), C = oa(n).slice(0, 4);
3456
+ const r = de(n, "name"), i = de(n, "brand"), o = de(n, "sku"), s = de(n, "cartCode", "cart_code"), c = de(n, "price"), l = de(n, "originalPrice", "price_original"), p = je(n, "price_async"), d = ze(e, n), h = Ue(e, n), u = !!(l && c && l !== c), x = je(n, "inStock", "in_stock"), f = qe(n, "reviewCount", "review_count"), m = qe(n, "rating"), g = Ar(n), C = oa(n).slice(0, 4);
3443
3457
  if (g.length > 1) {
3444
3458
  const L = document.createElement("div");
3445
3459
  L.className = "gengage-chat-product-details-media gengage-chat-product-details-gallery gengage-chat-product-details-img-wrap";
@@ -3448,45 +3462,45 @@ function jr(a, e) {
3448
3462
  const b = document.createElement("div");
3449
3463
  b.className = "gengage-chat-product-gallery-thumbs";
3450
3464
  const E = 6;
3451
- let F = null, q = 0;
3452
- const D = e.i18n, K = D?.galleryPrevAriaLabel ?? "Previous image", V = D?.galleryNextAriaLabel ?? "Next image", Q = (N) => N === "prev" ? '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="15 18 9 12 15 6"/></svg>' : '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="9 18 15 12 9 6"/></svg>', R = document.createElement("button");
3465
+ let F = null, V = 0;
3466
+ const D = e.i18n, K = D?.galleryPrevAriaLabel ?? "Previous image", q = D?.galleryNextAriaLabel ?? "Next image", Q = (M) => M === "prev" ? '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="15 18 9 12 15 6"/></svg>' : '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="9 18 15 12 9 6"/></svg>', R = document.createElement("button");
3453
3467
  R.type = "button", R.className = "gengage-chat-product-gallery-nav gengage-chat-product-gallery-nav--prev gds-btn gds-btn-ghost gds-icon-btn", R.setAttribute("aria-label", K), R.innerHTML = Q("prev");
3454
3468
  const U = document.createElement("button");
3455
- U.type = "button", U.className = "gengage-chat-product-gallery-nav gengage-chat-product-gallery-nav--next gds-btn gds-btn-ghost gds-icon-btn", U.setAttribute("aria-label", V), U.innerHTML = Q("next");
3469
+ U.type = "button", U.className = "gengage-chat-product-gallery-nav gengage-chat-product-gallery-nav--next gds-btn gds-btn-ghost gds-icon-btn", U.setAttribute("aria-label", q), U.innerHTML = Q("next");
3456
3470
  const v = () => {
3457
- R.disabled = q <= 0, U.disabled = q >= g.length - 1;
3458
- }, P = (N) => {
3459
- if (N < 0 || N >= g.length || N === q) return;
3460
- const H = g[N];
3471
+ R.disabled = V <= 0, U.disabled = V >= g.length - 1;
3472
+ }, P = (M) => {
3473
+ if (M < 0 || M >= g.length || M === V) return;
3474
+ const H = g[M];
3461
3475
  if (!H) return;
3462
3476
  oe(S, "src", H);
3463
3477
  const G = b.querySelectorAll(".gengage-chat-product-gallery-thumb");
3464
- F && F.classList.remove("gengage-chat-product-gallery-thumb--active"), N < E && G[N] ? (G[N].classList.add("gengage-chat-product-gallery-thumb--active"), F = G[N]) : F = null, q = N, v();
3478
+ F && F.classList.remove("gengage-chat-product-gallery-thumb--active"), M < E && G[M] ? (G[M].classList.add("gengage-chat-product-gallery-thumb--active"), F = G[M]) : F = null, V = M, v();
3465
3479
  };
3466
- for (let N = 0; N < g.length; N++) {
3467
- const H = g[N];
3468
- if (N >= E) break;
3480
+ for (let M = 0; M < g.length; M++) {
3481
+ const H = g[M];
3482
+ if (M >= E) break;
3469
3483
  const G = document.createElement("img");
3470
- G.className = "gengage-chat-product-gallery-thumb", N === 0 && (G.classList.add("gengage-chat-product-gallery-thumb--active"), F = G), oe(G, "src", H), G.alt = `${r ?? "Product"} ${N + 1}`, G.width = 48, G.height = 48, ue(G), G.addEventListener("click", () => {
3471
- P(N);
3484
+ G.className = "gengage-chat-product-gallery-thumb", M === 0 && (G.classList.add("gengage-chat-product-gallery-thumb--active"), F = G), oe(G, "src", H), G.alt = `${r ?? "Product"} ${M + 1}`, G.width = 48, G.height = 48, ue(G), G.addEventListener("click", () => {
3485
+ P(M);
3472
3486
  }), b.appendChild(G);
3473
3487
  }
3474
3488
  if (g.length > E) {
3475
- const N = document.createElement("span");
3476
- N.className = "gengage-chat-product-gallery-thumb-more", N.textContent = `+${g.length - E}`, b.appendChild(N);
3489
+ const M = document.createElement("span");
3490
+ M.className = "gengage-chat-product-gallery-thumb-more", M.textContent = `+${g.length - E}`, b.appendChild(M);
3477
3491
  }
3478
- R.addEventListener("click", (N) => {
3479
- N.stopPropagation(), P(q - 1);
3480
- }), U.addEventListener("click", (N) => {
3481
- N.stopPropagation(), P(q + 1);
3492
+ R.addEventListener("click", (M) => {
3493
+ M.stopPropagation(), P(V - 1);
3494
+ }), U.addEventListener("click", (M) => {
3495
+ M.stopPropagation(), P(V + 1);
3482
3496
  }), v();
3483
3497
  let T = 0;
3484
3498
  const O = 50;
3485
- S.addEventListener("touchstart", (N) => {
3486
- T = N.changedTouches[0].clientX;
3487
- }, { passive: !0 }), S.addEventListener("touchend", (N) => {
3488
- const H = N.changedTouches[0].clientX, G = T - H;
3489
- Math.abs(G) < O || P(G > 0 ? Math.min(q + 1, g.length - 1) : Math.max(q - 1, 0));
3499
+ S.addEventListener("touchstart", (M) => {
3500
+ T = M.changedTouches[0].clientX;
3501
+ }, { passive: !0 }), S.addEventListener("touchend", (M) => {
3502
+ const H = M.changedTouches[0].clientX, G = T - H;
3503
+ Math.abs(G) < O || P(G > 0 ? Math.min(V + 1, g.length - 1) : Math.max(V - 1, 0));
3490
3504
  }), L.appendChild(R), L.appendChild(U), L.appendChild(b), t.appendChild(L);
3491
3505
  } else if (g.length === 1) {
3492
3506
  const L = document.createElement("div");
@@ -3572,23 +3586,23 @@ function jr(a, e) {
3572
3586
  }
3573
3587
  A.appendChild(L);
3574
3588
  }
3575
- const M = Or(n);
3576
- if (M.length > 0) {
3589
+ const N = Or(n);
3590
+ if (N.length > 0) {
3577
3591
  const L = document.createElement("div");
3578
3592
  L.className = "gengage-chat-product-variants";
3579
3593
  const S = document.createElement("div");
3580
- S.className = "gengage-chat-product-variants-label", S.textContent = Ur(M, e), L.appendChild(S);
3594
+ S.className = "gengage-chat-product-variants-label", S.textContent = Ur(N, e), L.appendChild(S);
3581
3595
  const b = document.createElement("div");
3582
3596
  b.className = "gengage-chat-product-variants-list";
3583
- for (const E of M) {
3584
- const F = sa(E), q = ke(E, "sku");
3585
- if (!F && !q) continue;
3597
+ for (const E of N) {
3598
+ const F = sa(E), V = ke(E, "sku");
3599
+ if (!F && !V) continue;
3586
3600
  const D = document.createElement("button");
3587
3601
  D.className = "gengage-chat-product-variant-btn gds-chip", D.type = "button";
3588
- const K = F ?? q ?? "";
3602
+ const K = F ?? V ?? "";
3589
3603
  D.title = K;
3590
- const V = je(E, "in_stock", "inStock");
3591
- q && o && q === o ? (D.classList.add("gengage-chat-product-variant-btn--active"), D.setAttribute("aria-pressed", "true")) : D.setAttribute("aria-pressed", "false"), V === !1 && (D.classList.add("gengage-chat-product-variant-btn--out"), D.disabled = !0);
3604
+ const q = je(E, "in_stock", "inStock");
3605
+ V && o && V === o ? (D.classList.add("gengage-chat-product-variant-btn--active"), D.setAttribute("aria-pressed", "true")) : D.setAttribute("aria-pressed", "false"), q === !1 && (D.classList.add("gengage-chat-product-variant-btn--out"), D.disabled = !0);
3592
3606
  const Q = zr(E), R = Br(E);
3593
3607
  if (Q && me(Q)) {
3594
3608
  const P = document.createElement("img");
@@ -3604,13 +3618,13 @@ function jr(a, e) {
3604
3618
  const P = document.createElement("span");
3605
3619
  P.className = "gengage-chat-product-variant-price", P.textContent = J(String(v), e.pricing), D.appendChild(P);
3606
3620
  }
3607
- if (q && q !== o) {
3621
+ if (V && V !== o) {
3608
3622
  const P = r ?? "", T = (typeof E.value == "string" ? E.value.trim() : "") || (typeof E.name == "string" ? E.name.trim() : "") || (typeof E.variant_name == "string" ? E.variant_name.trim() : "") || "", O = P.length > 0 ? T.length > 0 && T !== P ? `${P} (${T})` : P : K;
3609
3623
  D.addEventListener("click", () => {
3610
3624
  e.onAction({
3611
3625
  title: O,
3612
3626
  type: "launchVariant",
3613
- payload: { sku: q }
3627
+ payload: { sku: V }
3614
3628
  });
3615
3629
  });
3616
3630
  }
@@ -3653,18 +3667,18 @@ function jr(a, e) {
3653
3667
  const B = k;
3654
3668
  if (B && me(B)) {
3655
3669
  let F = function(D, K) {
3656
- const V = document.createElementNS(b, "circle");
3657
- V.setAttribute("cx", D), V.setAttribute("cy", K), V.setAttribute("r", "3"), E.appendChild(V);
3658
- }, q = function(D, K, V, Q) {
3670
+ const q = document.createElementNS(b, "circle");
3671
+ q.setAttribute("cx", D), q.setAttribute("cy", K), q.setAttribute("r", "3"), E.appendChild(q);
3672
+ }, V = function(D, K, q, Q) {
3659
3673
  const R = document.createElementNS(b, "line");
3660
- R.setAttribute("x1", D), R.setAttribute("y1", K), R.setAttribute("x2", V), R.setAttribute("y2", Q), E.appendChild(R);
3674
+ R.setAttribute("x1", D), R.setAttribute("y1", K), R.setAttribute("x2", q), R.setAttribute("y2", Q), E.appendChild(R);
3661
3675
  };
3662
3676
  const L = document.createElement("button");
3663
3677
  L.className = "gengage-chat-product-details-share gds-btn gds-btn-ghost gds-icon-btn", L.type = "button";
3664
3678
  const S = e.i18n?.shareButton ?? "Share";
3665
3679
  L.title = S, L.setAttribute("aria-label", S);
3666
3680
  const b = "http://www.w3.org/2000/svg", E = document.createElementNS(b, "svg");
3667
- E.setAttribute("width", "18"), E.setAttribute("height", "18"), E.setAttribute("viewBox", "0 0 24 24"), E.setAttribute("fill", "none"), E.setAttribute("stroke", "currentColor"), E.setAttribute("stroke-width", "2"), E.setAttribute("stroke-linecap", "round"), E.setAttribute("stroke-linejoin", "round"), F("18", "5"), F("6", "12"), F("18", "19"), q("8.59", "13.51", "15.42", "17.49"), q("15.41", "6.51", "8.59", "10.49"), L.appendChild(E), L.addEventListener("click", async () => {
3681
+ E.setAttribute("width", "18"), E.setAttribute("height", "18"), E.setAttribute("viewBox", "0 0 24 24"), E.setAttribute("fill", "none"), E.setAttribute("stroke", "currentColor"), E.setAttribute("stroke-width", "2"), E.setAttribute("stroke-linecap", "round"), E.setAttribute("stroke-linejoin", "round"), F("18", "5"), F("6", "12"), F("18", "19"), V("8.59", "13.51", "15.42", "17.49"), V("15.41", "6.51", "8.59", "10.49"), L.appendChild(E), L.addEventListener("click", async () => {
3668
3682
  try {
3669
3683
  navigator.share ? await navigator.share({
3670
3684
  title: r ?? "",
@@ -3698,7 +3712,7 @@ function ct(a) {
3698
3712
  }
3699
3713
  return n;
3700
3714
  }
3701
- function qr(a, e) {
3715
+ function Vr(a, e) {
3702
3716
  const t = e.split(/\n{2,}/).map((n) => n.replace(/\s+/g, " ").trim()).filter(Boolean);
3703
3717
  if (t.length !== 0)
3704
3718
  for (const n of t) {
@@ -3706,7 +3720,7 @@ function qr(a, e) {
3706
3720
  r.textContent = n, a.appendChild(r);
3707
3721
  }
3708
3722
  }
3709
- function Vr(a, e) {
3723
+ function qr(a, e) {
3710
3724
  if (a.classList.add("gengage-chat-product-description"), e.html && typeof DOMParser < "u") {
3711
3725
  const t = new DOMParser().parseFromString(e.html, "text/html"), n = Array.from(t.body.childNodes).map((r) => ct(r)).filter((r) => !!r && (r.nodeType === Node.ELEMENT_NODE || !!r.textContent?.trim()));
3712
3726
  if (n.length > 0) {
@@ -3714,7 +3728,7 @@ function Vr(a, e) {
3714
3728
  return;
3715
3729
  }
3716
3730
  }
3717
- qr(a, e.text);
3731
+ Vr(a, e.text);
3718
3732
  }
3719
3733
  function Gr(a, e, t) {
3720
3734
  const n = document.createElement("div");
@@ -3726,7 +3740,7 @@ function Gr(a, e, t) {
3726
3740
  const s = document.createElement("button");
3727
3741
  s.className = "gengage-chat-product-detail-tab gds-tab gengage-chat-product-detail-tab--active is-active", s.type = "button", s.setAttribute("aria-selected", "true"), s.textContent = t.i18n?.productInfoTab ?? "Product Info", r.appendChild(s);
3728
3742
  const c = document.createElement("div");
3729
- c.className = "gengage-chat-product-detail-tab-panel", Vr(c, a), i.push(c);
3743
+ c.className = "gengage-chat-product-detail-tab-panel", qr(c, a), i.push(c);
3730
3744
  }
3731
3745
  if (e) {
3732
3746
  const s = document.createElement("button");
@@ -3852,8 +3866,8 @@ function Zr(a, e, t, n) {
3852
3866
  A.textContent = b.label, C.innerHTML = Mt(b.icon), f.dataset.sortIcon = b.icon, m.setAttribute("aria-label", `${g}: ${b.label}`), m.title = b.label;
3853
3867
  };
3854
3868
  _(u);
3855
- const M = document.createElement("span");
3856
- M.className = "gengage-chat-product-sort-trigger-chevron", M.innerHTML = $r(), m.appendChild(C), m.appendChild(A), m.appendChild(M);
3869
+ const N = document.createElement("span");
3870
+ N.className = "gengage-chat-product-sort-trigger-chevron", N.innerHTML = $r(), m.appendChild(C), m.appendChild(A), m.appendChild(N);
3857
3871
  const I = document.createElement("div");
3858
3872
  I.className = "gengage-chat-product-sort-menu gds-menu", I.hidden = !0, I.setAttribute("role", "listbox"), I.setAttribute("aria-label", g);
3859
3873
  const w = h.ownerDocument;
@@ -3882,14 +3896,14 @@ function Zr(a, e, t, n) {
3882
3896
  b.setAttribute("aria-selected", E ? "true" : "false"), E && b.classList.add("gengage-chat-product-sort-option--active", "gds-menu-option-active");
3883
3897
  const F = S.sortState.type === "related" ? "related" : `price-${S.sortState.direction ?? ""}`;
3884
3898
  b.dataset.sortKey = F;
3885
- const q = document.createElement("span");
3886
- q.className = "gengage-chat-product-sort-option-icon", q.innerHTML = Mt(S.icon);
3899
+ const V = document.createElement("span");
3900
+ V.className = "gengage-chat-product-sort-option-icon", V.innerHTML = Mt(S.icon);
3887
3901
  const D = document.createElement("span");
3888
3902
  D.className = "gengage-chat-product-sort-option-label", D.textContent = S.label;
3889
3903
  const K = document.createElement("span");
3890
- K.className = "gengage-chat-product-sort-option-check", K.innerHTML = Wr(), K.setAttribute("aria-hidden", "true"), E || K.classList.add("gengage-chat-product-sort-option-check--hidden"), b.appendChild(q), b.appendChild(D), b.appendChild(K), b.addEventListener("click", () => {
3891
- u = S.sortState, n.onSortChange?.(S.sortState), Yr(c, s, e, S.sortState), I.querySelectorAll(".gengage-chat-product-sort-option").forEach((V) => {
3892
- const Q = V, R = Q.dataset.sortKey === F;
3904
+ K.className = "gengage-chat-product-sort-option-check", K.innerHTML = Wr(), K.setAttribute("aria-hidden", "true"), E || K.classList.add("gengage-chat-product-sort-option-check--hidden"), b.appendChild(V), b.appendChild(D), b.appendChild(K), b.addEventListener("click", () => {
3905
+ u = S.sortState, n.onSortChange?.(S.sortState), Yr(c, s, e, S.sortState), I.querySelectorAll(".gengage-chat-product-sort-option").forEach((q) => {
3906
+ const Q = q, R = Q.dataset.sortKey === F;
3893
3907
  Q.classList.toggle("gengage-chat-product-sort-option--active", R), Q.classList.toggle("gds-menu-option-active", R), Q.setAttribute("aria-selected", R ? "true" : "false"), Q.querySelector(".gengage-chat-product-sort-option-check")?.classList.toggle("gengage-chat-product-sort-option-check--hidden", !R);
3894
3908
  }), _(S.sortState), B();
3895
3909
  }), I.appendChild(b);
@@ -4023,7 +4037,7 @@ function Bt(a, e, t, n) {
4023
4037
  const o = document.createElement("section");
4024
4038
  o.className = "gengage-chat-consulting-loading-panel";
4025
4039
  const s = document.createElement("h4");
4026
- s.className = "gengage-chat-consulting-loading-panel-title", s.textContent = qe(e, n, i), o.appendChild(s);
4040
+ s.className = "gengage-chat-consulting-loading-panel-title", s.textContent = Ve(e, n, i), o.appendChild(s);
4027
4041
  const c = document.createElement("p");
4028
4042
  if (c.className = "gengage-chat-consulting-loading-panel-copy", c.textContent = t === "loading" ? i.consultingStyleLoadingDescription : i.consultingStyleUnavailableDescription, o.appendChild(c), t === "loading") {
4029
4043
  const l = document.createElement("div");
@@ -4036,7 +4050,7 @@ function Bt(a, e, t, n) {
4036
4050
  }
4037
4051
  r.appendChild(o);
4038
4052
  }
4039
- function qe(a, e, t) {
4053
+ function Ve(a, e, t) {
4040
4054
  const n = (r) => t.consultingFallbackStyleLabel.replace("{index}", String(r));
4041
4055
  return a.style_label ?? n(e);
4042
4056
  }
@@ -4064,8 +4078,8 @@ function ht(a, e) {
4064
4078
  }
4065
4079
  const h = (g, C, A, _) => {
4066
4080
  if (C.length === 0) return;
4067
- const M = document.createElement("section");
4068
- M.className = "gengage-chat-consulting-group";
4081
+ const N = document.createElement("section");
4082
+ N.className = "gengage-chat-consulting-group";
4069
4083
  const I = document.createElement("div");
4070
4084
  I.className = "gengage-chat-consulting-group-header";
4071
4085
  const w = document.createElement("h4");
@@ -4073,7 +4087,7 @@ function ht(a, e) {
4073
4087
  const B = document.createElement("p");
4074
4088
  B.className = "gengage-chat-consulting-group-reason", B.textContent = _, I.appendChild(B);
4075
4089
  }
4076
- M.appendChild(I);
4090
+ N.appendChild(I);
4077
4091
  const k = document.createElement("div");
4078
4092
  k.className = "gengage-chat-product-grid gengage-chat-consulting-group-grid", A && k.classList.add("gengage-chat-consulting-group-grid--single-group"), k.style.setProperty("--consulting-group-columns", String(Math.max(1, Math.min(4, C.length))));
4079
4093
  for (const B of C) {
@@ -4084,10 +4098,10 @@ function ht(a, e) {
4084
4098
  } });
4085
4099
  k.appendChild(j);
4086
4100
  }
4087
- M.appendChild(k), n.appendChild(M);
4101
+ N.appendChild(k), n.appendChild(N);
4088
4102
  }, u = /* @__PURE__ */ new Set(), x = [];
4089
4103
  for (const g of p) {
4090
- const C = (Array.isArray(g.skus) ? g.skus.filter((M) => typeof M == "string" && M.trim().length > 0) : []).map((M) => (u.add(M), d.get(M))).filter((M) => !!M);
4104
+ const C = (Array.isArray(g.skus) ? g.skus.filter((N) => typeof N == "string" && N.trim().length > 0) : []).map((N) => (u.add(N), d.get(N))).filter((N) => !!N);
4091
4105
  if (C.length === 0) continue;
4092
4106
  const A = typeof g.label == "string" && g.label.trim().length > 0 ? g.label : o.consultingFallbackGroupLabel, _ = typeof g.reason == "string" ? g.reason : void 0;
4093
4107
  x.push({
@@ -4119,16 +4133,16 @@ function ht(a, e) {
4119
4133
  }
4120
4134
  function gt(a, e, t, n) {
4121
4135
  const r = Xe(e), i = n.consultingStyleLoadingBadge, o = n.consultingStyleUnavailableBadge;
4122
- a.classList.remove("gengage-chat-consulting-style-btn--loading", "gengage-chat-consulting-style-btn--muted"), r === "loading" ? a.classList.add("gengage-chat-consulting-style-btn--loading") : r !== "ready" && a.classList.add("gengage-chat-consulting-style-btn--muted"), a.setAttribute("aria-label", qe(e, t + 1, n));
4136
+ a.classList.remove("gengage-chat-consulting-style-btn--loading", "gengage-chat-consulting-style-btn--muted"), r === "loading" ? a.classList.add("gengage-chat-consulting-style-btn--loading") : r !== "ready" && a.classList.add("gengage-chat-consulting-style-btn--muted"), a.setAttribute("aria-label", Ve(e, t + 1, n));
4123
4137
  let s = a.querySelector(".gengage-chat-consulting-style-media");
4124
4138
  s ? s.innerHTML = "" : (s = document.createElement("div"), s.className = "gengage-chat-consulting-style-media", a.appendChild(s));
4125
4139
  const c = Jr(e.image_url);
4126
4140
  if (c && me(c)) {
4127
4141
  const p = document.createElement("img");
4128
- p.className = "gengage-chat-consulting-style-image", p.draggable = !1, oe(p, "src", c), p.alt = qe(e, t + 1, n), p.loading = "lazy", ue(p), s.appendChild(p);
4142
+ p.className = "gengage-chat-consulting-style-image", p.draggable = !1, oe(p, "src", c), p.alt = Ve(e, t + 1, n), p.loading = "lazy", ue(p), s.appendChild(p);
4129
4143
  }
4130
4144
  const l = document.createElement("span");
4131
- if (l.className = "gengage-chat-consulting-style-caption", l.textContent = qe(e, t + 1, n), s.appendChild(l), r === "loading" || r !== "ready") {
4145
+ if (l.className = "gengage-chat-consulting-style-caption", l.textContent = Ve(e, t + 1, n), s.appendChild(l), r === "loading" || r !== "ready") {
4132
4146
  const p = document.createElement("span");
4133
4147
  p.className = "gengage-chat-consulting-style-status", p.textContent = r === "loading" ? i : o, s.appendChild(p);
4134
4148
  }
@@ -4574,12 +4588,12 @@ function gi(a, e, t) {
4574
4588
  fontFamily: h
4575
4589
  }), t.appendChild(z);
4576
4590
  }
4577
- const M = document.createElement("div");
4578
- M.className = "gengage-fl", M.dataset.gengagePart = "floating-launcher", M.innerHTML = li();
4579
- const I = M.querySelector(".gengage-fl-input"), w = M.querySelector(".gengage-fl-transcript"), k = M.querySelector(".gengage-fl-transcript-final"), B = M.querySelector(".gengage-fl-transcript-interim"), j = M.querySelector(".gengage-fl-btn-send"), Z = M.querySelector(".gengage-fl-btn-mic"), L = M.querySelector(".gengage-fl-btn-open-chat"), S = M.querySelector(".gengage-fl-cancel"), b = M.querySelector(".gengage-fl-wave"), E = M.querySelector(".gengage-fl-ring");
4591
+ const N = document.createElement("div");
4592
+ N.className = "gengage-fl", N.dataset.gengagePart = "floating-launcher", N.innerHTML = li();
4593
+ const I = N.querySelector(".gengage-fl-input"), w = N.querySelector(".gengage-fl-transcript"), k = N.querySelector(".gengage-fl-transcript-final"), B = N.querySelector(".gengage-fl-transcript-interim"), j = N.querySelector(".gengage-fl-btn-send"), Z = N.querySelector(".gengage-fl-btn-mic"), L = N.querySelector(".gengage-fl-btn-open-chat"), S = N.querySelector(".gengage-fl-cancel"), b = N.querySelector(".gengage-fl-wave"), E = N.querySelector(".gengage-fl-ring");
4580
4594
  I.placeholder = u[0] ?? "", j.setAttribute("aria-label", g), Z.setAttribute("aria-label", C), S.setAttribute("aria-label", A), L.setAttribute("aria-label", _);
4581
- let F = !1, q = !1, D = "", K = !1, V = null, Q = 0, R = null, U = null, v = null, P = null, T = null, O = 0;
4582
- function N() {
4595
+ let F = !1, V = !1, D = "", K = !1, q = null, Q = 0, R = null, U = null, v = null, P = null, T = null, O = 0;
4596
+ function M() {
4583
4597
  const z = I.value.trim().length > 0;
4584
4598
  if (Z.classList.toggle("is-recording", F), F) {
4585
4599
  j.style.display = "flex", Z.style.display = "flex", S.style.display = "flex", L.style.display = "none";
@@ -4593,13 +4607,13 @@ function gi(a, e, t) {
4593
4607
  function G() {
4594
4608
  R !== null || u.length <= 1 || (R = setTimeout(H, x));
4595
4609
  }
4596
- function te() {
4610
+ function ee() {
4597
4611
  R !== null && (clearTimeout(R), R = null);
4598
4612
  }
4599
- function ee() {
4600
- F && (F = !1, se(), q = !1, ae(), m && ie(), D = "", I.style.display = "", w.style.display = "none", k.textContent = "", B.textContent = "");
4613
+ function te() {
4614
+ F && (F = !1, se(), V = !1, ae(), m && ie(), D = "", I.style.display = "", w.style.display = "none", k.textContent = "", B.textContent = "");
4601
4615
  const z = I.value.trim();
4602
- z && (e.onSend(z), K || (K = !0)), I.value = "", D = "", N();
4616
+ z && (e.onSend(z), K || (K = !0)), I.value = "", D = "", M();
4603
4617
  }
4604
4618
  function ne() {
4605
4619
  const z = window, Y = z.SpeechRecognition ?? z.webkitSpeechRecognition;
@@ -4607,7 +4621,7 @@ function gi(a, e, t) {
4607
4621
  console.warn("[FloatingLauncher] SpeechRecognition not supported.");
4608
4622
  return;
4609
4623
  }
4610
- V || (V = new Y(), V.continuous = !0, V.interimResults = !0, V.lang = f), F = !0, q = !0, D = "", I.value = "", I.style.display = "none", w.style.display = "flex", k.textContent = "", B.textContent = "", N(), $(), m && re(), V.onresult = (X) => {
4624
+ q || (q = new Y(), q.continuous = !0, q.interimResults = !0, q.lang = f), F = !0, V = !0, D = "", I.value = "", I.style.display = "none", w.style.display = "flex", k.textContent = "", B.textContent = "", M(), $(), m && re(), q.onresult = (X) => {
4611
4625
  if (!F) return;
4612
4626
  let W = "", ce = "";
4613
4627
  for (let Se = X.resultIndex; Se < X.results.length; Se++) {
@@ -4616,22 +4630,22 @@ function gi(a, e, t) {
4616
4630
  const Re = Le[0]?.transcript ?? "";
4617
4631
  Le.isFinal ? ce += Re : W += Re;
4618
4632
  }
4619
- D += ce, k.textContent = D, B.textContent = W, I.value = `${D} ${W}`.trim(), N();
4620
- }, V.onend = () => y(), V.onerror = () => y();
4633
+ D += ce, k.textContent = D, B.textContent = W, I.value = `${D} ${W}`.trim(), M();
4634
+ }, q.onend = () => y(), q.onerror = () => y();
4621
4635
  try {
4622
- V.start();
4636
+ q.start();
4623
4637
  } catch {
4624
4638
  y();
4625
4639
  }
4626
4640
  }
4627
4641
  function se() {
4628
4642
  try {
4629
- V?.stop();
4643
+ q?.stop();
4630
4644
  } catch {
4631
4645
  }
4632
4646
  }
4633
4647
  function y() {
4634
- q && (q = !1, F = !1, ae(), m && ie(), D.trim() && (I.value = D.trim()), I.style.display = "", w.style.display = "none", k.textContent = "", B.textContent = "", N());
4648
+ V && (V = !1, F = !1, ae(), m && ie(), D.trim() && (I.value = D.trim()), I.style.display = "", w.style.display = "none", k.textContent = "", B.textContent = "", M());
4635
4649
  }
4636
4650
  async function $() {
4637
4651
  const z = ++O, Y = Array.from(b.querySelectorAll("span"));
@@ -4679,23 +4693,23 @@ function gi(a, e, t) {
4679
4693
  function ie() {
4680
4694
  E.classList.remove("is-active");
4681
4695
  }
4682
- j.addEventListener("click", ee), Z.addEventListener("click", (z) => {
4696
+ j.addEventListener("click", te), Z.addEventListener("click", (z) => {
4683
4697
  z.preventDefault(), z.stopPropagation(), F ? se() : ne();
4684
4698
  }), S.addEventListener("click", () => {
4685
- F && (F = !1, se(), q = !1, ae(), m && ie(), D = "", I.style.display = "", w.style.display = "none", k.textContent = "", B.textContent = "", N());
4699
+ F && (F = !1, se(), V = !1, ae(), m && ie(), D = "", I.style.display = "", w.style.display = "none", k.textContent = "", B.textContent = "", M());
4686
4700
  }), L.addEventListener("click", (z) => {
4687
4701
  z.preventDefault(), z.stopPropagation(), e.onOpenChat();
4688
- }), I.addEventListener("input", N), I.addEventListener("keydown", (z) => {
4689
- z.key === "Enter" && ee();
4690
- }), N(), G();
4702
+ }), I.addEventListener("input", M), I.addEventListener("keydown", (z) => {
4703
+ z.key === "Enter" && te();
4704
+ }), M(), G();
4691
4705
  function he() {
4692
- K = !0, N();
4706
+ K = !0, M();
4693
4707
  }
4694
4708
  function fe() {
4695
- te(), ae(), ie(), F && (F = !1, se()), V && (V.onresult = null, V.onend = null, V.onerror = null, V = null);
4709
+ ee(), ae(), ie(), F && (F = !1, se()), q && (q.onresult = null, q.onend = null, q.onerror = null, q = null);
4696
4710
  }
4697
4711
  return {
4698
- container: M,
4712
+ container: N,
4699
4713
  showOpenChatButton: he,
4700
4714
  destroy: fe
4701
4715
  };
@@ -5070,9 +5084,24 @@ var Li = class {
5070
5084
  constructor(a) {
5071
5085
  this.deps = a, this.snapshots = /* @__PURE__ */ new Map(), this._snapshotRebuilders = /* @__PURE__ */ new Map(), this._snapshotSources = /* @__PURE__ */ new Map(), this._threadSources = /* @__PURE__ */ new Map(), this.snapshotTypes = /* @__PURE__ */ new Map(), this.activePanelMessageId = null, this.currentType = null, this.threads = [], this.lastActionType = null;
5072
5086
  }
5087
+ _resolvePanelHistoryIdx(a) {
5088
+ const e = this.threads.indexOf(a);
5089
+ if (e !== -1) return e;
5090
+ for (let t = this.threads.length - 1; t >= 0; t--) if (this.threads[t] <= a) return t;
5091
+ return -1;
5092
+ }
5073
5093
  clearSnapshots() {
5074
5094
  this.snapshots.clear(), this._snapshotRebuilders.clear(), this._snapshotSources.clear(), this._threadSources.clear(), this.snapshotTypes.clear();
5075
5095
  }
5096
+ deleteSnapshotForMessage(a) {
5097
+ this.snapshots.delete(a), this._snapshotRebuilders.delete(a), this._snapshotSources.delete(a), this.snapshotTypes.delete(a);
5098
+ }
5099
+ pruneThreadsAfter(a) {
5100
+ this.threads = this.threads.filter((e) => {
5101
+ const t = e <= a;
5102
+ return t || this._threadSources.delete(e), t;
5103
+ });
5104
+ }
5076
5105
  sourceForMessage(a) {
5077
5106
  return this._snapshotSources.get(a) ?? null;
5078
5107
  }
@@ -5102,7 +5131,7 @@ var Li = class {
5102
5131
  if (this.currentType = s, o.querySelector(".gengage-chat-product-grid-head-title") && s === "ProductGrid") {
5103
5132
  const c = this.deps.currentThreadId();
5104
5133
  if (c) {
5105
- const l = this.threads.indexOf(c), p = l > 0, d = l >= 0 && l < this.threads.length - 1;
5134
+ const l = this._resolvePanelHistoryIdx(c), p = l > 0, d = l >= 0 && l < this.threads.length - 1;
5106
5135
  this.deps.drawer()?.updatePanelTopBar(p, d, "");
5107
5136
  }
5108
5137
  } else this.updateTopBar(s);
@@ -5132,7 +5161,7 @@ var Li = class {
5132
5161
  updateTopBar(a, e, t) {
5133
5162
  const n = this.deps.currentThreadId();
5134
5163
  if (!n) return;
5135
- const r = this.threads.indexOf(n), i = r > 0, o = r >= 0 && r < this.threads.length - 1, s = t !== void 0 ? t : this.titleForComponent(a, e);
5164
+ const r = this._resolvePanelHistoryIdx(n), i = r > 0, o = r >= 0 && r < this.threads.length - 1, s = t !== void 0 ? t : this.titleForComponent(a, e);
5136
5165
  this.deps.drawer()?.updatePanelTopBar(i, o, s);
5137
5166
  }
5138
5167
  updateTopBarForLoading(a) {
@@ -5143,7 +5172,7 @@ var Li = class {
5143
5172
  groupList: e.panelTitleCategories
5144
5173
  }[a] ?? "";
5145
5174
  if (t) {
5146
- const n = this.deps.currentThreadId(), r = n ? this.threads.indexOf(n) : -1, i = r > 0, o = r >= 0 && r < this.threads.length - 1;
5175
+ const n = this.deps.currentThreadId(), r = n ? this._resolvePanelHistoryIdx(n) : -1, i = r > 0, o = r >= 0 && r < this.threads.length - 1;
5147
5176
  this.deps.drawer()?.updatePanelTopBar(i, o, t);
5148
5177
  }
5149
5178
  }
@@ -5159,8 +5188,8 @@ var Li = class {
5159
5188
  }
5160
5189
  navigateBack() {
5161
5190
  const a = this.deps.currentThreadId();
5162
- if (!a) return;
5163
- const e = this.threads.indexOf(a);
5191
+ if (!a || this.threads.length === 0) return;
5192
+ const e = this._resolvePanelHistoryIdx(a);
5164
5193
  if (e > 0) {
5165
5194
  const t = this.threads[e - 1];
5166
5195
  t && this.deps.rollbackToThread(t);
@@ -5168,8 +5197,8 @@ var Li = class {
5168
5197
  }
5169
5198
  navigateForward() {
5170
5199
  const a = this.deps.currentThreadId();
5171
- if (!a) return;
5172
- const e = this.threads.indexOf(a);
5200
+ if (!a || this.threads.length === 0) return;
5201
+ const e = this._resolvePanelHistoryIdx(a);
5173
5202
  if (e >= 0 && e < this.threads.length - 1) {
5174
5203
  const t = this.threads[e + 1];
5175
5204
  t && this.deps.rollbackToThread(t);
@@ -5283,14 +5312,14 @@ function ji(a) {
5283
5312
  preview: Ce(ye(a.preview), 140)
5284
5313
  };
5285
5314
  }
5286
- function qi(a) {
5315
+ function Vi(a) {
5287
5316
  return {
5288
5317
  ...a,
5289
5318
  title: Ce(ye(a.title), 72) || "New chat",
5290
5319
  preview: Ce(ye(a.preview), 140)
5291
5320
  };
5292
5321
  }
5293
- var Vi = class {
5322
+ var qi = class {
5294
5323
  constructor(a, e, t = typeof window < "u" ? window.localStorage : null) {
5295
5324
  this._appId = a, this._userId = e, this._storage = t, this._scope = Hi(a, e);
5296
5325
  }
@@ -5306,7 +5335,7 @@ var Vi = class {
5306
5335
  }
5307
5336
  loadSession(a) {
5308
5337
  const e = Ot(this._storage?.getItem(Fe(this._scope, a)) ?? null);
5309
- return !e || e.version !== Dt ? null : qi(e);
5338
+ return !e || e.version !== Dt ? null : Vi(e);
5310
5339
  }
5311
5340
  saveSession(a) {
5312
5341
  if (!this._storage) return null;
@@ -5647,11 +5676,11 @@ var ao = {
5647
5676
  function no(a) {
5648
5677
  return a ? ao[a.toLowerCase().slice(0, 2)] ?? "TURKISH" : "TURKISH";
5649
5678
  }
5650
- var ro = ':where(:root,.gengage-chat-root,.gengage-qna-container,.gengage-simrel-container,.gengage-simbut-root){--ds-neutral-0:#fff;--ds-neutral-25:#fcfcfd;--ds-neutral-50:#f6f7fb;--ds-neutral-100:#f3f4f6;--ds-neutral-200:#e5e7eb;--ds-neutral-300:#d0d5dd;--ds-neutral-500:#667085;--ds-neutral-600:#475467;--ds-neutral-700:#344054;--ds-neutral-900:#111827;--ds-radius-2:8px;--ds-radius-3:12px;--ds-radius-4:16px;--ds-radius-5:20px;--ds-radius-6:24px;--ds-radius-pill:999px;--ds-shadow-1:0 1px 2px #1018280a, 0 1px 3px #1018280f;--ds-shadow-2:0 4px 12px #10182814;--ds-shadow-3:0 10px 24px #1018281f;--client-primary:var(--gengage-primary-color,#b7102a);--client-primary-hover:var(--gengage-primary-hover,color-mix(in srgb, var(--client-primary) 88%, black 12%));--client-primary-active:var(--gengage-primary-active,color-mix(in srgb, var(--client-primary) 78%, black 22%));--client-primary-subtle:color-mix(in srgb, var(--client-primary) 12%, white);--client-primary-soft:color-mix(in srgb, var(--client-primary) 20%, white);--client-on-primary:var(--gengage-primary-foreground,#fff);--client-focus-ring:color-mix(in srgb, var(--client-primary) 32%, transparent);--ai-accent-start:#0b24d6;--ai-accent-end:#f768f2;--ai-accent-soft:linear-gradient(135deg, #0b24d614, #f768f214);--surface-page:var(--gengage-page-bg,var(--ds-neutral-50));--surface-shell:var(--gengage-shell-bg,#10131a);--surface-card:var(--gengage-background-color,var(--ds-neutral-0));--surface-card-muted:var(--gengage-surface-soft,#f8fafc);--surface-card-soft:var(--surface-card-muted);--surface-elevated:var(--gengage-surface-elevated,var(--ds-neutral-0));--surface-input:var(--gengage-input-bg,var(--ds-neutral-0));--surface-overlay:var(--gengage-overlay-bg,#10131a85);--text-primary:var(--gengage-foreground-color,var(--ds-neutral-900));--text-secondary:var(--gengage-text-secondary,#4b5563);--text-muted:var(--gengage-text-muted,#6b7280);--text-inverse:var(--gengage-text-inverse,#f9fafb);--border-subtle:var(--gengage-border-subtle,#1118270f);--border-default:var(--gengage-border-color,#1118271a);--border-strong:var(--gengage-border-strong,#1118272e);--shadow-1:var(--gengage-shadow-1,var(--ds-shadow-1));--shadow-2:var(--gengage-shadow-2,var(--ds-shadow-2));--shadow-3:var(--gengage-shadow-3,var(--ds-shadow-3));--radius-control:var(--gengage-control-radius,var(--ds-radius-3));--radius-card:var(--gengage-card-radius,var(--ds-radius-4));--radius-panel:var(--gengage-panel-radius,var(--ds-radius-6));--radius-pill:var(--gengage-pill-radius,var(--ds-radius-pill));--success:var(--gengage-success-color,#16a34a);--warning:var(--gengage-warning-color,#d97706);--error:var(--gengage-error-color,#dc2626);--info:var(--gengage-info-color,#2563eb);--rating:var(--gengage-rating-color,#f5b301);--gengage-primary:var(--client-primary);--gengage-primary-soft:var(--client-primary-soft);--gengage-primary-subtle:var(--client-primary-subtle);--gengage-text-color:var(--text-primary);--gengage-text-secondary:var(--text-secondary);--gengage-hover-color:var(--surface-card-soft);--ds-button-primary-bg:var(--client-primary);--ds-button-primary-bg-hover:var(--client-primary-hover);--ds-button-primary-bg-active:var(--client-primary-active);--ds-button-primary-fg:var(--client-on-primary);--ds-button-primary-border:color-mix(in srgb, var(--client-primary) 82%, black 18%);--ds-button-secondary-bg:var(--surface-card);--ds-button-secondary-bg-hover:var(--client-primary-subtle);--ds-button-secondary-fg:var(--client-primary);--ds-button-secondary-border:color-mix(in srgb, var(--client-primary) 26%, white);--ds-button-ghost-bg:var(--surface-card-muted);--ds-button-ghost-bg-hover:var(--ds-button-ghost-bg);--ds-button-ghost-fg:var(--text-primary);--ds-button-ghost-fg-hover:var(--client-primary);--ds-button-ghost-border:var(--border-default);--ds-button-ghost-border-hover:color-mix(in srgb, var(--client-primary) 18%, white);--ds-panel-bg:var(--surface-card);--ds-panel-border:var(--border-default);--ds-panel-shadow:var(--shadow-1);--ds-panel-radius:var(--radius-panel);--ds-header-bg:var(--surface-card);--ds-header-fg:var(--text-primary);--ds-header-muted:var(--text-muted);--ds-header-border:var(--border-default);--ds-card-bg:var(--surface-card);--ds-card-bg-soft:var(--surface-card-muted);--ds-card-border:var(--border-default);--ds-card-shadow:var(--shadow-1);--ds-card-shadow-hover:var(--shadow-2);--ds-card-radius:var(--radius-card);--ds-card-border-hover:color-mix(in srgb, var(--client-primary) 14%, var(--border-default));--ds-card-bg-hover:color-mix(in srgb, var(--client-primary) 2%, var(--surface-card));--ds-product-card-media-bg:var(--surface-card-muted);--ds-product-card-media-border:var(--border-subtle);--ds-input-bg:var(--surface-input);--ds-input-border:var(--border-default);--ds-input-radius:16px;--ds-input-focus-border:color-mix(in srgb, var(--client-primary) 28%, white);--ds-input-focus-ring:0 0 0 4px var(--client-focus-ring);--ds-input-highlight:inset 0 1px 0 #fff9;--ds-chip-bg:var(--surface-card);--ds-chip-border:var(--border-default);--ds-chip-fg:var(--text-secondary);--ds-chip-bg-hover:var(--surface-card-muted);--ds-chip-bg-active:color-mix(in srgb, var(--client-primary) 8%, white);--ds-chip-border-active:color-mix(in srgb, var(--client-primary) 30%, white);--ds-chip-fg-active:var(--client-primary);--ds-tab-bg:var(--surface-card);--ds-tab-bg-hover:var(--surface-card-muted);--ds-tab-bg-active:color-mix(in srgb, var(--client-primary) 8%, white);--ds-tab-border:var(--border-default);--ds-tab-border-active:color-mix(in srgb, var(--client-primary) 26%, white);--ds-tab-fg:var(--text-secondary);--ds-tab-fg-active:var(--client-primary);--ds-badge-brand-bg:color-mix(in srgb, var(--client-primary) 10%, white);--ds-badge-brand-border:color-mix(in srgb, var(--client-primary) 18%, white);--ds-badge-brand-fg:var(--client-primary);--ds-message-user-bg:color-mix(in srgb, var(--client-primary) 10%, white);--ds-message-user-fg:var(--text-primary);--ds-message-user-border:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));--ds-message-user-shadow:none;--ds-message-assistant-bg:var(--surface-card-soft);--ds-message-assistant-fg:var(--text-primary);--ds-message-assistant-border:var(--border-default);--ds-message-assistant-shadow:none;--ds-message-active-outline:color-mix(in srgb, var(--client-primary) 68%, white);--ds-progress-card-border:var(--border-subtle);--ds-progress-mark-bg:color-mix(in srgb, var(--ai-accent-start) 8%, var(--surface-card));--ds-progress-mark-border:color-mix(in srgb, var(--ai-accent-start) 12%, var(--border-default));--ds-progress-scrollbar-thumb:color-mix(in srgb, var(--text-primary) 18%, transparent);--ds-toast-error-bg:color-mix(in srgb, var(--error) 5%, var(--surface-card));--ds-toast-error-border:color-mix(in srgb, var(--error) 18%, var(--border-default));--ds-toast-error-accent:var(--error);--ds-toast-error-fg:color-mix(in srgb, var(--error) 22%, var(--text-primary));--ds-toast-error-shadow:var(--shadow-3);--ds-comparison-table-bg:var(--surface-card);--ds-comparison-table-border:var(--border-default);--ds-comparison-table-header-bg:var(--surface-card-muted);--ds-comparison-table-header-fg:var(--text-muted);--ds-comparison-table-row-border:var(--border-subtle);--ds-comparison-table-winner-bg:color-mix(in srgb, var(--client-primary) 6%, white);--ds-comparison-table-winner-fg:var(--client-primary)}:where(.gds-panel){background:var(--ds-panel-bg);border:1px solid var(--ds-panel-border);border-radius:var(--ds-panel-radius);box-shadow:var(--ds-panel-shadow)}:where(.gengage-qna-panel,.gengage-chat-panel-topbar,.gengage-chat-chat-header,.gengage-chat-panel-ai-zone>.gengage-chat-ai-top-picks,.gengage-chat-grounding-review){border-color:var(--ds-panel-border)}:where(.gds-btn){border-radius:var(--radius-control);min-height:46px;font:inherit;cursor:pointer;border:0;outline:none;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-weight:700;transition:box-shadow .15s,border-color .15s,background-color .15s,color .15s;display:inline-flex}:where(.gds-btn:hover){transform:none}:where(.gds-btn:focus-visible){outline:2px solid var(--client-focus-ring);outline-offset:2px}:where(.gds-btn:disabled){cursor:not-allowed;opacity:.56;box-shadow:none}:where(.gds-btn-primary){background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg);border:1px solid var(--ds-button-primary-border)}:where(.gds-btn-primary:hover){background:var(--ds-button-primary-bg-hover)}:where(.gds-btn-secondary){background:var(--ds-button-secondary-bg);color:var(--ds-button-secondary-fg);border:1px solid var(--ds-button-secondary-border)}:where(.gds-btn-secondary:hover){background:var(--ds-button-secondary-bg-hover)}:where(.gds-btn-ghost){background:var(--ds-button-ghost-bg);color:var(--ds-button-ghost-fg);border:1px solid var(--ds-button-ghost-border)}:where(.gds-btn-ghost:hover){background:var(--ds-button-ghost-bg-hover);border-color:var(--ds-button-ghost-border-hover);color:var(--ds-button-ghost-fg-hover)}:where(.gds-chip){border-radius:var(--radius-pill);border:1px solid var(--ds-chip-border);background:var(--ds-chip-bg);color:var(--ds-chip-fg);align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}:where(.gds-chip:hover){background:var(--ds-chip-bg-hover);border-color:color-mix(in srgb, var(--client-primary) 16%, var(--ds-chip-border))}:where(.gds-chip:focus-visible){outline:2px solid var(--client-focus-ring);outline-offset:2px}:where(.gds-chip-active){border-color:var(--ds-chip-border-active);background:var(--ds-chip-bg-active);color:var(--ds-chip-fg-active)}:where(.gds-badge){border-radius:var(--radius-pill);letter-spacing:.04em;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}:where(.gds-badge-brand){background:var(--ds-badge-brand-bg);color:var(--ds-badge-brand-fg);border:1px solid var(--ds-badge-brand-border)}:where(.gds-shell-header){background:var(--ds-header-bg);color:var(--ds-header-fg);border-bottom:1px solid var(--ds-header-border);box-shadow:none;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}:where(.gds-shell-header [data-gengage-part=chat-header-powered-by]){color:var(--ds-header-muted)}:where(.gds-icon-btn){border-radius:var(--radius-control);width:42px;min-width:42px;height:42px;min-height:42px;padding:0}:where(.gds-input-shell){border-radius:var(--ds-input-radius);border:1px solid var(--ds-input-border);background:var(--ds-input-bg);min-height:52px;box-shadow:var(--ds-input-highlight);align-items:center;gap:12px;padding:6px 6px 6px 14px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:flex}:where(.gds-input-shell:focus-within){border-color:var(--ds-input-focus-border);box-shadow:var(--ds-input-focus-ring)}:where(.gds-tab){border-radius:var(--radius-pill);border:1px solid var(--ds-tab-border);background:var(--ds-tab-bg);color:var(--ds-tab-fg);align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}:where(.gds-tab:hover){background:var(--ds-tab-bg-hover)}:where(.gds-tab:focus-visible){outline:2px solid var(--client-focus-ring);outline-offset:2px}:where(.gds-tab[aria-selected=true],.gds-tab.is-active){color:var(--ds-tab-fg-active);border-color:var(--ds-tab-border-active);background:var(--ds-tab-bg-active)}:where(.gds-toolbar){flex-wrap:wrap;align-items:center;gap:10px;display:flex}:where(.gds-toolbar-compact){gap:8px}:where(.gds-card){background:var(--ds-card-bg);border:1px solid var(--ds-card-border);border-radius:var(--ds-card-radius);box-shadow:var(--ds-card-shadow);transition:border-color .15s,box-shadow .15s,background-color .15s}:where(.gds-card-interactive),:where(.gds-clickable){cursor:pointer}:where(.gds-card-interactive:hover){background:var(--ds-card-bg-hover);border-color:var(--ds-card-border-hover);box-shadow:var(--ds-card-shadow-hover)}:where(.gds-card-soft){background:var(--ds-card-bg-soft)}:where(.gds-product-card){border-radius:16px}:where(.gds-evidence-card){background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-control);box-shadow:var(--shadow-1)}:where(.gds-evidence-card-success){background:color-mix(in srgb, var(--success) 10%, white);border-color:color-mix(in srgb, var(--success) 22%, var(--border-default))}:where(.gds-evidence-card-danger){background:color-mix(in srgb, var(--error) 8%, white);border-color:color-mix(in srgb, var(--error) 20%, var(--border-default))}:where(.gds-evidence-card-warning){background:color-mix(in srgb, var(--warning) 10%, white);border-color:color-mix(in srgb, var(--warning) 22%, var(--border-default))}:where(.gds-message){border-radius:calc(var(--radius-control) + 4px);word-wrap:break-word;overflow-wrap:break-word;border:1px solid #0000;max-width:85%;padding:14px 16px;font-size:14px;font-weight:400;line-height:1.55;animation:.3s cubic-bezier(.2,.7,.2,1) gengage-chat-msg-in}:where(.gds-message-user){background:var(--ds-message-user-bg);color:var(--ds-message-user-fg);border-color:var(--ds-message-user-border);box-shadow:var(--ds-message-user-shadow);border-bottom-right-radius:6px;align-self:flex-end}:where(.gds-message-assistant){background:var(--ds-message-assistant-bg);color:var(--ds-message-assistant-fg);border-color:var(--ds-message-assistant-border);box-shadow:var(--ds-message-assistant-shadow);border-bottom-left-radius:6px;align-self:flex-start;min-width:120px}:where(.gds-message-active){outline:2px solid var(--ds-message-active-outline);outline-offset:-2px}:where(.gds-ai-card){background:var(--surface-card);border:1px solid var(--ds-progress-card-border);border-radius:20px;gap:16px;padding:18px;display:grid}:where(.gds-ai-mark){background:var(--ds-progress-mark-bg);width:42px;height:42px;color:var(--ai-accent-start);border:1px solid var(--ds-progress-mark-border);border-radius:14px;place-items:center;display:grid}:where(.gds-ai-loader-row){align-items:center;gap:12px;display:flex}:where(.gds-progress-loader){border:1px solid color-mix(in srgb, var(--ai-accent-start) 10%, var(--border-default));background:linear-gradient(110deg, var(--surface-card-soft) 8%, color-mix(in srgb, var(--ai-accent-start) 5%, var(--surface-card)) 18%, var(--surface-card-soft) 33%);width:fit-content;max-width:100%;color:var(--text-secondary);background-size:220% 100%;border-radius:14px;align-items:center;gap:10px;padding:8px 14px;animation:1.8s linear infinite gds-progress-shimmer;display:inline-flex}:where(.gds-progress-loader-chat){box-sizing:border-box;align-self:flex-start;width:100%;min-width:0;max-width:85%;display:flex}:where(.gds-progress-loader-chat) .gds-progress-label{overflow-wrap:anywhere;flex:auto;min-width:0}:where(.gds-progress-loader-panel){box-sizing:border-box;justify-content:flex-start;align-items:center;width:100%;min-width:0;max-width:100%;display:flex}:where(.gds-progress-loader-panel) .gds-progress-label{overflow-wrap:anywhere;flex:auto;min-width:0}:where(.gds-progress-label){min-width:0;color:var(--text-secondary);word-break:break-word;font-size:13px;line-height:1.5}:where(.gds-progress-dots){flex-shrink:0;align-items:center;gap:6px;display:inline-flex}:where(.gds-progress-dot){background:color-mix(in srgb, var(--ai-accent-start) 20%, var(--text-muted));border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite gds-progress-dot-pulse;display:inline-block}:where(.gds-progress-dot:nth-child(2)){animation-delay:.2s}:where(.gds-progress-dot:nth-child(3)){animation-delay:.4s}:where(.gds-ai-status){border-radius:calc(var(--radius-control) + 2px);border:1px solid var(--border-default);background:var(--surface-card-muted);max-width:85%;color:var(--text-secondary);border-bottom-left-radius:6px;align-self:flex-start;align-items:center;gap:8px;padding:10px 14px;display:flex}:where(.gds-ai-status-text){color:var(--text-secondary);font-size:13px;font-style:italic}:where(.gds-ai-dot-loader){align-items:center;gap:5px;display:inline-flex}:where(.gds-ai-dot-loader span){background:color-mix(in srgb, var(--ai-accent-start) 38%, var(--text-muted));border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite gds-progress-dot-pulse;display:inline-block}:where(.gds-ai-dot-loader span:nth-child(2)){animation-delay:.2s}:where(.gds-ai-dot-loader span:nth-child(3)){animation-delay:.4s}:where(.gds-ai-spinner){border:2.5px solid var(--border-default);border-top-color:var(--ai-accent-start);border-radius:50%;flex-shrink:0;width:26px;height:26px;animation:.72s linear infinite gds-spin}@keyframes gds-spin{to{transform:rotate(360deg)}}@keyframes gds-progress-shimmer{0%{background-position:200% 0}to{background-position:-20% 0}}@keyframes gds-progress-dot-pulse{0%,to{opacity:.45;transform:scale(.7)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){:where(.gds-progress-loader){animation:none}:where(.gds-progress-dot){opacity:.85;animation:none;transform:scale(1)}:where(.gds-ai-spinner){animation:none}:where(.gds-ai-dot-loader span){opacity:.85;animation:none}}:where(.gds-menu){border-radius:var(--radius-card);border:1px solid var(--border-default);background:var(--surface-elevated);box-shadow:var(--shadow-3);padding:4px}:where(.gds-menu-option){border-radius:calc(var(--radius-control) - 4px);width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.25;transition:background-color .15s,color .15s;display:flex}:where(.gds-menu-option:hover){background:var(--surface-card-muted)}:where(.gds-menu-option:focus-visible){outline:2px solid var(--client-focus-ring);outline-offset:2px}:where(.gds-menu-option-active){background:var(--client-primary-subtle);color:var(--client-primary);font-weight:600}:where(.gds-comparison-table){border-collapse:separate;border-spacing:0;border:1px solid var(--ds-comparison-table-border);background:var(--ds-comparison-table-bg);border-radius:20px;width:100%;overflow:hidden}:where(.gds-comparison-table th,.gds-comparison-table td){text-align:left;border-bottom:1px solid var(--ds-comparison-table-row-border);padding:14px 16px;font-size:13px}:where(.gds-comparison-table th){background:var(--ds-comparison-table-header-bg);text-transform:uppercase;letter-spacing:.08em;color:var(--ds-comparison-table-header-fg);font-size:11px}:where(.gds-comparison-table tr:last-child td){border-bottom:0}:where(.gds-comparison-table-winner-cell){background:var(--ds-comparison-table-winner-bg);color:var(--ds-comparison-table-winner-fg);font-weight:800}:host{all:initial;font-family:var(--gengage-font-family,"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:var(--gengage-font-size,14px)}.gengage-chat-root button,.gengage-chat-root [role=button],.gengage-chat-root a{cursor:pointer}.gengage-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gengage-chat-root{z-index:var(--gengage-z-index,2147480000);--_gengage-chat-offset:var(--gengage-chat-offset,20px);--_gengage-chat-launcher-bottom:var(--gengage-chat-launcher-bottom,20px);--_gengage-chat-launcher-right:var(--gengage-chat-launcher-right,20px);--_gengage-chat-launcher-width:var(--gengage-chat-launcher-width,56px);--_gengage-chat-launcher-height:var(--gengage-chat-launcher-height,56px);--_gengage-chat-launcher-mobile-width:var(--gengage-chat-launcher-mobile-width,var(--_gengage-chat-launcher-width));--_gengage-chat-launcher-mobile-height:var(--gengage-chat-launcher-mobile-height,var(--_gengage-chat-launcher-height));--_gengage-chat-drawer-width:var(--gengage-chat-width,400px);--_gengage-chat-radius:var(--gengage-chat-shell-radius,1rem);--_gengage-chat-header-height:var(--gengage-chat-header-height,72px);--_gengage-chat-conversation-width:var(--gengage-chat-conversation-width,396px);--_gengage-chat-panel-min-width:var(--gengage-chat-panel-min-width,320px);--_gengage-chat-panel-max-width:var(--gengage-chat-panel-max-width,1200px);--_gengage-chat-input-height:var(--gengage-chat-input-height,48px);--_gengage-chat-shadow:var(--gengage-chat-shadow,var(--shadow-3));--_gengage-border-color:var(--border-default);--_gengage-discount-color:var(--gengage-discount-color,var(--client-primary));--_gengage-campaign-reason-start:var(--gengage-campaign-reason-color,var(--client-primary));--_gengage-campaign-reason-end:var(--gengage-campaign-reason-color-end,var(--gengage-campaign-reason-color,var(--client-primary)));--_gengage-success-color:var(--success);--_gengage-text-primary:var(--text-primary);--_gengage-text-secondary:var(--text-secondary);--_gengage-surface-secondary:var(--surface-card-soft);--_gengage-surface-muted:var(--surface-card-soft);--_gengage-surface-dark:var(--surface-shell);--_gengage-rating-color:var(--rating);--_gengage-error:var(--error);--_gengage-danger-color:var(--error);--_gengage-ghost-border:var(--gengage-ghost-border,color-mix(in srgb, var(--client-primary) 16%, transparent));position:fixed}.gengage-chat-backdrop{z-index:0;pointer-events:none;cursor:pointer;box-sizing:border-box;-webkit-tap-highlight-color:transparent;background:0 0;border:none;margin:0;padding:0;display:none;position:fixed;inset:0}.gengage-chat-root--open:not(.gengage-chat--inline) .gengage-chat-backdrop{pointer-events:none;background:var(--gengage-chat-float-backdrop,transparent);display:block}.gengage-chat-root--open.gengage-chat-root--maximized-host-chrome:not(.gengage-chat--inline) .gengage-chat-backdrop{pointer-events:auto;background:var(--gengage-chat-float-backdrop,color-mix(in srgb, var(--surface-overlay) 72%, transparent))}.gengage-chat-root.gengage-chat--overlay.gengage-chat-root--open .gengage-chat-backdrop{background:var(--gengage-chat-overlay-backdrop,var(--surface-overlay));pointer-events:auto}.gengage-chat-launcher-container{bottom:var(--gengage-chat-launcher-anchor-bottom,var(--_gengage-chat-launcher-bottom));right:var(--gengage-chat-launcher-anchor-right,var(--_gengage-chat-launcher-right));z-index:var(--gengage-z-index,2147480000);transition:bottom var(--gengage-chat-launcher-anchor-transition,0s) ease, right var(--gengage-chat-launcher-anchor-transition,0s) ease;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed}.gengage-chat-launcher-content-area,.gengage-chat-launcher-content-area-bottom{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.gengage-chat-launcher-content-area:empty,.gengage-chat-launcher-content-area-bottom:empty,.gengage-chat-root--open .gengage-chat-launcher-content-area,.gengage-chat-root--open .gengage-chat-launcher-content-area-bottom{display:none}.gengage-chat-root--open .gengage-chat-launcher-container{pointer-events:none;opacity:0;transition:opacity .2s}.gengage-chat-launcher{width:var(--_gengage-chat-launcher-width);height:var(--_gengage-chat-launcher-height);border:1px solid var(--ds-button-primary-border);background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg);cursor:pointer;box-shadow:var(--shadow-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s;display:flex;position:relative}.gengage-chat-launcher:hover{box-shadow:var(--shadow-3);transform:none}.gengage-chat-launcher svg{width:28px;height:28px}.gengage-chat-launcher--image-mode{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0;overflow:hidden}.gengage-chat-launcher--image-mode:hover{box-shadow:none}.gengage-chat-launcher--image-mode img{object-fit:contain;width:100%;height:100%}.gengage-chat-launcher-img--mobile,.gengage-chat-root--mobile .gengage-chat-launcher-img--desktop{display:none}.gengage-chat-root--mobile .gengage-chat-launcher-img--mobile{display:block}.gengage-chat-launcher--hidden-mobile{display:none!important}.gengage-chat-launcher-tooltip{border-radius:var(--radius-control);background:var(--surface-shell);color:var(--text-inverse);white-space:nowrap;opacity:0;pointer-events:none;box-shadow:var(--shadow-2);padding:6px 12px;font-size:13px;font-weight:500;transition:opacity .2s;position:absolute;top:50%;right:calc(100% + 12px);transform:translateY(-50%)}.gengage-chat-launcher-tooltip:after{content:"";border:5px solid #0000;border-left-color:var(--surface-shell);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.gengage-chat-launcher:hover .gengage-chat-launcher-tooltip{opacity:1}.gengage-chat-root--open .gengage-chat-launcher-tooltip{display:none}.gengage-chat-drawer{width:var(--_gengage-chat-drawer-width);background:var(--surface-elevated,var(--surface-card));border-left:1px solid var(--border-default);max-height:100dvh;box-shadow:var(--_gengage-chat-shadow);z-index:var(--gengage-z-index,2147480000);opacity:1;border-radius:0;flex-direction:column;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .2s;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;transform:translate(0)}.gengage-chat-root--mobile .gengage-chat-launcher-container{right:var(--gengage-chat-launcher-anchor-right,var(--gengage-chat-launcher-mobile-right,16px));bottom:calc(var(--gengage-chat-launcher-anchor-bottom,var(--gengage-chat-launcher-mobile-bottom,16px)) + env(safe-area-inset-bottom,0px))}.gengage-chat-root--mobile .gengage-chat-launcher{width:var(--_gengage-chat-launcher-mobile-width);height:var(--_gengage-chat-launcher-mobile-height)}.gengage-chat-root--mobile .gengage-chat-drawer{border:1px solid var(--border-default);width:100%;max-width:none;max-height:100dvh;box-shadow:var(--shadow-3);padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface-elevated,var(--surface-card));border-bottom:none;border-radius:16px 16px 0 0;bottom:0;left:0;right:0}.gengage-chat-drawer-handle{display:none}.gengage-chat-root--mobile .gengage-chat-drawer-handle{pointer-events:none;z-index:1;justify-content:center;align-items:center;height:14px;display:flex;position:absolute;top:6px;left:0;right:0}.gengage-chat-root--mobile .gengage-chat-header{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.gengage-chat-root--mobile .gengage-chat-header button,.gengage-chat-root--mobile .gengage-chat-header a{cursor:pointer;touch-action:auto;-webkit-user-select:auto;user-select:auto}.gengage-chat-root--mobile .gengage-chat-drawer-handle:before{content:"";background:var(--border-strong);pointer-events:none;border-radius:999px;width:36px;height:4px}.gengage-chat-root--mobile.gengage-chat-root--mobile-half .gengage-chat-drawer{height:min(72dvh,620px);max-height:min(72dvh,620px);top:auto}.gengage-chat-root--mobile.gengage-chat-root--mobile-full .gengage-chat-drawer{top:var(--gengage-chat-visual-top,0px);height:var(--gengage-chat-visual-vh,100dvh);max-height:var(--gengage-chat-visual-vh,100dvh);border-radius:0;bottom:auto}.gengage-chat-root--mobile .gengage-chat-input-area{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-default)}.gengage-chat-header{box-sizing:border-box;height:var(--_gengage-chat-header-height);background:var(--gengage-chat-header-bg,var(--ds-header-bg));color:var(--gengage-chat-header-foreground,var(--ds-header-fg));box-shadow:none;border-bottom:1px solid var(--gengage-chat-header-border-bottom,var(--ds-header-border));z-index:2;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex;position:relative}.gengage-chat-header-left{align-items:center;gap:10px;min-width:0;display:flex}.gengage-chat-header-avatar{background:var(--surface-card-soft);border:1px solid var(--border-default);object-fit:contain;border-radius:999px;flex-shrink:0;width:44px;height:44px}.gengage-chat-header-avatar--logo{object-fit:contain;background:0 0;border:none;border-radius:0;width:auto;max-width:92px;height:45px}.gengage-chat-header-info{flex-direction:column;gap:2px;min-width:0;display:flex}.gengage-chat-header-title-row{align-items:center;gap:6px;min-width:0;display:flex}.gengage-chat-header-title{letter-spacing:.01em;color:inherit;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:16px;font-weight:700;line-height:1.25;display:block;overflow:hidden}.gengage-chat-header-badge{border-radius:var(--radius-pill);background:var(--ds-badge-brand-bg);min-height:26px;color:var(--ds-badge-brand-fg);border:1px solid var(--ds-badge-brand-border);letter-spacing:.04em;text-transform:uppercase;align-items:center;padding:0 10px;font-size:10px;font-weight:800;line-height:1.5;display:inline-flex}.gengage-chat-header-powered{color:var(--ds-header-muted);align-items:center;gap:4px;font-size:11px;line-height:1.2;text-decoration:none;transition:color .15s;display:flex}.gengage-chat-header-powered:hover{color:var(--client-primary)}.gengage-chat-header-powered svg{opacity:.6;flex-shrink:0;width:12px;height:12px}.gengage-chat-header-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.gengage-chat-header-btn{border-radius:var(--radius-control,12px);background:var(--surface-card-soft);border:1px solid var(--border-default);width:42px;height:42px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;line-height:1;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}@media (width<=374px){.gengage-chat-header{gap:8px;padding:10px}.gengage-chat-header-right{flex-shrink:1;gap:4px;min-width:0}.gengage-chat-header-btn{width:34px;min-width:34px;height:34px;min-height:34px}}.gengage-chat-header-btn:hover{background:var(--client-primary-subtle);color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 18%, white)}.gengage-chat-header-btn--fav{position:relative}.gengage-chat-header-btn--reopen-panel,.gengage-chat-root--mobile .gengage-chat-new-chat{display:none}.gengage-chat-header-fav-badge{background:var(--error);min-width:16px;height:16px;color:var(--text-inverse);text-align:center;pointer-events:none;border-radius:999px;padding:0 3px;font-size:9px;font-weight:700;line-height:16px;position:absolute;top:-4px;right:-4px}.gengage-chat-close{border-radius:var(--radius-control,12px);background:var(--surface-card-soft);border:1px solid var(--border-default);width:42px;min-width:42px;height:42px;min-height:42px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;font-size:18px;line-height:1;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.gengage-chat-close:hover{background:var(--client-primary-subtle);color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 18%, white)}.gengage-chat-body{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.gengage-chat-panel{width:0;transition:width .22s cubic-bezier(.2,.72,.2,1);display:none;overflow:hidden}.gengage-chat-panel--visible{box-sizing:border-box;background:var(--gengage-chat-panel-bg,var(--surface-card));border-right:1px solid var(--border-default);scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text-muted) 24%, transparent) transparent;flex-direction:column;width:440px;min-width:440px;padding:16px;display:flex;position:relative;overflow-y:auto}.gengage-chat-panel--visible::-webkit-scrollbar{width:6px}.gengage-chat-panel--visible::-webkit-scrollbar-track{background:0 0}.gengage-chat-panel--visible::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text-muted) 24%, transparent);border-radius:3px}.gengage-chat-panel--visible::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--text-muted) 36%, transparent)}.gengage-chat-panel-ai-zone{box-sizing:border-box;border-bottom:1px solid var(--border-subtle);flex-shrink:0;width:100%;max-height:min(42vh,320px);margin-bottom:4px;padding:8px 0 12px;overflow:auto}.gengage-chat-panel-ai-zone:has(.gengage-chat-grouping-cards){max-height:min(52vh,520px)}.gengage-chat-panel-ai-zone:has(.gengage-chat-ai-top-picks){max-height:none;overflow:visible}.gengage-chat-panel-ai-zone[hidden]{display:none!important}.gengage-chat-panel-ai-zone-inner{align-items:center;gap:10px;display:flex}.gengage-chat-panel-ai-zone-text{color:var(--text-muted);font-size:13px}.gengage-chat-grouping-section-title{display:none}.gengage-chat-panel-ai-zone .gengage-chat-grouping-section-title{width:100%;color:var(--text-primary);letter-spacing:-.01em;flex-shrink:0;align-self:stretch;margin:0 0 10px;font-size:15px;font-weight:700;display:block}.gengage-chat-panel-ai-zone .gengage-chat-grouping-cards{flex-direction:column;align-items:stretch;gap:0;width:100%;min-width:0;max-height:none;display:flex}.gengage-chat-panel-ai-zone .gengage-chat-grouping-cards-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-flow:row;align-items:stretch;gap:10px;width:100%;min-width:0;margin:0 -2px;padding:2px 2px 10px;display:flex;overflow:auto hidden}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card{box-sizing:border-box;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-card);width:136px;min-width:136px;max-width:150px;box-shadow:var(--shadow-1);flex-direction:column;flex:none;align-items:stretch;gap:8px;padding:12px 10px 14px}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card:hover{border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));box-shadow:var(--shadow-2)}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-arrow{display:none}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-img{object-fit:cover;border-radius:8px;width:100%;min-width:0;max-width:88px;height:72px;min-height:72px;margin:0 auto}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-body{text-align:center;flex-direction:column;align-items:center;gap:4px;width:100%}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-name{font-size:13px;font-weight:700;line-height:1.25}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-desc{color:var(--text-muted);font-size:11px;line-height:1.3}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-labels{white-space:normal;text-overflow:unset;justify-content:center;margin-top:2px;line-height:1.35;overflow:visible}.gengage-chat-panel-divider{cursor:pointer;background:var(--_gengage-border-color);z-index:2;flex-shrink:0;align-items:center;width:4px;transition:background .15s;display:flex;position:relative}.gengage-chat-panel-divider:hover{background:var(--border-strong)}.gengage-chat-panel-divider--hidden{display:none}.gengage-chat-panel-divider-toggle{border:1px solid var(--_gengage-border-color);background:var(--surface-card);cursor:pointer;width:28px;height:48px;color:var(--text-secondary);box-shadow:var(--shadow-1);border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;transition:background .15s,color .15s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gengage-chat-panel-divider-toggle:hover{background:var(--surface-card-muted);color:var(--client-primary)}.gengage-chat-panel.gengage-chat-panel--collapsed{border-right:none;flex:0 0 0;width:0;min-width:0;max-width:0;padding:0;overflow:hidden}.gengage-chat-panel--collapsed~.gengage-chat-panel-divider{background:0 0;width:0}.gengage-chat-panel--collapsed~.gengage-chat-panel-divider .gengage-chat-panel-divider-toggle{left:50%;transform:translate(-50%,-50%)}.gengage-chat-conversation{background:var(--surface-card);z-index:1;flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.gengage-chat-drawer--with-panel{width:auto;box-shadow:none;background:0 0;overflow:visible}.gengage-chat-drawer--with-panel .gengage-chat-header{border-radius:0;flex-shrink:0}.gengage-chat-drawer--with-panel .gengage-chat-body{flex:1 1 0;align-items:stretch;gap:0;min-height:0;padding:0;overflow:visible}.gengage-chat-drawer--with-panel .gengage-chat-panel--visible{width:clamp(var(--_gengage-chat-panel-min-width), 56vw, var(--_gengage-chat-panel-max-width));min-width:var(--_gengage-chat-panel-min-width);max-width:var(--_gengage-chat-panel-max-width);background:var(--gengage-chat-panel-bg,var(--surface-card));box-shadow:none;border-right:none;border-radius:0;flex:none;max-height:100dvh;margin:0;padding:0 16px 16px;overflow-y:auto}.gengage-chat-drawer--with-panel .gengage-chat-panel-divider{background:0 0;width:0}.gengage-chat-drawer--with-panel .gengage-chat-panel-divider-toggle{background:var(--surface-card);width:20px;height:48px;color:var(--client-primary);border:1px solid color-mix(in srgb, var(--client-primary) 20%, var(--border-default));box-shadow:var(--shadow-1);z-index:10;border-radius:10px;font-size:12px}.gengage-chat-drawer--with-panel .gengage-chat-panel-divider-toggle:hover{background:var(--client-primary-subtle);color:var(--client-primary)}.gengage-chat-drawer--with-panel .gengage-chat-conversation{flex:0 0 var(--_gengage-chat-conversation-width);width:var(--_gengage-chat-conversation-width);background:var(--surface-card);box-shadow:var(--shadow-2);border-left:none}.gengage-chat-drawer--with-panel .gengage-chat-messages{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text-muted) 22%, transparent) transparent;padding-right:6px}.gengage-chat-drawer--with-panel .gengage-chat-messages::-webkit-scrollbar{width:0}.gengage-chat-drawer--with-panel .gengage-chat-panel.gengage-chat-panel--collapsed{flex:0 0 0;width:0;min-width:0;max-width:0;padding:0;overflow:hidden}.gengage-chat-drawer--with-panel:has(.gengage-chat-panel--collapsed){width:var(--_gengage-chat-conversation-width);background:var(--surface-elevated,var(--surface-card));box-shadow:var(--_gengage-chat-shadow)}.gengage-chat-drawer--with-panel .gengage-chat-footer{display:none}.gengage-chat-messages{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;flex-direction:column;flex:1;gap:16px;min-height:0;padding:16px;display:flex;overflow-y:auto}.gengage-chat-messages::-webkit-scrollbar{width:6px}.gengage-chat-messages::-webkit-scrollbar-track{background:0 0}.gengage-chat-messages::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text-muted) 22%, transparent);border-radius:3px}.gengage-chat-messages::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--text-muted) 36%, transparent)}.gengage-chat-bubble--presentation-collapsed{display:none!important}.gengage-chat-former-messages-btn{z-index:2;border-radius:var(--radius-pill);border:1px solid var(--ds-chip-border);background:color-mix(in srgb, var(--surface-card) 96%, transparent);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-1);flex-shrink:0;align-self:center;margin-bottom:4px;padding:8px 14px;font-size:13px;font-weight:600;position:sticky;top:0}.gengage-chat-former-messages-btn:hover{background:var(--surface-card-muted)}.gengage-chat-bubble--panel-bookmark{max-width:72%;margin-top:-6px}.gengage-chat-inline-panel-bookmark-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;font-size:11px;font-weight:700}.gengage-chat-inline-panel-bookmark-card{border:1px solid color-mix(in srgb, var(--client-primary) 38%, var(--border-default));background:color-mix(in srgb, var(--surface-card) 94%, transparent);text-align:left;width:100%;color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-1);border-radius:18px;flex-direction:column;align-items:flex-start;gap:10px;padding:12px;transition:transform .16s,border-color .16s,box-shadow .16s,background-color .16s;display:flex}.gengage-chat-inline-panel-bookmark-card:hover{border-color:color-mix(in srgb, var(--client-primary) 52%, var(--border-default));box-shadow:var(--shadow-2);transform:translateY(-1px)}.gengage-chat-inline-panel-bookmark-card--active{background:color-mix(in srgb, var(--client-primary-subtle) 42%, var(--surface-card))}.gengage-chat-inline-panel-bookmark-previews{gap:8px;display:flex}.gengage-chat-inline-panel-bookmark-preview{background:color-mix(in srgb, var(--surface-card-muted) 70%, var(--surface-card));border:1px solid color-mix(in srgb, var(--border-default) 74%, transparent);border-radius:14px;flex:none;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex;overflow:hidden}.gengage-chat-inline-panel-bookmark-preview-img{object-fit:cover;width:100%;height:100%;display:block}.gengage-chat-inline-panel-bookmark-preview-fallback{color:var(--text-primary);font-size:13px;font-weight:700}.gengage-chat-inline-panel-bookmark-title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.gengage-chat-inline-panel-bookmark-cta{color:var(--client-primary);font-size:13px;font-weight:700}@media (width<=768px){.gengage-chat-bubble--panel-bookmark{display:none!important}}.gengage-chat-bubble{position:relative}@keyframes gengage-chat-msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.gengage-chat-bubble--user{max-width:85%}.gengage-chat-bubble--assistant{max-width:85%;margin-left:2px}.gengage-chat-bubble--ui-spec{box-shadow:none;background:0 0;border:none;min-width:0;padding:0}.gengage-chat-bubble--ui-spec-only{max-width:min(85%,420px)}.gengage-chat-bubble-ui-spec{width:100%}.gengage-chat-bubble--active{outline:2px solid var(--ds-message-active-outline);outline-offset:-2px}.gengage-chat-bubble--assistant:empty{display:none}.gengage-chat-bubble--assistant .gengage-chat-bubble-text a{color:var(--client-primary);text-decoration:underline}.gengage-chat-bubble--assistant .gengage-chat-bubble-text a:hover{text-decoration:none}.gengage-chat-bubble--assistant .gengage-chat-bubble-text p{margin:0 0 8px}.gengage-chat-bubble--assistant .gengage-chat-bubble-text p:last-child{margin-bottom:0}.gengage-chat-bubble--assistant .gengage-chat-bubble-text ul,.gengage-chat-bubble--assistant .gengage-chat-bubble-text ol{margin:6px 0;padding-left:20px}.gengage-chat-bubble--assistant .gengage-chat-bubble-text li{margin-bottom:6px;line-height:1.5}.gengage-chat-bubble--assistant .gengage-chat-bubble-text code{background:color-mix(in srgb, var(--text-primary) 8%, transparent);border-radius:6px;padding:1px 4px;font-size:.9em}.gengage-chat-bubble--assistant .gengage-chat-bubble-text pre{background:color-mix(in srgb, var(--surface-card) 78%, var(--surface-card-soft));border:1px solid var(--border-subtle);border-radius:12px;margin:4px 0;padding:10px 12px;overflow-x:auto}.gengage-chat-bubble--assistant .gengage-chat-bubble-text table{border-collapse:collapse;margin:4px 0;font-size:.9em}.gengage-chat-bubble--assistant .gengage-chat-bubble-text th,.gengage-chat-bubble--assistant .gengage-chat-bubble-text td{border:1px solid var(--border-default);padding:4px 8px}.gengage-chat-bubble--assistant .gengage-chat-bubble-text img{border-radius:12px;max-width:100%;height:auto;margin:4px 0}.gengage-chat-bubble--assistant .gengage-chat-bubble-text h1,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h2,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h3,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h4,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h5,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h6{color:var(--text-primary);margin:8px 0 4px;line-height:1.3}.gengage-chat-bubble--assistant .gengage-chat-bubble-text blockquote{border-left:3px solid var(--border-default);color:var(--text-secondary);margin:4px 0;padding-left:12px}.gengage-chat-bubble--assistant .gengage-chat-bubble-text{overflow-wrap:break-word}.gengage-chat-bubble--photo-analysis{border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default));background:linear-gradient(165deg, color-mix(in srgb, var(--surface-card-soft) 80%, white), var(--surface-card))}.gengage-chat-photo-analysis-card{flex-direction:column;gap:10px;display:flex}.gengage-chat-photo-analysis-badge{letter-spacing:.02em;color:var(--client-primary);background:color-mix(in srgb, var(--client-primary) 14%, white);border:1px solid color-mix(in srgb, var(--client-primary) 24%, var(--border-default));border-radius:999px;align-self:flex-start;padding:4px 10px;font-size:11px;font-weight:800}.gengage-chat-photo-analysis-body{flex-direction:column;gap:12px;display:flex}.gengage-chat-photo-analysis-summary{color:var(--text-primary);margin:0;font-size:14px;line-height:1.55}.gengage-chat-photo-analysis-highlights{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.gengage-chat-photo-analysis-section{border:1px solid color-mix(in srgb, var(--client-primary) 14%, var(--border-default));background:color-mix(in srgb, var(--surface-card-soft) 78%, white);border-radius:14px;flex-direction:column;gap:8px;padding:12px;display:flex}.gengage-chat-photo-analysis-section--celeb{gap:6px}.gengage-chat-photo-analysis-section-title{letter-spacing:.03em;text-transform:uppercase;color:var(--text-secondary);margin:0;font-size:12px;font-weight:800}.gengage-chat-photo-analysis-section-list{color:var(--text-primary);gap:6px;margin:0;padding-left:18px;font-size:13px;line-height:1.5;display:grid}.gengage-chat-photo-analysis-section-item{margin:0}.gengage-chat-photo-analysis-celeb-name{color:var(--text-primary);margin:0;font-size:15px;font-weight:800;line-height:1.35}.gengage-chat-photo-analysis-celeb-reason{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.gengage-chat-photo-analysis-next{background:color-mix(in srgb, var(--client-primary) 9%, white);color:var(--text-primary);border-radius:12px;margin:0;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.45}.gengage-chat-bubble--first{border-left:1px solid var(--ds-message-assistant-border)}.gengage-chat-bubble--first .gengage-chat-bubble-text{font-size:inherit}@media (width<=768px){.gengage-chat-bubble--assistant .gengage-chat-bubble-text{line-height:1.5}.gengage-chat-bubble--user{word-break:break-word;max-width:calc(100% - 16px)}}.gengage-chat-typing{align-self:flex-start;max-width:85%}.gengage-chat-typing-dots{flex-shrink:0}.gengage-chat-typing-text{flex:1;min-width:0}.gengage-chat-panel-loading-status{margin-bottom:16px}.gengage-chat-panel-loading-status.gds-progress-loader-panel{box-sizing:border-box;min-width:0;max-width:100%}.gengage-chat-root--mobile .gengage-chat-panel-loading-status.gds-progress-loader-panel{max-width:100%}.gengage-chat-root--mobile .gengage-chat-panel-loading-status .gengage-chat-panel-loading-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.gengage-chat-offline-bar{color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));background:color-mix(in srgb, var(--warning) 10%, white);border-bottom:1px solid color-mix(in srgb, var(--warning) 22%, var(--border-default));align-items:center;gap:6px;padding:6px 12px;font-size:12px;line-height:1.4;display:none}.gengage-chat-offline-bar--visible{display:flex}.gengage-chat-offline-bar:before{content:"";background:var(--_gengage-rating-color);border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.gengage-chat-thinking-steps{flex-direction:column;gap:4px;padding:4px 0;display:flex}.gengage-chat-thinking-step{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;display:flex}.gengage-chat-thinking-step-marker{text-align:center;flex-shrink:0;width:16px;font-size:12px}.gengage-chat-thinking-step-marker--done{color:var(--_gengage-success-color)}.gengage-chat-thinking-step-marker--active{color:var(--ai-accent-start);animation:1.5s ease-in-out infinite gengage-thinking-pulse}@keyframes gengage-thinking-pulse{0%,to{opacity:1}50%{opacity:.4}}.gengage-chat-thinking-step-text{line-height:1.4}.gengage-chat-error{border-radius:var(--radius-control);background:color-mix(in srgb, var(--error) 10%, white);color:color-mix(in srgb, var(--error) 84%, var(--text-primary));text-align:center;border:1px solid color-mix(in srgb, var(--error) 22%, var(--border-default));justify-content:center;align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.gengage-chat-error-retry{border:1px solid color-mix(in srgb, var(--error) 24%, var(--border-default));border-radius:var(--radius-control);background:var(--surface-card);color:color-mix(in srgb, var(--error) 84%, var(--text-primary));cursor:pointer;flex-shrink:0;padding:4px 12px;font-size:12px;font-weight:500;transition:background .15s,border-color .15s}.gengage-chat-error-retry:hover{background:color-mix(in srgb, var(--error) 8%, white);border-color:color-mix(in srgb, var(--error) 32%, var(--border-default))}.gengage-chat-input-area{border-top:1px solid var(--border-subtle);background:var(--surface-card);z-index:2;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:0;padding:10px 12px 12px;display:flex;position:relative}.gengage-chat-input-pill{--gengage-chat-input-control-size:40px;--gengage-chat-input-shell-pad:6px;--gengage-chat-input-shell-radius:18px;--gengage-chat-input-control-radius:12px;min-width:0;min-height:calc(var(--gengage-chat-input-control-size) + (var(--gengage-chat-input-shell-pad) * 2));background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--gengage-chat-input-shell-radius);padding:var(--gengage-chat-input-shell-pad);box-sizing:border-box;box-shadow:none;flex:1;align-items:center;gap:10px;transition:border-color .2s,box-shadow .2s;display:flex;overflow:visible}.gengage-chat-input-pill:focus-within{border-color:color-mix(in srgb, var(--client-primary) 28%, white);box-shadow:0 0 0 4px var(--client-focus-ring)}.gengage-chat-input{box-sizing:border-box;min-width:0;min-height:40px;max-height:120px;color:var(--_gengage-text-primary);resize:none;background:0 0;border:none;border-radius:0;outline:none;flex:1;padding:10px 0;font-family:inherit;font-size:14px;line-height:1.4;overflow-y:hidden}.gengage-chat-root--mobile .gengage-chat-input-pill{--gengage-chat-input-control-size:44px;--gengage-chat-input-shell-radius:20px;--gengage-chat-input-control-radius:14px;min-height:calc(var(--gengage-chat-input-control-size) + (var(--gengage-chat-input-shell-pad) * 2))}.gengage-chat-root--mobile .gengage-chat-input{white-space:nowrap;min-height:44px;max-height:44px;padding-block:11px;font-size:16px;overflow:hidden}.gengage-chat-input::placeholder{color:var(--text-muted);font-size:14px;line-height:normal}.gengage-chat-send{width:var(--gengage-chat-input-control-size,40px);height:var(--gengage-chat-input-control-size,40px);min-width:var(--gengage-chat-input-control-size,40px);border:1px solid var(--ds-button-primary-border);border-radius:var(--gengage-chat-input-control-radius,12px);background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg);cursor:pointer;box-shadow:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:0;font-weight:700;transition:background-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s,transform .15s;display:flex;position:relative}.gengage-chat-send:hover{background:var(--ds-button-primary-bg-hover);box-shadow:none;transform:none}.gengage-chat-send:active{box-shadow:none;transform:translateY(0)}.gengage-chat-send svg{width:18px;height:18px}.gengage-chat-send--stop{background:var(--surface-card-soft);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));color:var(--text-primary)}.gengage-chat-send--stop:hover{background:color-mix(in srgb, var(--surface-card-soft) 86%, var(--client-primary-subtle));border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default));color:var(--client-primary)}.gengage-chat-send-stop-icon{background:currentColor;border-radius:4px;width:12px;height:12px;display:inline-block}.gengage-chat-send--stop:after{content:attr(data-tooltip);background:color-mix(in srgb, var(--surface-shell) 98%, black);border:1px solid color-mix(in srgb, var(--surface-shell) 60%, white);box-shadow:var(--shadow-2);color:var(--text-inverse);white-space:nowrap;opacity:0;pointer-events:none;z-index:12;border-radius:10px;padding:7px 10px;font-size:12px;font-weight:600;line-height:1.2;transition:opacity .16s;position:absolute;top:50%;right:calc(100% + 10px);transform:translateY(-50%)}@media (hover:hover) and (pointer:fine){.gengage-chat-send--stop:hover:after,.gengage-chat-send--stop:focus-visible:after{opacity:1}}.gengage-chat-send:disabled{background:var(--ds-neutral-200);border-color:var(--ds-neutral-200);opacity:.5;box-shadow:none;cursor:not-allowed}.gengage-chat-footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--border-subtle);background:var(--surface-card);padding:4px 10px;font-size:10px}.gengage-chat-uispec{width:100%}.gengage-chat-uispec:empty{display:none}.gengage-chat-uispec>*{animation:.16s cubic-bezier(.2,.7,.2,1) both gengage-chat-widget-enter}@keyframes gengage-chat-widget-enter{0%{opacity:0;transform:translateY(5px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.gengage-chat-action-buttons{flex-wrap:wrap;justify-content:flex-start;gap:8px;padding:6px 0 4px;display:flex}.gengage-chat-action-buttons:after{content:"";flex:1 0 auto}.gengage-chat-action-btn{border:1px solid var(--ds-button-primary-border);border-radius:var(--radius-pill,999px);background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg);cursor:pointer;white-space:nowrap;flex:none;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:700;line-height:1.25;transition:filter .15s,transform .1s}.gengage-chat-action-btn:hover{background:var(--ds-button-primary-bg-hover)}.gengage-chat-action-btn:active{transform:scale(.97)}.gengage-chat-product-card{border:1px solid var(--ds-card-border);border-radius:var(--ds-card-radius);background:var(--ds-card-bg);width:160px;min-width:160px;max-width:160px;box-shadow:var(--ds-card-shadow);flex-direction:column;transition:transform .1s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.gengage-chat-product-card:hover{box-shadow:var(--ds-card-shadow-hover);transform:translateY(-2px)}.gengage-chat-product-card-img{object-fit:contain;background:var(--surface-card);box-sizing:border-box;width:100%;height:120px;padding:8px;display:block}.gengage-chat-product-card-body{text-align:center;flex-direction:column;flex:1;gap:4px;padding:8px 10px 10px;display:flex}.gengage-chat-product-card-name{color:var(--_gengage-text-primary);-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;min-height:2.7em;margin-bottom:0;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.gengage-chat-product-card-brand{color:var(--text-secondary);font-size:10px}.gengage-chat-product-card-rating{color:var(--_gengage-rating-color);font-size:11px;line-height:1}.gengage-star-half{display:inline-block;position:relative}.gengage-star-half>span{width:.5em;position:absolute;top:0;left:0;overflow:hidden}.gengage-chat-product-card-review-count{color:var(--text-secondary);font-size:10px}.gengage-chat-product-card-price,.gengage-chat-product-card-price-block{color:var(--text-primary);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 6px;font-size:16px;font-weight:800;display:flex}.gengage-chat-product-card-current-price{font:inherit;color:var(--gengage-discounted-price-color,var(--text-primary));font-weight:800}.gengage-chat-product-card-original-price{color:var(--_gengage-text-secondary);margin-right:0;font-size:11px;font-weight:400;text-decoration:line-through}.gengage-chat-campaign-reason{letter-spacing:.02em;background:linear-gradient(90deg, var(--_gengage-campaign-reason-start), var(--_gengage-campaign-reason-end));color:#0000;-webkit-background-clip:text;background-clip:text;max-width:100%;margin:0 0 4px;font-size:11px;font-weight:700;line-height:1.25}@supports not ((-webkit-background-clip:text) or (background-clip:text)){.gengage-chat-campaign-reason,.gengage-chat-campaign-price-badge__reason{color:var(--_gengage-campaign-reason-start);background:0 0}}.gengage-chat-product-card-price-stack{flex-direction:column;align-items:flex-start;width:100%;min-width:0;display:flex}.gengage-chat-product-card-price-row{flex-flow:wrap;align-items:baseline;gap:0 6px;display:flex}.gengage-chat-product-card-price-sep{background:var(--border-subtle);flex-shrink:0;align-self:center;width:1px;height:.95em;margin:0 1px;display:inline-block}.gengage-chat-product-card-price-block--inline .gengage-chat-product-card-original-price{color:var(--gengage-inline-original-price-color,var(--text-secondary));font-size:16px;font-weight:500;text-decoration:none}.gengage-chat-product-card-price-block--inline .gengage-chat-product-card-current-price{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:16px;font-weight:800}.gengage-chat-product-card-meta-row{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:8px;width:100%;min-height:34px;display:flex}.gengage-chat-product-card-meta-row--empty{visibility:hidden}.gengage-chat-product-card-rating-compact{border:1px solid var(--border-subtle);background:var(--surface-card-muted);color:var(--text-secondary);border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.gengage-chat-product-card-rating-compact-star{color:color-mix(in srgb, var(--warning) 60%, var(--text-primary));justify-content:center;align-items:center;line-height:0;display:inline-flex}.gengage-chat-product-card-rating-compact-value{font-variant-numeric:tabular-nums;color:var(--text-primary)}.gengage-chat-product-card-img-actions{z-index:4;pointer-events:none;flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute;top:8px;right:8px}.gengage-chat-product-card-img-actions>*{pointer-events:auto}.gengage-chat-product-card-img-actions .gengage-chat-favorite-btn,.gengage-chat-product-card-img-actions .gengage-chat-find-similar-pill{position:static}.gengage-chat-price-skeleton{background:linear-gradient(90deg, var(--ds-neutral-200) 25%, var(--ds-neutral-100) 50%, var(--ds-neutral-200) 75%);vertical-align:middle;background-size:200% 100%;border-radius:4px;width:80px;height:16px;animation:1.5s ease-in-out infinite gengage-skeleton-price-pulse;display:inline-block}@keyframes gengage-skeleton-price-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.gengage-chat-product-card-cta{text-align:center;color:var(--client-primary);letter-spacing:.01em;border-top:1px solid var(--border-default);cursor:pointer;background:0 0;margin-top:auto;padding:8px 10px;font-size:12px;font-weight:700;text-decoration:none;transition:color .15s,background .15s;display:block}.gengage-chat-product-card-cta:hover{color:var(--client-primary-hover);background:var(--surface-card-soft)}.gengage-chat-product-card-cta:active{background:var(--surface-card-soft)}button.gengage-chat-product-card-cta{appearance:none;font:inherit;box-sizing:border-box;border-bottom:none;border-left:none;border-right:none;width:100%;margin:0}.gengage-chat-panel-restore-card{appearance:none;box-sizing:border-box;font:inherit;border:1px solid color-mix(in srgb, var(--client-primary) 34%, var(--border-default));border-radius:calc(var(--radius-control) + 6px);background:var(--surface-card);width:100%;color:var(--text-primary);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:12px;margin:0;padding:16px 18px;transition:transform .18s,background .18s,box-shadow .18s,border-color .18s;display:flex}.gengage-chat-panel-restore-card--minimal{gap:10px;padding:14px 16px}.gengage-chat-panel-restore-card:hover{background:color-mix(in srgb, var(--surface-card) 92%, var(--client-primary-subtle) 8%);box-shadow:var(--shadow-2);border-color:color-mix(in srgb, var(--client-primary) 52%, var(--border-default));transform:translateY(-1px)}.gengage-chat-panel-restore-card:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:3px}.gengage-chat-panel-restore-card__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);font-size:12px;font-weight:800}.gengage-chat-panel-restore-card__previews{gap:10px;display:flex}.gengage-chat-panel-restore-card--minimal .gengage-chat-panel-restore-card__previews{gap:8px}.gengage-chat-panel-restore-card__thumb{border:1px solid var(--border-default);background:var(--surface-card);border-radius:16px;width:58px;height:58px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff8a}.gengage-chat-panel-restore-card__thumb img{object-fit:cover;width:100%;height:100%;display:block}.gengage-chat-panel-restore-card__title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:18px;font-weight:700;line-height:1.24;display:-webkit-box;overflow:hidden}.gengage-chat-panel-restore-card__cta{color:var(--client-primary);font-size:15px;font-weight:700}.gengage-chat-panel-restore-card--minimal .gengage-chat-panel-restore-card__cta{letter-spacing:.01em;font-size:14px}.gengage-chat-root--mobile .gengage-chat-panel-restore-card{-webkit-tap-highlight-color:transparent;padding:14px 16px}.gengage-chat-root--mobile .gengage-chat-panel-restore-card__thumb{border-radius:14px;width:52px;height:52px}.gengage-chat-root--mobile .gengage-chat-bubble--active{outline:none}.gengage-chat-product-summary{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);cursor:pointer;flex-wrap:wrap;align-items:center;gap:12px;margin:4px 0;padding:10px 12px;transition:background .15s,box-shadow .15s,border-color .15s;display:flex}.gengage-chat-product-summary:hover{background:var(--surface-card-soft);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));box-shadow:var(--shadow-1)}.gengage-chat-product-summary__image{border-radius:var(--radius-control);border:1px solid var(--border-subtle);background:var(--surface-card-soft);flex-shrink:0;width:64px;height:64px;overflow:hidden}.gengage-chat-product-summary__image img{object-fit:cover;width:100%;height:100%;display:block}.gengage-chat-product-summary__content{flex-direction:column;flex:180px;gap:2px;min-width:0;display:flex}.gengage-chat-product-summary__name{color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:13px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.gengage-chat-product-summary__rating{color:var(--_gengage-rating-color);font-size:11px;line-height:1}.gengage-chat-product-summary__review-count{color:var(--text-secondary);font-size:11px}.gengage-chat-product-summary__price{color:var(--text-primary);margin-top:2px;font-size:13px;font-weight:600;line-height:1}.gengage-chat-product-summary__price-original{color:var(--_gengage-text-secondary);font-size:11px;font-weight:400;text-decoration:line-through}.gengage-chat-product-summary__price-current{color:var(--gengage-discounted-price-color,var(--text-primary))}.gengage-chat-product-summary__price-stack{flex-direction:column;align-items:flex-start;gap:2px;margin-top:2px;display:flex}.gengage-chat-product-summary__price-stack .gengage-chat-campaign-reason{font-size:11px;font-weight:700}.gengage-chat-product-summary__price--inline{flex-flow:wrap;align-items:baseline;gap:0 6px;display:flex}.gengage-chat-product-summary__price-sep{background:var(--border-subtle);flex-shrink:0;align-self:center;width:1px;height:.9em;margin:0 1px;display:inline-block}.gengage-chat-product-summary__price--inline .gengage-chat-product-summary__price-original{color:var(--gengage-inline-original-price-color,var(--text-secondary));font-size:13px;font-weight:500;text-decoration:none}.gengage-chat-product-summary__price--inline .gengage-chat-product-summary__price-current{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:13px;font-weight:700}.gengage-chat-product-summary__cta{color:var(--client-primary);border-radius:var(--radius-pill);background:var(--client-primary-subtle);white-space:nowrap;flex-shrink:0;margin-left:auto;padding:4px 10px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,color .15s}.gengage-chat-product-summary__cta:hover{background:var(--client-primary-soft)}.gengage-chat-product-summary__cta:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}button.gengage-chat-product-summary__cta{cursor:pointer;font:inherit;border:none}.gengage-chat-product-grid{-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity;gap:12px;min-height:180px;padding:8px 16px 8px 0;display:flex;overflow-x:auto}.gengage-chat-product-grid>*{scroll-snap-align:start;flex:none}.gengage-chat-product-grid::-webkit-scrollbar{display:none}.gengage-chat-product-grid--pending{filter:blur(3px)saturate(.85);opacity:.75;pointer-events:none;transition:filter .16s ease-out,opacity .16s ease-out;position:relative}.gengage-chat-product-grid--pending:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 0%,#ffffff59 50%,#0000 100%);animation:1.2s ease-in-out infinite gengage-chat-product-grid-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes gengage-chat-product-grid-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.gengage-chat-product-grid--pending:after{animation:none}}.gengage-chat-review-highlights{padding:4px 0 8px}.gengage-chat-review-empty{color:var(--_gengage-text-secondary);font-size:12px}.gengage-chat-review-subjects-heading{color:var(--text-primary);margin-bottom:10px;font-size:14px;font-weight:700}.gengage-chat-review-subjects{margin-bottom:12px}.gengage-chat-review-subject{color:var(--text-primary);box-shadow:none;gap:6px;padding:7px 11px;font-size:13px;font-weight:600;line-height:1.2}.gengage-chat-review-subject--active{border-color:var(--ds-chip-border-active);background:var(--ds-chip-bg-active);color:var(--ds-chip-fg-active)}.gengage-chat-review-subject-icon{flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}.gengage-chat-review-subject-icon svg{width:14px;height:14px;display:block}.gengage-chat-review-subject[data-tone=positive] .gengage-chat-review-subject-icon{color:color-mix(in srgb, var(--success) 82%, var(--text-primary))}.gengage-chat-review-subject[data-tone=negative] .gengage-chat-review-subject-icon{color:color-mix(in srgb, var(--error) 84%, var(--text-primary))}.gengage-chat-review-subject[data-tone=neutral] .gengage-chat-review-subject-icon{color:var(--text-secondary)}.gengage-chat-review-subject-label{color:inherit}.gengage-chat-review-subject-count{color:var(--text-secondary);font-size:12px;font-weight:700}.gengage-chat-review-detail{padding:12px}.gengage-chat-review-detail-meta{flex-wrap:wrap;align-items:baseline;gap:10px 16px;margin-bottom:10px;display:flex}.gengage-chat-review-detail-mentions{color:var(--_gengage-text-primary);font-size:13px;font-weight:700}.gengage-chat-review-detail-positive{color:var(--_gengage-success-color);font-size:13px;font-weight:700}.gengage-chat-review-detail-negative{color:var(--error);font-size:13px;font-weight:700}.gengage-chat-review-snippets{gap:10px;display:grid}.gengage-chat-review-snippet{border:1px solid var(--border-subtle);border-left:3px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card-soft);padding:8px 10px}.gengage-chat-review-snippet[data-tone=positive]{border-left-color:color-mix(in srgb, var(--success) 40%, var(--border-default))}.gengage-chat-review-snippet[data-tone=negative]{border-left-color:color-mix(in srgb, var(--error) 40%, var(--border-default))}.gengage-chat-review-snippet-text{color:var(--_gengage-text-primary);font-size:13px;line-height:1.4}.gengage-chat-review-snippet-rating{color:var(--text-secondary);margin-top:4px;font-size:12px;font-weight:700}.gengage-chat-favorites-page{padding:12px}.gengage-chat-favorites-empty{text-align:center;color:var(--_gengage-text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.gengage-chat-favorites-empty-icon{opacity:.25;color:var(--error)}.gengage-chat-favorites-empty p{margin:0;font-size:13px;line-height:1.5}.gengage-chat-favorites-list{flex-direction:column;gap:10px;display:flex}.gengage-chat-favorites-card{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);box-shadow:var(--shadow-1);align-items:center;gap:12px;padding:10px 12px;transition:opacity .2s,transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative}.gengage-chat-favorites-card:hover{border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));box-shadow:var(--shadow-1)}.gengage-chat-favorites-card--removing{opacity:0;transform:translate(8px)}.gengage-chat-favorites-card__image{border-radius:var(--radius-control);background:var(--surface-card-muted);flex-shrink:0;width:56px;height:56px;overflow:hidden}.gengage-chat-favorites-card__image img{object-fit:contain;width:100%;height:100%}.gengage-chat-favorites-card__info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.gengage-chat-favorites-card__name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.gengage-chat-favorites-card__price{color:var(--client-primary);font-size:13px;font-weight:700}.gengage-chat-favorites-remove{border-radius:var(--radius-pill);width:28px;height:28px;color:var(--error);cursor:pointer;opacity:.7;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s,background .15s;display:inline-flex}.gengage-chat-favorites-remove:hover{opacity:1;background:color-mix(in srgb, var(--error) 10%, white)}.gengage-chat-history-page{flex-direction:column;gap:12px;padding:12px;display:flex}.gengage-chat-history-actions{display:flex}.gengage-chat-history-new-chat{border:1px solid color-mix(in srgb, var(--client-primary) 20%, var(--border-default));border-radius:var(--radius-control);background:color-mix(in srgb, var(--client-primary) 9%, white);width:100%;min-height:42px;color:var(--client-primary);cursor:pointer;padding:0 14px;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,transform .15s}.gengage-chat-history-new-chat:hover{background:color-mix(in srgb, var(--client-primary) 14%, white);border-color:color-mix(in srgb, var(--client-primary) 28%, var(--border-default))}.gengage-chat-history-list{flex-direction:column;gap:10px;display:flex}.gengage-chat-history-item{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);box-shadow:var(--shadow-1);align-items:stretch;gap:8px;padding:0;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.gengage-chat-history-item:hover{border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default))}.gengage-chat-history-item--active{border-color:color-mix(in srgb, var(--client-primary) 28%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 6%, var(--surface-card))}.gengage-chat-history-open{min-width:0;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;flex:1;padding:12px 14px}.gengage-chat-history-item-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.gengage-chat-history-item-title{min-width:0;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.gengage-chat-history-item-meta{color:var(--text-muted);flex-shrink:0;font-size:11px;font-weight:600}.gengage-chat-history-item-preview{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.gengage-chat-history-delete{border:none;border-left:1px solid color-mix(in srgb, var(--border-default) 84%, transparent);border-top-right-radius:inherit;border-bottom-right-radius:inherit;width:38px;min-width:38px;color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.gengage-chat-history-delete:hover{background:color-mix(in srgb, var(--error) 10%, white);color:var(--error)}.gengage-chat-history-empty{text-align:center;color:var(--_gengage-text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.gengage-chat-history-empty-icon{opacity:.25;color:var(--client-primary)}.gengage-chat-history-empty p{margin:0;font-size:13px;line-height:1.5}.gengage-chat-divider{border:none;border-top:1px solid var(--_gengage-border-color);margin:8px 0}.gengage-chat-divider-wrapper{align-items:center;gap:8px;margin:8px 0;display:flex}.gengage-chat-divider-wrapper hr{border:none;border-top:1px solid var(--_gengage-border-color);flex:1;margin:0}.gengage-chat-divider-label{color:var(--text-muted);white-space:nowrap;font-size:11px}.gengage-chat--overlay .gengage-chat-drawer{border-radius:0;width:100%;max-width:480px;max-height:100%;margin:0 auto;animation:.24s cubic-bezier(.2,.72,.2,1) gengage-chat-overlay-in;position:fixed;inset:0}@keyframes gengage-chat-overlay-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.gengage-chat-panel-skeleton{box-sizing:border-box;flex-direction:column;gap:14px;min-width:0;max-width:100%;padding:6px 0;display:flex}.gengage-chat-panel-skeleton-block{background:linear-gradient(90deg, var(--ds-neutral-200) 25%, var(--ds-neutral-100) 50%, var(--ds-neutral-200) 75%);background-size:200% 100%;border-radius:10px;height:110px;animation:1.4s infinite gengage-panel-shimmer}@keyframes gengage-panel-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.gengage-chat-panel-skeleton-block--image{border-radius:8px;height:200px;margin-bottom:12px}.gengage-chat-panel-skeleton-block--text{border-radius:4px;height:16px;margin-bottom:8px}.gengage-chat-panel-skeleton-block--text:nth-child(3){width:80%}.gengage-chat-panel-skeleton-block--text:nth-child(4){width:60%}.gengage-chat-panel-skeleton-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.gengage-chat-panel-skeleton-block--card{border-radius:8px;height:120px}.gengage-chat-panel-skeleton--comparison{gap:0;padding:0}.gengage-chat-panel-skeleton--comparison .gengage-chat-panel-loading-status{margin:0;padding:16px 16px 0}.gengage-chat-comparison--skeleton{pointer-events:none;box-sizing:border-box;width:100%}.gengage-chat-comparison-skeleton-shimmer{background:linear-gradient(90deg, var(--ds-neutral-200) 25%, var(--ds-neutral-100) 50%, var(--ds-neutral-200) 75%);background-size:200% 100%;animation:1.4s infinite gengage-panel-shimmer}.gengage-chat-comparison-skeleton-rec-label{border-radius:4px;width:132px;height:12px;margin-bottom:12px}.gengage-chat-comparison-skeleton-rec-img{border-radius:8px;flex-shrink:0;width:80px;height:80px}.gengage-chat-comparison-skeleton-rec-title{border-radius:4px;max-width:100%;height:14px;margin-bottom:6px}.gengage-chat-comparison-skeleton-rec-title--short{width:72%;margin-bottom:8px}.gengage-chat-comparison-skeleton-rec-price{border-radius:4px;width:112px;height:18px}.gengage-chat-comparison-skeleton-hl-label{border-radius:4px;width:96px;height:12px;margin-bottom:6px}.gengage-chat-comparison-skeleton-hl-list{margin:0;padding-left:18px;list-style:none}.gengage-chat-comparison-skeleton-hl-list li{margin-bottom:8px}.gengage-chat-comparison-skeleton-hl-list li:last-child{margin-bottom:0}.gengage-chat-comparison-skeleton-hl-line{border-radius:4px;width:100%;height:13px}.gengage-chat-comparison-skeleton-hl-line--medium{width:92%}.gengage-chat-comparison-skeleton-hl-line--short{width:78%}.gengage-chat-comparison-skeleton-kd-heading{border-radius:4px;width:42%;height:14px;margin:0 0 8px}.gengage-chat-comparison-skeleton-kd-line{border-radius:4px;max-width:100%;height:13px;margin-bottom:8px}.gengage-chat-comparison-skeleton-kd-line:last-child{margin-bottom:0}.gengage-chat-comparison-skeleton-kd-line:nth-child(odd){width:100%}.gengage-chat-comparison-skeleton-kd-line:nth-child(2n){width:90%}.gengage-chat-comparison-special--skeleton{cursor:default;align-items:center;min-height:44px;display:flex}.gengage-chat-comparison-skeleton-special-line{border-radius:4px;width:56%;max-width:280px;height:14px}.gengage-chat-comparison-skeleton-table-wrap{border:1px solid var(--border-default);background:var(--surface-card);-webkit-overflow-scrolling:touch;border-radius:8px;margin-top:12px;overflow-x:auto}.gengage-chat-comparison-skeleton-table-head,.gengage-chat-comparison-skeleton-table-row{grid-template-columns:72px repeat(3,minmax(0,1fr));align-items:start;gap:8px;padding:10px 12px;display:grid}.gengage-chat-comparison-skeleton-table-head{border-bottom:1px solid var(--_gengage-surface-muted);background:var(--_gengage-surface-muted)}.gengage-chat-comparison-skeleton-table-corner{min-height:92px}.gengage-chat-comparison-skeleton-table-col{text-align:center;flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.gengage-chat-comparison-skeleton-table-th-img{border-radius:6px;flex-shrink:0;width:60px;height:60px}.gengage-chat-comparison-skeleton-table-th-name{border-radius:3px;width:100%;max-width:100%;height:11px}.gengage-chat-comparison-skeleton-table-th-price{border-radius:3px;width:64%;height:13px}.gengage-chat-comparison-skeleton-table-row{border-bottom:1px solid var(--_gengage-surface-muted)}.gengage-chat-comparison-skeleton-table-row:last-child{border-bottom:none}.gengage-chat-comparison-skeleton-table-label{border-radius:3px;align-self:center;width:100%;max-width:56px;height:12px}.gengage-chat-comparison-skeleton-table-cell{border-radius:3px;width:100%;height:14px}.gengage-chat-panel-skeleton-block--row{border-radius:4px;height:32px;margin-bottom:4px}.gengage-chat-panel .gengage-chat-product-card{border-radius:var(--radius-card);border:1px solid var(--border-default);width:100%;min-width:0;max-width:100%;box-shadow:var(--shadow-1);background:var(--surface-card);flex-direction:column;padding:0;display:flex;overflow:hidden}.gengage-chat-panel .gengage-chat-product-card:hover{box-shadow:var(--shadow-2);border-color:var(--border-strong);transform:translateY(-2px)}.gengage-chat-panel .gengage-chat-product-card-img-actions{gap:6px;top:10px;right:10px}.gengage-chat-panel .gengage-chat-product-card-img-actions .gengage-chat-favorite-btn,.gengage-chat-panel .gengage-chat-product-card-img-actions .gengage-chat-find-similar-pill{border-radius:8px;width:28px;height:28px}.gengage-chat-panel .gengage-chat-product-card-discount-badge{border-radius:var(--radius-pill);background:var(--client-primary);min-width:36px;height:36px;color:var(--client-on-primary);box-shadow:var(--shadow-1);justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex;top:10px;left:10px}.gengage-chat-panel .gengage-chat-product-card-brand{display:none}.gengage-chat-panel .gengage-chat-product-grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:12px;min-height:auto;padding:4px 0;display:grid;overflow-x:visible}.gengage-chat-panel .gengage-chat-product-grid.gengage-chat-product-grid--consulting-groups{grid-template-columns:repeat(auto-fit,minmax(200px,240px));justify-content:start}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-grid.gengage-chat-product-grid--consulting-groups.gengage-chat-product-grid--mobile{grid-template-columns:1fr}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-grid.gengage-chat-product-grid--mobile{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:auto;padding:6px 0 10px;display:grid;overflow-x:visible}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-grid.gengage-chat-product-grid--mobile .gengage-chat-product-card{box-sizing:border-box;width:100%;min-width:0;max-width:none}.gengage-chat-panel .gengage-chat-product-card-img-wrapper{aspect-ratio:1;background:var(--surface-card-muted);border-radius:var(--radius-card) var(--radius-card) 0 0;flex-shrink:0;width:100%;position:relative;overflow:hidden}.gengage-chat-panel .gengage-chat-product-card-img{border-radius:inherit;object-fit:cover;object-position:center;box-sizing:border-box;background:0 0;width:100%;height:100%;min-height:0;padding:0;display:block}.gengage-chat-panel .gengage-chat-product-card-body{text-align:left;gap:8px;padding:12px 14px 10px}.gengage-chat-panel .gengage-chat-product-card-meta-row{align-items:center;min-height:38px;margin-bottom:0}.gengage-chat-panel .gengage-chat-product-card-price,.gengage-chat-panel .gengage-chat-product-card-price-block{color:var(--text-primary);justify-content:flex-start;font-size:15px;font-weight:600}.gengage-chat-panel .gengage-chat-product-card-current-price{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:15px;font-weight:600}.gengage-chat-panel .gengage-chat-product-card-original-price{color:var(--text-muted);font-size:12px;font-weight:400}.gengage-chat-panel .gengage-chat-product-card-rating-compact{font-size:11px;font-weight:700}.gengage-chat-panel .gengage-chat-product-card-rating-compact-star{color:color-mix(in srgb, var(--warning) 58%, var(--text-primary))}.gengage-chat-panel .gengage-chat-product-card-name{min-height:0;color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;margin:0 0 2px;font-size:14px;font-weight:600;line-height:1.35}.gengage-chat-panel .gengage-chat-product-card-buy-footer{flex-shrink:0;min-width:0;margin-top:auto;padding:0 14px 16px;display:flex;position:relative}.gengage-chat-panel .gengage-chat-product-card-buy-trigger{box-sizing:border-box;border:1.5px solid var(--client-primary);background:var(--surface-card);width:100%;min-width:0;min-height:42px;color:var(--client-primary);white-space:nowrap;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;margin:0;padding:9px 14px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;transition:background .15s,box-shadow .15s;display:flex}.gengage-chat-panel .gengage-chat-product-card-buy-trigger:hover{background:color-mix(in srgb, var(--client-primary) 6%, white);box-shadow:var(--shadow-1)}.gengage-chat-panel .gengage-chat-product-card .gengage-chat-product-card-cta{border:1.5px solid var(--client-primary);background:var(--surface-card);width:calc(100% - 28px);min-width:0;color:var(--client-primary);box-sizing:border-box;border-radius:12px;justify-content:center;align-items:center;min-height:42px;margin:0 14px 16px;padding:9px 14px;font-size:13px;font-weight:600;display:flex}.gengage-chat-panel .gengage-chat-product-card .gengage-chat-product-card-cta:hover{background:color-mix(in srgb, var(--client-primary) 6%, white)}.gengage-chat-product-card--selected{border-color:var(--client-primary);background:color-mix(in srgb, var(--client-primary) 8%, transparent);box-shadow:0 0 0 1px var(--client-primary)}.gengage-chat-panel--visible{min-height:0}.gengage-chat-panel--visible>*{flex-shrink:0}.gengage-chat-load-more-btn{border:1px solid var(--border-default);color:var(--client-primary);cursor:pointer;background:0 0;border-radius:8px;margin:12px auto;padding:8px 24px;font-size:14px;display:block}.gengage-chat-load-more-btn:hover{background:var(--surface-card-muted)}.gengage-chat-product-details-panel{background:var(--surface-card);border:1px solid var(--border-default);box-sizing:border-box;border-radius:16px;flex-direction:column;gap:12px;width:100%;padding:14px;display:flex}.gengage-chat-product-details-media{border:1px solid var(--border-subtle);background:var(--surface-card-muted);border-radius:12px;flex-direction:column;align-items:center;padding:12px;display:flex}.gengage-chat-product-details-img{object-fit:contain;border-radius:8px;width:100%;height:auto;max-height:300px}.gengage-chat-product-details-content{flex-direction:column;gap:8px;min-width:0;display:flex}.gengage-chat-product-details-title{color:var(--text-primary);margin:0;font-size:17px;font-weight:700;line-height:1.3}.gengage-chat-product-details-rating{background:color-mix(in srgb, var(--warning) 10%, white);width:fit-content;color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:13px;font-weight:700;display:inline-flex}.gengage-chat-product-details-review-count{color:color-mix(in srgb, var(--warning) 84%, var(--text-primary));font-weight:600}.gengage-chat-product-details-price{align-items:baseline;gap:6px;display:flex}.gengage-chat-product-details-original-price{color:var(--text-secondary);font-size:14px;text-decoration:line-through}.gengage-chat-product-details-price-stack{flex-direction:column;align-items:flex-start;gap:2px;width:100%;display:flex}.gengage-chat-product-details-price-stack .gengage-chat-campaign-reason{margin-bottom:2px;font-size:13px;font-weight:600}.gengage-chat-product-details-price--inline{flex-wrap:nowrap;align-items:baseline}.gengage-chat-product-details-price--inline .gengage-chat-product-details-price-sep{background:var(--border-subtle);flex-shrink:0;align-self:center;width:1px;height:1em;margin:0 4px;display:inline-block}.gengage-chat-product-details-price--inline .gengage-chat-product-details-original-price{color:var(--text-secondary);order:0;font-size:22px;font-weight:500;text-decoration:none}.gengage-chat-product-details-price--inline .gengage-chat-product-details-current-price{color:var(--gengage-discounted-price-color,var(--text-primary));order:0;font-size:22px;font-weight:800}.gengage-chat-product-details-current-price{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:22px;font-weight:800;line-height:1.1}.gengage-chat-product-details-stock{border-radius:999px;width:fit-content;padding:4px 10px;font-size:12px;font-weight:700}.gengage-chat-product-details-stock.is-in-stock{background:color-mix(in srgb, var(--success) 12%, white);color:color-mix(in srgb, var(--success) 82%, var(--text-primary))}.gengage-chat-product-details-stock.is-out-of-stock{background:color-mix(in srgb, var(--error) 10%, white);color:color-mix(in srgb, var(--error) 82%, var(--text-primary))}.gengage-chat-product-details-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.gengage-chat-product-details-cta{border-radius:var(--radius-control,12px);border:1px solid var(--ds-button-primary-border);background:var(--ds-button-primary-bg);min-height:40px;color:var(--ds-button-primary-fg);cursor:pointer;justify-content:center;align-items:center;padding:0 20px;font-size:14px;font-weight:700;text-decoration:none;transition:filter .14s,transform .12s;display:inline-flex}.gengage-chat-product-details-cta:hover{background:var(--ds-button-primary-bg-hover)}.gengage-chat-product-details-cta:active{background:var(--ds-button-primary-bg-active)}.gengage-chat-product-details-atc{border-radius:var(--radius-control);background:var(--_gengage-success-color);color:var(--client-on-primary);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:700;transition:filter .12s,transform .12s;display:inline-flex}.gengage-chat-product-details-atc:hover{filter:brightness(1.08);transform:translateY(-1px)}.gengage-chat-product-details-atc:active{transform:translateY(1px)}.gengage-chat-product-detail-tabs{border-top:1px solid var(--border-default);margin-top:4px;padding-top:12px}.gengage-chat-product-detail-tab-bar{border-bottom:1px solid var(--border-default);gap:6px;margin-bottom:12px;padding-bottom:8px;display:flex}.gengage-chat-product-detail-tab{border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;flex:1;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:600;transition:color .15s,border-color .15s,background .15s}.gengage-chat-product-detail-tab:hover{color:var(--text-primary);background:color-mix(in srgb, var(--surface-card-soft) 82%, transparent)}.gengage-chat-product-detail-tab--active{color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 26%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 8%, white)}.gengage-chat-product-detail-tab-panel{color:var(--text-secondary);font-size:13px;line-height:1.6}.gengage-chat-product-description{color:var(--text-primary);flex-direction:column;gap:10px;display:flex}.gengage-chat-product-description p,.gengage-chat-product-description h2,.gengage-chat-product-description h3,.gengage-chat-product-description h4,.gengage-chat-product-description ul,.gengage-chat-product-description ol{margin:0}.gengage-chat-product-description h2,.gengage-chat-product-description h3,.gengage-chat-product-description h4{color:var(--text-primary);font-size:15px;font-weight:800;line-height:1.35}.gengage-chat-product-description ul,.gengage-chat-product-description ol{padding-left:20px}.gengage-chat-product-description li+li{margin-top:6px}.gengage-chat-product-description strong,.gengage-chat-product-description b{font-weight:800}.gengage-chat-product-specs-table{border-collapse:collapse;width:100%;font-size:13px}.gengage-chat-product-specs-table tr:nth-child(2n){background:var(--surface-card-muted)}.gengage-chat-product-specs-key{color:var(--text-secondary);white-space:nowrap;border-bottom:1px solid var(--border-subtle);width:40%;padding:6px 10px;font-weight:600}.gengage-chat-product-specs-value{color:var(--text-primary);border-bottom:1px solid var(--border-subtle);padding:6px 10px}.gengage-chat-product-card-atc{opacity:0;z-index:1;transition:opacity .15s;position:absolute;bottom:42px;right:6px}.gengage-chat-product-card:hover .gengage-chat-product-card-atc{opacity:1}@media (hover:none),(pointer:coarse){.gengage-chat-product-card-atc{opacity:1;width:100%;margin:0;display:flex;position:relative;bottom:auto;right:auto}}.gengage-chat-drawer.gengage-chat-drawer--hidden{opacity:0;pointer-events:none;box-shadow:none;visibility:hidden;transform:translate(100%)}.gengage-chat-root--mobile .gengage-chat-drawer.gengage-chat-drawer--hidden{opacity:0;pointer-events:none;box-shadow:none;visibility:hidden;transform:translateY(100%)}@media (width<=900px){.gengage-chat-drawer--with-panel .gengage-chat-panel--visible{width:clamp(280px, calc(100vw - var(--_gengage-chat-conversation-width)), 560px);max-width:560px}}.gengage-chat-attachment-preview{background:var(--surface-card-muted);border:1px solid var(--border-default);box-sizing:border-box;border-radius:8px;align-items:center;gap:8px;width:100%;padding:6px 10px;display:flex}.gengage-chat-attachment-preview--hidden{display:none}.gengage-chat-attachment-preview-thumb{object-fit:cover;border-radius:4px;flex-shrink:0;width:40px;height:40px}.gengage-chat-attachment-name{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.gengage-chat-attachment-remove{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:18px;line-height:1}.gengage-chat-attachment-remove:hover{color:var(--error)}.gengage-chat-attach-btn{background:var(--surface-card-soft);border:1px solid var(--border-default);cursor:pointer;width:var(--gengage-chat-input-control-size,40px);height:var(--gengage-chat-input-control-size,40px);border-radius:var(--gengage-chat-input-control-radius,12px);color:var(--text-primary);flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;transition:color .15s,background .15s,border-color .15s;display:flex}.gengage-chat-attach-btn:hover{color:var(--client-primary);background:var(--client-primary-subtle);border-color:color-mix(in srgb, var(--client-primary) 18%, white)}.gengage-chat-attach-btn svg{width:20px;height:20px}.gengage-chat-attach-wrap{flex-shrink:0;align-items:center;display:flex;position:relative}.gengage-chat-attach-menu{z-index:50;background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-card);min-width:196px;box-shadow:var(--shadow-3);margin:0;padding:4px 0;list-style:none;position:absolute;bottom:calc(100% + 8px);left:0}.gengage-chat-attach-menu[hidden]{display:none!important}.gengage-chat-attach-menu-item{cursor:pointer;width:100%;color:var(--text-primary);text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:500;transition:background .12s;display:flex}.gengage-chat-attach-menu-item:hover{background:var(--surface-card-muted)}.gengage-chat-attach-menu-icon{color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.gengage-chat-attach-menu-label{flex:1;min-width:0}.gengage-chat-attach-menu-sep{background:var(--border-default);height:1px;margin:4px 10px}.gengage-chat-mic-btn{cursor:pointer;border-radius:var(--radius-control);width:32px;height:32px;color:var(--text-secondary);background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;transition:color .15s,background .15s;display:flex}.gengage-chat-mic-btn:hover{color:var(--text-primary);background:var(--surface-card-muted);border-color:var(--border-default)}.gengage-chat-mic-btn svg{width:20px;height:20px}.gengage-chat-mic-btn--active{color:var(--error);animation:1.2s ease-in-out infinite gengage-mic-pulse}.gengage-chat-mic-btn--active:hover{color:color-mix(in srgb, var(--error) 84%, black)}@keyframes gengage-mic-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.15)}}.gengage-chat-input-area--dragover{outline:2px dashed var(--client-primary);outline-offset:-2px;background:color-mix(in srgb, var(--client-primary) 8%, white)}.gengage-chat-attachment-thumb{border-radius:8px;width:120px;max-width:100%;height:auto;margin-bottom:6px;display:block}.gengage-chat-root--mobile .gengage-chat-header-btn,.gengage-chat-root--mobile .gengage-chat-close{border-radius:12px;width:44px;height:44px}@media (width<=374px){.gengage-chat-root--mobile .gengage-chat-header-btn{width:34px;min-width:34px;height:34px;min-height:34px}}.gengage-chat-root--mobile .gengage-chat-attach-btn,.gengage-chat-root--mobile .gengage-chat-mic-btn,.gengage-chat-root--mobile .gengage-chat-send{width:var(--gengage-chat-input-control-size,44px);height:var(--gengage-chat-input-control-size,44px);min-width:var(--gengage-chat-input-control-size,44px);border-radius:var(--gengage-chat-input-control-radius,14px)}.gengage-chat-root--mobile .gengage-chat-attach-btn svg,.gengage-chat-root--mobile .gengage-chat-mic-btn svg{width:22px;height:22px}.gengage-chat-root--mobile .gengage-chat-panel-divider{cursor:ns-resize;touch-action:pan-y;background:0 0;justify-content:center;align-items:center;width:100%;height:20px;display:flex;position:relative;overflow:visible}.gengage-chat-root--mobile .gengage-chat-panel-divider--hidden{display:none}.gengage-chat-root--mobile .gengage-chat-drawer--with-panel{border-radius:0;width:100%;left:0;right:0}.gengage-chat-root--mobile .gengage-chat-panel{z-index:10;width:100%;min-width:0;max-width:none;max-height:none;box-shadow:none;background:var(--gengage-chat-panel-bg,var(--surface-card));pointer-events:none;border:none;border-radius:0;flex-direction:column;padding:0 12px 16px;transition:transform .32s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;inset:0;overflow-y:auto;transform:translate(100%)}.gengage-chat-root--mobile .gengage-chat-panel--visible{pointer-events:auto;transform:translate(0)}.gengage-chat-root--mobile .gengage-chat-panel-divider,.gengage-chat-root--mobile .gengage-chat-drawer--with-panel .gengage-chat-panel-divider{display:none}.gengage-chat-root--mobile .gengage-chat-drawer--with-panel .gengage-chat-body{flex-direction:row}.gengage-chat-root--mobile .gengage-chat-drawer--with-panel .gengage-chat-conversation{border-left:none;flex:1;width:100%}.gengage-chat-root--mobile .gengage-chat-product-details-share{width:44px;height:44px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-buy-footer,.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-cta{box-sizing:border-box;width:100%;max-width:100%}.gengage-chat-root--mobile .gengage-chat-product-details-panel{gap:8px;padding:10px}.gengage-chat-root--mobile .gengage-chat-product-details-media{min-height:0;padding:8px}.gengage-chat-root--mobile .gengage-chat-product-details-content{gap:6px}.gengage-chat-root--mobile .gengage-chat-product-details-title{font-size:14px;line-height:1.25}.gengage-chat-root--mobile .gengage-chat-product-details-rating{padding:2px 6px;font-size:12px}.gengage-chat-root--mobile .gengage-chat-product-details-original-price{font-size:12px}.gengage-chat-root--mobile .gengage-chat-product-details-current-price,.gengage-chat-root--mobile .gengage-chat-product-details-price--inline .gengage-chat-product-details-original-price,.gengage-chat-root--mobile .gengage-chat-product-details-price--inline .gengage-chat-product-details-current-price{font-size:18px}.gengage-chat-root--mobile .gengage-chat-product-details-actions{gap:6px;margin-top:2px}.gengage-chat-root--mobile .gengage-chat-product-details-cta{min-height:38px;padding:0 14px;font-size:13px}.gengage-chat-root--mobile .gengage-chat-product-grid:not(.gengage-chat-product-grid--mobile){scroll-snap-type:x mandatory}.gengage-chat-root--mobile .gengage-chat-product-grid.gengage-chat-product-grid--mobile{scroll-snap-type:none}.gengage-chat-root--mobile .gengage-chat-product-card{box-sizing:border-box;scroll-snap-align:center;width:280px;min-width:280px;max-width:100%}.gengage-chat-root--mobile .gengage-chat-product-grid--mobile .gengage-chat-product-card{scroll-snap-align:start;width:100%;min-width:0;max-width:none}.gengage-chat-root--mobile .gengage-chat-product-card-img-wrapper{justify-content:center;align-items:center;min-height:0;display:flex}.gengage-chat-root--mobile .gengage-chat-product-card-img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:auto;min-height:0;max-height:180px;display:block}.gengage-chat-root--mobile .gengage-chat-product-card-discount-badge{padding:2px 6px;font-size:10px;font-weight:700;line-height:1.2}.gengage-chat-root--mobile .gengage-chat-drawer{border-radius:0;width:100%;max-height:100%;position:fixed;inset:0}.gengage-chat-root--mobile .gengage-chat-bubble{max-width:100%}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-img-wrapper{aspect-ratio:1;justify-content:center;align-items:center;min-height:0;display:flex}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:auto;min-height:0;max-height:min(200px,72%)}.gengage-chat-root--mobile .gengage-chat-product-card-img-actions .gengage-chat-favorite-btn,.gengage-chat-root--mobile .gengage-chat-product-card-img-actions .gengage-chat-find-similar-pill{flex-shrink:0;width:28px;min-width:28px;height:28px;min-height:28px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-discount-badge{min-width:28px;height:28px;padding:0 6px;font-size:10px;font-weight:700}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-buy-footer{padding:0 12px 14px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-buy-trigger{box-sizing:border-box;white-space:normal;text-align:center;-webkit-hyphens:auto;hyphens:auto;min-width:0;max-width:100%;line-height:1.25}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card .gengage-chat-product-card-cta{box-sizing:border-box;white-space:normal;width:calc(100% - 24px);min-width:0;max-width:calc(100% - 24px);margin-left:12px;margin-right:12px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-rating-compact{gap:3px;padding:2px 6px;font-size:10px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-stock{padding:2px 5px;font-size:10px}.gengage-chat-root--mobile .gengage-chat-messages{scrollbar-width:none;padding:12px 16px}.gengage-chat-root--mobile .gengage-chat-messages::-webkit-scrollbar{display:none}.gengage-chat-root--mobile .gengage-chat-drawer{border-top:none}.gengage-chat-root--mobile .gengage-chat-header{border-radius:16px 16px 0 0;min-height:72px;padding-top:22px;padding-bottom:8px}.gengage-chat-root--mobile.gengage-chat-root--mobile-full .gengage-chat-header{border-radius:0}.gengage-chat-root--mobile .gengage-chat-conversation{-webkit-overflow-scrolling:touch;min-height:0;overflow-y:auto}.gengage-chat-root--mobile .gengage-chat-product-details-img{object-fit:contain;min-height:0;max-height:200px}.gengage-chat-root--mobile .gengage-chat-product-details-actions{flex-wrap:wrap;gap:8px}.gengage-chat-root--mobile .gengage-chat-product-details-promos{flex-wrap:wrap;gap:4px}.gengage-chat-root--mobile .gengage-chat-input::placeholder{font-size:13px}.gengage-chat-kvkk-banner{background:color-mix(in srgb, var(--warning) 10%, white);border-bottom:1px solid color-mix(in srgb, var(--warning) 24%, var(--border-default));color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));align-items:flex-start;gap:8px;padding:10px 14px;font-size:12px;line-height:1.5;display:flex}.gengage-chat-kvkk-content{flex:1;min-width:0}.gengage-chat-kvkk-content a{color:color-mix(in srgb, var(--warning) 82%, var(--text-primary));text-decoration:underline}.gengage-chat-kvkk-dismiss{width:20px;height:20px;color:color-mix(in srgb, var(--warning) 84%, var(--text-primary));cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:18px;line-height:1}.gengage-chat-comparison{box-sizing:border-box;flex-direction:column;gap:12px;padding:16px;display:flex}.gengage-chat-comparison-heading{letter-spacing:.05em;color:var(--text-primary);margin:0 0 16px;font-size:14px;font-weight:700}.gengage-chat-comparison-recommended{border:1px solid color-mix(in srgb, var(--client-primary) 18%, var(--border-default));border-radius:var(--radius-card);background:var(--surface-card);box-shadow:var(--shadow-1);padding:16px}.gengage-chat-comparison-recommended-label{color:var(--client-primary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;font-size:12px;font-weight:700}.gengage-chat-comparison-recommended-body{grid-template-columns:minmax(108px,148px) minmax(0,1fr);align-items:flex-start;gap:16px;display:grid}.gengage-chat-comparison-recommended-media{aspect-ratio:1;border:1px solid var(--border-subtle);background:var(--surface-card);border-radius:14px;justify-content:center;align-items:center;display:flex;overflow:hidden}.gengage-chat-comparison-recommended-body img,.gengage-chat-comparison-recommended-placeholder{object-fit:contain;box-sizing:border-box;width:100%;height:100%;padding:8px}.gengage-chat-comparison-recommended-placeholder{background:var(--surface-card-muted)}.gengage-chat-comparison-recommended-info{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.gengage-chat-comparison-recommended-title{color:var(--text-primary);margin:0;font-size:24px;font-weight:800;line-height:1.2}.gengage-chat-comparison-recommended-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.gengage-chat-comparison-recommended-rating{border:1px solid var(--border-subtle);background:var(--surface-card-muted);color:color-mix(in srgb, var(--warning) 78%, var(--text-primary));border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:700;display:inline-flex}.gengage-chat-comparison-recommended-rating-value{color:var(--text-primary)}.gengage-chat-comparison-recommended-price{color:var(--text-primary);font-size:20px;font-weight:700}.gengage-chat-comparison-highlights{border-top:1px solid var(--border-subtle);padding-top:12px}.gengage-chat-comparison-highlights-label{color:var(--text-secondary);margin-bottom:6px;font-size:12px;font-weight:600}.gengage-chat-comparison-highlights ul{color:var(--text-primary);margin:0;padding-left:18px;font-size:14px;line-height:1.55}.gengage-chat-comparison-special{background:color-mix(in srgb, var(--warning) 10%, white);border:1px solid color-mix(in srgb, var(--warning) 24%, var(--border-default));border-radius:var(--radius-card);color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));margin-bottom:12px;padding:12px 16px;font-size:13px}.gengage-chat-comparison-special summary{cursor:pointer;font-weight:600}.gengage-chat-comparison-special ul{margin:8px 0 0;padding-left:18px;line-height:1.6}.gengage-chat-comparison-table{border-collapse:collapse;background:var(--surface-card);width:100%;font-size:13px}.gengage-chat-comparison-table th,.gengage-chat-comparison-table td{text-align:center;border-bottom:1px solid var(--border-subtle);vertical-align:top;padding:10px 12px}.gengage-chat-comparison-table th{color:var(--text-secondary);font-size:12px;font-weight:600}.gengage-chat-comparison-table td ul,.gengage-chat-comparison-table td ol{text-align:left;margin:0;padding-left:18px}.gengage-chat-comparison-table td li+li{margin-top:4px}.gengage-chat-comparison-table thead th:not(:first-child){vertical-align:top}.gengage-chat-comparison-table-header-cell{box-sizing:border-box;grid-template-rows:auto 1fr auto;place-items:start center;gap:6px;height:100%;min-height:0;display:grid}.gengage-chat-comparison-table-header-cell--clickable{cursor:pointer;border-radius:var(--radius-control);padding:6px;transition:background .16s,box-shadow .16s,transform .16s}.gengage-chat-comparison-table-header-cell--clickable:hover{background:var(--surface-card-soft);box-shadow:var(--shadow-1);transform:translateY(-1px)}.gengage-chat-comparison-table-header-cell--clickable:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}.gengage-chat-comparison-table-header-cell img{object-fit:contain;border-radius:calc(var(--radius-control) - 4px);background:var(--surface-card-muted);width:60px;height:60px}.gengage-chat-comparison-table-header-img-placeholder{border-radius:calc(var(--radius-control) - 4px);background:var(--surface-card-muted);width:60px;height:60px}.gengage-chat-comparison-table-product-name{width:100%;min-width:0;color:var(--text-secondary);text-align:center;-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;align-self:start;font-size:12px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.gengage-chat-comparison-table-price{color:var(--text-primary);text-align:center;width:100%;font-weight:700}.gengage-chat-comparison-label{text-align:left;color:var(--text-secondary);white-space:nowrap;font-weight:600}.gengage-chat-comparison-selected{background:color-mix(in srgb, var(--client-primary) 6%, white)}.gengage-chat-comparison-recommended-text{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.gengage-chat-comparison-key-differences{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--surface-card-muted)}.gengage-chat-comparison-key-differences-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-weight:700;list-style:none;display:flex}.gengage-chat-comparison-key-differences-summary::-webkit-details-marker{display:none}.gengage-chat-comparison-key-differences-summary-label{color:var(--text-primary)}.gengage-chat-comparison-key-differences-summary-meta{color:var(--client-primary);font-size:13px;font-weight:700}.gengage-chat-comparison-key-differences[open] .gengage-chat-comparison-key-differences-summary-meta{opacity:0}.gengage-chat-comparison-key-differences-content{color:var(--text-primary);padding:0 16px 16px;font-size:14px;line-height:1.7}.gengage-chat-comparison-key-differences-content ul,.gengage-chat-comparison-key-differences-content ol{margin:0;padding-left:20px}.gengage-chat-comparison-key-differences-content li+li{margin-top:8px}@media (width<=960px){.gengage-chat-comparison-recommended-body{grid-template-columns:1fr}.gengage-chat-comparison-recommended-title{font-size:20px}}.gengage-chat-pills{border-top:1px solid var(--border-subtle);background:var(--surface-card);padding:8px 12px 6px;position:relative}.gengage-chat-pills-scroll{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding-right:28px;display:flex;overflow-x:auto}.gengage-chat-pills-scroll::-webkit-scrollbar{display:none}.gengage-chat-root--mobile .gengage-chat-pills-scroll{flex-wrap:wrap;gap:6px}.gengage-chat-root--mobile .gengage-chat-pill{white-space:normal;max-width:100%}.gengage-chat-pill{border:1px solid var(--ds-chip-border-active);background:var(--ds-chip-bg-active);color:var(--ds-chip-fg-active);white-space:nowrap;cursor:pointer;border-radius:999px;flex:none;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,color .15s}.gengage-chat-pill:hover{background:color-mix(in srgb, var(--client-primary) 12%, white);border-color:color-mix(in srgb, var(--client-primary) 36%, white)}.gengage-chat-pill:active{transform:none}.gengage-chat-pill--rich{border-radius:18px;align-items:center;gap:10px;padding:8px 14px 8px 8px;display:flex}.gengage-chat-pill-img{object-fit:cover;background:var(--surface-card);border-radius:12px;flex-shrink:0;width:32px;height:32px}.gengage-chat-pill-text{font-size:13px;font-weight:600;line-height:1.2}.gengage-chat-pill-desc{display:none}.gengage-chat-pill--rich .gengage-chat-pill-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:11px;font-weight:500;display:block;overflow:hidden}.gengage-chat-pills-arrow{border:1px solid var(--border-default);background:var(--surface-card);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-1);z-index:1;border-radius:12px;justify-content:center;align-items:center;font-size:16px;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.gengage-chat-pills-arrow:hover{background:var(--surface-card-soft);color:var(--client-primary)}@media (prefers-reduced-motion:reduce){.gengage-chat-uispec>*,.gengage-chat-action-btn,.gengage-chat-product-card,.gengage-chat-product-card-cta,.gengage-chat-send,.gengage-chat-launcher-container,.gengage-chat-launcher,.gengage-chat-pill,.gengage-chat-drawer,.gengage-chat-typing-dots span,.gengage-chat-thinking-step-marker--active,.gengage-chat-bubble,.gengage-chat-panel-skeleton-block,.gengage-chat-ai-toppick-card,.gengage-chat-mic-btn--active,.gengage-chat-ai-toppick-spinner:after,.gengage-chat-cart-toast,.gengage-chat-header-btn--cart-flash{transition:none!important;animation:none!important;transform:none!important}}.gengage-chat-bubble--user{position:relative}.gengage-chat-rollback-btn{border-radius:var(--radius-pill);background:var(--surface-card-muted);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;opacity:0;border:none;justify-content:center;align-items:center;padding:0;transition:opacity .15s;display:flex;position:absolute;top:50%;left:-28px;transform:translateY(-50%)}.gengage-chat-bubble--user:hover .gengage-chat-rollback-btn{opacity:1}.gengage-chat-rollback-btn:hover{background:var(--client-primary);color:var(--client-on-primary)}.gengage-chat-bubble--hidden{display:none}.gengage-chat-ai-top-picks{flex-direction:column;gap:12px;padding:8px 0;scroll-margin-top:60px;display:flex}.gengage-chat-ai-top-picks-title{color:var(--text-primary);margin:0 0 4px;font-size:15px;font-weight:600}.gengage-chat-ai-top-picks-scroll{flex-direction:column;gap:10px;min-width:0;display:flex}.gengage-chat-ai-top-picks-rest,.gengage-chat-ai-toppick-top-row{display:contents}.gengage-chat-ai-toppick-detail{width:100%;min-width:0}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks{gap:0;padding-top:4px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-title{flex-shrink:0;width:100%;margin:0 0 10px;font-size:18px;font-weight:700;line-height:1.2}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll{scrollbar-width:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,auto);align-items:stretch;gap:12px;margin:0;padding:12px 0;display:grid;overflow:visible}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact{flex:initial;scroll-snap-align:none;width:100%;min-width:0;max-width:none}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child{grid-column:1/-1;grid-template-rows:auto auto;grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:12px 18px;display:grid}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child:has(.gengage-chat-ai-toppick-detail){grid-template-rows:auto auto auto}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact{flex-direction:column;align-items:stretch}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-media,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-media{max-height:140px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-media{aspect-ratio:4/3;grid-area:1/1/span 2;max-height:260px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child:has(.gengage-chat-ai-toppick-detail) .gengage-chat-ai-toppick-media{grid-row:1/span 3}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-detail{grid-area:2/2;min-width:0;padding-top:0}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-img,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-img{object-fit:contain;flex-shrink:0;width:100%;height:100%;max-height:140px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-img{max-height:260px}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-body,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-body{flex:1;min-height:0;padding:0}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-body{grid-area:1/2;padding-top:6px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child:has(.gengage-chat-ai-toppick-detail) .gengage-chat-ai-toppick-cta{grid-row:3}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-cta{border:1px solid var(--ds-button-secondary-border);background:var(--ds-button-secondary-bg);width:calc(100% - 24px);color:var(--ds-button-secondary-fg);align-self:stretch;margin:14px 12px 12px}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-cta{border:1px solid var(--ds-button-secondary-border);background:var(--ds-button-secondary-bg);width:auto;min-width:180px;color:var(--ds-button-secondary-fg);grid-area:2/2;place-self:end start;margin:0}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-cta:hover,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-cta:hover{background:var(--ds-button-secondary-bg-hover);filter:none}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner{border-color:color-mix(in srgb, var(--client-primary) 26%, var(--border-default));box-shadow:var(--shadow-2)}.gengage-chat-ai-toppick-rating{border:1px solid var(--border-subtle);background:var(--surface-card-muted);color:var(--text-secondary);border-radius:999px;align-self:flex-start;align-items:center;gap:5px;margin-top:4px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.gengage-chat-ai-toppick-rating-icon{color:color-mix(in srgb, var(--warning) 60%, var(--text-primary));justify-content:center;align-items:center;line-height:0;display:inline-flex}.gengage-chat-ai-toppick-rating-value{color:var(--text-primary)}.gengage-chat-ai-toppick-media .gengage-chat-ai-toppick-discount-badge{background:var(--client-primary);color:var(--client-on-primary);z-index:1;border-radius:999px;padding:2px 6px;font-size:9px;font-weight:800;line-height:1.2;position:absolute;top:4px;left:4px;right:auto}.gengage-chat-ai-toppick-card--winner,.gengage-chat-ai-toppick-card--compact{--_badge-inset-top:12px;--_badge-height:30px;box-sizing:border-box;padding:calc(var(--_badge-inset-top) + var(--_badge-height) + 6px) 12px 12px;border-radius:var(--radius-card);background:var(--surface-card);flex-direction:column;align-items:stretch;transition:box-shadow .2s,background .15s,transform .15s;display:flex;position:relative;overflow:visible}.gengage-chat-ai-toppick-card--winner{border:1.5px solid color-mix(in srgb, var(--client-primary) 24%, var(--border-default))}.gengage-chat-ai-toppick-card--winner:hover{background:var(--surface-card-muted);box-shadow:var(--shadow-2)}.gengage-chat-ai-toppick-card--compact{border:1px solid var(--border-default)}.gengage-chat-ai-toppick-card--compact:hover{background:var(--surface-card-muted);box-shadow:var(--shadow-1);transform:translateY(-1px)}.gengage-chat-ai-toppick-badge{top:var(--_badge-inset-top,12px);z-index:2;box-sizing:border-box;text-transform:uppercase;letter-spacing:.04em;pointer-events:none;white-space:normal;border-radius:999px;align-items:center;max-width:calc(100% - 28px);margin:0;padding:8px 14px;font-size:11px;font-weight:800;line-height:1.25;display:inline-flex;position:absolute;left:14px}.gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-badge{background:var(--client-primary);color:var(--client-on-primary);box-shadow:0 10px 18px color-mix(in srgb, var(--client-primary) 20%, transparent)}.gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-badge{background:var(--surface-card);color:color-mix(in srgb, var(--client-primary) 72%, var(--text-primary));border:1px solid color-mix(in srgb, var(--client-primary) 24%, var(--border-default))}.gengage-chat-ai-toppick-media{aspect-ratio:1;border:1px solid var(--border-subtle);background:var(--surface-card);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:100%;margin-top:4px;margin-bottom:8px;display:flex;position:relative;overflow:hidden}.gengage-chat-ai-toppick-img{object-fit:contain;box-sizing:border-box;width:auto;max-width:100%;height:auto;max-height:100%;padding:4px}.gengage-chat-ai-toppick-body{flex-direction:column;flex:1;gap:0;min-width:0;padding:0;display:flex}.gengage-chat-ai-toppick-name{color:var(--text-primary);text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:4px;font-size:14px;font-weight:700;line-height:1.375;display:-webkit-box;overflow:hidden}.gengage-chat-ai-toppick-role{color:var(--client-primary);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.gengage-chat-ai-toppick-labels{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.gengage-chat-ai-toppick-label{border-radius:999px;padding:4px 8px;font-size:10px;font-weight:700}.gengage-chat-ai-toppick-label[data-sentiment=positive]{background:color-mix(in srgb, var(--success) 12%, white);color:color-mix(in srgb, var(--success) 82%, var(--text-primary))}.gengage-chat-ai-toppick-label[data-sentiment=negative]{background:color-mix(in srgb, var(--error) 10%, white);color:color-mix(in srgb, var(--error) 82%, var(--text-primary))}.gengage-chat-ai-toppick-label[data-sentiment=neutral]{background:var(--surface-card-muted);color:var(--text-secondary)}.gengage-chat-ai-toppick-reason{color:var(--text-secondary);margin:10px 0 0;font-size:13px;line-height:1.5}.gengage-chat-ai-toppick-review{border:1px solid var(--border-subtle);background:var(--surface-card-muted);color:var(--text-primary);border-radius:14px;margin-top:10px;padding:10px 12px;font-size:12px;line-height:1.45}.gengage-chat-ai-toppick-snippet{color:var(--text-secondary);margin:8px 0 0;font-size:12px;line-height:1.45}.gengage-chat-ai-toppick-price{color:var(--text-primary);margin-top:4px;font-size:14px;font-weight:700}.gengage-chat-ai-toppick-price-current{color:var(--gengage-discounted-price-color,var(--text-primary))}.gengage-chat-ai-toppick-original-price{color:var(--text-secondary);font-size:12px;font-weight:400;text-decoration:line-through}.gengage-chat-ai-toppick-price-stack{flex-direction:column;align-items:flex-start;gap:2px;margin-top:4px;display:flex}.gengage-chat-ai-toppick-price-stack .gengage-chat-campaign-reason{font-size:11px;font-weight:700}.gengage-chat-campaign-price-badge{box-sizing:border-box;border-radius:var(--radius-control,10px);background-image:linear-gradient(var(--gengage-campaign-price-badge-fill,#fff) 0 0), linear-gradient(135deg, var(--_gengage-campaign-reason-start), var(--_gengage-campaign-reason-end));background-origin:border-box;background-clip:padding-box,border-box;border:1px solid #0000;flex-direction:row;align-items:center;gap:8px;max-width:100%;padding:7px 9px;display:inline-flex}.gengage-chat-campaign-price-badge__logo{flex-shrink:0;justify-content:center;align-items:center;display:flex}.gengage-chat-campaign-price-badge__logo img{object-fit:contain;width:auto;max-width:64px;height:auto;max-height:26px;display:block}.gengage-chat-campaign-price-badge__body{flex-direction:column;justify-content:center;align-items:flex-start;gap:1px;min-width:0;display:flex}.gengage-chat-campaign-price-badge__reason{letter-spacing:.02em;background:linear-gradient(90deg, var(--_gengage-campaign-reason-start), var(--_gengage-campaign-reason-end));color:#0000;-webkit-background-clip:text;background-clip:text;max-width:100%;margin:0;font-size:10px;font-weight:700;line-height:1.2}.gengage-chat-campaign-price-badge__sale{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:14px;font-weight:800;line-height:1.15}.gengage-chat-product-card-price-row .gengage-chat-campaign-price-badge__sale{font-size:13px}.gengage-chat-product-summary__price .gengage-chat-campaign-price-badge__sale{font-size:12px}.gengage-chat-product-details-price .gengage-chat-campaign-price-badge{border-radius:var(--radius-control,12px);padding:9px 11px}.gengage-chat-product-details-price .gengage-chat-campaign-price-badge__reason{font-size:11px}.gengage-chat-product-details-price .gengage-chat-campaign-price-badge__sale{font-size:18px}:is(.gengage-chat-ai-toppick-price--inline:has(.gengage-chat-campaign-price-badge),.gengage-chat-product-card-price-row:has(.gengage-chat-campaign-price-badge),.gengage-chat-product-summary__price--inline:has(.gengage-chat-campaign-price-badge),.gengage-chat-product-details-price--inline:has(.gengage-chat-campaign-price-badge)){align-items:last baseline}:is(.gengage-chat-ai-toppick-price--inline:has(.gengage-chat-campaign-price-badge) .gengage-chat-ai-toppick-price-sep,.gengage-chat-product-card-price-row:has(.gengage-chat-campaign-price-badge) .gengage-chat-product-card-price-sep,.gengage-chat-product-summary__price--inline:has(.gengage-chat-campaign-price-badge) .gengage-chat-product-summary__price-sep,.gengage-chat-product-details-price--inline:has(.gengage-chat-campaign-price-badge) .gengage-chat-product-details-price-sep){align-self:last baseline}.gengage-chat-ai-toppick-price--inline{flex-flow:wrap;align-items:baseline;gap:0 6px;display:flex}.gengage-chat-ai-toppick-price-sep{background:var(--border-subtle);flex-shrink:0;align-self:center;width:1px;height:.85em;margin:0 1px;display:inline-block}.gengage-chat-ai-toppick-price--inline .gengage-chat-ai-toppick-original-price{font-size:14px;font-weight:500;text-decoration:none}.gengage-chat-ai-toppick-price--inline .gengage-chat-ai-toppick-price-current{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:14px;font-weight:800}.gengage-chat-ai-toppick-cta{border:1px solid var(--ds-button-primary-border);border-radius:var(--radius-control,12px);background:var(--ds-button-primary-bg);width:calc(100% - 24px);color:var(--ds-button-primary-fg);cursor:pointer;text-align:center;box-sizing:border-box;opacity:0;pointer-events:none;flex-shrink:0;align-self:stretch;margin:14px 12px 12px;padding:8px 0;font-size:13px;font-weight:700;transition:opacity .18s,transform .18s,background .15s;display:block;transform:translateY(6px)}.gengage-chat-ai-toppick-card--winner:hover .gengage-chat-ai-toppick-cta,.gengage-chat-ai-toppick-card--compact:hover .gengage-chat-ai-toppick-cta,.gengage-chat-ai-toppick-card--winner:focus-within .gengage-chat-ai-toppick-cta,.gengage-chat-ai-toppick-card--compact:focus-within .gengage-chat-ai-toppick-cta{opacity:1;pointer-events:auto;transform:translateY(0)}.gengage-chat-ai-toppick-cta:hover{background:var(--ds-button-primary-bg-hover)}.gengage-chat-ai-toppick-spinner{background:color-mix(in srgb, var(--surface-card) 78%, transparent);z-index:6;border-radius:12px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.gengage-chat-ai-toppick-spinner:after{content:"";border:3px solid var(--border-default);border-top-color:var(--ai-accent-start);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite gengage-spin}@keyframes gengage-spin{to{transform:rotate(360deg)}}.gengage-chat-root--mobile .gengage-chat-ai-top-picks{gap:8px;padding:4px 0}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-title{margin:0 0 2px;font-size:14px}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-scroll{flex-direction:column;gap:8px;min-width:0;padding:6px 0 2px;display:flex;overflow:visible}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-scroll>:first-child{flex-direction:column;align-items:stretch;width:100%;min-width:0;display:flex}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-scroll>:first-child.gengage-chat-ai-toppick-card--winner{flex-direction:column}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none;flex-flow:row;gap:8px;min-width:0;margin:0 -2px;padding:2px 2px 8px;display:flex;overflow:auto visible}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest--uniform-mobile{scroll-snap-type:none;flex-direction:column;margin:0;padding:0;overflow-x:visible}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest::-webkit-scrollbar{width:0;height:0;display:none}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest .gengage-chat-ai-toppick-card--compact{scroll-snap-align:start;flex:0 0 min(82vw,272px);width:min(82vw,272px);min-width:0;max-width:272px}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest--uniform-mobile .gengage-chat-ai-toppick-card--compact{scroll-snap-align:none;flex:none;width:100%;max-width:none}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner{scroll-snap-align:none;flex-shrink:1;width:100%;min-width:0;max-width:none;padding:10px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact{scroll-snap-align:none;flex-shrink:1;width:100%;min-width:0;max-width:none;padding:6px 8px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner{border:1.5px solid color-mix(in srgb, var(--client-primary) 28%, var(--border-default));margin-bottom:8px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact{border:1px solid var(--border-default);box-shadow:none;flex-direction:column;align-items:stretch}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform{margin-top:8px;padding:10px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-top-row,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-top-row{flex-direction:row;align-items:flex-start;gap:10px;width:100%;min-width:0;display:flex}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-media,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-media{aspect-ratio:1;border-radius:10px;flex:0 0 clamp(96px,30vw,124px);width:clamp(96px,30vw,124px);height:clamp(96px,30vw,124px);max-height:none;margin:0}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-img,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-img{object-fit:contain;width:100%;height:100%;max-height:100%;padding:4px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-body,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-body{flex:1;min-width:0;padding-top:2px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-detail{width:100%;margin-top:10px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-reason{color:var(--text-primary);margin:0;font-size:12px;line-height:1.45;display:block!important}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-review{color:var(--text-secondary);border:1px solid var(--border-subtle);background:var(--surface-card-muted);border-radius:12px;margin-top:8px;padding:8px 10px;font-size:12px;font-style:italic;line-height:1.4;display:block!important}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-top-row{flex-direction:row;align-items:flex-start;gap:6px;width:100%;min-width:0;display:flex}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-media{aspect-ratio:1;border-radius:8px;flex:0 0 64px;width:64px;height:64px;max-height:64px;margin:0}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-img{object-fit:contain;width:100%;max-height:100%;padding:2px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-body{flex:1;min-width:0}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-rating{display:none}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-detail{width:100%;margin-top:4px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-snippet{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;margin:0;font-size:10px;line-height:1.3;display:-webkit-box;overflow:hidden}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-role-line{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:0 0 2px;font-size:9px;font-weight:600;line-height:1.15}.gengage-chat-root--mobile .gengage-chat-ai-toppick-snippet{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-media .gengage-chat-product-card-img-actions{gap:5px;top:3px;right:5px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-media .gengage-chat-product-card-img-actions{gap:5px;top:5px;right:6px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-badge,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-badge{letter-spacing:.04em;background:var(--client-primary);max-width:calc(100% - 18px);color:var(--client-on-primary);box-shadow:none;border:none;padding:2px 6px;font-size:8px;font-weight:700;line-height:1.15;top:-14px;left:8px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-name{margin-bottom:1px;font-size:12px;line-height:1.22}.gengage-chat-root--mobile .gengage-chat-ai-toppick-name{margin-bottom:2px;font-size:13px;line-height:1.28}.gengage-chat-root--mobile .gengage-chat-ai-toppick-rating{gap:3px;margin-top:2px;padding:2px 6px;font-size:10px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-price{margin-top:1px;font-size:13px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-price{margin-top:2px;font-size:13px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-original-price{font-size:11px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-labels,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-cta{display:none!important}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-cta,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-cta{opacity:1;pointer-events:auto;border:1px solid var(--client-primary);background:var(--surface-card);width:calc(100% - 16px);color:var(--client-primary);box-shadow:none;filter:none;align-self:stretch;margin:8px 8px 6px;padding:6px 0;font-size:12px;font-weight:600;transform:none}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-cta{display:block!important}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-cta:hover,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-cta:hover{background:color-mix(in srgb, var(--client-primary) 10%, var(--surface-card));color:var(--client-primary);border-color:var(--client-primary);filter:none}.gengage-chat-root--mobile .gengage-chat-rollback-btn{left:-24px}.gengage-chat-grounding-review{align-items:center;gap:12px;padding:12px 16px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.gengage-chat-grounding-review:hover{background:var(--ds-card-bg-hover);border-color:var(--ds-card-border-hover);box-shadow:var(--ds-card-shadow-hover)}.gengage-chat-grounding-review-icon{background:color-mix(in srgb, var(--client-primary) 8%, var(--surface-card));width:32px;height:32px;color:var(--client-primary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.gengage-chat-grounding-review-icon svg{width:18px;height:18px;display:block}.gengage-chat-grounding-review-body{flex:1;min-width:0}.gengage-chat-grounding-review-title{color:var(--text-primary);font-size:13px;font-weight:600}.gengage-chat-grounding-review-subtitle{color:var(--text-muted);margin-top:2px;font-size:12px}.gengage-chat-grounding-review-cta{color:var(--client-primary);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;font-size:13px;font-weight:600;display:inline-flex}.gengage-chat-grounding-review-cta-icon{align-items:center;display:inline-flex}.gengage-chat-grounding-review-cta-icon svg{width:14px;height:14px;display:block}.gengage-chat-grouping-cards{flex-direction:column;gap:6px;display:flex}.gengage-chat-grouping-cards-scroll{flex-direction:column;gap:6px;min-width:0;display:flex}.gengage-chat-grouping-card{background:var(--surface-card-soft);border:1px solid var(--border-default);border-radius:var(--radius-control);align-items:center;gap:10px;padding:8px 12px;transition:background .15s,border-color .15s;display:flex}.gengage-chat-grouping-card:hover{background:color-mix(in srgb, var(--client-primary) 6%, white);border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default))}.gengage-chat-grouping-card-arrow{color:var(--client-primary);flex-shrink:0;font-size:14px;display:none}.gengage-chat-grouping-card-img{border-radius:calc(var(--radius-control) - 4px);object-fit:cover;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;flex-shrink:0;width:48px;min-width:48px;height:48px;min-height:48px}.gengage-chat-grouping-card-body{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.gengage-chat-grouping-card-name{color:var(--text-primary);font-size:13px;font-weight:600}.gengage-chat-grouping-card-desc{color:var(--text-muted);font-size:12px}.gengage-chat-grouping-card-labels{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.gengage-chat-grouping-card-label{color:var(--text-secondary);background:var(--surface-card-muted);border:1px solid var(--border-subtle);border-radius:999px;padding:4px 8px;font-size:10px;font-weight:700;line-height:1.2}.gengage-chat-root--mobile .gengage-chat-grouping-card-img{display:none}.gengage-chat-root--mobile .gengage-chat-grouping-card-arrow{display:inline}.gengage-chat-suggested-search-cards{flex-direction:column;gap:8px;display:flex}.gengage-chat-suggested-search-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-card);box-shadow:var(--shadow-1);align-items:center;gap:14px;padding:14px 16px;transition:background .15s,border-color .15s,box-shadow .15s,transform .15s;display:flex}.gengage-chat-suggested-search-card:hover{background:var(--surface-card);border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default));box-shadow:var(--shadow-2);transform:translateY(-1px)}.gengage-chat-suggested-search-card-img{object-fit:contain;background:var(--surface-card-muted);border:1px solid var(--border-subtle);border-radius:14px;flex-shrink:0;width:64px;height:64px;padding:4px}.gengage-chat-suggested-search-card-body{flex:1;min-width:0}.gengage-chat-suggested-search-card-name{color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden}.gengage-chat-product-details-gallery{position:relative}.gengage-chat-product-details-gallery .gengage-chat-product-details-img{touch-action:pan-y}.gengage-chat-product-gallery-nav{z-index:3;border:1px solid var(--border-default);border-radius:var(--radius-pill);cursor:pointer;background:color-mix(in srgb, var(--surface-card) 92%, transparent);width:36px;min-width:36px;height:36px;min-height:36px;color:var(--text-primary);box-shadow:var(--shadow-1);justify-content:center;align-items:center;padding:0;transition:background .15s,opacity .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gengage-chat-product-gallery-nav:hover:not(:disabled){background:var(--surface-card);color:var(--client-primary)}.gengage-chat-product-gallery-nav:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}.gengage-chat-product-gallery-nav:disabled{opacity:.35;cursor:not-allowed}.gengage-chat-product-gallery-nav--prev{left:8px}.gengage-chat-product-gallery-nav--next{right:8px}.gengage-chat-product-gallery-thumbs{scrollbar-width:thin;justify-content:center;gap:8px;width:100%;padding:10px 0 4px;display:flex;overflow-x:auto}.gengage-chat-product-gallery-thumb{object-fit:cover;cursor:pointer;background:var(--surface-card);border:2px solid #0000;border-radius:8px;flex-shrink:0;width:56px;height:56px;transition:border-color .15s}.gengage-chat-product-gallery-thumb:hover{border-color:var(--border-strong)}.gengage-chat-product-gallery-thumb--active{border-color:var(--client-primary)}.gengage-chat-product-gallery-thumb-more{background:var(--surface-card-muted);width:56px;height:56px;color:var(--text-secondary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.gengage-chat-product-variants-label{color:var(--text-muted);text-transform:none;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:600}.gengage-chat-product-variants-list{flex-wrap:wrap;gap:6px;display:flex}.gengage-chat-product-variant-btn{border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;padding:6px 12px;font-size:12px;transition:background .15s,border-color .15s}.gengage-chat-product-variant-btn:hover{background:var(--surface-card-muted);border-color:color-mix(in srgb, var(--client-primary) 20%, var(--border-default));color:var(--client-primary)}.gengage-chat-product-details-panel{border-radius:var(--radius-card);background:var(--surface-card);box-shadow:var(--shadow-1);gap:16px;padding:16px}.gengage-chat-product-details-media{border-color:var(--border-default);border-radius:var(--radius-card);background:var(--surface-card-soft);justify-content:center;min-height:320px}.gengage-chat-product-details-img{max-height:420px}.gengage-chat-product-details-content{gap:12px}.gengage-chat-product-details-brand{color:var(--client-primary);font-size:12px;font-weight:800;line-height:1.2}.gengage-chat-product-details-title{font-size:22px;line-height:1.2}.gengage-chat-product-details-rating{border:1px solid color-mix(in srgb, var(--warning) 24%, var(--border-default));background:color-mix(in srgb, var(--warning) 10%, var(--surface-card));color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));gap:6px;padding:6px 10px;font-family:inherit}button.gengage-chat-product-details-rating{border:1px solid color-mix(in srgb, var(--warning) 24%, var(--border-default));cursor:pointer}.gengage-chat-product-details-rating--clickable:hover{border-color:color-mix(in srgb, var(--warning) 42%, var(--border-default));background:color-mix(in srgb, var(--warning) 14%, var(--surface-card))}.gengage-chat-product-details-rating .gengage-star-rating{line-height:1}.gengage-chat-product-details-rating-value{color:var(--text-primary)}.gengage-chat-product-details-price{flex-wrap:wrap;gap:10px}.gengage-chat-product-details-original-price{order:2}.gengage-chat-product-details-current-price{order:1;font-size:30px}.gengage-chat-product-details-discount-badge{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--error) 12%, white);min-height:24px;color:color-mix(in srgb, var(--error) 84%, var(--text-primary));order:3;align-items:center;padding:2px 8px;font-size:12px;font-weight:800;display:inline-flex}.gengage-chat-product-details-price--inline .gengage-chat-product-details-original-price,.gengage-chat-product-details-price--inline .gengage-chat-product-details-current-price{order:0;font-size:30px}.gengage-chat-product-details-price--inline .gengage-chat-product-details-original-price{font-weight:500}.gengage-chat-product-details-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.gengage-chat-product-details-fact{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--surface-card-soft);min-width:0;padding:8px 10px}.gengage-chat-product-details-fact dt,.gengage-chat-product-details-fact dd{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.gengage-chat-product-details-fact dt{color:var(--text-muted);font-size:11px;font-weight:700}.gengage-chat-product-details-fact dd{color:var(--text-primary);margin-top:2px;font-size:13px;font-weight:700}.gengage-chat-product-variants{margin-top:4px}.gengage-chat-product-variants-label{color:var(--text-primary);letter-spacing:normal;margin-bottom:8px;font-size:14px;font-weight:800}.gengage-chat-product-variants-list{gap:8px}.gengage-chat-product-variant-btn{border-radius:var(--radius-control);min-height:44px;color:var(--text-primary);gap:8px;padding:7px 10px;font-size:13px;font-weight:700}.gengage-chat-product-variant-btn--active{border-color:var(--client-primary);background:color-mix(in srgb, var(--client-primary) 8%, var(--surface-card));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--client-primary) 36%, transparent);color:var(--client-primary)}.gengage-chat-product-variant-btn--out{opacity:.48;cursor:not-allowed}.gengage-chat-product-variant-swatch{border:1px solid var(--border-default);background:var(--surface-card-muted);width:22px;height:22px;box-shadow:inset 0 0 0 2px var(--surface-card);border-radius:50%;flex:0 0 22px}.gengage-chat-product-variant-swatch--image{object-fit:cover;box-shadow:none}.gengage-chat-product-variant-label,.gengage-chat-product-variant-price{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.gengage-chat-product-variant-price{color:var(--text-secondary);font-size:12px;font-weight:700}.gengage-chat-product-details-actions{gap:10px;margin-top:6px}.gengage-chat-product-details-atc,.gengage-chat-product-details-cta{border-radius:var(--radius-control);min-height:44px}.gengage-chat-product-details-atc{border:1px solid var(--ds-button-primary-border);background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg)}.gengage-chat-product-details-atc:hover{background:var(--ds-button-primary-bg-hover);filter:none}.gengage-chat-product-details-cta.gds-btn-secondary{border-color:var(--ds-button-secondary-border);background:var(--ds-button-secondary-bg);color:var(--ds-button-secondary-fg)}.gengage-chat-product-details-cta.gds-btn-secondary:hover{background:var(--ds-button-secondary-bg-hover)}@media (width>=960px){.gengage-chat-product-details-panel{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;display:grid}.gengage-chat-product-details-media{position:sticky;top:0}.gengage-chat-product-detail-tabs{grid-column:1/-1}}.gengage-chat-root--mobile .gengage-chat-product-details-panel{box-shadow:none;gap:10px;padding:10px}.gengage-chat-root--mobile .gengage-chat-product-details-media{min-height:220px}.gengage-chat-root--mobile .gengage-chat-product-details-title{font-size:18px}.gengage-chat-root--mobile .gengage-chat-product-details-current-price{font-size:24px}.gengage-chat-root--mobile .gengage-chat-product-details-facts{grid-template-columns:1fr}.gengage-chat-root--mobile .gengage-chat-product-details-actions{grid-template-columns:1fr 1fr 44px;align-items:stretch;display:grid}.gengage-chat-root--mobile .gengage-chat-product-details-actions>.gengage-chat-product-details-share{width:44px;min-width:44px}.gengage-chat-root--mobile .gengage-chat-product-details-atc,.gengage-chat-root--mobile .gengage-chat-product-details-cta{width:100%;padding-inline:10px}.gengage-chat-product-grid-wrapper{flex-direction:column;gap:6px;display:flex}.gengage-chat-consulting-style-picker{border:1px solid color-mix(in srgb, var(--client-primary) 18%, var(--border-default));background:linear-gradient(160deg, color-mix(in srgb, var(--surface-card) 80%, white), color-mix(in srgb, var(--surface-card-soft) 84%, white));border-radius:20px;padding:12px}.gengage-chat-consulting-style-picker-title{color:var(--text-primary);margin-bottom:10px;font-size:14px;font-weight:800}.gengage-chat-consulting-style-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.gengage-chat-consulting-style-btn{border:1px solid var(--border-default);background:var(--surface-card);cursor:pointer;text-align:left;border-radius:14px;flex-direction:column;gap:0;padding:6px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.gengage-chat-consulting-style-btn:hover{border-color:color-mix(in srgb, var(--client-primary) 26%, var(--border-default));transform:translateY(-1px)}.gengage-chat-consulting-style-btn--active{border-color:color-mix(in srgb, var(--client-primary) 40%, var(--border-default));box-shadow:0 0 0 2px color-mix(in srgb, var(--client-primary) 16%, transparent), var(--shadow-1)}.gengage-chat-consulting-style-btn--loading{border-style:dashed}.gengage-chat-consulting-style-btn--muted{opacity:.78}.gengage-chat-consulting-style-media{border-radius:12px;position:relative;overflow:hidden}.gengage-chat-consulting-style-image{aspect-ratio:4/5;object-fit:cover;border:1px solid var(--border-subtle);-webkit-user-drag:none;-webkit-user-select:none;user-select:none;border-radius:12px;width:100%}.gengage-chat-consulting-style-caption{color:#fff;background:#0000008c;border-radius:12px;padding:8px 10px;font-size:15px;font-weight:800;line-height:1.2;position:absolute;bottom:10px;left:10px;right:10px}.gengage-chat-consulting-style-status{color:var(--text-primary);background:color-mix(in srgb, white 88%, var(--client-primary) 12%);border:1px solid color-mix(in srgb, var(--client-primary) 18%, var(--border-default));border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;position:absolute;top:10px;right:10px}.gengage-chat-consulting-loading-panel{border:1px solid color-mix(in srgb, var(--client-primary) 14%, var(--border-default));background:linear-gradient(180deg, var(--surface-card-soft), var(--surface-card));border-radius:18px;flex-direction:column;gap:12px;padding:16px;display:flex}.gengage-chat-consulting-loading-panel-title{color:var(--text-primary);margin:0;font-size:18px;font-weight:800}.gengage-chat-consulting-loading-panel-copy{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.gengage-chat-consulting-loading-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.gengage-chat-consulting-loading-card{border:1px solid var(--border-default);background:linear-gradient(90deg, color-mix(in srgb, var(--surface-card-soft) 94%, white) 20%, color-mix(in srgb, white 86%, var(--surface-card-soft) 14%) 50%, color-mix(in srgb, var(--surface-card-soft) 94%, white) 80%);background-size:220% 100%;border-radius:18px;min-height:240px;animation:1.2s linear infinite gengage-chat-consulting-loading-shimmer}@keyframes gengage-chat-consulting-loading-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.gengage-chat-consulting-group{border:1px solid color-mix(in srgb, var(--client-primary) 14%, var(--border-default));background:linear-gradient(180deg, var(--surface-card-soft), var(--surface-card));border-radius:16px;flex-direction:column;gap:10px;padding:12px;display:flex}.gengage-chat-consulting-group-header{flex-direction:column;gap:4px;min-height:112px;display:flex}.gengage-chat-consulting-group-label{color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:2.5em;margin:0;font-size:16px;font-weight:800;line-height:1.25;display:-webkit-box;overflow:hidden}.gengage-chat-consulting-group-reason{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.gengage-chat-consulting-group-grid{grid-template-columns:repeat(var(--consulting-group-columns,4), minmax(0, 1fr));justify-content:stretch;align-items:stretch;gap:14px;margin-bottom:2px;display:grid}.gengage-chat-consulting-group-grid .gengage-chat-product-card{width:100%;min-width:0;max-width:none;height:100%}.gengage-chat-beauty-photo-step{padding:0 12px}.gengage-chat-beauty-photo-step-card{border:1px solid color-mix(in srgb, var(--client-primary) 20%, var(--border-default));background:linear-gradient(165deg, color-mix(in srgb, var(--surface-card) 85%, white), var(--surface-card-soft));box-shadow:var(--shadow-1);border-radius:18px;gap:10px;padding:12px;display:flex}.gengage-chat-beauty-photo-step-icon{background:color-mix(in srgb, var(--client-primary) 16%, white);width:34px;height:34px;color:var(--client-primary);border-radius:12px;flex:none;justify-content:center;align-items:center;font-size:18px;font-weight:800;display:inline-flex}.gengage-chat-beauty-photo-step-content{flex:auto;min-width:0}.gengage-chat-beauty-photo-step-title{color:var(--text-primary);font-size:15px;font-weight:800}.gengage-chat-beauty-photo-step-desc{color:var(--text-secondary);margin:4px 0 0;font-size:12px;line-height:1.45}.gengage-chat-beauty-photo-step-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.gengage-chat-beauty-photo-step-upload{border-radius:999px;min-height:34px;padding-inline:14px;font-size:12px;font-weight:800}.gengage-chat-beauty-photo-step-skip{border-radius:999px;min-height:34px;padding-inline:12px;font-size:12px;font-weight:700}.gengage-chat-panel .gengage-chat-consulting-style-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gengage-chat-panel .gengage-chat-consulting-style-image{min-height:250px}.gengage-chat-panel .gengage-chat-consulting-style-caption{padding:10px 12px;font-size:16px}.gengage-chat-panel .gengage-chat-consulting-group{border-radius:18px;min-width:0;padding:14px}.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card{width:100%;min-width:0;max-width:100%;margin-inline:0}.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-img-wrapper{flex-shrink:1;align-self:stretch;min-width:0;max-width:100%}.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-body{min-width:0;max-width:100%}.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-name,.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-price,.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-price-block{overflow-wrap:anywhere;word-break:break-word}.gengage-chat-root--mobile .gengage-chat-consulting-style-grid{grid-template-columns:1fr}.gengage-chat-root--mobile .gengage-chat-consulting-style-image{min-height:220px}.gengage-chat-root--mobile .gengage-chat-consulting-group-grid{grid-template-columns:1fr}.gengage-chat-root--mobile .gengage-chat-consulting-group-grid.gengage-chat-consulting-group-grid--single-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gengage-chat-root--mobile .gengage-chat-consulting-group-grid .gengage-chat-product-card{width:100%;min-width:0;max-width:none}.gengage-chat-root--mobile .gengage-chat-consulting-loading-grid{grid-template-columns:1fr}.gengage-chat-product-grid-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;margin-bottom:2px;display:flex}.gengage-chat-product-grid-head-title{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:18px;font-weight:700;line-height:1.2;overflow:hidden}.gengage-chat-product-grid-head-actions{flex-shrink:0;align-items:center;gap:6px;max-width:52%;display:flex}.gengage-chat-product-sort-toolbar{box-shadow:none;background:0 0;border:none;border-radius:0;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;padding:0;display:flex}.gengage-chat-product-sort-toolbar--inline{flex-wrap:nowrap;justify-content:flex-end}.gengage-chat-product-sort-dropdown{z-index:5;flex:0 auto;width:auto;min-width:0;max-width:200px;position:relative}.gengage-chat-product-sort-toolbar:not(.gengage-chat-product-sort-toolbar--inline) .gengage-chat-product-sort-dropdown{flex:auto;max-width:min(200px,100%)}.gengage-chat-product-sort-dropdown--open{z-index:25}.gengage-chat-product-sort-trigger{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);width:100%;min-height:32px;color:var(--text-primary);cursor:pointer;text-align:left;align-items:center;gap:6px;padding:5px 8px;font-size:12px;font-weight:600;line-height:1.2;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.gengage-chat-product-sort-trigger:hover{border-color:color-mix(in srgb, var(--client-primary) 22%, var(--border-default));background:var(--surface-card-soft)}.gengage-chat-product-sort-trigger:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}.gengage-chat-product-sort-dropdown--open .gengage-chat-product-sort-trigger{border-color:color-mix(in srgb, var(--client-primary) 32%, var(--border-default));box-shadow:var(--shadow-2)}.gengage-chat-product-sort-trigger-icon{color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.gengage-chat-product-sort-dropdown[data-sort-icon=related] .gengage-chat-product-sort-trigger-icon{color:var(--client-primary)}.gengage-chat-product-sort-trigger-icon svg{display:block}.gengage-chat-product-sort-trigger-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.gengage-chat-product-sort-trigger-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s;display:flex}.gengage-chat-product-sort-dropdown--open .gengage-chat-product-sort-trigger-chevron{transform:rotate(180deg)}.gengage-chat-product-sort-menu{width:max-content;min-width:100%;max-width:min(260px,100vw - 48px);margin:0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:auto}.gengage-chat-product-sort-option{border-radius:calc(var(--radius-control) - 4px);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.25;transition:background .12s;display:flex}.gengage-chat-product-sort-option:hover{background:var(--surface-card-muted)}.gengage-chat-product-sort-option--active{color:var(--client-primary);background:var(--client-primary-subtle);font-weight:600}.gengage-chat-product-sort-option-icon{color:var(--text-secondary);flex-shrink:0;display:flex}.gengage-chat-product-sort-option--active .gengage-chat-product-sort-option-icon,.gengage-chat-product-sort-option--active[data-sort-key=related] .gengage-chat-product-sort-option-icon{color:var(--client-primary)}.gengage-chat-product-sort-option-icon svg{display:block}.gengage-chat-product-sort-option-label{flex:auto;min-width:0}.gengage-chat-product-sort-option-check{width:22px;color:var(--client-primary);flex-shrink:0;justify-content:flex-end;display:flex}.gengage-chat-product-sort-option-check--hidden{visibility:hidden}.gengage-chat-product-sort-separator{background:var(--border-default);width:1px;margin:2px}.gengage-chat-comparison-toggle-btn{border:1px solid var(--border-default);border-radius:var(--radius-control,12px);background:var(--surface-card);min-height:32px;color:var(--text-primary);cursor:pointer;white-space:nowrap;flex:none;align-items:center;gap:5px;padding:5px 8px;font-size:12px;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.gengage-chat-comparison-toggle-icon{color:var(--text-secondary);flex-shrink:0;display:flex}.gengage-chat-comparison-toggle-icon svg{display:block}.gengage-chat-comparison-toggle-btn:hover{background:var(--surface-card-soft);border-color:color-mix(in srgb, var(--client-primary) 18%, white);color:var(--client-primary)}.gengage-chat-comparison-toggle-btn--active{border-color:color-mix(in srgb, var(--client-primary) 26%, white);color:var(--client-primary);background:color-mix(in srgb, var(--client-primary) 8%, white)}.gengage-chat-comparison-toggle-btn--active .gengage-chat-comparison-toggle-icon{color:var(--client-primary)}.gengage-chat-comparison-toggle-btn--active:hover{background:var(--client-primary-hover);color:var(--client-on-primary);border-color:var(--client-primary-hover)}.gengage-chat-comparison-toggle-btn--active:hover .gengage-chat-comparison-toggle-icon{color:var(--client-on-primary)}.gengage-chat-comparison-select-wrapper{cursor:pointer;border-radius:var(--radius-control);transition:box-shadow .2s,transform .2s;position:relative}.gengage-chat-comparison-select-wrapper:hover{box-shadow:0 0 0 2px var(--client-focus-ring)}.gengage-chat-comparison-select-wrapper--selected,.gengage-chat-comparison-select-wrapper--selected:hover{box-shadow:none}@media (prefers-reduced-motion:reduce){.gengage-chat-comparison-select-wrapper{transition:none}}.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card{pointer-events:none;transition:opacity .2s,transform .2s,filter .2s}.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-img-actions,.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-discount-badge,.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-buy-footer,.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-cta{opacity:0}.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-body{opacity:.82}.gengage-chat-comparison-select-wrapper:hover>.gengage-chat-product-card,.gengage-chat-comparison-select-wrapper--selected>.gengage-chat-product-card{opacity:1;transform:translateY(-1px)}.gengage-chat-comparison-select-wrapper--selected>.gengage-chat-product-card{box-shadow:0 0 0 2px color-mix(in srgb, var(--client-primary) 26%, white), var(--shadow-1);filter:saturate(1.02);border-color:#0000;outline:none}.gengage-chat-comparison-select-wrapper--selected>.gengage-chat-product-card .gengage-chat-product-card-body{opacity:1}.gengage-chat-comparison-card-hint{display:none}.gengage-chat-comparison-checkbox{z-index:4;cursor:pointer;pointer-events:auto;border:1px solid var(--border-default);background:color-mix(in srgb, var(--surface-card) 94%, white);min-height:40px;color:var(--text-primary);box-shadow:var(--shadow-2);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 14px;display:inline-flex;position:absolute;bottom:16px;left:16px;right:16px}.gengage-chat-comparison-checkbox[data-selected=true]{background:color-mix(in srgb, var(--client-primary) 10%, white);border-color:color-mix(in srgb, var(--client-primary) 22%, var(--border-default));color:var(--client-primary)}.gengage-chat-comparison-checkbox-icon{background:var(--surface-card-soft);color:currentColor;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.gengage-chat-comparison-checkbox[data-selected=true] .gengage-chat-comparison-checkbox-icon{background:var(--client-primary);color:var(--client-on-primary)}.gengage-chat-comparison-checkbox-dot{background:color-mix(in srgb, currentColor 75%, white);border-radius:999px;width:8px;height:8px}.gengage-chat-comparison-checkbox-label{font-size:12px;font-weight:700;line-height:1.2}.gengage-chat-comparison-toggle-btn--hidden{opacity:0;pointer-events:none}@keyframes gengage-comparison-fade-in{0%{opacity:0}to{opacity:1}}.gengage-chat-comparison-toggle-btn--reveal{animation:.5s forwards gengage-comparison-fade-in}@media (prefers-reduced-motion:reduce){.gengage-chat-comparison-toggle-btn--reveal{opacity:1;animation:none}}.gengage-chat-comparison-floating-btn{border:1px solid var(--border-default);background:color-mix(in srgb, var(--surface-card) 92%, white);width:min(100%,520px);color:var(--text-primary);z-index:5;box-shadow:var(--shadow-2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:18px;justify-content:space-between;align-items:center;gap:14px;margin:16px auto 0;padding:12px 14px;display:flex;position:sticky;bottom:12px}.gengage-chat-comparison-dock-slot{display:none}.gengage-chat-root--mobile .gengage-chat-panel.gengage-chat-panel--visible~.gengage-chat-comparison-dock-slot:not(:empty){left:0;right:0;bottom:calc(var(--gengage-chat-input-control-size,44px) + 8px + env(safe-area-inset-bottom,0px));z-index:30;box-sizing:border-box;pointer-events:none;max-width:100%;padding:0 10px;display:block;position:absolute}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot>*{pointer-events:auto}.gengage-chat-comparison-floating-summary{flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.gengage-chat-comparison-floating-count{background:var(--client-primary-subtle);min-width:32px;height:32px;color:var(--client-primary);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:13px;font-weight:800;display:inline-flex}.gengage-chat-comparison-floating-copy{min-width:0}.gengage-chat-comparison-floating-title{color:var(--text-primary);font-size:14px;font-weight:700;line-height:1.2}.gengage-chat-comparison-floating-warning{color:var(--error);margin-top:4px;font-size:12px;line-height:1.35}.gengage-chat-comparison-floating-subtitle{color:var(--text-secondary);margin-top:2px;font-size:12px;line-height:1.35}.gengage-chat-comparison-floating-action{flex:none;min-width:132px}.gengage-chat-comparison-floating-close{border-radius:14px;flex:none;width:40px;height:40px;padding:0}.gengage-chat-comparison-floating-action--disabled{opacity:.6}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-btn{box-sizing:border-box;width:100%;min-width:0;max-width:100%;box-shadow:var(--shadow-3);border-radius:14px;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:10px;margin:0;padding:10px;position:relative;bottom:auto}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-summary{align-items:center;gap:8px;min-height:26px;padding-right:34px;display:flex}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-count{flex-shrink:0;justify-content:center;align-items:center;min-width:26px;height:26px;padding:0 7px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-title{margin:0;font-size:13px;line-height:1.25}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-warning{margin-top:2px;font-size:11px}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-action{box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-width:0;max-width:100%;min-height:42px;padding:0 12px;font-size:13px;display:flex}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-close{box-sizing:border-box;align-self:unset;z-index:10;touch-action:manipulation;border-radius:8px;flex:none;width:26px;min-width:26px;max-width:26px;height:26px;min-height:26px;max-height:26px;padding:0;line-height:0;position:absolute;top:9px;right:9px}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-close svg{width:11px;height:11px;display:block}.gengage-chat-panel-topbar{box-sizing:border-box;height:var(--_gengage-chat-header-height);background:var(--surface-card);z-index:3;border-bottom:none;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:12px;padding:14px 16px;display:flex;position:sticky;top:0}.gengage-chat-panel-topbar-title-wrap{flex:1 1 0;align-items:center;min-width:0;display:flex}.gengage-chat-panel-topbar-back,.gengage-chat-panel-topbar-forward{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);width:42px;min-width:42px;height:42px;min-height:42px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:0;transition:background .15s,border-color .15s,opacity .15s;display:flex}.gengage-chat-panel-topbar-back[hidden],.gengage-chat-panel-topbar-forward[hidden]{display:none}.gengage-chat-panel-topbar-back:hover:not(:disabled),.gengage-chat-panel-topbar-forward:hover:not(:disabled){background:var(--surface-card-soft);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default))}.gengage-chat-panel-topbar-back:disabled,.gengage-chat-panel-topbar-forward:disabled{opacity:.3;cursor:default}.gengage-chat-panel-topbar-title{width:100%;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;text-align:left;letter-spacing:-.01em;font-size:17px;font-weight:700;line-height:1.2;display:block;overflow:hidden}.gengage-chat-panel-topbar-actions{flex:none;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.gengage-chat-panel-topbar-actions:empty{display:none}.gengage-chat-panel-topbar-toolbar-host{justify-content:flex-end;align-items:center;width:100%;display:flex}.gengage-chat-panel-topbar-toolbar-host .gengage-chat-product-sort-toolbar{flex-wrap:nowrap;justify-content:flex-end;gap:8px}.gengage-chat-panel-topbar-close{display:none}@keyframes gengage-typewriter-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.gengage-chat-typewriter-block{animation:.15s both gengage-typewriter-fade-in;display:block}@media (prefers-reduced-motion:reduce){.gengage-chat-typewriter-block{animation:none}}.gengage-product-mention{color:var(--client-primary);cursor:pointer;border-bottom:1px dashed var(--client-primary);font-weight:500;text-decoration:none;transition:border-color .15s}.gengage-product-mention:hover{border-bottom-style:solid}@keyframes gengage-skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.gengage-chat-panel-skeleton-block{animation:1.5s ease-in-out infinite gengage-skeleton-pulse}@media (prefers-reduced-motion:reduce){.gengage-chat-panel-skeleton-block{animation:none}}.gengage-chat-input-chips{scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;gap:6px;padding:4px 12px 2px;display:flex;overflow-x:auto}.gengage-chat-input-chips::-webkit-scrollbar{display:none}.gengage-chat-input-chip{border-radius:var(--radius-pill);border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;padding:8px 12px;font-family:inherit;font-size:12px;font-weight:700;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.gengage-chat-input-chip:hover{background:var(--client-primary-subtle);border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default));color:var(--client-primary)}.gengage-chat-icon{flex-shrink:0;width:14px;height:14px}.gengage-chat-input-chip-icon,.gengage-chat-pill-icon{align-items:center;margin-right:4px;display:inline-flex}.gengage-chat-product-card-img-wrapper,.gengage-chat-product-details-img-wrap{position:relative;overflow:hidden}.gengage-chat-product-card-discount-badge{border-radius:var(--radius-pill);background:var(--_gengage-discount-color);color:var(--text-inverse);z-index:1;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.3;position:absolute;top:8px;left:8px}.gengage-chat-product-card-stock{border-radius:var(--radius-pill);width:fit-content;margin-top:2px;padding:2px 6px;font-size:11px;font-weight:600}.gengage-chat-product-card-stock.is-in-stock{background:color-mix(in srgb, var(--success) 12%, white);color:color-mix(in srgb, var(--success) 82%, var(--text-primary))}.gengage-chat-product-card-stock.is-out-of-stock{background:color-mix(in srgb, var(--error) 10%, white);color:var(--error)}.gengage-chat-find-similar-pill{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:color-mix(in srgb, var(--surface-elevated) 96%, transparent);width:28px;height:28px;color:var(--text-primary);box-shadow:var(--shadow-1);cursor:pointer;z-index:2;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:11px;font-weight:500;transition:opacity .2s,box-shadow .15s;display:inline-flex;position:relative}.gengage-chat-find-similar-pill:hover{box-shadow:var(--shadow-2);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default))}@media (hover:hover) and (pointer:fine){.gengage-chat-find-similar-pill:after{content:attr(data-tooltip);background:color-mix(in srgb, var(--surface-shell) 98%, black);border:1px solid color-mix(in srgb, var(--surface-shell) 60%, white);box-shadow:var(--shadow-2);color:var(--text-inverse);white-space:nowrap;opacity:0;pointer-events:none;z-index:12;border-radius:10px;padding:6px 10px;font-size:11px;font-weight:600;line-height:1.2;transition:opacity .14s;position:absolute;top:50%;right:calc(100% + 8px);transform:translateY(-50%)}.gengage-chat-find-similar-pill:hover:after,.gengage-chat-find-similar-pill:focus-visible:after{opacity:1}}.gengage-chat-find-similar-pill-icon{justify-content:center;align-items:center;display:flex}.gengage-chat-find-similar-pill-icon svg{display:block}.gengage-chat-find-similar-pill-text{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gengage-chat-product-card-img-wrapper .gengage-chat-product-card-img-actions,.gengage-chat-ai-toppick-media .gengage-chat-product-card-img-actions{transition:opacity .2s}@media (hover:hover) and (pointer:fine){.gengage-chat-product-card-img-wrapper:not(:hover) .gengage-chat-product-card-img-actions,.gengage-chat-ai-toppick-media:not(:hover) .gengage-chat-product-card-img-actions{opacity:0;pointer-events:none}.gengage-chat-product-card-img-wrapper:hover .gengage-chat-product-card-img-actions,.gengage-chat-ai-toppick-media:hover .gengage-chat-product-card-img-actions{opacity:1;pointer-events:auto}}@media (hover:none),(pointer:coarse){.gengage-chat-product-card-img-wrapper .gengage-chat-product-card-img-actions,.gengage-chat-ai-toppick-media .gengage-chat-product-card-img-actions{opacity:1;pointer-events:auto}}.gengage-chat-product-details-img-wrap .gengage-chat-find-similar-pill{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--surface-shell) 88%, transparent);width:auto;height:auto;color:var(--text-inverse);box-shadow:none;opacity:0;pointer-events:none;padding:4px 10px;position:absolute;top:40px;right:8px}.gengage-chat-product-details-img-wrap .gengage-chat-find-similar-pill-icon{display:none}.gengage-chat-product-details-img-wrap .gengage-chat-find-similar-pill-text{clip:auto;white-space:nowrap;width:auto;height:auto;margin:0;position:static;overflow:visible}.gengage-chat-product-card-img-wrapper:hover .gengage-chat-find-similar-pill,.gengage-chat-ai-toppick-media:hover .gengage-chat-find-similar-pill,.gengage-chat-product-details-img-wrap:hover .gengage-chat-find-similar-pill{opacity:1;pointer-events:auto}.gengage-chat-favorite-btn{background:color-mix(in srgb, var(--surface-elevated) 96%, transparent);border:1px solid var(--border-subtle);border-radius:var(--radius-control);cursor:pointer;width:28px;height:28px;color:var(--text-secondary);box-shadow:var(--shadow-1);z-index:3;justify-content:center;align-items:center;padding:0;transition:color .2s,box-shadow .15s;display:flex;position:absolute;top:8px;right:8px}.gengage-chat-favorite-btn:hover{box-shadow:var(--shadow-2);color:var(--error);border-color:color-mix(in srgb, var(--error) 20%, var(--border-default))}.gengage-chat-favorite-btn--active{color:var(--error)}.gengage-chat-product-details-promos{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.gengage-chat-product-details-promo-badge{border-radius:var(--radius-pill);background:var(--gengage-chat-promo-bg,color-mix(in srgb, var(--success) 12%, white));color:var(--gengage-chat-promo-text,color-mix(in srgb, var(--success) 82%, var(--text-primary)));white-space:nowrap;box-sizing:border-box;min-height:20px;padding:2px 6px;font-size:10px;font-weight:500;display:inline-block}.gengage-chat-panel-float{box-sizing:border-box;pointer-events:none;z-index:10;flex-shrink:0;align-self:stretch;width:100%;height:0;margin-top:auto;position:sticky;bottom:0;overflow:visible}.gengage-chat-choice-prompter{pointer-events:none;background:var(--surface-card);border:1px solid var(--border-default);width:auto;max-width:none;box-shadow:var(--shadow-2);z-index:5;opacity:0;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-left:0;margin-right:0;padding:12px 14px;transition:opacity .2s,transform .2s;display:grid;position:absolute;bottom:12px;left:16px;right:16px;transform:translateY(12px)}.gengage-chat-panel--scrolled .gengage-chat-choice-prompter{pointer-events:auto;opacity:1;transform:translateY(0)}.gengage-chat-choice-prompter-heading{color:var(--text-primary);margin-bottom:2px;font-size:12px;font-weight:700}.gengage-chat-choice-prompter-suggestion{color:var(--text-secondary);margin-bottom:0;font-size:12px;line-height:1.35}.gengage-chat-choice-prompter-copy{min-width:0}.gengage-chat-choice-prompter-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:inline-flex}.gengage-chat-choice-prompter-cta{border:1px solid var(--ds-button-primary-border);border-radius:var(--radius-control);background:var(--ds-button-primary-bg);width:auto;min-width:180px;min-height:40px;color:var(--ds-button-primary-fg);cursor:pointer;text-align:center;padding:0 18px;font-family:inherit;font-size:13px;font-weight:700;transition:background .15s;display:inline-flex}.gengage-chat-choice-prompter-cta:hover{background:var(--ds-button-primary-bg-hover)}.gengage-chat-choice-prompter-dismiss{border:1px solid var(--border-default);background:color-mix(in srgb, var(--surface-card-soft) 92%, white);width:40px;height:40px;color:var(--text-muted);cursor:pointer;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;transition:color .15s,border-color .15s,background .15s;display:flex}.gengage-chat-choice-prompter-dismiss:hover{color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 18%, white);background:var(--client-primary-subtle)}@media (prefers-reduced-motion:reduce){.gengage-chat-choice-prompter{animation:none}}.gengage-chat-pros-cons{background:var(--surface-card-soft);border:1px solid var(--border-subtle);border-radius:var(--radius-control);margin:8px 0;padding:12px 14px}.gengage-chat-pros-cons-heading{color:var(--text-primary);margin:0 0 10px;font-size:14px;font-weight:600}.gengage-chat-pros-cons-list{margin:0 0 8px;padding:0;list-style:none}.gengage-chat-pros-cons-list:last-child{margin-bottom:0}.gengage-chat-pros-cons-item{color:var(--text-secondary);align-items:flex-start;gap:8px;padding:4px 0;font-size:13px;line-height:1.5;display:flex}.gengage-chat-pros-cons-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;font-weight:700;display:flex}.gengage-chat-pros-cons-icon--pro{color:var(--success);background:color-mix(in srgb, var(--success) 15%, white)}.gengage-chat-pros-cons-icon--con{color:var(--error);background:color-mix(in srgb, var(--error) 12%, white)}.gengage-chat-categories{flex-direction:column;gap:8px;display:flex}.gengage-chat-categories-tabs{-webkit-overflow-scrolling:touch;gap:4px;padding:4px 0;display:flex;overflow-x:auto}.gengage-chat-categories-tab{border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:6px 14px;font-size:13px;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.gengage-chat-categories-tab-image{object-fit:cover;border:1px solid var(--border-subtle);background:var(--surface-card-muted);-webkit-user-drag:none;-webkit-user-select:none;user-select:none;border-radius:999px;flex:none;width:28px;height:28px}.gengage-chat-categories-tab-text{min-width:0}.gengage-chat-categories-tab:hover{background:var(--surface-card-soft);border-color:var(--border-strong)}.gengage-chat-categories-tab--active{background:var(--client-primary-subtle);color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 26%, var(--border-default))}.gengage-chat-categories-grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:12px;display:grid}.gengage-chat-categories-grid .gengage-chat-product-card{width:100%;min-width:0;max-width:none}:is(.gengage-chat-categories .gengage-chat-product-card-img,.gengage-chat-consulting-group-grid .gengage-chat-product-card-img,.gengage-chat-product-grid-wrapper:has(.gengage-chat-consulting-style-picker) .gengage-chat-product-card-img){-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.gengage-chat-categories-filter-tags{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.gengage-chat-categories-filter-tag{border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;padding:4px 10px;font-size:12px;transition:background .15s,border-color .15s,color .15s}.gengage-chat-categories-filter-tag:hover{background:var(--client-primary-subtle);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));color:var(--client-primary)}.gengage-chat-product-grid-view-more{border:1px solid var(--ds-button-secondary-border);border-radius:var(--radius-control);background:var(--ds-button-secondary-bg);width:100%;color:var(--ds-button-secondary-fg);cursor:pointer;text-align:center;grid-column:1/-1;margin-top:8px;padding:10px;font-size:14px;font-weight:500;transition:background .15s;display:block}.gengage-chat-product-grid-view-more:hover{background:var(--ds-button-secondary-bg-hover)}.gengage-chat-product-grid--mobile{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px 0;display:grid;overflow-x:visible}.gengage-chat-product-grid--mobile .gengage-chat-product-card{width:100%;min-width:0;max-width:none}.gengage-chat-comparison--mobile{position:relative;overflow-x:clip}.gengage-chat-comparison--mobile .gengage-chat-comparison-table-wrapper{-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 88%,#0000);mask-image:linear-gradient(90deg,#000 88%,#0000)}.gengage-chat-comparison--mobile .gengage-chat-comparison-table{table-layout:fixed;min-width:480px}.gengage-chat-comparison--mobile .gengage-chat-comparison-table th:first-child,.gengage-chat-comparison--mobile .gengage-chat-comparison-table .gengage-chat-comparison-label{background:var(--surface-card);z-index:1;box-shadow:2px 0 4px color-mix(in srgb, var(--surface-shell) 8%, transparent);position:sticky;left:0}.gengage-chat-comparison--mobile .gengage-chat-comparison-table thead th:first-child{box-sizing:border-box;width:22ch;min-width:0;max-width:22ch;padding:8px 6px}.gengage-chat-comparison--mobile .gengage-chat-comparison-table td.gengage-chat-comparison-label{text-align:left;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;vertical-align:middle;width:22ch;min-width:0;max-width:22ch;overflow:hidden}.gengage-chat-product-details-similars-heading{color:var(--text-primary);margin:16px 0 8px;font-size:18px;font-weight:700;line-height:1.2}.gengage-chat-product-details-similars{margin-top:8px}.gengage-chat-handoff-notice{background:color-mix(in srgb, var(--warning) 10%, white);border:1px solid color-mix(in srgb, var(--warning) 28%, var(--border-default));border-radius:var(--radius-control);text-align:center;flex-direction:column;align-items:center;gap:6px;margin:8px 0;padding:16px;display:flex}.gengage-chat-handoff-notice-icon{font-size:24px}.gengage-chat-handoff-notice-heading{color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));margin:0;font-size:14px;font-weight:600}.gengage-chat-handoff-notice-summary{color:color-mix(in srgb, var(--warning) 84%, var(--text-primary));margin:0;font-size:13px;line-height:1.5}.gengage-chat-product-details-share{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);width:36px;height:36px;color:var(--text-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:color .12s,border-color .12s,background-color .12s;display:inline-flex;position:relative}.gengage-chat-product-details-share:hover{color:var(--client-primary);border-color:var(--client-primary);background:var(--client-primary-subtle)}.gengage-chat-product-details-share:before{content:attr(aria-label);border-radius:calc(var(--radius-control) - 4px);background:var(--surface-shell);color:var(--text-inverse);white-space:nowrap;pointer-events:none;opacity:0;z-index:2;padding:4px 8px;font-size:11px;font-weight:500;transition:opacity .15s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.gengage-chat-product-details-share:hover:before{opacity:1}.gengage-chat-product-details-share--copied:after{content:"✓";background:var(--_gengage-success-color);color:var(--client-on-primary);border-radius:var(--radius-control);justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex;position:absolute;inset:0}.gengage-chat-product-details-share svg{width:20px;height:20px}.gengage-chat-review-link,.gengage-chat-grounding-link{color:var(--client-primary);text-decoration:underline}@media (width<=768px){.gengage-chat-product-details-promo-badge{-webkit-line-clamp:2;line-clamp:2;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}.gengage-chat-launcher:focus-visible,.gengage-chat-close:focus-visible,.gengage-chat-header-btn:focus-visible,.gengage-chat-header-powered:focus-visible,.gengage-chat-send:focus-visible,.gengage-chat-action-btn:focus-visible,.gengage-chat-pill:focus-visible,.gengage-chat-input-chip:focus-visible,.gengage-chat-pills-arrow:focus-visible,.gengage-chat-error-retry:focus-visible,.gengage-chat-product-card-cta:focus-visible,.gengage-chat-product-details-cta:focus-visible,.gengage-chat-product-details-atc:focus-visible,.gengage-chat-product-detail-tab:focus-visible,.gengage-chat-panel-divider-toggle:focus-visible,.gengage-chat-panel-topbar-back:focus-visible,.gengage-chat-panel-topbar-forward:focus-visible,.gengage-chat-rollback-btn:focus-visible,.gengage-chat-ai-toppick-cta:focus-visible,.gengage-chat-comparison-toggle-btn:focus-visible,.gengage-chat-comparison-floating-btn:focus-visible,.gengage-chat-comparison-checkbox:focus-visible,.gengage-chat-product-sort-trigger:focus-visible,.gengage-chat-product-sort-option:focus-visible,.gengage-chat-product-variant-btn:focus-visible,.gengage-chat-product-gallery-thumb:focus-visible,.gengage-chat-find-similar-pill:focus-visible,.gengage-chat-favorite-btn:focus-visible,.gengage-chat-attach-btn:focus-visible,.gengage-chat-attach-menu-item:focus-visible,.gengage-chat-mic-btn:focus-visible,.gengage-chat-attachment-remove:focus-visible,.gengage-chat-kvkk-dismiss:focus-visible,.gengage-chat-choice-prompter-cta:focus-visible,.gengage-chat-choice-prompter-dismiss:focus-visible,.gengage-chat-categories-tab:focus-visible,.gengage-chat-categories-filter-tag:focus-visible,.gengage-chat-product-grid-view-more:focus-visible,.gengage-chat-product-details-share:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}.gengage-chat-root--mobile.gengage-chat-root--mobile-half .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter{display:none}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter{box-sizing:border-box;pointer-events:auto;opacity:1;border-radius:14px;grid-template-columns:1fr;gap:10px;width:100%;max-width:100%;max-height:none;margin:0;padding:10px 12px;display:none;position:relative;bottom:auto;left:auto;right:auto;overflow:visible;transform:none}.gengage-chat-root--mobile.gengage-chat-root--mobile-full .gengage-chat-panel--visible~.gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter{display:grid}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter-suggestion{display:none}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter-cta{width:100%;min-width:0;min-height:44px;padding:0 14px}.gengage-chat-root--mobile .gengage-chat-product-sort-trigger,.gengage-chat-root--mobile .gengage-chat-product-sort-option,.gengage-chat-root--mobile .gengage-chat-comparison-toggle-btn{min-height:40px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-trigger-label,.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-trigger-chevron,.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-comparison-toggle-label{display:none}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-dropdown{flex:none;width:auto;max-width:none}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-dropdown--open{z-index:40}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-trigger{justify-content:center;gap:0;width:auto;min-width:44px;padding:0 10px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-menu{width:min(224px,100vw - 32px);min-width:196px;max-width:calc(100vw - 32px);top:calc(100% + 6px);left:auto;right:0}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-option{min-height:44px;padding:10px 12px;font-size:13px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-option-label{white-space:normal;line-height:1.3}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-comparison-toggle-btn{justify-content:center;gap:0;width:44px;min-width:44px;padding:0}.gengage-chat-root--mobile .gengage-chat-input-chip{min-height:40px;padding:8px 12px}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter-dismiss{width:40px;height:40px}.gengage-chat-root--mobile .gengage-chat-panel-divider-toggle{min-height:44px}.gengage-chat-root--mobile .gengage-chat-product-card-cta,.gengage-chat-root--mobile .gengage-chat-choice-prompter-cta,.gengage-chat-root--mobile .gengage-chat-product-grid-view-more{justify-content:center;align-items:center;min-height:44px;display:flex}.gengage-chat-root--mobile .gengage-chat-panel-topbar-back,.gengage-chat-root--mobile .gengage-chat-panel-topbar-forward,.gengage-chat-root--mobile .gengage-chat-favorite-btn,.gengage-chat-root--mobile .gengage-chat-product-details-share{width:44px;min-width:44px;height:44px}.gengage-chat-root--mobile .gengage-chat-panel-topbar-close{display:none}@media (prefers-reduced-motion:reduce){.gengage-chat-consulting-loading-card{animation:none}}.gengage-chat-panel--has-scroll:after{content:"";background:linear-gradient(transparent, var(--surface-card-soft));pointer-events:none;height:40px;display:block;position:sticky;bottom:0}.gengage-chat-cart-toast{background:var(--success);color:var(--text-inverse);border-radius:var(--radius-pill);box-shadow:var(--shadow-3);pointer-events:none;opacity:0;z-index:10;white-space:nowrap;padding:8px 18px;font-size:13px;font-weight:600;transition:opacity .2s,transform .2s;position:absolute;bottom:72px;left:50%;transform:translate(-50%)translateY(8px)}.gengage-chat-cart-toast--visible{opacity:1;transform:translate(-50%)translateY(0)}@keyframes gengage-cart-flash{0%{transform:scale(1)}30%{transform:scale(1.25)}60%{transform:scale(.95)}to{transform:scale(1)}}.gengage-chat-header-btn--cart-flash{animation:.5s gengage-cart-flash}', io = /* @__PURE__ */ new Set([
5679
+ var ro = ':where(:root,.gengage-chat-root,.gengage-qna-container,.gengage-simrel-container,.gengage-simbut-root){--ds-neutral-0:#fff;--ds-neutral-25:#fcfcfd;--ds-neutral-50:#f6f7fb;--ds-neutral-100:#f3f4f6;--ds-neutral-200:#e5e7eb;--ds-neutral-300:#d0d5dd;--ds-neutral-500:#667085;--ds-neutral-600:#475467;--ds-neutral-700:#344054;--ds-neutral-900:#111827;--ds-radius-2:8px;--ds-radius-3:12px;--ds-radius-4:16px;--ds-radius-5:20px;--ds-radius-6:24px;--ds-radius-pill:999px;--ds-shadow-1:0 1px 2px #1018280a, 0 1px 3px #1018280f;--ds-shadow-2:0 4px 12px #10182814;--ds-shadow-3:0 10px 24px #1018281f;--client-primary:var(--gengage-primary-color,#b7102a);--client-primary-hover:var(--gengage-primary-hover,color-mix(in srgb, var(--client-primary) 88%, black 12%));--client-primary-active:var(--gengage-primary-active,color-mix(in srgb, var(--client-primary) 78%, black 22%));--client-primary-subtle:color-mix(in srgb, var(--client-primary) 12%, white);--client-primary-soft:color-mix(in srgb, var(--client-primary) 20%, white);--client-on-primary:var(--gengage-primary-foreground,#fff);--client-focus-ring:color-mix(in srgb, var(--client-primary) 32%, transparent);--ai-accent-start:#0b24d6;--ai-accent-end:#f768f2;--ai-accent-soft:linear-gradient(135deg, #0b24d614, #f768f214);--surface-page:var(--gengage-page-bg,var(--ds-neutral-50));--surface-shell:var(--gengage-shell-bg,#10131a);--surface-card:var(--gengage-background-color,var(--ds-neutral-0));--surface-card-muted:var(--gengage-surface-soft,#f8fafc);--surface-card-soft:var(--surface-card-muted);--surface-elevated:var(--gengage-surface-elevated,var(--ds-neutral-0));--surface-input:var(--gengage-input-bg,var(--ds-neutral-0));--surface-overlay:var(--gengage-overlay-bg,#10131a85);--text-primary:var(--gengage-foreground-color,var(--ds-neutral-900));--text-secondary:var(--gengage-text-secondary,#4b5563);--text-muted:var(--gengage-text-muted,#6b7280);--text-inverse:var(--gengage-text-inverse,#f9fafb);--border-subtle:var(--gengage-border-subtle,#1118270f);--border-default:var(--gengage-border-color,#1118271a);--border-strong:var(--gengage-border-strong,#1118272e);--shadow-1:var(--gengage-shadow-1,var(--ds-shadow-1));--shadow-2:var(--gengage-shadow-2,var(--ds-shadow-2));--shadow-3:var(--gengage-shadow-3,var(--ds-shadow-3));--radius-control:var(--gengage-control-radius,var(--ds-radius-3));--radius-card:var(--gengage-card-radius,var(--ds-radius-4));--radius-panel:var(--gengage-panel-radius,var(--ds-radius-6));--radius-pill:var(--gengage-pill-radius,var(--ds-radius-pill));--success:var(--gengage-success-color,#16a34a);--warning:var(--gengage-warning-color,#d97706);--error:var(--gengage-error-color,#dc2626);--info:var(--gengage-info-color,#2563eb);--rating:var(--gengage-rating-color,#f5b301);--gengage-primary:var(--client-primary);--gengage-primary-soft:var(--client-primary-soft);--gengage-primary-subtle:var(--client-primary-subtle);--gengage-text-color:var(--text-primary);--gengage-text-secondary:var(--text-secondary);--gengage-hover-color:var(--surface-card-soft);--ds-button-primary-bg:var(--client-primary);--ds-button-primary-bg-hover:var(--client-primary-hover);--ds-button-primary-bg-active:var(--client-primary-active);--ds-button-primary-fg:var(--client-on-primary);--ds-button-primary-border:color-mix(in srgb, var(--client-primary) 82%, black 18%);--ds-button-secondary-bg:var(--surface-card);--ds-button-secondary-bg-hover:var(--client-primary-subtle);--ds-button-secondary-fg:var(--client-primary);--ds-button-secondary-border:color-mix(in srgb, var(--client-primary) 26%, white);--ds-button-ghost-bg:var(--surface-card-muted);--ds-button-ghost-bg-hover:var(--ds-button-ghost-bg);--ds-button-ghost-fg:var(--text-primary);--ds-button-ghost-fg-hover:var(--client-primary);--ds-button-ghost-border:var(--border-default);--ds-button-ghost-border-hover:color-mix(in srgb, var(--client-primary) 18%, white);--ds-panel-bg:var(--surface-card);--ds-panel-border:var(--border-default);--ds-panel-shadow:var(--shadow-1);--ds-panel-radius:var(--radius-panel);--ds-header-bg:var(--surface-card);--ds-header-fg:var(--text-primary);--ds-header-muted:var(--text-muted);--ds-header-border:var(--border-default);--ds-card-bg:var(--surface-card);--ds-card-bg-soft:var(--surface-card-muted);--ds-card-border:var(--border-default);--ds-card-shadow:var(--shadow-1);--ds-card-shadow-hover:var(--shadow-2);--ds-card-radius:var(--radius-card);--ds-card-border-hover:color-mix(in srgb, var(--client-primary) 14%, var(--border-default));--ds-card-bg-hover:color-mix(in srgb, var(--client-primary) 2%, var(--surface-card));--ds-product-card-media-bg:var(--surface-card-muted);--ds-product-card-media-border:var(--border-subtle);--ds-input-bg:var(--surface-input);--ds-input-border:var(--border-default);--ds-input-radius:16px;--ds-input-focus-border:color-mix(in srgb, var(--client-primary) 28%, white);--ds-input-focus-ring:0 0 0 4px var(--client-focus-ring);--ds-input-highlight:inset 0 1px 0 #fff9;--ds-chip-bg:var(--surface-card);--ds-chip-border:var(--border-default);--ds-chip-fg:var(--text-secondary);--ds-chip-bg-hover:var(--surface-card-muted);--ds-chip-bg-active:color-mix(in srgb, var(--client-primary) 8%, white);--ds-chip-border-active:color-mix(in srgb, var(--client-primary) 30%, white);--ds-chip-fg-active:var(--client-primary);--ds-tab-bg:var(--surface-card);--ds-tab-bg-hover:var(--surface-card-muted);--ds-tab-bg-active:color-mix(in srgb, var(--client-primary) 8%, white);--ds-tab-border:var(--border-default);--ds-tab-border-active:color-mix(in srgb, var(--client-primary) 26%, white);--ds-tab-fg:var(--text-secondary);--ds-tab-fg-active:var(--client-primary);--ds-badge-brand-bg:color-mix(in srgb, var(--client-primary) 10%, white);--ds-badge-brand-border:color-mix(in srgb, var(--client-primary) 18%, white);--ds-badge-brand-fg:var(--client-primary);--ds-message-user-bg:color-mix(in srgb, var(--client-primary) 10%, white);--ds-message-user-fg:var(--text-primary);--ds-message-user-border:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));--ds-message-user-shadow:none;--ds-message-assistant-bg:var(--surface-card-soft);--ds-message-assistant-fg:var(--text-primary);--ds-message-assistant-border:var(--border-default);--ds-message-assistant-shadow:none;--ds-message-active-outline:color-mix(in srgb, var(--client-primary) 68%, white);--ds-progress-card-border:var(--border-subtle);--ds-progress-mark-bg:color-mix(in srgb, var(--ai-accent-start) 8%, var(--surface-card));--ds-progress-mark-border:color-mix(in srgb, var(--ai-accent-start) 12%, var(--border-default));--ds-progress-scrollbar-thumb:color-mix(in srgb, var(--text-primary) 18%, transparent);--ds-toast-error-bg:color-mix(in srgb, var(--error) 5%, var(--surface-card));--ds-toast-error-border:color-mix(in srgb, var(--error) 18%, var(--border-default));--ds-toast-error-accent:var(--error);--ds-toast-error-fg:color-mix(in srgb, var(--error) 22%, var(--text-primary));--ds-toast-error-shadow:var(--shadow-3);--ds-comparison-table-bg:var(--surface-card);--ds-comparison-table-border:var(--border-default);--ds-comparison-table-header-bg:var(--surface-card-muted);--ds-comparison-table-header-fg:var(--text-muted);--ds-comparison-table-row-border:var(--border-subtle);--ds-comparison-table-winner-bg:color-mix(in srgb, var(--client-primary) 6%, white);--ds-comparison-table-winner-fg:var(--client-primary)}:where(.gds-panel){background:var(--ds-panel-bg);border:1px solid var(--ds-panel-border);border-radius:var(--ds-panel-radius);box-shadow:var(--ds-panel-shadow)}:where(.gengage-qna-panel,.gengage-chat-panel-topbar,.gengage-chat-chat-header,.gengage-chat-panel-ai-zone>.gengage-chat-ai-top-picks,.gengage-chat-grounding-review){border-color:var(--ds-panel-border)}:where(.gds-btn){border-radius:var(--radius-control);min-height:46px;font:inherit;cursor:pointer;border:0;outline:none;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-weight:700;transition:box-shadow .15s,border-color .15s,background-color .15s,color .15s;display:inline-flex}:where(.gds-btn:hover){transform:none}:where(.gds-btn:focus-visible){outline:2px solid var(--client-focus-ring);outline-offset:2px}:where(.gds-btn:disabled){cursor:not-allowed;opacity:.56;box-shadow:none}:where(.gds-btn-primary){background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg);border:1px solid var(--ds-button-primary-border)}:where(.gds-btn-primary:hover){background:var(--ds-button-primary-bg-hover)}:where(.gds-btn-secondary){background:var(--ds-button-secondary-bg);color:var(--ds-button-secondary-fg);border:1px solid var(--ds-button-secondary-border)}:where(.gds-btn-secondary:hover){background:var(--ds-button-secondary-bg-hover)}:where(.gds-btn-ghost){background:var(--ds-button-ghost-bg);color:var(--ds-button-ghost-fg);border:1px solid var(--ds-button-ghost-border)}:where(.gds-btn-ghost:hover){background:var(--ds-button-ghost-bg-hover);border-color:var(--ds-button-ghost-border-hover);color:var(--ds-button-ghost-fg-hover)}:where(.gds-chip){border-radius:var(--radius-pill);border:1px solid var(--ds-chip-border);background:var(--ds-chip-bg);color:var(--ds-chip-fg);align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}:where(.gds-chip:hover){background:var(--ds-chip-bg-hover);border-color:color-mix(in srgb, var(--client-primary) 16%, var(--ds-chip-border))}:where(.gds-chip:focus-visible){outline:2px solid var(--client-focus-ring);outline-offset:2px}:where(.gds-chip-active){border-color:var(--ds-chip-border-active);background:var(--ds-chip-bg-active);color:var(--ds-chip-fg-active)}:where(.gds-badge){border-radius:var(--radius-pill);letter-spacing:.04em;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}:where(.gds-badge-brand){background:var(--ds-badge-brand-bg);color:var(--ds-badge-brand-fg);border:1px solid var(--ds-badge-brand-border)}:where(.gds-shell-header){background:var(--ds-header-bg);color:var(--ds-header-fg);border-bottom:1px solid var(--ds-header-border);box-shadow:none;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}:where(.gds-shell-header [data-gengage-part=chat-header-powered-by]){color:var(--ds-header-muted)}:where(.gds-icon-btn){border-radius:var(--radius-control);width:42px;min-width:42px;height:42px;min-height:42px;padding:0}:where(.gds-input-shell){border-radius:var(--ds-input-radius);border:1px solid var(--ds-input-border);background:var(--ds-input-bg);min-height:52px;box-shadow:var(--ds-input-highlight);align-items:center;gap:12px;padding:6px 6px 6px 14px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:flex}:where(.gds-input-shell:focus-within){border-color:var(--ds-input-focus-border);box-shadow:var(--ds-input-focus-ring)}:where(.gds-tab){border-radius:var(--radius-pill);border:1px solid var(--ds-tab-border);background:var(--ds-tab-bg);color:var(--ds-tab-fg);align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}:where(.gds-tab:hover){background:var(--ds-tab-bg-hover)}:where(.gds-tab:focus-visible){outline:2px solid var(--client-focus-ring);outline-offset:2px}:where(.gds-tab[aria-selected=true],.gds-tab.is-active){color:var(--ds-tab-fg-active);border-color:var(--ds-tab-border-active);background:var(--ds-tab-bg-active)}:where(.gds-toolbar){flex-wrap:wrap;align-items:center;gap:10px;display:flex}:where(.gds-toolbar-compact){gap:8px}:where(.gds-card){background:var(--ds-card-bg);border:1px solid var(--ds-card-border);border-radius:var(--ds-card-radius);box-shadow:var(--ds-card-shadow);transition:border-color .15s,box-shadow .15s,background-color .15s}:where(.gds-card-interactive),:where(.gds-clickable){cursor:pointer}:where(.gds-card-interactive:hover){background:var(--ds-card-bg-hover);border-color:var(--ds-card-border-hover);box-shadow:var(--ds-card-shadow-hover)}:where(.gds-card-soft){background:var(--ds-card-bg-soft)}:where(.gds-product-card){border-radius:16px}:where(.gds-evidence-card){background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-control);box-shadow:var(--shadow-1)}:where(.gds-evidence-card-success){background:color-mix(in srgb, var(--success) 10%, white);border-color:color-mix(in srgb, var(--success) 22%, var(--border-default))}:where(.gds-evidence-card-danger){background:color-mix(in srgb, var(--error) 8%, white);border-color:color-mix(in srgb, var(--error) 20%, var(--border-default))}:where(.gds-evidence-card-warning){background:color-mix(in srgb, var(--warning) 10%, white);border-color:color-mix(in srgb, var(--warning) 22%, var(--border-default))}:where(.gds-message){border-radius:calc(var(--radius-control) + 4px);word-wrap:break-word;overflow-wrap:break-word;border:1px solid #0000;max-width:85%;padding:14px 16px;font-size:14px;font-weight:400;line-height:1.55;animation:.3s cubic-bezier(.2,.7,.2,1) gengage-chat-msg-in}:where(.gds-message-user){background:var(--ds-message-user-bg);color:var(--ds-message-user-fg);border-color:var(--ds-message-user-border);box-shadow:var(--ds-message-user-shadow);border-bottom-right-radius:6px;align-self:flex-end}:where(.gds-message-assistant){background:var(--ds-message-assistant-bg);color:var(--ds-message-assistant-fg);border-color:var(--ds-message-assistant-border);box-shadow:var(--ds-message-assistant-shadow);border-bottom-left-radius:6px;align-self:flex-start;min-width:120px}:where(.gds-message-active){outline:2px solid var(--ds-message-active-outline);outline-offset:-2px}:where(.gds-ai-card){background:var(--surface-card);border:1px solid var(--ds-progress-card-border);border-radius:20px;gap:16px;padding:18px;display:grid}:where(.gds-ai-mark){background:var(--ds-progress-mark-bg);width:42px;height:42px;color:var(--ai-accent-start);border:1px solid var(--ds-progress-mark-border);border-radius:14px;place-items:center;display:grid}:where(.gds-ai-loader-row){align-items:center;gap:12px;display:flex}:where(.gds-progress-loader){border:1px solid color-mix(in srgb, var(--ai-accent-start) 10%, var(--border-default));background:linear-gradient(110deg, var(--surface-card-soft) 8%, color-mix(in srgb, var(--ai-accent-start) 5%, var(--surface-card)) 18%, var(--surface-card-soft) 33%);width:fit-content;max-width:100%;min-height:44px;color:var(--text-secondary);background-size:220% 100%;border-radius:14px;align-items:center;gap:10px;padding:0 16px;animation:1.8s linear infinite gds-progress-shimmer;display:inline-flex}:where(.gds-progress-loader-chat){box-sizing:border-box;align-self:flex-start;width:100%;min-width:0;max-width:85%;display:flex}:where(.gds-progress-loader-chat) .gds-progress-label{overflow-wrap:anywhere;flex:auto;min-width:0}:where(.gds-progress-loader-panel){box-sizing:border-box;justify-content:flex-start;align-items:center;width:100%;min-width:0;max-width:100%;min-height:48px;display:flex}:where(.gds-progress-loader-panel) .gds-progress-label{overflow-wrap:anywhere;flex:auto;min-width:0}:where(.gds-progress-label){min-width:0;color:var(--text-secondary);word-break:break-word;align-self:center;font-size:13px;line-height:1.35;display:block}:where(.gds-progress-dots){flex-shrink:0;align-items:center;gap:6px;min-height:20px;display:inline-flex}:where(.gds-progress-dot){background:color-mix(in srgb, var(--ai-accent-start) 20%, var(--text-muted));border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite gds-progress-dot-pulse;display:inline-block}:where(.gds-progress-dot:nth-child(2)){animation-delay:.2s}:where(.gds-progress-dot:nth-child(3)){animation-delay:.4s}:where(.gds-ai-status){border-radius:calc(var(--radius-control) + 2px);border:1px solid var(--border-default);background:var(--surface-card-muted);max-width:85%;color:var(--text-secondary);border-bottom-left-radius:6px;align-self:flex-start;align-items:center;gap:8px;padding:10px 14px;display:flex}:where(.gds-ai-status-text){color:var(--text-secondary);font-size:13px;font-style:italic}:where(.gds-ai-dot-loader){align-items:center;gap:5px;display:inline-flex}:where(.gds-ai-dot-loader span){background:color-mix(in srgb, var(--ai-accent-start) 38%, var(--text-muted));border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite gds-progress-dot-pulse;display:inline-block}:where(.gds-ai-dot-loader span:nth-child(2)){animation-delay:.2s}:where(.gds-ai-dot-loader span:nth-child(3)){animation-delay:.4s}:where(.gds-ai-spinner){border:2.5px solid var(--border-default);border-top-color:var(--ai-accent-start);border-radius:50%;flex-shrink:0;width:26px;height:26px;animation:.72s linear infinite gds-spin}@keyframes gds-spin{to{transform:rotate(360deg)}}@keyframes gds-progress-shimmer{0%{background-position:200% 0}to{background-position:-20% 0}}@keyframes gds-progress-dot-pulse{0%,to{opacity:.45;transform:scale(.7)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){:where(.gds-progress-loader){animation:none}:where(.gds-progress-dot){opacity:.85;animation:none;transform:scale(1)}:where(.gds-ai-spinner){animation:none}:where(.gds-ai-dot-loader span){opacity:.85;animation:none}}:where(.gds-menu){border-radius:var(--radius-card);border:1px solid var(--border-default);background:var(--surface-elevated);box-shadow:var(--shadow-3);padding:4px}:where(.gds-menu-option){border-radius:calc(var(--radius-control) - 4px);width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.25;transition:background-color .15s,color .15s;display:flex}:where(.gds-menu-option:hover){background:var(--surface-card-muted)}:where(.gds-menu-option:focus-visible){outline:2px solid var(--client-focus-ring);outline-offset:2px}:where(.gds-menu-option-active){background:var(--client-primary-subtle);color:var(--client-primary);font-weight:600}:where(.gds-comparison-table){border-collapse:separate;border-spacing:0;border:1px solid var(--ds-comparison-table-border);background:var(--ds-comparison-table-bg);border-radius:20px;width:100%;overflow:hidden}:where(.gds-comparison-table th,.gds-comparison-table td){text-align:left;border-bottom:1px solid var(--ds-comparison-table-row-border);padding:14px 16px;font-size:13px}:where(.gds-comparison-table th){background:var(--ds-comparison-table-header-bg);text-transform:uppercase;letter-spacing:.08em;color:var(--ds-comparison-table-header-fg);font-size:11px}:where(.gds-comparison-table tr:last-child td){border-bottom:0}:where(.gds-comparison-table-winner-cell){background:var(--ds-comparison-table-winner-bg);color:var(--ds-comparison-table-winner-fg);font-weight:800}:host{all:initial;font-family:var(--gengage-font-family,"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:var(--gengage-font-size,14px)}.gengage-chat-root button,.gengage-chat-root [role=button],.gengage-chat-root a{cursor:pointer}.gengage-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gengage-chat-root{z-index:var(--gengage-z-index,2147480000);--_gengage-chat-offset:var(--gengage-chat-offset,20px);--_gengage-chat-launcher-bottom:var(--gengage-chat-launcher-bottom,20px);--_gengage-chat-launcher-right:var(--gengage-chat-launcher-right,20px);--_gengage-chat-launcher-width:var(--gengage-chat-launcher-width,56px);--_gengage-chat-launcher-height:var(--gengage-chat-launcher-height,56px);--_gengage-chat-launcher-mobile-width:var(--gengage-chat-launcher-mobile-width,var(--_gengage-chat-launcher-width));--_gengage-chat-launcher-mobile-height:var(--gengage-chat-launcher-mobile-height,var(--_gengage-chat-launcher-height));--_gengage-chat-drawer-width:var(--gengage-chat-width,400px);--_gengage-chat-radius:var(--gengage-chat-shell-radius,1rem);--_gengage-chat-header-height:var(--gengage-chat-header-height,72px);--_gengage-chat-conversation-width:var(--gengage-chat-conversation-width,396px);--_gengage-chat-panel-min-width:var(--gengage-chat-panel-min-width,320px);--_gengage-chat-panel-max-width:var(--gengage-chat-panel-max-width,1200px);--_gengage-chat-input-height:var(--gengage-chat-input-height,48px);--_gengage-chat-shadow:var(--gengage-chat-shadow,var(--shadow-3));--_gengage-border-color:var(--border-default);--_gengage-discount-color:var(--gengage-discount-color,var(--client-primary));--_gengage-campaign-reason-start:var(--gengage-campaign-reason-color,var(--client-primary));--_gengage-campaign-reason-end:var(--gengage-campaign-reason-color-end,var(--gengage-campaign-reason-color,var(--client-primary)));--_gengage-success-color:var(--success);--_gengage-text-primary:var(--text-primary);--_gengage-text-secondary:var(--text-secondary);--_gengage-surface-secondary:var(--surface-card-soft);--_gengage-surface-muted:var(--surface-card-soft);--_gengage-surface-dark:var(--surface-shell);--_gengage-rating-color:var(--rating);--_gengage-error:var(--error);--_gengage-danger-color:var(--error);--_gengage-ghost-border:var(--gengage-ghost-border,color-mix(in srgb, var(--client-primary) 16%, transparent));position:fixed}.gengage-chat-backdrop{z-index:0;pointer-events:none;cursor:pointer;box-sizing:border-box;-webkit-tap-highlight-color:transparent;background:0 0;border:none;margin:0;padding:0;display:none;position:fixed;inset:0}.gengage-chat-root--open:not(.gengage-chat--inline) .gengage-chat-backdrop{pointer-events:none;background:var(--gengage-chat-float-backdrop,transparent);display:block}.gengage-chat-root--open.gengage-chat-root--maximized-host-chrome:not(.gengage-chat--inline) .gengage-chat-backdrop{pointer-events:auto;background:var(--gengage-chat-float-backdrop,color-mix(in srgb, var(--surface-overlay) 72%, transparent))}.gengage-chat-root.gengage-chat--overlay.gengage-chat-root--open .gengage-chat-backdrop{background:var(--gengage-chat-overlay-backdrop,var(--surface-overlay));pointer-events:auto}.gengage-chat-launcher-container{bottom:var(--gengage-chat-launcher-anchor-bottom,var(--_gengage-chat-launcher-bottom));right:var(--gengage-chat-launcher-anchor-right,var(--_gengage-chat-launcher-right));z-index:var(--gengage-z-index,2147480000);transition:bottom var(--gengage-chat-launcher-anchor-transition,0s) ease, right var(--gengage-chat-launcher-anchor-transition,0s) ease;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed}.gengage-chat-launcher-content-area,.gengage-chat-launcher-content-area-bottom{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.gengage-chat-launcher-content-area:empty,.gengage-chat-launcher-content-area-bottom:empty,.gengage-chat-root--open .gengage-chat-launcher-content-area,.gengage-chat-root--open .gengage-chat-launcher-content-area-bottom{display:none}.gengage-chat-root--open .gengage-chat-launcher-container{pointer-events:none;opacity:0;transition:opacity .2s}.gengage-chat-launcher{width:var(--_gengage-chat-launcher-width);height:var(--_gengage-chat-launcher-height);border:1px solid var(--ds-button-primary-border);background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg);cursor:pointer;box-shadow:var(--shadow-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s;display:flex;position:relative}.gengage-chat-launcher:hover{box-shadow:var(--shadow-3);transform:none}.gengage-chat-launcher svg{width:28px;height:28px}.gengage-chat-launcher--image-mode{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0;overflow:hidden}.gengage-chat-launcher--image-mode:hover{box-shadow:none}.gengage-chat-launcher--image-mode img{object-fit:contain;width:100%;height:100%}.gengage-chat-launcher-img--mobile,.gengage-chat-root--mobile .gengage-chat-launcher-img--desktop{display:none}.gengage-chat-root--mobile .gengage-chat-launcher-img--mobile{display:block}.gengage-chat-launcher--hidden-mobile{display:none!important}.gengage-chat-launcher-tooltip{border-radius:var(--radius-control);background:var(--surface-shell);color:var(--text-inverse);white-space:nowrap;opacity:0;pointer-events:none;box-shadow:var(--shadow-2);padding:6px 12px;font-size:13px;font-weight:500;transition:opacity .2s;position:absolute;top:50%;right:calc(100% + 12px);transform:translateY(-50%)}.gengage-chat-launcher-tooltip:after{content:"";border:5px solid #0000;border-left-color:var(--surface-shell);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.gengage-chat-launcher:hover .gengage-chat-launcher-tooltip{opacity:1}.gengage-chat-root--open .gengage-chat-launcher-tooltip{display:none}.gengage-chat-drawer{width:var(--_gengage-chat-drawer-width);background:var(--surface-elevated,var(--surface-card));border-left:1px solid var(--border-default);max-height:100dvh;box-shadow:var(--_gengage-chat-shadow);z-index:var(--gengage-z-index,2147480000);opacity:1;border-radius:0;flex-direction:column;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .2s;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;transform:translate(0)}.gengage-chat-root--mobile .gengage-chat-launcher-container{right:var(--gengage-chat-launcher-anchor-right,var(--gengage-chat-launcher-mobile-right,16px));bottom:calc(var(--gengage-chat-launcher-anchor-bottom,var(--gengage-chat-launcher-mobile-bottom,16px)) + env(safe-area-inset-bottom,0px))}.gengage-chat-root--mobile .gengage-chat-launcher{width:var(--_gengage-chat-launcher-mobile-width);height:var(--_gengage-chat-launcher-mobile-height)}.gengage-chat-root--mobile .gengage-chat-drawer{border:1px solid var(--border-default);width:100%;max-width:none;max-height:100dvh;box-shadow:var(--shadow-3);padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface-elevated,var(--surface-card));border-bottom:none;border-radius:16px 16px 0 0;bottom:0;left:0;right:0}.gengage-chat-drawer-handle{display:none}.gengage-chat-root--mobile .gengage-chat-drawer-handle{pointer-events:none;z-index:1;justify-content:center;align-items:center;height:14px;display:flex;position:absolute;top:6px;left:0;right:0}.gengage-chat-root--mobile .gengage-chat-header{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.gengage-chat-root--mobile .gengage-chat-header button,.gengage-chat-root--mobile .gengage-chat-header a{cursor:pointer;touch-action:auto;-webkit-user-select:auto;user-select:auto}.gengage-chat-root--mobile .gengage-chat-drawer-handle:before{content:"";background:var(--border-strong);pointer-events:none;border-radius:999px;width:36px;height:4px}.gengage-chat-root--mobile.gengage-chat-root--mobile-half .gengage-chat-drawer{height:min(72dvh,620px);max-height:min(72dvh,620px);top:auto}.gengage-chat-root--mobile.gengage-chat-root--mobile-full .gengage-chat-drawer{top:var(--gengage-chat-visual-top,0px);height:var(--gengage-chat-visual-vh,100dvh);max-height:var(--gengage-chat-visual-vh,100dvh);border-radius:0;bottom:auto}.gengage-chat-root--mobile .gengage-chat-input-area{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-default)}.gengage-chat-header{box-sizing:border-box;height:var(--_gengage-chat-header-height);background:var(--gengage-chat-header-bg,var(--ds-header-bg));color:var(--gengage-chat-header-foreground,var(--ds-header-fg));box-shadow:none;border-bottom:1px solid var(--gengage-chat-header-border-bottom,var(--ds-header-border));z-index:2;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex;position:relative}.gengage-chat-header-left{align-items:center;gap:10px;min-width:0;display:flex}.gengage-chat-header-avatar{background:var(--surface-card-soft);border:1px solid var(--border-default);object-fit:contain;border-radius:999px;flex-shrink:0;width:44px;height:44px}.gengage-chat-header-avatar--logo{object-fit:contain;background:0 0;border:none;border-radius:0;width:auto;max-width:92px;height:45px}.gengage-chat-header-info{flex-direction:column;gap:2px;min-width:0;display:flex}.gengage-chat-header-title-row{align-items:center;gap:6px;min-width:0;display:flex}.gengage-chat-header-title{letter-spacing:.01em;color:inherit;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:16px;font-weight:700;line-height:1.25;display:block;overflow:hidden}.gengage-chat-header-badge{border-radius:var(--radius-pill);background:var(--ds-badge-brand-bg);min-height:26px;color:var(--ds-badge-brand-fg);border:1px solid var(--ds-badge-brand-border);letter-spacing:.04em;text-transform:uppercase;align-items:center;padding:0 10px;font-size:10px;font-weight:800;line-height:1.5;display:inline-flex}.gengage-chat-header-powered{color:var(--ds-header-muted);align-items:center;gap:4px;font-size:11px;line-height:1.2;text-decoration:none;transition:color .15s;display:flex}.gengage-chat-header-powered:hover{color:var(--client-primary)}.gengage-chat-header-powered svg{opacity:.6;flex-shrink:0;width:12px;height:12px}.gengage-chat-header-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.gengage-chat-header-btn{border-radius:var(--radius-control,12px);background:var(--surface-card-soft);border:1px solid var(--border-default);width:42px;height:42px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;line-height:1;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}@media (width<=374px){.gengage-chat-header{gap:8px;padding:10px}.gengage-chat-header-right{flex-shrink:1;gap:4px;min-width:0}.gengage-chat-header-btn{width:34px;min-width:34px;height:34px;min-height:34px}}.gengage-chat-header-btn:hover{background:var(--client-primary-subtle);color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 18%, white)}.gengage-chat-header-btn--fav{position:relative}.gengage-chat-header-btn--reopen-panel,.gengage-chat-root--mobile .gengage-chat-new-chat{display:none}.gengage-chat-header-fav-badge{background:var(--error);min-width:16px;height:16px;color:var(--text-inverse);text-align:center;pointer-events:none;border-radius:999px;padding:0 3px;font-size:9px;font-weight:700;line-height:16px;position:absolute;top:-4px;right:-4px}.gengage-chat-close{border-radius:var(--radius-control,12px);background:var(--surface-card-soft);border:1px solid var(--border-default);width:42px;min-width:42px;height:42px;min-height:42px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;font-size:18px;line-height:1;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.gengage-chat-close:hover{background:var(--client-primary-subtle);color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 18%, white)}.gengage-chat-body{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.gengage-chat-panel{width:0;transition:width .22s cubic-bezier(.2,.72,.2,1);display:none;overflow:hidden}.gengage-chat-panel--visible{box-sizing:border-box;background:var(--gengage-chat-panel-bg,var(--surface-card));border-right:1px solid var(--border-default);scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text-muted) 24%, transparent) transparent;flex-direction:column;width:440px;min-width:440px;padding:16px;display:flex;position:relative;overflow-y:auto}.gengage-chat-panel--visible::-webkit-scrollbar{width:6px}.gengage-chat-panel--visible::-webkit-scrollbar-track{background:0 0}.gengage-chat-panel--visible::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text-muted) 24%, transparent);border-radius:3px}.gengage-chat-panel--visible::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--text-muted) 36%, transparent)}.gengage-chat-panel-ai-zone{box-sizing:border-box;border-bottom:1px solid var(--border-subtle);flex-shrink:0;width:100%;max-height:min(42vh,320px);margin-bottom:4px;padding:8px 0 12px;overflow:auto}.gengage-chat-panel-ai-zone:has(.gengage-chat-grouping-cards){max-height:min(52vh,520px)}.gengage-chat-panel-ai-zone:has(.gengage-chat-ai-top-picks){max-height:none;overflow:visible}.gengage-chat-panel-ai-zone[hidden]{display:none!important}.gengage-chat-panel-ai-zone-inner{align-items:center;gap:10px;display:flex}.gengage-chat-panel-ai-zone-text{color:var(--text-muted);font-size:13px}.gengage-chat-grouping-section-title{display:none}.gengage-chat-panel-ai-zone .gengage-chat-grouping-section-title{width:100%;color:var(--text-primary);letter-spacing:-.01em;flex-shrink:0;align-self:stretch;margin:0 0 10px;font-size:15px;font-weight:700;display:block}.gengage-chat-panel-ai-zone .gengage-chat-grouping-cards{flex-direction:column;align-items:stretch;gap:0;width:100%;min-width:0;max-height:none;display:flex}.gengage-chat-panel-ai-zone .gengage-chat-grouping-cards-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-flow:row;align-items:stretch;gap:10px;width:100%;min-width:0;margin:0 -2px;padding:2px 2px 10px;display:flex;overflow:auto hidden}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card{box-sizing:border-box;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-card);width:136px;min-width:136px;max-width:150px;box-shadow:var(--shadow-1);flex-direction:column;flex:none;align-items:stretch;gap:8px;padding:12px 10px 14px}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card:hover{border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));box-shadow:var(--shadow-2)}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-arrow{display:none}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-img{object-fit:cover;border-radius:8px;width:100%;min-width:0;max-width:88px;height:72px;min-height:72px;margin:0 auto}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-body{text-align:center;flex-direction:column;align-items:center;gap:4px;width:100%}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-name{font-size:13px;font-weight:700;line-height:1.25}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-desc{color:var(--text-muted);font-size:11px;line-height:1.3}.gengage-chat-panel-ai-zone .gengage-chat-grouping-card-labels{white-space:normal;text-overflow:unset;justify-content:center;margin-top:2px;line-height:1.35;overflow:visible}.gengage-chat-panel-divider{cursor:pointer;background:var(--_gengage-border-color);z-index:2;flex-shrink:0;align-items:center;width:4px;transition:background .15s;display:flex;position:relative}.gengage-chat-panel-divider:hover{background:var(--border-strong)}.gengage-chat-panel-divider--hidden{display:none}.gengage-chat-panel-divider-toggle{border:1px solid var(--_gengage-border-color);background:var(--surface-card);cursor:pointer;width:28px;height:48px;color:var(--text-secondary);box-shadow:var(--shadow-1);border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;transition:background .15s,color .15s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gengage-chat-panel-divider-toggle:hover{background:var(--surface-card-muted);color:var(--client-primary)}.gengage-chat-panel.gengage-chat-panel--collapsed{border-right:none;flex:0 0 0;width:0;min-width:0;max-width:0;padding:0;overflow:hidden}.gengage-chat-panel--collapsed~.gengage-chat-panel-divider{background:0 0;width:0}.gengage-chat-panel--collapsed~.gengage-chat-panel-divider .gengage-chat-panel-divider-toggle{left:50%;transform:translate(-50%,-50%)}.gengage-chat-conversation{background:var(--surface-card);z-index:1;flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.gengage-chat-drawer--with-panel{width:auto;box-shadow:none;background:0 0;overflow:visible}.gengage-chat-drawer--with-panel .gengage-chat-header{border-radius:0;flex-shrink:0}.gengage-chat-drawer--with-panel .gengage-chat-body{flex:1 1 0;align-items:stretch;gap:0;min-height:0;padding:0;overflow:visible}.gengage-chat-drawer--with-panel .gengage-chat-panel--visible{width:clamp(var(--_gengage-chat-panel-min-width), 56vw, var(--_gengage-chat-panel-max-width));min-width:var(--_gengage-chat-panel-min-width);max-width:var(--_gengage-chat-panel-max-width);background:var(--gengage-chat-panel-bg,var(--surface-card));box-shadow:none;border-right:none;border-radius:0;flex:none;max-height:100dvh;margin:0;padding:0 16px 16px;overflow-y:auto}.gengage-chat-drawer--with-panel .gengage-chat-panel-divider{background:0 0;width:0}.gengage-chat-drawer--with-panel .gengage-chat-panel-divider-toggle{background:var(--surface-card);width:20px;height:48px;color:var(--client-primary);border:1px solid color-mix(in srgb, var(--client-primary) 20%, var(--border-default));box-shadow:var(--shadow-1);z-index:10;border-radius:10px;font-size:12px}.gengage-chat-drawer--with-panel .gengage-chat-panel-divider-toggle:hover{background:var(--client-primary-subtle);color:var(--client-primary)}.gengage-chat-drawer--with-panel .gengage-chat-conversation{flex:0 0 var(--_gengage-chat-conversation-width);width:var(--_gengage-chat-conversation-width);background:var(--surface-card);box-shadow:var(--shadow-2);border-left:none}.gengage-chat-drawer--with-panel .gengage-chat-messages{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text-muted) 22%, transparent) transparent;padding-right:6px}.gengage-chat-drawer--with-panel .gengage-chat-messages::-webkit-scrollbar{width:0}.gengage-chat-drawer--with-panel .gengage-chat-panel.gengage-chat-panel--collapsed{flex:0 0 0;width:0;min-width:0;max-width:0;padding:0;overflow:hidden}.gengage-chat-drawer--with-panel:has(.gengage-chat-panel--collapsed){width:var(--_gengage-chat-conversation-width);background:var(--surface-elevated,var(--surface-card));box-shadow:var(--_gengage-chat-shadow)}.gengage-chat-drawer--with-panel .gengage-chat-footer{display:none}.gengage-chat-messages{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;flex-direction:column;flex:1;gap:16px;min-height:0;padding:16px;display:flex;overflow-y:auto}.gengage-chat-messages::-webkit-scrollbar{width:6px}.gengage-chat-messages::-webkit-scrollbar-track{background:0 0}.gengage-chat-messages::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text-muted) 22%, transparent);border-radius:3px}.gengage-chat-messages::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--text-muted) 36%, transparent)}.gengage-chat-bubble--presentation-collapsed{display:none!important}.gengage-chat-former-messages-btn{z-index:2;border-radius:var(--radius-pill);border:1px solid var(--ds-chip-border);background:color-mix(in srgb, var(--surface-card) 96%, transparent);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-1);flex-shrink:0;align-self:center;margin-bottom:4px;padding:8px 14px;font-size:13px;font-weight:600;position:sticky;top:0}.gengage-chat-former-messages-btn:hover{background:var(--surface-card-muted)}.gengage-chat-bubble--panel-bookmark{max-width:72%;margin-top:-6px}.gengage-chat-inline-panel-bookmark-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;font-size:11px;font-weight:700}.gengage-chat-inline-panel-bookmark-card{border:1px solid color-mix(in srgb, var(--client-primary) 38%, var(--border-default));background:color-mix(in srgb, var(--surface-card) 94%, transparent);text-align:left;width:100%;color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-1);border-radius:18px;flex-direction:column;align-items:flex-start;gap:10px;padding:12px;transition:transform .16s,border-color .16s,box-shadow .16s,background-color .16s;display:flex}.gengage-chat-inline-panel-bookmark-card:hover{border-color:color-mix(in srgb, var(--client-primary) 52%, var(--border-default));box-shadow:var(--shadow-2);transform:translateY(-1px)}.gengage-chat-inline-panel-bookmark-card--active{background:color-mix(in srgb, var(--client-primary-subtle) 42%, var(--surface-card))}.gengage-chat-inline-panel-bookmark-previews{gap:8px;display:flex}.gengage-chat-inline-panel-bookmark-preview{background:color-mix(in srgb, var(--surface-card-muted) 70%, var(--surface-card));border:1px solid color-mix(in srgb, var(--border-default) 74%, transparent);border-radius:14px;flex:none;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex;overflow:hidden}.gengage-chat-inline-panel-bookmark-preview-img{object-fit:cover;width:100%;height:100%;display:block}.gengage-chat-inline-panel-bookmark-preview-fallback{color:var(--text-primary);font-size:13px;font-weight:700}.gengage-chat-inline-panel-bookmark-title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.gengage-chat-inline-panel-bookmark-cta{color:var(--client-primary);font-size:13px;font-weight:700}@media (width<=768px){.gengage-chat-bubble--panel-bookmark{display:none!important}}.gengage-chat-bubble{position:relative}@keyframes gengage-chat-msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.gengage-chat-bubble--user{max-width:85%}.gengage-chat-bubble--assistant{max-width:85%;margin-left:2px}.gengage-chat-bubble--ui-spec{box-shadow:none;background:0 0;border:none;min-width:0;padding:0}.gengage-chat-bubble--ui-spec-only{max-width:min(85%,420px)}.gengage-chat-bubble-ui-spec{width:100%}.gengage-chat-bubble--active{outline:2px solid var(--ds-message-active-outline);outline-offset:-2px}.gengage-chat-bubble--assistant:empty{display:none}.gengage-chat-bubble--assistant .gengage-chat-bubble-text a{color:var(--client-primary);text-decoration:underline}.gengage-chat-bubble--assistant .gengage-chat-bubble-text a:hover{text-decoration:none}.gengage-chat-bubble--assistant .gengage-chat-bubble-text p{margin:0 0 8px}.gengage-chat-bubble--assistant .gengage-chat-bubble-text p:last-child{margin-bottom:0}.gengage-chat-bubble--assistant .gengage-chat-bubble-text ul,.gengage-chat-bubble--assistant .gengage-chat-bubble-text ol{margin:6px 0;padding-left:20px}.gengage-chat-bubble--assistant .gengage-chat-bubble-text li{margin-bottom:6px;line-height:1.5}.gengage-chat-bubble--assistant .gengage-chat-bubble-text code{background:color-mix(in srgb, var(--text-primary) 8%, transparent);border-radius:6px;padding:1px 4px;font-size:.9em}.gengage-chat-bubble--assistant .gengage-chat-bubble-text pre{background:color-mix(in srgb, var(--surface-card) 78%, var(--surface-card-soft));border:1px solid var(--border-subtle);border-radius:12px;margin:4px 0;padding:10px 12px;overflow-x:auto}.gengage-chat-bubble--assistant .gengage-chat-bubble-text table{border-collapse:collapse;margin:4px 0;font-size:.9em}.gengage-chat-bubble--assistant .gengage-chat-bubble-text th,.gengage-chat-bubble--assistant .gengage-chat-bubble-text td{border:1px solid var(--border-default);padding:4px 8px}.gengage-chat-bubble--assistant .gengage-chat-bubble-text img{border-radius:12px;max-width:100%;height:auto;margin:4px 0}.gengage-chat-bubble--assistant .gengage-chat-bubble-text h1,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h2,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h3,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h4,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h5,.gengage-chat-bubble--assistant .gengage-chat-bubble-text h6{color:var(--text-primary);margin:8px 0 4px;line-height:1.3}.gengage-chat-bubble--assistant .gengage-chat-bubble-text blockquote{border-left:3px solid var(--border-default);color:var(--text-secondary);margin:4px 0;padding-left:12px}.gengage-chat-bubble--assistant .gengage-chat-bubble-text{overflow-wrap:break-word}.gengage-chat-bubble--photo-analysis{border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default));background:linear-gradient(165deg, color-mix(in srgb, var(--surface-card-soft) 80%, white), var(--surface-card))}.gengage-chat-photo-analysis-card{flex-direction:column;gap:10px;display:flex}.gengage-chat-photo-analysis-badge{letter-spacing:.02em;color:var(--client-primary);background:color-mix(in srgb, var(--client-primary) 14%, white);border:1px solid color-mix(in srgb, var(--client-primary) 24%, var(--border-default));border-radius:999px;align-self:flex-start;padding:4px 10px;font-size:11px;font-weight:800}.gengage-chat-photo-analysis-body{flex-direction:column;gap:12px;display:flex}.gengage-chat-photo-analysis-summary{color:var(--text-primary);margin:0;font-size:14px;line-height:1.55}.gengage-chat-photo-analysis-highlights{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.gengage-chat-photo-analysis-section{border:1px solid color-mix(in srgb, var(--client-primary) 14%, var(--border-default));background:color-mix(in srgb, var(--surface-card-soft) 78%, white);border-radius:14px;flex-direction:column;gap:8px;padding:12px;display:flex}.gengage-chat-photo-analysis-section--celeb{gap:6px}.gengage-chat-photo-analysis-section-title{letter-spacing:.03em;text-transform:uppercase;color:var(--text-secondary);margin:0;font-size:12px;font-weight:800}.gengage-chat-photo-analysis-section-list{color:var(--text-primary);gap:6px;margin:0;padding-left:18px;font-size:13px;line-height:1.5;display:grid}.gengage-chat-photo-analysis-section-item{margin:0}.gengage-chat-photo-analysis-celeb-name{color:var(--text-primary);margin:0;font-size:15px;font-weight:800;line-height:1.35}.gengage-chat-photo-analysis-celeb-reason{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.gengage-chat-photo-analysis-next{background:color-mix(in srgb, var(--client-primary) 9%, white);color:var(--text-primary);border-radius:12px;margin:0;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.45}.gengage-chat-bubble--first{border-left:1px solid var(--ds-message-assistant-border)}.gengage-chat-bubble--first .gengage-chat-bubble-text{font-size:inherit}@media (width<=768px){.gengage-chat-bubble--assistant .gengage-chat-bubble-text{line-height:1.5}.gengage-chat-bubble--user{word-break:break-word;max-width:calc(100% - 16px)}}.gengage-chat-typing{align-self:flex-start;max-width:85%}.gengage-chat-typing-dots{flex-shrink:0}.gengage-chat-typing-text{flex:1;min-width:0}.gengage-chat-typing--presence{justify-content:flex-start;width:fit-content;max-width:100%}.gengage-chat-panel-loading-status{margin-bottom:16px}.gengage-chat-panel-loading-status.gds-progress-loader-panel{box-sizing:border-box;min-width:0;max-width:100%}.gengage-chat-root--mobile .gengage-chat-panel-loading-status.gds-progress-loader-panel{max-width:100%}.gengage-chat-root--mobile .gengage-chat-panel-loading-status .gengage-chat-panel-loading-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.gengage-chat-offline-bar{color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));background:color-mix(in srgb, var(--warning) 10%, white);border-bottom:1px solid color-mix(in srgb, var(--warning) 22%, var(--border-default));align-items:center;gap:6px;padding:6px 12px;font-size:12px;line-height:1.4;display:none}.gengage-chat-offline-bar--visible{display:flex}.gengage-chat-offline-bar:before{content:"";background:var(--_gengage-rating-color);border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.gengage-chat-thinking-steps{flex-direction:column;gap:4px;padding:4px 0;display:flex}.gengage-chat-thinking-step{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;display:flex}.gengage-chat-thinking-step-marker{text-align:center;flex-shrink:0;width:16px;font-size:12px}.gengage-chat-thinking-step-marker--done{color:var(--_gengage-success-color)}.gengage-chat-thinking-step-marker--active{color:var(--ai-accent-start);animation:1.5s ease-in-out infinite gengage-thinking-pulse}@keyframes gengage-thinking-pulse{0%,to{opacity:1}50%{opacity:.4}}.gengage-chat-thinking-step-text{line-height:1.4}.gengage-chat-error{border-radius:var(--radius-control);background:color-mix(in srgb, var(--error) 10%, white);color:color-mix(in srgb, var(--error) 84%, var(--text-primary));text-align:center;border:1px solid color-mix(in srgb, var(--error) 22%, var(--border-default));justify-content:center;align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.gengage-chat-error-retry{border:1px solid color-mix(in srgb, var(--error) 24%, var(--border-default));border-radius:var(--radius-control);background:var(--surface-card);color:color-mix(in srgb, var(--error) 84%, var(--text-primary));cursor:pointer;flex-shrink:0;padding:4px 12px;font-size:12px;font-weight:500;transition:background .15s,border-color .15s}.gengage-chat-error-retry:hover{background:color-mix(in srgb, var(--error) 8%, white);border-color:color-mix(in srgb, var(--error) 32%, var(--border-default))}.gengage-chat-input-area{border-top:1px solid var(--border-subtle);background:var(--surface-card);z-index:2;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:0;padding:10px 12px 12px;display:flex;position:relative}.gengage-chat-input-pill{--gengage-chat-input-control-size:40px;--gengage-chat-input-shell-pad:6px;--gengage-chat-input-shell-radius:18px;--gengage-chat-input-control-radius:12px;min-width:0;min-height:calc(var(--gengage-chat-input-control-size) + (var(--gengage-chat-input-shell-pad) * 2));background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--gengage-chat-input-shell-radius);padding:var(--gengage-chat-input-shell-pad);box-sizing:border-box;box-shadow:none;flex:1;align-items:center;gap:10px;transition:border-color .2s,box-shadow .2s;display:flex;overflow:visible}.gengage-chat-input-pill:focus-within{border-color:color-mix(in srgb, var(--client-primary) 28%, white);box-shadow:0 0 0 4px var(--client-focus-ring)}.gengage-chat-input{box-sizing:border-box;min-width:0;min-height:40px;max-height:120px;color:var(--_gengage-text-primary);resize:none;background:0 0;border:none;border-radius:0;outline:none;flex:1;padding:11px 0 9px;font-family:inherit;font-size:14px;line-height:1.4;overflow-y:hidden}.gengage-chat-root--mobile .gengage-chat-input-pill{--gengage-chat-input-control-size:44px;--gengage-chat-input-shell-radius:20px;--gengage-chat-input-control-radius:14px;min-height:calc(var(--gengage-chat-input-control-size) + (var(--gengage-chat-input-shell-pad) * 2))}.gengage-chat-root--mobile .gengage-chat-input{white-space:nowrap;min-height:44px;max-height:44px;padding:12px 0 10px;font-size:16px;line-height:1.4;overflow:hidden}.gengage-chat-input::placeholder{color:var(--text-muted);font-size:14px;line-height:inherit}.gengage-chat-send{width:var(--gengage-chat-input-control-size,40px);height:var(--gengage-chat-input-control-size,40px);min-width:var(--gengage-chat-input-control-size,40px);border:1px solid var(--ds-button-primary-border);border-radius:var(--gengage-chat-input-control-radius,12px);background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg);cursor:pointer;box-shadow:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:0;font-weight:700;transition:background-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s,transform .15s;display:flex;position:relative}.gengage-chat-send:hover{background:var(--ds-button-primary-bg-hover);box-shadow:none;transform:none}.gengage-chat-send:active{box-shadow:none;transform:translateY(0)}.gengage-chat-send svg{width:18px;height:18px}.gengage-chat-send--stop{background:var(--surface-card-soft);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));color:var(--text-primary)}.gengage-chat-send--stop:hover{background:color-mix(in srgb, var(--surface-card-soft) 86%, var(--client-primary-subtle));border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default));color:var(--client-primary)}.gengage-chat-send-stop-icon{background:currentColor;border-radius:4px;width:12px;height:12px;display:inline-block}.gengage-chat-send--stop:after{content:attr(data-tooltip);background:color-mix(in srgb, var(--surface-shell) 98%, black);border:1px solid color-mix(in srgb, var(--surface-shell) 60%, white);box-shadow:var(--shadow-2);color:var(--text-inverse);white-space:nowrap;opacity:0;pointer-events:none;z-index:12;border-radius:10px;padding:7px 10px;font-size:12px;font-weight:600;line-height:1.2;transition:opacity .16s;position:absolute;top:50%;right:calc(100% + 10px);transform:translateY(-50%)}@media (hover:hover) and (pointer:fine){.gengage-chat-send--stop:hover:after,.gengage-chat-send--stop:focus-visible:after{opacity:1}}.gengage-chat-send:disabled{background:var(--ds-neutral-200);border-color:var(--ds-neutral-200);opacity:.5;box-shadow:none;cursor:not-allowed}.gengage-chat-footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--border-subtle);background:var(--surface-card);padding:4px 10px;font-size:10px}.gengage-chat-uispec{width:100%}.gengage-chat-uispec:empty{display:none}.gengage-chat-uispec>*{animation:.16s cubic-bezier(.2,.7,.2,1) both gengage-chat-widget-enter}@keyframes gengage-chat-widget-enter{0%{opacity:0;transform:translateY(5px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.gengage-chat-action-buttons{flex-wrap:wrap;justify-content:flex-start;gap:8px;padding:6px 0 4px;display:flex}.gengage-chat-action-buttons:after{content:"";flex:1 0 auto}.gengage-chat-action-btn{border:1px solid var(--ds-button-primary-border);border-radius:var(--radius-pill,999px);background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg);cursor:pointer;white-space:nowrap;flex:none;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:700;line-height:1.25;transition:filter .15s,transform .1s}.gengage-chat-action-btn:hover{background:var(--ds-button-primary-bg-hover)}.gengage-chat-action-btn:active{transform:scale(.97)}.gengage-chat-product-card{border:1px solid var(--ds-card-border);border-radius:var(--ds-card-radius);background:var(--ds-card-bg);width:160px;min-width:160px;max-width:160px;box-shadow:var(--ds-card-shadow);flex-direction:column;transition:transform .1s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.gengage-chat-product-card:hover{box-shadow:var(--ds-card-shadow-hover);transform:translateY(-2px)}.gengage-chat-product-card-img{object-fit:contain;background:var(--surface-card);box-sizing:border-box;width:100%;height:120px;padding:8px;display:block}.gengage-chat-product-card-body{text-align:center;flex-direction:column;flex:1;gap:4px;padding:8px 10px 10px;display:flex}.gengage-chat-product-card-name{color:var(--_gengage-text-primary);-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;min-height:2.7em;margin-bottom:0;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.gengage-chat-product-card-brand{color:var(--text-secondary);font-size:10px}.gengage-chat-product-card-rating{color:var(--_gengage-rating-color);font-size:11px;line-height:1}.gengage-star-half{display:inline-block;position:relative}.gengage-star-half>span{width:.5em;position:absolute;top:0;left:0;overflow:hidden}.gengage-chat-product-card-review-count{color:var(--text-secondary);font-size:10px}.gengage-chat-product-card-price,.gengage-chat-product-card-price-block{color:var(--text-primary);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 6px;font-size:16px;font-weight:800;display:flex}.gengage-chat-product-card-current-price{font:inherit;color:var(--gengage-discounted-price-color,var(--text-primary));font-weight:800}.gengage-chat-product-card-original-price{color:var(--_gengage-text-secondary);margin-right:0;font-size:11px;font-weight:400;text-decoration:line-through}.gengage-chat-campaign-reason{letter-spacing:.02em;background:linear-gradient(90deg, var(--_gengage-campaign-reason-start), var(--_gengage-campaign-reason-end));color:#0000;-webkit-background-clip:text;background-clip:text;max-width:100%;margin:0 0 4px;font-size:11px;font-weight:700;line-height:1.25}@supports not ((-webkit-background-clip:text) or (background-clip:text)){.gengage-chat-campaign-reason,.gengage-chat-campaign-price-badge__reason{color:var(--_gengage-campaign-reason-start);background:0 0}}.gengage-chat-product-card-price-stack{flex-direction:column;align-items:flex-start;width:100%;min-width:0;display:flex}.gengage-chat-product-card-price-row{flex-flow:wrap;align-items:baseline;gap:0 6px;display:flex}.gengage-chat-product-card-price-sep{background:var(--border-subtle);flex-shrink:0;align-self:center;width:1px;height:.95em;margin:0 1px;display:inline-block}.gengage-chat-product-card-price-block--inline .gengage-chat-product-card-original-price{color:var(--gengage-inline-original-price-color,var(--text-secondary));font-size:16px;font-weight:500;text-decoration:none}.gengage-chat-product-card-price-block--inline .gengage-chat-product-card-current-price{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:16px;font-weight:800}.gengage-chat-product-card-meta-row{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:8px;width:100%;min-height:34px;display:flex}.gengage-chat-product-card-meta-row--empty{visibility:hidden}.gengage-chat-product-card-rating-compact{border:1px solid var(--border-subtle);background:var(--surface-card-muted);color:var(--text-secondary);border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.gengage-chat-product-card-rating-compact-star{color:color-mix(in srgb, var(--warning) 60%, var(--text-primary));justify-content:center;align-items:center;line-height:0;display:inline-flex}.gengage-chat-product-card-rating-compact-value{font-variant-numeric:tabular-nums;color:var(--text-primary)}.gengage-chat-product-card-img-actions{z-index:4;pointer-events:none;flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute;top:8px;right:8px}.gengage-chat-product-card-img-actions>*{pointer-events:auto}.gengage-chat-product-card-img-actions .gengage-chat-favorite-btn,.gengage-chat-product-card-img-actions .gengage-chat-find-similar-pill{position:static}.gengage-chat-price-skeleton{background:linear-gradient(90deg, var(--ds-neutral-200) 25%, var(--ds-neutral-100) 50%, var(--ds-neutral-200) 75%);vertical-align:middle;background-size:200% 100%;border-radius:4px;width:80px;height:16px;animation:1.5s ease-in-out infinite gengage-skeleton-price-pulse;display:inline-block}@keyframes gengage-skeleton-price-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.gengage-chat-product-card-cta{text-align:center;color:var(--client-primary);letter-spacing:.01em;border-top:1px solid var(--border-default);cursor:pointer;background:0 0;margin-top:auto;padding:8px 10px;font-size:12px;font-weight:700;text-decoration:none;transition:color .15s,background .15s;display:block}.gengage-chat-product-card-cta:hover{color:var(--client-primary-hover);background:var(--surface-card-soft)}.gengage-chat-product-card-cta:active{background:var(--surface-card-soft)}button.gengage-chat-product-card-cta{appearance:none;font:inherit;box-sizing:border-box;border-bottom:none;border-left:none;border-right:none;width:100%;margin:0}.gengage-chat-panel-restore-card{appearance:none;box-sizing:border-box;font:inherit;border:1px solid color-mix(in srgb, var(--client-primary) 34%, var(--border-default));border-radius:calc(var(--radius-control) + 6px);background:var(--surface-card);width:100%;color:var(--text-primary);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:12px;margin:0;padding:16px 18px;transition:transform .18s,background .18s,box-shadow .18s,border-color .18s;display:flex}.gengage-chat-panel-restore-card--minimal{gap:10px;padding:14px 16px}.gengage-chat-panel-restore-card:hover{background:color-mix(in srgb, var(--surface-card) 92%, var(--client-primary-subtle) 8%);box-shadow:var(--shadow-2);border-color:color-mix(in srgb, var(--client-primary) 52%, var(--border-default));transform:translateY(-1px)}.gengage-chat-panel-restore-card:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:3px}.gengage-chat-panel-restore-card__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);font-size:12px;font-weight:800}.gengage-chat-panel-restore-card__previews{gap:10px;display:flex}.gengage-chat-panel-restore-card--minimal .gengage-chat-panel-restore-card__previews{gap:8px}.gengage-chat-panel-restore-card__thumb{border:1px solid var(--border-default);background:var(--surface-card);border-radius:16px;width:58px;height:58px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff8a}.gengage-chat-panel-restore-card__thumb img{object-fit:cover;width:100%;height:100%;display:block}.gengage-chat-panel-restore-card__title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:18px;font-weight:700;line-height:1.24;display:-webkit-box;overflow:hidden}.gengage-chat-panel-restore-card__cta{color:var(--client-primary);font-size:15px;font-weight:700}.gengage-chat-panel-restore-card--minimal .gengage-chat-panel-restore-card__cta{letter-spacing:.01em;font-size:14px}.gengage-chat-root--mobile .gengage-chat-panel-restore-card{-webkit-tap-highlight-color:transparent;padding:14px 16px}.gengage-chat-root--mobile .gengage-chat-panel-restore-card__thumb{border-radius:14px;width:52px;height:52px}.gengage-chat-root--mobile .gengage-chat-bubble--active{outline:none}.gengage-chat-product-summary{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);cursor:pointer;flex-wrap:wrap;align-items:center;gap:12px;margin:4px 0;padding:10px 12px;transition:background .15s,box-shadow .15s,border-color .15s;display:flex}.gengage-chat-product-summary:hover{background:var(--surface-card-soft);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));box-shadow:var(--shadow-1)}.gengage-chat-product-summary__image{border-radius:var(--radius-control);border:1px solid var(--border-subtle);background:var(--surface-card-soft);flex-shrink:0;width:64px;height:64px;overflow:hidden}.gengage-chat-product-summary__image img{object-fit:cover;width:100%;height:100%;display:block}.gengage-chat-product-summary__content{flex-direction:column;flex:180px;gap:2px;min-width:0;display:flex}.gengage-chat-product-summary__name{color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:13px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.gengage-chat-product-summary__rating{color:var(--_gengage-rating-color);font-size:11px;line-height:1}.gengage-chat-product-summary__review-count{color:var(--text-secondary);font-size:11px}.gengage-chat-product-summary__price{color:var(--text-primary);margin-top:2px;font-size:13px;font-weight:600;line-height:1}.gengage-chat-product-summary__price-original{color:var(--_gengage-text-secondary);font-size:11px;font-weight:400;text-decoration:line-through}.gengage-chat-product-summary__price-current{color:var(--gengage-discounted-price-color,var(--text-primary))}.gengage-chat-product-summary__price-stack{flex-direction:column;align-items:flex-start;gap:2px;margin-top:2px;display:flex}.gengage-chat-product-summary__price-stack .gengage-chat-campaign-reason{font-size:11px;font-weight:700}.gengage-chat-product-summary__price--inline{flex-flow:wrap;align-items:baseline;gap:0 6px;display:flex}.gengage-chat-product-summary__price-sep{background:var(--border-subtle);flex-shrink:0;align-self:center;width:1px;height:.9em;margin:0 1px;display:inline-block}.gengage-chat-product-summary__price--inline .gengage-chat-product-summary__price-original{color:var(--gengage-inline-original-price-color,var(--text-secondary));font-size:13px;font-weight:500;text-decoration:none}.gengage-chat-product-summary__price--inline .gengage-chat-product-summary__price-current{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:13px;font-weight:700}.gengage-chat-product-summary__cta{color:var(--client-primary);border-radius:var(--radius-pill);background:var(--client-primary-subtle);white-space:nowrap;flex-shrink:0;margin-left:auto;padding:4px 10px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,color .15s}.gengage-chat-product-summary__cta:hover{background:var(--client-primary-soft)}.gengage-chat-product-summary__cta:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}button.gengage-chat-product-summary__cta{cursor:pointer;font:inherit;border:none}.gengage-chat-product-grid{-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity;gap:12px;min-height:180px;padding:8px 16px 8px 0;display:flex;overflow-x:auto}.gengage-chat-product-grid>*{scroll-snap-align:start;flex:none}.gengage-chat-product-grid::-webkit-scrollbar{display:none}.gengage-chat-product-grid--pending{filter:blur(3px)saturate(.85);opacity:.75;pointer-events:none;transition:filter .16s ease-out,opacity .16s ease-out;position:relative}.gengage-chat-product-grid--pending:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 0%,#ffffff59 50%,#0000 100%);animation:1.2s ease-in-out infinite gengage-chat-product-grid-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes gengage-chat-product-grid-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.gengage-chat-product-grid--pending:after{animation:none}}.gengage-chat-review-highlights{padding:4px 0 8px}.gengage-chat-review-empty{color:var(--_gengage-text-secondary);font-size:12px}.gengage-chat-review-subjects-heading{color:var(--text-primary);margin-bottom:10px;font-size:14px;font-weight:700}.gengage-chat-review-subjects{margin-bottom:12px}.gengage-chat-review-subject{color:var(--text-primary);box-shadow:none;gap:6px;padding:7px 11px;font-size:13px;font-weight:600;line-height:1.2}.gengage-chat-review-subject--active{border-color:var(--ds-chip-border-active);background:var(--ds-chip-bg-active);color:var(--ds-chip-fg-active)}.gengage-chat-review-subject-icon{flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}.gengage-chat-review-subject-icon svg{width:14px;height:14px;display:block}.gengage-chat-review-subject[data-tone=positive] .gengage-chat-review-subject-icon{color:color-mix(in srgb, var(--success) 82%, var(--text-primary))}.gengage-chat-review-subject[data-tone=negative] .gengage-chat-review-subject-icon{color:color-mix(in srgb, var(--error) 84%, var(--text-primary))}.gengage-chat-review-subject[data-tone=neutral] .gengage-chat-review-subject-icon{color:var(--text-secondary)}.gengage-chat-review-subject-label{color:inherit}.gengage-chat-review-subject-count{color:var(--text-secondary);font-size:12px;font-weight:700}.gengage-chat-review-detail{padding:12px}.gengage-chat-review-detail-meta{flex-wrap:wrap;align-items:baseline;gap:10px 16px;margin-bottom:10px;display:flex}.gengage-chat-review-detail-mentions{color:var(--_gengage-text-primary);font-size:13px;font-weight:700}.gengage-chat-review-detail-positive{color:var(--_gengage-success-color);font-size:13px;font-weight:700}.gengage-chat-review-detail-negative{color:var(--error);font-size:13px;font-weight:700}.gengage-chat-review-snippets{gap:10px;display:grid}.gengage-chat-review-snippet{border:1px solid var(--border-subtle);border-left:3px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card-soft);padding:8px 10px}.gengage-chat-review-snippet[data-tone=positive]{border-left-color:color-mix(in srgb, var(--success) 40%, var(--border-default))}.gengage-chat-review-snippet[data-tone=negative]{border-left-color:color-mix(in srgb, var(--error) 40%, var(--border-default))}.gengage-chat-review-snippet-text{color:var(--_gengage-text-primary);font-size:13px;line-height:1.4}.gengage-chat-review-snippet-rating{color:var(--text-secondary);margin-top:4px;font-size:12px;font-weight:700}.gengage-chat-favorites-page{padding:12px}.gengage-chat-favorites-empty{text-align:center;color:var(--_gengage-text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.gengage-chat-favorites-empty-icon{opacity:.25;color:var(--error)}.gengage-chat-favorites-empty p{margin:0;font-size:13px;line-height:1.5}.gengage-chat-favorites-list{flex-direction:column;gap:10px;display:flex}.gengage-chat-favorites-card{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);box-shadow:var(--shadow-1);align-items:center;gap:12px;padding:10px 12px;transition:opacity .2s,transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative}.gengage-chat-favorites-card:hover{border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));box-shadow:var(--shadow-1)}.gengage-chat-favorites-card--removing{opacity:0;transform:translate(8px)}.gengage-chat-favorites-card__image{border-radius:var(--radius-control);background:var(--surface-card-muted);flex-shrink:0;width:56px;height:56px;overflow:hidden}.gengage-chat-favorites-card__image img{object-fit:contain;width:100%;height:100%}.gengage-chat-favorites-card__info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.gengage-chat-favorites-card__name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.gengage-chat-favorites-card__price{color:var(--client-primary);font-size:13px;font-weight:700}.gengage-chat-favorites-remove{border-radius:var(--radius-pill);width:28px;height:28px;color:var(--error);cursor:pointer;opacity:.7;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s,background .15s;display:inline-flex}.gengage-chat-favorites-remove:hover{opacity:1;background:color-mix(in srgb, var(--error) 10%, white)}.gengage-chat-history-page{flex-direction:column;gap:12px;padding:12px;display:flex}.gengage-chat-history-actions{display:flex}.gengage-chat-history-new-chat{border:1px solid color-mix(in srgb, var(--client-primary) 20%, var(--border-default));border-radius:var(--radius-control);background:color-mix(in srgb, var(--client-primary) 9%, white);width:100%;min-height:42px;color:var(--client-primary);cursor:pointer;padding:0 14px;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,transform .15s}.gengage-chat-history-new-chat:hover{background:color-mix(in srgb, var(--client-primary) 14%, white);border-color:color-mix(in srgb, var(--client-primary) 28%, var(--border-default))}.gengage-chat-history-list{flex-direction:column;gap:10px;display:flex}.gengage-chat-history-item{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);box-shadow:var(--shadow-1);align-items:stretch;gap:8px;padding:0;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.gengage-chat-history-item:hover{border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default))}.gengage-chat-history-item--active{border-color:color-mix(in srgb, var(--client-primary) 28%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 6%, var(--surface-card))}.gengage-chat-history-open{min-width:0;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;flex:1;padding:12px 14px}.gengage-chat-history-item-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.gengage-chat-history-item-title{min-width:0;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.gengage-chat-history-item-meta{color:var(--text-muted);flex-shrink:0;font-size:11px;font-weight:600}.gengage-chat-history-item-preview{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.gengage-chat-history-delete{border:none;border-left:1px solid color-mix(in srgb, var(--border-default) 84%, transparent);border-top-right-radius:inherit;border-bottom-right-radius:inherit;width:38px;min-width:38px;color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.gengage-chat-history-delete:hover{background:color-mix(in srgb, var(--error) 10%, white);color:var(--error)}.gengage-chat-history-empty{text-align:center;color:var(--_gengage-text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.gengage-chat-history-empty-icon{opacity:.25;color:var(--client-primary)}.gengage-chat-history-empty p{margin:0;font-size:13px;line-height:1.5}.gengage-chat-divider{border:none;border-top:1px solid var(--_gengage-border-color);margin:8px 0}.gengage-chat-divider-wrapper{align-items:center;gap:8px;margin:8px 0;display:flex}.gengage-chat-divider-wrapper hr{border:none;border-top:1px solid var(--_gengage-border-color);flex:1;margin:0}.gengage-chat-divider-label{color:var(--text-muted);white-space:nowrap;font-size:11px}.gengage-chat--overlay .gengage-chat-drawer{border-radius:0;width:100%;max-width:480px;max-height:100%;margin:0 auto;animation:.24s cubic-bezier(.2,.72,.2,1) gengage-chat-overlay-in;position:fixed;inset:0}@keyframes gengage-chat-overlay-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.gengage-chat-panel-skeleton{box-sizing:border-box;flex-direction:column;gap:14px;min-width:0;max-width:100%;padding:6px 0;display:flex}.gengage-chat-panel-skeleton-block{background:linear-gradient(90deg, var(--ds-neutral-200) 25%, var(--ds-neutral-100) 50%, var(--ds-neutral-200) 75%);background-size:200% 100%;border-radius:10px;height:110px;animation:1.4s infinite gengage-panel-shimmer}@keyframes gengage-panel-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.gengage-chat-panel-skeleton-block--image{border-radius:8px;height:200px;margin-bottom:12px}.gengage-chat-panel-skeleton-block--text{border-radius:4px;height:16px;margin-bottom:8px}.gengage-chat-panel-skeleton-block--text:nth-child(3){width:80%}.gengage-chat-panel-skeleton-block--text:nth-child(4){width:60%}.gengage-chat-panel-skeleton-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.gengage-chat-panel-skeleton-block--card{border-radius:8px;height:120px}.gengage-chat-panel-skeleton--comparison{gap:0;padding:0}.gengage-chat-panel-skeleton--comparison .gengage-chat-panel-loading-status{margin:0;padding:16px 16px 0}.gengage-chat-comparison--skeleton{pointer-events:none;box-sizing:border-box;width:100%}.gengage-chat-comparison-skeleton-shimmer{background:linear-gradient(90deg, var(--ds-neutral-200) 25%, var(--ds-neutral-100) 50%, var(--ds-neutral-200) 75%);background-size:200% 100%;animation:1.4s infinite gengage-panel-shimmer}.gengage-chat-comparison-skeleton-rec-label{border-radius:4px;width:132px;height:12px;margin-bottom:12px}.gengage-chat-comparison-skeleton-rec-img{border-radius:8px;flex-shrink:0;width:80px;height:80px}.gengage-chat-comparison-skeleton-rec-title{border-radius:4px;max-width:100%;height:14px;margin-bottom:6px}.gengage-chat-comparison-skeleton-rec-title--short{width:72%;margin-bottom:8px}.gengage-chat-comparison-skeleton-rec-price{border-radius:4px;width:112px;height:18px}.gengage-chat-comparison-skeleton-hl-label{border-radius:4px;width:96px;height:12px;margin-bottom:6px}.gengage-chat-comparison-skeleton-hl-list{margin:0;padding-left:18px;list-style:none}.gengage-chat-comparison-skeleton-hl-list li{margin-bottom:8px}.gengage-chat-comparison-skeleton-hl-list li:last-child{margin-bottom:0}.gengage-chat-comparison-skeleton-hl-line{border-radius:4px;width:100%;height:13px}.gengage-chat-comparison-skeleton-hl-line--medium{width:92%}.gengage-chat-comparison-skeleton-hl-line--short{width:78%}.gengage-chat-comparison-skeleton-kd-heading{border-radius:4px;width:42%;height:14px;margin:0 0 8px}.gengage-chat-comparison-skeleton-kd-line{border-radius:4px;max-width:100%;height:13px;margin-bottom:8px}.gengage-chat-comparison-skeleton-kd-line:last-child{margin-bottom:0}.gengage-chat-comparison-skeleton-kd-line:nth-child(odd){width:100%}.gengage-chat-comparison-skeleton-kd-line:nth-child(2n){width:90%}.gengage-chat-comparison-special--skeleton{cursor:default;align-items:center;min-height:44px;display:flex}.gengage-chat-comparison-skeleton-special-line{border-radius:4px;width:56%;max-width:280px;height:14px}.gengage-chat-comparison-skeleton-table-wrap{border:1px solid var(--border-default);background:var(--surface-card);-webkit-overflow-scrolling:touch;border-radius:8px;margin-top:12px;overflow-x:auto}.gengage-chat-comparison-skeleton-table-head,.gengage-chat-comparison-skeleton-table-row{grid-template-columns:72px repeat(3,minmax(0,1fr));align-items:start;gap:8px;padding:10px 12px;display:grid}.gengage-chat-comparison-skeleton-table-head{border-bottom:1px solid var(--_gengage-surface-muted);background:var(--_gengage-surface-muted)}.gengage-chat-comparison-skeleton-table-corner{min-height:92px}.gengage-chat-comparison-skeleton-table-col{text-align:center;flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.gengage-chat-comparison-skeleton-table-th-img{border-radius:6px;flex-shrink:0;width:60px;height:60px}.gengage-chat-comparison-skeleton-table-th-name{border-radius:3px;width:100%;max-width:100%;height:11px}.gengage-chat-comparison-skeleton-table-th-price{border-radius:3px;width:64%;height:13px}.gengage-chat-comparison-skeleton-table-row{border-bottom:1px solid var(--_gengage-surface-muted)}.gengage-chat-comparison-skeleton-table-row:last-child{border-bottom:none}.gengage-chat-comparison-skeleton-table-label{border-radius:3px;align-self:center;width:100%;max-width:56px;height:12px}.gengage-chat-comparison-skeleton-table-cell{border-radius:3px;width:100%;height:14px}.gengage-chat-panel-skeleton-block--row{border-radius:4px;height:32px;margin-bottom:4px}.gengage-chat-panel .gengage-chat-product-card{border-radius:var(--radius-card);border:1px solid var(--border-default);width:100%;min-width:0;max-width:100%;box-shadow:var(--shadow-1);background:var(--surface-card);flex-direction:column;padding:0;display:flex;overflow:hidden}.gengage-chat-panel .gengage-chat-product-card:hover{box-shadow:var(--shadow-2);border-color:var(--border-strong);transform:translateY(-2px)}.gengage-chat-panel .gengage-chat-product-card-img-actions{gap:6px;top:10px;right:10px}.gengage-chat-panel .gengage-chat-product-card-img-actions .gengage-chat-favorite-btn,.gengage-chat-panel .gengage-chat-product-card-img-actions .gengage-chat-find-similar-pill{border-radius:8px;width:28px;height:28px}.gengage-chat-panel .gengage-chat-product-card-discount-badge{border-radius:var(--radius-pill);background:var(--client-primary);min-width:36px;height:36px;color:var(--client-on-primary);box-shadow:var(--shadow-1);justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex;top:10px;left:10px}.gengage-chat-panel .gengage-chat-product-card-brand{display:none}.gengage-chat-panel .gengage-chat-product-grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:12px;min-height:auto;padding:4px 0;display:grid;overflow-x:visible}.gengage-chat-panel .gengage-chat-product-grid.gengage-chat-product-grid--consulting-groups{grid-template-columns:repeat(auto-fit,minmax(200px,240px));justify-content:start}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-grid.gengage-chat-product-grid--consulting-groups.gengage-chat-product-grid--mobile{grid-template-columns:1fr}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-grid.gengage-chat-product-grid--mobile{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:auto;padding:6px 0 10px;display:grid;overflow-x:visible}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-grid.gengage-chat-product-grid--mobile .gengage-chat-product-card{box-sizing:border-box;width:100%;min-width:0;max-width:none}.gengage-chat-panel .gengage-chat-product-card-img-wrapper{aspect-ratio:1;background:var(--surface-card-muted);border-radius:var(--radius-card) var(--radius-card) 0 0;flex-shrink:0;width:100%;position:relative;overflow:hidden}.gengage-chat-panel .gengage-chat-product-card-img{border-radius:inherit;object-fit:cover;object-position:center;box-sizing:border-box;background:0 0;width:100%;height:100%;min-height:0;padding:0;display:block}.gengage-chat-panel .gengage-chat-product-card-body{text-align:left;gap:8px;padding:12px 14px 10px}.gengage-chat-panel .gengage-chat-product-card-meta-row{align-items:center;min-height:38px;margin-bottom:0}.gengage-chat-panel .gengage-chat-product-card-price,.gengage-chat-panel .gengage-chat-product-card-price-block{color:var(--text-primary);justify-content:flex-start;font-size:15px;font-weight:600}.gengage-chat-panel .gengage-chat-product-card-current-price{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:15px;font-weight:600}.gengage-chat-panel .gengage-chat-product-card-original-price{color:var(--text-muted);font-size:12px;font-weight:400}.gengage-chat-panel .gengage-chat-product-card-rating-compact{font-size:11px;font-weight:700}.gengage-chat-panel .gengage-chat-product-card-rating-compact-star{color:color-mix(in srgb, var(--warning) 58%, var(--text-primary))}.gengage-chat-panel .gengage-chat-product-card-name{min-height:0;color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;margin:0 0 2px;font-size:14px;font-weight:600;line-height:1.35}.gengage-chat-panel .gengage-chat-product-card-buy-footer{flex-shrink:0;min-width:0;margin-top:auto;padding:0 14px 16px;display:flex;position:relative}.gengage-chat-panel .gengage-chat-product-card-buy-trigger{box-sizing:border-box;border:1.5px solid var(--client-primary);background:var(--surface-card);width:100%;min-width:0;min-height:42px;color:var(--client-primary);white-space:nowrap;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;margin:0;padding:9px 14px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;transition:background .15s,box-shadow .15s;display:flex}.gengage-chat-panel .gengage-chat-product-card-buy-trigger:hover{background:color-mix(in srgb, var(--client-primary) 6%, white);box-shadow:var(--shadow-1)}.gengage-chat-panel .gengage-chat-product-card .gengage-chat-product-card-cta{border:1.5px solid var(--client-primary);background:var(--surface-card);width:calc(100% - 28px);min-width:0;color:var(--client-primary);box-sizing:border-box;border-radius:12px;justify-content:center;align-items:center;min-height:42px;margin:0 14px 16px;padding:9px 14px;font-size:13px;font-weight:600;display:flex}.gengage-chat-panel .gengage-chat-product-card .gengage-chat-product-card-cta:hover{background:color-mix(in srgb, var(--client-primary) 6%, white)}.gengage-chat-product-card--selected{border-color:var(--client-primary);background:color-mix(in srgb, var(--client-primary) 8%, transparent);box-shadow:0 0 0 1px var(--client-primary)}.gengage-chat-panel--visible{min-height:0}.gengage-chat-panel--visible>*{flex-shrink:0}.gengage-chat-load-more-btn{border:1px solid var(--border-default);color:var(--client-primary);cursor:pointer;background:0 0;border-radius:8px;margin:12px auto;padding:8px 24px;font-size:14px;display:block}.gengage-chat-load-more-btn:hover{background:var(--surface-card-muted)}.gengage-chat-product-details-panel{background:var(--surface-card);border:1px solid var(--border-default);box-sizing:border-box;border-radius:16px;flex-direction:column;gap:12px;width:100%;padding:14px;display:flex}.gengage-chat-product-details-media{border:1px solid var(--border-subtle);background:var(--surface-card-muted);border-radius:12px;flex-direction:column;align-items:center;padding:12px;display:flex}.gengage-chat-product-details-img{object-fit:contain;border-radius:8px;width:100%;height:auto;max-height:300px}.gengage-chat-product-details-content{flex-direction:column;gap:8px;min-width:0;display:flex}.gengage-chat-product-details-title{color:var(--text-primary);margin:0;font-size:17px;font-weight:700;line-height:1.3}.gengage-chat-product-details-rating{background:color-mix(in srgb, var(--warning) 10%, white);width:fit-content;color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:13px;font-weight:700;display:inline-flex}.gengage-chat-product-details-review-count{color:color-mix(in srgb, var(--warning) 84%, var(--text-primary));font-weight:600}.gengage-chat-product-details-price{align-items:baseline;gap:6px;display:flex}.gengage-chat-product-details-original-price{color:var(--text-secondary);font-size:14px;text-decoration:line-through}.gengage-chat-product-details-price-stack{flex-direction:column;align-items:flex-start;gap:2px;width:100%;display:flex}.gengage-chat-product-details-price-stack .gengage-chat-campaign-reason{margin-bottom:2px;font-size:13px;font-weight:600}.gengage-chat-product-details-price--inline{flex-wrap:nowrap;align-items:baseline}.gengage-chat-product-details-price--inline .gengage-chat-product-details-price-sep{background:var(--border-subtle);flex-shrink:0;align-self:center;width:1px;height:1em;margin:0 4px;display:inline-block}.gengage-chat-product-details-price--inline .gengage-chat-product-details-original-price{color:var(--text-secondary);order:0;font-size:22px;font-weight:500;text-decoration:none}.gengage-chat-product-details-price--inline .gengage-chat-product-details-current-price{color:var(--gengage-discounted-price-color,var(--text-primary));order:0;font-size:22px;font-weight:800}.gengage-chat-product-details-current-price{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:22px;font-weight:800;line-height:1.1}.gengage-chat-product-details-stock{border-radius:999px;width:fit-content;padding:4px 10px;font-size:12px;font-weight:700}.gengage-chat-product-details-stock.is-in-stock{background:color-mix(in srgb, var(--success) 12%, white);color:color-mix(in srgb, var(--success) 82%, var(--text-primary))}.gengage-chat-product-details-stock.is-out-of-stock{background:color-mix(in srgb, var(--error) 10%, white);color:color-mix(in srgb, var(--error) 82%, var(--text-primary))}.gengage-chat-product-details-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.gengage-chat-product-details-cta{border-radius:var(--radius-control,12px);border:1px solid var(--ds-button-primary-border);background:var(--ds-button-primary-bg);min-height:40px;color:var(--ds-button-primary-fg);cursor:pointer;justify-content:center;align-items:center;padding:0 20px;font-size:14px;font-weight:700;text-decoration:none;transition:filter .14s,transform .12s;display:inline-flex}.gengage-chat-product-details-cta:hover{background:var(--ds-button-primary-bg-hover)}.gengage-chat-product-details-cta:active{background:var(--ds-button-primary-bg-active)}.gengage-chat-product-details-atc{border-radius:var(--radius-control);background:var(--_gengage-success-color);color:var(--client-on-primary);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:700;transition:filter .12s,transform .12s;display:inline-flex}.gengage-chat-product-details-atc:hover{filter:brightness(1.08);transform:translateY(-1px)}.gengage-chat-product-details-atc:active{transform:translateY(1px)}.gengage-chat-product-detail-tabs{border-top:1px solid var(--border-default);margin-top:4px;padding-top:12px}.gengage-chat-product-detail-tab-bar{border-bottom:1px solid var(--border-default);gap:6px;margin-bottom:12px;padding-bottom:8px;display:flex}.gengage-chat-product-detail-tab{border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;flex:1;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:600;transition:color .15s,border-color .15s,background .15s}.gengage-chat-product-detail-tab:hover{color:var(--text-primary);background:color-mix(in srgb, var(--surface-card-soft) 82%, transparent)}.gengage-chat-product-detail-tab--active{color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 26%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 8%, white)}.gengage-chat-product-detail-tab-panel{color:var(--text-secondary);font-size:13px;line-height:1.6}.gengage-chat-product-description{color:var(--text-primary);flex-direction:column;gap:10px;display:flex}.gengage-chat-product-description p,.gengage-chat-product-description h2,.gengage-chat-product-description h3,.gengage-chat-product-description h4,.gengage-chat-product-description ul,.gengage-chat-product-description ol{margin:0}.gengage-chat-product-description h2,.gengage-chat-product-description h3,.gengage-chat-product-description h4{color:var(--text-primary);font-size:15px;font-weight:800;line-height:1.35}.gengage-chat-product-description ul,.gengage-chat-product-description ol{padding-left:20px}.gengage-chat-product-description li+li{margin-top:6px}.gengage-chat-product-description strong,.gengage-chat-product-description b{font-weight:800}.gengage-chat-product-specs-table{border-collapse:collapse;width:100%;font-size:13px}.gengage-chat-product-specs-table tr:nth-child(2n){background:var(--surface-card-muted)}.gengage-chat-product-specs-key{color:var(--text-secondary);white-space:nowrap;border-bottom:1px solid var(--border-subtle);width:40%;padding:6px 10px;font-weight:600}.gengage-chat-product-specs-value{color:var(--text-primary);border-bottom:1px solid var(--border-subtle);padding:6px 10px}.gengage-chat-product-card-atc{opacity:0;z-index:1;transition:opacity .15s;position:absolute;bottom:42px;right:6px}.gengage-chat-product-card:hover .gengage-chat-product-card-atc{opacity:1}@media (hover:none),(pointer:coarse){.gengage-chat-product-card-atc{opacity:1;width:100%;margin:0;display:flex;position:relative;bottom:auto;right:auto}}.gengage-chat-drawer.gengage-chat-drawer--hidden{opacity:0;pointer-events:none;box-shadow:none;visibility:hidden;transform:translate(100%)}.gengage-chat-root--mobile .gengage-chat-drawer.gengage-chat-drawer--hidden{opacity:0;pointer-events:none;box-shadow:none;visibility:hidden;transform:translateY(100%)}@media (width<=900px){.gengage-chat-drawer--with-panel .gengage-chat-panel--visible{width:clamp(280px, calc(100vw - var(--_gengage-chat-conversation-width)), 560px);max-width:560px}}.gengage-chat-attachment-preview{background:var(--surface-card-muted);border:1px solid var(--border-default);box-sizing:border-box;border-radius:8px;align-items:center;gap:8px;width:100%;padding:6px 10px;display:flex}.gengage-chat-attachment-preview--hidden{display:none}.gengage-chat-attachment-preview-thumb{object-fit:cover;border-radius:4px;flex-shrink:0;width:40px;height:40px}.gengage-chat-attachment-name{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.gengage-chat-attachment-remove{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:18px;line-height:1}.gengage-chat-attachment-remove:hover{color:var(--error)}.gengage-chat-attach-btn{background:var(--surface-card-soft);border:1px solid var(--border-default);cursor:pointer;width:var(--gengage-chat-input-control-size,40px);height:var(--gengage-chat-input-control-size,40px);border-radius:var(--gengage-chat-input-control-radius,12px);color:var(--text-primary);flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;transition:color .15s,background .15s,border-color .15s;display:flex}.gengage-chat-attach-btn:hover{color:var(--client-primary);background:var(--client-primary-subtle);border-color:color-mix(in srgb, var(--client-primary) 18%, white)}.gengage-chat-attach-btn svg{width:20px;height:20px}.gengage-chat-attach-wrap{flex-shrink:0;align-items:center;display:flex;position:relative}.gengage-chat-attach-menu{z-index:50;background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-card);min-width:196px;box-shadow:var(--shadow-3);margin:0;padding:4px 0;list-style:none;position:absolute;bottom:calc(100% + 8px);left:0}.gengage-chat-attach-menu[hidden]{display:none!important}.gengage-chat-attach-menu-item{cursor:pointer;width:100%;color:var(--text-primary);text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:500;transition:background .12s;display:flex}.gengage-chat-attach-menu-item:hover{background:var(--surface-card-muted)}.gengage-chat-attach-menu-icon{color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.gengage-chat-attach-menu-label{flex:1;min-width:0}.gengage-chat-attach-menu-sep{background:var(--border-default);height:1px;margin:4px 10px}.gengage-chat-mic-btn{cursor:pointer;border-radius:var(--radius-control);width:32px;height:32px;color:var(--text-secondary);background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;transition:color .15s,background .15s;display:flex}.gengage-chat-mic-btn:hover{color:var(--text-primary);background:var(--surface-card-muted);border-color:var(--border-default)}.gengage-chat-mic-btn svg{width:20px;height:20px}.gengage-chat-mic-btn--active{color:var(--error);animation:1.2s ease-in-out infinite gengage-mic-pulse}.gengage-chat-mic-btn--active:hover{color:color-mix(in srgb, var(--error) 84%, black)}@keyframes gengage-mic-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.15)}}.gengage-chat-input-area--dragover{outline:2px dashed var(--client-primary);outline-offset:-2px;background:color-mix(in srgb, var(--client-primary) 8%, white)}.gengage-chat-attachment-thumb{border-radius:8px;width:120px;max-width:100%;height:auto;margin-bottom:6px;display:block}.gengage-chat-root--mobile .gengage-chat-header-btn,.gengage-chat-root--mobile .gengage-chat-close{border-radius:12px;width:44px;height:44px}@media (width<=374px){.gengage-chat-root--mobile .gengage-chat-header-btn{width:34px;min-width:34px;height:34px;min-height:34px}}.gengage-chat-root--mobile .gengage-chat-attach-btn,.gengage-chat-root--mobile .gengage-chat-mic-btn,.gengage-chat-root--mobile .gengage-chat-send{width:var(--gengage-chat-input-control-size,44px);height:var(--gengage-chat-input-control-size,44px);min-width:var(--gengage-chat-input-control-size,44px);border-radius:var(--gengage-chat-input-control-radius,14px)}.gengage-chat-root--mobile .gengage-chat-attach-btn svg,.gengage-chat-root--mobile .gengage-chat-mic-btn svg{width:22px;height:22px}.gengage-chat-root--mobile .gengage-chat-panel-divider{cursor:ns-resize;touch-action:pan-y;background:0 0;justify-content:center;align-items:center;width:100%;height:20px;display:flex;position:relative;overflow:visible}.gengage-chat-root--mobile .gengage-chat-panel-divider--hidden{display:none}.gengage-chat-root--mobile .gengage-chat-drawer--with-panel{border-radius:0;width:100%;left:0;right:0}.gengage-chat-root--mobile .gengage-chat-panel{z-index:10;width:100%;min-width:0;max-width:none;max-height:none;box-shadow:none;background:var(--gengage-chat-panel-bg,var(--surface-card));pointer-events:none;border:none;border-radius:0;flex-direction:column;padding:0 12px 16px;transition:transform .32s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;inset:0;overflow-y:auto;transform:translate(100%)}.gengage-chat-root--mobile .gengage-chat-panel--visible{pointer-events:auto;transform:translate(0)}.gengage-chat-root--mobile .gengage-chat-panel-divider,.gengage-chat-root--mobile .gengage-chat-drawer--with-panel .gengage-chat-panel-divider{display:none}.gengage-chat-root--mobile .gengage-chat-drawer--with-panel .gengage-chat-body{flex-direction:row}.gengage-chat-root--mobile .gengage-chat-drawer--with-panel .gengage-chat-conversation{border-left:none;flex:1;width:100%}.gengage-chat-root--mobile .gengage-chat-product-details-share{width:44px;height:44px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-buy-footer,.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-cta{box-sizing:border-box;width:100%;max-width:100%}.gengage-chat-root--mobile .gengage-chat-product-details-panel{gap:8px;padding:10px}.gengage-chat-root--mobile .gengage-chat-product-details-media{min-height:0;padding:8px}.gengage-chat-root--mobile .gengage-chat-product-details-content{gap:6px}.gengage-chat-root--mobile .gengage-chat-product-details-title{font-size:14px;line-height:1.25}.gengage-chat-root--mobile .gengage-chat-product-details-rating{padding:2px 6px;font-size:12px}.gengage-chat-root--mobile .gengage-chat-product-details-original-price{font-size:12px}.gengage-chat-root--mobile .gengage-chat-product-details-current-price,.gengage-chat-root--mobile .gengage-chat-product-details-price--inline .gengage-chat-product-details-original-price,.gengage-chat-root--mobile .gengage-chat-product-details-price--inline .gengage-chat-product-details-current-price{font-size:18px}.gengage-chat-root--mobile .gengage-chat-product-details-actions{gap:6px;margin-top:2px}.gengage-chat-root--mobile .gengage-chat-product-details-cta{min-height:38px;padding:0 14px;font-size:13px}.gengage-chat-root--mobile .gengage-chat-product-grid:not(.gengage-chat-product-grid--mobile){scroll-snap-type:x mandatory}.gengage-chat-root--mobile .gengage-chat-product-grid.gengage-chat-product-grid--mobile{scroll-snap-type:none}.gengage-chat-root--mobile .gengage-chat-product-card{box-sizing:border-box;scroll-snap-align:center;width:280px;min-width:280px;max-width:100%}.gengage-chat-root--mobile .gengage-chat-product-grid--mobile .gengage-chat-product-card{scroll-snap-align:start;width:100%;min-width:0;max-width:none}.gengage-chat-root--mobile .gengage-chat-product-card-img-wrapper{justify-content:center;align-items:center;min-height:0;display:flex}.gengage-chat-root--mobile .gengage-chat-product-card-img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:auto;min-height:0;max-height:180px;display:block}.gengage-chat-root--mobile .gengage-chat-product-card-discount-badge{padding:2px 6px;font-size:10px;font-weight:700;line-height:1.2}.gengage-chat-root--mobile .gengage-chat-drawer{border-radius:0;width:100%;max-height:100%;position:fixed;inset:0}.gengage-chat-root--mobile .gengage-chat-bubble{max-width:100%}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-img-wrapper{aspect-ratio:1;justify-content:center;align-items:center;min-height:0;display:flex}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:auto;min-height:0;max-height:min(200px,72%)}.gengage-chat-root--mobile .gengage-chat-product-card-img-actions .gengage-chat-favorite-btn,.gengage-chat-root--mobile .gengage-chat-product-card-img-actions .gengage-chat-find-similar-pill{flex-shrink:0;width:28px;min-width:28px;height:28px;min-height:28px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-discount-badge{min-width:28px;height:28px;padding:0 6px;font-size:10px;font-weight:700}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-buy-footer{padding:0 12px 14px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-buy-trigger{box-sizing:border-box;white-space:normal;text-align:center;-webkit-hyphens:auto;hyphens:auto;min-width:0;max-width:100%;line-height:1.25}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card .gengage-chat-product-card-cta{box-sizing:border-box;white-space:normal;width:calc(100% - 24px);min-width:0;max-width:calc(100% - 24px);margin-left:12px;margin-right:12px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-rating-compact{gap:3px;padding:2px 6px;font-size:10px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-card-stock{padding:2px 5px;font-size:10px}.gengage-chat-root--mobile .gengage-chat-messages{scrollbar-width:none;padding:12px 16px}.gengage-chat-root--mobile .gengage-chat-messages::-webkit-scrollbar{display:none}.gengage-chat-root--mobile .gengage-chat-drawer{border-top:none}.gengage-chat-root--mobile .gengage-chat-header{border-radius:16px 16px 0 0;min-height:72px;padding-top:22px;padding-bottom:8px}.gengage-chat-root--mobile.gengage-chat-root--mobile-full .gengage-chat-header{border-radius:0}.gengage-chat-root--mobile .gengage-chat-conversation{-webkit-overflow-scrolling:touch;min-height:0;overflow-y:auto}.gengage-chat-root--mobile .gengage-chat-product-details-img{object-fit:contain;min-height:0;max-height:200px}.gengage-chat-root--mobile .gengage-chat-product-details-actions{flex-wrap:wrap;gap:8px}.gengage-chat-root--mobile .gengage-chat-product-details-promos{flex-wrap:wrap;gap:4px}.gengage-chat-root--mobile .gengage-chat-input::placeholder{font-size:13px;line-height:inherit}.gengage-chat-kvkk-banner{background:color-mix(in srgb, var(--warning) 10%, white);border-bottom:1px solid color-mix(in srgb, var(--warning) 24%, var(--border-default));color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));align-items:flex-start;gap:8px;padding:10px 14px;font-size:12px;line-height:1.5;display:flex}.gengage-chat-kvkk-content{flex:1;min-width:0}.gengage-chat-kvkk-content a{color:color-mix(in srgb, var(--warning) 82%, var(--text-primary));text-decoration:underline}.gengage-chat-kvkk-dismiss{width:20px;height:20px;color:color-mix(in srgb, var(--warning) 84%, var(--text-primary));cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:18px;line-height:1}.gengage-chat-comparison{box-sizing:border-box;flex-direction:column;gap:12px;padding:16px;display:flex}.gengage-chat-comparison-heading{letter-spacing:.05em;color:var(--text-primary);margin:0 0 16px;font-size:14px;font-weight:700}.gengage-chat-comparison-recommended{border:1px solid color-mix(in srgb, var(--client-primary) 18%, var(--border-default));border-radius:var(--radius-card);background:var(--surface-card);box-shadow:var(--shadow-1);padding:16px}.gengage-chat-comparison-recommended-label{color:var(--client-primary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;font-size:12px;font-weight:700}.gengage-chat-comparison-recommended-body{grid-template-columns:minmax(108px,148px) minmax(0,1fr);align-items:flex-start;gap:16px;display:grid}.gengage-chat-comparison-recommended-media{aspect-ratio:1;border:1px solid var(--border-subtle);background:var(--surface-card);border-radius:14px;justify-content:center;align-items:center;display:flex;overflow:hidden}.gengage-chat-comparison-recommended-body img,.gengage-chat-comparison-recommended-placeholder{object-fit:contain;box-sizing:border-box;width:100%;height:100%;padding:8px}.gengage-chat-comparison-recommended-placeholder{background:var(--surface-card-muted)}.gengage-chat-comparison-recommended-info{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.gengage-chat-comparison-recommended-title{color:var(--text-primary);margin:0;font-size:24px;font-weight:800;line-height:1.2}.gengage-chat-comparison-recommended-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.gengage-chat-comparison-recommended-rating{border:1px solid var(--border-subtle);background:var(--surface-card-muted);color:color-mix(in srgb, var(--warning) 78%, var(--text-primary));border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:700;display:inline-flex}.gengage-chat-comparison-recommended-rating-value{color:var(--text-primary)}.gengage-chat-comparison-recommended-price{color:var(--text-primary);font-size:20px;font-weight:700}.gengage-chat-comparison-highlights{border-top:1px solid var(--border-subtle);padding-top:12px}.gengage-chat-comparison-highlights-label{color:var(--text-secondary);margin-bottom:6px;font-size:12px;font-weight:600}.gengage-chat-comparison-highlights ul{color:var(--text-primary);margin:0;padding-left:18px;font-size:14px;line-height:1.55}.gengage-chat-comparison-special{background:color-mix(in srgb, var(--warning) 10%, white);border:1px solid color-mix(in srgb, var(--warning) 24%, var(--border-default));border-radius:var(--radius-card);color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));margin-bottom:12px;padding:12px 16px;font-size:13px}.gengage-chat-comparison-special summary{cursor:pointer;font-weight:600}.gengage-chat-comparison-special ul{margin:8px 0 0;padding-left:18px;line-height:1.6}.gengage-chat-comparison-table{border-collapse:collapse;background:var(--surface-card);width:100%;font-size:13px}.gengage-chat-comparison-table th,.gengage-chat-comparison-table td{text-align:center;border-bottom:1px solid var(--border-subtle);vertical-align:top;padding:10px 12px}.gengage-chat-comparison-table th{color:var(--text-secondary);font-size:12px;font-weight:600}.gengage-chat-comparison-table td ul,.gengage-chat-comparison-table td ol{text-align:left;margin:0;padding-left:18px}.gengage-chat-comparison-table td li+li{margin-top:4px}.gengage-chat-comparison-table thead th:not(:first-child){vertical-align:top}.gengage-chat-comparison-table-header-cell{box-sizing:border-box;grid-template-rows:auto 1fr auto;place-items:start center;gap:6px;height:100%;min-height:0;display:grid}.gengage-chat-comparison-table-header-cell--clickable{cursor:pointer;border-radius:var(--radius-control);padding:6px;transition:background .16s,box-shadow .16s,transform .16s}.gengage-chat-comparison-table-header-cell--clickable:hover{background:var(--surface-card-soft);box-shadow:var(--shadow-1);transform:translateY(-1px)}.gengage-chat-comparison-table-header-cell--clickable:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}.gengage-chat-comparison-table-header-cell img{object-fit:contain;border-radius:calc(var(--radius-control) - 4px);background:var(--surface-card-muted);width:60px;height:60px}.gengage-chat-comparison-table-header-img-placeholder{border-radius:calc(var(--radius-control) - 4px);background:var(--surface-card-muted);width:60px;height:60px}.gengage-chat-comparison-table-product-name{width:100%;min-width:0;color:var(--text-secondary);text-align:center;-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;align-self:start;font-size:12px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.gengage-chat-comparison-table-price{color:var(--text-primary);text-align:center;width:100%;font-weight:700}.gengage-chat-comparison-label{text-align:left;color:var(--text-secondary);white-space:nowrap;font-weight:600}.gengage-chat-comparison-selected{background:color-mix(in srgb, var(--client-primary) 6%, white)}.gengage-chat-comparison-recommended-text{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.gengage-chat-comparison-key-differences{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--surface-card-muted)}.gengage-chat-comparison-key-differences-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-weight:700;list-style:none;display:flex}.gengage-chat-comparison-key-differences-summary::-webkit-details-marker{display:none}.gengage-chat-comparison-key-differences-summary-label{color:var(--text-primary)}.gengage-chat-comparison-key-differences-summary-meta{color:var(--client-primary);font-size:13px;font-weight:700}.gengage-chat-comparison-key-differences[open] .gengage-chat-comparison-key-differences-summary-meta{opacity:0}.gengage-chat-comparison-key-differences-content{color:var(--text-primary);padding:0 16px 16px;font-size:14px;line-height:1.7}.gengage-chat-comparison-key-differences-content ul,.gengage-chat-comparison-key-differences-content ol{margin:0;padding-left:20px}.gengage-chat-comparison-key-differences-content li+li{margin-top:8px}@media (width<=960px){.gengage-chat-comparison-recommended-body{grid-template-columns:1fr}.gengage-chat-comparison-recommended-title{font-size:20px}}.gengage-chat-pills{border-top:1px solid var(--border-subtle);background:var(--surface-card);padding:8px 12px 6px;position:relative}.gengage-chat-pills-scroll{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding-right:28px;display:flex;overflow-x:auto}.gengage-chat-pills-scroll::-webkit-scrollbar{display:none}.gengage-chat-root--mobile .gengage-chat-pills-scroll{flex-wrap:wrap;gap:6px}.gengage-chat-root--mobile .gengage-chat-pill{white-space:normal;max-width:100%}.gengage-chat-pill{border:1px solid var(--ds-chip-border-active);background:var(--ds-chip-bg-active);color:var(--ds-chip-fg-active);white-space:nowrap;cursor:pointer;border-radius:999px;flex:none;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,color .15s}.gengage-chat-pill:hover{background:color-mix(in srgb, var(--client-primary) 12%, white);border-color:color-mix(in srgb, var(--client-primary) 36%, white)}.gengage-chat-pill:active{transform:none}.gengage-chat-pill--rich{border-radius:18px;align-items:center;gap:10px;padding:8px 14px 8px 8px;display:flex}.gengage-chat-pill-img{object-fit:cover;background:var(--surface-card);border-radius:12px;flex-shrink:0;width:32px;height:32px}.gengage-chat-pill-text{font-size:13px;font-weight:600;line-height:1.2}.gengage-chat-pill-desc{display:none}.gengage-chat-pill--rich .gengage-chat-pill-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:11px;font-weight:500;display:block;overflow:hidden}.gengage-chat-pills-arrow{border:1px solid var(--border-default);background:var(--surface-card);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-1);z-index:1;border-radius:12px;justify-content:center;align-items:center;font-size:16px;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.gengage-chat-pills-arrow:hover{background:var(--surface-card-soft);color:var(--client-primary)}@media (prefers-reduced-motion:reduce){.gengage-chat-uispec>*,.gengage-chat-action-btn,.gengage-chat-product-card,.gengage-chat-product-card-cta,.gengage-chat-send,.gengage-chat-launcher-container,.gengage-chat-launcher,.gengage-chat-pill,.gengage-chat-drawer,.gengage-chat-typing-dots span,.gengage-chat-thinking-step-marker--active,.gengage-chat-bubble,.gengage-chat-panel-skeleton-block,.gengage-chat-ai-toppick-card,.gengage-chat-mic-btn--active,.gengage-chat-ai-toppick-spinner:after,.gengage-chat-cart-toast,.gengage-chat-header-btn--cart-flash{transition:none!important;animation:none!important;transform:none!important}}.gengage-chat-bubble--user{position:relative}.gengage-chat-rollback-btn{border-radius:var(--radius-pill);background:var(--surface-card-muted);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;opacity:0;border:none;justify-content:center;align-items:center;padding:0;transition:opacity .15s;display:flex;position:absolute;top:50%;left:-28px;transform:translateY(-50%)}.gengage-chat-bubble--user:hover .gengage-chat-rollback-btn{opacity:1}.gengage-chat-rollback-btn:hover{background:var(--client-primary);color:var(--client-on-primary)}.gengage-chat-bubble--hidden{display:none}.gengage-chat-ai-top-picks{flex-direction:column;gap:12px;padding:8px 0;scroll-margin-top:60px;display:flex}.gengage-chat-ai-top-picks-title{color:var(--text-primary);margin:0 0 4px;font-size:15px;font-weight:600}.gengage-chat-ai-top-picks-scroll{flex-direction:column;gap:10px;min-width:0;display:flex}.gengage-chat-ai-top-picks-rest,.gengage-chat-ai-toppick-top-row{display:contents}.gengage-chat-ai-toppick-detail{width:100%;min-width:0}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks{gap:0;padding-top:4px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-title{flex-shrink:0;width:100%;margin:0 0 10px;font-size:18px;font-weight:700;line-height:1.2}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll{scrollbar-width:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,auto);align-items:stretch;gap:12px;margin:0;padding:12px 0;display:grid;overflow:visible}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact{flex:initial;scroll-snap-align:none;width:100%;min-width:0;max-width:none}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child{grid-column:1/-1;grid-template-rows:auto auto;grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:12px 18px;display:grid}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child:has(.gengage-chat-ai-toppick-detail){grid-template-rows:auto auto auto}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact{flex-direction:column;align-items:stretch}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-media,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-media{max-height:140px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-media{aspect-ratio:4/3;grid-area:1/1/span 2;max-height:260px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child:has(.gengage-chat-ai-toppick-detail) .gengage-chat-ai-toppick-media{grid-row:1/span 3}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-detail{grid-area:2/2;min-width:0;padding-top:0}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-img,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-img{object-fit:contain;flex-shrink:0;width:100%;height:100%;max-height:140px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-img{max-height:260px}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-body,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-body{flex:1;min-height:0;padding:0}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-body{grid-area:1/2;padding-top:6px}.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child:has(.gengage-chat-ai-toppick-detail) .gengage-chat-ai-toppick-cta{grid-row:3}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-cta{border:1px solid var(--ds-button-secondary-border);background:var(--ds-button-secondary-bg);width:calc(100% - 24px);color:var(--ds-button-secondary-fg);align-self:stretch;margin:14px 12px 12px}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-cta{border:1px solid var(--ds-button-secondary-border);background:var(--ds-button-secondary-bg);width:auto;min-width:180px;color:var(--ds-button-secondary-fg);grid-area:2/2;place-self:end start;margin:0}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-cta:hover,.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-cta:hover{background:var(--ds-button-secondary-bg-hover);filter:none}.gengage-chat-panel-ai-zone .gengage-chat-ai-toppick-card--winner{border-color:color-mix(in srgb, var(--client-primary) 26%, var(--border-default));box-shadow:var(--shadow-2)}.gengage-chat-ai-toppick-rating{border:1px solid var(--border-subtle);background:var(--surface-card-muted);color:var(--text-secondary);border-radius:999px;align-self:flex-start;align-items:center;gap:5px;margin-top:4px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.gengage-chat-ai-toppick-rating-icon{color:color-mix(in srgb, var(--warning) 60%, var(--text-primary));justify-content:center;align-items:center;line-height:0;display:inline-flex}.gengage-chat-ai-toppick-rating-value{color:var(--text-primary)}.gengage-chat-ai-toppick-media .gengage-chat-ai-toppick-discount-badge{background:var(--client-primary);color:var(--client-on-primary);z-index:1;border-radius:999px;padding:2px 6px;font-size:9px;font-weight:800;line-height:1.2;position:absolute;top:4px;left:4px;right:auto}.gengage-chat-ai-toppick-card--winner,.gengage-chat-ai-toppick-card--compact{--_badge-inset-top:12px;--_badge-height:30px;box-sizing:border-box;padding:calc(var(--_badge-inset-top) + var(--_badge-height) + 6px) 12px 12px;border-radius:var(--radius-card);background:var(--surface-card);flex-direction:column;align-items:stretch;transition:box-shadow .2s,background .15s,transform .15s;display:flex;position:relative;overflow:visible}.gengage-chat-ai-toppick-card--winner{border:1.5px solid color-mix(in srgb, var(--client-primary) 24%, var(--border-default))}.gengage-chat-ai-toppick-card--winner:hover{background:var(--surface-card-muted);box-shadow:var(--shadow-2)}.gengage-chat-ai-toppick-card--compact{border:1px solid var(--border-default)}.gengage-chat-ai-toppick-card--compact:hover{background:var(--surface-card-muted);box-shadow:var(--shadow-1);transform:translateY(-1px)}.gengage-chat-ai-toppick-badge{top:var(--_badge-inset-top,12px);z-index:2;box-sizing:border-box;text-transform:uppercase;letter-spacing:.04em;pointer-events:none;white-space:normal;border-radius:999px;align-items:center;max-width:calc(100% - 28px);margin:0;padding:8px 14px;font-size:11px;font-weight:800;line-height:1.25;display:inline-flex;position:absolute;left:14px}.gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-badge{background:var(--client-primary);color:var(--client-on-primary);box-shadow:0 10px 18px color-mix(in srgb, var(--client-primary) 20%, transparent)}.gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-badge{background:var(--surface-card);color:color-mix(in srgb, var(--client-primary) 72%, var(--text-primary));border:1px solid color-mix(in srgb, var(--client-primary) 24%, var(--border-default))}.gengage-chat-ai-toppick-media{aspect-ratio:1;border:1px solid var(--border-subtle);background:var(--surface-card);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:100%;margin-top:4px;margin-bottom:8px;display:flex;position:relative;overflow:hidden}.gengage-chat-ai-toppick-img{object-fit:contain;box-sizing:border-box;width:auto;max-width:100%;height:auto;max-height:100%;padding:4px}.gengage-chat-ai-toppick-body{flex-direction:column;flex:1;gap:0;min-width:0;padding:0;display:flex}.gengage-chat-ai-toppick-name{color:var(--text-primary);text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:4px;font-size:14px;font-weight:700;line-height:1.375;display:-webkit-box;overflow:hidden}.gengage-chat-ai-toppick-role{color:var(--client-primary);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.gengage-chat-ai-toppick-labels{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.gengage-chat-ai-toppick-label{border-radius:999px;padding:4px 8px;font-size:10px;font-weight:700}.gengage-chat-ai-toppick-label[data-sentiment=positive]{background:color-mix(in srgb, var(--success) 12%, white);color:color-mix(in srgb, var(--success) 82%, var(--text-primary))}.gengage-chat-ai-toppick-label[data-sentiment=negative]{background:color-mix(in srgb, var(--error) 10%, white);color:color-mix(in srgb, var(--error) 82%, var(--text-primary))}.gengage-chat-ai-toppick-label[data-sentiment=neutral]{background:var(--surface-card-muted);color:var(--text-secondary)}.gengage-chat-ai-toppick-reason{color:var(--text-secondary);margin:10px 0 0;font-size:13px;line-height:1.5}.gengage-chat-ai-toppick-review{border:1px solid var(--border-subtle);background:var(--surface-card-muted);color:var(--text-primary);border-radius:14px;margin-top:10px;padding:10px 12px;font-size:12px;line-height:1.45}.gengage-chat-ai-toppick-snippet{color:var(--text-secondary);margin:8px 0 0;font-size:12px;line-height:1.45}.gengage-chat-ai-toppick-price{color:var(--text-primary);margin-top:4px;font-size:14px;font-weight:700}.gengage-chat-ai-toppick-price-current{color:var(--gengage-discounted-price-color,var(--text-primary))}.gengage-chat-ai-toppick-original-price{color:var(--text-secondary);font-size:12px;font-weight:400;text-decoration:line-through}.gengage-chat-ai-toppick-price-stack{flex-direction:column;align-items:flex-start;gap:2px;margin-top:4px;display:flex}.gengage-chat-ai-toppick-price-stack .gengage-chat-campaign-reason{font-size:11px;font-weight:700}.gengage-chat-campaign-price-badge{box-sizing:border-box;border-radius:var(--radius-control,10px);background-image:linear-gradient(var(--gengage-campaign-price-badge-fill,#fff) 0 0), linear-gradient(135deg, var(--_gengage-campaign-reason-start), var(--_gengage-campaign-reason-end));background-origin:border-box;background-clip:padding-box,border-box;border:1px solid #0000;flex-direction:row;align-items:center;gap:8px;max-width:100%;padding:7px 9px;display:inline-flex}.gengage-chat-campaign-price-badge__logo{flex-shrink:0;justify-content:center;align-items:center;display:flex}.gengage-chat-campaign-price-badge__logo img{object-fit:contain;width:auto;max-width:64px;height:auto;max-height:26px;display:block}.gengage-chat-campaign-price-badge__body{flex-direction:column;justify-content:center;align-items:flex-start;gap:1px;min-width:0;display:flex}.gengage-chat-campaign-price-badge__reason{letter-spacing:.02em;background:linear-gradient(90deg, var(--_gengage-campaign-reason-start), var(--_gengage-campaign-reason-end));color:#0000;-webkit-background-clip:text;background-clip:text;max-width:100%;margin:0;font-size:10px;font-weight:700;line-height:1.2}.gengage-chat-campaign-price-badge__sale{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:14px;font-weight:800;line-height:1.15}.gengage-chat-product-card-price-row .gengage-chat-campaign-price-badge__sale{font-size:13px}.gengage-chat-product-summary__price .gengage-chat-campaign-price-badge__sale{font-size:12px}.gengage-chat-product-details-price .gengage-chat-campaign-price-badge{border-radius:var(--radius-control,12px);padding:9px 11px}.gengage-chat-product-details-price .gengage-chat-campaign-price-badge__reason{font-size:11px}.gengage-chat-product-details-price .gengage-chat-campaign-price-badge__sale{font-size:18px}:is(.gengage-chat-ai-toppick-price--inline:has(.gengage-chat-campaign-price-badge),.gengage-chat-product-card-price-row:has(.gengage-chat-campaign-price-badge),.gengage-chat-product-summary__price--inline:has(.gengage-chat-campaign-price-badge),.gengage-chat-product-details-price--inline:has(.gengage-chat-campaign-price-badge)){align-items:last baseline}:is(.gengage-chat-ai-toppick-price--inline:has(.gengage-chat-campaign-price-badge) .gengage-chat-ai-toppick-price-sep,.gengage-chat-product-card-price-row:has(.gengage-chat-campaign-price-badge) .gengage-chat-product-card-price-sep,.gengage-chat-product-summary__price--inline:has(.gengage-chat-campaign-price-badge) .gengage-chat-product-summary__price-sep,.gengage-chat-product-details-price--inline:has(.gengage-chat-campaign-price-badge) .gengage-chat-product-details-price-sep){align-self:last baseline}.gengage-chat-ai-toppick-price--inline{flex-flow:wrap;align-items:baseline;gap:0 6px;display:flex}.gengage-chat-ai-toppick-price-sep{background:var(--border-subtle);flex-shrink:0;align-self:center;width:1px;height:.85em;margin:0 1px;display:inline-block}.gengage-chat-ai-toppick-price--inline .gengage-chat-ai-toppick-original-price{font-size:14px;font-weight:500;text-decoration:none}.gengage-chat-ai-toppick-price--inline .gengage-chat-ai-toppick-price-current{color:var(--gengage-discounted-price-color,var(--text-primary));font-size:14px;font-weight:800}.gengage-chat-ai-toppick-cta{border:1px solid var(--ds-button-primary-border);border-radius:var(--radius-control,12px);background:var(--ds-button-primary-bg);width:calc(100% - 24px);color:var(--ds-button-primary-fg);cursor:pointer;text-align:center;box-sizing:border-box;opacity:0;pointer-events:none;flex-shrink:0;align-self:stretch;margin:14px 12px 12px;padding:8px 0;font-size:13px;font-weight:700;transition:opacity .18s,transform .18s,background .15s;display:block;transform:translateY(6px)}.gengage-chat-ai-toppick-card--winner:hover .gengage-chat-ai-toppick-cta,.gengage-chat-ai-toppick-card--compact:hover .gengage-chat-ai-toppick-cta,.gengage-chat-ai-toppick-card--winner:focus-within .gengage-chat-ai-toppick-cta,.gengage-chat-ai-toppick-card--compact:focus-within .gengage-chat-ai-toppick-cta{opacity:1;pointer-events:auto;transform:translateY(0)}.gengage-chat-ai-toppick-cta:hover{background:var(--ds-button-primary-bg-hover)}.gengage-chat-ai-toppick-spinner{background:color-mix(in srgb, var(--surface-card) 78%, transparent);z-index:6;border-radius:12px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.gengage-chat-ai-toppick-spinner:after{content:"";border:3px solid var(--border-default);border-top-color:var(--ai-accent-start);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite gengage-spin}@keyframes gengage-spin{to{transform:rotate(360deg)}}.gengage-chat-root--mobile .gengage-chat-ai-top-picks{gap:8px;padding:4px 0}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-title{margin:0 0 2px;font-size:14px}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-scroll{flex-direction:column;gap:8px;min-width:0;padding:6px 0 2px;display:flex;overflow:visible}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-scroll>:first-child{flex-direction:column;align-items:stretch;width:100%;min-width:0;display:flex}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-scroll>:first-child.gengage-chat-ai-toppick-card--winner{flex-direction:column}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none;flex-flow:row;gap:8px;min-width:0;margin:0 -2px;padding:2px 2px 8px;display:flex;overflow:auto visible}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest--uniform-mobile{scroll-snap-type:none;flex-direction:column;margin:0;padding:0;overflow-x:visible}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest::-webkit-scrollbar{width:0;height:0;display:none}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest .gengage-chat-ai-toppick-card--compact{scroll-snap-align:start;flex:0 0 min(82vw,272px);width:min(82vw,272px);min-width:0;max-width:272px}.gengage-chat-root--mobile .gengage-chat-ai-top-picks-rest--uniform-mobile .gengage-chat-ai-toppick-card--compact{scroll-snap-align:none;flex:none;width:100%;max-width:none}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner{scroll-snap-align:none;flex-shrink:1;width:100%;min-width:0;max-width:none;padding:10px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact{scroll-snap-align:none;flex-shrink:1;width:100%;min-width:0;max-width:none;padding:6px 8px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner{border:1.5px solid color-mix(in srgb, var(--client-primary) 28%, var(--border-default));margin-bottom:8px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact{border:1px solid var(--border-default);box-shadow:none;flex-direction:column;align-items:stretch}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform{margin-top:8px;padding:10px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-top-row,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-top-row{flex-direction:row;align-items:flex-start;gap:10px;width:100%;min-width:0;display:flex}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-media,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-media{aspect-ratio:1;border-radius:10px;flex:0 0 clamp(96px,30vw,124px);width:clamp(96px,30vw,124px);height:clamp(96px,30vw,124px);max-height:none;margin:0}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-img,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-img{object-fit:contain;width:100%;height:100%;max-height:100%;padding:4px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-body,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-body{flex:1;min-width:0;padding-top:2px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-detail{width:100%;margin-top:10px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-reason{color:var(--text-primary);margin:0;font-size:12px;line-height:1.45;display:block!important}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-review{color:var(--text-secondary);border:1px solid var(--border-subtle);background:var(--surface-card-muted);border-radius:12px;margin-top:8px;padding:8px 10px;font-size:12px;font-style:italic;line-height:1.4;display:block!important}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-top-row{flex-direction:row;align-items:flex-start;gap:6px;width:100%;min-width:0;display:flex}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-media{aspect-ratio:1;border-radius:8px;flex:0 0 64px;width:64px;height:64px;max-height:64px;margin:0}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-img{object-fit:contain;width:100%;max-height:100%;padding:2px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-body{flex:1;min-width:0}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-rating{display:none}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-detail{width:100%;margin-top:4px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-snippet{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;margin:0;font-size:10px;line-height:1.3;display:-webkit-box;overflow:hidden}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-role-line{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:0 0 2px;font-size:9px;font-weight:600;line-height:1.15}.gengage-chat-root--mobile .gengage-chat-ai-toppick-snippet{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-media .gengage-chat-product-card-img-actions{gap:5px;top:3px;right:5px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-media .gengage-chat-product-card-img-actions{gap:5px;top:5px;right:6px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-badge,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-badge{letter-spacing:.04em;background:var(--client-primary);max-width:calc(100% - 18px);color:var(--client-on-primary);box-shadow:none;border:none;padding:2px 6px;font-size:8px;font-weight:700;line-height:1.15;top:-14px;left:8px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-name{margin-bottom:1px;font-size:12px;line-height:1.22}.gengage-chat-root--mobile .gengage-chat-ai-toppick-name{margin-bottom:2px;font-size:13px;line-height:1.28}.gengage-chat-root--mobile .gengage-chat-ai-toppick-rating{gap:3px;margin-top:2px;padding:2px 6px;font-size:10px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-price{margin-top:1px;font-size:13px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-price{margin-top:2px;font-size:13px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-original-price{font-size:11px}.gengage-chat-root--mobile .gengage-chat-ai-toppick-labels,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--compact .gengage-chat-ai-toppick-cta{display:none!important}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-cta,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-cta{opacity:1;pointer-events:auto;border:1px solid var(--client-primary);background:var(--surface-card);width:calc(100% - 16px);color:var(--client-primary);box-shadow:none;filter:none;align-self:stretch;margin:8px 8px 6px;padding:6px 0;font-size:12px;font-weight:600;transform:none}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-cta{display:block!important}.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--winner .gengage-chat-ai-toppick-cta:hover,.gengage-chat-root--mobile .gengage-chat-ai-toppick-card--mobile-uniform .gengage-chat-ai-toppick-cta:hover{background:color-mix(in srgb, var(--client-primary) 10%, var(--surface-card));color:var(--client-primary);border-color:var(--client-primary);filter:none}.gengage-chat-root--mobile .gengage-chat-rollback-btn{left:-24px}.gengage-chat-grounding-review{align-items:center;gap:12px;padding:12px 16px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.gengage-chat-grounding-review:hover{background:var(--ds-card-bg-hover);border-color:var(--ds-card-border-hover);box-shadow:var(--ds-card-shadow-hover)}.gengage-chat-grounding-review-icon{background:color-mix(in srgb, var(--client-primary) 8%, var(--surface-card));width:32px;height:32px;color:var(--client-primary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.gengage-chat-grounding-review-icon svg{width:18px;height:18px;display:block}.gengage-chat-grounding-review-body{flex:1;min-width:0}.gengage-chat-grounding-review-title{color:var(--text-primary);font-size:13px;font-weight:600}.gengage-chat-grounding-review-subtitle{color:var(--text-muted);margin-top:2px;font-size:12px}.gengage-chat-grounding-review-cta{color:var(--client-primary);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;font-size:13px;font-weight:600;display:inline-flex}.gengage-chat-grounding-review-cta-icon{align-items:center;display:inline-flex}.gengage-chat-grounding-review-cta-icon svg{width:14px;height:14px;display:block}.gengage-chat-grouping-cards{flex-direction:column;gap:6px;display:flex}.gengage-chat-grouping-cards-scroll{flex-direction:column;gap:6px;min-width:0;display:flex}.gengage-chat-grouping-card{background:var(--surface-card-soft);border:1px solid var(--border-default);border-radius:var(--radius-control);align-items:center;gap:10px;padding:8px 12px;transition:background .15s,border-color .15s;display:flex}.gengage-chat-grouping-card:hover{background:color-mix(in srgb, var(--client-primary) 6%, white);border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default))}.gengage-chat-grouping-card-arrow{color:var(--client-primary);flex-shrink:0;font-size:14px;display:none}.gengage-chat-grouping-card-img{border-radius:calc(var(--radius-control) - 4px);object-fit:cover;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;flex-shrink:0;width:48px;min-width:48px;height:48px;min-height:48px}.gengage-chat-grouping-card-body{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.gengage-chat-grouping-card-name{color:var(--text-primary);font-size:13px;font-weight:600}.gengage-chat-grouping-card-desc{color:var(--text-muted);font-size:12px}.gengage-chat-grouping-card-labels{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.gengage-chat-grouping-card-label{color:var(--text-secondary);background:var(--surface-card-muted);border:1px solid var(--border-subtle);border-radius:999px;padding:4px 8px;font-size:10px;font-weight:700;line-height:1.2}.gengage-chat-root--mobile .gengage-chat-grouping-card-img{display:none}.gengage-chat-root--mobile .gengage-chat-grouping-card-arrow{display:inline}.gengage-chat-suggested-search-cards{flex-direction:column;gap:8px;display:flex}.gengage-chat-suggested-search-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-card);box-shadow:var(--shadow-1);align-items:center;gap:14px;padding:14px 16px;transition:background .15s,border-color .15s,box-shadow .15s,transform .15s;display:flex}.gengage-chat-suggested-search-card:hover{background:var(--surface-card);border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default));box-shadow:var(--shadow-2);transform:translateY(-1px)}.gengage-chat-suggested-search-card-img{object-fit:contain;background:var(--surface-card-muted);border:1px solid var(--border-subtle);border-radius:14px;flex-shrink:0;width:64px;height:64px;padding:4px}.gengage-chat-suggested-search-card-body{flex:1;min-width:0}.gengage-chat-suggested-search-card-name{color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden}.gengage-chat-product-details-gallery{position:relative}.gengage-chat-product-details-gallery .gengage-chat-product-details-img{touch-action:pan-y}.gengage-chat-product-gallery-nav{z-index:3;border:1px solid var(--border-default);border-radius:var(--radius-pill);cursor:pointer;background:color-mix(in srgb, var(--surface-card) 92%, transparent);width:36px;min-width:36px;height:36px;min-height:36px;color:var(--text-primary);box-shadow:var(--shadow-1);justify-content:center;align-items:center;padding:0;transition:background .15s,opacity .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gengage-chat-product-gallery-nav:hover:not(:disabled){background:var(--surface-card);color:var(--client-primary)}.gengage-chat-product-gallery-nav:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}.gengage-chat-product-gallery-nav:disabled{opacity:.35;cursor:not-allowed}.gengage-chat-product-gallery-nav--prev{left:8px}.gengage-chat-product-gallery-nav--next{right:8px}.gengage-chat-product-gallery-thumbs{scrollbar-width:thin;justify-content:center;gap:8px;width:100%;padding:10px 0 4px;display:flex;overflow-x:auto}.gengage-chat-product-gallery-thumb{object-fit:cover;cursor:pointer;background:var(--surface-card);border:2px solid #0000;border-radius:8px;flex-shrink:0;width:56px;height:56px;transition:border-color .15s}.gengage-chat-product-gallery-thumb:hover{border-color:var(--border-strong)}.gengage-chat-product-gallery-thumb--active{border-color:var(--client-primary)}.gengage-chat-product-gallery-thumb-more{background:var(--surface-card-muted);width:56px;height:56px;color:var(--text-secondary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.gengage-chat-product-variants-label{color:var(--text-muted);text-transform:none;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:600}.gengage-chat-product-variants-list{flex-wrap:wrap;gap:6px;display:flex}.gengage-chat-product-variant-btn{border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;padding:6px 12px;font-size:12px;transition:background .15s,border-color .15s}.gengage-chat-product-variant-btn:hover{background:var(--surface-card-muted);border-color:color-mix(in srgb, var(--client-primary) 20%, var(--border-default));color:var(--client-primary)}.gengage-chat-product-details-panel{border-radius:var(--radius-card);background:var(--surface-card);box-shadow:var(--shadow-1);gap:16px;padding:16px}.gengage-chat-product-details-media{border-color:var(--border-default);border-radius:var(--radius-card);background:var(--surface-card-soft);justify-content:center;min-height:320px}.gengage-chat-product-details-img{max-height:420px}.gengage-chat-product-details-content{gap:12px}.gengage-chat-product-details-brand{color:var(--client-primary);font-size:12px;font-weight:800;line-height:1.2}.gengage-chat-product-details-title{font-size:22px;line-height:1.2}.gengage-chat-product-details-rating{border:1px solid color-mix(in srgb, var(--warning) 24%, var(--border-default));background:color-mix(in srgb, var(--warning) 10%, var(--surface-card));color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));gap:6px;padding:6px 10px;font-family:inherit}button.gengage-chat-product-details-rating{border:1px solid color-mix(in srgb, var(--warning) 24%, var(--border-default));cursor:pointer}.gengage-chat-product-details-rating--clickable:hover{border-color:color-mix(in srgb, var(--warning) 42%, var(--border-default));background:color-mix(in srgb, var(--warning) 14%, var(--surface-card))}.gengage-chat-product-details-rating .gengage-star-rating{line-height:1}.gengage-chat-product-details-rating-value{color:var(--text-primary)}.gengage-chat-product-details-price{flex-wrap:wrap;gap:10px}.gengage-chat-product-details-original-price{order:2}.gengage-chat-product-details-current-price{order:1;font-size:30px}.gengage-chat-product-details-discount-badge{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--error) 12%, white);min-height:24px;color:color-mix(in srgb, var(--error) 84%, var(--text-primary));order:3;align-items:center;padding:2px 8px;font-size:12px;font-weight:800;display:inline-flex}.gengage-chat-product-details-price--inline .gengage-chat-product-details-original-price,.gengage-chat-product-details-price--inline .gengage-chat-product-details-current-price{order:0;font-size:30px}.gengage-chat-product-details-price--inline .gengage-chat-product-details-original-price{font-weight:500}.gengage-chat-product-details-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.gengage-chat-product-details-fact{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--surface-card-soft);min-width:0;padding:8px 10px}.gengage-chat-product-details-fact dt,.gengage-chat-product-details-fact dd{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.gengage-chat-product-details-fact dt{color:var(--text-muted);font-size:11px;font-weight:700}.gengage-chat-product-details-fact dd{color:var(--text-primary);margin-top:2px;font-size:13px;font-weight:700}.gengage-chat-product-variants{margin-top:4px}.gengage-chat-product-variants-label{color:var(--text-primary);letter-spacing:normal;margin-bottom:8px;font-size:14px;font-weight:800}.gengage-chat-product-variants-list{gap:8px}.gengage-chat-product-variant-btn{border-radius:var(--radius-control);min-height:44px;color:var(--text-primary);gap:8px;padding:7px 10px;font-size:13px;font-weight:700}.gengage-chat-product-variant-btn--active{border-color:var(--client-primary);background:color-mix(in srgb, var(--client-primary) 8%, var(--surface-card));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--client-primary) 36%, transparent);color:var(--client-primary)}.gengage-chat-product-variant-btn--out{opacity:.48;cursor:not-allowed}.gengage-chat-product-variant-swatch{border:1px solid var(--border-default);background:var(--surface-card-muted);width:22px;height:22px;box-shadow:inset 0 0 0 2px var(--surface-card);border-radius:50%;flex:0 0 22px}.gengage-chat-product-variant-swatch--image{object-fit:cover;box-shadow:none}.gengage-chat-product-variant-label,.gengage-chat-product-variant-price{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.gengage-chat-product-variant-price{color:var(--text-secondary);font-size:12px;font-weight:700}.gengage-chat-product-details-actions{gap:10px;margin-top:6px}.gengage-chat-product-details-atc,.gengage-chat-product-details-cta{border-radius:var(--radius-control);min-height:44px}.gengage-chat-product-details-atc{border:1px solid var(--ds-button-primary-border);background:var(--ds-button-primary-bg);color:var(--ds-button-primary-fg)}.gengage-chat-product-details-atc:hover{background:var(--ds-button-primary-bg-hover);filter:none}.gengage-chat-product-details-cta.gds-btn-secondary{border-color:var(--ds-button-secondary-border);background:var(--ds-button-secondary-bg);color:var(--ds-button-secondary-fg)}.gengage-chat-product-details-cta.gds-btn-secondary:hover{background:var(--ds-button-secondary-bg-hover)}@media (width>=960px){.gengage-chat-product-details-panel{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;display:grid}.gengage-chat-product-details-media{position:sticky;top:0}.gengage-chat-product-detail-tabs{grid-column:1/-1}}.gengage-chat-root--mobile .gengage-chat-product-details-panel{box-shadow:none;gap:10px;padding:10px}.gengage-chat-root--mobile .gengage-chat-product-details-media{min-height:220px}.gengage-chat-root--mobile .gengage-chat-product-details-title{font-size:18px}.gengage-chat-root--mobile .gengage-chat-product-details-current-price{font-size:24px}.gengage-chat-root--mobile .gengage-chat-product-details-facts{grid-template-columns:1fr}.gengage-chat-root--mobile .gengage-chat-product-details-actions{grid-template-columns:1fr 1fr 44px;align-items:stretch;display:grid}.gengage-chat-root--mobile .gengage-chat-product-details-actions>.gengage-chat-product-details-share{width:44px;min-width:44px}.gengage-chat-root--mobile .gengage-chat-product-details-atc,.gengage-chat-root--mobile .gengage-chat-product-details-cta{width:100%;padding-inline:10px}.gengage-chat-product-grid-wrapper{flex-direction:column;gap:6px;display:flex}.gengage-chat-consulting-style-picker{border:1px solid color-mix(in srgb, var(--client-primary) 18%, var(--border-default));background:linear-gradient(160deg, color-mix(in srgb, var(--surface-card) 80%, white), color-mix(in srgb, var(--surface-card-soft) 84%, white));border-radius:20px;padding:12px}.gengage-chat-consulting-style-picker-title{color:var(--text-primary);margin-bottom:10px;font-size:14px;font-weight:800}.gengage-chat-consulting-style-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.gengage-chat-consulting-style-btn{border:1px solid var(--border-default);background:var(--surface-card);cursor:pointer;text-align:left;border-radius:14px;flex-direction:column;gap:0;padding:6px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.gengage-chat-consulting-style-btn:hover{border-color:color-mix(in srgb, var(--client-primary) 26%, var(--border-default));transform:translateY(-1px)}.gengage-chat-consulting-style-btn--active{border-color:color-mix(in srgb, var(--client-primary) 40%, var(--border-default));box-shadow:0 0 0 2px color-mix(in srgb, var(--client-primary) 16%, transparent), var(--shadow-1)}.gengage-chat-consulting-style-btn--loading{border-style:dashed}.gengage-chat-consulting-style-btn--muted{opacity:.78}.gengage-chat-consulting-style-media{border-radius:12px;position:relative;overflow:hidden}.gengage-chat-consulting-style-image{aspect-ratio:4/5;object-fit:cover;border:1px solid var(--border-subtle);-webkit-user-drag:none;-webkit-user-select:none;user-select:none;border-radius:12px;width:100%}.gengage-chat-consulting-style-caption{color:#fff;background:#0000008c;border-radius:12px;padding:8px 10px;font-size:15px;font-weight:800;line-height:1.2;position:absolute;bottom:10px;left:10px;right:10px}.gengage-chat-consulting-style-status{color:var(--text-primary);background:color-mix(in srgb, white 88%, var(--client-primary) 12%);border:1px solid color-mix(in srgb, var(--client-primary) 18%, var(--border-default));border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;position:absolute;top:10px;right:10px}.gengage-chat-consulting-loading-panel{border:1px solid color-mix(in srgb, var(--client-primary) 14%, var(--border-default));background:linear-gradient(180deg, var(--surface-card-soft), var(--surface-card));border-radius:18px;flex-direction:column;gap:12px;padding:16px;display:flex}.gengage-chat-consulting-loading-panel-title{color:var(--text-primary);margin:0;font-size:18px;font-weight:800}.gengage-chat-consulting-loading-panel-copy{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.gengage-chat-consulting-loading-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.gengage-chat-consulting-loading-card{border:1px solid var(--border-default);background:linear-gradient(90deg, color-mix(in srgb, var(--surface-card-soft) 94%, white) 20%, color-mix(in srgb, white 86%, var(--surface-card-soft) 14%) 50%, color-mix(in srgb, var(--surface-card-soft) 94%, white) 80%);background-size:220% 100%;border-radius:18px;min-height:240px;animation:1.2s linear infinite gengage-chat-consulting-loading-shimmer}@keyframes gengage-chat-consulting-loading-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.gengage-chat-consulting-group{border:1px solid color-mix(in srgb, var(--client-primary) 14%, var(--border-default));background:linear-gradient(180deg, var(--surface-card-soft), var(--surface-card));border-radius:16px;flex-direction:column;gap:10px;padding:12px;display:flex}.gengage-chat-consulting-group-header{flex-direction:column;gap:4px;min-height:112px;display:flex}.gengage-chat-consulting-group-label{color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:2.5em;margin:0;font-size:16px;font-weight:800;line-height:1.25;display:-webkit-box;overflow:hidden}.gengage-chat-consulting-group-reason{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.gengage-chat-consulting-group-grid{grid-template-columns:repeat(var(--consulting-group-columns,4), minmax(0, 1fr));justify-content:stretch;align-items:stretch;gap:14px;margin-bottom:2px;display:grid}.gengage-chat-consulting-group-grid .gengage-chat-product-card{width:100%;min-width:0;max-width:none;height:100%}.gengage-chat-beauty-photo-step{padding:0 12px}.gengage-chat-beauty-photo-step-card{border:1px solid color-mix(in srgb, var(--client-primary) 20%, var(--border-default));background:linear-gradient(165deg, color-mix(in srgb, var(--surface-card) 85%, white), var(--surface-card-soft));box-shadow:var(--shadow-1);border-radius:18px;gap:10px;padding:12px;display:flex}.gengage-chat-beauty-photo-step-icon{background:color-mix(in srgb, var(--client-primary) 16%, white);width:34px;height:34px;color:var(--client-primary);border-radius:12px;flex:none;justify-content:center;align-items:center;font-size:18px;font-weight:800;display:inline-flex}.gengage-chat-beauty-photo-step-content{flex:auto;min-width:0}.gengage-chat-beauty-photo-step-title{color:var(--text-primary);font-size:15px;font-weight:800}.gengage-chat-beauty-photo-step-desc{color:var(--text-secondary);margin:4px 0 0;font-size:12px;line-height:1.45}.gengage-chat-beauty-photo-step-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.gengage-chat-beauty-photo-step-upload{border-radius:999px;min-height:34px;padding-inline:14px;font-size:12px;font-weight:800}.gengage-chat-beauty-photo-step-skip{border-radius:999px;min-height:34px;padding-inline:12px;font-size:12px;font-weight:700}.gengage-chat-panel .gengage-chat-consulting-style-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gengage-chat-panel .gengage-chat-consulting-style-image{min-height:250px}.gengage-chat-panel .gengage-chat-consulting-style-caption{padding:10px 12px;font-size:16px}.gengage-chat-panel .gengage-chat-consulting-group{border-radius:18px;min-width:0;padding:14px}.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card{width:100%;min-width:0;max-width:100%;margin-inline:0}.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-img-wrapper{flex-shrink:1;align-self:stretch;min-width:0;max-width:100%}.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-body{min-width:0;max-width:100%}.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-name,.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-price,.gengage-chat-panel .gengage-chat-consulting-group-grid .gengage-chat-product-card .gengage-chat-product-card-price-block{overflow-wrap:anywhere;word-break:break-word}.gengage-chat-root--mobile .gengage-chat-consulting-style-grid{grid-template-columns:1fr}.gengage-chat-root--mobile .gengage-chat-consulting-style-image{min-height:220px}.gengage-chat-root--mobile .gengage-chat-consulting-group-grid{grid-template-columns:1fr}.gengage-chat-root--mobile .gengage-chat-consulting-group-grid.gengage-chat-consulting-group-grid--single-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gengage-chat-root--mobile .gengage-chat-consulting-group-grid .gengage-chat-product-card{width:100%;min-width:0;max-width:none}.gengage-chat-root--mobile .gengage-chat-consulting-loading-grid{grid-template-columns:1fr}.gengage-chat-product-grid-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;margin-bottom:2px;display:flex}.gengage-chat-product-grid-head-title{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:18px;font-weight:700;line-height:1.2;overflow:hidden}.gengage-chat-product-grid-head-actions{flex-shrink:0;align-items:center;gap:6px;max-width:52%;display:flex}.gengage-chat-product-sort-toolbar{box-shadow:none;background:0 0;border:none;border-radius:0;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;padding:0;display:flex}.gengage-chat-product-sort-toolbar--inline{flex-wrap:nowrap;justify-content:flex-end}.gengage-chat-product-sort-dropdown{z-index:5;flex:0 auto;width:auto;min-width:0;max-width:200px;position:relative}.gengage-chat-product-sort-toolbar:not(.gengage-chat-product-sort-toolbar--inline) .gengage-chat-product-sort-dropdown{flex:auto;max-width:min(200px,100%)}.gengage-chat-product-sort-dropdown--open{z-index:25}.gengage-chat-product-sort-trigger{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);width:100%;min-height:32px;color:var(--text-primary);cursor:pointer;text-align:left;align-items:center;gap:6px;padding:5px 8px;font-size:12px;font-weight:600;line-height:1.2;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.gengage-chat-product-sort-trigger:hover{border-color:color-mix(in srgb, var(--client-primary) 22%, var(--border-default));background:var(--surface-card-soft)}.gengage-chat-product-sort-trigger:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}.gengage-chat-product-sort-dropdown--open .gengage-chat-product-sort-trigger{border-color:color-mix(in srgb, var(--client-primary) 32%, var(--border-default));box-shadow:var(--shadow-2)}.gengage-chat-product-sort-trigger-icon{color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.gengage-chat-product-sort-dropdown[data-sort-icon=related] .gengage-chat-product-sort-trigger-icon{color:var(--client-primary)}.gengage-chat-product-sort-trigger-icon svg{display:block}.gengage-chat-product-sort-trigger-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.gengage-chat-product-sort-trigger-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s;display:flex}.gengage-chat-product-sort-dropdown--open .gengage-chat-product-sort-trigger-chevron{transform:rotate(180deg)}.gengage-chat-product-sort-menu{width:max-content;min-width:100%;max-width:min(260px,100vw - 48px);margin:0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:auto}.gengage-chat-product-sort-option{border-radius:calc(var(--radius-control) - 4px);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.25;transition:background .12s;display:flex}.gengage-chat-product-sort-option:hover{background:var(--surface-card-muted)}.gengage-chat-product-sort-option--active{color:var(--client-primary);background:var(--client-primary-subtle);font-weight:600}.gengage-chat-product-sort-option-icon{color:var(--text-secondary);flex-shrink:0;display:flex}.gengage-chat-product-sort-option--active .gengage-chat-product-sort-option-icon,.gengage-chat-product-sort-option--active[data-sort-key=related] .gengage-chat-product-sort-option-icon{color:var(--client-primary)}.gengage-chat-product-sort-option-icon svg{display:block}.gengage-chat-product-sort-option-label{flex:auto;min-width:0}.gengage-chat-product-sort-option-check{width:22px;color:var(--client-primary);flex-shrink:0;justify-content:flex-end;display:flex}.gengage-chat-product-sort-option-check--hidden{visibility:hidden}.gengage-chat-product-sort-separator{background:var(--border-default);width:1px;margin:2px}.gengage-chat-comparison-toggle-btn{border:1px solid var(--border-default);border-radius:var(--radius-control,12px);background:var(--surface-card);min-height:32px;color:var(--text-primary);cursor:pointer;white-space:nowrap;flex:none;align-items:center;gap:5px;padding:5px 8px;font-size:12px;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.gengage-chat-comparison-toggle-icon{color:var(--text-secondary);flex-shrink:0;display:flex}.gengage-chat-comparison-toggle-icon svg{display:block}.gengage-chat-comparison-toggle-btn:hover{background:var(--surface-card-soft);border-color:color-mix(in srgb, var(--client-primary) 18%, white);color:var(--client-primary)}.gengage-chat-comparison-toggle-btn--active{border-color:color-mix(in srgb, var(--client-primary) 26%, white);color:var(--client-primary);background:color-mix(in srgb, var(--client-primary) 8%, white)}.gengage-chat-comparison-toggle-btn--active .gengage-chat-comparison-toggle-icon{color:var(--client-primary)}.gengage-chat-comparison-toggle-btn--active:hover{background:var(--client-primary-hover);color:var(--client-on-primary);border-color:var(--client-primary-hover)}.gengage-chat-comparison-toggle-btn--active:hover .gengage-chat-comparison-toggle-icon{color:var(--client-on-primary)}.gengage-chat-comparison-select-wrapper{cursor:pointer;border-radius:var(--radius-control);transition:box-shadow .2s,transform .2s;position:relative}.gengage-chat-comparison-select-wrapper:hover{box-shadow:0 0 0 2px var(--client-focus-ring)}.gengage-chat-comparison-select-wrapper--selected,.gengage-chat-comparison-select-wrapper--selected:hover{box-shadow:none}@media (prefers-reduced-motion:reduce){.gengage-chat-comparison-select-wrapper{transition:none}}.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card{pointer-events:none;transition:opacity .2s,transform .2s,filter .2s}.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-img-actions,.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-discount-badge,.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-buy-footer,.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-cta{opacity:0}.gengage-chat-comparison-select-wrapper>.gengage-chat-product-card .gengage-chat-product-card-body{opacity:.82}.gengage-chat-comparison-select-wrapper:hover>.gengage-chat-product-card,.gengage-chat-comparison-select-wrapper--selected>.gengage-chat-product-card{opacity:1;transform:translateY(-1px)}.gengage-chat-comparison-select-wrapper--selected>.gengage-chat-product-card{box-shadow:0 0 0 2px color-mix(in srgb, var(--client-primary) 26%, white), var(--shadow-1);filter:saturate(1.02);border-color:#0000;outline:none}.gengage-chat-comparison-select-wrapper--selected>.gengage-chat-product-card .gengage-chat-product-card-body{opacity:1}.gengage-chat-comparison-card-hint{display:none}.gengage-chat-comparison-checkbox{z-index:4;cursor:pointer;pointer-events:auto;border:1px solid var(--border-default);background:color-mix(in srgb, var(--surface-card) 94%, white);min-height:40px;color:var(--text-primary);box-shadow:var(--shadow-2);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 14px;display:inline-flex;position:absolute;bottom:16px;left:16px;right:16px}.gengage-chat-comparison-checkbox[data-selected=true]{background:color-mix(in srgb, var(--client-primary) 10%, white);border-color:color-mix(in srgb, var(--client-primary) 22%, var(--border-default));color:var(--client-primary)}.gengage-chat-comparison-checkbox-icon{background:var(--surface-card-soft);color:currentColor;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.gengage-chat-comparison-checkbox[data-selected=true] .gengage-chat-comparison-checkbox-icon{background:var(--client-primary);color:var(--client-on-primary)}.gengage-chat-comparison-checkbox-dot{background:color-mix(in srgb, currentColor 75%, white);border-radius:999px;width:8px;height:8px}.gengage-chat-comparison-checkbox-label{font-size:12px;font-weight:700;line-height:1.2}.gengage-chat-comparison-toggle-btn--hidden{opacity:0;pointer-events:none}@keyframes gengage-comparison-fade-in{0%{opacity:0}to{opacity:1}}.gengage-chat-comparison-toggle-btn--reveal{animation:.5s forwards gengage-comparison-fade-in}@media (prefers-reduced-motion:reduce){.gengage-chat-comparison-toggle-btn--reveal{opacity:1;animation:none}}.gengage-chat-comparison-floating-btn{border:1px solid var(--border-default);background:color-mix(in srgb, var(--surface-card) 92%, white);width:min(100%,520px);color:var(--text-primary);z-index:5;box-shadow:var(--shadow-2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:18px;justify-content:space-between;align-items:center;gap:14px;margin:16px auto 0;padding:12px 14px;display:flex;position:sticky;bottom:12px}.gengage-chat-comparison-dock-slot{display:none}.gengage-chat-root--mobile .gengage-chat-panel.gengage-chat-panel--visible~.gengage-chat-comparison-dock-slot:not(:empty){left:0;right:0;bottom:calc(var(--gengage-chat-input-control-size,44px) + 8px + env(safe-area-inset-bottom,0px));z-index:30;box-sizing:border-box;pointer-events:none;max-width:100%;padding:0 10px;display:block;position:absolute}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot>*{pointer-events:auto}.gengage-chat-comparison-floating-summary{flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.gengage-chat-comparison-floating-count{background:var(--client-primary-subtle);min-width:32px;height:32px;color:var(--client-primary);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:13px;font-weight:800;display:inline-flex}.gengage-chat-comparison-floating-copy{min-width:0}.gengage-chat-comparison-floating-title{color:var(--text-primary);font-size:14px;font-weight:700;line-height:1.2}.gengage-chat-comparison-floating-warning{color:var(--error);margin-top:4px;font-size:12px;line-height:1.35}.gengage-chat-comparison-floating-subtitle{color:var(--text-secondary);margin-top:2px;font-size:12px;line-height:1.35}.gengage-chat-comparison-floating-action{flex:none;min-width:132px}.gengage-chat-comparison-floating-close{border-radius:14px;flex:none;width:40px;height:40px;padding:0}.gengage-chat-comparison-floating-action--disabled{opacity:.6}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-btn{box-sizing:border-box;width:100%;min-width:0;max-width:100%;box-shadow:var(--shadow-3);border-radius:14px;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:10px;margin:0;padding:10px;position:relative;bottom:auto}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-summary{align-items:center;gap:8px;min-height:26px;padding-right:34px;display:flex}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-count{flex-shrink:0;justify-content:center;align-items:center;min-width:26px;height:26px;padding:0 7px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-title{margin:0;font-size:13px;line-height:1.25}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-warning{margin-top:2px;font-size:11px}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-action{box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-width:0;max-width:100%;min-height:42px;padding:0 12px;font-size:13px;display:flex}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-close{box-sizing:border-box;align-self:unset;z-index:10;touch-action:manipulation;border-radius:8px;flex:none;width:26px;min-width:26px;max-width:26px;height:26px;min-height:26px;max-height:26px;padding:0;line-height:0;position:absolute;top:9px;right:9px}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-comparison-floating-close svg{width:11px;height:11px;display:block}.gengage-chat-panel-topbar{box-sizing:border-box;height:var(--_gengage-chat-header-height);background:var(--surface-card);z-index:3;border-bottom:none;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:12px;padding:14px 16px;display:flex;position:sticky;top:0}.gengage-chat-panel-topbar-title-wrap{flex:1 1 0;align-items:center;min-width:0;display:flex}.gengage-chat-panel-topbar-back,.gengage-chat-panel-topbar-forward{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);width:42px;min-width:42px;height:42px;min-height:42px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:0;transition:background .15s,border-color .15s,opacity .15s;display:flex}.gengage-chat-panel-topbar-back[hidden],.gengage-chat-panel-topbar-forward[hidden]{display:none}.gengage-chat-panel-topbar-back:hover:not(:disabled),.gengage-chat-panel-topbar-forward:hover:not(:disabled){background:var(--surface-card-soft);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default))}.gengage-chat-panel-topbar-back:disabled,.gengage-chat-panel-topbar-forward:disabled{opacity:.3;cursor:default}.gengage-chat-panel-topbar-title{width:100%;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;text-align:left;letter-spacing:-.01em;font-size:17px;font-weight:700;line-height:1.2;display:block;overflow:hidden}.gengage-chat-panel-topbar-actions{flex:none;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.gengage-chat-panel-topbar-actions:empty{display:none}.gengage-chat-panel-topbar-toolbar-host{justify-content:flex-end;align-items:center;width:100%;display:flex}.gengage-chat-panel-topbar-toolbar-host .gengage-chat-product-sort-toolbar{flex-wrap:nowrap;justify-content:flex-end;gap:8px}.gengage-chat-panel-topbar-close{display:none}@keyframes gengage-typewriter-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.gengage-chat-typewriter-block{animation:.15s both gengage-typewriter-fade-in;display:block}@media (prefers-reduced-motion:reduce){.gengage-chat-typewriter-block{animation:none}}.gengage-product-mention{color:var(--client-primary);cursor:pointer;border-bottom:1px dashed var(--client-primary);font-weight:500;text-decoration:none;transition:border-color .15s}.gengage-product-mention:hover{border-bottom-style:solid}@keyframes gengage-skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.gengage-chat-panel-skeleton-block{animation:1.5s ease-in-out infinite gengage-skeleton-pulse}@media (prefers-reduced-motion:reduce){.gengage-chat-panel-skeleton-block{animation:none}}.gengage-chat-input-chips{scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;gap:6px;padding:4px 12px 2px;display:flex;overflow-x:auto}.gengage-chat-input-chips::-webkit-scrollbar{display:none}.gengage-chat-input-chip{border-radius:var(--radius-pill);border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;padding:8px 12px;font-family:inherit;font-size:12px;font-weight:700;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.gengage-chat-input-chip:hover{background:var(--client-primary-subtle);border-color:color-mix(in srgb, var(--client-primary) 24%, var(--border-default));color:var(--client-primary)}.gengage-chat-icon{flex-shrink:0;width:14px;height:14px}.gengage-chat-input-chip-icon,.gengage-chat-pill-icon{align-items:center;margin-right:4px;display:inline-flex}.gengage-chat-product-card-img-wrapper,.gengage-chat-product-details-img-wrap{position:relative;overflow:hidden}.gengage-chat-product-card-discount-badge{border-radius:var(--radius-pill);background:var(--_gengage-discount-color);color:var(--text-inverse);z-index:1;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.3;position:absolute;top:8px;left:8px}.gengage-chat-product-card-stock{border-radius:var(--radius-pill);width:fit-content;margin-top:2px;padding:2px 6px;font-size:11px;font-weight:600}.gengage-chat-product-card-stock.is-in-stock{background:color-mix(in srgb, var(--success) 12%, white);color:color-mix(in srgb, var(--success) 82%, var(--text-primary))}.gengage-chat-product-card-stock.is-out-of-stock{background:color-mix(in srgb, var(--error) 10%, white);color:var(--error)}.gengage-chat-find-similar-pill{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:color-mix(in srgb, var(--surface-elevated) 96%, transparent);width:28px;height:28px;color:var(--text-primary);box-shadow:var(--shadow-1);cursor:pointer;z-index:2;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:11px;font-weight:500;transition:opacity .2s,box-shadow .15s;display:inline-flex;position:relative}.gengage-chat-find-similar-pill:hover{box-shadow:var(--shadow-2);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default))}@media (hover:hover) and (pointer:fine){.gengage-chat-find-similar-pill:after{content:attr(data-tooltip);background:color-mix(in srgb, var(--surface-shell) 98%, black);border:1px solid color-mix(in srgb, var(--surface-shell) 60%, white);box-shadow:var(--shadow-2);color:var(--text-inverse);white-space:nowrap;opacity:0;pointer-events:none;z-index:12;border-radius:10px;padding:6px 10px;font-size:11px;font-weight:600;line-height:1.2;transition:opacity .14s;position:absolute;top:50%;right:calc(100% + 8px);transform:translateY(-50%)}.gengage-chat-find-similar-pill:hover:after,.gengage-chat-find-similar-pill:focus-visible:after{opacity:1}}.gengage-chat-find-similar-pill-icon{justify-content:center;align-items:center;display:flex}.gengage-chat-find-similar-pill-icon svg{display:block}.gengage-chat-find-similar-pill-text{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gengage-chat-product-card-img-wrapper .gengage-chat-product-card-img-actions,.gengage-chat-ai-toppick-media .gengage-chat-product-card-img-actions{transition:opacity .2s}@media (hover:hover) and (pointer:fine){.gengage-chat-product-card-img-wrapper:not(:hover) .gengage-chat-product-card-img-actions,.gengage-chat-ai-toppick-media:not(:hover) .gengage-chat-product-card-img-actions{opacity:0;pointer-events:none}.gengage-chat-product-card-img-wrapper:hover .gengage-chat-product-card-img-actions,.gengage-chat-ai-toppick-media:hover .gengage-chat-product-card-img-actions{opacity:1;pointer-events:auto}}@media (hover:none),(pointer:coarse){.gengage-chat-product-card-img-wrapper .gengage-chat-product-card-img-actions,.gengage-chat-ai-toppick-media .gengage-chat-product-card-img-actions{opacity:1;pointer-events:auto}}.gengage-chat-product-details-img-wrap .gengage-chat-find-similar-pill{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--surface-shell) 88%, transparent);width:auto;height:auto;color:var(--text-inverse);box-shadow:none;opacity:0;pointer-events:none;padding:4px 10px;position:absolute;top:40px;right:8px}.gengage-chat-product-details-img-wrap .gengage-chat-find-similar-pill-icon{display:none}.gengage-chat-product-details-img-wrap .gengage-chat-find-similar-pill-text{clip:auto;white-space:nowrap;width:auto;height:auto;margin:0;position:static;overflow:visible}.gengage-chat-product-card-img-wrapper:hover .gengage-chat-find-similar-pill,.gengage-chat-ai-toppick-media:hover .gengage-chat-find-similar-pill,.gengage-chat-product-details-img-wrap:hover .gengage-chat-find-similar-pill{opacity:1;pointer-events:auto}.gengage-chat-favorite-btn{background:color-mix(in srgb, var(--surface-elevated) 96%, transparent);border:1px solid var(--border-subtle);border-radius:var(--radius-control);cursor:pointer;width:28px;height:28px;color:var(--text-secondary);box-shadow:var(--shadow-1);z-index:3;justify-content:center;align-items:center;padding:0;transition:color .2s,box-shadow .15s;display:flex;position:absolute;top:8px;right:8px}.gengage-chat-favorite-btn:hover{box-shadow:var(--shadow-2);color:var(--error);border-color:color-mix(in srgb, var(--error) 20%, var(--border-default))}.gengage-chat-favorite-btn--active{color:var(--error)}.gengage-chat-product-details-promos{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.gengage-chat-product-details-promo-badge{border-radius:var(--radius-pill);background:var(--gengage-chat-promo-bg,color-mix(in srgb, var(--success) 12%, white));color:var(--gengage-chat-promo-text,color-mix(in srgb, var(--success) 82%, var(--text-primary)));white-space:nowrap;box-sizing:border-box;min-height:20px;padding:2px 6px;font-size:10px;font-weight:500;display:inline-block}.gengage-chat-panel-float{box-sizing:border-box;pointer-events:none;z-index:10;flex-shrink:0;align-self:stretch;width:100%;height:0;margin-top:auto;position:sticky;bottom:0;overflow:visible}.gengage-chat-choice-prompter{pointer-events:none;background:var(--surface-card);border:1px solid var(--border-default);width:auto;max-width:none;box-shadow:var(--shadow-2);z-index:5;opacity:0;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-left:0;margin-right:0;padding:12px 14px;transition:opacity .2s,transform .2s;display:grid;position:absolute;bottom:12px;left:16px;right:16px;transform:translateY(12px)}.gengage-chat-panel--scrolled .gengage-chat-choice-prompter{pointer-events:auto;opacity:1;transform:translateY(0)}.gengage-chat-choice-prompter-heading{color:var(--text-primary);margin-bottom:2px;font-size:12px;font-weight:700}.gengage-chat-choice-prompter-suggestion{color:var(--text-secondary);margin-bottom:0;font-size:12px;line-height:1.35}.gengage-chat-choice-prompter-copy{min-width:0}.gengage-chat-choice-prompter-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:inline-flex}.gengage-chat-choice-prompter-cta{border:1px solid var(--ds-button-primary-border);border-radius:var(--radius-control);background:var(--ds-button-primary-bg);width:auto;min-width:180px;min-height:40px;color:var(--ds-button-primary-fg);cursor:pointer;text-align:center;padding:0 18px;font-family:inherit;font-size:13px;font-weight:700;transition:background .15s;display:inline-flex}.gengage-chat-choice-prompter-cta:hover{background:var(--ds-button-primary-bg-hover)}.gengage-chat-choice-prompter-dismiss{border:1px solid var(--border-default);background:color-mix(in srgb, var(--surface-card-soft) 92%, white);width:40px;height:40px;color:var(--text-muted);cursor:pointer;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;transition:color .15s,border-color .15s,background .15s;display:flex}.gengage-chat-choice-prompter-dismiss:hover{color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 18%, white);background:var(--client-primary-subtle)}@media (prefers-reduced-motion:reduce){.gengage-chat-choice-prompter{animation:none}}.gengage-chat-pros-cons{background:var(--surface-card-soft);border:1px solid var(--border-subtle);border-radius:var(--radius-control);margin:8px 0;padding:12px 14px}.gengage-chat-pros-cons-heading{color:var(--text-primary);margin:0 0 10px;font-size:14px;font-weight:600}.gengage-chat-pros-cons-list{margin:0 0 8px;padding:0;list-style:none}.gengage-chat-pros-cons-list:last-child{margin-bottom:0}.gengage-chat-pros-cons-item{color:var(--text-secondary);align-items:flex-start;gap:8px;padding:4px 0;font-size:13px;line-height:1.5;display:flex}.gengage-chat-pros-cons-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;font-weight:700;display:flex}.gengage-chat-pros-cons-icon--pro{color:var(--success);background:color-mix(in srgb, var(--success) 15%, white)}.gengage-chat-pros-cons-icon--con{color:var(--error);background:color-mix(in srgb, var(--error) 12%, white)}.gengage-chat-categories{flex-direction:column;gap:8px;display:flex}.gengage-chat-categories-tabs{-webkit-overflow-scrolling:touch;gap:4px;padding:4px 0;display:flex;overflow-x:auto}.gengage-chat-categories-tab{border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:6px 14px;font-size:13px;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.gengage-chat-categories-tab-image{object-fit:cover;border:1px solid var(--border-subtle);background:var(--surface-card-muted);-webkit-user-drag:none;-webkit-user-select:none;user-select:none;border-radius:999px;flex:none;width:28px;height:28px}.gengage-chat-categories-tab-text{min-width:0}.gengage-chat-categories-tab:hover{background:var(--surface-card-soft);border-color:var(--border-strong)}.gengage-chat-categories-tab--active{background:var(--client-primary-subtle);color:var(--client-primary);border-color:color-mix(in srgb, var(--client-primary) 26%, var(--border-default))}.gengage-chat-categories-grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:12px;display:grid}.gengage-chat-categories-grid .gengage-chat-product-card{width:100%;min-width:0;max-width:none}:is(.gengage-chat-categories .gengage-chat-product-card-img,.gengage-chat-consulting-group-grid .gengage-chat-product-card-img,.gengage-chat-product-grid-wrapper:has(.gengage-chat-consulting-style-picker) .gengage-chat-product-card-img){-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.gengage-chat-categories-filter-tags{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.gengage-chat-categories-filter-tag{border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;padding:4px 10px;font-size:12px;transition:background .15s,border-color .15s,color .15s}.gengage-chat-categories-filter-tag:hover{background:var(--client-primary-subtle);border-color:color-mix(in srgb, var(--client-primary) 18%, var(--border-default));color:var(--client-primary)}.gengage-chat-product-grid-view-more{border:1px solid var(--ds-button-secondary-border);border-radius:var(--radius-control);background:var(--ds-button-secondary-bg);width:100%;color:var(--ds-button-secondary-fg);cursor:pointer;text-align:center;grid-column:1/-1;margin-top:8px;padding:10px;font-size:14px;font-weight:500;transition:background .15s;display:block}.gengage-chat-product-grid-view-more:hover{background:var(--ds-button-secondary-bg-hover)}.gengage-chat-product-grid--mobile{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px 0;display:grid;overflow-x:visible}.gengage-chat-product-grid--mobile .gengage-chat-product-card{width:100%;min-width:0;max-width:none}.gengage-chat-comparison--mobile{position:relative;overflow-x:clip}.gengage-chat-comparison--mobile .gengage-chat-comparison-table-wrapper{-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 88%,#0000);mask-image:linear-gradient(90deg,#000 88%,#0000)}.gengage-chat-comparison--mobile .gengage-chat-comparison-table{table-layout:fixed;min-width:480px}.gengage-chat-comparison--mobile .gengage-chat-comparison-table th:first-child,.gengage-chat-comparison--mobile .gengage-chat-comparison-table .gengage-chat-comparison-label{background:var(--surface-card);z-index:1;box-shadow:2px 0 4px color-mix(in srgb, var(--surface-shell) 8%, transparent);position:sticky;left:0}.gengage-chat-comparison--mobile .gengage-chat-comparison-table thead th:first-child{box-sizing:border-box;width:22ch;min-width:0;max-width:22ch;padding:8px 6px}.gengage-chat-comparison--mobile .gengage-chat-comparison-table td.gengage-chat-comparison-label{text-align:left;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;vertical-align:middle;width:22ch;min-width:0;max-width:22ch;overflow:hidden}.gengage-chat-product-details-similars-heading{color:var(--text-primary);margin:16px 0 8px;font-size:18px;font-weight:700;line-height:1.2}.gengage-chat-product-details-similars{margin-top:8px}.gengage-chat-handoff-notice{background:color-mix(in srgb, var(--warning) 10%, white);border:1px solid color-mix(in srgb, var(--warning) 28%, var(--border-default));border-radius:var(--radius-control);text-align:center;flex-direction:column;align-items:center;gap:6px;margin:8px 0;padding:16px;display:flex}.gengage-chat-handoff-notice-icon{font-size:24px}.gengage-chat-handoff-notice-heading{color:color-mix(in srgb, var(--warning) 72%, var(--text-primary));margin:0;font-size:14px;font-weight:600}.gengage-chat-handoff-notice-summary{color:color-mix(in srgb, var(--warning) 84%, var(--text-primary));margin:0;font-size:13px;line-height:1.5}.gengage-chat-product-details-share{border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-card);width:36px;height:36px;color:var(--text-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:color .12s,border-color .12s,background-color .12s;display:inline-flex;position:relative}.gengage-chat-product-details-share:hover{color:var(--client-primary);border-color:var(--client-primary);background:var(--client-primary-subtle)}.gengage-chat-product-details-share:before{content:attr(aria-label);border-radius:calc(var(--radius-control) - 4px);background:var(--surface-shell);color:var(--text-inverse);white-space:nowrap;pointer-events:none;opacity:0;z-index:2;padding:4px 8px;font-size:11px;font-weight:500;transition:opacity .15s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.gengage-chat-product-details-share:hover:before{opacity:1}.gengage-chat-product-details-share--copied:after{content:"✓";background:var(--_gengage-success-color);color:var(--client-on-primary);border-radius:var(--radius-control);justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex;position:absolute;inset:0}.gengage-chat-product-details-share svg{width:20px;height:20px}.gengage-chat-review-link,.gengage-chat-grounding-link{color:var(--client-primary);text-decoration:underline}@media (width<=768px){.gengage-chat-product-details-promo-badge{-webkit-line-clamp:2;line-clamp:2;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}.gengage-chat-launcher:focus-visible,.gengage-chat-close:focus-visible,.gengage-chat-header-btn:focus-visible,.gengage-chat-header-powered:focus-visible,.gengage-chat-send:focus-visible,.gengage-chat-action-btn:focus-visible,.gengage-chat-pill:focus-visible,.gengage-chat-input-chip:focus-visible,.gengage-chat-pills-arrow:focus-visible,.gengage-chat-error-retry:focus-visible,.gengage-chat-product-card-cta:focus-visible,.gengage-chat-product-details-cta:focus-visible,.gengage-chat-product-details-atc:focus-visible,.gengage-chat-product-detail-tab:focus-visible,.gengage-chat-panel-divider-toggle:focus-visible,.gengage-chat-panel-topbar-back:focus-visible,.gengage-chat-panel-topbar-forward:focus-visible,.gengage-chat-rollback-btn:focus-visible,.gengage-chat-ai-toppick-cta:focus-visible,.gengage-chat-comparison-toggle-btn:focus-visible,.gengage-chat-comparison-floating-btn:focus-visible,.gengage-chat-comparison-checkbox:focus-visible,.gengage-chat-product-sort-trigger:focus-visible,.gengage-chat-product-sort-option:focus-visible,.gengage-chat-product-variant-btn:focus-visible,.gengage-chat-product-gallery-thumb:focus-visible,.gengage-chat-find-similar-pill:focus-visible,.gengage-chat-favorite-btn:focus-visible,.gengage-chat-attach-btn:focus-visible,.gengage-chat-attach-menu-item:focus-visible,.gengage-chat-mic-btn:focus-visible,.gengage-chat-attachment-remove:focus-visible,.gengage-chat-kvkk-dismiss:focus-visible,.gengage-chat-choice-prompter-cta:focus-visible,.gengage-chat-choice-prompter-dismiss:focus-visible,.gengage-chat-categories-tab:focus-visible,.gengage-chat-categories-filter-tag:focus-visible,.gengage-chat-product-grid-view-more:focus-visible,.gengage-chat-product-details-share:focus-visible{outline:2px solid var(--client-focus-ring);outline-offset:2px}.gengage-chat-root--mobile.gengage-chat-root--mobile-half .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter{display:none}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter{box-sizing:border-box;pointer-events:auto;opacity:1;border-radius:14px;grid-template-columns:1fr;gap:10px;width:100%;max-width:100%;max-height:none;margin:0;padding:10px 12px;display:none;position:relative;bottom:auto;left:auto;right:auto;overflow:visible;transform:none}.gengage-chat-root--mobile.gengage-chat-root--mobile-full .gengage-chat-panel--visible~.gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter{display:grid}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter-suggestion{display:none}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter-cta{width:100%;min-width:0;min-height:44px;padding:0 14px}.gengage-chat-root--mobile .gengage-chat-product-sort-trigger,.gengage-chat-root--mobile .gengage-chat-product-sort-option,.gengage-chat-root--mobile .gengage-chat-comparison-toggle-btn{min-height:40px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-trigger-label,.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-trigger-chevron,.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-comparison-toggle-label{display:none}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-dropdown{flex:none;width:auto;max-width:none}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-dropdown--open{z-index:40}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-trigger{justify-content:center;gap:0;width:auto;min-width:44px;padding:0 10px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-menu{width:min(224px,100vw - 32px);min-width:196px;max-width:calc(100vw - 32px);top:calc(100% + 6px);left:auto;right:0}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-option{min-height:44px;padding:10px 12px;font-size:13px}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-product-sort-option-label{white-space:normal;line-height:1.3}.gengage-chat-root--mobile .gengage-chat-panel .gengage-chat-comparison-toggle-btn{justify-content:center;gap:0;width:44px;min-width:44px;padding:0}.gengage-chat-root--mobile .gengage-chat-input-chip{min-height:40px;padding:8px 12px}.gengage-chat-root--mobile .gengage-chat-comparison-dock-slot .gengage-chat-choice-prompter-dismiss{width:40px;height:40px}.gengage-chat-root--mobile .gengage-chat-panel-divider-toggle{min-height:44px}.gengage-chat-root--mobile .gengage-chat-product-card-cta,.gengage-chat-root--mobile .gengage-chat-choice-prompter-cta,.gengage-chat-root--mobile .gengage-chat-product-grid-view-more{justify-content:center;align-items:center;min-height:44px;display:flex}.gengage-chat-root--mobile .gengage-chat-panel-topbar-back,.gengage-chat-root--mobile .gengage-chat-panel-topbar-forward,.gengage-chat-root--mobile .gengage-chat-favorite-btn,.gengage-chat-root--mobile .gengage-chat-product-details-share{width:44px;min-width:44px;height:44px}.gengage-chat-root--mobile .gengage-chat-panel-topbar-close{display:none}@media (prefers-reduced-motion:reduce){.gengage-chat-consulting-loading-card{animation:none}}.gengage-chat-panel--has-scroll:after{content:"";background:linear-gradient(transparent, var(--surface-card-soft));pointer-events:none;height:40px;display:block;position:sticky;bottom:0}.gengage-chat-cart-toast{background:var(--success);color:var(--text-inverse);border-radius:var(--radius-pill);box-shadow:var(--shadow-3);pointer-events:none;opacity:0;z-index:10;white-space:nowrap;padding:8px 18px;font-size:13px;font-weight:600;transition:opacity .2s,transform .2s;position:absolute;bottom:72px;left:50%;transform:translate(-50%)translateY(8px)}.gengage-chat-cart-toast--visible{opacity:1;transform:translate(-50%)translateY(0)}@keyframes gengage-cart-flash{0%{transform:scale(1)}30%{transform:scale(1.25)}60%{transform:scale(.95)}to{transform:scale(1)}}.gengage-chat-header-btn--cart-flash{animation:.5s gengage-cart-flash}', io = /* @__PURE__ */ new Set([
5651
5680
  "launchSingleProduct",
5652
5681
  "launchProductList",
5653
5682
  "launchHomepage"
5654
- ]), qt = /* @__PURE__ */ new Set(["PanelRestoreCard"]), oo = /* @__PURE__ */ new Set(["ComparisonTable", "ProductDetailsPanel"]);
5683
+ ]), Vt = /* @__PURE__ */ new Set(["PanelRestoreCard"]), oo = /* @__PURE__ */ new Set(["ComparisonTable", "ProductDetailsPanel"]);
5655
5684
  function so(a) {
5656
5685
  const e = a?.type;
5657
5686
  if (e) {
@@ -5665,7 +5694,7 @@ function co(a) {
5665
5694
  const e = document.createElement("template");
5666
5695
  return e.innerHTML = pe(a), (e.content.textContent ?? "").trim().length > 0;
5667
5696
  }
5668
- function Vt(a) {
5697
+ function qt(a) {
5669
5698
  return a.length > 120 ? !1 : /^[a-zA-Z0-9#(),.\s%/\-]+$/.test(a);
5670
5699
  }
5671
5700
  function nt(a) {
@@ -5713,7 +5742,7 @@ var lo = class Te extends Oa {
5713
5742
  const t = document.createElement("style");
5714
5743
  t.textContent = ro, this._shadow.appendChild(t);
5715
5744
  const n = this.root, r = (m, g) => {
5716
- g && Vt(g) && n.style.setProperty(m, g);
5745
+ g && qt(g) && n.style.setProperty(m, g);
5717
5746
  };
5718
5747
  if (r("--gengage-chat-header-bg", e.headerBg), r("--gengage-chat-header-foreground", e.headerForeground), e.theme)
5719
5748
  for (const [m, g] of Object.entries(e.theme)) m.startsWith("--") && typeof g == "string" && r(m, g);
@@ -5830,7 +5859,7 @@ var lo = class Te extends Oa {
5830
5859
  const c = this._drawer.restorePanelState(e.accountId), l = e.panelMode ?? "auto";
5831
5860
  l === "collapsed" ? this._drawer.setPanelCollapsed(!0) : l === "expanded" && this._drawer.setForceExpanded();
5832
5861
  const p = sessionStorage.getItem("gengage_restore_session_id"), d = sessionStorage.getItem("gengage_restore_sku"), h = sessionStorage.getItem("gengage_restore_history_id"), u = !!(p && d);
5833
- u && (sessionStorage.removeItem("gengage_restore_session_id"), sessionStorage.removeItem("gengage_restore_sku")), h && sessionStorage.removeItem("gengage_restore_history_id"), this._historyStorage = new Vi(this.config.accountId, this.config.session?.userId ?? "");
5862
+ u && (sessionStorage.removeItem("gengage_restore_session_id"), sessionStorage.removeItem("gengage_restore_sku")), h && sessionStorage.removeItem("gengage_restore_history_id"), this._historyStorage = new qi(this.config.accountId, this.config.session?.userId ?? "");
5834
5863
  try {
5835
5864
  const m = new Li();
5836
5865
  await m.open(), this._session = new Ut(m);
@@ -5848,7 +5877,7 @@ var lo = class Te extends Oa {
5848
5877
  if (!this._drawerVisible || !this._isMobileViewport) return;
5849
5878
  const C = this._drawer?.getElement();
5850
5879
  if (!C) return;
5851
- const A = window.visualViewport, _ = Math.max(0, Math.round(window.innerHeight - (A.height + A.offsetTop))), M = _ > 90, I = this._openState === "full" && M ? _ : 0;
5880
+ const A = window.visualViewport, _ = Math.max(0, Math.round(window.innerHeight - (A.height + A.offsetTop))), N = _ > 90, I = this._openState === "full" && N ? _ : 0;
5852
5881
  I !== this._lastAppliedKeyboardInset && (this._lastAppliedKeyboardInset = I, C.style.setProperty("--gengage-chat-keyboard-inset", `${I}px`)), this._openState === "full" && (C.style.setProperty("--gengage-chat-visual-vh", `${Math.round(A.height)}px`), C.style.setProperty("--gengage-chat-visual-top", `${Math.round(A.offsetTop)}px`));
5853
5882
  };
5854
5883
  this._syncVisualVh = () => {
@@ -5984,19 +6013,19 @@ var lo = class Te extends Oa {
5984
6013
  };
5985
6014
  A();
5986
6015
  let _ = 0;
5987
- const M = () => {
6016
+ const N = () => {
5988
6017
  _ || (_ = requestAnimationFrame(() => {
5989
6018
  _ = 0, d = !1, p(), m?.disconnect(), m = null, A(), C(), o() || l();
5990
6019
  }));
5991
6020
  };
5992
- window.addEventListener("resize", M, { passive: !0 }), window.addEventListener("scroll", u, { passive: !0 }), window.visualViewport?.addEventListener("scroll", u, { passive: !0 }), this._syncLauncherAnchor = () => {
6021
+ window.addEventListener("resize", N, { passive: !0 }), window.addEventListener("scroll", u, { passive: !0 }), window.visualViewport?.addEventListener("scroll", u, { passive: !0 }), this._syncLauncherAnchor = () => {
5993
6022
  d = !1, p(), m?.disconnect(), m = null, A(), C();
5994
6023
  }, o() ? C() : (l(), [
5995
6024
  100,
5996
6025
  400,
5997
6026
  1e3
5998
6027
  ].forEach((I) => window.setTimeout(l, I))), this._launcherAnchorCleanup = () => {
5999
- x.disconnect(), f?.disconnect(), m?.disconnect(), window.removeEventListener("resize", M), window.removeEventListener("scroll", u), window.visualViewport?.removeEventListener("scroll", u), _ && cancelAnimationFrame(_), h && cancelAnimationFrame(h);
6028
+ x.disconnect(), f?.disconnect(), m?.disconnect(), window.removeEventListener("resize", N), window.removeEventListener("scroll", u), window.visualViewport?.removeEventListener("scroll", u), _ && cancelAnimationFrame(_), h && cancelAnimationFrame(h);
6000
6029
  };
6001
6030
  }
6002
6031
  syncLauncherAnchor() {
@@ -6045,7 +6074,7 @@ var lo = class Te extends Oa {
6045
6074
  for (const t of this._messages) {
6046
6075
  if (t.role === "assistant" && !t.frontendOnly && (t.status === "streaming" || t.status === "done") && (t.content == null || t.content.length === 0)) {
6047
6076
  if (t.threadId) {
6048
- const n = this._messages.some((r) => r.id !== t.id && r.threadId === t.threadId && r.frontendOnly);
6077
+ const n = this._messages.some((r) => r.id !== t.id && r.threadId === t.threadId && r.frontendOnly) || this._panel?.snapshotTypes.has(t.id) === !0;
6049
6078
  this._threadsWithFirstBot.delete(t.threadId), this._presentation.finalizeAssistantGroup(t.threadId), this._shadow?.querySelectorAll(`[data-thread-id="${le(t.threadId)}"]:not([data-message-id])`).forEach((r) => r.remove()), this._panel && !n && (this._panel.threads = this._panel.threads.filter((r) => r !== t.threadId));
6050
6079
  }
6051
6080
  this._drawer?.removeMessageBubble(t.id), this._panel?.snapshots.delete(t.id), this._panel?.snapshotTypes.delete(t.id);
@@ -6166,7 +6195,7 @@ var lo = class Te extends Oa {
6166
6195
  break;
6167
6196
  case "bgColorChange": {
6168
6197
  const t = e.payload?.color;
6169
- typeof t == "string" && Vt(t) && this._shadow && this._shadow.host.style.setProperty("--gengage-chat-bg", t);
6198
+ typeof t == "string" && qt(t) && this._shadow && this._shadow.host.style.setProperty("--gengage-chat-bg", t);
6170
6199
  break;
6171
6200
  }
6172
6201
  default:
@@ -6480,8 +6509,8 @@ var lo = class Te extends Oa {
6480
6509
  const v = this._currentThreadId, P = this._messages.filter((T) => T.threadId !== void 0 && T.threadId > v);
6481
6510
  this._messages = this._messages.filter((T) => !T.threadId || T.threadId <= v);
6482
6511
  for (const T of P)
6483
- this._shadow?.querySelector(`[data-message-id="${le(T.id)}"]`)?.remove(), this._panel.snapshots.delete(T.id), this._panel.snapshotTypes.delete(T.id);
6484
- this._shadow?.querySelectorAll("[data-thread-id]")?.forEach((T) => {
6512
+ this._shadow?.querySelector(`[data-message-id="${le(T.id)}"]`)?.remove(), this._panel?.deleteSnapshotForMessage(T.id);
6513
+ this._panel?.pruneThreadsAfter(v), this._shadow?.querySelectorAll("[data-thread-id]")?.forEach((T) => {
6485
6514
  T instanceof HTMLElement && T.dataset.threadId && T.dataset.threadId > v && T.remove();
6486
6515
  });
6487
6516
  }
@@ -6547,7 +6576,7 @@ var lo = class Te extends Oa {
6547
6576
  isMobile: this._isMobileViewport
6548
6577
  };
6549
6578
  this.config.isDemoWebsite === !0 && (_.openPdpSimilars = !0), this._modeController.isShopping || (_.assistantMode = this._modeController.mode), this.config.session?.viewId !== void 0 && (_.viewId = this.config.session.viewId);
6550
- const M = Xa(e, {
6579
+ const N = Xa(e, {
6551
6580
  pageContext: this.config.pageContext,
6552
6581
  backendContext: this._lastBackendContext,
6553
6582
  isMobile: this._isMobileViewport
@@ -6555,7 +6584,7 @@ var lo = class Te extends Oa {
6555
6584
  account_id: this.config.accountId,
6556
6585
  session_id: this.config.session?.sessionId ?? "",
6557
6586
  correlation_id: this.config.session?.sessionId ?? "",
6558
- type: M.type,
6587
+ type: N.type,
6559
6588
  locale: De(this.config.locale),
6560
6589
  meta: _,
6561
6590
  context: {
@@ -6564,7 +6593,7 @@ var lo = class Te extends Oa {
6564
6593
  session_id: this.config.session?.sessionId ?? ""
6565
6594
  }
6566
6595
  };
6567
- this.config.session?.userId !== void 0 && (I.user_id = this.config.session.userId), this.config.session?.viewId !== void 0 && (I.view_id = this.config.session.viewId), M.payload !== void 0 && (I.payload = M.payload), !p && this.config.pageContext?.sku !== void 0 && (I.sku = this.config.pageContext.sku), !p && this.config.pageContext?.pageType !== void 0 && (I.page_type = this.config.pageContext.pageType);
6596
+ this.config.session?.userId !== void 0 && (I.user_id = this.config.session.userId), this.config.session?.viewId !== void 0 && (I.view_id = this.config.session.viewId), N.payload !== void 0 && (I.payload = N.payload), !p && this.config.pageContext?.sku !== void 0 && (I.sku = this.config.pageContext.sku), !p && this.config.pageContext?.pageType !== void 0 && (I.page_type = this.config.pageContext.pageType);
6568
6597
  let w = !1, k = !1, B = !1, j = !1, Z = !1, L = !1;
6569
6598
  const S = An();
6570
6599
  let b = null, E = null;
@@ -6576,7 +6605,7 @@ var lo = class Te extends Oa {
6576
6605
  }
6577
6606
  Z ? this._drawer.setPanelAiZoneState("hidden") : this._drawer.setPanelAiZoneState("analyzing", { analyzingLabel: this._i18n.aiAnalysisAnalyzingLabel });
6578
6607
  }
6579
- }, q = (v) => {
6608
+ }, V = (v) => {
6580
6609
  if (!b || !this._drawer) return;
6581
6610
  const P = this._buildRenderContext();
6582
6611
  P.isStreaming = v;
@@ -6584,20 +6613,20 @@ var lo = class Te extends Oa {
6584
6613
  j = !0, this._drawer.setPanelAiZoneState("results", { resultEl: T }), b = null;
6585
6614
  }, D = (v, P, T) => {
6586
6615
  if (v === "ProductGrid" || v === "CategoriesContainer") {
6587
- B = !0, q(T), F();
6616
+ B = !0, V(T), F();
6588
6617
  return;
6589
6618
  }
6590
6619
  P !== "appendSimilars" && P !== "append" && (B = !1, j = !1, b = null, this._drawer?.setPanelAiZoneState("hidden"));
6591
- }, K = (v) => (v === "ProductGrid" || v === "CategoriesContainer") && (B || j || b !== null), V = () => {
6620
+ }, K = (v) => (v === "ProductGrid" || v === "CategoriesContainer") && (B || j || b !== null), q = () => {
6592
6621
  L || (L = !0, this._drawer?.removeTypingIndicator(), r(!1), this._bridge?.send("loadingMessage", { text: null }));
6593
6622
  }, Q = (v, P, T) => {
6594
6623
  if (!this._drawer || !this._panel) return;
6595
6624
  const O = v.elements[v.root];
6596
6625
  if (T === "ProductGrid" && O) {
6597
- const N = dt(O);
6598
- if (N.isConsulting) {
6626
+ const M = dt(O);
6627
+ if (M.isConsulting) {
6599
6628
  const H = this._drawer.getPanelContentElement();
6600
- if (H && ii(H, N, P)) {
6629
+ if (H && ii(H, M, P)) {
6601
6630
  this._comparisonSelectMode = !1, this._comparisonSelectedSkus = [], this._comparisonSelectionWarning = null, this._drawer.setComparisonDockContent(null), this._currentPanelSource = {
6602
6631
  kind: "spec",
6603
6632
  spec: v
@@ -6612,24 +6641,24 @@ var lo = class Te extends Oa {
6612
6641
  }, this._panel.currentType = T;
6613
6642
  }, R = (v, P, T, O) => {
6614
6643
  if (!this._panel) return;
6615
- v === "ProductDetailsPanel" && e.type === "launchSingleProduct" && this._clearUnavailableProductContext(), g.threadId && !this._panel.threads.includes(g.threadId) && this._panel.threads.push(g.threadId), this._isMobileViewport && v === "ProductGrid" && this._ensureMobilePanelOverlayVisible();
6616
- const N = this._panel.currentType ?? v, H = P?.props?.panelTitle;
6617
- this._panel.updateTopBar(N, H), this._panel.updateExtendedMode(v), this._isMobileViewport && c && this._drawer?.hideMobilePanel(), D(v, T, O);
6644
+ v === "ProductDetailsPanel" && e.type === "launchSingleProduct" && this._clearUnavailableProductContext(), g.threadId && this._panel.threads[this._panel.threads.length - 1] !== g.threadId && this._panel.threads.push(g.threadId), this._isMobileViewport && v === "ProductGrid" && this._ensureMobilePanelOverlayVisible();
6645
+ const M = this._panel.currentType ?? v, H = P?.props?.panelTitle;
6646
+ this._panel.updateTopBar(M, H), this._panel.updateExtendedMode(v), this._isMobileViewport && c && this._drawer?.hideMobilePanel(), D(v, T, O);
6618
6647
  };
6619
6648
  let U = null;
6620
6649
  if (U = en(I, {
6621
6650
  onTextChunk: (v, P, T) => {
6622
- if (!o && i !== this._activeRequestThreadId || (m += v, co(m) && V(), T?.skuToProductItem && (this._skuToProductItem = {
6651
+ if (!o && i !== this._activeRequestThreadId || (m += v, co(m) && q(), T?.skuToProductItem && (this._skuToProductItem = {
6623
6652
  ...this._skuToProductItem,
6624
6653
  ...T.skuToProductItem
6625
6654
  }), T?.conversationMode && (this._conversationMode = T.conversationMode), T?.renderHint && (g.renderHint = T.renderHint), !this._drawer)) return;
6626
6655
  let O = m;
6627
- const N = T?.kvkk === !0 || c && ut(O);
6628
- if (P && N) {
6656
+ const M = T?.kvkk === !0 || c && ut(O);
6657
+ if (P && M) {
6629
6658
  const G = this.config.accountId;
6630
6659
  if (!jt(G)) {
6631
- const te = to(O);
6632
- te ? this._drawer?.showKvkkBanner(te, () => {
6660
+ const ee = to(O);
6661
+ ee ? this._drawer?.showKvkkBanner(ee, () => {
6633
6662
  this._drawer?.hideKvkkBanner(), at(G);
6634
6663
  }) : at(G);
6635
6664
  }
@@ -6643,20 +6672,20 @@ var lo = class Te extends Oa {
6643
6672
  const G = this._shadow?.querySelector(`[data-message-id="${g.id}"] .gengage-chat-bubble-text`);
6644
6673
  if (G) {
6645
6674
  this._activeTypewriter?.cancel();
6646
- const te = T?.productMentions;
6675
+ const ee = T?.productMentions;
6647
6676
  this._activeTypewriter = bi({
6648
6677
  container: G,
6649
6678
  html: pe(O),
6650
6679
  onTick: () => this._drawer?.scrollToBottomIfNeeded(),
6651
6680
  onComplete: () => {
6652
- this._activeTypewriter = null, te && te.length > 0 && G && vi({
6681
+ this._activeTypewriter = null, ee && ee.length > 0 && G && vi({
6653
6682
  container: G,
6654
- mentions: te,
6655
- onProductClick: (ee) => {
6683
+ mentions: ee,
6684
+ onProductClick: (te) => {
6656
6685
  this._sendAction({
6657
- title: te.find((ne) => ne.sku === ee)?.short_name ?? ee,
6686
+ title: ee.find((ne) => ne.sku === te)?.short_name ?? te,
6658
6687
  type: "launchSingleProduct",
6659
- payload: { sku: ee }
6688
+ payload: { sku: te }
6660
6689
  });
6661
6690
  }
6662
6691
  });
@@ -6668,8 +6697,8 @@ var lo = class Te extends Oa {
6668
6697
  onUISpec: (v, P, T, O) => {
6669
6698
  if (!o && i !== this._activeRequestThreadId || P !== "chat") return;
6670
6699
  O && (this._clearAssistantPanelLikeStreamClearPanel(), w = !1, E = null);
6671
- const N = v.elements[v.root], H = N?.type ?? "unknown";
6672
- if (Tn(H, N?.props ?? {}, S, {
6700
+ const M = v.elements[v.root], H = M?.type ?? "unknown";
6701
+ if (Tn(H, M?.props ?? {}, S, {
6673
6702
  drawer: this._drawer,
6674
6703
  ensureRendered: () => this._ensureAssistantMessageRendered(g),
6675
6704
  cancelTypewriter: () => {
@@ -6681,32 +6710,32 @@ var lo = class Te extends Oa {
6681
6710
  H === "PhotoAnalysisCard" && g.threadId && this._focusPresentationThread(g.threadId, "auto");
6682
6711
  return;
6683
6712
  }
6684
- const G = rt(N), te = this.config.productDetailsExtended !== !0 && (H === "ProductDetailsPanel" || G);
6685
- te && !O && (this._clearAssistantPanelLikeStreamClearPanel(), w = !1);
6686
- const ee = H === "ProductDetailsPanel" && T !== "panel" ? "panel" : T, ne = this._buildRenderContext();
6713
+ const G = rt(M), ee = this.config.productDetailsExtended !== !0 && (H === "ProductDetailsPanel" || G);
6714
+ ee && !O && (this._clearAssistantPanelLikeStreamClearPanel(), w = !1);
6715
+ const te = H === "ProductDetailsPanel" && T !== "panel" ? "panel" : T, ne = this._buildRenderContext();
6687
6716
  if (ne.isStreaming = !0, H === "ComparisonTable") {
6688
- const z = N?.props?.products;
6717
+ const z = M?.props?.products;
6689
6718
  za(Array.isArray(z) ? z.length : 0);
6690
6719
  }
6691
6720
  if (H === "ProductGrid") {
6692
- const z = N?.children?.length ?? 0;
6721
+ const z = M?.children?.length ?? 0;
6693
6722
  Pa(void 0, z);
6694
6723
  }
6695
- const se = ee === "panel" && this._panel ? this._panel.toPanelSpec(v) : v;
6696
- if (ee === "panel" && this._panel && !te && H === "ProductGrid" && N) {
6697
- const z = dt(N);
6724
+ const se = te === "panel" && this._panel ? this._panel.toPanelSpec(v) : v;
6725
+ if (te === "panel" && this._panel && !ee && H === "ProductGrid" && M) {
6726
+ const z = dt(M);
6698
6727
  if (z.isConsulting && !ri(z)) {
6699
6728
  E = v;
6700
6729
  return;
6701
6730
  }
6702
6731
  z.isConsulting && (E = null);
6703
6732
  }
6704
- if (so(N) && V(), ee === "panel" && this._panel && !te) {
6733
+ if (so(M) && q(), te === "panel" && this._panel && !ee) {
6705
6734
  const z = !k;
6706
6735
  k = !0;
6707
- const Y = N?.props?.replacePanel === !0, X = N?.props?.rankingState, W = Y || X === "pending" || X === "final" ? "replace" : Mi({
6736
+ const Y = M?.props?.replacePanel === !0, X = M?.props?.rankingState, W = Y || X === "pending" || X === "final" ? "replace" : Mi({
6708
6737
  componentType: H,
6709
- similarsAppend: N?.props?.similarsAppend === !0,
6738
+ similarsAppend: M?.props?.similarsAppend === !0,
6710
6739
  currentPanelType: this._panel.currentType,
6711
6740
  hasPanelContent: this._drawer?.hasPanelContent() ?? !1,
6712
6741
  isPanelLoading: this._drawer?.isPanelLoading() ?? !1,
@@ -6715,10 +6744,10 @@ var lo = class Te extends Oa {
6715
6744
  ne.panelProductListHeading = void 0, H === "ProductGrid" && (W === "appendSimilars" ? ne.panelProductListHeading = this._i18n.similarProductsLabel ?? "Similar Products" : this._applyPanelListHeadingToContext(ne, {
6716
6745
  kind: "spec",
6717
6746
  spec: se
6718
- })), W === "appendSimilars" ? this._appendSimilarsToPanel(se, ne) : W === "append" ? (this._drawer?.appendPanelContent(this._renderUISpec(se, ne)), this._comparisonSelectMode && this._refreshComparisonUI()) : Q(se, ne, H), R(H, N, W, !0);
6747
+ })), W === "appendSimilars" ? this._appendSimilarsToPanel(se, ne) : W === "append" ? (this._drawer?.appendPanelContent(this._renderUISpec(se, ne)), this._comparisonSelectMode && this._refreshComparisonUI()) : Q(se, ne, H), R(H, M, W, !0);
6719
6748
  }
6720
- if (H === "ProductDetailsPanel" && ee === "panel" && (!g.silent || c)) {
6721
- const z = N?.props?.product;
6749
+ if (H === "ProductDetailsPanel" && te === "panel" && (!g.silent || c)) {
6750
+ const z = M?.props?.product;
6722
6751
  if (z) {
6723
6752
  c && (l = z), this._currentInlineProductSummaryRecord = z;
6724
6753
  const Y = {
@@ -6736,35 +6765,35 @@ var lo = class Te extends Oa {
6736
6765
  }
6737
6766
  }
6738
6767
  }
6739
- const y = H === "AITopPicks" || H === "AIGroupingCards", $ = H === "ActionButtons" ? N?.props?.buttons : void 0, ae = H === "ActionButtons" && this._modeController.mode !== "shopping" && Array.isArray($) && $.length > 0 && $.every((z) => z.action?.type === "inputText");
6768
+ const y = H === "AITopPicks" || H === "AIGroupingCards", $ = H === "ActionButtons" ? M?.props?.buttons : void 0, ae = H === "ActionButtons" && this._modeController.mode !== "shopping" && Array.isArray($) && $.length > 0 && $.every((z) => z.action?.type === "inputText");
6740
6769
  let re = !1, ie = !1;
6741
- if (te && G && (ne.panelProductListHeading = this._i18n.similarProductsLabel ?? "Similar Products"), y && (!g.silent || s))
6770
+ if (ee && G && (ne.panelProductListHeading = this._i18n.similarProductsLabel ?? "Similar Products"), y && (!g.silent || s))
6742
6771
  if (g.threadId && this._rememberPanelAiSpec(g.threadId, v), B) {
6743
6772
  const z = this._renderUISpec(v, ne);
6744
6773
  j = !0, this._drawer?.setPanelAiZoneState("results", { resultEl: z }), re = !0, b = null;
6745
6774
  } else
6746
6775
  b = v, ie = !0;
6747
6776
  const he = s && (H === "GroundingReviewCard" || y);
6748
- if (!y && (!g.silent || he) && (ee !== "panel" || H === "ProductCard" || te && H === "ProductGrid" && !G) && (H !== "ActionButtons" || ae) && !re && !(ie && y)) {
6777
+ if (!y && (!g.silent || he) && (te !== "panel" || H === "ProductCard" || ee && H === "ProductGrid" && !G) && (H !== "ActionButtons" || ae) && !re && !(ie && y)) {
6749
6778
  const z = this._shadow?.querySelector(".gengage-chat-messages");
6750
6779
  if (z) {
6751
6780
  const Y = this._renderUISpec(v, ne);
6752
- g.threadId && (Y.dataset.threadId = g.threadId), z.appendChild(Y), this._scrollInlineIntoView(Y, g.threadId), this._drawer?.refreshPresentationCollapsed(), te && H === "ProductGrid" && (k = !0);
6781
+ g.threadId && (Y.dataset.threadId = g.threadId), z.appendChild(Y), this._scrollInlineIntoView(Y, g.threadId), this._drawer?.refreshPresentationCollapsed(), ee && H === "ProductGrid" && (k = !0);
6753
6782
  }
6754
6783
  }
6755
6784
  if ((H === "ProductGrid" || H === "ProductCard") && g.threadId) {
6756
- const z = N?.children ?? [], Y = H === "ProductGrid" ? z.map((X) => v.elements[X]?.props?.product).filter(Boolean) : [N?.props?.product].filter(Boolean);
6785
+ const z = M?.children ?? [], Y = H === "ProductGrid" ? z.map((X) => v.elements[X]?.props?.product).filter(Boolean) : [M?.props?.product].filter(Boolean);
6757
6786
  for (const X of Y) {
6758
6787
  const W = X.sku;
6759
6788
  W && this._viewedProductSkus.add(W);
6760
6789
  }
6761
6790
  }
6762
6791
  if (H === "ProductGrid" || H === "ProductDetailsPanel") {
6763
- const z = (H === "ProductGrid" ? (N?.children ?? []).map((Y) => v.elements[Y]?.props?.product).filter(Boolean) : [N?.props?.product ?? N?.props].filter(Boolean)).map((Y) => Y.imageUrl).filter((Y) => typeof Y == "string").slice(0, 5);
6792
+ const z = (H === "ProductGrid" ? (M?.children ?? []).map((Y) => v.elements[Y]?.props?.product).filter(Boolean) : [M?.props?.product ?? M?.props].filter(Boolean)).map((Y) => Y.imageUrl).filter((Y) => typeof Y == "string").slice(0, 5);
6764
6793
  z.length > 0 && this._bridge?.send("previewImages", { images: z });
6765
6794
  }
6766
- const fe = N?.children?.length ?? 0;
6767
- if (H === "ProductGrid" && ee === "panel" && !te && fe > 1 && !this._isMobileViewport && !this._modeController.isChoicePrompterHidden && !this._comparisonSelectMode && !Ci(this._currentThreadId ?? "") && (this._clearChoicePrompter(), this._choicePrompterEl = ki({
6795
+ const fe = M?.children?.length ?? 0;
6796
+ if (H === "ProductGrid" && te === "panel" && !ee && fe > 1 && !this._isMobileViewport && !this._modeController.isChoicePrompterHidden && !this._comparisonSelectMode && !Ci(this._currentThreadId ?? "") && (this._clearChoicePrompter(), this._choicePrompterEl = ki({
6768
6797
  heading: this._i18n.choicePrompterHeading,
6769
6798
  suggestion: this._i18n.choicePrompterSuggestion,
6770
6799
  ctaLabel: this._i18n.choicePrompterCta,
@@ -6777,7 +6806,7 @@ var lo = class Te extends Oa {
6777
6806
  this._choicePrompterEl = null;
6778
6807
  }
6779
6808
  }), this._mountChoicePrompter()), H === "ActionButtons") {
6780
- const z = N?.props?.buttons;
6809
+ const z = M?.props?.buttons;
6781
6810
  if (z && z.length > 0 && !ae) {
6782
6811
  const Y = [], X = [];
6783
6812
  for (const W of z) if (wi(W)) {
@@ -6805,7 +6834,7 @@ var lo = class Te extends Oa {
6805
6834
  onAction: (v) => {
6806
6835
  if (!(!o && i !== this._activeRequestThreadId) && v.type === "action") {
6807
6836
  const P = {};
6808
- this.config.actionHandling?.unknownActionPolicy !== void 0 && (P.unknownActionPolicy = this.config.actionHandling.unknownActionPolicy), this.config.actionHandling?.allowScriptCall !== void 0 && (P.allowScriptCall = this.config.actionHandling.allowScriptCall), qa(v, {
6837
+ this.config.actionHandling?.unknownActionPolicy !== void 0 && (P.unknownActionPolicy = this.config.actionHandling.unknownActionPolicy), this.config.actionHandling?.allowScriptCall !== void 0 && (P.allowScriptCall = this.config.actionHandling.allowScriptCall), Va(v, {
6809
6838
  openChat: () => this.open(),
6810
6839
  navigate: (T) => {
6811
6840
  me(T.url) && (this._bridge?.send("navigate", T), T.newTab ? window.open(T.url, "_blank", "noopener,noreferrer") : window.location.href = T.url);
@@ -6872,17 +6901,17 @@ var lo = class Te extends Oa {
6872
6901
  });
6873
6902
  const P = k;
6874
6903
  w && !k && f(), w = !1, k = !1;
6875
- const T = g.content != null && g.content.length > 0 || m.length > 0 || P, O = g.silent || T, N = typeof navigator < "u" && navigator.onLine === !1 && $t(v), H = () => {
6904
+ const T = g.content != null && g.content.length > 0 || m.length > 0 || P, O = g.silent || T, M = typeof navigator < "u" && navigator.onLine === !1 && $t(v), H = () => {
6876
6905
  this._shadow?.querySelector(`[data-message-id="${le(g.id)}"]`)?.remove();
6877
- const ee = this._messages.indexOf(g);
6878
- ee >= 0 && this._messages.splice(ee, 1);
6906
+ const te = this._messages.indexOf(g);
6907
+ te >= 0 && this._messages.splice(te, 1);
6879
6908
  };
6880
6909
  let G = !1;
6881
- const te = () => {
6882
- if (N) return;
6910
+ const ee = () => {
6911
+ if (M) return;
6883
6912
  this.emit("error", v);
6884
- const ee = v.message;
6885
- ee === this._lastErrorMessage ? this._consecutiveErrorCount++ : (this._consecutiveErrorCount = 1, this._lastErrorMessage = ee);
6913
+ const te = v.message;
6914
+ te === this._lastErrorMessage ? this._consecutiveErrorCount++ : (this._consecutiveErrorCount = 1, this._lastErrorMessage = te);
6886
6915
  const ne = v.message.trim(), se = ne.length > 0 ? ne : this._i18n.errorMessage, y = {
6887
6916
  onRetry: () => {
6888
6917
  this._lastSentAction && this._sendAction(this._lastSentAction.action, this._lastSentAction.options);
@@ -6907,28 +6936,28 @@ var lo = class Te extends Oa {
6907
6936
  };
6908
6937
  if (s && !T) if (c || this._hasUnavailableProductContext()) {
6909
6938
  this._drawer?.setPills([]);
6910
- const ee = this._i18n.productNotFoundMessage;
6911
- g.content = ee, g.status = "done", this._ensureAssistantMessageRendered(g), this._drawer?.updateBotMessage(g.id, ee), this._markUnavailableProductContext();
6939
+ const te = this._i18n.productNotFoundMessage;
6940
+ g.content = te, g.status = "done", this._ensureAssistantMessageRendered(g), this._drawer?.updateBotMessage(g.id, te), this._markUnavailableProductContext();
6912
6941
  } else g.status = "done";
6913
6942
  else if (O)
6914
- this._drawer?.setPills([]), g.silent || te();
6915
- else if (te(), N) return;
6943
+ this._drawer?.setPills([]), g.silent || ee();
6944
+ else if (ee(), M) return;
6916
6945
  s && (this._contextPrimingInFlight = !1, this._flushQueuedUserMessages()), !G && g.status === "streaming" && (g.status = "error");
6917
6946
  },
6918
6947
  onDone: () => {
6919
6948
  if (U && this._abortControllers.delete(U), !o && i !== this._activeRequestThreadId) return;
6920
6949
  if (Z = !0, E && this._panel && this._drawer) {
6921
- const O = this._buildRenderContext();
6922
- O.isStreaming = !1;
6923
- const N = E.elements[E.root], H = this._panel.toPanelSpec(E);
6924
- this._applyPanelListHeadingToContext(O, {
6950
+ const M = this._buildRenderContext();
6951
+ M.isStreaming = !1;
6952
+ const H = E.elements[E.root], G = this._panel.toPanelSpec(E);
6953
+ this._applyPanelListHeadingToContext(M, {
6925
6954
  kind: "spec",
6926
- spec: H
6955
+ spec: G
6927
6956
  });
6928
- const G = N?.type ?? "ProductGrid";
6929
- Q(H, O, G), R(G, N, "replace", !1), k = !0;
6957
+ const ee = H?.type ?? "ProductGrid";
6958
+ Q(G, M, ee), R(ee, H, "replace", !1), k = !0;
6930
6959
  }
6931
- E = null, b && q(!1), F(), this._activeRequestThreadId = null, this._consecutiveErrorCount = 0, this._lastErrorMessage = "", r(!1), this._bridge?.send("loadingMessage", { text: null }), this._drawer?.removeTypingIndicator(), Mn(S, {
6960
+ E = null, b && V(!1), F(), this._activeRequestThreadId = null, this._consecutiveErrorCount = 0, this._lastErrorMessage = "", r(!1), this._bridge?.send("loadingMessage", { text: null }), this._drawer?.removeTypingIndicator(), Mn(S, {
6932
6961
  drawer: this._drawer,
6933
6962
  ensureRendered: () => {
6934
6963
  },
@@ -6939,24 +6968,24 @@ var lo = class Te extends Oa {
6939
6968
  });
6940
6969
  const v = k;
6941
6970
  if (w && !k && f(), w = !1, c && !m && !v) {
6942
- const O = this._i18n.productNotFoundMessage;
6943
- g.content = O, this._ensureAssistantMessageRendered(g), this._drawer?.updateBotMessage(g.id, O), this._markUnavailableProductContext();
6971
+ const M = this._i18n.productNotFoundMessage;
6972
+ g.content = M, this._ensureAssistantMessageRendered(g), this._drawer?.updateBotMessage(g.id, M), this._markUnavailableProductContext();
6944
6973
  }
6945
6974
  if (k = !1, s) {
6946
6975
  this._contextPrimingInFlight = !1;
6947
- const O = this._queuedUserMessages.length > 0;
6948
- this._flushQueuedUserMessages(), !O && c && this._ensurePdpPrimeSuggestedUiIfNeeded(l);
6976
+ const M = this._queuedUserMessages.length > 0;
6977
+ this._flushQueuedUserMessages(), !M && c && this._ensurePdpPrimeSuggestedUiIfNeeded(l);
6949
6978
  }
6950
6979
  g.status === "streaming" && (g.status = "done", mt()), this._presentation.finalizeAssistantGroup(i);
6951
6980
  const P = this._shadow?.querySelector(".gengage-chat-comparison-toggle-btn--hidden");
6952
6981
  P && (P.classList.remove("gengage-chat-comparison-toggle-btn--hidden"), P.classList.add("gengage-chat-comparison-toggle-btn--reveal")), this.emit("message", g);
6953
- const T = this._currentPanelSource;
6954
- this._panel?.snapshotForMessage(g.id, T ? {
6955
- source: T,
6982
+ const T = this._currentPanelSource, O = T ? this._clonePanelSourceForHistory(T) : null;
6983
+ this._panel?.snapshotForMessage(g.id, O ? {
6984
+ source: O,
6956
6985
  threadId: g.threadId,
6957
6986
  rebuild: () => {
6958
- const O = this._buildRenderContext();
6959
- return this._renderPanelFromSource(T, O);
6987
+ const M = this._buildRenderContext();
6988
+ return this._renderPanelFromSource(O, M);
6960
6989
  }
6961
6990
  } : void 0), this._maybeAddPanelRestoreMessage(g), this._persistConversationState();
6962
6991
  }
@@ -7028,7 +7057,7 @@ var lo = class Te extends Oa {
7028
7057
  const t = e?.uiSpec;
7029
7058
  if (!t) return null;
7030
7059
  const n = t.elements[t.root];
7031
- return !n || qt.has(n.type) ? null : {
7060
+ return !n || Vt.has(n.type) ? null : {
7032
7061
  kind: "spec",
7033
7062
  spec: t
7034
7063
  };
@@ -7089,6 +7118,13 @@ var lo = class Te extends Oa {
7089
7118
  }
7090
7119
  }
7091
7120
  }
7121
+ _clonePanelSourceForHistory(e) {
7122
+ try {
7123
+ return structuredClone(e);
7124
+ } catch {
7125
+ return e;
7126
+ }
7127
+ }
7092
7128
  _renderPanelFromSource(e, t) {
7093
7129
  return this._applyPanelListHeadingToContext(t, e), e.kind === "favorites" ? this._buildFavoritesPageEl() : e.kind === "history" ? this._buildHistoryPageEl() : e.kind === "productDetailsWithSimilars" ? this._renderProductDetailsWithSimilars(e.pdpSpec, e.similarsSpec, t) : this._renderUISpec(e.spec, t);
7094
7130
  }
@@ -7158,32 +7194,32 @@ var lo = class Te extends Oa {
7158
7194
  }
7159
7195
  }
7160
7196
  _rollbackToThread(e) {
7161
- if (this._panel && this._panel.threads.length > 0 && !this._panel.threads.includes(e) && !this._messages.some((o) => o.threadId === e))
7197
+ if (this._panel && this._panel.threads.length > 0 && !this._panel.threads.includes(e) && !this._messages.some((s) => s.threadId === e))
7162
7198
  return;
7163
7199
  this._currentThreadId = e, this._extendedModeManager?.setHiddenByUser(!1), this._lastThreadId != null && e === this._lastThreadId ? (this._presentation.setFocusedThreadId(e), this._drawer?.setPresentationFocus(e)) : (this._presentation.releaseFocusedThread(), this._drawer?.setPresentationFocus(null)), this._drawer?.setFormerMessagesButtonVisible(!1);
7164
- for (const o of this._messages) {
7165
- const s = this._shadow?.querySelector(`[data-message-id="${le(o.id)}"]`);
7166
- s && (o.threadId && o.threadId > e ? s.classList.add("gengage-chat-bubble--hidden") : s.classList.remove("gengage-chat-bubble--hidden"));
7200
+ for (const s of this._messages) {
7201
+ const c = this._shadow?.querySelector(`[data-message-id="${le(s.id)}"]`);
7202
+ c && (s.threadId && s.threadId > e ? c.classList.add("gengage-chat-bubble--hidden") : c.classList.remove("gengage-chat-bubble--hidden"));
7167
7203
  }
7168
- this._shadow?.querySelectorAll("[data-thread-id]").forEach((o) => {
7169
- o instanceof HTMLElement && o.dataset.threadId && o.dataset.threadId > e ? o.classList.add("gengage-chat-bubble--hidden") : o instanceof HTMLElement && o.classList.remove("gengage-chat-bubble--hidden");
7204
+ this._shadow?.querySelectorAll("[data-thread-id]").forEach((s) => {
7205
+ s instanceof HTMLElement && s.dataset.threadId && s.dataset.threadId > e ? s.classList.add("gengage-chat-bubble--hidden") : s instanceof HTMLElement && s.classList.remove("gengage-chat-bubble--hidden");
7170
7206
  });
7171
- const t = this._messages.find((o) => o.role === "assistant" && o.threadId === e), n = (t ? this._panel?.sourceForMessage(t.id) : null) ?? this._panel?.sourceForThread(e) ?? this._panelSourceFromMessage(t);
7172
- let r = t ? this._panel?.restoreForMessage(t.id) ?? !1 : !1;
7173
- if (!r && n) {
7174
- const o = this._buildRenderContext();
7175
- this._drawer?.setPanelContent(this._renderPanelFromSource(n, o)), this._currentPanelSource = n, this._panel && (this._panel.currentType = this._panel.componentTypeForSource(n)), r = !0;
7176
- }
7177
- r || (this._drawer?.clearPanel(), this._currentPanelSource = null, this._drawer?.setPanelAiZoneState("hidden")), r && (this._currentPanelSource = n, this._restorePanelAiZoneForThread(e));
7178
- const i = this._panel.currentType ?? "";
7179
- if (this._panel?.updateTopBar(i), this._drawer?.setPills([]), requestAnimationFrame(() => {
7207
+ const t = this._messages.find((s) => s.role === "assistant" && s.threadId === e), n = this._panel?.threads.includes(e) ?? !1, r = (t ? this._panel?.sourceForMessage(t.id) : null) ?? this._panel?.sourceForThread(e) ?? (n ? this._panelSourceFromMessage(t) : null);
7208
+ let i = t ? this._panel?.restoreForMessage(t.id) ?? !1 : !1;
7209
+ if (!i && r) {
7210
+ const s = this._buildRenderContext();
7211
+ this._drawer?.setPanelContent(this._renderPanelFromSource(r, s)), this._currentPanelSource = r, this._panel && (this._panel.currentType = this._panel.componentTypeForSource(r)), i = !0;
7212
+ }
7213
+ i || (this._drawer?.clearPanel(), this._currentPanelSource = null, this._drawer?.setPanelAiZoneState("hidden")), i && (this._currentPanelSource = r, this._restorePanelAiZoneForThread(e));
7214
+ const o = this._panel.currentType ?? "";
7215
+ if (this._panel?.updateTopBar(o), this._drawer?.setPills([]), requestAnimationFrame(() => {
7180
7216
  this._drawer?.scrollThreadIntoView(e, "auto");
7181
7217
  }), this._session?.db && this.config.session?.sessionId) {
7182
- const o = this.config.session.sessionId;
7218
+ const s = this.config.session.sessionId;
7183
7219
  (async () => {
7184
7220
  try {
7185
- const s = await this._session?.db?.loadContext(o, e);
7186
- s && (this._lastBackendContext = s.context), await this._session?.db?.deleteContextsAfterThread(o, e);
7221
+ const c = await this._session?.db?.loadContext(s, e);
7222
+ c && (this._lastBackendContext = c.context), await this._session?.db?.deleteContextsAfterThread(s, e);
7187
7223
  } catch {
7188
7224
  }
7189
7225
  })();
@@ -7854,7 +7890,7 @@ var lo = class Te extends Oa {
7854
7890
  _isMessageHostedUISpec(e) {
7855
7891
  if (!e) return !1;
7856
7892
  const t = e.elements[e.root];
7857
- return !!t && qt.has(t.type);
7893
+ return !!t && Vt.has(t.type);
7858
7894
  }
7859
7895
  _isPanelAiSpec(e) {
7860
7896
  if (!e) return !1;
@@ -7882,13 +7918,13 @@ var lo = class Te extends Oa {
7882
7918
  if (t?.kind !== "spec") return;
7883
7919
  const n = t.spec.elements[t.spec.root];
7884
7920
  if (!n || n.type !== "ProductGrid" || rt(n)) return;
7885
- const r = (n.children ?? []).map((c) => {
7886
- const l = t.spec.elements[c]?.props?.product;
7887
- return l ? {
7888
- imageUrl: typeof l.imageUrl == "string" ? l.imageUrl : void 0,
7889
- name: typeof l.name == "string" ? l.name : void 0
7921
+ const r = (n.children ?? []).map((l) => {
7922
+ const p = t.spec.elements[l]?.props?.product;
7923
+ return p ? {
7924
+ imageUrl: typeof p.imageUrl == "string" ? p.imageUrl : void 0,
7925
+ name: typeof p.name == "string" ? p.name : void 0
7890
7926
  } : null;
7891
- }).filter((c) => c !== null).slice(0, 3);
7927
+ }).filter((l) => l !== null).slice(0, 3);
7892
7928
  if (r.length === 0) return;
7893
7929
  const i = typeof n.props?.panelTitle == "string" ? n.props.panelTitle : void 0, o = this._panel.titleForComponent("ProductGrid", i), s = this._createMessage("assistant", "");
7894
7930
  s.threadId = e.threadId, s.frontendOnly = !0, s.uiSpec = {
@@ -7905,12 +7941,14 @@ var lo = class Te extends Oa {
7905
7941
  products: r
7906
7942
  }
7907
7943
  } }
7908
- }, this._messages.push(s), this._panel.snapshotForMessage(s.id, {
7909
- source: t,
7944
+ }, this._messages.push(s);
7945
+ const c = this._clonePanelSourceForHistory(t);
7946
+ this._panel.snapshotForMessage(s.id, {
7947
+ source: c,
7910
7948
  threadId: s.threadId,
7911
7949
  rebuild: () => {
7912
- const c = this._buildRenderContext();
7913
- return this._renderPanelFromSource(t, c);
7950
+ const l = this._buildRenderContext();
7951
+ return this._renderPanelFromSource(c, l);
7914
7952
  }
7915
7953
  }), this._ensureAssistantMessageRendered(s);
7916
7954
  }