@evelan/jexity-widget 0.19.3-canary.50 → 0.19.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- var Gt, _, lo, co, Ue, Xr, uo, ho, Fn, hn, Nt, po, jr, tr, nr, fo, gn = {}, xn = [], cs = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i, Yt = Array.isArray;
1
+ var Gt, _, lo, co, Fe, Xr, uo, ho, Un, hn, Nt, po, jr, tr, nr, fo, gn = {}, xn = [], cs = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i, Yt = Array.isArray;
2
2
  function Ie(t, e) {
3
3
  for (var n in e) t[n] = e[n];
4
4
  return t;
@@ -42,13 +42,13 @@ function mo(t) {
42
42
  }), mo(t);
43
43
  }
44
44
  function rr(t) {
45
- (!t.__d && (t.__d = !0) && Ue.push(t) && !vn.__r++ || Xr != _.debounceRendering) && ((Xr = _.debounceRendering) || uo)(vn);
45
+ (!t.__d && (t.__d = !0) && Fe.push(t) && !vn.__r++ || Xr != _.debounceRendering) && ((Xr = _.debounceRendering) || uo)(vn);
46
46
  }
47
47
  function vn() {
48
48
  try {
49
- for (var t, e = 1; Ue.length; ) Ue.length > e && Ue.sort(ho), t = Ue.shift(), e = Ue.length, ds(t);
49
+ for (var t, e = 1; Fe.length; ) Fe.length > e && Fe.sort(ho), t = Fe.shift(), e = Fe.length, ds(t);
50
50
  } finally {
51
- Ue.length = vn.__r = 0;
51
+ Fe.length = vn.__r = 0;
52
52
  }
53
53
  }
54
54
  function go(t, e, n, r, i, o, a, l, c, u, h) {
@@ -119,7 +119,7 @@ function ti(t) {
119
119
  };
120
120
  }
