@supportwire/messenger-js-sdk 1.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +80 -0
- package/dist/index-bfV4xNqW-CRQbrL80.js +1092 -0
- package/dist/index-bfV4xNqW-CRQbrL80.js.map +1 -0
- package/dist/index-bfV4xNqW-ChZOGalc.cjs +162 -0
- package/dist/index-bfV4xNqW-ChZOGalc.cjs.map +1 -0
- package/dist/index.cjs +921 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +149 -0
- package/dist/index.js +2646 -0
- package/dist/index.js.map +1 -0
- package/dist/snapdom-6yvsn_Iv-6uiY9rZc.js +3373 -0
- package/dist/snapdom-6yvsn_Iv-6uiY9rZc.js.map +1 -0
- package/dist/snapdom-6yvsn_Iv-OVmChxqF.cjs +9 -0
- package/dist/snapdom-6yvsn_Iv-OVmChxqF.cjs.map +1 -0
- package/package.json +37 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snapdom-6yvsn_Iv-OVmChxqF.cjs","sources":["../../widget-loader/dist/snapdom-6yvsn_Iv.js"],"sourcesContent":["var Wr = Object.defineProperty, Ir = Object.defineProperties;\nvar _r = Object.getOwnPropertyDescriptors;\nvar At = Object.getOwnPropertySymbols;\nvar Ur = Object.prototype.hasOwnProperty, Or = Object.prototype.propertyIsEnumerable;\nvar Mt = (e, t, r) => t in e ? Wr(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, W = (e, t) => {\n for (var r in t || (t = {}))\n Ur.call(t, r) && Mt(e, r, t[r]);\n if (At)\n for (var r of At(t))\n Or.call(t, r) && Mt(e, r, t[r]);\n return e;\n}, z = (e, t) => Ir(e, _r(t));\nvar jr = Object.defineProperty, Q = (e, t) => () => (e && (t = e(e = 0)), t), Pe = (e, t) => {\n for (var r in t) jr(e, r, { get: t[r], enumerable: !0 });\n};\nfunction Hr(e) {\n if (e === !0) return \"soft\";\n if (e === !1) return \"disabled\";\n if (typeof e == \"string\") {\n let t = e.toLowerCase().trim();\n if (t === \"auto\") return \"auto\";\n if (t === \"full\") return \"full\";\n if (t === \"soft\" || t === \"disabled\") return t;\n }\n return \"soft\";\n}\nfunction Dr(e = \"soft\") {\n switch (A.session.__counterEpoch = (A.session.__counterEpoch || 0) + 1, e) {\n case \"auto\": {\n A.session.styleMap = /* @__PURE__ */ new Map(), A.session.nodeMap = /* @__PURE__ */ new Map();\n return;\n }\n case \"soft\": {\n A.session.styleMap = /* @__PURE__ */ new Map(), A.session.nodeMap = /* @__PURE__ */ new Map(), A.session.styleCache = /* @__PURE__ */ new WeakMap();\n return;\n }\n case \"full\":\n return;\n case \"disabled\": {\n A.session.styleMap = /* @__PURE__ */ new Map(), A.session.nodeMap = /* @__PURE__ */ new Map(), A.session.styleCache = /* @__PURE__ */ new WeakMap(), A.computedStyle = /* @__PURE__ */ new WeakMap(), A.baseStyle = new ee(50), A.defaultStyle = new ee(30), A.image = new ee(100), A.background = new ee(100), A.resource = new ee(150), A.font = /* @__PURE__ */ new Set();\n return;\n }\n default: {\n A.session.styleMap = /* @__PURE__ */ new Map(), A.session.nodeMap = /* @__PURE__ */ new Map(), A.session.styleCache = /* @__PURE__ */ new WeakMap();\n return;\n }\n }\n}\nvar ee, A, ie = Q(() => {\n ee = class extends Map {\n constructor(e = 100, ...t) {\n super(...t), this._maxSize = e;\n }\n set(e, t) {\n if (this.size >= this._maxSize && !this.has(e)) {\n let r = this.keys().next().value;\n r !== void 0 && this.delete(r);\n }\n return super.set(e, t);\n }\n }, A = { image: new ee(100), background: new ee(100), resource: new ee(150), defaultStyle: new ee(30), baseStyle: new ee(50), computedStyle: /* @__PURE__ */ new WeakMap(), measureHints: /* @__PURE__ */ new WeakMap(), font: /* @__PURE__ */ new Set(), session: { styleMap: /* @__PURE__ */ new Map(), styleCache: /* @__PURE__ */ new WeakMap(), nodeMap: /* @__PURE__ */ new Map() } };\n});\nfunction ft(e) {\n let t = e.match(/url\\((['\"]?)(.*?)(\\1)\\)/);\n if (!t) return null;\n let r = t[2].trim();\n return r.startsWith(\"#\") ? null : r;\n}\nfunction Br(e) {\n if (!e || e === \"none\") return \"\";\n let t = e.replace(/translate[XY]?\\([^)]*\\)/g, \"\");\n return t = t.replace(/matrix\\(([^)]+)\\)/g, (r, n) => {\n let i = n.split(\",\").map((o) => o.trim());\n return i.length !== 6 ? `matrix(${n})` : (i[4] = \"0\", i[5] = \"0\", `matrix(${i.join(\", \")})`);\n }), t = t.replace(/matrix3d\\(([^)]+)\\)/g, (r, n) => {\n let i = n.split(\",\").map((o) => o.trim());\n return i.length !== 16 ? `matrix3d(${n})` : (i[12] = \"0\", i[13] = \"0\", `matrix3d(${i.join(\", \")})`);\n }), t.trim().replace(/\\s{2,}/g, \" \");\n}\nfunction Be(e) {\n if (/%[0-9A-Fa-f]{2}/.test(e)) return e;\n try {\n return encodeURI(e);\n } catch (t) {\n return e;\n }\n}\nfunction qr(e, t) {\n var r;\n if (!e || /^(data|blob|about|#)/i.test(e.trim())) return e;\n try {\n let n = t || typeof document < \"u\" && (document.baseURI || ((r = document.location) == null ? void 0 : r.href)) || \"http://localhost/\";\n return new URL(e, n).href;\n } catch (n) {\n return e;\n }\n}\nvar Ve = Q(() => {\n});\nfunction Vr(e = \"[snapDOM]\", { ttlMs: t = 5 * 6e4, maxEntries: r = 12 } = {}) {\n let n = /* @__PURE__ */ new Map(), i = 0;\n function o(a, l, c) {\n if (i >= r) return;\n let u = Date.now();\n (n.get(l) || 0) > u || (n.set(l, u + t), i++, a === \"warn\" && console && console.warn ? console.warn(`${e} ${c}`) : console && console.error && console.error(`${e} ${c}`));\n }\n return { warnOnce(a, l) {\n o(\"warn\", a, l);\n }, errorOnce(a, l) {\n o(\"error\", a, l);\n }, reset() {\n n.clear(), i = 0;\n } };\n}\nfunction zr(e) {\n return /^data:|^blob:|^about:blank$/i.test(e);\n}\nfunction Xr(e, t) {\n try {\n let r = typeof location < \"u\" && location.href ? location.href : \"http://localhost/\", n = t.includes(\"{url}\") ? t.split(\"{url}\")[0] : t, i = new URL(n || \".\", r), o = new URL(e, r);\n if (o.origin === i.origin) return !0;\n let a = o.searchParams;\n if (a && (a.has(\"url\") || a.has(\"target\"))) return !0;\n } catch (r) {\n }\n return !1;\n}\nfunction Yr(e, t) {\n if (!t || zr(e) || Xr(e, t)) return !1;\n try {\n let r = typeof location < \"u\" && location.href ? location.href : \"http://localhost/\", n = new URL(e, r);\n return typeof location < \"u\" ? n.origin !== location.origin : !0;\n } catch (r) {\n return !!t;\n }\n}\nfunction Gr(e, t) {\n if (!t) return e;\n if (t.includes(\"{url}\")) return t.replace(\"{urlRaw}\", Be(e)).replace(\"{url}\", encodeURIComponent(e));\n if (/[?&]url=?$/.test(t)) return `${t}${encodeURIComponent(e)}`;\n if (t.endsWith(\"?\")) return `${t}url=${encodeURIComponent(e)}`;\n if (t.endsWith(\"/\")) return `${t}${Be(e)}`;\n let r = t.includes(\"?\") ? \"&\" : \"?\";\n return `${t}${r}url=${encodeURIComponent(e)}`;\n}\nfunction $t(e) {\n return new Promise((t, r) => {\n let n = new FileReader();\n n.onload = () => t(String(n.result || \"\")), n.onerror = () => r(new Error(\"read_failed\")), n.readAsDataURL(e);\n });\n}\nfunction Jr(e, t) {\n var r, n;\n return [t.as || \"blob\", (r = t.timeout) != null ? r : 3e3, t.useProxy || \"\", (n = t.errorTTL) != null ? n : 8e3, e].join(\"|\");\n}\nasync function oe(e, t = {}) {\n var y, S, M;\n let r = (y = t.as) != null ? y : \"blob\", n = (S = t.timeout) != null ? S : 3e3, i = t.useProxy || \"\", o = (M = t.errorTTL) != null ? M : 8e3, a = t.headers || {}, l = !!t.silent;\n if (/^data:/i.test(e)) try {\n if (r === \"text\") return { ok: !0, data: String(e), status: 200, url: e, fromCache: !1 };\n if (r === \"dataURL\") return { ok: !0, data: String(e), status: 200, url: e, fromCache: !1, mime: String(e).slice(5).split(\";\")[0] || \"\" };\n let [, g = \"\", w = \"\"] = String(e).match(/^data:([^,]*),(.*)$/) || [], C = /;base64/i.test(g) ? atob(w) : decodeURIComponent(w), b = new Uint8Array([...C].map((x) => x.charCodeAt(0))), v = new Blob([b], { type: (g || \"\").split(\";\")[0] || \"\" });\n return { ok: !0, data: v, status: 200, url: e, fromCache: !1, mime: v.type || \"\" };\n } catch (g) {\n return { ok: !1, data: null, status: 0, url: e, fromCache: !1, reason: \"special_url_error\" };\n }\n if (/^blob:/i.test(e)) try {\n let g = await fetch(e);\n if (!g.ok) return { ok: !1, data: null, status: g.status, url: e, fromCache: !1, reason: \"http_error\" };\n let w = await g.blob(), C = w.type || g.headers.get(\"content-type\") || \"\";\n return r === \"dataURL\" ? { ok: !0, data: await $t(w), status: g.status, url: e, fromCache: !1, mime: C } : r === \"text\" ? { ok: !0, data: await w.text(), status: g.status, url: e, fromCache: !1, mime: C } : { ok: !0, data: w, status: g.status, url: e, fromCache: !1, mime: C };\n } catch (g) {\n return { ok: !1, data: null, status: 0, url: e, fromCache: !1, reason: \"network\" };\n }\n if (/^about:blank$/i.test(e)) return r === \"dataURL\" ? { ok: !0, data: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGMAAQAABQABDQottAAAAABJRU5ErkJggg==\", status: 200, url: e, fromCache: !1, mime: \"image/png\" } : { ok: !0, data: r === \"text\" ? \"\" : new Blob([]), status: 200, url: e, fromCache: !1 };\n let c = Jr(e, { as: r, timeout: n, useProxy: i, errorTTL: o }), u = $e.get(c);\n if (u && u.until > Date.now()) return z(W({}, u.result), { fromCache: !0 });\n u && $e.delete(c);\n let d = _e.get(c);\n if (d) return d;\n let s = Yr(e, i) ? Gr(e, i) : e, f = t.credentials;\n if (!f) try {\n let g = typeof location < \"u\" && location.href ? location.href : \"http://localhost/\", w = new URL(e, g);\n f = typeof location < \"u\" && w.origin === location.origin ? \"include\" : \"omit\";\n } catch (g) {\n f = \"omit\";\n }\n let p = new AbortController(), m = setTimeout(() => p.abort(\"timeout\"), n), h = (async () => {\n var g, w;\n try {\n let C = await fetch(s, { signal: p.signal, credentials: f, headers: a });\n if (!C.ok) {\n let x = { ok: !1, data: null, status: C.status, url: s, fromCache: !1, reason: \"http_error\" };\n if (o > 0 && $e.set(c, { until: Date.now() + o, result: x }), !l) {\n let $ = `${C.status} ${C.statusText || \"\"}`.trim();\n Ze.warnOnce(`http:${C.status}:${r}:${new URL(e, (g = location == null ? void 0 : location.href) != null ? g : \"http://localhost/\").origin}`, `HTTP error ${$} while fetching ${r} ${e}`);\n }\n return t.onError && t.onError(x), x;\n }\n if (r === \"text\") return { ok: !0, data: await C.text(), status: C.status, url: s, fromCache: !1 };\n let b = await C.blob(), v = b.type || C.headers.get(\"content-type\") || \"\";\n return r === \"dataURL\" ? { ok: !0, data: await $t(b), status: C.status, url: s, fromCache: !1, mime: v } : { ok: !0, data: b, status: C.status, url: s, fromCache: !1, mime: v };\n } catch (C) {\n let b = C && typeof C == \"object\" && \"name\" in C && C.name === \"AbortError\" ? String(C.message || \"\").includes(\"timeout\") ? \"timeout\" : \"abort\" : \"network\", v = { ok: !1, data: null, status: 0, url: s, fromCache: !1, reason: b };\n if (!/^blob:/i.test(e) && o > 0 && $e.set(c, { until: Date.now() + o, result: v }), !l) {\n let x = `${b}:${r}:${new URL(e, (w = location == null ? void 0 : location.href) != null ? w : \"http://localhost/\").origin}`, $ = b === \"timeout\" ? `Timeout after ${n}ms. Consider increasing timeout or using a proxy for ${e}` : b === \"abort\" ? `Request aborted while fetching ${r} ${e}` : `Network/CORS issue while fetching ${r} ${e}. A proxy may be required`;\n Ze.errorOnce(x, $);\n }\n return t.onError && t.onError(v), v;\n } finally {\n clearTimeout(m), _e.delete(c);\n }\n })();\n return _e.set(c, h), h;\n}\nvar Ze, _e, $e, ke = Q(() => {\n Ve(), Ze = Vr(\"[snapDOM]\", { ttlMs: 3 * 6e4, maxEntries: 10 }), _e = /* @__PURE__ */ new Map(), $e = /* @__PURE__ */ new Map();\n});\nasync function Kt(e, t = {}) {\n if (/^((repeating-)?(linear|radial|conic)-gradient)\\(/i.test(e) || e.trim() === \"none\") return e;\n let r = ft(e);\n if (!r) return e;\n let n = qr(r), i = Be(n);\n if (A.background.has(i)) {\n let o = A.background.get(i);\n return o ? `url(\"${o}\")` : \"none\";\n }\n try {\n let o = await oe(i, { as: \"dataURL\", useProxy: t.useProxy });\n return o.ok ? (A.background.set(i, o.data), `url(\"${o.data}\")`) : (A.background.set(i, null), \"none\");\n } catch (o) {\n return A.background.set(i, null), \"none\";\n }\n}\nvar Kr = Q(() => {\n ie(), Ve(), ke();\n});\nfunction Qr(e) {\n if (e = String(e).toLowerCase(), mt.has(e)) {\n let o = {};\n return A.defaultStyle.set(e, o), o;\n }\n if (A.defaultStyle.has(e)) return A.defaultStyle.get(e);\n let t = document.getElementById(\"snapdom-sandbox\");\n t || (t = document.createElement(\"div\"), t.id = \"snapdom-sandbox\", t.setAttribute(\"data-snapdom-sandbox\", \"true\"), t.setAttribute(\"aria-hidden\", \"true\"), t.style.position = \"absolute\", t.style.left = \"-9999px\", t.style.top = \"-9999px\", t.style.width = \"0px\", t.style.height = \"0px\", t.style.overflow = \"hidden\", document.body.appendChild(t));\n let r = document.createElement(e);\n r.style.all = \"initial\", t.appendChild(r);\n let n = getComputedStyle(r), i = {};\n for (let o of n) {\n if (dt(o)) continue;\n let a = n.getPropertyValue(o);\n i[o] = a;\n }\n return t.removeChild(r), A.defaultStyle.set(e, i), i;\n}\nfunction dt(e) {\n let t = String(e).toLowerCase();\n return !!(tr.has(t) || er.test(t) || Zt.test(t));\n}\nfunction et(e, t) {\n if (t = String(t || \"\").toLowerCase(), mt.has(t)) return \"\";\n let r = [], n = Qr(t), i = (e.display || \"\").toLowerCase() === \"inline\" || (/* @__PURE__ */ new Set([\"span\", \"small\", \"em\", \"strong\", \"b\", \"i\", \"u\", \"s\", \"code\", \"cite\", \"mark\", \"sub\", \"sup\"])).has(t);\n for (let [o, a] of Object.entries(e)) {\n if (dt(o) || i && (o === \"width\" || o === \"min-width\" || o === \"max-width\")) continue;\n let l = n[o];\n a && a !== l && r.push(`${o}:${a}`);\n }\n return r.sort(), r.join(\";\");\n}\nfunction Zr(e) {\n let t = /* @__PURE__ */ new Set();\n return e.nodeType !== Node.ELEMENT_NODE && e.nodeType !== Node.DOCUMENT_FRAGMENT_NODE ? [] : (e.tagName && t.add(e.tagName.toLowerCase()), typeof e.querySelectorAll == \"function\" && e.querySelectorAll(\"*\").forEach((r) => t.add(r.tagName.toLowerCase())), Array.from(t));\n}\nfunction en(e) {\n let t = /* @__PURE__ */ new Map();\n for (let n of e) {\n let i = A.defaultStyle.get(n);\n if (!i) continue;\n let o = Object.entries(i).map(([a, l]) => `${a}:${l};`).sort().join(\"\");\n o && (t.has(o) || t.set(o, []), t.get(o).push(n));\n }\n let r = \"\";\n for (let [n, i] of t.entries()) r += `${i.join(\",\")} { ${n} }\n`;\n return r;\n}\nfunction tn(e) {\n let t = Array.from(new Set(e.values())).filter(Boolean).sort(), r = /* @__PURE__ */ new Map(), n = 1;\n for (let i of t) r.set(i, `c${n++}`);\n return r;\n}\nfunction rn(e) {\n var t;\n try {\n let r = e == null ? void 0 : e.ownerDocument;\n if (!r) return typeof window < \"u\" ? window : null;\n let n = r.defaultView;\n if (n && typeof n.getComputedStyle == \"function\") return n;\n if (typeof window < \"u\" && window.frames) for (let i = 0; i < window.frames.length; i++) try {\n if (((t = window.frames[i]) == null ? void 0 : t.document) === r) return window.frames[i];\n } catch (o) {\n }\n } catch (r) {\n }\n return typeof window < \"u\" ? window : null;\n}\nfunction me(e, t = null) {\n let r = () => {\n let o = { length: 0, getPropertyValue: () => \"\", item: () => \"\" };\n return o[Symbol.iterator] = function* () {\n }, o;\n };\n if (!(e instanceof Element)) {\n let o = typeof window < \"u\" ? window : null;\n if (o && typeof o.getComputedStyle == \"function\") try {\n return o.getComputedStyle(e, t) || r();\n } catch (a) {\n return r();\n }\n return r();\n }\n let n = A.computedStyle.get(e);\n n || (n = /* @__PURE__ */ new Map(), A.computedStyle.set(e, n));\n let i = n.get(t);\n if (!i) {\n let o = rn(e), a = null;\n try {\n a = o && typeof o.getComputedStyle == \"function\" ? o.getComputedStyle(e, t) : null;\n } catch (l) {\n }\n if (!a && typeof window < \"u\" && typeof window.getComputedStyle == \"function\") try {\n e.ownerDocument === document && (a = window.getComputedStyle(e, t));\n } catch (l) {\n }\n i = a || r(), n.set(t, i);\n }\n return i;\n}\nfunction Et(e) {\n let t = {};\n for (let r of e) t[r] = e.getPropertyValue(r);\n return t;\n}\nfunction tt(e) {\n let t = [], r = 0, n = 0;\n for (let i = 0; i < e.length; i++) {\n let o = e[i];\n o === \"(\" && r++, o === \")\" && r--, o === \",\" && r === 0 && (t.push(e.slice(n, i).trim()), n = i + 1);\n }\n return t.push(e.slice(n).trim()), t;\n}\nvar Qt, mt, Zt, er, tr, rr = Q(() => {\n ie(), Qt = /* @__PURE__ */ new Set([\"meta\", \"script\", \"noscript\", \"title\", \"link\", \"template\"]), mt = /* @__PURE__ */ new Set([\"meta\", \"link\", \"style\", \"title\", \"noscript\", \"script\", \"template\", \"g\", \"defs\", \"use\", \"marker\", \"mask\", \"clipPath\", \"pattern\", \"path\", \"polygon\", \"polyline\", \"line\", \"circle\", \"ellipse\", \"rect\", \"filter\", \"lineargradient\", \"radialgradient\", \"stop\"]), Zt = /(?:^|-)(animation|transition)(?:-|$)/i, er = /^(--.+|view-timeline|scroll-timeline|animation-trigger|offset-|position-try|app-region|interactivity|overlay|view-transition|-webkit-locale|-webkit-user-(?:drag|modify)|-webkit-tap-highlight-color|-webkit-text-security)$/i, tr = /* @__PURE__ */ new Set([\"cursor\", \"pointer-events\", \"touch-action\", \"user-select\", \"print-color-adjust\", \"speak\", \"reading-flow\", \"reading-order\", \"anchor-name\", \"anchor-scope\", \"container-name\", \"container-type\", \"timeline-scope\", \"zoom\"]);\n});\nfunction Ce(e, { fast: t = !1 } = {}) {\n if (t) return e();\n \"requestIdleCallback\" in window ? requestIdleCallback(e, { timeout: 50 }) : setTimeout(e, 1);\n}\nfunction nn() {\n if (typeof navigator > \"u\") return !1;\n if (navigator.userAgentData) return navigator.userAgentData.platform === \"iOS\";\n let e = navigator.userAgent || \"\", t = /iPhone|iPad|iPod/.test(e), r = navigator.maxTouchPoints > 2 && /Macintosh/.test(e);\n return t || r;\n}\nfunction be() {\n if (typeof navigator > \"u\") return !1;\n let e = navigator.userAgent || \"\", t = e.toLowerCase(), r = t.includes(\"safari\") && !t.includes(\"chrome\") && !t.includes(\"crios\") && !t.includes(\"fxios\") && !t.includes(\"android\"), n = /applewebkit/i.test(e), i = /mobile/i.test(e), o = !/safari/i.test(e), a = n && i && o, l = /(micromessenger|wxwork|wecom|windowswechat|macwechat)/i.test(e), c = /(baiduboxapp|baidubrowser|baidusearch|baiduboxlite)/i.test(t), u = /ipad|iphone|ipod/.test(t) && n;\n return r || a || l || c || u;\n}\nfunction on() {\n if (typeof navigator > \"u\") return !1;\n let e = (navigator.userAgent || \"\").toLowerCase();\n return e.includes(\"firefox\") || e.includes(\"fxios\");\n}\nvar Re = Q(() => {\n});\nfunction D(e, t, r) {\n let n = e && typeof e == \"object\" && (e.options || e);\n n && n.debug && (r !== void 0 ? console.warn(\"[snapdom]\", t, r) : console.warn(\"[snapdom]\", t));\n}\nvar nr = Q(() => {\n}), ce = Q(() => {\n Kr(), rr(), Re(), Ve(), nr();\n}), or = {};\nPe(or, { toCanvas: () => ze });\nfunction an(e) {\n return typeof e == \"string\" && /^data:image\\/svg\\+xml/i.test(e);\n}\nfunction ln(e) {\n let t = e.indexOf(\",\");\n return t >= 0 ? decodeURIComponent(e.slice(t + 1)) : \"\";\n}\nfunction sn(e) {\n return `data:image/svg+xml;charset=utf-8,${encodeURIComponent(e)}`;\n}\nfunction cn(e) {\n let t = [], r = \"\", n = 0;\n for (let i = 0; i < e.length; i++) {\n let o = e[i];\n o === \"(\" && n++, o === \")\" && (n = Math.max(0, n - 1)), o === \";\" && n === 0 ? (t.push(r), r = \"\") : r += o;\n }\n return r.trim() && t.push(r), t.map((i) => i.trim()).filter(Boolean);\n}\nfunction un(e) {\n let t = [], r = \"\", n = 0;\n for (let o = 0; o < e.length; o++) {\n let a = e[o];\n a === \"(\" && n++, a === \")\" && (n = Math.max(0, n - 1)), a === \",\" && n === 0 ? (t.push(r.trim()), r = \"\") : r += a;\n }\n r.trim() && t.push(r.trim());\n let i = [];\n for (let o of t) {\n if (/\\binset\\b/i.test(o)) continue;\n let a = o.match(/-?\\d+(?:\\.\\d+)?px/gi) || [], [l = \"0px\", c = \"0px\", u = \"0px\"] = a, d = o.replace(/-?\\d+(?:\\.\\d+)?px/gi, \"\").replace(/\\binset\\b/ig, \"\").trim().replace(/\\s{2,}/g, \" \"), s = !!d && d !== \",\";\n i.push(`drop-shadow(${l} ${c} ${u}${s ? ` ${d}` : \"\"})`);\n }\n return i.join(\" \");\n}\nfunction ir(e) {\n let t = cn(e), r = null, n = null, i = null, o = [];\n for (let l of t) {\n let c = l.indexOf(\":\");\n if (c < 0) continue;\n let u = l.slice(0, c).trim().toLowerCase(), d = l.slice(c + 1).trim();\n u === \"box-shadow\" ? i = d : u === \"filter\" ? r = d : u === \"-webkit-filter\" ? n = d : o.push([u, d]);\n }\n if (i) {\n let l = un(i);\n l && (r = r ? `${r} ${l}` : l, n = n ? `${n} ${l}` : l);\n }\n let a = [...o];\n return r && a.push([\"filter\", r]), n && a.push([\"-webkit-filter\", n]), a.map(([l, c]) => `${l}:${c}`).join(\";\");\n}\nfunction fn(e) {\n return e.replace(/([^{}]+)\\{([^}]*)\\}/g, (t, r, n) => `${r}{${ir(n)}}`);\n}\nfunction dn(e) {\n return e = e.replace(/<style[^>]*>([\\s\\S]*?)<\\/style>/gi, (t, r) => t.replace(r, fn(r))), e = e.replace(/style=(['\"])([\\s\\S]*?)\\1/gi, (t, r, n) => `style=${r}${ir(n)}${r}`), e;\n}\nfunction mn(e) {\n if (!be() || !an(e)) return e;\n try {\n let t = ln(e), r = dn(t);\n return sn(r);\n } catch (t) {\n return e;\n }\n}\nasync function ze(e, t) {\n let { width: r, height: n, scale: i = 1, dpr: o = 1, meta: a = {}, backgroundColor: l } = t;\n e = mn(e);\n let c = new Image();\n c.loading = \"eager\", c.decoding = \"sync\", c.crossOrigin = \"anonymous\", c.src = e, await c.decode();\n let u = c.naturalWidth, d = c.naturalHeight, s = Number.isFinite(a.w0) ? a.w0 : u, f = Number.isFinite(a.h0) ? a.h0 : d, p, m, h = Number.isFinite(r), y = Number.isFinite(n);\n if (h && y) p = Math.max(1, r), m = Math.max(1, n);\n else if (h) {\n let g = r / Math.max(1, s);\n p = r, m = f * g;\n } else if (y) {\n let g = n / Math.max(1, f);\n m = n, p = s * g;\n } else p = u, m = d;\n p = p * i, m = m * i;\n let S = document.createElement(\"canvas\");\n S.width = p * o, S.height = m * o, S.style.width = `${p}px`, S.style.height = `${m}px`;\n let M = S.getContext(\"2d\");\n return o !== 1 && M.scale(o, o), l && (M.save(), M.fillStyle = l, M.fillRect(0, 0, p, m), M.restore()), M.drawImage(c, 0, 0, p, m), S;\n}\nvar Xe = Q(() => {\n Re();\n}), Ue = {};\nPe(Ue, { rasterize: () => ar });\nasync function ar(e, t) {\n let r = await ze(e, t), n = new Image();\n return n.src = r.toDataURL(`image/${t.format}`, t.quality), await n.decode(), n.style.width = `${r.width / t.dpr}px`, n.style.height = `${r.height / t.dpr}px`, n;\n}\nvar Oe = Q(() => {\n Xe();\n}), rt = {};\nPe(rt, { toImg: () => Ft, toSvg: () => Ft });\nasync function Ft(e, t) {\n let { scale: r = 1, width: n, height: i, meta: o = {} } = t, a = Number.isFinite(n), l = Number.isFinite(i), c = Number.isFinite(r) && r !== 1 || a || l;\n if (be() && c) return await ar(e, z(W({}, t), { format: \"png\", quality: 1, meta: o }));\n let u = new Image();\n if (u.decoding = \"sync\", u.loading = \"eager\", u.src = e, await u.decode(), a && l) u.style.width = `${n}px`, u.style.height = `${i}px`;\n else if (a) {\n let d = Number.isFinite(o.w0) ? o.w0 : u.naturalWidth, s = Number.isFinite(o.h0) ? o.h0 : u.naturalHeight, f = n / Math.max(1, d);\n u.style.width = `${n}px`, u.style.height = `${Math.round(s * f)}px`;\n } else if (l) {\n let d = Number.isFinite(o.w0) ? o.w0 : u.naturalWidth, s = Number.isFinite(o.h0) ? o.h0 : u.naturalHeight, f = i / Math.max(1, s);\n u.style.height = `${i}px`, u.style.width = `${Math.round(d * f)}px`;\n } else {\n let d = Math.round(u.naturalWidth * r), s = Math.round(u.naturalHeight * r);\n if (u.style.width = `${d}px`, u.style.height = `${s}px`, typeof e == \"string\" && e.startsWith(\"data:image/svg+xml\")) try {\n let f = decodeURIComponent(e.split(\",\")[1]).replace(/width=\"[^\"]*\"/, `width=\"${d}\"`).replace(/height=\"[^\"]*\"/, `height=\"${s}\"`);\n e = `data:image/svg+xml;charset=utf-8,${encodeURIComponent(f)}`, u.src = e;\n } catch (f) {\n D(t, \"SVG width/height patch in toImg failed\", f);\n }\n }\n return u;\n}\nvar Nt = Q(() => {\n ce(), Oe();\n}), lr = {};\nPe(lr, { toBlob: () => sr });\nasync function sr(e, t) {\n let r = t.type;\n if (r === \"svg\") {\n let i = decodeURIComponent(e.split(\",\")[1]);\n return new Blob([i], { type: \"image/svg+xml\" });\n }\n let n = await ze(e, t);\n return new Promise((i) => n.toBlob((o) => i(o), `image/${r}`, t.quality));\n}\nvar cr = Q(() => {\n Xe();\n}), ur = {};\nPe(ur, { download: () => hn });\nasync function Lt(e, t) {\n var n;\n let r = new File([e], t, { type: e.type });\n if (!((n = navigator.canShare) != null && n.call(navigator, { files: [r] }))) return !1;\n try {\n await navigator.share({ files: [r], title: t });\n } catch (i) {\n if (i.name !== \"AbortError\") return !1;\n }\n return !0;\n}\nasync function hn(e, t) {\n let r = /* @__PURE__ */ new Set([\"png\", \"jpeg\", \"jpg\", \"webp\", \"svg\"]), n = ((t == null ? void 0 : t.type) || \"\").toLowerCase(), i = r.has(n) ? n : \"\", o = ((t == null ? void 0 : t.format) || i || \"\").toLowerCase(), a = o === \"jpg\" ? \"jpeg\" : o || \"png\", l = (t == null ? void 0 : t.filename) || `snapdom.${a}`, c = z(W({}, t || {}), { format: a, type: a });\n c.dpr = 1;\n let u = nn();\n if (a === \"svg\") {\n let f = await sr(e, z(W({}, c), { type: \"svg\" }));\n if (u && await Lt(f, l)) return;\n let p = URL.createObjectURL(f), m = document.createElement(\"a\");\n m.href = p, m.download = l, document.body.appendChild(m), m.click(), URL.revokeObjectURL(p), m.remove();\n return;\n }\n let d = await ze(e, c);\n if (u) {\n let f = `image/${a}`, p = await new Promise((m) => d.toBlob(m, f, t == null ? void 0 : t.quality));\n if (p && await Lt(p, l)) return;\n }\n let s = document.createElement(\"a\");\n s.href = d.toDataURL(`image/${a}`, t == null ? void 0 : t.quality), s.download = l, document.body.appendChild(s), s.click(), s.remove();\n}\nvar pn = Q(() => {\n cr(), Xe(), Re();\n});\nce();\nce();\nie();\nvar Pt = /* @__PURE__ */ new WeakMap(), Ne = /* @__PURE__ */ new Map(), gn = 2e3, nt = 0;\nfunction Ee() {\n nt++, Ne.size > gn && Ne.clear();\n}\nvar Rt = !1;\nfunction yn(e = document.documentElement) {\n var t, r;\n if (!Rt) {\n Rt = !0;\n try {\n new MutationObserver(() => Ee()).observe(e, { subtree: !0, childList: !0, characterData: !0, attributes: !0 });\n } catch (n) {\n }\n try {\n new MutationObserver(() => Ee()).observe(document.head, { subtree: !0, childList: !0, characterData: !0, attributes: !0 });\n } catch (n) {\n }\n try {\n let n = document.fonts;\n n && ((t = n.addEventListener) == null || t.call(n, \"loadingdone\", Ee), (r = n.ready) == null || r.then(() => Ee()).catch(() => {\n }));\n } catch (n) {\n }\n }\n}\nfunction wn(e, t = {}) {\n let r = {}, n = e.getPropertyValue(\"visibility\"), i = t.excludeStyleProps;\n for (let s = 0; s < e.length; s++) {\n let f = e[s];\n if (dt(f) || i && (i instanceof RegExp && i.test(f) || typeof i == \"function\" && i(f))) continue;\n let p = e.getPropertyValue(f);\n (f === \"background-image\" || f === \"content\") && p.includes(\"url(\") && !p.includes(\"data:\") && (p = \"none\"), r[f] = p;\n }\n let o = [\"text-decoration-line\", \"text-decoration-color\", \"text-decoration-style\", \"text-decoration-thickness\", \"text-underline-offset\", \"text-decoration-skip-ink\"];\n for (let s of o) if (!r[s]) try {\n let f = e.getPropertyValue(s);\n f && (r[s] = f);\n } catch (f) {\n }\n let a = [\"-webkit-text-stroke\", \"-webkit-text-stroke-width\", \"-webkit-text-stroke-color\", \"paint-order\"];\n for (let s of a) if (!r[s]) try {\n let f = e.getPropertyValue(s);\n f && (r[s] = f);\n } catch (f) {\n }\n if (t.embedFonts) {\n let s = [\"font-feature-settings\", \"font-variation-settings\", \"font-kerning\", \"font-variant\", \"font-variant-ligatures\", \"font-optical-sizing\"];\n for (let f of s) if (!r[f]) try {\n let p = e.getPropertyValue(f);\n p && (r[f] = p);\n } catch (p) {\n }\n }\n n === \"hidden\" && (r.opacity = \"0\");\n try {\n (r[\"content-visibility\"] || e.getPropertyValue(\"content-visibility\")) === \"hidden\" && (r.visibility = \"hidden\");\n } catch (s) {\n }\n let l = parseFloat(e.getPropertyValue(\"border-top-width\") || 0) || 0, c = parseFloat(e.getPropertyValue(\"border-right-width\") || 0) || 0, u = parseFloat(e.getPropertyValue(\"border-bottom-width\") || 0) || 0, d = parseFloat(e.getPropertyValue(\"border-left-width\") || 0) || 0;\n if (l === 0 && c === 0 && u === 0 && d === 0) {\n let s = (e.getPropertyValue(\"border-image-source\") || \"\").trim(), f = s && s !== \"none\", p = [\"border\", \"border-top\", \"border-right\", \"border-bottom\", \"border-left\", \"border-width\", \"border-style\", \"border-color\", \"border-top-width\", \"border-top-style\", \"border-top-color\", \"border-right-width\", \"border-right-style\", \"border-right-color\", \"border-bottom-width\", \"border-bottom-style\", \"border-bottom-color\", \"border-left-width\", \"border-left-style\", \"border-left-color\", \"border-block\", \"border-block-width\", \"border-block-style\", \"border-block-color\", \"border-inline\", \"border-inline-width\", \"border-inline-style\", \"border-inline-color\"];\n for (let m of p) delete r[m];\n f || (r.border = \"none\");\n }\n return r;\n}\nvar Tt = /* @__PURE__ */ new WeakMap();\nfunction bn(e) {\n let t = Tt.get(e);\n return t || (t = Object.entries(e).sort((r, n) => r[0] < n[0] ? -1 : r[0] > n[0] ? 1 : 0).map(([r, n]) => `${r}:${n}`).join(\";\"), Tt.set(e, t), t);\n}\nfunction xn(e, t = null, r = {}) {\n let n = Pt.get(e);\n if (n && n.epoch === nt) return n.snapshot;\n let i = t || getComputedStyle(e), o = wn(i, r);\n return $n(e, i, o), Pt.set(e, { epoch: nt, snapshot: o }), o;\n}\nfunction Sn(e, t) {\n return e && e.session && e.persist ? e : e && (e.styleMap || e.styleCache || e.nodeMap) ? { session: e, persist: { snapshotKeyCache: Ne, defaultStyle: A.defaultStyle, baseStyle: A.baseStyle, image: A.image, resource: A.resource, background: A.background, font: A.font }, options: t || {} } : { session: A.session, persist: { snapshotKeyCache: Ne, defaultStyle: A.defaultStyle, baseStyle: A.baseStyle, image: A.image, resource: A.resource, background: A.background, font: A.font }, options: e || t || {} };\n}\nfunction Cn(e, t, r) {\n if (!(!e.style || e.style.length === 0)) for (let n = 0; n < e.style.length; n++) {\n let i = e.style[n], o = r.getPropertyValue(i);\n o && t.style.setProperty(i, o);\n }\n}\nasync function we(e, t, r, n) {\n var f, p;\n if (e.tagName === \"STYLE\") return;\n let i = Sn(r, n), o = i.options && i.options.cache || \"auto\";\n o !== \"disabled\" && yn(document.documentElement), o === \"disabled\" && !i.session.__bumpedForDisabled && (Ee(), Ne.clear(), i.session.__bumpedForDisabled = !0);\n let { session: a, persist: l } = i;\n if (!a.styleCache.has(e)) {\n let m = null;\n try {\n m = getComputedStyle(e);\n } catch (h) {\n }\n a.styleCache.set(e, m || getComputedStyle(document.documentElement));\n }\n let c = a.styleCache.get(e);\n (f = e.getAttribute) != null && f.call(e, \"style\") && Cn(e, t, c);\n let u = xn(e, c, i.options), d = bn(u), s = l.snapshotKeyCache.get(d);\n if (!s) {\n let m = ((p = e.tagName) == null ? void 0 : p.toLowerCase()) || \"div\";\n s = et(u, m), l.snapshotKeyCache.set(d, s);\n }\n a.styleMap.set(t, s);\n}\nfunction vn(e) {\n return e instanceof HTMLImageElement || e instanceof HTMLCanvasElement || e instanceof HTMLVideoElement || e instanceof HTMLIFrameElement || e instanceof SVGElement || e instanceof HTMLObjectElement || e instanceof HTMLEmbedElement;\n}\nfunction kn(e) {\n return e.backgroundImage && e.backgroundImage !== \"none\" || e.backgroundColor && e.backgroundColor !== \"rgba(0, 0, 0, 0)\" && e.backgroundColor !== \"transparent\" || (parseFloat(e.borderTopWidth) || 0) > 0 || (parseFloat(e.borderBottomWidth) || 0) > 0 || (parseFloat(e.paddingTop) || 0) > 0 || (parseFloat(e.paddingBottom) || 0) > 0 ? !0 : (e.overflowBlock || e.overflowY || \"visible\") !== \"visible\";\n}\nfunction An(e) {\n let t = e.parentElement;\n if (!t) return !1;\n let r = getComputedStyle(t).display || \"\";\n return r.includes(\"flex\") || r.includes(\"grid\");\n}\nfunction Mn(e, t) {\n if (e.textContent && /\\S/.test(e.textContent)) return !0;\n let r = e.firstElementChild, n = e.lastElementChild;\n if (r && r.tagName === \"BR\" || n && n.tagName === \"BR\") return !0;\n let i = e.scrollHeight;\n if (i === 0) return !1;\n let o = parseFloat(t.paddingTop) || 0, a = parseFloat(t.paddingBottom) || 0;\n return i > o + a;\n}\nfunction $n(e, t, r) {\n if (e instanceof HTMLElement && e.style && e.style.height) return;\n let n = e.tagName && e.tagName.toLowerCase();\n if (!n || ![\"div\", \"section\", \"article\", \"main\", \"aside\", \"header\", \"footer\", \"nav\"].includes(n)) return;\n let i = parseFloat(t.height);\n if (Number.isFinite(i) && e.scrollHeight > 0 && Math.abs(i - e.scrollHeight) > 2 || t.aspectRatio && t.aspectRatio !== \"none\" && t.aspectRatio !== \"auto\") return;\n let o = t.display || \"\";\n if (o.includes(\"flex\") || o.includes(\"grid\") || vn(e)) return;\n let a = t.position;\n if (a === \"absolute\" || a === \"fixed\" || a === \"sticky\" || t.transform !== \"none\" || kn(t) || An(e)) return;\n let l = t.overflowX || t.overflow || \"visible\", c = t.overflowY || t.overflow || \"visible\";\n if (l !== \"visible\" || c !== \"visible\") return;\n let u = t.clip;\n u && u !== \"auto\" && u !== \"rect(auto, auto, auto, auto)\" || t.visibility === \"hidden\" || t.opacity === \"0\" || Mn(e, t) && (delete r.height, delete r[\"block-size\"]);\n}\nrr();\nvar fr = [\"fill\", \"stroke\", \"color\", \"background-color\", \"stop-color\"], Wt = /* @__PURE__ */ new Map();\nfunction En(e, t) {\n let r = t + \"::\" + e.toLowerCase(), n = Wt.get(r);\n if (n) return n;\n let i = document, o = t === \"http://www.w3.org/2000/svg\" ? i.createElementNS(t, e) : i.createElement(e), a = i.createElement(\"div\");\n a.style.cssText = \"position:absolute;left:-99999px;top:-99999px;contain:strict;display:block;\", a.appendChild(o), i.documentElement.appendChild(a);\n let l = getComputedStyle(o), c = {};\n for (let u of fr) c[u] = l.getPropertyValue(u) || \"\";\n return a.remove(), Wt.set(r, c), c;\n}\nfunction Fn(e, t) {\n var o, a, l;\n if (!(e instanceof Element) || !(t instanceof Element)) return;\n let r = (o = e.getAttribute) == null ? void 0 : o.call(e, \"style\"), n = !!(r && r.includes(\"var(\"));\n if (!n && ((a = e.attributes) != null && a.length)) {\n let c = e.attributes;\n for (let u = 0; u < c.length; u++) {\n let d = c[u];\n if (d && typeof d.value == \"string\" && d.value.includes(\"var(\")) {\n n = !0;\n break;\n }\n }\n }\n let i = null;\n if (n) try {\n i = getComputedStyle(e);\n } catch (c) {\n }\n if (n) {\n let c = e.style;\n if (c && c.length) {\n let u = /* @__PURE__ */ new Set();\n for (let d = 0; d < c.length; d++) {\n let s = c[d];\n if (u.has(s)) continue;\n u.add(s);\n let f = c.getPropertyValue(s);\n if (!f || !f.includes(\"var(\")) continue;\n let p = i && i.getPropertyValue(s);\n if (p) try {\n t.style.setProperty(s, p.trim(), c.getPropertyPriority(s));\n } catch (m) {\n }\n }\n }\n }\n if (n && ((l = e.attributes) != null && l.length)) {\n let c = e.attributes;\n for (let u = 0; u < c.length; u++) {\n let d = c[u];\n if (!d || typeof d.value != \"string\" || !d.value.includes(\"var(\")) continue;\n let s = d.name, f = i && i.getPropertyValue(s);\n if (f) try {\n t.style.setProperty(s, f.trim());\n } catch (p) {\n }\n }\n }\n if (!n) {\n if (!i) try {\n i = getComputedStyle(e);\n } catch (d) {\n i = null;\n }\n if (!i) return;\n let c = e.namespaceURI || \"html\", u = En(e.tagName, c);\n for (let d of fr) {\n let s = i.getPropertyValue(d) || \"\", f = u[d] || \"\";\n if (s && s !== f) try {\n t.style.setProperty(d, s.trim());\n } catch (p) {\n }\n }\n }\n}\nce();\nce();\nie();\nke();\nfunction Ke(e, t, r) {\n return Promise.all(e.map((n) => new Promise((i) => {\n function o() {\n Ce((a) => {\n !(a && typeof a.timeRemaining == \"function\") || a.timeRemaining() > 0 ? t(n, i) : o();\n }, { fast: r });\n }\n o();\n })));\n}\nfunction Nn(e) {\n return e = e.trim(), !e || /:not\\(\\s*\\[data-sd-slotted\\]\\s*\\)\\s*$/.test(e) ? e : `${e}:not([data-sd-slotted])`;\n}\nfunction Ln(e, t, r = !0) {\n return e.split(\",\").map((n) => n.trim()).filter(Boolean).map((n) => {\n if (n.startsWith(\":where(\") || n.startsWith(\"@\")) return n;\n let i = r ? Nn(n) : n;\n return `:where(${t} ${i})`;\n }).join(\", \");\n}\nfunction Pn(e, t) {\n return e ? (e = e.replace(/:host\\(([^)]+)\\)/g, (r, n) => `:where(${t}:is(${n.trim()}))`), e = e.replace(/:host\\b/g, `:where(${t})`), e = e.replace(/:host-context\\(([^)]+)\\)/g, (r, n) => `:where(:where(${n.trim()}) ${t})`), e = e.replace(/::slotted\\(([^)]+)\\)/g, (r, n) => `:where(${t} ${n.trim()})`), e = e.replace(/(^|})(\\s*)([^@}{]+){/g, (r, n, i, o) => {\n let a = Ln(o, t, !0);\n return `${n}${i}${a}{`;\n }), e) : \"\";\n}\nfunction Rn(e) {\n return e.shadowScopeSeq = (e.shadowScopeSeq || 0) + 1, `s${e.shadowScopeSeq}`;\n}\nfunction Tn(e) {\n let t = \"\";\n try {\n e.querySelectorAll(\"style\").forEach((n) => {\n t += (n.textContent || \"\") + `\n`;\n });\n let r = e.adoptedStyleSheets || [];\n for (let n of r) try {\n if (n && n.cssRules) for (let i of n.cssRules) t += i.cssText + `\n`;\n } catch (i) {\n }\n } catch (r) {\n }\n return t;\n}\nfunction Wn(e, t, r) {\n if (!t) return;\n let n = document.createElement(\"style\");\n n.setAttribute(\"data-sd\", r), n.textContent = t, e.insertBefore(n, e.firstChild || null);\n}\nfunction In(e, t) {\n try {\n let r = e.currentSrc || e.src || \"\";\n if (!r) return;\n t.setAttribute(\"src\", r), t.removeAttribute(\"srcset\"), t.removeAttribute(\"sizes\"), t.loading = \"eager\", t.decoding = \"sync\";\n } catch (r) {\n }\n}\nfunction _n(e) {\n let t = /* @__PURE__ */ new Set();\n if (!e) return t;\n let r = /var\\(\\s*(--[A-Za-z0-9_-]+)\\b/g, n;\n for (; n = r.exec(e); ) t.add(n[1]);\n return t;\n}\nfunction Un(e, t) {\n try {\n let r = getComputedStyle(e).getPropertyValue(t).trim();\n if (r) return r;\n } catch (r) {\n }\n try {\n let r = getComputedStyle(document.documentElement).getPropertyValue(t).trim();\n if (r) return r;\n } catch (r) {\n }\n return \"\";\n}\nfunction On(e, t, r) {\n let n = [];\n for (let i of t) {\n let o = Un(e, i);\n o && n.push(`${i}: ${o};`);\n }\n return n.length ? `${r}{${n.join(\"\")}}\n` : \"\";\n}\nfunction jn(e) {\n e && (e.nodeType === Node.ELEMENT_NODE && e.setAttribute(\"data-sd-slotted\", \"\"), e.querySelectorAll && e.querySelectorAll(\"*\").forEach((t) => t.setAttribute(\"data-sd-slotted\", \"\")));\n}\nasync function Hn(e, t = 3) {\n let r = () => {\n var o;\n try {\n return e.contentDocument || ((o = e.contentWindow) == null ? void 0 : o.document) || null;\n } catch (a) {\n return null;\n }\n }, n = r(), i = 0;\n for (; i < t && (!n || !n.body && !n.documentElement); ) await new Promise((o) => setTimeout(o, 0)), n = r(), i++;\n return n && (n.body || n.documentElement) ? n : null;\n}\nfunction Dn(e) {\n let t = e.getBoundingClientRect(), r = 0, n = 0, i = 0, o = 0;\n try {\n let c = getComputedStyle(e);\n r = parseFloat(c.borderLeftWidth) || 0, n = parseFloat(c.borderRightWidth) || 0, i = parseFloat(c.borderTopWidth) || 0, o = parseFloat(c.borderBottomWidth) || 0;\n } catch (c) {\n }\n let a = Math.max(0, Math.round(t.width - (r + n))), l = Math.max(0, Math.round(t.height - (i + o)));\n return { contentWidth: a, contentHeight: l, rect: t };\n}\nfunction se(e) {\n let t = 0, r = 0;\n if (e.offsetWidth > 0 && (t = e.offsetWidth), e.offsetHeight > 0 && (r = e.offsetHeight), t === 0 || r === 0) try {\n let n = getComputedStyle(e);\n if (t === 0) {\n let i = parseFloat(n.width);\n !isNaN(i) && i > 0 && (t = i);\n }\n if (r === 0) {\n let i = parseFloat(n.height);\n !isNaN(i) && i > 0 && (r = i);\n }\n } catch (n) {\n }\n if (t === 0 || r === 0) try {\n if (t === 0) {\n let n = parseFloat(e.getAttribute(\"width\"));\n !isNaN(n) && n > 0 && (t = n);\n }\n if (r === 0) {\n let n = parseFloat(e.getAttribute(\"height\"));\n !isNaN(n) && n > 0 && (r = n);\n }\n } catch (n) {\n }\n if ((t === 0 || r === 0) && (e.naturalWidth || e.naturalHeight)) try {\n t === 0 && e.naturalWidth > 0 && (t = e.naturalWidth), r === 0 && e.naturalHeight > 0 && (r = e.naturalHeight);\n } catch (n) {\n }\n return { width: t, height: r };\n}\nfunction Bn(e, t, r) {\n let n = e.createElement(\"style\");\n return n.setAttribute(\"data-sd-iframe-pin\", \"\"), n.textContent = `html, body {margin: 0 !important;padding: 0 !important;width: ${t}px !important;height: ${r}px !important;min-width: ${t}px !important;min-height: ${r}px !important;box-sizing: border-box !important;overflow: hidden !important;background-clip: border-box !important;}`, (e.head || e.documentElement).appendChild(n), () => {\n try {\n n.remove();\n } catch (i) {\n }\n };\n}\nasync function qn(e, t, r) {\n let n = await Hn(e, 3);\n if (!n) throw new Error(\"iframe document not accessible/ready\");\n let { contentWidth: i, contentHeight: o, rect: a } = Dn(e), l = r == null ? void 0 : r.snap;\n if (!l && typeof window < \"u\" && window.snapdom && (l = window.snapdom), !l || typeof l.toPng != \"function\") throw new Error(\"[snapdom] iframe capture requires snapdom.toPng. Use snapdom(el) or pass options.snap. With ESM, assign window.snapdom = snapdom after import if using iframes.\");\n let c = z(W({}, r), { scale: 1 }), u = Bn(n, i, o), d;\n try {\n d = await l.toPng(n.documentElement, c);\n } finally {\n u();\n }\n d.style.display = \"block\", d.style.width = `${i}px`, d.style.height = `${o}px`;\n let s = document.createElement(\"div\");\n return t.nodeMap.set(s, e), we(e, s, t, r), s.style.overflow = \"hidden\", s.style.display = \"block\", s.style.width || (s.style.width = `${Math.round(a.width)}px`), s.style.height || (s.style.height = `${Math.round(a.height)}px`), s.appendChild(d), s;\n}\nfunction Vn(e) {\n let { width: t, height: r } = se(e), n = e.getBoundingClientRect(), i;\n try {\n i = window.getComputedStyle(e);\n } catch (g) {\n }\n let o = i ? parseFloat(i.width) : NaN, a = i ? parseFloat(i.height) : NaN, l = Math.round(t || n.width || 0), c = Math.round(r || n.height || 0), u = Number.isFinite(o) && o > 0 ? Math.round(o) : Math.max(12, l || 16), d = Number.isFinite(a) && a > 0 ? Math.round(a) : Math.max(12, c || 16), s = (e.type || \"text\").toLowerCase() === \"checkbox\", f = !!e.checked, p = !!e.indeterminate, m = Math.max(Math.min(u, d), 12), h = \"middle\";\n try {\n i && i.verticalAlign && (h = i.verticalAlign);\n } catch (g) {\n }\n let y = document.createElement(\"div\");\n y.setAttribute(\"data-snapdom-input-replacement\", e.type || \"checkbox\"), y.style.cssText = `display:inline-block;width:${m}px;height:${m}px;vertical-align:${h};flex-shrink:0;line-height:0;`;\n let S = document.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\");\n S.setAttribute(\"width\", String(m)), S.setAttribute(\"height\", String(m)), S.setAttribute(\"viewBox\", `0 0 ${m} ${m}`), y.appendChild(S);\n function M() {\n let g = \"#0a6ed1\";\n try {\n i && (g = i.accentColor || i.color || g);\n } catch (v) {\n }\n let w = 2, C = w / 2, b = m - w;\n if (S.innerHTML = \"\", s) {\n let v = document.createElementNS(\"http://www.w3.org/2000/svg\", \"rect\");\n if (v.setAttribute(\"x\", String(C)), v.setAttribute(\"y\", String(C)), v.setAttribute(\"width\", String(b)), v.setAttribute(\"height\", String(b)), v.setAttribute(\"rx\", \"2\"), v.setAttribute(\"ry\", \"2\"), v.setAttribute(\"fill\", f ? g : \"none\"), v.setAttribute(\"stroke\", g), v.setAttribute(\"stroke-width\", String(w)), S.appendChild(v), f) {\n let x = document.createElementNS(\"http://www.w3.org/2000/svg\", \"path\");\n x.setAttribute(\"d\", `M ${C + 2} ${m / 2} L ${m / 2 - 1} ${m - C - 2} L ${m - C - 2} ${C + 2}`), x.setAttribute(\"stroke\", \"white\"), x.setAttribute(\"stroke-width\", String(Math.max(1.5, w))), x.setAttribute(\"fill\", \"none\"), x.setAttribute(\"stroke-linecap\", \"round\"), x.setAttribute(\"stroke-linejoin\", \"round\"), S.appendChild(x);\n } else if (p) {\n let x = document.createElementNS(\"http://www.w3.org/2000/svg\", \"rect\"), $ = Math.max(6, b - 4);\n x.setAttribute(\"x\", String((m - $) / 2)), x.setAttribute(\"y\", String((m - w) / 2)), x.setAttribute(\"width\", String($)), x.setAttribute(\"height\", String(w)), x.setAttribute(\"fill\", g), x.setAttribute(\"rx\", \"1\"), S.appendChild(x);\n }\n } else {\n let v = document.createElementNS(\"http://www.w3.org/2000/svg\", \"circle\");\n if (v.setAttribute(\"cx\", String(m / 2)), v.setAttribute(\"cy\", String(m / 2)), v.setAttribute(\"r\", String((m - w) / 2)), v.setAttribute(\"fill\", f ? g : \"none\"), v.setAttribute(\"stroke\", g), v.setAttribute(\"stroke-width\", String(w)), S.appendChild(v), f) {\n let x = document.createElementNS(\"http://www.w3.org/2000/svg\", \"circle\"), $ = Math.max(2, (m - w * 2) * 0.35);\n x.setAttribute(\"cx\", String(m / 2)), x.setAttribute(\"cy\", String(m / 2)), x.setAttribute(\"r\", String($)), x.setAttribute(\"fill\", \"white\"), S.appendChild(x);\n }\n }\n y.style.setProperty(\"width\", `${m}px`, \"important\"), y.style.setProperty(\"height\", `${m}px`, \"important\"), y.style.setProperty(\"min-width\", `${m}px`, \"important\"), y.style.setProperty(\"min-height\", `${m}px`, \"important\");\n }\n return M(), { el: y, applyVisual: M };\n}\nvar Me = new ee(80);\nasync function Fe(e) {\n var r;\n if ((r = A.resource) != null && r.has(e)) return A.resource.get(e);\n if (Me.has(e)) return Me.get(e);\n let t = (async () => {\n var i;\n let n = await oe(e, { as: \"dataURL\", silent: !0 });\n if (!n.ok || typeof n.data != \"string\") throw new Error(`[snapDOM] Failed to read blob URL: ${e}`);\n return (i = A.resource) == null || i.set(e, n.data), n.data;\n })();\n Me.set(e, t);\n try {\n let n = await t;\n return Me.set(e, n), n;\n } catch (n) {\n throw Me.delete(e), n;\n }\n}\nvar zn = /\\bblob:[^)\"'\\s]+/g;\nasync function It(e) {\n if (!e || e.indexOf(\"blob:\") === -1) return e;\n let t = Array.from(new Set(e.match(zn) || []));\n if (t.length === 0) return e;\n let r = e;\n for (let n of t) try {\n let i = await Fe(n);\n r = r.split(n).join(i);\n } catch (i) {\n }\n return r;\n}\nfunction Ie(e) {\n return typeof e == \"string\" && e.startsWith(\"blob:\");\n}\nfunction Xn(e) {\n return (e || \"\").split(\",\").map((t) => t.trim()).filter(Boolean).map((t) => {\n let r = t.match(/^(\\S+)(\\s+.+)?$/);\n return r ? { url: r[1], desc: r[2] || \"\" } : null;\n }).filter(Boolean);\n}\nfunction Yn(e) {\n return e.map((t) => t.desc ? `${t.url} ${t.desc.trim()}` : t.url).join(\", \");\n}\nasync function Gn(e, t = null) {\n var c, u;\n if (!e) return;\n let r = t, n = e.querySelectorAll ? e.querySelectorAll(\"img\") : [];\n for (let d of n) try {\n let s = d.getAttribute(\"src\") || d.currentSrc || \"\";\n if (Ie(s)) {\n let p = await Fe(s);\n d.setAttribute(\"src\", p);\n }\n let f = d.getAttribute(\"srcset\");\n if (f && f.includes(\"blob:\")) {\n let p = Xn(f), m = !1;\n for (let h of p) if (Ie(h.url)) try {\n h.url = await Fe(h.url), m = !0;\n } catch (y) {\n D(r, \"blobUrlToDataUrl for srcset item failed\", y);\n }\n m && d.setAttribute(\"srcset\", Yn(p));\n }\n } catch (s) {\n D(r, \"resolveBlobUrls for img failed\", s);\n }\n let i = e.querySelectorAll ? e.querySelectorAll(\"image\") : [];\n for (let d of i) try {\n let s = \"http://www.w3.org/1999/xlink\", f = d.getAttribute(\"href\") || ((c = d.getAttributeNS) == null ? void 0 : c.call(d, s, \"href\"));\n if (Ie(f)) {\n let p = await Fe(f);\n d.setAttribute(\"href\", p), (u = d.removeAttributeNS) == null || u.call(d, s, \"href\");\n }\n } catch (s) {\n D(r, \"resolveBlobUrls for SVG image href failed\", s);\n }\n let o = e.querySelectorAll ? e.querySelectorAll(\"[style*='blob:']\") : [];\n for (let d of o) try {\n let s = d.getAttribute(\"style\");\n if (s && s.includes(\"blob:\")) {\n let f = await It(s);\n d.setAttribute(\"style\", f);\n }\n } catch (s) {\n D(r, \"replaceBlobUrls in inline style failed\", s);\n }\n let a = e.querySelectorAll ? e.querySelectorAll(\"style\") : [];\n for (let d of a) try {\n let s = d.textContent || \"\";\n s.includes(\"blob:\") && (d.textContent = await It(s));\n } catch (s) {\n D(r, \"replaceBlobUrls in style tag failed\", s);\n }\n let l = [\"poster\"];\n for (let d of l) {\n let s = e.querySelectorAll ? e.querySelectorAll(`[${d}^='blob:']`) : [];\n for (let f of s) try {\n let p = f.getAttribute(d);\n Ie(p) && f.setAttribute(d, await Fe(p));\n } catch (p) {\n D(r, `resolveBlobUrls for ${d} failed`, p);\n }\n }\n}\nRe();\nasync function je(e, t, r) {\n var d, s, f, p, m, h, y, S, M;\n if (!e) throw new Error(\"Invalid node\");\n let n = /* @__PURE__ */ new Set(), i = null, o = null;\n if (e.nodeType === Node.ELEMENT_NODE) {\n let g = (e.localName || e.tagName || \"\").toLowerCase();\n if (e.id === \"snapdom-sandbox\" || e.hasAttribute(\"data-snapdom-sandbox\") || Qt.has(g)) return null;\n if (g === \"foreignobject\" && ((s = (d = e.parentElement) == null ? void 0 : d.closest) != null && s.call(d, \"foreignObject\"))) return D(t, \"Nested <foreignObject> skipped (SVG spec limitation — not rendered by browsers)\"), null;\n }\n if (e.nodeType === Node.TEXT_NODE || e.nodeType !== Node.ELEMENT_NODE) return e.cloneNode(!0);\n if (e.getAttribute(\"data-capture\") === \"exclude\") {\n if (r.excludeMode === \"hide\") {\n let g = document.createElement(\"div\"), { width: w, height: C } = se(e), b = w || e.getBoundingClientRect().width || 0, v = C || e.getBoundingClientRect().height || 0;\n return g.style.cssText = `display:inline-block;width:${b}px;height:${v}px;visibility:hidden;`, g;\n } else if (r.excludeMode === \"remove\") return null;\n }\n if (r.exclude && Array.isArray(r.exclude)) for (let g of r.exclude) try {\n if ((f = e.matches) != null && f.call(e, g)) {\n if (r.excludeMode === \"hide\") {\n let w = document.createElement(\"div\"), { width: C, height: b } = se(e), v = C || e.getBoundingClientRect().width || 0, x = b || e.getBoundingClientRect().height || 0;\n return w.style.cssText = `display:inline-block;width:${v}px;height:${x}px;visibility:hidden;`, w;\n } else if (r.excludeMode === \"remove\") return null;\n }\n } catch (w) {\n console.warn(`Invalid selector in exclude option: ${g}`, w);\n }\n if (typeof r.filter == \"function\") try {\n if (!r.filter(e)) {\n if (r.filterMode === \"hide\") {\n let g = document.createElement(\"div\"), { width: w, height: C } = se(e), b = w || e.getBoundingClientRect().width || 0, v = C || e.getBoundingClientRect().height || 0;\n return g.style.cssText = `display:inline-block;width:${b}px;height:${v}px;visibility:hidden;`, g;\n } else if (r.filterMode === \"remove\") return null;\n }\n } catch (g) {\n console.warn(\"Error in filter function:\", g);\n }\n if (e.tagName === \"IFRAME\") {\n let g = !1;\n try {\n g = !!(e.contentDocument || (p = e.contentWindow) != null && p.document);\n } catch (w) {\n D(t, \"iframe same-origin probe failed\", w);\n }\n if (g) try {\n return await qn(e, t, r);\n } catch (w) {\n console.warn(\"[SnapDOM] iframe rasterization failed, fallback:\", w);\n }\n if (g || console.warn(\"[snapdom] cross-origin <iframe> skipped (cannot access content). Use options.placeholders to show a placeholder instead.\", e), r.placeholders) {\n let { width: w, height: C } = se(e), b = document.createElement(\"div\");\n return b.style.cssText = `width:${w}px;height:${C}px;background-image:repeating-linear-gradient(45deg,#ddd,#ddd 5px,#f9f9f9 5px,#f9f9f9 10px);display:flex;align-items:center;justify-content:center;font-size:12px;color:#555;border:1px solid #aaa;`, we(e, b, t, r), b;\n } else {\n let { width: w, height: C } = se(e), b = document.createElement(\"div\");\n return b.style.cssText = `display:inline-block;width:${w}px;height:${C}px;visibility:hidden;`, we(e, b, t, r), b;\n }\n }\n if (e.getAttribute(\"data-capture\") === \"placeholder\") {\n let g = e.cloneNode(!1);\n t.nodeMap.set(g, e), we(e, g, t, r);\n let w = document.createElement(\"div\");\n return w.textContent = e.getAttribute(\"data-placeholder-text\") || \"\", w.style.cssText = \"color:#666;font-size:12px;text-align:center;line-height:1.4;padding:0.5em;box-sizing:border-box;\", g.appendChild(w), g;\n }\n if (e.tagName === \"CANVAS\") {\n let g = \"\";\n try {\n let v = e.getContext(\"2d\", { willReadFrequently: !0 });\n try {\n v && v.getImageData(0, 0, 1, 1);\n } catch (x) {\n }\n if (await new Promise((x) => requestAnimationFrame(x)), g = e.toDataURL(\"image/png\"), !g || g === \"data:,\") {\n try {\n v && v.getImageData(0, 0, 1, 1);\n } catch (x) {\n }\n if (await new Promise((x) => requestAnimationFrame(x)), g = e.toDataURL(\"image/png\"), !g || g === \"data:,\") {\n let x = document.createElement(\"canvas\");\n x.width = e.width, x.height = e.height;\n let $ = x.getContext(\"2d\");\n $ && ($.drawImage(e, 0, 0), g = x.toDataURL(\"image/png\"));\n }\n }\n } catch (v) {\n D(t, \"Canvas toDataURL failed, using empty/fallback\", v);\n }\n let w = document.createElement(\"img\");\n try {\n w.decoding = \"sync\", w.loading = \"eager\";\n } catch (v) {\n D(t, \"img decoding/loading hints failed\", v);\n }\n g && (w.src = g), w.width = e.width, w.height = e.height;\n let { width: C, height: b } = se(e);\n return C > 0 && (w.style.width = `${C}px`), b > 0 && (w.style.height = `${b}px`), t.nodeMap.set(w, e), we(e, w, t, r), w;\n }\n if (e.tagName === \"VIDEO\") {\n let g = \"\";\n try {\n let v = document.createElement(\"canvas\");\n v.width = e.videoWidth || e.offsetWidth || 320, v.height = e.videoHeight || e.offsetHeight || 240;\n let x = v.getContext(\"2d\");\n x && (x.drawImage(e, 0, 0, v.width, v.height), g = v.toDataURL(\"image/png\"), (!g || g === \"data:,\") && (g = \"\"));\n } catch (v) {\n D(t, \"Video frame capture failed, using poster fallback\", v);\n }\n let w = document.createElement(\"img\");\n try {\n w.decoding = \"sync\", w.loading = \"eager\";\n } catch (v) {\n }\n g ? w.src = g : e.poster && (w.src = e.poster), w.width = e.videoWidth || e.offsetWidth || 0, w.height = e.videoHeight || e.offsetHeight || 0;\n let { width: C, height: b } = se(e);\n return C > 0 && (w.style.width = `${C}px`), b > 0 && (w.style.height = `${b}px`), w.style.objectFit = \"contain\", t.nodeMap.set(w, e), we(e, w, t, r), w;\n }\n let a;\n try {\n if (a = e.cloneNode(!1), (m = a.attributes) == null ? void 0 : m.length) try {\n for (let g of a.attributes) /[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\uFFFE\\uFFFF]/.test(g.value) && a.setAttribute(g.name, g.value.replace(/[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\uFFFE\\uFFFF]/g, \"\"));\n } catch (g) {\n }\n if (Fn(e, a), t.nodeMap.set(a, e), e.tagName === \"IMG\") {\n In(e, a);\n try {\n let { width: g, height: w } = se(e), C = Math.round(g || 0), b = Math.round(w || 0);\n C && (a.dataset.snapdomWidth = String(C)), b && (a.dataset.snapdomHeight = String(b));\n } catch (g) {\n D(t, \"getUnscaledDimensions for IMG failed\", g);\n }\n try {\n let g = e.getAttribute(\"style\") || \"\", w = window.getComputedStyle(e), C = (j) => {\n let _ = g.match(new RegExp(`${j}\\\\s*:\\\\s*([^;]+)`, \"i\")), B = _ ? _[1].trim() : w.getPropertyValue(j);\n return /%|auto/i.test(String(B || \"\"));\n }, b = parseInt(a.dataset.snapdomWidth || \"0\", 10), v = parseInt(a.dataset.snapdomHeight || \"0\", 10), x = C(\"width\") || !b, $ = C(\"height\") || !v;\n x && b && (a.style.width = `${b}px`), $ && v && (a.style.height = `${v}px`);\n let E = w.getPropertyValue(\"object-fit\"), U = w.getPropertyValue(\"object-position\");\n E && E !== \"fill\" ? (a.style.objectFit = E, U && (a.style.objectPosition = U)) : (b && (a.style.minWidth = `${b}px`), v && (a.style.minHeight = `${v}px`));\n } catch (g) {\n D(t, \"IMG dimension freeze failed\", g);\n }\n }\n } catch (g) {\n throw console.error(\"[Snapdom] Failed to clone node:\", e, g), g;\n }\n let l = null;\n if (e instanceof HTMLTextAreaElement) {\n let { width: g, height: w } = se(e), C = g || e.getBoundingClientRect().width || 0, b = w || e.getBoundingClientRect().height || 0;\n C && (a.style.width = `${C}px`), b && (a.style.height = `${b}px`);\n }\n if (e instanceof HTMLInputElement) {\n let g = (e.type || \"text\").toLowerCase();\n if ((g === \"checkbox\" || g === \"radio\") && on()) {\n let { el: w, applyVisual: C } = Vn(e);\n t.nodeMap.set(w, e), l = C, a = w;\n } else a.value = e.value, a.setAttribute(\"value\", e.value), e.checked !== void 0 && (a.checked = e.checked, e.checked && a.setAttribute(\"checked\", \"\"), e.indeterminate && (a.indeterminate = e.indeterminate));\n }\n if ((e instanceof HTMLInputElement || e instanceof HTMLTextAreaElement) && !e.value && e.placeholder) try {\n let g = window.getComputedStyle(e, \"::placeholder\"), w = g && g.color;\n if (w && w !== \"rgba(0, 0, 0, 0)\") {\n let C = \"snapdom-ph-\" + (Math.random() * 1e6 | 0);\n a.classList.add(C);\n let b = document.createElement(\"style\");\n b.textContent = `.${C}::placeholder{color:${w}!important;opacity:${g.opacity || \"1\"}!important;}`, a.prepend(b);\n }\n } catch (g) {\n }\n if (e instanceof HTMLSelectElement && (i = e.value), e instanceof HTMLTextAreaElement && (o = e.value), e instanceof HTMLInputElement || e instanceof HTMLTextAreaElement || e instanceof HTMLSelectElement) {\n e.disabled && a.setAttribute(\"disabled\", \"\"), e.required && a.setAttribute(\"required\", \"\"), e.readOnly && a.setAttribute(\"readonly\", \"\");\n let g = e;\n g.min !== void 0 && g.min !== \"\" && a.setAttribute(\"min\", g.min), g.max !== void 0 && g.max !== \"\" && a.setAttribute(\"max\", g.max), g.pattern !== void 0 && g.pattern !== \"\" && a.setAttribute(\"pattern\", g.pattern);\n let w = e.getAttribute(\"aria-invalid\");\n w !== null && a.setAttribute(\"aria-invalid\", w);\n }\n if (we(e, a, t, r), l && l(), e instanceof SVGElement) {\n let g = [\"fill\", \"stroke\", \"stroke-width\", \"stroke-dasharray\", \"stroke-dashoffset\", \"stroke-linecap\", \"stroke-linejoin\", \"stroke-miterlimit\", \"opacity\", \"fill-opacity\", \"stroke-opacity\", \"fill-rule\", \"clip-rule\", \"marker\", \"marker-start\", \"marker-mid\", \"marker-end\", \"visibility\", \"display\"];\n try {\n let w = window.getComputedStyle(e);\n for (let C of g) {\n let b = w.getPropertyValue(C);\n b && a.style.setProperty(C, b);\n }\n } catch (w) {\n }\n }\n if (e.shadowRoot) {\n let g = function(j, _) {\n if (j.nodeType === Node.ELEMENT_NODE && j.tagName === \"STYLE\") return _(null);\n je(j, t, r).then((B) => {\n _(B || null);\n }).catch(() => {\n _(null);\n });\n };\n try {\n let j = e.shadowRoot.querySelectorAll(\"slot\");\n for (let _ of j) {\n let B = [];\n try {\n B = ((h = _.assignedNodes) == null ? void 0 : h.call(_, { flatten: !0 })) || ((y = _.assignedNodes) == null ? void 0 : y.call(_)) || [];\n } catch (V) {\n B = ((S = _.assignedNodes) == null ? void 0 : S.call(_)) || [];\n }\n for (let V of B) n.add(V);\n }\n } catch (j) {\n }\n let w = Rn(t), C = `[data-sd=\"${w}\"]`;\n try {\n a.setAttribute(\"data-sd\", w);\n } catch (j) {\n }\n let b = Tn(e.shadowRoot), v = Pn(b, C), x = _n(b), $ = On(e, x, C);\n Wn(a, $ + v, w);\n let E = document.createDocumentFragment(), U = await Ke(Array.from(e.shadowRoot.childNodes), g, r.fast);\n E.append(...U.filter((j) => !!j)), a.appendChild(E);\n }\n if (e.tagName === \"SLOT\") {\n let g = function(x, $) {\n je(x, t, r).then((E) => {\n E && jn(E), $(E || null);\n }).catch(() => {\n $(null);\n });\n }, w = ((M = e.assignedNodes) == null ? void 0 : M.call(e, { flatten: !0 })) || [], C = w.length > 0 ? w : Array.from(e.childNodes), b = document.createDocumentFragment(), v = await Ke(Array.from(C), g, r.fast);\n return b.append(...v.filter((x) => !!x)), b;\n }\n function c(g, w) {\n if (n.has(g)) return w(null);\n je(g, t, r).then((C) => {\n w(C || null);\n }).catch(() => {\n w(null);\n });\n }\n let u = await Ke(Array.from(e.childNodes), c, r.fast);\n if (a.append(...u.filter((g) => !!g)), i !== null && a instanceof HTMLSelectElement) {\n a.value = i;\n for (let g of a.options) g.value === i ? g.setAttribute(\"selected\", \"\") : g.removeAttribute(\"selected\");\n }\n return o !== null && a instanceof HTMLTextAreaElement && (a.textContent = o), a;\n}\nce();\nVe();\nie();\nvar Jn = [/font\\s*awesome/i, /material\\s*icons/i, /ionicons/i, /glyphicons/i, /feather/i, /bootstrap\\s*icons/i, /remix\\s*icons/i, /heroicons/i, /layui/i, /lucide/i], xe = Object.assign({ materialIconsFilled: \"https://fonts.gstatic.com/s/materialicons/v48/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2\", materialIconsOutlined: \"https://fonts.gstatic.com/s/materialiconsoutlined/v110/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcel5euIg.woff2\", materialIconsRound: \"https://fonts.gstatic.com/s/materialiconsround/v109/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmPq_HTTw.woff2\", materialIconsSharp: \"https://fonts.gstatic.com/s/materialiconssharp/v110/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvRImcycg.woff2\" }, typeof window < \"u\" && window.__SNAPDOM_ICON_FONTS__ || {}), ot = [];\nfunction Kn(e) {\n let t = Array.isArray(e) ? e : [e];\n for (let r of t) r instanceof RegExp ? ot.push(r) : typeof r == \"string\" ? ot.push(new RegExp(r, \"i\")) : console.warn(\"[snapdom] Ignored invalid iconFont value:\", r);\n}\nfunction de(e) {\n let t = typeof e == \"string\" ? e : \"\", r = [...Jn, ...ot];\n for (let n of r) if (n instanceof RegExp && n.test(t)) return !0;\n return !!(/icon/i.test(t) || /glyph/i.test(t) || /symbols/i.test(t) || /feather/i.test(t) || /fontawesome/i.test(t));\n}\nfunction Qn(e = \"\") {\n let t = String(e).toLowerCase();\n return /\\bmaterial\\s*icons\\b/.test(t) || /\\bmaterial\\s*symbols\\b/.test(t);\n}\nvar _t = /* @__PURE__ */ new Map();\nfunction Zn(e = \"\") {\n let t = /* @__PURE__ */ Object.create(null), r = String(e || \"\"), n = /['\"]?\\s*([A-Za-z]{3,4})\\s*['\"]?\\s*([+-]?\\d+(?:\\.\\d+)?)\\s*/g, i;\n for (; i = n.exec(r); ) t[i[1].toUpperCase()] = Number(i[2]);\n return t;\n}\nasync function eo(e, t, r) {\n var s;\n let n = String(e || \"\"), i = n.toLowerCase(), o = String(t || \"\").toLowerCase();\n if (/\\bmaterial\\s*icons\\b/.test(i) && !/\\bsymbols\\b/.test(i)) return { familyForMeasure: n, familyForCanvas: n };\n if (!/\\bmaterial\\s*symbols\\b/.test(i)) return { familyForMeasure: n, familyForCanvas: n };\n let a = r && ((s = r.FILL) != null ? s : r.fill), l = \"outlined\";\n /\\brounded\\b/.test(o) || /\\bround\\b/.test(o) ? l = \"rounded\" : /\\bsharp\\b/.test(o) ? l = \"sharp\" : /\\boutlined\\b/.test(o) && (l = \"outlined\");\n let c = a === 1, u = null;\n if (c && (l === \"outlined\" && xe.materialIconsFilled ? u = { url: xe.materialIconsFilled, alias: \"snapdom-mi-filled\" } : l === \"rounded\" && xe.materialIconsRound ? u = { url: xe.materialIconsRound, alias: \"snapdom-mi-round\" } : l === \"sharp\" && xe.materialIconsSharp && (u = { url: xe.materialIconsSharp, alias: \"snapdom-mi-sharp\" })), !u) return { familyForMeasure: n, familyForCanvas: n };\n if (!_t.has(u.alias)) try {\n let f = new FontFace(u.alias, `url(${u.url})`, { style: \"normal\", weight: \"400\" });\n document.fonts.add(f), await f.load(), _t.set(u.alias, !0);\n } catch (f) {\n return { familyForMeasure: n, familyForCanvas: n };\n }\n let d = `\"${u.alias}\"`;\n return { familyForMeasure: d, familyForCanvas: d };\n}\nasync function to(e = \"Material Icons\", t = 24) {\n try {\n await Promise.all([document.fonts.load(`400 ${t}px \"${String(e).replace(/[\"']/g, \"\")}\"`), document.fonts.ready]);\n } catch (r) {\n }\n}\nfunction ro(e) {\n var i, o;\n let t = ((i = e.getPropertyValue(\"-webkit-text-fill-color\")) == null ? void 0 : i.trim()) || \"\", r = /^transparent$/i.test(t) || /rgba?\\(\\s*0\\s*,\\s*0\\s*,\\s*0\\s*,\\s*0\\s*\\)/i.test(t);\n if (t && !r && t.toLowerCase() !== \"currentcolor\") return t;\n let n = (o = e.color) == null ? void 0 : o.trim();\n return n && n !== \"inherit\" ? n : \"#000\";\n}\nasync function no(e, { family: t = \"Material Icons\", weight: r = \"normal\", fontSize: n = 32, color: i = \"#000\", variation: o = \"\", className: a = \"\" } = {}) {\n let l = String(t || \"\").replace(/^['\"]+|['\"]+$/g, \"\"), c = window.devicePixelRatio || 1, u = Zn(o), { familyForMeasure: d, familyForCanvas: s } = await eo(l, a, u);\n await to(s.replace(/^[\"']+|[\"']+$/g, \"\"), n);\n let f = document.createElement(\"span\");\n f.textContent = e, f.style.position = \"absolute\", f.style.visibility = \"hidden\", f.style.left = \"-99999px\", f.style.whiteSpace = \"nowrap\", f.style.fontFamily = d, f.style.fontWeight = String(r || \"normal\"), f.style.fontSize = `${n}px`, f.style.lineHeight = \"1\", f.style.margin = \"0\", f.style.padding = \"0\", f.style.fontFeatureSettings = \"'liga' 1\", f.style.fontVariantLigatures = \"normal\", f.style.color = i, document.body.appendChild(f);\n let p = f.getBoundingClientRect(), m = Math.max(1, Math.ceil(p.width)), h = Math.max(1, Math.ceil(p.height));\n document.body.removeChild(f);\n let y = document.createElement(\"canvas\");\n y.width = m * c, y.height = h * c;\n let S = y.getContext(\"2d\");\n S.scale(c, c), S.font = `${r ? `${r} ` : \"\"}${n}px ${s}`, S.textAlign = \"left\", S.textBaseline = \"top\", S.fillStyle = i;\n try {\n S.fontKerning = \"normal\";\n } catch (M) {\n }\n return S.fillText(e, 0, 0), { dataUrl: y.toDataURL(), width: m, height: h };\n}\nasync function oo(e, t) {\n if (!(e instanceof Element)) return 0;\n let r = '.material-icons, [class*=\"material-symbols\"]', n = Array.from(e.querySelectorAll(r)).filter((a) => a && a.textContent && a.textContent.trim());\n if (n.length === 0) return 0;\n let i = t instanceof Element ? Array.from(t.querySelectorAll(r)).filter((a) => a && a.textContent && a.textContent.trim()) : [], o = 0;\n for (let a = 0; a < n.length; a++) {\n let l = n[a], c = i[a] || null;\n try {\n let u = getComputedStyle(c || l), d = u.fontFamily || \"Material Icons\";\n if (!Qn(d)) continue;\n let s = (c || l).textContent.trim();\n if (!s) continue;\n let f = parseInt(u.fontSize, 10) || 24, p = u.fontWeight && u.fontWeight !== \"normal\" ? u.fontWeight : \"normal\", m = ro(u), h = u.fontVariationSettings && u.fontVariationSettings !== \"normal\" ? u.fontVariationSettings : \"\", y = (c || l).className || \"\", { dataUrl: S, width: M, height: g } = await no(s, { family: d, weight: p, fontSize: f, color: m, variation: h, className: y });\n l.textContent = \"\";\n let w = l.ownerDocument.createElement(\"img\");\n w.src = S, w.alt = s, w.style.height = `${f}px`, w.style.width = `${Math.max(1, Math.round(M / g * f))}px`, w.style.objectFit = \"contain\", w.style.verticalAlign = getComputedStyle(l).verticalAlign || \"baseline\", l.appendChild(w), o++;\n } catch (u) {\n }\n }\n return o;\n}\nke();\nasync function io(e, t, r, n = 32, i = \"#000\") {\n t = t.replace(/^['\"]+|['\"]+$/g, \"\");\n let o = window.devicePixelRatio || 1;\n try {\n await document.fonts.ready;\n } catch (f) {\n }\n let a = document.createElement(\"span\");\n a.textContent = e, a.style.position = \"absolute\", a.style.visibility = \"hidden\", a.style.fontFamily = `\"${t}\"`, a.style.fontWeight = r || \"normal\", a.style.fontSize = `${n}px`, a.style.lineHeight = \"1\", a.style.whiteSpace = \"nowrap\", a.style.padding = \"0\", a.style.margin = \"0\", document.body.appendChild(a);\n let l = a.getBoundingClientRect(), c = Math.ceil(l.width), u = Math.ceil(l.height);\n document.body.removeChild(a);\n let d = document.createElement(\"canvas\");\n d.width = Math.max(1, c * o), d.height = Math.max(1, u * o);\n let s = d.getContext(\"2d\");\n return s.scale(o, o), s.font = r ? `${r} ${n}px \"${t}\"` : `${n}px \"${t}\"`, s.textAlign = \"left\", s.textBaseline = \"top\", s.fillStyle = i, s.fillText(e, 0, 0), { dataUrl: d.toDataURL(), width: c, height: u };\n}\nvar dr = /* @__PURE__ */ new Set([\"serif\", \"sans-serif\", \"monospace\", \"cursive\", \"fantasy\", \"system-ui\", \"emoji\", \"math\", \"fangsong\", \"ui-serif\", \"ui-sans-serif\", \"ui-monospace\", \"ui-rounded\"]), ao = [\"katex\", \"mathjax\", \"mathml\"];\nfunction ht(e) {\n if (!e) return \"\";\n for (let t of e.split(\",\")) {\n let r = t.trim().replace(/^['\"]+|['\"]+$/g, \"\");\n if (r && !dr.has(r.toLowerCase())) return r;\n }\n return \"\";\n}\nfunction lo(e) {\n if (!e) return [];\n let t = [];\n for (let r of e.split(\",\")) {\n let n = r.trim().replace(/^['\"]+|['\"]+$/g, \"\");\n n && (dr.has(n.toLowerCase()) || t.push(n));\n }\n return t;\n}\nfunction He(e) {\n let t = String(e != null ? e : \"400\").trim().toLowerCase();\n if (t === \"normal\") return 400;\n if (t === \"bold\") return 700;\n let r = parseInt(t, 10);\n return Number.isFinite(r) ? Math.min(900, Math.max(100, r)) : 400;\n}\nfunction De(e) {\n let t = String(e != null ? e : \"normal\").trim().toLowerCase();\n return t.startsWith(\"italic\") ? \"italic\" : t.startsWith(\"oblique\") ? \"oblique\" : \"normal\";\n}\nfunction so(e) {\n let t = String(e != null ? e : \"100%\").match(/(\\d+(?:\\.\\d+)?)\\s*%/);\n return t ? Math.max(50, Math.min(200, parseFloat(t[1]))) : 100;\n}\nfunction co(e) {\n let t = String(e || \"400\").trim(), r = t.match(/^(\\d{2,3})\\s+(\\d{2,3})$/);\n if (r) {\n let i = He(r[1]), o = He(r[2]);\n return { min: Math.min(i, o), max: Math.max(i, o) };\n }\n let n = He(t);\n return { min: n, max: n };\n}\nfunction uo(e) {\n let t = String(e || \"normal\").trim().toLowerCase();\n return t === \"italic\" ? { kind: \"italic\" } : t.startsWith(\"oblique\") ? { kind: \"oblique\" } : { kind: \"normal\" };\n}\nfunction fo(e) {\n let t = String(e || \"100%\").trim(), r = t.match(/(\\d+(?:\\.\\d+)?)\\s*%\\s+(\\d+(?:\\.\\d+)?)\\s*%/);\n if (r) {\n let o = parseFloat(r[1]), a = parseFloat(r[2]);\n return { min: Math.min(o, a), max: Math.max(o, a) };\n }\n let n = t.match(/(\\d+(?:\\.\\d+)?)\\s*%/), i = n ? parseFloat(n[1]) : 100;\n return { min: i, max: i };\n}\nfunction mo(e) {\n return !e || typeof e != \"string\" ? \"\" : e.replace(/\\s+(variable|vf|v[0-9]+)$/i, \"\").trim().toLowerCase().replace(/\\s+/g, \"-\");\n}\nfunction ho(e, t, r = []) {\n if (!e) return !1;\n try {\n let n = new URL(e, location.href);\n if (n.origin === location.origin) return !0;\n let i = n.host.toLowerCase();\n if ([\"fonts.googleapis.com\", \"fonts.gstatic.com\", \"use.typekit.net\", \"p.typekit.net\", \"kit.fontawesome.com\", \"use.fontawesome.com\", \"cdn.jsdelivr.net\", \"unpkg.com\", \"cdnjs.cloudflare.com\", \"esm.sh\"].some((a) => i.endsWith(a)) || r.some((a) => i === a.toLowerCase() || i.endsWith(\".\" + a.toLowerCase()))) return !0;\n let o = (n.pathname + n.search).toLowerCase();\n if (/\\bfont(s)?\\b/.test(o) || /\\.woff2?(\\b|$)/.test(o) || ao.some((a) => o.includes(a))) return !0;\n for (let a of t) {\n let l = a.toLowerCase().replace(/\\s+/g, \"+\"), c = a.toLowerCase().replace(/\\s+/g, \"-\"), u = mo(a);\n if (o.includes(l) || o.includes(c) || u && o.includes(u)) return !0;\n }\n return !1;\n } catch (n) {\n return !1;\n }\n}\nfunction po(e) {\n var r;\n let t = /* @__PURE__ */ new Set();\n for (let n of e || []) {\n let i = (r = String(n).split(\"__\")[0]) == null ? void 0 : r.trim();\n i && t.add(i);\n }\n return t;\n}\nfunction Ut(e, t) {\n return e && e.replace(/url\\(\\s*(['\"]?)([^)'\"]+)\\1\\s*\\)/g, (r, n, i) => {\n let o = (i || \"\").trim();\n if (!o || /^data:|^blob:|^https?:|^file:|^about:/i.test(o)) return r;\n let a = o;\n try {\n a = new URL(o, t || location.href).href;\n } catch (l) {\n }\n return `url(\"${a}\")`;\n });\n}\nvar it = /@import\\s+(?:url\\(\\s*(['\"]?)([^)\"']+)\\1\\s*\\)|(['\"])([^\"']+)\\3)([^;]*);/g, qe = 4;\nasync function go(e, t, r) {\n if (!e) return e;\n let n = /* @__PURE__ */ new Set();\n function i(l, c) {\n try {\n return new URL(l, c || location.href).href;\n } catch (u) {\n return l;\n }\n }\n async function o(l, c, u = 0) {\n if (u > qe) return console.warn(`[snapDOM] @import depth exceeded (${qe}) at ${c}`), l;\n let d = \"\", s = 0, f;\n for (; f = it.exec(l); ) {\n d += l.slice(s, f.index), s = it.lastIndex;\n let p = (f[2] || f[4] || \"\").trim(), m = i(p, c);\n if (n.has(m)) {\n console.warn(`[snapDOM] Skipping circular @import: ${m}`);\n continue;\n }\n n.add(m);\n let h = \"\";\n try {\n let y = await oe(m, { as: \"text\", useProxy: r, silent: !0 });\n y.ok && typeof y.data == \"string\" && (h = y.data);\n } catch (y) {\n }\n h ? (h = Ut(h, m), h = await o(h, m, u + 1), d += `\n/* inlined: ${m} */\n${h}\n`) : d += f[0];\n }\n return d += l.slice(s), d;\n }\n let a = Ut(e, t || location.href);\n return a = await o(a, t || location.href, 0), a;\n}\nvar mr = /url\\(([\"']?)([^\"')]+)\\1\\)/g, yo = /@font-face[^{}]*\\{[^}]*\\}/g;\nfunction hr(e) {\n if (!e) return [];\n let t = [], r = e.split(\",\").map((n) => n.trim()).filter(Boolean);\n for (let n of r) {\n let i = n.match(/^U\\+([0-9A-Fa-f?]+)(?:-([0-9A-Fa-f?]+))?$/);\n if (!i) continue;\n let o = i[1], a = i[2], l = (c) => {\n if (!c.includes(\"?\")) return parseInt(c, 16);\n let u = parseInt(c.replace(/\\?/g, \"0\"), 16), d = parseInt(c.replace(/\\?/g, \"F\"), 16);\n return [u, d];\n };\n if (a) {\n let c = l(o), u = l(a), d = Array.isArray(c) ? c[0] : c, s = Array.isArray(u) ? u[1] : u;\n t.push([Math.min(d, s), Math.max(d, s)]);\n } else {\n let c = l(o);\n Array.isArray(c) ? t.push([c[0], c[1]]) : t.push([c, c]);\n }\n }\n return t;\n}\nfunction pr(e, t) {\n if (!t.length || !e || e.size === 0) return !0;\n for (let r of e) for (let [n, i] of t) if (r >= n && r <= i) return !0;\n return !1;\n}\nfunction pt(e, t) {\n let r = [];\n if (!e) return r;\n for (let n of e.matchAll(mr)) {\n let i = (n[2] || \"\").trim();\n if (!(!i || i.startsWith(\"data:\"))) {\n if (!/^https?:/i.test(i)) try {\n i = new URL(i, t || location.href).href;\n } catch (o) {\n }\n r.push(i);\n }\n }\n return r;\n}\nasync function gr(e, t, r = \"\") {\n var i, o, a, l, c;\n let n = e;\n for (let u of e.matchAll(mr)) {\n let d = ft(u[0]);\n if (!d) continue;\n let s = d;\n if (!s.startsWith(\"http\") && !s.startsWith(\"data:\")) try {\n s = new URL(s, t || location.href).href;\n } catch (f) {\n }\n if (!de(s)) {\n if ((i = A.resource) != null && i.has(s)) {\n (o = A.font) == null || o.add(s), n = n.replace(u[0], `url(${A.resource.get(s)})`);\n continue;\n }\n if (!((a = A.font) != null && a.has(s))) try {\n let f = await oe(s, { as: \"dataURL\", useProxy: r, silent: !0 });\n if (f.ok && typeof f.data == \"string\") {\n let p = f.data;\n (l = A.resource) == null || l.set(s, p), (c = A.font) == null || c.add(s), n = n.replace(u[0], `url(${p})`);\n }\n } catch (f) {\n console.warn(\"[snapDOM] Failed to fetch font resource:\", s);\n }\n }\n }\n return n;\n}\nfunction wo(e) {\n if (!e.length) return null;\n let t = (a, l) => e.some(([c, u]) => !(u < a || c > l)), r = t(0, 255) || t(305, 305), n = t(256, 591) || t(7680, 7935), i = t(880, 1023), o = t(1024, 1279);\n return t(7840, 7929) || t(258, 259) || t(416, 417) || t(431, 432) ? \"vietnamese\" : o ? \"cyrillic\" : i ? \"greek\" : n ? \"latin-ext\" : r ? \"latin\" : null;\n}\nfunction Ot(e = {}) {\n let t = new Set((e.families || []).map((i) => String(i).toLowerCase())), r = new Set((e.domains || []).map((i) => String(i).toLowerCase())), n = new Set((e.subsets || []).map((i) => String(i).toLowerCase()));\n return (i, o) => {\n if (t.size && t.has(i.family.toLowerCase())) return !0;\n if (r.size) for (let a of i.srcUrls) try {\n if (r.has(new URL(a).host.toLowerCase())) return !0;\n } catch (l) {\n }\n if (n.size) {\n let a = wo(o);\n if (a && n.has(a)) return !0;\n }\n return !1;\n };\n}\nfunction bo(e) {\n var o, a, l, c, u, d;\n if (!e) return e;\n let t = /@font-face[^{}]*\\{[^}]*\\}/gi, r = /* @__PURE__ */ new Set(), n = [];\n for (let s of e.match(t) || []) {\n let f = ((o = s.match(/font-family:\\s*([^;]+);/i)) == null ? void 0 : o[1]) || \"\", p = ht(f), m = (((a = s.match(/font-weight:\\s*([^;]+);/i)) == null ? void 0 : a[1]) || \"400\").trim(), h = (((l = s.match(/font-style:\\s*([^;]+);/i)) == null ? void 0 : l[1]) || \"normal\").trim(), y = (((c = s.match(/font-stretch:\\s*([^;]+);/i)) == null ? void 0 : c[1]) || \"100%\").trim(), S = (((u = s.match(/unicode-range:\\s*([^;]+);/i)) == null ? void 0 : u[1]) || \"\").trim(), M = (((d = s.match(/src\\s*:\\s*([^;}]+)[;}]/i)) == null ? void 0 : d[1]) || \"\").trim(), g = pt(M, location.href), w = g.length ? g.map((b) => String(b).toLowerCase()).sort().join(\"|\") : M.toLowerCase(), C = [String(p || \"\").toLowerCase(), m, h, y, S.toLowerCase(), w].join(\"|\");\n r.has(C) || (r.add(C), n.push(s));\n }\n if (n.length === 0) return e;\n let i = 0;\n return e.replace(t, () => n[i++] || \"\");\n}\nfunction xo(e, t, r, n, i) {\n let o = Array.from(e || []).sort().join(\"|\"), a = t ? JSON.stringify({ families: (t.families || []).map((d) => String(d).toLowerCase()).sort(), domains: (t.domains || []).map((d) => String(d).toLowerCase()).sort(), subsets: (t.subsets || []).map((d) => String(d).toLowerCase()).sort() }) : \"\", l = (r || []).map((d) => `${(d.family || \"\").toLowerCase()}::${d.weight || \"normal\"}::${d.style || \"normal\"}::${d.src || \"\"}`).sort().join(\"|\"), c = n || \"\", u = (i || []).map((d) => String(d).toLowerCase()).sort().join(\"|\");\n return `fonts-embed-css::req=${o}::ex=${a}::lf=${l}::px=${c}::fd=${u}`;\n}\nasync function yr(e, t, r, n) {\n let i;\n try {\n i = e.cssRules || [];\n } catch (a) {\n return;\n }\n let o = (a, l) => {\n try {\n return new URL(a, l || location.href).href;\n } catch (c) {\n return a;\n }\n };\n for (let a of i) {\n if (a.type === CSSRule.IMPORT_RULE && a.styleSheet) {\n let l = a.href ? o(a.href, t) : t;\n if (n.depth >= qe) {\n console.warn(`[snapDOM] CSSOM import depth exceeded (${qe}) at ${l}`);\n continue;\n }\n if (l && n.visitedSheets.has(l)) {\n console.warn(`[snapDOM] Skipping circular CSSOM import: ${l}`);\n continue;\n }\n l && n.visitedSheets.add(l);\n let c = z(W({}, n), { depth: (n.depth || 0) + 1 });\n await yr(a.styleSheet, l, r, c);\n continue;\n }\n if (a.type === CSSRule.FONT_FACE_RULE) {\n let l = (a.style.getPropertyValue(\"font-family\") || \"\").trim(), c = ht(l);\n if (!c || de(c)) continue;\n let u = (a.style.getPropertyValue(\"font-weight\") || \"400\").trim(), d = (a.style.getPropertyValue(\"font-style\") || \"normal\").trim(), s = (a.style.getPropertyValue(\"font-stretch\") || \"100%\").trim(), f = (a.style.getPropertyValue(\"src\") || \"\").trim(), p = (a.style.getPropertyValue(\"unicode-range\") || \"\").trim();\n if (!n.faceMatchesRequired(c, d, u, s)) continue;\n let m = hr(p);\n if (!pr(n.usedCodepoints, m)) continue;\n let h = { family: c, weightSpec: u, styleSpec: d, stretchSpec: s, unicodeRange: p, srcRaw: f, srcUrls: pt(f, t || location.href), href: t || location.href };\n if (n.simpleExcluder && n.simpleExcluder(h, m)) continue;\n if (/url\\(/i.test(f)) {\n let y = await gr(f, t || location.href, n.useProxy);\n await r(`@font-face{font-family:${c};src:${y};font-style:${d};font-weight:${u};font-stretch:${s};${p ? `unicode-range:${p};` : \"\"}}`);\n } else await r(`@font-face{font-family:${c};src:${f};font-style:${d};font-weight:${u};font-stretch:${s};${p ? `unicode-range:${p};` : \"\"}}`);\n }\n }\n}\nasync function So({ required: e, usedCodepoints: t, exclude: r = void 0, localFonts: n = [], useProxy: i = \"\", fontStylesheetDomains: o = [] } = {}) {\n var y, S, M, g, w, C, b, v, x, $, E, U, j, _, B, V, te, re;\n e instanceof Set || (e = /* @__PURE__ */ new Set()), t instanceof Set || (t = /* @__PURE__ */ new Set());\n let a = /* @__PURE__ */ new Map();\n for (let k of e) {\n let [P, T, O, F] = String(k).split(\"__\");\n if (!P) continue;\n let L = a.get(P) || [];\n L.push({ w: parseInt(T, 10), s: O, st: parseInt(F, 10) }), a.set(P, L);\n }\n function l(k, P, T, O) {\n if (!a.has(k)) return !1;\n let F = a.get(k), L = co(T), I = uo(P), R = fo(O), Y = L.min !== L.max, X = L.min, ae = (H) => I.kind === \"normal\" && H === \"normal\" || I.kind !== \"normal\" && (H === \"italic\" || H === \"oblique\"), ne = !1;\n for (let H of F) {\n let J = Y ? H.w >= L.min && H.w <= L.max : H.w === X, Z = ae(De(H.s)), Ae = H.st >= R.min && H.st <= R.max;\n if (J && Z && Ae) {\n ne = !0;\n break;\n }\n }\n if (ne) return !0;\n if (!Y) for (let H of F) {\n let J = ae(De(H.s)), Z = H.st >= R.min && H.st <= R.max;\n if (Math.abs(X - H.w) <= 300 && J && Z) return !0;\n }\n if (!Y && I.kind === \"normal\" && F.some((H) => De(H.s) !== \"normal\")) for (let H of F) {\n let J = Math.abs(X - H.w) <= 300, Z = H.st >= R.min && H.st <= R.max;\n if (J && Z) return !0;\n }\n return !1;\n }\n let c = Ot(r), u = xo(e, r, n, i, o);\n if ((y = A.resource) != null && y.has(u)) return A.resource.get(u);\n let d = po(e), s = [], f = it;\n for (let k of document.querySelectorAll(\"style\")) {\n let P = k.textContent || \"\";\n for (let T of P.matchAll(f)) {\n let O = (T[2] || T[4] || \"\").trim();\n !O || de(O) || document.querySelector(`link[rel=\"stylesheet\"][href=\"${O}\"]`) || s.push(O);\n }\n }\n s.length && await Promise.all(s.map((k) => new Promise((P) => {\n if (document.querySelector(`link[rel=\"stylesheet\"][href=\"${k}\"]`)) return P(null);\n let T = document.createElement(\"link\");\n T.rel = \"stylesheet\", T.href = k, T.setAttribute(\"data-snapdom\", \"injected-import\"), T.onload = () => P(T), T.onerror = () => P(null), document.head.appendChild(T);\n })));\n let p = \"\", m = Array.from(document.querySelectorAll('link[rel=\"stylesheet\"]')).filter((k) => !!k.href);\n for (let k of m) try {\n if (de(k.href)) continue;\n let P = \"\", T = !1;\n try {\n T = new URL(k.href, location.href).origin === location.origin;\n } catch (F) {\n }\n if (!T) {\n let F = Array.isArray(o) ? o : [];\n if (!ho(k.href, d, F)) continue;\n }\n if (T) {\n let F = Array.from(document.styleSheets).find((L) => L.href === k.href);\n if (F) try {\n let L = F.cssRules || [];\n P = Array.from(L).map((I) => I.cssText).join(\"\");\n } catch (L) {\n }\n }\n if (!P) {\n let F = await oe(k.href, { as: \"text\", useProxy: i });\n if (F != null && F.ok && typeof F.data == \"string\" && (P = F.data), de(k.href)) continue;\n }\n P = await go(P, k.href, i);\n let O = \"\";\n for (let F of P.match(yo) || []) {\n let L = (((S = F.match(/font-family:\\s*([^;]+);/i)) == null ? void 0 : S[1]) || \"\").trim(), I = ht(L);\n if (!I || de(I)) continue;\n let R = (((M = F.match(/font-weight:\\s*([^;]+);/i)) == null ? void 0 : M[1]) || \"400\").trim(), Y = (((g = F.match(/font-style:\\s*([^;]+);/i)) == null ? void 0 : g[1]) || \"normal\").trim(), X = (((w = F.match(/font-stretch:\\s*([^;]+);/i)) == null ? void 0 : w[1]) || \"100%\").trim(), ae = (((C = F.match(/unicode-range:\\s*([^;]+);/i)) == null ? void 0 : C[1]) || \"\").trim(), ne = (((b = F.match(/src\\s*:\\s*([^;}]+)[;}]/i)) == null ? void 0 : b[1]) || \"\").trim(), H = pt(ne, k.href);\n if (!l(I, Y, R, X)) continue;\n let J = hr(ae);\n if (!pr(t, J)) continue;\n let Z = { family: I, weightSpec: R, styleSpec: Y, stretchSpec: X, unicodeRange: ae, srcRaw: ne, srcUrls: H, href: k.href };\n if (r && c(Z, J)) continue;\n let Ae = /url\\(/i.test(ne) ? await gr(F, k.href, i) : F;\n O += Ae;\n }\n O.trim() && (p += O);\n } catch (P) {\n console.warn(\"[snapDOM] Failed to process stylesheet:\", k.href);\n }\n let h = { requiredIndex: a, usedCodepoints: t, faceMatchesRequired: l, simpleExcluder: r ? Ot(r) : null, useProxy: i, visitedSheets: /* @__PURE__ */ new Set(), depth: 0 };\n for (let k of document.styleSheets) if (!(k.href && m.some((P) => P.href === k.href))) try {\n let P = k.href || location.origin + \"/\";\n P && h.visitedSheets.add(P), await yr(k, P, async (T) => {\n p += T;\n }, h);\n } catch (P) {\n }\n try {\n for (let k of document.fonts || []) {\n if (!k || !k.family || k.status !== \"loaded\" || !k._snapdomSrc) continue;\n let P = String(k.family).replace(/^['\"]+|['\"]+$/g, \"\");\n if (de(P) || !a.has(P) || r != null && r.families && r.families.some((O) => String(O).toLowerCase() === P.toLowerCase())) continue;\n let T = k._snapdomSrc;\n if (!String(T).startsWith(\"data:\")) {\n if ((v = A.resource) != null && v.has(k._snapdomSrc)) T = A.resource.get(k._snapdomSrc), (x = A.font) == null || x.add(k._snapdomSrc);\n else if (!(($ = A.font) != null && $.has(k._snapdomSrc))) try {\n let O = await oe(k._snapdomSrc, { as: \"dataURL\", useProxy: i, silent: !0 });\n if (O.ok && typeof O.data == \"string\") T = O.data, (E = A.resource) == null || E.set(k._snapdomSrc, T), (U = A.font) == null || U.add(k._snapdomSrc);\n else continue;\n } catch (O) {\n console.warn(\"[snapDOM] Failed to fetch dynamic font src:\", k._snapdomSrc);\n continue;\n }\n }\n p += `@font-face{font-family:'${P}';src:url(${T});font-style:${k.style || \"normal\"};font-weight:${k.weight || \"normal\"};}`;\n }\n } catch (k) {\n }\n for (let k of n) {\n if (!k || typeof k != \"object\") continue;\n let P = String(k.family || \"\").replace(/^['\"]+|['\"]+$/g, \"\");\n if (!P || de(P) || !a.has(P) || r != null && r.families && r.families.some((R) => String(R).toLowerCase() === P.toLowerCase())) continue;\n let T = k.weight != null ? String(k.weight) : \"normal\", O = k.style != null ? String(k.style) : \"normal\", F = k.stretchPct != null ? `${k.stretchPct}%` : \"100%\", L = String(k.src || \"\"), I = L;\n if (!I.startsWith(\"data:\")) {\n if ((j = A.resource) != null && j.has(L)) I = A.resource.get(L), (_ = A.font) == null || _.add(L);\n else if (!((B = A.font) != null && B.has(L))) try {\n let R = await oe(L, { as: \"dataURL\", useProxy: i, silent: !0 });\n if (R.ok && typeof R.data == \"string\") I = R.data, (V = A.resource) == null || V.set(L, I), (te = A.font) == null || te.add(L);\n else continue;\n } catch (R) {\n console.warn(\"[snapDOM] Failed to fetch localFonts src:\", L);\n continue;\n }\n }\n p += `@font-face{font-family:'${P}';src:url(${I});font-style:${O};font-weight:${T};font-stretch:${F};}`;\n }\n return p && (p = bo(p), (re = A.resource) == null || re.set(u, p)), p;\n}\nfunction wr(e) {\n let t = /* @__PURE__ */ new Set();\n if (!e) return t;\n let r = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT, null), n = (a) => {\n let l = lo(a.fontFamily);\n if (l.length) for (let c of l) {\n let u = (d, s, f) => `${c}__${He(d)}__${De(s)}__${so(f)}`;\n t.add(u(a.fontWeight, a.fontStyle, a.fontStretch));\n }\n };\n n(getComputedStyle(e));\n let i = getComputedStyle(e, \"::before\");\n i && i.content && i.content !== \"none\" && n(i);\n let o = getComputedStyle(e, \"::after\");\n for (o && o.content && o.content !== \"none\" && n(o); r.nextNode(); ) {\n let a = r.currentNode, l = getComputedStyle(a);\n n(l);\n let c = getComputedStyle(a, \"::before\");\n c && c.content && c.content !== \"none\" && n(c);\n let u = getComputedStyle(a, \"::after\");\n u && u.content && u.content !== \"none\" && n(u);\n }\n return t;\n}\nfunction Co(e) {\n var i;\n let t = /* @__PURE__ */ new Set(), r = (o) => {\n if (o) for (let a of o) t.add(a.codePointAt(0));\n }, n = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_TEXT, null);\n for (; n.nextNode(); ) {\n let o = n.currentNode;\n if (o.nodeType === Node.TEXT_NODE) r(o.nodeValue || \"\");\n else if (o.nodeType === Node.ELEMENT_NODE) {\n let a = o;\n for (let l of [\"::before\", \"::after\"]) {\n let c = (i = getComputedStyle(a, l)) == null ? void 0 : i.getPropertyValue(\"content\");\n if (!(!c || c === \"none\")) if (/^\"/.test(c) || /^'/.test(c)) r(c.slice(1, -1));\n else {\n let u = c.match(/\\\\[0-9A-Fa-f]{1,6}/g);\n if (u) for (let d of u) try {\n t.add(parseInt(d.slice(1), 16));\n } catch (s) {\n }\n }\n }\n }\n }\n return t;\n}\nasync function br(e, t = 2) {\n try {\n await document.fonts.ready;\n } catch (i) {\n }\n let r = Array.from(e || []).filter(Boolean);\n if (r.length === 0) return;\n let n = () => {\n let i = document.createElement(\"div\");\n i.style.cssText = \"position:absolute!important;left:-9999px!important;top:0!important;opacity:0!important;pointer-events:none!important;contain:layout size style;\";\n for (let o of r) {\n let a = document.createElement(\"span\");\n a.textContent = \"AaBbGg1234ÁÉÍÓÚçñ—∞\", a.style.fontFamily = `\"${o}\"`, a.style.fontWeight = \"700\", a.style.fontStyle = \"italic\", a.style.fontSize = \"32px\", a.style.lineHeight = \"1\", a.style.whiteSpace = \"nowrap\", a.style.margin = \"0\", a.style.padding = \"0\", i.appendChild(a);\n }\n document.body.appendChild(i), i.offsetWidth, document.body.removeChild(i);\n };\n for (let i = 0; i < Math.max(1, t); i++) n(), await new Promise((o) => requestAnimationFrame(() => requestAnimationFrame(o)));\n}\nie();\nfunction vo(e) {\n return /\\bcounter\\s*\\(|\\bcounters\\s*\\(/.test(e || \"\");\n}\nfunction ko(e) {\n return (e || \"\").replace(/\"([^\"]*)\"/g, \"$1\");\n}\nfunction jt(e, t = !1) {\n let r = \"\", n = Math.max(1, e);\n for (; n > 0; ) n--, r = String.fromCharCode(97 + n % 26) + r, n = Math.floor(n / 26);\n return t ? r.toUpperCase() : r;\n}\nfunction Ht(e, t = !0) {\n let r = [[1e3, \"M\"], [900, \"CM\"], [500, \"D\"], [400, \"CD\"], [100, \"C\"], [90, \"XC\"], [50, \"L\"], [40, \"XL\"], [10, \"X\"], [9, \"IX\"], [5, \"V\"], [4, \"IV\"], [1, \"I\"]], n = Math.max(1, Math.min(3999, e)), i = \"\";\n for (let [o, a] of r) for (; n >= o; ) i += a, n -= o;\n return t ? i : i.toLowerCase();\n}\nfunction Dt(e, t) {\n switch ((t || \"decimal\").toLowerCase()) {\n case \"decimal\":\n return String(e);\n case \"decimal-leading-zero\": {\n let r = Math.abs(e);\n return (e < 0 ? \"-\" : \"\") + (r < 10 ? \"0\" : \"\") + String(r);\n }\n case \"lower-alpha\":\n return jt(e, !1);\n case \"upper-alpha\":\n return jt(e, !0);\n case \"lower-roman\":\n return Ht(e, !1);\n case \"upper-roman\":\n return Ht(e, !0);\n default:\n return String(e);\n }\n}\nfunction Ao(e) {\n let t = () => {\n var f, p;\n return (p = (f = A == null ? void 0 : A.session) == null ? void 0 : f.__counterEpoch) != null ? p : 0;\n }, r = t(), n = /* @__PURE__ */ new WeakMap(), i = e instanceof Document ? e.documentElement : e, o = (f) => f && f.tagName === \"LI\", a = (f) => {\n let p = 0, m = f == null ? void 0 : f.parentElement;\n if (!m) return 0;\n for (let h of m.children) {\n if (h === f) break;\n h.tagName === \"LI\" && p++;\n }\n return p;\n }, l = (f) => {\n let p = /* @__PURE__ */ new Map();\n for (let [m, h] of f) p.set(m, h.slice());\n return p;\n }, c = (f, p, m) => {\n var g, w, C;\n let h = l(f), y;\n try {\n y = ((g = m.style) == null ? void 0 : g.counterReset) || getComputedStyle(m).counterReset;\n } catch (b) {\n }\n if (y && y !== \"none\") for (let b of y.split(\",\")) {\n let v = b.trim().split(/\\s+/), x = v[0], $ = Number.isFinite(Number(v[1])) ? Number(v[1]) : 0;\n if (!x) continue;\n let E = p.get(x);\n if (E && E.length) {\n let U = E.slice();\n U.push($), h.set(x, U);\n } else h.set(x, [$]);\n }\n let S;\n try {\n S = ((w = m.style) == null ? void 0 : w.counterSet) || getComputedStyle(m).counterSet;\n } catch (b) {\n }\n if (S && S !== \"none\") for (let b of S.split(\",\")) {\n let v = b.trim().split(/\\s+/), x = v[0], $ = Number.isFinite(Number(v[1])) ? Number(v[1]) : 0;\n if (!x) continue;\n let E = h.get(x) || [];\n E.length === 0 && E.push(0), E[E.length - 1] = $, h.set(x, E);\n }\n let M;\n try {\n M = ((C = m.style) == null ? void 0 : C.counterIncrement) || getComputedStyle(m).counterIncrement;\n } catch (b) {\n }\n if (M && M !== \"none\") for (let b of M.split(\",\")) {\n let v = b.trim().split(/\\s+/), x = v[0], $ = Number.isFinite(Number(v[1])) ? Number(v[1]) : 1;\n if (!x) continue;\n let E = h.get(x) || [];\n E.length === 0 && E.push(0), E[E.length - 1] += $, h.set(x, E);\n }\n try {\n if (getComputedStyle(m).display === \"list-item\" && o(m)) {\n let b = m.parentElement, v = 1;\n if (b && b.tagName === \"OL\") {\n let $ = b.getAttribute(\"start\"), E = Number.isFinite(Number($)) ? Number($) : 1, U = a(m), j = m.getAttribute(\"value\");\n v = Number.isFinite(Number(j)) ? Number(j) : E + U;\n } else v = 1 + a(m);\n let x = h.get(\"list-item\") || [];\n x.length === 0 && x.push(0), x[x.length - 1] = v, h.set(\"list-item\", x);\n }\n } catch (b) {\n }\n return h;\n }, u = (f, p, m) => {\n let h = c(m, p, f);\n n.set(f, h);\n let y = h;\n for (let M of f.children) y = u(M, h, y);\n let S = /* @__PURE__ */ new Map();\n for (let [M, g] of m) {\n let w = g.length, C = y.get(M);\n S.set(M, C && C.length ? C.slice(0, w) : g.slice());\n }\n for (let [M, g] of y) !S.has(M) && g.length && !p.has(M) && S.set(M, g.slice(0, 1));\n return S;\n }, d = /* @__PURE__ */ new Map();\n u(i, d, d);\n function s() {\n let f = t();\n if (f !== r) {\n r = f;\n let p = /* @__PURE__ */ new Map();\n u(i, p, p);\n }\n }\n return { get(f, p) {\n var h;\n s();\n let m = (h = n.get(f)) == null ? void 0 : h.get(p);\n return m && m.length ? m[m.length - 1] : 0;\n }, getStack(f, p) {\n var h;\n s();\n let m = (h = n.get(f)) == null ? void 0 : h.get(p);\n return m ? m.slice() : [];\n } };\n}\nfunction Mo(e, t, r) {\n if (!e || e === \"none\") return e;\n try {\n let n = /\\b(counter|counters)\\s*\\(([^)]+)\\)/g, i = e.replace(n, (o, a, l) => {\n var u, d, s, f;\n let c = String(l).split(\",\").map((p) => p.trim());\n if (a === \"counter\") {\n let p = (u = c[0]) == null ? void 0 : u.replace(/^[\"']|[\"']$/g, \"\"), m = (c[1] || \"decimal\").toLowerCase(), h = r.get(t, p);\n return Dt(h, m);\n } else {\n let p = (d = c[0]) == null ? void 0 : d.replace(/^[\"']|[\"']$/g, \"\"), m = (f = (s = c[1]) == null ? void 0 : s.replace(/^[\"']|[\"']$/g, \"\")) != null ? f : \"\", h = (c[2] || \"decimal\").toLowerCase(), y = r.getStack(t, p);\n return y.length ? y.map((S) => Dt(S, h)).join(m) : \"\";\n }\n });\n return ko(i);\n } catch (n) {\n return \"- \";\n }\n}\nke();\nie();\nvar Se = /* @__PURE__ */ new WeakMap(), Bt = 1e3;\nfunction $o(e, t) {\n let r = xr(e);\n return t ? (t.__pseudoPreflightFp !== r && (t.__pseudoPreflight = Vt(e), t.__pseudoPreflightFp = r), !!t.__pseudoPreflight) : Vt(e);\n}\nfunction at(e) {\n try {\n return e && e.cssRules ? e.cssRules : null;\n } catch (t) {\n return null;\n }\n}\nfunction xr(e) {\n let t = e.querySelectorAll('style,link[rel~=\"stylesheet\"]'), r = `n:${t.length}|`, n = 0;\n for (let o = 0; o < t.length; o++) {\n let a = t[o];\n if (a.tagName === \"STYLE\") {\n let l = a.textContent ? a.textContent.length : 0;\n r += `S${l}|`;\n let c = a.sheet, u = c ? at(c) : null;\n u && (n += u.length);\n } else {\n let l = a.getAttribute(\"href\") || \"\", c = a.getAttribute(\"media\") || \"all\";\n r += `L${l}|m:${c}|`;\n let u = a.sheet, d = u ? at(u) : null;\n d && (n += d.length);\n }\n }\n let i = e.adoptedStyleSheets;\n return r += `ass:${Array.isArray(i) ? i.length : 0}|tr:${n}`, r;\n}\nfunction qt(e, t, r) {\n let n = at(e);\n if (!n) return !1;\n for (let i = 0; i < n.length; i++) {\n if (r.budget <= 0) return !1;\n let o = n[i], a = o && o.cssText ? o.cssText : \"\";\n r.budget--;\n for (let l of t) if (a.includes(l)) return !0;\n if (o && o.cssRules && o.cssRules.length) for (let l = 0; l < o.cssRules.length && r.budget > 0; l++) {\n let c = o.cssRules[l], u = c && c.cssText ? c.cssText : \"\";\n r.budget--;\n for (let d of t) if (u.includes(d)) return !0;\n }\n if (r.budget <= 0) return !1;\n }\n return !1;\n}\nfunction Vt(e = document) {\n let t = xr(e), r = Se.get(e);\n if (r && r.fingerprint === t) return r.result;\n let n = [\"::before\", \"::after\", \"::first-letter\", \":before\", \":after\", \":first-letter\", \"counter(\", \"counters(\", \"counter-increment\", \"counter-reset\"], i = e.querySelectorAll(\"style\");\n for (let a = 0; a < i.length; a++) {\n let l = i[a].textContent || \"\";\n for (let c of n) if (l.includes(c)) return Se.set(e, { fingerprint: t, result: !0 }), !0;\n }\n let o = e.adoptedStyleSheets;\n if (Array.isArray(o) && o.length) {\n let a = { budget: Bt };\n try {\n for (let l of o) if (qt(l, n, a)) return Se.set(e, { fingerprint: t, result: !0 }), !0;\n } catch (l) {\n }\n }\n {\n let a = e.querySelectorAll('style,link[rel~=\"stylesheet\"]'), l = { budget: Bt };\n for (let c = 0; c < a.length && l.budget > 0; c++) {\n let u = a[c], d = null;\n if (u.tagName, d = u.sheet || null, d && qt(d, n, l)) return Se.set(e, { fingerprint: t, result: !0 }), !0;\n }\n }\n return e.querySelector('[style*=\"counter(\"], [style*=\"counters(\"]') ? (Se.set(e, { fingerprint: t, result: !0 }), !0) : (Se.set(e, { fingerprint: t, result: !1 }), !1);\n}\nvar ve = /* @__PURE__ */ new WeakMap(), zt = -1;\nfunction Eo(e) {\n return (e || \"\").replace(/\"([^\"]*)\"/g, \"$1\");\n}\nfunction Fo(e) {\n if (!e) return \"\";\n let t = [], r = /\"([^\"]*)\"/g, n;\n for (; n = r.exec(e); ) t.push(n[1]);\n return t.length ? t.join(\"\") : Eo(e);\n}\nfunction lt(e, t) {\n let r = e.parentElement, n = r ? ve.get(r) : null;\n return n ? { get(i, o) {\n let a = t.get(i, o), l = n.get(o);\n return typeof l == \"number\" ? Math.max(a, l) : a;\n }, getStack(i, o) {\n let a = t.getStack(i, o);\n if (!a.length) return a;\n let l = n.get(o);\n if (typeof l == \"number\") {\n let c = a.slice();\n return c[c.length - 1] = Math.max(c[c.length - 1], l), c;\n }\n return a;\n } } : t;\n}\nfunction st(e, t, r) {\n let n = /* @__PURE__ */ new Map();\n function i(c) {\n let u = [];\n if (!c || c === \"none\") return u;\n for (let d of String(c).split(\",\")) {\n let s = d.trim().split(/\\s+/), f = s[0], p = Number.isFinite(Number(s[1])) ? Number(s[1]) : void 0;\n f && u.push({ name: f, num: p });\n }\n return u;\n }\n let o = i(t == null ? void 0 : t.counterReset), a = i(t == null ? void 0 : t.counterIncrement);\n function l(c) {\n if (n.has(c)) return n.get(c).slice();\n let u = r.getStack(e, c);\n u = u.length ? u.slice() : [];\n let d = o.find((f) => f.name === c);\n if (d) {\n let f = Number.isFinite(d.num) ? d.num : 0;\n u = u.length ? [...u, f] : [f];\n }\n let s = a.find((f) => f.name === c);\n if (s) {\n let f = Number.isFinite(s.num) ? s.num : 1;\n u.length === 0 && (u = [0]), u[u.length - 1] += f;\n }\n return n.set(c, u.slice()), u;\n }\n return { get(c, u) {\n let d = l(u);\n return d.length ? d[d.length - 1] : 0;\n }, getStack(c, u) {\n return l(u);\n }, __incs: a };\n}\nfunction No(e, t, r) {\n let n;\n try {\n n = me(e, t);\n } catch (c) {\n }\n let i = n == null ? void 0 : n.content;\n if (!i || i === \"none\" || i === \"normal\") return { text: \"\", incs: [] };\n let o = lt(e, r), a = st(e, n, o), l = vo(i) ? Mo(i, e, a) : i;\n return { text: Fo(l), incs: a.__incs || [] };\n}\nasync function ct(e, t, r, n) {\n var c, u, d, s, f;\n if (!(e instanceof Element) || !(t instanceof Element)) return;\n let i = e.ownerDocument || document;\n if (!$o(i, r)) return;\n let o = (u = (c = A == null ? void 0 : A.session) == null ? void 0 : c.__counterEpoch) != null ? u : 0;\n if (zt !== o && (ve = /* @__PURE__ */ new WeakMap(), r && (r.__counterCtx = null), zt = o), !r.__counterCtx) try {\n r.__counterCtx = Ao(e.ownerDocument || document);\n } catch (p) {\n D(r, \"buildCounterContext failed\", p);\n }\n let a = r.__counterCtx;\n for (let p of [\"::before\", \"::after\", \"::first-letter\"]) try {\n let m = me(e, p);\n if (!m || m.content === \"none\" && m.backgroundImage === \"none\" && m.backgroundColor === \"transparent\" && (m.borderStyle === \"none\" || parseFloat(m.borderWidth) === 0) && (!m.transform || m.transform === \"none\") && m.display === \"inline\") continue;\n if (p === \"::first-letter\") {\n let F = me(e);\n if (!(m.color !== F.color || m.fontSize !== F.fontSize || m.fontWeight !== F.fontWeight || m.fontFamily !== F.fontFamily || m.fontStyle !== F.fontStyle || m.textTransform !== F.textTransform || m.float !== F.float || m.paddingTop !== F.paddingTop || m.paddingRight !== F.paddingRight || m.paddingBottom !== F.paddingBottom || m.paddingLeft !== F.paddingLeft || m.marginTop !== F.marginTop || m.marginRight !== F.marginRight || m.marginBottom !== F.marginBottom || m.marginLeft !== F.marginLeft)) continue;\n let L = Array.from(t.childNodes).find((J) => {\n var Z;\n return J.nodeType === Node.TEXT_NODE && ((Z = J.textContent) == null ? void 0 : Z.trim().length) > 0;\n });\n if (!L) continue;\n let I = L.textContent, R = (d = I.match(/^([^\\p{L}\\p{N}\\s]*[\\p{L}\\p{N}](?:['’])?)/u)) == null ? void 0 : d[0], Y = I.slice((R == null ? void 0 : R.length) || 0);\n if (!R || /[\\uD800-\\uDFFF]/.test(R)) continue;\n let X = document.createElement(\"span\");\n X.textContent = R, X.dataset.snapdomPseudo = \"::first-letter\";\n let ae = Et(m), ne = et(ae, \"span\");\n r.styleMap.set(X, ne);\n let H = document.createTextNode(Y);\n t.replaceChild(H, L), t.insertBefore(X, H);\n continue;\n }\n let h = (s = m.content) != null ? s : \"\", y = h === \"\" || h === \"none\" || h === \"normal\", { text: S, incs: M } = No(e, p, a), g = m.backgroundImage, w = m.backgroundColor, C = m.fontFamily, b = parseInt(m.fontSize) || 32, v = parseInt(m.fontWeight) || !1, x = m.color || \"#000\", $ = m.borderStyle, E = parseFloat(m.borderWidth), U = m.transform, j = de(C), _ = !y && S !== \"\", B = g && g !== \"none\", V = w && w !== \"transparent\" && w !== \"rgba(0, 0, 0, 0)\", te = $ && $ !== \"none\" && E > 0, re = U && U !== \"none\";\n if (!(_ || B || V || te || re)) {\n if (M && M.length && e.parentElement) {\n let F = ve.get(e.parentElement) || /* @__PURE__ */ new Map();\n for (let { name: L } of M) {\n if (!L) continue;\n let I = lt(e, a), R = st(e, me(e, p), I).get(e, L);\n F.set(L, R);\n }\n ve.set(e.parentElement, F);\n }\n continue;\n }\n let k = document.createElement(\"span\");\n k.dataset.snapdomPseudo = p, k.style.pointerEvents = \"none\";\n let P = Et(m), T = et(P, \"span\");\n if (r.styleMap.set(k, T), j && S && S.length === 1) {\n let { dataUrl: F, width: L, height: I } = await io(S, C, v, b, x), R = document.createElement(\"img\");\n R.src = F, R.style = `height:${b}px;width:${L / I * b}px;object-fit:contain;`, k.appendChild(R), t.dataset.snapdomHasIcon = \"true\";\n } else if (S && S.startsWith(\"url(\")) {\n let F = ft(S);\n if (F != null && F.trim()) try {\n let L = await oe(Be(F), { as: \"dataURL\", useProxy: n.useProxy });\n if (L != null && L.ok && typeof L.data == \"string\") {\n let I = document.createElement(\"img\");\n I.src = L.data, I.style = `width:${b}px;height:auto;object-fit:contain;`, k.appendChild(I);\n }\n } catch (L) {\n console.error(`[snapdom] Error in pseudo ${p} for`, e, L);\n }\n } else !j && _ && (k.textContent = S);\n k.style.backgroundImage = \"none\", \"maskImage\" in k.style && (k.style.maskImage = \"none\"), \"webkitMaskImage\" in k.style && (k.style.webkitMaskImage = \"none\");\n try {\n k.style.backgroundRepeat = m.backgroundRepeat, k.style.backgroundSize = m.backgroundSize, m.backgroundPositionX && m.backgroundPositionY ? (k.style.backgroundPositionX = m.backgroundPositionX, k.style.backgroundPositionY = m.backgroundPositionY) : k.style.backgroundPosition = m.backgroundPosition, k.style.backgroundOrigin = m.backgroundOrigin, k.style.backgroundClip = m.backgroundClip, k.style.backgroundAttachment = m.backgroundAttachment, k.style.backgroundBlendMode = m.backgroundBlendMode;\n } catch (F) {\n }\n if (B) try {\n let F = tt(g), L = await Promise.all(F.map(Kt));\n k.style.backgroundImage = L.join(\", \");\n } catch (F) {\n console.warn(`[snapdom] Failed to inline background-image for ${p}`, F);\n }\n V && (k.style.backgroundColor = w);\n let O = k.childNodes.length > 0 || ((f = k.textContent) == null ? void 0 : f.trim()) !== \"\" || B || V || te || re;\n if (M && M.length && e.parentElement) {\n let F = ve.get(e.parentElement) || /* @__PURE__ */ new Map(), L = lt(e, a), I = st(e, me(e, p), L);\n for (let { name: R } of M) {\n if (!R) continue;\n let Y = I.get(e, R);\n F.set(R, Y);\n }\n ve.set(e.parentElement, F);\n }\n if (!O) continue;\n p === \"::before\" ? (t.dataset.snapdomHasBefore = \"1\", t.insertBefore(k, t.firstChild)) : (t.dataset.snapdomHasAfter = \"1\", t.appendChild(k));\n } catch (m) {\n console.warn(`[snapdom] Failed to capture ${p} for`, e, m);\n }\n let l = Array.from(t.children).filter((p) => !p.dataset.snapdomPseudo);\n if (r.nodeMap) for (let p of l) {\n let m = r.nodeMap.get(p);\n m instanceof Element && await ct(m, p, r, n);\n }\n else {\n let p = Array.from(e.children);\n for (let m = 0; m < Math.min(p.length, l.length); m++) await ct(p[m], l[m], r, n);\n }\n}\nfunction Lo(e, t) {\n var w, C;\n if (!e || !(e instanceof Element)) return;\n let r = e.ownerDocument || document, n = r, i = e instanceof SVGSVGElement ? [e] : Array.from(e.querySelectorAll(\"svg\"));\n if (i.length === 0) return;\n let o = /url\\(\\s*#([^)]+)\\)/g, a = [\"fill\", \"stroke\", \"filter\", \"clip-path\", \"mask\", \"marker\", \"marker-start\", \"marker-mid\", \"marker-end\"], l = (b) => window.CSS && CSS.escape ? CSS.escape(b) : b.replace(/[^a-zA-Z0-9_-]/g, \"\\\\$&\"), c = \"http://www.w3.org/1999/xlink\", u = (b) => {\n if (!b || !b.getAttribute) return null;\n let v = b.getAttribute(\"href\") || b.getAttribute(\"xlink:href\") || (typeof b.getAttributeNS == \"function\" ? b.getAttributeNS(c, \"href\") : null);\n if (v) return v;\n let x = b.attributes;\n if (!x) return null;\n for (let $ = 0; $ < x.length; $++) {\n let E = x[$];\n if (!E || !E.name) continue;\n if (E.name === \"href\") return E.value;\n let U = E.name.indexOf(\":\");\n if (U !== -1 && E.name.slice(U + 1) === \"href\") return E.value;\n }\n return null;\n }, d = new Set(Array.from(e.querySelectorAll(\"[id]\")).map((b) => b.id)), s = /* @__PURE__ */ new Set(), f = !1, p = (b, v = null) => {\n if (!b) return;\n o.lastIndex = 0;\n let x;\n for (; x = o.exec(b); ) {\n f = !0;\n let $ = (x[1] || \"\").trim();\n $ && (d.has($) || (s.add($), v && !v.has($) && v.add($)));\n }\n }, m = (b) => {\n let v = b.querySelectorAll(\"use\");\n for (let $ of v) {\n let E = u($);\n if (!E || !E.startsWith(\"#\")) continue;\n f = !0;\n let U = E.slice(1).trim();\n U && !d.has(U) && s.add(U);\n }\n let x = b.querySelectorAll('*[style*=\"url(\"],*[fill^=\"url(\"], *[stroke^=\"url(\"],*[filter^=\"url(\"],*[clip-path^=\"url(\"],*[mask^=\"url(\"],*[marker^=\"url(\"],*[marker-start^=\"url(\"],*[marker-mid^=\"url(\"],*[marker-end^=\"url(\"]');\n for (let $ of x) {\n p($.getAttribute(\"style\") || \"\");\n for (let E of a) p($.getAttribute(E));\n }\n };\n for (let b of i) m(b);\n if (!f) return;\n let h = e.querySelector(\"svg.inline-defs-container\");\n h || (h = r.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\"), h.classList.add(\"inline-defs-container\"), h.setAttribute(\"aria-hidden\", \"true\"), h.setAttribute(\"style\", \"position:absolute;width:0;height:0;overflow:hidden\"), e.insertBefore(h, e.firstChild || null));\n let y = h.querySelector(\"defs\") || null, S = (b) => {\n if (!b || d.has(b)) return null;\n let v = l(b), x = ($) => {\n let E = n.querySelector($);\n return E && !e.contains(E) ? E : null;\n };\n return x(`svg defs > *#${v}`) || x(`svg > symbol#${v}`) || x(`*#${v}`);\n };\n if (!s.size) return;\n let M = new Set(s), g = /* @__PURE__ */ new Set();\n for (; M.size; ) {\n let b = M.values().next().value;\n if (M.delete(b), !b || d.has(b) || g.has(b)) continue;\n let v = S(b);\n if (!v) {\n g.add(b);\n continue;\n }\n y || (y = r.createElementNS(\"http://www.w3.org/2000/svg\", \"defs\"), h.appendChild(y));\n let x = v.cloneNode(!0);\n x.id || x.setAttribute(\"id\", b), y.appendChild(x), g.add(b), d.add(b);\n let $ = [x, ...x.querySelectorAll(\"*\")];\n for (let E of $) {\n let U = u(E);\n if (U && U.startsWith(\"#\")) {\n let _ = U.slice(1).trim();\n _ && !d.has(_) && !g.has(_) && M.add(_);\n }\n let j = ((w = E.getAttribute) == null ? void 0 : w.call(E, \"style\")) || \"\";\n j && p(j, M);\n for (let _ of a) {\n let B = (C = E.getAttribute) == null ? void 0 : C.call(E, _);\n B && p(B, M);\n }\n }\n }\n}\nie();\nfunction Po(e, t) {\n var l;\n if (!e || !t) return;\n let r = e.scrollTop || 0;\n if (!r) return;\n getComputedStyle(t).position === \"static\" && (t.style.position = \"relative\");\n let n = e.getBoundingClientRect(), i = e.clientHeight, o = \"data-snap-ph\", a = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT);\n for (; a.nextNode(); ) {\n let c = a.currentNode, u = getComputedStyle(c), d = u.position;\n if (d !== \"sticky\" && d !== \"-webkit-sticky\") continue;\n let s = Xt(u.top), f = Xt(u.bottom);\n if (s == null && f == null) continue;\n let p = Ro(c, e), m = To(t, p, o);\n if (!m) continue;\n let h = c.getBoundingClientRect(), y = h.width, S = h.height, M = h.left - n.left;\n if (!(y > 0 && S > 0) || !Number.isFinite(M)) continue;\n let g = s != null ? s + r : r + (i - S - f);\n if (!Number.isFinite(g)) continue;\n let w = Number.parseInt(u.zIndex, 10), C = Number.isFinite(w), b = C ? Math.max(w, 1) + 1 : 2, v = C ? w - 1 : 0, x = m.cloneNode(!1);\n x.setAttribute(o, \"1\"), x.style.position = \"sticky\", x.style.left = `${M}px`, x.style.top = `${g}px`, x.style.width = `${y}px`, x.style.height = `${S}px`, x.style.visibility = \"hidden\", x.style.zIndex = String(v), x.style.overflow = \"hidden\", x.style.background = \"transparent\", x.style.boxShadow = \"none\", x.style.filter = \"none\", (l = m.parentElement) == null || l.insertBefore(x, m), m.style.position = \"absolute\", m.style.left = `${M}px`, m.style.top = `${g}px`, m.style.bottom = \"auto\", m.style.zIndex = String(b), m.style.pointerEvents = \"none\";\n }\n}\nfunction Xt(e) {\n if (!e || e === \"auto\") return null;\n let t = Number.parseFloat(e);\n return Number.isFinite(t) ? t : null;\n}\nfunction Ro(e, t) {\n let r = [];\n for (let n = e; n && n !== t; ) {\n let i = n.parentElement;\n if (!i) break;\n r.push(Array.prototype.indexOf.call(i.children, n)), n = i;\n }\n return r.reverse();\n}\nfunction To(e, t, r) {\n let n = e;\n for (let i = 0; i < t.length; i++) if (n = Wo(n, r)[t[i]], !n) return null;\n return n instanceof HTMLElement ? n : null;\n}\nfunction Wo(e, t) {\n let r = [], n = e.children;\n for (let i = 0; i < n.length; i++) {\n let o = n[i];\n o.hasAttribute(t) || r.push(o);\n }\n return r;\n}\nfunction Io(e) {\n let t = getComputedStyle(e), r = t.outlineStyle, n = t.outlineWidth, i = t.borderStyle, o = t.borderWidth, a = r !== \"none\" && parseFloat(n) > 0, l = i === \"none\" || parseFloat(o) === 0;\n a && l && (e.style.border = `${n} solid transparent`);\n}\nfunction _o(e) {\n let t = [];\n try {\n let r = e.querySelectorAll(\"*\");\n for (let n of r) {\n if (!(n instanceof HTMLElement)) continue;\n let i = n.style.contentVisibility || \"\", o = getComputedStyle(n), a = o.contentVisibility || o.getPropertyValue(\"content-visibility\") || \"\";\n (a === \"auto\" || a === \"hidden\") && (t.push({ el: n, original: i }), n.style.contentVisibility = \"visible\");\n }\n if (e instanceof HTMLElement) {\n let n = getComputedStyle(e), i = n.contentVisibility || n.getPropertyValue(\"content-visibility\") || \"\";\n (i === \"auto\" || i === \"hidden\") && (t.push({ el: e, original: e.style.contentVisibility || \"\" }), e.style.contentVisibility = \"visible\");\n }\n } catch (r) {\n }\n return () => {\n for (let { el: r, original: n } of t) try {\n r.style.contentVisibility = n;\n } catch (i) {\n }\n };\n}\nasync function Uo(e, t = {}) {\n var u, d;\n let r = { styleMap: A.session.styleMap, styleCache: A.session.styleCache, nodeMap: A.session.nodeMap, options: t }, n, i = \"\", o = \"\";\n Io(e);\n let a = _o(e);\n try {\n Lo(e);\n } catch (s) {\n console.warn(\"inlineExternal defs or symbol failed:\", s);\n }\n try {\n n = await je(e, r, t);\n } catch (s) {\n throw console.warn(\"deepClone failed:\", s), s;\n } finally {\n a();\n }\n try {\n await ct(e, n, r, t);\n } catch (s) {\n console.warn(\"inlinePseudoElements failed:\", s);\n }\n await Gn(n, r);\n try {\n let s = n.querySelectorAll(\"style[data-sd]\");\n for (let f of s) o += f.textContent || \"\", f.remove();\n } catch (s) {\n D(r, \"Failed to extract shadow CSS from style[data-sd]\", s);\n }\n let l = tn(r.styleMap);\n i = Array.from(l.entries()).map(([s, f]) => `.${f}{${s}}`).join(\"\"), i = o + \"[data-snapdom-has-after]::after,[data-snapdom-has-before]::before{content:none!important;display:none!important}\" + i;\n for (let [s, f] of r.styleMap.entries()) {\n if (s.tagName === \"STYLE\") continue;\n if (s.getRootNode && s.getRootNode() instanceof ShadowRoot) {\n s.setAttribute(\"style\", f.replace(/;/g, \"; \"));\n continue;\n }\n let p = l.get(f);\n p && s.classList.add(p);\n let m = (u = s.style) == null ? void 0 : u.backgroundImage, h = (d = s.dataset) == null ? void 0 : d.snapdomHasIcon;\n m && m !== \"none\" && (s.style.backgroundImage = m), h && (s.style.verticalAlign = \"middle\", s.style.display = \"inline\");\n }\n for (let [s, f] of r.nodeMap.entries()) {\n let p = f.scrollLeft, m = f.scrollTop;\n if ((p || m) && s instanceof HTMLElement) {\n s.style.overflow = \"hidden\", s.style.scrollbarWidth = \"none\", s.style.msOverflowStyle = \"none\";\n try {\n let y = s.querySelectorAll(\"*\");\n for (let S of y) {\n if (!(S instanceof HTMLElement)) continue;\n let M = S.style.position;\n if (M === \"fixed\" || M === \"absolute\") {\n let g = parseFloat(S.style.top) || 0, w = parseFloat(S.style.left) || 0;\n S.style.top = `${g + m}px`, S.style.left = `${w + p}px`, M === \"fixed\" && (S.style.position = \"absolute\");\n }\n }\n } catch (y) {\n }\n let h = document.createElement(\"div\");\n for (h.style.transform = `translate(${-p}px, ${-m}px)`, h.style.willChange = \"transform\", h.style.display = \"inline-block\", h.style.width = \"100%\"; s.firstChild; ) h.appendChild(s.firstChild);\n s.appendChild(h);\n }\n }\n let c = n instanceof HTMLElement && n.firstElementChild instanceof HTMLElement ? n.firstElementChild : n;\n if (Po(e, c), e === r.nodeMap.get(n)) {\n let s = r.styleCache.get(e) || me(e);\n r.styleCache.set(e, s);\n let f = Br(s.transform);\n n.style.margin = \"0\", n.style.top = \"auto\", n.style.left = \"auto\", n.style.right = \"auto\", n.style.bottom = \"auto\", n.style.animation = \"none\", n.style.transition = \"none\", n.style.willChange = \"auto\", n.style.float = \"none\", n.style.clear = \"none\", n.style.transform = f || \"\";\n }\n for (let [s, f] of r.nodeMap.entries()) f.tagName === \"PRE\" && (s.style.marginTop = \"0\", s.style.marginBlockStart = \"0\");\n return { clone: n, classCSS: i, styleCache: r.styleCache };\n}\nke();\nvar Sr = \"http://www.w3.org/1999/xlink\";\nfunction Oo(e) {\n return e.getAttribute(\"href\") || e.getAttribute(\"xlink:href\") || (typeof e.getAttributeNS == \"function\" ? e.getAttributeNS(Sr, \"href\") : null);\n}\nfunction jo(e) {\n var u, d, s, f;\n let t = parseInt(((u = e.dataset) == null ? void 0 : u.snapdomWidth) || \"\", 10) || 0, r = parseInt(((d = e.dataset) == null ? void 0 : d.snapdomHeight) || \"\", 10) || 0, n = parseInt(e.getAttribute(\"width\") || \"\", 10) || 0, i = parseInt(e.getAttribute(\"height\") || \"\", 10) || 0, o = parseFloat(((s = e.style) == null ? void 0 : s.width) || \"\") || 0, a = parseFloat(((f = e.style) == null ? void 0 : f.height) || \"\") || 0, l = t || o || n || e.width || e.naturalWidth || 100, c = r || a || i || e.height || e.naturalHeight || 100;\n return { width: l, height: c };\n}\nasync function Ho(e, t = {}) {\n let r = Array.from(e.querySelectorAll(\"img\")), n = async (a) => {\n if (!a.getAttribute(\"src\")) {\n let f = a.currentSrc || a.src || \"\";\n f && a.setAttribute(\"src\", f);\n }\n a.removeAttribute(\"srcset\"), a.removeAttribute(\"sizes\");\n let l = a.src || \"\";\n if (!l) return;\n let c = await oe(l, { as: \"dataURL\", useProxy: t.useProxy });\n if (c.ok && typeof c.data == \"string\" && c.data.startsWith(\"data:\")) {\n a.src = c.data, a.width || (a.width = a.naturalWidth || 100), a.height || (a.height = a.naturalHeight || 100);\n return;\n }\n let { width: u, height: d } = jo(a), { fallbackURL: s } = t || {};\n if (s) try {\n let f = typeof s == \"function\" ? await s({ width: u, height: d, src: l, element: a }) : s;\n if (f) {\n let p = await oe(f, { as: \"dataURL\", useProxy: t.useProxy });\n if (p != null && p.ok && typeof p.data == \"string\") {\n a.src = p.data, a.width || (a.width = u), a.height || (a.height = d);\n return;\n }\n }\n } catch (f) {\n }\n if (t.placeholders !== !1) {\n let f = document.createElement(\"div\");\n f.style.cssText = [`width:${u}px`, `height:${d}px`, \"background:#ccc\", \"display:inline-block\", \"text-align:center\", `line-height:${d}px`, \"color:#666\", \"font-size:12px\", \"overflow:hidden\"].join(\";\"), f.textContent = \"img\", a.replaceWith(f);\n } else {\n let f = document.createElement(\"div\");\n f.style.cssText = `display:inline-block;width:${u}px;height:${d}px;visibility:hidden;`, a.replaceWith(f);\n }\n };\n for (let a = 0; a < r.length; a += 4) {\n let l = r.slice(a, a + 4).map(n);\n await Promise.allSettled(l);\n }\n let i = Array.from(e.querySelectorAll(\"image\")), o = async (a) => {\n let l = Oo(a);\n if (!l || l.startsWith(\"data:\") || l.startsWith(\"blob:\")) return;\n let c = await oe(l, { as: \"dataURL\", useProxy: t.useProxy });\n c.ok && typeof c.data == \"string\" && c.data.startsWith(\"data:\") && (a.setAttribute(\"href\", c.data), a.removeAttribute(\"xlink:href\"), typeof a.removeAttributeNS == \"function\" && a.removeAttributeNS(Sr, \"href\"));\n };\n for (let a = 0; a < i.length; a += 4) {\n let l = i.slice(a, a + 4).map(o);\n await Promise.allSettled(l);\n }\n}\nce();\nasync function Do(e, t, r, n = {}) {\n let i = [[e, t]], o = [\"background-image\", \"mask\", \"mask-image\", \"-webkit-mask\", \"-webkit-mask-image\", \"mask-source\", \"mask-box-image-source\", \"mask-border-source\", \"-webkit-mask-box-image-source\", \"border-image\", \"border-image-source\"], a = [\"mask-position\", \"mask-size\", \"mask-repeat\", \"-webkit-mask-position\", \"-webkit-mask-size\", \"-webkit-mask-repeat\", \"mask-origin\", \"mask-clip\", \"-webkit-mask-origin\", \"-webkit-mask-clip\", \"-webkit-mask-position-x\", \"-webkit-mask-position-y\"], l = [\"background-position\", \"background-position-x\", \"background-position-y\", \"background-size\", \"background-repeat\", \"background-origin\", \"background-clip\", \"background-attachment\", \"background-blend-mode\"], c = [\"border-image-slice\", \"border-image-width\", \"border-image-outset\", \"border-image-repeat\"];\n for (; i.length; ) {\n let [u, d] = i.shift();\n if (!d) continue;\n let s = r.get(u) || me(u);\n r.has(u) || r.set(u, s);\n let f = (() => {\n let h = s.getPropertyValue(\"border-image\"), y = s.getPropertyValue(\"border-image-source\");\n return h && h !== \"none\" || y && y !== \"none\";\n })();\n for (let h of l) {\n let y = s.getPropertyValue(h);\n y && d.style.setProperty(h, y);\n }\n for (let h of o) {\n let y = s.getPropertyValue(h);\n if (h === \"background-image\" && (!y || y === \"none\")) {\n let g = s.getPropertyValue(\"background\");\n g && /url\\s*\\(/.test(g) && (y = tt(g).filter((w) => /url\\s*\\(/.test(w)).join(\", \") || y);\n }\n if (!y || y === \"none\") continue;\n let S = tt(y), M = await Promise.all(S.map((g) => Kt(g, n)));\n M.some((g) => g && g !== \"none\" && !/^url\\(undefined/.test(g)) && d.style.setProperty(h, M.join(\", \"));\n }\n for (let h of a) {\n let y = s.getPropertyValue(h);\n !y || y === \"initial\" || d.style.setProperty(h, y);\n }\n if (f) for (let h of c) {\n let y = s.getPropertyValue(h);\n !y || y === \"initial\" || d.style.setProperty(h, y);\n }\n let p = u.shadowRoot ? Array.from(u.shadowRoot.children).filter((h) => h.tagName !== \"STYLE\") : Array.from(u.children), m = Array.from(d.children).filter((h) => {\n var y, S;\n return !((y = h.dataset) != null && y.snapdomPseudo || h.tagName === \"STYLE\" && ((S = h.dataset) != null && S.sd));\n });\n for (let h = 0; h < Math.min(p.length, m.length); h++) i.push([p[h], m[h]]);\n }\n}\nce();\nie();\nfunction Bo(e) {\n if (!e) return () => {\n };\n let t = [];\n function r(n) {\n let i = qo(n);\n i && t.push(i);\n for (let o of n.children || []) r(o);\n }\n return r(e), () => t.forEach((n) => n());\n}\nfunction qo(e) {\n var u;\n if (!e) return () => {\n };\n let t = Vo(e);\n if (t <= 0) return () => {\n };\n if (!Yo(e)) return () => {\n };\n let r = getComputedStyle(e), n = Math.round(zo(r) * t + Xo(r)), i = (u = e.textContent) != null ? u : \"\", o = i;\n if (e.scrollHeight <= n + 0.5) return () => {\n };\n let a = 0, l = i.length, c = -1;\n for (; a <= l; ) {\n let d = a + l >> 1;\n e.textContent = i.slice(0, d) + \"…\", e.scrollHeight <= n + 0.5 ? (c = d, a = d + 1) : l = d - 1;\n }\n return e.textContent = (c >= 0 ? i.slice(0, c) : \"\") + \"…\", () => {\n e.textContent = o;\n };\n}\nfunction Vo(e) {\n let t = getComputedStyle(e), r = t.getPropertyValue(\"-webkit-line-clamp\") || t.getPropertyValue(\"line-clamp\");\n r = (r || \"\").trim();\n let n = parseInt(r, 10);\n return Number.isFinite(n) && n > 0 ? n : 0;\n}\nfunction zo(e) {\n let t = (e.lineHeight || \"\").trim(), r = parseFloat(e.fontSize) || 16;\n return !t || t === \"normal\" ? Math.round(r * 1.2) : t.endsWith(\"px\") ? parseFloat(t) : /^\\d+(\\.\\d+)?$/.test(t) ? Math.round(parseFloat(t) * r) : t.endsWith(\"%\") ? Math.round(parseFloat(t) / 100 * r) : Math.round(r * 1.2);\n}\nfunction Xo(e) {\n return (parseFloat(e.paddingTop) || 0) + (parseFloat(e.paddingBottom) || 0);\n}\nfunction Yo(e) {\n return e.childElementCount > 0 ? !1 : Array.from(e.childNodes).some((t) => t.nodeType === Node.TEXT_NODE);\n}\nvar Le = [];\nfunction Cr(e) {\n if (!e) return null;\n if (Array.isArray(e)) {\n let [t, r] = e;\n return typeof t == \"function\" ? t(r) : t;\n }\n if (typeof e == \"object\" && \"plugin\" in e) {\n let { plugin: t, options: r } = e;\n return typeof t == \"function\" ? t(r) : t;\n }\n return typeof e == \"function\" ? e() : e;\n}\nfunction Go(...e) {\n let t = e.flat();\n for (let r of t) {\n let n = Cr(r);\n n && (Le.some((i) => i && i.name && n.name && i.name === n.name) || Le.push(n));\n }\n}\nfunction vr(e) {\n return (e && Array.isArray(e.plugins) ? e.plugins : Le) || Le;\n}\nasync function ye(e, t, r) {\n let n = r, i = vr(t);\n for (let o of i) {\n let a = o && typeof o[e] == \"function\" ? o[e] : null;\n if (!a) continue;\n let l = await a(t, n);\n typeof l < \"u\" && (n = l);\n }\n return n;\n}\nasync function Jo(e, t, r) {\n let n = [], i = vr(t);\n for (let o of i) {\n let a = o && typeof o[e] == \"function\" ? o[e] : null;\n if (!a) continue;\n let l = await a(t, r);\n typeof l < \"u\" && n.push(l);\n }\n return n;\n}\nfunction Ko(e) {\n let t = [];\n if (Array.isArray(e)) for (let r of e) {\n let n = Cr(r);\n if (!n || !n.name) continue;\n let i = t.findIndex((o) => o && o.name === n.name);\n i >= 0 && t.splice(i, 1), t.push(n);\n }\n for (let r of Le) r && r.name && !t.some((n) => n.name === r.name) && t.push(r);\n return Object.freeze(t);\n}\nfunction Qo(e, t, r = !1) {\n return !e || e.plugins && !r || (e.plugins = Ko(t)), e;\n}\nce();\nfunction Zo(e, t, r = {}) {\n if (!e || !t || !t.style) return;\n let n = getComputedStyle(e);\n try {\n t.style.boxShadow = \"none\";\n } catch (o) {\n D(r, \"stripRootShadows boxShadow\", o);\n }\n try {\n t.style.textShadow = \"none\";\n } catch (o) {\n D(r, \"stripRootShadows textShadow\", o);\n }\n try {\n t.style.outline = \"none\";\n } catch (o) {\n D(r, \"stripRootShadows outline\", o);\n }\n let i = (n.filter || \"\").replace(/\\bblur\\([^()]*\\)\\s*/gi, \"\").replace(/\\bdrop-shadow\\([^()]*\\)\\s*/gi, \"\").trim().replace(/\\s+/g, \" \");\n try {\n t.style.filter = i.length ? i : \"none\";\n } catch (o) {\n D(r, \"stripRootShadows filter\", o);\n }\n}\nfunction ei(e) {\n let t = document.createTreeWalker(e, NodeFilter.SHOW_COMMENT), r = [];\n for (; t.nextNode(); ) r.push(t.currentNode);\n for (let n of r) n.remove();\n}\nfunction ti(e, t = {}) {\n let { stripFrameworkDirectives: r = !0 } = t, n = /* @__PURE__ */ new Set([\"xml\", \"xlink\"]), i = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT);\n for (; i.nextNode(); ) {\n let o = i.currentNode;\n for (let a of Array.from(o.attributes)) {\n let l = a.name;\n if (l.includes(\"@\")) {\n o.removeAttribute(l);\n continue;\n }\n if (l.includes(\":\")) {\n let c = l.split(\":\", 1)[0];\n if (!n.has(c)) {\n o.removeAttribute(l);\n continue;\n }\n }\n if (r && (l.startsWith(\"x-\") || l.startsWith(\"v-\") || l.startsWith(\":\") || l.startsWith(\"on:\") || l.startsWith(\"bind:\") || l.startsWith(\"let:\") || l.startsWith(\"class:\"))) {\n o.removeAttribute(l);\n continue;\n }\n }\n }\n}\nfunction ri(e, t = {}) {\n e && (ti(e, t), ei(e));\n}\nfunction ni(e) {\n var t;\n try {\n let r = ((t = e.getAttribute) == null ? void 0 : t.call(e, \"style\")) || \"\";\n return /\\b(height|width|block-size|inline-size)\\s*:/.test(r);\n } catch (r) {\n return !1;\n }\n}\nfunction oi(e) {\n return e instanceof HTMLImageElement || e instanceof HTMLCanvasElement || e instanceof HTMLVideoElement || e instanceof HTMLIFrameElement || e instanceof SVGElement || e instanceof HTMLObjectElement || e instanceof HTMLEmbedElement;\n}\nfunction ii(e, t) {\n if (!(e instanceof Element) || ni(e) || oi(e)) return !1;\n let r = t.position;\n if (r === \"absolute\" || r === \"fixed\" || r === \"sticky\") return !1;\n let n = t.display || \"\";\n return !(n.includes(\"flex\") || n.includes(\"grid\") || n.startsWith(\"table\") || t.transform && t.transform !== \"none\");\n}\nfunction ai(e, t, r = /* @__PURE__ */ new Map()) {\n function n(i, o) {\n if (!(i instanceof Element) || !(o instanceof Element)) return;\n let a = i.childElementCount > o.childElementCount, l = r.get(i) || getComputedStyle(i);\n if (r.has(i) || r.set(i, l), a && ii(i, l)) {\n o.style.height || (o.style.height = \"auto\"), o.style.width || (o.style.width = \"auto\"), o.style.removeProperty(\"block-size\"), o.style.removeProperty(\"inline-size\"), o.style.minHeight || (o.style.minHeight = \"0\"), o.style.minWidth || (o.style.minWidth = \"0\"), o.style.maxHeight || (o.style.maxHeight = \"none\"), o.style.maxWidth || (o.style.maxWidth = \"none\");\n let d = l.overflowY || l.overflowBlock || \"visible\", s = l.overflowX || l.overflowInline || \"visible\";\n (d !== \"visible\" || s !== \"visible\") && (o.style.overflow = \"visible\");\n }\n let c = Array.from(i.children), u = Array.from(o.children);\n for (let d = 0; d < Math.min(c.length, u.length); d++) n(c[d], u[d]);\n }\n n(e, t);\n}\nfunction li(e) {\n let t = getComputedStyle(e);\n return !(t.display === \"none\" || t.position === \"absolute\" || t.position === \"fixed\");\n}\nfunction si(e, t) {\n if (!(e instanceof Element)) return !1;\n if (e.getAttribute(\"data-capture\") === \"exclude\" && (t == null ? void 0 : t.excludeMode) === \"remove\") return !0;\n if (Array.isArray(t == null ? void 0 : t.exclude)) for (let r of t.exclude) try {\n if (e.matches(r)) return t.excludeMode === \"remove\";\n } catch (n) {\n D(t, \"exclude selector match failed\", n);\n }\n return !1;\n}\nfunction ci(e, t) {\n let r = getComputedStyle(e), n = e.getBoundingClientRect(), i = 1 / 0, o = -1 / 0, a = !1, l = Array.from(e.children);\n for (let p of l) {\n if (si(p, t) || !li(p)) continue;\n let m = p.getBoundingClientRect(), h = m.top - n.top, y = m.bottom - n.top;\n y <= h || (h < i && (i = h), y > o && (o = y), a = !0);\n }\n let c = a ? Math.max(0, o - i) : 0, u = parseFloat(r.borderTopWidth) || 0, d = parseFloat(r.borderBottomWidth) || 0, s = parseFloat(r.paddingTop) || 0, f = parseFloat(r.paddingBottom) || 0;\n return u + d + s + f + c;\n}\nvar N = (e, t = 3) => Number.isFinite(e) ? Math.round(e * 10 ** t) / 10 ** t : e, ui = /::-webkit-scrollbar(-[a-z]+)?\\b/i;\nfunction ut(e, t = /* @__PURE__ */ new Set()) {\n let r = \"\";\n if (!e) return r;\n for (let n = 0; n < e.length; n++) {\n let i = e[n];\n try {\n if (i.type === CSSRule.IMPORT_RULE && i.styleSheet) {\n r += ut(i.styleSheet.cssRules, t);\n continue;\n }\n if (i.type === CSSRule.MEDIA_RULE && i.cssRules) {\n let o = ut(i.cssRules, t);\n o && (r += `@media ${i.conditionText}{${o}}`);\n continue;\n }\n if (i.type === CSSRule.STYLE_RULE) {\n let o = i.selectorText || \"\";\n if (ui.test(o)) {\n let a = i.cssText;\n a && !t.has(a) && (t.add(a), r += a);\n }\n }\n } catch (o) {\n }\n }\n return r;\n}\nfunction fi(e) {\n if (!e || !e.styleSheets) return \"\";\n let t = /* @__PURE__ */ new Set(), r = \"\";\n for (let n of Array.from(e.styleSheets)) try {\n let i = n.cssRules;\n i && (r += ut(i, t));\n } catch (i) {\n }\n return r;\n}\nfunction di(e) {\n var l;\n let t = e.boxShadow || \"\";\n if (!t || t === \"none\") return { top: 0, right: 0, bottom: 0, left: 0 };\n let r = t.split(/\\),(?=(?:[^()]*\\([^()]*\\))*[^()]*$)/).map((c) => c.trim()), n = 0, i = 0, o = 0, a = 0;\n for (let c of r) {\n let u = ((l = c.match(/-?\\d+(\\.\\d+)?px/g)) == null ? void 0 : l.map((y) => parseFloat(y))) || [];\n if (u.length < 2) continue;\n let [d, s, f = 0, p = 0] = u, m = Math.abs(d) + f + p, h = Math.abs(s) + f + p;\n i = Math.max(i, m + Math.max(d, 0)), a = Math.max(a, m + Math.max(-d, 0)), o = Math.max(o, h + Math.max(s, 0)), n = Math.max(n, h + Math.max(-s, 0));\n }\n return { top: Math.ceil(n), right: Math.ceil(i), bottom: Math.ceil(o), left: Math.ceil(a) };\n}\nfunction mi(e) {\n let t = (e.filter || \"\").match(/blur\\(\\s*([0-9.]+)px\\s*\\)/), r = t ? Math.ceil(parseFloat(t[1]) || 0) : 0;\n return { top: r, right: r, bottom: r, left: r };\n}\nfunction hi(e) {\n if ((e.outlineStyle || \"none\") === \"none\") return { top: 0, right: 0, bottom: 0, left: 0 };\n let t = Math.ceil(parseFloat(e.outlineWidth || \"0\") || 0), r = parseFloat(e.outlineOffset || \"0\") || 0, n = t + Math.max(0, Math.ceil(r));\n return { top: n, right: n, bottom: n, left: n };\n}\nfunction pi(e) {\n var c;\n let t = `${e.filter || \"\"} ${e.webkitFilter || \"\"}`.trim();\n if (!t || t === \"none\") return { bleed: { top: 0, right: 0, bottom: 0, left: 0 }, has: !1 };\n let r = t.match(/drop-shadow\\((?:[^()]|\\([^()]*\\))*\\)/gi) || [], n = 0, i = 0, o = 0, a = 0, l = !1;\n for (let u of r) {\n l = !0;\n let d = ((c = u.match(/-?\\d+(?:\\.\\d+)?px/gi)) == null ? void 0 : c.map((y) => parseFloat(y))) || [], [s = 0, f = 0, p = 0] = d, m = Math.abs(s) + p, h = Math.abs(f) + p;\n i = Math.max(i, m + Math.max(s, 0)), a = Math.max(a, m + Math.max(-s, 0)), o = Math.max(o, h + Math.max(f, 0)), n = Math.max(n, h + Math.max(-f, 0));\n }\n return { bleed: { top: N(n), right: N(i), bottom: N(o), left: N(a) }, has: l };\n}\nfunction gi(e, t) {\n if (!e || !t || !t.style) return null;\n let r = getComputedStyle(e);\n try {\n t.style.transformOrigin = \"0 0\";\n } catch (l) {\n }\n try {\n \"translate\" in t.style && (t.style.translate = \"none\"), \"rotate\" in t.style && (t.style.rotate = \"none\");\n } catch (l) {\n }\n let n = r.transform || \"none\";\n if (n === \"none\") try {\n let l = kr(e);\n if (l.a === 1 && l.b === 0 && l.c === 0 && l.d === 1) return t.style.transform = \"none\", { a: 1, b: 0, c: 0, d: 1 };\n } catch (l) {\n }\n function i(l, c, u, d) {\n let s = Math.sqrt(l * l + c * c) || 0, f = 0, p = 0;\n if (s > 0) {\n let m = l / s, h = c / s;\n f = m * u + h * d;\n let y = u - m * f, S = d - h * f;\n p = Math.sqrt(y * y + S * S) || 0, p > 0 ? f = f / p : f = 0;\n }\n return { a: s, b: 0, c: f * p, d: p };\n }\n let o = n.match(/^matrix\\(\\s*([^)]+)\\)$/i);\n if (o) {\n let l = o[1].split(\",\").map((c) => parseFloat(c.trim()));\n if (l.length === 6 && l.every(Number.isFinite)) {\n let [c, u, d, s] = l, f = i(c, u, d, s);\n try {\n t.style.transform = `matrix(${f.a}, ${f.b}, ${f.c}, ${f.d}, 0, 0)`;\n } catch (p) {\n }\n return f;\n }\n }\n let a = n.match(/^matrix3d\\(\\s*([^)]+)\\)$/i);\n if (a) {\n let l = a[1].split(\",\").map((c) => parseFloat(c.trim()));\n if (l.length === 16 && l.every(Number.isFinite)) {\n let c = l[0], u = l[1], d = l[4], s = l[5], f = i(c, u, d, s);\n try {\n t.style.transform = `matrix(${f.a}, ${f.b}, ${f.c}, ${f.d}, 0, 0)`;\n } catch (p) {\n }\n return f;\n }\n }\n try {\n let l = new DOMMatrix(n), c = i(l.a, l.b, l.c, l.d);\n try {\n t.style.transform = `matrix(${c.a}, ${c.b}, ${c.c}, ${c.d}, 0, 0)`;\n } catch (u) {\n }\n return c;\n } catch (l) {\n return null;\n }\n}\nfunction Yt(e, t, r, n, i) {\n let o = r.a, a = r.b, l = r.c, c = r.d, u = r.e || 0, d = r.f || 0;\n function s(S, M) {\n let g = S - n, w = M - i, C = o * g + l * w, b = a * g + c * w;\n return C += n + u, b += i + d, [C, b];\n }\n let f = [s(0, 0), s(e, 0), s(0, t), s(e, t)], p = 1 / 0, m = 1 / 0, h = -1 / 0, y = -1 / 0;\n for (let [S, M] of f) S < p && (p = S), M < m && (m = M), S > h && (h = S), M > y && (y = M);\n return { minX: p, minY: m, maxX: h, maxY: y, width: h - p, height: y - m };\n}\nfunction yi(e, t, r) {\n let n = (e.transformOrigin || \"0 0\").trim().split(/\\s+/), [i, o] = [n[0] || \"0\", n[1] || \"0\"], a = (l, c) => {\n let u = l.toLowerCase();\n return u === \"left\" || u === \"top\" ? 0 : u === \"center\" ? c / 2 : u === \"right\" || u === \"bottom\" ? c : u.endsWith(\"px\") ? parseFloat(u) || 0 : u.endsWith(\"%\") ? (parseFloat(u) || 0) * c / 100 : /^-?\\d+(\\.\\d+)?$/.test(u) && parseFloat(u) || 0;\n };\n return { ox: a(i, t), oy: a(o, r) };\n}\nfunction wi(e) {\n var i, o, a, l, c, u, d, s;\n let t = { rotate: \"0deg\", scale: null, translate: null }, r = typeof e.computedStyleMap == \"function\" ? e.computedStyleMap() : null;\n if (r) {\n let f = (y) => {\n try {\n return typeof r.has == \"function\" && !r.has(y) || typeof r.get != \"function\" ? null : r.get(y);\n } catch (S) {\n return null;\n }\n }, p = f(\"rotate\");\n if (p) if (p.angle) {\n let y = p.angle;\n t.rotate = y.unit === \"rad\" ? y.value * 180 / Math.PI + \"deg\" : y.value + y.unit;\n } else p.unit ? t.rotate = p.unit === \"rad\" ? p.value * 180 / Math.PI + \"deg\" : p.value + p.unit : t.rotate = String(p);\n else {\n let y = getComputedStyle(e);\n t.rotate = y.rotate && y.rotate !== \"none\" ? y.rotate : \"0deg\";\n }\n let m = f(\"scale\");\n if (m) {\n let y = \"x\" in m && ((i = m.x) == null ? void 0 : i.value) != null ? m.x.value : Array.isArray(m) ? (o = m[0]) == null ? void 0 : o.value : Number(m) || 1, S = \"y\" in m && ((a = m.y) == null ? void 0 : a.value) != null ? m.y.value : Array.isArray(m) ? (l = m[1]) == null ? void 0 : l.value : y;\n t.scale = `${y} ${S}`;\n } else {\n let y = getComputedStyle(e);\n t.scale = y.scale && y.scale !== \"none\" ? y.scale : null;\n }\n let h = f(\"translate\");\n if (h) {\n let y = \"x\" in h && \"value\" in h.x ? h.x.value : Array.isArray(h) ? (c = h[0]) == null ? void 0 : c.value : 0, S = \"y\" in h && \"value\" in h.y ? h.y.value : Array.isArray(h) ? (u = h[1]) == null ? void 0 : u.value : 0, M = \"x\" in h && ((d = h.x) != null && d.unit) ? h.x.unit : \"px\", g = \"y\" in h && ((s = h.y) != null && s.unit) ? h.y.unit : \"px\";\n t.translate = `${y}${M} ${S}${g}`;\n } else {\n let y = getComputedStyle(e);\n t.translate = y.translate && y.translate !== \"none\" ? y.translate : null;\n }\n return t;\n }\n let n = getComputedStyle(e);\n return t.rotate = n.rotate && n.rotate !== \"none\" ? n.rotate : \"0deg\", t.scale = n.scale && n.scale !== \"none\" ? n.scale : null, t.translate = n.translate && n.translate !== \"none\" ? n.translate : null, t;\n}\nvar Qe = null;\nfunction bi() {\n if (Qe) return Qe;\n let e = document.createElement(\"div\");\n return e.id = \"snapdom-measure-slot\", e.setAttribute(\"aria-hidden\", \"true\"), Object.assign(e.style, { position: \"absolute\", left: \"-99999px\", top: \"0px\", width: \"0px\", height: \"0px\", overflow: \"hidden\", opacity: \"0\", pointerEvents: \"none\", contain: \"size layout style\" }), document.documentElement.appendChild(e), Qe = e, e;\n}\nfunction xi(e) {\n let t = bi(), r = document.createElement(\"div\");\n r.style.transformOrigin = \"0 0\", e.baseTransform && (r.style.transform = e.baseTransform), e.rotate && (r.style.rotate = e.rotate), e.scale && (r.style.scale = e.scale), e.translate && (r.style.translate = e.translate), t.appendChild(r);\n let n = kr(r);\n return t.removeChild(r), n;\n}\nfunction Si(e) {\n let t = getComputedStyle(e), r = t.transform || \"none\";\n if (r !== \"none\" && !/^matrix\\(\\s*1\\s*,\\s*0\\s*,\\s*0\\s*,\\s*1\\s*,\\s*0\\s*,\\s*0\\s*\\)$/i.test(r)) return !0;\n let n = t.rotate && t.rotate !== \"none\" && t.rotate !== \"0deg\", i = t.scale && t.scale !== \"none\" && t.scale !== \"1\", o = t.translate && t.translate !== \"none\" && t.translate !== \"0px 0px\";\n return !!(n || i || o);\n}\nfunction kr(e) {\n let t = getComputedStyle(e).transform;\n if (!t || t === \"none\") return new DOMMatrix();\n try {\n return new DOMMatrix(t);\n } catch (r) {\n return new WebKitCSSMatrix(t);\n }\n}\nasync function Ar(e, t) {\n var g, w;\n if (!e) throw new Error(\"Element cannot be null or undefined\");\n Dr(t.cache);\n let r = t.fast, n = t.outerTransforms !== !1, i = !!t.outerShadows, o = { element: e, options: t, plugins: t.plugins }, a, l, c, u = \"\", d = \"\", s, f, p = null;\n await ye(\"beforeSnap\", o), await ye(\"beforeClone\", o);\n let m = Bo(o.element);\n try {\n ({ clone: a, classCSS: l, styleCache: c } = await Uo(o.element, o.options)), !n && a && (p = gi(o.element, a)), !i && a && Zo(o.element, a, o.options);\n } finally {\n m();\n }\n if (o = W({ clone: a, classCSS: l, styleCache: c }, o), await ye(\"afterClone\", o), ri(o.clone), ((g = o.options) == null ? void 0 : g.excludeMode) === \"remove\") try {\n ai(o.element, o.clone, o.styleCache);\n } catch (C) {\n console.warn(\"[snapdom] shrink pass failed:\", C);\n }\n try {\n await oo(o.clone, o.element);\n } catch (C) {\n }\n await new Promise((C) => {\n Ce(async () => {\n await Ho(o.clone, o.options), C();\n }, { fast: r });\n }), await new Promise((C) => {\n Ce(async () => {\n await Do(o.element, o.clone, o.styleCache, o.options), C();\n }, { fast: r });\n }), t.embedFonts && await new Promise((C) => {\n Ce(async () => {\n let b = wr(o.element), v = Co(o.element);\n if (be()) {\n let x = new Set(Array.from(b).map(($) => String($).split(\"__\")[0]).filter(Boolean));\n await br(x, 1);\n }\n u = await So({ required: b, usedCodepoints: v, exclude: o.options.excludeFonts, useProxy: o.options.useProxy, fontStylesheetDomains: o.options.fontStylesheetDomains }), C();\n }, { fast: r });\n });\n let h = Zr(o.clone).sort(), y = h.join(\",\");\n A.baseStyle.has(y) ? d = A.baseStyle.get(y) : await new Promise((C) => {\n Ce(() => {\n d = en(h), A.baseStyle.set(y, d), C();\n }, { fast: r });\n });\n let S = fi(((w = o.element) == null ? void 0 : w.ownerDocument) || document);\n o = W({ fontsCSS: u, baseCSS: d, scrollbarCSS: S }, o), await ye(\"beforeRender\", o), await new Promise((C) => {\n Ce(() => {\n var bt, xt, St, Ct, vt, kt;\n let b = me(o.element), v = o.element.getBoundingClientRect(), x = Math.max(1, N(o.element.offsetWidth || parseFloat(b.width) || v.width || 1)), $ = Math.max(1, N(o.element.offsetHeight || parseFloat(b.height) || v.height || 1)), E = o.element.ownerDocument || document;\n if (o.element === E.body || o.element === E.documentElement) {\n let G = Math.max(o.element.scrollHeight || 0, ((bt = E.documentElement) == null ? void 0 : bt.scrollHeight) || 0, ((xt = E.body) == null ? void 0 : xt.scrollHeight) || 0), K = Math.max(o.element.scrollWidth || 0, ((St = E.documentElement) == null ? void 0 : St.scrollWidth) || 0, ((Ct = E.body) == null ? void 0 : Ct.scrollWidth) || 0);\n G > 0 && ($ = Math.max($, N(G))), K > 0 && (x = Math.max(x, N(K)));\n try {\n let le = (o.scrollbarCSS || \"\").length + (o.baseCSS || \"\").length + (o.fontsCSS || \"\").length + (o.classCSS || \"\").length, ue = A.measureHints.get(o.element);\n if (ue && ue.cssLen === le && ue.w0 === x) ue.csh > 0 && ($ = Math.max($, N(ue.csh))), ue.csw > 0 && (x = Math.max(x, N(ue.csw)));\n else {\n let fe = E.createElement(\"div\");\n fe.style.cssText = \"position:absolute!important;left:-9999px!important;top:0!important;width:\" + x + \"px!important;overflow:visible!important;visibility:hidden!important;\";\n let We = E.createElement(\"style\");\n We.textContent = (o.scrollbarCSS || \"\") + o.baseCSS + o.fontsCSS + \"svg{overflow:visible;} foreignObject{overflow:visible;}\" + o.classCSS, fe.appendChild(We), fe.appendChild(o.clone.cloneNode(!0)), E.body.appendChild(fe);\n let ge = fe.scrollHeight, Je = fe.scrollWidth;\n E.body.removeChild(fe), A.measureHints.set(o.element, { cssLen: le, w0: x, csh: ge, csw: Je }), ge > 0 && ($ = Math.max($, N(ge))), Je > 0 && (x = Math.max(x, N(Je)));\n }\n } catch (le) {\n }\n }\n if (((vt = o.options) == null ? void 0 : vt.excludeMode) === \"remove\") {\n let G = ci(o.element, o.options);\n Number.isFinite(G) && G > 0 && ($ = Math.max(1, Math.min($, N(G + 1))));\n }\n let U = (G, K = NaN) => {\n let le = typeof G == \"string\" ? parseFloat(G) : G;\n return Number.isFinite(le) ? le : K;\n }, j = U(o.options.width), _ = U(o.options.height), B = x, V = $, te = Number.isFinite(j), re = Number.isFinite(_), k = $ > 0 ? x / $ : 1;\n te && re ? (B = Math.max(1, N(j)), V = Math.max(1, N(_))) : te ? (B = Math.max(1, N(j)), V = Math.max(1, N(B / (k || 1)))) : re ? (V = Math.max(1, N(_)), B = Math.max(1, N(V * (k || 1)))) : (B = x, V = $);\n let P = 0, T = 0, O = x, F = $;\n if (!n && p && Number.isFinite(p.a)) {\n let G = { a: p.a, b: p.b || 0, c: p.c || 0, d: p.d || 1, e: 0, f: 0 }, K = Yt(x, $, G, 0, 0);\n P = N(K.minX), T = N(K.minY), O = N(K.maxX), F = N(K.maxY);\n } else if (n && Gt(o.element)) {\n let G = b.transform && b.transform !== \"none\" ? b.transform : \"\", K = wi(o.element), le = xi({ baseTransform: G, rotate: K.rotate || \"0deg\", scale: K.scale, translate: K.translate }), { ox: ue, oy: fe } = yi(b, x, $), We = le.is2D ? le : new DOMMatrix(le.toString()), ge = Yt(x, $, We, ue, fe);\n P = N(ge.minX), T = N(ge.minY), O = N(ge.maxX), F = N(ge.maxY);\n }\n let L = di(b), I = mi(b), R = hi(b), Y = pi(b), X = i ? { top: N(L.top + I.top + R.top + Y.bleed.top), right: N(L.right + I.right + R.right + Y.bleed.right), bottom: N(L.bottom + I.bottom + R.bottom + Y.bleed.bottom), left: N(L.left + I.left + R.left + Y.bleed.left) } : { top: 0, right: 0, bottom: 0, left: 0 };\n P = N(P - X.left), T = N(T - X.top), O = N(O + X.right), F = N(F + X.bottom);\n let ae = Math.max(1, N(O - P)), ne = Math.max(1, N(F - T)), H = te || re ? N(B / x) : 1, J = re || te ? N(V / $) : 1, Z = Math.max(1, N(ae * H)), Ae = Math.max(1, N(ne * J)), gt = \"http://www.w3.org/2000/svg\", $r = be() && Gt(o.element) ? 1 : 0, he = N($r + (n ? 0 : 1)), pe = document.createElementNS(gt, \"foreignObject\"), Er = N(P), Fr = N(T);\n pe.setAttribute(\"x\", String(N(-(Er - he)))), pe.setAttribute(\"y\", String(N(-(Fr - he)))), pe.setAttribute(\"width\", String(N(x + he * 2))), pe.setAttribute(\"height\", String(N($ + he * 2))), pe.style.overflow = \"visible\";\n let yt = document.createElement(\"style\"), Nr = 'svg{overflow:visible;} foreignObject{overflow:visible;} foreignObject *{min-width:0;} foreignObject pre,foreignObject [style*=\"white-space\"]{white-space:inherit;}';\n yt.textContent = (o.scrollbarCSS || \"\") + o.baseCSS + o.fontsCSS + Nr + o.classCSS, pe.appendChild(yt);\n let Te = document.createElement(\"div\");\n Te.setAttribute(\"xmlns\", \"http://www.w3.org/1999/xhtml\"), Te.style.cssText = `all:initial;box-sizing:border-box;display:block;overflow:visible;width:${N(x)}px;height:${N($)}px`, Te.appendChild(o.clone), pe.appendChild(Te);\n let Lr = new XMLSerializer().serializeToString(pe), Ye = N(ae + he * 2), Ge = N(ne + he * 2), wt = te || re;\n t.meta = { w0: x, h0: $, vbW: Ye, vbH: Ge, targetW: B, targetH: V };\n let Pr = be() && wt ? Ye : N(Z + he * 2), Rr = be() && wt ? Ge : N(Ae + he * 2), Tr = parseFloat((kt = me(E.documentElement)) == null ? void 0 : kt.fontSize) || 16;\n f = `<svg xmlns=\"${gt}\" width=\"${Pr}\" height=\"${Rr}\" viewBox=\"0 0 ${Ye} ${Ge}\" font-size=\"${Tr}px\">` + Lr + \"</svg>\", s = `data:image/svg+xml;charset=utf-8,${encodeURIComponent(f)}`, o = W({ svgString: f, dataURL: s }, o), C();\n }, { fast: r });\n }), await ye(\"afterRender\", o);\n let M = document.getElementById(\"snapdom-sandbox\");\n return M && M.style.position === \"absolute\" && M.remove(), o.dataURL;\n}\nfunction Gt(e) {\n return Si(e);\n}\nie();\nfunction Ci(e = {}) {\n var n, i, o, a, l, c, u, d, s, f, p, m, h, y, S, M, g, w, C, b, v, x;\n let t = (n = e.format) != null ? n : \"png\";\n t === \"jpg\" && (t = \"jpeg\");\n let r = Hr(e.cache);\n return { debug: (i = e.debug) != null ? i : !1, fast: (o = e.fast) != null ? o : !0, scale: (a = e.scale) != null ? a : 1, exclude: (l = e.exclude) != null ? l : [], excludeMode: (c = e.excludeMode) != null ? c : \"hide\", filter: (u = e.filter) != null ? u : null, filterMode: (d = e.filterMode) != null ? d : \"hide\", placeholders: e.placeholders !== !1, embedFonts: (s = e.embedFonts) != null ? s : !1, iconFonts: Array.isArray(e.iconFonts) ? e.iconFonts : e.iconFonts ? [e.iconFonts] : [], localFonts: Array.isArray(e.localFonts) ? e.localFonts : [], excludeFonts: (f = e.excludeFonts) != null ? f : void 0, fontStylesheetDomains: Array.isArray(e.fontStylesheetDomains) ? e.fontStylesheetDomains : [], fallbackURL: (p = e.fallbackURL) != null ? p : void 0, cache: r, useProxy: typeof e.useProxy == \"string\" ? e.useProxy : \"\", width: (m = e.width) != null ? m : null, height: (h = e.height) != null ? h : null, format: t, type: (y = e.type) != null ? y : \"svg\", quality: (S = e.quality) != null ? S : 0.92, dpr: (M = e.dpr) != null ? M : window.devicePixelRatio || 1, backgroundColor: (g = e.backgroundColor) != null ? g : [\"jpeg\", \"webp\"].includes(t) ? \"#ffffff\" : null, filename: (w = e.filename) != null ? w : \"snapDOM\", outerTransforms: (C = e.outerTransforms) != null ? C : !0, outerShadows: (b = e.outerShadows) != null ? b : !1, safariWarmupAttempts: Math.min(3, Math.max(1, ((v = e.safariWarmupAttempts) != null ? v : 3) | 0)), excludeStyleProps: (x = e.excludeStyleProps) != null ? x : null };\n}\nRe();\nnr();\nce();\nke();\nie();\nfunction vi(...e) {\n return Go(...e), q;\n}\nvar q = Object.assign(Ai, { plugins: vi }), Mr = /* @__PURE__ */ Symbol(\"snapdom.internal\"), ki = /* @__PURE__ */ Symbol(\"snapdom.internal.silent\"), Jt = !1;\nasync function Ai(e, t) {\n var n;\n if (!e) throw new Error(\"Element cannot be null or undefined\");\n let r = Ci(t);\n if (Qo(r, t && t.plugins), be() && (r.embedFonts === !0 || $i(e))) {\n if (r.embedFonts) try {\n let o = wr(e), a = new Set([...o].map((l) => String(l).split(\"__\")[0]).filter(Boolean));\n await br(a, 1);\n } catch (o) {\n }\n let i = (n = r.safariWarmupAttempts) != null ? n : 3;\n for (let o = 0; o < i; o++) try {\n await Mi(e, t);\n } catch (a) {\n }\n }\n return r.iconFonts && r.iconFonts.length > 0 && Kn(r.iconFonts), r.snap || (r.snap = { toPng: (i, o) => q.toPng(i, o), toSvg: (i, o) => q.toSvg(i, o) }), q.capture(e, r, Mr);\n}\nq.capture = async (e, t, r) => {\n if (r !== Mr) throw new Error(\"[snapdom.capture] is internal. Use snapdom(...) instead.\");\n let n = await Ar(e, t), i = { img: async (h, y) => {\n let { toImg: S } = await Promise.resolve().then(() => (Nt(), rt));\n return S(n, W(W({}, h), y || {}));\n }, svg: async (h, y) => {\n let { toSvg: S } = await Promise.resolve().then(() => (Nt(), rt));\n return S(n, W(W({}, h), y || {}));\n }, canvas: async (h, y) => {\n let { toCanvas: S } = await Promise.resolve().then(() => (Xe(), or));\n return S(n, W(W({}, h), y || {}));\n }, blob: async (h, y) => {\n let { toBlob: S } = await Promise.resolve().then(() => (cr(), lr));\n return S(n, W(W({}, h), y || {}));\n }, png: async (h, y) => {\n let { rasterize: S } = await Promise.resolve().then(() => (Oe(), Ue));\n return S(n, z(W(W({}, h), y || {}), { format: \"png\" }));\n }, jpeg: async (h, y) => {\n let { rasterize: S } = await Promise.resolve().then(() => (Oe(), Ue));\n return S(n, z(W(W({}, h), y || {}), { format: \"jpeg\" }));\n }, webp: async (h, y) => {\n let { rasterize: S } = await Promise.resolve().then(() => (Oe(), Ue));\n return S(n, z(W(W({}, h), y || {}), { format: \"webp\" }));\n }, download: async (h, y) => {\n let { download: S } = await Promise.resolve().then(() => (pn(), ur));\n return S(n, W(W({}, h), y || {}));\n } }, o = {};\n for (let h of [\"img\", \"svg\", \"canvas\", \"blob\", \"png\", \"jpeg\", \"webp\"]) o[h] = async (y) => i[h](t, z(W({}, y || {}), { [ki]: !0 }));\n o.jpg = o.jpeg;\n let a = z(W({}, t), { export: { url: n }, exports: o }), l = await Jo(\"defineExports\", a), c = Object.assign({}, ...l.filter((h) => h && typeof h == \"object\")), u = W(W({}, i), c);\n u.jpeg && !u.jpg && (u.jpg = (h, y) => u.jpeg(h, y));\n function d(h, y) {\n let S = W(W({}, t), y || {});\n return (h === \"jpeg\" || h === \"jpg\") && (S.backgroundColor == null || S.backgroundColor === \"transparent\") && (S.backgroundColor = \"#ffffff\"), S;\n }\n let s = !1, f = Promise.resolve();\n async function p(h, y) {\n let S = async () => {\n let M = u[h];\n if (!M) throw new Error(`[snapdom] Unknown export type: ${h}`);\n let g = d(h, y), w = z(W({}, t), { export: { type: h, options: g, url: n } });\n await ye(\"beforeExport\", w);\n let C = await M(w, g);\n return await ye(\"afterExport\", w, C), s || (s = !0, await ye(\"afterSnap\", t)), C;\n };\n return f = f.then(S);\n }\n let m = { url: n, toRaw: () => n, to: (h, y) => p(h, y), toImg: (h) => p(\"img\", h), toSvg: (h) => p(\"svg\", h), toCanvas: (h) => p(\"canvas\", h), toBlob: (h) => p(\"blob\", h), toPng: (h) => p(\"png\", h), toJpg: (h) => p(\"jpg\", h), toWebp: (h) => p(\"webp\", h), download: (h) => p(\"download\", h) };\n for (let h of Object.keys(u)) {\n let y = \"to\" + h.charAt(0).toUpperCase() + h.slice(1);\n m[y] || (m[y] = (S) => p(h, S));\n }\n return m;\n};\nq.toRaw = (e, t) => q(e, t).then((r) => r.toRaw());\nq.toImg = (e, t) => q(e, t).then((r) => r.toImg());\nq.toSvg = (e, t) => q(e, t).then((r) => r.toSvg());\nq.toCanvas = (e, t) => q(e, t).then((r) => r.toCanvas());\nq.toBlob = (e, t) => q(e, t).then((r) => r.toBlob());\nq.toPng = (e, t) => q(e, z(W({}, t), { format: \"png\" })).then((r) => r.toPng());\nq.toJpg = (e, t) => q(e, z(W({}, t), { format: \"jpeg\" })).then((r) => r.toJpg());\nq.toWebp = (e, t) => q(e, z(W({}, t), { format: \"webp\" })).then((r) => r.toWebp());\nq.download = (e, t) => q(e, t).then((r) => r.download());\nasync function Mi(e, t) {\n if (Jt) return;\n let r = z(W({}, t), { fast: !0, embedFonts: !0, scale: 0.2 }), n;\n try {\n n = await Ar(e, r);\n } catch (i) {\n D(t, \"safariWarmup pre-capture failed\", i);\n }\n await new Promise((i) => requestAnimationFrame(() => requestAnimationFrame(i))), n && await new Promise((i) => {\n let o = new Image();\n try {\n o.decoding = \"sync\", o.loading = \"eager\";\n } catch (a) {\n D(t, \"safariWarmup img hints failed\", a);\n }\n o.style.cssText = \"position:fixed;left:0px;top:0px;width:10px;height:10px;opacity:0.01;pointer-events:none;\", o.src = n, document.body.appendChild(o), (async () => {\n try {\n typeof o.decode == \"function\" && await o.decode();\n } catch (l) {\n D(t, \"safariWarmup img.decode failed\", l);\n }\n let a = performance.now();\n for (; !(o.complete && o.naturalWidth > 0) && performance.now() - a < 900; ) await new Promise((l) => setTimeout(l, 200));\n await new Promise((l) => requestAnimationFrame(l));\n try {\n let l = document.createElement(\"canvas\");\n l.width = Math.max(1, o.naturalWidth || 10), l.height = Math.max(1, o.naturalHeight || 10);\n let c = l.getContext(\"2d\");\n c && c.drawImage(o, 0, 0);\n } catch (l) {\n }\n await new Promise((l) => requestAnimationFrame(l));\n try {\n o.remove();\n } catch (l) {\n D(t, \"safariWarmup img.remove failed\", l);\n }\n i();\n })();\n }), e.querySelectorAll(\"canvas\").forEach((i) => {\n try {\n let o = i.getContext(\"2d\", { willReadFrequently: !0 });\n o && o.getImageData(0, 0, 1, 1);\n } catch (o) {\n D(t, \"safariWarmup canvas poke failed\", o);\n }\n }), Jt = !0;\n}\nfunction $i(e) {\n let t = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT);\n for (; t.nextNode(); ) {\n let r = t.currentNode, n = getComputedStyle(r), i = n.backgroundImage && n.backgroundImage !== \"none\", o = n.maskImage && n.maskImage !== \"none\" || n.webkitMaskImage && n.webkitMaskImage !== \"none\";\n if (i || o || r.tagName === \"CANVAS\") return !0;\n }\n return !1;\n}\nexport {\n q as snapdom\n};\n//# sourceMappingURL=snapdom-6yvsn_Iv.js.map\n"],"names":["Wr","Ir","_r","At","Ur","Or","Mt","e","t","r","W","z","jr","Q","Pe","Hr","Dr","A","ee","ie","ft","Br","n","i","o","Be","qr","Ve","Vr","a","l","c","u","zr","Xr","Yr","Gr","$t","Jr","oe","y","S","M","C","x","v","$e","d","_e","s","p","m","h","$","Ze","ke","Kt","Kr","Qr","mt","dt","tr","er","Zt","et","Zr","en","tn","rn","me","Et","tt","Qt","rr","Ce","nn","be","on","Re","D","nr","ce","or","ze","an","ln","sn","cn","un","ir","fn","dn","mn","f","Xe","Ue","ar","Oe","rt","Ft","Nt","lr","sr","cr","ur","hn","Lt","pn","Pt","Ne","gn","nt","Ee","Rt","yn","wn","Tt","bn","xn","$n","Sn","Cn","we","vn","kn","An","Mn","fr","Wt","En","Fn","Ke","Nn","Ln","Pn","Rn","Tn","Wn","In","_n","Un","On","jn","Hn","Dn","se","Bn","qn","Vn","Me","Fe","zn","It","Ie","Xn","Yn","Gn","je","j","_","B","U","V","Jn","xe","ot","Kn","de","Qn","_t","Zn","eo","to","ro","no","oo","io","dr","ao","ht","lo","He","De","so","co","uo","fo","mo","ho","po","Ut","it","qe","go","mr","yo","hr","pr","pt","gr","wo","Ot","bo","xo","yr","So","g","w","b","E","te","re","k","O","F","L","I","Y","X","ae","ne","J","Z","Ae","wr","Co","br","vo","ko","jt","Ht","Dt","Ao","Mo","Se","Bt","$o","xr","Vt","at","qt","ve","zt","Eo","Fo","lt","st","No","ct","Lo","Po","Xt","Ro","To","Wo","Io","_o","Uo","Sr","Oo","jo","Ho","Do","Bo","qo","Vo","Yo","zo","Xo","Le","Cr","Go","vr","ye","Jo","Ko","Qo","Zo","ei","ri","oi","ii","ai","li","si","ci","N","ut","fi","mi","hi","pi","gi","kr","Yt","yi","wi","Qe","bi","xi","Si","Ar","bt","xt","St","Ct","vt","kt","G","K","le","ue","fe","We","ge","Je","P","T","Gt","R","H","gt","$r","he","pe","Er","Fr","yt","Nr","Te","Lr","Ye","Ge","wt","Pr","Rr","Tr","Ci","vi","Ai","Mr","ki","Jt","$i","Mi"],"mappings":"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"}
|