@gengage/assistant-fe 0.6.47 → 0.6.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chat/components/ChatDrawer.d.ts +0 -2
- package/dist/chat-runtime.js +1 -1
- package/dist/chat.iife.js +12 -12
- package/dist/chat.js +1 -1
- package/dist/{common-BRYobEgT.js → common-DzJ8OQwQ.js} +1 -1
- package/dist/common.js +5 -5
- package/dist/{connection-warning-CWat5Lu6.js → connection-warning-DBbES5G-.js} +1 -1
- package/dist/{fastIntent-DhakARNG.js → fastIntent-BLDisAcn.js} +1 -1
- package/dist/index.js +10 -10
- package/dist/native.iife.js +10 -10
- package/dist/qna-runtime.js +1 -1
- package/dist/qna.iife.js +1 -1
- package/dist/qna.js +1 -1
- package/dist/{request-response-cache-BBFQ3eHI.js → request-response-cache-DVERFkOu.js} +1 -1
- package/dist/{runtime-BlGhlykG.js → runtime-B7PRSP3B.js} +3 -3
- package/dist/{runtime-Cg43LM-H.js → runtime-CtOsorKK.js} +418 -427
- package/dist/{runtime-lQi4_gzu.js → runtime-rmM8_uWp.js} +3 -3
- package/dist/{simbut-AOnAKPJA.js → simbut-CWtmuhew.js} +1 -1
- package/dist/simbut.iife.js +1 -1
- package/dist/simbut.js +1 -1
- package/dist/{simrel-YCf15Qo4.js → simrel-BDX9zun1.js} +1 -1
- package/dist/simrel-runtime.js +1 -1
- package/dist/simrel.iife.js +1 -1
- package/dist/simrel.js +2 -2
- package/dist/{widget-base-BusLZCWG.js → widget-base-CrsfKJMB.js} +1 -1
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { c as Xt, f as Sa, g as Ea, i as Pa, l as La, m as Ta, n as Aa, t as Ia } from "./request-response-cache-
|
|
2
|
-
import { A as Ce, C as Ma, D as Na, E as Ba, M as de, N as ve, O as za, S as yt, T as Ra, _ as Ha, a as _e, b as Fa, d as Da, f as
|
|
3
|
-
import { i as ze, s as Qt, t as Ya } from "./widget-base-
|
|
4
|
-
import { d as ue, f as Za, i as Xa, n as Qa, p as Ja, r as en, t as wt, u as tn } from "./fastIntent-
|
|
5
|
-
import { t as
|
|
1
|
+
import { c as Xt, f as Sa, g as Ea, i as Pa, l as La, m as Ta, n as Aa, t as Ia } from "./request-response-cache-DVERFkOu.js";
|
|
2
|
+
import { A as Ce, C as Ma, D as Na, E as Ba, M as de, N as ve, O as za, S as yt, T as Ra, _ as Ha, a as _e, b as Fa, d as Da, f as Ua, g as Oa, h as ja, j as he, l as qa, m as $a, p as Va, u as Ga, v as Wa, w as at, x as Ka } from "./context-UTzCGyR9.js";
|
|
3
|
+
import { i as ze, s as Qt, t as Ya } from "./widget-base-CrsfKJMB.js";
|
|
4
|
+
import { d as ue, f as Za, i as Xa, n as Qa, p as Ja, r as en, t as wt, u as tn } from "./fastIntent-BLDisAcn.js";
|
|
5
|
+
import { t as Oe } from "./locale-uQ5XZ2yS.js";
|
|
6
6
|
import { a as Jt, i as ea, n as xe, r as ta, t as ae } from "./price-formatter-CHUmYq8I.js";
|
|
7
7
|
function _t() {
|
|
8
8
|
const t = Date.now(), e = new Uint8Array(16);
|
|
@@ -64,7 +64,7 @@ var on = [
|
|
|
64
64
|
"image/jpeg",
|
|
65
65
|
"image/png",
|
|
66
66
|
"image/webp"
|
|
67
|
-
],
|
|
67
|
+
], Vo = 5 * 1024 * 1024;
|
|
68
68
|
function sn(t) {
|
|
69
69
|
return on.includes(t.type) ? t.size > 5242880 ? {
|
|
70
70
|
ok: !1,
|
|
@@ -288,7 +288,7 @@ var dt = "gengage-chat-scroll", Be = null;
|
|
|
288
288
|
function Ct(t) {
|
|
289
289
|
Be = t;
|
|
290
290
|
}
|
|
291
|
-
function
|
|
291
|
+
function Go() {
|
|
292
292
|
if (Be && Be.isConnected) return Be;
|
|
293
293
|
Be = null;
|
|
294
294
|
const t = document.getElementById(dt);
|
|
@@ -768,8 +768,8 @@ var Et = '<svg viewBox="0 0 16 16" class="gengage-chat-icon"><path d="M3 8h10M9
|
|
|
768
768
|
review: '<svg viewBox="0 0 16 16" class="gengage-chat-icon"><polygon points="8,1 10,6 15,6 11,9 12.5,14 8,11 3.5,14 5,9 1,6 6,6" fill="none" stroke="currentColor" stroke-width="1.5"/></svg>',
|
|
769
769
|
info: '<svg viewBox="0 0 16 16" class="gengage-chat-icon"><circle cx="8" cy="8" r="7" fill="none" stroke="currentColor" stroke-width="1.5"/><line x1="8" y1="7" x2="8" y2="12" stroke="currentColor" stroke-width="1.5"/><circle cx="8" cy="4.5" r="0.8" fill="currentColor"/></svg>',
|
|
770
770
|
similar: '<svg viewBox="0 0 16 16" class="gengage-chat-icon"><rect x="1" y="3" width="6" height="6" rx="1" fill="none" stroke="currentColor" stroke-width="1.5"/><rect x="9" y="3" width="6" height="6" rx="1" fill="none" stroke="currentColor" stroke-width="1.5"/></svg>'
|
|
771
|
-
}, Tn = Re, An = 3e3,
|
|
772
|
-
async function
|
|
771
|
+
}, Tn = Re, An = 3e3, Lt = 1500, In = /data:image\/(png|jpeg|jpg|webp);base64,[A-Za-z0-9+/=]+/gi;
|
|
772
|
+
async function Mn(t) {
|
|
773
773
|
for (const e of t) for (const a of e.types)
|
|
774
774
|
if (a.startsWith("image/"))
|
|
775
775
|
try {
|
|
@@ -783,7 +783,7 @@ async function Nn(t) {
|
|
|
783
783
|
for (const e of t)
|
|
784
784
|
if (e.types.includes("text/html"))
|
|
785
785
|
try {
|
|
786
|
-
const a = (await (await e.getType("text/html")).text()).match(
|
|
786
|
+
const a = (await (await e.getType("text/html")).text()).match(In)?.[0];
|
|
787
787
|
if (!a || a.length > 5e6) continue;
|
|
788
788
|
const n = await (await fetch(a)).blob();
|
|
789
789
|
if (!n || n.size === 0) continue;
|
|
@@ -800,15 +800,15 @@ async function Nn(t) {
|
|
|
800
800
|
}
|
|
801
801
|
return null;
|
|
802
802
|
}
|
|
803
|
-
async function
|
|
803
|
+
async function Nn(t) {
|
|
804
804
|
try {
|
|
805
805
|
const e = t ?? (typeof navigator.clipboard?.read == "function" ? navigator.clipboard.read() : null);
|
|
806
|
-
return e ?
|
|
806
|
+
return e ? Mn(await e) : null;
|
|
807
807
|
} catch {
|
|
808
808
|
}
|
|
809
809
|
return null;
|
|
810
810
|
}
|
|
811
|
-
var
|
|
811
|
+
var Bn = class {
|
|
812
812
|
_renderPhotoAnalysisCard(t, e) {
|
|
813
813
|
Ln(t, {
|
|
814
814
|
badge: this.i18n.photoAnalysisBadge,
|
|
@@ -997,13 +997,13 @@ var zn = class {
|
|
|
997
997
|
this.messagesEl.addEventListener("wheel", z, { passive: !0 }), this._cleanups.push(() => this.messagesEl.removeEventListener("wheel", z));
|
|
998
998
|
const k = (w) => {
|
|
999
999
|
X(), this._touchStartY = w.touches[0]?.clientY ?? null;
|
|
1000
|
-
},
|
|
1000
|
+
}, O = (w) => {
|
|
1001
1001
|
X();
|
|
1002
1002
|
const Y = w.touches[0]?.clientY, ce = this._touchStartY;
|
|
1003
1003
|
typeof Y == "number" && typeof ce == "number" && Y - ce > 10 && this._presentationFocusThreadId && this._options.presentation?.onFormerMessagesHint?.();
|
|
1004
1004
|
};
|
|
1005
|
-
this.messagesEl.addEventListener("touchstart", k, { passive: !0 }), this.messagesEl.addEventListener("touchmove",
|
|
1006
|
-
this.messagesEl.removeEventListener("touchstart", k), this.messagesEl.removeEventListener("touchmove",
|
|
1005
|
+
this.messagesEl.addEventListener("touchstart", k, { passive: !0 }), this.messagesEl.addEventListener("touchmove", O, { passive: !0 }), this._cleanups.push(() => {
|
|
1006
|
+
this.messagesEl.removeEventListener("touchstart", k), this.messagesEl.removeEventListener("touchmove", O);
|
|
1007
1007
|
}), L.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";
|
|
1008
1008
|
const B = document.createElement("div");
|
|
1009
1009
|
B.className = "gengage-chat-pills-scroll", B.dataset.gengagePart = "chat-suggestion-pills-scroll", this._pillsEl.appendChild(B);
|
|
@@ -1014,10 +1014,10 @@ var zn = class {
|
|
|
1014
1014
|
behavior: "smooth"
|
|
1015
1015
|
});
|
|
1016
1016
|
}), this._pillsEl.appendChild(q);
|
|
1017
|
-
let
|
|
1017
|
+
let U = !1;
|
|
1018
1018
|
const ne = () => {
|
|
1019
|
-
|
|
1020
|
-
|
|
1019
|
+
U || (U = !0, requestAnimationFrame(() => {
|
|
1020
|
+
U = !1;
|
|
1021
1021
|
const w = B.scrollLeft + B.clientWidth >= B.scrollWidth - 4;
|
|
1022
1022
|
q.style.display = w ? "none" : "";
|
|
1023
1023
|
}));
|
|
@@ -1316,7 +1316,7 @@ var zn = class {
|
|
|
1316
1316
|
this._attachMenuEl && (this._attachMenuEl.hasAttribute("hidden") ? this._openAttachMenu() : this._closeAttachMenu());
|
|
1317
1317
|
}
|
|
1318
1318
|
async _pasteImageFromClipboardMenu(t) {
|
|
1319
|
-
const e = await
|
|
1319
|
+
const e = await Nn(t);
|
|
1320
1320
|
if (e) {
|
|
1321
1321
|
this._routeAttachmentFile(e), this._closeAttachMenu();
|
|
1322
1322
|
return;
|
|
@@ -1652,7 +1652,9 @@ var zn = class {
|
|
|
1652
1652
|
}
|
|
1653
1653
|
_applyLoadingSteps(t, e, a = !1) {
|
|
1654
1654
|
const n = this._normalizeLoadingSteps(e), r = n[n.length - 1], i = this._normalizeLoadingSteps(this.i18n.loadingSequenceGeneric);
|
|
1655
|
-
t.steps = a && r ?
|
|
1655
|
+
t.steps = a && r ? [r] : n.length > 0 ? n : i.length > 0 ? i : [this.i18n.loadingMessage], this._clearLoadingBindingInterval(t), t.index = 0;
|
|
1656
|
+
const o = t.steps[t.index];
|
|
1657
|
+
t.labelEl.textContent !== o && (t.labelEl.textContent = o), t.steps.length > 1 && (t.intervalId = setInterval(() => {
|
|
1656
1658
|
t.index = (t.index + 1) % t.steps.length, t.labelEl.textContent = t.steps[t.index];
|
|
1657
1659
|
}, An));
|
|
1658
1660
|
}
|
|
@@ -1667,17 +1669,6 @@ var zn = class {
|
|
|
1667
1669
|
}
|
|
1668
1670
|
return a;
|
|
1669
1671
|
}
|
|
1670
|
-
_buildCurrentLoadingRotation(t, e) {
|
|
1671
|
-
const a = this._pickStaticLoadingSteps(/* @__PURE__ */ new Set([t, ...e]), In);
|
|
1672
|
-
return this._uniqueLoadingSteps([t, ...a]);
|
|
1673
|
-
}
|
|
1674
|
-
_pickStaticLoadingSteps(t, e) {
|
|
1675
|
-
const a = this._uniqueLoadingSteps(this.i18n.loadingSequenceGeneric).filter((n) => !t.has(n));
|
|
1676
|
-
return a.length <= e ? a : a.map((n) => ({
|
|
1677
|
-
step: n,
|
|
1678
|
-
sort: Math.random()
|
|
1679
|
-
})).sort((n, r) => n.sort - r.sort).slice(0, e).map((n) => n.step);
|
|
1680
|
-
}
|
|
1681
1672
|
_clearLoadingBindingInterval(t) {
|
|
1682
1673
|
t?.intervalId && (clearInterval(t.intervalId), t.intervalId = null);
|
|
1683
1674
|
}
|
|
@@ -1872,31 +1863,31 @@ var zn = class {
|
|
|
1872
1863
|
for (const t of this._cleanups) t();
|
|
1873
1864
|
this._cleanups.length = 0, this._voiceInput?.destroy(), this._voiceInput = null;
|
|
1874
1865
|
}
|
|
1875
|
-
},
|
|
1866
|
+
}, zn = ["shopping", "beauty_consulting", "account_expert"];
|
|
1876
1867
|
function oa(t) {
|
|
1877
|
-
return t === "watch_expert" ? "account_expert" :
|
|
1868
|
+
return t === "watch_expert" ? "account_expert" : zn.includes(t) ? t : null;
|
|
1878
1869
|
}
|
|
1879
|
-
function
|
|
1870
|
+
function Rn(t) {
|
|
1880
1871
|
return typeof t == "string" ? oa(t) : null;
|
|
1881
1872
|
}
|
|
1882
1873
|
function me(t) {
|
|
1883
1874
|
return t == null || typeof t != "object" || Array.isArray(t) ? null : t;
|
|
1884
1875
|
}
|
|
1885
|
-
function
|
|
1876
|
+
function Hn(...t) {
|
|
1886
1877
|
for (const e of t) if (typeof e == "string") {
|
|
1887
1878
|
const a = e.trim();
|
|
1888
1879
|
if (a.length > 0) return a;
|
|
1889
1880
|
}
|
|
1890
1881
|
}
|
|
1891
|
-
function
|
|
1882
|
+
function Fn(t) {
|
|
1892
1883
|
const e = me(t);
|
|
1893
1884
|
if (!e) return null;
|
|
1894
|
-
const a =
|
|
1885
|
+
const a = Hn(e.assistant_mode, e.assistantMode);
|
|
1895
1886
|
if (!a) return null;
|
|
1896
1887
|
const n = oa(a);
|
|
1897
1888
|
return !n || n === "shopping" ? null : n;
|
|
1898
1889
|
}
|
|
1899
|
-
function
|
|
1890
|
+
function Dn(t) {
|
|
1900
1891
|
return t === "beauty_consulting" ? "user_message" : "findSimilar";
|
|
1901
1892
|
}
|
|
1902
1893
|
var Un = class {
|
|
@@ -1932,7 +1923,7 @@ var Un = class {
|
|
|
1932
1923
|
}
|
|
1933
1924
|
handleRedirect(t) {
|
|
1934
1925
|
ze("mode", "redirect metadata received", t);
|
|
1935
|
-
const e =
|
|
1926
|
+
const e = Fn(t);
|
|
1936
1927
|
return e ? (this.switchMode(e), !0) : !1;
|
|
1937
1928
|
}
|
|
1938
1929
|
switchMode(t) {
|
|
@@ -1945,7 +1936,7 @@ var Un = class {
|
|
|
1945
1936
|
updateFromContext(t) {
|
|
1946
1937
|
const e = t.assistant_mode;
|
|
1947
1938
|
if (typeof e == "string" && e) {
|
|
1948
|
-
const a =
|
|
1939
|
+
const a = Rn(e);
|
|
1949
1940
|
a ? this._mode = a : ze("mode", "ignoring unrecognised assistant_mode from context", e);
|
|
1950
1941
|
} else e === null && (this._mode = "shopping");
|
|
1951
1942
|
this._uiHints = me(t.ui_hints) ?? null;
|
|
@@ -1955,19 +1946,19 @@ var Un = class {
|
|
|
1955
1946
|
return this._mode = "shopping", this._uiHints = null, t;
|
|
1956
1947
|
}
|
|
1957
1948
|
resolveAttachmentActionType() {
|
|
1958
|
-
return
|
|
1949
|
+
return Dn(this._mode);
|
|
1959
1950
|
}
|
|
1960
1951
|
shouldCondenseThinking() {
|
|
1961
1952
|
return this._mode !== "shopping";
|
|
1962
1953
|
}
|
|
1963
1954
|
};
|
|
1964
|
-
function
|
|
1955
|
+
function On() {
|
|
1965
1956
|
return {
|
|
1966
1957
|
streamIncludedBeautyPhotoStep: !1,
|
|
1967
1958
|
pendingPhotoStepSkip: !1
|
|
1968
1959
|
};
|
|
1969
1960
|
}
|
|
1970
|
-
function
|
|
1961
|
+
function jn(t, e, a, n, r) {
|
|
1971
1962
|
if (t === "PhotoAnalysisCard") {
|
|
1972
1963
|
const i = ra(e);
|
|
1973
1964
|
return i ? (r.photoAnalysis = i, r.renderHint = "photo_analysis", n.ensureRendered(), n.cancelTypewriter(), n.drawer?.updateBotMessage(r.id, r.content ?? "", "photo_analysis", r.photoAnalysis), !0) : (ze("beauty", "PhotoAnalysisCard parse failed, falling through to generic renderer", e), !1);
|
|
@@ -1985,16 +1976,16 @@ function qn(t, e, a, n, r) {
|
|
|
1985
1976
|
}
|
|
1986
1977
|
return !1;
|
|
1987
1978
|
}
|
|
1988
|
-
function
|
|
1979
|
+
function qn(t) {
|
|
1989
1980
|
return t.renderHint === "photo_analysis";
|
|
1990
1981
|
}
|
|
1991
|
-
function
|
|
1982
|
+
function $n(t, e) {
|
|
1992
1983
|
t.streamIncludedBeautyPhotoStep || e.drawer?.setBeautyPhotoStepCard({ visible: !1 }), t.pendingPhotoStepSkip && (t.pendingPhotoStepSkip = !1, e.sendSkipMessage());
|
|
1993
1984
|
}
|
|
1994
|
-
function
|
|
1985
|
+
function Vn(t, e) {
|
|
1995
1986
|
t.pendingPhotoStepSkip && (t.pendingPhotoStepSkip = !1, e.sendSkipMessage());
|
|
1996
1987
|
}
|
|
1997
|
-
var
|
|
1988
|
+
var Gn = {
|
|
1998
1989
|
screen_size: "Screen Size",
|
|
1999
1990
|
weight: "Weight",
|
|
2000
1991
|
battery_capacity: "Battery Capacity",
|
|
@@ -2026,12 +2017,12 @@ var Wn = {
|
|
|
2026
2017
|
height: "Height",
|
|
2027
2018
|
depth: "Depth"
|
|
2028
2019
|
};
|
|
2029
|
-
function
|
|
2030
|
-
return e?.[t] ??
|
|
2020
|
+
function Wn(t, e, a) {
|
|
2021
|
+
return e?.[t] ?? Gn[t] ?? t.replace(/_/g, " ").replace(/^./u, (n) => Kn(n, a));
|
|
2031
2022
|
}
|
|
2032
|
-
function
|
|
2023
|
+
function Kn(t, e) {
|
|
2033
2024
|
try {
|
|
2034
|
-
return t.toLocaleUpperCase(
|
|
2025
|
+
return t.toLocaleUpperCase(Oe(e));
|
|
2035
2026
|
} catch {
|
|
2036
2027
|
return t.toLocaleUpperCase("tr");
|
|
2037
2028
|
}
|
|
@@ -2041,17 +2032,17 @@ function Tt(t) {
|
|
|
2041
2032
|
const e = Number(t);
|
|
2042
2033
|
return Number.isFinite(e) && e > 0;
|
|
2043
2034
|
}
|
|
2044
|
-
function
|
|
2035
|
+
function Yn(t) {
|
|
2045
2036
|
const e = typeof t == "number" ? t : typeof t == "string" ? Number(t) : NaN;
|
|
2046
2037
|
return Number.isFinite(e) && e > 0;
|
|
2047
2038
|
}
|
|
2048
|
-
function
|
|
2039
|
+
function Zn(t) {
|
|
2049
2040
|
const e = typeof t == "number" ? t : Number(t), a = document.createElement("div");
|
|
2050
2041
|
a.className = "gengage-chat-comparison-recommended-rating", a.innerHTML = '<span class="gengage-chat-comparison-recommended-rating-icon" aria-hidden="true"><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></span>';
|
|
2051
2042
|
const n = document.createElement("span");
|
|
2052
2043
|
return n.className = "gengage-chat-comparison-recommended-rating-value", n.textContent = e.toFixed(1), a.appendChild(n), a;
|
|
2053
2044
|
}
|
|
2054
|
-
function
|
|
2045
|
+
function Xn(t) {
|
|
2055
2046
|
const { recommended: e, products: a, attributes: n, highlights: r, specialCases: i, onProductClick: o, i18n: s } = t, c = document.createElement("div");
|
|
2056
2047
|
if (c.className = "gengage-chat-comparison", c.dataset.gengagePart = "comparison-dialog", c.setAttribute("role", "dialog"), c.setAttribute("aria-label", s?.comparisonHeading ?? "Comparison Results"), e) {
|
|
2057
2048
|
const l = document.createElement("article");
|
|
@@ -2076,7 +2067,7 @@ function Qn(t) {
|
|
|
2076
2067
|
const x = document.createElement("div");
|
|
2077
2068
|
x.className = "gengage-chat-comparison-recommended-title", x.textContent = e.name, m.appendChild(x);
|
|
2078
2069
|
const v = document.createElement("div");
|
|
2079
|
-
if (v.className = "gengage-chat-comparison-recommended-meta",
|
|
2070
|
+
if (v.className = "gengage-chat-comparison-recommended-meta", Yn(e.rating) && v.appendChild(Zn(e.rating)), Tt(e.price)) {
|
|
2080
2071
|
const d = document.createElement("div");
|
|
2081
2072
|
d.className = "gengage-chat-comparison-recommended-price", d.textContent = ae(e.price, t.pricing), v.appendChild(d);
|
|
2082
2073
|
}
|
|
@@ -2117,7 +2108,7 @@ function Qn(t) {
|
|
|
2117
2108
|
const h = document.createElement("span");
|
|
2118
2109
|
h.className = "gengage-chat-comparison-key-differences-summary-meta", h.textContent = s?.viewMoreLabel ?? "Show More", p.appendChild(g), p.appendChild(h), l.appendChild(p);
|
|
2119
2110
|
const m = document.createElement("div");
|
|
2120
|
-
m.className = "gengage-chat-comparison-key-differences-content", m.innerHTML = ve(
|
|
2111
|
+
m.className = "gengage-chat-comparison-key-differences-content", m.innerHTML = ve(Qn(t.keyDifferencesHtml)), l.appendChild(m), c.appendChild(l);
|
|
2121
2112
|
}
|
|
2122
2113
|
if (i && i.length > 0) {
|
|
2123
2114
|
const l = document.createElement("details");
|
|
@@ -2125,7 +2116,7 @@ function Qn(t) {
|
|
|
2125
2116
|
const p = document.createElement("summary");
|
|
2126
2117
|
p.textContent = s?.specialCasesLabel ?? "For Special Cases", l.appendChild(p);
|
|
2127
2118
|
const g = document.createElement("ul");
|
|
2128
|
-
for (const h of i)
|
|
2119
|
+
for (const h of i) Jn(g, h);
|
|
2129
2120
|
g.childElementCount > 0 && l.appendChild(g), c.appendChild(l);
|
|
2130
2121
|
}
|
|
2131
2122
|
if (a.length > 0 && n.length > 0) {
|
|
@@ -2166,7 +2157,7 @@ function Qn(t) {
|
|
|
2166
2157
|
const m = document.createElement("tbody");
|
|
2167
2158
|
for (const v of n) {
|
|
2168
2159
|
const u = document.createElement("tr"), d = document.createElement("td");
|
|
2169
|
-
d.className = "gengage-chat-comparison-label", d.textContent =
|
|
2160
|
+
d.className = "gengage-chat-comparison-label", d.textContent = Wn(v.label, s?.criteriaLabels, t.locale), u.appendChild(d);
|
|
2170
2161
|
for (let _ = 0; _ < v.values.length; _++) {
|
|
2171
2162
|
const y = document.createElement("td");
|
|
2172
2163
|
a[_]?.sku === e?.sku && (y.className = "gengage-chat-comparison-selected gds-comparison-table-winner-cell");
|
|
@@ -2187,13 +2178,13 @@ function Qn(t) {
|
|
|
2187
2178
|
l.shiftKey && document.activeElement === g ? (l.preventDefault(), h.focus()) : !l.shiftKey && document.activeElement === h && (l.preventDefault(), g.focus());
|
|
2188
2179
|
}), c;
|
|
2189
2180
|
}
|
|
2190
|
-
function
|
|
2181
|
+
function Qn(t) {
|
|
2191
2182
|
if (/<[uo]l[\s>]/i.test(t) || /<li[\s>]/i.test(t)) return t;
|
|
2192
2183
|
const e = t.split(`
|
|
2193
2184
|
`).filter((a) => a.trim());
|
|
2194
2185
|
return e.length <= 1 ? t : "<ul>" + e.map((a) => `<li>${a.trim()}</li>`).join("") + "</ul>";
|
|
2195
2186
|
}
|
|
2196
|
-
function
|
|
2187
|
+
function Jn(t, e) {
|
|
2197
2188
|
const a = ve(e);
|
|
2198
2189
|
if (!a) return;
|
|
2199
2190
|
const n = document.createElement("template");
|
|
@@ -2221,30 +2212,30 @@ function qe(t, e = 18) {
|
|
|
2221
2212
|
}
|
|
2222
2213
|
return n;
|
|
2223
2214
|
}
|
|
2224
|
-
var nt = "General", At = 220,
|
|
2225
|
-
function
|
|
2215
|
+
var nt = "General", At = 220, er = 6;
|
|
2216
|
+
function tr(t) {
|
|
2226
2217
|
if (typeof t != "string") return [nt];
|
|
2227
2218
|
const e = t.split(/[,;|/]+/).map((a) => a.trim().replace(/\s+/g, " ")).filter((a) => a.length > 0);
|
|
2228
2219
|
return e.length === 0 ? [nt] : Array.from(new Set(e.map((a) => a.toLocaleLowerCase()))).map((a) => e.find((n) => n.toLocaleLowerCase() === a) ?? nt);
|
|
2229
2220
|
}
|
|
2230
|
-
function
|
|
2221
|
+
function ar(t) {
|
|
2231
2222
|
return t === "positive" || t === "negative" || t === "neutral" ? t : "neutral";
|
|
2232
2223
|
}
|
|
2233
|
-
function
|
|
2224
|
+
function nr(t) {
|
|
2234
2225
|
if (typeof t != "string") return "";
|
|
2235
2226
|
const e = t.trim().replace(/\s+/g, " ");
|
|
2236
2227
|
return e.length <= At ? e : `${e.slice(0, At - 3).trimEnd()}...`;
|
|
2237
2228
|
}
|
|
2238
|
-
function
|
|
2229
|
+
function rr(t) {
|
|
2239
2230
|
return t.positive > t.negative ? "positive" : t.negative > t.positive ? "negative" : "neutral";
|
|
2240
2231
|
}
|
|
2241
|
-
function
|
|
2232
|
+
function ir(t) {
|
|
2242
2233
|
return qe(t === "positive" ? ["M7 17 17 7", "M7 7h10v10"] : t === "negative" ? ["M7 7 17 17", "M17 7v10H7"] : ["M5 12h14"], 14);
|
|
2243
2234
|
}
|
|
2244
|
-
function
|
|
2235
|
+
function or(t, e = "1 customer mentions", a = "customers mention") {
|
|
2245
2236
|
return t === 1 ? e : `${t} ${a}`;
|
|
2246
2237
|
}
|
|
2247
|
-
function
|
|
2238
|
+
function sr(t, e) {
|
|
2248
2239
|
const a = document.createElement("div");
|
|
2249
2240
|
a.className = "gengage-chat-review-highlights";
|
|
2250
2241
|
const n = t.props?.reviews;
|
|
@@ -2254,7 +2245,7 @@ function cr(t, e) {
|
|
|
2254
2245
|
}
|
|
2255
2246
|
const r = n.filter((v) => v !== null && typeof v == "object"), i = /* @__PURE__ */ new Map();
|
|
2256
2247
|
for (const v of r) {
|
|
2257
|
-
const u =
|
|
2248
|
+
const u = ar(v.review_class), d = nr(v.review_text), _ = tr(v.review_tag);
|
|
2258
2249
|
for (const y of _) {
|
|
2259
2250
|
const b = y.toLocaleLowerCase();
|
|
2260
2251
|
let A = i.get(b);
|
|
@@ -2266,7 +2257,7 @@ function cr(t, e) {
|
|
|
2266
2257
|
negative: 0,
|
|
2267
2258
|
neutral: 0,
|
|
2268
2259
|
snippets: []
|
|
2269
|
-
}, i.set(b, A)), A.mentions += 1, u === "positive" ? A.positive += 1 : u === "negative" ? A.negative += 1 : A.neutral += 1, d.length > 0 && A.snippets.length <
|
|
2260
|
+
}, i.set(b, A)), A.mentions += 1, u === "positive" ? A.positive += 1 : u === "negative" ? A.negative += 1 : A.neutral += 1, d.length > 0 && A.snippets.length < er && !A.snippets.some((L) => L.text === d)) {
|
|
2270
2261
|
const L = {
|
|
2271
2262
|
text: d,
|
|
2272
2263
|
tone: u
|
|
@@ -2295,7 +2286,7 @@ function cr(t, e) {
|
|
|
2295
2286
|
const u = document.createElement("div");
|
|
2296
2287
|
u.className = "gengage-chat-review-detail-meta";
|
|
2297
2288
|
const d = document.createElement("span");
|
|
2298
|
-
if (d.className = "gengage-chat-review-detail-mentions", d.textContent = `${
|
|
2289
|
+
if (d.className = "gengage-chat-review-detail-mentions", d.textContent = `${or(v.mentions, e?.reviewCustomersMentionSingular, e?.reviewCustomersMentionPlural)} "${v.label}"`, u.appendChild(d), v.positive > 0) {
|
|
2299
2290
|
const y = document.createElement("span");
|
|
2300
2291
|
y.className = "gengage-chat-review-detail-positive", y.textContent = `${v.positive} ${s}`, u.appendChild(y);
|
|
2301
2292
|
}
|
|
@@ -2324,10 +2315,10 @@ function cr(t, e) {
|
|
|
2324
2315
|
}
|
|
2325
2316
|
};
|
|
2326
2317
|
for (const v of o) {
|
|
2327
|
-
const u =
|
|
2318
|
+
const u = rr(v), d = document.createElement("button");
|
|
2328
2319
|
d.type = "button", d.className = "gengage-chat-review-subject gds-chip", d.dataset.subjectKey = v.key, d.dataset.tone = u;
|
|
2329
2320
|
const _ = document.createElement("span");
|
|
2330
|
-
_.className = "gengage-chat-review-subject-icon", _.appendChild(
|
|
2321
|
+
_.className = "gengage-chat-review-subject-icon", _.appendChild(ir(u)), d.appendChild(_);
|
|
2331
2322
|
const y = document.createElement("span");
|
|
2332
2323
|
y.className = "gengage-chat-review-subject-label", y.textContent = v.label, d.appendChild(y);
|
|
2333
2324
|
const b = document.createElement("span");
|
|
@@ -2337,7 +2328,7 @@ function cr(t, e) {
|
|
|
2337
2328
|
}
|
|
2338
2329
|
return a.appendChild(g), x(), m(), a.appendChild(h), a;
|
|
2339
2330
|
}
|
|
2340
|
-
function
|
|
2331
|
+
function cr(t) {
|
|
2341
2332
|
if (!t) return;
|
|
2342
2333
|
const e = t.discountReason ?? t.discount_reason ?? t.campaignReason ?? t.campaign_reason;
|
|
2343
2334
|
if (typeof e != "string") return;
|
|
@@ -2346,7 +2337,7 @@ function lr(t) {
|
|
|
2346
2337
|
}
|
|
2347
2338
|
function He(t, e) {
|
|
2348
2339
|
if (t.productPriceUi?.showCampaignReason === !0)
|
|
2349
|
-
return
|
|
2340
|
+
return cr(e);
|
|
2350
2341
|
}
|
|
2351
2342
|
function $e(t, e) {
|
|
2352
2343
|
const a = e?.originalPriceStyle ?? e?.price_original_style;
|
|
@@ -2392,7 +2383,7 @@ function et(t) {
|
|
|
2392
2383
|
const r = document.createElement("span");
|
|
2393
2384
|
return r.className = "gengage-chat-campaign-price-badge__sale", r.textContent = t.salePriceFormatted, a.appendChild(n), a.appendChild(r), e.appendChild(a), e;
|
|
2394
2385
|
}
|
|
2395
|
-
function
|
|
2386
|
+
function lr() {
|
|
2396
2387
|
try {
|
|
2397
2388
|
return globalThis.GENGAGE_TOPPICKS_MOBILE_LAYOUT === "uniform";
|
|
2398
2389
|
} catch {
|
|
@@ -2405,17 +2396,17 @@ function ca(t) {
|
|
|
2405
2396
|
const a = t.action?.payload;
|
|
2406
2397
|
return a && typeof a == "object" && "sku" in a && typeof a.sku == "string" ? a.sku : null;
|
|
2407
2398
|
}
|
|
2408
|
-
var
|
|
2399
|
+
var gr = {
|
|
2409
2400
|
winner: "roleWinner",
|
|
2410
2401
|
best_value: "roleBestValue",
|
|
2411
2402
|
best_alternative: "roleBestAlternative"
|
|
2412
2403
|
};
|
|
2413
2404
|
function It(t, e) {
|
|
2414
2405
|
if (!t || !e) return null;
|
|
2415
|
-
const a =
|
|
2406
|
+
const a = gr[t];
|
|
2416
2407
|
return a ? e[a] ?? t : t;
|
|
2417
2408
|
}
|
|
2418
|
-
function
|
|
2409
|
+
function dr(t) {
|
|
2419
2410
|
const e = t.rating, a = typeof e == "number" ? e : typeof e == "string" ? parseFloat(e) : NaN;
|
|
2420
2411
|
if (Number.isNaN(a) || a <= 0) return null;
|
|
2421
2412
|
const n = document.createElement("div");
|
|
@@ -2425,7 +2416,7 @@ function pr(t) {
|
|
|
2425
2416
|
const i = document.createElement("span");
|
|
2426
2417
|
return i.className = "gengage-chat-ai-toppick-rating-value", i.textContent = a.toFixed(1), n.appendChild(r), n.appendChild(i), n;
|
|
2427
2418
|
}
|
|
2428
|
-
function
|
|
2419
|
+
function pr(t, e, a, n, r) {
|
|
2429
2420
|
const i = document.createElement("div");
|
|
2430
2421
|
i.className = "gengage-chat-ai-toppick-media", i.dataset.gengagePart = "ai-top-pick-media";
|
|
2431
2422
|
const o = t.product, s = o.imageUrl;
|
|
@@ -2457,7 +2448,7 @@ function hr(t, e, a, n, r) {
|
|
|
2457
2448
|
}
|
|
2458
2449
|
a.appendChild(i);
|
|
2459
2450
|
}
|
|
2460
|
-
function
|
|
2451
|
+
function hr(t, e, a) {
|
|
2461
2452
|
const n = t.price, r = t.originalPrice;
|
|
2462
2453
|
if (!n) return;
|
|
2463
2454
|
const i = He(a, t), o = $e(a, t), s = !!(r && r !== n), c = !!(i && s), l = Je(a, t), p = document.createElement("div");
|
|
@@ -2502,7 +2493,7 @@ function ur(t, e, a) {
|
|
|
2502
2493
|
g.className = "gengage-chat-ai-toppick-price-stack", g.appendChild(Qe(i)), g.appendChild(p), e.appendChild(g);
|
|
2503
2494
|
} else e.appendChild(p);
|
|
2504
2495
|
}
|
|
2505
|
-
function
|
|
2496
|
+
function ur(t, e, a) {
|
|
2506
2497
|
const n = typeof t.reason == "string" ? t.reason.trim() : "", r = a.hideUserReviews !== !0 && typeof t.reviewHighlight == "string" ? t.reviewHighlight.trim() : "";
|
|
2507
2498
|
if (!(!n && !r)) {
|
|
2508
2499
|
if (n) {
|
|
@@ -2538,7 +2529,7 @@ function Mt(t, e, a, n) {
|
|
|
2538
2529
|
E.className = "gengage-chat-ai-toppick-badge gds-badge", E.dataset.gengagePart = "ai-top-pick-role-badge", E.textContent = v, r.appendChild(E);
|
|
2539
2530
|
}
|
|
2540
2531
|
const u = document.createElement("div");
|
|
2541
|
-
u.className = "gengage-chat-ai-toppick-top-row", u.dataset.gengagePart = "ai-top-pick-top-row",
|
|
2532
|
+
u.className = "gengage-chat-ai-toppick-top-row", u.dataset.gengagePart = "ai-top-pick-top-row", pr(t, m, u, e, { skipOverlayActions: x });
|
|
2542
2533
|
const d = document.createElement("div");
|
|
2543
2534
|
if (d.className = "gengage-chat-ai-toppick-body", d.dataset.gengagePart = "ai-top-pick-body", v && x) {
|
|
2544
2535
|
const E = document.createElement("div");
|
|
@@ -2549,10 +2540,10 @@ function Mt(t, e, a, n) {
|
|
|
2549
2540
|
const E = document.createElement("div");
|
|
2550
2541
|
E.className = "gengage-chat-ai-toppick-name", E.dataset.gengagePart = "ai-top-pick-name", E.textContent = _, d.appendChild(E);
|
|
2551
2542
|
}
|
|
2552
|
-
const y =
|
|
2553
|
-
y && d.appendChild(y),
|
|
2543
|
+
const y = dr(o);
|
|
2544
|
+
y && d.appendChild(y), hr(o, d, e), t.labels && t.labels.length > 0 && d.appendChild(fr(t.labels)), u.appendChild(d), r.appendChild(u);
|
|
2554
2545
|
const b = document.createElement("div");
|
|
2555
|
-
if (b.className = "gengage-chat-ai-toppick-detail", b.dataset.gengagePart = "ai-top-pick-detail", a)
|
|
2546
|
+
if (b.className = "gengage-chat-ai-toppick-detail", b.dataset.gengagePart = "ai-top-pick-detail", a) ur(t, b, e);
|
|
2556
2547
|
else {
|
|
2557
2548
|
const E = typeof t.reason == "string" ? t.reason.trim() : "";
|
|
2558
2549
|
if (E) {
|
|
@@ -2596,14 +2587,14 @@ function Mt(t, e, a, n) {
|
|
|
2596
2587
|
}
|
|
2597
2588
|
return r;
|
|
2598
2589
|
}
|
|
2599
|
-
function
|
|
2590
|
+
function mr(t, e) {
|
|
2600
2591
|
const a = document.createElement("div");
|
|
2601
2592
|
a.className = "gengage-chat-ai-top-picks", a.dataset.gengagePart = "ai-top-picks";
|
|
2602
2593
|
const n = t.props?.suggestions ?? [];
|
|
2603
2594
|
if (n.length === 0) return a;
|
|
2604
2595
|
const r = document.createElement("div");
|
|
2605
2596
|
r.className = "gengage-chat-ai-top-picks-scroll", r.dataset.gengagePart = "ai-top-picks-scroll";
|
|
2606
|
-
const i = e.isMobile === !0 &&
|
|
2597
|
+
const i = e.isMobile === !0 && lr(), o = n[0];
|
|
2607
2598
|
if (r.appendChild(Mt(o, e, !0, { uniformMobileLayout: i })), n.length > 1) {
|
|
2608
2599
|
const s = document.createElement("div");
|
|
2609
2600
|
s.className = "gengage-chat-ai-top-picks-rest", i && s.classList.add("gengage-chat-ai-top-picks-rest--uniform-mobile"), s.dataset.gengagePart = "ai-top-picks-rest";
|
|
@@ -2615,7 +2606,7 @@ function fr(t, e) {
|
|
|
2615
2606
|
}
|
|
2616
2607
|
return a.appendChild(r), a;
|
|
2617
2608
|
}
|
|
2618
|
-
function
|
|
2609
|
+
function fr(t) {
|
|
2619
2610
|
const e = document.createElement("div");
|
|
2620
2611
|
e.className = "gengage-chat-ai-toppick-labels", e.dataset.gengagePart = "ai-top-pick-labels";
|
|
2621
2612
|
for (const a of t) {
|
|
@@ -2624,7 +2615,7 @@ function br(t) {
|
|
|
2624
2615
|
}
|
|
2625
2616
|
return e;
|
|
2626
2617
|
}
|
|
2627
|
-
function
|
|
2618
|
+
function br(t, e) {
|
|
2628
2619
|
const a = document.createElement("div");
|
|
2629
2620
|
a.className = "gengage-chat-grounding-review gds-evidence-card", a.dataset.gengagePart = "grounding-review-card";
|
|
2630
2621
|
const n = t.props ?? {}, r = n.title, i = n.reviewCount, o = n.action, s = e.i18n?.groundingReviewCta ?? "Read Reviews", c = document.createElement("span");
|
|
@@ -2650,7 +2641,7 @@ function vr(t, e) {
|
|
|
2650
2641
|
(x.key === "Enter" || x.key === " ") && (x.preventDefault(), e.onAction(o));
|
|
2651
2642
|
})), a;
|
|
2652
2643
|
}
|
|
2653
|
-
function
|
|
2644
|
+
function vr(t) {
|
|
2654
2645
|
const e = t.action.type;
|
|
2655
2646
|
if (e !== "findSimilar") return t.action;
|
|
2656
2647
|
const a = t.action.payload && typeof t.action.payload == "object" ? t.action.payload : null, n = typeof a?.input == "string" && a.input.trim() || typeof a?.text == "string" && a.text.trim() || t.name.trim();
|
|
@@ -2666,7 +2657,7 @@ function xr(t) {
|
|
|
2666
2657
|
payload: Xt(r)
|
|
2667
2658
|
};
|
|
2668
2659
|
}
|
|
2669
|
-
function
|
|
2660
|
+
function xr(t, e) {
|
|
2670
2661
|
const a = document.createElement("div");
|
|
2671
2662
|
a.className = "gengage-chat-grouping-cards", a.dataset.gengagePart = "ai-grouping-cards";
|
|
2672
2663
|
const n = t.props?.entries ?? [];
|
|
@@ -2680,7 +2671,7 @@ function yr(t, e) {
|
|
|
2680
2671
|
o.className = "gengage-chat-grouping-cards-scroll", o.dataset.gengagePart = "ai-grouping-cards-scroll";
|
|
2681
2672
|
for (const s of n) {
|
|
2682
2673
|
const c = document.createElement("div");
|
|
2683
|
-
if (c.className = "gengage-chat-grouping-card gds-card", c.dataset.gengagePart = "ai-grouping-card", c.classList.add("gds-clickable"), c.addEventListener("click", () => e.onAction(
|
|
2674
|
+
if (c.className = "gengage-chat-grouping-card gds-card", c.dataset.gengagePart = "ai-grouping-card", c.classList.add("gds-clickable"), c.addEventListener("click", () => e.onAction(vr(s))), s.image && Ce(s.image)) {
|
|
2684
2675
|
const h = document.createElement("img");
|
|
2685
2676
|
h.className = "gengage-chat-grouping-card-img", h.dataset.gengagePart = "ai-grouping-card-image", h.draggable = !1, h.src = s.image, h.alt = s.name, h.width = 64, h.height = 64, c.appendChild(h);
|
|
2686
2677
|
}
|
|
@@ -2702,7 +2693,7 @@ function yr(t, e) {
|
|
|
2702
2693
|
}
|
|
2703
2694
|
return a.appendChild(o), a;
|
|
2704
2695
|
}
|
|
2705
|
-
function
|
|
2696
|
+
function yr(t, e) {
|
|
2706
2697
|
const a = document.createElement("div");
|
|
2707
2698
|
a.className = "gengage-chat-suggested-search-cards", a.dataset.gengagePart = "ai-suggested-search-cards";
|
|
2708
2699
|
const n = t.props?.entries ?? [];
|
|
@@ -2720,7 +2711,7 @@ function wr(t, e) {
|
|
|
2720
2711
|
}
|
|
2721
2712
|
return a;
|
|
2722
2713
|
}
|
|
2723
|
-
function
|
|
2714
|
+
function wr(t, e) {
|
|
2724
2715
|
const a = document.createElement("div");
|
|
2725
2716
|
a.className = "gengage-chat-inline-question-buttons", a.dataset.gengagePart = "inline-question-buttons";
|
|
2726
2717
|
const n = t.props?.buttons ?? [];
|
|
@@ -2768,7 +2759,7 @@ function la(t, e) {
|
|
|
2768
2759
|
}
|
|
2769
2760
|
return i;
|
|
2770
2761
|
}
|
|
2771
|
-
function
|
|
2762
|
+
function _r(t) {
|
|
2772
2763
|
const e = document.createElement("div");
|
|
2773
2764
|
e.className = "gengage-chat-pros-cons gds-card-soft", e.dataset.gengagePart = "pros-cons";
|
|
2774
2765
|
const a = t.props?.productName;
|
|
@@ -2805,8 +2796,8 @@ function kr(t) {
|
|
|
2805
2796
|
}
|
|
2806
2797
|
return e;
|
|
2807
2798
|
}
|
|
2808
|
-
var
|
|
2809
|
-
function
|
|
2799
|
+
var kr = 4, Cr = 0;
|
|
2800
|
+
function Sr(t) {
|
|
2810
2801
|
const e = [], a = /* @__PURE__ */ new Set(), n = (r, i) => {
|
|
2811
2802
|
if (typeof r != "string") return;
|
|
2812
2803
|
const o = r.trim();
|
|
@@ -2819,19 +2810,19 @@ function Er(t) {
|
|
|
2819
2810
|
};
|
|
2820
2811
|
n(t.highlight, !0);
|
|
2821
2812
|
for (const r of t.labels ?? []) n(r, !1);
|
|
2822
|
-
return e.slice(0,
|
|
2813
|
+
return e.slice(0, kr);
|
|
2823
2814
|
}
|
|
2824
|
-
function
|
|
2825
|
-
const e =
|
|
2815
|
+
function Er(t) {
|
|
2816
|
+
const e = Sr(t), a = typeof t.description == "string" ? t.description.trim() : "";
|
|
2826
2817
|
if (!a && e.length === 0) return null;
|
|
2827
2818
|
const n = document.createElement("div");
|
|
2828
|
-
if (n.className = "gengage-chat-categories-group-summary", n.dataset.gengagePart = "categories-group-summary", n.appendChild(
|
|
2819
|
+
if (n.className = "gengage-chat-categories-group-summary", n.dataset.gengagePart = "categories-group-summary", n.appendChild(Pr(t)), e.length > 0 && n.appendChild(Lr(e)), a) {
|
|
2829
2820
|
const r = document.createElement("p");
|
|
2830
2821
|
r.className = "gengage-chat-categories-group-reason", r.dataset.gengagePart = "categories-group-reason", r.textContent = a, n.appendChild(r);
|
|
2831
2822
|
}
|
|
2832
2823
|
return n;
|
|
2833
2824
|
}
|
|
2834
|
-
function
|
|
2825
|
+
function Pr(t) {
|
|
2835
2826
|
const e = document.createElement("div");
|
|
2836
2827
|
if (e.className = "gengage-chat-categories-group-selection", e.dataset.gengagePart = "categories-group-selection", t.image && Ce(t.image)) {
|
|
2837
2828
|
const n = document.createElement("img");
|
|
@@ -2840,7 +2831,7 @@ function Lr(t) {
|
|
|
2840
2831
|
const a = document.createElement("div");
|
|
2841
2832
|
return a.className = "gengage-chat-categories-group-selection-title", a.textContent = t.groupName, e.appendChild(a), e;
|
|
2842
2833
|
}
|
|
2843
|
-
function
|
|
2834
|
+
function Lr(t) {
|
|
2844
2835
|
const e = document.createElement("div");
|
|
2845
2836
|
e.className = "gengage-chat-categories-group-chips", e.dataset.gengagePart = "categories-group-chips";
|
|
2846
2837
|
for (const a of t) {
|
|
@@ -2849,8 +2840,8 @@ function Tr(t) {
|
|
|
2849
2840
|
}
|
|
2850
2841
|
return e;
|
|
2851
2842
|
}
|
|
2852
|
-
function
|
|
2853
|
-
const a = t.props?.groups ?? [], n = t.props?.filterTags ?? [], r = `gengage-cat-${
|
|
2843
|
+
function Tr(t, e) {
|
|
2844
|
+
const a = t.props?.groups ?? [], n = t.props?.filterTags ?? [], r = `gengage-cat-${Cr++}`, i = document.createElement("div");
|
|
2854
2845
|
if (i.className = "gengage-chat-categories", i.dataset.gengagePart = "categories-container", a.length === 0) return i;
|
|
2855
2846
|
const o = document.createElement("div");
|
|
2856
2847
|
o.className = "gengage-chat-categories-tabs gds-toolbar", o.dataset.gengagePart = "categories-tab-bar", o.setAttribute("role", "tablist");
|
|
@@ -2873,12 +2864,12 @@ function Ar(t, e) {
|
|
|
2873
2864
|
}), s.push(x), o.appendChild(x);
|
|
2874
2865
|
const u = document.createElement("div");
|
|
2875
2866
|
u.className = "gengage-chat-categories-panel", u.dataset.gengagePart = "categories-panel", u.id = m, u.setAttribute("role", "tabpanel"), u.setAttribute("aria-labelledby", h), p !== 0 && (u.style.display = "none");
|
|
2876
|
-
const d =
|
|
2867
|
+
const d = Er(g);
|
|
2877
2868
|
d && u.appendChild(d);
|
|
2878
2869
|
const _ = document.createElement("div");
|
|
2879
2870
|
_.className = "gengage-chat-categories-grid", _.dataset.gengagePart = "categories-grid";
|
|
2880
2871
|
for (const y of g.products) {
|
|
2881
|
-
const b =
|
|
2872
|
+
const b = Ar(y, e);
|
|
2882
2873
|
_.appendChild(b);
|
|
2883
2874
|
}
|
|
2884
2875
|
u.appendChild(_), c.push(u);
|
|
@@ -2898,7 +2889,7 @@ function Ar(t, e) {
|
|
|
2898
2889
|
}
|
|
2899
2890
|
return i;
|
|
2900
2891
|
}
|
|
2901
|
-
function
|
|
2892
|
+
function Ar(t, e) {
|
|
2902
2893
|
const a = document.createElement("div");
|
|
2903
2894
|
if (a.className = "gengage-chat-product-card gds-card gds-product-card gds-card-interactive", a.dataset.gengagePart = "categories-product-card", t.imageUrl && Ce(t.imageUrl)) {
|
|
2904
2895
|
const i = document.createElement("img");
|
|
@@ -2923,7 +2914,7 @@ function Ir(t, e) {
|
|
|
2923
2914
|
e.onProductSelect?.(t);
|
|
2924
2915
|
})), a;
|
|
2925
2916
|
}
|
|
2926
|
-
function
|
|
2917
|
+
function Ir(t, e) {
|
|
2927
2918
|
const a = document.createElement("div");
|
|
2928
2919
|
a.className = "gengage-chat-handoff-notice gds-evidence-card gds-evidence-card-warning", a.dataset.gengagePart = "handoff-notice", a.setAttribute("role", "alert");
|
|
2929
2920
|
const n = document.createElement("span");
|
|
@@ -2937,11 +2928,11 @@ function Mr(t, e) {
|
|
|
2937
2928
|
}
|
|
2938
2929
|
return a;
|
|
2939
2930
|
}
|
|
2940
|
-
var
|
|
2931
|
+
var Mr = "frontend_restore_panel_message";
|
|
2941
2932
|
function Te(t) {
|
|
2942
2933
|
return typeof t == "string" ? t : "";
|
|
2943
2934
|
}
|
|
2944
|
-
function
|
|
2935
|
+
function Nr(t) {
|
|
2945
2936
|
return Array.isArray(t) ? t.map((e) => {
|
|
2946
2937
|
if (!e || typeof e != "object") return null;
|
|
2947
2938
|
const a = e;
|
|
@@ -2951,14 +2942,14 @@ function Br(t) {
|
|
|
2951
2942
|
};
|
|
2952
2943
|
}).filter((e) => e !== null) : [];
|
|
2953
2944
|
}
|
|
2954
|
-
function
|
|
2955
|
-
const a = t.props ?? {}, n = Te(a.eyebrow), r = Te(a.title), i = a.showTitle !== !1, o = Te(a.ctaLabel) || e.i18n?.showPanelAriaLabel || "Show Results", s = Te(a.panelMessageId), c = Te(a.highlightMessageId), l = Te(a.threadId), p =
|
|
2945
|
+
function Br(t, e) {
|
|
2946
|
+
const a = t.props ?? {}, n = Te(a.eyebrow), r = Te(a.title), i = a.showTitle !== !1, o = Te(a.ctaLabel) || e.i18n?.showPanelAriaLabel || "Show Results", s = Te(a.panelMessageId), c = Te(a.highlightMessageId), l = Te(a.threadId), p = Nr(a.products).slice(0, 3), g = document.createElement("button");
|
|
2956
2947
|
g.type = "button", g.className = "gengage-chat-panel-restore-card gds-card", !n && !i && g.classList.add("gengage-chat-panel-restore-card--minimal"), g.dataset.gengagePart = "panel-restore-card";
|
|
2957
2948
|
const h = r || n || o;
|
|
2958
2949
|
g.setAttribute("aria-label", r ? `${h} - ${o}` : h);
|
|
2959
2950
|
const m = {
|
|
2960
2951
|
title: r,
|
|
2961
|
-
type:
|
|
2952
|
+
type: Mr,
|
|
2962
2953
|
payload: {
|
|
2963
2954
|
panelMessageId: s,
|
|
2964
2955
|
highlightMessageId: c,
|
|
@@ -2991,7 +2982,7 @@ function zr(t, e) {
|
|
|
2991
2982
|
const x = document.createElement("div");
|
|
2992
2983
|
return x.className = "gengage-chat-panel-restore-card__cta", x.textContent = o, g.appendChild(x), g;
|
|
2993
2984
|
}
|
|
2994
|
-
function
|
|
2985
|
+
function zr(t, e) {
|
|
2995
2986
|
const a = t.props?.product ?? t.props, n = document.createElement("div");
|
|
2996
2987
|
if (n.className = "gengage-chat-product-summary gds-card", n.dataset.gengagePart = "product-summary-card", !a) return n;
|
|
2997
2988
|
n.classList.add("gds-clickable"), n.addEventListener("click", (d) => {
|
|
@@ -3089,7 +3080,7 @@ function Rr(t, e) {
|
|
|
3089
3080
|
}
|
|
3090
3081
|
return n;
|
|
3091
3082
|
}
|
|
3092
|
-
var
|
|
3083
|
+
var Rr = {
|
|
3093
3084
|
PhotoAnalysisCard: ({ element: t, context: e }) => Pn(t, e),
|
|
3094
3085
|
BeautyPhotoStep: ({ element: t, context: e }) => na(t, e)
|
|
3095
3086
|
};
|
|
@@ -3097,13 +3088,13 @@ function Ve() {
|
|
|
3097
3088
|
return window.innerWidth < 768;
|
|
3098
3089
|
}
|
|
3099
3090
|
var ga = {
|
|
3100
|
-
ActionButtons: ({ element: t, context: e }) =>
|
|
3091
|
+
ActionButtons: ({ element: t, context: e }) => Dr(t, e),
|
|
3101
3092
|
ActionButton: ({ element: t, context: e }) => Ur(t, e),
|
|
3102
|
-
InlineQuestionButtons: ({ element: t, context: e }) =>
|
|
3093
|
+
InlineQuestionButtons: ({ element: t, context: e }) => wr(t, e),
|
|
3103
3094
|
ProductCard: ({ element: t, context: e }) => pt(t, e),
|
|
3104
|
-
ProductDetailsPanel: ({ element: t, context: e }) =>
|
|
3105
|
-
ProductGrid: ({ element: t, spec: e, renderElement: a, context: n }) =>
|
|
3106
|
-
ReviewHighlights: ({ element: t, context: e }) => e.hideUserReviews === !0 ? null :
|
|
3095
|
+
ProductDetailsPanel: ({ element: t, context: e }) => si(t, e),
|
|
3096
|
+
ProductGrid: ({ element: t, spec: e, renderElement: a, context: n }) => mi(t, e, a, n),
|
|
3097
|
+
ReviewHighlights: ({ element: t, context: e }) => e.hideUserReviews === !0 ? null : sr(t, {
|
|
3107
3098
|
emptyReviewsMessage: e.i18n?.emptyReviewsMessage,
|
|
3108
3099
|
reviewFilterPositive: e.i18n?.reviewFilterPositive,
|
|
3109
3100
|
reviewFilterNegative: e.i18n?.reviewFilterNegative,
|
|
@@ -3111,18 +3102,18 @@ var ga = {
|
|
|
3111
3102
|
reviewCustomersMentionPlural: e.i18n?.reviewCustomersMentionPlural,
|
|
3112
3103
|
reviewSubjectsHeading: e.i18n?.reviewSubjectsHeading
|
|
3113
3104
|
}),
|
|
3114
|
-
ComparisonTable: ({ element: t, context: e }) =>
|
|
3115
|
-
AITopPicks: ({ element: t, context: e }) =>
|
|
3116
|
-
GroundingReviewCard: ({ element: t, context: e }) => e.hideUserReviews === !0 ? null :
|
|
3117
|
-
AIGroupingCards: ({ element: t, context: e }) =>
|
|
3118
|
-
AISuggestedSearchCards: ({ element: t, context: e }) =>
|
|
3119
|
-
ProsAndCons: ({ element: t }) =>
|
|
3120
|
-
CategoriesContainer: ({ element: t, context: e }) =>
|
|
3121
|
-
HandoffNotice: ({ element: t, context: e }) =>
|
|
3122
|
-
PanelRestoreCard: ({ element: t, context: e }) =>
|
|
3123
|
-
ProductSummaryCard: ({ element: t, context: e }) =>
|
|
3124
|
-
Divider: ({ element: t }) =>
|
|
3125
|
-
...
|
|
3105
|
+
ComparisonTable: ({ element: t, context: e }) => vi(t, e),
|
|
3106
|
+
AITopPicks: ({ element: t, context: e }) => mr(t, e),
|
|
3107
|
+
GroundingReviewCard: ({ element: t, context: e }) => e.hideUserReviews === !0 ? null : br(t, e),
|
|
3108
|
+
AIGroupingCards: ({ element: t, context: e }) => xr(t, e),
|
|
3109
|
+
AISuggestedSearchCards: ({ element: t, context: e }) => yr(t, e),
|
|
3110
|
+
ProsAndCons: ({ element: t }) => _r(t),
|
|
3111
|
+
CategoriesContainer: ({ element: t, context: e }) => Tr(t, e),
|
|
3112
|
+
HandoffNotice: ({ element: t, context: e }) => Ir(t, e),
|
|
3113
|
+
PanelRestoreCard: ({ element: t, context: e }) => Br(t, e),
|
|
3114
|
+
ProductSummaryCard: ({ element: t, context: e }) => zr(t, e),
|
|
3115
|
+
Divider: ({ element: t }) => xi(t),
|
|
3116
|
+
...Rr
|
|
3126
3117
|
}, da = ({ element: t, renderElement: e }) => {
|
|
3127
3118
|
if (!t.children || t.children.length === 0) return null;
|
|
3128
3119
|
const a = document.createElement("div");
|
|
@@ -3132,10 +3123,10 @@ var ga = {
|
|
|
3132
3123
|
}
|
|
3133
3124
|
return a;
|
|
3134
3125
|
};
|
|
3135
|
-
function
|
|
3126
|
+
function Hr() {
|
|
3136
3127
|
return { ...ga };
|
|
3137
3128
|
}
|
|
3138
|
-
function
|
|
3129
|
+
function Fr(t, e, a = ga, n = da) {
|
|
3139
3130
|
return Ea({
|
|
3140
3131
|
spec: t,
|
|
3141
3132
|
context: e,
|
|
@@ -3144,7 +3135,7 @@ function Dr(t, e, a = ga, n = da) {
|
|
|
3144
3135
|
unknownRenderer: n
|
|
3145
3136
|
});
|
|
3146
3137
|
}
|
|
3147
|
-
function
|
|
3138
|
+
function Dr(t, e) {
|
|
3148
3139
|
const a = document.createElement("div");
|
|
3149
3140
|
a.className = "gengage-chat-action-buttons";
|
|
3150
3141
|
const n = t.props?.buttons;
|
|
@@ -3278,17 +3269,17 @@ function pt(t, e) {
|
|
|
3278
3269
|
if (g && he(g)) {
|
|
3279
3270
|
const k = document.createElement("div");
|
|
3280
3271
|
k.className = "gengage-chat-product-card-img-wrapper";
|
|
3281
|
-
const
|
|
3282
|
-
|
|
3272
|
+
const O = document.createElement("img");
|
|
3273
|
+
O.className = "gengage-chat-product-card-img", O.loading = "lazy", de(O, "src", g);
|
|
3283
3274
|
const B = n.name;
|
|
3284
|
-
B && (
|
|
3275
|
+
B && (O.alt = B), xe(O), k.appendChild(O);
|
|
3285
3276
|
const q = n.discountPercent;
|
|
3286
3277
|
if (!e.hideProductDiscountBadge && typeof q == "number" && q > 0) {
|
|
3287
3278
|
const f = document.createElement("span");
|
|
3288
3279
|
f.className = "gengage-chat-product-card-discount-badge", f.textContent = `%${ta(q)}`, k.appendChild(f);
|
|
3289
3280
|
}
|
|
3290
|
-
const
|
|
3291
|
-
|
|
3281
|
+
const U = document.createElement("div");
|
|
3282
|
+
U.className = "gengage-chat-product-card-img-actions";
|
|
3292
3283
|
const ne = n.sku;
|
|
3293
3284
|
if (ne && e.onFavoriteToggle) {
|
|
3294
3285
|
const f = document.createElement("button");
|
|
@@ -3298,7 +3289,7 @@ function pt(t, e) {
|
|
|
3298
3289
|
P.stopPropagation(), f.classList.toggle("gengage-chat-favorite-btn--active");
|
|
3299
3290
|
const $ = f.querySelector("svg");
|
|
3300
3291
|
$ && $.setAttribute("fill", f.classList.contains("gengage-chat-favorite-btn--active") ? "currentColor" : "none"), e.onFavoriteToggle(ne, n);
|
|
3301
|
-
}),
|
|
3292
|
+
}), U.appendChild(f);
|
|
3302
3293
|
}
|
|
3303
3294
|
const W = n.sku, K = e.i18n?.findSimilarLabel ?? "Find Similar";
|
|
3304
3295
|
if (W) {
|
|
@@ -3311,9 +3302,9 @@ function pt(t, e) {
|
|
|
3311
3302
|
type: "findSimilar",
|
|
3312
3303
|
payload: { sku: W }
|
|
3313
3304
|
});
|
|
3314
|
-
}),
|
|
3305
|
+
}), U.appendChild(f);
|
|
3315
3306
|
}
|
|
3316
|
-
|
|
3307
|
+
U.childElementCount > 0 && k.appendChild(U), a.appendChild(k);
|
|
3317
3308
|
}
|
|
3318
3309
|
const h = document.createElement("div");
|
|
3319
3310
|
h.className = "gengage-chat-product-card-body";
|
|
@@ -3339,12 +3330,12 @@ function pt(t, e) {
|
|
|
3339
3330
|
if ((F.childElementCount > 0 || _ === !0) && N.appendChild(X), T) {
|
|
3340
3331
|
const k = document.createElement("div");
|
|
3341
3332
|
k.className = "gengage-chat-product-card-rating gengage-chat-product-card-rating-compact";
|
|
3342
|
-
const
|
|
3333
|
+
const O = ea(x), B = [`${O.toFixed(1)}`, "out of 5 stars"];
|
|
3343
3334
|
typeof v == "number" && Number.isFinite(v) && B.push(`(${v} reviews)`), k.setAttribute("aria-label", B.join(" "));
|
|
3344
3335
|
const q = document.createElement("span");
|
|
3345
3336
|
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>';
|
|
3346
|
-
const
|
|
3347
|
-
|
|
3337
|
+
const U = document.createElement("span");
|
|
3338
|
+
U.className = "gengage-chat-product-card-rating-compact-value", U.textContent = O.toFixed(1), k.appendChild(q), k.appendChild(U), N.appendChild(k);
|
|
3348
3339
|
}
|
|
3349
3340
|
if (N.childElementCount === 0 && (N.classList.add("gengage-chat-product-card-meta-row--empty"), N.setAttribute("aria-hidden", "true")), h.appendChild(N), o) {
|
|
3350
3341
|
const k = document.createElement("div");
|
|
@@ -3360,8 +3351,8 @@ function pt(t, e) {
|
|
|
3360
3351
|
if (D) {
|
|
3361
3352
|
const k = document.createElement("div");
|
|
3362
3353
|
k.className = "gengage-chat-product-card-buy-footer";
|
|
3363
|
-
const
|
|
3364
|
-
|
|
3354
|
+
const O = document.createElement("button");
|
|
3355
|
+
O.type = "button", O.className = "gengage-chat-product-card-buy-trigger", O.textContent = z, O.addEventListener("click", (B) => {
|
|
3365
3356
|
B.stopPropagation(), e.onAction({
|
|
3366
3357
|
title: e.i18n?.addToCartButton ?? z,
|
|
3367
3358
|
type: "addToCart",
|
|
@@ -3371,24 +3362,24 @@ function pt(t, e) {
|
|
|
3371
3362
|
quantity: 1
|
|
3372
3363
|
}
|
|
3373
3364
|
});
|
|
3374
|
-
}), k.appendChild(
|
|
3365
|
+
}), k.appendChild(O), a.appendChild(k);
|
|
3375
3366
|
} else if (i) {
|
|
3376
3367
|
const k = document.createElement("button");
|
|
3377
|
-
k.className = "gengage-chat-product-card-cta", k.type = "button", k.textContent = i.type === "launchSingleProduct" ? z : i.title || z, k.addEventListener("click", (
|
|
3368
|
+
k.className = "gengage-chat-product-card-cta", k.type = "button", k.textContent = i.type === "launchSingleProduct" ? z : i.title || z, k.addEventListener("click", (O) => {
|
|
3378
3369
|
if (a.parentElement?.classList.contains("gengage-chat-comparison-select-wrapper")) {
|
|
3379
|
-
|
|
3370
|
+
O.stopPropagation();
|
|
3380
3371
|
return;
|
|
3381
3372
|
}
|
|
3382
3373
|
p() || e.onAction(i);
|
|
3383
3374
|
}), a.appendChild(k);
|
|
3384
3375
|
} else if (l) {
|
|
3385
3376
|
const k = document.createElement("a");
|
|
3386
|
-
k.className = "gengage-chat-product-card-cta", de(k, "href", l), de(k, "target", "_blank"), de(k, "rel", "noopener noreferrer"), k.textContent = z, k.addEventListener("click", (
|
|
3377
|
+
k.className = "gengage-chat-product-card-cta", de(k, "href", l), de(k, "target", "_blank"), de(k, "rel", "noopener noreferrer"), k.textContent = z, k.addEventListener("click", (O) => {
|
|
3387
3378
|
if (a.parentElement?.classList.contains("gengage-chat-comparison-select-wrapper")) {
|
|
3388
|
-
|
|
3379
|
+
O.preventDefault(), O.stopPropagation();
|
|
3389
3380
|
return;
|
|
3390
3381
|
}
|
|
3391
|
-
e.onProductClick && c && (
|
|
3382
|
+
e.onProductClick && c && (O.preventDefault(), e.onProductClick({
|
|
3392
3383
|
sku: c,
|
|
3393
3384
|
url: l,
|
|
3394
3385
|
...o ? { name: o } : {}
|
|
@@ -3398,22 +3389,22 @@ function pt(t, e) {
|
|
|
3398
3389
|
if (e.comparisonSelectMode && c && e.onToggleComparisonSku) {
|
|
3399
3390
|
const k = document.createElement("div");
|
|
3400
3391
|
k.className = "gengage-chat-comparison-select-wrapper";
|
|
3401
|
-
const
|
|
3402
|
-
|
|
3392
|
+
const O = e.comparisonSelectedSkus?.includes(c) ?? !1;
|
|
3393
|
+
O && k.classList.add("gengage-chat-comparison-select-wrapper--selected");
|
|
3403
3394
|
const B = n.name ?? c, q = e.i18n?.comparisonSelectCardHint ?? "Tap anywhere on the card to add or remove it from comparison.";
|
|
3404
3395
|
k.setAttribute("role", "group"), k.setAttribute("aria-label", `${String(B)}. ${q}`);
|
|
3405
|
-
const
|
|
3406
|
-
|
|
3396
|
+
const U = document.createElement("button");
|
|
3397
|
+
U.type = "button", U.className = "gengage-chat-comparison-checkbox", U.dataset.selected = O ? "true" : "false", U.setAttribute("aria-pressed", O ? "true" : "false");
|
|
3407
3398
|
const ne = document.createElement("span");
|
|
3408
|
-
ne.className = "gengage-chat-comparison-checkbox-icon", ne.innerHTML =
|
|
3399
|
+
ne.className = "gengage-chat-comparison-checkbox-icon", ne.innerHTML = O ? '<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>';
|
|
3409
3400
|
const W = document.createElement("span");
|
|
3410
|
-
W.className = "gengage-chat-comparison-checkbox-label", W.textContent =
|
|
3401
|
+
W.className = "gengage-chat-comparison-checkbox-label", W.textContent = O ? e.i18n?.comparisonSelectedLabel ?? "Selected" : e.i18n?.comparisonSelectLabel ?? "Select to compare", U.appendChild(ne), U.appendChild(W), U.addEventListener("click", (f) => {
|
|
3411
3402
|
f.stopPropagation(), e.onToggleComparisonSku?.(c);
|
|
3412
3403
|
});
|
|
3413
3404
|
const K = document.createElement("div");
|
|
3414
3405
|
return K.className = "gengage-chat-comparison-card-hint", K.setAttribute("aria-hidden", "true"), K.textContent = q, k.addEventListener("click", (f) => {
|
|
3415
3406
|
f.target.closest(".gengage-chat-comparison-checkbox") || (f.stopPropagation(), e.onToggleComparisonSku?.(c));
|
|
3416
|
-
}), k.appendChild(
|
|
3407
|
+
}), k.appendChild(U), k.appendChild(K), k.appendChild(a), k;
|
|
3417
3408
|
}
|
|
3418
3409
|
return a;
|
|
3419
3410
|
}
|
|
@@ -3423,22 +3414,22 @@ var pa = /* @__PURE__ */ new Set([
|
|
|
3423
3414
|
"renk",
|
|
3424
3415
|
"renk kodu",
|
|
3425
3416
|
"color code"
|
|
3426
|
-
]),
|
|
3417
|
+
]), Or = /* @__PURE__ */ new Set([
|
|
3427
3418
|
"size",
|
|
3428
3419
|
"beden",
|
|
3429
3420
|
"boyut"
|
|
3430
|
-
]),
|
|
3421
|
+
]), jr = /* @__PURE__ */ new Set([
|
|
3431
3422
|
"finish",
|
|
3432
3423
|
"bitiş",
|
|
3433
3424
|
"bitişi"
|
|
3434
|
-
]),
|
|
3425
|
+
]), qr = [
|
|
3435
3426
|
"variants",
|
|
3436
3427
|
"variantOptions",
|
|
3437
3428
|
"variant_options",
|
|
3438
3429
|
"productVariants",
|
|
3439
3430
|
"product_variants",
|
|
3440
3431
|
"options"
|
|
3441
|
-
],
|
|
3432
|
+
], $r = /* @__PURE__ */ new Set([
|
|
3442
3433
|
"H2",
|
|
3443
3434
|
"H3",
|
|
3444
3435
|
"H4",
|
|
@@ -3451,7 +3442,7 @@ var pa = /* @__PURE__ */ new Set([
|
|
|
3451
3442
|
"B",
|
|
3452
3443
|
"EM",
|
|
3453
3444
|
"I"
|
|
3454
|
-
]),
|
|
3445
|
+
]), Vr = /* @__PURE__ */ new Set([
|
|
3455
3446
|
"SCRIPT",
|
|
3456
3447
|
"STYLE",
|
|
3457
3448
|
"NOSCRIPT",
|
|
@@ -3484,26 +3475,26 @@ function Ge(t, ...e) {
|
|
|
3484
3475
|
if (typeof n == "boolean") return n;
|
|
3485
3476
|
}
|
|
3486
3477
|
}
|
|
3487
|
-
function
|
|
3478
|
+
function Gr(t, ...e) {
|
|
3488
3479
|
for (const a of e) {
|
|
3489
3480
|
const n = t[a];
|
|
3490
3481
|
if (n && typeof n == "object" && !Array.isArray(n)) return n;
|
|
3491
3482
|
}
|
|
3492
3483
|
}
|
|
3493
|
-
function
|
|
3484
|
+
function Wr(t) {
|
|
3494
3485
|
return Array.isArray(t) ? t.filter((e) => typeof e == "string" && e.trim().length > 0) : [];
|
|
3495
3486
|
}
|
|
3496
|
-
function
|
|
3497
|
-
const e = [...
|
|
3487
|
+
function Kr(t) {
|
|
3488
|
+
const e = [...Wr(t.images), be(t, "imageUrl", "image_url", "image")].filter((a) => !!a && he(a));
|
|
3498
3489
|
return Array.from(new Set(e));
|
|
3499
3490
|
}
|
|
3500
|
-
function
|
|
3491
|
+
function Yr(t) {
|
|
3501
3492
|
return typeof DOMParser < "u" ? (new DOMParser().parseFromString(t, "text/html").body.textContent ?? "").replace(/\s+/g, " ").trim() : t.replace(/<[^>]*>/g, " ").replace(/\s+/g, " ").trim();
|
|
3502
3493
|
}
|
|
3503
|
-
function
|
|
3494
|
+
function Zr(t) {
|
|
3504
3495
|
const e = be(t, "description_html", "descriptionHtml");
|
|
3505
3496
|
if (e) {
|
|
3506
|
-
const n =
|
|
3497
|
+
const n = Yr(e);
|
|
3507
3498
|
if (n) return {
|
|
3508
3499
|
text: n,
|
|
3509
3500
|
html: e
|
|
@@ -3532,7 +3523,7 @@ function ha(t) {
|
|
|
3532
3523
|
const e = Ye(t.features);
|
|
3533
3524
|
return e.length > 0 ? e : Ye(t.specifications);
|
|
3534
3525
|
}
|
|
3535
|
-
function
|
|
3526
|
+
function Xr(t) {
|
|
3536
3527
|
const e = t.specifications, a = Ye(e);
|
|
3537
3528
|
if (a.length > 0) return Array.isArray(e) ? a : Object.fromEntries(a.map((r) => [r.key, r.value]));
|
|
3538
3529
|
const n = Ye(t.features);
|
|
@@ -3551,7 +3542,7 @@ function ma(t) {
|
|
|
3551
3542
|
const e = Ee(t, "type", "attribute", "option_name", "attribute_name");
|
|
3552
3543
|
return e || (Ee(t, "value") ? Ee(t, "name", "variant_name") : void 0);
|
|
3553
3544
|
}
|
|
3554
|
-
function
|
|
3545
|
+
function Qr(t) {
|
|
3555
3546
|
const e = ma(t)?.toLowerCase();
|
|
3556
3547
|
return !!(be(t, "color", "colour", "color_hex", "hex", "swatch", "swatchColor") || e && pa.has(e));
|
|
3557
3548
|
}
|
|
@@ -3561,63 +3552,63 @@ function Rt(t) {
|
|
|
3561
3552
|
if (!(!e || e.includes(";")) && (typeof CSS < "u" && CSS.supports?.("color", e) || /^#(?:[0-9a-f]{3}|[0-9a-f]{6}|[0-9a-f]{8})$/i.test(e)))
|
|
3562
3553
|
return e;
|
|
3563
3554
|
}
|
|
3564
|
-
function
|
|
3555
|
+
function Jr(t) {
|
|
3565
3556
|
const e = Rt(Ee(t, "swatchColor", "swatch", "color_hex", "hex", "color", "colour"));
|
|
3566
3557
|
if (e) return e;
|
|
3567
|
-
if (
|
|
3558
|
+
if (Qr(t))
|
|
3568
3559
|
return Rt(ua(t));
|
|
3569
3560
|
}
|
|
3570
|
-
function
|
|
3561
|
+
function ei(t) {
|
|
3571
3562
|
return Ee(t, "image", "imageUrl", "image_url", "swatchImage", "swatch_image");
|
|
3572
3563
|
}
|
|
3573
|
-
function
|
|
3564
|
+
function ti(t) {
|
|
3574
3565
|
return zt(t, "price_discounted", "priceDiscounted") ?? Ee(t, "price_discounted", "priceDiscounted") ?? zt(t, "price") ?? Ee(t, "price");
|
|
3575
3566
|
}
|
|
3576
|
-
function
|
|
3567
|
+
function ai(t) {
|
|
3577
3568
|
const e = t.trim().toLowerCase();
|
|
3578
|
-
return pa.has(e) ||
|
|
3569
|
+
return pa.has(e) || Or.has(e) || jr.has(e);
|
|
3579
3570
|
}
|
|
3580
|
-
function
|
|
3571
|
+
function ni(t) {
|
|
3581
3572
|
const e = t.trim().toLowerCase();
|
|
3582
3573
|
return e === "renk kodu" ? "Renk" : e === "color code" ? "Color" : t.trim();
|
|
3583
3574
|
}
|
|
3584
|
-
function
|
|
3585
|
-
for (const e of
|
|
3575
|
+
function ri(t) {
|
|
3576
|
+
for (const e of qr) {
|
|
3586
3577
|
const a = t[e];
|
|
3587
3578
|
if (!Array.isArray(a)) continue;
|
|
3588
3579
|
const n = a.filter((r) => !!r && typeof r == "object" && !Array.isArray(r));
|
|
3589
3580
|
if (n.length > 0) return n;
|
|
3590
3581
|
}
|
|
3591
3582
|
}
|
|
3592
|
-
function
|
|
3593
|
-
const e =
|
|
3583
|
+
function ii(t) {
|
|
3584
|
+
const e = ri(t);
|
|
3594
3585
|
if (e) return e;
|
|
3595
3586
|
const a = be(t, "sku"), n = Ge(t, "inStock", "in_stock"), r = [], i = /* @__PURE__ */ new Set(), o = (c, l) => {
|
|
3596
|
-
if (!
|
|
3587
|
+
if (!ai(c) || typeof l != "string" && typeof l != "number" && typeof l != "boolean") return;
|
|
3597
3588
|
const p = String(l).trim();
|
|
3598
3589
|
if (!p) return;
|
|
3599
|
-
const g =
|
|
3590
|
+
const g = ni(c), h = `${g.toLowerCase()}:${p.toLowerCase()}`;
|
|
3600
3591
|
i.has(h) || (i.add(h), r.push({
|
|
3601
3592
|
name: g,
|
|
3602
3593
|
value: p,
|
|
3603
3594
|
sku: a,
|
|
3604
3595
|
inStock: n
|
|
3605
3596
|
}));
|
|
3606
|
-
}, s =
|
|
3597
|
+
}, s = Gr(t, "facetHits", "facet_hits");
|
|
3607
3598
|
if (s) for (const [c, l] of Object.entries(s)) o(c, l);
|
|
3608
3599
|
for (const c of ha(t)) o(c.key, c.value);
|
|
3609
3600
|
return r;
|
|
3610
3601
|
}
|
|
3611
|
-
function
|
|
3602
|
+
function oi(t, e) {
|
|
3612
3603
|
const a = Array.from(new Set(t.map(ma).filter((n) => !!n)));
|
|
3613
3604
|
return a.length === 1 ? `${t.length} ${a[0]}` : e.i18n?.variantsLabel ?? "Variants";
|
|
3614
3605
|
}
|
|
3615
|
-
function
|
|
3606
|
+
function si(t, e) {
|
|
3616
3607
|
const a = document.createElement("article");
|
|
3617
3608
|
a.className = "gengage-chat-product-details-panel";
|
|
3618
3609
|
const n = t.props?.product ?? t.props;
|
|
3619
3610
|
if (!n) return a;
|
|
3620
|
-
const r = be(n, "name"), i = be(n, "brand"), o = be(n, "sku"), s = be(n, "cartCode", "cart_code"), c = be(n, "price"), l = be(n, "originalPrice", "price_original"), p = Ge(n, "price_async"), g = He(e, n), h = $e(e, n), m = !!(l && c && l !== c), x = Ge(n, "inStock", "in_stock"), v = Ke(n, "reviewCount", "review_count"), u = Ke(n, "rating"), d =
|
|
3611
|
+
const r = be(n, "name"), i = be(n, "brand"), o = be(n, "sku"), s = be(n, "cartCode", "cart_code"), c = be(n, "price"), l = be(n, "originalPrice", "price_original"), p = Ge(n, "price_async"), g = He(e, n), h = $e(e, n), m = !!(l && c && l !== c), x = Ge(n, "inStock", "in_stock"), v = Ke(n, "reviewCount", "review_count"), u = Ke(n, "rating"), d = Kr(n), _ = ha(n).slice(0, 4);
|
|
3621
3612
|
if (d.length > 1) {
|
|
3622
3613
|
const C = document.createElement("div");
|
|
3623
3614
|
C.className = "gengage-chat-product-details-media gengage-chat-product-details-gallery gengage-chat-product-details-img-wrap";
|
|
@@ -3626,20 +3617,20 @@ function ci(t, e) {
|
|
|
3626
3617
|
const D = document.createElement("div");
|
|
3627
3618
|
D.className = "gengage-chat-product-gallery-thumbs";
|
|
3628
3619
|
const z = 6;
|
|
3629
|
-
let k = null,
|
|
3630
|
-
const B = e.i18n, q = B?.galleryPrevAriaLabel ?? "Previous image",
|
|
3620
|
+
let k = null, O = 0;
|
|
3621
|
+
const B = e.i18n, q = B?.galleryPrevAriaLabel ?? "Previous image", U = B?.galleryNextAriaLabel ?? "Next image", ne = (I) => I === "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>', W = document.createElement("button");
|
|
3631
3622
|
W.type = "button", W.className = "gengage-chat-product-gallery-nav gengage-chat-product-gallery-nav--prev gds-btn gds-btn-ghost gds-icon-btn", W.setAttribute("aria-label", q), W.innerHTML = ne("prev");
|
|
3632
3623
|
const K = document.createElement("button");
|
|
3633
|
-
K.type = "button", K.className = "gengage-chat-product-gallery-nav gengage-chat-product-gallery-nav--next gds-btn gds-btn-ghost gds-icon-btn", K.setAttribute("aria-label",
|
|
3624
|
+
K.type = "button", K.className = "gengage-chat-product-gallery-nav gengage-chat-product-gallery-nav--next gds-btn gds-btn-ghost gds-icon-btn", K.setAttribute("aria-label", U), K.innerHTML = ne("next");
|
|
3634
3625
|
const f = () => {
|
|
3635
|
-
W.disabled =
|
|
3626
|
+
W.disabled = O <= 0, K.disabled = O >= d.length - 1;
|
|
3636
3627
|
}, S = (I) => {
|
|
3637
|
-
if (I < 0 || I >= d.length || I ===
|
|
3628
|
+
if (I < 0 || I >= d.length || I === O) return;
|
|
3638
3629
|
const j = d[I];
|
|
3639
3630
|
if (!j) return;
|
|
3640
3631
|
de(R, "src", j);
|
|
3641
3632
|
const Q = D.querySelectorAll(".gengage-chat-product-gallery-thumb");
|
|
3642
|
-
k && k.classList.remove("gengage-chat-product-gallery-thumb--active"), I < z && Q[I] ? (Q[I].classList.add("gengage-chat-product-gallery-thumb--active"), k = Q[I]) : k = null,
|
|
3633
|
+
k && k.classList.remove("gengage-chat-product-gallery-thumb--active"), I < z && Q[I] ? (Q[I].classList.add("gengage-chat-product-gallery-thumb--active"), k = Q[I]) : k = null, O = I, f();
|
|
3643
3634
|
};
|
|
3644
3635
|
for (let I = 0; I < d.length; I++) {
|
|
3645
3636
|
const j = d[I];
|
|
@@ -3654,9 +3645,9 @@ function ci(t, e) {
|
|
|
3654
3645
|
I.className = "gengage-chat-product-gallery-thumb-more", I.textContent = `+${d.length - z}`, D.appendChild(I);
|
|
3655
3646
|
}
|
|
3656
3647
|
W.addEventListener("click", (I) => {
|
|
3657
|
-
I.stopPropagation(), S(
|
|
3648
|
+
I.stopPropagation(), S(O - 1);
|
|
3658
3649
|
}), K.addEventListener("click", (I) => {
|
|
3659
|
-
I.stopPropagation(), S(
|
|
3650
|
+
I.stopPropagation(), S(O + 1);
|
|
3660
3651
|
}), f();
|
|
3661
3652
|
let P = 0;
|
|
3662
3653
|
const $ = 50;
|
|
@@ -3664,7 +3655,7 @@ function ci(t, e) {
|
|
|
3664
3655
|
P = I.changedTouches[0].clientX;
|
|
3665
3656
|
}, { passive: !0 }), R.addEventListener("touchend", (I) => {
|
|
3666
3657
|
const j = I.changedTouches[0].clientX, Q = P - j;
|
|
3667
|
-
Math.abs(Q) < $ || S(Q > 0 ? Math.min(
|
|
3658
|
+
Math.abs(Q) < $ || S(Q > 0 ? Math.min(O + 1, d.length - 1) : Math.max(O - 1, 0));
|
|
3668
3659
|
}), C.appendChild(W), C.appendChild(K), C.appendChild(D), a.appendChild(C);
|
|
3669
3660
|
} else if (d.length === 1) {
|
|
3670
3661
|
const C = document.createElement("div");
|
|
@@ -3750,24 +3741,24 @@ function ci(t, e) {
|
|
|
3750
3741
|
}
|
|
3751
3742
|
y.appendChild(C);
|
|
3752
3743
|
}
|
|
3753
|
-
const A =
|
|
3744
|
+
const A = ii(n);
|
|
3754
3745
|
if (A.length > 0) {
|
|
3755
3746
|
const C = document.createElement("div");
|
|
3756
3747
|
C.className = "gengage-chat-product-variants";
|
|
3757
3748
|
const R = document.createElement("div");
|
|
3758
|
-
R.className = "gengage-chat-product-variants-label", R.textContent =
|
|
3749
|
+
R.className = "gengage-chat-product-variants-label", R.textContent = oi(A, e), C.appendChild(R);
|
|
3759
3750
|
const D = document.createElement("div");
|
|
3760
3751
|
D.className = "gengage-chat-product-variants-list";
|
|
3761
3752
|
for (const z of A) {
|
|
3762
|
-
const k = ua(z),
|
|
3763
|
-
if (!k && !
|
|
3753
|
+
const k = ua(z), O = Ee(z, "sku");
|
|
3754
|
+
if (!k && !O) continue;
|
|
3764
3755
|
const B = document.createElement("button");
|
|
3765
3756
|
B.className = "gengage-chat-product-variant-btn gds-chip", B.type = "button";
|
|
3766
|
-
const q = k ??
|
|
3757
|
+
const q = k ?? O ?? "";
|
|
3767
3758
|
B.title = q;
|
|
3768
|
-
const
|
|
3769
|
-
|
|
3770
|
-
const ne =
|
|
3759
|
+
const U = Ge(z, "in_stock", "inStock");
|
|
3760
|
+
O && o && O === o ? (B.classList.add("gengage-chat-product-variant-btn--active"), B.setAttribute("aria-pressed", "true")) : B.setAttribute("aria-pressed", "false"), U === !1 && (B.classList.add("gengage-chat-product-variant-btn--out"), B.disabled = !0);
|
|
3761
|
+
const ne = ei(z), W = Jr(z);
|
|
3771
3762
|
if (ne && he(ne)) {
|
|
3772
3763
|
const S = document.createElement("img");
|
|
3773
3764
|
S.className = "gengage-chat-product-variant-swatch gengage-chat-product-variant-swatch--image", de(S, "src", ne), S.alt = "", S.setAttribute("aria-hidden", "true"), xe(S), B.appendChild(S);
|
|
@@ -3777,18 +3768,18 @@ function ci(t, e) {
|
|
|
3777
3768
|
}
|
|
3778
3769
|
const K = document.createElement("span");
|
|
3779
3770
|
K.className = "gengage-chat-product-variant-label", K.textContent = q, B.appendChild(K);
|
|
3780
|
-
const f =
|
|
3771
|
+
const f = ti(z);
|
|
3781
3772
|
if (f && String(f) !== String(c)) {
|
|
3782
3773
|
const S = document.createElement("span");
|
|
3783
3774
|
S.className = "gengage-chat-product-variant-price", S.textContent = ae(String(f), e.pricing), B.appendChild(S);
|
|
3784
3775
|
}
|
|
3785
|
-
if (
|
|
3776
|
+
if (O && O !== o) {
|
|
3786
3777
|
const S = r ?? "", P = (typeof z.value == "string" ? z.value.trim() : "") || (typeof z.name == "string" ? z.name.trim() : "") || (typeof z.variant_name == "string" ? z.variant_name.trim() : "") || "", $ = S.length > 0 ? P.length > 0 && P !== S ? `${S} (${P})` : S : q;
|
|
3787
3778
|
B.addEventListener("click", () => {
|
|
3788
3779
|
e.onAction({
|
|
3789
3780
|
title: $,
|
|
3790
3781
|
type: "launchVariant",
|
|
3791
|
-
payload: { sku:
|
|
3782
|
+
payload: { sku: O }
|
|
3792
3783
|
});
|
|
3793
3784
|
});
|
|
3794
3785
|
}
|
|
@@ -3831,18 +3822,18 @@ function ci(t, e) {
|
|
|
3831
3822
|
const N = T;
|
|
3832
3823
|
if (N && he(N)) {
|
|
3833
3824
|
let k = function(B, q) {
|
|
3834
|
-
const
|
|
3835
|
-
|
|
3836
|
-
},
|
|
3825
|
+
const U = document.createElementNS(D, "circle");
|
|
3826
|
+
U.setAttribute("cx", B), U.setAttribute("cy", q), U.setAttribute("r", "3"), z.appendChild(U);
|
|
3827
|
+
}, O = function(B, q, U, ne) {
|
|
3837
3828
|
const W = document.createElementNS(D, "line");
|
|
3838
|
-
W.setAttribute("x1", B), W.setAttribute("y1", q), W.setAttribute("x2",
|
|
3829
|
+
W.setAttribute("x1", B), W.setAttribute("y1", q), W.setAttribute("x2", U), W.setAttribute("y2", ne), z.appendChild(W);
|
|
3839
3830
|
};
|
|
3840
3831
|
const C = document.createElement("button");
|
|
3841
3832
|
C.className = "gengage-chat-product-details-share gds-btn gds-btn-ghost gds-icon-btn", C.type = "button";
|
|
3842
3833
|
const R = e.i18n?.shareButton ?? "Share";
|
|
3843
3834
|
C.title = R, C.setAttribute("aria-label", R);
|
|
3844
3835
|
const D = "http://www.w3.org/2000/svg", z = document.createElementNS(D, "svg");
|
|
3845
|
-
z.setAttribute("width", "18"), z.setAttribute("height", "18"), z.setAttribute("viewBox", "0 0 24 24"), z.setAttribute("fill", "none"), z.setAttribute("stroke", "currentColor"), z.setAttribute("stroke-width", "2"), z.setAttribute("stroke-linecap", "round"), z.setAttribute("stroke-linejoin", "round"), k("18", "5"), k("6", "12"), k("18", "19"),
|
|
3836
|
+
z.setAttribute("width", "18"), z.setAttribute("height", "18"), z.setAttribute("viewBox", "0 0 24 24"), z.setAttribute("fill", "none"), z.setAttribute("stroke", "currentColor"), z.setAttribute("stroke-width", "2"), z.setAttribute("stroke-linecap", "round"), z.setAttribute("stroke-linejoin", "round"), k("18", "5"), k("6", "12"), k("18", "19"), O("8.59", "13.51", "15.42", "17.49"), O("15.41", "6.51", "8.59", "10.49"), C.appendChild(z), C.addEventListener("click", async () => {
|
|
3846
3837
|
try {
|
|
3847
3838
|
navigator.share ? await navigator.share({
|
|
3848
3839
|
title: r ?? "",
|
|
@@ -3853,15 +3844,15 @@ function ci(t, e) {
|
|
|
3853
3844
|
}), L.appendChild(C);
|
|
3854
3845
|
}
|
|
3855
3846
|
L.childElementCount > 0 && y.appendChild(L), a.appendChild(y);
|
|
3856
|
-
const F =
|
|
3857
|
-
return (F || X) && a.appendChild(
|
|
3847
|
+
const F = Zr(n), X = Xr(n);
|
|
3848
|
+
return (F || X) && a.appendChild(gi(F, X, e)), a;
|
|
3858
3849
|
}
|
|
3859
3850
|
function ht(t) {
|
|
3860
3851
|
if (t.nodeType === Node.TEXT_NODE) return document.createTextNode(t.textContent ?? "");
|
|
3861
3852
|
if (t.nodeType !== Node.ELEMENT_NODE) return null;
|
|
3862
3853
|
const e = t, a = e.tagName.toUpperCase();
|
|
3863
|
-
if (
|
|
3864
|
-
if (
|
|
3854
|
+
if (Vr.has(a)) return null;
|
|
3855
|
+
if (!$r.has(a)) {
|
|
3865
3856
|
const r = document.createDocumentFragment();
|
|
3866
3857
|
for (const i of Array.from(e.childNodes)) {
|
|
3867
3858
|
const o = ht(i);
|
|
@@ -3876,7 +3867,7 @@ function ht(t) {
|
|
|
3876
3867
|
}
|
|
3877
3868
|
return n;
|
|
3878
3869
|
}
|
|
3879
|
-
function
|
|
3870
|
+
function ci(t, e) {
|
|
3880
3871
|
const a = e.split(/\n{2,}/).map((n) => n.replace(/\s+/g, " ").trim()).filter(Boolean);
|
|
3881
3872
|
if (a.length !== 0)
|
|
3882
3873
|
for (const n of a) {
|
|
@@ -3884,7 +3875,7 @@ function li(t, e) {
|
|
|
3884
3875
|
r.textContent = n, t.appendChild(r);
|
|
3885
3876
|
}
|
|
3886
3877
|
}
|
|
3887
|
-
function
|
|
3878
|
+
function li(t, e) {
|
|
3888
3879
|
if (t.classList.add("gengage-chat-product-description"), e.html && typeof DOMParser < "u") {
|
|
3889
3880
|
const a = new DOMParser().parseFromString(e.html, "text/html"), n = Array.from(a.body.childNodes).map((r) => ht(r)).filter((r) => !!r && (r.nodeType === Node.ELEMENT_NODE || !!r.textContent?.trim()));
|
|
3890
3881
|
if (n.length > 0) {
|
|
@@ -3892,9 +3883,9 @@ function gi(t, e) {
|
|
|
3892
3883
|
return;
|
|
3893
3884
|
}
|
|
3894
3885
|
}
|
|
3895
|
-
|
|
3886
|
+
ci(t, e.text);
|
|
3896
3887
|
}
|
|
3897
|
-
function
|
|
3888
|
+
function gi(t, e, a) {
|
|
3898
3889
|
const n = document.createElement("div");
|
|
3899
3890
|
n.className = "gengage-chat-product-detail-tabs";
|
|
3900
3891
|
const r = document.createElement("div");
|
|
@@ -3904,7 +3895,7 @@ function di(t, e, a) {
|
|
|
3904
3895
|
const s = document.createElement("button");
|
|
3905
3896
|
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 = a.i18n?.productInfoTab ?? "Product Info", r.appendChild(s);
|
|
3906
3897
|
const c = document.createElement("div");
|
|
3907
|
-
c.className = "gengage-chat-product-detail-tab-panel",
|
|
3898
|
+
c.className = "gengage-chat-product-detail-tab-panel", li(c, t), i.push(c);
|
|
3908
3899
|
}
|
|
3909
3900
|
if (e) {
|
|
3910
3901
|
const s = document.createElement("button");
|
|
@@ -3951,13 +3942,13 @@ function Ht(t) {
|
|
|
3951
3942
|
return "";
|
|
3952
3943
|
}
|
|
3953
3944
|
}
|
|
3954
|
-
function
|
|
3945
|
+
function di() {
|
|
3955
3946
|
return '<svg class="gengage-chat-product-sort-chevron" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg>';
|
|
3956
3947
|
}
|
|
3957
|
-
function
|
|
3948
|
+
function pi() {
|
|
3958
3949
|
return '<svg class="gengage-chat-product-sort-check" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="20 6 9 17 4 12"/></svg>';
|
|
3959
3950
|
}
|
|
3960
|
-
function
|
|
3951
|
+
function hi() {
|
|
3961
3952
|
return '<svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M8 3 4 7l4 4"/><path d="M16 21l4-4-4-4"/><path d="M4 7h16"/><path d="M20 17H4"/></svg>';
|
|
3962
3953
|
}
|
|
3963
3954
|
function Ft(t, e) {
|
|
@@ -3974,7 +3965,7 @@ function fa(t, e, a) {
|
|
|
3974
3965
|
});
|
|
3975
3966
|
return n.sort((r, i) => r.price === 1 / 0 && i.price === 1 / 0 ? 0 : r.price === 1 / 0 ? 1 : i.price === 1 / 0 ? -1 : a.direction === "desc" ? i.price - r.price : r.price - i.price), n.map((r) => r.id);
|
|
3976
3967
|
}
|
|
3977
|
-
function
|
|
3968
|
+
function ui(t, e, a, n) {
|
|
3978
3969
|
const r = fa(e, a, n), i = /* @__PURE__ */ new Map();
|
|
3979
3970
|
for (const o of Array.from(t.children)) {
|
|
3980
3971
|
const s = o.dataset.elementId;
|
|
@@ -3985,7 +3976,7 @@ function mi(t, e, a, n) {
|
|
|
3985
3976
|
s && t.appendChild(s);
|
|
3986
3977
|
}
|
|
3987
3978
|
}
|
|
3988
|
-
function
|
|
3979
|
+
function mi(t, e, a, n) {
|
|
3989
3980
|
const r = document.createElement("div");
|
|
3990
3981
|
r.className = "gengage-chat-product-grid-wrapper";
|
|
3991
3982
|
const i = ft(t), o = i.isConsulting, s = t.children ?? [], c = document.createElement("div");
|
|
@@ -3998,7 +3989,7 @@ function fi(t, e, a, n) {
|
|
|
3998
3989
|
const _ = document.createElement("button");
|
|
3999
3990
|
_.className = "gengage-chat-comparison-toggle-btn gds-btn gds-btn-ghost", _.type = "button", n.comparisonSelectMode && _.classList.add("gengage-chat-comparison-toggle-btn--active"), n.isStreaming && _.classList.add("gengage-chat-comparison-toggle-btn--hidden");
|
|
4000
3991
|
const y = document.createElement("span");
|
|
4001
|
-
y.className = "gengage-chat-comparison-toggle-icon", y.innerHTML =
|
|
3992
|
+
y.className = "gengage-chat-comparison-toggle-icon", y.innerHTML = hi();
|
|
4002
3993
|
const b = document.createElement("span");
|
|
4003
3994
|
b.className = "gengage-chat-comparison-toggle-label";
|
|
4004
3995
|
const A = n.i18n?.compareSelected ?? "Compare";
|
|
@@ -4055,12 +4046,12 @@ function fi(t, e, a, n) {
|
|
|
4055
4046
|
const T = document.createElement("span");
|
|
4056
4047
|
T.className = "gengage-chat-product-sort-trigger-label";
|
|
4057
4048
|
const N = (B) => {
|
|
4058
|
-
const q = y.find((
|
|
4049
|
+
const q = y.find((U) => Ft(U.sortState, B)) ?? y[0];
|
|
4059
4050
|
T.textContent = q.label, E.innerHTML = Ht(q.icon), b.dataset.sortIcon = q.icon, A.setAttribute("aria-label", `${L}: ${q.label}`), A.title = q.label;
|
|
4060
4051
|
};
|
|
4061
4052
|
N(_);
|
|
4062
4053
|
const F = document.createElement("span");
|
|
4063
|
-
F.className = "gengage-chat-product-sort-trigger-chevron", F.innerHTML =
|
|
4054
|
+
F.className = "gengage-chat-product-sort-trigger-chevron", F.innerHTML = di(), A.appendChild(E), A.appendChild(T), A.appendChild(F);
|
|
4064
4055
|
const X = document.createElement("div");
|
|
4065
4056
|
X.className = "gengage-chat-product-sort-menu gds-menu", X.hidden = !0, X.setAttribute("role", "listbox"), X.setAttribute("aria-label", L);
|
|
4066
4057
|
const C = d.ownerDocument;
|
|
@@ -4071,7 +4062,7 @@ function fi(t, e, a, n) {
|
|
|
4071
4062
|
b.classList.contains("gengage-chat-product-sort-dropdown--open") && (b.contains(B.target) || D());
|
|
4072
4063
|
}, k = (B) => {
|
|
4073
4064
|
B.key === "Escape" && (B.preventDefault(), D());
|
|
4074
|
-
},
|
|
4065
|
+
}, O = () => {
|
|
4075
4066
|
X.hidden = !1, b.classList.add("gengage-chat-product-sort-dropdown--open"), A.setAttribute("aria-expanded", "true"), R = new AbortController();
|
|
4076
4067
|
const { signal: B } = R;
|
|
4077
4068
|
C.addEventListener("click", z, { signal: B }), C.addEventListener("keydown", k, {
|
|
@@ -4080,13 +4071,13 @@ function fi(t, e, a, n) {
|
|
|
4080
4071
|
});
|
|
4081
4072
|
};
|
|
4082
4073
|
A.addEventListener("click", (B) => {
|
|
4083
|
-
B.stopPropagation(), b.classList.contains("gengage-chat-product-sort-dropdown--open") ? D() :
|
|
4074
|
+
B.stopPropagation(), b.classList.contains("gengage-chat-product-sort-dropdown--open") ? D() : O();
|
|
4084
4075
|
});
|
|
4085
4076
|
for (const B of y) {
|
|
4086
4077
|
const q = document.createElement("button");
|
|
4087
4078
|
q.type = "button", q.className = "gengage-chat-product-sort-option gds-menu-option", q.setAttribute("role", "option");
|
|
4088
|
-
const
|
|
4089
|
-
q.setAttribute("aria-selected",
|
|
4079
|
+
const U = Ft(_, B.sortState);
|
|
4080
|
+
q.setAttribute("aria-selected", U ? "true" : "false"), U && q.classList.add("gengage-chat-product-sort-option--active", "gds-menu-option-active");
|
|
4090
4081
|
const ne = B.sortState.type === "related" ? "related" : `price-${B.sortState.direction ?? ""}`;
|
|
4091
4082
|
q.dataset.sortKey = ne;
|
|
4092
4083
|
const W = document.createElement("span");
|
|
@@ -4094,8 +4085,8 @@ function fi(t, e, a, n) {
|
|
|
4094
4085
|
const K = document.createElement("span");
|
|
4095
4086
|
K.className = "gengage-chat-product-sort-option-label", K.textContent = B.label;
|
|
4096
4087
|
const f = document.createElement("span");
|
|
4097
|
-
f.className = "gengage-chat-product-sort-option-check", f.innerHTML =
|
|
4098
|
-
_ = B.sortState, n.onSortChange?.(B.sortState),
|
|
4088
|
+
f.className = "gengage-chat-product-sort-option-check", f.innerHTML = pi(), f.setAttribute("aria-hidden", "true"), U || f.classList.add("gengage-chat-product-sort-option-check--hidden"), q.appendChild(W), q.appendChild(K), q.appendChild(f), q.addEventListener("click", () => {
|
|
4089
|
+
_ = B.sortState, n.onSortChange?.(B.sortState), ui(c, s, e, B.sortState), X.querySelectorAll(".gengage-chat-product-sort-option").forEach((S) => {
|
|
4099
4090
|
const P = S, $ = P.dataset.sortKey === ne;
|
|
4100
4091
|
P.classList.toggle("gengage-chat-product-sort-option--active", $), P.classList.toggle("gds-menu-option-active", $), P.setAttribute("aria-selected", $ ? "true" : "false"), P.querySelector(".gengage-chat-product-sort-option-check")?.classList.toggle("gengage-chat-product-sort-option-check--hidden", !$);
|
|
4101
4092
|
}), N(B.sortState), D();
|
|
@@ -4107,8 +4098,8 @@ function fi(t, e, a, n) {
|
|
|
4107
4098
|
B.className = "gengage-chat-product-grid-head";
|
|
4108
4099
|
const q = document.createElement("span");
|
|
4109
4100
|
q.className = "gengage-chat-product-grid-head-title", q.textContent = h, B.appendChild(q);
|
|
4110
|
-
const
|
|
4111
|
-
|
|
4101
|
+
const U = document.createElement("div");
|
|
4102
|
+
U.className = "gengage-chat-product-grid-head-actions", U.appendChild(d), B.appendChild(U), r.appendChild(B);
|
|
4112
4103
|
} else r.appendChild(d);
|
|
4113
4104
|
} else if (h) {
|
|
4114
4105
|
const d = document.createElement("div");
|
|
@@ -4127,7 +4118,7 @@ function fi(t, e, a, n) {
|
|
|
4127
4118
|
let y = 0;
|
|
4128
4119
|
for (const b of l) {
|
|
4129
4120
|
y += b.children.length;
|
|
4130
|
-
const A =
|
|
4121
|
+
const A = fi(b.children.length, n), L = document.createElement("section");
|
|
4131
4122
|
L.className = "gengage-chat-product-grid-section", L.setAttribute("role", "listitem");
|
|
4132
4123
|
const E = document.createElement("div");
|
|
4133
4124
|
if (E.className = "gengage-chat-product-grid-section-head", b.title) {
|
|
@@ -4146,7 +4137,7 @@ function fi(t, e, a, n) {
|
|
|
4146
4137
|
}
|
|
4147
4138
|
return r.appendChild(d), v(r, y), u(), r;
|
|
4148
4139
|
}
|
|
4149
|
-
if (o)
|
|
4140
|
+
if (o) Ci(r, c, i, n);
|
|
4150
4141
|
else {
|
|
4151
4142
|
const d = fa(s, e, n?.productSort);
|
|
4152
4143
|
for (const _ of d) {
|
|
@@ -4157,10 +4148,10 @@ function fi(t, e, a, n) {
|
|
|
4157
4148
|
}
|
|
4158
4149
|
return (n?.isMobile ?? Ve()) && c.classList.add("gengage-chat-product-grid--mobile"), t.props?.rankingState === "pending" && (c.classList.add("gengage-chat-product-grid--pending"), c.inert = !0, c.setAttribute("aria-busy", "true")), r.appendChild(c), v(r), u(), r;
|
|
4159
4150
|
}
|
|
4160
|
-
function
|
|
4151
|
+
function fi(t, e) {
|
|
4161
4152
|
return (e?.i18n?.productGridSectionCountLabel ?? "{count} product(s)").replace(/\{count\}/g, String(t));
|
|
4162
4153
|
}
|
|
4163
|
-
function
|
|
4154
|
+
function bi(t, e, a) {
|
|
4164
4155
|
const n = (r) => {
|
|
4165
4156
|
const i = r?.url;
|
|
4166
4157
|
return typeof i == "string" ? i.trim() : "";
|
|
@@ -4171,7 +4162,7 @@ function vi(t, e, a) {
|
|
|
4171
4162
|
}
|
|
4172
4163
|
return n(a.find((r) => r.sku === t));
|
|
4173
4164
|
}
|
|
4174
|
-
function
|
|
4165
|
+
function vi(t, e) {
|
|
4175
4166
|
const a = t.props ?? {}, n = a.keyDifferencesHtml, r = a.recommended, i = a.products ?? [], o = a.attributes ?? [], s = a.highlights ?? [], c = a.specialCases, l = a.recommendedText, p = a.winnerHits, g = a.productActions;
|
|
4176
4167
|
if (!r) return document.createElement("div");
|
|
4177
4168
|
const h = {
|
|
@@ -4182,7 +4173,7 @@ function xi(t, e) {
|
|
|
4182
4173
|
specialCases: c,
|
|
4183
4174
|
locale: e.locale,
|
|
4184
4175
|
onProductClick: ({ sku: x, name: v }) => {
|
|
4185
|
-
const u =
|
|
4176
|
+
const u = bi(x, r, i);
|
|
4186
4177
|
e.onProductClick?.({
|
|
4187
4178
|
sku: x,
|
|
4188
4179
|
url: u,
|
|
@@ -4200,10 +4191,10 @@ function xi(t, e) {
|
|
|
4200
4191
|
specialCasesLabel: e.i18n.specialCasesLabel,
|
|
4201
4192
|
addToCartButton: e.i18n.addToCartButton
|
|
4202
4193
|
});
|
|
4203
|
-
const m =
|
|
4194
|
+
const m = Xn(h);
|
|
4204
4195
|
return (e.isMobile ?? Ve()) && m.classList.add("gengage-chat-comparison--mobile"), m;
|
|
4205
4196
|
}
|
|
4206
|
-
function
|
|
4197
|
+
function xi(t) {
|
|
4207
4198
|
const e = document.createElement("hr");
|
|
4208
4199
|
e.className = "gengage-chat-divider";
|
|
4209
4200
|
const a = t.props?.label;
|
|
@@ -4234,7 +4225,7 @@ function ut(t) {
|
|
|
4234
4225
|
const e = t.findIndex((a) => tt(a) !== "loading");
|
|
4235
4226
|
return e < 0 ? 0 : e;
|
|
4236
4227
|
}
|
|
4237
|
-
function
|
|
4228
|
+
function yi(t) {
|
|
4238
4229
|
if (typeof t != "string") return;
|
|
4239
4230
|
const e = t.trim();
|
|
4240
4231
|
if (!e) return;
|
|
@@ -4348,7 +4339,7 @@ function mt(t, e, a, n) {
|
|
|
4348
4339
|
t.classList.remove("gengage-chat-consulting-style-btn--loading", "gengage-chat-consulting-style-btn--muted"), r === "loading" ? t.classList.add("gengage-chat-consulting-style-btn--loading") : r !== "ready" && t.classList.add("gengage-chat-consulting-style-btn--muted"), t.setAttribute("aria-label", We(e, a + 1, n));
|
|
4349
4340
|
let s = t.querySelector(".gengage-chat-consulting-style-media");
|
|
4350
4341
|
s ? s.innerHTML = "" : (s = document.createElement("div"), s.className = "gengage-chat-consulting-style-media", t.appendChild(s));
|
|
4351
|
-
const c =
|
|
4342
|
+
const c = yi(e.image_url);
|
|
4352
4343
|
if (c && he(c)) {
|
|
4353
4344
|
const p = document.createElement("img");
|
|
4354
4345
|
p.className = "gengage-chat-consulting-style-image", p.draggable = !1, de(p, "src", c), p.alt = We(e, a + 1, n), p.loading = "lazy", xe(p), s.appendChild(p);
|
|
@@ -4367,7 +4358,7 @@ function xa(t, e, a, n) {
|
|
|
4367
4358
|
}), vt(r, n));
|
|
4368
4359
|
});
|
|
4369
4360
|
}
|
|
4370
|
-
function
|
|
4361
|
+
function wi(t, e, a, n) {
|
|
4371
4362
|
const r = ba(n), i = ut(a), o = document.createElement("div");
|
|
4372
4363
|
o.className = "gengage-chat-consulting-style-picker";
|
|
4373
4364
|
const s = {
|
|
@@ -4386,8 +4377,8 @@ function _i(t, e, a, n) {
|
|
|
4386
4377
|
h.type = "button", h.className = "gengage-chat-consulting-style-btn gds-card", g === i && h.classList.add("gengage-chat-consulting-style-btn--active"), mt(h, p, g, r), xa(h, o, l, g), l.appendChild(h);
|
|
4387
4378
|
}), t.appendChild(o), vt(s, i);
|
|
4388
4379
|
}
|
|
4389
|
-
function
|
|
4390
|
-
const n = t.querySelector(".gengage-chat-consulting-style-picker"), r =
|
|
4380
|
+
function _i(t, e, a) {
|
|
4381
|
+
const n = t.querySelector(".gengage-chat-consulting-style-picker"), r = ki(t);
|
|
4391
4382
|
if (!n || !r) return !1;
|
|
4392
4383
|
const i = n.querySelector(".gengage-chat-consulting-style-grid");
|
|
4393
4384
|
if (!i) return !1;
|
|
@@ -4422,7 +4413,7 @@ function ki(t, e, a) {
|
|
|
4422
4413
|
h.classList.toggle("gengage-chat-consulting-style-btn--active", m === l.selectedIndex);
|
|
4423
4414
|
}), vt(l, l.selectedIndex), !0;
|
|
4424
4415
|
}
|
|
4425
|
-
function
|
|
4416
|
+
function ki(t) {
|
|
4426
4417
|
const e = [...t.children];
|
|
4427
4418
|
for (let a = e.length - 1; a >= 0; a -= 1) {
|
|
4428
4419
|
const n = e[a];
|
|
@@ -4438,16 +4429,16 @@ function ft(t) {
|
|
|
4438
4429
|
styleVariations: a
|
|
4439
4430
|
};
|
|
4440
4431
|
}
|
|
4441
|
-
function
|
|
4442
|
-
|
|
4432
|
+
function Ci(t, e, a, n) {
|
|
4433
|
+
wi(t, e, a.styleVariations, n);
|
|
4443
4434
|
}
|
|
4444
|
-
function
|
|
4435
|
+
function Si(t) {
|
|
4445
4436
|
return !t.isConsulting || t.styleVariations.length === 0 ? !0 : t.styleVariations.some((e) => (typeof e.status == "string" ? e.status : "ready") !== "loading");
|
|
4446
4437
|
}
|
|
4447
|
-
function
|
|
4448
|
-
return !e.isConsulting || !e.source ? !1 :
|
|
4438
|
+
function Ei(t, e, a) {
|
|
4439
|
+
return !e.isConsulting || !e.source ? !1 : _i(t, e.styleVariations, a);
|
|
4449
4440
|
}
|
|
4450
|
-
var
|
|
4441
|
+
var Pi = `<svg width="28" height="28" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
4451
4442
|
<rect x="3" y="7" width="18" height="13" rx="3" fill="currentColor" opacity="0.15"/>
|
|
4452
4443
|
<rect x="3" y="7" width="18" height="13" rx="3" stroke="currentColor" stroke-width="1.5"/>
|
|
4453
4444
|
<circle cx="9" cy="13" r="1.5" fill="currentColor"/>
|
|
@@ -4458,7 +4449,7 @@ var Li = `<svg width="28" height="28" viewBox="0 0 24 24" fill="none" xmlns="htt
|
|
|
4458
4449
|
<path d="M1 12V14" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/>
|
|
4459
4450
|
<path d="M23 12V14" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/>
|
|
4460
4451
|
</svg>`;
|
|
4461
|
-
function
|
|
4452
|
+
function Li(t) {
|
|
4462
4453
|
const e = document.createElement("div");
|
|
4463
4454
|
e.className = "gengage-chat-launcher-container", e.dataset.gengagePart = "chat-launcher-container";
|
|
4464
4455
|
const a = document.createElement("div");
|
|
@@ -4473,7 +4464,7 @@ function Ti(t) {
|
|
|
4473
4464
|
o.src = t.mobileImageUrl, o.alt = "", o.draggable = !1, o.className = "gengage-chat-launcher-img--mobile", n.appendChild(i), n.appendChild(o);
|
|
4474
4465
|
} else n.appendChild(i);
|
|
4475
4466
|
} else
|
|
4476
|
-
n.className = "gengage-chat-launcher", n.innerHTML = t.svgMarkup ??
|
|
4467
|
+
n.className = "gengage-chat-launcher", n.innerHTML = t.svgMarkup ?? Pi;
|
|
4477
4468
|
if (n.dataset.gengagePart = "chat-launcher-button", t.tooltip !== void 0) {
|
|
4478
4469
|
const i = document.createElement("span");
|
|
4479
4470
|
i.className = "gengage-chat-launcher-tooltip", i.dataset.gengagePart = "chat-launcher-tooltip", i.textContent = t.tooltip, n.appendChild(i);
|
|
@@ -4487,8 +4478,8 @@ function Ti(t) {
|
|
|
4487
4478
|
contentAreaBottom: r
|
|
4488
4479
|
};
|
|
4489
4480
|
}
|
|
4490
|
-
var
|
|
4491
|
-
function
|
|
4481
|
+
var Ut = "gengage-floating-launcher-style";
|
|
4482
|
+
function Ti(t) {
|
|
4492
4483
|
return `
|
|
4493
4484
|
@property --gengage-fl-ring-angle {
|
|
4494
4485
|
syntax: '<angle>';
|
|
@@ -4715,7 +4706,7 @@ function Ai(t) {
|
|
|
4715
4706
|
}
|
|
4716
4707
|
`.trim();
|
|
4717
4708
|
}
|
|
4718
|
-
function
|
|
4709
|
+
function Ai() {
|
|
4719
4710
|
return `
|
|
4720
4711
|
<div class="gengage-fl-inner">
|
|
4721
4712
|
<div class="gengage-fl-ring" aria-hidden="true"></div>
|
|
@@ -4777,15 +4768,15 @@ function Ii() {
|
|
|
4777
4768
|
</button>
|
|
4778
4769
|
</div>`.trim();
|
|
4779
4770
|
}
|
|
4780
|
-
function
|
|
4771
|
+
function Ii(t, e, a) {
|
|
4781
4772
|
const { primaryColor: n = "#6366f1", backgroundColor: r = "#ffffff", textColor: i = "#111827", placeholderColor: o = "#9ca3af", iconColor: s = "#6b7280", borderColor: c = "#e5e7eb", borderRadius: l = "999px", height: p = "56px", maxWidth: g = "680px", fontFamily: h = "inherit", placeholders: m = [
|
|
4782
4773
|
"Ürün ara",
|
|
4783
4774
|
"Karşılaştır",
|
|
4784
4775
|
"Soru sor"
|
|
4785
4776
|
], placeholderInterval: x = 2e3, voiceLang: v = "tr-TR", showBorderAnimation: u = !0, sendAriaLabel: d = "Gönder", micAriaLabel: _ = "Sesli giriş", cancelAriaLabel: y = "Ses kaydını durdur", openChatAriaLabel: b = "Chat'i aç" } = t;
|
|
4786
|
-
if (!a.getElementById(
|
|
4777
|
+
if (!a.getElementById(Ut)) {
|
|
4787
4778
|
const V = document.createElement("style");
|
|
4788
|
-
V.id =
|
|
4779
|
+
V.id = Ut, V.textContent = Ti({
|
|
4789
4780
|
primaryColor: n,
|
|
4790
4781
|
backgroundColor: r,
|
|
4791
4782
|
textColor: i,
|
|
@@ -4799,10 +4790,10 @@ function Mi(t, e, a) {
|
|
|
4799
4790
|
}), a.appendChild(V);
|
|
4800
4791
|
}
|
|
4801
4792
|
const A = document.createElement("div");
|
|
4802
|
-
A.className = "gengage-fl", A.dataset.gengagePart = "floating-launcher", A.innerHTML =
|
|
4793
|
+
A.className = "gengage-fl", A.dataset.gengagePart = "floating-launcher", A.innerHTML = Ai();
|
|
4803
4794
|
const L = A.querySelector(".gengage-fl-input"), E = A.querySelector(".gengage-fl-transcript"), T = A.querySelector(".gengage-fl-transcript-final"), N = A.querySelector(".gengage-fl-transcript-interim"), F = A.querySelector(".gengage-fl-btn-send"), X = A.querySelector(".gengage-fl-btn-mic"), C = A.querySelector(".gengage-fl-btn-open-chat"), R = A.querySelector(".gengage-fl-cancel"), D = A.querySelector(".gengage-fl-wave"), z = A.querySelector(".gengage-fl-ring");
|
|
4804
4795
|
L.placeholder = m[0] ?? "", F.setAttribute("aria-label", d), X.setAttribute("aria-label", _), R.setAttribute("aria-label", y), C.setAttribute("aria-label", b);
|
|
4805
|
-
let k = !1,
|
|
4796
|
+
let k = !1, O = !1, B = "", q = !1, U = null, ne = 0, W = null, K = null, f = null, S = null, P = null, $ = 0;
|
|
4806
4797
|
function I() {
|
|
4807
4798
|
const V = L.value.trim().length > 0;
|
|
4808
4799
|
if (X.classList.toggle("is-recording", k), k) {
|
|
@@ -4821,7 +4812,7 @@ function Mi(t, e, a) {
|
|
|
4821
4812
|
W !== null && (clearTimeout(W), W = null);
|
|
4822
4813
|
}
|
|
4823
4814
|
function se() {
|
|
4824
|
-
k && (k = !1, w(),
|
|
4815
|
+
k && (k = !1, w(), O = !1, oe(), u && H(), B = "", L.style.display = "", E.style.display = "none", T.textContent = "", N.textContent = "");
|
|
4825
4816
|
const V = L.value.trim();
|
|
4826
4817
|
V && (e.onSend(V), q || (q = !0)), L.value = "", B = "", I();
|
|
4827
4818
|
}
|
|
@@ -4831,7 +4822,7 @@ function Mi(t, e, a) {
|
|
|
4831
4822
|
console.warn("[FloatingLauncher] SpeechRecognition not supported.");
|
|
4832
4823
|
return;
|
|
4833
4824
|
}
|
|
4834
|
-
|
|
4825
|
+
U || (U = new G(), U.continuous = !0, U.interimResults = !0, U.lang = v), k = !0, O = !0, B = "", L.value = "", L.style.display = "none", E.style.display = "flex", T.textContent = "", N.textContent = "", I(), ce(), u && M(), U.onresult = (J) => {
|
|
4835
4826
|
if (!k) return;
|
|
4836
4827
|
let ie = "", Z = "";
|
|
4837
4828
|
for (let le = J.resultIndex; le < J.results.length; le++) {
|
|
@@ -4841,21 +4832,21 @@ function Mi(t, e, a) {
|
|
|
4841
4832
|
Ae.isFinal ? Z += Fe : ie += Fe;
|
|
4842
4833
|
}
|
|
4843
4834
|
B += Z, T.textContent = B, N.textContent = ie, L.value = `${B} ${ie}`.trim(), I();
|
|
4844
|
-
},
|
|
4835
|
+
}, U.onend = () => Y(), U.onerror = () => Y();
|
|
4845
4836
|
try {
|
|
4846
|
-
|
|
4837
|
+
U.start();
|
|
4847
4838
|
} catch {
|
|
4848
4839
|
Y();
|
|
4849
4840
|
}
|
|
4850
4841
|
}
|
|
4851
4842
|
function w() {
|
|
4852
4843
|
try {
|
|
4853
|
-
|
|
4844
|
+
U?.stop();
|
|
4854
4845
|
} catch {
|
|
4855
4846
|
}
|
|
4856
4847
|
}
|
|
4857
4848
|
function Y() {
|
|
4858
|
-
|
|
4849
|
+
O && (O = !1, k = !1, oe(), u && H(), B.trim() && (L.value = B.trim()), L.style.display = "", E.style.display = "none", T.textContent = "", N.textContent = "", I());
|
|
4859
4850
|
}
|
|
4860
4851
|
async function ce() {
|
|
4861
4852
|
const V = ++$, G = Array.from(D.querySelectorAll("span"));
|
|
@@ -4906,7 +4897,7 @@ function Mi(t, e, a) {
|
|
|
4906
4897
|
F.addEventListener("click", se), X.addEventListener("click", (V) => {
|
|
4907
4898
|
V.preventDefault(), V.stopPropagation(), k ? w() : re();
|
|
4908
4899
|
}), R.addEventListener("click", () => {
|
|
4909
|
-
k && (k = !1, w(),
|
|
4900
|
+
k && (k = !1, w(), O = !1, oe(), u && H(), B = "", L.style.display = "", E.style.display = "none", T.textContent = "", N.textContent = "", I());
|
|
4910
4901
|
}), C.addEventListener("click", (V) => {
|
|
4911
4902
|
V.preventDefault(), V.stopPropagation(), e.onOpenChat();
|
|
4912
4903
|
}), L.addEventListener("input", I), L.addEventListener("keydown", (V) => {
|
|
@@ -4916,7 +4907,7 @@ function Mi(t, e, a) {
|
|
|
4916
4907
|
q = !0, I();
|
|
4917
4908
|
}
|
|
4918
4909
|
function pe() {
|
|
4919
|
-
te(), oe(), H(), k && (k = !1, w()),
|
|
4910
|
+
te(), oe(), H(), k && (k = !1, w()), U && (U.onresult = null, U.onend = null, U.onerror = null, U = null);
|
|
4920
4911
|
}
|
|
4921
4912
|
return {
|
|
4922
4913
|
container: A,
|
|
@@ -4924,7 +4915,7 @@ function Mi(t, e, a) {
|
|
|
4924
4915
|
destroy: pe
|
|
4925
4916
|
};
|
|
4926
4917
|
}
|
|
4927
|
-
var
|
|
4918
|
+
var Mi = "gengage-inline-launcher-style", Ot = "gengage-inline-launcher-hide-floating", fe = "gengage-inline-launcher", Ni = "gengage-inline-launcher", je = "data-gengage-inline-sibling", rt = "data-gengage-inline-sibling-restore-index", Bi = '<svg viewBox="0 0 20 20" fill="none" aria-hidden="true"><path d="M8.85 2.4c.23 0 .43.16.48.39l.9 3.77a3.8 3.8 0 0 0 2.8 2.8l3.77.9a.5.5 0 0 1 0 .98l-3.77.9a3.8 3.8 0 0 0-2.8 2.8l-.9 3.77a.5.5 0 0 1-.98 0l-.9-3.77a3.8 3.8 0 0 0-2.8-2.8l-3.77-.9a.5.5 0 0 1 0-.98l3.77-.9a3.8 3.8 0 0 0 2.8-2.8l.9-3.77c.05-.23.25-.39.48-.39Z" fill="currentColor"/><path d="M15.95 1.1c.12 0 .23.08.26.2l.32 1.34c.16.68.7 1.21 1.37 1.37l1.34.32a.27.27 0 0 1 0 .53l-1.34.32a1.87 1.87 0 0 0-1.37 1.37l-.32 1.34a.27.27 0 0 1-.53 0l-.32-1.34A1.87 1.87 0 0 0 14 5.18l-1.34-.32a.27.27 0 0 1 0-.53L14 4a1.87 1.87 0 0 0 1.37-1.37l.32-1.34c.03-.12.14-.2.26-.2Z" fill="currentColor" opacity=".72"/></svg>', ge = {
|
|
4928
4919
|
rowGap: "14px",
|
|
4929
4920
|
buttonHeight: "46px",
|
|
4930
4921
|
buttonPadding: "0 14px 0 10px",
|
|
@@ -4948,7 +4939,7 @@ var Ni = "gengage-inline-launcher-style", Ut = "gengage-inline-launcher-hide-flo
|
|
|
4948
4939
|
hideLogo: !1
|
|
4949
4940
|
}
|
|
4950
4941
|
};
|
|
4951
|
-
function
|
|
4942
|
+
function zi(t) {
|
|
4952
4943
|
const e = t?.mobile;
|
|
4953
4944
|
return {
|
|
4954
4945
|
rowGap: t?.rowGap ?? ge.rowGap,
|
|
@@ -4975,7 +4966,7 @@ function Ri(t) {
|
|
|
4975
4966
|
}
|
|
4976
4967
|
};
|
|
4977
4968
|
}
|
|
4978
|
-
function
|
|
4969
|
+
function Ri(t) {
|
|
4979
4970
|
const e = `.${t.rowClassName}`, a = `#${CSS.escape(t.buttonId)}`, n = `.${fe}-icon`, r = `.${fe}-copy`, i = `.${fe}-title`, o = `.${fe}-spark`, s = `@media (max-width: ${t.compactBelowWidth - 0.02}px)`, { sizes: c } = t, l = c.mobile.hideTitle ? "display:none;" : "display:flex;flex:0 1 auto;min-width:0;", p = c.mobile.hideSpark ? "display:none;" : "display:inline-flex;", g = c.mobile.hideLogo ? "display:none !important;width:0 !important;height:0 !important;flex:0 0 0 !important;overflow:hidden !important;" : "display:inline-flex;";
|
|
4980
4971
|
return `
|
|
4981
4972
|
${e}{
|
|
@@ -5104,13 +5095,13 @@ ${s}{
|
|
|
5104
5095
|
}
|
|
5105
5096
|
`.trim();
|
|
5106
5097
|
}
|
|
5107
|
-
function
|
|
5098
|
+
function Hi(t) {
|
|
5108
5099
|
return new Promise((e) => window.setTimeout(e, t));
|
|
5109
5100
|
}
|
|
5110
|
-
function
|
|
5111
|
-
const { hostSelector: n, rowClassName: r = "gengage-inline-launcher-row", siblingSelector: i, siblingPlacement: o = "before", rowPlacement: s = "end", title: c = "Ask", iconUrl: l, primaryColor: p = "#6366f1", textColor: g = "#222222", fontFamily: h = "inherit", borderRadius: m = "3px", showSparkIcon: x = !0, desktopMinWidth: v = 0, enableOnMobile: u = !1, disabledPageTypes: d = ["pdp"], hideFloatingLauncher: _ = !0, mountPollFrames: y = 90, debounceMs: b = 90, buttonId: A =
|
|
5101
|
+
function Fi(t, e, a) {
|
|
5102
|
+
const { hostSelector: n, rowClassName: r = "gengage-inline-launcher-row", siblingSelector: i, siblingPlacement: o = "before", rowPlacement: s = "end", title: c = "Ask", iconUrl: l, primaryColor: p = "#6366f1", textColor: g = "#222222", fontFamily: h = "inherit", borderRadius: m = "3px", showSparkIcon: x = !0, desktopMinWidth: v = 0, enableOnMobile: u = !1, disabledPageTypes: d = ["pdp"], hideFloatingLauncher: _ = !0, mountPollFrames: y = 90, debounceMs: b = 90, buttonId: A = Ni } = t, L = t.ariaLabel ?? c, E = t.siblingRestoreParentSelector ?? n, T = u && v > 0 ? v : 576, N = zi(t.size), F = `${Mi}-${A}`;
|
|
5112
5103
|
let X = !1, C = !1, R = null, D = null, z = null, k = null;
|
|
5113
|
-
const
|
|
5104
|
+
const O = () => {
|
|
5114
5105
|
if (u && v > 0 && window.innerWidth < v && t.mobileHost && t.mobileHost) {
|
|
5115
5106
|
const M = t.mobileHost;
|
|
5116
5107
|
return {
|
|
@@ -5135,7 +5126,7 @@ function Di(t, e, a) {
|
|
|
5135
5126
|
].join("|"), q = () => {
|
|
5136
5127
|
if (document.getElementById(F)) return;
|
|
5137
5128
|
const M = document.createElement("style");
|
|
5138
|
-
M.id = F, M.textContent =
|
|
5129
|
+
M.id = F, M.textContent = Ri({
|
|
5139
5130
|
primaryColor: p,
|
|
5140
5131
|
textColor: g,
|
|
5141
5132
|
fontFamily: h,
|
|
@@ -5145,16 +5136,16 @@ function Di(t, e, a) {
|
|
|
5145
5136
|
buttonId: A,
|
|
5146
5137
|
sizes: N
|
|
5147
5138
|
}), document.head.appendChild(M);
|
|
5148
|
-
},
|
|
5139
|
+
}, U = (M) => {
|
|
5149
5140
|
if (!_ || !a.shadowRoot) return;
|
|
5150
|
-
const H = a.shadowRoot.getElementById(
|
|
5141
|
+
const H = a.shadowRoot.getElementById(Ot);
|
|
5151
5142
|
if (!M) {
|
|
5152
5143
|
H?.remove();
|
|
5153
5144
|
return;
|
|
5154
5145
|
}
|
|
5155
5146
|
if (H) return;
|
|
5156
5147
|
const ee = document.createElement("style");
|
|
5157
|
-
ee.id =
|
|
5148
|
+
ee.id = Ot, ee.textContent = ".gengage-chat-launcher-container,.gengage-fl{display:none!important;}", a.shadowRoot.appendChild(ee);
|
|
5158
5149
|
}, ne = (M) => {
|
|
5159
5150
|
const H = document.querySelector(M);
|
|
5160
5151
|
return H instanceof HTMLElement ? H : null;
|
|
@@ -5211,7 +5202,7 @@ function Di(t, e, a) {
|
|
|
5211
5202
|
const ee = document.createElement("span");
|
|
5212
5203
|
if (ee.className = `${fe}-title`, ee.textContent = c, H.appendChild(ee), M.appendChild(H), x) {
|
|
5213
5204
|
const pe = document.createElement("span");
|
|
5214
|
-
pe.className = `${fe}-spark`, pe.innerHTML =
|
|
5205
|
+
pe.className = `${fe}-spark`, pe.innerHTML = Bi, M.appendChild(pe);
|
|
5215
5206
|
}
|
|
5216
5207
|
return M.addEventListener("click", () => e.onClick()), M;
|
|
5217
5208
|
}, se = (M, H, ee) => {
|
|
@@ -5226,26 +5217,26 @@ function Di(t, e, a) {
|
|
|
5226
5217
|
const M = ne(z.hostSelector);
|
|
5227
5218
|
M && $(M), z = null;
|
|
5228
5219
|
}
|
|
5229
|
-
k = null,
|
|
5220
|
+
k = null, U(!1), X = !1;
|
|
5230
5221
|
}, w = (M) => !(M && d.includes(M) || v > 0 && window.innerWidth < v && !u), Y = async (M) => {
|
|
5231
5222
|
const H = M ?? a.getPageType();
|
|
5232
5223
|
if (!w(H))
|
|
5233
5224
|
return re(), !1;
|
|
5234
5225
|
q();
|
|
5235
|
-
const ee =
|
|
5226
|
+
const ee = O();
|
|
5236
5227
|
z && B(z) !== B(ee) && re();
|
|
5237
5228
|
for (let pe = 0; pe < y; pe += 1) {
|
|
5238
5229
|
if (!w(H))
|
|
5239
5230
|
return re(), !1;
|
|
5240
|
-
const V =
|
|
5231
|
+
const V = O(), G = ne(V.hostSelector), J = K(V);
|
|
5241
5232
|
if (G && (!V.siblingSelector || J)) {
|
|
5242
5233
|
z && B(z) !== B(V) && re(), J && S(J);
|
|
5243
5234
|
let ie = G.querySelector(`.${r}`);
|
|
5244
5235
|
ie instanceof HTMLElement || (ie = document.createElement("div"), ie.className = r, V.rowPlacement === "start" ? G.insertBefore(ie, G.firstChild) : G.appendChild(ie));
|
|
5245
5236
|
let Z = ie.querySelector(`#${CSS.escape(A)}`);
|
|
5246
|
-
return Z instanceof HTMLButtonElement ? D = Z : (Z = te(), D = Z, ie.appendChild(Z)), J && se(ie, J, Z), Q(Z), C ? Z.classList.add(`${fe}--active`) : Z.classList.remove(`${fe}--active`),
|
|
5237
|
+
return Z instanceof HTMLButtonElement ? D = Z : (Z = te(), D = Z, ie.appendChild(Z)), J && se(ie, J, Z), Q(Z), C ? Z.classList.add(`${fe}--active`) : Z.classList.remove(`${fe}--active`), U(!0), X = !0, z = V, !0;
|
|
5247
5238
|
}
|
|
5248
|
-
await
|
|
5239
|
+
await Hi(16);
|
|
5249
5240
|
}
|
|
5250
5241
|
return re(), !1;
|
|
5251
5242
|
}, ce = () => {
|
|
@@ -5268,7 +5259,7 @@ function Di(t, e, a) {
|
|
|
5268
5259
|
}
|
|
5269
5260
|
};
|
|
5270
5261
|
}
|
|
5271
|
-
var
|
|
5262
|
+
var Di = /* @__PURE__ */ new Set([
|
|
5272
5263
|
"audio/ogg",
|
|
5273
5264
|
"audio/mpeg",
|
|
5274
5265
|
"audio/mp3",
|
|
@@ -5282,7 +5273,7 @@ function it(t) {
|
|
|
5282
5273
|
}
|
|
5283
5274
|
function Ui(t, e = "audio/ogg") {
|
|
5284
5275
|
const a = e.split(";")[0].trim();
|
|
5285
|
-
if (!
|
|
5276
|
+
if (!Di.has(a)) return null;
|
|
5286
5277
|
try {
|
|
5287
5278
|
const n = new Audio(`data:${e};base64,${t}`);
|
|
5288
5279
|
return ya.add(n), n.addEventListener("ended", () => it(n), { once: !0 }), n.play().catch(() => {
|
|
@@ -5292,7 +5283,7 @@ function Ui(t, e = "audio/ogg") {
|
|
|
5292
5283
|
return null;
|
|
5293
5284
|
}
|
|
5294
5285
|
}
|
|
5295
|
-
var
|
|
5286
|
+
var Oi = /* @__PURE__ */ new Set([
|
|
5296
5287
|
"P",
|
|
5297
5288
|
"DIV",
|
|
5298
5289
|
"H1",
|
|
@@ -5315,24 +5306,24 @@ var ji = /* @__PURE__ */ new Set([
|
|
|
5315
5306
|
"DT",
|
|
5316
5307
|
"DD"
|
|
5317
5308
|
]);
|
|
5318
|
-
function
|
|
5309
|
+
function ji(t) {
|
|
5319
5310
|
const e = [];
|
|
5320
5311
|
let a = [];
|
|
5321
|
-
for (const n of t) n.nodeType === Node.ELEMENT_NODE &&
|
|
5312
|
+
for (const n of t) n.nodeType === Node.ELEMENT_NODE && Oi.has(n.tagName) ? (a.length > 0 && (e.push(a), a = []), e.push([n])) : a.push(n);
|
|
5322
5313
|
return a.length > 0 && e.push(a), e;
|
|
5323
5314
|
}
|
|
5324
|
-
function
|
|
5315
|
+
function qi(t) {
|
|
5325
5316
|
for (const e of t) for (const a of e) if (a.nodeType === Node.ELEMENT_NODE && (a.tagName === "TABLE" || a.querySelector?.("table"))) return !0;
|
|
5326
5317
|
return !1;
|
|
5327
5318
|
}
|
|
5328
|
-
function
|
|
5319
|
+
function $i() {
|
|
5329
5320
|
return typeof window > "u" || typeof window.matchMedia != "function" ? !1 : window.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
5330
5321
|
}
|
|
5331
|
-
function
|
|
5322
|
+
function Vi(t) {
|
|
5332
5323
|
const { container: e, html: a, delayMs: n = 30, onTick: r, onComplete: i } = t, o = document.createElement("template");
|
|
5333
5324
|
o.innerHTML = a;
|
|
5334
|
-
const s =
|
|
5335
|
-
if (
|
|
5325
|
+
const s = ji(o.content.childNodes);
|
|
5326
|
+
if ($i() || s.length <= 1 || qi(s))
|
|
5336
5327
|
return e.innerHTML = a, i?.(), {
|
|
5337
5328
|
complete() {
|
|
5338
5329
|
},
|
|
@@ -5367,7 +5358,7 @@ function Gi(t) {
|
|
|
5367
5358
|
function jt(t) {
|
|
5368
5359
|
return t !== void 0 && /[\p{L}\p{N}_]/u.test(t);
|
|
5369
5360
|
}
|
|
5370
|
-
function
|
|
5361
|
+
function Gi(t) {
|
|
5371
5362
|
const { container: e, mentions: a, onProductClick: n } = t;
|
|
5372
5363
|
if (a.length === 0) return;
|
|
5373
5364
|
const r = /* @__PURE__ */ new Map();
|
|
@@ -5400,23 +5391,23 @@ function Wi(t) {
|
|
|
5400
5391
|
}
|
|
5401
5392
|
}
|
|
5402
5393
|
}
|
|
5403
|
-
var
|
|
5394
|
+
var Wi = /* @__PURE__ */ new Set([
|
|
5404
5395
|
"search",
|
|
5405
5396
|
"info",
|
|
5406
5397
|
"review",
|
|
5407
5398
|
"similar"
|
|
5408
|
-
]),
|
|
5399
|
+
]), Ki = /* @__PURE__ */ new Set([
|
|
5409
5400
|
"quickAnswer",
|
|
5410
5401
|
"reviewSummary",
|
|
5411
5402
|
"searchDiscovery",
|
|
5412
5403
|
"launchDiscovery",
|
|
5413
5404
|
"exploreTogetherV2"
|
|
5414
5405
|
]);
|
|
5415
|
-
function
|
|
5416
|
-
return !!(t.icon &&
|
|
5406
|
+
function Yi(t) {
|
|
5407
|
+
return !!(t.icon && Wi.has(t.icon) || t.action?.type && Ki.has(t.action.type));
|
|
5417
5408
|
}
|
|
5418
|
-
var Xe = "gengage_choice_prompter_dismissed",
|
|
5419
|
-
function
|
|
5409
|
+
var Xe = "gengage_choice_prompter_dismissed", Zi = "gengage_choice_prompter_dismissed_global";
|
|
5410
|
+
function Xi(t) {
|
|
5420
5411
|
const e = document.createElement("div");
|
|
5421
5412
|
e.className = "gengage-chat-choice-prompter gds-card", e.dataset.gengagePart = "choice-prompter";
|
|
5422
5413
|
const a = document.createElement("div");
|
|
@@ -5438,11 +5429,11 @@ function Qi(t) {
|
|
|
5438
5429
|
}
|
|
5439
5430
|
function qt() {
|
|
5440
5431
|
try {
|
|
5441
|
-
sessionStorage.removeItem(Xe), sessionStorage.removeItem(
|
|
5432
|
+
sessionStorage.removeItem(Xe), sessionStorage.removeItem(Zi);
|
|
5442
5433
|
} catch {
|
|
5443
5434
|
}
|
|
5444
5435
|
}
|
|
5445
|
-
function
|
|
5436
|
+
function Qi(t) {
|
|
5446
5437
|
try {
|
|
5447
5438
|
const e = sessionStorage.getItem(Xe);
|
|
5448
5439
|
return e ? JSON.parse(e).includes(t) : !1;
|
|
@@ -5457,10 +5448,10 @@ function bt(t) {
|
|
|
5457
5448
|
} catch {
|
|
5458
5449
|
}
|
|
5459
5450
|
}
|
|
5460
|
-
function
|
|
5451
|
+
function Ji(t) {
|
|
5461
5452
|
t && bt(t);
|
|
5462
5453
|
}
|
|
5463
|
-
var
|
|
5454
|
+
var eo = "gengage_assistant", to = 3, Le = "sessions", ye = "context", Se = "payload", we = "favorites";
|
|
5464
5455
|
function De(t) {
|
|
5465
5456
|
return new Promise((e, a) => {
|
|
5466
5457
|
t.onsuccess = () => e(t.result), t.onerror = () => a(t.error);
|
|
@@ -5471,8 +5462,8 @@ function Ne(t) {
|
|
|
5471
5462
|
t.oncomplete = () => e(), t.onerror = () => a(t.error), t.onabort = () => a(t.error ?? new DOMException("Transaction aborted"));
|
|
5472
5463
|
});
|
|
5473
5464
|
}
|
|
5474
|
-
var
|
|
5475
|
-
constructor(t =
|
|
5465
|
+
var ao = class {
|
|
5466
|
+
constructor(t = eo, e = to) {
|
|
5476
5467
|
this._db = null, this._dbName = t, this._version = e;
|
|
5477
5468
|
}
|
|
5478
5469
|
async open() {
|
|
@@ -5598,15 +5589,15 @@ var no = class {
|
|
|
5598
5589
|
if (!this._db) throw new Error("GengageIndexedDB: database not open. Call open() first.");
|
|
5599
5590
|
return this._db;
|
|
5600
5591
|
}
|
|
5601
|
-
},
|
|
5592
|
+
}, no = [
|
|
5602
5593
|
"comparisonTable",
|
|
5603
5594
|
"groupList",
|
|
5604
5595
|
"productDetailsSimilars",
|
|
5605
5596
|
"productList"
|
|
5606
|
-
],
|
|
5597
|
+
], ro = class {
|
|
5607
5598
|
constructor(t) {
|
|
5608
5599
|
this._lockCount = 1, this._hiddenByUser = !1, this._lastPanelContentType = null, this._chatShown = !1, this._isFavoritesMode = !1, this._lastExtended = !1, this._onChange = t.onChange;
|
|
5609
|
-
const e = new Set(
|
|
5600
|
+
const e = new Set(no);
|
|
5610
5601
|
t.productDetailsInPanel && e.add("productDetails"), this._panelContentTypes = e;
|
|
5611
5602
|
}
|
|
5612
5603
|
get isExtended() {
|
|
@@ -5634,7 +5625,7 @@ var no = class {
|
|
|
5634
5625
|
const t = this.isExtended;
|
|
5635
5626
|
t !== this._lastExtended && (this._lastExtended = t, this._onChange(t));
|
|
5636
5627
|
}
|
|
5637
|
-
},
|
|
5628
|
+
}, io = class {
|
|
5638
5629
|
constructor(t) {
|
|
5639
5630
|
this.deps = t, 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;
|
|
5640
5631
|
}
|
|
@@ -5790,10 +5781,10 @@ var no = class {
|
|
|
5790
5781
|
function $t(t) {
|
|
5791
5782
|
return t === "user_message" || t === "inputText";
|
|
5792
5783
|
}
|
|
5793
|
-
function
|
|
5784
|
+
function oo(t) {
|
|
5794
5785
|
return t.similarsAppend && t.currentPanelType === "ProductDetailsPanel" && t.hasPanelContent && !t.isPanelLoading ? "appendSimilars" : t.componentType === "ProductGrid" && !t.isFirstPanelContentInStream && t.hasPanelContent && !t.isPanelLoading ? "append" : "replace";
|
|
5795
5786
|
}
|
|
5796
|
-
var Vt = 1,
|
|
5787
|
+
var Vt = 1, so = "gengage:chat-history:index", co = "gengage:chat-history:session", lo = 12, go = "Image attachment";
|
|
5797
5788
|
function Pe(t, e) {
|
|
5798
5789
|
const a = t.replace(/\s+/g, " ").trim();
|
|
5799
5790
|
return a.length <= e ? a : `${a.slice(0, Math.max(0, e - 1)).trimEnd()}…`;
|
|
@@ -5815,21 +5806,21 @@ function Gt(t) {
|
|
|
5815
5806
|
return null;
|
|
5816
5807
|
}
|
|
5817
5808
|
}
|
|
5818
|
-
function
|
|
5809
|
+
function po(t, e) {
|
|
5819
5810
|
return `${encodeURIComponent(t)}::${encodeURIComponent(e || "__guest__")}`;
|
|
5820
5811
|
}
|
|
5821
5812
|
function ot(t) {
|
|
5822
|
-
return `${
|
|
5813
|
+
return `${so}:${t}`;
|
|
5823
5814
|
}
|
|
5824
|
-
function
|
|
5825
|
-
return `${
|
|
5815
|
+
function Ue(t, e) {
|
|
5816
|
+
return `${co}:${t}:${e}`;
|
|
5826
5817
|
}
|
|
5827
5818
|
function wa(t) {
|
|
5828
5819
|
if (t.silent) return !1;
|
|
5829
5820
|
const e = typeof t.content == "string" ? ke(t.content) : "", a = "attachment" in t && t.attachment !== void 0;
|
|
5830
5821
|
return e.length > 0 || t.uiSpec !== void 0 || a;
|
|
5831
5822
|
}
|
|
5832
|
-
function
|
|
5823
|
+
function ho(t, e = go) {
|
|
5833
5824
|
return t.filter((a) => !(a.status === "streaming" && !wa(a))).map((a) => {
|
|
5834
5825
|
const n = {
|
|
5835
5826
|
id: a.id,
|
|
@@ -5840,13 +5831,13 @@ function uo(t, e = po) {
|
|
|
5840
5831
|
return a.threadId !== void 0 && (n.threadId = a.threadId), a.content !== void 0 && (n.content = a.content), a.attachment !== void 0 && ke(n.content ?? "").length === 0 && (n.content = e), a.uiSpec !== void 0 && (n.uiSpec = a.uiSpec), a.frontendOnly && (n.frontendOnly = !0), a.silent && (n.silent = !0), a.renderHint !== void 0 && (n.renderHint = a.renderHint), a.photoAnalysis !== void 0 && (n.photoAnalysis = a.photoAnalysis), n;
|
|
5841
5832
|
});
|
|
5842
5833
|
}
|
|
5843
|
-
function
|
|
5834
|
+
function uo(t) {
|
|
5844
5835
|
const e = t.find((n) => n.role === "user" && !n.silent && typeof n.content == "string" && ke(n.content).length > 0);
|
|
5845
5836
|
if (e?.content) return Pe(ke(e.content), 72);
|
|
5846
5837
|
const a = t.find((n) => wa(n));
|
|
5847
5838
|
return a?.content ? Pe(ke(a.content), 72) : "New chat";
|
|
5848
5839
|
}
|
|
5849
|
-
function
|
|
5840
|
+
function mo(t) {
|
|
5850
5841
|
for (let e = t.length - 1; e >= 0; e--) {
|
|
5851
5842
|
const a = t[e];
|
|
5852
5843
|
if (!(!a || a.silent)) {
|
|
@@ -5866,26 +5857,26 @@ function fo(t) {
|
|
|
5866
5857
|
}
|
|
5867
5858
|
return "";
|
|
5868
5859
|
}
|
|
5869
|
-
function
|
|
5860
|
+
function fo(t) {
|
|
5870
5861
|
return t.filter((e) => !e.silent).length;
|
|
5871
5862
|
}
|
|
5872
|
-
function
|
|
5863
|
+
function bo(t) {
|
|
5873
5864
|
return {
|
|
5874
5865
|
...t,
|
|
5875
5866
|
title: Pe(ke(t.title), 72) || "New chat",
|
|
5876
5867
|
preview: Pe(ke(t.preview), 140)
|
|
5877
5868
|
};
|
|
5878
5869
|
}
|
|
5879
|
-
function
|
|
5870
|
+
function vo(t) {
|
|
5880
5871
|
return {
|
|
5881
5872
|
...t,
|
|
5882
5873
|
title: Pe(ke(t.title), 72) || "New chat",
|
|
5883
5874
|
preview: Pe(ke(t.preview), 140)
|
|
5884
5875
|
};
|
|
5885
5876
|
}
|
|
5886
|
-
var
|
|
5877
|
+
var xo = class {
|
|
5887
5878
|
constructor(t, e, a = typeof window < "u" ? window.localStorage : null) {
|
|
5888
|
-
this._appId = t, this._userId = e, this._storage = a, this._scope =
|
|
5879
|
+
this._appId = t, this._userId = e, this._storage = a, this._scope = po(t, e);
|
|
5889
5880
|
}
|
|
5890
5881
|
createHistoryId() {
|
|
5891
5882
|
return crypto.randomUUID();
|
|
@@ -5895,17 +5886,17 @@ var yo = class {
|
|
|
5895
5886
|
}
|
|
5896
5887
|
listSessions() {
|
|
5897
5888
|
const t = Gt(this._storage?.getItem(ot(this._scope)) ?? null);
|
|
5898
|
-
return t ? t.map(
|
|
5889
|
+
return t ? t.map(bo).sort((e, a) => a.updatedAt.localeCompare(e.updatedAt)) : [];
|
|
5899
5890
|
}
|
|
5900
5891
|
loadSession(t) {
|
|
5901
|
-
const e = Gt(this._storage?.getItem(
|
|
5902
|
-
return !e || e.version !== Vt ? null :
|
|
5892
|
+
const e = Gt(this._storage?.getItem(Ue(this._scope, t)) ?? null);
|
|
5893
|
+
return !e || e.version !== Vt ? null : vo(e);
|
|
5903
5894
|
}
|
|
5904
5895
|
saveSession(t) {
|
|
5905
5896
|
if (!this._storage) return null;
|
|
5906
|
-
const e =
|
|
5897
|
+
const e = ho(t.messages, t.attachmentPlaceholder);
|
|
5907
5898
|
if (!e.some((g) => g.role === "user" && !g.silent && typeof g.content == "string" && ke(g.content).length > 0)) return null;
|
|
5908
|
-
const a = (/* @__PURE__ */ new Date()).toISOString(), n =
|
|
5899
|
+
const a = (/* @__PURE__ */ new Date()).toISOString(), n = uo(e), r = mo(e), i = {};
|
|
5909
5900
|
for (const [g, h] of t.panelSnapshots)
|
|
5910
5901
|
h.querySelector(".gengage-chat-panel-skeleton") || (i[g] = h.innerHTML);
|
|
5911
5902
|
const o = {};
|
|
@@ -5924,7 +5915,7 @@ var yo = class {
|
|
|
5924
5915
|
preview: r,
|
|
5925
5916
|
createdAt: t.chatCreatedAt,
|
|
5926
5917
|
updatedAt: a,
|
|
5927
|
-
messageCount:
|
|
5918
|
+
messageCount: fo(e),
|
|
5928
5919
|
pageType: t.pageType,
|
|
5929
5920
|
sku: t.sku,
|
|
5930
5921
|
messages: e,
|
|
@@ -5947,16 +5938,16 @@ var yo = class {
|
|
|
5947
5938
|
pageType: l.pageType,
|
|
5948
5939
|
sku: l.sku,
|
|
5949
5940
|
sourceSessionId: l.sourceSessionId
|
|
5950
|
-
}); p.length >
|
|
5941
|
+
}); p.length > lo; ) {
|
|
5951
5942
|
const g = p.pop();
|
|
5952
|
-
g && this._storage.removeItem(
|
|
5943
|
+
g && this._storage.removeItem(Ue(this._scope, g.id));
|
|
5953
5944
|
}
|
|
5954
5945
|
return this._commitRecord(l, p) ? l : null;
|
|
5955
5946
|
}
|
|
5956
5947
|
deleteSession(t) {
|
|
5957
5948
|
if (!this._storage) return;
|
|
5958
5949
|
const e = this.listSessions().filter((a) => a.id !== t);
|
|
5959
|
-
this._storage.removeItem(
|
|
5950
|
+
this._storage.removeItem(Ue(this._scope, t));
|
|
5960
5951
|
try {
|
|
5961
5952
|
this._storage.setItem(ot(this._scope), JSON.stringify(e));
|
|
5962
5953
|
} catch {
|
|
@@ -5966,12 +5957,12 @@ var yo = class {
|
|
|
5966
5957
|
if (!this._storage) return !1;
|
|
5967
5958
|
const a = [...e];
|
|
5968
5959
|
for (; a.length > 0; ) try {
|
|
5969
|
-
return this._storage.setItem(
|
|
5960
|
+
return this._storage.setItem(Ue(this._scope, t.id), JSON.stringify(t)), this._storage.setItem(ot(this._scope), JSON.stringify(a)), !0;
|
|
5970
5961
|
} catch {
|
|
5971
5962
|
const n = a.pop();
|
|
5972
5963
|
if (!n) break;
|
|
5973
5964
|
if (n.id !== t.id) {
|
|
5974
|
-
this._storage.removeItem(
|
|
5965
|
+
this._storage.removeItem(Ue(this._scope, n.id));
|
|
5975
5966
|
continue;
|
|
5976
5967
|
}
|
|
5977
5968
|
break;
|
|
@@ -6097,7 +6088,7 @@ var yo = class {
|
|
|
6097
6088
|
close() {
|
|
6098
6089
|
this._db?.close(), this._db = null;
|
|
6099
6090
|
}
|
|
6100
|
-
}, st = (t) => `${t}:assistant`,
|
|
6091
|
+
}, st = (t) => `${t}:assistant`, yo = class {
|
|
6101
6092
|
constructor() {
|
|
6102
6093
|
this.groups = {}, this.pinnedToBottom = !0, this.userInteracting = !1, this.focusedThreadId = null, this.shown = !1, this.lastAutoAnchoredGroupId = null, this.scrollRequest = null, this._nextScrollId = 1;
|
|
6103
6094
|
}
|
|
@@ -6162,14 +6153,14 @@ var yo = class {
|
|
|
6162
6153
|
return this.groups[st(t)]?.readState;
|
|
6163
6154
|
}
|
|
6164
6155
|
};
|
|
6165
|
-
function
|
|
6156
|
+
function wo(t, e) {
|
|
6166
6157
|
for (let a = t.length - 1; a >= 0; a--) {
|
|
6167
6158
|
const n = t[a], r = e.getAssistantReadState(n);
|
|
6168
6159
|
if (r !== void 0 && r !== "seen") return n;
|
|
6169
6160
|
}
|
|
6170
6161
|
return null;
|
|
6171
6162
|
}
|
|
6172
|
-
var
|
|
6163
|
+
var _o = /^HTTP\s+\d{3}\b/i, ko = [
|
|
6173
6164
|
/response body is null/i,
|
|
6174
6165
|
/streaming not supported/i,
|
|
6175
6166
|
/ECONNREFUSED/i,
|
|
@@ -6180,7 +6171,7 @@ var ko = /^HTTP\s+\d{3}\b/i, Co = [
|
|
|
6180
6171
|
/502\s+bad gateway/i,
|
|
6181
6172
|
/503\s+service unavailable/i,
|
|
6182
6173
|
/504\s+gateway timeout/i
|
|
6183
|
-
],
|
|
6174
|
+
], Co = [
|
|
6184
6175
|
/Traceback\s*\(/i,
|
|
6185
6176
|
/\bSyntaxError\b/,
|
|
6186
6177
|
/\bReferenceError\b/,
|
|
@@ -6192,24 +6183,24 @@ var ko = /^HTTP\s+\d{3}\b/i, Co = [
|
|
|
6192
6183
|
/<anonymous>/i,
|
|
6193
6184
|
/ChunkLoadError/i,
|
|
6194
6185
|
/UnhandledPromiseRejection/i
|
|
6195
|
-
],
|
|
6196
|
-
function
|
|
6186
|
+
], So = 720;
|
|
6187
|
+
function Eo(t, e) {
|
|
6197
6188
|
if (Qt(t)) return !0;
|
|
6198
6189
|
const a = t.message.trim();
|
|
6199
|
-
if (
|
|
6190
|
+
if (_o.test(a) || ko.some((i) => i.test(a))) return !0;
|
|
6200
6191
|
const n = e.trim();
|
|
6201
|
-
if (n.length >
|
|
6192
|
+
if (n.length > So) return !0;
|
|
6202
6193
|
const r = n.split(/\n/).length;
|
|
6203
|
-
return !!(r >= 6 ||
|
|
6194
|
+
return !!(r >= 6 || Co.some((i) => i.test(n)) || r >= 3 && /\bat\s+/.test(n));
|
|
6204
6195
|
}
|
|
6205
|
-
var _a = "gengage_kvkk_shown",
|
|
6196
|
+
var _a = "gengage_kvkk_shown", Po = [
|
|
6206
6197
|
"kvkk",
|
|
6207
6198
|
"kişisel veri",
|
|
6208
6199
|
"kisisel veri"
|
|
6209
|
-
],
|
|
6200
|
+
], Lo = /\b6698\b/;
|
|
6210
6201
|
function xt(t) {
|
|
6211
6202
|
const e = t.toLowerCase();
|
|
6212
|
-
return
|
|
6203
|
+
return Po.some((a) => e.includes(a)) || Lo.test(e);
|
|
6213
6204
|
}
|
|
6214
6205
|
function Kt(t) {
|
|
6215
6206
|
try {
|
|
@@ -6224,7 +6215,7 @@ function ct(t) {
|
|
|
6224
6215
|
} catch {
|
|
6225
6216
|
}
|
|
6226
6217
|
}
|
|
6227
|
-
function
|
|
6218
|
+
function To(t, e = {}) {
|
|
6228
6219
|
const a = new DOMParser().parseFromString(t, "text/html").body, n = Array.from(a.children);
|
|
6229
6220
|
let r = !1;
|
|
6230
6221
|
for (const i of n) if (xt(i.textContent ?? "")) {
|
|
@@ -6233,34 +6224,34 @@ function Ao(t, e = {}) {
|
|
|
6233
6224
|
}
|
|
6234
6225
|
return !r && e.fallbackToFirstBlock === !0 && n[0] && n[0].remove(), a.innerHTML.trim();
|
|
6235
6226
|
}
|
|
6236
|
-
function
|
|
6227
|
+
function Ao(t, e = {}) {
|
|
6237
6228
|
const a = new DOMParser().parseFromString(t, "text/html"), n = Array.from(a.body.children);
|
|
6238
6229
|
for (const r of n) if (xt(r.textContent ?? "")) return r.outerHTML;
|
|
6239
6230
|
return e.fallbackToFirstBlock === !0 ? n[0]?.outerHTML ?? null : null;
|
|
6240
6231
|
}
|
|
6241
|
-
var
|
|
6232
|
+
var Io = {
|
|
6242
6233
|
tr: "TURKISH",
|
|
6243
6234
|
en: "ENGLISH",
|
|
6244
6235
|
de: "GERMAN",
|
|
6245
6236
|
fr: "FRENCH"
|
|
6246
6237
|
};
|
|
6247
|
-
function
|
|
6248
|
-
return t ?
|
|
6238
|
+
function Mo(t) {
|
|
6239
|
+
return t ? Io[t.toLowerCase().slice(0, 2)] ?? "TURKISH" : "TURKISH";
|
|
6249
6240
|
}
|
|
6250
|
-
var Bo = ':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--panel-restore.gengage-chat-bubble--active{outline:none}.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-footer-link{max-width:100%;color:inherit;text-underline-offset:.22em;justify-content:center;align-items:center;text-decoration-line:underline;text-decoration-color:#0000;text-decoration-thickness:1.5px;transition:color .2s,text-decoration-color .2s;display:inline-flex}.gengage-chat-footer-link:hover,.gengage-chat-footer-link:focus-visible{color:var(--gengage-chat-footer-link-hover-color,var(--gengage-brand-accent-mid,var(--ai-accent-end,#f768f2)));-webkit-text-decoration-color:var(--gengage-brand-accent-end,#ffed74);text-decoration-color:var(--gengage-brand-accent-end,#ffed74)}@supports ((-webkit-background-clip:text) or (background-clip:text)){.gengage-chat-footer-link:hover,.gengage-chat-footer-link:focus-visible{background-image:linear-gradient(90deg, var(--gengage-brand-accent-start,var(--ai-accent-start,#0b24d6)) 0%, var(--gengage-brand-accent-start,var(--ai-accent-start,#0b24d6)) 42%, var(--gengage-brand-accent-mid,var(--ai-accent-end,#f768f2)) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}}.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-inline-question-buttons{flex-wrap:wrap;align-items:flex-start;gap:12px;padding:10px 0 4px;display:flex}.gengage-chat-inline-question-btn{border:1px solid var(--ds-chip-border);border-radius:var(--radius-pill);background:var(--ds-chip-bg);max-width:100%;min-height:46px;color:var(--text-primary);text-align:left;white-space:normal;cursor:pointer;flex:0 auto;justify-content:flex-start;padding:11px 18px;font-size:13px;font-weight:700;line-height:1.4;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s;box-shadow:0 1px #1118270a}.gengage-chat-inline-question-btn:hover{background:var(--ds-chip-bg-hover);border-color:color-mix(in srgb, var(--client-primary) 16%, var(--ds-chip-border));box-shadow:0 4px 12px #11182714}.gengage-chat-inline-question-btn:active{background:var(--ds-chip-bg-active);border-color:var(--ds-chip-border-active);color:var(--text-primary);transform:translateY(1px);box-shadow:0 1px 4px #1118270f}.gengage-chat-inline-question-icon{color:color-mix(in srgb, var(--client-primary) 38%, var(--text-muted));flex:none;font-size:12px;line-height:1;transform:translateY(-1px)}.gengage-chat-inline-question-label{display:inline}.gengage-chat-root--mobile .gengage-chat-inline-question-buttons{gap:10px}.gengage-chat-root--mobile .gengage-chat-inline-question-btn{width:auto;max-width:min(100%,34rem);padding:12px 16px;font-size:12.5px}.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{color:var(--text-secondary);background:0 0;border:none;padding:14px 32px 10px;font-size:13px;line-height:1.55}.gengage-chat-kvkk-content{min-width:0}.gengage-chat-kvkk-content p{margin:0}.gengage-chat-kvkk-content a{color:inherit;margin-top:8px;text-decoration:underline;display:inline-block}.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-inline-question-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:none}.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,.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-img{object-fit:contain;width:calc(100% - 8px);height:calc(100% - 8px);position:absolute;inset:4px}.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:100%;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%;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-product-grid-wrapper--grouped{gap:12px}.gengage-chat-product-grid-sections{flex-direction:column;gap:20px;display:flex}.gengage-chat-product-grid-section{border-top:1px solid color-mix(in srgb, var(--border-default) 70%, transparent);flex-direction:column;gap:10px;padding:14px 0 18px;display:flex}.gengage-chat-product-grid-section:first-child{border-top:0;padding-top:4px}.gengage-chat-product-grid-section:last-child{padding-bottom:4px}.gengage-chat-product-grid-section-head{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;padding:0 2px;display:flex}.gengage-chat-product-grid-section-title{letter-spacing:0;min-width:0;color:var(--text-primary);overflow-wrap:anywhere;margin:0;font-family:inherit;font-size:15px;font-weight:700;line-height:1.25}.gengage-chat-product-grid-section-count{border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface-card-soft);min-height:22px;color:var(--text-secondary);letter-spacing:0;white-space:nowrap;flex:none;justify-content:center;align-items:center;padding:1px 8px;font-family:inherit;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.gengage-chat-panel .gengage-chat-product-grid--section{padding-top:0;padding-bottom:2px}.gengage-chat-root--mobile .gengage-chat-product-grid-sections{gap:16px}.gengage-chat-root--mobile .gengage-chat-product-grid-section{gap:8px;padding:12px 0 14px}.gengage-chat-root--mobile .gengage-chat-product-grid-section-title{font-size:14px}.gengage-chat-root--mobile .gengage-chat-product-grid-section-count{min-height:20px;padding-inline:8px;font-size:10.5px}.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:auto;background:var(--surface-card);border:1px solid var(--border-default);z-index:5;opacity:1;border-bottom:none;border-radius:16px 16px 0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;width:auto;max-width:none;margin-left:0;margin-right:0;padding:12px 20px;transition:opacity .2s,transform .2s;display:grid;position:absolute;bottom:-16px;left:-16px;right:-16px;transform:translateY(0);box-shadow:0 -2px 8px #00000014}.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-panel{flex-direction:column;gap:12px;display:flex}.gengage-chat-categories-group-summary{border:1px solid color-mix(in srgb, var(--client-primary) 20%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 6%, var(--surface-card));border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.gengage-chat-categories-group-selection{border:1px solid color-mix(in srgb, var(--client-primary) 24%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 10%, white);max-width:100%;color:var(--client-primary);border-radius:999px;align-self:flex-start;align-items:center;gap:10px;padding:6px 12px 6px 8px;display:inline-flex}.gengage-chat-categories-group-selection-image{object-fit:cover;border:1px solid color-mix(in srgb, white 82%, var(--border-subtle) 18%);background:var(--surface-card-muted);-webkit-user-drag:none;-webkit-user-select:none;user-select:none;border-radius:999px;flex:none;width:30px;height:30px}.gengage-chat-categories-group-selection-title{min-width:0;color:inherit;font-size:13px;font-weight:800;line-height:1.25}.gengage-chat-categories-group-chips{flex-wrap:wrap;gap:6px;display:flex}.gengage-chat-categories-group-chip{border:1px solid var(--border-default);background:color-mix(in srgb, white 78%, var(--surface-card-soft));color:var(--text-secondary);border-radius:999px;align-items:center;padding:5px 10px;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.gengage-chat-categories-group-chip--accent{border-color:color-mix(in srgb, var(--client-primary) 22%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 10%, white);color:var(--client-primary)}.gengage-chat-categories-group-reason{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.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-footer-link:focus-visible,.gengage-chat-send:focus-visible,.gengage-chat-action-btn:focus-visible,.gengage-chat-inline-question-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-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--neutral{background:var(--surface-shell);color:var(--text-inverse)}.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}', zo = /* @__PURE__ */ new Set([
|
|
6241
|
+
var No = ':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--panel-restore.gengage-chat-bubble--active{outline:none}.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-footer-link{max-width:100%;color:inherit;text-underline-offset:.22em;justify-content:center;align-items:center;text-decoration-line:underline;text-decoration-color:#0000;text-decoration-thickness:1.5px;transition:color .2s,text-decoration-color .2s;display:inline-flex}.gengage-chat-footer-link:hover,.gengage-chat-footer-link:focus-visible{color:var(--gengage-chat-footer-link-hover-color,var(--gengage-brand-accent-mid,var(--ai-accent-end,#f768f2)));-webkit-text-decoration-color:var(--gengage-brand-accent-end,#ffed74);text-decoration-color:var(--gengage-brand-accent-end,#ffed74)}@supports ((-webkit-background-clip:text) or (background-clip:text)){.gengage-chat-footer-link:hover,.gengage-chat-footer-link:focus-visible{background-image:linear-gradient(90deg, var(--gengage-brand-accent-start,var(--ai-accent-start,#0b24d6)) 0%, var(--gengage-brand-accent-start,var(--ai-accent-start,#0b24d6)) 42%, var(--gengage-brand-accent-mid,var(--ai-accent-end,#f768f2)) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}}.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-inline-question-buttons{flex-wrap:wrap;align-items:flex-start;gap:12px;padding:10px 0 4px;display:flex}.gengage-chat-inline-question-btn{border:1px solid var(--ds-chip-border);border-radius:var(--radius-pill);background:var(--ds-chip-bg);max-width:100%;min-height:46px;color:var(--text-primary);text-align:left;white-space:normal;cursor:pointer;flex:0 auto;justify-content:flex-start;padding:11px 18px;font-size:13px;font-weight:700;line-height:1.4;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s;box-shadow:0 1px #1118270a}.gengage-chat-inline-question-btn:hover{background:var(--ds-chip-bg-hover);border-color:color-mix(in srgb, var(--client-primary) 16%, var(--ds-chip-border));box-shadow:0 4px 12px #11182714}.gengage-chat-inline-question-btn:active{background:var(--ds-chip-bg-active);border-color:var(--ds-chip-border-active);color:var(--text-primary);transform:translateY(1px);box-shadow:0 1px 4px #1118270f}.gengage-chat-inline-question-icon{color:color-mix(in srgb, var(--client-primary) 38%, var(--text-muted));flex:none;font-size:12px;line-height:1;transform:translateY(-1px)}.gengage-chat-inline-question-label{display:inline}.gengage-chat-root--mobile .gengage-chat-inline-question-buttons{gap:10px}.gengage-chat-root--mobile .gengage-chat-inline-question-btn{width:auto;max-width:min(100%,34rem);padding:12px 16px;font-size:12.5px}.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{color:var(--text-secondary);background:0 0;border:none;padding:14px 32px 10px;font-size:13px;line-height:1.55}.gengage-chat-kvkk-content{min-width:0}.gengage-chat-kvkk-content p{margin:0}.gengage-chat-kvkk-content a{color:inherit;margin-top:8px;text-decoration:underline;display:inline-block}.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-inline-question-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:none}.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,.gengage-chat-panel-ai-zone .gengage-chat-ai-top-picks-scroll>:first-child .gengage-chat-ai-toppick-img{object-fit:contain;width:calc(100% - 8px);height:calc(100% - 8px);position:absolute;inset:4px}.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:100%;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%;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-product-grid-wrapper--grouped{gap:12px}.gengage-chat-product-grid-sections{flex-direction:column;gap:20px;display:flex}.gengage-chat-product-grid-section{border-top:1px solid color-mix(in srgb, var(--border-default) 70%, transparent);flex-direction:column;gap:10px;padding:14px 0 18px;display:flex}.gengage-chat-product-grid-section:first-child{border-top:0;padding-top:4px}.gengage-chat-product-grid-section:last-child{padding-bottom:4px}.gengage-chat-product-grid-section-head{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;padding:0 2px;display:flex}.gengage-chat-product-grid-section-title{letter-spacing:0;min-width:0;color:var(--text-primary);overflow-wrap:anywhere;margin:0;font-family:inherit;font-size:15px;font-weight:700;line-height:1.25}.gengage-chat-product-grid-section-count{border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface-card-soft);min-height:22px;color:var(--text-secondary);letter-spacing:0;white-space:nowrap;flex:none;justify-content:center;align-items:center;padding:1px 8px;font-family:inherit;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.gengage-chat-panel .gengage-chat-product-grid--section{padding-top:0;padding-bottom:2px}.gengage-chat-root--mobile .gengage-chat-product-grid-sections{gap:16px}.gengage-chat-root--mobile .gengage-chat-product-grid-section{gap:8px;padding:12px 0 14px}.gengage-chat-root--mobile .gengage-chat-product-grid-section-title{font-size:14px}.gengage-chat-root--mobile .gengage-chat-product-grid-section-count{min-height:20px;padding-inline:8px;font-size:10.5px}.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:auto;background:var(--surface-card);border:1px solid var(--border-default);z-index:5;opacity:1;border-bottom:none;border-radius:16px 16px 0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;width:auto;max-width:none;margin-left:0;margin-right:0;padding:12px 20px;transition:opacity .2s,transform .2s;display:grid;position:absolute;bottom:-16px;left:-16px;right:-16px;transform:translateY(0);box-shadow:0 -2px 8px #00000014}.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-panel{flex-direction:column;gap:12px;display:flex}.gengage-chat-categories-group-summary{border:1px solid color-mix(in srgb, var(--client-primary) 20%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 6%, var(--surface-card));border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.gengage-chat-categories-group-selection{border:1px solid color-mix(in srgb, var(--client-primary) 24%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 10%, white);max-width:100%;color:var(--client-primary);border-radius:999px;align-self:flex-start;align-items:center;gap:10px;padding:6px 12px 6px 8px;display:inline-flex}.gengage-chat-categories-group-selection-image{object-fit:cover;border:1px solid color-mix(in srgb, white 82%, var(--border-subtle) 18%);background:var(--surface-card-muted);-webkit-user-drag:none;-webkit-user-select:none;user-select:none;border-radius:999px;flex:none;width:30px;height:30px}.gengage-chat-categories-group-selection-title{min-width:0;color:inherit;font-size:13px;font-weight:800;line-height:1.25}.gengage-chat-categories-group-chips{flex-wrap:wrap;gap:6px;display:flex}.gengage-chat-categories-group-chip{border:1px solid var(--border-default);background:color-mix(in srgb, white 78%, var(--surface-card-soft));color:var(--text-secondary);border-radius:999px;align-items:center;padding:5px 10px;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.gengage-chat-categories-group-chip--accent{border-color:color-mix(in srgb, var(--client-primary) 22%, var(--border-default));background:color-mix(in srgb, var(--client-primary) 10%, white);color:var(--client-primary)}.gengage-chat-categories-group-reason{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.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-footer-link:focus-visible,.gengage-chat-send:focus-visible,.gengage-chat-action-btn:focus-visible,.gengage-chat-inline-question-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-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--neutral{background:var(--surface-shell);color:var(--text-inverse)}.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}', Bo = /* @__PURE__ */ new Set([
|
|
6251
6242
|
"launchSingleProduct",
|
|
6252
6243
|
"launchProductList",
|
|
6253
6244
|
"launchHomepage"
|
|
6254
|
-
]), Yt = /* @__PURE__ */ new Set(["PanelRestoreCard"]),
|
|
6255
|
-
function
|
|
6245
|
+
]), Yt = /* @__PURE__ */ new Set(["PanelRestoreCard"]), zo = /* @__PURE__ */ new Set(["ComparisonTable", "ProductDetailsPanel"]);
|
|
6246
|
+
function Ro(t) {
|
|
6256
6247
|
const e = t?.type;
|
|
6257
6248
|
if (e) {
|
|
6258
|
-
if (
|
|
6249
|
+
if (zo.has(e)) return e;
|
|
6259
6250
|
if (e === "ProductGrid")
|
|
6260
6251
|
return t.props?.similarsAppend === !0 ? void 0 : e;
|
|
6261
6252
|
}
|
|
6262
6253
|
}
|
|
6263
|
-
function
|
|
6254
|
+
function Ho(t) {
|
|
6264
6255
|
if (!t.trim()) return !1;
|
|
6265
6256
|
const e = document.createElement("template");
|
|
6266
6257
|
return e.innerHTML = ve(t), (e.content.textContent ?? "").trim().length > 0;
|
|
@@ -6274,7 +6265,7 @@ function lt(t) {
|
|
|
6274
6265
|
function gt(t) {
|
|
6275
6266
|
return t?.type === "ProductGrid" && t.props?.similarsAppend === !0;
|
|
6276
6267
|
}
|
|
6277
|
-
var
|
|
6268
|
+
var Fo = class Me extends Ya {
|
|
6278
6269
|
constructor(...e) {
|
|
6279
6270
|
super(...e), this._shadow = null, this._rootEl = null, this._backdropEl = null, this._launcher = null, this._floatingLauncher = null, this._inlineLauncher = null, this._drawer = null, this._bridge = null, this._drawerVisible = !1, this._pillLauncherApply = null, this._hostScrollLockActive = !1, this._hostOverflowRestore = null, this._hostScrollLockViewport = null, this._hostScrollPinning = !1, this._preventHostDocumentTouchMove = (a) => {
|
|
6280
6271
|
this._hostScrollLockActive && (this._hostScrollEventShouldReachChatScroller(a) || a.preventDefault());
|
|
@@ -6284,7 +6275,7 @@ var Do = class Me extends Ya {
|
|
|
6284
6275
|
if (!this._hostScrollLockActive || !this._hostScrollLockViewport || this._hostScrollPinning || this._isMobileViewport && window.visualViewport && window.visualViewport.height < window.innerHeight) return;
|
|
6285
6276
|
const a = this._hostScrollLockViewport;
|
|
6286
6277
|
window.scrollX === a.x && window.scrollY === a.y || (this._hostScrollPinning = !0, window.scrollTo(a.x, a.y), this._hostScrollPinning = !1);
|
|
6287
|
-
}, this._messages = [], this._currentMessageId = 0, this._abortControllers = /* @__PURE__ */ new Set(), this._currentThreadId = null, this._lastThreadId = null, this._chatCreatedAt = "", this._lastBackendContext = null, this._productSort = { type: "related" }, this._comparisonSelectMode = !1, this._comparisonSelectedSkus = [], this._comparisonSelectionWarning = null, this._comparisonRefreshRafId = null, this._lastAppliedKeyboardInset = 0, this._syncVisualVh = null, this._viewedProductSkus = /* @__PURE__ */ new Set(), this._panelAiSpecByThread = /* @__PURE__ */ new Map(), this._choicePrompterEl = null, this._openState = "full", this._mobileBreakpoint = 768, this._isMobileViewport = !1, this._gaPrevMainPaneExpanded = !1, this._pdpLaunched = !1, this._plpLaunched = !1, this._homepageLaunched = !1, this._entryContextPrimed = !1, this._contextPrimingInFlight = !1, this._queuedUserMessages = [], this._productContextUnavailableSku = null, this._i18n = Re, this._extendedModeManager = null, this._activeTypewriter = null, this._activeTtsHandle = null, this._activeRequestThreadId = null, this._skuToProductItem = {}, this._conversationMode = null, this._initComplete = !1, this._pendingActions = [], this._bridgeContext = null, this._cartQuantity = null, this._threadsWithFirstBot = /* @__PURE__ */ new Set(), this._panel = null, this._localPanelHistory = [], this._currentPanelSource = null, this._currentInlineProductSummaryRecord = null, this._session = null, this._historyStorage = null, this._activeHistorySessionId = null, this._presentation = new
|
|
6278
|
+
}, this._messages = [], this._currentMessageId = 0, this._abortControllers = /* @__PURE__ */ new Set(), this._currentThreadId = null, this._lastThreadId = null, this._chatCreatedAt = "", this._lastBackendContext = null, this._productSort = { type: "related" }, this._comparisonSelectMode = !1, this._comparisonSelectedSkus = [], this._comparisonSelectionWarning = null, this._comparisonRefreshRafId = null, this._lastAppliedKeyboardInset = 0, this._syncVisualVh = null, this._viewedProductSkus = /* @__PURE__ */ new Set(), this._panelAiSpecByThread = /* @__PURE__ */ new Map(), this._choicePrompterEl = null, this._openState = "full", this._mobileBreakpoint = 768, this._isMobileViewport = !1, this._gaPrevMainPaneExpanded = !1, this._pdpLaunched = !1, this._plpLaunched = !1, this._homepageLaunched = !1, this._entryContextPrimed = !1, this._contextPrimingInFlight = !1, this._queuedUserMessages = [], this._productContextUnavailableSku = null, this._i18n = Re, this._extendedModeManager = null, this._activeTypewriter = null, this._activeTtsHandle = null, this._activeRequestThreadId = null, this._skuToProductItem = {}, this._conversationMode = null, this._initComplete = !1, this._pendingActions = [], this._bridgeContext = null, this._cartQuantity = null, this._threadsWithFirstBot = /* @__PURE__ */ new Set(), this._panel = null, this._localPanelHistory = [], this._currentPanelSource = null, this._currentInlineProductSummaryRecord = null, this._session = null, this._historyStorage = null, this._activeHistorySessionId = null, this._presentation = new yo(), this._presentationScrollTimerIds = /* @__PURE__ */ new Set(), this._eventCallbacks = /* @__PURE__ */ new Map(), this._pendingAddToCartKeys = /* @__PURE__ */ new Set(), this._lastSentAction = null, this._consecutiveErrorCount = 0, this._lastErrorMessage = "", this._launcherAnchorCleanup = null, this._modeController = new Un(), this._syncLauncherAnchor = null;
|
|
6288
6279
|
}
|
|
6289
6280
|
static {
|
|
6290
6281
|
this._MAX_COMPARISON_SELECTION = 5;
|
|
@@ -6311,7 +6302,7 @@ var Do = class Me extends Ya {
|
|
|
6311
6302
|
}
|
|
6312
6303
|
this._shadow = this.root.attachShadow({ mode: "open" });
|
|
6313
6304
|
const a = document.createElement("style");
|
|
6314
|
-
a.textContent =
|
|
6305
|
+
a.textContent = No, this._shadow.appendChild(a);
|
|
6315
6306
|
const n = this.root, r = (u, d) => {
|
|
6316
6307
|
d && Zt(d) && n.style.setProperty(u, d);
|
|
6317
6308
|
};
|
|
@@ -6319,7 +6310,7 @@ var Do = class Me extends Ya {
|
|
|
6319
6310
|
for (const [u, d] of Object.entries(e.theme)) u.startsWith("--") && typeof d == "string" && r(u, d);
|
|
6320
6311
|
this._applyDiscountedPriceColorVar(e.productPriceUi?.discountedPriceColor);
|
|
6321
6312
|
const i = document.createElement("div");
|
|
6322
|
-
i.className = "gengage-chat-root", i.lang =
|
|
6313
|
+
i.className = "gengage-chat-root", i.lang = Oe(e.locale), this._rootEl = i, this._shadow.appendChild(i);
|
|
6323
6314
|
const o = e.variant ?? "floating";
|
|
6324
6315
|
if (o === "inline" && i.classList.add("gengage-chat--inline"), o !== "inline") {
|
|
6325
6316
|
const u = document.createElement("div");
|
|
@@ -6329,7 +6320,7 @@ var Do = class Me extends Ya {
|
|
|
6329
6320
|
}
|
|
6330
6321
|
if (o === "floating") {
|
|
6331
6322
|
if (e.floatingLauncher)
|
|
6332
|
-
this._floatingLauncher =
|
|
6323
|
+
this._floatingLauncher = Ii(e.floatingLauncher, {
|
|
6333
6324
|
onSend: (u) => {
|
|
6334
6325
|
this.open({ initialMessage: u }), this._floatingLauncher?.showOpenChatButton();
|
|
6335
6326
|
},
|
|
@@ -6340,13 +6331,13 @@ var Do = class Me extends Ya {
|
|
|
6340
6331
|
onClick: () => this.open(),
|
|
6341
6332
|
ariaLabel: this._i18n.openButton
|
|
6342
6333
|
};
|
|
6343
|
-
e.launcherImageUrl !== void 0 ? u.imageUrl = e.launcherImageUrl : e.launcherSvg !== void 0 && (u.svgMarkup = e.launcherSvg), e.mobileLauncherImageUrl !== void 0 && (u.mobileImageUrl = e.mobileLauncherImageUrl), e.hideMobileLauncher !== void 0 && (u.hideMobile = e.hideMobileLauncher), e.mobileBreakpoint !== void 0 && (u.mobileBreakpoint = e.mobileBreakpoint), e.launcherTooltip !== void 0 && (u.tooltip = e.launcherTooltip), this._launcher =
|
|
6334
|
+
e.launcherImageUrl !== void 0 ? u.imageUrl = e.launcherImageUrl : e.launcherSvg !== void 0 && (u.svgMarkup = e.launcherSvg), e.mobileLauncherImageUrl !== void 0 && (u.mobileImageUrl = e.mobileLauncherImageUrl), e.hideMobileLauncher !== void 0 && (u.hideMobile = e.hideMobileLauncher), e.mobileBreakpoint !== void 0 && (u.mobileBreakpoint = e.mobileBreakpoint), e.launcherTooltip !== void 0 && (u.tooltip = e.launcherTooltip), this._launcher = Li(u), i.appendChild(this._launcher.container);
|
|
6344
6335
|
}
|
|
6345
6336
|
this._setupLauncherAnchor(e), e.inlineLauncher && this._setupInlineLauncher(e);
|
|
6346
6337
|
}
|
|
6347
6338
|
o === "overlay" && i.classList.add("gengage-chat--overlay");
|
|
6348
6339
|
const s = document.createElement("div");
|
|
6349
|
-
i.appendChild(s), this._drawer = new
|
|
6340
|
+
i.appendChild(s), this._drawer = new Bn(s, {
|
|
6350
6341
|
i18n: this._i18n,
|
|
6351
6342
|
onSend: (u, d) => this._sendMessage(u, d),
|
|
6352
6343
|
onClose: () => this.close(),
|
|
@@ -6416,10 +6407,10 @@ var Do = class Me extends Ya {
|
|
|
6416
6407
|
shouldBlockSoftAutoScroll: () => this._presentation.shouldBlockStreamAutoScroll(),
|
|
6417
6408
|
onReleasePresentationFocus: () => this._releasePresentationFocus()
|
|
6418
6409
|
}
|
|
6419
|
-
}), this._applyUiHints(), this._extendedModeManager = new
|
|
6410
|
+
}), this._applyUiHints(), this._extendedModeManager = new ro({
|
|
6420
6411
|
onChange: (u) => this._panel?.notifyExtension(u),
|
|
6421
6412
|
productDetailsInPanel: (e.isDemoWebsite ?? !1) && (e.productDetailsExtended ?? !1)
|
|
6422
|
-
}), this._panel = new
|
|
6413
|
+
}), this._panel = new io({
|
|
6423
6414
|
drawer: () => this._drawer,
|
|
6424
6415
|
shadow: () => this._shadow,
|
|
6425
6416
|
currentThreadId: () => this._currentThreadId,
|
|
@@ -6431,9 +6422,9 @@ var Do = class Me extends Ya {
|
|
|
6431
6422
|
const c = this._drawer.restorePanelState(e.accountId), l = e.panelMode ?? "auto";
|
|
6432
6423
|
l === "collapsed" ? this._drawer.setPanelCollapsed(!0) : l === "expanded" && this._drawer.setForceExpanded();
|
|
6433
6424
|
const p = sessionStorage.getItem("gengage_restore_session_id"), g = sessionStorage.getItem("gengage_restore_sku"), h = sessionStorage.getItem("gengage_restore_history_id"), m = !!(p && g);
|
|
6434
|
-
m && (sessionStorage.removeItem("gengage_restore_session_id"), sessionStorage.removeItem("gengage_restore_sku")), h && sessionStorage.removeItem("gengage_restore_history_id"), this._historyStorage = new
|
|
6425
|
+
m && (sessionStorage.removeItem("gengage_restore_session_id"), sessionStorage.removeItem("gengage_restore_sku")), h && sessionStorage.removeItem("gengage_restore_history_id"), this._historyStorage = new xo(this.config.accountId, this.config.session?.userId ?? "");
|
|
6435
6426
|
try {
|
|
6436
|
-
const u = new
|
|
6427
|
+
const u = new ao();
|
|
6437
6428
|
await u.open(), this._session = new Wt(u);
|
|
6438
6429
|
const d = h ? this._historyStorage.loadSession(h) : null;
|
|
6439
6430
|
d ? (this._activeHistorySessionId = d.id, await this._restoreFromHistoryRecord(d)) : await this._restoreFromIndexedDB(m);
|
|
@@ -6611,7 +6602,7 @@ var Do = class Me extends Ya {
|
|
|
6611
6602
|
}
|
|
6612
6603
|
_setupInlineLauncher(e) {
|
|
6613
6604
|
const a = e.inlineLauncher;
|
|
6614
|
-
a && (this._inlineLauncher =
|
|
6605
|
+
a && (this._inlineLauncher = Fi(a, { onClick: () => this.open() }, {
|
|
6615
6606
|
shadowRoot: this._shadow,
|
|
6616
6607
|
getPageType: () => this.config.pageContext?.pageType
|
|
6617
6608
|
}), this._inlineLauncher.sync(this.config.pageContext?.pageType), [
|
|
@@ -6732,7 +6723,7 @@ var Do = class Me extends Ya {
|
|
|
6732
6723
|
if (!this._drawer || !this._presentation.shown) return;
|
|
6733
6724
|
const e = this._orderedThreadIds();
|
|
6734
6725
|
if (e.length === 0) return;
|
|
6735
|
-
const a =
|
|
6726
|
+
const a = wo(e, this._presentation);
|
|
6736
6727
|
if (!a) return;
|
|
6737
6728
|
const n = `${a}:assistant`;
|
|
6738
6729
|
this._presentation.lastAutoAnchoredGroupId !== n && (this._presentation.userInteracting && !this._presentation.pinnedToBottom || this._drawer.scrollThreadIntoView(a, "smooth") && this._presentation.markGroupAutoAnchored(n));
|
|
@@ -7080,7 +7071,7 @@ var Do = class Me extends Ya {
|
|
|
7080
7071
|
}
|
|
7081
7072
|
if (this._maybeHandleDirectAddToCartCommand(e)) return;
|
|
7082
7073
|
}
|
|
7083
|
-
this._contextPrimingInFlight && (this._abortAllActiveRequests(), this._contextPrimingInFlight = !1, this._queuedUserMessages = []), this._ensureMobileFullSheetForPanel(), Ma(), this._messages.some((r) => r.role === "user") ||
|
|
7074
|
+
this._contextPrimingInFlight && (this._abortAllActiveRequests(), this._contextPrimingInFlight = !1, this._queuedUserMessages = []), this._ensureMobileFullSheetForPanel(), Ma(), this._messages.some((r) => r.role === "user") || Oa(), ze("chat", "sendMessage", {
|
|
7084
7075
|
mode: this._assistantMode,
|
|
7085
7076
|
hasAttachment: a !== void 0,
|
|
7086
7077
|
textLength: e.length
|
|
@@ -7137,7 +7128,7 @@ var Do = class Me extends Ya {
|
|
|
7137
7128
|
};
|
|
7138
7129
|
r(!0);
|
|
7139
7130
|
const i = _t();
|
|
7140
|
-
this._currentThreadId = i, this._lastThreadId = i, this._panel && !
|
|
7131
|
+
this._currentThreadId = i, this._lastThreadId = i, this._panel && !Bo.has(e.type) && (this._panel.lastActionType = e.type);
|
|
7141
7132
|
const o = a?.preservePanel === !0, s = a?.silent === !0 && a?.isContextPrime === !0, c = s && e.type === "launchSingleProduct";
|
|
7142
7133
|
let l;
|
|
7143
7134
|
if (o || (this._activeRequestThreadId = i), !a?.silent && !o && this._drawer?.setPresentationFocus(i), !a?.silent) {
|
|
@@ -7176,7 +7167,7 @@ var Do = class Me extends Ya {
|
|
|
7176
7167
|
role: f.role === "user" ? "user" : "model",
|
|
7177
7168
|
content: f.content ?? ""
|
|
7178
7169
|
})), b = {
|
|
7179
|
-
outputLanguage:
|
|
7170
|
+
outputLanguage: Mo(this.config.locale),
|
|
7180
7171
|
parentUrl: window.location.href,
|
|
7181
7172
|
windowWidth: String(window.innerWidth),
|
|
7182
7173
|
windowHeight: String(window.innerHeight),
|
|
@@ -7203,7 +7194,7 @@ var Do = class Me extends Ya {
|
|
|
7203
7194
|
session_id: this.config.session?.sessionId ?? "",
|
|
7204
7195
|
correlation_id: this.config.session?.sessionId ?? "",
|
|
7205
7196
|
type: A.type,
|
|
7206
|
-
locale:
|
|
7197
|
+
locale: Oe(this.config.locale),
|
|
7207
7198
|
meta: b,
|
|
7208
7199
|
context: {
|
|
7209
7200
|
...this._lastBackendContext ?? {},
|
|
@@ -7213,7 +7204,7 @@ var Do = class Me extends Ya {
|
|
|
7213
7204
|
};
|
|
7214
7205
|
this.config.session?.userId !== void 0 && (L.user_id = this.config.session.userId), this.config.session?.viewId !== void 0 && (L.view_id = this.config.session.viewId), A.payload !== void 0 && (L.payload = A.payload), !p && this.config.pageContext?.sku !== void 0 && (L.sku = this.config.pageContext.sku), !p && this.config.pageContext?.pageType !== void 0 && (L.page_type = this.config.pageContext.pageType);
|
|
7215
7206
|
let E = !1, T = !1, N = !1, F = !1, X = !1, C = !1;
|
|
7216
|
-
const R =
|
|
7207
|
+
const R = On();
|
|
7217
7208
|
let D = null, z = null;
|
|
7218
7209
|
const k = () => {
|
|
7219
7210
|
if (this._drawer && !F) {
|
|
@@ -7223,7 +7214,7 @@ var Do = class Me extends Ya {
|
|
|
7223
7214
|
}
|
|
7224
7215
|
X ? this._drawer.setPanelAiZoneState("hidden") : this._drawer.setPanelAiZoneState("analyzing", { analyzingLabel: this._i18n.aiAnalysisAnalyzingLabel });
|
|
7225
7216
|
}
|
|
7226
|
-
},
|
|
7217
|
+
}, O = (f) => {
|
|
7227
7218
|
if (!D || !this._drawer) return;
|
|
7228
7219
|
const S = this._buildRenderContext();
|
|
7229
7220
|
S.isStreaming = f;
|
|
@@ -7231,11 +7222,11 @@ var Do = class Me extends Ya {
|
|
|
7231
7222
|
F = !0, this._drawer.setPanelAiZoneState("results", { resultEl: P }), D = null;
|
|
7232
7223
|
}, B = (f, S, P) => {
|
|
7233
7224
|
if (f === "ProductGrid" || f === "CategoriesContainer") {
|
|
7234
|
-
N = !0,
|
|
7225
|
+
N = !0, O(P), k();
|
|
7235
7226
|
return;
|
|
7236
7227
|
}
|
|
7237
7228
|
S !== "appendSimilars" && S !== "append" && (N = !1, F = !1, D = null, this._drawer?.setPanelAiZoneState("hidden"));
|
|
7238
|
-
}, q = (f) => (f === "ProductGrid" || f === "CategoriesContainer") && (N || F || D !== null),
|
|
7229
|
+
}, q = (f) => (f === "ProductGrid" || f === "CategoriesContainer") && (N || F || D !== null), U = () => {
|
|
7239
7230
|
C || (C = !0, this._drawer?.removeTypingIndicator(), r(!1), this._bridge?.send("loadingMessage", { text: null }));
|
|
7240
7231
|
}, ne = (f, S, P) => {
|
|
7241
7232
|
if (!this._drawer || !this._panel) return;
|
|
@@ -7244,7 +7235,7 @@ var Do = class Me extends Ya {
|
|
|
7244
7235
|
const I = ft($);
|
|
7245
7236
|
if (I.isConsulting) {
|
|
7246
7237
|
const j = this._drawer.getPanelContentElement();
|
|
7247
|
-
if (j &&
|
|
7238
|
+
if (j && Ei(j, I, S)) {
|
|
7248
7239
|
this._comparisonSelectMode = !1, this._comparisonSelectedSkus = [], this._comparisonSelectionWarning = null, this._drawer.setComparisonDockContent(null), this._currentPanelSource = {
|
|
7249
7240
|
kind: "spec",
|
|
7250
7241
|
spec: f
|
|
@@ -7276,28 +7267,28 @@ var Do = class Me extends Ya {
|
|
|
7276
7267
|
if (S) {
|
|
7277
7268
|
const te = this.config.accountId;
|
|
7278
7269
|
if (!Kt(te)) {
|
|
7279
|
-
const se =
|
|
7270
|
+
const se = Ao($, j);
|
|
7280
7271
|
se && this._drawer?.showKvkkBanner(se), ct(te);
|
|
7281
7272
|
}
|
|
7282
7273
|
}
|
|
7283
|
-
$ =
|
|
7274
|
+
$ = To($, j), u = $;
|
|
7284
7275
|
}
|
|
7285
|
-
|
|
7276
|
+
Ho($) && U();
|
|
7286
7277
|
const Q = this._shadow?.querySelector(`[data-message-id="${d.id}"] .gengage-chat-bubble-text`);
|
|
7287
7278
|
if (Q ? Q.innerHTML = ve($) : (d.content = $, d.role === "assistant" && d.threadId && !this._threadsWithFirstBot.has(d.threadId) && (this._threadsWithFirstBot.add(d.threadId), this._drawer.markFirstBotMessage(d.id)), this._drawer.addMessage(d)), S)
|
|
7288
|
-
if (d.content = $, d.status = "done", yt(),
|
|
7279
|
+
if (d.content = $, d.status = "done", yt(), qn(d))
|
|
7289
7280
|
this._drawer?.updateBotMessage(d.id, $, "photo_analysis", d.photoAnalysis), d.threadId && this._focusPresentationThread(d.threadId, "auto");
|
|
7290
7281
|
else {
|
|
7291
7282
|
const te = this._shadow?.querySelector(`[data-message-id="${d.id}"] .gengage-chat-bubble-text`);
|
|
7292
7283
|
if (te) {
|
|
7293
7284
|
this._activeTypewriter?.cancel();
|
|
7294
7285
|
const se = P?.productMentions ? this._enrichProductMentionsWithUrls(P.productMentions) : void 0;
|
|
7295
|
-
this._activeTypewriter =
|
|
7286
|
+
this._activeTypewriter = Vi({
|
|
7296
7287
|
container: te,
|
|
7297
7288
|
html: ve($),
|
|
7298
7289
|
onTick: () => this._drawer?.scrollToBottomIfNeeded(),
|
|
7299
7290
|
onComplete: () => {
|
|
7300
|
-
this._activeTypewriter = null, se && se.length > 0 && te &&
|
|
7291
|
+
this._activeTypewriter = null, se && se.length > 0 && te && Gi({
|
|
7301
7292
|
container: te,
|
|
7302
7293
|
mentions: se,
|
|
7303
7294
|
onProductClick: (re) => {
|
|
@@ -7326,7 +7317,7 @@ var Do = class Me extends Ya {
|
|
|
7326
7317
|
if (!o && i !== this._activeRequestThreadId || S !== "chat") return;
|
|
7327
7318
|
$ && (this._clearAssistantPanelLikeStreamClearPanel(), E = !1, z = null);
|
|
7328
7319
|
const I = f.elements[f.root], j = I?.type ?? "unknown";
|
|
7329
|
-
if (
|
|
7320
|
+
if (jn(j, I?.props ?? {}, R, {
|
|
7330
7321
|
drawer: this._drawer,
|
|
7331
7322
|
ensureRendered: () => this._ensureAssistantMessageRendered(d),
|
|
7332
7323
|
cancelTypewriter: () => {
|
|
@@ -7352,16 +7343,16 @@ var Do = class Me extends Ya {
|
|
|
7352
7343
|
const w = se === "panel" && this._panel ? this._panel.toPanelSpec(f) : f;
|
|
7353
7344
|
if (se === "panel" && this._panel && !te && j === "ProductGrid" && I) {
|
|
7354
7345
|
const G = ft(I);
|
|
7355
|
-
if (G.isConsulting && !
|
|
7346
|
+
if (G.isConsulting && !Si(G)) {
|
|
7356
7347
|
z = f;
|
|
7357
7348
|
return;
|
|
7358
7349
|
}
|
|
7359
7350
|
G.isConsulting && (z = null);
|
|
7360
7351
|
}
|
|
7361
|
-
if (
|
|
7352
|
+
if (Ro(I) && U(), se === "panel" && this._panel && !te) {
|
|
7362
7353
|
const G = !T;
|
|
7363
7354
|
T = !0;
|
|
7364
|
-
const J = I?.props?.replacePanel === !0, ie = I?.props?.rankingState, Z = J || ie === "pending" || ie === "final" ? "replace" :
|
|
7355
|
+
const J = I?.props?.replacePanel === !0, ie = I?.props?.rankingState, Z = J || ie === "pending" || ie === "final" ? "replace" : oo({
|
|
7365
7356
|
componentType: j,
|
|
7366
7357
|
similarsAppend: I?.props?.similarsAppend === !0,
|
|
7367
7358
|
currentPanelType: this._panel.currentType,
|
|
@@ -7422,7 +7413,7 @@ var Do = class Me extends Ya {
|
|
|
7422
7413
|
G.length > 0 && this._bridge?.send("previewImages", { images: G });
|
|
7423
7414
|
}
|
|
7424
7415
|
const V = I?.children?.length ?? 0;
|
|
7425
|
-
if (j === "ProductGrid" && se === "panel" && !te && V > 1 && !this._isMobileViewport && !this._modeController.isChoicePrompterHidden && !this._comparisonSelectMode && !
|
|
7416
|
+
if (j === "ProductGrid" && se === "panel" && !te && V > 1 && !this._isMobileViewport && !this._modeController.isChoicePrompterHidden && !this._comparisonSelectMode && !Qi(this._currentThreadId ?? "") && (this._clearChoicePrompter(), this._choicePrompterEl = Xi({
|
|
7426
7417
|
heading: this._i18n.choicePrompterHeading,
|
|
7427
7418
|
suggestion: this._i18n.choicePrompterSuggestion,
|
|
7428
7419
|
ctaLabel: this._i18n.choicePrompterCta,
|
|
@@ -7438,7 +7429,7 @@ var Do = class Me extends Ya {
|
|
|
7438
7429
|
const G = I?.props?.buttons;
|
|
7439
7430
|
if (G && G.length > 0 && !M) {
|
|
7440
7431
|
const J = [], ie = [];
|
|
7441
|
-
for (const Z of G) if (
|
|
7432
|
+
for (const Z of G) if (Yi(Z)) {
|
|
7442
7433
|
const le = {
|
|
7443
7434
|
label: Z.label,
|
|
7444
7435
|
action: Z.action
|
|
@@ -7519,7 +7510,7 @@ var Do = class Me extends Ya {
|
|
|
7519
7510
|
},
|
|
7520
7511
|
onError: (f) => {
|
|
7521
7512
|
if (K && this._abortControllers.delete(K), !o && i !== this._activeRequestThreadId) return;
|
|
7522
|
-
X = !0, this._activeTypewriter?.cancel(), this._activeTypewriter = null, k(), D = null, z = null, r(!1), this._bridge?.send("loadingMessage", { text: null }), this._drawer?.removeTypingIndicator(), this._drawer?.clearInputAreaChips(),
|
|
7513
|
+
X = !0, this._activeTypewriter?.cancel(), this._activeTypewriter = null, k(), D = null, z = null, r(!1), this._bridge?.send("loadingMessage", { text: null }), this._drawer?.removeTypingIndicator(), this._drawer?.clearInputAreaChips(), Vn(R, {
|
|
7523
7514
|
drawer: this._drawer,
|
|
7524
7515
|
ensureRendered: () => {
|
|
7525
7516
|
},
|
|
@@ -7553,7 +7544,7 @@ var Do = class Me extends Ya {
|
|
|
7553
7544
|
j(), Q = !0, this._drawer?.showErrorWithRecovery(this._i18n.accountInactiveMessage, Y);
|
|
7554
7545
|
return;
|
|
7555
7546
|
}
|
|
7556
|
-
if (
|
|
7547
|
+
if (Eo(f, w)) {
|
|
7557
7548
|
j(), Q = !0, this._drawer?.showErrorWithRecovery(w, Y);
|
|
7558
7549
|
return;
|
|
7559
7550
|
}
|
|
@@ -7586,7 +7577,7 @@ var Do = class Me extends Ya {
|
|
|
7586
7577
|
const te = j?.type ?? "ProductGrid";
|
|
7587
7578
|
ne(Q, I, te), W(te, j, "replace", !1), T = !0;
|
|
7588
7579
|
}
|
|
7589
|
-
z = null, D &&
|
|
7580
|
+
z = null, D && O(!1), k(), !o && i === this._activeRequestThreadId && (this._activeRequestThreadId = null), this._consecutiveErrorCount = 0, this._lastErrorMessage = "", r(!1), this._bridge?.send("loadingMessage", { text: null }), this._drawer?.removeTypingIndicator(), $n(R, {
|
|
7590
7581
|
drawer: this._drawer,
|
|
7591
7582
|
ensureRendered: () => {
|
|
7592
7583
|
},
|
|
@@ -7887,7 +7878,7 @@ var Do = class Me extends Ya {
|
|
|
7887
7878
|
}
|
|
7888
7879
|
_formatHistoryTimestamp(e) {
|
|
7889
7880
|
try {
|
|
7890
|
-
return new Intl.DateTimeFormat(
|
|
7881
|
+
return new Intl.DateTimeFormat(Oe(this.config.locale), {
|
|
7891
7882
|
month: "short",
|
|
7892
7883
|
day: "numeric",
|
|
7893
7884
|
hour: "2-digit",
|
|
@@ -8200,7 +8191,7 @@ var Do = class Me extends Ya {
|
|
|
8200
8191
|
}
|
|
8201
8192
|
_toggleComparisonSku(e) {
|
|
8202
8193
|
if (e === "")
|
|
8203
|
-
this._comparisonSelectMode = !this._comparisonSelectMode, this._comparisonSelectionWarning = null, this._comparisonSelectMode && (
|
|
8194
|
+
this._comparisonSelectMode = !this._comparisonSelectMode, this._comparisonSelectionWarning = null, this._comparisonSelectMode && (Ji(this._currentThreadId ?? ""), this._clearChoicePrompter()), this._comparisonSelectMode || (this._comparisonSelectedSkus = [], this._comparisonSelectionWarning = null, Da());
|
|
8204
8195
|
else if (this._comparisonSelectedSkus.indexOf(e) >= 0)
|
|
8205
8196
|
this._comparisonSelectedSkus = this._comparisonSelectedSkus.filter((a) => a !== e), this._comparisonSelectionWarning = null;
|
|
8206
8197
|
else {
|
|
@@ -8210,7 +8201,7 @@ var Do = class Me extends Ya {
|
|
|
8210
8201
|
});
|
|
8211
8202
|
return;
|
|
8212
8203
|
}
|
|
8213
|
-
this._comparisonSelectedSkus = [...this._comparisonSelectedSkus, e], this._comparisonSelectionWarning = null,
|
|
8204
|
+
this._comparisonSelectedSkus = [...this._comparisonSelectedSkus, e], this._comparisonSelectionWarning = null, Ua(e);
|
|
8214
8205
|
}
|
|
8215
8206
|
this._comparisonRefreshRafId !== null && cancelAnimationFrame(this._comparisonRefreshRafId), this._comparisonRefreshRafId = requestAnimationFrame(() => {
|
|
8216
8207
|
this._comparisonRefreshRafId = null, this._refreshComparisonUI();
|
|
@@ -8373,7 +8364,7 @@ var Do = class Me extends Ya {
|
|
|
8373
8364
|
}
|
|
8374
8365
|
_buildRenderContext() {
|
|
8375
8366
|
const e = {
|
|
8376
|
-
locale:
|
|
8367
|
+
locale: Oe(this.config.locale),
|
|
8377
8368
|
onAction: (a) => {
|
|
8378
8369
|
if (a.type === "frontend_restore_panel_message") {
|
|
8379
8370
|
this._restorePanelFromFrontendMessage(a.payload);
|
|
@@ -8738,7 +8729,7 @@ var Do = class Me extends Ya {
|
|
|
8738
8729
|
};
|
|
8739
8730
|
}
|
|
8740
8731
|
_resolveUISpecRegistry() {
|
|
8741
|
-
return Ta(
|
|
8732
|
+
return Ta(Hr(), this.config.renderer?.registry);
|
|
8742
8733
|
}
|
|
8743
8734
|
_renderUISpec(e, a) {
|
|
8744
8735
|
const n = e.elements[e.root];
|
|
@@ -8746,7 +8737,7 @@ var Do = class Me extends Ya {
|
|
|
8746
8737
|
const c = me(n.props), l = me(c?.product) ?? c;
|
|
8747
8738
|
l && (this._currentInlineProductSummaryRecord = l);
|
|
8748
8739
|
}
|
|
8749
|
-
const r = this._resolveUISpecRegistry(), i = this.config.renderer?.unknownRenderer ?? da, o = (c, l) =>
|
|
8740
|
+
const r = this._resolveUISpecRegistry(), i = this.config.renderer?.unknownRenderer ?? da, o = (c, l) => Fr(c, l, r, i), s = this.config.renderer?.renderUISpec;
|
|
8750
8741
|
return s ? s(e, a, {
|
|
8751
8742
|
registry: r,
|
|
8752
8743
|
unknownRenderer: i,
|
|
@@ -8754,20 +8745,20 @@ var Do = class Me extends Ya {
|
|
|
8754
8745
|
}) : o(e, a);
|
|
8755
8746
|
}
|
|
8756
8747
|
};
|
|
8757
|
-
function
|
|
8758
|
-
return new
|
|
8748
|
+
function Wo() {
|
|
8749
|
+
return new Fo();
|
|
8759
8750
|
}
|
|
8760
8751
|
export {
|
|
8761
|
-
|
|
8752
|
+
Fi as a,
|
|
8762
8753
|
da as c,
|
|
8763
|
-
|
|
8754
|
+
Go as d,
|
|
8764
8755
|
bn as f,
|
|
8765
|
-
|
|
8766
|
-
|
|
8767
|
-
|
|
8768
|
-
|
|
8756
|
+
yo as i,
|
|
8757
|
+
Fr as l,
|
|
8758
|
+
Wo as n,
|
|
8759
|
+
Ii as o,
|
|
8769
8760
|
gt as r,
|
|
8770
|
-
|
|
8771
|
-
|
|
8761
|
+
Hr as s,
|
|
8762
|
+
Fo as t,
|
|
8772
8763
|
dt as u
|
|
8773
8764
|
};
|