@keenmate/web-multiselect 1.12.0-rc06 → 1.12.0-rc07

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.
@@ -13,7 +13,7 @@ const he = Math.min, X = Math.max, me = Math.round, ce = Math.floor, F = (o) =>
13
13
  start: "end",
14
14
  end: "start"
15
15
  };
16
- function Be(o, e, t) {
16
+ function $e(o, e, t) {
17
17
  return X(o, he(e, t));
18
18
  }
19
19
  function be(o, e) {
@@ -46,17 +46,17 @@ function xt(o, e, t) {
46
46
  }
47
47
  function Ct(o) {
48
48
  const e = pe(o);
49
- return [we(o), e, we(e)];
49
+ return [xe(o), e, xe(e)];
50
50
  }
51
- function we(o) {
51
+ function xe(o) {
52
52
  return o.replace(/start|end/g, (e) => yt[e]);
53
53
  }
54
- const $e = ["left", "right"], Re = ["right", "left"], St = ["top", "bottom"], Tt = ["bottom", "top"];
54
+ const Re = ["left", "right"], Fe = ["right", "left"], St = ["top", "bottom"], Tt = ["bottom", "top"];
55
55
  function It(o, e, t) {
56
56
  switch (o) {
57
57
  case "top":
58
58
  case "bottom":
59
- return t ? e ? Re : $e : e ? $e : Re;
59
+ return t ? e ? Fe : Re : e ? Re : Fe;
60
60
  case "left":
61
61
  case "right":
62
62
  return e ? St : Tt;
@@ -67,7 +67,7 @@ function It(o, e, t) {
67
67
  function Mt(o, e, t, s) {
68
68
  const i = ge(o);
69
69
  let r = It(J(o), t === "start", s);
70
- return i && (r = r.map((a) => a + "-" + i), e && (r = r.concat(r.map(we)))), r;
70
+ return i && (r = r.map((a) => a + "-" + i), e && (r = r.concat(r.map(xe)))), r;
71
71
  }
72
72
  function pe(o) {
73
73
  return o.replace(/left|right|bottom|top/g, (e) => kt[e]);
@@ -107,53 +107,53 @@ function ue(o) {
107
107
  y: t
108
108
  };
109
109
  }
110
- function Fe(o, e, t) {
110
+ function He(o, e, t) {
111
111
  let {
112
112
  reference: s,
113
113
  floating: i
114
114
  } = o;
115
- const r = G(e), a = tt(e), n = et(a), l = J(e), d = r === "y", c = s.x + s.width / 2 - i.width / 2, m = s.y + s.height / 2 - i.height / 2, u = s[n] / 2 - i[n] / 2;
116
- let p;
115
+ const r = G(e), a = tt(e), n = et(a), l = J(e), c = r === "y", d = s.x + s.width / 2 - i.width / 2, p = s.y + s.height / 2 - i.height / 2, u = s[n] / 2 - i[n] / 2;
116
+ let m;
117
117
  switch (l) {
118
118
  case "top":
119
- p = {
120
- x: c,
119
+ m = {
120
+ x: d,
121
121
  y: s.y - i.height
122
122
  };
123
123
  break;
124
124
  case "bottom":
125
- p = {
126
- x: c,
125
+ m = {
126
+ x: d,
127
127
  y: s.y + s.height
128
128
  };
129
129
  break;
130
130
  case "right":
131
- p = {
131
+ m = {
132
132
  x: s.x + s.width,
133
- y: m
133
+ y: p
134
134
  };
135
135
  break;
136
136
  case "left":
137
- p = {
137
+ m = {
138
138
  x: s.x - i.width,
139
- y: m
139
+ y: p
140
140
  };
141
141
  break;
142
142
  default:
143
- p = {
143
+ m = {
144
144
  x: s.x,
145
145
  y: s.y
146
146
  };
147
147
  }
148
148
  switch (ge(e)) {
149
149
  case "start":
150
- p[a] -= u * (t && d ? -1 : 1);
150
+ m[a] -= u * (t && c ? -1 : 1);
151
151
  break;
152
152
  case "end":
153
- p[a] += u * (t && d ? -1 : 1);
153
+ m[a] += u * (t && c ? -1 : 1);
154
154
  break;
155
155
  }
156
- return p;
156
+ return m;
157
157
  }
158
158
  const Pt = async (o, e, t) => {
159
159
  const {
@@ -162,14 +162,14 @@ const Pt = async (o, e, t) => {
162
162
  middleware: r = [],
163
163
  platform: a
164
164
  } = t, n = r.filter(Boolean), l = await (a.isRTL == null ? void 0 : a.isRTL(e));
165
- let d = await a.getElementRects({
165
+ let c = await a.getElementRects({
166
166
  reference: o,
167
167
  floating: e,
168
168
  strategy: i
169
169
  }), {
170
- x: c,
171
- y: m
172
- } = Fe(d, s, l), u = s, p = {}, b = 0;
170
+ x: d,
171
+ y: p
172
+ } = He(c, s, l), u = s, m = {}, b = 0;
173
173
  for (let v = 0; v < n.length; v++) {
174
174
  const {
175
175
  name: f,
@@ -180,40 +180,40 @@ const Pt = async (o, e, t) => {
180
180
  data: w,
181
181
  reset: M
182
182
  } = await g({
183
- x: c,
184
- y: m,
183
+ x: d,
184
+ y: p,
185
185
  initialPlacement: s,
186
186
  placement: u,
187
187
  strategy: i,
188
- middlewareData: p,
189
- rects: d,
188
+ middlewareData: m,
189
+ rects: c,
190
190
  platform: a,
191
191
  elements: {
192
192
  reference: o,
193
193
  floating: e
194
194
  }
195
195
  });
196
- c = _ ?? c, m = y ?? m, p = {
197
- ...p,
196
+ d = _ ?? d, p = y ?? p, m = {
197
+ ...m,
198
198
  [f]: {
199
- ...p[f],
199
+ ...m[f],
200
200
  ...w
201
201
  }
202
- }, M && b <= 50 && (b++, typeof M == "object" && (M.placement && (u = M.placement), M.rects && (d = M.rects === !0 ? await a.getElementRects({
202
+ }, M && b <= 50 && (b++, typeof M == "object" && (M.placement && (u = M.placement), M.rects && (c = M.rects === !0 ? await a.getElementRects({
203
203
  reference: o,
204
204
  floating: e,
205
205
  strategy: i
206
206
  }) : M.rects), {
207
- x: c,
208
- y: m
209
- } = Fe(d, u, l)), v = -1);
207
+ x: d,
208
+ y: p
209
+ } = He(c, u, l)), v = -1);
210
210
  }
211
211
  return {
212
- x: c,
213
- y: m,
212
+ x: d,
213
+ y: p,
214
214
  placement: u,
215
215
  strategy: i,
216
- middlewareData: p
216
+ middlewareData: m
217
217
  };
218
218
  };
219
219
  async function st(o, e) {
@@ -227,17 +227,17 @@ async function st(o, e) {
227
227
  elements: n,
228
228
  strategy: l
229
229
  } = o, {
230
- boundary: d = "clippingAncestors",
231
- rootBoundary: c = "viewport",
232
- elementContext: m = "floating",
230
+ boundary: c = "clippingAncestors",
231
+ rootBoundary: d = "viewport",
232
+ elementContext: p = "floating",
233
233
  altBoundary: u = !1,
234
- padding: p = 0
235
- } = be(e, o), b = At(p), f = n[u ? m === "floating" ? "reference" : "floating" : m], g = ue(await r.getClippingRect({
234
+ padding: m = 0
235
+ } = be(e, o), b = At(m), f = n[u ? p === "floating" ? "reference" : "floating" : p], g = ue(await r.getClippingRect({
236
236
  element: (t = await (r.isElement == null ? void 0 : r.isElement(f))) == null || t ? f : f.contextElement || await (r.getDocumentElement == null ? void 0 : r.getDocumentElement(n.floating)),
237
- boundary: d,
238
- rootBoundary: c,
237
+ boundary: c,
238
+ rootBoundary: d,
239
239
  strategy: l
240
- })), _ = m === "floating" ? {
240
+ })), _ = p === "floating" ? {
241
241
  x: s,
242
242
  y: i,
243
243
  width: a.floating.width,
@@ -273,23 +273,23 @@ const Lt = function(o) {
273
273
  rects: a,
274
274
  initialPlacement: n,
275
275
  platform: l,
276
- elements: d
276
+ elements: c
277
277
  } = e, {
278
- mainAxis: c = !0,
279
- crossAxis: m = !0,
278
+ mainAxis: d = !0,
279
+ crossAxis: p = !0,
280
280
  fallbackPlacements: u,
281
- fallbackStrategy: p = "bestFit",
281
+ fallbackStrategy: m = "bestFit",
282
282
  fallbackAxisSideDirection: b = "none",
283
283
  flipAlignment: v = !0,
284
284
  ...f
285
285
  } = be(o, e);
286
286
  if ((t = r.arrow) != null && t.alignmentOffset)
287
287
  return {};
288
- const g = J(i), _ = G(n), y = J(n) === n, w = await (l.isRTL == null ? void 0 : l.isRTL(d.floating)), M = u || (y || !v ? [pe(n)] : Ct(n)), E = b !== "none";
288
+ const g = J(i), _ = G(n), y = J(n) === n, w = await (l.isRTL == null ? void 0 : l.isRTL(c.floating)), M = u || (y || !v ? [pe(n)] : Ct(n)), E = b !== "none";
289
289
  !u && E && M.push(...Mt(n, v, b, w));
290
290
  const j = [n, ...M], se = await st(e, f), I = [];
291
291
  let C = ((s = r.flip) == null ? void 0 : s.overflows) || [];
292
- if (c && I.push(se[g]), m) {
292
+ if (d && I.push(se[g]), p) {
293
293
  const k = xt(i, a, w);
294
294
  I.push(se[k[0]], se[k[1]]);
295
295
  }
@@ -299,7 +299,7 @@ const Lt = function(o) {
299
299
  }], !I.every((k) => k <= 0)) {
300
300
  var x, S;
301
301
  const k = (((x = r.flip) == null ? void 0 : x.index) || 0) + 1, P = j[k];
302
- if (P && (!(m === "alignment" ? _ !== G(P) : !1) || // We leave the current main axis only if every placement on that axis
302
+ if (P && (!(p === "alignment" ? _ !== G(P) : !1) || // We leave the current main axis only if every placement on that axis
303
303
  // overflows the main axis.
304
304
  C.every((D) => G(D.placement) === _ ? D.overflows[0] > 0 : !0)))
305
305
  return {
@@ -313,7 +313,7 @@ const Lt = function(o) {
313
313
  };
314
314
  let oe = (S = C.filter((q) => q.overflows[0] <= 0).sort((q, D) => q.overflows[1] - D.overflows[1])[0]) == null ? void 0 : S.placement;
315
315
  if (!oe)
316
- switch (p) {
316
+ switch (m) {
317
317
  case "bestFit": {
318
318
  var A;
319
319
  const q = (A = C.filter((D) => {
@@ -348,26 +348,26 @@ async function Vt(o, e) {
348
348
  placement: t,
349
349
  platform: s,
350
350
  elements: i
351
- } = o, r = await (s.isRTL == null ? void 0 : s.isRTL(i.floating)), a = J(t), n = ge(t), l = G(t) === "y", d = Et.has(a) ? -1 : 1, c = r && l ? -1 : 1, m = be(e, o);
351
+ } = o, r = await (s.isRTL == null ? void 0 : s.isRTL(i.floating)), a = J(t), n = ge(t), l = G(t) === "y", c = Et.has(a) ? -1 : 1, d = r && l ? -1 : 1, p = be(e, o);
352
352
  let {
353
353
  mainAxis: u,
354
- crossAxis: p,
354
+ crossAxis: m,
355
355
  alignmentAxis: b
356
- } = typeof m == "number" ? {
357
- mainAxis: m,
356
+ } = typeof p == "number" ? {
357
+ mainAxis: p,
358
358
  crossAxis: 0,
359
359
  alignmentAxis: null
360
360
  } : {
361
- mainAxis: m.mainAxis || 0,
362
- crossAxis: m.crossAxis || 0,
363
- alignmentAxis: m.alignmentAxis
361
+ mainAxis: p.mainAxis || 0,
362
+ crossAxis: p.crossAxis || 0,
363
+ alignmentAxis: p.alignmentAxis
364
364
  };
365
- return n && typeof b == "number" && (p = n === "end" ? b * -1 : b), l ? {
366
- x: p * c,
367
- y: u * d
365
+ return n && typeof b == "number" && (m = n === "end" ? b * -1 : b), l ? {
366
+ x: m * d,
367
+ y: u * c
368
368
  } : {
369
- x: u * d,
370
- y: p * c
369
+ x: u * c,
370
+ y: m * d
371
371
  };
372
372
  }
373
373
  const Dt = function(o) {
@@ -417,23 +417,23 @@ const Dt = function(o) {
417
417
  }
418
418
  },
419
419
  ...l
420
- } = be(o, e), d = {
420
+ } = be(o, e), c = {
421
421
  x: t,
422
422
  y: s
423
- }, c = await st(e, l), m = G(J(i)), u = Qe(m);
424
- let p = d[u], b = d[m];
423
+ }, d = await st(e, l), p = G(J(i)), u = Qe(p);
424
+ let m = c[u], b = c[p];
425
425
  if (r) {
426
- const f = u === "y" ? "top" : "left", g = u === "y" ? "bottom" : "right", _ = p + c[f], y = p - c[g];
427
- p = Be(_, p, y);
426
+ const f = u === "y" ? "top" : "left", g = u === "y" ? "bottom" : "right", _ = m + d[f], y = m - d[g];
427
+ m = $e(_, m, y);
428
428
  }
429
429
  if (a) {
430
- const f = m === "y" ? "top" : "left", g = m === "y" ? "bottom" : "right", _ = b + c[f], y = b - c[g];
431
- b = Be(_, b, y);
430
+ const f = p === "y" ? "top" : "left", g = p === "y" ? "bottom" : "right", _ = b + d[f], y = b - d[g];
431
+ b = $e(_, b, y);
432
432
  }
433
433
  const v = n.fn({
434
434
  ...e,
435
- [u]: p,
436
- [m]: b
435
+ [u]: m,
436
+ [p]: b
437
437
  });
438
438
  return {
439
439
  ...v,
@@ -442,7 +442,7 @@ const Dt = function(o) {
442
442
  y: v.y - s,
443
443
  enabled: {
444
444
  [u]: r,
445
- [m]: a
445
+ [p]: a
446
446
  }
447
447
  }
448
448
  };
@@ -472,7 +472,7 @@ function B(o) {
472
472
  function H(o) {
473
473
  return fe() ? o instanceof HTMLElement || o instanceof V(o).HTMLElement : !1;
474
474
  }
475
- function He(o) {
475
+ function Ne(o) {
476
476
  return !fe() || typeof ShadowRoot > "u" ? !1 : o instanceof ShadowRoot || o instanceof V(o).ShadowRoot;
477
477
  }
478
478
  const Bt = /* @__PURE__ */ new Set(["inline", "contents"]);
@@ -500,14 +500,14 @@ function ve(o) {
500
500
  });
501
501
  }
502
502
  const Ht = ["transform", "translate", "scale", "rotate", "perspective"], Nt = ["transform", "translate", "scale", "rotate", "perspective", "filter"], jt = ["paint", "layout", "strict", "content"];
503
- function Pe(o) {
504
- const e = Le(), t = B(o) ? $(o) : o;
503
+ function Le(o) {
504
+ const e = Ee(), t = B(o) ? $(o) : o;
505
505
  return Ht.some((s) => t[s] ? t[s] !== "none" : !1) || (t.containerType ? t.containerType !== "normal" : !1) || !e && (t.backdropFilter ? t.backdropFilter !== "none" : !1) || !e && (t.filter ? t.filter !== "none" : !1) || Nt.some((s) => (t.willChange || "").includes(s)) || jt.some((s) => (t.contain || "").includes(s));
506
506
  }
507
507
  function Wt(o) {
508
508
  let e = K(o);
509
509
  for (; H(e) && !ee(e); ) {
510
- if (Pe(e))
510
+ if (Le(e))
511
511
  return e;
512
512
  if (ve(e))
513
513
  return null;
@@ -515,7 +515,7 @@ function Wt(o) {
515
515
  }
516
516
  return null;
517
517
  }
518
- function Le() {
518
+ function Ee() {
519
519
  return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
520
520
  }
521
521
  const Ut = /* @__PURE__ */ new Set(["html", "body", "#document"]);
@@ -541,10 +541,10 @@ function K(o) {
541
541
  // Step into the shadow DOM of the parent of a slotted node.
542
542
  o.assignedSlot || // DOM Element detected.
543
543
  o.parentNode || // ShadowRoot detected.
544
- He(o) && o.host || // Fallback.
544
+ Ne(o) && o.host || // Fallback.
545
545
  N(o)
546
546
  );
547
- return He(e) ? e.host : e;
547
+ return Ne(e) ? e.host : e;
548
548
  }
549
549
  function it(o) {
550
550
  const e = K(o);
@@ -555,12 +555,12 @@ function ae(o, e, t) {
555
555
  e === void 0 && (e = []), t === void 0 && (t = !0);
556
556
  const i = it(o), r = i === ((s = o.ownerDocument) == null ? void 0 : s.body), a = V(i);
557
557
  if (r) {
558
- const n = xe(a);
558
+ const n = Ce(a);
559
559
  return e.concat(a, a.visualViewport || [], le(i) ? i : [], n && t ? ae(n) : []);
560
560
  }
561
561
  return e.concat(i, ae(i, [], t));
562
562
  }
563
- function xe(o) {
563
+ function Ce(o) {
564
564
  return o.parent && Object.getPrototypeOf(o.parent) ? o.frameElement : null;
565
565
  }
566
566
  function rt(o) {
@@ -573,11 +573,11 @@ function rt(o) {
573
573
  $: n
574
574
  };
575
575
  }
576
- function Ee(o) {
576
+ function Ve(o) {
577
577
  return B(o) ? o : o.contextElement;
578
578
  }
579
579
  function Q(o) {
580
- const e = Ee(o);
580
+ const e = Ve(o);
581
581
  if (!H(e))
582
582
  return F(1);
583
583
  const t = e.getBoundingClientRect(), {
@@ -594,7 +594,7 @@ function Q(o) {
594
594
  const Gt = /* @__PURE__ */ F(0);
595
595
  function at(o) {
596
596
  const e = V(o);
597
- return !Le() || !e.visualViewport ? Gt : {
597
+ return !Ee() || !e.visualViewport ? Gt : {
598
598
  x: e.visualViewport.offsetLeft,
599
599
  y: e.visualViewport.offsetTop
600
600
  };
@@ -604,24 +604,24 @@ function Kt(o, e, t) {
604
604
  }
605
605
  function Z(o, e, t, s) {
606
606
  e === void 0 && (e = !1), t === void 0 && (t = !1);
607
- const i = o.getBoundingClientRect(), r = Ee(o);
607
+ const i = o.getBoundingClientRect(), r = Ve(o);
608
608
  let a = F(1);
609
609
  e && (s ? B(s) && (a = Q(s)) : a = Q(o));
610
610
  const n = Kt(r, t, s) ? at(r) : F(0);
611
- let l = (i.left + n.x) / a.x, d = (i.top + n.y) / a.y, c = i.width / a.x, m = i.height / a.y;
611
+ let l = (i.left + n.x) / a.x, c = (i.top + n.y) / a.y, d = i.width / a.x, p = i.height / a.y;
612
612
  if (r) {
613
- const u = V(r), p = s && B(s) ? V(s) : s;
614
- let b = u, v = xe(b);
615
- for (; v && s && p !== b; ) {
613
+ const u = V(r), m = s && B(s) ? V(s) : s;
614
+ let b = u, v = Ce(b);
615
+ for (; v && s && m !== b; ) {
616
616
  const f = Q(v), g = v.getBoundingClientRect(), _ = $(v), y = g.left + (v.clientLeft + parseFloat(_.paddingLeft)) * f.x, w = g.top + (v.clientTop + parseFloat(_.paddingTop)) * f.y;
617
- l *= f.x, d *= f.y, c *= f.x, m *= f.y, l += y, d += w, b = V(v), v = xe(b);
617
+ l *= f.x, c *= f.y, d *= f.x, p *= f.y, l += y, c += w, b = V(v), v = Ce(b);
618
618
  }
619
619
  }
620
620
  return ue({
621
- width: c,
622
- height: m,
621
+ width: d,
622
+ height: p,
623
623
  x: l,
624
- y: d
624
+ y: c
625
625
  });
626
626
  }
627
627
  function ke(o, e) {
@@ -648,18 +648,18 @@ function qt(o) {
648
648
  let l = {
649
649
  scrollLeft: 0,
650
650
  scrollTop: 0
651
- }, d = F(1);
652
- const c = F(0), m = H(s);
653
- if ((m || !m && !r) && ((te(s) !== "body" || le(a)) && (l = _e(s)), H(s))) {
654
- const p = Z(s);
655
- d = Q(s), c.x = p.x + s.clientLeft, c.y = p.y + s.clientTop;
651
+ }, c = F(1);
652
+ const d = F(0), p = H(s);
653
+ if ((p || !p && !r) && ((te(s) !== "body" || le(a)) && (l = _e(s)), H(s))) {
654
+ const m = Z(s);
655
+ c = Q(s), d.x = m.x + s.clientLeft, d.y = m.y + s.clientTop;
656
656
  }
657
- const u = a && !m && !r ? nt(a, l) : F(0);
657
+ const u = a && !p && !r ? nt(a, l) : F(0);
658
658
  return {
659
- width: t.width * d.x,
660
- height: t.height * d.y,
661
- x: t.x * d.x - l.scrollLeft * d.x + c.x + u.x,
662
- y: t.y * d.y - l.scrollTop * d.y + c.y + u.y
659
+ width: t.width * c.x,
660
+ height: t.height * c.y,
661
+ x: t.x * c.x - l.scrollLeft * c.x + d.x + u.x,
662
+ y: t.y * c.y - l.scrollTop * c.y + d.y + u.y
663
663
  };
664
664
  }
665
665
  function Yt(o) {
@@ -676,20 +676,20 @@ function Xt(o) {
676
676
  y: n
677
677
  };
678
678
  }
679
- const Ne = 25;
679
+ const je = 25;
680
680
  function Jt(o, e) {
681
681
  const t = V(o), s = N(o), i = t.visualViewport;
682
682
  let r = s.clientWidth, a = s.clientHeight, n = 0, l = 0;
683
683
  if (i) {
684
684
  r = i.width, a = i.height;
685
- const c = Le();
686
- (!c || c && e === "fixed") && (n = i.offsetLeft, l = i.offsetTop);
687
- }
688
- const d = ke(s);
689
- if (d <= 0) {
690
- const c = s.ownerDocument, m = c.body, u = getComputedStyle(m), p = c.compatMode === "CSS1Compat" && parseFloat(u.marginLeft) + parseFloat(u.marginRight) || 0, b = Math.abs(s.clientWidth - m.clientWidth - p);
691
- b <= Ne && (r -= b);
692
- } else d <= Ne && (r += d);
685
+ const d = Ee();
686
+ (!d || d && e === "fixed") && (n = i.offsetLeft, l = i.offsetTop);
687
+ }
688
+ const c = ke(s);
689
+ if (c <= 0) {
690
+ const d = s.ownerDocument, p = d.body, u = getComputedStyle(p), m = d.compatMode === "CSS1Compat" && parseFloat(u.marginLeft) + parseFloat(u.marginRight) || 0, b = Math.abs(s.clientWidth - p.clientWidth - m);
691
+ b <= je && (r -= b);
692
+ } else c <= je && (r += c);
693
693
  return {
694
694
  width: r,
695
695
  height: a,
@@ -699,15 +699,15 @@ function Jt(o, e) {
699
699
  }
700
700
  const Zt = /* @__PURE__ */ new Set(["absolute", "fixed"]);
701
701
  function Qt(o, e) {
702
- const t = Z(o, !0, e === "fixed"), s = t.top + o.clientTop, i = t.left + o.clientLeft, r = H(o) ? Q(o) : F(1), a = o.clientWidth * r.x, n = o.clientHeight * r.y, l = i * r.x, d = s * r.y;
702
+ const t = Z(o, !0, e === "fixed"), s = t.top + o.clientTop, i = t.left + o.clientLeft, r = H(o) ? Q(o) : F(1), a = o.clientWidth * r.x, n = o.clientHeight * r.y, l = i * r.x, c = s * r.y;
703
703
  return {
704
704
  width: a,
705
705
  height: n,
706
706
  x: l,
707
- y: d
707
+ y: c
708
708
  };
709
709
  }
710
- function je(o, e, t) {
710
+ function We(o, e, t) {
711
711
  let s;
712
712
  if (e === "viewport")
713
713
  s = Jt(o, t);
@@ -738,8 +738,8 @@ function es(o, e) {
738
738
  const r = $(o).position === "fixed";
739
739
  let a = r ? K(o) : o;
740
740
  for (; B(a) && !ee(a); ) {
741
- const n = $(a), l = Pe(a);
742
- !l && n.position === "fixed" && (i = null), (r ? !l && !i : !l && n.position === "static" && !!i && Zt.has(i.position) || le(a) && !l && lt(o, a)) ? s = s.filter((c) => c !== a) : i = n, a = K(a);
741
+ const n = $(a), l = Le(a);
742
+ !l && n.position === "fixed" && (i = null), (r ? !l && !i : !l && n.position === "static" && !!i && Zt.has(i.position) || le(a) && !l && lt(o, a)) ? s = s.filter((d) => d !== a) : i = n, a = K(a);
743
743
  }
744
744
  return e.set(o, s), s;
745
745
  }
@@ -750,10 +750,10 @@ function ts(o) {
750
750
  rootBoundary: s,
751
751
  strategy: i
752
752
  } = o;
753
- const a = [...t === "clippingAncestors" ? ve(e) ? [] : es(e, this._c) : [].concat(t), s], n = a[0], l = a.reduce((d, c) => {
754
- const m = je(e, c, i);
755
- return d.top = X(m.top, d.top), d.right = he(m.right, d.right), d.bottom = he(m.bottom, d.bottom), d.left = X(m.left, d.left), d;
756
- }, je(e, n, i));
753
+ const a = [...t === "clippingAncestors" ? ve(e) ? [] : es(e, this._c) : [].concat(t), s], n = a[0], l = a.reduce((c, d) => {
754
+ const p = We(e, d, i);
755
+ return c.top = X(p.top, c.top), c.right = he(p.right, c.right), c.bottom = he(p.bottom, c.bottom), c.left = X(p.left, c.left), c;
756
+ }, We(e, n, i));
757
757
  return {
758
758
  width: l.right - l.left,
759
759
  height: l.bottom - l.top,
@@ -778,18 +778,18 @@ function os(o, e, t) {
778
778
  scrollTop: 0
779
779
  };
780
780
  const l = F(0);
781
- function d() {
781
+ function c() {
782
782
  l.x = ke(i);
783
783
  }
784
784
  if (s || !s && !r)
785
785
  if ((te(e) !== "body" || le(i)) && (n = _e(e)), s) {
786
- const p = Z(e, !0, r, e);
787
- l.x = p.x + e.clientLeft, l.y = p.y + e.clientTop;
788
- } else i && d();
789
- r && !s && i && d();
790
- const c = i && !s && !r ? nt(i, n) : F(0), m = a.left + n.scrollLeft - l.x - c.x, u = a.top + n.scrollTop - l.y - c.y;
786
+ const m = Z(e, !0, r, e);
787
+ l.x = m.x + e.clientLeft, l.y = m.y + e.clientTop;
788
+ } else i && c();
789
+ r && !s && i && c();
790
+ const d = i && !s && !r ? nt(i, n) : F(0), p = a.left + n.scrollLeft - l.x - d.x, u = a.top + n.scrollTop - l.y - d.y;
791
791
  return {
792
- x: m,
792
+ x: p,
793
793
  y: u,
794
794
  width: a.width,
795
795
  height: a.height
@@ -798,7 +798,7 @@ function os(o, e, t) {
798
798
  function ye(o) {
799
799
  return $(o).position === "static";
800
800
  }
801
- function We(o, e) {
801
+ function Ue(o, e) {
802
802
  if (!H(o) || $(o).position === "fixed")
803
803
  return null;
804
804
  if (e)
@@ -819,10 +819,10 @@ function ct(o, e) {
819
819
  }
820
820
  return t;
821
821
  }
822
- let s = We(o, e);
822
+ let s = Ue(o, e);
823
823
  for (; s && Rt(s) && ye(s); )
824
- s = We(s, e);
825
- return s && ee(s) && ye(s) && !Pe(s) ? t : s || Wt(o) || t;
824
+ s = Ue(s, e);
825
+ return s && ee(s) && ye(s) && !Le(s) ? t : s || Wt(o) || t;
826
826
  }
827
827
  const is = async function(o) {
828
828
  const e = this.getOffsetParent || ct, t = this.getDimensions, s = await t(o.floating);
@@ -863,15 +863,15 @@ function as(o, e) {
863
863
  }
864
864
  function a(n, l) {
865
865
  n === void 0 && (n = !1), l === void 0 && (l = 1), r();
866
- const d = o.getBoundingClientRect(), {
867
- left: c,
868
- top: m,
866
+ const c = o.getBoundingClientRect(), {
867
+ left: d,
868
+ top: p,
869
869
  width: u,
870
- height: p
871
- } = d;
872
- if (n || e(), !u || !p)
870
+ height: m
871
+ } = c;
872
+ if (n || e(), !u || !m)
873
873
  return;
874
- const b = ce(m), v = ce(i.clientWidth - (c + u)), f = ce(i.clientHeight - (m + p)), g = ce(c), y = {
874
+ const b = ce(p), v = ce(i.clientWidth - (d + u)), f = ce(i.clientHeight - (p + m)), g = ce(d), y = {
875
875
  rootMargin: -b + "px " + -v + "px " + -f + "px " + -g + "px",
876
876
  threshold: X(0, he(1, l)) || 1
877
877
  };
@@ -885,7 +885,7 @@ function as(o, e) {
885
885
  a(!1, 1e-7);
886
886
  }, 1e3);
887
887
  }
888
- j === 1 && !ht(d, o.getBoundingClientRect()) && a(), w = !1;
888
+ j === 1 && !ht(c, o.getBoundingClientRect()) && a(), w = !1;
889
889
  }
890
890
  try {
891
891
  t = new IntersectionObserver(M, {
@@ -900,7 +900,7 @@ function as(o, e) {
900
900
  }
901
901
  return a(!0), r;
902
902
  }
903
- function Ce(o, e, t, s) {
903
+ function Se(o, e, t, s) {
904
904
  s === void 0 && (s = {});
905
905
  const {
906
906
  ancestorScroll: i = !0,
@@ -908,21 +908,21 @@ function Ce(o, e, t, s) {
908
908
  elementResize: a = typeof ResizeObserver == "function",
909
909
  layoutShift: n = typeof IntersectionObserver == "function",
910
910
  animationFrame: l = !1
911
- } = s, d = Ee(o), c = i || r ? [...d ? ae(d) : [], ...ae(e)] : [];
912
- c.forEach((g) => {
911
+ } = s, c = Ve(o), d = i || r ? [...c ? ae(c) : [], ...ae(e)] : [];
912
+ d.forEach((g) => {
913
913
  i && g.addEventListener("scroll", t, {
914
914
  passive: !0
915
915
  }), r && g.addEventListener("resize", t);
916
916
  });
917
- const m = d && n ? as(d, t) : null;
918
- let u = -1, p = null;
919
- a && (p = new ResizeObserver((g) => {
917
+ const p = c && n ? as(c, t) : null;
918
+ let u = -1, m = null;
919
+ a && (m = new ResizeObserver((g) => {
920
920
  let [_] = g;
921
- _ && _.target === d && p && (p.unobserve(e), cancelAnimationFrame(u), u = requestAnimationFrame(() => {
921
+ _ && _.target === c && m && (m.unobserve(e), cancelAnimationFrame(u), u = requestAnimationFrame(() => {
922
922
  var y;
923
- (y = p) == null || y.observe(e);
923
+ (y = m) == null || y.observe(e);
924
924
  })), t();
925
- }), d && !l && p.observe(d), p.observe(e));
925
+ }), c && !l && m.observe(c), m.observe(e));
926
926
  let b, v = l ? Z(o) : null;
927
927
  l && f();
928
928
  function f() {
@@ -931,12 +931,12 @@ function Ce(o, e, t, s) {
931
931
  }
932
932
  return t(), () => {
933
933
  var g;
934
- c.forEach((_) => {
934
+ d.forEach((_) => {
935
935
  i && _.removeEventListener("scroll", t), r && _.removeEventListener("resize", t);
936
- }), m == null || m(), (g = p) == null || g.disconnect(), p = null, l && cancelAnimationFrame(b);
936
+ }), p == null || p(), (g = m) == null || g.disconnect(), m = null, l && cancelAnimationFrame(b);
937
937
  };
938
938
  }
939
- const Se = Dt, Te = zt, mt = Lt, Ie = (o, e, t) => {
939
+ const Te = Dt, Ie = zt, mt = Lt, Me = (o, e, t) => {
940
940
  const s = /* @__PURE__ */ new Map(), i = {
941
941
  platform: dt,
942
942
  ...t
@@ -950,14 +950,14 @@ const Se = Dt, Te = zt, mt = Lt, Ie = (o, e, t) => {
950
950
  });
951
951
  };
952
952
  var pt = function() {
953
- }, z = "undefined", ns = typeof window !== z && typeof window.navigator !== z && /Trident\/|MSIE /.test(window.navigator.userAgent), Me = [
953
+ }, z = "undefined", ns = typeof window !== z && typeof window.navigator !== z && /Trident\/|MSIE /.test(window.navigator.userAgent), Oe = [
954
954
  "trace",
955
955
  "debug",
956
956
  "info",
957
957
  "warn",
958
958
  "error"
959
959
  ], ne = {}, T = null;
960
- function Ue(o, e) {
960
+ function Ge(o, e) {
961
961
  var t = o[e];
962
962
  if (typeof t.bind == "function")
963
963
  return t.bind(o);
@@ -973,11 +973,11 @@ function ls() {
973
973
  console.log && (console.log.apply ? console.log.apply(console, arguments) : Function.prototype.apply.apply(console.log, [console, arguments])), console.trace && console.trace();
974
974
  }
975
975
  function cs(o) {
976
- return o === "debug" && (o = "log"), typeof console === z ? !1 : o === "trace" && ns ? ls : console[o] !== void 0 ? Ue(console, o) : console.log !== void 0 ? Ue(console, "log") : pt;
976
+ return o === "debug" && (o = "log"), typeof console === z ? !1 : o === "trace" && ns ? ls : console[o] !== void 0 ? Ge(console, o) : console.log !== void 0 ? Ge(console, "log") : pt;
977
977
  }
978
978
  function ie() {
979
- for (var o = this.getLevel(), e = 0; e < Me.length; e++) {
980
- var t = Me[e];
979
+ for (var o = this.getLevel(), e = 0; e < Oe.length; e++) {
980
+ var t = Oe[e];
981
981
  this[t] = e < o ? pt : this.methodFactory(t, o, this.name);
982
982
  }
983
983
  if (this.log = this.debug, typeof console === z && o < this.levels.SILENT)
@@ -995,15 +995,15 @@ function ut(o, e) {
995
995
  var t = this, s, i, r, a = "loglevel";
996
996
  typeof o == "string" ? a += ":" + o : typeof o == "symbol" && (a = void 0);
997
997
  function n(u) {
998
- var p = (Me[u] || "silent").toUpperCase();
998
+ var m = (Oe[u] || "silent").toUpperCase();
999
999
  if (!(typeof window === z || !a)) {
1000
1000
  try {
1001
- window.localStorage[a] = p;
1001
+ window.localStorage[a] = m;
1002
1002
  return;
1003
1003
  } catch {
1004
1004
  }
1005
1005
  try {
1006
- window.document.cookie = encodeURIComponent(a) + "=" + p + ";";
1006
+ window.document.cookie = encodeURIComponent(a) + "=" + m + ";";
1007
1007
  } catch {
1008
1008
  }
1009
1009
  }
@@ -1017,16 +1017,16 @@ function ut(o, e) {
1017
1017
  }
1018
1018
  if (typeof u === z)
1019
1019
  try {
1020
- var p = window.document.cookie, b = encodeURIComponent(a), v = p.indexOf(b + "=");
1020
+ var m = window.document.cookie, b = encodeURIComponent(a), v = m.indexOf(b + "=");
1021
1021
  v !== -1 && (u = /^([^;]+)/.exec(
1022
- p.slice(v + b.length + 1)
1022
+ m.slice(v + b.length + 1)
1023
1023
  )[1]);
1024
1024
  } catch {
1025
1025
  }
1026
1026
  return t.levels[u] === void 0 && (u = void 0), u;
1027
1027
  }
1028
1028
  }
1029
- function d() {
1029
+ function c() {
1030
1030
  if (!(typeof window === z || !a)) {
1031
1031
  try {
1032
1032
  window.localStorage.removeItem(a);
@@ -1038,10 +1038,10 @@ function ut(o, e) {
1038
1038
  }
1039
1039
  }
1040
1040
  }
1041
- function c(u) {
1042
- var p = u;
1043
- if (typeof p == "string" && t.levels[p.toUpperCase()] !== void 0 && (p = t.levels[p.toUpperCase()]), typeof p == "number" && p >= 0 && p <= t.levels.SILENT)
1044
- return p;
1041
+ function d(u) {
1042
+ var m = u;
1043
+ if (typeof m == "string" && t.levels[m.toUpperCase()] !== void 0 && (m = t.levels[m.toUpperCase()]), typeof m == "number" && m >= 0 && m <= t.levels.SILENT)
1044
+ return m;
1045
1045
  throw new TypeError("log.setLevel() called with invalid level: " + u);
1046
1046
  }
1047
1047
  t.name = o, t.levels = {
@@ -1053,25 +1053,25 @@ function ut(o, e) {
1053
1053
  SILENT: 5
1054
1054
  }, t.methodFactory = e || hs, t.getLevel = function() {
1055
1055
  return r ?? i ?? s;
1056
- }, t.setLevel = function(u, p) {
1057
- return r = c(u), p !== !1 && n(r), ie.call(t);
1056
+ }, t.setLevel = function(u, m) {
1057
+ return r = d(u), m !== !1 && n(r), ie.call(t);
1058
1058
  }, t.setDefaultLevel = function(u) {
1059
- i = c(u), l() || t.setLevel(u, !1);
1059
+ i = d(u), l() || t.setLevel(u, !1);
1060
1060
  }, t.resetLevel = function() {
1061
- r = null, d(), ie.call(t);
1061
+ r = null, c(), ie.call(t);
1062
1062
  }, t.enableAll = function(u) {
1063
1063
  t.setLevel(t.levels.TRACE, u);
1064
1064
  }, t.disableAll = function(u) {
1065
1065
  t.setLevel(t.levels.SILENT, u);
1066
1066
  }, t.rebuild = function() {
1067
- if (T !== t && (s = c(T.getLevel())), ie.call(t), T === t)
1067
+ if (T !== t && (s = d(T.getLevel())), ie.call(t), T === t)
1068
1068
  for (var u in ne)
1069
1069
  ne[u].rebuild();
1070
- }, s = c(
1070
+ }, s = d(
1071
1071
  T ? T.getLevel() : "WARN"
1072
1072
  );
1073
- var m = l();
1074
- m != null && (r = c(m)), ie.call(t);
1073
+ var p = l();
1074
+ p != null && (r = d(p)), ie.call(t);
1075
1075
  }
1076
1076
  T = new ut();
1077
1077
  T.getLogger = function(e) {
@@ -1117,15 +1117,15 @@ var ps = function(o) {
1117
1117
  throw new TypeError("Argument is not a logger");
1118
1118
  var t = o.methodFactory, s = o.name || "", i = Y[s] || Y[""] || us;
1119
1119
  function r(a, n, l) {
1120
- var d = t(a, n, l), c = Y[l] || Y[""], m = c.template.indexOf("%t") !== -1, u = c.template.indexOf("%l") !== -1, p = c.template.indexOf("%n") !== -1;
1120
+ var c = t(a, n, l), d = Y[l] || Y[""], p = d.template.indexOf("%t") !== -1, u = d.template.indexOf("%l") !== -1, m = d.template.indexOf("%n") !== -1;
1121
1121
  return function() {
1122
1122
  for (var b = "", v = arguments.length, f = Array(v), g = 0; g < v; g++)
1123
1123
  f[g] = arguments[g];
1124
1124
  if (s || !Y[l]) {
1125
- var _ = c.timestampFormatter(/* @__PURE__ */ new Date()), y = c.levelFormatter(a), w = c.nameFormatter(l);
1126
- c.format ? b += c.format(y, w, _) : (b += c.template, m && (b = b.replace(/%t/, _)), u && (b = b.replace(/%l/, y)), p && (b = b.replace(/%n/, w))), f.length && typeof f[0] == "string" ? f[0] = b + " " + f[0] : f.unshift(b);
1125
+ var _ = d.timestampFormatter(/* @__PURE__ */ new Date()), y = d.levelFormatter(a), w = d.nameFormatter(l);
1126
+ d.format ? b += d.format(y, w, _) : (b += d.template, p && (b = b.replace(/%t/, _)), u && (b = b.replace(/%l/, y)), m && (b = b.replace(/%n/, w))), f.length && typeof f[0] == "string" ? f[0] = b + " " + f[0] : f.unshift(b);
1127
1127
  }
1128
- d.apply(void 0, f);
1128
+ c.apply(void 0, f);
1129
1129
  };
1130
1130
  }
1131
1131
  return Y[s] || (o.methodFactory = r), e = e || {}, e.template && (e.format = void 0), Y[s] = ps({}, i, e), o.setLevel(o.getLevel()), bt || o.warn(
@@ -1150,8 +1150,8 @@ const _s = (o) => o.toTimeString().split(" ")[0] + "." + o.getMilliseconds().toS
1150
1150
  T.methodFactory = function(o, e, t) {
1151
1151
  const s = ks(o, e, t), r = `color: ${vs[o] || "#666"}; font-weight: bold;`, a = "color: inherit;";
1152
1152
  return function(...n) {
1153
- const l = _s(/* @__PURE__ */ new Date()), d = o.toUpperCase(), c = t ? `%c[${l}]%c %c[${d}]%c %c[${t}]%c` : `%c[${l}]%c %c[${d}]%c`;
1154
- s(c, ...t ? [r, a, r, a, r, a] : [r, a, r, a], ...n);
1153
+ const l = _s(/* @__PURE__ */ new Date()), c = o.toUpperCase(), d = t ? `%c[${l}]%c %c[${c}]%c %c[${t}]%c` : `%c[${l}]%c %c[${c}]%c`;
1154
+ s(d, ...t ? [r, a, r, a, r, a] : [r, a, r, a], ...n);
1155
1155
  };
1156
1156
  };
1157
1157
  typeof T.setDefaultLevel == "function" ? T.setDefaultLevel("silent") : T.setLevel("silent", !1);
@@ -1161,23 +1161,23 @@ const de = T.getLogger("MULTISELECT:INIT"), O = T.getLogger("MULTISELECT:DATA"),
1161
1161
  "MULTISELECT:UI",
1162
1162
  "MULTISELECT:INTERACTION"
1163
1163
  ];
1164
- function Ve() {
1164
+ function De() {
1165
1165
  typeof T.rebuild == "function" && T.rebuild();
1166
1166
  }
1167
1167
  function ws() {
1168
- T.setLevel("debug"), Ve();
1168
+ T.setLevel("debug"), De();
1169
1169
  }
1170
1170
  function xs() {
1171
- T.setLevel("silent"), Ve();
1171
+ T.setLevel("silent"), De();
1172
1172
  }
1173
1173
  function Cs(o) {
1174
- T.setLevel(o), Ve();
1174
+ T.setLevel(o), De();
1175
1175
  }
1176
1176
  function Ss(o, e) {
1177
1177
  const t = o.includes(":") ? o : `MULTISELECT:${o}`;
1178
1178
  T.getLogger(t).setLevel(e);
1179
1179
  }
1180
- class Ge {
1180
+ class Ke {
1181
1181
  constructor(e) {
1182
1182
  h(this, "container");
1183
1183
  h(this, "wrapper");
@@ -1338,17 +1338,17 @@ class Ts {
1338
1338
  }
1339
1339
  show() {
1340
1340
  var e;
1341
- (e = this.onBeforeShow) == null || e.call(this), this.visible = !0, this.element.classList.add(this.visibleClass), this.positionCleanup && (this.positionCleanup(), this.positionCleanup = null), this.followCursor ? this.positionAtCursor() : this.positionCleanup = Ce(this.trigger, this.element, () => this.computeAt(this.trigger));
1341
+ (e = this.onBeforeShow) == null || e.call(this), this.visible = !0, this.element.classList.add(this.visibleClass), this.positionCleanup && (this.positionCleanup(), this.positionCleanup = null), this.followCursor ? this.positionAtCursor() : this.positionCleanup = Se(this.trigger, this.element, () => this.computeAt(this.trigger));
1342
1342
  }
1343
1343
  /** Position the tooltip relative to a reference (the trigger element or a pointer virtual element). */
1344
1344
  computeAt(e) {
1345
- Ie(e, this.element, {
1345
+ Me(e, this.element, {
1346
1346
  placement: this.placement,
1347
1347
  strategy: "fixed",
1348
1348
  middleware: [
1349
- Se(this.offsetDistance),
1349
+ Te(this.offsetDistance),
1350
1350
  mt(),
1351
- Te({ padding: 8 })
1351
+ Ie({ padding: 8 })
1352
1352
  ]
1353
1353
  }).then(({ x: t, y: s }) => {
1354
1354
  Object.assign(this.element.style, {
@@ -1384,7 +1384,7 @@ class Ts {
1384
1384
  this.showTimer !== null && clearTimeout(this.showTimer), this.hideTimer !== null && clearTimeout(this.hideTimer), this.showTimer = null, this.hideTimer = null, this.positionCleanup && (this.positionCleanup(), this.positionCleanup = null), this.trigger.removeEventListener("mouseenter", this.handleMouseEnter), this.trigger.removeEventListener("mouseleave", this.handleMouseLeave), this.handleMouseMove && this.trigger.removeEventListener("mousemove", this.handleMouseMove), this.element.remove();
1385
1385
  }
1386
1386
  }
1387
- function Ke(o) {
1387
+ function qe(o) {
1388
1388
  return {
1389
1389
  treeId: "",
1390
1390
  id: -1,
@@ -1405,10 +1405,10 @@ function Is(o, e = ".") {
1405
1405
  const t = o.lastIndexOf(e);
1406
1406
  return t === -1 ? "" : o.substring(0, t);
1407
1407
  }
1408
- function qe(o, e, t = ".") {
1408
+ function Ye(o, e, t = ".") {
1409
1409
  return re(e) ? o : o.startsWith(e + t) ? o.substring(e.length + t.length) : o;
1410
1410
  }
1411
- function Ye(o, e = 0, t = 1, s = ".") {
1411
+ function Xe(o, e = 0, t = 1, s = ".") {
1412
1412
  return o.split(s).slice(e, e + t).join(s);
1413
1413
  }
1414
1414
  function Ms(o, e) {
@@ -1418,7 +1418,7 @@ function U(o, e) {
1418
1418
  return o[e];
1419
1419
  }
1420
1420
  function Os(o = {}) {
1421
- const e = o.idMember, t = o.pathMember, s = o.getPathCallback, i = o.parentPathMember, r = o.levelMember, a = o.hasChildrenMember, n = o.isSelectableMember, l = o.getIsSelectableCallback, d = o.treeId || "multiselect-tree", c = o.orderMember, m = o.getDisplayValueCallback, u = re(i), p = re(r), b = re(a), v = re(n), f = "x", g = o.treePathSeparator || ".", _ = Ke();
1421
+ const e = o.idMember, t = o.pathMember, s = o.getPathCallback, i = o.parentPathMember, r = o.levelMember, a = o.hasChildrenMember, n = o.isSelectableMember, l = o.getIsSelectableCallback, c = o.treeId || "multiselect-tree", d = o.orderMember, p = o.getDisplayValueCallback, u = re(i), m = re(r), b = re(a), v = re(n), f = "x", g = o.treePathSeparator || ".", _ = qe();
1422
1422
  let y = 0, w = null;
1423
1423
  const M = (I) => s ? s(I) : t ? U(I, t) : void 0, E = {
1424
1424
  treePathSeparator: g,
@@ -1445,15 +1445,15 @@ function Os(o = {}) {
1445
1445
  I = I || [], _.children = {}, y = 0, w = null;
1446
1446
  const C = [];
1447
1447
  let x = I.map((S, A) => {
1448
- const k = Ke();
1449
- k.treeId = d, k.id = e ? U(S, e) : void 0;
1448
+ const k = qe();
1449
+ k.treeId = c, k.id = e ? U(S, e) : void 0;
1450
1450
  const P = M(S);
1451
- return P == null || P === "" || typeof P != "string" ? (C.push(`index ${A}`), null) : (k.path = P, (k.id === void 0 || k.id === -1) && (k.id = P), u ? k.parentPath = Is(k.path, g) : k.parentPath = U(S, i), k.pathSegment = Ye(
1452
- qe(k.path, k.parentPath ?? "", g),
1451
+ return P == null || P === "" || typeof P != "string" ? (C.push(`index ${A}`), null) : (k.path = P, (k.id === void 0 || k.id === -1) && (k.id = P), u ? k.parentPath = Is(k.path, g) : k.parentPath = U(S, i), k.pathSegment = Xe(
1452
+ Ye(k.path, k.parentPath ?? "", g),
1453
1453
  0,
1454
1454
  1,
1455
1455
  g
1456
- ), p ? k.level = Ms(k.path, g) : k.level = U(S, r), b || (k.hasChildren = U(S, a)), k.data = S, k);
1456
+ ), m ? k.level = Ms(k.path, g) : k.level = U(S, r), b || (k.hasChildren = U(S, a)), k.data = S, k);
1457
1457
  }).filter((S) => S !== null);
1458
1458
  o.isSorted || (o.sortCallback ? x = o.sortCallback(x) : x = se(x));
1459
1459
  for (const S of x)
@@ -1467,7 +1467,7 @@ function Os(o = {}) {
1467
1467
  S.isSelectable = A == null ? !0 : !!A;
1468
1468
  }
1469
1469
  C.length > 0 && console.warn(
1470
- `[ltree ${d}] ${C.length} option(s) had an invalid path and were skipped (pathMember="${t}"). Offending: ${C.slice(0, 5).join(", ")}` + (C.length > 5 ? ", …" : "")
1470
+ `[ltree ${c}] ${C.length} option(s) had an invalid path and were skipped (pathMember="${t}"). Offending: ${C.slice(0, 5).join(", ")}` + (C.length > 5 ? ", …" : "")
1471
1471
  );
1472
1472
  },
1473
1473
  getNodeByPath(I, C) {
@@ -1488,8 +1488,8 @@ function Os(o = {}) {
1488
1488
  const x = E.getNodeByPath(I);
1489
1489
  if (!x)
1490
1490
  return `Node: ${C.path} - Could not find parent node: ${I}`;
1491
- p && (C.level = (x.level || 0) + 1);
1492
- const S = f + Ye(qe(C.path, I, g), 0, 1, g);
1491
+ m && (C.level = (x.level || 0) + 1);
1492
+ const S = f + Xe(Ye(C.path, I, g), 0, 1, g);
1493
1493
  return x.children.hasOwnProperty(S) || (x.children[S] = C, b && !x.hasChildren && (x.hasChildren = !0), y = Math.max(y, C.level || 0)), null;
1494
1494
  }
1495
1495
  function se(I) {
@@ -1498,11 +1498,11 @@ function Os(o = {}) {
1498
1498
  if (S !== A) return S - A;
1499
1499
  if (C.parentPath !== x.parentPath)
1500
1500
  return C.parentPath ? x.parentPath ? C.parentPath.localeCompare(x.parentPath) : 1 : -1;
1501
- if (c && C.data && x.data) {
1502
- const k = U(C.data, c) ?? 0, P = U(x.data, c) ?? 0;
1501
+ if (d && C.data && x.data) {
1502
+ const k = U(C.data, d) ?? 0, P = U(x.data, d) ?? 0;
1503
1503
  if (k !== P) return k - P;
1504
1504
  }
1505
- return m ? m(C).localeCompare(m(x)) : C.path.localeCompare(x.path);
1505
+ return p ? p(C).localeCompare(p(x)) : C.path.localeCompare(x.path);
1506
1506
  });
1507
1507
  }
1508
1508
  return E;
@@ -1510,23 +1510,23 @@ function Os(o = {}) {
1510
1510
  function As(o, e) {
1511
1511
  const t = /* @__PURE__ */ new Map(), s = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Set(), r = (l) => String(e(l.data)), a = (l) => {
1512
1512
  t.set(r(l), l);
1513
- const d = [];
1514
- for (const m of Object.values(l.children))
1515
- d.push(...a(m));
1516
- let c;
1517
- return d.length > 0 ? c = d : l.isSelectable !== !1 ? (c = [r(l)], i.add(l.path)) : c = [], s.set(l.path, c), c;
1513
+ const c = [];
1514
+ for (const p of Object.values(l.children))
1515
+ c.push(...a(p));
1516
+ let d;
1517
+ return c.length > 0 ? d = c : l.isSelectable !== !1 ? (d = [r(l)], i.add(l.path)) : d = [], s.set(l.path, d), d;
1518
1518
  }, n = o.tree;
1519
1519
  for (const l of n) a(l);
1520
1520
  return { nodeByValue: t, atomsUnder: s, atomPaths: i, roots: n };
1521
1521
  }
1522
- function De(o, e, t) {
1522
+ function ze(o, e, t) {
1523
1523
  const s = o.atomsUnder.get(e.path);
1524
1524
  if (!s || s.length === 0) return "unchecked";
1525
1525
  let i = 0;
1526
1526
  for (const r of s) t.has(r) && i++;
1527
1527
  return i === 0 ? "unchecked" : i === s.length ? "checked" : "indeterminate";
1528
1528
  }
1529
- function Xe(o, e) {
1529
+ function we(o, e) {
1530
1530
  const t = /* @__PURE__ */ new Set();
1531
1531
  for (const s of e) {
1532
1532
  const i = o.nodeByValue.get(String(s));
@@ -1536,7 +1536,7 @@ function Xe(o, e) {
1536
1536
  return t;
1537
1537
  }
1538
1538
  function Ps(o, e, t) {
1539
- const s = o.atomsUnder.get(e.path) ?? [], i = new Set(t), r = De(o, e, t), a = [], n = [];
1539
+ const s = o.atomsUnder.get(e.path) ?? [], i = new Set(t), r = ze(o, e, t), a = [], n = [];
1540
1540
  if (r === "checked")
1541
1541
  for (const l of s) i.delete(l) && n.push(l);
1542
1542
  else
@@ -1545,24 +1545,24 @@ function Ps(o, e, t) {
1545
1545
  }
1546
1546
  function Ls(o, e, t, s) {
1547
1547
  const i = (n) => String(s(n.data)), r = [], a = (n) => {
1548
- const l = De(o, n, e);
1548
+ const l = ze(o, n, e);
1549
1549
  if (l === "unchecked") return;
1550
- const d = n.isSelectable !== !1, c = Object.values(n.children);
1550
+ const c = n.isSelectable !== !1, d = Object.values(n.children);
1551
1551
  if (t === "leaves") {
1552
1552
  o.atomPaths.has(n.path) && l === "checked" && r.push(i(n));
1553
- for (const m of c) a(m);
1553
+ for (const p of d) a(p);
1554
1554
  return;
1555
1555
  }
1556
1556
  if (t === "all") {
1557
- l === "checked" && d && r.push(i(n));
1558
- for (const m of c) a(m);
1557
+ l === "checked" && c && r.push(i(n));
1558
+ for (const p of d) a(p);
1559
1559
  return;
1560
1560
  }
1561
- if (l === "checked" && d) {
1561
+ if (l === "checked" && c) {
1562
1562
  r.push(i(n));
1563
1563
  return;
1564
1564
  }
1565
- for (const m of c) a(m);
1565
+ for (const p of d) a(p);
1566
1566
  };
1567
1567
  for (const n of o.roots) a(n);
1568
1568
  return r;
@@ -1886,7 +1886,7 @@ class zs {
1886
1886
  }
1887
1887
  /** Refresh the derived checked-atom set from the emitted `selectedValues`. */
1888
1888
  refreshCascadeAtoms() {
1889
- this.isCascadeMode() && this.cascadeIndex && (this.cascadeCheckedAtoms = Xe(this.cascadeIndex, this.selectedValues));
1889
+ this.isCascadeMode() && this.cascadeIndex && (this.cascadeCheckedAtoms = we(this.cascadeIndex, this.selectedValues));
1890
1890
  }
1891
1891
  /**
1892
1892
  * Toggle a tree node in cascade mode: flip its whole subtree, re-project the
@@ -1894,21 +1894,31 @@ class zs {
1894
1894
  * so badges / form / change events reflect the policy (rolled-up branches, etc.).
1895
1895
  */
1896
1896
  toggleTreeCascade(e) {
1897
- var c;
1898
- const t = this.cascadeIndex, s = Xe(t, this.selectedValues), { checkedAtoms: i } = Ps(t, e, s), r = Ls(
1897
+ const t = this.cascadeIndex, s = we(t, this.selectedValues), { checkedAtoms: i } = Ps(t, e, s);
1898
+ this.commitCascadeAtoms(i);
1899
+ }
1900
+ /**
1901
+ * Given a checked-atom set, project it to emitted values under the active
1902
+ * policy, diff it against the current selection, and commit. Shared by every
1903
+ * cascade entry point (node toggle, Select All) so they all emit the same
1904
+ * policy-projected shape (e.g. a full subtree rolls up to one value).
1905
+ */
1906
+ commitCascadeAtoms(e) {
1907
+ var l;
1908
+ const t = this.cascadeIndex, s = Ls(
1899
1909
  t,
1900
- i,
1910
+ e,
1901
1911
  this.cascadePolicy(),
1902
- (m) => String(this.getItemValue(m))
1903
- ), a = new Set(r), n = [], l = [];
1904
- for (const [m, u] of this.selectedOptions)
1905
- a.has(m) || l.push(u);
1906
- const d = /* @__PURE__ */ new Map();
1907
- for (const m of r) {
1908
- const p = ((c = t.nodeByValue.get(m)) == null ? void 0 : c.data) ?? this.selectedOptions.get(m);
1909
- p !== void 0 && (d.set(m, p), this.selectedValues.has(m) || n.push(p));
1912
+ (c) => String(this.getItemValue(c))
1913
+ ), i = new Set(s), r = [], a = [];
1914
+ for (const [c, d] of this.selectedOptions)
1915
+ i.has(c) || a.push(d);
1916
+ const n = /* @__PURE__ */ new Map();
1917
+ for (const c of s) {
1918
+ const p = ((l = t.nodeByValue.get(c)) == null ? void 0 : l.data) ?? this.selectedOptions.get(c);
1919
+ p !== void 0 && (n.set(c, p), this.selectedValues.has(c) || r.push(p));
1910
1920
  }
1911
- this.selectedValues = a, this.selectedOptions = d, this.cascadeCheckedAtoms = i, this.commit({ added: n, removed: l });
1921
+ this.selectedValues = i, this.selectedOptions = n, this.cascadeCheckedAtoms = e, this.commit({ added: r, removed: a });
1912
1922
  }
1913
1923
  /**
1914
1924
  * Derive `treeNodes` + `filteredOptions` from the full tree, applying the
@@ -1929,8 +1939,8 @@ class zs {
1929
1939
  for (const a of e)
1930
1940
  if (this.getItemSearchValue(a.data).toLowerCase().includes(t)) {
1931
1941
  const l = a.path.split(i);
1932
- for (let d = 1; d <= l.length; d++)
1933
- r.add(l.slice(0, d).join(i));
1942
+ for (let c = 1; c <= l.length; c++)
1943
+ r.add(l.slice(0, c).join(i));
1934
1944
  }
1935
1945
  s = e.filter((a) => r.has(a.path));
1936
1946
  }
@@ -1965,8 +1975,8 @@ class zs {
1965
1975
  for (const n of t)
1966
1976
  if (i.has(String(this.getItemValue(n.data)))) {
1967
1977
  const l = n.path.split(s);
1968
- for (let d = 1; d <= l.length; d++)
1969
- r.add(l.slice(0, d).join(s));
1978
+ for (let c = 1; c <= l.length; c++)
1979
+ r.add(l.slice(0, c).join(s));
1970
1980
  }
1971
1981
  const a = t.filter((n) => r.has(n.path));
1972
1982
  this.treeNodes = a, this.filteredOptions = a.map((n) => n.data);
@@ -2068,7 +2078,7 @@ class zs {
2068
2078
  }
2069
2079
  const e = this.options.optionHeight ?? 50, t = this.options.virtualScrollBuffer ?? 10;
2070
2080
  requestAnimationFrame(() => {
2071
- this.optionsContainer && (this.virtualScroll ? this.virtualScroll.setItems(this.filteredOptions) : this.virtualScroll = new Ge({
2081
+ this.optionsContainer && (this.virtualScroll ? this.virtualScroll.setItems(this.filteredOptions) : this.virtualScroll = new Ke({
2072
2082
  container: this.optionsContainer,
2073
2083
  itemHeight: e,
2074
2084
  items: this.filteredOptions,
@@ -2098,39 +2108,39 @@ class zs {
2098
2108
  const e = this.options.actionButtons;
2099
2109
  if (!this.options.isMultipleEnabled || !e || e.length === 0) return "";
2100
2110
  const t = this.options.actionsPosition === "bottom" ? "bottom" : "top", s = this.options.actionsAlign ?? "stretch", i = ` ms__actions--${t}`, r = this.options.isActionsSticky ? " ms__actions--sticky" : "", a = this.options.actionsLayout === "wrap" ? " ms__actions--wrap" : "", n = ` ms__actions--align-${s}`, l = /* @__PURE__ */ new Map();
2101
- if (e.forEach((c, m) => {
2102
- if (!(c.getIsVisibleCallback ? c.getIsVisibleCallback(this) : c.isVisible ?? !0)) return;
2103
- let p;
2104
- c.getIsDisabledCallback ? p = c.getIsDisabledCallback(this) : c.isDisabled !== void 0 ? p = c.isDisabled : p = this.getBuiltInActionDisabled(c.action);
2105
- const b = p ? " disabled" : "", v = c.getTextCallback ? c.getTextCallback(this) : c.text;
2111
+ if (e.forEach((d, p) => {
2112
+ if (!(d.getIsVisibleCallback ? d.getIsVisibleCallback(this) : d.isVisible ?? !0)) return;
2113
+ let m;
2114
+ d.getIsDisabledCallback ? m = d.getIsDisabledCallback(this) : d.isDisabled !== void 0 ? m = d.isDisabled : m = this.getBuiltInActionDisabled(d.action);
2115
+ const b = m ? " disabled" : "", v = d.getTextCallback ? d.getTextCallback(this) : d.text;
2106
2116
  let f = "";
2107
- if (c.getClassCallback) {
2108
- const y = c.getClassCallback(this);
2117
+ if (d.getClassCallback) {
2118
+ const y = d.getClassCallback(this);
2109
2119
  f = Array.isArray(y) ? ` ${y.join(" ")}` : y ? ` ${y}` : "";
2110
- } else c.cssClass && (f = ` ${c.cssClass}`);
2111
- const g = Math.max(1, Math.floor(c.row ?? 1)), _ = `<button type="button"${b} class="ms__action-btn${f}" data-action="${c.action}" data-button-index="${m}">${v}</button>`;
2120
+ } else d.cssClass && (f = ` ${d.cssClass}`);
2121
+ const g = Math.max(1, Math.floor(d.row ?? 1)), _ = `<button type="button"${b} class="ms__action-btn${f}" data-action="${d.action}" data-button-index="${p}">${v}</button>`;
2112
2122
  l.has(g) || l.set(g, []), l.get(g).push(_);
2113
2123
  }), l.size === 0) return "";
2114
- const d = Array.from(l.keys()).sort((c, m) => c - m).map((c) => `<div class="ms__actions-row" data-row="${c}">${l.get(c).join("")}</div>`).join("");
2115
- return `<div class="ms__actions${i}${r}${a}${n}">${d}</div>`;
2124
+ const c = Array.from(l.keys()).sort((d, p) => d - p).map((d) => `<div class="ms__actions-row" data-row="${d}">${l.get(d).join("")}</div>`).join("");
2125
+ return `<div class="ms__actions${i}${r}${a}${n}">${c}</div>`;
2116
2126
  }
2117
2127
  renderOption(e, t) {
2118
- const s = this.getItemValue(e), i = this.getItemDisplayValue(e), r = this.getItemIcon(e), a = this.getItemSubtitle(e), n = this.getItemDisabled(e), l = this.selectedValues.has(String(s)), d = t === this.focusedIndex, c = this.matchingIndices.has(t), m = ["ms__option"];
2119
- l && m.push("ms__option--selected"), d && m.push("ms__option--focused"), c && m.push("ms__option--matched"), n && m.push("ms__option--disabled");
2128
+ const s = this.getItemValue(e), i = this.getItemDisplayValue(e), r = this.getItemIcon(e), a = this.getItemSubtitle(e), n = this.getItemDisabled(e), l = this.selectedValues.has(String(s)), c = t === this.focusedIndex, d = this.matchingIndices.has(t), p = ["ms__option"];
2129
+ l && p.push("ms__option--selected"), c && p.push("ms__option--focused"), d && p.push("ms__option--matched"), n && p.push("ms__option--disabled");
2120
2130
  const u = this.options.checkboxAlign && this.options.checkboxAlign !== "center" ? ` data-checkbox-align="${this.options.checkboxAlign}"` : "";
2121
- let p = `<div class="${m.join(" ")}" data-value="${s}" data-index="${t}"${u}>`;
2122
- if (this.options.isCheckboxesShown && this.options.isMultipleEnabled && (p += `<input type="checkbox" class="ms__checkbox" ${l ? "checked" : ""} ${n ? "disabled" : ""}>`), p += '<div class="ms__option-content">', this.options.renderOptionContentCallback) {
2131
+ let m = `<div class="${p.join(" ")}" data-value="${s}" data-index="${t}"${u}>`;
2132
+ if (this.options.isCheckboxesShown && this.options.isMultipleEnabled && (m += `<input type="checkbox" class="ms__checkbox" ${l ? "checked" : ""} ${n ? "disabled" : ""}>`), m += '<div class="ms__option-content">', this.options.renderOptionContentCallback) {
2123
2133
  const b = {
2124
2134
  index: t,
2125
2135
  isSelected: l,
2126
- isFocused: d,
2127
- isMatched: c,
2136
+ isFocused: c,
2137
+ isMatched: d,
2128
2138
  isDisabled: n
2129
2139
  }, v = this.options.renderOptionContentCallback(e, b);
2130
- typeof v == "string" ? p += v : p += v.outerHTML;
2140
+ typeof v == "string" ? m += v : m += v.outerHTML;
2131
2141
  } else
2132
- r && (p += `<span class="ms__option-icon">${r}</span>`), p += '<div class="ms__option-text">', p += `<div class="ms__option-title">${this.highlightMatch(i, this.searchTerm)}</div>`, a && (p += `<div class="ms__option-subtitle">${a}</div>`), p += "</div>";
2133
- return p += "</div>", p += "</div>", p;
2142
+ r && (m += `<span class="ms__option-icon">${r}</span>`), m += '<div class="ms__option-text">', m += `<div class="ms__option-title">${this.highlightMatch(i, this.searchTerm)}</div>`, a && (m += `<div class="ms__option-subtitle">${a}</div>`), m += "</div>";
2143
+ return m += "</div>", m += "</div>", m;
2134
2144
  }
2135
2145
  /**
2136
2146
  * Render a single tree-mode row. Separate from `renderOption`: a tree row is
@@ -2140,15 +2150,15 @@ class zs {
2140
2150
  * chevron/toggle — every node is just a normal, selectable option.
2141
2151
  */
2142
2152
  renderTreeNode(e, t) {
2143
- const s = e.data, i = this.getItemValue(s), r = this.getItemDisplayValue(s), a = this.getItemIcon(s), n = this.getItemSubtitle(s), l = this.getItemDisabled(s), d = this.isCascadeMode() && this.cascadeIndex, c = d ? De(this.cascadeIndex, e, this.cascadeCheckedAtoms) : null, m = d ? c === "checked" : this.selectedValues.has(String(i)), u = c === "indeterminate", p = t === this.focusedIndex, b = e.isSelectable !== !1, v = e.level ?? 1, f = Math.max(0, v - 1), g = ["ms__option", "ms__option--tree"];
2144
- g.push(e.hasChildren ? "ms__option--tree-branch" : "ms__option--tree-leaf"), m && g.push("ms__option--selected"), u && g.push("ms__option--indeterminate"), p && g.push("ms__option--focused"), l && g.push("ms__option--disabled"), b || g.push("ms__option--tree-unselectable");
2153
+ const s = e.data, i = this.getItemValue(s), r = this.getItemDisplayValue(s), a = this.getItemIcon(s), n = this.getItemSubtitle(s), l = this.getItemDisabled(s), c = this.isCascadeMode() && this.cascadeIndex, d = c ? ze(this.cascadeIndex, e, this.cascadeCheckedAtoms) : null, p = c ? d === "checked" : this.selectedValues.has(String(i)), u = d === "indeterminate", m = t === this.focusedIndex, b = e.isSelectable !== !1, v = e.level ?? 1, f = Math.max(0, v - 1), g = ["ms__option", "ms__option--tree"];
2154
+ g.push(e.hasChildren ? "ms__option--tree-branch" : "ms__option--tree-leaf"), p && g.push("ms__option--selected"), u && g.push("ms__option--indeterminate"), m && g.push("ms__option--focused"), l && g.push("ms__option--disabled"), b || g.push("ms__option--tree-unselectable");
2145
2155
  const _ = this.options.checkboxAlign && this.options.checkboxAlign !== "center" ? ` data-checkbox-align="${this.options.checkboxAlign}"` : "", y = b ? "" : ' data-selectable="false"';
2146
2156
  let w = `<div class="${g.join(" ")}" data-value="${i}" data-index="${t}" data-path="${e.path}" data-level="${v}" style="--ms-tree-depth: ${f};"${_}${y}>`;
2147
- if (this.options.isCheckboxesShown && this.options.isMultipleEnabled && b && (w += `<input type="checkbox" class="${u ? "ms__checkbox ms__checkbox--indeterminate" : "ms__checkbox"}" ${m ? "checked" : ""}${u ? ' aria-checked="mixed"' : ""} ${l ? "disabled" : ""}>`), w += '<div class="ms__option-content">', this.options.renderOptionContentCallback) {
2157
+ if (this.options.isCheckboxesShown && this.options.isMultipleEnabled && b && (w += `<input type="checkbox" class="${u ? "ms__checkbox ms__checkbox--indeterminate" : "ms__checkbox"}" ${p ? "checked" : ""}${u ? ' aria-checked="mixed"' : ""} ${l ? "disabled" : ""}>`), w += '<div class="ms__option-content">', this.options.renderOptionContentCallback) {
2148
2158
  const M = {
2149
2159
  index: t,
2150
- isSelected: m,
2151
- isFocused: p,
2160
+ isSelected: p,
2161
+ isFocused: m,
2152
2162
  isMatched: !1,
2153
2163
  isDisabled: l
2154
2164
  }, E = this.options.renderOptionContentCallback(s, M);
@@ -2205,21 +2215,21 @@ class zs {
2205
2215
  this.badgesContainer.className = `ms__badges ms__badges--${this.effectiveBadgesPosition}`, this.badgesContainer.innerHTML = e.map((r) => this.renderBadgeHTML(r, { displayMode: "badges", isInPopover: !1 })).join("");
2206
2216
  else if (s === "partial") {
2207
2217
  this.badgesContainer.className = `ms__badges ms__badges--${this.effectiveBadgesPosition}`;
2208
- const r = this.options.badgesMaxVisible || 3, a = e.slice(0, r), n = t - r, l = a.map((c) => this.renderBadgeHTML(c, { displayMode: "partial", isInPopover: !1 })).join("");
2209
- let d = "";
2210
- n > 0 && (d = `
2218
+ const r = this.options.badgesMaxVisible || 3, a = e.slice(0, r), n = t - r, l = a.map((d) => this.renderBadgeHTML(d, { displayMode: "partial", isInPopover: !1 })).join("");
2219
+ let c = "";
2220
+ n > 0 && (c = `
2211
2221
  <div class="ms__badge ms__badge--counter ms__badge--more" data-action="show-selected">
2212
2222
  <span class="ms__badge-text">${this.options.getCounterCallback ? this.options.getCounterCallback(t, n) : `+${n} more`}</span>
2213
2223
  <button type="button" class="ms__badge-remove" data-action="remove-hidden" aria-label="Remove ${n} hidden items"></button>
2214
2224
  </div>
2215
- `), this.badgesContainer.innerHTML = l + d;
2225
+ `), this.badgesContainer.innerHTML = l + c;
2216
2226
  } else if (s === "compact")
2217
2227
  if (this.badgesContainer.className = `ms__badges ms__badges--${this.effectiveBadgesPosition}`, t > 0) {
2218
2228
  const r = e[0], a = this.getItemBadgeDisplayValue(r), n = t - 1;
2219
2229
  let l = a;
2220
2230
  if (n > 0) {
2221
- const d = this.options.getCounterCallback ? this.options.getCounterCallback(t, n) : `+${n} more`;
2222
- l = `${a} (${d})`;
2231
+ const c = this.options.getCounterCallback ? this.options.getCounterCallback(t, n) : `+${n} more`;
2232
+ l = `${a} (${c})`;
2223
2233
  }
2224
2234
  this.badgesContainer.innerHTML = `
2225
2235
  <div class="ms__badge" data-action="show-selected">
@@ -2428,7 +2438,7 @@ class zs {
2428
2438
  if (e.preventDefault(), e.stopPropagation(), i.dataset.action === "remove-hidden") {
2429
2439
  L.debug(`[${this.instanceId}] Remove hidden items button clicked`);
2430
2440
  const l = this.options.badgesMaxVisible || 3;
2431
- Array.from(this.selectedOptions.values()).slice(l).forEach((m) => this.interactiveDeselect(m));
2441
+ Array.from(this.selectedOptions.values()).slice(l).forEach((p) => this.interactiveDeselect(p));
2432
2442
  return;
2433
2443
  }
2434
2444
  const a = i.dataset.value, n = this.selectedOptions.get(a);
@@ -2585,6 +2595,13 @@ class zs {
2585
2595
  this.selectedValues.delete(s), this.selectedOptions.delete(s), this.commit({ removed: [e] });
2586
2596
  }
2587
2597
  selectAll() {
2598
+ if (this.isCascadeMode() && this.cascadeIndex) {
2599
+ const t = this.cascadeIndex, s = new Set(we(t, this.selectedValues));
2600
+ for (const i of this.treeNodes)
2601
+ t.atomPaths.has(i.path) && (this.getItemDisabled(i.data) || s.add(String(this.getItemValue(i.data))));
2602
+ this.commitCascadeAtoms(s);
2603
+ return;
2604
+ }
2588
2605
  const e = [];
2589
2606
  this.filteredOptions.forEach((t, s) => {
2590
2607
  if (this.getItemDisabled(t) || !this.isIndexSelectable(s)) return;
@@ -2624,21 +2641,21 @@ class zs {
2624
2641
  ...dt,
2625
2642
  getOffsetParent: () => Es(this.input)
2626
2643
  };
2627
- return Ce(this.input, e, () => {
2644
+ return Se(this.input, e, () => {
2628
2645
  var l;
2629
2646
  e.style.width = `${this.input.offsetWidth}px`, this.options.dropdownMinWidth && (e.style.minWidth = this.options.dropdownMinWidth), t.applyMaxWidth && this.options.dropdownMaxWidth && (e.style.maxWidth = this.options.dropdownMaxWidth);
2630
2647
  const i = ((l = t.isLocked) == null ? void 0 : l.call(t)) ?? !0, r = t.getPlacement(), a = i && r ? r : "bottom-start", n = [
2631
- Se(4),
2648
+ Te(4),
2632
2649
  ...i && r ? [] : [mt()],
2633
- Te({ padding: 8 })
2650
+ Ie({ padding: 8 })
2634
2651
  ];
2635
- Ie(this.input, e, { placement: a, strategy: "fixed", middleware: n, platform: s }).then(({ x: d, y: c, placement: m }) => {
2652
+ Me(this.input, e, { placement: a, strategy: "fixed", middleware: n, platform: s }).then(({ x: c, y: d, placement: p }) => {
2636
2653
  var u;
2637
- r || t.setPlacement(m), Object.assign(e.style, {
2654
+ r || t.setPlacement(p), Object.assign(e.style, {
2638
2655
  position: "fixed",
2639
- left: `${d}px`,
2640
- top: `${c}px`
2641
- }), this.verifyPanelLanded(e, d, c), (u = t.afterPosition) == null || u.call(t);
2656
+ left: `${c}px`,
2657
+ top: `${d}px`
2658
+ }), this.verifyPanelLanded(e, c, d), (u = t.afterPosition) == null || u.call(t);
2642
2659
  });
2643
2660
  });
2644
2661
  }
@@ -2658,9 +2675,9 @@ class zs {
2658
2675
  const i = e.getBoundingClientRect(), r = i.x - t, a = i.y - s;
2659
2676
  if (Math.abs(r) < 1 && Math.abs(a) < 1) return;
2660
2677
  this.positioningDriftWarned = !0;
2661
- const n = Vs(this.input, r, a), l = n ? `<${n.tagName.toLowerCase()}${n.id ? "#" + n.id : ""}${typeof n.className == "string" && n.className ? "." + n.className.split(/\s+/).filter(Boolean).slice(0, 2).join(".") : ""}>` : "an ancestor element (could not auto-identify)", d = n ? Ds(n) : "";
2678
+ const n = Vs(this.input, r, a), l = n ? `<${n.tagName.toLowerCase()}${n.id ? "#" + n.id : ""}${typeof n.className == "string" && n.className ? "." + n.className.split(/\s+/).filter(Boolean).slice(0, 2).join(".") : ""}>` : "an ancestor element (could not auto-identify)", c = n ? Ds(n) : "";
2662
2679
  console.warn(
2663
- `[@keenmate/web-multiselect] Dropdown panel rendered ${r.toFixed(0)}px / ${a.toFixed(0)}px away from where the library positioned it. Most likely culprit: ${l}` + (d ? ` (has ${d})` : "") + ".\nAn ancestor of <web-multiselect> establishes a fixed-positioning containing block that the library's heuristic doesn't recognize. Fix on your side: replace the property with `transform: translateZ(0)` on that ancestor, OR move the trigger out of that ancestor's subtree. If neither is acceptable, please file an issue at https://github.com/keenmate/web-multiselect/issues with the ancestor's computed CSS."
2680
+ `[@keenmate/web-multiselect] Dropdown panel rendered ${r.toFixed(0)}px / ${a.toFixed(0)}px away from where the library positioned it. Most likely culprit: ${l}` + (c ? ` (has ${c})` : "") + ".\nAn ancestor of <web-multiselect> establishes a fixed-positioning containing block that the library's heuristic doesn't recognize. Fix on your side: replace the property with `transform: translateZ(0)` on that ancestor, OR move the trigger out of that ancestor's subtree. If neither is acceptable, please file an issue at https://github.com/keenmate/web-multiselect/issues with the ancestor's computed CSS."
2664
2681
  );
2665
2682
  }
2666
2683
  positionDropdown() {
@@ -2677,18 +2694,18 @@ class zs {
2677
2694
  });
2678
2695
  }
2679
2696
  positionHint() {
2680
- this.hint && (this.hintCleanup && this.hintCleanup(), this.hintCleanup = Ce(
2697
+ this.hint && (this.hintCleanup && this.hintCleanup(), this.hintCleanup = Se(
2681
2698
  this.input,
2682
2699
  this.hint,
2683
2700
  () => {
2684
2701
  let e = "top-start";
2685
- this.dropdownPlacement && (this.dropdownPlacement.startsWith("bottom") ? e = this.dropdownPlacement.replace("bottom", "top") : this.dropdownPlacement.startsWith("top") && (e = this.dropdownPlacement.replace("top", "bottom"))), Ie(this.input, this.hint, {
2702
+ this.dropdownPlacement && (this.dropdownPlacement.startsWith("bottom") ? e = this.dropdownPlacement.replace("bottom", "top") : this.dropdownPlacement.startsWith("top") && (e = this.dropdownPlacement.replace("top", "bottom"))), Me(this.input, this.hint, {
2686
2703
  placement: e,
2687
2704
  strategy: "fixed",
2688
2705
  middleware: [
2689
- Se(4),
2706
+ Te(4),
2690
2707
  // Don't use flip() - we want hint to stay opposite of dropdown
2691
- Te({ padding: 8 })
2708
+ Ie({ padding: 8 })
2692
2709
  ]
2693
2710
  }).then(({ x: t, y: s }) => {
2694
2711
  Object.assign(this.hint.style, {
@@ -2773,7 +2790,7 @@ class zs {
2773
2790
  if (!this.selectedPopoverContainer) return;
2774
2791
  const r = (this.options.badgeHeight ?? 36) + 4, a = this.options.virtualScrollBuffer ?? 10;
2775
2792
  requestAnimationFrame(() => {
2776
- this.selectedPopoverContainer && (this.selectedPopoverVirtualScroll ? this.selectedPopoverVirtualScroll.setItems(e) : this.selectedPopoverVirtualScroll = new Ge({
2793
+ this.selectedPopoverContainer && (this.selectedPopoverVirtualScroll ? this.selectedPopoverVirtualScroll.setItems(e) : this.selectedPopoverVirtualScroll = new Ke({
2777
2794
  container: this.selectedPopoverContainer,
2778
2795
  itemHeight: r,
2779
2796
  items: e,
@@ -2799,18 +2816,18 @@ class zs {
2799
2816
  let i;
2800
2817
  const r = t.isInPopover ? this.options.renderSelectedItemContentCallback : void 0;
2801
2818
  if (r) {
2802
- const d = r(e);
2803
- i = typeof d == "string" ? d : d.outerHTML;
2819
+ const c = r(e);
2820
+ i = typeof c == "string" ? c : c.outerHTML;
2804
2821
  } else if (this.options.renderBadgeContentCallback) {
2805
- const d = this.options.renderBadgeContentCallback(e, t);
2806
- i = typeof d == "string" ? d : d.outerHTML;
2822
+ const c = this.options.renderBadgeContentCallback(e, t);
2823
+ i = typeof c == "string" ? c : c.outerHTML;
2807
2824
  } else
2808
2825
  i = this.getItemBadgeDisplayValue(e);
2809
2826
  const a = t.isInPopover ? this.options.getSelectedItemClassCallback || this.options.getBadgeClassCallback : this.options.getBadgeClassCallback;
2810
2827
  let n = "ms__badge";
2811
2828
  if (a) {
2812
- const d = a(e), c = Array.isArray(d) ? d : [d];
2813
- n += " " + c.filter((m) => m).join(" ");
2829
+ const c = a(e), d = Array.isArray(c) ? c : [c];
2830
+ n += " " + d.filter((p) => p).join(" ");
2814
2831
  }
2815
2832
  const l = this.getItemBadgeDisplayValue(e);
2816
2833
  return `
@@ -2867,11 +2884,20 @@ class zs {
2867
2884
  getSelected() {
2868
2885
  return Array.from(this.selectedOptions.values());
2869
2886
  }
2870
- setSelected(e) {
2871
- this.selectedValues = new Set(e.map((t) => String(t))), this.selectedOptions.clear(), e.forEach((t) => {
2872
- const s = String(t), i = this.allOptions.find((r) => String(this.getItemValue(r)) === s);
2873
- i && this.selectedOptions.set(s, i);
2874
- }), this.renderDropdown(), this.renderBadges(), this.updateHiddenInput();
2887
+ /**
2888
+ * Set the selection programmatically. **Silent by default** it does not fire
2889
+ * `select`/`deselect`/`change` (so restoring saved state, cascade resets, or a
2890
+ * server-authoritative correction can't loop back or trip "user changed it"
2891
+ * handlers). Pass `{ notify: true }` to announce the result as a **single
2892
+ * aggregate `change`** — for a deliberate user gesture (e.g. an action button)
2893
+ * that should reach the same listeners a manual pick does, without the per-item
2894
+ * `select`/`deselect` flood a bulk change would otherwise cause.
2895
+ */
2896
+ setSelected(e, t = {}) {
2897
+ this.selectedValues = new Set(e.map((s) => String(s))), this.selectedOptions.clear(), e.forEach((s) => {
2898
+ const i = String(s), r = this.allOptions.find((a) => String(this.getItemValue(a)) === i);
2899
+ r && this.selectedOptions.set(i, r);
2900
+ }), this.renderDropdown(), this.renderBadges(), this.updateHiddenInput(), t.notify && this.options.onChange && this.options.onChange(this.getSelected());
2875
2901
  }
2876
2902
  /**
2877
2903
  * Merge a partial config update into the live picker without tearing down the DOM.
@@ -2963,33 +2989,33 @@ ${s}` : t;
2963
2989
  if (s.querySelectorAll(".ms__badge:not(.ms__badge--more)").forEach((a) => {
2964
2990
  const n = a.querySelector(".ms__badge-remove");
2965
2991
  if (!n) return;
2966
- const l = n.dataset.value, d = this.selectedOptions.get(l);
2967
- if (!d) return;
2968
- const c = `${i}${l}`, m = `${i}${l}-remove`, u = a.querySelector(".ms__badge-text");
2992
+ const l = n.dataset.value, c = this.selectedOptions.get(l);
2993
+ if (!c) return;
2994
+ const d = `${i}${l}`, p = `${i}${l}-remove`, u = a.querySelector(".ms__badge-text");
2969
2995
  u && this.spawnTooltip({
2970
- id: c,
2996
+ id: d,
2971
2997
  trigger: u,
2972
- content: this.buildBadgeTooltipContent(d)
2998
+ content: this.buildBadgeTooltipContent(c)
2973
2999
  });
2974
- const p = this.getItemBadgeDisplayValue(d);
3000
+ const m = this.getItemBadgeDisplayValue(c);
2975
3001
  this.spawnTooltip({
2976
- id: m,
3002
+ id: p,
2977
3003
  trigger: n,
2978
- content: this.buildRemoveButtonTooltipText(p, d),
3004
+ content: this.buildRemoveButtonTooltipText(m, c),
2979
3005
  // Keep parent badge tooltip from overlapping the remove-button tooltip.
2980
3006
  onBeforeShow: () => {
2981
3007
  var b;
2982
- return (b = this.tooltips.get(c)) == null ? void 0 : b.hideImmediate();
3008
+ return (b = this.tooltips.get(d)) == null ? void 0 : b.hideImmediate();
2983
3009
  }
2984
3010
  });
2985
3011
  }), !t) {
2986
3012
  const a = this.badgesContainer.querySelector(".ms__badge--more"), n = a == null ? void 0 : a.querySelector(".ms__badge-remove");
2987
3013
  if (n && n.dataset.action === "remove-hidden") {
2988
- const l = this.options.badgesMaxVisible || 3, d = this.selectedOptions.size - l;
3014
+ const l = this.options.badgesMaxVisible || 3, c = this.selectedOptions.size - l;
2989
3015
  this.spawnTooltip({
2990
3016
  id: "more-badge-remove",
2991
3017
  trigger: n,
2992
- content: this.buildRemoveButtonTooltipText(`${d} hidden items`)
3018
+ content: this.buildRemoveButtonTooltipText(`${c} hidden items`)
2993
3019
  });
2994
3020
  }
2995
3021
  }
@@ -3041,10 +3067,10 @@ ${s}` : t;
3041
3067
  }
3042
3068
  attachActionButtonTooltips() {
3043
3069
  this.dropdown.querySelectorAll(".ms__action-btn").forEach((t) => {
3044
- var d, c;
3070
+ var c, d;
3045
3071
  const s = t, i = s.dataset.action;
3046
3072
  if (!i) return;
3047
- const r = parseInt(s.dataset.buttonIndex || "-1"), a = r >= 0 ? (d = this.options.actionButtons) == null ? void 0 : d[r] : (c = this.options.actionButtons) == null ? void 0 : c.find((m) => m.action === i);
3073
+ const r = parseInt(s.dataset.buttonIndex || "-1"), a = r >= 0 ? (c = this.options.actionButtons) == null ? void 0 : c[r] : (d = this.options.actionButtons) == null ? void 0 : d.find((p) => p.action === i);
3048
3074
  if (!a) return;
3049
3075
  const n = a.getTooltipCallback ? a.getTooltipCallback(this) : a.tooltip;
3050
3076
  if (!n) return;
@@ -3078,8 +3104,8 @@ ${s}` : t;
3078
3104
  this.destroyAllTooltips(), this.searchDebounceTimer && (clearTimeout(this.searchDebounceTimer), this.searchDebounceTimer = void 0), this.abortInFlightSearch(), this.dropdownCleanup && this.dropdownCleanup(), this.hintCleanup && this.hintCleanup(), this.selectedPopoverCleanup && this.selectedPopoverCleanup(), this.documentClickHandler && (document.removeEventListener("click", this.documentClickHandler), this.documentClickHandler = null), this.documentKeydownHandler && (document.removeEventListener("keydown", this.documentKeydownHandler), this.documentKeydownHandler = null), this.virtualScroll && (this.virtualScroll.destroy(), this.virtualScroll = null), this.dropdown && this.dropdown.remove(), this.hint && this.hint.remove(), this.selectedPopover && this.selectedPopover.remove(), this.element.innerHTML = "", this.element.classList.remove("ms", "ms--open", "ms--no-checkboxes"), de.info(`[${this.instanceId}] Component destroyed`);
3079
3105
  }
3080
3106
  }
3081
- const Bs = `@layer variables,component,overrides;@layer variables{:host{display:block;--ms-rem: 10px;font-family:var(--ms-font-family, var(--base-font-family, inherit));--ms-accent-color: var(--base-accent-color, #3b82f6);--ms-accent-color-hover: var(--base-accent-color-hover, #2563eb);--ms-accent-color-active: var(--base-accent-color-active, #1d4ed8);--ms-accent-color-light: var(--base-accent-color-light, light-dark(#eff6ff, #1e3a5f));--ms-accent-color-light-hover: var(--base-accent-color-light-hover, light-dark(#e0f2fe, #264a73));--ms-text-color-1: var(--base-text-color-1, light-dark(#111827, #f5f5f5));--ms-text-color-2: var(--base-text-color-2, light-dark(#353b47, #d4d4d4));--ms-text-color-3: var(--base-text-color-3, light-dark(#6b7280, #a3a3a3));--ms-text-color-4: var(--base-text-color-4, light-dark(#a0a3a9, #737373));--ms-text-color-on-accent: var(--base-text-color-on-accent, #ffffff);--ms-text-primary: var(--ms-text-color-1);--ms-text-secondary: var(--ms-text-color-3);--ms-primary-bg: var(--base-hover-bg, color-mix(in srgb, var(--ms-text-color-1) 8%, var(--base-main-bg, light-dark(#ffffff, #1a1a1a))));--ms-primary-bg-hover: var(--base-active-bg, color-mix(in srgb, var(--ms-text-color-1) 14%, var(--base-main-bg, light-dark(#ffffff, #1a1a1a))));--ms-border-color: var(--base-border-color, light-dark(#e5e7eb, #3a3a3a));--ms-border: var(--base-border, 1px solid var(--ms-border-color));--ms-input-bg: var(--base-input-bg, light-dark(#ffffff, #1a1a1a));--ms-input-color: var(--base-input-color, var(--ms-text-color-1));--ms-input-border: var(--base-input-border, 1px solid var(--ms-border-color));--ms-input-border-hover: var(--base-input-border-hover, 1px solid var(--ms-accent-color));--ms-input-border-focus: var(--base-input-border-focus, 1px solid var(--ms-accent-color));--ms-input-placeholder-color: var(--base-input-placeholder-color, var(--ms-text-color-4));--ms-input-bg-disabled: var(--base-input-bg-disabled, rgba(107, 114, 128, .05));--ms-toggle-icon-color: var(--ms-text-color-3);--ms-toggle-icon-color-open: var(--ms-text-color-3);--ms-counter-badge-bg: var(--ms-accent-color);--ms-counter-badge-bg-hover: var(--ms-accent-color-hover);--ms-counter-badge-color: var(--ms-text-color-on-accent);--ms-hint-bg: var(--base-main-bg, light-dark(#ffffff, #1a1a1a));--ms-hint-color: var(--ms-text-color-4);--ms-hint-border-color: var(--ms-border-color);--ms-dropdown-bg: var(--base-dropdown-bg, var(--base-elevated-bg, light-dark(#ffffff, #1a1a1a)));--ms-dropdown-text-color: var(--ms-text-color-1);--ms-dropdown-border-color: var(--ms-border-color);--ms-dropdown-box-shadow-semantic: var(--base-dropdown-box-shadow, 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1));--ms-actions-bg: var(--base-main-bg, light-dark(#ffffff, #1a1a1a));--ms-actions-border-color: var(--ms-border-color);--ms-action-button-bg: transparent;--ms-action-button-bg-hover: var(--ms-primary-bg);--ms-action-button-border-color: var(--ms-border-color);--ms-action-button-border-color-hover: var(--ms-accent-color);--ms-action-button-color: var(--ms-text-color-1);--ms-group-border-color: var(--ms-border-color);--ms-option-text-color: var(--ms-text-color-1);--ms-option-bg: transparent;--ms-option-bg-hover: var(--ms-primary-bg);--ms-option-color-hover: inherit;--ms-option-bg-focused: var(--ms-primary-bg);--ms-option-color-focused: inherit;--ms-option-outline-color-focused: var(--ms-accent-color);--ms-option-bg-selected: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-option-bg-matched: color-mix(in srgb, var(--ms-accent-color) 8%, transparent);--ms-option-color-matched: inherit;--ms-option-border-matched-color: color-mix(in srgb, var(--ms-accent-color) 40%, transparent);--ms-option-title-color: var(--ms-text-color-1);--ms-option-subtitle-color: var(--ms-text-color-3);--ms-option-mark-bg: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-option-mark-color: inherit;--ms-loading-color: var(--ms-text-color-3);--ms-badge-bg: var(--ms-accent-color-light);--ms-badge-bg-hover: var(--base-hover-bg, var(--ms-input-bg));--ms-badge-bg-active: var(--ms-accent-color-light-hover);--ms-badge-text-bg-hover: var(--base-hover-bg, var(--ms-input-bg));--ms-badge-text-color-hover: var(--ms-badge-text-color);--ms-badge-counter-border-color: var(--ms-border-color);--ms-badge-counter-text-bg: var(--ms-primary-bg-hover);--ms-badge-counter-text-color: var(--ms-text-color-1);--ms-badge-counter-remove-bg: var(--ms-text-color-3);--ms-badge-counter-remove-bg-hover: var(--ms-text-color-1);--ms-badge-counter-remove-color: var(--ms-text-color-on-accent);--ms-counter-wrapper-border-color: var(--ms-border-color);--ms-count-clear-bg-hover: var(--ms-accent-color);--ms-tooltip-bg: var(--base-tooltip-bg, var(--base-inverse-bg, light-dark(#333333, #f5f5f5)));--ms-tooltip-text-color: var(--base-tooltip-text-color, light-dark(#ffffff, #1a1a1a));--ms-selected-popover-bg: var(--base-dropdown-bg, var(--base-elevated-bg, light-dark(#ffffff, #1a1a1a)));--ms-selected-popover-border-color: var(--ms-border-color);--ms-selected-popover-header-border-color: var(--ms-border-color);--ms-selected-popover-close-bg-hover: var(--ms-accent-color);--ms-input-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-input-padding-right: calc(4 * var(--ms-rem));--ms-input-padding-h: calc(1.2 * var(--ms-rem));--ms-input-height: calc(var(--base-input-size-md-height, 3.5) * var(--ms-rem));--ms-input-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-border-width: 1px;--ms-input-border-radius: var(--ms-border-radius-md);--ms-input-text: var(--ms-text-color-1);--ms-input-bg-disabled: rgba(107, 114, 128, .05);--ms-input-size-xs-font: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-input-size-xs-padding-v: calc(.4 * var(--ms-rem));--ms-input-size-xs-padding-h: calc(.8 * var(--ms-rem));--ms-input-size-xs-height: calc(var(--base-input-size-xs-height, 3.1) * var(--ms-rem));--ms-input-size-sm-font: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-size-sm-padding-v: calc(.5 * var(--ms-rem));--ms-input-size-sm-padding-h: calc(1 * var(--ms-rem));--ms-input-size-sm-height: calc(var(--base-input-size-sm-height, 3.3) * var(--ms-rem));--ms-input-size-md-font: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-size-md-padding-v: calc(.8 * var(--ms-rem));--ms-input-size-md-padding-h: calc(1.2 * var(--ms-rem));--ms-input-size-md-height: calc(var(--base-input-size-md-height, 3.5) * var(--ms-rem));--ms-input-size-lg-font: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-input-size-lg-padding-v: calc(1 * var(--ms-rem));--ms-input-size-lg-padding-h: calc(1.4 * var(--ms-rem));--ms-input-size-lg-height: calc(var(--base-input-size-lg-height, 3.8) * var(--ms-rem));--ms-input-size-xl-font: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-input-size-xl-padding-v: calc(1.2 * var(--ms-rem));--ms-input-size-xl-padding-h: calc(1.6 * var(--ms-rem));--ms-input-size-xl-height: calc(var(--base-input-size-xl-height, 4.1) * var(--ms-rem));--ms-toggle-right: calc(1.2 * var(--ms-rem));--ms-toggle-color: var(--ms-text-color-3);--ms-transform-center-y: translateY(-50%);--ms-transform-rotate-180: 180deg;--ms-counter-offset: calc(3.2 * var(--ms-rem));--ms-counter-padding: calc(.2 * var(--ms-rem)) calc(.4 * var(--ms-rem));--ms-counter-bg: var(--ms-accent-color);--ms-counter-color: var(--ms-text-color-on-accent);--ms-counter-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-counter-font-weight: var(--base-font-weight-semibold, 600);--ms-counter-border-radius: var(--ms-border-radius-sm);--ms-counter-bg-hover: var(--ms-accent-color-hover);--ms-transform-scale-hover: 1.1;--ms-hint-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-hint-border: 1px solid var(--ms-hint-border-color);--ms-hint-border-radius: var(--ms-border-radius-lg);--ms-hint-box-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ms-hint-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-dropdown-border: var(--base-dropdown-border, 1px solid var(--ms-dropdown-border-color));--ms-dropdown-border-radius: var(--ms-border-radius-lg);--ms-dropdown-box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ms-options-max-height: calc(32 * var(--ms-rem));--ms-option-color: var(--ms-text-color-1);--ms-z-index-dropdown: 9999;--ms-z-index-sticky: 1;--ms-actions-gap: calc(.4 * var(--ms-rem));--ms-actions-padding: calc(.8 * var(--ms-rem));--ms-actions-border-bottom: 1px solid var(--ms-actions-border-color);--ms-action-btn-padding: calc(.4 * var(--ms-rem)) calc(.8 * var(--ms-rem));--ms-action-btn-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-action-btn-border: var(--ms-border);--ms-action-btn-border-radius: var(--ms-border-radius-sm);--ms-action-btn-bg: transparent;--ms-action-btn-color: inherit;--ms-action-btn-bg-hover: var(--ms-primary-bg);--ms-action-btn-border-color-hover: var(--ms-accent-color);--ms-transform-scale-active: .98;--ms-options-padding: 0;--ms-group-border-top: 1px solid var(--ms-group-border-color);--ms-group-margin-top: calc(.4 * var(--ms-rem));--ms-group-padding-top: calc(.4 * var(--ms-rem));--ms-group-label-padding: calc(.4 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-group-label-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-group-label-font-weight: var(--base-font-weight-semibold, 600);--ms-group-label-color: var(--ms-text-color-3);--ms-group-label-transform: uppercase;--ms-group-label-letter-spacing: .05em;--ms-option-gap: calc(.8 * var(--ms-rem));--ms-option-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-option-padding-h: calc(1.2 * var(--ms-rem));--ms-option-min-height: auto;--ms-option-outline-focused: 2px solid var(--ms-option-outline-color-focused);--ms-option-focus-outline-offset: -2px;--ms-option-border-matched: 3px solid var(--ms-option-border-matched-color);--ms-option-bg-focused-hover: var(--ms-primary-bg);--ms-option-bg-matched-hover: color-mix(in srgb, var(--ms-accent-color) 12%, transparent);--ms-option-bg-selected-focused: color-mix(in srgb, var(--ms-accent-color) 15%, transparent);--ms-option-bg-selected-matched: color-mix(in srgb, var(--ms-accent-color) 15%, transparent);--ms-option-disabled-bg: var(--base-disabled-bg, transparent);--ms-option-bg-disabled-selected: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-disabled-opacity: .5;--ms-option-content-gap: calc(.8 * var(--ms-rem));--ms-option-icon-size: calc(2 * var(--ms-rem));--ms-option-icon-font-size: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-option-title-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-option-mark-font-weight: var(--base-font-weight-semibold, 600);--ms-option-title-white-space: normal;--ms-option-title-overflow: visible;--ms-option-title-text-overflow: clip;--ms-option-subtitle-margin-top: calc(.4 * var(--ms-rem));--ms-option-subtitle-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-option-subtitle-line-height: var(--base-line-height-tight, 1.25);--ms-checkbox-margin-top: calc(.2 * var(--ms-rem));--ms-checkbox-margin-right: 0;--ms-checkbox-margin-bottom: 0;--ms-checkbox-margin-left: 0;--ms-checkbox-size: calc(1.6 * var(--ms-rem));--ms-checkbox-scale: 1;--ms-checkbox-align: center;--ms-checkbox-bg: var(--ms-input-bg);--ms-checkbox-border-width: 1px;--ms-checkbox-border-color: var(--base-checkbox-border-color, #8f8f8f);--ms-checkbox-border: var(--ms-checkbox-border-width) solid var(--ms-checkbox-border-color);--ms-checkbox-border-radius: calc(.3 * var(--ms-rem));--ms-checkbox-checkmark-thickness: 2.5px;--ms-checkbox-checked-bg: var(--ms-accent-color);--ms-checkbox-checked-border: var(--ms-checkbox-border-width) solid var(--ms-accent-color);--ms-checkbox-checkmark-color: var(--ms-text-color-on-accent);--ms-checkbox-hover-border-color: var(--ms-accent-color);--ms-checkbox-disabled-bg: var(--ms-primary-bg);--ms-checkbox-disabled-border: var(--ms-checkbox-border-width) solid var(--ms-border-color);--ms-checkbox-checked-bg-hover: var(--ms-accent-color-hover);--ms-checkbox-checked-border-color-hover: var(--ms-accent-color-hover);--ms-state-min-height: calc(8 * var(--ms-rem));--ms-empty-padding: calc(1.6 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-empty-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-empty-color: var(--ms-text-color-3);--ms-loader-padding: calc(1.6 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-loader-gap: calc(.8 * var(--ms-rem));--ms-loading-text-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-loading-text-color: var(--ms-text-color-3);--ms-badges-gap: calc(.8 * var(--ms-rem));--ms-badges-margin-bottom: calc(.8 * var(--ms-rem));--ms-badges-margin-top: calc(.8 * var(--ms-rem));--ms-badges-margin-left: calc(.4 * var(--ms-rem));--ms-badges-margin-right: calc(.4 * var(--ms-rem));--ms-inline-align: center;--ms-badge-gap: calc(.8 * var(--ms-rem));--ms-badge-height: calc(2.7 * var(--ms-rem));--ms-badge-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-badge-font-weight: var(--base-font-weight-semibold, 600);--ms-badge-border-radius: var(--ms-border-radius-sm);--ms-order-first: -1;--ms-badge-text-padding: 0 calc(.8 * var(--ms-rem));--ms-badge-text-bg: var(--ms-accent-color-light);--ms-badge-text-color: var(--ms-accent-color);--ms-badge-text-border: none;--ms-badge-remove-width: calc(2.7 * var(--ms-rem));--ms-badge-remove-bg: var(--ms-accent-color);--ms-badge-remove-color: var(--ms-text-color-on-accent);--ms-badge-remove-border: none;--ms-badge-remove-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-badge-remove-bg-hover: var(--ms-accent-color-hover);--ms-badge-remove-box-shadow-focus: 0 0 0 2px color-mix(in srgb, var(--ms-accent-color) 50%, transparent);--ms-badge-remove-icon-size: calc(1 * var(--ms-rem));--ms-icon-remove: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 6L18 18M18 6L6 18' stroke='black' stroke-width='2.5' stroke-linecap='round' fill='none'/></svg>");--ms-badge-counter-bg: transparent;--ms-badge-counter-border: 1px solid var(--ms-badge-counter-border-color);--ms-badge-counter-border-radius: var(--ms-border-radius-sm);--ms-more-badge-bg: var(--ms-accent-color-light);--ms-more-badge-hover-bg: var(--ms-badge-bg-hover);--ms-more-badge-active-bg: var(--ms-accent-color-light-hover);--ms-count-display-margin-bottom: calc(.8 * var(--ms-rem));--ms-count-display-margin-top: calc(.8 * var(--ms-rem));--ms-count-display-margin-left: calc(.8 * var(--ms-rem));--ms-count-display-margin-right: calc(.8 * var(--ms-rem));--ms-counter-wrapper-bg: transparent;--ms-counter-wrapper-border: var(--ms-border);--ms-counter-wrapper-border-radius: var(--ms-border-radius-sm);--ms-counter-wrapper-padding: calc(.4 * var(--ms-rem)) calc(.8 * var(--ms-rem));--ms-counter-wrapper-gap: calc(.4 * var(--ms-rem));--ms-counter-wrapper-bg-hover: var(--ms-primary-bg);--ms-counter-wrapper-border-color-hover: var(--ms-accent-color);--ms-count-text-bg: transparent;--ms-count-text-border: none;--ms-count-text-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-count-text-color: var(--ms-text-color-1);--ms-count-clear-size: calc(1.6 * var(--ms-rem));--ms-count-clear-bg: transparent;--ms-count-clear-color: var(--ms-text-color-3);--ms-count-clear-font-size: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-count-clear-border-radius: var(--ms-border-radius-sm);--ms-count-clear-bg-hover: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-count-clear-color-hover: var(--ms-accent-color);--ms-count-clear-icon-size: calc(1.4 * var(--ms-rem));--ms-icon-clear: var(--ms-icon-remove);--ms-tooltip-color: var(--ms-tooltip-text-color);--ms-tooltip-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-tooltip-border-radius: var(--ms-border-radius-lg);--ms-tooltip-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-tooltip-max-width: calc(32 * var(--ms-rem));--ms-tooltip-shadow: 0 2px 8px rgba(0, 0, 0, .15);--ms-tooltip-z-index: 10000;--ms-option-tooltip-bg: var(--ms-tooltip-bg);--ms-option-tooltip-text-color: var(--ms-tooltip-text-color);--ms-option-tooltip-padding: var(--ms-tooltip-padding);--ms-option-tooltip-border-radius: var(--ms-tooltip-border-radius);--ms-option-tooltip-font-size: var(--ms-tooltip-font-size);--ms-option-tooltip-max-width: var(--ms-tooltip-max-width);--ms-option-tooltip-shadow: var(--ms-tooltip-shadow);--ms-option-tooltip-z-index: var(--ms-tooltip-z-index);--ms-z-index-popover: 10000;--ms-selected-popover-width: calc(32 * var(--ms-rem));--ms-selected-popover-max-height: calc(32 * var(--ms-rem));--ms-selected-popover-border: 1px solid var(--ms-selected-popover-border-color);--ms-selected-popover-border-radius: var(--ms-border-radius-lg);--ms-selected-popover-box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ms-selected-popover-header-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-selected-popover-header-bg: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-selected-popover-header-border-bottom: 1px solid var(--ms-selected-popover-header-border-color);--ms-selected-popover-header-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-selected-popover-header-font-weight: var(--base-font-weight-semibold, 600);--ms-selected-popover-header-color: var(--ms-text-color-1);--ms-popover-close-size: calc(2.4 * var(--ms-rem));--ms-selected-popover-close-bg: transparent;--ms-selected-popover-close-color: var(--ms-text-color-3);--ms-selected-popover-close-font-size: calc(var(--base-font-size-xl, 2) * var(--ms-rem));--ms-selected-popover-close-border-radius: var(--ms-border-radius-sm);--ms-selected-popover-close-bg-hover: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-selected-popover-close-color-hover: var(--ms-accent-color);--ms-selected-popover-close-icon-size: calc(1.4 * var(--ms-rem));--ms-selected-popover-body-gap: calc(.4 * var(--ms-rem));--ms-selected-popover-body-padding: calc(.8 * var(--ms-rem));--ms-selected-popover-body-max-height: calc(28.8 * var(--ms-rem));--ms-font-size-2xs: calc(var(--base-font-size-2xs, 1) * var(--ms-rem));--ms-font-size-xs: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-font-size-sm: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-font-size-base: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-font-size-lg: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-font-weight-normal: var(--base-font-weight-normal, 400);--ms-font-weight-medium: var(--base-font-weight-medium, 500);--ms-font-weight-semibold: var(--base-font-weight-semibold, 600);--ms-line-height-none: 1;--ms-line-height-tight: var(--base-line-height-tight, 1.25);--ms-line-height-normal: var(--base-line-height-normal, 1.5);--ms-line-height-relaxed: var(--base-line-height-relaxed, 1.75);--ms-border-radius-sm: calc(var(--base-border-radius-sm, .4) * var(--ms-rem));--ms-border-radius-md: calc(var(--base-border-radius-md, .6) * var(--ms-rem));--ms-border-radius-lg: calc(var(--base-border-radius-lg, .8) * var(--ms-rem));--ms-border-radius: var(--ms-border-radius-md);--ms-spacing-xs: calc(.4 * var(--ms-rem));--ms-spacing-sm: calc(.8 * var(--ms-rem));--ms-spacing-md: calc(1.2 * var(--ms-rem));--ms-spacing-lg: calc(1.6 * var(--ms-rem));--ms-transition-fast: .15s;--ms-transition-normal: .2s;--ms-easing-snappy: cubic-bezier(.4, 0, .2, 1);--ms-placeholder-opacity: .6;--ms-disabled-input-opacity: .6;--ms-scrollbar-width: 8px;--ms-scrollbar-track-bg: transparent;--ms-scrollbar-thumb-bg: var(--ms-border-color);--ms-scrollbar-thumb-bg-hover: var(--ms-text-color-3);--ms-scrollbar-thumb-border-radius: 4px;--ms-debug-bg: var(--base-elevated-bg, light-dark(#f9fafb, #2b2b2b));--ms-debug-border-color: var(--ms-border-color);--ms-debug-text-color: var(--ms-text-color-1);--ms-debug-border-radius: var(--ms-border-radius-md);--ms-debug-summary-color: var(--ms-accent-color);--ms-debug-summary-bg-hover: var(--ms-primary-bg);--ms-debug-summary-outline-color: var(--ms-accent-color);--ms-debug-summary-border-radius: var(--ms-border-radius-sm);--ms-debug-stats-bg: var(--base-main-bg, light-dark(#ffffff, #1a1a1a));--ms-debug-stats-border-radius: var(--ms-border-radius-sm);--ms-debug-bullet-color: var(--ms-accent-color)}}@layer component{web-multiselect:not(:defined){display:block;min-height:calc(3.5 * var(--ms-rem));color:transparent!important;background:transparent}.ms__wrapper{display:flex;flex-direction:column;align-items:stretch}.ms__wrapper--inline{flex-direction:row;align-items:var(--ms-inline-align, center)}.ms{position:relative;width:100%}}@layer component{.ms__input-wrapper{position:relative;display:flex;align-items:center}.ms__input{box-sizing:border-box;width:100%;font-family:inherit;height:var(--ms-input-height);padding:var(--ms-input-padding);padding-right:var(--ms-input-padding-right);font-size:var(--ms-input-font-size);border:var(--ms-input-border);border-radius:var(--ms-input-border-radius);background:var(--ms-input-bg);color:var(--ms-input-color);cursor:pointer;transition:border var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__input:hover:not(:focus):not(:disabled){border:var(--ms-input-border-hover)}.ms__input:focus{outline:none;border:var(--ms-input-border-focus)}.ms__input::placeholder{color:var(--ms-input-placeholder-color);opacity:0;transition:opacity var(--ms-transition-fast) var(--ms-easing-snappy)}:host([data-ready]) .ms__input::placeholder{opacity:var(--ms-placeholder-opacity)}.ms__input.ms__input--xs{font-size:var(--ms-input-size-xs-font);padding:var(--ms-input-size-xs-padding-v) var(--ms-input-size-xs-padding-h);padding-right:calc(var(--ms-input-size-xs-padding-h) * 2.5);height:var(--ms-input-size-xs-height)}.ms__input.ms__input--sm{font-size:var(--ms-input-size-sm-font);padding:var(--ms-input-size-sm-padding-v) var(--ms-input-size-sm-padding-h);padding-right:calc(var(--ms-input-size-sm-padding-h) * 2.5);height:var(--ms-input-size-sm-height)}.ms__input.ms__input--lg{font-size:var(--ms-input-size-lg-font);padding:var(--ms-input-size-lg-padding-v) var(--ms-input-size-lg-padding-h);padding-right:calc(var(--ms-input-size-lg-padding-h) * 2.5);height:var(--ms-input-size-lg-height)}.ms__input.ms__input--xl{font-size:var(--ms-input-size-xl-font);padding:var(--ms-input-size-xl-padding-v) var(--ms-input-size-xl-padding-h);padding-right:calc(var(--ms-input-size-xl-padding-h) * 2.5);height:var(--ms-input-size-xl-height)}.ms__toggle{position:absolute;right:var(--ms-toggle-right);top:50%;transform:var(--ms-transform-center-y);pointer-events:none;color:var(--ms-toggle-icon-color);transition:transform var(--ms-transition-fast) var(--ms-easing-snappy)}.ms--open .ms__toggle{transform:var(--ms-transform-center-y) rotate(var(--ms-transform-rotate-180));color:var(--ms-toggle-icon-color-open)}.ms__counter{position:absolute;right:var(--ms-counter-offset);top:50%;transform:var(--ms-transform-center-y);padding:var(--ms-counter-padding);background:var(--ms-counter-badge-bg);color:var(--ms-counter-badge-color);font-size:var(--ms-counter-font-size);font-weight:var(--ms-counter-font-weight);border-radius:var(--ms-counter-border-radius);cursor:pointer;transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__counter:hover{background:var(--ms-counter-badge-bg-hover);transform:var(--ms-transform-center-y) scale(var(--ms-transform-scale-hover))}.ms__actions{display:flex;flex-direction:column;gap:var(--ms-actions-gap);padding:var(--ms-actions-padding)}.ms__actions--top{border-bottom:var(--ms-actions-border-bottom)}.ms__actions--bottom{flex-direction:column-reverse;border-top:var(--ms-actions-border-bottom)}.ms__actions-row{display:flex;flex-wrap:nowrap;gap:var(--ms-actions-gap)}.ms__actions--wrap .ms__actions-row{flex-wrap:wrap}.ms__actions--sticky{position:sticky;z-index:var(--ms-z-index-sticky);background:var(--ms-actions-bg)}.ms__actions--sticky.ms__actions--top{top:0}.ms__actions--sticky.ms__actions--bottom{bottom:0}.ms__actions--align-stretch .ms__action-btn{flex:1}.ms__actions--align-left .ms__actions-row{justify-content:flex-start}.ms__actions--align-right .ms__actions-row{justify-content:flex-end}.ms__actions--align-center .ms__actions-row{justify-content:center}.ms__actions--align-space-between .ms__actions-row{justify-content:space-between}.ms__action-btn{font-family:inherit;padding:var(--ms-action-btn-padding);font-size:var(--ms-action-btn-font-size);border:var(--ms-action-btn-border);border-radius:var(--ms-action-btn-border-radius);background:var(--ms-action-button-bg);color:var(--ms-action-button-color);cursor:pointer;transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__action-btn:hover{background:var(--ms-action-button-bg-hover);border-color:var(--ms-action-button-border-color-hover)}.ms__action-btn:active{transform:scale(var(--ms-transform-scale-active))}.ms__action-btn:disabled,.ms__action-btn[disabled]{opacity:var(--ms-disabled-opacity);cursor:not-allowed;pointer-events:none}}@layer component{.ms__hint{display:none;position:fixed;z-index:var(--ms-z-index-popover);padding:var(--ms-hint-padding);background:var(--ms-hint-bg);border:var(--ms-hint-border);border-radius:var(--ms-hint-border-radius);box-shadow:var(--ms-hint-box-shadow);font-size:var(--ms-hint-font-size);color:var(--ms-hint-color);line-height:var(--ms-line-height-relaxed);max-width:100%}.ms__hint--visible{display:block}.ms__dropdown{display:none;position:fixed;font-family:inherit;z-index:var(--ms-z-index-dropdown);background:var(--ms-dropdown-bg);border:var(--ms-dropdown-border);border-radius:var(--ms-dropdown-border-radius);box-shadow:var(--ms-dropdown-box-shadow);max-height:var(--ms-options-max-height);overflow:hidden;color:var(--ms-dropdown-text-color)}.ms__dropdown--visible{display:flex;flex-direction:column}.ms__dropdown-inner{flex:1;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__dropdown-inner::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__dropdown-inner::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__dropdown-inner::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__dropdown-inner::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__dropdown--virtual{max-height:none}.ms__dropdown--virtual .ms__dropdown-inner{overflow-y:visible}.ms__badge-tooltip{position:fixed;z-index:var(--ms-tooltip-z-index);opacity:0;visibility:hidden;transition:opacity var(--ms-transition-normal) ease,visibility var(--ms-transition-normal) ease;background:var(--ms-tooltip-bg);color:var(--ms-tooltip-text-color);padding:var(--ms-tooltip-padding);border-radius:var(--ms-tooltip-border-radius);font-size:var(--ms-tooltip-font-size);line-height:var(--ms-line-height-relaxed);max-width:var(--ms-tooltip-max-width);word-wrap:break-word;white-space:pre-wrap;box-shadow:var(--ms-tooltip-shadow);pointer-events:none}.ms__badge-tooltip--visible{opacity:1;visibility:visible}.ms__option-tooltip{position:fixed;z-index:var(--ms-option-tooltip-z-index);opacity:0;visibility:hidden;transition:opacity var(--ms-transition-normal) ease,visibility var(--ms-transition-normal) ease;background:var(--ms-option-tooltip-bg);color:var(--ms-option-tooltip-text-color);padding:var(--ms-option-tooltip-padding);border-radius:var(--ms-option-tooltip-border-radius);font-size:var(--ms-option-tooltip-font-size);line-height:var(--ms-line-height-relaxed);max-width:var(--ms-option-tooltip-max-width);word-wrap:break-word;white-space:pre-wrap;box-shadow:var(--ms-option-tooltip-shadow);pointer-events:none}.ms__option-tooltip--visible{opacity:1;visibility:visible}.ms__selected-popover{display:none;position:fixed;z-index:var(--ms-z-index-popover);background:var(--ms-selected-popover-bg);border:var(--ms-selected-popover-border);border-radius:var(--ms-selected-popover-border-radius);box-shadow:var(--ms-selected-popover-box-shadow);width:var(--ms-selected-popover-width);max-height:var(--ms-selected-popover-max-height);overflow:hidden}.ms__selected-popover--visible{display:flex;flex-direction:column}.ms__selected-popover--virtual{display:block;overflow:visible;max-height:none}.ms__selected-popover-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ms-selected-popover-header-padding);background:var(--ms-selected-popover-header-bg);border-bottom:var(--ms-selected-popover-header-border-bottom);font-size:var(--ms-selected-popover-header-font-size);font-weight:var(--ms-selected-popover-header-font-weight);color:var(--ms-selected-popover-header-color)}.ms__selected-popover-close{display:flex;align-items:center;justify-content:center;width:var(--ms-popover-close-size);height:var(--ms-popover-close-size);padding:0;border:none;background:var(--ms-selected-popover-close-bg);color:var(--ms-selected-popover-close-color);font-size:var(--ms-selected-popover-close-font-size);line-height:var(--ms-line-height-none);cursor:pointer;border-radius:var(--ms-selected-popover-close-border-radius);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__selected-popover-close:hover{background:var(--ms-selected-popover-close-bg-hover);color:var(--ms-selected-popover-close-color-hover)}.ms__selected-popover-close:before{content:"";display:block;width:var(--ms-selected-popover-close-icon-size);height:var(--ms-selected-popover-close-icon-size);background-color:currentColor;-webkit-mask:var(--ms-icon-remove) center / contain no-repeat;mask:var(--ms-icon-remove) center / contain no-repeat}.ms__selected-popover-body{display:flex;flex-direction:column;gap:var(--ms-selected-popover-body-gap);padding:var(--ms-selected-popover-body-padding);overflow-y:auto;max-height:var(--ms-selected-popover-body-max-height);scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__selected-popover-body::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__selected-popover-body::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__selected-popover-body::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__selected-popover-body::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__selected-popover-body .ms__badge{width:100%;min-height:fit-content;line-height:var(--ms-line-height-relaxed)}.ms__selected-popover-body .ms__badge-text{flex:1;min-width:0;white-space:normal;word-wrap:break-word}.ms__selected-popover-body--virtual{display:block;max-height:none;padding:0}.ms__selected-popover-body--virtual .ms__badge{height:var(--ms-badge-height-virtual, 36px);min-height:var(--ms-badge-height-virtual, 36px);max-height:var(--ms-badge-height-virtual, 36px);margin-bottom:var(--ms-selected-popover-body-gap);overflow:hidden;box-sizing:border-box}.ms__selected-popover-body--virtual .ms__badge-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}@layer component{.ms--disabled .ms__input{opacity:var(--ms-disabled-input-opacity);cursor:not-allowed;background:var(--ms-input-bg-disabled)}.ms--disabled .ms__toggle{opacity:var(--ms-disabled-input-opacity)}.ms--no-checkboxes .ms__option{gap:0;padding-left:var(--ms-option-padding-h)}.ms--no-checkboxes .ms__option-content{padding-left:0}}@layer component;@layer component{.ms__badges{display:flex;flex-wrap:wrap;gap:var(--ms-badges-gap);padding:0}.ms__badges:empty{display:none}.ms__badges--bottom{margin-top:var(--ms-badges-margin-bottom)}.ms__badges--top{margin-bottom:var(--ms-badges-margin-top);order:var(--ms-order-first)}.ms__badges--left{order:var(--ms-order-first);margin-right:var(--ms-badges-margin-left);justify-content:flex-end}.ms__badges--right{margin-left:var(--ms-badges-margin-right);justify-content:flex-start}.ms__badge{display:inline-flex;align-items:center;height:var(--ms-badge-height);font-size:var(--ms-badge-font-size);font-weight:var(--ms-badge-font-weight);line-height:var(--ms-line-height-none);border-radius:var(--ms-badge-border-radius);overflow:hidden;max-width:100%}.ms__badge-text{display:flex;align-items:center;box-sizing:border-box;height:100%;padding:var(--ms-badge-text-padding);background:var(--ms-badge-text-bg);color:var(--ms-badge-text-color);border:var(--ms-badge-text-border);border-right:none;border-radius:var(--ms-badge-border-radius) 0 0 var(--ms-badge-border-radius);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background-color var(--ms-transition-normal) ease,color var(--ms-transition-normal) ease}.ms__badge:hover .ms__badge-text{background:var(--ms-badge-text-bg-hover, var(--ms-badge-text-bg));color:var(--ms-badge-text-color-hover, var(--ms-badge-text-color))}.ms__badge-remove{display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-family:inherit;width:var(--ms-badge-remove-width);height:100%;flex-shrink:0;background:var(--ms-badge-remove-bg);color:var(--ms-badge-remove-color);border:var(--ms-badge-remove-border);border-left:none;border-radius:0 var(--ms-badge-border-radius) var(--ms-badge-border-radius) 0;cursor:pointer;transition:background-color var(--ms-transition-normal) ease;font-size:var(--ms-badge-remove-font-size)}.ms__badge-remove:hover{background:var(--ms-badge-remove-bg-hover)}.ms__badge-remove:focus{outline:none}.ms__badge-remove:focus-visible{outline:none;box-shadow:var(--ms-badge-remove-box-shadow-focus)}.ms__badge-remove:before{content:"";display:block;width:var(--ms-badge-remove-icon-size);height:var(--ms-badge-remove-icon-size);background-color:currentColor;-webkit-mask:var(--ms-icon-remove) center / contain no-repeat;mask:var(--ms-icon-remove) center / contain no-repeat}.ms__badge--counter{cursor:pointer}.ms__badge--counter .ms__badge-text{background:var(--ms-badge-counter-text-bg);color:var(--ms-badge-counter-text-color);border:var(--ms-badge-counter-border);border-right:none}.ms__badge--counter .ms__badge-remove{background:var(--ms-badge-counter-remove-bg);color:var(--ms-badge-counter-remove-color);border:var(--ms-badge-counter-border);border-left:none}.ms__badge--counter .ms__badge-remove:hover{background:var(--ms-badge-counter-remove-bg-hover)}.ms__badge--more,.ms__badge[data-action=show-selected]{cursor:pointer}}@layer component{.ms__count-display{display:flex;align-items:center}.ms__count-display:empty{display:none}.ms__count-display--bottom{margin-top:var(--ms-count-display-margin-bottom)}.ms__count-display--top{margin-bottom:var(--ms-count-display-margin-top);order:var(--ms-order-first)}.ms__count-display--left{order:var(--ms-order-first);margin-right:var(--ms-count-display-margin-left);justify-content:flex-start}.ms__count-display--right{margin-left:var(--ms-count-display-margin-right);justify-content:flex-end}.ms__counter-wrapper{display:inline-flex;align-items:center;gap:var(--ms-counter-wrapper-gap);background:var(--ms-counter-wrapper-bg);border:var(--ms-counter-wrapper-border);border-radius:var(--ms-counter-wrapper-border-radius);padding:var(--ms-counter-wrapper-padding);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__counter-wrapper:hover{background:var(--ms-counter-wrapper-bg-hover);border-color:var(--ms-counter-wrapper-border-color-hover)}.ms__count-text{display:inline-flex;align-items:center;background:var(--ms-count-text-bg);border:var(--ms-count-text-border);padding:0;font-size:var(--ms-count-text-font-size);color:var(--ms-count-text-color);cursor:pointer;transition:color var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__count-clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:var(--ms-count-clear-size);height:var(--ms-count-clear-size);padding:0;border:none;background:var(--ms-count-clear-bg);color:var(--ms-count-clear-color);font-size:var(--ms-count-clear-font-size);line-height:var(--ms-line-height-none);cursor:pointer;border-radius:var(--ms-count-clear-border-radius);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__count-clear:hover{background:var(--ms-count-clear-bg-hover);color:var(--ms-count-clear-color-hover)}.ms__count-clear:before{content:"";display:block;width:var(--ms-count-clear-icon-size);height:var(--ms-count-clear-icon-size);background-color:currentColor;-webkit-mask:var(--ms-icon-clear) center / contain no-repeat;mask:var(--ms-icon-clear) center / contain no-repeat}}@layer component{.ms__debug-info{margin-top:calc(.4 * var(--ms-rem));padding:calc(.4 * var(--ms-rem));background-color:var(--ms-debug-bg);border:1px solid var(--ms-debug-border-color);border-radius:var(--ms-debug-border-radius);font-size:calc(1.2 * var(--ms-rem));color:var(--ms-debug-text-color)}.ms__debug-info details summary{cursor:pointer;font-weight:600;color:var(--ms-debug-summary-color);-webkit-user-select:none;user-select:none;padding:calc(.4 * var(--ms-rem));border-radius:var(--ms-debug-summary-border-radius)}.ms__debug-info details summary:hover{background-color:var(--ms-debug-summary-bg-hover)}.ms__debug-info details summary:focus{outline:2px solid var(--ms-debug-summary-outline-color);outline-offset:2px}.ms__debug-info .ms__debug-stats{display:flex;flex-direction:column;gap:calc(.4 * var(--ms-rem));margin-top:calc(.4 * var(--ms-rem));padding:calc(.4 * var(--ms-rem));background-color:var(--ms-debug-stats-bg);border-radius:var(--ms-debug-stats-border-radius)}.ms__debug-info .ms__debug-stats span{display:flex;justify-content:space-between;padding:2px 4px;font-family:monospace;font-size:calc(1 * var(--ms-rem))}.ms__debug-info .ms__debug-stats span:before{content:"•";margin-right:calc(.4 * var(--ms-rem));color:var(--ms-debug-bullet-color)}}@layer component{.ms__options{padding:var(--ms-options-padding);scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__options::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__options::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__options::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__options::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__options--virtual .ms__option,.ms__options--fixed-height .ms__option{height:var(--ms-option-height, 50px);min-height:var(--ms-option-height, 50px);max-height:var(--ms-option-height, 50px);overflow:hidden;box-sizing:border-box}.ms__group+.ms__group{border-top:var(--ms-group-border-top);margin-top:var(--ms-group-margin-top);padding-top:var(--ms-group-padding-top)}.ms__group-label{padding:var(--ms-group-label-padding);font-size:var(--ms-group-label-font-size);font-weight:var(--ms-group-label-font-weight);color:var(--ms-group-label-color);text-transform:var(--ms-group-label-transform);letter-spacing:var(--ms-group-label-letter-spacing)}.ms__option{display:flex;align-items:var(--ms-checkbox-align, center);gap:var(--ms-option-gap);padding:var(--ms-option-padding);min-height:var(--ms-option-min-height, auto);color:var(--ms-option-text-color);background:var(--ms-option-bg);cursor:pointer}.ms__option:hover{background:var(--ms-option-bg-hover);color:var(--ms-option-color-hover, inherit)}.ms__option--focused{background:var(--ms-option-bg-focused);color:var(--ms-option-color-focused, inherit);outline:var(--ms-option-outline-focused);outline-offset:var(--ms-option-focus-outline-offset)}.ms__option--matched{background:var(--ms-option-bg-matched);color:var(--ms-option-color-matched, inherit);border-left:var(--ms-option-border-matched)}.ms__option--selected{background:var(--ms-option-bg-selected)}.ms__option--selected:hover{background:var(--ms-option-bg-selected-hover, var(--ms-option-bg-selected))}.ms__option--disabled{opacity:var(--ms-disabled-opacity);cursor:not-allowed;background:var(--ms-option-disabled-bg)}.ms__option--disabled:hover{background:var(--ms-option-disabled-bg)}.ms__option--focused:hover{background:var(--ms-option-bg-focused-hover);color:var(--ms-option-color-focused-hover, var(--ms-option-color-focused, var(--ms-option-text-color)))}.ms__option--matched:hover{background:var(--ms-option-bg-matched-hover);color:var(--ms-option-color-matched-hover, var(--ms-option-color-matched, var(--ms-option-text-color)))}.ms__option--selected.ms__option--focused{background:var(--ms-option-bg-selected-focused);outline:var(--ms-option-outline-focused);outline-offset:var(--ms-option-focus-outline-offset)}.ms__option--selected.ms__option--matched{background:var(--ms-option-bg-selected-matched);border-left:var(--ms-option-border-matched)}.ms__option--disabled.ms__option--selected{background:var(--ms-option-bg-disabled-selected)}.ms__option--disabled.ms__option--focused{outline:none}.ms__option[data-checkbox-align=top]{--ms-checkbox-align: flex-start}.ms__option[data-checkbox-align=bottom]{--ms-checkbox-align: flex-end}.ms__checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;flex-shrink:0;position:relative;margin-top:var(--ms-checkbox-margin-top);margin-right:var(--ms-checkbox-margin-right);margin-bottom:var(--ms-checkbox-margin-bottom);margin-left:var(--ms-checkbox-margin-left);width:var(--ms-checkbox-size);height:var(--ms-checkbox-size);transform:scale(var(--ms-checkbox-scale));transform-origin:top left;cursor:pointer;background:var(--ms-checkbox-bg);border:var(--ms-checkbox-border);border-radius:var(--ms-checkbox-border-radius);transition:background-color .15s ease,border-color .15s ease}.ms__checkbox:after{content:"";position:absolute;display:none;left:50%;top:40%;width:30%;height:55%;transform:translate(-50%,-50%) rotate(45deg);border:solid var(--ms-checkbox-checkmark-color);border-width:0 var(--ms-checkbox-checkmark-thickness, 2px) var(--ms-checkbox-checkmark-thickness, 2px) 0}.ms__checkbox:hover:not(:disabled){border-color:var(--ms-checkbox-hover-border-color)}.ms__checkbox:checked{background:var(--ms-checkbox-checked-bg);border:var(--ms-checkbox-checked-border)}.ms__checkbox:checked:after{display:block}.ms__checkbox--indeterminate{background:var(--ms-checkbox-checked-bg);border:var(--ms-checkbox-checked-border)}.ms__checkbox--indeterminate:after{display:block;top:50%;left:50%;width:55%;height:0;transform:translate(-50%,-50%);border:none;border-bottom:var(--ms-checkbox-checkmark-thickness, 2px) solid var(--ms-checkbox-checkmark-color)}.ms__checkbox--indeterminate:hover:not(:disabled){background:var(--ms-checkbox-checked-bg-hover);border-color:var(--ms-checkbox-checked-border-color-hover)}.ms__checkbox:checked:hover:not(:disabled){background:var(--ms-checkbox-checked-bg-hover);border-color:var(--ms-checkbox-checked-border-color-hover)}.ms__checkbox:focus-visible{outline:2px solid var(--ms-checkbox-checked-bg);outline-offset:2px}.ms__checkbox:disabled{cursor:not-allowed;background:var(--ms-checkbox-disabled-bg);border:var(--ms-checkbox-disabled-border);opacity:.6}.ms__checkbox:disabled:checked{background:var(--ms-checkbox-disabled-bg)}.ms__option--disabled .ms__checkbox{cursor:not-allowed}.ms__option-content{flex:1;display:flex;align-items:center;gap:var(--ms-option-content-gap);min-width:0}.ms__option-icon{flex-shrink:0;width:var(--ms-option-icon-size);height:var(--ms-option-icon-size);display:flex;align-items:center;justify-content:center;font-size:var(--ms-option-icon-font-size)}.ms__option-icon svg{width:100%;height:100%;fill:currentColor}.ms__option-text{flex:1;min-width:0}.ms__option-title{font-size:var(--ms-option-title-font-size);color:var(--ms-option-title-color);line-height:var(--ms-line-height-relaxed);white-space:var(--ms-option-title-white-space, normal);overflow:var(--ms-option-title-overflow, visible);text-overflow:var(--ms-option-title-text-overflow, clip)}.ms__option:hover .ms__option-title{color:var(--ms-option-title-color-hover, var(--ms-option-title-color))}.ms__option--selected .ms__option-title{color:var(--ms-option-title-color-selected, var(--ms-option-title-color))}.ms__option--selected:hover .ms__option-title{color:var(--ms-option-title-color-selected-hover, var(--ms-option-title-color-selected, var(--ms-option-title-color)))}.ms__option-title mark{background:var(--ms-option-mark-bg);color:var(--ms-option-mark-color);font-weight:var(--ms-option-mark-font-weight)}.ms__option-subtitle{margin-top:var(--ms-option-subtitle-margin-top);font-size:var(--ms-option-subtitle-font-size);color:var(--ms-option-subtitle-color);line-height:var(--ms-option-subtitle-line-height)}.ms__option:hover .ms__option-subtitle{color:var(--ms-option-subtitle-color-hover, var(--ms-option-subtitle-color))}.ms__option--selected .ms__option-subtitle{color:var(--ms-option-subtitle-color-selected, var(--ms-option-subtitle-color))}.ms__option--selected:hover .ms__option-subtitle{color:var(--ms-option-subtitle-color-selected-hover, var(--ms-option-subtitle-color-selected, var(--ms-option-subtitle-color)))}.ms__empty{display:flex;align-items:center;justify-content:center;min-height:var(--ms-state-min-height);padding:var(--ms-empty-padding);text-align:center;font-size:var(--ms-empty-font-size);color:var(--ms-empty-color)}.ms__loader{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:var(--ms-state-min-height);padding:var(--ms-loader-padding);gap:var(--ms-loader-gap)}.ms__loading-text{font-size:var(--ms-loading-text-font-size);color:var(--ms-loading-color)}}@layer component{.ms--rtl .ms__input-wrapper{direction:rtl}.ms--rtl .ms__input{text-align:right;padding-left:var(--ms-input-padding-right);padding-right:var(--ms-input-padding-h)}.ms--rtl .ms__toggle{left:var(--ms-toggle-right)!important;right:auto!important}.ms--rtl .ms__counter{left:var(--ms-counter-offset)!important;right:auto!important}.ms--rtl .ms__dropdown{direction:rtl;text-align:right}.ms--rtl .ms__option{flex-direction:row-reverse}.ms--rtl .ms__checkbox{margin-left:var(--ms-spacing-sm);margin-right:0}.ms--rtl .ms__option-content{text-align:right}.ms--rtl .ms__option-icon{margin-left:var(--ms-spacing-xs);margin-right:0}.ms--rtl .ms__badges{direction:rtl}.ms--rtl .ms__badges--right{margin-left:0;margin-right:var(--ms-badges-margin-right)}.ms--rtl .ms__badges--left{margin-right:0;margin-left:var(--ms-badges-margin-left)}.ms--rtl .ms__badge{flex-direction:row-reverse}.ms--rtl .ms__badge-remove{border-radius:var(--ms-badge-border-radius) 0 0 var(--ms-badge-border-radius);border-left:var(--ms-badge-remove-border);border-right:none}.ms--rtl .ms__badge-text{border-radius:0 var(--ms-badge-border-radius) var(--ms-badge-border-radius) 0;border-right:var(--ms-badge-text-border);border-left:none}.ms--rtl .ms__count-display{direction:rtl}.ms--rtl .ms__count-display--right{margin-left:0;margin-right:var(--ms-count-display-margin-right)}.ms--rtl .ms__count-display--left{margin-right:0;margin-left:var(--ms-count-display-margin-left)}.ms--rtl .ms__counter-wrapper{flex-direction:row-reverse}.ms--rtl .ms__selected-popover{direction:rtl;text-align:right}.ms--rtl .ms__actions{direction:rtl}.ms--rtl .ms__group-label,.ms--rtl .ms__empty{text-align:right}.ms--rtl .ms__hint{direction:rtl;text-align:right}}@layer component{.ms__option--tree{padding-inline-start:calc(var(--ms-tree-base-indent, .75rem) + var(--ms-tree-depth, 0) * var(--ms-tree-indent, 1.25rem))}.ms__option--tree-unselectable{cursor:default}.ms__option--tree-unselectable:hover{background:transparent}}@layer overrides{:host-context([data-theme="dark"]),:host-context([data-bs-theme="dark"]),:host-context(.dark){color-scheme:dark}:host-context([data-theme="light"]),:host-context([data-bs-theme="light"]),:host-context(.light){color-scheme:light}:host([data-theme="dark"]){color-scheme:dark}:host([data-theme="light"]){color-scheme:light}}`, $s = typeof HTMLElement < "u" ? HTMLElement : class {
3082
- }, Oe = [
3107
+ const Bs = `@layer variables,component,overrides;@layer variables{:host{display:block;--ms-rem: 10px;font-family:var(--ms-font-family, var(--base-font-family, inherit));--ms-accent-color: var(--base-accent-color, #3b82f6);--ms-accent-color-hover: var(--base-accent-color-hover, #2563eb);--ms-accent-color-active: var(--base-accent-color-active, #1d4ed8);--ms-accent-color-light: var(--base-accent-color-light, light-dark(#eff6ff, #1e3a5f));--ms-accent-color-light-hover: var(--base-accent-color-light-hover, light-dark(#e0f2fe, #264a73));--ms-text-color-1: var(--base-text-color-1, light-dark(#111827, #f5f5f5));--ms-text-color-2: var(--base-text-color-2, light-dark(#353b47, #d4d4d4));--ms-text-color-3: var(--base-text-color-3, light-dark(#6b7280, #a3a3a3));--ms-text-color-4: var(--base-text-color-4, light-dark(#a0a3a9, #737373));--ms-text-color-on-accent: var(--base-text-color-on-accent, #ffffff);--ms-text-primary: var(--ms-text-color-1);--ms-text-secondary: var(--ms-text-color-3);--ms-primary-bg: var(--base-hover-bg, color-mix(in srgb, var(--ms-text-color-1) 8%, var(--base-main-bg, light-dark(#ffffff, #1a1a1a))));--ms-primary-bg-hover: var(--base-active-bg, color-mix(in srgb, var(--ms-text-color-1) 14%, var(--base-main-bg, light-dark(#ffffff, #1a1a1a))));--ms-border-color: var(--base-border-color, light-dark(#e5e7eb, #3a3a3a));--ms-border: var(--base-border, 1px solid var(--ms-border-color));--ms-input-bg: var(--base-input-bg, light-dark(#ffffff, #1a1a1a));--ms-input-color: var(--base-input-color, var(--ms-text-color-1));--ms-input-border: var(--base-input-border, 1px solid var(--ms-border-color));--ms-input-border-hover: var(--base-input-border-hover, 1px solid var(--ms-accent-color));--ms-input-border-focus: var(--base-input-border-focus, 1px solid var(--ms-accent-color));--ms-input-placeholder-color: var(--base-input-placeholder-color, var(--ms-text-color-4));--ms-input-bg-disabled: var(--base-input-bg-disabled, rgba(107, 114, 128, .05));--ms-toggle-icon-color: var(--ms-text-color-3);--ms-toggle-icon-color-open: var(--ms-text-color-3);--ms-counter-badge-bg: var(--ms-accent-color);--ms-counter-badge-bg-hover: var(--ms-accent-color-hover);--ms-counter-badge-color: var(--ms-text-color-on-accent);--ms-hint-bg: var(--base-main-bg, light-dark(#ffffff, #1a1a1a));--ms-hint-color: var(--ms-text-color-4);--ms-hint-border-color: var(--ms-border-color);--ms-dropdown-bg: var(--base-dropdown-bg, var(--base-elevated-bg, light-dark(#ffffff, #1a1a1a)));--ms-dropdown-text-color: var(--ms-text-color-1);--ms-dropdown-border-color: var(--ms-border-color);--ms-dropdown-box-shadow-semantic: var(--base-dropdown-box-shadow, 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1));--ms-actions-bg: var(--base-main-bg, light-dark(#ffffff, #1a1a1a));--ms-actions-border-color: var(--ms-border-color);--ms-action-button-bg: transparent;--ms-action-button-bg-hover: var(--ms-primary-bg);--ms-action-button-border-color: var(--ms-border-color);--ms-action-button-border-color-hover: var(--ms-accent-color);--ms-action-button-color: var(--ms-text-color-1);--ms-group-border-color: var(--ms-border-color);--ms-option-text-color: var(--ms-text-color-1);--ms-option-bg: transparent;--ms-option-bg-hover: var(--ms-primary-bg);--ms-option-color-hover: inherit;--ms-option-bg-focused: var(--ms-primary-bg);--ms-option-color-focused: inherit;--ms-option-outline-color-focused: var(--ms-accent-color);--ms-option-bg-selected: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-option-bg-matched: color-mix(in srgb, var(--ms-accent-color) 8%, transparent);--ms-option-color-matched: inherit;--ms-option-border-matched-color: color-mix(in srgb, var(--ms-accent-color) 40%, transparent);--ms-option-title-color: var(--ms-text-color-1);--ms-option-subtitle-color: var(--ms-text-color-3);--ms-option-mark-bg: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-option-mark-color: inherit;--ms-loading-color: var(--ms-text-color-3);--ms-badge-bg: var(--ms-accent-color-light);--ms-badge-bg-hover: var(--base-hover-bg, var(--ms-input-bg));--ms-badge-bg-active: var(--ms-accent-color-light-hover);--ms-badge-text-bg-hover: var(--base-hover-bg, var(--ms-input-bg));--ms-badge-text-color-hover: var(--ms-badge-text-color);--ms-badge-counter-border-color: var(--ms-border-color);--ms-badge-counter-text-bg: var(--ms-primary-bg-hover);--ms-badge-counter-text-color: var(--ms-text-color-1);--ms-badge-counter-remove-bg: var(--ms-text-color-3);--ms-badge-counter-remove-bg-hover: var(--ms-text-color-1);--ms-badge-counter-remove-color: var(--ms-text-color-on-accent);--ms-counter-wrapper-border-color: var(--ms-border-color);--ms-count-clear-bg-hover: var(--ms-accent-color);--ms-tooltip-bg: var(--base-tooltip-bg, var(--base-inverse-bg, light-dark(#333333, #f5f5f5)));--ms-tooltip-text-color: var(--base-tooltip-text-color, light-dark(#ffffff, #1a1a1a));--ms-selected-popover-bg: var(--base-dropdown-bg, var(--base-elevated-bg, light-dark(#ffffff, #1a1a1a)));--ms-selected-popover-border-color: var(--ms-border-color);--ms-selected-popover-header-border-color: var(--ms-border-color);--ms-selected-popover-close-bg-hover: var(--ms-accent-color);--ms-input-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-input-padding-right: calc(4 * var(--ms-rem));--ms-input-padding-h: calc(1.2 * var(--ms-rem));--ms-input-height: calc(var(--base-input-size-md-height, 3.5) * var(--ms-rem));--ms-input-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-border-width: 1px;--ms-input-border-radius: var(--ms-border-radius-md);--ms-input-text: var(--ms-text-color-1);--ms-input-bg-disabled: rgba(107, 114, 128, .05);--ms-input-size-xs-font: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-input-size-xs-padding-v: calc(.4 * var(--ms-rem));--ms-input-size-xs-padding-h: calc(.8 * var(--ms-rem));--ms-input-size-xs-height: calc(var(--base-input-size-xs-height, 3.1) * var(--ms-rem));--ms-input-size-sm-font: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-size-sm-padding-v: calc(.5 * var(--ms-rem));--ms-input-size-sm-padding-h: calc(1 * var(--ms-rem));--ms-input-size-sm-height: calc(var(--base-input-size-sm-height, 3.3) * var(--ms-rem));--ms-input-size-md-font: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-size-md-padding-v: calc(.8 * var(--ms-rem));--ms-input-size-md-padding-h: calc(1.2 * var(--ms-rem));--ms-input-size-md-height: calc(var(--base-input-size-md-height, 3.5) * var(--ms-rem));--ms-input-size-lg-font: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-input-size-lg-padding-v: calc(1 * var(--ms-rem));--ms-input-size-lg-padding-h: calc(1.4 * var(--ms-rem));--ms-input-size-lg-height: calc(var(--base-input-size-lg-height, 3.8) * var(--ms-rem));--ms-input-size-xl-font: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-input-size-xl-padding-v: calc(1.2 * var(--ms-rem));--ms-input-size-xl-padding-h: calc(1.6 * var(--ms-rem));--ms-input-size-xl-height: calc(var(--base-input-size-xl-height, 4.1) * var(--ms-rem));--ms-toggle-right: calc(1.2 * var(--ms-rem));--ms-toggle-color: var(--ms-text-color-3);--ms-transform-center-y: translateY(-50%);--ms-transform-rotate-180: 180deg;--ms-counter-offset: calc(3.2 * var(--ms-rem));--ms-counter-padding: calc(.2 * var(--ms-rem)) calc(.4 * var(--ms-rem));--ms-counter-bg: var(--ms-accent-color);--ms-counter-color: var(--ms-text-color-on-accent);--ms-counter-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-counter-font-weight: var(--base-font-weight-semibold, 600);--ms-counter-border-radius: var(--ms-border-radius-sm);--ms-counter-bg-hover: var(--ms-accent-color-hover);--ms-transform-scale-hover: 1.1;--ms-hint-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-hint-border: 1px solid var(--ms-hint-border-color);--ms-hint-border-radius: var(--ms-border-radius-lg);--ms-hint-box-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ms-hint-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-dropdown-border: var(--base-dropdown-border, 1px solid var(--ms-dropdown-border-color));--ms-dropdown-border-radius: var(--ms-border-radius-lg);--ms-dropdown-box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ms-options-max-height: calc(32 * var(--ms-rem));--ms-option-color: var(--ms-text-color-1);--ms-z-index-dropdown: 9999;--ms-z-index-sticky: 1;--ms-actions-gap: calc(.4 * var(--ms-rem));--ms-actions-padding: calc(.8 * var(--ms-rem));--ms-actions-border-bottom: 1px solid var(--ms-actions-border-color);--ms-action-btn-padding: calc(.4 * var(--ms-rem)) calc(.8 * var(--ms-rem));--ms-action-btn-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-action-btn-border: var(--ms-border);--ms-action-btn-border-radius: var(--ms-border-radius-sm);--ms-action-btn-bg: transparent;--ms-action-btn-color: inherit;--ms-action-btn-bg-hover: var(--ms-primary-bg);--ms-action-btn-border-color-hover: var(--ms-accent-color);--ms-transform-scale-active: .98;--ms-options-padding: 0;--ms-group-border-top: 1px solid var(--ms-group-border-color);--ms-group-margin-top: calc(.4 * var(--ms-rem));--ms-group-padding-top: calc(.4 * var(--ms-rem));--ms-group-label-padding: calc(.4 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-group-label-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-group-label-font-weight: var(--base-font-weight-semibold, 600);--ms-group-label-color: var(--ms-text-color-3);--ms-group-label-transform: uppercase;--ms-group-label-letter-spacing: .05em;--ms-option-gap: calc(.8 * var(--ms-rem));--ms-option-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-option-padding-h: calc(1.2 * var(--ms-rem));--ms-option-min-height: auto;--ms-option-outline-focused: 2px solid var(--ms-option-outline-color-focused);--ms-option-focus-outline-offset: -2px;--ms-option-border-matched: 3px solid var(--ms-option-border-matched-color);--ms-option-bg-focused-hover: var(--ms-primary-bg);--ms-option-bg-matched-hover: color-mix(in srgb, var(--ms-accent-color) 12%, transparent);--ms-option-bg-selected-focused: color-mix(in srgb, var(--ms-accent-color) 15%, transparent);--ms-option-bg-selected-matched: color-mix(in srgb, var(--ms-accent-color) 15%, transparent);--ms-option-disabled-bg: var(--base-disabled-bg, transparent);--ms-option-bg-disabled-selected: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-disabled-opacity: .5;--ms-option-content-gap: calc(.8 * var(--ms-rem));--ms-option-icon-size: calc(2 * var(--ms-rem));--ms-option-icon-font-size: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-option-title-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-option-mark-font-weight: var(--base-font-weight-semibold, 600);--ms-option-title-white-space: normal;--ms-option-title-overflow: visible;--ms-option-title-text-overflow: clip;--ms-option-subtitle-margin-top: calc(.4 * var(--ms-rem));--ms-option-subtitle-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-option-subtitle-line-height: var(--base-line-height-tight, 1.25);--ms-checkbox-margin-top: calc(.2 * var(--ms-rem));--ms-checkbox-margin-right: 0;--ms-checkbox-margin-bottom: 0;--ms-checkbox-margin-left: 0;--ms-checkbox-size: calc(1.6 * var(--ms-rem));--ms-checkbox-scale: 1;--ms-checkbox-align: center;--ms-checkbox-bg: var(--ms-input-bg);--ms-checkbox-border-width: 1px;--ms-checkbox-border-color: var(--base-checkbox-border-color, #8f8f8f);--ms-checkbox-border: var(--ms-checkbox-border-width) solid var(--ms-checkbox-border-color);--ms-checkbox-border-radius: calc(.3 * var(--ms-rem));--ms-checkbox-checkmark-thickness: 2.5px;--ms-checkbox-checked-bg: var(--ms-accent-color);--ms-checkbox-checked-border: var(--ms-checkbox-border-width) solid var(--ms-accent-color);--ms-checkbox-checkmark-color: var(--ms-text-color-on-accent);--ms-checkbox-hover-border-color: var(--ms-accent-color);--ms-checkbox-disabled-bg: var(--ms-primary-bg);--ms-checkbox-disabled-border: var(--ms-checkbox-border-width) solid var(--ms-border-color);--ms-checkbox-checked-bg-hover: var(--ms-accent-color-hover);--ms-checkbox-checked-border-color-hover: var(--ms-accent-color-hover);--ms-state-min-height: calc(8 * var(--ms-rem));--ms-empty-padding: calc(1.6 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-empty-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-empty-color: var(--ms-text-color-3);--ms-loader-padding: calc(1.6 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-loader-gap: calc(.8 * var(--ms-rem));--ms-loading-text-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-loading-text-color: var(--ms-text-color-3);--ms-badges-gap: calc(.8 * var(--ms-rem));--ms-badges-margin-bottom: calc(.8 * var(--ms-rem));--ms-badges-margin-top: calc(.8 * var(--ms-rem));--ms-badges-margin-left: calc(.4 * var(--ms-rem));--ms-badges-margin-right: calc(.4 * var(--ms-rem));--ms-inline-align: center;--ms-badge-gap: calc(.8 * var(--ms-rem));--ms-badge-height: calc(2.7 * var(--ms-rem));--ms-badge-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-badge-font-weight: var(--base-font-weight-semibold, 600);--ms-badge-border-radius: var(--ms-border-radius-sm);--ms-order-first: -1;--ms-badge-text-padding: 0 calc(.8 * var(--ms-rem));--ms-badge-text-bg: var(--ms-accent-color-light);--ms-badge-text-color: var(--ms-accent-color);--ms-badge-text-border: none;--ms-badge-remove-width: calc(2.7 * var(--ms-rem));--ms-badge-remove-bg: var(--ms-accent-color);--ms-badge-remove-color: var(--ms-text-color-on-accent);--ms-badge-remove-border: none;--ms-badge-remove-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-badge-remove-bg-hover: var(--ms-accent-color-hover);--ms-badge-remove-box-shadow-focus: 0 0 0 2px color-mix(in srgb, var(--ms-accent-color) 50%, transparent);--ms-badge-remove-icon-size: calc(1 * var(--ms-rem));--ms-icon-remove: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 6L18 18M18 6L6 18' stroke='black' stroke-width='2.5' stroke-linecap='round' fill='none'/></svg>");--ms-badge-counter-bg: transparent;--ms-badge-counter-border: 1px solid var(--ms-badge-counter-border-color);--ms-badge-counter-border-radius: var(--ms-border-radius-sm);--ms-more-badge-bg: var(--ms-accent-color-light);--ms-more-badge-hover-bg: var(--ms-badge-bg-hover);--ms-more-badge-active-bg: var(--ms-accent-color-light-hover);--ms-count-display-margin-bottom: calc(.8 * var(--ms-rem));--ms-count-display-margin-top: calc(.8 * var(--ms-rem));--ms-count-display-margin-left: calc(.8 * var(--ms-rem));--ms-count-display-margin-right: calc(.8 * var(--ms-rem));--ms-counter-wrapper-bg: transparent;--ms-counter-wrapper-border: var(--ms-border);--ms-counter-wrapper-border-radius: var(--ms-border-radius-sm);--ms-counter-wrapper-padding: calc(.4 * var(--ms-rem)) calc(.8 * var(--ms-rem));--ms-counter-wrapper-gap: calc(.4 * var(--ms-rem));--ms-counter-wrapper-bg-hover: var(--ms-primary-bg);--ms-counter-wrapper-border-color-hover: var(--ms-accent-color);--ms-count-text-bg: transparent;--ms-count-text-border: none;--ms-count-text-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-count-text-color: var(--ms-text-color-1);--ms-count-clear-size: calc(1.6 * var(--ms-rem));--ms-count-clear-bg: transparent;--ms-count-clear-color: var(--ms-text-color-3);--ms-count-clear-font-size: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-count-clear-border-radius: var(--ms-border-radius-sm);--ms-count-clear-bg-hover: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-count-clear-color-hover: var(--ms-accent-color);--ms-count-clear-icon-size: calc(1.4 * var(--ms-rem));--ms-icon-clear: var(--ms-icon-remove);--ms-tooltip-color: var(--ms-tooltip-text-color);--ms-tooltip-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-tooltip-border-radius: var(--ms-border-radius-lg);--ms-tooltip-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-tooltip-max-width: calc(32 * var(--ms-rem));--ms-tooltip-shadow: 0 2px 8px rgba(0, 0, 0, .15);--ms-tooltip-z-index: 10000;--ms-option-tooltip-bg: var(--ms-tooltip-bg);--ms-option-tooltip-text-color: var(--ms-tooltip-text-color);--ms-option-tooltip-padding: var(--ms-tooltip-padding);--ms-option-tooltip-border-radius: var(--ms-tooltip-border-radius);--ms-option-tooltip-font-size: var(--ms-tooltip-font-size);--ms-option-tooltip-max-width: var(--ms-tooltip-max-width);--ms-option-tooltip-shadow: var(--ms-tooltip-shadow);--ms-option-tooltip-z-index: var(--ms-tooltip-z-index);--ms-z-index-popover: 10000;--ms-selected-popover-width: calc(32 * var(--ms-rem));--ms-selected-popover-max-height: calc(32 * var(--ms-rem));--ms-selected-popover-border: 1px solid var(--ms-selected-popover-border-color);--ms-selected-popover-border-radius: var(--ms-border-radius-lg);--ms-selected-popover-box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ms-selected-popover-header-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-selected-popover-header-bg: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-selected-popover-header-border-bottom: 1px solid var(--ms-selected-popover-header-border-color);--ms-selected-popover-header-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-selected-popover-header-font-weight: var(--base-font-weight-semibold, 600);--ms-selected-popover-header-color: var(--ms-text-color-1);--ms-popover-close-size: calc(2.4 * var(--ms-rem));--ms-selected-popover-close-bg: transparent;--ms-selected-popover-close-color: var(--ms-text-color-3);--ms-selected-popover-close-font-size: calc(var(--base-font-size-xl, 2) * var(--ms-rem));--ms-selected-popover-close-border-radius: var(--ms-border-radius-sm);--ms-selected-popover-close-bg-hover: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-selected-popover-close-color-hover: var(--ms-accent-color);--ms-selected-popover-close-icon-size: calc(1.4 * var(--ms-rem));--ms-selected-popover-body-gap: calc(.4 * var(--ms-rem));--ms-selected-popover-body-padding: calc(.8 * var(--ms-rem));--ms-selected-popover-body-max-height: calc(28.8 * var(--ms-rem));--ms-font-size-2xs: calc(var(--base-font-size-2xs, 1) * var(--ms-rem));--ms-font-size-xs: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-font-size-sm: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-font-size-base: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-font-size-lg: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-font-weight-normal: var(--base-font-weight-normal, 400);--ms-font-weight-medium: var(--base-font-weight-medium, 500);--ms-font-weight-semibold: var(--base-font-weight-semibold, 600);--ms-line-height-none: 1;--ms-line-height-tight: var(--base-line-height-tight, 1.25);--ms-line-height-normal: var(--base-line-height-normal, 1.5);--ms-line-height-relaxed: var(--base-line-height-relaxed, 1.75);--ms-border-radius-sm: calc(var(--base-border-radius-sm, .4) * var(--ms-rem));--ms-border-radius-md: calc(var(--base-border-radius-md, .6) * var(--ms-rem));--ms-border-radius-lg: calc(var(--base-border-radius-lg, .8) * var(--ms-rem));--ms-border-radius: var(--ms-border-radius-md);--ms-spacing-xs: calc(.4 * var(--ms-rem));--ms-spacing-sm: calc(.8 * var(--ms-rem));--ms-spacing-md: calc(1.2 * var(--ms-rem));--ms-spacing-lg: calc(1.6 * var(--ms-rem));--ms-transition-fast: .15s;--ms-transition-normal: .2s;--ms-easing-snappy: cubic-bezier(.4, 0, .2, 1);--ms-placeholder-opacity: .6;--ms-disabled-input-opacity: .6;--ms-scrollbar-width: 8px;--ms-scrollbar-track-bg: transparent;--ms-scrollbar-thumb-bg: var(--ms-border-color);--ms-scrollbar-thumb-bg-hover: var(--ms-text-color-3);--ms-scrollbar-thumb-border-radius: 4px;--ms-debug-bg: var(--base-elevated-bg, light-dark(#f9fafb, #2b2b2b));--ms-debug-border-color: var(--ms-border-color);--ms-debug-text-color: var(--ms-text-color-1);--ms-debug-border-radius: var(--ms-border-radius-md);--ms-debug-summary-color: var(--ms-accent-color);--ms-debug-summary-bg-hover: var(--ms-primary-bg);--ms-debug-summary-outline-color: var(--ms-accent-color);--ms-debug-summary-border-radius: var(--ms-border-radius-sm);--ms-debug-stats-bg: var(--base-main-bg, light-dark(#ffffff, #1a1a1a));--ms-debug-stats-border-radius: var(--ms-border-radius-sm);--ms-debug-bullet-color: var(--ms-accent-color)}}@layer component{web-multiselect:not(:defined){display:block;min-height:calc(3.5 * var(--ms-rem));color:transparent!important;background:transparent}.ms__wrapper{display:flex;flex-direction:column;align-items:stretch}.ms__wrapper--inline{flex-direction:row;align-items:var(--ms-inline-align, center)}.ms{position:relative;width:100%}}@layer component{.ms__input-wrapper{position:relative;display:flex;align-items:center}.ms__input{box-sizing:border-box;width:100%;font-family:inherit;height:var(--ms-input-height);padding:var(--ms-input-padding);padding-right:var(--ms-input-padding-right);font-size:var(--ms-input-font-size);border:var(--ms-input-border);border-radius:var(--ms-input-border-radius);background:var(--ms-input-bg);color:var(--ms-input-color);cursor:pointer;transition:border var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__input:hover:not(:focus):not(:disabled){border:var(--ms-input-border-hover)}.ms__input:focus{outline:none;border:var(--ms-input-border-focus)}.ms__input::placeholder{color:var(--ms-input-placeholder-color);opacity:0;transition:opacity var(--ms-transition-fast) var(--ms-easing-snappy)}:host([data-ready]) .ms__input::placeholder{opacity:var(--ms-placeholder-opacity)}.ms__input.ms__input--xs{font-size:var(--ms-input-size-xs-font);padding:var(--ms-input-size-xs-padding-v) var(--ms-input-size-xs-padding-h);padding-right:calc(var(--ms-input-size-xs-padding-h) * 2.5);height:var(--ms-input-size-xs-height)}.ms__input.ms__input--sm{font-size:var(--ms-input-size-sm-font);padding:var(--ms-input-size-sm-padding-v) var(--ms-input-size-sm-padding-h);padding-right:calc(var(--ms-input-size-sm-padding-h) * 2.5);height:var(--ms-input-size-sm-height)}.ms__input.ms__input--lg{font-size:var(--ms-input-size-lg-font);padding:var(--ms-input-size-lg-padding-v) var(--ms-input-size-lg-padding-h);padding-right:calc(var(--ms-input-size-lg-padding-h) * 2.5);height:var(--ms-input-size-lg-height)}.ms__input.ms__input--xl{font-size:var(--ms-input-size-xl-font);padding:var(--ms-input-size-xl-padding-v) var(--ms-input-size-xl-padding-h);padding-right:calc(var(--ms-input-size-xl-padding-h) * 2.5);height:var(--ms-input-size-xl-height)}.ms__toggle{position:absolute;right:var(--ms-toggle-right);top:50%;transform:var(--ms-transform-center-y);pointer-events:none;color:var(--ms-toggle-icon-color);transition:transform var(--ms-transition-fast) var(--ms-easing-snappy)}.ms--open .ms__toggle{transform:var(--ms-transform-center-y) rotate(var(--ms-transform-rotate-180));color:var(--ms-toggle-icon-color-open)}.ms__counter{position:absolute;right:var(--ms-counter-offset);top:50%;transform:var(--ms-transform-center-y);padding:var(--ms-counter-padding);background:var(--ms-counter-badge-bg);color:var(--ms-counter-badge-color);font-size:var(--ms-counter-font-size);font-weight:var(--ms-counter-font-weight);border-radius:var(--ms-counter-border-radius);cursor:pointer;transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__counter:hover{background:var(--ms-counter-badge-bg-hover);transform:var(--ms-transform-center-y) scale(var(--ms-transform-scale-hover))}.ms__actions{display:flex;flex-direction:column;gap:var(--ms-actions-gap);padding:var(--ms-actions-padding)}.ms__actions--top{border-bottom:var(--ms-actions-border-bottom)}.ms__actions--bottom{flex-direction:column-reverse;border-top:var(--ms-actions-border-bottom)}.ms__actions-row{display:flex;flex-wrap:nowrap;gap:var(--ms-actions-gap)}.ms__actions--wrap .ms__actions-row{flex-wrap:wrap}.ms__actions--sticky{position:sticky;z-index:var(--ms-z-index-sticky);background:var(--ms-actions-bg)}.ms__actions--sticky.ms__actions--top{top:0}.ms__actions--sticky.ms__actions--bottom{bottom:0}.ms__actions--align-stretch .ms__action-btn{flex:1}.ms__actions--align-left .ms__actions-row{justify-content:flex-start}.ms__actions--align-right .ms__actions-row{justify-content:flex-end}.ms__actions--align-center .ms__actions-row{justify-content:center}.ms__actions--align-space-between .ms__actions-row{justify-content:space-between}.ms__action-btn{font-family:inherit;padding:var(--ms-action-btn-padding);font-size:var(--ms-action-btn-font-size);border:var(--ms-action-btn-border);border-radius:var(--ms-action-btn-border-radius);background:var(--ms-action-button-bg);color:var(--ms-action-button-color);cursor:pointer;transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__action-btn:hover{background:var(--ms-action-button-bg-hover);border-color:var(--ms-action-button-border-color-hover)}.ms__action-btn:active{transform:scale(var(--ms-transform-scale-active))}.ms__action-btn:disabled,.ms__action-btn[disabled]{opacity:var(--ms-disabled-opacity);cursor:not-allowed;pointer-events:none}}@layer component{.ms__hint{display:none;position:fixed;z-index:var(--ms-z-index-popover);padding:var(--ms-hint-padding);background:var(--ms-hint-bg);border:var(--ms-hint-border);border-radius:var(--ms-hint-border-radius);box-shadow:var(--ms-hint-box-shadow);font-size:var(--ms-hint-font-size);color:var(--ms-hint-color);line-height:var(--ms-line-height-relaxed);max-width:100%}.ms__hint--visible{display:block}.ms__dropdown{display:none;position:fixed;font-family:inherit;z-index:var(--ms-z-index-dropdown);background:var(--ms-dropdown-bg);border:var(--ms-dropdown-border);border-radius:var(--ms-dropdown-border-radius);box-shadow:var(--ms-dropdown-box-shadow);max-height:var(--ms-options-max-height);overflow:hidden;color:var(--ms-dropdown-text-color)}.ms__dropdown--visible{display:flex;flex-direction:column}.ms__dropdown-inner{flex:1;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__dropdown-inner::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__dropdown-inner::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__dropdown-inner::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__dropdown-inner::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__dropdown--virtual{max-height:none}.ms__dropdown--virtual .ms__dropdown-inner{overflow-y:visible}.ms__badge-tooltip{position:fixed;z-index:var(--ms-tooltip-z-index);opacity:0;visibility:hidden;transition:opacity var(--ms-transition-normal) ease,visibility var(--ms-transition-normal) ease;background:var(--ms-tooltip-bg);color:var(--ms-tooltip-text-color);padding:var(--ms-tooltip-padding);border-radius:var(--ms-tooltip-border-radius);font-size:var(--ms-tooltip-font-size);line-height:var(--ms-line-height-relaxed);max-width:var(--ms-tooltip-max-width);word-wrap:break-word;white-space:pre-wrap;box-shadow:var(--ms-tooltip-shadow);pointer-events:none}.ms__badge-tooltip--visible{opacity:1;visibility:visible}.ms__option-tooltip{position:fixed;z-index:var(--ms-option-tooltip-z-index);opacity:0;visibility:hidden;transition:opacity var(--ms-transition-normal) ease,visibility var(--ms-transition-normal) ease;background:var(--ms-option-tooltip-bg);color:var(--ms-option-tooltip-text-color);padding:var(--ms-option-tooltip-padding);border-radius:var(--ms-option-tooltip-border-radius);font-size:var(--ms-option-tooltip-font-size);line-height:var(--ms-line-height-relaxed);max-width:var(--ms-option-tooltip-max-width);word-wrap:break-word;white-space:pre-wrap;box-shadow:var(--ms-option-tooltip-shadow);pointer-events:none}.ms__option-tooltip--visible{opacity:1;visibility:visible}.ms__selected-popover{display:none;position:fixed;z-index:var(--ms-z-index-popover);background:var(--ms-selected-popover-bg);border:var(--ms-selected-popover-border);border-radius:var(--ms-selected-popover-border-radius);box-shadow:var(--ms-selected-popover-box-shadow);width:var(--ms-selected-popover-width);max-height:var(--ms-selected-popover-max-height);overflow:hidden}.ms__selected-popover--visible{display:flex;flex-direction:column}.ms__selected-popover--virtual{display:block;overflow:visible;max-height:none}.ms__selected-popover-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ms-selected-popover-header-padding);background:var(--ms-selected-popover-header-bg);border-bottom:var(--ms-selected-popover-header-border-bottom);font-size:var(--ms-selected-popover-header-font-size);font-weight:var(--ms-selected-popover-header-font-weight);color:var(--ms-selected-popover-header-color)}.ms__selected-popover-close{display:flex;align-items:center;justify-content:center;width:var(--ms-popover-close-size);height:var(--ms-popover-close-size);padding:0;border:none;background:var(--ms-selected-popover-close-bg);color:var(--ms-selected-popover-close-color);font-size:var(--ms-selected-popover-close-font-size);line-height:var(--ms-line-height-none);cursor:pointer;border-radius:var(--ms-selected-popover-close-border-radius);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__selected-popover-close:hover{background:var(--ms-selected-popover-close-bg-hover);color:var(--ms-selected-popover-close-color-hover)}.ms__selected-popover-close:before{content:"";display:block;width:var(--ms-selected-popover-close-icon-size);height:var(--ms-selected-popover-close-icon-size);background-color:currentColor;-webkit-mask:var(--ms-icon-remove) center / contain no-repeat;mask:var(--ms-icon-remove) center / contain no-repeat}.ms__selected-popover-body{display:flex;flex-direction:column;gap:var(--ms-selected-popover-body-gap);padding:var(--ms-selected-popover-body-padding);overflow-y:auto;max-height:var(--ms-selected-popover-body-max-height);scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__selected-popover-body::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__selected-popover-body::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__selected-popover-body::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__selected-popover-body::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__selected-popover-body .ms__badge{width:100%;min-height:fit-content;line-height:var(--ms-line-height-relaxed)}.ms__selected-popover-body .ms__badge-text{flex:1;min-width:0;white-space:normal;word-wrap:break-word}.ms__selected-popover-body--virtual{display:block;max-height:none;padding:0}.ms__selected-popover-body--virtual .ms__badge{height:var(--ms-badge-height-virtual, 36px);min-height:var(--ms-badge-height-virtual, 36px);max-height:var(--ms-badge-height-virtual, 36px);margin-bottom:var(--ms-selected-popover-body-gap);overflow:hidden;box-sizing:border-box}.ms__selected-popover-body--virtual .ms__badge-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}@layer component{.ms--disabled .ms__input{opacity:var(--ms-disabled-input-opacity);cursor:not-allowed;background:var(--ms-input-bg-disabled)}.ms--disabled .ms__toggle{opacity:var(--ms-disabled-input-opacity)}.ms--no-checkboxes .ms__option{gap:0;padding-left:var(--ms-option-padding-h)}.ms--no-checkboxes .ms__option-content{padding-left:0}}@layer component;@layer component{.ms__badges{display:flex;flex-wrap:wrap;gap:var(--ms-badges-gap);padding:0}.ms__badges:empty{display:none}.ms__badges--bottom{margin-top:var(--ms-badges-margin-bottom)}.ms__badges--top{margin-bottom:var(--ms-badges-margin-top);order:var(--ms-order-first)}.ms__badges--left{order:var(--ms-order-first);margin-right:var(--ms-badges-margin-left);justify-content:flex-end}.ms__badges--right{margin-left:var(--ms-badges-margin-right);justify-content:flex-start}.ms__badge{display:inline-flex;align-items:center;height:var(--ms-badge-height);font-size:var(--ms-badge-font-size);font-weight:var(--ms-badge-font-weight);line-height:var(--ms-line-height-none);border-radius:var(--ms-badge-border-radius);overflow:hidden;max-width:100%}.ms__badge-text{display:flex;align-items:center;box-sizing:border-box;height:100%;padding:var(--ms-badge-text-padding);background:var(--ms-badge-text-bg);color:var(--ms-badge-text-color);border:var(--ms-badge-text-border);border-right:none;border-radius:var(--ms-badge-border-radius) 0 0 var(--ms-badge-border-radius);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background-color var(--ms-transition-normal) ease,color var(--ms-transition-normal) ease}.ms__badge:hover .ms__badge-text{background:var(--ms-badge-text-bg-hover, var(--ms-badge-text-bg));color:var(--ms-badge-text-color-hover, var(--ms-badge-text-color))}.ms__badge-remove{display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-family:inherit;width:var(--ms-badge-remove-width);height:100%;flex-shrink:0;background:var(--ms-badge-remove-bg);color:var(--ms-badge-remove-color);border:var(--ms-badge-remove-border);border-left:none;border-radius:0 var(--ms-badge-border-radius) var(--ms-badge-border-radius) 0;cursor:pointer;transition:background-color var(--ms-transition-normal) ease;font-size:var(--ms-badge-remove-font-size)}.ms__badge-remove:hover{background:var(--ms-badge-remove-bg-hover)}.ms__badge-remove:focus{outline:none}.ms__badge-remove:focus-visible{outline:none;box-shadow:var(--ms-badge-remove-box-shadow-focus)}.ms__badge-remove:before{content:"";display:block;width:var(--ms-badge-remove-icon-size);height:var(--ms-badge-remove-icon-size);background-color:currentColor;-webkit-mask:var(--ms-icon-remove) center / contain no-repeat;mask:var(--ms-icon-remove) center / contain no-repeat}.ms__badge--counter{cursor:pointer}.ms__badge--counter .ms__badge-text{background:var(--ms-badge-counter-text-bg);color:var(--ms-badge-counter-text-color);border:var(--ms-badge-counter-border);border-right:none}.ms__badge--counter .ms__badge-remove{background:var(--ms-badge-counter-remove-bg);color:var(--ms-badge-counter-remove-color);border:var(--ms-badge-counter-border);border-left:none}.ms__badge--counter .ms__badge-remove:hover{background:var(--ms-badge-counter-remove-bg-hover)}.ms__badge--more,.ms__badge[data-action=show-selected]{cursor:pointer}}@layer component{.ms__count-display{display:flex;align-items:center}.ms__count-display:empty{display:none}.ms__count-display--bottom{margin-top:var(--ms-count-display-margin-bottom)}.ms__count-display--top{margin-bottom:var(--ms-count-display-margin-top);order:var(--ms-order-first)}.ms__count-display--left{order:var(--ms-order-first);margin-right:var(--ms-count-display-margin-left);justify-content:flex-start}.ms__count-display--right{margin-left:var(--ms-count-display-margin-right);justify-content:flex-end}.ms__counter-wrapper{display:inline-flex;align-items:center;gap:var(--ms-counter-wrapper-gap);background:var(--ms-counter-wrapper-bg);border:var(--ms-counter-wrapper-border);border-radius:var(--ms-counter-wrapper-border-radius);padding:var(--ms-counter-wrapper-padding);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__counter-wrapper:hover{background:var(--ms-counter-wrapper-bg-hover);border-color:var(--ms-counter-wrapper-border-color-hover)}.ms__count-text{display:inline-flex;align-items:center;background:var(--ms-count-text-bg);border:var(--ms-count-text-border);padding:0;font-size:var(--ms-count-text-font-size);color:var(--ms-count-text-color);cursor:pointer;transition:color var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__count-clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:var(--ms-count-clear-size);height:var(--ms-count-clear-size);padding:0;border:none;background:var(--ms-count-clear-bg);color:var(--ms-count-clear-color);font-size:var(--ms-count-clear-font-size);line-height:var(--ms-line-height-none);cursor:pointer;border-radius:var(--ms-count-clear-border-radius);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__count-clear:hover{background:var(--ms-count-clear-bg-hover);color:var(--ms-count-clear-color-hover)}.ms__count-clear:before{content:"";display:block;width:var(--ms-count-clear-icon-size);height:var(--ms-count-clear-icon-size);background-color:currentColor;-webkit-mask:var(--ms-icon-clear) center / contain no-repeat;mask:var(--ms-icon-clear) center / contain no-repeat}}@layer component{.ms__debug-info{margin-top:calc(.4 * var(--ms-rem));padding:calc(.4 * var(--ms-rem));background-color:var(--ms-debug-bg);border:1px solid var(--ms-debug-border-color);border-radius:var(--ms-debug-border-radius);font-size:calc(1.2 * var(--ms-rem));color:var(--ms-debug-text-color)}.ms__debug-info details summary{cursor:pointer;font-weight:600;color:var(--ms-debug-summary-color);-webkit-user-select:none;user-select:none;padding:calc(.4 * var(--ms-rem));border-radius:var(--ms-debug-summary-border-radius)}.ms__debug-info details summary:hover{background-color:var(--ms-debug-summary-bg-hover)}.ms__debug-info details summary:focus{outline:2px solid var(--ms-debug-summary-outline-color);outline-offset:2px}.ms__debug-info .ms__debug-stats{display:flex;flex-direction:column;gap:calc(.4 * var(--ms-rem));margin-top:calc(.4 * var(--ms-rem));padding:calc(.4 * var(--ms-rem));background-color:var(--ms-debug-stats-bg);border-radius:var(--ms-debug-stats-border-radius)}.ms__debug-info .ms__debug-stats span{display:flex;justify-content:space-between;padding:2px 4px;font-family:monospace;font-size:calc(1 * var(--ms-rem))}.ms__debug-info .ms__debug-stats span:before{content:"•";margin-right:calc(.4 * var(--ms-rem));color:var(--ms-debug-bullet-color)}}@layer component{.ms__options{padding:var(--ms-options-padding);scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__options::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__options::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__options::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__options::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__options--virtual .ms__option,.ms__options--fixed-height .ms__option{height:var(--ms-option-height, 50px);min-height:var(--ms-option-height, 50px);max-height:var(--ms-option-height, 50px);overflow:hidden;box-sizing:border-box}.ms__group+.ms__group{border-top:var(--ms-group-border-top);margin-top:var(--ms-group-margin-top);padding-top:var(--ms-group-padding-top)}.ms__group-label{padding:var(--ms-group-label-padding);font-size:var(--ms-group-label-font-size);font-weight:var(--ms-group-label-font-weight);color:var(--ms-group-label-color);text-transform:var(--ms-group-label-transform);letter-spacing:var(--ms-group-label-letter-spacing)}.ms__option{display:flex;align-items:var(--ms-checkbox-align, center);gap:var(--ms-option-gap);padding:var(--ms-option-padding);min-height:var(--ms-option-min-height, auto);color:var(--ms-option-text-color);background:var(--ms-option-bg);cursor:pointer;user-select:none;-webkit-user-select:none}.ms__option:hover{background:var(--ms-option-bg-hover);color:var(--ms-option-color-hover, inherit)}.ms__option--focused{background:var(--ms-option-bg-focused);color:var(--ms-option-color-focused, inherit);outline:var(--ms-option-outline-focused);outline-offset:var(--ms-option-focus-outline-offset)}.ms__option--matched{background:var(--ms-option-bg-matched);color:var(--ms-option-color-matched, inherit);border-left:var(--ms-option-border-matched)}.ms__option--selected{background:var(--ms-option-bg-selected)}.ms__option--selected:hover{background:var(--ms-option-bg-selected-hover, var(--ms-option-bg-selected))}.ms__option--disabled{opacity:var(--ms-disabled-opacity);cursor:not-allowed;background:var(--ms-option-disabled-bg)}.ms__option--disabled:hover{background:var(--ms-option-disabled-bg)}.ms__option--focused:hover{background:var(--ms-option-bg-focused-hover);color:var(--ms-option-color-focused-hover, var(--ms-option-color-focused, var(--ms-option-text-color)))}.ms__option--matched:hover{background:var(--ms-option-bg-matched-hover);color:var(--ms-option-color-matched-hover, var(--ms-option-color-matched, var(--ms-option-text-color)))}.ms__option--selected.ms__option--focused{background:var(--ms-option-bg-selected-focused);outline:var(--ms-option-outline-focused);outline-offset:var(--ms-option-focus-outline-offset)}.ms__option--selected.ms__option--matched{background:var(--ms-option-bg-selected-matched);border-left:var(--ms-option-border-matched)}.ms__option--disabled.ms__option--selected{background:var(--ms-option-bg-disabled-selected)}.ms__option--disabled.ms__option--focused{outline:none}.ms__option[data-checkbox-align=top]{--ms-checkbox-align: flex-start}.ms__option[data-checkbox-align=bottom]{--ms-checkbox-align: flex-end}.ms__checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;flex-shrink:0;position:relative;margin-top:var(--ms-checkbox-margin-top);margin-right:var(--ms-checkbox-margin-right);margin-bottom:var(--ms-checkbox-margin-bottom);margin-left:var(--ms-checkbox-margin-left);width:var(--ms-checkbox-size);height:var(--ms-checkbox-size);transform:scale(var(--ms-checkbox-scale));transform-origin:top left;cursor:pointer;background:var(--ms-checkbox-bg);border:var(--ms-checkbox-border);border-radius:var(--ms-checkbox-border-radius);transition:background-color .15s ease,border-color .15s ease}.ms__checkbox:after{content:"";position:absolute;display:none;left:50%;top:40%;width:30%;height:55%;transform:translate(-50%,-50%) rotate(45deg);border:solid var(--ms-checkbox-checkmark-color);border-width:0 var(--ms-checkbox-checkmark-thickness, 2px) var(--ms-checkbox-checkmark-thickness, 2px) 0}.ms__checkbox:hover:not(:disabled){border-color:var(--ms-checkbox-hover-border-color)}.ms__checkbox:checked{background:var(--ms-checkbox-checked-bg);border:var(--ms-checkbox-checked-border)}.ms__checkbox:checked:after{display:block}.ms__checkbox--indeterminate{background:var(--ms-checkbox-checked-bg);border:var(--ms-checkbox-checked-border)}.ms__checkbox--indeterminate:after{display:block;top:50%;left:50%;width:55%;height:0;transform:translate(-50%,-50%);border:none;border-bottom:var(--ms-checkbox-checkmark-thickness, 2px) solid var(--ms-checkbox-checkmark-color)}.ms__checkbox--indeterminate:hover:not(:disabled){background:var(--ms-checkbox-checked-bg-hover);border-color:var(--ms-checkbox-checked-border-color-hover)}.ms__checkbox:checked:hover:not(:disabled){background:var(--ms-checkbox-checked-bg-hover);border-color:var(--ms-checkbox-checked-border-color-hover)}.ms__checkbox:focus-visible{outline:2px solid var(--ms-checkbox-checked-bg);outline-offset:2px}.ms__checkbox:disabled{cursor:not-allowed;background:var(--ms-checkbox-disabled-bg);border:var(--ms-checkbox-disabled-border);opacity:.6}.ms__checkbox:disabled:checked{background:var(--ms-checkbox-disabled-bg)}.ms__option--disabled .ms__checkbox{cursor:not-allowed}.ms__option-content{flex:1;display:flex;align-items:center;gap:var(--ms-option-content-gap);min-width:0}.ms__option-icon{flex-shrink:0;width:var(--ms-option-icon-size);height:var(--ms-option-icon-size);display:flex;align-items:center;justify-content:center;font-size:var(--ms-option-icon-font-size)}.ms__option-icon svg{width:100%;height:100%;fill:currentColor}.ms__option-text{flex:1;min-width:0}.ms__option-title{font-size:var(--ms-option-title-font-size);color:var(--ms-option-title-color);line-height:var(--ms-line-height-relaxed);white-space:var(--ms-option-title-white-space, normal);overflow:var(--ms-option-title-overflow, visible);text-overflow:var(--ms-option-title-text-overflow, clip)}.ms__option:hover .ms__option-title{color:var(--ms-option-title-color-hover, var(--ms-option-title-color))}.ms__option--selected .ms__option-title{color:var(--ms-option-title-color-selected, var(--ms-option-title-color))}.ms__option--selected:hover .ms__option-title{color:var(--ms-option-title-color-selected-hover, var(--ms-option-title-color-selected, var(--ms-option-title-color)))}.ms__option-title mark{background:var(--ms-option-mark-bg);color:var(--ms-option-mark-color);font-weight:var(--ms-option-mark-font-weight)}.ms__option-subtitle{margin-top:var(--ms-option-subtitle-margin-top);font-size:var(--ms-option-subtitle-font-size);color:var(--ms-option-subtitle-color);line-height:var(--ms-option-subtitle-line-height)}.ms__option:hover .ms__option-subtitle{color:var(--ms-option-subtitle-color-hover, var(--ms-option-subtitle-color))}.ms__option--selected .ms__option-subtitle{color:var(--ms-option-subtitle-color-selected, var(--ms-option-subtitle-color))}.ms__option--selected:hover .ms__option-subtitle{color:var(--ms-option-subtitle-color-selected-hover, var(--ms-option-subtitle-color-selected, var(--ms-option-subtitle-color)))}.ms__empty{display:flex;align-items:center;justify-content:center;min-height:var(--ms-state-min-height);padding:var(--ms-empty-padding);text-align:center;font-size:var(--ms-empty-font-size);color:var(--ms-empty-color)}.ms__loader{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:var(--ms-state-min-height);padding:var(--ms-loader-padding);gap:var(--ms-loader-gap)}.ms__loading-text{font-size:var(--ms-loading-text-font-size);color:var(--ms-loading-color)}}@layer component{.ms--rtl .ms__input-wrapper{direction:rtl}.ms--rtl .ms__input{text-align:right;padding-left:var(--ms-input-padding-right);padding-right:var(--ms-input-padding-h)}.ms--rtl .ms__toggle{left:var(--ms-toggle-right)!important;right:auto!important}.ms--rtl .ms__counter{left:var(--ms-counter-offset)!important;right:auto!important}.ms--rtl .ms__dropdown{direction:rtl;text-align:right}.ms--rtl .ms__option{flex-direction:row-reverse}.ms--rtl .ms__checkbox{margin-left:var(--ms-spacing-sm);margin-right:0}.ms--rtl .ms__option-content{text-align:right}.ms--rtl .ms__option-icon{margin-left:var(--ms-spacing-xs);margin-right:0}.ms--rtl .ms__badges{direction:rtl}.ms--rtl .ms__badges--right{margin-left:0;margin-right:var(--ms-badges-margin-right)}.ms--rtl .ms__badges--left{margin-right:0;margin-left:var(--ms-badges-margin-left)}.ms--rtl .ms__badge{flex-direction:row-reverse}.ms--rtl .ms__badge-remove{border-radius:var(--ms-badge-border-radius) 0 0 var(--ms-badge-border-radius);border-left:var(--ms-badge-remove-border);border-right:none}.ms--rtl .ms__badge-text{border-radius:0 var(--ms-badge-border-radius) var(--ms-badge-border-radius) 0;border-right:var(--ms-badge-text-border);border-left:none}.ms--rtl .ms__count-display{direction:rtl}.ms--rtl .ms__count-display--right{margin-left:0;margin-right:var(--ms-count-display-margin-right)}.ms--rtl .ms__count-display--left{margin-right:0;margin-left:var(--ms-count-display-margin-left)}.ms--rtl .ms__counter-wrapper{flex-direction:row-reverse}.ms--rtl .ms__selected-popover{direction:rtl;text-align:right}.ms--rtl .ms__actions{direction:rtl}.ms--rtl .ms__group-label,.ms--rtl .ms__empty{text-align:right}.ms--rtl .ms__hint{direction:rtl;text-align:right}}@layer component{.ms__option--tree{padding-inline-start:calc(var(--ms-tree-base-indent, .75rem) + var(--ms-tree-depth, 0) * var(--ms-tree-indent, 1.25rem))}.ms__option--tree-unselectable{cursor:default}.ms__option--tree-unselectable:hover{background:transparent}}@layer overrides{:host-context([data-theme="dark"]),:host-context([data-bs-theme="dark"]),:host-context(.dark){color-scheme:dark}:host-context([data-theme="light"]),:host-context([data-bs-theme="light"]),:host-context(.light){color-scheme:light}:host([data-theme="dark"]){color-scheme:dark}:host([data-theme="light"]){color-scheme:light}}`, $s = typeof HTMLElement < "u" ? HTMLElement : class {
3108
+ }, Ae = [
3083
3109
  // Strings
3084
3110
  { attr: "search-hint", key: "searchHint", parser: "string-or-undefined" },
3085
3111
  { attr: "search-placeholder", key: "searchPlaceholder", parser: "string", default: "Search..." },
@@ -3238,7 +3264,7 @@ const Bs = `@layer variables,component,overrides;@layer variables{:host{display:
3238
3264
  { attr: "enable-badge-tooltips", key: "isBadgeTooltipsEnabled", parser: "bool-default-false" },
3239
3265
  { attr: "enable-option-tooltips", key: "isOptionTooltipsEnabled", parser: "bool-default-false" },
3240
3266
  { attr: "option-tooltip-follow-cursor", key: "isOptionTooltipFollowCursor", parser: "bool-default-false" }
3241
- ], Rs = new Map(Oe.map((o) => [o.attr, o])), Je = [
3267
+ ], Rs = new Map(Ae.map((o) => [o.attr, o])), Je = [
3242
3268
  { key: "valueMember", field: "_valueMember" },
3243
3269
  { key: "displayValueMember", field: "_displayValueMember" },
3244
3270
  { key: "searchValueMember", field: "_searchValueMember" },
@@ -3280,11 +3306,11 @@ function Ze(o, e) {
3280
3306
  return e === "true";
3281
3307
  }
3282
3308
  }
3283
- const Ae = /* @__PURE__ */ new Set();
3309
+ const Pe = /* @__PURE__ */ new Set();
3284
3310
  function gt() {
3285
- return Array.from(Ae);
3311
+ return Array.from(Pe);
3286
3312
  }
3287
- class ze extends $s {
3313
+ class Be extends $s {
3288
3314
  constructor() {
3289
3315
  super();
3290
3316
  h(this, "picker");
@@ -3361,7 +3387,7 @@ class ze extends $s {
3361
3387
  }
3362
3388
  static get observedAttributes() {
3363
3389
  return [
3364
- ...Oe.map((t) => t.attr),
3390
+ ...Ae.map((t) => t.attr),
3365
3391
  // Out-of-table attributes (handled by special-case logic in attributeChangedCallback)
3366
3392
  "initial-values",
3367
3393
  "show-debug-info"
@@ -3379,12 +3405,12 @@ class ze extends $s {
3379
3405
  (t = this.picker) == null || t.clearAll();
3380
3406
  }
3381
3407
  connectedCallback() {
3382
- Ae.add(this), this.render();
3408
+ Pe.add(this), this.render();
3383
3409
  const t = this.parseDeclarativeOptions();
3384
3410
  t && (this._options && this._options.length > 0 && O.warn("[MultiSelectElement] Both declarative <option> elements and programmatic .options detected. Using declarative options."), this._options = t, this._hasDeclarativeOptions = !0), this.initializePicker();
3385
3411
  }
3386
3412
  disconnectedCallback() {
3387
- Ae.delete(this), this.picker && this.picker.destroy();
3413
+ Pe.delete(this), this.picker && this.picker.destroy();
3388
3414
  }
3389
3415
  attributeChangedCallback(t, s, i) {
3390
3416
  var a;
@@ -3396,13 +3422,13 @@ class ze extends $s {
3396
3422
  }
3397
3423
  const r = Rs.get(t);
3398
3424
  if (r) {
3399
- const n = Ze(r, i), l = (a = Je.find((u) => u.key === r.key)) == null ? void 0 : a.field, d = n === void 0 && l ? this[l] : n;
3425
+ const n = Ze(r, i), l = (a = Je.find((u) => u.key === r.key)) == null ? void 0 : a.field, c = n === void 0 && l ? this[l] : n;
3400
3426
  if (this._batchDepth > 0) {
3401
- this._batchPartial[r.key] = d;
3427
+ this._batchPartial[r.key] = c;
3402
3428
  return;
3403
3429
  }
3404
- const c = { [r.key]: d };
3405
- if (this.picker.updateOptions(c)) return;
3430
+ const d = { [r.key]: c };
3431
+ if (this.picker.updateOptions(d)) return;
3406
3432
  }
3407
3433
  if (this._batchDepth > 0) {
3408
3434
  this._batchNeedsReinit = !0;
@@ -3455,19 +3481,19 @@ class ze extends $s {
3455
3481
  a.className = "ms__debug-stats", i.appendChild(r), i.appendChild(a), s.appendChild(i), this.shadow.appendChild(s), this.updateDebugInfo();
3456
3482
  }
3457
3483
  updateDebugInfo() {
3458
- var p, b;
3484
+ var m, b;
3459
3485
  const t = this.shadow.querySelector(".ms__debug-stats");
3460
3486
  if (!t || !this.picker) return;
3461
- const s = "1.12.0-rc06", i = gt().length, a = this.picker.getSelected().length, n = ((p = this._options) == null ? void 0 : p.length) || 0, l = this.picker, d = l.isOpen || !1, c = l.searchTerm || "", m = l.isLoading || !1, u = ((b = l.filteredOptions) == null ? void 0 : b.length) || 0;
3487
+ const s = "1.12.0-rc07", i = gt().length, a = this.picker.getSelected().length, n = ((m = this._options) == null ? void 0 : m.length) || 0, l = this.picker, c = l.isOpen || !1, d = l.searchTerm || "", p = l.isLoading || !1, u = ((b = l.filteredOptions) == null ? void 0 : b.length) || 0;
3462
3488
  t.innerHTML = `
3463
3489
  <span>Version: ${s}</span>
3464
3490
  <span>Total Instances: ${i}</span>
3465
3491
  <span>Options: ${n}</span>
3466
3492
  <span>Filtered: ${u}</span>
3467
3493
  <span>Selected: ${a}</span>
3468
- <span>Dropdown: ${d ? "Open" : "Closed"}</span>
3469
- <span>Search: ${c || "none"}</span>
3470
- <span>Loading: ${m ? "Yes" : "No"}</span>
3494
+ <span>Dropdown: ${c ? "Open" : "Closed"}</span>
3495
+ <span>Search: ${d || "none"}</span>
3496
+ <span>Loading: ${p ? "Yes" : "No"}</span>
3471
3497
  `, setTimeout(() => {
3472
3498
  this.getAttribute("show-debug-info") === "true" && this.updateDebugInfo();
3473
3499
  }, 500);
@@ -3482,32 +3508,32 @@ class ze extends $s {
3482
3508
  if (s.length === 0)
3483
3509
  return null;
3484
3510
  let i = !1;
3485
- for (const d of s)
3486
- if (d.tagName === "OPTION") {
3487
- const c = d, m = {
3488
- value: c.value || ((r = c.textContent) == null ? void 0 : r.trim()) || "",
3489
- label: ((a = c.textContent) == null ? void 0 : a.trim()) || c.value || ""
3511
+ for (const c of s)
3512
+ if (c.tagName === "OPTION") {
3513
+ const d = c, p = {
3514
+ value: d.value || ((r = d.textContent) == null ? void 0 : r.trim()) || "",
3515
+ label: ((a = d.textContent) == null ? void 0 : a.trim()) || d.value || ""
3490
3516
  };
3491
- c.hasAttribute("selected") && (this._declarativeSelectedValues || (this._declarativeSelectedValues = []), this._declarativeSelectedValues.push(m.value)), c.hasAttribute("disabled") && (m.disabled = !0), c.hasAttribute("data-icon") && (m.icon = c.getAttribute("data-icon")), c.hasAttribute("data-subtitle") && (m.subtitle = c.getAttribute("data-subtitle")), t.push(m), i = !0;
3492
- } else if (d.tagName === "OPTGROUP") {
3493
- const c = d, m = c.label || c.getAttribute("label") || "Group", u = Array.from(c.querySelectorAll("option"));
3494
- for (const p of u) {
3517
+ d.hasAttribute("selected") && (this._declarativeSelectedValues || (this._declarativeSelectedValues = []), this._declarativeSelectedValues.push(p.value)), d.hasAttribute("disabled") && (p.disabled = !0), d.hasAttribute("data-icon") && (p.icon = d.getAttribute("data-icon")), d.hasAttribute("data-subtitle") && (p.subtitle = d.getAttribute("data-subtitle")), t.push(p), i = !0;
3518
+ } else if (c.tagName === "OPTGROUP") {
3519
+ const d = c, p = d.label || d.getAttribute("label") || "Group", u = Array.from(d.querySelectorAll("option"));
3520
+ for (const m of u) {
3495
3521
  const b = {
3496
- value: p.value || ((n = p.textContent) == null ? void 0 : n.trim()) || "",
3497
- label: ((l = p.textContent) == null ? void 0 : l.trim()) || p.value || "",
3498
- group: m
3522
+ value: m.value || ((n = m.textContent) == null ? void 0 : n.trim()) || "",
3523
+ label: ((l = m.textContent) == null ? void 0 : l.trim()) || m.value || "",
3524
+ group: p
3499
3525
  };
3500
- p.hasAttribute("selected") && (this._declarativeSelectedValues || (this._declarativeSelectedValues = []), this._declarativeSelectedValues.push(b.value)), p.hasAttribute("disabled") && (b.disabled = !0), p.hasAttribute("data-icon") && (b.icon = p.getAttribute("data-icon")), p.hasAttribute("data-subtitle") && (b.subtitle = p.getAttribute("data-subtitle")), t.push(b), i = !0;
3526
+ m.hasAttribute("selected") && (this._declarativeSelectedValues || (this._declarativeSelectedValues = []), this._declarativeSelectedValues.push(b.value)), m.hasAttribute("disabled") && (b.disabled = !0), m.hasAttribute("data-icon") && (b.icon = m.getAttribute("data-icon")), m.hasAttribute("data-subtitle") && (b.subtitle = m.getAttribute("data-subtitle")), t.push(b), i = !0;
3501
3527
  }
3502
3528
  }
3503
- return i ? (O.debug(`[MultiSelectElement] Parsed ${t.length} declarative options from Light DOM`), s.forEach((d) => {
3504
- (d.tagName === "OPTION" || d.tagName === "OPTGROUP") && d.remove();
3529
+ return i ? (O.debug(`[MultiSelectElement] Parsed ${t.length} declarative options from Light DOM`), s.forEach((c) => {
3530
+ (c.tagName === "OPTION" || c.tagName === "OPTGROUP") && c.remove();
3505
3531
  }), t) : null;
3506
3532
  }
3507
3533
  /** Parse all observed attributes via ATTRIBUTE_TABLE into a partial config object. */
3508
3534
  parseAttributesFromTable() {
3509
3535
  const t = {};
3510
- for (const s of Oe) {
3536
+ for (const s of Ae) {
3511
3537
  const i = Ze(s, this.getAttribute(s.attr));
3512
3538
  i !== void 0 && (t[s.key] = i);
3513
3539
  }
@@ -4079,8 +4105,8 @@ class ze extends $s {
4079
4105
  getSelected() {
4080
4106
  return this.picker ? this.picker.getSelected() : [];
4081
4107
  }
4082
- setSelected(t) {
4083
- this.picker && this.picker.setSelected(t);
4108
+ setSelected(t, s = {}) {
4109
+ this.picker && this.picker.setSelected(t, s);
4084
4110
  }
4085
4111
  getValue() {
4086
4112
  return this.picker ? this.picker.getValue() : null;
@@ -4093,13 +4119,13 @@ class ze extends $s {
4093
4119
  // makes `form.reset()`, `form.elements`, and (in the future) constraint
4094
4120
  // validation actually do something. Without this flag the element is
4095
4121
  // invisible to the form lifecycle even when it has a `name`.
4096
- h(ze, "formAssociated", !0);
4097
- typeof window < "u" && typeof customElements < "u" && (customElements.get("web-multiselect") || customElements.define("web-multiselect", ze));
4122
+ h(Be, "formAssociated", !0);
4123
+ typeof window < "u" && typeof customElements < "u" && (customElements.get("web-multiselect") || customElements.define("web-multiselect", Be));
4098
4124
  typeof window < "u" && (window.components = window.components || {}, window.components["web-multiselect"] = {
4099
- version: () => "1.12.0-rc06",
4125
+ version: () => "1.12.0-rc07",
4100
4126
  config: {
4101
4127
  name: "@keenmate/web-multiselect",
4102
- version: "1.12.0-rc06",
4128
+ version: "1.12.0-rc07",
4103
4129
  author: "Keenmate",
4104
4130
  license: "MIT",
4105
4131
  repository: "git+https://github.com/keenmate/web-multiselect.git",
@@ -4113,13 +4139,13 @@ typeof window < "u" && (window.components = window.components || {}, window.comp
4113
4139
  getCategories: () => [...ys]
4114
4140
  },
4115
4141
  register: () => {
4116
- typeof customElements < "u" && !customElements.get("web-multiselect") && customElements.define("web-multiselect", ze);
4142
+ typeof customElements < "u" && !customElements.get("web-multiselect") && customElements.define("web-multiselect", Be);
4117
4143
  },
4118
4144
  getInstances: () => gt()
4119
4145
  });
4120
4146
  export {
4121
4147
  ys as LOGGING_CATEGORIES,
4122
- ze as MultiSelectElement,
4148
+ Be as MultiSelectElement,
4123
4149
  zs as WebMultiSelect,
4124
4150
  O as dataLogger,
4125
4151
  xs as disableLogging,