121
121
  function Cr(t, e, n, r, i, o, a, l, c, u) {
122
- var h, f, d, p, m, y, g, v, b, x, P, S, O, W, U, ae, L = e.type;
122
+ var h, f, d, p, m, y, g, v, b, x, P, S, O, W, F, ae, L = e.type;
123
123
  if (e.constructor !== void 0) return null;
124
124
  128 & n.__u && (c = !!(32 & n.__u), o = [l = e.__e = n.__e]), (h = _.__b) && h(e);
125
125
  e: if (typeof L == "function") {
@@ -128,8 +128,8 @@ function Cr(t, e, n, r, i, o, a, l, c, u) {
128
128
  if (b = e.props, x = L.prototype && L.prototype.render, P = (h = L.contextType) && r[h.__c], S = h ? P ? P.props.value : h.__ : r, n.__c ? v = (d = e.__c = n.__c).__ = d.__E : (x ? e.__c = d = new L(b, S) : (e.__c = d = new _e(b, S), d.constructor = L, d.render = ms), P && P.sub(d), d.state || (d.state = {}), d.__n = r, p = d.__d = !0, d.__h = [], d._sb = []), x && d.__s == null && (d.__s = d.state), x && L.getDerivedStateFromProps != null && (d.__s == d.state && (d.__s = Ie({}, d.__s)), Ie(d.__s, L.getDerivedStateFromProps(b, d.__s))), m = d.props, y = d.state, d.__v = e, p) x && L.getDerivedStateFromProps == null && d.componentWillMount != null && d.componentWillMount(), x && d.componentDidMount != null && d.__h.push(d.componentDidMount);
129
129
  else {
130
130
  if (x && L.getDerivedStateFromProps == null && b !== m && d.componentWillReceiveProps != null && d.componentWillReceiveProps(b, S), e.__v == n.__v || !d.__e && d.shouldComponentUpdate != null && d.shouldComponentUpdate(b, d.__s, S) === !1) {
131
- e.__v != n.__v && (d.props = b, d.state = d.__s, d.__d = !1), e.__e = n.__e, e.__k = n.__k, e.__k.some(function(F) {
132
- F && (F.__ = e);
131
+ e.__v != n.__v && (d.props = b, d.state = d.__s, d.__d = !1), e.__e = n.__e, e.__k = n.__k, e.__k.some(function(U) {
132
+ U && (U.__ = e);
133
133
  }), xn.push.apply(d.__h, d._sb), d._sb = [], d.__h.length && a.push(d);
134
134
  break e;
135
135
  }
@@ -141,17 +141,17 @@ function Cr(t, e, n, r, i, o, a, l, c, u) {
141
141
  else do
142
142
  d.__d = !1, O && O(e), h = d.render(d.props, d.state, d.context), d.state = d.__s;
143
143
  while (d.__d && ++W < 25);
144
- d.state = d.__s, d.getChildContext != null && (r = Ie(Ie({}, r), d.getChildContext())), x && !p && d.getSnapshotBeforeUpdate != null && (g = d.getSnapshotBeforeUpdate(m, y)), U = h != null && h.type === z && h.key == null ? bo(h.props.children) : h, l = go(t, Yt(U) ? U : [U], e, n, r, i, o, a, l, c, u), d.base = e.__e, e.__u &= -161, d.__h.length && a.push(d), v && (d.__E = d.__ = null);
145
- } catch (F) {
146
- if (a.length = f, e.__v = null, c || o != null) if (F.then) {
144
+ d.state = d.__s, d.getChildContext != null && (r = Ie(Ie({}, r), d.getChildContext())), x && !p && d.getSnapshotBeforeUpdate != null && (g = d.getSnapshotBeforeUpdate(m, y)), F = h != null && h.type === z && h.key == null ? bo(h.props.children) : h, l = go(t, Yt(F) ? F : [F], e, n, r, i, o, a, l, c, u), d.base = e.__e, e.__u &= -161, d.__h.length && a.push(d), v && (d.__E = d.__ = null);
145
+ } catch (U) {
146
+ if (a.length = f, e.__v = null, c || o != null) if (U.then) {
147
147
  for (e.__u |= c ? 160 : 128; l && l.nodeType == 8 && l.nextSibling; ) l = l.nextSibling;
148
148
  o != null && (o[o.indexOf(l)] = null), e.__e = l;
149
149
  } else {
150
150
  if (o != null) for (ae = o.length; ae--; ) Sr(o[ae]);
151
151
  ir(e);
152
152
  }
153
- else e.__e = n.__e, !e.__k && n.__k && (e.__k = n.__k), F.then || ir(e);
154
- _.__e(F, e, n);
153
+ else e.__e = n.__e, !e.__k && n.__k && (e.__k = n.__k), U.then || ir(e);
154
+ _.__e(U, e, n);
155
155
  }
156
156
  } else o == null && e.__v == n.__v ? (e.__k = n.__k, e.__e = n.__e) : l = e.__e = fs(n.__e, e, n, r, i, o, a, c, u);
157
157
  return (h = _.diffed) && h(e), 128 & e.__u ? void 0 : l;
@@ -272,9 +272,9 @@ Gt = xn.slice, _ = { __e: function(t, e, n, r) {
272
272
  n = this.__s != null && this.__s != this.state ? this.__s : this.__s = Ie({}, this.state), typeof t == "function" && (t = t(Ie({}, n), this.props)), t && Ie(n, t), t != null && this.__v && (e && this._sb.push(e), rr(this));
273
273
  }, _e.prototype.forceUpdate = function(t) {
274
274
  this.__v && (this.__e = !0, t && this.__h.push(t), rr(this));
275
- }, _e.prototype.render = z, Ue = [], uo = typeof Promise == "function" ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, ho = function(t, e) {
275
+ }, _e.prototype.render = z, Fe = [], uo = typeof Promise == "function" ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, ho = function(t, e) {
276
276
  return t.__v.__b - e.__v.__b;
277
- }, vn.__r = 0, Fn = Math.random().toString(8), hn = "__d" + Fn, Nt = "__a" + Fn, po = /(PointerCapture)$|Capture$/i, jr = 0, tr = ti(!1), nr = ti(!0), fo = 0;
277
+ }, vn.__r = 0, Un = Math.random().toString(8), hn = "__d" + Un, Nt = "__a" + Un, po = /(PointerCapture)$|Capture$/i, jr = 0, tr = ti(!1), nr = ti(!0), fo = 0;
278
278
  var vs = 0;
279
279
  function s(t, e, n, r, i, o) {
280
280
  e || (e = {});
@@ -284,9 +284,9 @@ function s(t, e, n, r, i, o) {
284
284
  if (typeof t == "function" && (a = t.defaultProps)) for (l in a) c[l] === void 0 && (c[l] = a[l]);
285
285
  return _.vnode && _.vnode(u), u;
286
286
  }
287
- var He, B, Vn, ni, bt = 0, ko = [], Q = _, ri = Q.__b, ii = Q.__r, oi = Q.diffed, ai = Q.__c, si = Q.unmount, li = Q.__;
287
+ var Qe, B, Vn, ni, bt = 0, ko = [], H = _, ri = H.__b, ii = H.__r, oi = H.diffed, ai = H.__c, si = H.unmount, li = H.__;
288
288
  function _t(t, e) {
289
- Q.__h && Q.__h(B, t, bt || e), bt = 0;
289
+ H.__h && H.__h(B, t, bt || e), bt = 0;
290
290
  var n = B.__H || (B.__H = { __: [], __h: [] });
291
291
  return t >= n.__.length && n.__.push({}), n.__[t];
292
292
  }
@@ -294,7 +294,7 @@ function I(t) {
294
294
  return bt = 1, pe(To, t);
295
295
  }
296
296
  function pe(t, e, n) {
297
- var r = _t(He++, 2);
297
+ var r = _t(Qe++, 2);
298
298
  if (r.t = t, !r.__c && (r.__ = [n ? n(e) : To(void 0, e), function(l) {
299
299
  var c = r.__N ? r.__N[0] : r.__[0], u = r.t(c, l);
300
300
  c !== u && (r.__N = [u, r.__[1]], r.__c.setState({}));
@@ -327,12 +327,12 @@ function pe(t, e, n) {
327
327
  return r.__N || r.__;
328
328
  }
329
329
  function T(t, e) {
330
- var n = _t(He++, 3);
331
- !Q.__s && Rr(n.__H, e) && (n.__ = t, n.u = e, B.__H.__h.push(n));
330
+ var n = _t(Qe++, 3);
331
+ !H.__s && Rr(n.__H, e) && (n.__ = t, n.u = e, B.__H.__h.push(n));
332
332
  }
333
333
  function Jt(t, e) {
334
- var n = _t(He++, 4);
335
- !Q.__s && Rr(n.__H, e) && (n.__ = t, n.u = e, B.__h.push(n));
334
+ var n = _t(Qe++, 4);
335
+ !H.__s && Rr(n.__H, e) && (n.__ = t, n.u = e, B.__h.push(n));
336
336
  }
337
337
  function be(t) {
338
338
  return bt = 5, Z(function() {
@@ -353,7 +353,7 @@ function _o(t, e, n) {
353
353
  }, n == null ? n : n.concat(t));
354
354
  }
355
355
  function Z(t, e) {
356
- var n = _t(He++, 7);
356
+ var n = _t(Qe++, 7);
357
357
  return Rr(n.__H, e) && (n.__ = t(), n.__H = e, n.__h = t), n.__;
358
358
  }
359
359
  function N(t, e) {
@@ -362,14 +362,14 @@ function N(t, e) {
362
362
  }, e);
363
363
  }
364
364
  function Zt(t) {
365
- var e = B.context[t.__c], n = _t(He++, 9);
365
+ var e = B.context[t.__c], n = _t(Qe++, 9);
366
366
  return n.c = t, e ? (n.__ == null && (n.__ = !0, e.sub(B)), e.props.value) : t.__;
367
367
  }
368
368
  function jo(t, e) {
369
- Q.useDebugValue && Q.useDebugValue(e ? e(t) : t);
369
+ H.useDebugValue && H.useDebugValue(e ? e(t) : t);
370
370
  }
371
371
  function So() {
372
- var t = _t(He++, 11);
372
+ var t = _t(Qe++, 11);
373
373
  if (!t.__) {
374
374
  for (var e = B.__v; e !== null && !e.__m && e.__ !== null; ) e = e.__;
375
375
  var n = e.__m || (e.__m = [0, 0]);
@@ -383,27 +383,27 @@ function ci() {
383
383
  if (t.__P && e) try {
384
384
  e.__h.some(or), e.__h.some(Co), e.__h = [];
385
385
  } catch (n) {
386
- e.__h = [], Q.__e(n, t.__v);
386
+ e.__h = [], H.__e(n, t.__v);
387
387
  }
388
388
  }
389
389
  }
390
- Q.__b = function(t) {
390
+ H.__b = function(t) {
391
391
  B = null, ri && ri(t);
392
- }, Q.__ = function(t, e) {
392
+ }, H.__ = function(t, e) {
393
393
  t && e.__k && e.__k.__m && (t.__m = e.__k.__m), li && li(t, e);
394
- }, Q.__r = function(t) {
395
- ii && ii(t), He = 0;
394
+ }, H.__r = function(t) {
395
+ ii && ii(t), Qe = 0;
396
396
  var e = (B = t.__c).__H;
397
397
  e && (Vn === B ? (e.__h = [], B.__h = [], e.__.some(function(n) {
398
398
  n.__N && (n.__ = n.__N), n.u = n.__N = void 0;
399
- })) : (e.__h.length && ci(), He = 0)), Vn = B;
400
- }, Q.diffed = function(t) {
399
+ })) : (e.__h.length && ci(), Qe = 0)), Vn = B;
400
+ }, H.diffed = function(t) {
401
401
  oi && oi(t);
402
402
  var e = t.__c;
403
- e && e.__H && (e.__H.__h.length && (ko.push(e) !== 1 && ni === Q.requestAnimationFrame || ((ni = Q.requestAnimationFrame) || bs)(ci)), e.__H.__.some(function(n) {
403
+ e && e.__H && (e.__H.__h.length && (ko.push(e) !== 1 && ni === H.requestAnimationFrame || ((ni = H.requestAnimationFrame) || bs)(ci)), e.__H.__.some(function(n) {
404
404
  n.u && (n.__H = n.u, n.u = void 0);
405
405
  })), Vn = B = null;
406
- }, Q.__c = function(t, e) {
406
+ }, H.__c = function(t, e) {
407
407
  e.some(function(n) {
408
408
  try {
409
409
  n.__h.some(or), n.__h = n.__h.filter(function(r) {
@@ -412,10 +412,10 @@ Q.__b = function(t) {
412
412
  } catch (r) {
413
413
  e.some(function(i) {
414
414
  i.__h && (i.__h = []);
415
- }), e = [], Q.__e(r, n.__v);
415
+ }), e = [], H.__e(r, n.__v);
416
416
  }
417
417
  }), ai && ai(t, e);
418
- }, Q.unmount = function(t) {
418
+ }, H.unmount = function(t) {
419
419
  si && si(t);
420
420
  var e, n = t.__c;
421
421
  n && n.__H && (n.__H.__.some(function(r) {
@@ -424,7 +424,7 @@ Q.__b = function(t) {
424
424
  } catch (i) {
425
425
  e = i;
426
426
  }
427
- }), n.__H = void 0, e && Q.__e(e, n.__v));
427
+ }), n.__H = void 0, e && H.__e(e, n.__v));
428
428
  };
429
429
  var ui = typeof requestAnimationFrame == "function";
430
430
  function bs(t) {
@@ -461,14 +461,14 @@ function ar(t, e) {
461
461
  function Ao(t, e) {
462
462
  var n = e(), r = I({ t: { __: n, u: e } }), i = r[0].t, o = r[1];
463
463
  return Jt(function() {
464
- i.__ = n, i.u = e, Qn(i) && o({ t: i });
464
+ i.__ = n, i.u = e, Hn(i) && o({ t: i });
465
465
  }, [t, n, e]), T(function() {
466
- return Qn(i) && o({ t: i }), t(function() {
467
- Qn(i) && o({ t: i });
466
+ return Hn(i) && o({ t: i }), t(function() {
467
+ Hn(i) && o({ t: i });
468
468
  });
469
469
  }, [t]), n;
470
470
  }
471
- function Qn(t) {
471
+ function Hn(t) {
472
472
  try {
473
473
  return !((e = t.__) === (n = t.u()) && (e !== 0 || 1 / e == 1 / n) || e != e && n != n);
474
474
  } catch {
@@ -731,24 +731,24 @@ function Bs(t) {
731
731
  function Ds(t) {
732
732
  return qn(t) ? gs.apply(null, arguments) : t;
733
733
  }
734
- function Us(t) {
734
+ function Fs(t) {
735
735
  return !!t.__k && (tt(null, t), !0);
736
736
  }
737
- function Fs(t) {
737
+ function Us(t) {
738
738
  return t && (t.base || t.nodeType === 1 && t) || null;
739
739
  }
740
740
  var Vs = function(t, e) {
741
741
  return t(e);
742
- }, Qs = function(t, e) {
742
+ }, Hs = function(t, e) {
743
743
  var n = _.debounceRendering;
744
744
  _.debounceRendering = function(i) {
745
745
  return i();
746
746
  };
747
747
  var r = t(e);
748
748
  return _.debounceRendering = n, r;
749
- }, Hs = qn, Ir = { useState: I, useId: So, useReducer: pe, useEffect: T, useLayoutEffect: Jt, useInsertionEffect: $o, useTransition: Po, useDeferredValue: Eo, useSyncExternalStore: Ao, startTransition: Io, useRef: be, useImperativeHandle: _o, useMemo: Z, useCallback: N, useContext: Zt, useDebugValue: jo, version: "18.3.1", Children: _s, render: Ms, hydrate: qs, unmountComponentAtNode: Us, createPortal: Rs, createElement: ve, createContext: xs, createFactory: Os, cloneElement: Ds, createRef: us, Fragment: z, isValidElement: qn, isElement: Hs, isFragment: zs, isMemo: Bs, findDOMNode: Fs, Component: _e, PureComponent: sr, memo: ys, forwardRef: ks, flushSync: Qs, unstable_batchedUpdates: Vs, StrictMode: z, Suspense: pn, SuspenseList: $t, lazy: Ss, __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: Ls }, Ae = [], ge = [], Ws = Uint8Array, Hn = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
750
- for (var dt = 0, Ks = Hn.length; dt < Ks; ++dt)
751
- Ae[dt] = Hn[dt], ge[Hn.charCodeAt(dt)] = dt;
749
+ }, Qs = qn, Ir = { useState: I, useId: So, useReducer: pe, useEffect: T, useLayoutEffect: Jt, useInsertionEffect: $o, useTransition: Po, useDeferredValue: Eo, useSyncExternalStore: Ao, startTransition: Io, useRef: be, useImperativeHandle: _o, useMemo: Z, useCallback: N, useContext: Zt, useDebugValue: jo, version: "18.3.1", Children: _s, render: Ms, hydrate: qs, unmountComponentAtNode: Fs, createPortal: Rs, createElement: ve, createContext: xs, createFactory: Os, cloneElement: Ds, createRef: us, Fragment: z, isValidElement: qn, isElement: Qs, isFragment: zs, isMemo: Bs, findDOMNode: Us, Component: _e, PureComponent: sr, memo: ys, forwardRef: ks, flushSync: Hs, unstable_batchedUpdates: Vs, StrictMode: z, Suspense: pn, SuspenseList: $t, lazy: Ss, __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: Ls }, Ae = [], ge = [], Ws = Uint8Array, Qn = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
750
+ for (var dt = 0, Ks = Qn.length; dt < Ks; ++dt)
751
+ Ae[dt] = Qn[dt], ge[Qn.charCodeAt(dt)] = dt;
752
752
  ge[45] = 62;
753
753
  ge[95] = 63;
754
754
  function Gs(t) {
@@ -777,7 +777,7 @@ function Zs(t, e, n) {
777
777
  r = (t[o] << 16 & 16711680) + (t[o + 1] << 8 & 65280) + (t[o + 2] & 255), i.push(Js(r));
778
778
  return i.join("");
779
779
  }
780
- function Ut(t) {
780
+ function Ft(t) {
781
781
  for (var e, n = t.length, r = n % 3, i = [], o = 16383, a = 0, l = n - r; a < l; a += o)
782
782
  i.push(
783
783
  Zs(
@@ -842,7 +842,7 @@ function nl(t) {
842
842
  let r = 0;
843
843
  for (const i of e.match(/.{2}/g).reverse())
844
844
  n.set([parseInt(i, 16)], r++), t >>= el;
845
- return Ut(n);
845
+ return Ft(n);
846
846
  }
847
847
  function rl(t) {
848
848
  const e = Dt(t);
@@ -861,7 +861,7 @@ function il(t) {
861
861
  `BigInt ${t} does not fit into a 64-bit signed integer.`
862
862
  );
863
863
  const e = new ArrayBuffer(8);
864
- return new DataView(e).setBigInt64(0, t, !0), Ut(new Uint8Array(e));
864
+ return new DataView(e).setBigInt64(0, t, !0), Ft(new Uint8Array(e));
865
865
  }
866
866
  function ol(t) {
867
867
  const e = Dt(t);
@@ -966,13 +966,13 @@ function cr(t, e, n, r) {
966
966
  if (typeof t == "number")
967
967
  if (Bo(t)) {
968
968
  const a = new ArrayBuffer(8);
969
- return new DataView(a).setFloat64(0, t, zo), { $float: Ut(new Uint8Array(a)) };
969
+ return new DataView(a).setFloat64(0, t, zo), { $float: Ft(new Uint8Array(a)) };
970
970
  } else
971
971
  return t;
972
972
  if (typeof t == "boolean" || typeof t == "string")
973
973
  return t;
974
974
  if (t instanceof ArrayBuffer)
975
- return { $bytes: Ut(new Uint8Array(t)) };
975
+ return { $bytes: Ft(new Uint8Array(t)) };
976
976
  if (Array.isArray(t))
977
977
  return t.map(
978
978
  (a, l) => cr(a, e, n + `[${l}]`)
@@ -1016,13 +1016,13 @@ class bn extends (ki = Error, wi = ul, ki) {
1016
1016
  super(typeof e == "string" ? e : Ot(e)), Kn(this, "name", "ConvexError"), Kn(this, "data"), Kn(this, wi, !0), this.data = e;
1017
1017
  }
1018
1018
  }
1019
- const Uo = () => Array.from({ length: 4 }, () => 0);
1020
- Uo();
1021
- Uo();
1019
+ const Fo = () => Array.from({ length: 4 }, () => 0);
1020
+ Fo();
1021
+ Fo();
1022
1022
  const _i = "1.42.0";
1023
1023
  var dl = Object.defineProperty, hl = (t, e, n) => e in t ? dl(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n, ji = (t, e, n) => hl(t, typeof e != "symbol" ? e + "" : e, n);
1024
1024
  const pl = "color:rgb(0, 145, 255)";
1025
- function Fo(t) {
1025
+ function Uo(t) {
1026
1026
  switch (t) {
1027
1027
  case "query":
1028
1028
  return "Q";
@@ -1064,7 +1064,7 @@ class Vo {
1064
1064
  n("error", ...e);
1065
1065
  }
1066
1066
  }
1067
- function Qo(t) {
1067
+ function Ho(t) {
1068
1068
  const e = new Vo(t);
1069
1069
  return e.addLogLineListener((n, ...r) => {
1070
1070
  switch (n) {
@@ -1085,11 +1085,11 @@ function Qo(t) {
1085
1085
  }
1086
1086
  }), e;
1087
1087
  }
1088
- function Ho(t) {
1088
+ function Qo(t) {
1089
1089
  return new Vo(t);
1090
1090
  }
1091
1091
  function yn(t, e, n, r, i) {
1092
- const o = Fo(n);
1092
+ const o = Uo(n);
1093
1093
  if (typeof i == "object" && (i = `ConvexError ${JSON.stringify(i.errorData, null, 2)}`), e === "info") {
1094
1094
  const a = i.match(/^\[.*?\] /);
1095
1095
  if (a === null) {
@@ -1108,7 +1108,7 @@ function fl(t, e) {
1108
1108
  return t.error(n), new Error(n);
1109
1109
  }
1110
1110
  function mt(t, e, n) {
1111
- return `[CONVEX ${Fo(t)}(${e})] ${n.errorMessage}
1111
+ return `[CONVEX ${Uo(t)}(${e})] ${n.errorMessage}
1112
1112
  Called by client`;
1113
1113
  }
1114
1114
  function ur(t, e) {
@@ -1477,7 +1477,7 @@ class yl {
1477
1477
  return this.inflightActionsCount;
1478
1478
  }
1479
1479
  }
1480
- const Ft = /* @__PURE__ */ Symbol.for("functionName"), Wo = /* @__PURE__ */ Symbol.for("toReferencePath");
1480
+ const Ut = /* @__PURE__ */ Symbol.for("functionName"), Wo = /* @__PURE__ */ Symbol.for("toReferencePath");
1481
1481
  function wl(t) {
1482
1482
  return t[Wo] ?? null;
1483
1483
  }
@@ -1488,8 +1488,8 @@ function _l(t) {
1488
1488
  let e;
1489
1489
  if (typeof t == "string")
1490
1490
  kl(t) ? e = { functionHandle: t } : e = { name: t };
1491
- else if (t[Ft])
1492
- e = { name: t[Ft] };
1491
+ else if (t[Ut])
1492
+ e = { name: t[Ut] };
1493
1493
  else {
1494
1494
  const n = wl(t);
1495
1495
  if (!n)
@@ -1509,13 +1509,13 @@ function se(t) {
1509
1509
  `Expected function reference like "api.file.func" or "internal.file.func", but received ${JSON.stringify(e)}`
1510
1510
  );
1511
1511
  if (typeof t == "string") return t;
1512
- const n = t[Ft];
1512
+ const n = t[Ut];
1513
1513
  if (!n)
1514
1514
  throw new Error(`${t} is not a functionReference`);
1515
1515
  return n;
1516
1516
  }
1517
1517
  function Pr(t) {
1518
- return { [Ft]: t };
1518
+ return { [Ut]: t };
1519
1519
  }
1520
1520
  function Ko(t = []) {
1521
1521
  const e = {
@@ -1523,7 +1523,7 @@ function Ko(t = []) {
1523
1523
  if (typeof r == "string") {
1524
1524
  const i = [...t, r];
1525
1525
  return Ko(i);
1526
- } else if (r === Ft) {
1526
+ } else if (r === Ut) {
1527
1527
  if (t.length < 2) {
1528
1528
  const a = ["api", ...t].join(".");
1529
1529
  throw new Error(
@@ -1765,7 +1765,7 @@ function Yn(t) {
1765
1765
  }
1766
1766
  function Ml(t) {
1767
1767
  const e = new Uint8Array(t.toBytesLE());
1768
- return Ut(e);
1768
+ return Ft(e);
1769
1769
  }
1770
1770
  function Ai(t) {
1771
1771
  switch (t.type) {
@@ -1835,7 +1835,7 @@ const Go = {
1835
1835
  SearchIndexTooLarge: { timeout: 3e3 },
1836
1836
  TooManyWritesInTimePeriod: { timeout: 3e3 }
1837
1837
  };
1838
- function Ul(t) {
1838
+ function Fl(t) {
1839
1839
  if (t === void 0) return "Unknown";
1840
1840
  for (const e of Object.keys(
1841
1841
  Go
@@ -1844,7 +1844,7 @@ function Ul(t) {
1844
1844
  return e;
1845
1845
  return "Unknown";
1846
1846
  }
1847
- class Fl {
1847
+ class Ul {
1848
1848
  constructor(e, n, r, i, o, a) {
1849
1849
  this.markConnectionStateDirty = o, this.debug = a, Y(this, "socket"), Y(this, "connectionCount"), Y(this, "_hasEverConnected", !1), Y(this, "lastCloseReason"), Y(this, "transitionChunkBuffer", null), Y(this, "defaultInitialBackoff"), Y(this, "maxBackoff"), Y(this, "retries"), Y(this, "serverInactivityThreshold"), Y(this, "reconnectDueToServerInactivityTimeout"), Y(this, "scheduledReconnect", null), Y(this, "networkOnlineHandler", null), Y(this, "pendingNetworkRecoveryInfo", null), Y(this, "uri"), Y(this, "onOpen"), Y(this, "onResume"), Y(this, "onMessage"), Y(this, "webSocketConstructor"), Y(this, "logger"), Y(this, "onServerDisconnectError"), this.webSocketConstructor = r, this.socket = { state: "disconnected" }, this.connectionCount = 0, this.lastCloseReason = "InitialConnect", this.defaultInitialBackoff = 1e3, this.maxBackoff = 16e3, this.retries = 0, this.serverInactivityThreshold = 6e4, this.reconnectDueToServerInactivityTimeout = null, this.uri = e, this.onOpen = n.onOpen, this.onResume = n.onResume, this.onMessage = n.onMessage, this.onServerDisconnectError = n.onServerDisconnectError, this.logger = i, this.setupNetworkListener(), this.connect();
1850
1850
  }
@@ -1954,7 +1954,7 @@ class Fl {
1954
1954
  let i = `WebSocket closed with code ${n.code}`;
1955
1955
  n.reason && (i += `: ${n.reason}`), this.logger.log(i), this.onServerDisconnectError && n.reason && this.onServerDisconnectError(i);
1956
1956
  }
1957
- const r = Ul(n.reason);
1957
+ const r = Fl(n.reason);
1958
1958
  this.scheduleReconnect(r);
1959
1959
  };
1960
1960
  }
@@ -2236,9 +2236,9 @@ class Fl {
2236
2236
  }
2237
2237
  }
2238
2238
  function Vl() {
2239
- return Ql();
2239
+ return Hl();
2240
2240
  }
2241
- function Ql() {
2241
+ function Hl() {
2242
2242
  return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (t) => {
2243
2243
  const e = Math.random() * 16 | 0;
2244
2244
  return (t === "x" ? e : e & 3 | 8).toString(16);
@@ -2247,7 +2247,7 @@ function Ql() {
2247
2247
  class Mt extends Error {
2248
2248
  }
2249
2249
  Mt.prototype.name = "InvalidTokenError";
2250
- function Hl(t) {
2250
+ function Ql(t) {
2251
2251
  return decodeURIComponent(
2252
2252
  atob(t).replace(/(.)/g, (e, n) => {
2253
2253
  let r = n.charCodeAt(0).toString(16).toUpperCase();
@@ -2270,7 +2270,7 @@ function Wl(t) {
2270
2270
  throw new Error("base64 string is not of the correct length");
2271
2271
  }
2272
2272
  try {
2273
- return Hl(e);
2273
+ return Ql(e);
2274
2274
  } catch {
2275
2275
  return atob(e);
2276
2276
  }
@@ -2566,7 +2566,7 @@ class ic {
2566
2566
  throw new Error(
2567
2567
  "No WebSocket global variable defined! To use Convex in an environment without WebSocket try the HTTP client: https://docs.convex.dev/api/classes/browser.ConvexHttpClient"
2568
2568
  );
2569
- o = o || WebSocket, this.debug = r.reportDebugInfoToConvex ?? !1, this.address = e, this.logger = r.logger === !1 ? Ho({ verbose: r.verbose ?? !1 }) : r.logger !== !0 && r.logger ? r.logger : Qo({ verbose: r.verbose ?? !1 });
2569
+ o = o || WebSocket, this.debug = r.reportDebugInfoToConvex ?? !1, this.address = e, this.logger = r.logger === !1 ? Qo({ verbose: r.verbose ?? !1 }) : r.logger !== !0 && r.logger ? r.logger : Ho({ verbose: r.verbose ?? !1 });
2570
2570
  const a = e.search("://");
2571
2571
  if (a === -1)
2572
2572
  throw new Error("Provided address was not an absolute URL.");
@@ -2624,7 +2624,7 @@ class ic {
2624
2624
  return (p || window.event).returnValue = m, m;
2625
2625
  }
2626
2626
  });
2627
- this.webSocketManager = new Fl(
2627
+ this.webSocketManager = new Ul(
2628
2628
  h,
2629
2629
  {
2630
2630
  onOpen: (p) => {
@@ -3474,7 +3474,7 @@ class pc {
3474
3474
  );
3475
3475
  if (!e.includes("://"))
3476
3476
  throw new Error("Provided address was not an absolute URL.");
3477
- this.address = e, this.listeners = /* @__PURE__ */ new Map(), this._logger = n?.logger === !1 ? Ho({ verbose: n?.verbose ?? !1 }) : n?.logger !== !0 && n?.logger ? n.logger : Qo({ verbose: n?.verbose ?? !1 }), this.options = { ...n, logger: this._logger };
3477
+ this.address = e, this.listeners = /* @__PURE__ */ new Map(), this._logger = n?.logger === !1 ? Qo({ verbose: n?.verbose ?? !1 }) : n?.logger !== !0 && n?.logger ? n.logger : Ho({ verbose: n?.verbose ?? !1 }), this.options = { ...n, logger: this._logger };
3478
3478
  }
3479
3479
  /**
3480
3480
  * Return the address for this client, useful for creating a new client.
@@ -4359,7 +4359,7 @@ function Ac() {
4359
4359
  function aa() {
4360
4360
  ia.push(this) === 1 && (_.requestAnimationFrame || Rc)(Ac);
4361
4361
  }
4362
- const H = $(!1), Tn = $(void 0), tn = "https://jexitychat.de/privacy", nn = $(tn), Mr = $("chip"), Qe = $(void 0), pr = $([]), fr = $([]), sa = $(null);
4362
+ const Q = $(!1), Tn = $(void 0), tn = "https://jexitychat.de/privacy", nn = $(tn), Mr = $("chip"), He = $(void 0), pr = $([]), fr = $([]), sa = $(null);
4363
4363
  function Ic(t) {
4364
4364
  return t.replace(/\.convex\.site\b/, ".convex.cloud");
4365
4365
  }
@@ -4447,7 +4447,7 @@ function Nc(t, e, n) {
4447
4447
  });
4448
4448
  return T(() => {
4449
4449
  i({ config: null, settled: !1 });
4450
- const o = n ?? "https://tame-spider-109.eu-west-1.convex.cloud", a = o ? la(o) : void 0;
4450
+ const o = n ?? "https://festive-mouse-978.eu-west-1.convex.cloud", a = o ? la(o) : void 0;
4451
4451
  if (!a || !t) {
4452
4452
  i({ config: null, settled: !0 });
4453
4453
  return;
@@ -4511,7 +4511,7 @@ function Oc({
4511
4511
  preExcludedPaths: o
4512
4512
  }) {
4513
4513
  T(() => {
4514
- const a = r ?? "https://tame-spider-109.eu-west-1.convex.cloud", l = a ? la(a) : void 0;
4514
+ const a = r ?? "https://festive-mouse-978.eu-west-1.convex.cloud", l = a ? la(a) : void 0;
4515
4515
  if (!l || !t)
4516
4516
  return;
4517
4517
  if (sa.value = { orgSlug: t, projSlug: e, siteUrl: l }, n) {
@@ -4523,7 +4523,7 @@ function Oc({
4523
4523
  const u = await ca(t, l, e);
4524
4524
  if (!c)
4525
4525
  if (u.ok)
4526
- Qe.value = u.token, pr.value = u.allowedUrls, fr.value = u.excludePaths;
4526
+ He.value = u.token, pr.value = u.allowedUrls, fr.value = u.excludePaths;
4527
4527
  else {
4528
4528
  const h = e ? `project '${t}/${e}'` : `org '${t}'`;
4529
4529
  u.error === "unauthorized" ? console.warn(
@@ -5069,18 +5069,18 @@ Verwenden Sie sie, um diese Unterhaltung auf jedem Gerät fortzusetzen.`,
5069
5069
  waitingTitle: "Du bist in der Warteschlange",
5070
5070
  waitingSubtitle: "Lass diesen Tab offen — wir benachrichtigen dich hier, sobald jemand antwortet.",
5071
5071
  waitingLeaveEmail: "Lieber per E-Mail? Hinterlasse deine Daten"
5072
- }, Uc = [
5072
+ }, Fc = [
5073
5073
  { value: "de", label: "Deutsch", flag: "🇩🇪" },
5074
5074
  { value: "en", label: "English", flag: "🇬🇧" }
5075
- ], Fc = "de", Vc = "jex-locale", Me = $("de"), Qc = { en: qr, de: ua };
5075
+ ], Uc = "de", Vc = "jex-locale", Me = $("de"), Hc = { en: qr, de: ua };
5076
5076
  function j() {
5077
- return Qc[Me.value] ?? qr;
5077
+ return Hc[Me.value] ?? qr;
5078
5078
  }
5079
5079
  function Xn(t) {
5080
5080
  if (!t)
5081
5081
  return null;
5082
5082
  const e = (t.split("-")[0] ?? "").toLowerCase();
5083
- return Uc.some((r) => r.value === e) ? e : null;
5083
+ return Fc.some((r) => r.value === e) ? e : null;
5084
5084
  }
5085
5085
  function da(t) {
5086
5086
  const e = Xn(t);
@@ -5097,9 +5097,9 @@ function da(t) {
5097
5097
  if (n)
5098
5098
  return n;
5099
5099
  }
5100
- return Fc;
5100
+ return Uc;
5101
5101
  }
5102
- function Hc(t) {
5102
+ function Qc(t) {
5103
5103
  T(() => {
5104
5104
  function e(n) {
5105
5105
  const r = t ?? window.location.origin;
@@ -5113,11 +5113,15 @@ function Hc(t) {
5113
5113
  };
5114
5114
  }, [t]);
5115
5115
  }
5116
- const ha = "jex-session-history", pa = ha, fa = 1440 * 60 * 1e3, ie = $([]), fe = $(null), Fe = $(void 0), mr = $(!1), Nr = hr(() => ie.value.length > 0), xt = $(null);
5117
- function Wc() {
5118
- return "JEX-" + Math.random().toString(36).slice(2, 8).toUpperCase();
5116
+ const ha = "jex-session-history", pa = ha, fa = 1440 * 60 * 1e3, ie = $([]), fe = $(null), Ue = $(void 0), mr = $(!1), Nr = hr(() => ie.value.length > 0), xt = $(null), Wc = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", Kc = 6;
5117
+ function Gc() {
5118
+ let t = "";
5119
+ const e = new Uint8Array(1);
5120
+ for (; t.length < Kc; )
5121
+ crypto.getRandomValues(e), e[0] < 252 && (t += Wc[e[0] % 36]);
5122
+ return "JEX-" + t;
5119
5123
  }
5120
- function Kc(t) {
5124
+ function Yc(t) {
5121
5125
  if (t === null)
5122
5126
  return null;
5123
5127
  if (typeof t == "number" && Number.isFinite(t) && t >= 0)
@@ -5129,46 +5133,46 @@ function ma(t, e, n) {
5129
5133
  const r = typeof n == "number" ? n : fa;
5130
5134
  return t.filter((i) => e - i.lastActivityAt <= r);
5131
5135
  }
5132
- function Gc(t, e, n, r) {
5136
+ function Jc(t, e, n, r) {
5133
5137
  return n ? ma(t, e, r) : t;
5134
5138
  }
5135
- function Yc(t) {
5139
+ function Zc(t) {
5136
5140
  try {
5137
5141
  const e = sessionStorage.getItem(pa);
5138
5142
  if (!e)
5139
- return Fe.value = void 0, [];
5143
+ return Ue.value = void 0, [];
5140
5144
  const n = JSON.parse(e);
5141
5145
  if (n.v !== 1 || !Array.isArray(n.entries))
5142
- return Fe.value = void 0, [];
5146
+ return Ue.value = void 0, [];
5143
5147
  const r = Object.prototype.hasOwnProperty.call(n, "timeoutMs");
5144
- return Fe.value = Kc(n.timeoutMs), Gc(
5148
+ return Ue.value = Yc(n.timeoutMs), Jc(
5145
5149
  n.entries,
5146
5150
  t,
5147
5151
  r,
5148
- Fe.value
5152
+ Ue.value
5149
5153
  );
5150
5154
  } catch {
5151
- return Fe.value = void 0, [];
5155
+ return Ue.value = void 0, [];
5152
5156
  }
5153
5157
  }
5154
5158
  function rn(t) {
5155
5159
  try {
5156
- const e = { v: 1, entries: t, timeoutMs: Fe.value };
5160
+ const e = { v: 1, entries: t, timeoutMs: Ue.value };
5157
5161
  sessionStorage.setItem(pa, JSON.stringify(e));
5158
5162
  } catch {
5159
5163
  }
5160
5164
  }
5161
- function Jc() {
5162
- const t = Date.now(), e = Yc(t);
5165
+ function Xc() {
5166
+ const t = Date.now(), e = Zc(t);
5163
5167
  ie.value = e, rn(e), fe.value = e[e.length - 1]?.ref ?? null, mr.value = !0;
5164
5168
  }
5165
- function Zc(t) {
5166
- Fe.value = t;
5169
+ function eu(t) {
5170
+ Ue.value = t;
5167
5171
  const e = Date.now(), n = ma(ie.value, e, t), r = fe.value !== null && !n.some((i) => i.ref === fe.value);
5168
5172
  return ie.value = n, r && (fe.value = null), rn(n), { activeRefPruned: r };
5169
5173
  }
5170
5174
  function qi() {
5171
- const t = Wc(), e = Date.now(), n = [...ie.value, { ref: t, startedAt: e, lastActivityAt: e }];
5175
+ const t = Gc(), e = Date.now(), n = [...ie.value, { ref: t, startedAt: e, lastActivityAt: e }];
5172
5176
  return ie.value = n, fe.value = t, rn(n), t;
5173
5177
  }
5174
5178
  function Ni() {
@@ -5192,10 +5196,10 @@ const de = $(ga());
5192
5196
  function ga() {
5193
5197
  return Nr.value ? [{ id: "home" }] : [{ id: "home" }, { id: "chat" }];
5194
5198
  }
5195
- function Xc() {
5199
+ function tu() {
5196
5200
  de.value = ga();
5197
5201
  }
5198
- const eu = $("screen");
5202
+ const nu = $("screen");
5199
5203
  function ze(t) {
5200
5204
  de.value = [...de.value, t];
5201
5205
  }
@@ -5205,22 +5209,22 @@ function Or() {
5205
5209
  function gr(t) {
5206
5210
  de.value = [...de.value.slice(0, -1), t];
5207
5211
  }
5208
- const tu = 6e4, Qt = $(!1), xr = $(!1), vr = /* @__PURE__ */ new Set();
5209
- function nu(t) {
5212
+ const ru = 6e4, Ht = $(!1), xr = $(!1), vr = /* @__PURE__ */ new Set();
5213
+ function iu(t) {
5210
5214
  return vr.add(t), () => {
5211
5215
  vr.delete(t);
5212
5216
  };
5213
5217
  }
5214
- function ru() {
5218
+ function ou() {
5215
5219
  const t = fe.value;
5216
5220
  return t ? ie.value.find((n) => n.ref === t)?.lastActivityAt ?? null : null;
5217
5221
  }
5218
5222
  function Oi(t) {
5219
- const e = ru();
5223
+ const e = ou();
5220
5224
  return e === null ? !1 : Date.now() - e > t;
5221
5225
  }
5222
5226
  function br() {
5223
- if (!(Qt.value && ie.value.length === 0)) {
5227
+ if (!(Ht.value && ie.value.length === 0)) {
5224
5228
  ie.value = [], fe.value = null;
5225
5229
  try {
5226
5230
  sessionStorage.removeItem(ha);
@@ -5233,13 +5237,13 @@ function br() {
5233
5237
  } catch (e) {
5234
5238
  console.warn("[JexityChat] Lock reset callback threw:", e);
5235
5239
  }
5236
- de.value = [{ id: "home" }], Qt.value = !0;
5240
+ de.value = [{ id: "home" }], Ht.value = !0;
5237
5241
  }
5238
5242
  }
5239
5243
  function un() {
5240
- Qt.value && (Qt.value = !1);
5244
+ Ht.value && (Ht.value = !1);
5241
5245
  }
5242
- function iu(t = fa) {
5246
+ function au(t = fa) {
5243
5247
  let e = document.visibilityState === "hidden" ? Date.now() : null;
5244
5248
  const n = () => {
5245
5249
  if (document.visibilityState === "hidden") {
@@ -5251,12 +5255,12 @@ function iu(t = fa) {
5251
5255
  document.addEventListener("visibilitychange", n);
5252
5256
  const r = setInterval(() => {
5253
5257
  xr.value || Oi(t) && br();
5254
- }, tu);
5258
+ }, ru);
5255
5259
  return () => {
5256
5260
  document.removeEventListener("visibilitychange", n), clearInterval(r), e = null;
5257
5261
  };
5258
5262
  }
5259
- function ou(t) {
5263
+ function su(t) {
5260
5264
  const e = {}, { primaryColor: n, theme: r } = t;
5261
5265
  if (n && (e["--jex-primary"] = n, e["--jex-bg-trigger"] = n, e["--jex-bg-header"] = n, e["--jex-bg-msg-user"] = n, e["--jex-bg-send-btn"] = n), t.accentColor && (e["--jex-accent"] = t.accentColor), r?.bg) {
5262
5266
  const i = r.bg;
@@ -5282,7 +5286,7 @@ function zn({ size: t = 24 }) {
5282
5286
  /* @__PURE__ */ s("path", { d: "M9 13v2" })
5283
5287
  ] });
5284
5288
  }
5285
- function au() {
5289
+ function lu() {
5286
5290
  const t = j();
5287
5291
  return de.value.length > 1 ? /* @__PURE__ */ s(
5288
5292
  "button",
@@ -5294,7 +5298,7 @@ function au() {
5294
5298
  }
5295
5299
  ) : /* @__PURE__ */ s(zn, { size: 24 });
5296
5300
  }
5297
- function su({ title: t }) {
5301
+ function cu({ title: t }) {
5298
5302
  return /* @__PURE__ */ s("div", { class: "jex-header-info", children: /* @__PURE__ */ s("h3", { children: t }) });
5299
5303
  }
5300
5304
  function xa({ size: t = 28 }) {
@@ -5303,7 +5307,7 @@ function xa({ size: t = 28 }) {
5303
5307
  /* @__PURE__ */ s("path", { d: "m6 6 12 12" })
5304
5308
  ] });
5305
5309
  }
5306
- function lu() {
5310
+ function uu() {
5307
5311
  const t = j();
5308
5312
  return /* @__PURE__ */ s(
5309
5313
  "button",
@@ -5311,7 +5315,7 @@ function lu() {
5311
5315
  class: "jex-header-close",
5312
5316
  type: "button",
5313
5317
  onClick: () => {
5314
- H.value = !1;
5318
+ Q.value = !1;
5315
5319
  },
5316
5320
  "aria-label": t.closeChatAriaLabel,
5317
5321
  title: t.closeChatAriaLabel,
@@ -5319,20 +5323,20 @@ function lu() {
5319
5323
  }
5320
5324
  );
5321
5325
  }
5322
- function cu({ action: t, showClose: e = !0 }) {
5326
+ function du({ action: t, showClose: e = !0 }) {
5323
5327
  return !t && !e ? null : /* @__PURE__ */ s("div", { class: "jex-header-right", children: [
5324
5328
  t,
5325
- e && /* @__PURE__ */ s(lu, {})
5329
+ e && /* @__PURE__ */ s(uu, {})
5326
5330
  ] });
5327
5331
  }
5328
5332
  function zi({ title: t, rightAction: e, showClose: n = !0 }) {
5329
5333
  return /* @__PURE__ */ s("header", { class: "jex-chat-header", children: [
5330
- /* @__PURE__ */ s(au, {}),
5331
- /* @__PURE__ */ s(su, { title: t }),
5332
- /* @__PURE__ */ s(cu, { action: e, showClose: n })
5334
+ /* @__PURE__ */ s(lu, {}),
5335
+ /* @__PURE__ */ s(cu, { title: t }),
5336
+ /* @__PURE__ */ s(du, { action: e, showClose: n })
5333
5337
  ] });
5334
5338
  }
5335
- function uu({ size: t = 14 }) {
5339
+ function hu({ size: t = 14 }) {
5336
5340
  return /* @__PURE__ */ s("svg", { width: t, height: t, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true", children: /* @__PURE__ */ s("path", { d: "M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z" }) });
5337
5341
  }
5338
5342
  function Bi() {
@@ -5344,7 +5348,7 @@ function Bi() {
5344
5348
  rel: "noopener noreferrer",
5345
5349
  class: "jex-branding",
5346
5350
  children: [
5347
- /* @__PURE__ */ s(uu, { size: 14 }),
5351
+ /* @__PURE__ */ s(hu, { size: 14 }),
5348
5352
  /* @__PURE__ */ s("span", { children: [
5349
5353
  "Powered by ",
5350
5354
  /* @__PURE__ */ s("strong", { children: "Jexity" })
@@ -5356,7 +5360,7 @@ function Bi() {
5356
5360
  function va({ size: t = 28 }) {
5357
5361
  return /* @__PURE__ */ s("svg", { width: t, height: t, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true", children: /* @__PURE__ */ s("path", { d: "M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z" }) });
5358
5362
  }
5359
- function du({ size: t = 24, ...e }) {
5363
+ function pu({ size: t = 24, ...e }) {
5360
5364
  return /* @__PURE__ */ s(
5361
5365
  "svg",
5362
5366
  {
@@ -5373,37 +5377,37 @@ function du({ size: t = 24, ...e }) {
5373
5377
  }
5374
5378
  );
5375
5379
  }
5376
- const hu = {
5380
+ const fu = {
5377
5381
  chat: /* @__PURE__ */ s(va, { size: 28 }),
5378
5382
  bot: /* @__PURE__ */ s(zn, { size: 28 }),
5379
- sparkles: /* @__PURE__ */ s(du, { size: 28 })
5380
- }, pu = {
5383
+ sparkles: /* @__PURE__ */ s(pu, { size: 28 })
5384
+ }, mu = {
5381
5385
  none: "0px",
5382
5386
  sm: "0.5rem",
5383
5387
  md: "0.75rem",
5384
5388
  lg: "1.25rem",
5385
5389
  full: "9999px"
5386
5390
  };
5387
- function fu({ radius: t = "full", iconOption: e = "chat", label: n }) {
5391
+ function gu({ radius: t = "full", iconOption: e = "chat", label: n }) {
5388
5392
  const r = j(), i = n ?? r.fabLabel, o = i !== "";
5389
5393
  return /* @__PURE__ */ s(
5390
5394
  "button",
5391
5395
  {
5392
- class: `jex-floating-button${H.value ? "" : " jex-fab-pulse"}${!H.value && o ? " jex-has-label" : ""}`,
5393
- style: { borderRadius: pu[t] ?? "9999px" },
5396
+ class: `jex-floating-button${Q.value ? "" : " jex-fab-pulse"}${!Q.value && o ? " jex-has-label" : ""}`,
5397
+ style: { borderRadius: mu[t] ?? "9999px" },
5394
5398
  onClick: () => {
5395
- H.value = !H.value;
5399
+ Q.value = !Q.value;
5396
5400
  },
5397
- "aria-label": H.value ? r.closeChatAriaLabel : r.openChatAriaLabel,
5398
- children: H.value ? /* @__PURE__ */ s(xa, { size: 28 }) : /* @__PURE__ */ s("div", { class: "jex-fab-inner", children: [
5399
- hu[e],
5401
+ "aria-label": Q.value ? r.closeChatAriaLabel : r.openChatAriaLabel,
5402
+ children: Q.value ? /* @__PURE__ */ s(xa, { size: 28 }) : /* @__PURE__ */ s("div", { class: "jex-fab-inner", children: [
5403
+ fu[e],
5400
5404
  o && /* @__PURE__ */ s("span", { class: "jex-fab-label", children: i })
5401
5405
  ] })
5402
5406
  }
5403
5407
  );
5404
5408
  }
5405
5409
  const An = $(!1);
5406
- function mu(t, e) {
5410
+ function xu(t, e) {
5407
5411
  return e ? `jex-proactive-dismissed:${t}:${e}` : `jex-proactive-dismissed:${t}`;
5408
5412
  }
5409
5413
  function Di(t) {
@@ -5413,22 +5417,22 @@ function Di(t) {
5413
5417
  return !1;
5414
5418
  }
5415
5419
  }
5416
- function gu(t) {
5420
+ function vu(t) {
5417
5421
  try {
5418
5422
  sessionStorage.setItem(t, "1");
5419
5423
  } catch {
5420
5424
  }
5421
5425
  }
5422
- function xu(t) {
5426
+ function bu(t) {
5423
5427
  return t.isOpen || t.mode === "off" || t.hasHistory || t.dismissed ? "skip" : t.mode === "teaser" ? "teaser" : "open";
5424
5428
  }
5425
- function vu({ title: t, message: e, guardKey: n }) {
5429
+ function yu({ title: t, message: e, guardKey: n }) {
5426
5430
  const r = j();
5427
5431
  function i() {
5428
- An.value = !1, H.value = !0;
5432
+ An.value = !1, Q.value = !0;
5429
5433
  }
5430
5434
  function o(a) {
5431
- a.stopPropagation(), gu(n), An.value = !1;
5435
+ a.stopPropagation(), vu(n), An.value = !1;
5432
5436
  }
5433
5437
  return /* @__PURE__ */ s(
5434
5438
  "div",
@@ -5465,7 +5469,7 @@ function vu({ title: t, message: e, guardKey: n }) {
5465
5469
  );
5466
5470
  }
5467
5471
  const kt = $("");
5468
- function bu(t) {
5472
+ function wu(t) {
5469
5473
  if (!t)
5470
5474
  return;
5471
5475
  const e = t.trim().split(/\s+/)[0];
@@ -5474,43 +5478,43 @@ function bu(t) {
5474
5478
  const n = `@${e} `, r = kt.value;
5475
5479
  r.includes(n) || r.includes(`@${e}`) || (kt.value = r.trimStart() ? `${n}${r.trimStart()}` : n);
5476
5480
  }
5477
- const Ht = $(null), Ui = $(Date.now()), mn = $(!1), zr = $(!1), Wt = $(!1), In = $(null);
5481
+ const Qt = $(null), Fi = $(Date.now()), mn = $(!1), zr = $(!1), Wt = $(!1), In = $(null);
5478
5482
  function ba() {
5479
5483
  return Mr.value === "explicit" && !zr.value;
5480
5484
  }
5481
5485
  function ya() {
5482
5486
  ba() && (Wt.value = !0);
5483
5487
  }
5484
- function yu() {
5488
+ function ku() {
5485
5489
  zr.value = !0, Wt.value = !1;
5486
5490
  }
5487
- function Fi() {
5491
+ function Ui() {
5488
5492
  zr.value = !1, Wt.value = !1, In.value = null;
5489
5493
  }
5490
- const De = $([]), wu = 4, ku = 8 * 1024 * 1024;
5491
- function _u() {
5494
+ const De = $([]), _u = 4, ju = 8 * 1024 * 1024;
5495
+ function Su() {
5492
5496
  return typeof crypto < "u" && typeof crypto.randomUUID == "function" ? crypto.randomUUID() : `att-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 11)}`;
5493
5497
  }
5494
- function ju(t) {
5495
- const e = Array.from(t).filter((i) => i.type.startsWith("image/") && i.size <= ku);
5498
+ function Cu(t) {
5499
+ const e = Array.from(t).filter((i) => i.type.startsWith("image/") && i.size <= ju);
5496
5500
  if (e.length === 0)
5497
5501
  return;
5498
- const n = wu - De.value.length;
5502
+ const n = _u - De.value.length;
5499
5503
  if (n <= 0)
5500
5504
  return;
5501
5505
  const r = e.slice(0, n).map((i) => ({
5502
5506
  // Falls back to a non-crypto id when host page is HTTP — see genAttachmentId.
5503
- id: _u(),
5507
+ id: Su(),
5504
5508
  file: i,
5505
5509
  previewUrl: URL.createObjectURL(i)
5506
5510
  }));
5507
5511
  De.value = [...De.value, ...r];
5508
5512
  }
5509
- function Su(t) {
5513
+ function Tu(t) {
5510
5514
  const e = De.value.find((n) => n.id === t);
5511
5515
  e && URL.revokeObjectURL(e.previewUrl), De.value = De.value.filter((n) => n.id !== t);
5512
5516
  }
5513
- function Cu() {
5517
+ function Ru() {
5514
5518
  for (const t of De.value)
5515
5519
  URL.revokeObjectURL(t.previewUrl);
5516
5520
  De.value = [];
@@ -5535,8 +5539,8 @@ function wa(t, e) {
5535
5539
  };
5536
5540
  return new Proxy({}, n);
5537
5541
  }
5538
- const Tu = () => wa("components", []), oe = jl;
5539
- Tu();
5542
+ const Au = () => wa("components", []), oe = jl;
5543
+ Au();
5540
5544
  function ka({ sessionId: t, visitorId: e, ensureSession: n }) {
5541
5545
  const r = it(oe.functions.chat.public.conversations.send);
5542
5546
  return async function(o) {
@@ -5550,14 +5554,14 @@ function ka({ sessionId: t, visitorId: e, ensureSession: n }) {
5550
5554
  const a = t && e ? { sessionId: t, visitorId: e } : await n();
5551
5555
  if (!a)
5552
5556
  return;
5553
- kt.value = "", Cu();
5557
+ kt.value = "", Ru();
5554
5558
  try {
5555
5559
  const l = await r({
5556
5560
  sessionId: a.sessionId,
5557
5561
  visitorId: a.visitorId,
5558
5562
  content: o
5559
5563
  });
5560
- l.ok ? Lr(a.visitorId) : l.reason === "rate_limited" && (Ht.value = Date.now() + l.retryAfterMs);
5564
+ l.ok ? Lr(a.visitorId) : l.reason === "rate_limited" && (Qt.value = Date.now() + l.retryAfterMs);
5561
5565
  } catch (l) {
5562
5566
  console.error("[jexity] Failed to send message:", l);
5563
5567
  }
@@ -5567,15 +5571,15 @@ function ka({ sessionId: t, visitorId: e, ensureSession: n }) {
5567
5571
  }
5568
5572
  };
5569
5573
  }
5570
- function Ru() {
5571
- const t = Ht.value, e = Ui.value;
5574
+ function Iu() {
5575
+ const t = Qt.value, e = Fi.value;
5572
5576
  T(() => {
5573
5577
  if (t === null)
5574
5578
  return;
5575
5579
  const i = setInterval(() => {
5576
- Ui.value = Date.now();
5580
+ Fi.value = Date.now();
5577
5581
  }, 1e3), o = setTimeout(() => {
5578
- Ht.value = null;
5582
+ Qt.value = null;
5579
5583
  }, Math.max(0, t - Date.now()));
5580
5584
  return () => {
5581
5585
  clearInterval(i), clearTimeout(o);
@@ -5584,29 +5588,29 @@ function Ru() {
5584
5588
  const n = t !== null, r = n ? Math.max(0, Math.ceil((t - e) / 1e3)) : 0;
5585
5589
  return { isActive: n, remainingSeconds: r };
5586
5590
  }
5587
- function Au() {
5588
- const t = j(), { isActive: e, remainingSeconds: n } = Ru();
5591
+ function Eu() {
5592
+ const t = j(), { isActive: e, remainingSeconds: n } = Iu();
5589
5593
  return e ? /* @__PURE__ */ s("div", { class: "jex-rate-limit-notice", role: "status", "aria-live": "polite", children: t.errorRateLimited.replace("{seconds}", String(n)) }) : null;
5590
5594
  }
5591
5595
  const ft = $(null), Kt = $(null);
5592
5596
  function _a() {
5593
5597
  Kt.value = null;
5594
5598
  }
5595
- function Iu() {
5599
+ function Pu() {
5596
5600
  const t = j(), e = ft.value;
5597
5601
  if (e === null)
5598
5602
  return null;
5599
5603
  const n = e === "no-token" ? t.errorSessionNoToken : e === "unauthorized" ? t.errorSessionUnauthorized : e === "network" ? t.errorNetwork : t.somethingWentWrong;
5600
5604
  return /* @__PURE__ */ s("div", { class: "jex-session-error-notice", role: "alert", "aria-live": "assertive", children: n });
5601
5605
  }
5602
- function Eu({ size: t = 18 }) {
5606
+ function $u({ size: t = 18 }) {
5603
5607
  return /* @__PURE__ */ s("svg", { width: t, height: t, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true", children: [
5604
5608
  /* @__PURE__ */ s("path", { d: "M22 2 11 13" }),
5605
5609
  /* @__PURE__ */ s("path", { d: "M22 2 15 22 11 13 2 9l20-7z" })
5606
5610
  ] });
5607
5611
  }
5608
5612
  const Vi = 132;
5609
- function Pu({ onSend: t }) {
5613
+ function Mu({ onSend: t }) {
5610
5614
  const e = be(null), n = be(null);
5611
5615
  T(() => {
5612
5616
  const l = e.current;
@@ -5624,7 +5628,7 @@ function Pu({ onSend: t }) {
5624
5628
  }
5625
5629
  function o(l) {
5626
5630
  const c = l.currentTarget;
5627
- c.files && c.files.length > 0 && ju(c.files), c.value = "";
5631
+ c.files && c.files.length > 0 && Cu(c.files), c.value = "";
5628
5632
  }
5629
5633
  function a(l) {
5630
5634
  const c = l.target;
@@ -5632,8 +5636,8 @@ function Pu({ onSend: t }) {
5632
5636
  }
5633
5637
  return { textareaRef: e, fileInputRef: n, onKeyDown: r, onAttachClick: i, onFilesPicked: o, onCardClick: a };
5634
5638
  }
5635
- function $u({ isStreaming: t, disabled: e, inputDisabled: n, onSend: r, onFocus: i }) {
5636
- const o = j(), a = kt, l = De, { textareaRef: c, fileInputRef: u, onKeyDown: h, onAttachClick: f, onFilesPicked: d, onCardClick: p } = Pu({ onSend: r }), m = a.value.trim().length > 0, y = l.value.length > 0, g = (m || y) && !e;
5639
+ function qu({ isStreaming: t, disabled: e, inputDisabled: n, onSend: r, onFocus: i }) {
5640
+ const o = j(), a = kt, l = De, { textareaRef: c, fileInputRef: u, onKeyDown: h, onAttachClick: f, onFilesPicked: d, onCardClick: p } = Mu({ onSend: r }), m = a.value.trim().length > 0, y = l.value.length > 0, g = (m || y) && !e;
5637
5641
  return /* @__PURE__ */ s("div", { class: "jex-composer-card", onClick: p, children: [
5638
5642
  y && /* @__PURE__ */ s("div", { class: "jex-composer-attachments", role: "list", children: l.value.map((v) => /* @__PURE__ */ s("div", { class: "jex-attachment-chip", role: "listitem", children: [
5639
5643
  /* @__PURE__ */ s("img", { src: v.previewUrl, alt: v.file.name, class: "jex-attachment-thumb" }),
@@ -5644,7 +5648,7 @@ function $u({ isStreaming: t, disabled: e, inputDisabled: n, onSend: r, onFocus:
5644
5648
  class: "jex-attachment-remove",
5645
5649
  "aria-label": o.removeAttachmentAriaLabel,
5646
5650
  onClick: () => {
5647
- Su(v.id);
5651
+ Tu(v.id);
5648
5652
  },
5649
5653
  children: /* @__PURE__ */ s("svg", { width: "10", height: "10", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2.5", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true", children: [
5650
5654
  /* @__PURE__ */ s("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
@@ -5721,13 +5725,13 @@ function $u({ isStreaming: t, disabled: e, inputDisabled: n, onSend: r, onFocus:
5721
5725
  onClick: r,
5722
5726
  "aria-label": o.sendAriaLabel,
5723
5727
  disabled: e || !m && !y,
5724
- children: /* @__PURE__ */ s(Eu, { size: 16 })
5728
+ children: /* @__PURE__ */ s($u, { size: 16 })
5725
5729
  }
5726
5730
  )
5727
5731
  ] })
5728
5732
  ] });
5729
5733
  }
5730
- function Qi({ variant: t, isOpen: e = !1, onAcknowledge: n }) {
5734
+ function Hi({ variant: t, isOpen: e = !1, onAcknowledge: n }) {
5731
5735
  const r = j(), i = nn.value;
5732
5736
  return t === "explicit" ? e ? /* @__PURE__ */ s("div", { class: "jex-privacy-explicit", role: "dialog", "aria-label": r.privacyExplicitTitle, children: [
5733
5737
  /* @__PURE__ */ s("div", { class: "jex-privacy-explicit-content", children: [
@@ -5774,7 +5778,7 @@ function Qi({ variant: t, isOpen: e = !1, onAcknowledge: n }) {
5774
5778
  )
5775
5779
  ] });
5776
5780
  }
5777
- function Mu({
5781
+ function Nu({
5778
5782
  sessionId: t,
5779
5783
  visitorId: e,
5780
5784
  isLoading: n,
@@ -5783,9 +5787,9 @@ function Mu({
5783
5787
  ensureSession: o,
5784
5788
  onStartFresh: a
5785
5789
  }) {
5786
- const l = j(), c = kt, u = Mr.value, h = ka({ sessionId: t, visitorId: e, ensureSession: o }), f = Ht.value !== null && Ht.value > Date.now(), d = n || r || f, p = u === "explicit" && Wt.value;
5790
+ const l = j(), c = kt, u = Mr.value, h = ka({ sessionId: t, visitorId: e, ensureSession: o }), f = Qt.value !== null && Qt.value > Date.now(), d = n || r || f, p = u === "explicit" && Wt.value;
5787
5791
  function m() {
5788
- yu();
5792
+ ku();
5789
5793
  const g = In.value;
5790
5794
  In.value = null, g && h(g);
5791
5795
  }
@@ -5809,12 +5813,12 @@ function Mu({
5809
5813
  !g || d || await h(g);
5810
5814
  }
5811
5815
  return /* @__PURE__ */ s("div", { class: "jex-chat-input", children: [
5812
- /* @__PURE__ */ s(Au, {}),
5813
- /* @__PURE__ */ s(Iu, {}),
5814
- u === "chip" && /* @__PURE__ */ s(Qi, { variant: "chip" }),
5816
+ /* @__PURE__ */ s(Eu, {}),
5817
+ /* @__PURE__ */ s(Pu, {}),
5818
+ u === "chip" && /* @__PURE__ */ s(Hi, { variant: "chip" }),
5815
5819
  /* @__PURE__ */ s("div", { class: `jex-chat-input-composer-gate${p ? " jex-chat-input-composer-gate-open" : ""}`, children: [
5816
5820
  /* @__PURE__ */ s(
5817
- $u,
5821
+ qu,
5818
5822
  {
5819
5823
  isStreaming: r,
5820
5824
  disabled: d,
@@ -5824,7 +5828,7 @@ function Mu({
5824
5828
  }
5825
5829
  ),
5826
5830
  u === "explicit" && /* @__PURE__ */ s(
5827
- Qi,
5831
+ Hi,
5828
5832
  {
5829
5833
  variant: "explicit",
5830
5834
  isOpen: Wt.value,
@@ -5834,17 +5838,17 @@ function Mu({
5834
5838
  ] })
5835
5839
  ] });
5836
5840
  }
5837
- const qu = (...t) => t.filter((e, n, r) => !!e && e.trim() !== "" && r.indexOf(e) === n).join(" ").trim();
5838
- const Hi = (t) => t.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
5839
- const Nu = (t) => t.replace(
5841
+ const Lu = (...t) => t.filter((e, n, r) => !!e && e.trim() !== "" && r.indexOf(e) === n).join(" ").trim();
5842
+ const Qi = (t) => t.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
5843
+ const Ou = (t) => t.replace(
5840
5844
  /^([A-Z])|[\s-_]+(\w)/g,
5841
5845
  (e, n, r) => r ? r.toUpperCase() : n.toLowerCase()
5842
5846
  );
5843
5847
  const Wi = (t) => {
5844
- const e = Nu(t);
5848
+ const e = Ou(t);
5845
5849
  return e.charAt(0).toUpperCase() + e.slice(1);
5846
5850
  };
5847
- var Lu = {
5851
+ var zu = {
5848
5852
  xmlns: "http://www.w3.org/2000/svg",
5849
5853
  width: 24,
5850
5854
  height: 24,
@@ -5855,13 +5859,13 @@ var Lu = {
5855
5859
  "stroke-linecap": "round",
5856
5860
  "stroke-linejoin": "round"
5857
5861
  };
5858
- const Ou = (t) => {
5862
+ const Bu = (t) => {
5859
5863
  for (const e in t)
5860
5864
  if (e.startsWith("aria-") || e === "role" || e === "title")
5861
5865
  return !0;
5862
5866
  return !1;
5863
5867
  };
5864
- const zu = ({
5868
+ const Du = ({
5865
5869
  color: t = "currentColor",
5866
5870
  size: e = 24,
5867
5871
  strokeWidth: n = 2,
@@ -5873,26 +5877,26 @@ const zu = ({
5873
5877
  }) => ve(
5874
5878
  "svg",
5875
5879
  {
5876
- ...Lu,
5880
+ ...zu,
5877
5881
  width: String(e),
5878
5882
  height: e,
5879
5883
  stroke: t,
5880
5884
  "stroke-width": r ? Number(n) * 24 / Number(e) : n,
5881
5885
  class: ["lucide", a].join(" "),
5882
- ...!i && !Ou(l) && { "aria-hidden": "true" },
5886
+ ...!i && !Bu(l) && { "aria-hidden": "true" },
5883
5887
  ...l
5884
5888
  },
5885
5889
  [...o.map(([c, u]) => ve(c, u)), ...Pe(i)]
5886
5890
  );
5887
- const Bu = (t, e) => {
5891
+ const Fu = (t, e) => {
5888
5892
  const n = ({ class: r = "", className: i = "", children: o, ...a }) => ve(
5889
- zu,
5893
+ Du,
5890
5894
  {
5891
5895
  ...a,
5892
5896
  iconNode: e,
5893
- class: qu(
5894
- `lucide-${Hi(Wi(t))}`,
5895
- `lucide-${Hi(t)}`,
5897
+ class: Lu(
5898
+ `lucide-${Qi(Wi(t))}`,
5899
+ `lucide-${Qi(t)}`,
5896
5900
  r,
5897
5901
  i
5898
5902
  )
@@ -5901,7 +5905,7 @@ const Bu = (t, e) => {
5901
5905
  );
5902
5906
  return n.displayName = Wi(t), n;
5903
5907
  };
5904
- const Du = Bu("corner-up-left", [
5908
+ const Uu = Fu("corner-up-left", [
5905
5909
  ["path", { d: "M20 20v-7a4 4 0 0 0-4-4H4", key: "1nkjon" }],
5906
5910
  ["path", { d: "M9 14 4 9l5-5", key: "102s5s" }]
5907
5911
  ]);
@@ -5920,14 +5924,14 @@ function E(t, e = "") {
5920
5924
  }, getRegex: () => new RegExp(n, e) };
5921
5925
  return r;
5922
5926
  }
5923
- var Uu = (() => {
5927
+ var Vu = (() => {
5924
5928
  try {
5925
5929
  return !!new RegExp("(?<=1)(?<!1)");
5926
5930
  } catch {
5927
5931
  return !1;
5928
5932
  }
5929
- })(), le = { codeRemoveIndent: /^(?: {1,4}| {0,3}\t)/gm, outputLinkReplace: /\\([\[\]])/g, indentCodeCompensation: /^(\s+)(?:```)/, beginningSpace: /^\s+/, endingHash: /#$/, startingSpaceChar: /^ /, endingSpaceChar: / $/, nonSpaceChar: /[^ ]/, newLineCharGlobal: /\n/g, tabCharGlobal: /\t/g, multipleSpaceGlobal: /\s+/g, blankLine: /^[ \t]*$/, doubleBlankLine: /\n[ \t]*\n[ \t]*$/, blockquoteStart: /^ {0,3}>/, blockquoteSetextReplace: /\n {0,3}((?:=+|-+) *)(?=\n|$)/g, blockquoteSetextReplace2: /^ {0,3}>[ \t]?/gm, listReplaceNesting: /^ {1,4}(?=( {4})*[^ ])/g, listIsTask: /^\[[ xX]\] +\S/, listReplaceTask: /^\[[ xX]\] +/, listTaskCheckbox: /\[[ xX]\]/, anyLine: /\n.*\n/, hrefBrackets: /^<(.*)>$/, tableDelimiter: /[:|]/, tableAlignChars: /^\||\| *$/g, tableRowBlankLine: /\n[ \t]*$/, tableAlignRight: /^ *-+: *$/, tableAlignCenter: /^ *:-+: *$/, tableAlignLeft: /^ *:-+ *$/, startATag: /^<a /i, endATag: /^<\/a>/i, startPreScriptTag: /^<(pre|code|kbd|script)(\s|>)/i, endPreScriptTag: /^<\/(pre|code|kbd|script)(\s|>)/i, startAngleBracket: /^</, endAngleBracket: />$/, pedanticHrefTitle: /^([^'"]*[^\s])\s+(['"])(.*)\2/, unicodeAlphaNumeric: /[\p{L}\p{N}]/u, escapeTest: /[&<>"']/, escapeReplace: /[&<>"']/g, escapeTestNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, escapeReplaceNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g, caret: /(^|[^\[])\^/g, percentDecode: /%25/g, findPipe: /\|/g, splitPipe: / \|/, slashPipe: /\\\|/g, carriageReturn: /\r\n|\r/g, spaceLine: /^ +$/gm, notSpaceStart: /^\S*/, endingNewline: /\n$/, listItemRegex: (t) => new RegExp(`^( {0,3}${t})((?:[ ][^\\n]*)?(?:\\n|$))`), nextBulletRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`), hrRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`), fencesBeginRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}(?:\`\`\`|~~~)`), headingBeginRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}#`), htmlBeginRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}<(?:[a-z].*>|!--)`, "i"), blockquoteBeginRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}>`) }, Fu = /^(?:[ \t]*(?:\n|$))+/, Vu = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Qu = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, on = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Hu = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, Dr = / {0,3}(?:[*+-]|\d{1,9}[.)])/, Sa = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, Ca = E(Sa).replace(/bull/g, Dr).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), Wu = E(Sa).replace(/bull/g, Dr).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), Ur = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, Ku = /^[^\n]+/, Fr = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, Gu = E(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", Fr).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), Yu = E(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, Dr).getRegex(), Bn = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Vr = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, Ju = E("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", Vr).replace("tag", Bn).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Ta = E(Ur).replace("hr", on).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Bn).getRegex(), Zu = E(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Ta).getRegex(), Qr = { blockquote: Zu, code: Vu, def: Gu, fences: Qu, heading: Hu, hr: on, html: Ju, lheading: Ca, list: Yu, newline: Fu, paragraph: Ta, table: Xe, text: Ku }, Ki = E("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", on).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Bn).getRegex(), Xu = { ...Qr, lheading: Wu, table: Ki, paragraph: E(Ur).replace("hr", on).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", Ki).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Bn).getRegex() }, ed = { ...Qr, html: E(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment", Vr).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(), def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/, heading: /^(#{1,6})(.*)(?:\n+|$)/, fences: Xe, lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/, paragraph: E(Ur).replace("hr", on).replace("heading", ` *#{1,6} *[^
5930
- ]`).replace("lheading", Ca).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex() }, td = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, nd = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, Ra = /^( {2,}|\\)\n(?!\s*$)/, rd = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, Ct = /[\p{P}\p{S}]/u, Dn = /[\s\p{P}\p{S}]/u, Hr = /[^\s\p{P}\p{S}]/u, id = E(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, Dn).getRegex(), Aa = /(?!~)[\p{P}\p{S}]/u, od = /(?!~)[\s\p{P}\p{S}]/u, ad = /(?:[^\s\p{P}\p{S}]|~)/u, sd = E(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", Uu ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), Ia = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, ld = E(Ia, "u").replace(/punct/g, Ct).getRegex(), cd = E(Ia, "u").replace(/punct/g, Aa).getRegex(), Ea = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", ud = E(Ea, "gu").replace(/notPunctSpace/g, Hr).replace(/punctSpace/g, Dn).replace(/punct/g, Ct).getRegex(), dd = E(Ea, "gu").replace(/notPunctSpace/g, ad).replace(/punctSpace/g, od).replace(/punct/g, Aa).getRegex(), hd = E("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, Hr).replace(/punctSpace/g, Dn).replace(/punct/g, Ct).getRegex(), pd = E(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, Ct).getRegex(), fd = "^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", md = E(fd, "gu").replace(/notPunctSpace/g, Hr).replace(/punctSpace/g, Dn).replace(/punct/g, Ct).getRegex(), gd = E(/\\(punct)/, "gu").replace(/punct/g, Ct).getRegex(), xd = E(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), vd = E(Vr).replace("(?:-->|$)", "-->").getRegex(), bd = E("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", vd).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), En = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/, yd = E(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", En).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), Pa = E(/^!?\[(label)\]\[(ref)\]/).replace("label", En).replace("ref", Fr).getRegex(), $a = E(/^!?\[(ref)\](?:\[\])?/).replace("ref", Fr).getRegex(), wd = E("reflink|nolink(?!\\()", "g").replace("reflink", Pa).replace("nolink", $a).getRegex(), Gi = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, Wr = { _backpedal: Xe, anyPunctuation: gd, autolink: xd, blockSkip: sd, br: Ra, code: nd, del: Xe, delLDelim: Xe, delRDelim: Xe, emStrongLDelim: ld, emStrongRDelimAst: ud, emStrongRDelimUnd: hd, escape: td, link: yd, nolink: $a, punctuation: id, reflink: Pa, reflinkSearch: wd, tag: bd, text: rd, url: Xe }, kd = { ...Wr, link: E(/^!?\[(label)\]\((.*?)\)/).replace("label", En).getRegex(), reflink: E(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", En).getRegex() }, yr = { ...Wr, emStrongRDelimAst: dd, emStrongLDelim: cd, delLDelim: pd, delRDelim: md, url: E(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", Gi).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(), _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/, del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/, text: E(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", Gi).getRegex() }, _d = { ...yr, br: E(Ra).replace("{2,}", "*").getRegex(), text: E(yr.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex() }, dn = { normal: Qr, gfm: Xu, pedantic: ed }, It = { normal: Wr, gfm: yr, breaks: _d, pedantic: kd }, jd = { "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;" }, Yi = (t) => jd[t];
5933
+ })(), le = { codeRemoveIndent: /^(?: {1,4}| {0,3}\t)/gm, outputLinkReplace: /\\([\[\]])/g, indentCodeCompensation: /^(\s+)(?:```)/, beginningSpace: /^\s+/, endingHash: /#$/, startingSpaceChar: /^ /, endingSpaceChar: / $/, nonSpaceChar: /[^ ]/, newLineCharGlobal: /\n/g, tabCharGlobal: /\t/g, multipleSpaceGlobal: /\s+/g, blankLine: /^[ \t]*$/, doubleBlankLine: /\n[ \t]*\n[ \t]*$/, blockquoteStart: /^ {0,3}>/, blockquoteSetextReplace: /\n {0,3}((?:=+|-+) *)(?=\n|$)/g, blockquoteSetextReplace2: /^ {0,3}>[ \t]?/gm, listReplaceNesting: /^ {1,4}(?=( {4})*[^ ])/g, listIsTask: /^\[[ xX]\] +\S/, listReplaceTask: /^\[[ xX]\] +/, listTaskCheckbox: /\[[ xX]\]/, anyLine: /\n.*\n/, hrefBrackets: /^<(.*)>$/, tableDelimiter: /[:|]/, tableAlignChars: /^\||\| *$/g, tableRowBlankLine: /\n[ \t]*$/, tableAlignRight: /^ *-+: *$/, tableAlignCenter: /^ *:-+: *$/, tableAlignLeft: /^ *:-+ *$/, startATag: /^<a /i, endATag: /^<\/a>/i, startPreScriptTag: /^<(pre|code|kbd|script)(\s|>)/i, endPreScriptTag: /^<\/(pre|code|kbd|script)(\s|>)/i, startAngleBracket: /^</, endAngleBracket: />$/, pedanticHrefTitle: /^([^'"]*[^\s])\s+(['"])(.*)\2/, unicodeAlphaNumeric: /[\p{L}\p{N}]/u, escapeTest: /[&<>"']/, escapeReplace: /[&<>"']/g, escapeTestNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, escapeReplaceNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g, caret: /(^|[^\[])\^/g, percentDecode: /%25/g, findPipe: /\|/g, splitPipe: / \|/, slashPipe: /\\\|/g, carriageReturn: /\r\n|\r/g, spaceLine: /^ +$/gm, notSpaceStart: /^\S*/, endingNewline: /\n$/, listItemRegex: (t) => new RegExp(`^( {0,3}${t})((?:[ ][^\\n]*)?(?:\\n|$))`), nextBulletRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`), hrRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`), fencesBeginRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}(?:\`\`\`|~~~)`), headingBeginRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}#`), htmlBeginRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}<(?:[a-z].*>|!--)`, "i"), blockquoteBeginRegex: (t) => new RegExp(`^ {0,${Math.min(3, t - 1)}}>`) }, Hu = /^(?:[ \t]*(?:\n|$))+/, Qu = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Wu = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, on = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Ku = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, Dr = / {0,3}(?:[*+-]|\d{1,9}[.)])/, Sa = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, Ca = E(Sa).replace(/bull/g, Dr).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), Gu = E(Sa).replace(/bull/g, Dr).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), Fr = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, Yu = /^[^\n]+/, Ur = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, Ju = E(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", Ur).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), Zu = E(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, Dr).getRegex(), Bn = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Vr = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, Xu = E("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", Vr).replace("tag", Bn).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Ta = E(Fr).replace("hr", on).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Bn).getRegex(), ed = E(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Ta).getRegex(), Hr = { blockquote: ed, code: Qu, def: Ju, fences: Wu, heading: Ku, hr: on, html: Xu, lheading: Ca, list: Zu, newline: Hu, paragraph: Ta, table: Xe, text: Yu }, Ki = E("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", on).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Bn).getRegex(), td = { ...Hr, lheading: Gu, table: Ki, paragraph: E(Fr).replace("hr", on).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", Ki).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Bn).getRegex() }, nd = { ...Hr, html: E(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment", Vr).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(), def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/, heading: /^(#{1,6})(.*)(?:\n+|$)/, fences: Xe, lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/, paragraph: E(Fr).replace("hr", on).replace("heading", ` *#{1,6} *[^
5934
+ ]`).replace("lheading", Ca).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex() }, rd = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, id = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, Ra = /^( {2,}|\\)\n(?!\s*$)/, od = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, Ct = /[\p{P}\p{S}]/u, Dn = /[\s\p{P}\p{S}]/u, Qr = /[^\s\p{P}\p{S}]/u, ad = E(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, Dn).getRegex(), Aa = /(?!~)[\p{P}\p{S}]/u, sd = /(?!~)[\s\p{P}\p{S}]/u, ld = /(?:[^\s\p{P}\p{S}]|~)/u, cd = E(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", Vu ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), Ia = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, ud = E(Ia, "u").replace(/punct/g, Ct).getRegex(), dd = E(Ia, "u").replace(/punct/g, Aa).getRegex(), Ea = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", hd = E(Ea, "gu").replace(/notPunctSpace/g, Qr).replace(/punctSpace/g, Dn).replace(/punct/g, Ct).getRegex(), pd = E(Ea, "gu").replace(/notPunctSpace/g, ld).replace(/punctSpace/g, sd).replace(/punct/g, Aa).getRegex(), fd = E("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, Qr).replace(/punctSpace/g, Dn).replace(/punct/g, Ct).getRegex(), md = E(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, Ct).getRegex(), gd = "^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", xd = E(gd, "gu").replace(/notPunctSpace/g, Qr).replace(/punctSpace/g, Dn).replace(/punct/g, Ct).getRegex(), vd = E(/\\(punct)/, "gu").replace(/punct/g, Ct).getRegex(), bd = E(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), yd = E(Vr).replace("(?:-->|$)", "-->").getRegex(), wd = E("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", yd).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), En = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/, kd = E(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", En).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), Pa = E(/^!?\[(label)\]\[(ref)\]/).replace("label", En).replace("ref", Ur).getRegex(), $a = E(/^!?\[(ref)\](?:\[\])?/).replace("ref", Ur).getRegex(), _d = E("reflink|nolink(?!\\()", "g").replace("reflink", Pa).replace("nolink", $a).getRegex(), Gi = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, Wr = { _backpedal: Xe, anyPunctuation: vd, autolink: bd, blockSkip: cd, br: Ra, code: id, del: Xe, delLDelim: Xe, delRDelim: Xe, emStrongLDelim: ud, emStrongRDelimAst: hd, emStrongRDelimUnd: fd, escape: rd, link: kd, nolink: $a, punctuation: ad, reflink: Pa, reflinkSearch: _d, tag: wd, text: od, url: Xe }, jd = { ...Wr, link: E(/^!?\[(label)\]\((.*?)\)/).replace("label", En).getRegex(), reflink: E(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", En).getRegex() }, yr = { ...Wr, emStrongRDelimAst: pd, emStrongLDelim: dd, delLDelim: md, delRDelim: xd, url: E(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", Gi).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(), _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/, del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/, text: E(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", Gi).getRegex() }, Sd = { ...yr, br: E(Ra).replace("{2,}", "*").getRegex(), text: E(yr.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex() }, dn = { normal: Hr, gfm: td, pedantic: nd }, It = { normal: Wr, gfm: yr, breaks: Sd, pedantic: jd }, Cd = { "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;" }, Yi = (t) => Cd[t];
5931
5935
  function Re(t, e) {
5932
5936
  if (e) {
5933
5937
  if (le.escapeTest.test(t)) return t.replace(le.escapeReplace, Yi);
@@ -5961,7 +5965,7 @@ function Et(t, e, n) {
5961
5965
  i++;
5962
5966
  return t.slice(0, r - i);
5963
5967
  }
5964
- function Sd(t, e) {
5968
+ function Td(t, e) {
5965
5969
  if (t.indexOf(e[1]) === -1) return -1;
5966
5970
  let n = 0;
5967
5971
  for (let r = 0; r < t.length; r++) if (t[r] === "\\") r++;
@@ -5969,7 +5973,7 @@ function Sd(t, e) {
5969
5973
  else if (t[r] === e[1] && (n--, n < 0)) return r;
5970
5974
  return n > 0 ? -2 : -1;
5971
5975
  }
5972
- function Cd(t, e = 0) {
5976
+ function Rd(t, e = 0) {
5973
5977
  let n = e, r = "";
5974
5978
  for (let i of t) if (i === " ") {
5975
5979
  let o = 4 - n % 4;
@@ -5983,7 +5987,7 @@ function Xi(t, e, n, r, i) {
5983
5987
  let c = { type: t[0].charAt(0) === "!" ? "image" : "link", raw: n, href: o, title: a, text: l, tokens: r.inlineTokens(l) };
5984
5988
  return r.state.inLink = !1, c;
5985
5989
  }
5986
- function Td(t, e, n) {
5990
+ function Ad(t, e, n) {
5987
5991
  let r = t.match(n.other.indentCodeCompensation);
5988
5992
  if (r === null) return e;
5989
5993
  let i = r[1];
@@ -6018,7 +6022,7 @@ var Pn = class {
6018
6022
  fences(t) {
6019
6023
  let e = this.rules.block.fences.exec(t);
6020
6024
  if (e) {
6021
- let n = e[0], r = Td(n, e[3] || "", this.rules);
6025
+ let n = e[0], r = Ad(n, e[3] || "", this.rules);
6022
6026
  return { type: "code", raw: n, lang: e[2] ? e[2].trim().replace(this.rules.inline.anyPunctuation, "$1") : e[2], text: r };
6023
6027
  }
6024
6028
  }
@@ -6088,7 +6092,7 @@ ${h}` : h;
6088
6092
  let c = !1, u = "", h = "";
6089
6093
  if (!(e = o.exec(t)) || this.rules.block.hr.test(t)) break;
6090
6094
  u = e[0], t = t.substring(u.length);
6091
- let f = Cd(e[2].split(`
6095
+ let f = Rd(e[2].split(`
6092
6096
  `, 1)[0], e[1].length), d = t.split(`
6093
6097
  `, 1)[0], p = !f.trim(), m = 0;
6094
6098
  if (this.options.pedantic ? (m = 2, h = f.trimStart()) : p ? m = e[1].length + 1 : (m = f.search(this.rules.other.nonSpaceChar), m = m > 4 ? 1 : m, h = f.slice(m), m += e[1].length), p && this.rules.other.blankLine.test(d) && (u += d + `
@@ -6201,7 +6205,7 @@ ${h}` : h;
6201
6205
  let o = Et(n.slice(0, -1), "\\");
6202
6206
  if ((n.length - o.length) % 2 === 0) return;
6203
6207
  } else {
6204
- let o = Sd(e[2], "()");
6208
+ let o = Td(e[2], "()");
6205
6209
  if (o === -2) return;
6206
6210
  if (o > -1) {
6207
6211
  let a = (e[0].indexOf("!") === 0 ? 5 : 4) + e[1].length + o;
@@ -6842,7 +6846,7 @@ ${t}</tr>
6842
6846
  provideParser() {
6843
6847
  return this.block ? we.parse : we.parseInline;
6844
6848
  }
6845
- }, Rd = class {
6849
+ }, Id = class {
6846
6850
  defaults = Br();
6847
6851
  options = this.setOptions;
6848
6852
  parse = this.parseMarkdown(!0);
@@ -7002,7 +7006,7 @@ Please report this to https://github.com/markedjs/marked.`, t) {
7002
7006
  throw n;
7003
7007
  };
7004
7008
  }
7005
- }, rt = new Rd();
7009
+ }, rt = new Id();
7006
7010
  function q(t, e) {
7007
7011
  return rt.parse(t, e);
7008
7012
  }
@@ -7038,7 +7042,7 @@ q.setOptions({
7038
7042
  breaks: !0,
7039
7043
  gfm: !0
7040
7044
  });
7041
- function Ad({ text: t }) {
7045
+ function Ed({ text: t }) {
7042
7046
  const e = Z(() => {
7043
7047
  if (!t)
7044
7048
  return "";
@@ -7047,7 +7051,7 @@ function Ad({ text: t }) {
7047
7051
  }, [t]);
7048
7052
  return /* @__PURE__ */ s("div", { class: "jex-md", dangerouslySetInnerHTML: { __html: e } });
7049
7053
  }
7050
- function Id(t) {
7054
+ function Pd(t) {
7051
7055
  const e = t.trim().split(/\s+/).filter(Boolean);
7052
7056
  return e.length === 0 ? "?" : e.map((n) => n[0]).join("").slice(0, 2).toUpperCase();
7053
7057
  }
@@ -7058,7 +7062,7 @@ function ht({ text: t, streaming: e, error: n, authorId: r, authorName: i, autho
7058
7062
  ].filter(Boolean).join(" ");
7059
7063
  return /* @__PURE__ */ s("div", { class: "jex-message-row bot", children: [
7060
7064
  /* @__PURE__ */ s("div", { class: "jex-message-head", children: [
7061
- /* @__PURE__ */ s("div", { class: `jex-avatar ${u ? "jex-avatar-agent" : "jex-avatar-bot"}`, children: u && o && !h ? /* @__PURE__ */ s("img", { src: o, alt: i ?? "", class: "jex-avatar-img", onError: d }) : u ? /* @__PURE__ */ s("span", { class: "jex-avatar-initials", children: Id(i ?? "") }) : a && !h ? /* @__PURE__ */ s("img", { src: a, alt: "", class: "jex-avatar-img", onError: d }) : /* @__PURE__ */ s(zn, { size: 14 }) }),
7065
+ /* @__PURE__ */ s("div", { class: `jex-avatar ${u ? "jex-avatar-agent" : "jex-avatar-bot"}`, children: u && o && !h ? /* @__PURE__ */ s("img", { src: o, alt: i ?? "", class: "jex-avatar-img", onError: d }) : u ? /* @__PURE__ */ s("span", { class: "jex-avatar-initials", children: Pd(i ?? "") }) : a && !h ? /* @__PURE__ */ s("img", { src: a, alt: "", class: "jex-avatar-img", onError: d }) : /* @__PURE__ */ s(zn, { size: 14 }) }),
7062
7066
  m && /* @__PURE__ */ s("span", { class: "jex-message-author", children: m }),
7063
7067
  u && i && /* @__PURE__ */ s(
7064
7068
  "button",
@@ -7068,19 +7072,19 @@ function ht({ text: t, streaming: e, error: n, authorId: r, authorName: i, autho
7068
7072
  "aria-label": p,
7069
7073
  title: p,
7070
7074
  onClick: () => {
7071
- bu(i);
7075
+ wu(i);
7072
7076
  },
7073
- children: /* @__PURE__ */ s(Du, { size: 12 })
7077
+ children: /* @__PURE__ */ s(Uu, { size: 12 })
7074
7078
  }
7075
7079
  )
7076
7080
  ] }),
7077
7081
  /* @__PURE__ */ s("div", { class: y, children: [
7078
- /* @__PURE__ */ s(Ad, { text: t }),
7082
+ /* @__PURE__ */ s(Ed, { text: t }),
7079
7083
  e && /* @__PURE__ */ s("span", { class: "jex-streaming-cursor" })
7080
7084
  ] })
7081
7085
  ] });
7082
7086
  }
7083
- function Ed({ questions: t, disabled: e, onPick: n }) {
7087
+ function $d({ questions: t, disabled: e, onPick: n }) {
7084
7088
  return t.length === 0 ? null : /* @__PURE__ */ s("div", { class: "jex-starter-chips", children: t.map((r) => /* @__PURE__ */ s(
7085
7089
  "button",
7086
7090
  {
@@ -7095,7 +7099,7 @@ function Ed({ questions: t, disabled: e, onPick: n }) {
7095
7099
  r
7096
7100
  )) });
7097
7101
  }
7098
- function Pd({ text: t }) {
7102
+ function Md({ text: t }) {
7099
7103
  return /* @__PURE__ */ s("div", { class: "jex-message user", children: t });
7100
7104
  }
7101
7105
  function Ma() {
@@ -7109,7 +7113,7 @@ function qa() {
7109
7113
  });
7110
7114
  };
7111
7115
  }
7112
- function $d({ message: t, sessionId: e, visitorId: n, waitingSetAt: r }) {
7116
+ function qd({ message: t, sessionId: e, visitorId: n, waitingSetAt: r }) {
7113
7117
  const i = j();
7114
7118
  return t.formData ? /* @__PURE__ */ s("div", { class: "jex-inline-form-submitted", children: [
7115
7119
  /* @__PURE__ */ s("span", { class: "jex-inline-form-check", children: "✓" }),
@@ -7122,7 +7126,7 @@ function $d({ message: t, sessionId: e, visitorId: n, waitingSetAt: r }) {
7122
7126
  ] })
7123
7127
  ] })
7124
7128
  ] }) : /* @__PURE__ */ s("div", { class: "jex-message-row bot", children: /* @__PURE__ */ s(
7125
- Md,
7129
+ Nd,
7126
7130
  {
7127
7131
  messageId: t._id,
7128
7132
  sessionId: e,
@@ -7131,7 +7135,7 @@ function $d({ message: t, sessionId: e, visitorId: n, waitingSetAt: r }) {
7131
7135
  }
7132
7136
  ) });
7133
7137
  }
7134
- function Md({ messageId: t, sessionId: e, visitorId: n, waitingSetAt: r }) {
7138
+ function Nd({ messageId: t, sessionId: e, visitorId: n, waitingSetAt: r }) {
7135
7139
  const i = j(), [o, a] = I(""), [l, c] = I(""), [u, h] = I(!1), f = nn.value, d = /^https?:\/\//i.test(f) ? f : tn, p = Ma(), m = qa();
7136
7140
  async function y(g) {
7137
7141
  if (g.preventDefault(), !u) {
@@ -7204,29 +7208,29 @@ function Md({ messageId: t, sessionId: e, visitorId: n, waitingSetAt: r }) {
7204
7208
  ] })
7205
7209
  ] });
7206
7210
  }
7207
- function qd() {
7211
+ function Ld() {
7208
7212
  return it(oe.functions.magicline.public.submitForm);
7209
7213
  }
7210
- function Nd() {
7214
+ function Od() {
7211
7215
  return Xt(oe.functions.magicline.actions.getTrialConfig);
7212
7216
  }
7213
- function Ld() {
7217
+ function zd() {
7214
7218
  return Xt(oe.functions.magicline.actions.listTrialSlots);
7215
7219
  }
7216
- function Od() {
7220
+ function Bd() {
7217
7221
  return Xt(oe.functions.magicline.actions.getRateBundles);
7218
7222
  }
7219
7223
  function Na() {
7220
7224
  return Xt(oe.functions.magicline.actions.getContractPreview);
7221
7225
  }
7222
- function zd() {
7226
+ function Dd() {
7223
7227
  return Xt(oe.functions.magicline.actions.submitContractCreation);
7224
7228
  }
7225
- const Gr = { en: qr, de: ua }, Bd = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
7229
+ const Gr = { en: qr, de: ua }, Fd = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
7226
7230
  function La(t) {
7227
- return Bd.test(t.trim());
7231
+ return Fd.test(t.trim());
7228
7232
  }
7229
- function Dd(t, e = /* @__PURE__ */ new Date()) {
7233
+ function Ud(t, e = /* @__PURE__ */ new Date()) {
7230
7234
  const n = t.trim();
7231
7235
  if (n === "")
7232
7236
  return null;
@@ -7248,7 +7252,7 @@ function za() {
7248
7252
  const t = nn.value;
7249
7253
  return /^https?:\/\//i.test(t) ? t : tn;
7250
7254
  }
7251
- const Ud = {
7255
+ const Vd = {
7252
7256
  DE: 22,
7253
7257
  AT: 20,
7254
7258
  CH: 21,
@@ -7264,16 +7268,16 @@ const Ud = {
7264
7268
  DK: 18,
7265
7269
  FI: 18,
7266
7270
  PT: 25
7267
- }, Fd = 15, Vd = 34;
7271
+ }, Hd = 15, Qd = 34;
7268
7272
  function Ba(t) {
7269
7273
  return t.replace(/\s+/g, "").toUpperCase();
7270
7274
  }
7271
- function Qd(t) {
7272
- const e = Ba(t), n = e.slice(0, 2), r = Ud[n];
7275
+ function Wd(t) {
7276
+ const e = Ba(t), n = e.slice(0, 2), r = Vd[n];
7273
7277
  if (r !== void 0) {
7274
7278
  if (e.length !== r)
7275
7279
  return !1;
7276
- } else if (e.length < Fd || e.length > Vd)
7280
+ } else if (e.length < Hd || e.length > Qd)
7277
7281
  return !1;
7278
7282
  const i = e.slice(4) + e.slice(0, 4);
7279
7283
  let o = "";
@@ -7293,7 +7297,7 @@ function Qd(t) {
7293
7297
  }
7294
7298
  return a === 1;
7295
7299
  }
7296
- function Hd(t) {
7300
+ function Kd(t) {
7297
7301
  const e = Ba(t);
7298
7302
  if (e.length <= 8)
7299
7303
  return e;
@@ -7323,7 +7327,7 @@ function Mn(t, e, n) {
7323
7327
  const [a, l] = o[n];
7324
7328
  return `${t} ${r ? l : a}`;
7325
7329
  }
7326
- function Wd(t, e) {
7330
+ function Gd(t, e) {
7327
7331
  const n = t.trim();
7328
7332
  if (n === "")
7329
7333
  return "—";
@@ -7347,7 +7351,7 @@ function Yr(t, e, n) {
7347
7351
  }[i];
7348
7352
  return a === void 0 ? `${t} ${e.toLowerCase()}` : a.replace("{n}", String(t));
7349
7353
  }
7350
- function Kd(t, e, n, r, i) {
7354
+ function Yd(t, e, n, r, i) {
7351
7355
  const o = Gr[i], a = ke(t, e, i);
7352
7356
  switch (n) {
7353
7357
  case "TERM_BASED":
@@ -7364,19 +7368,19 @@ function Kd(t, e, n, r, i) {
7364
7368
  return a;
7365
7369
  }
7366
7370
  }
7367
- function Gd(t, e, n, r) {
7371
+ function Jd(t, e, n, r) {
7368
7372
  return e === "PERCENTAGE" ? `-${t}%` : `-${ke(t, n, r)}`;
7369
7373
  }
7370
- const Yd = {
7374
+ const Zd = {
7371
7375
  startpaket: "magiclineFeeStarterPackage",
7372
7376
  "starter package": "magiclineFeeStarterPackage",
7373
7377
  trainerpauschale: "magiclineFeeTrainerFee"
7374
7378
  };
7375
7379
  function Da(t, e) {
7376
- const n = t.trim().toLowerCase(), r = Yd[n];
7380
+ const n = t.trim().toLowerCase(), r = Zd[n];
7377
7381
  return r !== void 0 ? e[r] : t;
7378
7382
  }
7379
- function Jd(t, e, n) {
7383
+ function Xd(t, e, n) {
7380
7384
  const r = Gr[n];
7381
7385
  if (t === "NONE")
7382
7386
  return r.magiclineRenewalNone;
@@ -7386,7 +7390,7 @@ function Jd(t, e, n) {
7386
7390
  }
7387
7391
  return "";
7388
7392
  }
7389
- const Ua = ["MALE", "FEMALE", "UNISEX"], Zd = [
7393
+ const Fa = ["MALE", "FEMALE", "UNISEX"], eh = [
7390
7394
  { code: "DE", label: "Germany / Deutschland" },
7391
7395
  { code: "AT", label: "Austria / Österreich" },
7392
7396
  { code: "CH", label: "Switzerland / Schweiz" },
@@ -7403,11 +7407,11 @@ const Ua = ["MALE", "FEMALE", "UNISEX"], Zd = [
7403
7407
  { code: "GB", label: "United Kingdom" },
7404
7408
  { code: "US", label: "United States" }
7405
7409
  ];
7406
- function Xd(t, e) {
7410
+ function th(t, e) {
7407
7411
  const n = [];
7408
7412
  return e && n.push("trainer"), n.push("slot"), n.push("personal"), (t.address.visible || t.zip.visible) && n.push("address"), n.push("confirm"), n;
7409
7413
  }
7410
- const eh = {
7414
+ const nh = {
7411
7415
  firstName: "",
7412
7416
  lastName: "",
7413
7417
  email: "",
@@ -7424,7 +7428,7 @@ const eh = {
7424
7428
  consent: !1,
7425
7429
  trainerRequired: !0
7426
7430
  };
7427
- function th(t, e) {
7431
+ function rh(t, e) {
7428
7432
  switch (e.type) {
7429
7433
  case "set":
7430
7434
  return { ...t, [e.key]: e.value };
@@ -7436,11 +7440,11 @@ function th(t, e) {
7436
7440
  return t;
7437
7441
  }
7438
7442
  }
7439
- function nh({
7443
+ function ih({
7440
7444
  sessionId: t,
7441
7445
  visitorId: e
7442
7446
  }) {
7443
- const n = Nd(), r = Ld(), [i, o] = pe(th, eh), [a, l] = pe(
7447
+ const n = Od(), r = zd(), [i, o] = pe(rh, nh), [a, l] = pe(
7444
7448
  (v, b) => b,
7445
7449
  { phase: "loading" }
7446
7450
  ), [c, u] = pe(
@@ -7509,22 +7513,22 @@ function nh({
7509
7513
  refetchSlots: m
7510
7514
  };
7511
7515
  }
7512
- function rh({
7516
+ function oh({
7513
7517
  formMessageId: t,
7514
7518
  sessionId: e,
7515
7519
  visitorId: n,
7516
7520
  slotUnavailable: r = !1,
7517
7521
  retryPending: i = !1
7518
7522
  }) {
7519
- const o = j(), a = qd(), { fields: l, setField: c, setTrainerRequired: u, configState: h, slotsState: f, refetchSlots: d } = nh({ sessionId: e, visitorId: n });
7523
+ const o = j(), a = Ld(), { fields: l, setField: c, setTrainerRequired: u, configState: h, slotsState: f, refetchSlots: d } = ih({ sessionId: e, visitorId: n });
7520
7524
  return h.phase === "loading" ? /* @__PURE__ */ s("div", { class: "jex-inline-form jex-magicline-form", children: [
7521
7525
  /* @__PURE__ */ s("div", { class: "jex-inline-form-title", children: o.magiclineTrialTitle }),
7522
7526
  /* @__PURE__ */ s("div", { class: "jex-magicline-slots-hint", children: o.magiclineConfigLoading })
7523
7527
  ] }) : h.phase === "error" ? /* @__PURE__ */ s("div", { class: "jex-inline-form jex-magicline-form", children: [
7524
7528
  /* @__PURE__ */ s("div", { class: "jex-inline-form-title", children: o.magiclineTrialTitle }),
7525
- /* @__PURE__ */ s("div", { class: "jex-magicline-slots-hint", role: "alert", children: dh(h.code, h.backendMessage, o) })
7529
+ /* @__PURE__ */ s("div", { class: "jex-magicline-slots-hint", role: "alert", children: ph(h.code, h.backendMessage, o) })
7526
7530
  ] }) : /* @__PURE__ */ s(
7527
- ih,
7531
+ ah,
7528
7532
  {
7529
7533
  formMessageId: t,
7530
7534
  sessionId: e,
@@ -7541,7 +7545,7 @@ function rh({
7541
7545
  }
7542
7546
  );
7543
7547
  }
7544
- function ih({
7548
+ function ah({
7545
7549
  formMessageId: t,
7546
7550
  sessionId: e,
7547
7551
  visitorId: n,
@@ -7556,16 +7560,16 @@ function ih({
7556
7560
  submitForm: f
7557
7561
  }) {
7558
7562
  const d = j(), { plan: p, minimumAge: m, bookingWithoutTrainerAllowed: y, studioZoneId: g } = o, v = Z(
7559
- () => Xd(p, y),
7563
+ () => th(p, y),
7560
7564
  [p, y]
7561
- ), b = r ? Math.max(v.indexOf("slot"), 0) : 0, [x, P] = I(b), [S, O] = I({}), [W, U] = I(!1), [ae, L] = I(null), F = Z(() => za(), []), ne = Math.min(x, v.length - 1), w = v[ne], G = ne === v.length - 1, Tt = ne === 0;
7565
+ ), b = r ? Math.max(v.indexOf("slot"), 0) : 0, [x, P] = I(b), [S, O] = I({}), [W, F] = I(!1), [ae, L] = I(null), U = Z(() => za(), []), ne = Math.min(x, v.length - 1), w = v[ne], G = ne === v.length - 1, Tt = ne === 0;
7562
7566
  function We(K) {
7563
7567
  const R = {};
7564
7568
  if (K === "slot")
7565
7569
  return a.slotId === "" && (R.slotId = d.magiclineSlotRequiredError), R;
7566
7570
  if (K === "personal") {
7567
7571
  if (a.firstName.trim() === "" && (R.firstName = d.magiclineRequiredError), a.lastName.trim() === "" && (R.lastName = d.magiclineRequiredError), p.email.visible && p.email.required && a.email.trim() === "" && (R.email = d.magiclineRequiredError), a.email.trim() !== "" && !La(a.email) && (R.email = d.magiclineEmailError), p.phone.visible && p.phone.required && a.phone.trim() === "" && (R.phone = d.magiclineRequiredError), p.gender.visible && p.gender.required && a.gender === "" && (R.gender = d.magiclineRequiredError), p.dateOfBirth.visible && (p.dateOfBirth.required && a.birthDate.trim() === "" && (R.birthDate = d.magiclineRequiredError), a.birthDate.trim() !== "")) {
7568
- const me = Dd(a.birthDate);
7572
+ const me = Ud(a.birthDate);
7569
7573
  me !== null && me < 0 ? R.birthDate = d.magiclineRequiredError : m > 0 && me !== null && me < m && (R.birthDate = d.magiclineMinAgeError.replace("{age}", String(m)));
7570
7574
  }
7571
7575
  return R;
@@ -7591,9 +7595,9 @@ function ih({
7591
7595
  O(K);
7592
7596
  return;
7593
7597
  }
7594
- O({}), L(null), U(!0);
7598
+ O({}), L(null), F(!0);
7595
7599
  try {
7596
- const R = hh(p, a);
7600
+ const R = fh(p, a);
7597
7601
  await f({
7598
7602
  sessionId: e,
7599
7603
  visitorId: n,
@@ -7602,13 +7606,13 @@ function ih({
7602
7606
  fields: R
7603
7607
  });
7604
7608
  } catch (R) {
7605
- console.error("[TrialSessionBookingForm] Submit failed:", R), L(d.magiclineFailedDetail), U(!1);
7609
+ console.error("[TrialSessionBookingForm] Submit failed:", R), L(d.magiclineFailedDetail), F(!1);
7606
7610
  }
7607
7611
  }
7608
7612
  function Rt() {
7609
7613
  G ? Ge() : Ke();
7610
7614
  }
7611
- const lt = uh(w, d), je = `jex-ml-consent-${t}`;
7615
+ const lt = hh(w, d), je = `jex-ml-consent-${t}`;
7612
7616
  return /* @__PURE__ */ s("div", { class: "jex-inline-form jex-magicline-form", children: [
7613
7617
  /* @__PURE__ */ s("div", { class: "jex-magicline-wizard-header", children: [
7614
7618
  /* @__PURE__ */ s("div", { class: "jex-inline-form-title", children: d.magiclineTrialTitle }),
@@ -7626,7 +7630,7 @@ function ih({
7626
7630
  ] }),
7627
7631
  /* @__PURE__ */ s("div", { class: "jex-form", role: "group", "aria-label": lt, children: [
7628
7632
  w === "trainer" ? /* @__PURE__ */ s(
7629
- oh,
7633
+ sh,
7630
7634
  {
7631
7635
  formMessageId: t,
7632
7636
  trainerRequired: a.trainerRequired,
@@ -7635,7 +7639,7 @@ function ih({
7635
7639
  }
7636
7640
  ) : null,
7637
7641
  w === "slot" ? /* @__PURE__ */ s(
7638
- ah,
7642
+ lh,
7639
7643
  {
7640
7644
  slotsState: u,
7641
7645
  slotId: a.slotId,
@@ -7651,7 +7655,7 @@ function ih({
7651
7655
  }
7652
7656
  ) : null,
7653
7657
  w === "personal" ? /* @__PURE__ */ s(
7654
- sh,
7658
+ ch,
7655
7659
  {
7656
7660
  plan: p,
7657
7661
  fields: a,
@@ -7661,7 +7665,7 @@ function ih({
7661
7665
  }
7662
7666
  ) : null,
7663
7667
  w === "address" ? /* @__PURE__ */ s(
7664
- lh,
7668
+ uh,
7665
7669
  {
7666
7670
  plan: p,
7667
7671
  fields: a,
@@ -7671,10 +7675,10 @@ function ih({
7671
7675
  }
7672
7676
  ) : null,
7673
7677
  w === "confirm" ? /* @__PURE__ */ s(
7674
- ch,
7678
+ dh,
7675
7679
  {
7676
7680
  consentId: je,
7677
- privacyUrl: F,
7681
+ privacyUrl: U,
7678
7682
  studioZoneId: g,
7679
7683
  fields: a,
7680
7684
  disabled: W,
@@ -7708,7 +7712,7 @@ function ih({
7708
7712
  ] })
7709
7713
  ] });
7710
7714
  }
7711
- function oh({ formMessageId: t, trainerRequired: e, disabled: n, onChange: r }) {
7715
+ function sh({ formMessageId: t, trainerRequired: e, disabled: n, onChange: r }) {
7712
7716
  const i = j(), o = `jex-ml-trainer-${t}`;
7713
7717
  return /* @__PURE__ */ s("div", { class: "jex-magicline-radio-group", role: "radiogroup", "aria-label": i.magiclineStepTrainer, children: [
7714
7718
  /* @__PURE__ */ s(
@@ -7755,7 +7759,7 @@ function oh({ formMessageId: t, trainerRequired: e, disabled: n, onChange: r })
7755
7759
  )
7756
7760
  ] });
7757
7761
  }
7758
- function ah({
7762
+ function lh({
7759
7763
  slotsState: t,
7760
7764
  slotId: e,
7761
7765
  studioZoneId: n,
@@ -7808,7 +7812,7 @@ function ah({
7808
7812
  a !== void 0 ? /* @__PURE__ */ s("div", { class: "jex-magicline-error", role: "alert", children: a }) : null
7809
7813
  ] });
7810
7814
  }
7811
- function sh({ plan: t, fields: e, errors: n, disabled: r, setField: i }) {
7815
+ function ch({ plan: t, fields: e, errors: n, disabled: r, setField: i }) {
7812
7816
  const o = j(), a = Z(() => Oa(), []);
7813
7817
  return /* @__PURE__ */ s(z, { children: [
7814
7818
  /* @__PURE__ */ s("div", { class: "jex-magicline-row", children: [
@@ -7892,7 +7896,7 @@ function sh({ plan: t, fields: e, errors: n, disabled: r, setField: i }) {
7892
7896
  n.birthDate !== void 0 ? /* @__PURE__ */ s("span", { class: "jex-magicline-error", role: "alert", children: n.birthDate }) : null
7893
7897
  ] }) : null,
7894
7898
  t.gender.visible ? /* @__PURE__ */ s(
7895
- Fa,
7899
+ Ua,
7896
7900
  {
7897
7901
  label: xe(o.magiclineGender, t.gender.required, o),
7898
7902
  value: e.gender,
@@ -7903,12 +7907,12 @@ function sh({ plan: t, fields: e, errors: n, disabled: r, setField: i }) {
7903
7907
  onChange: (l) => {
7904
7908
  i("gender", l);
7905
7909
  },
7906
- options: Ua.map((l) => ({ value: l, label: ph(l, o) }))
7910
+ options: Fa.map((l) => ({ value: l, label: mh(l, o) }))
7907
7911
  }
7908
7912
  ) : null
7909
7913
  ] });
7910
7914
  }
7911
- function lh({ plan: t, fields: e, errors: n, disabled: r, setField: i }) {
7915
+ function uh({ plan: t, fields: e, errors: n, disabled: r, setField: i }) {
7912
7916
  const o = j();
7913
7917
  return /* @__PURE__ */ s(z, { children: [
7914
7918
  t.address.visible ? /* @__PURE__ */ s(z, { children: [
@@ -7957,7 +7961,7 @@ function lh({ plan: t, fields: e, errors: n, disabled: r, setField: i }) {
7957
7961
  }
7958
7962
  ),
7959
7963
  /* @__PURE__ */ s(
7960
- Fa,
7964
+ Ua,
7961
7965
  {
7962
7966
  label: xe(o.magiclineCountry, t.address.required, o),
7963
7967
  value: e.country,
@@ -7968,7 +7972,7 @@ function lh({ plan: t, fields: e, errors: n, disabled: r, setField: i }) {
7968
7972
  onChange: (a) => {
7969
7973
  i("country", a);
7970
7974
  },
7971
- options: Zd.map((a) => ({ value: a.code, label: a.label }))
7975
+ options: eh.map((a) => ({ value: a.code, label: a.label }))
7972
7976
  }
7973
7977
  )
7974
7978
  ] }) : null,
@@ -7988,7 +7992,7 @@ function lh({ plan: t, fields: e, errors: n, disabled: r, setField: i }) {
7988
7992
  ) : null
7989
7993
  ] });
7990
7994
  }
7991
- function ch({
7995
+ function dh({
7992
7996
  consentId: t,
7993
7997
  privacyUrl: e,
7994
7998
  studioZoneId: n,
@@ -8082,7 +8086,7 @@ function Ve({
8082
8086
  a !== void 0 ? /* @__PURE__ */ s("span", { id: c, class: "jex-magicline-error", role: "alert", children: a }) : null
8083
8087
  ] });
8084
8088
  }
8085
- function Fa({
8089
+ function Ua({
8086
8090
  label: t,
8087
8091
  value: e,
8088
8092
  required: n,
@@ -8117,7 +8121,7 @@ function Fa({
8117
8121
  function xe(t, e, n) {
8118
8122
  return e ? t : t + n.magiclineOptionalSuffix;
8119
8123
  }
8120
- function uh(t, e) {
8124
+ function hh(t, e) {
8121
8125
  switch (t) {
8122
8126
  case "trainer":
8123
8127
  return e.magiclineStepTrainer;
@@ -8133,10 +8137,10 @@ function uh(t, e) {
8133
8137
  return "";
8134
8138
  }
8135
8139
  }
8136
- function dh(t, e, n) {
8140
+ function ph(t, e, n) {
8137
8141
  return e.trim() !== "" ? e : t === "unsupported" ? n.magiclineConfigUnsupported : t === "inconsistent" ? n.magiclineConfigInconsistent : n.magiclineConfigUnavailable;
8138
8142
  }
8139
- function hh(t, e) {
8143
+ function fh(t, e) {
8140
8144
  const n = {
8141
8145
  firstname: e.firstName.trim(),
8142
8146
  lastname: e.lastName.trim(),
@@ -8146,7 +8150,7 @@ function hh(t, e) {
8146
8150
  };
8147
8151
  return t.email.visible && e.email.trim() !== "" && (n.email = e.email.trim()), t.phone.visible && e.phone.trim() !== "" && (n.phone = e.phone.trim()), t.dateOfBirth.visible && e.birthDate.trim() !== "" && (n.dateOfBirth = e.birthDate.trim()), t.gender.visible && e.gender !== "" && (n.gender = e.gender), t.address.visible && (e.street.trim() !== "" && (n.street = e.street.trim()), e.houseNumber.trim() !== "" && (n.houseNumber = e.houseNumber.trim()), e.city.trim() !== "" && (n.city = e.city.trim()), e.country !== "" && (n.country = e.country)), t.zip.visible && e.zip.trim() !== "" && (n.zip = e.zip.trim()), e.note.trim() !== "" && (n.note = e.note.trim()), n;
8148
8152
  }
8149
- function ph(t, e) {
8153
+ function mh(t, e) {
8150
8154
  return t === "MALE" ? e.magiclineGenderMale : t === "FEMALE" ? e.magiclineGenderFemale : e.magiclineGenderUnisex;
8151
8155
  }
8152
8156
  function Va(t, e, n) {
@@ -8175,7 +8179,7 @@ function Va(t, e, n) {
8175
8179
  });
8176
8180
  }
8177
8181
  }
8178
- const fh = {
8182
+ const gh = {
8179
8183
  termId: null,
8180
8184
  selectedModuleIds: [],
8181
8185
  acknowledgedBlocks: {},
@@ -8203,7 +8207,7 @@ const fh = {
8203
8207
  sepa: !1
8204
8208
  }
8205
8209
  };
8206
- function mh(t, e) {
8210
+ function xh(t, e) {
8207
8211
  switch (e.type) {
8208
8212
  case "setTermId":
8209
8213
  return t.termId === e.termId ? t : {
@@ -8265,14 +8269,14 @@ const eo = {
8265
8269
  voucherStatus: "idle",
8266
8270
  voucherRequestId: 0,
8267
8271
  voucherUnavailable: !1
8268
- }, gh = "voucher:";
8269
- function xh(t) {
8272
+ }, vh = "voucher:";
8273
+ function bh(t) {
8270
8274
  const e = {};
8271
8275
  for (const n of Object.keys(t))
8272
- n.startsWith(gh) || (e[n] = t[n]);
8276
+ n.startsWith(vh) || (e[n] = t[n]);
8273
8277
  return e;
8274
8278
  }
8275
- function vh(t, e) {
8279
+ function yh(t, e) {
8276
8280
  switch (e.type) {
8277
8281
  case "SET_VOUCHER_DRAFT": {
8278
8282
  const n = t.appliedVoucher !== null || t.voucherStatus === "applied";
@@ -8325,10 +8329,10 @@ function vh(t, e) {
8325
8329
  return t;
8326
8330
  }
8327
8331
  }
8328
- function bh(t, e) {
8332
+ function wh(t, e) {
8329
8333
  switch (e.type) {
8330
8334
  case "dropVoucherAcks": {
8331
- const n = xh(t.acknowledgedBlocks);
8335
+ const n = bh(t.acknowledgedBlocks);
8332
8336
  return Object.keys(n).length === Object.keys(t.acknowledgedBlocks).length ? t : { ...t, acknowledgedBlocks: n };
8333
8337
  }
8334
8338
  case "seedVoucherAcks": {
@@ -8340,14 +8344,14 @@ function bh(t, e) {
8340
8344
  return { ...t, acknowledgedBlocks: n };
8341
8345
  }
8342
8346
  default:
8343
- return mh(t, e);
8347
+ return xh(t, e);
8344
8348
  }
8345
8349
  }
8346
- function yh({
8350
+ function kh({
8347
8351
  sessionId: t,
8348
8352
  visitorId: e
8349
8353
  }) {
8350
- const n = Od(), r = Na(), [i, o] = pe(bh, fh), [a, l] = pe(vh, eo), [c, u] = pe(
8354
+ const n = Bd(), r = Na(), [i, o] = pe(wh, gh), [a, l] = pe(yh, eo), [c, u] = pe(
8351
8355
  (k, C) => C,
8352
8356
  { phase: "loading" }
8353
8357
  ), h = be(null), [f, d] = pe(
@@ -8367,13 +8371,13 @@ function yh({
8367
8371
  o({ type: "setBlockAck", ackKey: k, value: C });
8368
8372
  }, []), W = N((k) => {
8369
8373
  o({ type: "setAccountHolder", value: k });
8370
- }, []), U = N((k) => {
8374
+ }, []), F = N((k) => {
8371
8375
  o({ type: "setIban", value: k });
8372
8376
  }, []), ae = N((k, C) => {
8373
8377
  o({ type: "setConsent", key: k, value: C });
8374
8378
  }, []), L = N(() => {
8375
8379
  o({ type: "clearIban" });
8376
- }, []), F = N(() => {
8380
+ }, []), U = N(() => {
8377
8381
  o({ type: "clearTermId" }), l({ type: "CLEAR_VOUCHER" });
8378
8382
  }, []), ne = N((k) => {
8379
8383
  l({ type: "SET_VOUCHER_DRAFT", value: k }), o({ type: "dropVoucherAcks" });
@@ -8451,7 +8455,7 @@ function yh({
8451
8455
  let C = !1;
8452
8456
  const Ne = h.current;
8453
8457
  p(Ne !== null ? { phase: "reloading", pricing: Ne } : { phase: "loading" });
8454
- const Ye = k.defaultContractStartDate ?? "", Un = {
8458
+ const Ye = k.defaultContractStartDate ?? "", Fn = {
8455
8459
  sessionId: t,
8456
8460
  visitorId: e,
8457
8461
  termId: k.termId,
@@ -8476,7 +8480,7 @@ function yh({
8476
8480
  };
8477
8481
  return (async () => {
8478
8482
  try {
8479
- const V = await r(Un);
8483
+ const V = await r(Fn);
8480
8484
  if (C)
8481
8485
  return;
8482
8486
  V.status === "ok" ? p({
@@ -8525,10 +8529,10 @@ function yh({
8525
8529
  toggleModule: S,
8526
8530
  setBlockAck: O,
8527
8531
  setAccountHolder: W,
8528
- setIban: U,
8532
+ setIban: F,
8529
8533
  setConsent: ae,
8530
8534
  clearIban: L,
8531
- clearTermId: F,
8535
+ clearTermId: U,
8532
8536
  refetchOffers: Ge,
8533
8537
  fetchPreview: lt,
8534
8538
  resetPreview: Rt,
@@ -8541,17 +8545,17 @@ function yh({
8541
8545
  clearVoucher: st
8542
8546
  };
8543
8547
  }
8544
- function wh(t) {
8548
+ function _h(t) {
8545
8549
  return t !== null && t.optionalModules.length > 0 ? ["offer", "upgrades", "personal", "address", "payment", "review"] : ["offer", "personal", "address", "payment", "review"];
8546
8550
  }
8547
- function kh({
8551
+ function jh({
8548
8552
  formMessageId: t,
8549
8553
  sessionId: e,
8550
8554
  visitorId: n,
8551
8555
  projectId: r,
8552
8556
  formStatus: i
8553
8557
  }) {
8554
- const o = j(), a = Me.value, l = zd(), c = Na(), u = yh({ sessionId: e, visitorId: n }), {
8558
+ const o = j(), a = Me.value, l = Dd(), c = Na(), u = kh({ sessionId: e, visitorId: n }), {
8555
8559
  fields: h,
8556
8560
  offersState: f,
8557
8561
  previewState: d,
@@ -8566,10 +8570,10 @@ function kh({
8566
8570
  voucherUnavailable: S,
8567
8571
  setTermId: O,
8568
8572
  setPersonal: W,
8569
- setAddress: U,
8573
+ setAddress: F,
8570
8574
  toggleModule: ae,
8571
8575
  setBlockAck: L,
8572
- setAccountHolder: F,
8576
+ setAccountHolder: U,
8573
8577
  setIban: ne,
8574
8578
  setConsent: w,
8575
8579
  clearIban: G,
@@ -8582,7 +8586,7 @@ function kh({
8582
8586
  commitVoucherApplied: lt,
8583
8587
  markVoucherInvalid: je,
8584
8588
  markVoucherDisabled: K
8585
- } = u, [R, me] = I(0), [qe, At] = I({}), [re, Se] = I(!1), [ce, ct] = I(null), [k, C] = I(null), [Ne, Ye] = I(null), Un = Z(() => za(), []);
8589
+ } = u, [R, me] = I(0), [qe, At] = I({}), [re, Se] = I(!1), [ce, ct] = I(null), [k, C] = I(null), [Ne, Ye] = I(null), Fn = Z(() => za(), []);
8586
8590
  if (ce !== null && ce.status === "succeeded")
8587
8591
  return /* @__PURE__ */ s(to, { customerNumber: ce.customerNumber });
8588
8592
  if (ce !== null && ce.status === "failed" && !ce.retryable) {
@@ -8593,7 +8597,7 @@ function kh({
8593
8597
  return /* @__PURE__ */ s(to, { customerNumber: null });
8594
8598
  if (ce === null && !re && i === "failed")
8595
8599
  return /* @__PURE__ */ s(no, { message: o.magiclineFailedDetail });
8596
- const V = Z(() => wh(p), [p]), ut = Math.min(R, V.length - 1), Ce = V[ut], Jr = ut === V.length - 1, Ya = ut === 0;
8600
+ const V = Z(() => _h(p), [p]), ut = Math.min(R, V.length - 1), Ce = V[ut], Jr = ut === V.length - 1, Ya = ut === 0;
8597
8601
  function Ja(M) {
8598
8602
  const A = {};
8599
8603
  if (M === "offer")
@@ -8617,7 +8621,7 @@ function kh({
8617
8621
  const X = h.address;
8618
8622
  return X.street.trim() === "" && (A.street = o.magiclineRequiredError), X.houseNumber.trim() === "" && (A.houseNumber = o.magiclineRequiredError), X.zipCode.trim() === "" && (A.zipCode = o.magiclineRequiredError), X.city.trim() === "" && (A.city = o.magiclineRequiredError), A;
8619
8623
  }
8620
- return M === "payment" && (h.payment.accountHolder.trim() === "" && (A.accountHolder = o.magiclineRequiredError), Qd(h.payment.iban) || (A.iban = o.magiclineIbanInvalidError), h.consents.privacy || (A.privacy = o.magiclineConsentError), h.consents.sepa || (A.sepa = o.magiclineConsentError)), A;
8624
+ return M === "payment" && (h.payment.accountHolder.trim() === "" && (A.accountHolder = o.magiclineRequiredError), Wd(h.payment.iban) || (A.iban = o.magiclineIbanInvalidError), h.consents.privacy || (A.privacy = o.magiclineConsentError), h.consents.sepa || (A.sepa = o.magiclineConsentError)), A;
8621
8625
  }
8622
8626
  function Za() {
8623
8627
  const M = Ja(Ce);
@@ -8771,7 +8775,7 @@ function kh({
8771
8775
  function rs() {
8772
8776
  Jr ? ts() : Za();
8773
8777
  }
8774
- const Zr = qh(Ce, o), is = v === "applying" || b.trim() !== "" && b.trim() !== (P ?? ""), os = Ce === "review" && (d.phase !== "ready" || !y || is), as = re || os;
8778
+ const Zr = Lh(Ce, o), is = v === "applying" || b.trim() !== "" && b.trim() !== (P ?? ""), os = Ce === "review" && (d.phase !== "ready" || !y || is), as = re || os;
8775
8779
  return /* @__PURE__ */ s("div", { class: "jex-inline-form jex-magicline-form", children: [
8776
8780
  /* @__PURE__ */ s("div", { class: "jex-magicline-wizard-header", children: [
8777
8781
  /* @__PURE__ */ s("div", { class: "jex-inline-form-title", children: o.magiclineContractTitle }),
@@ -8789,7 +8793,7 @@ function kh({
8789
8793
  ] }),
8790
8794
  /* @__PURE__ */ s("div", { class: "jex-form", role: "group", "aria-label": Zr, children: [
8791
8795
  Ce === "offer" ? /* @__PURE__ */ s(
8792
- _h,
8796
+ Sh,
8793
8797
  {
8794
8798
  offersState: f,
8795
8799
  selectedTermId: h.termId,
@@ -8801,7 +8805,7 @@ function kh({
8801
8805
  }
8802
8806
  ) : null,
8803
8807
  Ce === "upgrades" && p !== null ? /* @__PURE__ */ s(
8804
- Ch,
8808
+ Rh,
8805
8809
  {
8806
8810
  modules: p.optionalModules,
8807
8811
  selectedModuleIds: h.selectedModuleIds,
@@ -8814,7 +8818,7 @@ function kh({
8814
8818
  }
8815
8819
  ) : null,
8816
8820
  Ce === "personal" ? /* @__PURE__ */ s(
8817
- Rh,
8821
+ Ih,
8818
8822
  {
8819
8823
  personal: h.personal,
8820
8824
  errors: qe,
@@ -8823,29 +8827,29 @@ function kh({
8823
8827
  }
8824
8828
  ) : null,
8825
8829
  Ce === "address" ? /* @__PURE__ */ s(
8826
- Ah,
8830
+ Eh,
8827
8831
  {
8828
8832
  address: h.address,
8829
8833
  errors: qe,
8830
8834
  disabled: re,
8831
- setAddress: U
8835
+ setAddress: F
8832
8836
  }
8833
8837
  ) : null,
8834
8838
  Ce === "payment" ? /* @__PURE__ */ s(
8835
- Ih,
8839
+ Ph,
8836
8840
  {
8837
8841
  formMessageId: t,
8838
8842
  fields: h,
8839
8843
  errors: qe,
8840
- privacyUrl: Un,
8844
+ privacyUrl: Fn,
8841
8845
  disabled: re,
8842
- setAccountHolder: F,
8846
+ setAccountHolder: U,
8843
8847
  setIban: ne,
8844
8848
  setConsent: w
8845
8849
  }
8846
8850
  ) : null,
8847
8851
  Ce === "review" ? /* @__PURE__ */ s(
8848
- Eh,
8852
+ $h,
8849
8853
  {
8850
8854
  fields: h,
8851
8855
  term: p,
@@ -8914,7 +8918,7 @@ function no({ message: t }) {
8914
8918
  ] })
8915
8919
  ] });
8916
8920
  }
8917
- function _h({
8921
+ function Sh({
8918
8922
  offersState: t,
8919
8923
  selectedTermId: e,
8920
8924
  widgetLocale: n,
@@ -8933,13 +8937,13 @@ function _h({
8933
8937
  ] });
8934
8938
  if (t.phase === "empty")
8935
8939
  return /* @__PURE__ */ s("div", { class: "jex-magicline-slots-hint", role: "alert", "aria-live": "polite", children: l.magiclineNoOffers });
8936
- const c = Mh(t.terms);
8940
+ const c = Nh(t.terms);
8937
8941
  return /* @__PURE__ */ s(z, { children: [
8938
8942
  /* @__PURE__ */ s("div", { class: "jex-magicline-radio-group", role: "radiogroup", "aria-label": l.magiclineStepOffer, children: c.map((u) => /* @__PURE__ */ s("div", { class: "jex-magicline-offer-group", children: [
8939
8943
  /* @__PURE__ */ s("div", { class: "jex-magicline-offer-bundle-name", children: u.bundleName }),
8940
8944
  u.bundleDescription !== null ? /* @__PURE__ */ s("div", { class: "jex-magicline-offer-bundle-desc", children: u.bundleDescription }) : null,
8941
8945
  u.terms.map((h) => /* @__PURE__ */ s(
8942
- jh,
8946
+ Ch,
8943
8947
  {
8944
8948
  term: h,
8945
8949
  checked: e === h.termId,
@@ -8950,7 +8954,7 @@ function _h({
8950
8954
  h.termId
8951
8955
  )),
8952
8956
  /* @__PURE__ */ s(
8953
- Sh,
8957
+ Th,
8954
8958
  {
8955
8959
  subDescription: u.bundleSubDescription,
8956
8960
  footnote: u.footnote
@@ -8960,7 +8964,7 @@ function _h({
8960
8964
  i !== void 0 ? /* @__PURE__ */ s("div", { class: "jex-magicline-error", role: "alert", children: i }) : null
8961
8965
  ] });
8962
8966
  }
8963
- function jh({ term: t, checked: e, widgetLocale: n, disabled: r, onSelect: i }) {
8967
+ function Ch({ term: t, checked: e, widgetLocale: n, disabled: r, onSelect: i }) {
8964
8968
  const o = j(), a = Mn(t.termValue, t.termUnit, n), l = ke(t.price, t.currencyCode, n), c = t.flatFees.find((h) => h.isStarterPackage), u = t.flatFees.filter((h) => !h.isStarterPackage);
8965
8969
  return /* @__PURE__ */ s(
8966
8970
  "label",
@@ -9023,8 +9027,8 @@ function jh({ term: t, checked: e, widgetLocale: n, disabled: r, onSelect: i })
9023
9027
  }
9024
9028
  );
9025
9029
  }
9026
- function Sh({ subDescription: t, footnote: e }) {
9027
- const n = j(), r = $h(t), i = e !== null && e.trim() !== "";
9030
+ function Th({ subDescription: t, footnote: e }) {
9031
+ const n = j(), r = qh(t), i = e !== null && e.trim() !== "";
9028
9032
  return r.length === 0 && !i ? null : /* @__PURE__ */ s("details", { class: "jex-magicline-bundle-details", children: [
9029
9033
  /* @__PURE__ */ s("summary", { class: "jex-magicline-bundle-details-summary", children: n.magiclineDetails }),
9030
9034
  /* @__PURE__ */ s("div", { class: "jex-magicline-bundle-details-body", children: [
@@ -9033,7 +9037,7 @@ function Sh({ subDescription: t, footnote: e }) {
9033
9037
  ] })
9034
9038
  ] });
9035
9039
  }
9036
- function Ch({
9040
+ function Rh({
9037
9041
  modules: t,
9038
9042
  selectedModuleIds: e,
9039
9043
  acknowledgedBlocks: n,
@@ -9047,7 +9051,7 @@ function Ch({
9047
9051
  return t.length === 0 ? /* @__PURE__ */ s("div", { class: "jex-magicline-slots-hint", children: c.magiclineUpgradesNone }) : /* @__PURE__ */ s(z, { children: [
9048
9052
  /* @__PURE__ */ s("div", { class: "jex-magicline-slots-hint", children: c.magiclineUpgradesIntro }),
9049
9053
  /* @__PURE__ */ s("div", { class: "jex-magicline-upgrade-group", children: t.map((u) => /* @__PURE__ */ s(
9050
- Th,
9054
+ Ah,
9051
9055
  {
9052
9056
  module: u,
9053
9057
  selected: e.includes(u.id),
@@ -9062,7 +9066,7 @@ function Ch({
9062
9066
  o !== void 0 ? /* @__PURE__ */ s("div", { class: "jex-magicline-error", role: "alert", children: o }) : null
9063
9067
  ] });
9064
9068
  }
9065
- function Th({
9069
+ function Ah({
9066
9070
  module: t,
9067
9071
  selected: e,
9068
9072
  consentChecked: n,
@@ -9071,13 +9075,13 @@ function Th({
9071
9075
  onToggle: o,
9072
9076
  onAck: a
9073
9077
  }) {
9074
- const l = j(), c = Kd(
9078
+ const l = j(), c = Yd(
9075
9079
  t.price,
9076
9080
  t.currencyCode,
9077
9081
  t.paymentFrequencyType,
9078
9082
  t.recurringUnit,
9079
9083
  r
9080
- ), u = Jd(t.extensionType, t.termExtension, r), h = t.termLabel !== null && t.termLabel !== "" ? t.termLabel : l.magiclineUpgradeOneTime, f = t.consent;
9084
+ ), u = Xd(t.extensionType, t.termExtension, r), h = t.termLabel !== null && t.termLabel !== "" ? t.termLabel : l.magiclineUpgradeOneTime, f = t.consent;
9081
9085
  return /* @__PURE__ */ s("div", { class: e ? "jex-magicline-upgrade-card jex-magicline-upgrade-card-active" : "jex-magicline-upgrade-card", children: [
9082
9086
  /* @__PURE__ */ s("label", { class: "jex-magicline-upgrade-head", children: [
9083
9087
  /* @__PURE__ */ s(
@@ -9116,7 +9120,7 @@ function Th({
9116
9120
  ) : null
9117
9121
  ] });
9118
9122
  }
9119
- function Rh({ personal: t, errors: e, disabled: n, setPersonal: r }) {
9123
+ function Ih({ personal: t, errors: e, disabled: n, setPersonal: r }) {
9120
9124
  const i = j(), o = Z(() => Oa(), []);
9121
9125
  return /* @__PURE__ */ s(z, { children: [
9122
9126
  /* @__PURE__ */ s("div", { class: "jex-magicline-row", children: [
@@ -9185,7 +9189,7 @@ function Rh({ personal: t, errors: e, disabled: n, setPersonal: r }) {
9185
9189
  e.dateOfBirth !== void 0 ? /* @__PURE__ */ s("span", { class: "jex-magicline-error", role: "alert", children: e.dateOfBirth }) : null
9186
9190
  ] }),
9187
9191
  /* @__PURE__ */ s(
9188
- Ph,
9192
+ Mh,
9189
9193
  {
9190
9194
  label: i.magiclineGender,
9191
9195
  value: t.gender,
@@ -9196,7 +9200,7 @@ function Rh({ personal: t, errors: e, disabled: n, setPersonal: r }) {
9196
9200
  onChange: (a) => {
9197
9201
  r("gender", a);
9198
9202
  },
9199
- options: Ua.map((a) => ({ value: a, label: Nh(a, i) }))
9203
+ options: Fa.map((a) => ({ value: a, label: Oh(a, i) }))
9200
9204
  }
9201
9205
  ),
9202
9206
  /* @__PURE__ */ s(
@@ -9216,7 +9220,7 @@ function Rh({ personal: t, errors: e, disabled: n, setPersonal: r }) {
9216
9220
  )
9217
9221
  ] });
9218
9222
  }
9219
- function Ah({ address: t, errors: e, disabled: n, setAddress: r }) {
9223
+ function Eh({ address: t, errors: e, disabled: n, setAddress: r }) {
9220
9224
  const i = j();
9221
9225
  return /* @__PURE__ */ s(z, { children: [
9222
9226
  /* @__PURE__ */ s("div", { class: "jex-magicline-row", children: [
@@ -9285,7 +9289,7 @@ function Ah({ address: t, errors: e, disabled: n, setAddress: r }) {
9285
9289
  ] })
9286
9290
  ] });
9287
9291
  }
9288
- function Ih({
9292
+ function Ph({
9289
9293
  formMessageId: t,
9290
9294
  fields: e,
9291
9295
  errors: n,
@@ -9362,7 +9366,7 @@ function Ih({
9362
9366
  n.sepa !== void 0 ? /* @__PURE__ */ s("div", { class: "jex-magicline-error", role: "alert", children: n.sepa }) : null
9363
9367
  ] });
9364
9368
  }
9365
- function Eh({
9369
+ function $h({
9366
9370
  fields: t,
9367
9371
  term: e,
9368
9372
  previewState: n,
@@ -9392,7 +9396,7 @@ function Eh({
9392
9396
  `${S.street} ${S.houseNumber}`.trim(),
9393
9397
  `${S.zipCode} ${S.city}`.trim(),
9394
9398
  g.magiclineCountryStatic
9395
- ].filter((w) => w !== "").join(", "), W = e !== null ? `${e.bundleName} · ${Mn(e.termValue, e.termUnit, r)}` : "—", U = e !== null ? e.textBlocks.filter((w) => w.isConfirmationRequired) : [], ae = e !== null ? e.textBlocks.filter((w) => !w.isConfirmationRequired) : [], L = e !== null ? e.optionalModules.filter((w) => t.selectedModuleIds.includes(w.id) && w.consent !== null).map((w) => ({ module: w, consent: w.consent })) : [], F = d !== null ? d.textBlocks.filter((w) => w.ackKey.startsWith("voucher:")) : [], ne = c && !u;
9399
+ ].filter((w) => w !== "").join(", "), W = e !== null ? `${e.bundleName} · ${Mn(e.termValue, e.termUnit, r)}` : "—", F = e !== null ? e.textBlocks.filter((w) => w.isConfirmationRequired) : [], ae = e !== null ? e.textBlocks.filter((w) => !w.isConfirmationRequired) : [], L = e !== null ? e.optionalModules.filter((w) => t.selectedModuleIds.includes(w.id) && w.consent !== null).map((w) => ({ module: w, consent: w.consent })) : [], U = d !== null ? d.textBlocks.filter((w) => w.ackKey.startsWith("voucher:")) : [], ne = c && !u;
9396
9400
  return /* @__PURE__ */ s("div", { class: "jex-magicline-review-wrap", children: [
9397
9401
  /* @__PURE__ */ s(
9398
9402
  "div",
@@ -9420,7 +9424,7 @@ function Eh({
9420
9424
  d !== null && d.voucherType === "DISCOUNT" ? /* @__PURE__ */ s("div", { class: "jex-magicline-summary-row jex-magicline-voucher-discount-row", children: [
9421
9425
  /* @__PURE__ */ s("dt", { children: g.magiclineVoucherAppliedDiscount.replace(
9422
9426
  "{discount}",
9423
- Gd(
9427
+ Jd(
9424
9428
  d.discountValue,
9425
9429
  d.discountType,
9426
9430
  v.currencyCode,
@@ -9457,7 +9461,7 @@ function Eh({
9457
9461
  /* @__PURE__ */ s("dl", { class: "jex-magicline-summary jex-magicline-summary-section", children: [
9458
9462
  /* @__PURE__ */ s("div", { class: "jex-magicline-summary-row", children: [
9459
9463
  /* @__PURE__ */ s("dt", { children: g.magiclineReviewStartsOn }),
9460
- /* @__PURE__ */ s("dd", { children: Wd(v.startDate, r) })
9464
+ /* @__PURE__ */ s("dd", { children: Gd(v.startDate, r) })
9461
9465
  ] }),
9462
9466
  /* @__PURE__ */ s("div", { class: "jex-magicline-summary-row", children: [
9463
9467
  /* @__PURE__ */ s("dt", { children: g.magiclineSummaryName }),
@@ -9469,7 +9473,7 @@ function Eh({
9469
9473
  ] }),
9470
9474
  /* @__PURE__ */ s("div", { class: "jex-magicline-summary-row", children: [
9471
9475
  /* @__PURE__ */ s("dt", { children: g.magiclineReviewPayment }),
9472
- /* @__PURE__ */ s("dd", { children: Hd(t.payment.iban) })
9476
+ /* @__PURE__ */ s("dd", { children: Kd(t.payment.iban) })
9473
9477
  ] })
9474
9478
  ] }),
9475
9479
  ne ? /* @__PURE__ */ s("div", { class: "jex-magicline-voucher-section", children: [
@@ -9514,12 +9518,12 @@ function Eh({
9514
9518
  G.ackKey
9515
9519
  ))
9516
9520
  ] }) : null,
9517
- U.length > 0 || ae.length > 0 || F.length > 0 ? /* @__PURE__ */ s("div", { class: "jex-magicline-terms", role: "group", "aria-label": g.magiclineReviewTerms, children: [
9518
- U.length > 0 || F.length > 0 ? /* @__PURE__ */ s("div", { class: "jex-magicline-terms-prompt", children: [
9521
+ F.length > 0 || ae.length > 0 || U.length > 0 ? /* @__PURE__ */ s("div", { class: "jex-magicline-terms", role: "group", "aria-label": g.magiclineReviewTerms, children: [
9522
+ F.length > 0 || U.length > 0 ? /* @__PURE__ */ s("div", { class: "jex-magicline-terms-prompt", children: [
9519
9523
  g.magiclineConfirmPrompt,
9520
9524
  /* @__PURE__ */ s("span", { class: "jex-magicline-required-pill", children: g.magiclineRequired })
9521
9525
  ] }) : null,
9522
- U.map((w) => /* @__PURE__ */ s(
9526
+ F.map((w) => /* @__PURE__ */ s(
9523
9527
  _r,
9524
9528
  {
9525
9529
  ackKey: w.ackKey,
@@ -9533,7 +9537,7 @@ function Eh({
9533
9537
  },
9534
9538
  w.ackKey
9535
9539
  )),
9536
- F.map((w) => /* @__PURE__ */ s(
9540
+ U.map((w) => /* @__PURE__ */ s(
9537
9541
  _r,
9538
9542
  {
9539
9543
  ackKey: w.ackKey,
@@ -9648,7 +9652,7 @@ function Ee({
9648
9652
  a !== void 0 ? /* @__PURE__ */ s("span", { id: c, class: "jex-magicline-error", role: "alert", children: a }) : null
9649
9653
  ] });
9650
9654
  }
9651
- function Ph({
9655
+ function Mh({
9652
9656
  label: t,
9653
9657
  value: e,
9654
9658
  required: n,
@@ -9680,11 +9684,11 @@ function Ph({
9680
9684
  o !== void 0 ? /* @__PURE__ */ s("span", { class: "jex-magicline-error", role: "alert", children: o }) : null
9681
9685
  ] });
9682
9686
  }
9683
- function $h(t) {
9687
+ function qh(t) {
9684
9688
  return t === null ? [] : t.split(`
9685
9689
  `).map((e) => e.replace(/^\s*[-•]\s*/, "").trim()).filter((e) => e !== "");
9686
9690
  }
9687
- function Mh(t) {
9691
+ function Nh(t) {
9688
9692
  const e = [], n = /* @__PURE__ */ new Map();
9689
9693
  for (const r of t) {
9690
9694
  let i = n.get(r.bundleId);
@@ -9699,7 +9703,7 @@ function Mh(t) {
9699
9703
  }
9700
9704
  return e;
9701
9705
  }
9702
- function qh(t, e) {
9706
+ function Lh(t, e) {
9703
9707
  switch (t) {
9704
9708
  case "offer":
9705
9709
  return e.magiclineStepOffer;
@@ -9717,10 +9721,10 @@ function qh(t, e) {
9717
9721
  return "";
9718
9722
  }
9719
9723
  }
9720
- function Nh(t, e) {
9724
+ function Oh(t, e) {
9721
9725
  return t === "MALE" ? e.magiclineGenderMale : t === "FEMALE" ? e.magiclineGenderFemale : e.magiclineGenderUnisex;
9722
9726
  }
9723
- function Lh({ message: t, sessionId: e, visitorId: n }) {
9727
+ function zh({ message: t, sessionId: e, visitorId: n }) {
9724
9728
  const r = j(), i = t.magiclineForm, o = !!i && i.status === "open" && !!i.submissionId, a = kn(
9725
9729
  oe.functions.magicline.public.getSubmissionStatus,
9726
9730
  o && i?.submissionId ? { sessionId: e, visitorId: n, submissionId: i.submissionId } : "skip"
@@ -9729,7 +9733,7 @@ function Lh({ message: t, sessionId: e, visitorId: n }) {
9729
9733
  return null;
9730
9734
  if (i.action === "contractCreation")
9731
9735
  return t.projectId ? /* @__PURE__ */ s(
9732
- kh,
9736
+ jh,
9733
9737
  {
9734
9738
  formMessageId: t._id,
9735
9739
  sessionId: e,
@@ -9758,7 +9762,7 @@ function Lh({ message: t, sessionId: e, visitorId: n }) {
9758
9762
  return null;
9759
9763
  const l = a != null && a.errorCode === "slot_unavailable", c = o && a === void 0;
9760
9764
  return /* @__PURE__ */ s(
9761
- rh,
9765
+ oh,
9762
9766
  {
9763
9767
  formMessageId: t._id,
9764
9768
  sessionId: e,
@@ -9768,13 +9772,13 @@ function Lh({ message: t, sessionId: e, visitorId: n }) {
9768
9772
  }
9769
9773
  );
9770
9774
  }
9771
- const Oh = {
9775
+ const Bh = {
9772
9776
  crawl: "🌐",
9773
9777
  file: "📄",
9774
9778
  snippet: "💡",
9775
9779
  qa: "❓"
9776
9780
  };
9777
- function zh({ sources: t }) {
9781
+ function Dh({ sources: t }) {
9778
9782
  const e = j(), [n, r] = I(!1);
9779
9783
  return t.length === 0 ? null : /* @__PURE__ */ s("div", { class: "jex-sources-row", children: [
9780
9784
  /* @__PURE__ */ s(
@@ -9797,10 +9801,10 @@ function zh({ sources: t }) {
9797
9801
  }
9798
9802
  ),
9799
9803
  n ? /* @__PURE__ */ s("div", { class: "jex-sources-pills", children: t.map((i, o) => {
9800
- const a = i.sourceType === "crawl", l = Bh(i), c = a && i.url ? `${i.title}
9804
+ const a = i.sourceType === "crawl", l = Fh(i), c = a && i.url ? `${i.title}
9801
9805
  ${i.url}` : i.title, u = /* @__PURE__ */ s(z, { children: [
9802
9806
  typeof i.id == "number" ? /* @__PURE__ */ s("span", { class: "jex-source-id", children: i.id }) : null,
9803
- /* @__PURE__ */ s("span", { class: "jex-source-type", children: Oh[i.sourceType] }),
9807
+ /* @__PURE__ */ s("span", { class: "jex-source-type", children: Bh[i.sourceType] }),
9804
9808
  /* @__PURE__ */ s("span", { class: "jex-source-label", children: l }),
9805
9809
  /* @__PURE__ */ s("span", { class: "jex-source-score", children: [
9806
9810
  "· ",
@@ -9822,7 +9826,7 @@ ${i.url}` : i.title, u = /* @__PURE__ */ s(z, { children: [
9822
9826
  }) }) : null
9823
9827
  ] });
9824
9828
  }
9825
- function Bh(t) {
9829
+ function Fh(t) {
9826
9830
  if (t.sourceType === "crawl" && t.url)
9827
9831
  try {
9828
9832
  const e = new URL(t.url);
@@ -9831,22 +9835,22 @@ function Bh(t) {
9831
9835
  }
9832
9836
  return t.title;
9833
9837
  }
9834
- function Dh() {
9838
+ function Uh() {
9835
9839
  return /* @__PURE__ */ s("div", { class: "jex-typing", children: [
9836
9840
  /* @__PURE__ */ s("span", {}),
9837
9841
  /* @__PURE__ */ s("span", {}),
9838
9842
  /* @__PURE__ */ s("span", {})
9839
9843
  ] });
9840
9844
  }
9841
- const Uh = /\s?\[\d+\]/g;
9845
+ const Vh = /\s?\[\d+\]/g;
9842
9846
  function io(t) {
9843
- return t.replace(Uh, "");
9847
+ return t.replace(Vh, "");
9844
9848
  }
9845
- function Fh(t) {
9849
+ function Hh(t) {
9846
9850
  return t?.at(-1)?._creationTime ?? 0;
9847
9851
  }
9848
- function Vh({ conversations: t, greeting: e, botName: n, starterQuestions: r, onPickStarter: i, sessionNotFound: o, resumeFailed: a, onStartFresh: l, sessionId: c, visitorId: u }) {
9849
- const h = j(), f = be(null), [d, p] = I(null), m = Fh(t), y = qa(), g = be(null);
9852
+ function Qh({ conversations: t, greeting: e, botName: n, starterQuestions: r, onPickStarter: i, sessionNotFound: o, resumeFailed: a, onStartFresh: l, sessionId: c, visitorId: u }) {
9853
+ const h = j(), f = be(null), [d, p] = I(null), m = Hh(t), y = qa(), g = be(null);
9850
9854
  T(() => {
9851
9855
  if (!u || !t)
9852
9856
  return;
@@ -9859,7 +9863,7 @@ function Vh({ conversations: t, greeting: e, botName: n, starterQuestions: r, on
9859
9863
  return /* @__PURE__ */ s("div", { class: "jex-chat-messages", children: [
9860
9864
  /* @__PURE__ */ s(ht, { text: e, botName: n }),
9861
9865
  b ? /* @__PURE__ */ s(
9862
- Ed,
9866
+ $d,
9863
9867
  {
9864
9868
  questions: r,
9865
9869
  disabled: mn.value,
@@ -9886,7 +9890,7 @@ function Vh({ conversations: t, greeting: e, botName: n, starterQuestions: r, on
9886
9890
  return /* @__PURE__ */ s(ht, { text: S, botName: n }, x._id);
9887
9891
  }
9888
9892
  if (x.contentType === "escalation-form" && c && u)
9889
- return eu.value === "screen" && !x.formData ? d === x._id ? null : /* @__PURE__ */ s("div", { class: "jex-inline-form jex-inline-form-card", children: [
9893
+ return nu.value === "screen" && !x.formData ? d === x._id ? null : /* @__PURE__ */ s("div", { class: "jex-inline-form jex-inline-form-card", children: [
9890
9894
  /* @__PURE__ */ s("div", { class: "jex-inline-form-title", children: h.escalationPromptTitle }),
9891
9895
  /* @__PURE__ */ s("div", { class: "jex-inline-form-subtitle", children: h.escalationPromptSubtitle }),
9892
9896
  /* @__PURE__ */ s(
@@ -9911,21 +9915,21 @@ function Vh({ conversations: t, greeting: e, botName: n, starterQuestions: r, on
9911
9915
  children: h.escalationSkip
9912
9916
  }
9913
9917
  )
9914
- ] }, x._id) : /* @__PURE__ */ s($d, { message: x, sessionId: c, visitorId: u, waitingSetAt: m }, x._id);
9918
+ ] }, x._id) : /* @__PURE__ */ s(qd, { message: x, sessionId: c, visitorId: u, waitingSetAt: m }, x._id);
9915
9919
  if (x.contentType === "magicline-form" && c && u)
9916
- return /* @__PURE__ */ s(Lh, { message: x, sessionId: c, visitorId: u }, x._id);
9920
+ return /* @__PURE__ */ s(zh, { message: x, sessionId: c, visitorId: u }, x._id);
9917
9921
  if (x.contentType === "escalation-confirm") {
9918
9922
  const S = x.noticeKind === "escalation-confirmed" ? h.noticeEscalationConfirmed.replace("{name}", x.noticeData?.visitorName ?? "").replace("{email}", x.noticeData?.visitorEmail ?? "").replace("{ref}", x.noticeData?.visitorId ?? "") : x.content;
9919
9923
  return /* @__PURE__ */ s(ht, { text: S, botName: n }, x._id);
9920
9924
  }
9921
9925
  if (x.role === "user")
9922
- return /* @__PURE__ */ s(Pd, { text: x.content }, x._id);
9926
+ return /* @__PURE__ */ s(Md, { text: x.content }, x._id);
9923
9927
  const P = {
9924
9928
  authorId: x.authorId,
9925
9929
  authorName: x.authorName,
9926
9930
  authorImage: x.authorImage
9927
9931
  };
9928
- return x.status === "streaming" && x.content === "" ? /* @__PURE__ */ s(Dh, {}, x._id) : x.status === "streaming" ? /* @__PURE__ */ s(ht, { text: io(x.content), streaming: !0, botName: n, ...P }, x._id) : x.status === "error" ? /* @__PURE__ */ s(
9932
+ return x.status === "streaming" && x.content === "" ? /* @__PURE__ */ s(Uh, {}, x._id) : x.status === "streaming" ? /* @__PURE__ */ s(ht, { text: io(x.content), streaming: !0, botName: n, ...P }, x._id) : x.status === "error" ? /* @__PURE__ */ s(
9929
9933
  ht,
9930
9934
  {
9931
9935
  text: x.errorMessage ?? `${h.somethingWentWrong}. ${h.tryAgain}.`,
@@ -9936,13 +9940,13 @@ function Vh({ conversations: t, greeting: e, botName: n, starterQuestions: r, on
9936
9940
  x._id
9937
9941
  ) : /* @__PURE__ */ s("div", { children: [
9938
9942
  /* @__PURE__ */ s(ht, { text: io(x.content), botName: n, ...P }),
9939
- x.sources && x.sources.length > 0 ? /* @__PURE__ */ s(zh, { sources: x.sources }) : null
9943
+ x.sources && x.sources.length > 0 ? /* @__PURE__ */ s(Dh, { sources: x.sources }) : null
9940
9944
  ] }, x._id);
9941
9945
  }),
9942
9946
  /* @__PURE__ */ s("div", { ref: f })
9943
9947
  ] });
9944
9948
  }
9945
- function Qh() {
9949
+ function Wh() {
9946
9950
  const t = j();
9947
9951
  function e() {
9948
9952
  const n = Kt.peek();
@@ -9968,7 +9972,7 @@ function Qh() {
9968
9972
  ] })
9969
9973
  ] });
9970
9974
  }
9971
- function Qa({ message: t }) {
9975
+ function Ha({ message: t }) {
9972
9976
  const [e, n] = I(!1);
9973
9977
  return T(() => {
9974
9978
  const r = setTimeout(() => {
@@ -9982,7 +9986,7 @@ function Qa({ message: t }) {
9982
9986
  t && /* @__PURE__ */ s("p", { class: "jex-loading-message", children: t })
9983
9987
  ] }) : null;
9984
9988
  }
9985
- function Hh({ sessionId: t, visitorId: e }) {
9989
+ function Kh({ sessionId: t, visitorId: e }) {
9986
9990
  const n = kn(
9987
9991
  oe.functions.chat.public.conversations.listBySession,
9988
9992
  t && e ? { sessionId: t, visitorId: e } : "skip"
@@ -9997,7 +10001,7 @@ function Hh({ sessionId: t, visitorId: e }) {
9997
10001
  isStreaming: o
9998
10002
  };
9999
10003
  }
10000
- function Wh(t) {
10004
+ function Gh(t) {
10001
10005
  const e = j(), n = be(null), r = be(null), [i, o] = I(!1);
10002
10006
  T(() => {
10003
10007
  try {
@@ -10070,7 +10074,7 @@ function Wh(t) {
10070
10074
  };
10071
10075
  }, []);
10072
10076
  }
10073
- function Kh({ sessionId: t, visitorId: e }) {
10077
+ function Yh({ sessionId: t, visitorId: e }) {
10074
10078
  const n = it(oe.functions.chat.public.visitorPresence.heartbeat);
10075
10079
  T(() => {
10076
10080
  if (!t || !e)
@@ -10091,11 +10095,11 @@ function Kh({ sessionId: t, visitorId: e }) {
10091
10095
  };
10092
10096
  }, [t, e, n]);
10093
10097
  }
10094
- function Gh() {
10098
+ function Jh() {
10095
10099
  return it(oe.functions.chat.public.helpdesk.createEscalationRequest);
10096
10100
  }
10097
- function Ha({ sessionId: t, visitorId: e, ensureSession: n, onSkipForm: r }) {
10098
- const i = j(), o = Gh(), [a, l] = I(!1), [c, u] = I(null);
10101
+ function Qa({ sessionId: t, visitorId: e, ensureSession: n, onSkipForm: r }) {
10102
+ const i = j(), o = Jh(), [a, l] = I(!1), [c, u] = I(null);
10099
10103
  async function h() {
10100
10104
  if (!a) {
10101
10105
  l(!0), u(null);
@@ -10103,7 +10107,7 @@ function Ha({ sessionId: t, visitorId: e, ensureSession: n, onSkipForm: r }) {
10103
10107
  const f = t && e ? { sessionId: t, visitorId: e } : await n();
10104
10108
  if (!f)
10105
10109
  return;
10106
- const d = Qe.value;
10110
+ const d = He.value;
10107
10111
  if (!d)
10108
10112
  return;
10109
10113
  const p = await o({
@@ -10127,15 +10131,15 @@ function Ha({ sessionId: t, visitorId: e, ensureSession: n, onSkipForm: r }) {
10127
10131
  }
10128
10132
  return { requestHuman: h, busy: a, error: c };
10129
10133
  }
10130
- function Yh({ greeting: t, botName: e, starterQuestions: n, sessionId: r, visitorId: i, isLoading: o, sessionNotFound: a, resumeFailed: l, isOrgDeleted: c, ensureSession: u, startFresh: h }) {
10131
- const f = j(), { conversations: d, sessionStatus: p, isLoading: m, isStreaming: y } = Hh({ sessionId: r, visitorId: i });
10132
- Wh(d), Kh({ sessionId: r, visitorId: i }), T(() => {
10134
+ function Zh({ greeting: t, botName: e, starterQuestions: n, sessionId: r, visitorId: i, isLoading: o, sessionNotFound: a, resumeFailed: l, isOrgDeleted: c, ensureSession: u, startFresh: h }) {
10135
+ const f = j(), { conversations: d, sessionStatus: p, isLoading: m, isStreaming: y } = Kh({ sessionId: r, visitorId: i });
10136
+ Gh(d), Yh({ sessionId: r, visitorId: i }), T(() => {
10133
10137
  const S = Kt.peek();
10134
10138
  if (S === null || !d || d.length === 0)
10135
10139
  return;
10136
10140
  const { waitingSetAt: O } = S;
10137
10141
  d.some(
10138
- (U) => U._creationTime > O && (U.noticeKind === "agent-joined" || !!U.authorId)
10142
+ (F) => F._creationTime > O && (F.noticeKind === "agent-joined" || !!F.authorId)
10139
10143
  ) && _a();
10140
10144
  }, [d]);
10141
10145
  const g = ka({ sessionId: r, visitorId: i, ensureSession: u }), v = be(
@@ -10143,7 +10147,7 @@ function Yh({ greeting: t, botName: e, starterQuestions: n, sessionId: r, visito
10143
10147
  const S = xt.peek();
10144
10148
  return S !== null ? S : Nr.peek() && fe.peek() !== null ? "resume" : "fresh";
10145
10149
  })()
10146
- ).current, { requestHuman: b, error: x } = Ha({ sessionId: r, visitorId: i, ensureSession: u });
10150
+ ).current, { requestHuman: b, error: x } = Qa({ sessionId: r, visitorId: i, ensureSession: u });
10147
10151
  return T(() => {
10148
10152
  v === "escalate" && b();
10149
10153
  }, [v]), T(() => {
@@ -10152,9 +10156,9 @@ function Yh({ greeting: t, botName: e, starterQuestions: n, sessionId: r, visito
10152
10156
  fe.peek() !== null && u();
10153
10157
  }, [u]), T(() => {
10154
10158
  i && Lr(i);
10155
- }, [i]), c ? /* @__PURE__ */ s("div", { class: "jex-chat-messages", children: /* @__PURE__ */ s("div", { class: "jex-session-notice", children: f.chatNoLongerAvailable }) }) : v === "resume" && (!r || m) ? /* @__PURE__ */ s(Qa, { message: f.resumeConversation }) : /* @__PURE__ */ s(z, { children: [
10159
+ }, [i]), c ? /* @__PURE__ */ s("div", { class: "jex-chat-messages", children: /* @__PURE__ */ s("div", { class: "jex-session-notice", children: f.chatNoLongerAvailable }) }) : v === "resume" && (!r || m) ? /* @__PURE__ */ s(Ha, { message: f.resumeConversation }) : /* @__PURE__ */ s(z, { children: [
10156
10160
  /* @__PURE__ */ s(
10157
- Vh,
10161
+ Qh,
10158
10162
  {
10159
10163
  conversations: d,
10160
10164
  greeting: t,
@@ -10170,10 +10174,10 @@ function Yh({ greeting: t, botName: e, starterQuestions: n, sessionId: r, visito
10170
10174
  visitorId: i
10171
10175
  }
10172
10176
  ),
10173
- Kt.value !== null && /* @__PURE__ */ s(Qh, {}),
10177
+ Kt.value !== null && /* @__PURE__ */ s(Wh, {}),
10174
10178
  x && /* @__PURE__ */ s("div", { class: "jex-session-error-notice", role: "alert", style: { margin: "8px 16px 0" }, children: x }),
10175
10179
  /* @__PURE__ */ s(
10176
- Mu,
10180
+ Nu,
10177
10181
  {
10178
10182
  sessionId: r,
10179
10183
  visitorId: i,
@@ -10195,7 +10199,7 @@ function Wa(t) {
10195
10199
  function Ka(t) {
10196
10200
  return t?.anyOnline ? "online" : t?.anyAway ? "away" : "offline";
10197
10201
  }
10198
- function Jh({ formMessageId: t, sessionId: e, visitorId: n, orgSlug: r }) {
10202
+ function Xh({ formMessageId: t, sessionId: e, visitorId: n, orgSlug: r }) {
10199
10203
  const i = j(), o = nn.value, a = /^https?:\/\//i.test(o) ? o : tn, [l, c] = I(""), [u, h] = I(""), f = Wa(r), d = f && !f.anyOnline ? i.escalationOfflineSubtitle : i.escalationSubtitle, p = Ma(), [m, y] = I(!1), [g, v] = I(null);
10200
10204
  async function b(x) {
10201
10205
  x.preventDefault(), y(!0), v(null);
@@ -10258,7 +10262,7 @@ function Jh({ formMessageId: t, sessionId: e, visitorId: n, orgSlug: r }) {
10258
10262
  ] });
10259
10263
  }
10260
10264
  function oo({ sessionId: t, visitorId: e, ensureSession: n, availability: r }) {
10261
- const i = j(), { requestHuman: o, busy: a, error: l } = Ha({ sessionId: t, visitorId: e, ensureSession: n }), c = `jex-presence-dot--${Ka(r)}`, u = r ? r.anyOnline ? i.handoffAvailable : i.handoffOffline : i.talkToHuman;
10265
+ const i = j(), { requestHuman: o, busy: a, error: l } = Qa({ sessionId: t, visitorId: e, ensureSession: n }), c = `jex-presence-dot--${Ka(r)}`, u = r ? r.anyOnline ? i.handoffAvailable : i.handoffOffline : i.talkToHuman;
10262
10266
  return /* @__PURE__ */ s(z, { children: [
10263
10267
  /* @__PURE__ */ s(
10264
10268
  "button",
@@ -10285,7 +10289,7 @@ function oo({ sessionId: t, visitorId: e, ensureSession: n, availability: r }) {
10285
10289
  l && /* @__PURE__ */ s("div", { class: "jex-handoff-error", role: "alert", children: l })
10286
10290
  ] });
10287
10291
  }
10288
- async function Zh() {
10292
+ async function ep() {
10289
10293
  const t = sa.value;
10290
10294
  if (!t)
10291
10295
  return console.warn("[JexityChat] Bootstrap refresh skipped — inputs missing"), { ok: !1, reason: "no-inputs" };
@@ -10293,7 +10297,7 @@ async function Zh() {
10293
10297
  if (!e.ok)
10294
10298
  return console.warn("[JexityChat] Bootstrap refresh failed:", e.error), { ok: !1, reason: e.error };
10295
10299
  const n = e.token;
10296
- return Qe.value = n, { ok: !0, token: n };
10300
+ return He.value = n, { ok: !0, token: n };
10297
10301
  }
10298
10302
  function ao(t) {
10299
10303
  return Ga(t) ? "unauthorized" : t instanceof Error && /network|fetch|failed to fetch/i.test(t.message) ? "network" : "unknown";
@@ -10301,21 +10305,21 @@ function ao(t) {
10301
10305
  function Ga(t) {
10302
10306
  return t instanceof bn ? t.data?.code === "UNAUTHORIZED_ORIGIN" : !1;
10303
10307
  }
10304
- function Xh(t = 1e4) {
10305
- return Qe.value ? Promise.resolve(Qe.value) : new Promise((e) => {
10308
+ function tp(t = 1e4) {
10309
+ return He.value ? Promise.resolve(He.value) : new Promise((e) => {
10306
10310
  let n = !1;
10307
10311
  const r = (a) => {
10308
10312
  n || (n = !0, clearTimeout(i), o(), e(a));
10309
10313
  }, i = setTimeout(() => {
10310
10314
  r(null);
10311
- }, t), o = Qe.subscribe((a) => {
10315
+ }, t), o = He.subscribe((a) => {
10312
10316
  a && r(a);
10313
10317
  });
10314
10318
  });
10315
10319
  }
10316
- function ep(t, e) {
10320
+ function np(t, e) {
10317
10321
  const n = be(null), r = gt(!1), i = gt(!1), o = gt(!1), a = gt(null), l = it(oe.functions.chat.public.sessions.createOrResume), c = async (p) => {
10318
- const m = await Xh();
10322
+ const m = await tp();
10319
10323
  if (!m)
10320
10324
  return console.warn("[JexityChat] No bootstrap token after 10s — session creation blocked."), ft.value = "no-token", null;
10321
10325
  const y = (b) => ({
@@ -10334,7 +10338,7 @@ function ep(t, e) {
10334
10338
  } catch (b) {
10335
10339
  if (!Ga(b))
10336
10340
  throw b;
10337
- const x = await Zh();
10341
+ const x = await ep();
10338
10342
  if (!x.ok)
10339
10343
  return ft.value = x.reason === "rate_limited" ? "network" : "unauthorized", null;
10340
10344
  g = await l(y(x.token));
@@ -10361,11 +10365,11 @@ function ep(t, e) {
10361
10365
  r.value = !1;
10362
10366
  }
10363
10367
  }, [t, e, l, r, i, o]), h = N(() => {
10364
- n.current = null, i.value = !1, o.value = !1, Fi();
10368
+ n.current = null, i.value = !1, o.value = !1, Ui();
10365
10369
  }, [i, o]);
10366
- T(() => nu(h), [h]);
10370
+ T(() => iu(h), [h]);
10367
10371
  const f = N(async () => {
10368
- n.current = null, o.value = !1, i.value = !1, Fi();
10372
+ n.current = null, o.value = !1, i.value = !1, Ui();
10369
10373
  const p = qi();
10370
10374
  r.value = !0;
10371
10375
  try {
@@ -10389,7 +10393,7 @@ function ep(t, e) {
10389
10393
  resetSession: h
10390
10394
  };
10391
10395
  }
10392
- function tp({ botName: t, availability: e, onResetSession: n }) {
10396
+ function rp({ botName: t, availability: e, onResetSession: n }) {
10393
10397
  const r = j(), [i, o] = I(""), a = e?.anyOnline === !0, l = Ka(e);
10394
10398
  function c() {
10395
10399
  un(), xt.value = "escalate", n(), Ni(), ze({ id: "chat" });
@@ -10406,7 +10410,7 @@ function tp({ botName: t, availability: e, onResetSession: n }) {
10406
10410
  p && (un(), xt.value = "resume", n(), Li(p), ze({ id: "chat" }));
10407
10411
  }
10408
10412
  return /* @__PURE__ */ s("div", { class: "jex-home", children: [
10409
- Qt.value && /* @__PURE__ */ s("div", { class: "jex-session-prompt", role: "status", children: /* @__PURE__ */ s("div", { class: "jex-session-prompt-text", children: r.sessionLocked }) }),
10413
+ Ht.value && /* @__PURE__ */ s("div", { class: "jex-session-prompt", role: "status", children: /* @__PURE__ */ s("div", { class: "jex-session-prompt-text", children: r.sessionLocked }) }),
10410
10414
  /* @__PURE__ */ s(
10411
10415
  "button",
10412
10416
  {
@@ -10483,7 +10487,7 @@ function tp({ botName: t, availability: e, onResetSession: n }) {
10483
10487
  ] })
10484
10488
  ] });
10485
10489
  }
10486
- function np({ title: t }) {
10490
+ function ip({ title: t }) {
10487
10491
  const e = j();
10488
10492
  return /* @__PURE__ */ s("div", { class: "jex-selection", children: [
10489
10493
  /* @__PURE__ */ s("h2", { class: "jex-selection-title", children: e.howCanWeHelp }),
@@ -10515,7 +10519,7 @@ function np({ title: t }) {
10515
10519
  ] })
10516
10520
  ] });
10517
10521
  }
10518
- function rp() {
10522
+ function op() {
10519
10523
  const t = j(), [e, n] = I(""), [r, i] = I(""), [o, a] = I("");
10520
10524
  async function l(c) {
10521
10525
  c.preventDefault(), gr({ id: "loading", message: t.submittingTicket }), await new Promise((h) => {
@@ -10571,7 +10575,7 @@ function rp() {
10571
10575
  ] })
10572
10576
  ] });
10573
10577
  }
10574
- function ip({ ticketRef: t }) {
10578
+ function ap({ ticketRef: t }) {
10575
10579
  const e = j();
10576
10580
  return /* @__PURE__ */ s("div", { class: "jex-confirmation", children: [
10577
10581
  /* @__PURE__ */ s("div", { class: "jex-confirmation-icon", "aria-hidden": "true", children: "✓" }),
@@ -10584,14 +10588,14 @@ function ip({ ticketRef: t }) {
10584
10588
  {
10585
10589
  class: "jex-confirmation-done",
10586
10590
  onClick: () => {
10587
- H.value = !1;
10591
+ Q.value = !1;
10588
10592
  },
10589
10593
  children: e.done
10590
10594
  }
10591
10595
  )
10592
10596
  ] });
10593
10597
  }
10594
- function op({ message: t, onRetry: e, onBack: n }) {
10598
+ function sp({ message: t, onRetry: e, onBack: n }) {
10595
10599
  const r = j();
10596
10600
  return /* @__PURE__ */ s("div", { class: "jex-overlay jex-error", children: [
10597
10601
  /* @__PURE__ */ s("p", { class: "jex-error-message", children: t }),
@@ -10606,11 +10610,11 @@ function so({ greeting: t, starterQuestions: e, title: n, botName: r, orgSlug: i
10606
10610
  (b) => b.id === "confirmation"
10607
10611
  );
10608
10612
  return /* @__PURE__ */ s("div", { class: "jex-screen-container", children: [
10609
- g.id === "home" && /* @__PURE__ */ s(tp, { botName: r, availability: o, onResetSession: m }),
10610
- g.id === "selection" && /* @__PURE__ */ s(np, { title: n }),
10611
- g.id === "form" && /* @__PURE__ */ s(rp, {}),
10613
+ g.id === "home" && /* @__PURE__ */ s(rp, { botName: r, availability: o, onResetSession: m }),
10614
+ g.id === "selection" && /* @__PURE__ */ s(ip, { title: n }),
10615
+ g.id === "form" && /* @__PURE__ */ s(op, {}),
10612
10616
  g.id === "escalation-form" && /* @__PURE__ */ s(
10613
- Jh,
10617
+ Xh,
10614
10618
  {
10615
10619
  formMessageId: g.formMessageId,
10616
10620
  sessionId: g.sessionId,
@@ -10619,9 +10623,9 @@ function so({ greeting: t, starterQuestions: e, title: n, botName: r, orgSlug: i
10619
10623
  waitingSetAt: g.waitingSetAt
10620
10624
  }
10621
10625
  ),
10622
- g.id === "confirmation" && v && /* @__PURE__ */ s(ip, { ticketRef: v.ref }),
10626
+ g.id === "confirmation" && v && /* @__PURE__ */ s(ap, { ticketRef: v.ref }),
10623
10627
  g.id === "chat" && /* @__PURE__ */ s(
10624
- Yh,
10628
+ Zh,
10625
10629
  {
10626
10630
  greeting: t,
10627
10631
  botName: r,
@@ -10636,9 +10640,9 @@ function so({ greeting: t, starterQuestions: e, title: n, botName: r, orgSlug: i
10636
10640
  startFresh: p
10637
10641
  }
10638
10642
  ),
10639
- g.id === "loading" && /* @__PURE__ */ s(Qa, { message: g.message }),
10643
+ g.id === "loading" && /* @__PURE__ */ s(Ha, { message: g.message }),
10640
10644
  g.id === "error" && /* @__PURE__ */ s(
10641
- op,
10645
+ sp,
10642
10646
  {
10643
10647
  message: g.message,
10644
10648
  onRetry: () => gr({ id: "loading" }),
@@ -10647,7 +10651,7 @@ function so({ greeting: t, starterQuestions: e, title: n, botName: r, orgSlug: i
10647
10651
  )
10648
10652
  ] });
10649
10653
  }
10650
- function ap({ options: t }) {
10654
+ function lp({ options: t }) {
10651
10655
  return Oc({
10652
10656
  orgSlug: t.orgSlug,
10653
10657
  projSlug: t.projSlug,
@@ -10655,40 +10659,40 @@ function ap({ options: t }) {
10655
10659
  convexUrl: t.convexUrl,
10656
10660
  preAllowedUrls: t.allowedUrls ?? [],
10657
10661
  preExcludedPaths: t.excludePaths
10658
- }), Dc() ? /* @__PURE__ */ s(sp, { options: t }) : null;
10662
+ }), Dc() ? /* @__PURE__ */ s(cp, { options: t }) : null;
10659
10663
  }
10660
- function sp({ options: t }) {
10664
+ function cp({ options: t }) {
10661
10665
  const e = Nc(t.orgSlug, t.projSlug, t.convexUrl);
10662
- Hc(t.parentOrigin), T(() => (Jc(), Xc(), () => {
10666
+ Qc(t.parentOrigin), T(() => (Xc(), tu(), () => {
10663
10667
  mr.value = !1;
10664
10668
  }), []);
10665
- const { sessionId: n, visitorId: r, isLoading: i, sessionNotFound: o, resumeFailed: a, isOrgDeleted: l, ensureSession: c, startFresh: u, resetSession: h } = ep(t.orgSlug, t.projSlug), f = Wa(t.orgSlug), d = Pc(t, e.config), p = Fe.value, m = mr.value, y = e.config !== null || p !== void 0 || e.settled, g = e.config !== null ? d.sessionTimeoutMs : p !== void 0 ? p : d.sessionTimeoutMs;
10669
+ const { sessionId: n, visitorId: r, isLoading: i, sessionNotFound: o, resumeFailed: a, isOrgDeleted: l, ensureSession: c, startFresh: u, resetSession: h } = np(t.orgSlug, t.projSlug), f = Wa(t.orgSlug), d = Pc(t, e.config), p = Ue.value, m = mr.value, y = e.config !== null || p !== void 0 || e.settled, g = e.config !== null ? d.sessionTimeoutMs : p !== void 0 ? p : d.sessionTimeoutMs;
10666
10670
  T(() => {
10667
10671
  Me.value = da(d.locale);
10668
10672
  }, [d.locale]), T(() => {
10669
10673
  nn.value = d.privacyPolicyUrl ?? tn, Mr.value = d.privacyNoticeStyle;
10670
10674
  }, [d.privacyNoticeStyle, d.privacyPolicyUrl]), T(() => {
10671
- if (!H.value || d.mode === "embedded" || !window.matchMedia("(max-width: 480px), (pointer: coarse) and (max-width: 768px)").matches)
10675
+ if (!Q.value || d.mode === "embedded" || !window.matchMedia("(max-width: 480px), (pointer: coarse) and (max-width: 768px)").matches)
10672
10676
  return;
10673
10677
  const ne = document.documentElement.style.overflow;
10674
10678
  return document.documentElement.style.overflow = "hidden", () => {
10675
10679
  document.documentElement.style.overflow = ne;
10676
10680
  };
10677
- }, [H.value, d.mode]), T(() => {
10681
+ }, [Q.value, d.mode]), T(() => {
10678
10682
  if (m && y && d.mode !== "embedded" && g !== null)
10679
10683
  try {
10680
- return iu(g);
10681
- } catch (F) {
10682
- console.warn("[JexityChat] Idle-lock watcher failed to start:", F);
10684
+ return au(g);
10685
+ } catch (U) {
10686
+ console.warn("[JexityChat] Idle-lock watcher failed to start:", U);
10683
10687
  return;
10684
10688
  }
10685
10689
  }, [m, d.mode, y, g]), T(() => {
10686
10690
  if (!m || !y)
10687
10691
  return;
10688
- const { activeRefPruned: F } = Zc(g);
10689
- F && br();
10692
+ const { activeRefPruned: U } = eu(g);
10693
+ U && br();
10690
10694
  }, [m, y, g]);
10691
- const v = d.position === "bottom-left", b = d.colorScheme === "dark" || d.colorScheme === "light" ? d.colorScheme : "", x = ou({
10695
+ const v = d.position === "bottom-left", b = d.colorScheme === "dark" || d.colorScheme === "light" ? d.colorScheme : "", x = su({
10692
10696
  ...t,
10693
10697
  primaryColor: d.primaryColor,
10694
10698
  accentColor: d.accentColor,
@@ -10697,23 +10701,23 @@ function sp({ options: t }) {
10697
10701
  borderRadius: d.borderRadius,
10698
10702
  windowWidth: d.windowWidth,
10699
10703
  windowHeight: d.windowHeight
10700
- }), P = d.mode === "embedded", S = de.value, W = S[S.length - 1]?.id === "chat", U = e.config !== null || P || !!t.parentOrigin, ae = U ? x : { ...x, visibility: "hidden" }, L = mu(t.orgSlug, t.projSlug);
10704
+ }), P = d.mode === "embedded", S = de.value, W = S[S.length - 1]?.id === "chat", F = e.config !== null || P || !!t.parentOrigin, ae = F ? x : { ...x, visibility: "hidden" }, L = xu(t.orgSlug, t.projSlug);
10701
10705
  return T(() => {
10702
- if (P || !U || d.proactiveMode === "off" || Di(L))
10706
+ if (P || !F || d.proactiveMode === "off" || Di(L))
10703
10707
  return;
10704
- const F = window.setTimeout(() => {
10705
- const ne = xu({
10708
+ const U = window.setTimeout(() => {
10709
+ const ne = bu({
10706
10710
  mode: d.proactiveMode,
10707
- isOpen: H.peek(),
10711
+ isOpen: Q.peek(),
10708
10712
  hasHistory: Nr.peek(),
10709
10713
  dismissed: Di(L)
10710
10714
  });
10711
- ne === "teaser" ? An.value = !0 : ne === "open" && (H.value = !0);
10715
+ ne === "teaser" ? An.value = !0 : ne === "open" && (Q.value = !0);
10712
10716
  }, d.proactiveDelaySeconds * 1e3);
10713
10717
  return () => {
10714
- window.clearTimeout(F);
10718
+ window.clearTimeout(U);
10715
10719
  };
10716
- }, [P, U, d.proactiveMode, d.proactiveDelaySeconds, L]), /* @__PURE__ */ s(
10720
+ }, [P, F, d.proactiveMode, d.proactiveDelaySeconds, L]), /* @__PURE__ */ s(
10717
10721
  "div",
10718
10722
  {
10719
10723
  class: `jex-widget ${b}`.trim(),
@@ -10750,7 +10754,7 @@ function sp({ options: t }) {
10750
10754
  ),
10751
10755
  !d.hideBranding && /* @__PURE__ */ s(Bi, {})
10752
10756
  ] }) : /* @__PURE__ */ s("div", { class: `jex-container${v ? " jex-pos-left" : ""}`, children: [
10753
- H.value && /* @__PURE__ */ s("div", { class: "jex-chat-window", children: [
10757
+ Q.value && /* @__PURE__ */ s("div", { class: "jex-chat-window", children: [
10754
10758
  /* @__PURE__ */ s(
10755
10759
  zi,
10756
10760
  {
@@ -10781,9 +10785,9 @@ function sp({ options: t }) {
10781
10785
  ),
10782
10786
  !d.hideBranding && /* @__PURE__ */ s(Bi, {})
10783
10787
  ] }),
10784
- An.value && !H.value && /* @__PURE__ */ s(vu, { title: d.title, message: d.greeting, guardKey: L }),
10788
+ An.value && !Q.value && /* @__PURE__ */ s(yu, { title: d.title, message: d.greeting, guardKey: L }),
10785
10789
  /* @__PURE__ */ s(
10786
- fu,
10790
+ gu,
10787
10791
  {
10788
10792
  iconOption: d.triggerIcon,
10789
10793
  radius: d.triggerRadius,
@@ -10794,34 +10798,34 @@ function sp({ options: t }) {
10794
10798
  }
10795
10799
  );
10796
10800
  }
10797
- const lp = `.jex-widget{--jex-primary: #115A62;--jex-primary-hover: var(--jex-accent, color-mix(in srgb, var(--jex-primary) 85%, #000));--jex-radius: .75rem;--jex-font-family: "Inter", system-ui, -apple-system, sans-serif;--jex-font-size: 14px;--jex-window-width: 380px;--jex-window-height: 600px;--jex-shadow: 0 16px 48px -12px rgba(13, 127, 138, .25), 0 4px 16px rgba(0, 0, 0, .08);pointer-events:auto;--jex-bg-trigger: var(--jex-primary);--jex-bg-header: var(--jex-primary);--jex-bg-msg-user: var(--jex-primary);--jex-bg-send-btn: var(--jex-primary);--jex-bg-window: rgba(255, 255, 255, .95);--jex-bg-msg-bot: #f1f5f9;--jex-bg-input: rgba(247, 253, 253, .6);--jex-text-header: #ffffff;--jex-text-msg-user: #ffffff;--jex-text-msg-bot: #0f172a;--jex-text-main: #0f172a;--jex-text-muted: #64748b;--jex-bg-avatar-agent: #d1fae5;--jex-text-avatar-agent: #065f46;--jex-border-window: rgba(226, 232, 240, .8);--jex-border-input: rgba(203, 213, 225, .8);--jex-bg-glass: var(--jex-bg-window);--jex-border-glass: var(--jex-border-window);font-family:var(--jex-font-family);-webkit-font-smoothing:antialiased}.dark .jex-widget,.jex-widget.dark{--jex-primary: #1cb0bf;--jex-primary-hover: var(--jex-accent, color-mix(in srgb, var(--jex-primary) 85%, #000));--jex-bg-window: rgba(10, 15, 26, .95);--jex-bg-msg-bot: #233146;--jex-bg-input: rgba(10, 15, 26, .6);--jex-text-msg-bot: #f8fafc;--jex-text-main: #f8fafc;--jex-text-muted: #94a3b8;--jex-border-window: rgba(30, 41, 59, .8);--jex-border-input: rgba(51, 65, 85, .9);--jex-bg-avatar-agent: #064e3b;--jex-text-avatar-agent: #6ee7b7;--jex-bg-error: #3b1318;--jex-border-error: #5c1d24;--jex-text-error: #fca5a5}@media(prefers-color-scheme:dark){:host:not(.light) .jex-widget:not(.light){--jex-primary: #1cb0bf;--jex-primary-hover: var(--jex-accent, color-mix(in srgb, var(--jex-primary) 85%, #000));--jex-bg-window: rgba(10, 15, 26, .95);--jex-bg-msg-bot: #233146;--jex-bg-input: rgba(10, 15, 26, .6);--jex-text-msg-bot: #f8fafc;--jex-text-main: #f8fafc;--jex-text-muted: #94a3b8;--jex-border-window: rgba(30, 41, 59, .8);--jex-border-input: rgba(51, 65, 85, .9);--jex-bg-error: #3b1318;--jex-border-error: #5c1d24;--jex-text-error: #fca5a5}}.jex-widget *{box-sizing:border-box;margin:0;padding:0}.jex-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;align-items:flex-end;gap:16px;z-index:9999}.jex-container.jex-pos-left{right:auto;left:24px;align-items:flex-start}:host(.jex-mode-embedded){display:block;width:100%;height:100%}:host(.jex-mode-embedded) .jex-widget{width:100%;height:100%}.jex-embedded{display:flex;flex-direction:column;width:100%;height:100%;background:var(--jex-bg-window);border:1px solid var(--jex-border-window);overflow:hidden}.jex-embedded .jex-screen-container{flex:1;overflow:hidden;display:flex;flex-direction:column}.jex-floating-button{height:56px;min-width:56px;padding:0;background:var(--jex-bg-trigger);color:var(--jex-text-header);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--jex-shadow);transition:transform .3s cubic-bezier(.175,.885,.32,1.275),background .2s,width .3s ease,border-radius .3s ease}.jex-floating-button.jex-has-label{min-width:110px;padding:0 20px}.jex-fab-inner{display:flex;align-items:center;gap:12px}.jex-fab-label{font-size:15px;font-weight:600;white-space:nowrap}.jex-floating-button:hover{transform:scale(1.1);background:var(--jex-primary-hover)}.jex-floating-button:active{transform:scale(.95)}.jex-fab-pulse{animation:jex-fab-pulse 2.4s ease-out infinite}@keyframes jex-fab-pulse{0%{box-shadow:var(--jex-shadow),0 0 color-mix(in srgb,var(--jex-bg-trigger) 50%,transparent)}70%{box-shadow:var(--jex-shadow),0 0 0 14px color-mix(in srgb,var(--jex-bg-trigger) 0%,transparent)}to{box-shadow:var(--jex-shadow),0 0 color-mix(in srgb,var(--jex-bg-trigger) 0%,transparent)}}@media(prefers-reduced-motion:reduce){.jex-fab-pulse{animation:none}}.jex-proactive-teaser{display:flex;align-items:flex-start;gap:10px;width:280px;max-width:calc(100vw - 48px);padding:12px 14px;align-self:flex-end;background:var(--jex-bg-window);color:var(--jex-text-main);border:1px solid var(--jex-border-window);border-radius:var(--jex-radius);box-shadow:var(--jex-shadow);cursor:pointer;text-align:left;animation:jex-teaser-in .22s ease-out}.jex-proactive-avatar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9999px;background:var(--jex-bg-avatar-agent);color:var(--jex-text-avatar-agent)}.jex-proactive-body{display:flex;flex-direction:column;gap:2px;min-width:0}.jex-proactive-title{font-weight:600;font-size:13px;line-height:1.2}.jex-proactive-message{font-size:13px;line-height:1.35;color:var(--jex-text-muted)}.jex-proactive-dismiss{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:22px;height:22px;margin:-4px -4px 0 0;padding:0;border:none;background:transparent;color:var(--jex-text-muted);cursor:pointer;border-radius:9999px}.jex-proactive-dismiss:hover{background:var(--jex-bg-msg-bot)}@keyframes jex-teaser-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.jex-proactive-teaser{animation:none}}.jex-chat-window{width:var(--jex-window-width);height:var(--jex-window-height);max-height:calc(100vh - 120px);background:var(--jex-bg-window);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--jex-border-window);border-radius:calc(var(--jex-radius) * 2);box-shadow:var(--jex-shadow);display:flex;flex-direction:column;overflow:hidden;animation:jexSlideUp .4s cubic-bezier(.16,1,.3,1);transform-origin:bottom right;touch-action:manipulation}@keyframes jexSlideUp{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(max-width:480px),(pointer:coarse)and (max-width:768px){.jex-chat-window{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-height:none;border:none;border-radius:0;animation:jexSlideUpMobile .3s cubic-bezier(.16,1,.3,1);transform-origin:bottom center}.jex-container:has(.jex-chat-window) .jex-floating-button{display:none}}@keyframes jexSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.jex-chat-header{padding:14px 16px;background:var(--jex-bg-header);color:var(--jex-text-header);display:flex;align-items:center;gap:12px;flex-shrink:0}.jex-header-info h3{font-size:16px;font-weight:600;color:var(--jex-text-header);margin:0}.jex-header-info p{font-size:12px;opacity:.8;color:var(--jex-text-header);margin:0}.jex-header-right{margin-left:auto;display:flex;align-items:center;gap:4px}.jex-header-handoff{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid color-mix(in srgb,currentColor 50%,transparent);border-radius:999px;padding:0;color:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease}.jex-header-handoff:hover:not(:disabled){background:color-mix(in srgb,currentColor 12%,transparent);border-color:currentColor}.jex-header-handoff:disabled{opacity:.5;cursor:not-allowed}.jex-header-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:999px;padding:0;color:inherit;cursor:pointer;transition:background .15s ease}.jex-header-close:hover{background:color-mix(in srgb,currentColor 14%,transparent)}.jex-handoff-error{position:absolute;top:100%;right:8px;background:#fee;color:#b00;padding:4px 8px;font-size:12px;border-radius:4px}.jex-header-back{background:none;border:none;color:var(--jex-text-header);cursor:pointer;padding:4px;display:flex;align-items:center;opacity:.8;transition:opacity .2s;flex-shrink:0}.jex-header-back:hover{opacity:1}.jex-screen-container{flex:1;overflow:hidden;display:flex;flex-direction:column}.jex-home{flex:1;display:flex;flex-direction:column;padding:24px;gap:20px;overflow-y:auto}.jex-home-hero{display:flex;align-items:center;gap:14px;width:100%;padding:0;border:none;background:transparent;font-family:inherit;text-align:left;cursor:pointer;animation:jexFadeIn .4s ease both}.jex-home-hero:disabled{cursor:default;opacity:.7}.jex-home-avatar{position:relative;width:48px;height:48px;border-radius:14px;background:var(--jex-primary);color:var(--jex-text-header);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px color-mix(in srgb,var(--jex-primary) 30%,transparent)}.jex-home-status-dot{position:absolute;bottom:-2px;right:-2px;width:14px;height:14px;border-radius:50%;background:var(--jex-dot-color, #9ca3af);border:2.5px solid var(--jex-bg-window);animation:jexPulse 2s ease-in-out infinite}.jex-home-status-dot--online{--jex-dot-color: #10b981}.jex-home-status-dot--away{--jex-dot-color: #fbbf24}.jex-home-status-dot--offline{--jex-dot-color: #9ca3af}@keyframes jexPulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--jex-dot-color, #9ca3af) 40%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--jex-dot-color, #9ca3af) 0%,transparent)}}.jex-home-hero-text{display:flex;flex-direction:column;gap:2px;min-width:0}.jex-home-title{font-size:17px;font-weight:700;color:var(--jex-text-main);margin:0;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jex-home-status{font-size:13px;font-weight:500;color:var(--jex-text-muted);letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jex-home-section-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--jex-text-muted)}.jex-home-lookup-section{display:flex;flex-direction:column;gap:8px;margin-top:auto}.jex-home-lookup-label{font-size:12px;font-weight:500;color:var(--jex-text-muted)}.jex-home-greeting{background:var(--jex-bg-msg-bot);border:1px solid var(--jex-border-window);border-radius:4px 16px 16px;padding:16px 18px;font-size:14px;line-height:1.55;color:var(--jex-text-main);animation:jexFadeIn .4s .1s ease both}.jex-home-greeting p{margin:0}@keyframes jexFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.jex-home-actions{display:flex;flex-direction:column;gap:10px;animation:jexFadeIn .4s .2s ease both}.jex-home-start-btn{background:var(--jex-bg-send-btn);color:var(--jex-text-header);border:none;border-radius:12px;padding:14px 20px;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s,transform .15s,box-shadow .2s;width:100%;box-shadow:0 2px 8px color-mix(in srgb,var(--jex-primary) 25%,transparent)}.jex-home-start-btn:hover{background:var(--jex-primary-hover);transform:translateY(-1px);box-shadow:0 4px 16px color-mix(in srgb,var(--jex-primary) 35%,transparent)}.jex-home-start-btn:active{transform:translateY(0);box-shadow:0 1px 4px color-mix(in srgb,var(--jex-primary) 20%,transparent)}.jex-home-resume-card{display:flex;flex-direction:column;gap:8px;width:100%;text-align:left;padding:16px 18px;border-radius:14px;border:1.5px solid var(--jex-primary);background:color-mix(in srgb,var(--jex-primary) 6%,var(--jex-bg-window));cursor:pointer;font-family:inherit;transition:background .2s,border-color .2s,transform .15s,box-shadow .2s;box-shadow:0 2px 8px color-mix(in srgb,var(--jex-primary) 12%,transparent)}.jex-home-resume-card:hover{background:color-mix(in srgb,var(--jex-primary) 10%,var(--jex-bg-window));transform:translateY(-1px);box-shadow:0 4px 16px color-mix(in srgb,var(--jex-primary) 20%,transparent)}.jex-home-resume-card:active{transform:translateY(0)}.jex-home-resume-top{display:flex;align-items:center;justify-content:space-between}.jex-home-resume-label{font-size:14px;font-weight:600;color:var(--jex-primary)}.jex-home-resume-arrow{color:var(--jex-primary);opacity:.6;transition:opacity .2s,transform .2s}.jex-home-resume-card:hover .jex-home-resume-arrow{opacity:1;transform:translate(2px)}.jex-home-resume-ref{font-family:ui-monospace,Cascadia Code,Fira Code,monospace;font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--jex-text-muted)}.jex-home-history{display:flex;flex-direction:column;gap:8px}.jex-home-resume-meta{font-size:12px;color:var(--jex-text-muted);margin-top:4px}.jex-home-new-btn{background:transparent;color:var(--jex-text-muted);border:1px solid var(--jex-border-input);border-radius:12px;padding:12px 20px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:color .2s,border-color .2s,background .2s;width:100%}.jex-home-new-btn:hover{color:var(--jex-text-main);border-color:var(--jex-text-muted);background:color-mix(in srgb,var(--jex-primary) 3%,transparent)}.jex-session-ref{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--jex-bg-msg-bot);border:1px solid var(--jex-border-window);border-radius:8px;font-size:12px}.jex-session-ref-label{color:var(--jex-text-muted);font-weight:500}.jex-session-ref-code{color:var(--jex-primary);font-weight:700;font-family:ui-monospace,Cascadia Code,monospace;letter-spacing:.05em}.jex-chat-messages{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.jex-message-row{display:flex;align-items:flex-end;gap:8px;max-width:85%}.jex-message-row.bot{align-self:flex-start;flex-direction:column;align-items:stretch;gap:6px;max-width:92%}.jex-message-head{display:flex;align-items:center;gap:8px;padding-left:2px}.jex-message-head .jex-avatar{margin-bottom:0}.jex-avatar{width:24px;height:24px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:12px;margin-bottom:2px}.jex-avatar-bot{background:var(--jex-bg-msg-bot);color:var(--jex-primary)}.jex-avatar-agent{background:var(--jex-bg-avatar-agent)}.jex-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.jex-avatar-initials{font-size:9px;font-weight:700;color:var(--jex-text-avatar-agent)}.jex-message-author{font-size:13px;font-weight:600;color:var(--jex-text-main);line-height:1.2}.jex-reply-tag-btn{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:4px;background:transparent;color:var(--jex-text-muted, #6b7280);cursor:pointer;transition:background .15s,color .15s}.jex-reply-tag-btn:hover{background:#0000000f;color:var(--jex-primary, #115A62)}.jex-reply-tag-btn:focus-visible{outline:2px solid var(--jex-primary, #115A62);outline-offset:1px}.jex-message{padding:12px 16px;border-radius:18px;font-size:14px;line-height:1.4}.jex-message.bot{background:var(--jex-bg-msg-bot);border:1px solid var(--jex-border-window);color:var(--jex-text-msg-bot);border-radius:16px}.jex-message.user{align-self:flex-end;max-width:80%;background:var(--jex-bg-msg-user);color:var(--jex-text-msg-user);border-bottom-right-radius:4px}.jex-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 16px}.jex-typing span{width:8px;height:8px;border-radius:50%;background:var(--jex-text-muted);animation:jexTypingDot 1.2s infinite ease-in-out}.jex-typing span:nth-child(2){animation-delay:.2s}.jex-typing span:nth-child(3){animation-delay:.4s}@keyframes jexTypingDot{0%,80%,to{transform:scale(.8);opacity:.4}40%{transform:scale(1);opacity:1}}.jex-md{word-break:break-word;overflow-wrap:anywhere}.jex-md p{margin:0 0 8px}.jex-md p:last-child{margin-bottom:0}.jex-md strong{font-weight:600}.jex-md em{font-style:italic}.jex-md ul,.jex-md ol{margin:0 0 8px;padding-left:20px}.jex-md ul:last-child,.jex-md ol:last-child{margin-bottom:0}.jex-md ul{list-style-type:disc}.jex-md ol{list-style-type:decimal}.jex-md li{margin-bottom:2px}.jex-md li:last-child{margin-bottom:0}.jex-md a{color:var(--jex-primary);text-decoration:underline;text-underline-offset:2px}.jex-md a:hover{opacity:.8}.jex-md code{background:#00000014;padding:1px 5px;border-radius:4px;font-size:.9em;font-family:ui-monospace,Cascadia Code,Fira Code,monospace}.jex-md pre{background:#0000000f;border-radius:8px;padding:10px 12px;margin:0 0 8px;overflow-x:auto;font-size:.85em}.jex-md pre:last-child{margin-bottom:0}.jex-md pre code{background:none;padding:0;border-radius:0;font-size:inherit}.jex-md h1,.jex-md h2,.jex-md h3,.jex-md h4{font-weight:600;margin:8px 0 4px}.jex-md h1:first-child,.jex-md h2:first-child,.jex-md h3:first-child,.jex-md h4:first-child{margin-top:0}.jex-md h3{font-size:1em}.jex-md h4{font-size:.95em}.jex-md hr{border:none;border-top:1px solid var(--jex-border-window);margin:8px 0}.jex-md blockquote{border-left:3px solid var(--jex-primary);margin:0 0 8px;padding:4px 12px;color:var(--jex-text-muted)}.jex-md blockquote:last-child{margin-bottom:0}.dark .jex-md code,.jex-widget.dark .jex-md code{background:#ffffff1a}.dark .jex-md pre,.jex-widget.dark .jex-md pre{background:#ffffff14}@media(prefers-color-scheme:dark){:host:not(.light) .jex-widget:not(.light) .jex-md code{background:#ffffff1a}:host:not(.light) .jex-widget:not(.light) .jex-md pre{background:#ffffff14}}.jex-streaming-cursor:after{content:"◊";margin-left:2px;animation:jexBlinkCursor .8s ease-in-out infinite}@keyframes jexBlinkCursor{0%,to{opacity:1}50%{opacity:0}}.jex-session-notice{align-self:center;text-align:center;padding:8px 16px;margin:8px 0;font-size:12px;color:var(--jex-text-muted);background:var(--jex-bg-input, #f1f5f9);border-radius:8px;line-height:1.4}.jex-message-error{background:var(--jex-bg-error, #fef2f2)!important;border-color:var(--jex-border-error, #fecaca)!important;color:var(--jex-text-error, #991b1b)!important}.jex-chat-input{padding:12px 16px;border-top:1px solid var(--jex-border-window);display:flex;flex-direction:column;gap:8px;flex-shrink:0}.jex-chat-input-composer-gate{position:relative}.jex-chat-input-composer-gate-open{z-index:2}.jex-chat-input-composer-gate-open .jex-composer-card{pointer-events:none}.jex-composer-card{display:flex;flex-direction:column;gap:6px;padding:10px 12px 8px;background:var(--jex-bg-input);border:1px solid var(--jex-border-input);border-radius:16px;cursor:text;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.jex-composer-card:focus-within{border-color:var(--jex-primary);background:var(--jex-bg-window);box-shadow:0 0 0 3px color-mix(in srgb,var(--jex-primary, #115A62) 14%,transparent)}.jex-composer-attachments{display:flex;flex-wrap:wrap;gap:6px;padding:2px 2px 4px}.jex-attachment-chip{position:relative;width:44px;height:44px;border-radius:8px;overflow:hidden;background:var(--jex-bg-msg-bot, #f1f5f9);flex-shrink:0;box-shadow:0 1px 2px #0000000f}.jex-attachment-thumb{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.jex-attachment-remove{position:absolute;top:2px;right:2px;width:16px;height:16px;padding:0;border:none;border-radius:50%;background:#0f172ac7;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .12s ease,transform .12s ease}.jex-attachment-chip:hover .jex-attachment-remove,.jex-attachment-chip:focus-within .jex-attachment-remove{opacity:1}.jex-attachment-remove:hover{transform:scale(1.08)}.jex-composer-textarea{width:100%;min-height:22px;background:transparent;border:none;outline:none;resize:none;padding:2px 4px;color:var(--jex-text-main);font-family:inherit;font-size:16px;line-height:1.45;overflow-y:hidden}.jex-composer-textarea::placeholder{color:var(--jex-text-muted);opacity:.85}.jex-composer-textarea:disabled{cursor:not-allowed;opacity:.7}.jex-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.jex-composer-actions-left{display:inline-flex;align-items:center;gap:4px}.jex-attach-btn{width:30px;height:30px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--jex-text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease,color .12s ease,transform .12s ease}.jex-attach-btn:hover:not(:disabled){background:color-mix(in srgb,var(--jex-text-muted, #64748b) 12%,transparent);color:var(--jex-text-main)}.jex-attach-btn:active:not(:disabled){transform:scale(.92)}.jex-attach-btn:disabled{opacity:.4;cursor:not-allowed}.jex-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.jex-rate-limit-notice{flex:1 0 100%;order:-1;margin-bottom:8px;padding:8px 12px;border-radius:10px;background:var(--jex-bg-msg-bot, #f1f5f9);color:var(--jex-text-muted, #64748b);font-size:12px;line-height:1.4;text-align:center}.jex-session-error-notice{flex:1 0 100%;order:-1;margin-bottom:8px;padding:8px 12px;border-radius:10px;background:var(--jex-bg-error, #fef2f2);border:1px solid var(--jex-border-error, #fecaca);color:var(--jex-text-error, #991b1b);font-size:12px;line-height:1.4;text-align:center}.jex-chat-input input{flex:1;background:var(--jex-bg-input);border:1px solid var(--jex-border-input);border-radius:12px;padding:10px 14px;color:var(--jex-text-main);outline:none;font-family:inherit;font-size:14px}.jex-chat-input input:focus{border-color:var(--jex-primary)}.jex-send-btn{background:color-mix(in srgb,var(--jex-text-muted, #64748b) 18%,transparent);color:var(--jex-text-muted);border:none;border-radius:999px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease,opacity .15s ease,transform .15s ease;flex-shrink:0}.jex-send-btn-active{background:var(--jex-bg-send-btn, var(--jex-primary));color:var(--jex-text-header, #fff)}.jex-send-btn-active:hover:not(:disabled){background:var(--jex-primary-hover)}.jex-send-btn:active:not(:disabled){transform:scale(.9)}.jex-send-btn:disabled{opacity:.45;cursor:default}.jex-widget-footer{display:flex;align-items:center;justify-content:center;padding:8px 16px;border-top:1px solid var(--jex-border-glass);background:#00000005;flex-shrink:0}.jex-widget.dark .jex-widget-footer{background:#ffffff05}@media(prefers-color-scheme:dark){:host:not(.light) .jex-widget:not(.light) .jex-widget-footer{background:#ffffff05}}.jex-branding{display:flex;align-items:center;gap:6px;text-decoration:none;color:var(--jex-text-muted);font-size:11px;font-weight:500;transition:color .2s}.jex-branding:hover{color:var(--jex-text-main)}.jex-branding-icon{color:var(--jex-primary)}.jex-branding span strong{font-weight:700;color:var(--jex-text-main)}.jex-privacy-notice-link,.jex-privacy-chip-link{color:var(--jex-primary);text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--jex-primary) 50%,transparent);transition:text-decoration-color .15s}.jex-privacy-notice-link:hover,.jex-privacy-chip-link:hover{text-decoration-color:var(--jex-primary)}.jex-privacy-chip{align-self:center;display:inline-flex;align-items:center;gap:6px;max-width:100%;margin:0;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--jex-primary) 10%,var(--jex-bg-window));color:var(--jex-primary);font-size:10px;font-weight:650;line-height:1.2}.jex-privacy-chip-icon{display:inline-flex;flex-shrink:0}.jex-privacy-chip-link{color:inherit;text-decoration:none}.jex-privacy-explicit{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;gap:10px;min-height:100%;padding:10px 12px 12px;border:1px solid var(--jex-border-window);border-radius:14px 14px 10px 10px;background:var(--jex-bg-window);box-shadow:0 -12px 36px #0f172a24;pointer-events:auto}.jex-privacy-explicit-content{display:flex;align-items:flex-start;gap:10px}.jex-privacy-explicit-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:8px;background:color-mix(in srgb,var(--jex-primary) 10%,var(--jex-bg-window));color:var(--jex-primary);flex-shrink:0}.jex-privacy-explicit-copy{min-width:0;flex:1}.jex-privacy-explicit-title{color:var(--jex-text-main);font-size:12px;font-weight:750;line-height:1.2;margin-bottom:3px}.jex-privacy-explicit-body{margin:0;color:var(--jex-text-muted);font-size:10px;line-height:1.35}.jex-privacy-explicit-button{width:100%;border:none;border-radius:10px;background:var(--jex-bg-send-btn);color:var(--jex-text-header);cursor:pointer;font-family:inherit;font-size:12px;font-weight:750;padding:9px 12px;transition:background .15s ease,transform .12s ease}.jex-privacy-explicit-button:hover{background:var(--jex-primary-hover)}.jex-privacy-explicit-button:active{transform:scale(.98)}.jex-locale-select-wrapper{position:relative;display:flex;align-items:center}.jex-locale-select{appearance:none;-webkit-appearance:none;background:transparent;border:1px solid transparent;padding:4px 20px 4px 6px;border-radius:6px;font-family:inherit;font-size:11px;font-weight:600;color:var(--jex-text-muted);background-color:transparent;cursor:pointer;outline:none;transition:all .2s ease}.jex-locale-select option{background-color:#fff;color:#0f172a}.jex-locale-select:hover,.jex-locale-select:focus-visible{color:var(--jex-text-main);background:#0000000a}.jex-widget.dark .jex-locale-select:hover,.jex-widget.dark .jex-locale-select:focus-visible{background:#ffffff0d}.jex-widget.dark .jex-locale-select option{background-color:#0f172a;color:#f8fafc}@media(prefers-color-scheme:dark){:host:not(.light) .jex-widget:not(.light) .jex-locale-select:hover,:host:not(.light) .jex-widget:not(.light) .jex-locale-select:focus-visible{background:#ffffff0d}:host:not(.light) .jex-widget:not(.light) .jex-locale-select option{background-color:#0f172a;color:#f8fafc}}.jex-locale-select:focus-visible{border-color:var(--jex-primary)}.jex-locale-chevron{position:absolute;right:4px;pointer-events:none;color:var(--jex-text-muted);transition:color .2s ease}.jex-locale-select-wrapper:hover .jex-locale-chevron{color:var(--jex-text-main)}.jex-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--jex-bg-window, #fff);z-index:10;padding:24px;text-align:center}.jex-loading-spinner{width:32px;height:32px;border:3px solid var(--jex-border-input, #e2e8f0);border-top-color:var(--jex-primary, #115A62);border-radius:50%;animation:jex-spin .7s linear infinite}@keyframes jex-spin{to{transform:rotate(360deg)}}.jex-loading-message{font-size:14px;color:var(--jex-text-muted, #64748b)}.jex-error-message{font-size:14px;color:var(--jex-text-main, #334155)}.jex-error-actions{display:flex;gap:8px}.jex-error-retry,.jex-error-back{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none}.jex-error-retry{background:var(--jex-primary, #115A62);color:#fff}.jex-error-back{background:transparent;color:var(--jex-text-muted, #64748b);border:1px solid var(--jex-border-input, #e2e8f0)}.jex-selection{display:flex;flex-direction:column;gap:12px;padding:24px 16px;height:100%}.jex-selection-title{font-size:16px;font-weight:700;color:var(--jex-text-main, #0f172a);margin:0 0 8px}.jex-selection-options{display:flex;flex-direction:column;gap:10px}.jex-selection-option{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:16px;border-radius:12px;border:1px solid var(--jex-border-window, #e2e8f0);background:transparent;cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease}.jex-selection-option:hover{border-color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 5%,transparent)}.jex-selection-icon{font-size:20px}.jex-selection-label{font-size:14px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-selection-sub{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-form-screen{display:flex;flex-direction:column;padding:20px 16px;height:100%;overflow-y:auto}.jex-form-title{font-size:16px;font-weight:700;color:var(--jex-text-main, #0f172a);margin:0 0 16px}.jex-form{display:flex;flex-direction:column;gap:10px}.jex-form-input,.jex-form-textarea{padding:10px 12px;border-radius:8px;border:1px solid var(--jex-border-input, #e2e8f0);font-size:14px;background:transparent;color:var(--jex-text-main, #0f172a);outline:none}@media(pointer:coarse){.jex-form-input,.jex-form-textarea{font-size:16px}}.jex-form-input:focus,.jex-form-textarea:focus{border-color:var(--jex-primary, #115A62)}.jex-form-textarea{min-height:80px;resize:vertical}.jex-form-submit{padding:10px;border-radius:8px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:14px;font-weight:600;cursor:pointer;margin-top:4px}.jex-inline-form{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--jex-bg-msg-bot, #f1f5f9);border:1px solid var(--jex-border-input, #e2e8f0);border-radius:var(--jex-radius, .75rem);width:100%}.jex-inline-form-title{font-weight:600;font-size:15px;color:var(--jex-text-main, #0f172a);margin:0}.jex-inline-form-subtitle{font-size:13px;color:var(--jex-text-muted, #64748b);line-height:1.4;margin:0 0 4px}.jex-inline-form-consent{font-size:11px;color:var(--jex-text-muted, #64748b);line-height:1.3;margin-top:4px;text-align:center}.jex-inline-form .jex-form-submit:disabled{opacity:.7;cursor:not-allowed}.jex-escalation-subtitle{font-size:13px;color:var(--jex-text-muted, #64748b);line-height:1.45;margin:0 0 8px}.jex-escalation-skip{padding:8px 12px;border:none;background:transparent;color:var(--jex-text-muted, #64748b);font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:2px;text-align:center}.jex-escalation-skip:hover{color:var(--jex-text-main, #0f172a)}.jex-inline-form-card{position:relative;padding:14px;gap:8px}.jex-inline-form-dismiss{position:absolute;top:10px;right:10px;width:24px;height:24px;border-radius:50%;border:1px solid var(--jex-border-input, #e2e8f0);background:var(--jex-bg-window, #fff);color:var(--jex-text-muted, #64748b);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.jex-inline-form-dismiss:hover{background:var(--jex-bg-msg-bot, #f1f5f9);color:var(--jex-text-main, #0f172a)}.jex-inline-form-submitted{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--jex-bg-msg-bot, #f1f5f9);border:1px solid var(--jex-border-input, #e2e8f0);border-radius:var(--jex-radius, .75rem);width:100%}.jex-inline-form-check{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:color-mix(in srgb,var(--jex-primary) 15%,transparent);color:var(--jex-primary, #115A62);font-size:14px;font-weight:700;flex-shrink:0}.jex-inline-form-submitted-title{font-weight:600;font-size:var(--jex-font-size, 14px);color:var(--jex-text-main, #0f172a)}.jex-inline-form-submitted-detail{font-size:12px;color:var(--jex-text-muted, #64748b);margin-top:2px}.jex-magicline-row{display:flex;flex-direction:column;gap:8px}.jex-magicline-row>*{min-width:0}.jex-magicline-field{display:flex;flex-direction:column;gap:4px}.jex-magicline-field-label{font-size:12px;font-weight:500;color:var(--jex-text-muted, #64748b)}.jex-magicline-select{width:100%;appearance:none;cursor:pointer;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px 16px}.jex-magicline-slots-hint{font-size:12px;color:var(--jex-text-muted, #64748b);line-height:1.4;padding:2px 0}.jex-magicline-consent{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.35;color:var(--jex-text-muted, #64748b);margin-top:2px;cursor:pointer}.jex-magicline-consent input[type=checkbox]{flex-shrink:0;margin-top:1px;accent-color:var(--jex-primary, #115A62)}.jex-magicline-error{font-size:12px;color:#dc2626;line-height:1.35}.jex-magicline-failed{border-color:color-mix(in srgb,#dc2626 35%,var(--jex-border-input, #e2e8f0))}.jex-magicline-failed-icon{background:color-mix(in srgb,#dc2626 15%,transparent);color:#dc2626}.jex-magicline-wizard-header{display:flex;flex-direction:column;gap:6px}.jex-magicline-wizard-progress{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.jex-magicline-wizard-step-label{font-size:13px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-magicline-wizard-counter{font-size:11px;color:var(--jex-text-muted, #64748b);flex-shrink:0}.jex-magicline-wizard-dots{display:flex;gap:6px}.jex-magicline-wizard-dot{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--jex-text-muted, #64748b) 35%,transparent)}.jex-magicline-wizard-dot-active{background:var(--jex-primary, #115A62)}.jex-magicline-wizard-nav{display:flex;align-items:center;gap:8px;margin-top:4px}.jex-magicline-wizard-next{flex:1;margin-top:0}.jex-magicline-wizard-back{padding:10px 14px;border-radius:8px;border:1px solid var(--jex-border-input, #e2e8f0);background:transparent;color:var(--jex-text-main, #0f172a);font-size:14px;font-weight:600;cursor:pointer}.jex-magicline-wizard-back:hover{background:var(--jex-bg-window, #fff)}.jex-magicline-wizard-back:disabled,.jex-magicline-wizard-next:disabled{opacity:.7;cursor:not-allowed}.jex-magicline-radio-group{display:flex;flex-direction:column;gap:8px}.jex-magicline-radio-card{display:flex;align-items:center;gap:10px;padding:12px;border-radius:10px;border:1px solid var(--jex-border-input, #e2e8f0);font-size:14px;color:var(--jex-text-main, #0f172a);cursor:pointer}.jex-magicline-radio-card-active{border-color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 8%,transparent)}.jex-magicline-radio-card input[type=radio]{flex-shrink:0;accent-color:var(--jex-primary, #115A62)}.jex-magicline-slots-error{display:flex;flex-direction:column;gap:6px}.jex-magicline-retry{align-self:flex-start;padding:6px 12px;border-radius:8px;border:1px solid var(--jex-border-input, #e2e8f0);background:transparent;color:var(--jex-text-main, #0f172a);font-size:13px;font-weight:600;cursor:pointer}.jex-magicline-retry:hover{background:var(--jex-bg-window, #fff)}.jex-magicline-retry:disabled{opacity:.7;cursor:not-allowed}.jex-magicline-voucher-section{display:flex;flex-direction:column;gap:6px;margin-top:4px}.jex-magicline-voucher-field{flex-direction:row;align-items:stretch;gap:8px}.jex-magicline-voucher-field .jex-form-input{flex:1;min-width:0}.jex-magicline-voucher-apply{flex:0 0 auto;padding:10px 16px;border-radius:8px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.jex-magicline-voucher-apply:hover{background:var(--jex-primary-hover)}.jex-magicline-voucher-apply:disabled{opacity:.7;cursor:not-allowed}.jex-magicline-review-wrap{position:relative}.jex-magicline-review-body{display:flex;flex-direction:column;gap:10px;transition:opacity .15s ease}.jex-magicline-review-body--reloading{opacity:.5;pointer-events:none}.jex-magicline-review-overlay{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:48px}.jex-magicline-review-spinner{width:28px;height:28px;border-radius:50%;border:3px solid color-mix(in srgb,var(--jex-primary, #115A62) 25%,transparent);border-top-color:var(--jex-primary, #115A62);animation:jex-magicline-spin .7s linear infinite}@keyframes jex-magicline-spin{to{transform:rotate(360deg)}}.jex-magicline-voucher-discount-row dt,.jex-magicline-voucher-remarks-row dt{flex-shrink:1;min-width:0}.jex-magicline-voucher-remarks-row dd{min-width:0;overflow-wrap:anywhere;word-break:break-word}.jex-magicline-summary{display:flex;flex-direction:column;gap:6px;margin:0;padding:10px 12px;border-radius:8px;background:var(--jex-bg-window, #fff);border:1px solid var(--jex-border-input, #e2e8f0)}.jex-magicline-summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.jex-magicline-summary-row dt{font-size:12px;color:var(--jex-text-muted, #64748b);flex-shrink:0}.jex-magicline-summary-row dd{margin:0;font-size:13px;font-weight:500;color:var(--jex-text-main, #0f172a);text-align:right;min-width:0}.jex-magicline-summary-section{margin-top:8px}.jex-magicline-summary-heading{font-size:12px;font-weight:600;color:var(--jex-text-main, #0f172a);margin-bottom:2px}.jex-magicline-summary-totals{background:color-mix(in srgb,var(--jex-primary, #115A62) 6%,transparent);border-color:color-mix(in srgb,var(--jex-primary, #115A62) 25%,transparent)}.jex-magicline-summary-total-row dt,.jex-magicline-summary-total-row dd{font-size:14px;font-weight:700;color:var(--jex-text-main, #0f172a)}.jex-magicline-summary-total-row dt{flex-shrink:1;min-width:0}.jex-magicline-summary-total-row dd{flex-shrink:0;white-space:nowrap;overflow-wrap:normal}.jex-magicline-offer-group{display:flex;flex-direction:column;gap:8px}.jex-magicline-offer-bundle-name{font-size:13px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-magicline-offer-bundle-desc{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-magicline-radio-card .jex-magicline-offer-term{display:flex;flex-direction:column;gap:4px;flex:1}.jex-magicline-offer-term-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.jex-magicline-offer-term-length{font-size:14px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-magicline-offer-term-price{font-size:13px;font-weight:500;color:var(--jex-primary, #115A62)}.jex-magicline-offer-term-note{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-magicline-static-value{padding:9px 12px;border-radius:8px;font-size:14px;color:var(--jex-text-main, #0f172a);background:var(--jex-bg-window, #f8fafc);border:1px solid var(--jex-border-input, #e2e8f0)}.jex-magicline-terms{display:flex;flex-direction:column;gap:10px;padding:10px 12px;border-radius:8px;background:var(--jex-bg-window, #fff);border:1px solid var(--jex-border-input, #e2e8f0)}.jex-magicline-upgrades-recap-title,.jex-magicline-terms-title{font-size:12px;font-weight:600;color:var(--jex-text-main, #0f172a);margin-bottom:2px}.jex-magicline-terms-content{font-size:12px;line-height:1.5;color:var(--jex-text-muted, #64748b);white-space:pre-wrap}.jex-magicline-upgrade-group{display:flex;flex-direction:column;gap:8px}.jex-magicline-upgrade-card{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:10px;border:1px solid var(--jex-border-input, #e2e8f0);font-size:14px;color:var(--jex-text-main, #0f172a);cursor:pointer}.jex-magicline-upgrade-card-active{border-color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 8%,transparent)}.jex-magicline-upgrade-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;cursor:pointer}.jex-magicline-upgrade-info{display:flex;flex-direction:column;gap:2px;flex:1}.jex-magicline-upgrade-name{font-size:14px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-magicline-upgrade-desc{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-magicline-upgrade-price{font-size:13px;font-weight:500;color:var(--jex-primary, #115A62)}.jex-magicline-upgrade-status{flex-shrink:0;font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;border:1px solid var(--jex-border-input, #e2e8f0);color:var(--jex-text-muted, #64748b);background:transparent;white-space:nowrap}.jex-magicline-upgrade-card-active .jex-magicline-upgrade-status{border-color:var(--jex-primary, #115A62);color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 12%,transparent)}.jex-magicline-terms-prompt{font-size:13px;font-weight:600;color:var(--jex-text-main, #0f172a);margin-bottom:4px}.jex-magicline-bundle-details{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-magicline-bundle-details-summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--jex-primary, #115A62);list-style-position:inside}.jex-magicline-bundle-details-summary:hover{text-decoration:underline}.jex-magicline-bundle-details-body{display:flex;flex-direction:column;gap:6px;margin-top:6px}.jex-magicline-bundle-details-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:2px;line-height:1.4}.jex-magicline-bundle-details-footnote{margin:0;line-height:1.4}.jex-magicline-consent-region{display:flex;flex-direction:column;gap:4px;margin-top:6px;padding:6px 8px;border-left:3px solid var(--jex-primary, #115A62);border-radius:6px;background:color-mix(in srgb,var(--jex-primary, #115A62) 6%,transparent)}.jex-magicline-required-pill{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 12%,transparent);vertical-align:middle}.jex-magicline-consent-body{display:flex;flex-direction:column;gap:1px}.jex-magicline-consent-recap{display:flex;flex-direction:column;gap:2px}.jex-escalation-confirm{border-left:3px solid var(--jex-primary, #115A62);padding-left:8px}.jex-session-prompt{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 16px;margin:8px 0;text-align:center}.jex-session-prompt-text{font-size:13px;color:var(--jex-text-muted, #64748b)}.jex-session-prompt-btn{padding:8px 16px;border-radius:8px;border:1px solid var(--jex-primary, #115A62);background:transparent;color:var(--jex-primary, #115A62);font-size:13px;font-weight:600;cursor:pointer}.jex-session-prompt-btn:hover{background:color-mix(in srgb,var(--jex-primary) 10%,transparent)}.jex-chat-input-resolved{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 16px;border-top:1px solid var(--jex-border-input, #e2e8f0);background:var(--jex-bg-msg-bot, #f1f5f9);text-align:center}.jex-resolved-notice{font-size:13px;font-weight:500;color:var(--jex-text-muted, #64748b)}.jex-resolved-new-btn{padding:10px 20px;border-radius:8px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:13px;font-weight:600;cursor:pointer;width:100%}.jex-resolved-new-btn:hover{opacity:.9}.jex-confirmation{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:32px 24px;height:100%;text-align:center}.jex-confirmation-icon{width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--jex-primary, #115A62) 15%,transparent);color:var(--jex-primary, #115A62);font-size:22px;display:flex;align-items:center;justify-content:center}.jex-confirmation-title{font-size:18px;font-weight:700;color:var(--jex-text-main, #0f172a);margin:0}.jex-confirmation-body{font-size:13px;color:var(--jex-text-muted, #64748b);margin:0}.jex-confirmation-ref{font-size:20px;font-weight:700;letter-spacing:.05em;color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 10%,transparent);padding:10px 20px;border-radius:10px}.jex-confirmation-hint{font-size:12px;color:var(--jex-text-muted, #64748b);margin:0}.jex-confirmation-done{margin-top:8px;padding:10px 28px;border-radius:8px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:14px;font-weight:600;cursor:pointer}.jex-home-lookup-link{background:none;border:none;font-size:12px;color:var(--jex-text-muted, #64748b);cursor:pointer;text-decoration:underline;padding:0;align-self:center}.jex-home-lookup{display:flex;gap:8px;width:100%;animation:jexFadeIn .4s .1s ease both}.jex-home-lookup-input{flex:1;padding:10px 14px;border-radius:10px;border:1px solid var(--jex-border-input, #e2e8f0);background:var(--jex-bg-input);color:var(--jex-text-main);font-size:14px;font-family:ui-monospace,Cascadia Code,Fira Code,monospace;letter-spacing:.04em;outline:none;transition:border-color .2s}@media(pointer:coarse){.jex-home-lookup-input{font-size:16px}}.jex-home-lookup-input::placeholder{font-family:inherit;letter-spacing:.04em;color:var(--jex-text-muted);opacity:.7}.jex-home-lookup-input:focus{border-color:var(--jex-primary, #115A62)}.jex-home-lookup-submit{padding:10px 16px;border-radius:10px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s,opacity .2s;flex-shrink:0}.jex-home-lookup-submit:hover:not(:disabled){background:var(--jex-primary-hover)}.jex-home-lookup-submit:disabled{opacity:.4;cursor:default}.jex-sources-row{margin-top:6px;margin-left:32px;display:flex;flex-direction:column;gap:6px}.jex-sources-toggle{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:transparent;border:none;border-radius:6px;cursor:pointer;font-size:11px;color:var(--jex-text-muted, #6b7280);font-family:inherit;align-self:flex-start;transition:background .15s,color .15s}.jex-sources-toggle:hover{background:#0000000a;color:inherit}.jex-sources-icon{font-size:12px;line-height:1}.jex-sources-chevron{display:inline-block;font-size:10px;transition:transform .15s}.jex-sources-chevron--open{transform:rotate(180deg)}.jex-sources-pills{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.jex-source-pill{display:inline-flex;align-items:center;gap:6px;max-width:240px;padding:2px 8px;border-radius:999px;border:1px solid rgba(0,0,0,.1);background:#0000000a;color:var(--jex-text-muted, #6b7280);font-size:11px;text-decoration:none;cursor:pointer;transition:background .15s,color .15s}.jex-source-pill:hover{background:#00000014;color:inherit}.jex-source-id{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:4px;background:var(--jex-primary, #115A62);color:#fff;font-size:10px;font-weight:600;line-height:1;flex-shrink:0;font-variant-numeric:tabular-nums}.jex-source-type{font-size:10px;flex-shrink:0}.jex-source-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.jex-source-score{opacity:.6;flex-shrink:0;font-variant-numeric:tabular-nums}.jex-starter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0}.jex-starter-chip{display:inline-flex;align-items:center;border-radius:999px;padding:7px 13px;background:var(--jex-bg-window);border:1px solid var(--jex-border-input);color:var(--jex-primary);text-align:left;font-size:13.5px;font-weight:500;line-height:1.2;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s}.jex-starter-chip:hover:not(:disabled){background:color-mix(in srgb,var(--jex-primary) 8%,var(--jex-bg-window));border-color:var(--jex-primary)}.jex-starter-chip:disabled{opacity:.5;cursor:default}.jex-presence-dot{position:absolute;top:2px;right:2px;width:8px;height:8px;border-radius:999px;box-shadow:0 0 0 2px var(--jex-bg-header, #115A62)}.jex-presence-dot--online{background:#10b981}.jex-presence-dot--away{background:#fbbf24}.jex-presence-dot--offline{background:#9ca3af}@keyframes jex-ripple-expand{0%{transform:scale(1);opacity:.6}to{transform:scale(2.6);opacity:0}}.jex-waiting-card{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;margin:0 12px 8px;background:var(--jex-bg-msg-bot, #f1f5f9);border:1px solid var(--jex-border-input, #e2e8f0);border-radius:var(--jex-radius, .75rem)}.jex-waiting-indicator{position:relative;flex-shrink:0;width:20px;height:20px;margin-top:2px;display:flex;align-items:center;justify-content:center}.jex-waiting-dot{position:relative;z-index:1;width:8px;height:8px;border-radius:50%;background:var(--jex-primary, #115A62)}.jex-waiting-ripple{position:absolute;inset:0;width:8px;height:8px;margin:auto;border-radius:50%;background:var(--jex-primary, #115A62);animation:jex-ripple-expand 1.6s ease-out infinite}@media(prefers-reduced-motion:reduce){.jex-waiting-ripple{animation:none}}.jex-waiting-body{display:flex;flex-direction:column;gap:4px;min-width:0}.jex-waiting-title{font-weight:600;font-size:14px;color:var(--jex-text-main, #0f172a);line-height:1.3}.jex-waiting-subtitle{font-size:12px;color:var(--jex-text-muted, #64748b);line-height:1.4}.jex-waiting-leave-email{margin-top:6px;padding:0;border:none;background:transparent;color:var(--jex-primary, #115A62);font-size:12px;font-family:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer;text-align:left}.jex-waiting-leave-email:hover{opacity:.8}`;
10798
- function cp(t) {
10801
+ const up = `.jex-widget{--jex-primary: #115A62;--jex-primary-hover: var(--jex-accent, color-mix(in srgb, var(--jex-primary) 85%, #000));--jex-radius: .75rem;--jex-font-family: "Inter", system-ui, -apple-system, sans-serif;--jex-font-size: 14px;--jex-window-width: 380px;--jex-window-height: 600px;--jex-shadow: 0 16px 48px -12px rgba(13, 127, 138, .25), 0 4px 16px rgba(0, 0, 0, .08);pointer-events:auto;--jex-bg-trigger: var(--jex-primary);--jex-bg-header: var(--jex-primary);--jex-bg-msg-user: var(--jex-primary);--jex-bg-send-btn: var(--jex-primary);--jex-bg-window: rgba(255, 255, 255, .95);--jex-bg-msg-bot: #f1f5f9;--jex-bg-input: rgba(247, 253, 253, .6);--jex-text-header: #ffffff;--jex-text-msg-user: #ffffff;--jex-text-msg-bot: #0f172a;--jex-text-main: #0f172a;--jex-text-muted: #64748b;--jex-bg-avatar-agent: #d1fae5;--jex-text-avatar-agent: #065f46;--jex-border-window: rgba(226, 232, 240, .8);--jex-border-input: rgba(203, 213, 225, .8);--jex-bg-glass: var(--jex-bg-window);--jex-border-glass: var(--jex-border-window);font-family:var(--jex-font-family);-webkit-font-smoothing:antialiased}.dark .jex-widget,.jex-widget.dark{--jex-primary: #1cb0bf;--jex-primary-hover: var(--jex-accent, color-mix(in srgb, var(--jex-primary) 85%, #000));--jex-bg-window: rgba(10, 15, 26, .95);--jex-bg-msg-bot: #233146;--jex-bg-input: rgba(10, 15, 26, .6);--jex-text-msg-bot: #f8fafc;--jex-text-main: #f8fafc;--jex-text-muted: #94a3b8;--jex-border-window: rgba(30, 41, 59, .8);--jex-border-input: rgba(51, 65, 85, .9);--jex-bg-avatar-agent: #064e3b;--jex-text-avatar-agent: #6ee7b7;--jex-bg-error: #3b1318;--jex-border-error: #5c1d24;--jex-text-error: #fca5a5}@media(prefers-color-scheme:dark){:host:not(.light) .jex-widget:not(.light){--jex-primary: #1cb0bf;--jex-primary-hover: var(--jex-accent, color-mix(in srgb, var(--jex-primary) 85%, #000));--jex-bg-window: rgba(10, 15, 26, .95);--jex-bg-msg-bot: #233146;--jex-bg-input: rgba(10, 15, 26, .6);--jex-text-msg-bot: #f8fafc;--jex-text-main: #f8fafc;--jex-text-muted: #94a3b8;--jex-border-window: rgba(30, 41, 59, .8);--jex-border-input: rgba(51, 65, 85, .9);--jex-bg-error: #3b1318;--jex-border-error: #5c1d24;--jex-text-error: #fca5a5}}.jex-widget *{box-sizing:border-box;margin:0;padding:0}.jex-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;align-items:flex-end;gap:16px;z-index:9999}.jex-container.jex-pos-left{right:auto;left:24px;align-items:flex-start}:host(.jex-mode-embedded){display:block;width:100%;height:100%}:host(.jex-mode-embedded) .jex-widget{width:100%;height:100%}.jex-embedded{display:flex;flex-direction:column;width:100%;height:100%;background:var(--jex-bg-window);border:1px solid var(--jex-border-window);overflow:hidden}.jex-embedded .jex-screen-container{flex:1;overflow:hidden;display:flex;flex-direction:column}.jex-floating-button{height:56px;min-width:56px;padding:0;background:var(--jex-bg-trigger);color:var(--jex-text-header);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--jex-shadow);transition:transform .3s cubic-bezier(.175,.885,.32,1.275),background .2s,width .3s ease,border-radius .3s ease}.jex-floating-button.jex-has-label{min-width:110px;padding:0 20px}.jex-fab-inner{display:flex;align-items:center;gap:12px}.jex-fab-label{font-size:15px;font-weight:600;white-space:nowrap}.jex-floating-button:hover{transform:scale(1.1);background:var(--jex-primary-hover)}.jex-floating-button:active{transform:scale(.95)}.jex-fab-pulse{animation:jex-fab-pulse 2.4s ease-out infinite}@keyframes jex-fab-pulse{0%{box-shadow:var(--jex-shadow),0 0 color-mix(in srgb,var(--jex-bg-trigger) 50%,transparent)}70%{box-shadow:var(--jex-shadow),0 0 0 14px color-mix(in srgb,var(--jex-bg-trigger) 0%,transparent)}to{box-shadow:var(--jex-shadow),0 0 color-mix(in srgb,var(--jex-bg-trigger) 0%,transparent)}}@media(prefers-reduced-motion:reduce){.jex-fab-pulse{animation:none}}.jex-proactive-teaser{display:flex;align-items:flex-start;gap:10px;width:280px;max-width:calc(100vw - 48px);padding:12px 14px;align-self:flex-end;background:var(--jex-bg-window);color:var(--jex-text-main);border:1px solid var(--jex-border-window);border-radius:var(--jex-radius);box-shadow:var(--jex-shadow);cursor:pointer;text-align:left;animation:jex-teaser-in .22s ease-out}.jex-proactive-avatar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9999px;background:var(--jex-bg-avatar-agent);color:var(--jex-text-avatar-agent)}.jex-proactive-body{display:flex;flex-direction:column;gap:2px;min-width:0}.jex-proactive-title{font-weight:600;font-size:13px;line-height:1.2}.jex-proactive-message{font-size:13px;line-height:1.35;color:var(--jex-text-muted)}.jex-proactive-dismiss{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:22px;height:22px;margin:-4px -4px 0 0;padding:0;border:none;background:transparent;color:var(--jex-text-muted);cursor:pointer;border-radius:9999px}.jex-proactive-dismiss:hover{background:var(--jex-bg-msg-bot)}@keyframes jex-teaser-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.jex-proactive-teaser{animation:none}}.jex-chat-window{width:var(--jex-window-width);height:var(--jex-window-height);max-height:calc(100vh - 120px);background:var(--jex-bg-window);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--jex-border-window);border-radius:calc(var(--jex-radius) * 2);box-shadow:var(--jex-shadow);display:flex;flex-direction:column;overflow:hidden;animation:jexSlideUp .4s cubic-bezier(.16,1,.3,1);transform-origin:bottom right;touch-action:manipulation}@keyframes jexSlideUp{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(max-width:480px),(pointer:coarse)and (max-width:768px){.jex-chat-window{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-height:none;border:none;border-radius:0;animation:jexSlideUpMobile .3s cubic-bezier(.16,1,.3,1);transform-origin:bottom center}.jex-container:has(.jex-chat-window) .jex-floating-button{display:none}}@keyframes jexSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.jex-chat-header{padding:14px 16px;background:var(--jex-bg-header);color:var(--jex-text-header);display:flex;align-items:center;gap:12px;flex-shrink:0}.jex-header-info h3{font-size:16px;font-weight:600;color:var(--jex-text-header);margin:0}.jex-header-info p{font-size:12px;opacity:.8;color:var(--jex-text-header);margin:0}.jex-header-right{margin-left:auto;display:flex;align-items:center;gap:4px}.jex-header-handoff{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid color-mix(in srgb,currentColor 50%,transparent);border-radius:999px;padding:0;color:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease}.jex-header-handoff:hover:not(:disabled){background:color-mix(in srgb,currentColor 12%,transparent);border-color:currentColor}.jex-header-handoff:disabled{opacity:.5;cursor:not-allowed}.jex-header-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:999px;padding:0;color:inherit;cursor:pointer;transition:background .15s ease}.jex-header-close:hover{background:color-mix(in srgb,currentColor 14%,transparent)}.jex-handoff-error{position:absolute;top:100%;right:8px;background:#fee;color:#b00;padding:4px 8px;font-size:12px;border-radius:4px}.jex-header-back{background:none;border:none;color:var(--jex-text-header);cursor:pointer;padding:4px;display:flex;align-items:center;opacity:.8;transition:opacity .2s;flex-shrink:0}.jex-header-back:hover{opacity:1}.jex-screen-container{flex:1;overflow:hidden;display:flex;flex-direction:column}.jex-home{flex:1;display:flex;flex-direction:column;padding:24px;gap:20px;overflow-y:auto}.jex-home-hero{display:flex;align-items:center;gap:14px;width:100%;padding:0;border:none;background:transparent;font-family:inherit;text-align:left;cursor:pointer;animation:jexFadeIn .4s ease both}.jex-home-hero:disabled{cursor:default;opacity:.7}.jex-home-avatar{position:relative;width:48px;height:48px;border-radius:14px;background:var(--jex-primary);color:var(--jex-text-header);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px color-mix(in srgb,var(--jex-primary) 30%,transparent)}.jex-home-status-dot{position:absolute;bottom:-2px;right:-2px;width:14px;height:14px;border-radius:50%;background:var(--jex-dot-color, #9ca3af);border:2.5px solid var(--jex-bg-window);animation:jexPulse 2s ease-in-out infinite}.jex-home-status-dot--online{--jex-dot-color: #10b981}.jex-home-status-dot--away{--jex-dot-color: #fbbf24}.jex-home-status-dot--offline{--jex-dot-color: #9ca3af}@keyframes jexPulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--jex-dot-color, #9ca3af) 40%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--jex-dot-color, #9ca3af) 0%,transparent)}}.jex-home-hero-text{display:flex;flex-direction:column;gap:2px;min-width:0}.jex-home-title{font-size:17px;font-weight:700;color:var(--jex-text-main);margin:0;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jex-home-status{font-size:13px;font-weight:500;color:var(--jex-text-muted);letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jex-home-section-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--jex-text-muted)}.jex-home-lookup-section{display:flex;flex-direction:column;gap:8px;margin-top:auto}.jex-home-lookup-label{font-size:12px;font-weight:500;color:var(--jex-text-muted)}.jex-home-greeting{background:var(--jex-bg-msg-bot);border:1px solid var(--jex-border-window);border-radius:4px 16px 16px;padding:16px 18px;font-size:14px;line-height:1.55;color:var(--jex-text-main);animation:jexFadeIn .4s .1s ease both}.jex-home-greeting p{margin:0}@keyframes jexFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.jex-home-actions{display:flex;flex-direction:column;gap:10px;animation:jexFadeIn .4s .2s ease both}.jex-home-start-btn{background:var(--jex-bg-send-btn);color:var(--jex-text-header);border:none;border-radius:12px;padding:14px 20px;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s,transform .15s,box-shadow .2s;width:100%;box-shadow:0 2px 8px color-mix(in srgb,var(--jex-primary) 25%,transparent)}.jex-home-start-btn:hover{background:var(--jex-primary-hover);transform:translateY(-1px);box-shadow:0 4px 16px color-mix(in srgb,var(--jex-primary) 35%,transparent)}.jex-home-start-btn:active{transform:translateY(0);box-shadow:0 1px 4px color-mix(in srgb,var(--jex-primary) 20%,transparent)}.jex-home-resume-card{display:flex;flex-direction:column;gap:8px;width:100%;text-align:left;padding:16px 18px;border-radius:14px;border:1.5px solid var(--jex-primary);background:color-mix(in srgb,var(--jex-primary) 6%,var(--jex-bg-window));cursor:pointer;font-family:inherit;transition:background .2s,border-color .2s,transform .15s,box-shadow .2s;box-shadow:0 2px 8px color-mix(in srgb,var(--jex-primary) 12%,transparent)}.jex-home-resume-card:hover{background:color-mix(in srgb,var(--jex-primary) 10%,var(--jex-bg-window));transform:translateY(-1px);box-shadow:0 4px 16px color-mix(in srgb,var(--jex-primary) 20%,transparent)}.jex-home-resume-card:active{transform:translateY(0)}.jex-home-resume-top{display:flex;align-items:center;justify-content:space-between}.jex-home-resume-label{font-size:14px;font-weight:600;color:var(--jex-primary)}.jex-home-resume-arrow{color:var(--jex-primary);opacity:.6;transition:opacity .2s,transform .2s}.jex-home-resume-card:hover .jex-home-resume-arrow{opacity:1;transform:translate(2px)}.jex-home-resume-ref{font-family:ui-monospace,Cascadia Code,Fira Code,monospace;font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--jex-text-muted)}.jex-home-history{display:flex;flex-direction:column;gap:8px}.jex-home-resume-meta{font-size:12px;color:var(--jex-text-muted);margin-top:4px}.jex-home-new-btn{background:transparent;color:var(--jex-text-muted);border:1px solid var(--jex-border-input);border-radius:12px;padding:12px 20px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:color .2s,border-color .2s,background .2s;width:100%}.jex-home-new-btn:hover{color:var(--jex-text-main);border-color:var(--jex-text-muted);background:color-mix(in srgb,var(--jex-primary) 3%,transparent)}.jex-session-ref{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--jex-bg-msg-bot);border:1px solid var(--jex-border-window);border-radius:8px;font-size:12px}.jex-session-ref-label{color:var(--jex-text-muted);font-weight:500}.jex-session-ref-code{color:var(--jex-primary);font-weight:700;font-family:ui-monospace,Cascadia Code,monospace;letter-spacing:.05em}.jex-chat-messages{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.jex-message-row{display:flex;align-items:flex-end;gap:8px;max-width:85%}.jex-message-row.bot{align-self:flex-start;flex-direction:column;align-items:stretch;gap:6px;max-width:92%}.jex-message-head{display:flex;align-items:center;gap:8px;padding-left:2px}.jex-message-head .jex-avatar{margin-bottom:0}.jex-avatar{width:24px;height:24px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:12px;margin-bottom:2px}.jex-avatar-bot{background:var(--jex-bg-msg-bot);color:var(--jex-primary)}.jex-avatar-agent{background:var(--jex-bg-avatar-agent)}.jex-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.jex-avatar-initials{font-size:9px;font-weight:700;color:var(--jex-text-avatar-agent)}.jex-message-author{font-size:13px;font-weight:600;color:var(--jex-text-main);line-height:1.2}.jex-reply-tag-btn{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:4px;background:transparent;color:var(--jex-text-muted, #6b7280);cursor:pointer;transition:background .15s,color .15s}.jex-reply-tag-btn:hover{background:#0000000f;color:var(--jex-primary, #115A62)}.jex-reply-tag-btn:focus-visible{outline:2px solid var(--jex-primary, #115A62);outline-offset:1px}.jex-message{padding:12px 16px;border-radius:18px;font-size:14px;line-height:1.4}.jex-message.bot{background:var(--jex-bg-msg-bot);border:1px solid var(--jex-border-window);color:var(--jex-text-msg-bot);border-radius:16px}.jex-message.user{align-self:flex-end;max-width:80%;background:var(--jex-bg-msg-user);color:var(--jex-text-msg-user);border-bottom-right-radius:4px}.jex-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 16px}.jex-typing span{width:8px;height:8px;border-radius:50%;background:var(--jex-text-muted);animation:jexTypingDot 1.2s infinite ease-in-out}.jex-typing span:nth-child(2){animation-delay:.2s}.jex-typing span:nth-child(3){animation-delay:.4s}@keyframes jexTypingDot{0%,80%,to{transform:scale(.8);opacity:.4}40%{transform:scale(1);opacity:1}}.jex-md{word-break:break-word;overflow-wrap:anywhere}.jex-md p{margin:0 0 8px}.jex-md p:last-child{margin-bottom:0}.jex-md strong{font-weight:600}.jex-md em{font-style:italic}.jex-md ul,.jex-md ol{margin:0 0 8px;padding-left:20px}.jex-md ul:last-child,.jex-md ol:last-child{margin-bottom:0}.jex-md ul{list-style-type:disc}.jex-md ol{list-style-type:decimal}.jex-md li{margin-bottom:2px}.jex-md li:last-child{margin-bottom:0}.jex-md a{color:var(--jex-primary);text-decoration:underline;text-underline-offset:2px}.jex-md a:hover{opacity:.8}.jex-md code{background:#00000014;padding:1px 5px;border-radius:4px;font-size:.9em;font-family:ui-monospace,Cascadia Code,Fira Code,monospace}.jex-md pre{background:#0000000f;border-radius:8px;padding:10px 12px;margin:0 0 8px;overflow-x:auto;font-size:.85em}.jex-md pre:last-child{margin-bottom:0}.jex-md pre code{background:none;padding:0;border-radius:0;font-size:inherit}.jex-md h1,.jex-md h2,.jex-md h3,.jex-md h4{font-weight:600;margin:8px 0 4px}.jex-md h1:first-child,.jex-md h2:first-child,.jex-md h3:first-child,.jex-md h4:first-child{margin-top:0}.jex-md h3{font-size:1em}.jex-md h4{font-size:.95em}.jex-md hr{border:none;border-top:1px solid var(--jex-border-window);margin:8px 0}.jex-md blockquote{border-left:3px solid var(--jex-primary);margin:0 0 8px;padding:4px 12px;color:var(--jex-text-muted)}.jex-md blockquote:last-child{margin-bottom:0}.dark .jex-md code,.jex-widget.dark .jex-md code{background:#ffffff1a}.dark .jex-md pre,.jex-widget.dark .jex-md pre{background:#ffffff14}@media(prefers-color-scheme:dark){:host:not(.light) .jex-widget:not(.light) .jex-md code{background:#ffffff1a}:host:not(.light) .jex-widget:not(.light) .jex-md pre{background:#ffffff14}}.jex-streaming-cursor:after{content:"◊";margin-left:2px;animation:jexBlinkCursor .8s ease-in-out infinite}@keyframes jexBlinkCursor{0%,to{opacity:1}50%{opacity:0}}.jex-session-notice{align-self:center;text-align:center;padding:8px 16px;margin:8px 0;font-size:12px;color:var(--jex-text-muted);background:var(--jex-bg-input, #f1f5f9);border-radius:8px;line-height:1.4}.jex-message-error{background:var(--jex-bg-error, #fef2f2)!important;border-color:var(--jex-border-error, #fecaca)!important;color:var(--jex-text-error, #991b1b)!important}.jex-chat-input{padding:12px 16px;border-top:1px solid var(--jex-border-window);display:flex;flex-direction:column;gap:8px;flex-shrink:0}.jex-chat-input-composer-gate{position:relative}.jex-chat-input-composer-gate-open{z-index:2}.jex-chat-input-composer-gate-open .jex-composer-card{pointer-events:none}.jex-composer-card{display:flex;flex-direction:column;gap:6px;padding:10px 12px 8px;background:var(--jex-bg-input);border:1px solid var(--jex-border-input);border-radius:16px;cursor:text;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.jex-composer-card:focus-within{border-color:var(--jex-primary);background:var(--jex-bg-window);box-shadow:0 0 0 3px color-mix(in srgb,var(--jex-primary, #115A62) 14%,transparent)}.jex-composer-attachments{display:flex;flex-wrap:wrap;gap:6px;padding:2px 2px 4px}.jex-attachment-chip{position:relative;width:44px;height:44px;border-radius:8px;overflow:hidden;background:var(--jex-bg-msg-bot, #f1f5f9);flex-shrink:0;box-shadow:0 1px 2px #0000000f}.jex-attachment-thumb{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.jex-attachment-remove{position:absolute;top:2px;right:2px;width:16px;height:16px;padding:0;border:none;border-radius:50%;background:#0f172ac7;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .12s ease,transform .12s ease}.jex-attachment-chip:hover .jex-attachment-remove,.jex-attachment-chip:focus-within .jex-attachment-remove{opacity:1}.jex-attachment-remove:hover{transform:scale(1.08)}.jex-composer-textarea{width:100%;min-height:22px;background:transparent;border:none;outline:none;resize:none;padding:2px 4px;color:var(--jex-text-main);font-family:inherit;font-size:16px;line-height:1.45;overflow-y:hidden}.jex-composer-textarea::placeholder{color:var(--jex-text-muted);opacity:.85}.jex-composer-textarea:disabled{cursor:not-allowed;opacity:.7}.jex-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.jex-composer-actions-left{display:inline-flex;align-items:center;gap:4px}.jex-attach-btn{width:30px;height:30px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--jex-text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease,color .12s ease,transform .12s ease}.jex-attach-btn:hover:not(:disabled){background:color-mix(in srgb,var(--jex-text-muted, #64748b) 12%,transparent);color:var(--jex-text-main)}.jex-attach-btn:active:not(:disabled){transform:scale(.92)}.jex-attach-btn:disabled{opacity:.4;cursor:not-allowed}.jex-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.jex-rate-limit-notice{flex:1 0 100%;order:-1;margin-bottom:8px;padding:8px 12px;border-radius:10px;background:var(--jex-bg-msg-bot, #f1f5f9);color:var(--jex-text-muted, #64748b);font-size:12px;line-height:1.4;text-align:center}.jex-session-error-notice{flex:1 0 100%;order:-1;margin-bottom:8px;padding:8px 12px;border-radius:10px;background:var(--jex-bg-error, #fef2f2);border:1px solid var(--jex-border-error, #fecaca);color:var(--jex-text-error, #991b1b);font-size:12px;line-height:1.4;text-align:center}.jex-chat-input input{flex:1;background:var(--jex-bg-input);border:1px solid var(--jex-border-input);border-radius:12px;padding:10px 14px;color:var(--jex-text-main);outline:none;font-family:inherit;font-size:14px}.jex-chat-input input:focus{border-color:var(--jex-primary)}.jex-send-btn{background:color-mix(in srgb,var(--jex-text-muted, #64748b) 18%,transparent);color:var(--jex-text-muted);border:none;border-radius:999px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease,opacity .15s ease,transform .15s ease;flex-shrink:0}.jex-send-btn-active{background:var(--jex-bg-send-btn, var(--jex-primary));color:var(--jex-text-header, #fff)}.jex-send-btn-active:hover:not(:disabled){background:var(--jex-primary-hover)}.jex-send-btn:active:not(:disabled){transform:scale(.9)}.jex-send-btn:disabled{opacity:.45;cursor:default}.jex-widget-footer{display:flex;align-items:center;justify-content:center;padding:8px 16px;border-top:1px solid var(--jex-border-glass);background:#00000005;flex-shrink:0}.jex-widget.dark .jex-widget-footer{background:#ffffff05}@media(prefers-color-scheme:dark){:host:not(.light) .jex-widget:not(.light) .jex-widget-footer{background:#ffffff05}}.jex-branding{display:flex;align-items:center;gap:6px;text-decoration:none;color:var(--jex-text-muted);font-size:11px;font-weight:500;transition:color .2s}.jex-branding:hover{color:var(--jex-text-main)}.jex-branding-icon{color:var(--jex-primary)}.jex-branding span strong{font-weight:700;color:var(--jex-text-main)}.jex-privacy-notice-link,.jex-privacy-chip-link{color:var(--jex-primary);text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--jex-primary) 50%,transparent);transition:text-decoration-color .15s}.jex-privacy-notice-link:hover,.jex-privacy-chip-link:hover{text-decoration-color:var(--jex-primary)}.jex-privacy-chip{align-self:center;display:inline-flex;align-items:center;gap:6px;max-width:100%;margin:0;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--jex-primary) 10%,var(--jex-bg-window));color:var(--jex-primary);font-size:10px;font-weight:650;line-height:1.2}.jex-privacy-chip-icon{display:inline-flex;flex-shrink:0}.jex-privacy-chip-link{color:inherit;text-decoration:none}.jex-privacy-explicit{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;gap:10px;min-height:100%;padding:10px 12px 12px;border:1px solid var(--jex-border-window);border-radius:14px 14px 10px 10px;background:var(--jex-bg-window);box-shadow:0 -12px 36px #0f172a24;pointer-events:auto}.jex-privacy-explicit-content{display:flex;align-items:flex-start;gap:10px}.jex-privacy-explicit-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:8px;background:color-mix(in srgb,var(--jex-primary) 10%,var(--jex-bg-window));color:var(--jex-primary);flex-shrink:0}.jex-privacy-explicit-copy{min-width:0;flex:1}.jex-privacy-explicit-title{color:var(--jex-text-main);font-size:12px;font-weight:750;line-height:1.2;margin-bottom:3px}.jex-privacy-explicit-body{margin:0;color:var(--jex-text-muted);font-size:10px;line-height:1.35}.jex-privacy-explicit-button{width:100%;border:none;border-radius:10px;background:var(--jex-bg-send-btn);color:var(--jex-text-header);cursor:pointer;font-family:inherit;font-size:12px;font-weight:750;padding:9px 12px;transition:background .15s ease,transform .12s ease}.jex-privacy-explicit-button:hover{background:var(--jex-primary-hover)}.jex-privacy-explicit-button:active{transform:scale(.98)}.jex-locale-select-wrapper{position:relative;display:flex;align-items:center}.jex-locale-select{appearance:none;-webkit-appearance:none;background:transparent;border:1px solid transparent;padding:4px 20px 4px 6px;border-radius:6px;font-family:inherit;font-size:11px;font-weight:600;color:var(--jex-text-muted);background-color:transparent;cursor:pointer;outline:none;transition:all .2s ease}.jex-locale-select option{background-color:#fff;color:#0f172a}.jex-locale-select:hover,.jex-locale-select:focus-visible{color:var(--jex-text-main);background:#0000000a}.jex-widget.dark .jex-locale-select:hover,.jex-widget.dark .jex-locale-select:focus-visible{background:#ffffff0d}.jex-widget.dark .jex-locale-select option{background-color:#0f172a;color:#f8fafc}@media(prefers-color-scheme:dark){:host:not(.light) .jex-widget:not(.light) .jex-locale-select:hover,:host:not(.light) .jex-widget:not(.light) .jex-locale-select:focus-visible{background:#ffffff0d}:host:not(.light) .jex-widget:not(.light) .jex-locale-select option{background-color:#0f172a;color:#f8fafc}}.jex-locale-select:focus-visible{border-color:var(--jex-primary)}.jex-locale-chevron{position:absolute;right:4px;pointer-events:none;color:var(--jex-text-muted);transition:color .2s ease}.jex-locale-select-wrapper:hover .jex-locale-chevron{color:var(--jex-text-main)}.jex-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--jex-bg-window, #fff);z-index:10;padding:24px;text-align:center}.jex-loading-spinner{width:32px;height:32px;border:3px solid var(--jex-border-input, #e2e8f0);border-top-color:var(--jex-primary, #115A62);border-radius:50%;animation:jex-spin .7s linear infinite}@keyframes jex-spin{to{transform:rotate(360deg)}}.jex-loading-message{font-size:14px;color:var(--jex-text-muted, #64748b)}.jex-error-message{font-size:14px;color:var(--jex-text-main, #334155)}.jex-error-actions{display:flex;gap:8px}.jex-error-retry,.jex-error-back{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none}.jex-error-retry{background:var(--jex-primary, #115A62);color:#fff}.jex-error-back{background:transparent;color:var(--jex-text-muted, #64748b);border:1px solid var(--jex-border-input, #e2e8f0)}.jex-selection{display:flex;flex-direction:column;gap:12px;padding:24px 16px;height:100%}.jex-selection-title{font-size:16px;font-weight:700;color:var(--jex-text-main, #0f172a);margin:0 0 8px}.jex-selection-options{display:flex;flex-direction:column;gap:10px}.jex-selection-option{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:16px;border-radius:12px;border:1px solid var(--jex-border-window, #e2e8f0);background:transparent;cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease}.jex-selection-option:hover{border-color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 5%,transparent)}.jex-selection-icon{font-size:20px}.jex-selection-label{font-size:14px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-selection-sub{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-form-screen{display:flex;flex-direction:column;padding:20px 16px;height:100%;overflow-y:auto}.jex-form-title{font-size:16px;font-weight:700;color:var(--jex-text-main, #0f172a);margin:0 0 16px}.jex-form{display:flex;flex-direction:column;gap:10px}.jex-form-input,.jex-form-textarea{padding:10px 12px;border-radius:8px;border:1px solid var(--jex-border-input, #e2e8f0);font-size:14px;background:transparent;color:var(--jex-text-main, #0f172a);outline:none}@media(pointer:coarse){.jex-form-input,.jex-form-textarea{font-size:16px}}.jex-form-input:focus,.jex-form-textarea:focus{border-color:var(--jex-primary, #115A62)}.jex-form-textarea{min-height:80px;resize:vertical}.jex-form-submit{padding:10px;border-radius:8px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:14px;font-weight:600;cursor:pointer;margin-top:4px}.jex-inline-form{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--jex-bg-msg-bot, #f1f5f9);border:1px solid var(--jex-border-input, #e2e8f0);border-radius:var(--jex-radius, .75rem);width:100%}.jex-inline-form-title{font-weight:600;font-size:15px;color:var(--jex-text-main, #0f172a);margin:0}.jex-inline-form-subtitle{font-size:13px;color:var(--jex-text-muted, #64748b);line-height:1.4;margin:0 0 4px}.jex-inline-form-consent{font-size:11px;color:var(--jex-text-muted, #64748b);line-height:1.3;margin-top:4px;text-align:center}.jex-inline-form .jex-form-submit:disabled{opacity:.7;cursor:not-allowed}.jex-escalation-subtitle{font-size:13px;color:var(--jex-text-muted, #64748b);line-height:1.45;margin:0 0 8px}.jex-escalation-skip{padding:8px 12px;border:none;background:transparent;color:var(--jex-text-muted, #64748b);font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:2px;text-align:center}.jex-escalation-skip:hover{color:var(--jex-text-main, #0f172a)}.jex-inline-form-card{position:relative;padding:14px;gap:8px}.jex-inline-form-dismiss{position:absolute;top:10px;right:10px;width:24px;height:24px;border-radius:50%;border:1px solid var(--jex-border-input, #e2e8f0);background:var(--jex-bg-window, #fff);color:var(--jex-text-muted, #64748b);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.jex-inline-form-dismiss:hover{background:var(--jex-bg-msg-bot, #f1f5f9);color:var(--jex-text-main, #0f172a)}.jex-inline-form-submitted{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--jex-bg-msg-bot, #f1f5f9);border:1px solid var(--jex-border-input, #e2e8f0);border-radius:var(--jex-radius, .75rem);width:100%}.jex-inline-form-check{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:color-mix(in srgb,var(--jex-primary) 15%,transparent);color:var(--jex-primary, #115A62);font-size:14px;font-weight:700;flex-shrink:0}.jex-inline-form-submitted-title{font-weight:600;font-size:var(--jex-font-size, 14px);color:var(--jex-text-main, #0f172a)}.jex-inline-form-submitted-detail{font-size:12px;color:var(--jex-text-muted, #64748b);margin-top:2px}.jex-magicline-row{display:flex;flex-direction:column;gap:8px}.jex-magicline-row>*{min-width:0}.jex-magicline-field{display:flex;flex-direction:column;gap:4px}.jex-magicline-field-label{font-size:12px;font-weight:500;color:var(--jex-text-muted, #64748b)}.jex-magicline-select{width:100%;appearance:none;cursor:pointer;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px 16px}.jex-magicline-slots-hint{font-size:12px;color:var(--jex-text-muted, #64748b);line-height:1.4;padding:2px 0}.jex-magicline-consent{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.35;color:var(--jex-text-muted, #64748b);margin-top:2px;cursor:pointer}.jex-magicline-consent input[type=checkbox]{flex-shrink:0;margin-top:1px;accent-color:var(--jex-primary, #115A62)}.jex-magicline-error{font-size:12px;color:#dc2626;line-height:1.35}.jex-magicline-failed{border-color:color-mix(in srgb,#dc2626 35%,var(--jex-border-input, #e2e8f0))}.jex-magicline-failed-icon{background:color-mix(in srgb,#dc2626 15%,transparent);color:#dc2626}.jex-magicline-wizard-header{display:flex;flex-direction:column;gap:6px}.jex-magicline-wizard-progress{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.jex-magicline-wizard-step-label{font-size:13px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-magicline-wizard-counter{font-size:11px;color:var(--jex-text-muted, #64748b);flex-shrink:0}.jex-magicline-wizard-dots{display:flex;gap:6px}.jex-magicline-wizard-dot{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--jex-text-muted, #64748b) 35%,transparent)}.jex-magicline-wizard-dot-active{background:var(--jex-primary, #115A62)}.jex-magicline-wizard-nav{display:flex;align-items:center;gap:8px;margin-top:4px}.jex-magicline-wizard-next{flex:1;margin-top:0}.jex-magicline-wizard-back{padding:10px 14px;border-radius:8px;border:1px solid var(--jex-border-input, #e2e8f0);background:transparent;color:var(--jex-text-main, #0f172a);font-size:14px;font-weight:600;cursor:pointer}.jex-magicline-wizard-back:hover{background:var(--jex-bg-window, #fff)}.jex-magicline-wizard-back:disabled,.jex-magicline-wizard-next:disabled{opacity:.7;cursor:not-allowed}.jex-magicline-radio-group{display:flex;flex-direction:column;gap:8px}.jex-magicline-radio-card{display:flex;align-items:center;gap:10px;padding:12px;border-radius:10px;border:1px solid var(--jex-border-input, #e2e8f0);font-size:14px;color:var(--jex-text-main, #0f172a);cursor:pointer}.jex-magicline-radio-card-active{border-color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 8%,transparent)}.jex-magicline-radio-card input[type=radio]{flex-shrink:0;accent-color:var(--jex-primary, #115A62)}.jex-magicline-slots-error{display:flex;flex-direction:column;gap:6px}.jex-magicline-retry{align-self:flex-start;padding:6px 12px;border-radius:8px;border:1px solid var(--jex-border-input, #e2e8f0);background:transparent;color:var(--jex-text-main, #0f172a);font-size:13px;font-weight:600;cursor:pointer}.jex-magicline-retry:hover{background:var(--jex-bg-window, #fff)}.jex-magicline-retry:disabled{opacity:.7;cursor:not-allowed}.jex-magicline-voucher-section{display:flex;flex-direction:column;gap:6px;margin-top:4px}.jex-magicline-voucher-field{flex-direction:row;align-items:stretch;gap:8px}.jex-magicline-voucher-field .jex-form-input{flex:1;min-width:0}.jex-magicline-voucher-apply{flex:0 0 auto;padding:10px 16px;border-radius:8px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.jex-magicline-voucher-apply:hover{background:var(--jex-primary-hover)}.jex-magicline-voucher-apply:disabled{opacity:.7;cursor:not-allowed}.jex-magicline-review-wrap{position:relative}.jex-magicline-review-body{display:flex;flex-direction:column;gap:10px;transition:opacity .15s ease}.jex-magicline-review-body--reloading{opacity:.5;pointer-events:none}.jex-magicline-review-overlay{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:48px}.jex-magicline-review-spinner{width:28px;height:28px;border-radius:50%;border:3px solid color-mix(in srgb,var(--jex-primary, #115A62) 25%,transparent);border-top-color:var(--jex-primary, #115A62);animation:jex-magicline-spin .7s linear infinite}@keyframes jex-magicline-spin{to{transform:rotate(360deg)}}.jex-magicline-voucher-discount-row dt,.jex-magicline-voucher-remarks-row dt{flex-shrink:1;min-width:0}.jex-magicline-voucher-remarks-row dd{min-width:0;overflow-wrap:anywhere;word-break:break-word}.jex-magicline-summary{display:flex;flex-direction:column;gap:6px;margin:0;padding:10px 12px;border-radius:8px;background:var(--jex-bg-window, #fff);border:1px solid var(--jex-border-input, #e2e8f0)}.jex-magicline-summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.jex-magicline-summary-row dt{font-size:12px;color:var(--jex-text-muted, #64748b);flex-shrink:0}.jex-magicline-summary-row dd{margin:0;font-size:13px;font-weight:500;color:var(--jex-text-main, #0f172a);text-align:right;min-width:0}.jex-magicline-summary-section{margin-top:8px}.jex-magicline-summary-heading{font-size:12px;font-weight:600;color:var(--jex-text-main, #0f172a);margin-bottom:2px}.jex-magicline-summary-totals{background:color-mix(in srgb,var(--jex-primary, #115A62) 6%,transparent);border-color:color-mix(in srgb,var(--jex-primary, #115A62) 25%,transparent)}.jex-magicline-summary-total-row dt,.jex-magicline-summary-total-row dd{font-size:14px;font-weight:700;color:var(--jex-text-main, #0f172a)}.jex-magicline-summary-total-row dt{flex-shrink:1;min-width:0}.jex-magicline-summary-total-row dd{flex-shrink:0;white-space:nowrap;overflow-wrap:normal}.jex-magicline-offer-group{display:flex;flex-direction:column;gap:8px}.jex-magicline-offer-bundle-name{font-size:13px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-magicline-offer-bundle-desc{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-magicline-radio-card .jex-magicline-offer-term{display:flex;flex-direction:column;gap:4px;flex:1}.jex-magicline-offer-term-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.jex-magicline-offer-term-length{font-size:14px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-magicline-offer-term-price{font-size:13px;font-weight:500;color:var(--jex-primary, #115A62)}.jex-magicline-offer-term-note{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-magicline-static-value{padding:9px 12px;border-radius:8px;font-size:14px;color:var(--jex-text-main, #0f172a);background:var(--jex-bg-window, #f8fafc);border:1px solid var(--jex-border-input, #e2e8f0)}.jex-magicline-terms{display:flex;flex-direction:column;gap:10px;padding:10px 12px;border-radius:8px;background:var(--jex-bg-window, #fff);border:1px solid var(--jex-border-input, #e2e8f0)}.jex-magicline-upgrades-recap-title,.jex-magicline-terms-title{font-size:12px;font-weight:600;color:var(--jex-text-main, #0f172a);margin-bottom:2px}.jex-magicline-terms-content{font-size:12px;line-height:1.5;color:var(--jex-text-muted, #64748b);white-space:pre-wrap}.jex-magicline-upgrade-group{display:flex;flex-direction:column;gap:8px}.jex-magicline-upgrade-card{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:10px;border:1px solid var(--jex-border-input, #e2e8f0);font-size:14px;color:var(--jex-text-main, #0f172a);cursor:pointer}.jex-magicline-upgrade-card-active{border-color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 8%,transparent)}.jex-magicline-upgrade-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;cursor:pointer}.jex-magicline-upgrade-info{display:flex;flex-direction:column;gap:2px;flex:1}.jex-magicline-upgrade-name{font-size:14px;font-weight:600;color:var(--jex-text-main, #0f172a)}.jex-magicline-upgrade-desc{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-magicline-upgrade-price{font-size:13px;font-weight:500;color:var(--jex-primary, #115A62)}.jex-magicline-upgrade-status{flex-shrink:0;font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;border:1px solid var(--jex-border-input, #e2e8f0);color:var(--jex-text-muted, #64748b);background:transparent;white-space:nowrap}.jex-magicline-upgrade-card-active .jex-magicline-upgrade-status{border-color:var(--jex-primary, #115A62);color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 12%,transparent)}.jex-magicline-terms-prompt{font-size:13px;font-weight:600;color:var(--jex-text-main, #0f172a);margin-bottom:4px}.jex-magicline-bundle-details{font-size:12px;color:var(--jex-text-muted, #64748b)}.jex-magicline-bundle-details-summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--jex-primary, #115A62);list-style-position:inside}.jex-magicline-bundle-details-summary:hover{text-decoration:underline}.jex-magicline-bundle-details-body{display:flex;flex-direction:column;gap:6px;margin-top:6px}.jex-magicline-bundle-details-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:2px;line-height:1.4}.jex-magicline-bundle-details-footnote{margin:0;line-height:1.4}.jex-magicline-consent-region{display:flex;flex-direction:column;gap:4px;margin-top:6px;padding:6px 8px;border-left:3px solid var(--jex-primary, #115A62);border-radius:6px;background:color-mix(in srgb,var(--jex-primary, #115A62) 6%,transparent)}.jex-magicline-required-pill{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 12%,transparent);vertical-align:middle}.jex-magicline-consent-body{display:flex;flex-direction:column;gap:1px}.jex-magicline-consent-recap{display:flex;flex-direction:column;gap:2px}.jex-escalation-confirm{border-left:3px solid var(--jex-primary, #115A62);padding-left:8px}.jex-session-prompt{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 16px;margin:8px 0;text-align:center}.jex-session-prompt-text{font-size:13px;color:var(--jex-text-muted, #64748b)}.jex-session-prompt-btn{padding:8px 16px;border-radius:8px;border:1px solid var(--jex-primary, #115A62);background:transparent;color:var(--jex-primary, #115A62);font-size:13px;font-weight:600;cursor:pointer}.jex-session-prompt-btn:hover{background:color-mix(in srgb,var(--jex-primary) 10%,transparent)}.jex-chat-input-resolved{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 16px;border-top:1px solid var(--jex-border-input, #e2e8f0);background:var(--jex-bg-msg-bot, #f1f5f9);text-align:center}.jex-resolved-notice{font-size:13px;font-weight:500;color:var(--jex-text-muted, #64748b)}.jex-resolved-new-btn{padding:10px 20px;border-radius:8px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:13px;font-weight:600;cursor:pointer;width:100%}.jex-resolved-new-btn:hover{opacity:.9}.jex-confirmation{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:32px 24px;height:100%;text-align:center}.jex-confirmation-icon{width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--jex-primary, #115A62) 15%,transparent);color:var(--jex-primary, #115A62);font-size:22px;display:flex;align-items:center;justify-content:center}.jex-confirmation-title{font-size:18px;font-weight:700;color:var(--jex-text-main, #0f172a);margin:0}.jex-confirmation-body{font-size:13px;color:var(--jex-text-muted, #64748b);margin:0}.jex-confirmation-ref{font-size:20px;font-weight:700;letter-spacing:.05em;color:var(--jex-primary, #115A62);background:color-mix(in srgb,var(--jex-primary, #115A62) 10%,transparent);padding:10px 20px;border-radius:10px}.jex-confirmation-hint{font-size:12px;color:var(--jex-text-muted, #64748b);margin:0}.jex-confirmation-done{margin-top:8px;padding:10px 28px;border-radius:8px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:14px;font-weight:600;cursor:pointer}.jex-home-lookup-link{background:none;border:none;font-size:12px;color:var(--jex-text-muted, #64748b);cursor:pointer;text-decoration:underline;padding:0;align-self:center}.jex-home-lookup{display:flex;gap:8px;width:100%;animation:jexFadeIn .4s .1s ease both}.jex-home-lookup-input{flex:1;padding:10px 14px;border-radius:10px;border:1px solid var(--jex-border-input, #e2e8f0);background:var(--jex-bg-input);color:var(--jex-text-main);font-size:14px;font-family:ui-monospace,Cascadia Code,Fira Code,monospace;letter-spacing:.04em;outline:none;transition:border-color .2s}@media(pointer:coarse){.jex-home-lookup-input{font-size:16px}}.jex-home-lookup-input::placeholder{font-family:inherit;letter-spacing:.04em;color:var(--jex-text-muted);opacity:.7}.jex-home-lookup-input:focus{border-color:var(--jex-primary, #115A62)}.jex-home-lookup-submit{padding:10px 16px;border-radius:10px;border:none;background:var(--jex-primary, #115A62);color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s,opacity .2s;flex-shrink:0}.jex-home-lookup-submit:hover:not(:disabled){background:var(--jex-primary-hover)}.jex-home-lookup-submit:disabled{opacity:.4;cursor:default}.jex-sources-row{margin-top:6px;margin-left:32px;display:flex;flex-direction:column;gap:6px}.jex-sources-toggle{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:transparent;border:none;border-radius:6px;cursor:pointer;font-size:11px;color:var(--jex-text-muted, #6b7280);font-family:inherit;align-self:flex-start;transition:background .15s,color .15s}.jex-sources-toggle:hover{background:#0000000a;color:inherit}.jex-sources-icon{font-size:12px;line-height:1}.jex-sources-chevron{display:inline-block;font-size:10px;transition:transform .15s}.jex-sources-chevron--open{transform:rotate(180deg)}.jex-sources-pills{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.jex-source-pill{display:inline-flex;align-items:center;gap:6px;max-width:240px;padding:2px 8px;border-radius:999px;border:1px solid rgba(0,0,0,.1);background:#0000000a;color:var(--jex-text-muted, #6b7280);font-size:11px;text-decoration:none;cursor:pointer;transition:background .15s,color .15s}.jex-source-pill:hover{background:#00000014;color:inherit}.jex-source-id{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:4px;background:var(--jex-primary, #115A62);color:#fff;font-size:10px;font-weight:600;line-height:1;flex-shrink:0;font-variant-numeric:tabular-nums}.jex-source-type{font-size:10px;flex-shrink:0}.jex-source-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.jex-source-score{opacity:.6;flex-shrink:0;font-variant-numeric:tabular-nums}.jex-starter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0}.jex-starter-chip{display:inline-flex;align-items:center;border-radius:999px;padding:7px 13px;background:var(--jex-bg-window);border:1px solid var(--jex-border-input);color:var(--jex-primary);text-align:left;font-size:13.5px;font-weight:500;line-height:1.2;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s}.jex-starter-chip:hover:not(:disabled){background:color-mix(in srgb,var(--jex-primary) 8%,var(--jex-bg-window));border-color:var(--jex-primary)}.jex-starter-chip:disabled{opacity:.5;cursor:default}.jex-presence-dot{position:absolute;top:2px;right:2px;width:8px;height:8px;border-radius:999px;box-shadow:0 0 0 2px var(--jex-bg-header, #115A62)}.jex-presence-dot--online{background:#10b981}.jex-presence-dot--away{background:#fbbf24}.jex-presence-dot--offline{background:#9ca3af}@keyframes jex-ripple-expand{0%{transform:scale(1);opacity:.6}to{transform:scale(2.6);opacity:0}}.jex-waiting-card{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;margin:0 12px 8px;background:var(--jex-bg-msg-bot, #f1f5f9);border:1px solid var(--jex-border-input, #e2e8f0);border-radius:var(--jex-radius, .75rem)}.jex-waiting-indicator{position:relative;flex-shrink:0;width:20px;height:20px;margin-top:2px;display:flex;align-items:center;justify-content:center}.jex-waiting-dot{position:relative;z-index:1;width:8px;height:8px;border-radius:50%;background:var(--jex-primary, #115A62)}.jex-waiting-ripple{position:absolute;inset:0;width:8px;height:8px;margin:auto;border-radius:50%;background:var(--jex-primary, #115A62);animation:jex-ripple-expand 1.6s ease-out infinite}@media(prefers-reduced-motion:reduce){.jex-waiting-ripple{animation:none}}.jex-waiting-body{display:flex;flex-direction:column;gap:4px;min-width:0}.jex-waiting-title{font-weight:600;font-size:14px;color:var(--jex-text-main, #0f172a);line-height:1.3}.jex-waiting-subtitle{font-size:12px;color:var(--jex-text-muted, #64748b);line-height:1.4}.jex-waiting-leave-email{margin-top:6px;padding:0;border:none;background:transparent;color:var(--jex-primary, #115A62);font-size:12px;font-family:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer;text-align:left}.jex-waiting-leave-email:hover{opacity:.8}`;
10802
+ function dp(t) {
10799
10803
  const e = document.createElement("style");
10800
- e.textContent = lp, t.appendChild(e);
10804
+ e.textContent = up, t.appendChild(e);
10801
10805
  }
10802
- const up = "https://tame-spider-109.eu-west-1.convex.cloud";
10806
+ const hp = "https://festive-mouse-978.eu-west-1.convex.cloud";
10803
10807
  let er = null;
10804
- function dp(t) {
10805
- const e = t ?? up;
10808
+ function pp(t) {
10809
+ const e = t ?? hp;
10806
10810
  if (!e)
10807
10811
  throw new Error("[jexity] No Convex URL — set VITE_CONVEX_URL at build time or data-convex-url on the script tag");
10808
10812
  return er || (er = new pc(Ic(e))), er;
10809
10813
  }
10810
- function hp(t, e) {
10814
+ function fp(t, e) {
10811
10815
  const n = t.shadowRoot ?? t.attachShadow({ mode: "open" });
10812
10816
  for (; n.firstChild; )
10813
10817
  n.removeChild(n.firstChild);
10814
- cp(n), Tn.value = e.source, Qe.value = e.bootstrapToken, de.value = [{ id: "home" }], e.mode === "embedded" && (t.classList.add("jex-mode-embedded"), H.value = !0);
10818
+ dp(n), Tn.value = e.source, He.value = e.bootstrapToken, de.value = [{ id: "home" }], e.mode === "embedded" && (t.classList.add("jex-mode-embedded"), Q.value = !0);
10815
10819
  const r = document.createElement("div");
10816
10820
  return e.mode === "embedded" && (r.style.cssText = "width:100%;height:100%"), n.appendChild(r), tt(
10817
- /* @__PURE__ */ s(mc, { client: dp(e.convexUrl), children: /* @__PURE__ */ s(ap, { options: e }) }),
10821
+ /* @__PURE__ */ s(mc, { client: pp(e.convexUrl), children: /* @__PURE__ */ s(lp, { options: e }) }),
10818
10822
  r
10819
10823
  ), function() {
10820
- tt(null, r), H.value = !1, Tn.value = void 0, Qe.value = void 0, de.value = [{ id: "home" }];
10824
+ tt(null, r), Q.value = !1, Tn.value = void 0, He.value = void 0, de.value = [{ id: "home" }];
10821
10825
  };
10822
10826
  }
10823
- function pp(t, e, n) {
10824
- const r = hp(t, e), i = /* @__PURE__ */ new Set(), o = H.subscribe((l) => {
10827
+ function mp(t, e, n) {
10828
+ const r = fp(t, e), i = /* @__PURE__ */ new Set(), o = Q.subscribe((l) => {
10825
10829
  for (const c of i)
10826
10830
  c(l);
10827
10831
  });
@@ -10830,16 +10834,16 @@ function pp(t, e, n) {
10830
10834
  o(), i.clear(), r(), n && n();
10831
10835
  },
10832
10836
  open() {
10833
- H.value = !0;
10837
+ Q.value = !0;
10834
10838
  },
10835
10839
  close() {
10836
- H.value = !1;
10840
+ Q.value = !1;
10837
10841
  },
10838
10842
  toggle() {
10839
- H.value = !H.value;
10843
+ Q.value = !Q.value;
10840
10844
  },
10841
10845
  get isOpen() {
10842
- return H.value;
10846
+ return Q.value;
10843
10847
  },
10844
10848
  subscribe(l) {
10845
10849
  return i.add(l), () => {
@@ -10849,16 +10853,16 @@ function pp(t, e, n) {
10849
10853
  };
10850
10854
  }
10851
10855
  let Pt = null;
10852
- function fp(t) {
10856
+ function gp(t) {
10853
10857
  Pt && Pt.shutdown();
10854
10858
  let e;
10855
10859
  t.container ? e = typeof t.container == "string" ? document.querySelector(t.container) : t.container : (e = document.createElement("div"), e.id = "jexity-chat-widget", document.body.appendChild(e));
10856
- const n = pp(e, t, () => {
10860
+ const n = mp(e, t, () => {
10857
10861
  t.container || e.remove(), Pt === n && (Pt = null);
10858
10862
  });
10859
10863
  return Pt = n, n;
10860
10864
  }
10861
10865
  export {
10862
- fp as JexityChat
10866
+ gp as JexityChat
10863
10867
  };
10864
10868
  //# sourceMappingURL=index.mjs.map