lientHeight, c = 0, m = 0; if (i) { r = i.width, n = i.height; const g = vr(); (!g || g && e === "fixed") && (c = i.offsetLeft, m = i.offsetTop); } return { width: r, height: n, x: c, y: m }; } function _h(a, e) { const t = uo(a, !0, e === "fixed"), o = t.top + a.clientTop, i = t.left + a.clientLeft, r = et(a) ? Bo(a) : Je(1), n = a.clientWidth * r.x, c = a.clientHeight * r.y, m = i * r.x, g = o * r.y; return { width: n, height: c, x: m, y: g }; } function tn(a, e, t) { let o; if (e === "viewport") o = wh(a, t); else if (e === "document") o = $h(rt(a)); else if (Ge(e)) o = _h(e, t); else { const i = ls(a); o = { x: e.x - i.x, y: e.y - i.y, width: e.width, height: e.height }; } return oa(o); } function ds(a, e) { const t = Nt(a); return t === e || !Ge(t) || Fo(t) ? !1 : Ye(t).position === "fixed" || ds(t, e); } function kh(a, e) { const t = e.get(a); if (t) return t; let o = hi(a, [], !1).filter((c) => Ge(c) && Yo(c) !== "body"), i = null; const r = Ye(a).position === "fixed"; let n = r ? Nt(a) : a; for (; Ge(n) && !Fo(n); ) { const c = Ye(n), m = br(n); !m && c.position === "fixed" && (i = null), (r ? !m && !i : !m && c.position === "static" && !!i && ["absolute", "fixed"].includes(i.position) || Oi(n) && !m && ds(a, n)) ? o = o.filter((f) => f !== n) : i = c, n = Nt(n); } return e.set(a, o), o; } function Sh(a) { let { element: e, boundary: t, rootBoundary: o, strategy: i } = a; const n = [...t === "clippingAncestors" ? ba(e) ? [] : kh(e, this._c) : [].concat(t), o], c = n[0], m = n.reduce((g, f) => { const v = tn(e, f, i); return g.top = no(v.top, g.top), g.right = zo(v.right, g.right), g.bottom = zo(v.bottom, g.bottom), g.left = no(v.left, g.left), g; }, tn(e, c, i)); return { width: m.right - m.left, height: m.bottom - m.top, x: m.left, y: m.top }; } function Oh(a) { const { width: e, height: t } = ss(a); return { width: e, height: t }; } function Mh(a, e, t) { const o = et(e), i = rt(e), r = t === "fixed", n = uo(a, !0, r, e); let c = { scrollLeft: 0, scrollTop: 0 }; const m = Je(0); if (o || !o && !r) if ((Yo(e) !== "body" || Oi(i)) && (c = va(e)), o) { const x = uo(e, !0, r, e); m.x = x.x + e.clientLeft, m.y = x.y + e.clientTop; } else i && (m.x = yr(i)); const g = i && !o && !r ? cs(i, c) : Je(0), f = n.left + c.scrollLeft - m.x - g.x, v = n.top + c.scrollTop - m.y - g.y; return { x: f, y: v, width: n.width, height: n.height }; } function Da(a) { return Ye(a).position === "static"; } function on(a, e) { if (!et(a) || Ye(a).position === "fixed") return null; if (e) return e(a); let t = a.offsetParent; return rt(a) === t && (t = t.ownerDocument.body), t; } function us(a, e) { const t = Be(a); if (ba(a)) return t; if (!et(a)) { let i = Nt(a); for (; i && !Fo(i); ) { if (Ge(i) && !Da(i)) return i; i = Nt(i); } return t; } let o = on(a, e); for (; o && gh(o) && Da(o); ) o = on(o, e); return o && Fo(o) && Da(o) && !br(o) ? t : o || bh(a) || t; } const Lh = async function(a) { const e = this.getOffsetParent || us, t = this.getDimensions, o = await t(a.floating); return { reference: Mh(a.reference, await e(a.floating), a.strategy), floating: { x: 0, y: 0, width: o.width, height: o.height } }; }; function Bh(a) { return Ye(a).direction === "rtl"; } const qa = { convertOffsetParentRelativeRectToViewportRelativeRect: yh, getDocumentElement: rt, getClippingRect: Sh, getOffsetParent: us, getElementRects: Lh, getClientRects: xh, getDimensions: Oh, getScale: Bo, isElement: Ge, isRTL: Bh }; function Ch(a, e) { let t = null, o; const i = rt(a); function r() { var c; clearTimeout(o), (c = t) == null || c.disconnect(), t = null; } function n(c, m) { c === void 0 && (c = !1), m === void 0 && (m = 1), r(); const { left: g, top: f, width: v, height: x } = a.getBoundingClientRect(); if (c || e(), !v || !x) return; const _ = Ti(f), $ = Ti(i.clientWidth - (g + v)), L = Ti(i.clientHeight - (f + x)), N = Ti(g), G = { rootMargin: -_ + "px " + -$ + "px " + -L + "px " + -N + "px", threshold: no(0, zo(1, m)) || 1 }; let T = !0; function se(W) { const Ke = W[0].intersectionRatio; if (Ke !== m) { if (!T) return n(); Ke ? n(!1, Ke) : o = setTimeout(() => { n(!1, 1e-7); }, 1e3); } T = !1; } try { t = new IntersectionObserver(se, { ...G, // Handle