@siteping/widget 0.11.1 → 0.12.1
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 +5 -5
- package/dist/chunk-ISSCC4XP.js +9 -0
- package/dist/chunk-ISSCC4XP.js.map +1 -0
- package/dist/chunk-QDJDQQ6E.cjs +9 -0
- package/dist/chunk-QDJDQQ6E.cjs.map +1 -0
- package/dist/de-GCYQ3JCH.cjs +2 -0
- package/dist/de-GCYQ3JCH.cjs.map +1 -0
- package/dist/de-U3V6TPCZ.js +2 -0
- package/dist/de-U3V6TPCZ.js.map +1 -0
- package/dist/deep-link.d.cts +10 -0
- package/dist/deep-link.d.ts +10 -0
- package/dist/errors.d.cts +46 -16
- package/dist/errors.d.ts +46 -16
- package/dist/es-435K3LIV.cjs +2 -0
- package/dist/es-435K3LIV.cjs.map +1 -0
- package/dist/es-CSZUS23Z.js +2 -0
- package/dist/es-CSZUS23Z.js.map +1 -0
- package/dist/fr-DVOFE3WF.js +2 -0
- package/dist/fr-DVOFE3WF.js.map +1 -0
- package/dist/fr-RKRDGOTP.cjs +2 -0
- package/dist/fr-RKRDGOTP.cjs.map +1 -0
- package/dist/i18n.d.cts +14 -10
- package/dist/i18n.d.ts +14 -10
- package/dist/index.cjs +3 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +26 -19
- package/dist/index.d.ts +26 -19
- package/dist/index.global.js +3 -3
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/it-COLRVG26.cjs +2 -0
- package/dist/it-COLRVG26.cjs.map +1 -0
- package/dist/it-ZWPEN22A.js +2 -0
- package/dist/it-ZWPEN22A.js.map +1 -0
- package/dist/ja-HLZ2GVFS.js +2 -0
- package/dist/ja-HLZ2GVFS.js.map +1 -0
- package/dist/ja-SNVDY7QP.cjs +2 -0
- package/dist/ja-SNVDY7QP.cjs.map +1 -0
- package/dist/ko-ORUCHGUZ.cjs +2 -0
- package/dist/ko-ORUCHGUZ.cjs.map +1 -0
- package/dist/ko-ZNF7AMXI.js +2 -0
- package/dist/ko-ZNF7AMXI.js.map +1 -0
- package/dist/logger.d.cts +30 -0
- package/dist/logger.d.ts +30 -0
- package/dist/panel-4CIN3Y66.js +2 -0
- package/dist/panel-4CIN3Y66.js.map +1 -0
- package/dist/panel-TD4UUEZA.cjs +2 -0
- package/dist/panel-TD4UUEZA.cjs.map +1 -0
- package/dist/pt-QQX5CA7D.cjs +2 -0
- package/dist/pt-QQX5CA7D.cjs.map +1 -0
- package/dist/pt-WGEJRQFC.js +2 -0
- package/dist/pt-WGEJRQFC.js.map +1 -0
- package/dist/react.cjs +2 -3
- package/dist/react.cjs.map +1 -1
- package/dist/react.d.cts +9 -0
- package/dist/react.d.ts +9 -0
- package/dist/react.js +2 -3
- package/dist/react.js.map +1 -1
- package/dist/ru-SERDK6PQ.js +2 -0
- package/dist/ru-SERDK6PQ.js.map +1 -0
- package/dist/ru-YRXPV57R.cjs +2 -0
- package/dist/ru-YRXPV57R.cjs.map +1 -0
- package/dist/schema.d.cts +31 -0
- package/dist/schema.d.ts +31 -0
- package/dist/screenshot-storage.d.cts +14 -17
- package/dist/screenshot-storage.d.ts +14 -17
- package/dist/siteping-core.d.cts +8 -5
- package/dist/siteping-core.d.ts +8 -5
- package/dist/store-helpers.d.cts +13 -9
- package/dist/store-helpers.d.ts +13 -9
- package/dist/text.d.cts +28 -0
- package/dist/text.d.ts +28 -0
- package/dist/types.d.cts +114 -37
- package/dist/types.d.ts +114 -37
- package/dist/wire.d.cts +6 -1
- package/dist/wire.d.ts +6 -1
- package/package.json +10 -8
- package/dist/chunk-26577FDQ.js +0 -9
- package/dist/chunk-26577FDQ.js.map +0 -1
- package/dist/chunk-3EHIWTJH.js +0 -9
- package/dist/chunk-3EHIWTJH.js.map +0 -1
- package/dist/chunk-6MCFOKVG.cjs +0 -9
- package/dist/chunk-6MCFOKVG.cjs.map +0 -1
- package/dist/chunk-Q34GDCKE.cjs +0 -9
- package/dist/chunk-Q34GDCKE.cjs.map +0 -1
- package/dist/de-73CTH2E4.cjs +0 -2
- package/dist/de-73CTH2E4.cjs.map +0 -1
- package/dist/de-GUUJUHYP.js +0 -2
- package/dist/de-GUUJUHYP.js.map +0 -1
- package/dist/es-3MXMSDUC.js +0 -2
- package/dist/es-3MXMSDUC.js.map +0 -1
- package/dist/es-WJZ3XARH.cjs +0 -2
- package/dist/es-WJZ3XARH.cjs.map +0 -1
- package/dist/fr-52F3ZCLQ.js +0 -2
- package/dist/fr-52F3ZCLQ.js.map +0 -1
- package/dist/fr-ZCRIJWI3.cjs +0 -2
- package/dist/fr-ZCRIJWI3.cjs.map +0 -1
- package/dist/it-MEUT3RCC.js +0 -2
- package/dist/it-MEUT3RCC.js.map +0 -1
- package/dist/it-TGUTW6MO.cjs +0 -2
- package/dist/it-TGUTW6MO.cjs.map +0 -1
- package/dist/ja-DOS7AWLW.cjs +0 -2
- package/dist/ja-DOS7AWLW.cjs.map +0 -1
- package/dist/ja-U7NRNGPQ.js +0 -2
- package/dist/ja-U7NRNGPQ.js.map +0 -1
- package/dist/ko-U2CS6XQ4.js +0 -2
- package/dist/ko-U2CS6XQ4.js.map +0 -1
- package/dist/ko-ZUL567LW.cjs +0 -2
- package/dist/ko-ZUL567LW.cjs.map +0 -1
- package/dist/panel-3BEMZFIR.cjs +0 -2
- package/dist/panel-3BEMZFIR.cjs.map +0 -1
- package/dist/panel-HPDIAYLQ.js +0 -2
- package/dist/panel-HPDIAYLQ.js.map +0 -1
- package/dist/panel-MIWFGD7X.cjs +0 -2
- package/dist/panel-MIWFGD7X.cjs.map +0 -1
- package/dist/panel-XTNU6XHV.js +0 -2
- package/dist/panel-XTNU6XHV.js.map +0 -1
- package/dist/pt-BZRBHCYN.cjs +0 -2
- package/dist/pt-BZRBHCYN.cjs.map +0 -1
- package/dist/pt-MOS5DVOG.js +0 -2
- package/dist/pt-MOS5DVOG.js.map +0 -1
- package/dist/ru-KDNRHHNZ.cjs +0 -2
- package/dist/ru-KDNRHHNZ.cjs.map +0 -1
- package/dist/ru-VSWB5NKK.js +0 -2
- package/dist/ru-VSWB5NKK.js.map +0 -1
package/dist/index.global.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
var SitePing=function(A){"use strict";var e=Object.defineProperty,t=(A,e,t)=>()=>{if(t)throw t[0];try{return A&&(e=A(A=0)),e}catch(A){throw t=[A],A}},s=(A,t)=>{for(var s in t)e(A,s,{get:t[s],enumerable:!0})};function r(A){return i.test(A)}var i,n,o,a,l,c=t(()=>{i=/^(?!\.)(?!.*\.\.)[\p{L}\p{M}\p{N}!#$%&'*+/=?^_`{|}~.-]{0,63}[\p{L}\p{M}\p{N}!#$%&'*+/=?^_`{|}~-]@(?:[\p{L}\p{N}](?:[\p{L}\p{M}\p{N}-]{0,61}[\p{L}\p{M}\p{N}])?\.)+[\p{L}\p{N}][\p{L}\p{M}\p{N}-]{0,61}[\p{L}\p{M}\p{N}]$/u}),d=t(()=>{n=class extends Error{code;retryable;constructor(A,e,t){super(A),this.code=e,this.retryable=t,this.name="SitepingError"}},o=class extends n{constructor(A){super(A,"NETWORK",!0),this.name="SitepingNetworkError"}},a=class extends n{status;constructor(A,e){super(A,"VALIDATION",!1),this.name="SitepingValidationError",this.status=e}},l=class extends n{status;constructor(A,e){super(A,"AUTH",!1),this.name="SitepingAuthError",this.status=e}}});function p(A,e){return function(A){return"object"==typeof A&&null!==A}(A)&&e in A}var h=t(()=>{});function u(A){return b.includes(A)}function g(A,e){return p(A,"code")&&A.code===e}function B(A){return{cssSelector:A.anchor.cssSelector,xpath:A.anchor.xpath,textSnippet:A.anchor.textSnippet,elementTag:A.anchor.elementTag,elementId:A.anchor.elementId,textPrefix:A.anchor.textPrefix,textSuffix:A.anchor.textSuffix,fingerprint:A.anchor.fingerprint,neighborText:A.anchor.neighborText,anchorKey:A.anchor.anchorKey??null,xPct:A.rect.xPct,yPct:A.rect.yPct,wPct:A.rect.wPct,hPct:A.rect.hPct,scrollX:A.scrollX,scrollY:A.scrollY,viewportW:A.viewportW,viewportH:A.viewportH,devicePixelRatio:A.devicePixelRatio}}var w,f,m,b,C,y,Q,x,F=t(()=>{h(),w=["en","fr","de","es","it","pt","ru","ja","ko"],f=200,m=["open","in_progress","resolved","wont_fix"],b=["resolved","wont_fix"],C=5e3,y=class extends Error{code="STORE_DUPLICATE";constructor(A="Duplicate record",e){super(A,e),this.name="StoreDuplicateError"}},Q=191,x=191});function U(A){return(A.split(/[-_]/)[0]??A).toLowerCase()}function v(A,e,t){return function(A,e){return A.replace(/\{(\w+)\}/g,(A,t)=>{let s=e[t];return void 0===s?A:String(s)})}(A(e),t)}var E=t(()=>{F()});function k(){try{return crypto.randomUUID()}catch{return`${Date.now()}-${Math.random().toString(36).slice(2)}`}}async function H(A,e){let t=await A.text().catch(()=>"Unknown error"),s=`${e}: ${t?`${A.status} ${t}`:`${A.status}`}`;return 401===A.status||403===A.status?new l(s,A.status):A.status>=400&&A.status<500?new a(s,A.status):new n(s,"SERVER",!1)}function I(A,e){if(A instanceof o)return A;let t=A instanceof Error?A.message:String(A);return new o(`${e}: ${t}`)}var S,L,M=t(()=>{d(),S=(A,e)=>A?.[e]}),D=t(()=>{c(),d(),E(),h(),F(),M()}),K=t(()=>{L="(max-width: 640px), (max-height: 500px) and (pointer: coarse)"});function T(A){let e=document.createRange().createContextualFragment(A).firstElementChild;if("svg"!==e?.nodeName.toLowerCase())throw new Error("[siteping] Invalid SVG string");for(let A of[...e.attributes])A.name.startsWith("on")&&e.removeAttribute(A.name);for(let A of e.querySelectorAll("*"))for(let e of[...A.attributes])e.name.startsWith("on")&&A.removeAttribute(e.name);return e}function R(A,e){let t=document.createElement(A);if(e)for(let[A,s]of Object.entries(e))"class"===A?t.className=s:"style"===A?t.style.cssText=s:t.setAttribute(A,s);return t}function O(A,e){A.textContent=e}function P(A,e){let t=A.getRootNode(),s=t instanceof ShadowRoot?t.host:null,r=t=>{A.contains(t.target)||e()},i=A=>{A.target!==s&&e()};return t.addEventListener("click",r,!0),s&&document.addEventListener("click",i,!0),()=>{t.removeEventListener("click",r,!0),s&&document.removeEventListener("click",i,!0)}}function N(A,e){A.hidden=e,A.style.display=e?"none":""}function V(A){let e=Array.from(A.childNodes).map(A=>A.cloneNode(!0));return A.disabled=!0,A.replaceChildren(R("div",{class:"sp-spinner sp-spinner--sm"})),()=>{A.replaceChildren(...e),A.disabled=!1}}function G(){let A=navigator.userAgentData;return A?"macOS"===A.platform:navigator.platform?.includes("Mac")??/Macintosh|Mac OS X/i.test(navigator.userAgent)}function X(A,e="en"){let t=Date.now()-new Date(A).getTime(),s=Math.floor(t/1e3);if(s<60)return new Intl.RelativeTimeFormat(e,{numeric:"auto"}).format(0,"second");let r=new Intl.RelativeTimeFormat(e,{numeric:"always",style:"narrow"}),i=Math.floor(s/60);if(i<60)return r.format(-i,"minute");let n=Math.floor(i/60);if(n<24)return r.format(-n,"hour");let o=Math.floor(n/24);return o<7?r.format(-o,"day"):new Date(A).toLocaleDateString(e)}var $=t(()=>{});function Y(A){for(let e=A;e;e=rA(e))if(AA.has(e))return!0;return!1}function W(A,e){AA.add(A),e&&tA.set(A,e);for(let e of Z)A.addEventListener(e,nA,{passive:!0});for(let e of["keydown","keypress","keyup"])A.addEventListener(e,oA);let t=()=>{for(let e of q)("inert"!==e||!eA.has(A))&&A.removeAttribute(e)};t(),new MutationObserver(t).observe(A,{attributeFilter:q})}function J(A,e){e?eA.add(A):eA.delete(A),A.toggleAttribute("inert",e)}function z(A,e){let t=sA.get(A);return t||(t=new Set,sA.set(A,t)),t.add(e),()=>{t.delete(e)}}function _(){if("none"===getComputedStyle(document.body).pointerEvents)return!0;for(let A of document.querySelectorAll('[aria-modal="true"]'))if(A.getClientRects().length>0&&"visible"===getComputedStyle(A).visibility&&!Y(A))return!0;return!1}function j(A){let e=A.composedPath()[0];for(;e instanceof Element;){let A=(e.shadowRoot??tA.get(e))?.activeElement;if(!A)break;e=A}return e instanceof Node?e:null}var Z,q,AA,eA,tA,sA,rA,iA,nA,oA,aA,lA,cA,dA,pA,hA,uA,gA,BA,wA,fA,mA,bA,CA,yA,QA,xA,FA,UA=t(()=>{Z=["pointerdown","mousedown","touchstart","touchend","click","focusin","focusout","wheel","touchmove"],q=["inert","aria-hidden"],AA=new WeakSet,eA=new WeakSet,tA=new WeakMap,sA=new WeakMap,rA=A=>A instanceof ShadowRoot?A.host:A.parentNode,iA=A=>A instanceof Node&&Y(A),nA=A=>A.stopPropagation(),oA=A=>{let{key:e}=A,t=j(A);"Tab"!==e&&"Escape"!==e&&t instanceof HTMLElement&&(t.isContentEditable||/^(INPUT|TEXTAREA|SELECT)$/.test(t.tagName))&&A.stopPropagation()}}),vA=t(()=>{aA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/><circle cx="12" cy="10" r="1" fill="currentColor" stroke="none"/><circle cx="8" cy="10" r="1" fill="currentColor" stroke="none"/><circle cx="16" cy="10" r="1" fill="currentColor" stroke="none"/></svg>',lA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg>',cA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94"/><path d="M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19"/><line x1="1" y1="1" x2="23" y2="23"/></svg>',dA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>',pA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>',hA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="20 6 9 17 4 12"/></svg>',uA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="10"/><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>',gA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"/><path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"/></svg>',BA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="8" y="6" width="8" height="14" rx="4"/><path d="M19 9h2"/><path d="M3 9h2"/><path d="M19 13h2"/><path d="M3 13h2"/><path d="M19 17h2"/><path d="M3 17h2"/><path d="M10 2h4"/></svg>',wA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="1"/><circle cx="19" cy="12" r="1"/><circle cx="5" cy="12" r="1"/></svg>',fA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polygon points="12 2 2 7 12 12 22 7 12 2"/><polyline points="2 17 12 22 22 17"/><polyline points="2 12 12 17 22 12"/></svg>',mA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="3" fill="currentColor" stroke="none"/></svg>',bA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg>',CA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="1 4 1 10 7 10"/><path d="M3.51 15a9 9 0 1 0 2.13-9.36L1 10"/></svg>',yA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="3 6 5 6 21 6"/><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/><line x1="10" y1="11" x2="10" y2="17"/><line x1="14" y1="11" x2="14" y2="17"/></svg>',QA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>',xA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="8" y1="6" x2="21" y2="6"/><line x1="8" y1="12" x2="21" y2="12"/><line x1="8" y1="18" x2="21" y2="18"/><line x1="3" y1="6" x2="3.01" y2="6"/><line x1="3" y1="12" x2="3.01" y2="12"/><line x1="3" y1="18" x2="3.01" y2="18"/></svg>',FA='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 20h9"/><path d="M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"/></svg>'});function EA(A=IA,e){let t=function(A){if(SA.test(A))return A;let e=LA.test(A)?A.match(LA):null;return e?`#${e[1]}${e[1]}${e[2]}${e[2]}${e[3]}${e[3]}`:MA.test(A)?A.slice(0,7):(console.warn(`[siteping] Invalid accentColor "${A}" \u2014 only hex colors (#RGB, #RRGGBB, #RRGGBBAA) are supported. Using default.`),IA)}(A),s=function(A,e){let t=Math.max(0,Math.round(parseInt(A.slice(1,3),16)*(1-e))),s=Math.max(0,Math.round(parseInt(A.slice(3,5),16)*(1-e))),r=Math.max(0,Math.round(parseInt(A.slice(5,7),16)*(1-e)));return`#${t.toString(16).padStart(2,"0")}${s.toString(16).padStart(2,"0")}${r.toString(16).padStart(2,"0")}`}(t,.15);return"dark"===function(A){return"dark"===A||"auto"===A&&!(typeof window>"u")&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}(e)?{accent:t,accentLight:t+"22",accentDark:s,accentGlow:t+"44",accentGradient:`linear-gradient(135deg, ${t}, ${s})`,bg:"#0f172a",bgHover:"#1e293b",text:"#f1f5f9",textSecondary:"#94a3b8",textTertiary:"#64748b",border:"#334155",shadow:"rgba(0, 0, 0, 0.3)",glassBg:"rgba(15, 23, 42, 0.78)",glassBgHeavy:"rgba(15, 23, 42, 0.88)",glassBorder:"rgba(51, 65, 85, 0.5)",glassBorderSubtle:"rgba(51, 65, 85, 0.3)",typeQuestion:"#60a5fa",typeChange:"#fbbf24",typeBug:"#f87171",typeOther:"#94a3b8",typeQuestionBg:"rgba(59, 130, 246, 0.15)",typeChangeBg:"rgba(245, 158, 11, 0.15)",typeBugBg:"rgba(239, 68, 68, 0.15)",typeOtherBg:"rgba(100, 116, 139, 0.15)",statusOpen:"#4ade80",statusOpenBg:"rgba(74, 222, 128, 0.15)",statusResolved:"#94a3b8",statusResolvedBg:"rgba(148, 163, 184, 0.15)",statusInProgress:"#fbbf24",statusInProgressBg:"rgba(245, 158, 11, 0.15)",statusWontFix:"#94a3b8",statusWontFixBg:"rgba(148, 163, 184, 0.15)"}:{accent:t,accentLight:t+"14",accentDark:s,accentGlow:t+"33",accentGradient:`linear-gradient(135deg, ${t}, ${s})`,bg:"#ffffff",bgHover:"#f8f9fb",text:"#0f172a",textSecondary:"#475569",textTertiary:"#64748b",border:"#e2e8f0",shadow:"rgba(0, 0, 0, 0.06)",glassBg:"rgba(255, 255, 255, 0.72)",glassBgHeavy:"rgba(255, 255, 255, 0.85)",glassBorder:"rgba(255, 255, 255, 0.35)",glassBorderSubtle:"rgba(255, 255, 255, 0.18)",typeQuestion:"#3b82f6",typeChange:"#b45309",typeBug:"#ef4444",typeOther:"#64748b",typeQuestionBg:"#eff6ff",typeChangeBg:"#fffbeb",typeBugBg:"#fef2f2",typeOtherBg:"#f8fafc",statusOpen:"#16a34a",statusOpenBg:"#f0fdf4",statusResolved:"#64748b",statusResolvedBg:"#f1f5f9",statusInProgress:"#d97706",statusInProgressBg:"#fffbeb",statusWontFix:"#64748b",statusWontFixBg:"#f1f5f9"}}function kA(A,e){switch(A){case"question":return e.typeQuestion;case"change":return e.typeChange;case"bug":return e.typeBug;default:return e.typeOther}}function HA(A,e){switch(A){case"question":return e.typeQuestionBg;case"change":return e.typeChangeBg;case"bug":return e.typeBugBg;default:return e.typeOtherBg}}var IA,SA,LA,MA,DA=t(()=>{IA="#0066ff",SA=/^#[0-9a-fA-F]{6}$/,LA=/^#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])$/,MA=/^#[0-9a-fA-F]{8}$/});function KA(A){return"function"==typeof window.matchMedia&&window.matchMedia(A).matches}function TA(){return KA(L)}function RA(){return KA("(pointer: coarse)")}function OA(A){let e=window.visualViewport;if(!e)return()=>{};let t=()=>A(Math.max(0,Math.round(window.innerHeight-e.height-e.offsetTop)),e.height);return t(),e.addEventListener("resize",t),e.addEventListener("scroll",t),()=>{e.removeEventListener("resize",t),e.removeEventListener("scroll",t)}}var PA=t(()=>{K()}),NA={};function VA(A={}){return new $A({allowDataUrls:!0,maxImageTimeout:3e5,...A})}function GA(A){return!(20===A.type&&"none"===A.value||18===A.type&&!Li[A.name])}s(NA,{Html2CanvasConfig:()=>XA,PerformanceMonitor:()=>YA,Validator:()=>$A,createDefaultValidator:()=>VA,default:()=>kd,html2canvas:()=>kd});var XA,$A,YA,WA,JA,zA,_A,jA,ZA,qA,Ae,ee,te,se,re,ie,ne,oe,ae,le,ce,de,pe,he,ue,ge,Be,we,fe,me,be,Ce,ye,Qe,xe,Fe,Ue,ve,Ee,ke,He,Ie,Se,Le,Me,De,Ke,Te,Re,Oe,Pe,Ne,Ve,Ge,Xe,$e,Ye,We,Je,ze,_e,je,Ze,qe,At,et,tt,st,rt,it,nt,ot,at,lt,ct,dt,pt,ht,ut,gt,Bt,wt,ft,mt,bt,Ct,yt,Qt,xt,Ft,Ut,vt,Et,kt,Ht,It,St,Lt,Mt,Dt,Kt,Tt,Rt,Ot,Pt,Nt,Vt,Gt,Xt,$t,Yt,Wt,Jt,zt,_t,jt,Zt,qt,As,es,ts,ss,rs,is,ns,os,as,ls,cs,ds,ps,hs,us,gs,Bs,ws,fs,ms,bs,Cs,ys,Qs,xs,Fs,Us,vs,Es,ks,Hs,Is,Ss,Ls,Ms,Ds,Ks,Ts,Rs,Os,Ps,Ns,Vs,Gs,Xs,$s,Ys,Ws,Js,zs,_s,js,Zs,qs,Ar,er,tr,sr,rr,ir,nr,or,ar,lr,cr,dr,pr,hr,ur,gr,Br,wr,fr,mr,br,Cr,yr,Qr,xr,Fr,Ur,vr,Er,kr,Hr,Ir,Sr,Lr,Mr,Dr,Kr,Tr,Rr,Or,Pr,Nr,Vr,Gr,Xr,$r,Yr,Wr,Jr,zr,_r,jr,Zr,qr,Ai,ei,ti,si,ri,ii,ni,oi,ai,li,ci,di,pi,hi,ui,gi,Bi,wi,fi,mi,bi,Ci,yi,Qi,xi,Fi,Ui,vi,Ei,ki,Hi,Ii,Si,Li,Mi,Di,Ki,Ti,Ri,Oi,Pi,Ni,Vi,Gi,Xi,$i,Yi,Wi,Ji,zi,_i,ji,Zi,qi,An,en,tn,sn,rn,nn,on,an,ln,cn,dn,pn,hn,un,gn,Bn,wn,fn,mn,bn,Cn,yn,Qn,xn,Fn,Un,vn,En,kn,Hn,In,Sn,Ln,Mn,Dn,Kn,Tn,Rn,On,Pn,Nn,Vn,Gn,Xn,$n,Yn,Wn,Jn,zn,_n,jn,Zn,qn,Ao,eo,to,so,ro,io,no,oo,ao,lo,co,po,ho,uo,go,Bo,wo,fo,mo,bo,Co,yo,Qo,xo,Fo,Uo,vo,Eo,ko,Ho,Io,So,Lo,Mo,Do,Ko,To,Ro,Oo,Po,No,Vo,Go,Xo,$o,Yo,Wo,Jo,zo,_o,jo,Zo,qo,Aa,ea,ta,sa,ra,ia,na,oa,aa,la,ca,da,pa,ha,ua,ga,Ba,wa,fa,ma,ba,Ca,ya,Qa,xa,Fa,Ua,va,Ea,ka,Ha,Ia,Sa,La,Ma,Da,Ka,Ta,Ra,Oa,Pa,Na,Va,Ga,Xa,$a,Ya,Wa,Ja,za,_a,ja,Za,qa,Al,el,tl,sl,rl,il,nl,ol,al,ll,cl,dl,pl,hl,ul,gl,Bl,wl,fl,ml,bl,Cl,yl,Ql,xl,Fl,Ul,vl,El,kl,Hl,Il,Sl,Ll,Ml,Dl,Kl,Tl,Rl,Ol,Pl,Nl,Vl,Gl,Xl,$l,Yl,Wl,Jl,zl,_l,jl,Zl,ql,Ac,ec,tc,sc,rc,ic,nc,oc,ac,lc,cc,dc,pc,hc,uc,gc,Bc,wc,fc,mc,bc,Cc,yc,Qc,xc,Fc,Uc,vc,Ec,kc,Hc,Ic,Sc,Lc,Mc,Dc,Kc,Tc,Rc,Oc,Pc,Nc,Vc,Gc,Xc,$c,Yc,Wc,Jc,zc,_c,jc,Zc,qc,Ad,ed,td,sd,rd,id,nd,od,ad,ld,cd,dd,pd,hd,ud,gd,Bd,wd,fd,md,bd,Cd,yd,Qd,xd,Fd,Ud,vd,Ed,kd,Hd,Id=t(()=>{for(XA=class A{constructor(A={}){let e=A.window||(typeof window<"u"?window:void 0);if(!e)throw new Error("Window object is required but not available");this.window=e,this.cspNonce=A.cspNonce,this.cache=A.cache}static fromElement(e,t={}){let s=e.ownerDocument;if(!s)throw new Error("Element is not attached to a document");let r=s.defaultView;if(!r)throw new Error("Document is not attached to a window");return new A({window:r,...t})}clone(e={}){return new A({window:e.window||this.window,cspNonce:e.cspNonce??this.cspNonce,cache:e.cache??this.cache})}},$A=class{constructor(A={}){this.config={maxImageTimeout:3e5,allowDataUrls:!0,...A}}validateUrl(A,e="general"){if(!A||"string"!=typeof A)return{valid:!1,error:"URL must be a non-empty string"};if(A.startsWith("data:"))return this.config.allowDataUrls?{valid:!0,sanitized:A}:{valid:!1,error:"Data URLs are not allowed"};if(A.startsWith("blob:"))return{valid:!0,sanitized:A};try{let t=new URL(A);if(!["http:","https:"].includes(t.protocol))return{valid:!1,error:`Protocol ${t.protocol} is not allowed. Only http and https are permitted.`};if("proxy"===e&&this.config.allowedProxyDomains&&this.config.allowedProxyDomains.length>0){let A=t.hostname.toLowerCase();if(!this.config.allowedProxyDomains.some(e=>{let t=e.toLowerCase();return A===t||A.endsWith("."+t)}))return{valid:!1,error:`Proxy domain ${t.hostname} is not in the allowed list`}}if("proxy"===e){if(!this.config.allowLocalhostProxy){let A=t.hostname.toLowerCase();if("localhost"===A||"127.0.0.1"===A||"::1"===A)return{valid:!1,error:"Localhost is not allowed for proxy URLs"};if(this.isPrivateIP(A))return{valid:!1,error:"Private IP addresses are not allowed for proxy URLs"};if(A.startsWith("169.254.")||A.startsWith("fe80:"))return{valid:!1,error:"Link-local addresses are not allowed for proxy URLs"}}return{valid:!0,sanitized:A,requiresRuntimeCheck:!0}}return{valid:!0,sanitized:A}}catch(A){return{valid:!1,error:`Invalid URL format: ${A instanceof Error?A.message:"Unknown error"}`}}}isPrivateIP(A){return!![/^0\./,/^10\./,/^100\.(6[4-9]|[7-9][0-9]|1[0-1][0-9]|12[0-7])\./,/^127\./,/^169\.254\./,/^172\.(1[6-9]|2[0-9]|3[0-1])\./,/^192\.0\.0\./,/^192\.0\.2\./,/^192\.168\./,/^198\.(1[8-9])\./,/^198\.51\.100\./,/^203\.0\.113\./,/^2(2[4-9]|3[0-9])\./,/^24[0-9]\./,/^255\.255\.255\.255$/].some(e=>e.test(A))||!!A.includes(":")&&this.isPrivateIPv6(A)}isPrivateIPv6(A){let e=A.toLowerCase().trim().replace(/^\[|\]$/g,"").split("%")[0];if(/^(0:){7}1$/.test(e)||"::1"===e||/^(0:){7}0$/.test(e)||"::"===e)return!0;let t=this.expandIPv6(e);if(!t)return this.isPrivateIPv6Prefix(e);let s=parseInt(t.substring(0,2),16);if(s>=252&&s<=253)return!0;if(254===s){let A=parseInt(t.substring(2,4),16);if(A>=128&&A<=191)return!0}return 255===s}expandIPv6(A){try{if(A.includes("::")){let e=A.split("::");if(e.length>2)return null;let t=e[0]?e[0].split(":"):[],s=e[1]?e[1].split(":"):[],r=8-t.length-s.length;if(r<0)return null;let i=Array(r).fill("0000");return[...t,...i,...s].map(A=>A.padStart(4,"0")).join(":")}{let e=A.split(":");return 8!==e.length?null:e.map(A=>A.padStart(4,"0")).join(":")}}catch{return null}}isPrivateIPv6Prefix(A){return!!(/^fc[0-9a-f]{0,2}:?/i.test(A)||/^fd[0-9a-f]{0,2}:?/i.test(A)||/^fe[89ab][0-9a-f]:?/i.test(A)||/^ff[0-9a-f]{0,2}:?/i.test(A))}validateCspNonce(A){return A&&"string"==typeof A?A.length<16?{valid:!1,error:"CSP nonce is too short (minimum 16 characters recommended)"}:/^[A-Za-z0-9+/=_-]+$/.test(A)?{valid:!0,sanitized:A}:{valid:!1,error:"CSP nonce contains invalid characters"}:{valid:!1,error:"CSP nonce must be a non-empty string"}}validateImageTimeout(A){return"number"!=typeof A||isNaN(A)?{valid:!1,error:"Image timeout must be a number"}:A<0?{valid:!1,error:"Image timeout cannot be negative"}:this.config.maxImageTimeout&&A>this.config.maxImageTimeout?{valid:!1,error:`Image timeout ${A}ms exceeds maximum allowed ${this.config.maxImageTimeout}ms`}:{valid:!0,sanitized:A}}validateDimensions(A,e){if("number"!=typeof A||"number"!=typeof e)return{valid:!1,error:"Dimensions must be numbers"};if(isNaN(A)||isNaN(e))return{valid:!1,error:"Dimensions cannot be NaN"};if(A<=0||e<=0)return{valid:!1,error:"Dimensions must be positive"};let t=32767;return A>t||e>t?{valid:!1,error:`Dimensions exceed maximum allowed (${t}px)`}:{valid:!0,sanitized:{width:A,height:e}}}validateScale(A){return"number"!=typeof A||isNaN(A)?{valid:!1,error:"Scale must be a number"}:A<=0?{valid:!1,error:"Scale must be positive"}:A>10?{valid:!1,error:"Scale factor too large (maximum 10x)"}:{valid:!0,sanitized:A}}validateElement(A){if(!A)return{valid:!1,error:"Element is required"};if("object"!=typeof A)return{valid:!1,error:"Element must be an object"};let e=A;return typeof HTMLElement<"u"&&A instanceof HTMLElement?A.ownerDocument?{valid:!0}:{valid:!1,error:"Element must be attached to a document"}:e.ownerDocument?e.ownerDocument.defaultView?{valid:!0}:{valid:!1,error:"Document must be attached to a window (ownerDocument.defaultView required)"}:{valid:!1,error:"Element must be attached to a document (ownerDocument required)"}}validateOptions(A){let e=[],t=A.proxy;if(null!=t&&"string"==typeof t&&t.length>0){let A=this.validateUrl(t,"proxy");A.valid||e.push(`Proxy: ${A.error}`)}if(void 0!==A.imageTimeout){let t=this.validateImageTimeout(A.imageTimeout);t.valid||e.push(`Image timeout: ${t.error}`)}if(void 0!==A.width||void 0!==A.height){let t=A.width??800,s=A.height??600,r=this.validateDimensions(t,s);r.valid||e.push(`Dimensions: ${r.error}`)}if(void 0!==A.scale){let t=this.validateScale(A.scale);t.valid||e.push(`Scale: ${t.error}`)}if(void 0!==A.cspNonce){let t=this.validateCspNonce(A.cspNonce);t.valid||e.push(`CSP nonce: ${t.error}`)}if(this.config.customValidator){let t=this.config.customValidator(A,"options");t.valid||e.push(`Custom validation: ${t.error}`)}return e.length>0?{valid:!1,error:e.join("; ")}:{valid:!0}}},YA=class{constructor(A,e=!0){this.context=A,this.activeMetrics=new Map,this.completedMetrics=[],this.enabled=e,this.getTime=typeof performance<"u"&&"function"==typeof performance.now?()=>performance.now():()=>Date.now()}start(A,e){this.enabled&&(this.activeMetrics.has(A)&&this.context?.logger.warn(`Performance metric '${A}' already started. Overwriting.`),this.activeMetrics.set(A,{name:A,startTime:this.getTime(),metadata:e}))}end(A){if(!this.enabled)return;let e=this.activeMetrics.get(A);if(e)return e.endTime=this.getTime(),e.duration=e.endTime-e.startTime,this.completedMetrics.push(e),this.activeMetrics.delete(A),this.context?.logger.debug(`\u23f1\ufe0f ${A}: ${e.duration.toFixed(2)}ms`,e.metadata),e;this.context?.logger.warn(`Performance metric '${A}' not found. Was start() called?`)}measure(A,e,t){this.start(A,t);try{let t=e();return this.end(A),t}catch(e){throw this.end(A),e}}async measureAsync(A,e,t){this.start(A,t);try{let t=await e();return this.end(A),t}catch(e){throw this.end(A),e}}getMetrics(){return[...this.completedMetrics]}getMetric(A){return this.completedMetrics.find(e=>e.name===A)}getSummary(){let A=this.completedMetrics.reduce((A,e)=>A+(e.duration||0),0),e=this.completedMetrics.map(e=>({name:e.name,duration:e.duration||0,percentage:A>0?((e.duration||0)/A*100).toFixed(1)+"%":"0%"}));return{totalDuration:A,metrics:this.getMetrics(),breakdown:e}}logSummary(){if(!this.enabled||0===this.completedMetrics.length||!this.context)return;let A=this.getSummary();this.context.logger.info(`\n\ud83d\udcca Performance Summary (Total: ${A.totalDuration.toFixed(2)}ms):`),A.breakdown.sort((A,e)=>e.duration-A.duration).forEach(A=>{this.context.logger.info(` ${A.name.padEnd(20)} ${A.duration.toFixed(2).padStart(8)}ms ${A.percentage.padStart(6)}`)})}clear(){this.activeMetrics.clear(),this.completedMetrics.splice(0)}isEnabled(){return this.enabled}getActiveMetrics(){return Array.from(this.activeMetrics.keys())}},WA=class A{constructor(A,e,t,s){this.left=A,this.top=e,this.width=t,this.height=s}add(e,t,s,r){return new A(this.left+e,this.top+t,this.width+s,this.height+r)}static fromClientRect(e,t){return new A(t.left+e.windowBounds.left,t.top+e.windowBounds.top,t.width,t.height)}static fromDOMRectList(e,t){let s=Array.from(t),r=s.find(A=>0!==A.width);return r||(r=s.find(A=>0!==A.height)),!r&&s.length>0&&(r=s[0]),r?new A(r.left+e.windowBounds.left,r.top+e.windowBounds.top,r.width,r.height):A.EMPTY}static{this.EMPTY=new A(0,0,0,0)}},JA=(A,e)=>WA.fromClientRect(A,e.getBoundingClientRect()),zA=A=>{let e=A.body,t=A.documentElement;if(!e||!t)throw new Error("Unable to get document size");return new WA(0,0,Math.max(Math.max(e.scrollWidth,t.scrollWidth),Math.max(e.offsetWidth,t.offsetWidth),Math.max(e.clientWidth,t.clientWidth)),Math.max(Math.max(e.scrollHeight,t.scrollHeight),Math.max(e.offsetHeight,t.offsetHeight),Math.max(e.clientHeight,t.clientHeight)))},_A=function(A){for(var e=[],t=0,s=A.length;t<s;){var r=A.charCodeAt(t++);if(r>=55296&&r<=56319&&t<s){var i=A.charCodeAt(t++);56320==(64512&i)?e.push(((1023&r)<<10)+(1023&i)+65536):(e.push(r),t--)}else e.push(r)}return e},jA=function(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];if(String.fromCodePoint)return String.fromCodePoint.apply(String,A);var t=A.length;if(!t)return"";for(var s=[],r=-1,i="";++r<t;){var n=A[r];n<=65535?s.push(n):(n-=65536,s.push(55296+(n>>10),n%1024+56320)),(r+1===t||s.length>16384)&&(i+=String.fromCharCode.apply(String,s),s.length=0)}return i},ZA=typeof Uint8Array>"u"?[]:new Uint8Array(256),qA=0;qA<64;qA++)ZA["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(qA)]=qA;for(Ae=typeof Uint8Array>"u"?[]:new Uint8Array(256),ee=0;ee<64;ee++)Ae["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(ee)]=ee;for(te=function(A){var e,t,s,r,i,n=.75*A.length,o=A.length,a=0;"="===A[A.length-1]&&(n--,"="===A[A.length-2]&&n--);var l=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(n):new Array(n),c=Array.isArray(l)?l:new Uint8Array(l);for(e=0;e<o;e+=4)t=Ae[A.charCodeAt(e)],s=Ae[A.charCodeAt(e+1)],r=Ae[A.charCodeAt(e+2)],i=Ae[A.charCodeAt(e+3)],c[a++]=t<<2|s>>4,c[a++]=(15&s)<<4|r>>2,c[a++]=(3&r)<<6|63&i;return l},se=function(A){for(var e=A.length,t=[],s=0;s<e;s+=2)t.push(A[s+1]<<8|A[s]);return t},re=function(A){for(var e=A.length,t=[],s=0;s<e;s+=4)t.push(A[s+3]<<24|A[s+2]<<16|A[s+1]<<8|A[s]);return t},ie=function(A,e,t){return A.slice?A.slice(e,t):new Uint16Array(Array.prototype.slice.call(A,e,t))},ne=function(A,e,t){return A.slice?A.slice(e,t):new Uint32Array(Array.prototype.slice.call(A,e,t))},oe=function(A,e){var t=te(A),s=Array.isArray(t)?re(t):new Uint32Array(t),r=Array.isArray(t)?se(t):new Uint16Array(t),i=ie(r,12,s[4]/2),n=2===s[5]?ie(r,(24+s[4])/2):ne(s,Math.ceil((24+s[4])/4));return new ae(s[0],s[1],s[2],s[3],i,n)},ae=function(){function A(A,e,t,s,r,i){this.initialValue=A,this.errorValue=e,this.highStart=t,this.highValueIndex=s,this.index=r,this.data=i}return A.prototype.get=function(A){var e;if(A>=0){if(A<55296||A>56319&&A<=65535)return e=((e=this.index[A>>5])<<2)+(31&A),this.data[e];if(A<=65535)return e=((e=this.index[2048+(A-55296>>5)])<<2)+(31&A),this.data[e];if(A<this.highStart)return e=2080+(A>>11),e=this.index[e],e+=A>>5&63,e=((e=this.index[e])<<2)+(31&A),this.data[e];if(A<=1114111)return this.data[this.highValueIndex]}return this.errorValue},A}(),le=typeof Uint8Array>"u"?[]:new Uint8Array(256),ce=0;ce<64;ce++)le["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(ce)]=ce;for(de=10,pe=13,he=15,ue=17,ge=18,Be=19,we=20,fe=21,me=22,be=24,Ce=25,ye=26,Qe=27,xe=28,Fe=30,Ue=32,ve=33,Ee=34,ke=35,He=37,Ie=38,Se=39,Le=40,Me=42,De=[9001,65288],Ke="\xd7",Te="\xf7",Re=oe("KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA=="),Oe=[Fe,36],Ve=[Qe,ye],Ge=(Pe=[1,2,3,5]).concat(Ne=[de,8]),Xe=[Ie,Se,Le,Ee,ke],$e=[he,pe],Ye=function(A,e){void 0===e&&(e="strict");var t=[],s=[],r=[];return A.forEach(function(A,i){var n=Re.get(A);if(n>50?(r.push(!0),n-=50):r.push(!1),-1!==["normal","auto","loose"].indexOf(e)&&-1!==[8208,8211,12316,12448].indexOf(A))return s.push(i),t.push(16);if(4===n||11===n){if(0===i)return s.push(i),t.push(Fe);var o=t[i-1];return-1===Ge.indexOf(o)?(s.push(s[i-1]),t.push(o)):(s.push(i),t.push(Fe))}return s.push(i),31===n?t.push("strict"===e?fe:He):n===Me||29===n?t.push(Fe):43===n?A>=131072&&A<=196605||A>=196608&&A<=262141?t.push(He):t.push(Fe):void t.push(n)}),[s,t,r]},We=function(A,e,t,s){var r=s[t];if(Array.isArray(A)?-1!==A.indexOf(r):A===r)for(var i=t;i<=s.length;){if((a=s[++i])===e)return!0;if(a!==de)break}if(r===de)for(i=t;i>0;){var n=s[--i];if(Array.isArray(A)?-1!==A.indexOf(n):A===n)for(var o=t;o<=s.length;){var a;if((a=s[++o])===e)return!0;if(a!==de)break}if(n!==de)break}return!1},Je=function(A,e){for(var t=A;t>=0;){var s=e[t];if(s!==de)return s;t--}return 0},ze=function(A,e,t,s,r){if(0===t[s])return Ke;var i=s-1;if(Array.isArray(r)&&!0===r[i])return Ke;var n=i-1,o=i+1,a=e[i],l=n>=0?e[n]:0,c=e[o];if(2===a&&3===c)return Ke;if(-1!==Pe.indexOf(a))return"!";if(-1!==Pe.indexOf(c)||-1!==Ne.indexOf(c))return Ke;if(8===Je(i,e))return Te;if(11===Re.get(A[i])||(a===Ue||a===ve)&&11===Re.get(A[o])||7===a||7===c||9===a||-1===[de,pe,he].indexOf(a)&&9===c||-1!==[ue,ge,Be,be,xe].indexOf(c)||Je(i,e)===me||We(23,me,i,e)||We([ue,ge],fe,i,e)||We(12,12,i,e))return Ke;if(a===de)return Te;if(23===a||23===c)return Ke;if(16===c||16===a)return Te;if(-1!==[pe,he,fe].indexOf(c)||14===a||36===l&&-1!==$e.indexOf(a)||a===xe&&36===c||c===we||-1!==Oe.indexOf(c)&&a===Ce||-1!==Oe.indexOf(a)&&c===Ce||a===Qe&&-1!==[He,Ue,ve].indexOf(c)||-1!==[He,Ue,ve].indexOf(a)&&c===ye||-1!==Oe.indexOf(a)&&-1!==Ve.indexOf(c)||-1!==Ve.indexOf(a)&&-1!==Oe.indexOf(c)||-1!==[Qe,ye].indexOf(a)&&(c===Ce||-1!==[me,he].indexOf(c)&&e[o+1]===Ce)||-1!==[me,he].indexOf(a)&&c===Ce||a===Ce&&-1!==[Ce,xe,be].indexOf(c))return Ke;if(-1!==[Ce,xe,be,ue,ge].indexOf(c))for(var d=i;d>=0;){if((p=e[d])===Ce)return Ke;if(-1===[xe,be].indexOf(p))break;d--}if(-1!==[Qe,ye].indexOf(c))for(d=-1!==[ue,ge].indexOf(a)?n:i;d>=0;){var p;if((p=e[d])===Ce)return Ke;if(-1===[xe,be].indexOf(p))break;d--}if(Ie===a&&-1!==[Ie,Se,Ee,ke].indexOf(c)||-1!==[Se,Ee].indexOf(a)&&-1!==[Se,Le].indexOf(c)||-1!==[Le,ke].indexOf(a)&&c===Le||-1!==Xe.indexOf(a)&&-1!==[we,ye].indexOf(c)||-1!==Xe.indexOf(c)&&a===Qe||-1!==Oe.indexOf(a)&&-1!==Oe.indexOf(c)||a===be&&-1!==Oe.indexOf(c)||-1!==Oe.concat(Ce).indexOf(a)&&c===me&&-1===De.indexOf(A[o])||-1!==Oe.concat(Ce).indexOf(c)&&a===ge)return Ke;if(41===a&&41===c){for(var h=t[i],u=1;h>0&&41===e[--h];)u++;if(u%2!=0)return Ke}return a===Ue&&c===ve?Ke:Te},_e=function(A,e){e||(e={lineBreak:"normal",wordBreak:"normal"});var t=Ye(A,e.lineBreak),s=t[0],r=t[1],i=t[2];return("break-all"===e.wordBreak||"break-word"===e.wordBreak)&&(r=r.map(function(A){return-1!==[Ce,Fe,Me].indexOf(A)?He:A})),[s,r,"keep-all"===e.wordBreak?i.map(function(e,t){return e&&A[t]>=19968&&A[t]<=40959}):void 0]},je=function(){function A(A,e,t,s){this.codePoints=A,this.required="!"===e,this.start=t,this.end=s}return A.prototype.slice=function(){return jA.apply(void 0,this.codePoints.slice(this.start,this.end))},A}(),Ze=function(A,e){var t=_A(A),s=_e(t,e),r=s[0],i=s[1],n=s[2],o=t.length,a=0,l=0;return{next:function(){if(l>=o)return{done:!0,value:null};for(var A=Ke;l<o&&(A=ze(t,i,r,++l,n))===Ke;);if(A!==Ke||l===o){var e=new je(t,A,a,l);return a=l,{value:e,done:!1}}return{done:!0,value:null}}}},qe=A=>A>=48&&A<=57,At=A=>A>=55296&&A<=57343,et=A=>qe(A)||A>=65&&A<=70||A>=97&&A<=102,tt=A=>A>=97&&A<=122,st=A=>A>=65&&A<=90,rt=A=>tt(A)||st(A),it=A=>A>=128,nt=A=>10===A||9===A||32===A,ot=A=>rt(A)||it(A)||95===A,at=A=>ot(A)||qe(A)||45===A,lt=A=>A>=0&&A<=8||11===A||A>=14&&A<=31||127===A,ct=(A,e)=>92===A&&10!==e,dt=(A,e,t)=>45===A?ot(e)||ct(e,t):!!ot(A)||!(92!==A||!ct(A,e)),pt=(A,e,t)=>43===A||45===A?!!qe(e)||46===e&&qe(t):qe(46===A?e:A),ht=A=>{let e=0,t=1;(43===A[e]||45===A[e])&&(45===A[e]&&(t=-1),e++);let s=[];for(;qe(A[e]);)s.push(A[e++]);let r=s.length?parseInt(jA(...s),10):0;46===A[e]&&e++;let i=[];for(;qe(A[e]);)i.push(A[e++]);let n=i.length,o=n?parseInt(jA(...i),10):0;(69===A[e]||101===A[e])&&e++;let a=1;(43===A[e]||45===A[e])&&(45===A[e]&&(a=-1),e++);let l=[];for(;qe(A[e]);)l.push(A[e++]);let c=l.length?parseInt(jA(...l),10):0;return t*(r+o*Math.pow(10,-n))*Math.pow(10,a*c)},ut={type:2},gt={type:3},Bt={type:4},wt={type:13},ft={type:8},mt={type:21},bt={type:9},Ct={type:10},yt={type:11},Qt={type:12},xt={type:14},Ft={type:23},Ut={type:1},vt={type:25},Et={type:24},kt={type:26},Ht={type:27},It={type:28},St={type:29},Lt={type:31},Mt={type:32},Dt=class A{static{this._pool=[]}static{this.MAX_POOL_SIZE=40}static get(){return A._pool.pop()||new A}static release(e){A._pool.length<A.MAX_POOL_SIZE&&(e._reset(),A._pool.push(e))}constructor(){this._value=[]}_reset(){this._value=[]}write(A){this._value=this._value.concat(_A(A))}read(){let A=[],e=this.consumeToken();for(;e!==Mt;)A.push(e),e=this.consumeToken();return A}consumeToken(){let A=this.consumeCodePoint();switch(A){case 34:return this.consumeStringToken(34);case 35:{let A=this.peekCodePoint(0),e=this.peekCodePoint(1),t=this.peekCodePoint(2);if(at(A)||ct(e,t)){let s=dt(A,e,t)?2:1;return{type:5,value:this.consumeName(),flags:s}}break}case 36:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),wt;break;case 39:return this.consumeStringToken(39);case 40:return ut;case 41:return gt;case 42:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),xt;break;case 43:if(pt(A,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(A),this.consumeNumericToken();break;case 44:return Bt;case 45:{let e=A,t=this.peekCodePoint(0),s=this.peekCodePoint(1);if(pt(e,t,s))return this.reconsumeCodePoint(A),this.consumeNumericToken();if(dt(e,t,s))return this.reconsumeCodePoint(A),this.consumeIdentLikeToken();if(45===t&&62===s)return this.consumeCodePoint(),this.consumeCodePoint(),Et;break}case 46:if(pt(A,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(A),this.consumeNumericToken();break;case 47:if(42===this.peekCodePoint(0))for(this.consumeCodePoint();;){let A=this.consumeCodePoint();if(42===A&&(A=this.consumeCodePoint(),47===A))return this.consumeToken();if(-1===A)return this.consumeToken()}break;case 58:return kt;case 59:return Ht;case 60:if(33===this.peekCodePoint(0)&&45===this.peekCodePoint(1)&&45===this.peekCodePoint(2))return this.consumeCodePoint(),this.consumeCodePoint(),vt;break;case 64:if(dt(this.peekCodePoint(0),this.peekCodePoint(1),this.peekCodePoint(2)))return{type:7,value:this.consumeName()};break;case 91:return It;case 92:if(ct(A,this.peekCodePoint(0)))return this.reconsumeCodePoint(A),this.consumeIdentLikeToken();break;case 93:return St;case 61:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),ft;break;case 123:return yt;case 125:return Qt;case 117:case 85:{let e=this.peekCodePoint(0),t=this.peekCodePoint(1);return 43===e&&(et(t)||63===t)&&(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(A),this.consumeIdentLikeToken()}case 124:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),bt;if(124===this.peekCodePoint(0))return this.consumeCodePoint(),mt;break;case 126:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),Ct;break;case-1:return Mt}return nt(A)?(this.consumeWhiteSpace(),Lt):qe(A)?(this.reconsumeCodePoint(A),this.consumeNumericToken()):ot(A)?(this.reconsumeCodePoint(A),this.consumeIdentLikeToken()):{type:6,value:jA(A)}}consumeCodePoint(){let A=this._value.shift();return typeof A>"u"?-1:A}reconsumeCodePoint(A){this._value.unshift(A)}peekCodePoint(A){return A>=this._value.length?-1:this._value[A]}consumeUnicodeRangeToken(){let A=[],e=this.consumeCodePoint();for(;et(e)&&A.length<6;)A.push(e),e=this.consumeCodePoint();let t=!1;for(;63===e&&A.length<6;)A.push(e),e=this.consumeCodePoint(),t=!0;if(t)return{type:30,start:parseInt(jA(...A.map(A=>63===A?48:A)),16),end:parseInt(jA(...A.map(A=>63===A?70:A)),16)};let s=parseInt(jA(...A),16);if(45===this.peekCodePoint(0)&&et(this.peekCodePoint(1))){this.consumeCodePoint(),e=this.consumeCodePoint();let A=[];for(;et(e)&&A.length<6;)A.push(e),e=this.consumeCodePoint();return{type:30,start:s,end:parseInt(jA(...A),16)}}return{type:30,start:s,end:s}}consumeIdentLikeToken(){let A=this.consumeName();return"url"===A.toLowerCase()&&40===this.peekCodePoint(0)?(this.consumeCodePoint(),this.consumeUrlToken()):40===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:19,value:A}):{type:20,value:A}}consumeUrlToken(){let A=[];if(this.consumeWhiteSpace(),-1===this.peekCodePoint(0))return{type:22,value:""};let e=this.peekCodePoint(0);if(39===e||34===e){let A=this.consumeStringToken(this.consumeCodePoint());return 0===A.type&&(this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0))?(this.consumeCodePoint(),{type:22,value:A.value}):(this.consumeBadUrlRemnants(),Ft)}for(;;){let e=this.consumeCodePoint();if(-1===e||41===e)return{type:22,value:jA(...A)};if(nt(e))return this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:22,value:jA(...A)}):(this.consumeBadUrlRemnants(),Ft);if(34===e||39===e||40===e||lt(e))return this.consumeBadUrlRemnants(),Ft;if(92===e){if(!ct(e,this.peekCodePoint(0)))return this.consumeBadUrlRemnants(),Ft;A.push(this.consumeEscapedCodePoint())}else A.push(e)}}consumeWhiteSpace(){for(;nt(this.peekCodePoint(0));)this.consumeCodePoint()}consumeBadUrlRemnants(){for(;;){let A=this.consumeCodePoint();if(41===A||-1===A)return;ct(A,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}}consumeStringSlice(A){let e="";for(;A>0;){let t=Math.min(5e4,A);e+=jA(...this._value.splice(0,t)),A-=t}return this._value.shift(),e}consumeStringToken(A){let e="",t=0;for(;;){let s=this._value[t];if(-1===s||void 0===s||s===A)return e+=this.consumeStringSlice(t),{type:0,value:e};if(10===s)return this._value.splice(0,t),Ut;if(92===s){let A=this._value[t+1];-1!==A&&void 0!==A&&(10===A?(e+=this.consumeStringSlice(t),t=-1,this._value.shift()):ct(s,A)&&(e+=this.consumeStringSlice(t),e+=jA(this.consumeEscapedCodePoint()),t=-1))}t++}}consumeNumber(){let A=[],e=4,t=this.peekCodePoint(0);for((43===t||45===t)&&A.push(this.consumeCodePoint());qe(this.peekCodePoint(0));)A.push(this.consumeCodePoint());t=this.peekCodePoint(0);let s=this.peekCodePoint(1);if(46===t&&qe(s))for(A.push(this.consumeCodePoint(),this.consumeCodePoint()),e=8;qe(this.peekCodePoint(0));)A.push(this.consumeCodePoint());t=this.peekCodePoint(0),s=this.peekCodePoint(1);let r=this.peekCodePoint(2);if((69===t||101===t)&&((43===s||45===s)&&qe(r)||qe(s)))for(A.push(this.consumeCodePoint(),this.consumeCodePoint()),e=8;qe(this.peekCodePoint(0));)A.push(this.consumeCodePoint());return[ht(A),e]}consumeNumericToken(){let[A,e]=this.consumeNumber(),t=this.peekCodePoint(0);return dt(t,this.peekCodePoint(1),this.peekCodePoint(2))?{type:15,number:A,flags:e,unit:this.consumeName()}:37===t?(this.consumeCodePoint(),{type:16,number:A,flags:e}):{type:17,number:A,flags:e}}consumeEscapedCodePoint(){let A=this.consumeCodePoint();if(et(A)){let e=jA(A);for(;et(this.peekCodePoint(0))&&e.length<6;)e+=jA(this.consumeCodePoint());nt(this.peekCodePoint(0))&&this.consumeCodePoint();let t=parseInt(e,16);return 0===t||At(t)||t>1114111?65533:t}return-1===A?65533:A}consumeName(){let A="";for(;;){let e=this.consumeCodePoint();if(at(e))A+=jA(e);else{if(!ct(e,this.peekCodePoint(0)))return this.reconsumeCodePoint(e),A;A+=jA(this.consumeEscapedCodePoint())}}}},Kt=class A{constructor(A){this._tokens=A}static create(e){let t=new Dt;return t.write(e),new A(t.read())}static parseValue(e){return A.create(e).parseComponentValue()}static parseValues(e){return A.create(e).parseComponentValues()}parseComponentValue(){let A=this.consumeToken();for(;31===A.type;)A=this.consumeToken();if(32===A.type)throw new SyntaxError("Error parsing CSS component value, unexpected EOF");this.reconsumeToken(A);let e=this.consumeComponentValue();do{A=this.consumeToken()}while(31===A.type);if(32===A.type)return e;throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")}parseComponentValues(){let A=[];for(;;){let e=this.consumeComponentValue();if(32===e.type)return A;A.push(e)}}consumeComponentValue(){let A=this.consumeToken();switch(A.type){case 11:case 28:case 2:return this.consumeSimpleBlock(A.type);case 19:return this.consumeFunction(A)}return A}consumeSimpleBlock(A){let e={type:A,values:[]},t=this.consumeToken();for(;;){if(32===t.type||$t(t,A))return e;this.reconsumeToken(t),e.values.push(this.consumeComponentValue()),t=this.consumeToken()}}consumeFunction(A){let e={name:A.value,values:[],type:18};for(;;){let A=this.consumeToken();if(32===A.type||3===A.type)return e;this.reconsumeToken(A),e.values.push(this.consumeComponentValue())}}consumeToken(){let A=this._tokens.shift();return typeof A>"u"?Mt:A}reconsumeToken(A){this._tokens.unshift(A)}},Tt=A=>15===A.type,Rt=A=>17===A.type,Ot=A=>20===A.type,Pt=A=>0===A.type,Nt=(A,e)=>Ot(A)&&A.value===e,Vt=A=>31!==A.type,Gt=A=>31!==A.type&&4!==A.type,Xt=A=>{let e=[],t=[];return A.forEach(A=>{4!==A.type?31!==A.type&&t.push(A):t.length&&(e.push(t),t=[])}),t.length&&e.push(t),e},$t=(A,e)=>11===e&&12===A.type||28===e&&29===A.type||2===e&&3===A.type,Yt=/(\d+(?:\.\d+)?|[+\-*/()])/g,Wt=A=>{let e=A.match(Yt);if(!e)return NaN;let t=[],s=[],r={"+":1,"-":1,"*":2,"/":2};for(let A of e)if(/^\d+(?:\.\d+)?$/.test(A))t.push(parseFloat(A));else if("("===A)s.push(A);else if(")"===A){for(;s.length&&"("!==s[s.length-1];)t.push(s.pop());if(!s.length)return NaN;s.pop()}else{for(;s.length&&r[s[s.length-1]]>=r[A];)t.push(s.pop());s.push(A)}for(;s.length;){let A=s.pop();if("("===A)return NaN;t.push(A)}let i=[];for(let A of t)if("number"==typeof A)i.push(A);else{let e=i.pop(),t=i.pop();if(void 0===t||void 0===e)return NaN;switch(A){case"+":i.push(t+e);break;case"-":i.push(t-e);break;case"*":i.push(t*e);break;case"/":i.push(0===e?NaN:t/e);break;default:return NaN}}return 1===i.length?i[0]:NaN},Jt=(A,e,t)=>Math.min(Math.max(A,e),t),zt=(A,e)=>[A[0]*e[0]+A[1]*e[1]+A[2]*e[2],A[3]*e[0]+A[4]*e[1]+A[5]*e[2],A[6]*e[0]+A[7]*e[1]+A[8]*e[2]],_t=A=>zt([3.2409699419045226,-1.537383177570094,-.4986107602930034,-.9692436362808796,1.8759675015077202,.04155505740717559,.05563007969699366,-.20397695888897652,1.0569715142428786],A),jt=A=>zt([.41239079926595934,.357584339383878,.1804807884018343,.21263900587151027,.715168678767756,.07219231536073371,.01933081871559182,.11919477979462598,.9505321522496607],A),Zt=A=>A.map(A=>{let e=A<0?-1:1,t=Math.abs(A);return t>.0031308?e*(1.055*t**(1/2.4)-.055):12.92*A}),qt=A=>A.map(A=>{let e=A<0?-1:1,t=Math.abs(A);return t<=.04045?A/12.92:e*((t+.055)/1.055)**2.4}),As=A=>17===A.type||15===A.type,es=A=>16===A.type||As(A)||ts(A),ts=A=>17===A.type&&void 0!==A._calcPercentage,ss=A=>18===A.type&&"calc"===A.name,rs=A=>{let e=ns(A,0);if(!e)return null;let t=ns(A,100);if(!t)return null;let s=e.number,r=t.number-s;return 0===r?e:{type:17,number:s,flags:4,_calcPercentage:r,_calcPixelOffset:s}},is=A=>ss(A)?rs(A):es(A)?A:null,ns=(A,e=0)=>{let t=A=>{let s="";for(let r of A)if(31!==r.type)if(18===r.type){if("calc"!==r.name)return null;{let A=t(r.values);if(null===A)return null;s+=`(${A})`}}else if(17===r.type)s+=r.number.toString();else if(15===r.type)"px"===r.unit?s+=r.number.toString():"rem"===r.unit||"em"===r.unit?s+=(16*r.number).toString():s+=r.number.toString();else if(16===r.type)s+=(r.number/100*e).toString();else if(6===r.type){let A=r.value;"+"===A||"-"===A||"*"===A||"/"===A?s+=` ${A} `:"("===A?s+="(":")"===A&&(s+=")")}return s};try{let e=t(A.values);if(null===e||""===e.trim())return null;let s=Wt(e);if("number"==typeof s&&!isNaN(s))return{type:17,number:s,flags:4}}catch{return null}return null},os=A=>A.length>1?[A[0],A[1]]:[A[0]],as={type:17,number:0,flags:4},ls={type:16,number:50,flags:4},cs={type:16,number:100,flags:4},ds=(A,e,t)=>{let[s,r]=A;return[ps(s,e),ps(typeof r<"u"?r:s,t)]},ps=(A,e)=>{if(ts(A))return A._calcPercentage/100*e+A._calcPixelOffset;if(16===A.type)return A.number/100*e;if(Tt(A))switch(A.unit){case"rem":case"em":return 16*A.number;default:return A.number}return A.number},hs="grad",us="turn",gs={name:"angle",parse:(A,e)=>{if(15===e.type)switch(e.unit){case"deg":return Math.PI*e.number/180;case hs:return Math.PI/200*e.number;case"rad":return e.number;case us:return 2*Math.PI*e.number}throw new Error("Unsupported angle type")}},Bs=A=>15===A.type&&("deg"===A.unit||A.unit===hs||"rad"===A.unit||A.unit===us),ws=A=>{switch(A.filter(Ot).map(A=>A.value).join(" ")){case"to bottom right":case"to right bottom":case"left top":case"top left":return[as,as];case"to top":case"bottom":return fs(0);case"to bottom left":case"to left bottom":case"right top":case"top right":return[as,cs];case"to right":case"left":return fs(90);case"to top left":case"to left top":case"right bottom":case"bottom right":return[cs,cs];case"to bottom":case"top":return fs(180);case"to top right":case"to right top":case"left bottom":case"bottom left":return[cs,as];case"to left":case"right":return fs(270)}return 0},fs=A=>Math.PI*A/180,ms=A=>!(255&A),bs=A=>{let e=255&A,t=255&A>>8,s=255&A>>16,r=255&A>>24;return e<255?`rgba(${r},${s},${t},${e/255})`:`rgb(${r},${s},${t})`},Cs=(A,e,t,s)=>(A<<24|e<<16|t<<8|Math.round(255*s))>>>0,ys=(A,e)=>{if(17===A.type)return A.number;if(16===A.type){let t=3===e?1:255;return 3===e?A.number/100*t:Math.round(A.number/100*t)}return 0},Qs=A=>"from"===(20===A[0].type?A[0].value:"unknown"),Fs=A=>{let e=_t([A[0],A[1],A[2]]);return xs([e[0],e[1],e[2],A[3]])},Us=(A,e)=>{if(Qs(e.filter(Gt)))throw new Error("Relative color not supported for lab()");let[t,s,r,i]=Ls(e),n=Zt(_t(Ns([t,s,r])));return Cs(Jt(Math.round(255*n[0]),0,255),Jt(Math.round(255*n[1]),0,255),Jt(Math.round(255*n[2]),0,255),i)},vs=(A,e)=>{if(Qs(e.filter(Gt)))throw new Error("Relative color not supported for oklab()");let[t,s,r,i]=Ls(e),n=Zt(_t(Ps([t,s,r])));return Cs(Jt(Math.round(255*n[0]),0,255),Jt(Math.round(255*n[1]),0,255),Jt(Math.round(255*n[2]),0,255),i)},Es=(A,e)=>{if(Qs(e.filter(Gt)))throw new Error("Relative color not supported for oklch()");let[t,s,r,i]=Ms(e),n=Zt(_t(Ps(Os([t,s,r]))));return Cs(Jt(Math.round(255*n[0]),0,255),Jt(Math.round(255*n[1]),0,255),Jt(Math.round(255*n[2]),0,255),i)},ks=(A,e)=>{if(Qs(e.filter(Gt)))throw new Error("Relative color not supported for lch()");let[t,s,r,i]=Ss(e),n=Zt(_t(Ns(Os([t,s,r]))));return Cs(Jt(Math.round(255*n[0]),0,255),Jt(Math.round(255*n[1]),0,255),Jt(Math.round(255*n[2]),0,255),i)},Hs=(A,e)=>{let[t,s,r,i]=e.filter(Gt);return[(17===t.type?fs(t.number):gs.parse(A,t))/(2*Math.PI),es(s)?s.number/100:0,es(r)?r.number/100:0,typeof i<"u"&&es(i)?ps(i,1):1]},Is=(A,e)=>{if(Qs(e))throw new Error("Relative color not supported for hsl()");let[t,s,r,i]=Hs(A,e),n=Rs([t,s,r]);return Cs(255*n[0],255*n[1],255*n[2],0===s?1:i)},Ss=A=>{let e=A.filter(Gt);return[es(e[0])?e[0].number:0,es(e[1])?e[1].number:0,Rt(e[2])||Tt(e[2])?e[2].number:0,typeof e[4]<"u"&&es(e[4])?ps(e[4],1):1]},Ls=A=>{let e=A.filter(Gt);return[16===e[0].type?e[0].number/100:Rt(e[0])?e[0].number:0,16===e[1].type?e[1].number/100:Rt(e[1])?e[1].number:0,Rt(e[2])||Tt(e[2])?e[2].number:0,typeof e[4]<"u"&&es(e[4])?ps(e[4],1):1]},Ms=A=>{let e=A.filter(Gt);return[16===e[0].type?e[0].number/100:Rt(e[0])?e[0].number:0,16===e[1].type?e[1].number/100:Rt(e[1])?e[1].number:0,Rt(e[2])||Tt(e[2])?e[2].number:0,typeof e[4]<"u"&&es(e[4])?ps(e[4],1):1]},Ds=A=>zt([1.0479297925449969,.022946870601609652,-.05019226628920524,.02962780877005599,.9904344267538799,-.017073799063418826,-.009243040646204504,.015055191490298152,.7518742814281371],A),Ks=A=>zt([.955473421488075,-.02309845494876471,.06325924320057072,-.0283697093338637,1.0099953980813041,.021041441191917323,.012314014864481998,-.020507649298898964,1.330365926242124],A),Ts=(A,e,t)=>(t<0&&(t+=1),t>=1&&(t-=1),t<1/6?(e-A)*t*6+A:t<.5?e:t<2/3?6*(e-A)*(2/3-t)+A:A),Rs=([A,e,t])=>{if(0===e)return[255*t,255*t,255*t];let s=t<=.5?t*(e+1):t+e-t*e,r=2*t-s;return[Ts(r,s,A+1/3),Ts(r,s,A),Ts(r,s,A-1/3)]},Os=([A,e,t])=>(e<0&&(e=0),isNaN(t)&&(t=0),[A,e*Math.cos(t*Math.PI/180),e*Math.sin(t*Math.PI/180)]),Ps=A=>zt([1.2268798758459243,-.5578149944602171,.2813910456659647,-.0405757452148008,1.112286803280317,-.0717110580655164,-.0763729366746601,-.4214933324022432,1.5869240198367816],zt([1,.3963377773761749,.2158037573099136,1,-.1055613458156586,-.0638541728258133,1,-.0894841775298119,-1.2914855480194092],A).map(A=>A**3)),Ns=A=>{let e=(A[0]+16)/116,t=A[1]/500+e,s=e-A[2]/200,r=24389/27,i=24/116,n=[.3457*(t>i?t**3:(116*t-16)/r)/.3585,A[0]>8?e**3:A[0]/r,.2958*(s>i?s**3:(116*s-16)/r)/.3585];return Ks([n[0],n[1],n[2]])},Vs=A=>Ks([A[0],A[1],A[2]]),$s=A=>zt([.4865709486482162,.26566769316909306,.1982172852343625,.2289745640697488,.6917385218365064,.079286914093745,0,.04511338185890264,1.043944368900976],A),Ys=A=>zt([2.493496911941425,-.9313836179191239,-.40271078445071684,-.8294889695615747,1.7626640603183463,.023624685841943577,.03584583024378447,-.07617238926804182,.9568845240076872],A),Ws=A=>A.map(A=>{let e=A<0?-1:1;return A*e<=.04045?A/12.92:e*((A+.055)/1.055)**2.4||0}),Js=A=>Zt(A),zs=A=>{let e=Ws([A[0],A[1],A[2]]);return $s([e[0],e[1],e[2]])},_s=A=>zt([2.0415879038107465,-.5650069742788596,-.34473135077832956,-.9692436362808795,1.8759675015077202,.04155505740717557,.013444280632031142,-.11836239223101838,1.0151749943912054],A),js=A=>zt([.5766690429101305,.1855582379065463,.1882286462349947,.29734497525053605,.6273635662554661,.0752914584939978,.02703136138641234,.07068885253582723,.9913375368376388],A),Zs=A=>{let e=A.map(A=>(A<0?-1:1)*Math.abs(A)**2.19921875);return[e[0],e[1],e[2]]},qs=A=>{let e=A.map(A=>(A<0?-1:1)*Math.abs(A)**.4547069271758437);return[e[0],e[1],e[2]]},Ar=A=>{let e=_t(js(Zs([A[0],A[1],A[2]])));return xs([e[0],e[1],e[2],A[3]])},er=A=>zt([.7977666449006423,.13518129740053308,.0313477341283922,.2880748288194013,.711835234241873,8993693872564e-17,0,0,.8251046025104602],A),tr=A=>zt([1.3457868816471583,-.25557208737979464,-.05110186497554526,-.5446307051249019,1.5082477428451468,.02052744743642139,0,0,1.2119675456389452],A),sr=A=>A.map(A=>A<16/512?A/16:A**1.8),rr=A=>A.map(A=>A>1/512?A**(1/1.8):16*A),ir=A=>{let e=sr([A[0],A[1],A[2]]);return Ks(er([e[0],e[1],e[2]]))},nr=1.09929682680944,or=.018053968510807,ar=A=>A.map(function(A){return A<4.5*or?A/4.5:Math.pow((A+nr-1)/nr,1/.45)}),lr=A=>A.map(function(A){return A>=or?nr*Math.pow(A,.45)-(nr-1):4.5*A}),cr=A=>zt([.6369580483012914,.14461690358620832,.1688809751641721,.2627002120112671,.6779980715188708,.05930171646986196,0,.028072693049087428,1.060985057710791],A),dr=A=>zt([1.716651187971268,-.355670783776392,-.25336628137366,-.666684351832489,1.616481236634939,.0157685458139111,.017639857445311,-.042770613257809,.942103121235474],A),pr=A=>{let e=ar([A[0],A[1],A[2]]);return cr([e[0],e[1],e[2]])},hr={name:"color",parse:(A,e)=>{if(18===e.type){let t=br[e.name];if(typeof t>"u")throw new Error(`Attempting to parse an unsupported color function "${e.name}"`);return t(A,e.values)}if(5===e.type){let[A,t,s,r]=ur(e);return Cs(A,t,s,r)}if(20===e.type){let A=yr[e.value.toUpperCase()];if(typeof A<"u")return A}return yr.TRANSPARENT}},ur=A=>{if(3===A.value.length){let e=A.value.substring(0,1),t=A.value.substring(1,2),s=A.value.substring(2,3);return[parseInt(e+e,16),parseInt(t+t,16),parseInt(s+s,16),1]}if(4===A.value.length){let e=A.value.substring(0,1),t=A.value.substring(1,2),s=A.value.substring(2,3),r=A.value.substring(3,4);return[parseInt(e+e,16),parseInt(t+t,16),parseInt(s+s,16),parseInt(r+r,16)/255]}if(6===A.value.length){let e=A.value.substring(0,2),t=A.value.substring(2,4),s=A.value.substring(4,6);return[parseInt(e,16),parseInt(t,16),parseInt(s,16),1]}if(8===A.value.length){let e=A.value.substring(0,2),t=A.value.substring(2,4),s=A.value.substring(4,6),r=A.value.substring(6,8);return[parseInt(e,16),parseInt(t,16),parseInt(s,16),parseInt(r,16)/255]}return[0,0,0,1]},Br=(A,e)=>{let t=e.filter(Gt),s=20===t[0].type?t[0].value:"unknown";if(Qs(t)){let e=(A,e)=>{if(Rt(e))return e.number;if(Ot(e))return A[t=e.value,"r"===t||"x"===t?0:"g"===t||"y"===t?1:2];var t;let s=A=>{let e=A.filter(Gt),t="(";for(let A of e)t+=18===A.type&&"calc"===A.name?s(A.values):Rt(A)?A.number:6===A.type||Ot(A)?A.value:"";return t+=")",t};if(18===e.type){let t=e.values.filter(Gt);if("calc"===e.name)return Wt(s(t).replace(/r|x/,A[0].toString()).replace(/g|y/,A[1].toString()).replace(/b|z/,A[2].toString()))}return null},s=18===t[1].type?t[1].name:Ot(t[1])||5===t[1].type?"rgb":"unknown",r=Ot(t[2])?t[2].value:"unknown",i=18===t[1].type?t[1].values:Ot(t[1])?[t[1]]:[];if(Ot(t[1])){if(typeof yr[t[1].value.toUpperCase()]>"u")throw new Error("Attempting to use unknown color in relative color 'from'");{let e=Cr(A,t[1].value),s=255&e;i=[{type:17,number:255&e>>24,flags:1},{type:17,number:255&e>>16,flags:1},{type:17,number:255&e>>8,flags:1},{type:17,number:s>1?s/255:s,flags:1}]}}else if(5===t[1].type){let[A,e,s,r]=ur(t[1]);i=[{type:17,number:A,flags:1},{type:17,number:e,flags:1},{type:17,number:s,flags:1},{type:17,number:r>1?r/255:r,flags:1}]}if(0===i.length)throw new Error("Attempting to use unknown color in relative color 'from'");if("unknown"===r)throw new Error("Attempting to use unknown colorspace in relative color 'to'");let n=fr[s],o=mr[r],a=wr[r];if(typeof n>"u")throw new Error(`Attempting to parse an unsupported color space "${s}" for color() function`);if(typeof o>"u")throw new Error(`Attempting to parse an unsupported color space "${r}" for color() function`);let l=o(n(A,i)),c=e(l,t[3]),d=e(l,t[4]),p=e(l,t[5]),h=t.length>6&&6===t[6].type&&"/"===t[6].value&&Rt(t[7])?t[7].number:1;if(null===c||null===d||null===p)throw new Error("Invalid relative color in color() function");return a([c,d,p,h])}{let A=s,e=wr[A];if(typeof e>"u")throw new Error(`Attempting to parse an unsupported color space "${A}" for color() function`);return e([Rt(t[1])?t[1].number:0,Rt(t[2])?t[2].number:0,Rt(t[3])?t[3].number:0,t.length>4&&6===t[4].type&&"/"===t[4].value&&Rt(t[5])?t[5].number:1])}},wr={srgb:A=>Cs(Jt(Math.round(255*A[0]),0,255),Jt(Math.round(255*A[1]),0,255),Jt(Math.round(255*A[2]),0,255),Jt(A[3],0,1)),"srgb-linear":xs=([A,e,t,s])=>{let r=Zt([A,e,t]);return Cs(Jt(Math.round(255*r[0]),0,255),Jt(Math.round(255*r[1]),0,255),Jt(Math.round(255*r[2]),0,255),s)},"display-p3":A=>{let e=zs([A[0],A[1],A[2]]);return Fs([e[0],e[1],e[2],A[3]])},"a98-rgb":Ar,"prophoto-rgb":A=>{let e=ir([A[0],A[1],A[2]]);return Fs([e[0],e[1],e[2],A[3]])},xyz:Xs=A=>Fs([A[0],A[1],A[2],A[3]]),"xyz-d50":A=>{let e=Vs([A[0],A[1],A[2]]);return Fs([e[0],e[1],e[2],A[3]])},"xyz-d65":Xs,rec2020:A=>{let e=pr([A[0],A[1],A[2]]);return Fs([e[0],e[1],e[2],A[3]])}},fr={rgb:(A,e)=>{let t=e.filter(Gt);if(3===t.length){let[A,e,s]=t.map(ys),r=qt([A/255,e/255,s/255]),[i,n,o]=jt([r[0],r[1],r[2]]);return[i,n,o,1]}if(4===t.length){let[A,e,s,r]=t.map(ys),i=qt([A/255,e/255,s/255]),[n,o,a]=jt([i[0],i[1],i[2]]);return[n,o,a,r]}return[0,0,0,1]},hsl:(A,e)=>{let[t,s,r,i]=Hs(A,e),n=qt(Rs([t,s,r])),[o,a,l]=jt([n[0],n[1],n[2]]);return[o,a,l,i]},lab:(A,e)=>{let[t,s,r,i]=Ls(e),[n,o,a]=Ns([t,s,r]);return[n,o,a,i]},lch:(A,e)=>{let[t,s,r,i]=Ss(e),[n,o,a]=Ns(Os([t,s,r]));return[n,o,a,i]},oklab:(A,e)=>{let[t,s,r,i]=Ls(e),[n,o,a]=Ps([t,s,r]);return[n,o,a,i]},oklch:(A,e)=>{let[t,s,r,i]=Ms(e),[n,o,a]=Ps(Os([t,s,r]));return[n,o,a,i]}},mr={srgb:A=>{let[e,t,s]=Zt(_t([A[0],A[1],A[2]]));return[e,t,s,A[3]]},"srgb-linear":A=>{let[e,t,s]=_t([A[0],A[1],A[2]]);return[Jt(Math.round(255*e),0,255),Jt(Math.round(255*t),0,255),Jt(Math.round(255*s),0,255),A[3]]},"display-p3":A=>{let[e,t,s]=Js(Ys([A[0],A[1],A[2]]));return[e,t,s,A[3]]},"a98-rgb":A=>{let[e,t,s]=qs(_s([A[0],A[1],A[2]]));return[e,t,s,A[3]]},"prophoto-rgb":A=>{let[e,t,s]=rr(tr(Ds([A[0],A[1],A[2]])));return[e,t,s,A[3]]},xyz:Gs=A=>A,"xyz-d50":A=>{let[e,t,s]=Ds([A[0],A[2],A[3]]);return[e,t,s,A[3]]},"xyz-d65":Gs,rec2020:A=>{let[e,t,s]=lr(dr([A[0],A[1],A[2]]));return[e,t,s,A[3]]}},br={hsl:Is,hsla:Is,rgb:gr=(A,e)=>{let t=e.filter(Gt);if(Qs(t))throw new Error("Relative color not supported for rgb()");if(3===t.length){let[A,e,s]=t.map(ys);return Cs(A,e,s,1)}if(4===t.length){let[A,e,s,r]=t.map(ys);return Cs(A,e,s,r)}return 5===t.length&&6===t[3].type&&"/"===t[3].value?Cs(ys(t[0],0),ys(t[1],1),ys(t[2],2),ys(t[4],3)):0},rgba:gr,lch:ks,oklch:Es,oklab:vs,lab:Us,color:Br},Cr=(A,e)=>hr.parse(A,Kt.create(e).parseComponentValue()),yr={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199},Qr=A=>A.nodeType===Node.ELEMENT_NODE,xr=A=>A.nodeType===Node.TEXT_NODE,Fr=A=>"object"==typeof A.className,Ur=A=>Qr(A)&&typeof A.style<"u"&&!Fr(A),vr=A=>"INPUT"===A.tagName,Er=A=>"HTML"===A.tagName,kr=A=>"svg"===A.tagName,Hr=A=>"BODY"===A.tagName,Ir=A=>"CANVAS"===A.tagName,Sr=A=>"VIDEO"===A.tagName,Lr=A=>"IMG"===A.tagName,Mr=A=>"IFRAME"===A.tagName,Dr=A=>"STYLE"===A.tagName,Kr=A=>"SCRIPT"===A.tagName,Tr=A=>"TEXTAREA"===A.tagName,Rr=A=>"SELECT"===A.tagName,Or=A=>"SLOT"===A.tagName,Pr=A=>"LI"===A.tagName,Nr=A=>"OL"===A.tagName,Vr=A=>!Fr(A)&&A.tagName.indexOf("-")>0,Gr=new Set(["IMG","VIDEO","AUDIO","CANVAS","IFRAME","INPUT","TEXTAREA","SELECT","BR","HR","META","LINK","BASE","COL","SOURCE","TRACK","WBR","AREA","PARAM","EMBED","OBJECT"]),Xr=A=>!Fr(A)&&!Gr.has(A.tagName),$r={name:"list-style-type",initialValue:"none",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"disc":return 0;case"circle":return 1;case"square":return 2;case"decimal":return 3;case"cjk-decimal":return 4;case"decimal-leading-zero":return 5;case"lower-roman":return 6;case"upper-roman":return 7;case"lower-greek":return 8;case"lower-alpha":return 9;case"upper-alpha":return 10;case"arabic-indic":return 11;case"armenian":return 12;case"bengali":return 13;case"cambodian":return 14;case"cjk-earthly-branch":return 15;case"cjk-heavenly-stem":return 16;case"cjk-ideographic":return 17;case"devanagari":return 18;case"ethiopic-numeric":return 19;case"georgian":return 20;case"gujarati":return 21;case"gurmukhi":return 22;case"hebrew":return 52;case"hiragana":return 23;case"hiragana-iroha":return 24;case"japanese-formal":return 25;case"japanese-informal":return 26;case"kannada":return 27;case"katakana":return 28;case"katakana-iroha":return 29;case"khmer":return 30;case"korean-hangul-formal":return 31;case"korean-hanja-formal":return 32;case"korean-hanja-informal":return 33;case"lao":return 34;case"lower-armenian":return 35;case"malayalam":return 36;case"mongolian":return 37;case"myanmar":return 38;case"oriya":return 39;case"persian":return 40;case"simp-chinese-formal":return 41;case"simp-chinese-informal":return 42;case"tamil":return 43;case"telugu":return 44;case"thai":return 45;case"tibetan":return 46;case"trad-chinese-formal":return 47;case"trad-chinese-informal":return 48;case"upper-armenian":return 49;case"disclosure-open":return 50;case"disclosure-closed":return 51;default:return-1}}},Yr=(A,e)=>0!==(A&e),Wr=class{constructor(){this.counters={}}getCounterValue(A){let e=this.counters[A];return e&&e.length?e[e.length-1]:1}getCounterValues(A){return this.counters[A]||[]}pop(A){A.forEach(A=>this.counters[A].pop())}parse(A){let e=A.counterIncrement,t=A.counterReset,s=!0;null!==e&&e.forEach(A=>{let e=this.counters[A.counter];e&&0!==A.increment&&(s=!1,e.length||e.push(1),e[Math.max(0,e.length-1)]+=A.increment)});let r=[];return s&&t.forEach(A=>{let e=this.counters[A.counter];r.push(A.counter),e||(e=this.counters[A.counter]=[]),e.push(A.reset)}),r}},Jr={integers:[1e3,900,500,400,100,90,50,40,10,9,5,4,1],values:["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"]},zr={integers:[9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u0554","\u0553","\u0552","\u0551","\u0550","\u054f","\u054e","\u054d","\u054c","\u054b","\u054a","\u0549","\u0548","\u0547","\u0546","\u0545","\u0544","\u0543","\u0542","\u0541","\u0540","\u053f","\u053e","\u053d","\u053c","\u053b","\u053a","\u0539","\u0538","\u0537","\u0536","\u0535","\u0534","\u0533","\u0532","\u0531"]},_r={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,400,300,200,100,90,80,70,60,50,40,30,20,19,18,17,16,15,10,9,8,7,6,5,4,3,2,1],values:["\u05d9\u05f3","\u05d8\u05f3","\u05d7\u05f3","\u05d6\u05f3","\u05d5\u05f3","\u05d4\u05f3","\u05d3\u05f3","\u05d2\u05f3","\u05d1\u05f3","\u05d0\u05f3","\u05ea","\u05e9","\u05e8","\u05e7","\u05e6","\u05e4","\u05e2","\u05e1","\u05e0","\u05de","\u05dc","\u05db","\u05d9\u05d8","\u05d9\u05d7","\u05d9\u05d6","\u05d8\u05d6","\u05d8\u05d5","\u05d9","\u05d8","\u05d7","\u05d6","\u05d5","\u05d4","\u05d3","\u05d2","\u05d1","\u05d0"]},jr={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u10f5","\u10f0","\u10ef","\u10f4","\u10ee","\u10ed","\u10ec","\u10eb","\u10ea","\u10e9","\u10e8","\u10e7","\u10e6","\u10e5","\u10e4","\u10f3","\u10e2","\u10e1","\u10e0","\u10df","\u10de","\u10dd","\u10f2","\u10dc","\u10db","\u10da","\u10d9","\u10d8","\u10d7","\u10f1","\u10d6","\u10d5","\u10d4","\u10d3","\u10d2","\u10d1","\u10d0"]},Zr=(A,e,t,s,r,i)=>A<e||A>t?oi(A,r,i.length>0):s.integers.reduce((e,t,r)=>{for(;A>=t;)A-=t,e+=s.values[r];return e},"")+i,qr=(A,e,t,s)=>{let r="";do{t||A--,r=s(A)+r,A/=e}while(A*e>=e);return r},Ai=(A,e,t,s,r)=>{let i=t-e+1;return(A<0?"-":"")+(qr(Math.abs(A),i,s,A=>jA(Math.floor(A%i)+e))+r)},ei=(A,e,t=". ")=>{let s=e.length;return qr(Math.abs(A),s,!1,A=>e[Math.floor(A%s)])+t},ti=(A,e,t,s,r,i)=>{if(A<-9999||A>9999)return oi(A,4,r.length>0);let n=Math.abs(A),o=r;if(0===n)return e[0]+o;for(let s=0;n>0&&s<=4;s++){let r=n%10;0===r&&Yr(i,1)&&""!==o?o=e[r]+o:r>1||1===r&&0===s||1===r&&1===s&&Yr(i,2)||1===r&&1===s&&Yr(i,4)&&A>100||1===r&&s>1&&Yr(i,8)?o=e[r]+(s>0?t[s-1]:"")+o:1===r&&s>0&&(o=t[s-1]+o),n=Math.floor(n/10)}return(A<0?s:"")+o},si="\u5341\u767e\u5343\u842c",ri="\u62fe\u4f70\u4edf\u842c",ii="\u30de\u30a4\u30ca\u30b9",ni="\ub9c8\uc774\ub108\uc2a4",oi=(A,e,t)=>{let s=t?". ":"",r=t?"\u3001":"",i=t?", ":"",n=t?" ":"";switch(e){case 0:return"\u2022"+n;case 1:return"\u25e6"+n;case 2:return"\u25fe"+n;case 5:let e=Ai(A,48,57,!0,s);return e.length<4?`0${e}`:e;case 4:return ei(A,"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d",r);case 6:return Zr(A,1,3999,Jr,3,s).toLowerCase();case 7:return Zr(A,1,3999,Jr,3,s);case 8:return Ai(A,945,969,!1,s);case 9:return Ai(A,97,122,!1,s);case 10:return Ai(A,65,90,!1,s);case 11:return Ai(A,1632,1641,!0,s);case 12:case 49:return Zr(A,1,9999,zr,3,s);case 35:return Zr(A,1,9999,zr,3,s).toLowerCase();case 13:return Ai(A,2534,2543,!0,s);case 14:case 30:return Ai(A,6112,6121,!0,s);case 15:return ei(A,"\u5b50\u4e11\u5bc5\u536f\u8fb0\u5df3\u5348\u672a\u7533\u9149\u620c\u4ea5",r);case 16:return ei(A,"\u7532\u4e59\u4e19\u4e01\u620a\u5df1\u5e9a\u8f9b\u58ec\u7678",r);case 17:case 48:return ti(A,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d",si,"\u8ca0",r,14);case 47:return ti(A,"\u96f6\u58f9\u8cb3\u53c3\u8086\u4f0d\u9678\u67d2\u634c\u7396",ri,"\u8ca0",r,15);case 42:return ti(A,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d",si,"\u8d1f",r,14);case 41:return ti(A,"\u96f6\u58f9\u8d30\u53c1\u8086\u4f0d\u9646\u67d2\u634c\u7396",ri,"\u8d1f",r,15);case 26:return ti(A,"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u4e07",ii,r,0);case 25:return ti(A,"\u96f6\u58f1\u5f10\u53c2\u56db\u4f0d\u516d\u4e03\u516b\u4e5d","\u62fe\u767e\u5343\u4e07",ii,r,7);case 31:return ti(A,"\uc601\uc77c\uc774\uc0bc\uc0ac\uc624\uc721\uce60\ud314\uad6c","\uc2ed\ubc31\ucc9c\ub9cc",ni,i,7);case 33:return ti(A,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u842c",ni,i,0);case 32:return ti(A,"\u96f6\u58f9\u8cb3\u53c3\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u62fe\u767e\u5343",ni,i,7);case 18:return Ai(A,2406,2415,!0,s);case 20:return Zr(A,1,19999,jr,3,s);case 21:return Ai(A,2790,2799,!0,s);case 22:return Ai(A,2662,2671,!0,s);case 52:return Zr(A,1,10999,_r,3,s);case 23:return ei(A,"\u3042\u3044\u3046\u3048\u304a\u304b\u304d\u304f\u3051\u3053\u3055\u3057\u3059\u305b\u305d\u305f\u3061\u3064\u3066\u3068\u306a\u306b\u306c\u306d\u306e\u306f\u3072\u3075\u3078\u307b\u307e\u307f\u3080\u3081\u3082\u3084\u3086\u3088\u3089\u308a\u308b\u308c\u308d\u308f\u3090\u3091\u3092\u3093");case 24:return ei(A,"\u3044\u308d\u306f\u306b\u307b\u3078\u3068\u3061\u308a\u306c\u308b\u3092\u308f\u304b\u3088\u305f\u308c\u305d\u3064\u306d\u306a\u3089\u3080\u3046\u3090\u306e\u304a\u304f\u3084\u307e\u3051\u3075\u3053\u3048\u3066\u3042\u3055\u304d\u3086\u3081\u307f\u3057\u3091\u3072\u3082\u305b\u3059");case 27:return Ai(A,3302,3311,!0,s);case 28:return ei(A,"\u30a2\u30a4\u30a6\u30a8\u30aa\u30ab\u30ad\u30af\u30b1\u30b3\u30b5\u30b7\u30b9\u30bb\u30bd\u30bf\u30c1\u30c4\u30c6\u30c8\u30ca\u30cb\u30cc\u30cd\u30ce\u30cf\u30d2\u30d5\u30d8\u30db\u30de\u30df\u30e0\u30e1\u30e2\u30e4\u30e6\u30e8\u30e9\u30ea\u30eb\u30ec\u30ed\u30ef\u30f0\u30f1\u30f2\u30f3",r);case 29:return ei(A,"\u30a4\u30ed\u30cf\u30cb\u30db\u30d8\u30c8\u30c1\u30ea\u30cc\u30eb\u30f2\u30ef\u30ab\u30e8\u30bf\u30ec\u30bd\u30c4\u30cd\u30ca\u30e9\u30e0\u30a6\u30f0\u30ce\u30aa\u30af\u30e4\u30de\u30b1\u30d5\u30b3\u30a8\u30c6\u30a2\u30b5\u30ad\u30e6\u30e1\u30df\u30b7\u30f1\u30d2\u30e2\u30bb\u30b9",r);case 34:return Ai(A,3792,3801,!0,s);case 37:return Ai(A,6160,6169,!0,s);case 38:return Ai(A,4160,4169,!0,s);case 39:return Ai(A,2918,2927,!0,s);case 40:return Ai(A,1776,1785,!0,s);case 43:return Ai(A,3046,3055,!0,s);case 44:return Ai(A,3174,3183,!0,s);case 45:return Ai(A,3664,3673,!0,s);case 46:return Ai(A,3872,3881,!0,s);default:return Ai(A,48,57,!0,s)}},ai={name:"background-clip",initialValue:"border-box",prefix:!1,type:1,parse:(A,e)=>e.map(A=>{if(Ot(A))switch(A.value){case"padding-box":return 1;case"content-box":return 2;case"text":return 3}return 0})},li={name:"background-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},ci=(A,e)=>{let t=hr.parse(A,e[0]),s=e[1];return s&&es(s)?{color:t,stop:s}:{color:t,stop:null}},di=(A,e)=>{let t=A[0],s=A[A.length-1];null===t.stop&&(t.stop=as),null===s.stop&&(s.stop=cs);let r=[],i=0;for(let t=0;t<A.length;t++){let s=A[t].stop;if(null!==s){let A=ps(s,e);A>i?r.push(A):r.push(i),i=A}else r.push(null)}let n=null;for(let A=0;A<r.length;A++){let e=r[A];if(null===e)null===n&&(n=A);else if(null!==n){let t=A-n,s=(e-r[n-1])/(t+1);for(let A=1;A<=t;A++)r[n+A-1]=s*A;n=null}}return A.map(({color:A},t)=>({color:A,stop:Math.max(Math.min(1,r[t]/e),0)}))},pi=(A,e,t)=>{let s=e/2,r=t/2,i=ps(A[0],e)-s,n=r-ps(A[1],t);return(Math.atan2(n,i)+2*Math.PI)%(2*Math.PI)},hi=(A,e,t)=>{let s="number"==typeof A?A:pi(A,e,t),r=Math.abs(e*Math.sin(s))+Math.abs(t*Math.cos(s)),i=e/2,n=t/2,o=r/2,a=Math.sin(s-Math.PI/2)*o,l=Math.cos(s-Math.PI/2)*o;return[r,i-l,i+l,n-a,n+a]},ui=(A,e)=>Math.sqrt(A*A+e*e),gi=(A,e,t,s,r)=>[[0,0],[0,e],[A,0],[A,e]].reduce((A,e)=>{let[i,n]=e,o=ui(t-i,s-n);return(r?o<A.optimumDistance:o>A.optimumDistance)?{optimumCorner:e,optimumDistance:o}:A},{optimumDistance:r?1/0:-1/0,optimumCorner:null}).optimumCorner,Bi=(A,e,t,s,r)=>{let i=0,n=0;switch(A.size){case 0:0===A.shape?i=n=Math.min(Math.abs(e),Math.abs(e-s),Math.abs(t),Math.abs(t-r)):1===A.shape&&(i=Math.min(Math.abs(e),Math.abs(e-s)),n=Math.min(Math.abs(t),Math.abs(t-r)));break;case 2:if(0===A.shape)i=n=Math.min(ui(e,t),ui(e,t-r),ui(e-s,t),ui(e-s,t-r));else if(1===A.shape){let A=Math.min(Math.abs(t),Math.abs(t-r))/Math.min(Math.abs(e),Math.abs(e-s)),[o,a]=gi(s,r,e,t,!0);i=ui(o-e,(a-t)/A),n=A*i}break;case 1:0===A.shape?i=n=Math.max(Math.abs(e),Math.abs(e-s),Math.abs(t),Math.abs(t-r)):1===A.shape&&(i=Math.max(Math.abs(e),Math.abs(e-s)),n=Math.max(Math.abs(t),Math.abs(t-r)));break;case 3:if(0===A.shape)i=n=Math.max(ui(e,t),ui(e,t-r),ui(e-s,t),ui(e-s,t-r));else if(1===A.shape){let A=Math.max(Math.abs(t),Math.abs(t-r))/Math.max(Math.abs(e),Math.abs(e-s)),[o,a]=gi(s,r,e,t,!1);i=ui(o-e,(a-t)/A),n=A*i}}return Array.isArray(A.size)&&(i=ps(A.size[0],s),n=2===A.size.length?ps(A.size[1],r):i),[i,n]},mi="closest-side",bi="farthest-side",Ci="closest-corner",yi="farthest-corner",Qi="circle",xi="ellipse",Fi="cover",Ui="contain",Ei=(A,e)=>({...wi(A,e),type:3}),ki=A=>1===A.type,Hi=A=>2===A.type,Ii=A=>3===A.type,Si={name:"image",parse:(A,e)=>{if(22===e.type){let t={url:e.value,type:0};return A.cache.addImage(e.value),t}if(18===e.type){let t=Li[e.name];if(typeof t>"u")throw new Error(`Attempting to parse an unsupported image function "${e.name}"`);return t(A,e.values)}throw new Error(`Unsupported image type ${e.type}`)}},Li={"linear-gradient":wi=(A,e)=>{let t=fs(180),s=[];return Xt(e).forEach((e,r)=>{if(0===r){let s=e[0];if(20===s.type&&"to"===s.value)return void(t=ws(e));if(Bs(s))return void(t=gs.parse(A,s))}let i=ci(A,e);s.push(i)}),{angle:t,stops:s,type:1}},"-moz-linear-gradient":fi=(A,e)=>{let t=fs(180),s=[];return Xt(e).forEach((e,r)=>{if(0===r){let s=e[0];if(20===s.type&&-1!==["top","left","right","bottom"].indexOf(s.value))return void(t=ws(e));if(Bs(s))return void(t=(gs.parse(A,s)+fs(270))%fs(360))}let i=ci(A,e);s.push(i)}),{angle:t,stops:s,type:1}},"-ms-linear-gradient":fi,"-o-linear-gradient":fi,"-webkit-linear-gradient":fi,"radial-gradient":(A,e)=>{let t=0,s=3,r=[],i=[];return Xt(e).forEach((e,n)=>{let o=!0;if(0===n){let A=!1;o=e.reduce((e,r)=>{if(A)if(Ot(r))switch(r.value){case"center":return i.push(ls),e;case"top":case"left":return i.push(as),e;case"right":case"bottom":return i.push(cs),e}else(es(r)||As(r))&&i.push(r);else if(Ot(r))switch(r.value){case Qi:return t=0,!1;case xi:return t=1,!1;case"at":return A=!0,!1;case mi:return s=0,!1;case Fi:case bi:return s=1,!1;case Ui:case Ci:return s=2,!1;case yi:return s=3,!1}else if(As(r)||es(r))return Array.isArray(s)||(s=[]),s.push(r),!1;return e},o)}if(o){let t=ci(A,e);r.push(t)}}),{size:s,shape:t,stops:r,position:i,type:2}},"-moz-radial-gradient":vi=(A,e)=>{let t=0,s=3,r=[],i=[];return Xt(e).forEach((e,n)=>{let o=!0;if(0===n?o=e.reduce((A,e)=>{if(Ot(e))switch(e.value){case"center":return i.push(ls),!1;case"top":case"left":return i.push(as),!1;case"right":case"bottom":return i.push(cs),!1}else if(es(e)||As(e))return i.push(e),!1;return A},o):1===n&&(o=e.reduce((A,e)=>{if(Ot(e))switch(e.value){case Qi:return t=0,!1;case xi:return t=1,!1;case Ui:case mi:return s=0,!1;case bi:return s=1,!1;case Ci:return s=2,!1;case Fi:case yi:return s=3,!1}else if(As(e)||es(e))return Array.isArray(s)||(s=[]),s.push(e),!1;return A},o)),o){let t=ci(A,e);r.push(t)}}),{size:s,shape:t,stops:r,position:i,type:2}},"-ms-radial-gradient":vi,"-o-radial-gradient":vi,"-webkit-radial-gradient":vi,"-webkit-gradient":(A,e)=>{let t=fs(180),s=[],r=1;return Xt(e).forEach((e,t)=>{let i=e[0];if(0===t){if(Ot(i)&&"linear"===i.value)return void(r=1);if(Ot(i)&&"radial"===i.value)return void(r=2)}if(18===i.type)if("from"===i.name){let e=hr.parse(A,i.values[0]);s.push({stop:as,color:e})}else if("to"===i.name){let e=hr.parse(A,i.values[0]);s.push({stop:cs,color:e})}else if("color-stop"===i.name){let e=i.values.filter(Gt);if(2===e.length){let t=hr.parse(A,e[1]),r=e[0];Rt(r)&&s.push({stop:{type:16,number:100*r.number,flags:r.flags},color:t})}}}),1===r?{angle:(t+fs(180))%fs(360),stops:s,type:r}:{size:3,shape:0,stops:s,position:[],type:r}},"repeating-linear-gradient":Ei,"-webkit-repeating-linear-gradient":Ei,"-moz-repeating-linear-gradient":Ei,"-ms-repeating-linear-gradient":Ei,"-o-repeating-linear-gradient":Ei},Mi={name:"background-image",initialValue:"none",type:1,prefix:!1,skipCache:!0,parse:(A,e)=>{if(0===e.length)return[];let t=e[0];return 20===t.type&&"none"===t.value?[]:e.filter(A=>Gt(A)&&GA(A)).map(e=>Si.parse(A,e))}},Di={name:"background-origin",initialValue:"border-box",prefix:!1,type:1,parse:(A,e)=>e.map(A=>{if(Ot(A))switch(A.value){case"padding-box":return 1;case"content-box":return 2}return 0})},Ki={name:"background-position",initialValue:"0% 0%",type:1,prefix:!1,parse:(A,e)=>Xt(e).map(A=>A.map(is).filter(A=>null!==A)).map(os)},Ti={name:"background-repeat",initialValue:"repeat",prefix:!1,type:1,parse:(A,e)=>Xt(e).map(A=>A.filter(Ot).map(A=>A.value).join(" ")).map(Ri)},Ri=A=>{switch(A){case"no-repeat":return 1;case"repeat-x":case"repeat no-repeat":return 2;case"repeat-y":case"no-repeat repeat":return 3;default:return 0}},Oi={name:"background-size",initialValue:"0",prefix:!1,type:1,parse:(A,e)=>Xt(e).map(A=>A.map(A=>Pi(A)?A:is(A)).filter(A=>null!==A))},Pi=A=>Ot(A)||es(A),Vi=(Ni=A=>({name:`border-${A}-color`,initialValue:"transparent",prefix:!1,type:3,format:"color"}))("top"),Gi=Ni("right"),Xi=Ni("bottom"),$i=Ni("left"),Wi=(Yi=A=>({name:`border-${A}-radius`,initialValue:"0 0",prefix:!1,type:1,parse:(A,e)=>os(e.filter(es))}))("top-left"),Ji=Yi("top-right"),zi=Yi("bottom-right"),_i=Yi("bottom-left"),Zi=(ji=A=>({name:`border-${A}-style`,initialValue:"solid",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"none":return 0;case"dashed":return 2;case"dotted":return 3;case"double":return 4}return 1}}))("top"),qi=ji("right"),An=ji("bottom"),en=ji("left"),sn=(tn=A=>({name:`border-${A}-width`,initialValue:"0",type:0,prefix:!1,parse:(A,e)=>Tt(e)?e.number:0}))("top"),rn=tn("right"),nn=tn("bottom"),on=tn("left"),an={type:0},ln=A=>{let[e]=A;return e?Ot(e)?"farthest-side"===e.value?"farthest-side":"closest-side":es(e)?e:"closest-side":"closest-side"},cn=A=>{let e=null,t=null;for(let s of A)if(Ot(s))switch(s.value){case"left":e=as;break;case"right":e=cs;break;case"top":t=as;break;case"bottom":t=cs;break;case"center":null===e?e=ls:null===t&&(t=ls)}else es(s)&&(null===e?e=s:null===t&&(t=s));return{cx:e??ls,cy:t??ls}},dn=A=>{let e=[];for(let t of A)if(31!==t.type){if(Ot(t)&&"round"===t.value)break;es(t)&&e.push(t)}let t=e[0]??as,s=e[1]??t;return{type:1,top:t,right:s,bottom:e[2]??t,left:e[3]??s}},pn=A=>{let e=A.filter(Vt),t=e.findIndex(A=>Nt(A,"at")),s=-1===t?e:e.slice(0,t),r=-1===t?[]:e.slice(t+1);return{type:2,radius:ln(s),...cn(r)}},hn=A=>{let e=A.filter(Vt),t=e.findIndex(A=>Nt(A,"at")),s=-1===t?e:e.slice(0,t),r=-1===t?[]:e.slice(t+1);return{type:3,rx:ln(s.slice(0,1)),ry:ln(s.slice(1,2)),...cn(r)}},un=A=>{let e=Xt(A),t=[];for(let A of e){if(1===A.length&&Ot(A[0]))continue;let e=A.filter(es);e.length>=2&&t.push([e[0],e[1]])}return{type:4,points:t}},gn=A=>{let e=A.find(A=>0===A.type);return e?{type:5,d:e.value}:an},Bn={name:"clip-path",initialValue:"none",prefix:!1,type:0,parse:(A,e)=>{if(Ot(e)&&"none"===e.value)return an;if(18===e.type)switch(e.name){case"inset":return dn(e.values);case"circle":return pn(e.values);case"ellipse":return hn(e.values);case"polygon":return un(e.values);case"path":return gn(e.values)}return an}},wn={name:"color",initialValue:"transparent",prefix:!1,type:3,format:"color"},fn={name:"direction",initialValue:"ltr",prefix:!1,type:2,parse:(A,e)=>"rtl"===e?1:0},mn={name:"display",initialValue:"inline-block",prefix:!1,type:1,parse:(A,e)=>e.filter(Ot).reduce((A,e)=>A|bn(e.value),0)},bn=A=>{switch(A){case"block":case"-webkit-box":return 2;case"inline":return 4;case"run-in":return 8;case"flow":return 16;case"flow-root":return 32;case"table":return 64;case"flex":case"-webkit-flex":return 128;case"grid":case"-ms-grid":return 256;case"ruby":return 512;case"subgrid":return 1024;case"list-item":return 2048;case"table-row-group":return 4096;case"table-header-group":return 8192;case"table-footer-group":return 16384;case"table-row":return 32768;case"table-cell":return 65536;case"table-column-group":return 131072;case"table-column":return 262144;case"table-caption":return 524288;case"ruby-base":return 1048576;case"ruby-text":return 2097152;case"ruby-base-container":return 4194304;case"ruby-text-container":return 8388608;case"contents":return 16777216;case"inline-block":return 33554432;case"inline-list-item":return 67108864;case"inline-table":return 134217728;case"inline-flex":return 268435456;case"inline-grid":return 536870912}return 0},Cn={name:"float",initialValue:"none",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"left":return 1;case"right":return 2;case"inline-start":return 3;case"inline-end":return 4}return 0}},yn={name:"letter-spacing",initialValue:"0",prefix:!1,type:0,parse:(A,e)=>20===e.type&&"normal"===e.value?0:17===e.type||15===e.type?e.number:0},Qn={name:"line-break",initialValue:"normal",prefix:!1,type:2,parse:(A,e)=>"strict"===e?"strict":"normal"},xn={name:"line-height",initialValue:"normal",prefix:!1,type:4},Fn=(A,e)=>Ot(A)&&"normal"===A.value?1.2*e:17===A.type?e*A.number:es(A)?ps(A,e):e,Un={name:"list-style-image",initialValue:"none",type:0,prefix:!1,skipCache:!0,parse:(A,e)=>20===e.type&&"none"===e.value?null:Si.parse(A,e)},vn={name:"list-style-position",initialValue:"outside",prefix:!1,type:2,parse:(A,e)=>"inside"===e?0:1},kn=(En=A=>({name:`margin-${A}`,initialValue:"0",prefix:!1,type:4}))("top"),Hn=En("right"),In=En("bottom"),Sn=En("left"),Ln={name:"overflow",initialValue:"visible",prefix:!1,type:1,parse:(A,e)=>e.filter(Ot).map(A=>{switch(A.value){case"hidden":return 1;case"scroll":return 2;case"clip":return 3;case"auto":return 4;default:return 0}})},Mn={name:"overflow-wrap",initialValue:"normal",prefix:!1,type:2,parse:(A,e)=>"break-word"===e?"break-word":"normal"},Kn=(Dn=A=>({name:`padding-${A}`,initialValue:"0",prefix:!1,type:3,format:"length-percentage"}))("top"),Tn=Dn("right"),Rn=Dn("bottom"),On=Dn("left"),Pn={name:"text-align",initialValue:"left",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"right":return 2;case"center":case"justify":return 1;default:return 0}}},Nn={name:"position",initialValue:"static",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"relative":return 1;case"absolute":return 2;case"fixed":return 3;case"sticky":return 4}return 0}},Vn={name:"text-shadow",initialValue:"none",type:1,prefix:!1,parse:(A,e)=>1===e.length&&Nt(e[0],"none")?[]:Xt(e).map(e=>{let t={color:yr.TRANSPARENT,offsetX:as,offsetY:as,blur:as},s=0;for(let r=0;r<e.length;r++){let i=e[r];As(i)?(0===s?t.offsetX=i:1===s?t.offsetY=i:t.blur=i,s++):t.color=hr.parse(A,i)}return t})},Gn={name:"text-transform",initialValue:"none",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"uppercase":return 2;case"lowercase":return 1;case"capitalize":return 3}return 0}},Xn={name:"transform",initialValue:"none",prefix:!0,type:0,parse:(A,e)=>{if(20===e.type&&"none"===e.value)return null;if(18===e.type){let t=$n[e.name];if(typeof t>"u")throw new Error(`Attempting to parse an unsupported transform function "${e.name}"`);return t(A,e.values)}return null}},$n={matrix:(A,e)=>{let t=e.filter(A=>17===A.type).map(A=>A.number);return 6===t.length?t:null},matrix3d:(A,e)=>{let t=e.filter(A=>17===A.type).map(A=>A.number),[s,r,{},{},i,n,{},{},{},{},{},{},o,a,{},{}]=t;return 16===t.length?[s,r,i,n,o,a]:null},rotate:(A,e)=>{if(1!==e.length)return null;let t=e[0],s=0;if(17===t.type&&0===t.number)s=0;else{if(15!==t.type)return null;s=gs.parse(A,t)}let r=Math.cos(s),i=Math.sin(s);return[r,i,-i,r,0,0]}},Wn=[Yn={type:16,number:50,flags:4},Yn],Jn={name:"transform-origin",initialValue:"50% 50%",prefix:!0,type:1,parse:(A,e)=>{let t=e.filter(es);return 2!==t.length?Wn:[t[0],t[1]]}},zn={name:"rotate",initialValue:"none",prefix:!1,type:0,parse:(A,e)=>20===e.type&&"none"===e.value?null:17===e.type&&0===e.number?0:15===e.type?180*gs.parse(A,e)/Math.PI:null},_n={name:"visibility",initialValue:"none",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"hidden":return 1;case"collapse":return 2;default:return 0}}},jn={name:"word-break",initialValue:"normal",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"break-all":return"break-all";case"keep-all":return"keep-all";default:return"normal"}}},Zn={name:"white-space",initialValue:"normal",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"pre":return"pre";case"nowrap":return"nowrap";case"pre-wrap":return"pre-wrap";case"pre-line":return"pre-line";default:return"normal"}}},qn=A=>0!==A,Ao=A=>3===A||4===A,eo={name:"writing-mode",initialValue:"horizontal-tb",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"vertical-rl":return 1;case"vertical-lr":return 2;case"sideways-rl":return 3;case"sideways-lr":return 4;default:return 0}}},to={name:"z-index",initialValue:"auto",prefix:!1,type:0,parse:(A,e)=>{if(20===e.type)return{auto:!0,order:0};if(Rt(e))return{auto:!1,order:e.number};throw new Error("Invalid z-index number parsed")}},so={name:"time",parse:(A,e)=>{if(15===e.type)switch(e.unit.toLowerCase()){case"s":return 1e3*e.number;case"ms":return e.number}throw new Error("Unsupported time type")}},ro={name:"opacity",initialValue:"1",type:0,prefix:!1,parse:(A,e)=>Rt(e)?e.number:1},io={name:"text-decoration-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},no={name:"text-decoration-line",initialValue:"none",prefix:!1,type:1,parse:(A,e)=>e.filter(Ot).map(A=>{switch(A.value){case"underline":return 1;case"overline":return 2;case"line-through":return 3;case"none":return 4}return 0}).filter(A=>0!==A)},oo={name:"text-decoration-style",initialValue:"solid",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"double":return 1;case"dotted":return 2;case"dashed":return 3;case"wavy":return 4;default:return 0}}},ao={name:"text-decoration-thickness",initialValue:"auto",prefix:!1,type:0,parse:(A,e)=>{if(Ot(e))switch(e.value){case"auto":return"auto";case"from-font":return"from-font"}return Tt(e)?e.number:"auto"}},lo={name:"text-underline-offset",initialValue:"auto",prefix:!1,type:0,parse:(A,e)=>Ot(e)&&"auto"===e.value?"auto":Tt(e)?e.number:"auto"},co={name:"font-family",initialValue:"",prefix:!1,type:1,parse:(A,e)=>{let t=[],s=[],r=[],i=!1;return e.forEach(A=>{switch(A.type){case 20:t.push(A.value);break;case 0:i=!0,t.push(A.value);break;case 17:t.push(A.number.toString());break;case 4:s.push(t.join(" ")),r.push(i),i=!1,t.length=0}}),t.length&&(s.push(t.join(" ")),r.push(i)),s.map((A,e)=>r[e]||-1!==A.indexOf(" ")?`'${A.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,"\\a ").replace(/\r/g,"\\d ").replace(/\f/g,"\\c ")}'`:A)}},po={name:"font-size",initialValue:"0",prefix:!1,type:3,format:"length"},ho={name:"font-weight",initialValue:"normal",type:0,prefix:!1,parse:(A,e)=>Rt(e)?e.number:Ot(e)&&"bold"===e.value?700:400},uo={name:"font-variant",initialValue:"none",type:1,prefix:!1,parse:(A,e)=>e.filter(Ot).map(A=>A.value)},go={name:"font-style",initialValue:"normal",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"oblique":return"oblique";case"italic":return"italic";default:return"normal"}}},Bo={name:"content",initialValue:"none",type:1,prefix:!1,parse:(A,e)=>{if(0===e.length)return[];let t=e[0];return 20===t.type&&"none"===t.value?[]:e}},wo=(A,e)=>{let t=[],s=A.filter(Vt);for(let A=0;A<s.length;A++){let r=s[A],i=s[A+1];if(20===r.type){let A=i&&Rt(i)?i.number:e;t.push([r.value,A])}}return t},fo={name:"counter-increment",initialValue:"none",prefix:!0,type:1,parse:(A,e)=>{if(0===e.length)return null;let t=e[0];return 20===t.type&&"none"===t.value?null:wo(e,1).map(([A,e])=>({counter:A,increment:e}))}},mo={name:"counter-reset",initialValue:"none",prefix:!0,type:1,parse:(A,e)=>0===e.length?[]:wo(e,0).filter(([A])=>"none"!==A).map(([A,e])=>({counter:A,reset:e}))},bo={name:"duration",initialValue:"0s",prefix:!1,type:1,parse:(A,e)=>e.filter(Tt).map(e=>so.parse(A,e))},Co={name:"quotes",initialValue:"none",prefix:!0,type:1,parse:(A,e)=>{if(0===e.length)return null;let t=e[0];if(20===t.type&&"none"===t.value)return null;let s=[],r=e.filter(Pt);if(r.length%2!=0)return null;for(let A=0;A<r.length;A+=2){let e=r[A].value,t=r[A+1].value;s.push({open:e,close:t})}return s}},yo=(A,e,t)=>{if(!A)return"";let s=A[Math.min(e,A.length-1)];return s?t?s.open:s.close:""},Qo={name:"box-shadow",initialValue:"none",type:1,prefix:!1,parse:(A,e)=>1===e.length&&Nt(e[0],"none")?[]:Xt(e).map(e=>{let t={color:255,offsetX:as,offsetY:as,blur:as,spread:as,inset:!1},s=0;for(let r=0;r<e.length;r++){let i=e[r];Nt(i,"inset")?t.inset=!0:As(i)?(0===s?t.offsetX=i:1===s?t.offsetY=i:2===s?t.blur=i:t.spread=i,s++):t.color=hr.parse(A,i)}return t})},xo={name:"paint-order",initialValue:"normal",prefix:!1,type:1,parse:(A,e)=>{let t=[];return e.filter(Ot).forEach(A=>{switch(A.value){case"stroke":t.push(1);break;case"fill":t.push(0);break;case"markers":t.push(2)}}),[0,1,2].forEach(A=>{-1===t.indexOf(A)&&t.push(A)}),t}},Fo={name:"-webkit-text-stroke-color",initialValue:"currentcolor",prefix:!1,type:3,format:"color"},Uo={name:"-webkit-text-stroke-width",initialValue:"0",type:0,prefix:!1,parse:(A,e)=>Tt(e)?e.number:0},vo={name:"-webkit-line-clamp",initialValue:"none",prefix:!0,type:0,parse:(A,e)=>20===e.type&&"none"===e.value?0:17===e.type?Math.max(0,Math.floor(e.number)):0},Eo={name:"object-fit",initialValue:"fill",prefix:!1,type:1,parse:(A,e)=>e.filter(Ot).reduce((A,e)=>A|ko(e.value),0)},ko=A=>{switch(A){case"contain":return 2;case"cover":return 4;case"none":return 8;case"scale-down":return 16}return 0},Ho={name:"text-overflow",initialValue:"clip",prefix:!1,type:2,parse:(A,e)=>"ellipsis"===e?1:0},Io={name:"image-rendering",initialValue:"auto",prefix:!1,type:2,parse:(A,e)=>{switch(e.toLowerCase()){case"crisp-edges":case"-webkit-crisp-edges":case"-moz-crisp-edges":return 1;case"pixelated":case"-webkit-optimize-contrast":return 2;case"smooth":case"high-quality":return 3;default:return 0}}},So={NORMAL:"normal",MULTIPLY:"multiply",SCREEN:"screen",OVERLAY:"overlay",DARKEN:"darken",LIGHTEN:"lighten",COLOR_DODGE:"color-dodge",COLOR_BURN:"color-burn",HARD_LIGHT:"hard-light",SOFT_LIGHT:"soft-light",DIFFERENCE:"difference",EXCLUSION:"exclusion",HUE:"hue",SATURATION:"saturation",COLOR:"color",LUMINOSITY:"luminosity"},Lo=new Set(Object.values(So)),Mo={name:"mix-blend-mode",initialValue:"normal",type:2,prefix:!1,parse:(A,e)=>Lo.has(e)?e:So.NORMAL},Do={name:"filter",initialValue:"none",prefix:!1,type:1,parse:(A,e)=>{if(1===e.length&&20===e[0].type&&"none"===e[0].value)return null;let t=[];for(let A of e)if(18===A.type){let e=A,s=Ko(e.values);switch(e.name){case"blur":t.push(`blur(${s}px)`);break;case"brightness":case"contrast":case"invert":case"opacity":case"saturate":case"sepia":t.push(`${e.name}(${s})`);break;case"grayscale":t.push(`grayscale(${s})`);break;case"hue-rotate":t.push(`hue-rotate(${s}deg)`);break;case"drop-shadow":t.push(`drop-shadow(${s})`)}}return t.length>0?t.join(" "):null}},Ko=A=>{let e=[];for(let t of A)31!==t.type&&(15===t.type?e.push(`${t.number}${t.unit}`):17===t.type?e.push(`${t.number}`):16===t.type?e.push(`${t.number}%`):20===t.type?e.push(t.value):5===t.type&&e.push(`#${t.value}`));return e.join(" ")},To={name:"font-variant-ligatures",initialValue:"normal",prefix:!1,type:2,parse:(A,e)=>{switch(e){case"none":return 1;case"common-ligatures":return 2;case"no-common-ligatures":return 3;case"discretionary-ligatures":return 4;case"no-discretionary-ligatures":return 5;case"historical-ligatures":return 6;case"no-historical-ligatures":return 7;case"contextual":return 8;case"no-contextual":return 9;default:return 0}}},Ro={name:"zoom",initialValue:"1",type:0,prefix:!1,parse:(A,e)=>16===e.type?Math.max(0,e.number/100):17===e.type?Math.max(0,e.number):1},Oo={name:"object-position",initialValue:"50% 50%",prefix:!1,type:1,parse:(A,e)=>{let t=[],s=0;for(;s<e.length&&t.length<2;){let A=e[s];if(Ot(A))switch(A.value){case"left":case"top":t.push(as);break;case"center":t.push(ls);break;case"right":case"bottom":t.push(cs)}else es(A)&&t.push(A);s++}for(;t.length<2;)t.push(ls);return[t[0],t[1]]}},Po=new Set(Object.values({NORMAL:"normal",MULTIPLY:"multiply",SCREEN:"screen",OVERLAY:"overlay",DARKEN:"darken",LIGHTEN:"lighten",COLOR_DODGE:"color-dodge",COLOR_BURN:"color-burn",HARD_LIGHT:"hard-light",SOFT_LIGHT:"soft-light",DIFFERENCE:"difference",EXCLUSION:"exclusion",HUE:"hue",SATURATION:"saturation",COLOR:"color",LUMINOSITY:"luminosity"})),No={name:"background-blend-mode",initialValue:"normal",prefix:!1,type:1,parse:(A,e)=>{let t=[],s=e.filter(Gt);for(let A of s)Ot(A)&&Po.has(A.value)&&t.push(A.value);return t.length>0?t:["normal"]}},Vo={name:"border-image-source",initialValue:"none",prefix:!1,type:1,skipCache:!0,parse:(A,e)=>{if(0===e.length)return null;let t=e.filter(A=>Gt(A)&&GA(A));return 0===t.length?null:Si.parse(A,t[0])}},Go=A=>{let e=[...A];return 1===e.length?e.push(e[0],e[0],e[0]):2===e.length?e.push(e[0],e[1]):3===e.length&&e.push(e[1]),e.slice(0,4)},Xo={name:"border-image-slice",initialValue:"100%",prefix:!1,type:1,parse:(A,e)=>{let t=e.filter(Vt),s=[],r=!1,i="percent";for(let A of t)Ot(A)&&"fill"===A.value?r=!0:17===A.type?(s.push(A.number),i="number"):16===A.type&&(s.push(A.number),i="percent");let[n,o,a,l]=Go(s.length>0?s:[100]);return{top:n,right:o,bottom:a,left:l,fill:r,unit:i}}},$o=A=>{switch(A){case"repeat":return 1;case"round":return 2;case"space":return 3;default:return 0}},Yo={name:"border-image-repeat",initialValue:"stretch",prefix:!1,type:1,parse:(A,e)=>{let t=e.filter(Vt),s=[];for(let A of t)Ot(A)&&s.push($o(A.value));let r=s[0]??0;return{horizontal:r,vertical:s[1]??r}}},Wo={name:"box-decoration-break",initialValue:"slice",prefix:!1,type:2,parse:(A,e)=>"clone"===e?1:0},Jo=class{constructor(A){this.styles=A}get topColor(){return this.styles.borderTopColor}get rightColor(){return this.styles.borderRightColor}get bottomColor(){return this.styles.borderBottomColor}get leftColor(){return this.styles.borderLeftColor}get topStyle(){return this.styles.borderTopStyle}get rightStyle(){return this.styles.borderRightStyle}get bottomStyle(){return this.styles.borderBottomStyle}get leftStyle(){return this.styles.borderLeftStyle}get topWidth(){return this.styles.borderTopWidth}get rightWidth(){return this.styles.borderRightWidth}get bottomWidth(){return this.styles.borderBottomWidth}get leftWidth(){return this.styles.borderLeftWidth}get topLeftRadius(){return this.styles.borderTopLeftRadius}get topRightRadius(){return this.styles.borderTopRightRadius}get bottomRightRadius(){return this.styles.borderBottomRightRadius}get bottomLeftRadius(){return this.styles.borderBottomLeftRadius}get imageSource(){return this.styles.borderImageSource}get imageSlice(){return this.styles.borderImageSlice}get imageRepeat(){return this.styles.borderImageRepeat}get boxShadow(){return this.styles.boxShadow}},zo=class{constructor(A){this.styles=A}get color(){return this.styles.backgroundColor}get image(){return this.styles.backgroundImage}get clip(){return this.styles.backgroundClip}get origin(){return this.styles.backgroundOrigin}get position(){return this.styles.backgroundPosition}get repeat(){return this.styles.backgroundRepeat}get size(){return this.styles.backgroundSize}get blendMode(){return this.styles.backgroundBlendMode}},_o=class{constructor(A){this.styles=A}get family(){return this.styles.fontFamily}get size(){return this.styles.fontSize}get style(){return this.styles.fontStyle}get variant(){return this.styles.fontVariant}get weight(){return this.styles.fontWeight}get ligatures(){return this.styles.fontVariantLigatures}get color(){return this.styles.color}get letterSpacing(){return this.styles.letterSpacing}get lineHeight(){return this.styles.lineHeight}get textAlign(){return this.styles.textAlign}get textTransform(){return this.styles.textTransform}get textOverflow(){return this.styles.textOverflow}get textShadow(){return this.styles.textShadow}get textDecorationColor(){return this.styles.textDecorationColor}get textDecorationLine(){return this.styles.textDecorationLine}get textDecorationStyle(){return this.styles.textDecorationStyle}get textDecorationThickness(){return this.styles.textDecorationThickness}get textUnderlineOffset(){return this.styles.textUnderlineOffset}get wordBreak(){return this.styles.wordBreak}get lineBreak(){return this.styles.lineBreak}get overflowWrap(){return this.styles.overflowWrap}get writingMode(){return this.styles.writingMode}get direction(){return this.styles.direction}get webkitTextStrokeColor(){return this.styles.webkitTextStrokeColor}get webkitTextStrokeWidth(){return this.styles.webkitTextStrokeWidth}get webkitLineClamp(){return this.styles.webkitLineClamp}get paintOrder(){return this.styles.paintOrder}},jo=class{constructor(A){this.styles=A}get display(){return this.styles.display}get position(){return this.styles.position}get float(){return this.styles.float}get zIndex(){return this.styles.zIndex}get marginTop(){return this.styles.marginTop}get marginRight(){return this.styles.marginRight}get marginBottom(){return this.styles.marginBottom}get marginLeft(){return this.styles.marginLeft}get paddingTop(){return this.styles.paddingTop}get paddingRight(){return this.styles.paddingRight}get paddingBottom(){return this.styles.paddingBottom}get paddingLeft(){return this.styles.paddingLeft}get overflowX(){return this.styles.overflowX}get overflowY(){return this.styles.overflowY}get opacity(){return this.styles.opacity}get visibility(){return this.styles.visibility}get transform(){return this.styles.transform}get transformOrigin(){return this.styles.transformOrigin}get rotate(){return this.styles.rotate}get zoom(){return this.styles.zoom}get clipPath(){return this.styles.clipPath}get mixBlendMode(){return this.styles.mixBlendMode}get filter(){return this.styles.filter}get imageRendering(){return this.styles.imageRendering}get objectFit(){return this.styles.objectFit}get objectPosition(){return this.styles.objectPosition}get boxDecorationBreak(){return this.styles.boxDecorationBreak}get listStyleImage(){return this.styles.listStyleImage}get listStylePosition(){return this.styles.listStylePosition}get listStyleType(){return this.styles.listStyleType}get animationDuration(){return this.styles.animationDuration}isVisible(){return this.styles.isVisible()}isTransparent(){return this.styles.isTransparent()}isTransformed(){return this.styles.isTransformed()}isPositioned(){return this.styles.isPositioned()}isPositionedWithZIndex(){return this.styles.isPositionedWithZIndex()}isFloating(){return this.styles.isFloating()}isInlineLevel(){return this.styles.isInlineLevel()}},Zo=class A{get border(){return this._border??(this._border=new Jo(this))}get background(){return this._background??(this._background=new zo(this))}get font(){return this._font??(this._font=new _o(this))}get layout(){return this._layout??(this._layout=new jo(this))}static{this.standardProps=[["animationDuration",bo,"animationDuration"],["backgroundClip",ai,"backgroundClip"],["backgroundColor",li,"backgroundColor"],["backgroundImage",Mi,"backgroundImage"],["backgroundOrigin",Di,"backgroundOrigin"],["backgroundPosition",Ki,"backgroundPosition"],["backgroundRepeat",Ti,"backgroundRepeat"],["backgroundSize",Oi,"backgroundSize"],["borderTopColor",Vi,"borderTopColor"],["borderRightColor",Gi,"borderRightColor"],["borderBottomColor",Xi,"borderBottomColor"],["borderLeftColor",$i,"borderLeftColor"],["borderTopLeftRadius",Wi,"borderTopLeftRadius"],["borderTopRightRadius",Ji,"borderTopRightRadius"],["borderBottomRightRadius",zi,"borderBottomRightRadius"],["borderBottomLeftRadius",_i,"borderBottomLeftRadius"],["borderTopStyle",Zi,"borderTopStyle"],["borderRightStyle",qi,"borderRightStyle"],["borderBottomStyle",An,"borderBottomStyle"],["borderLeftStyle",en,"borderLeftStyle"],["borderTopWidth",sn,"borderTopWidth"],["borderRightWidth",rn,"borderRightWidth"],["borderBottomWidth",nn,"borderBottomWidth"],["borderLeftWidth",on,"borderLeftWidth"],["boxShadow",Qo,"boxShadow"],["clipPath",Bn,"clipPath"],["color",wn,"color"],["direction",fn,"direction"],["display",mn,"display"],["fontFamily",co,"fontFamily"],["fontSize",po,"fontSize"],["fontStyle",go,"fontStyle"],["fontVariant",uo,"fontVariant"],["fontWeight",ho,"fontWeight"],["letterSpacing",yn,"letterSpacing"],["lineBreak",Qn,"lineBreak"],["lineHeight",xn,"lineHeight"],["listStyleImage",Un,"listStyleImage"],["listStylePosition",vn,"listStylePosition"],["listStyleType",$r,"listStyleType"],["marginTop",kn,"marginTop"],["marginRight",Hn,"marginRight"],["marginBottom",In,"marginBottom"],["marginLeft",Sn,"marginLeft"],["opacity",ro,"opacity"],["overflowWrap",Mn,"overflowWrap"],["paddingTop",Kn,"paddingTop"],["paddingRight",Tn,"paddingRight"],["paddingBottom",Rn,"paddingBottom"],["paddingLeft",On,"paddingLeft"],["paintOrder",xo,"paintOrder"],["position",Nn,"position"],["textAlign",Pn,"textAlign"],["textDecorationStyle",oo,"textDecorationStyle"],["textDecorationThickness",ao,"textDecorationThickness"],["textUnderlineOffset",lo,"textUnderlineOffset"],["textShadow",Vn,"textShadow"],["textTransform",Gn,"textTransform"],["textOverflow",Ho,"textOverflow"],["transform",Xn,"transform"],["transformOrigin",Jn,"transformOrigin"],["rotate",zn,"rotate"],["visibility",_n,"visibility"],["webkitTextStrokeColor",Fo,"webkitTextStrokeColor"],["webkitTextStrokeWidth",Uo,"webkitTextStrokeWidth"],["webkitLineClamp",vo,"webkitLineClamp"],["wordBreak",jn,"wordBreak"],["whiteSpace",Zn,"whiteSpace"],["writingMode",eo,"writingMode"],["zIndex",to,"zIndex"],["objectFit",Eo,"objectFit"],["imageRendering",Io,"imageRendering"],["mixBlendMode",Mo,"mixBlendMode"],["filter",Do,"filter"],["fontVariantLigatures",To,"fontVariantLigatures"],["zoom",Ro,"zoom"],["objectPosition",Oo,"objectPosition"],["backgroundBlendMode",No,"backgroundBlendMode"],["borderImageSource",Vo,"borderImageSource"],["borderImageSlice",Xo,"borderImageSlice"],["borderImageRepeat",Yo,"borderImageRepeat"],["boxDecorationBreak",Wo,"boxDecorationBreak"]]}constructor(e,t){let s=A.standardProps;if("none"===t.display){this.display=0;for(let[A,t]of s)"display"!==A&&(this[A]=ta(e,t,void 0));this.float=ta(e,Cn,void 0),this.textDecorationColor=ta(e,io,void 0),this.textDecorationLine=ta(e,no,void 0);let A=ta(e,Ln,void 0);return this.overflowX=A[0],void(this.overflowY=A[A.length>1?1:0])}for(let[A,r,i]of s)this[A]=ta(e,r,t[i]);this.float=ta(e,Cn,t.cssFloat),this.textDecorationColor=ta(e,io,t.textDecorationColor??t.color),this.textDecorationLine=ta(e,no,t.textDecorationLine??t.textDecoration);let r=ta(e,Ln,t.overflow);this.overflowX=r[0],this.overflowY=r[r.length>1?1:0]}isVisible(){return this.display>0&&this.opacity>0&&0===this.visibility}isTransparent(){return ms(this.backgroundColor)}isTransformed(){return null!==this.transform||null!==this.rotate}isPositioned(){return 0!==this.position}isPositionedWithZIndex(){return this.isPositioned()&&!this.zIndex.auto}isFloating(){return 0!==this.float}isInlineLevel(){return Yr(this.display,4)||Yr(this.display,33554432)||Yr(this.display,268435456)||Yr(this.display,536870912)||Yr(this.display,67108864)||Yr(this.display,134217728)}},qo=class{constructor(A,e){this.content=ta(A,Bo,e.content),this.quotes=ta(A,Co,e.quotes)}},Aa=class{constructor(A,e){this.counterIncrement=ta(A,fo,e.counterIncrement),this.counterReset=ta(A,mo,e.counterReset)}},ea=new Map,ta=(A,e,t)=>{let s=null!==t&&typeof t<"u"?t.toString():e.initialValue;""===s.trim()&&(s=e.initialValue);let r=ea.get(e);if(r){let A=r.get(s);if(void 0!==A)return r.delete(s),r.set(s,A),A}let i=Dt.get();i.write(s);let n=new Kt(i.read());Dt.release(i);let o=(()=>{switch(e.type){case 2:{let t=n.parseComponentValue();return e.parse(A,Ot(t)?t.value:e.initialValue)}case 0:return e.parse(A,n.parseComponentValue());case 1:return e.parse(A,n.parseComponentValues());case 4:return n.parseComponentValue();case 3:switch(e.format){case"angle":return gs.parse(A,n.parseComponentValue());case"color":return hr.parse(A,n.parseComponentValue());case"image":return Si.parse(A,n.parseComponentValue());case"length":{let A=n.parseComponentValue();return As(A)?A:as}case"length-percentage":{let A=n.parseComponentValue();return es(A)?A:as}case"time":return so.parse(A,n.parseComponentValue())}}})();if(r||(r=new Map,ea.set(e,r)),!(e.skipCache||3===e.type&&"image"===e.format)){if(r.size>=200){let A=r.keys().next().value;r.delete(A)}r.set(s,o)}return o},sa=A=>{if("function"!=typeof A.getAttribute)return 0;switch(A.getAttribute("data-html2canvas-debug")){case"all":return 1;case"clone":return 2;case"parse":return 3;case"render":return 4;default:return 0}},ra=(A,e)=>{let t=sa(A);return 1===t||e===t},ia=class{constructor(A,e,t){this.cloneNodeFn=A,this.options=e,this.context=t}appendChildNode(A,e,t){this.safeAppendClonedChild(A,e,t)}cloneChildNodes(A,e,t){A.shadowRoot&&e.shadowRoot?(this.cloneShadowDOMChildren(A.shadowRoot,e.shadowRoot,t),this.cloneLightDOMChildren(A,e,t)):A.shadowRoot&&!e.shadowRoot?this.cloneShadowDOMAsLightDOM(A.shadowRoot,e,t):this.cloneLightDOMChildren(A,e,t)}shouldCloneChild(A){return!(Qr(A)&&(Kr(A)||A.hasAttribute("data-html2canvas-ignore")||"function"==typeof this.options.ignoreElements&&this.options.ignoreElements(A)))}shouldCloneStyleElement(A){return!this.options.copyStyles||!Qr(A)||!Dr(A)}safeAppendClonedChild(A,e,t){this.shouldCloneChild(e)&&this.shouldCloneStyleElement(e)&&A.appendChild(this.cloneNodeFn(e,t))}cloneAssignedNodes(A,e,t){A.forEach(A=>{this.safeAppendClonedChild(e,A,t)})}cloneSlotFallbackContent(A,e,t){for(let s=A.firstChild;s;s=s.nextSibling)this.safeAppendClonedChild(e,s,t)}cloneSlotElement(A,e,t){if(!Or(A))return;let s=A;if("function"!=typeof s.assignedNodes)return this.context.logger.warn("HTMLSlotElement.assignedNodes is not available",A),void this.cloneSlotFallbackContent(A,e,t);let r=s.assignedNodes();if(!r||!Array.isArray(r))return this.context.logger.warn("assignedNodes() did not return a valid array",A),void this.cloneSlotFallbackContent(A,e,t);r.length>0?this.cloneAssignedNodes(r,e,t):this.cloneSlotFallbackContent(A,e,t)}cloneShadowDOMChildren(A,e,t){for(let s=A.firstChild;s;s=s.nextSibling)Qr(s)&&Or(s)?this.cloneSlotElement(s,e,t):this.safeAppendClonedChild(e,s,t)}cloneLightDOMChildren(A,e,t){for(let s=A.firstChild;s;s=s.nextSibling)this.appendChildNode(e,s,t)}cloneSlotElementAsLightDOM(A,e,t){if(!Or(A))return;let s=A;if("function"!=typeof s.assignedNodes){for(let s=A.firstChild;s;s=s.nextSibling)this.appendChildNode(e,s,t);return}let r=s.assignedNodes();if(r&&Array.isArray(r)&&r.length>0)r.forEach(A=>this.appendChildNode(e,A,t));else for(let s=A.firstChild;s;s=s.nextSibling)this.appendChildNode(e,s,t)}cloneShadowDOMAsLightDOM(A,e,t){for(let s=A.firstChild;s;s=s.nextSibling)Qr(s)&&Or(s)?this.cloneSlotElementAsLightDOM(s,e,t):this.appendChildNode(e,s,t)}},na=A=>{let e=A;for(;e;){if(e.parentNode&&e.parentNode.host)return e.parentNode;let A=e.getRootNode();if(A&&A!==e.ownerDocument&&A.host)return A;e=e.parentNode}return null},oa=class{constructor(A,e,t){if(this.context=A,this.options=t,this.scrolledElements=[],this.referenceElement=e,this.counters=new Wr,this.quoteDepth=0,this.slotCloner=new ia((A,e)=>this.cloneNode(A,e),{ignoreElements:t.ignoreElements,copyStyles:t.copyStyles??!0},A),!e.ownerDocument)throw new Error("Cloned element does not have an owner document");if(!this.options.iframeContainer){let A=na(e);A&&(this.options.iframeContainer=A)}this.documentElement=this.cloneNode(e.ownerDocument.documentElement,!1)}toIFrame(A,e){let t=aa(A,e,this.options.iframeContainer);if(!t.contentWindow)throw new Error("Unable to find iframe window");let s=A.defaultView.pageXOffset,r=A.defaultView.pageYOffset,i=t.contentWindow,n=i.document,o=da(t).then(async()=>{this.scrolledElements.forEach(Ba),i&&i.scrollTo(e.left,e.top);let A=this.options.onclone,s=this.clonedReferenceElement;if(typeof s>"u")throw new Error(`Error finding the ${this.referenceElement.nodeName} in the cloned document`);return n.fonts&&n.fonts.ready&&await n.fonts.ready,/(AppleWebKit)/g.test(navigator.userAgent)&&await ca(n),"function"==typeof A&&await Promise.resolve().then(()=>A(n,s)),i.scrollTo(e.left,e.top),/AppleWebKit/g.test(navigator.userAgent)&&(i.scrollY!==e.top||i.scrollX!==e.left)&&(this.context.logger.warn("Unable to restore scroll position for cloned document"),this.context.windowBounds=this.context.windowBounds.add(i.scrollX-e.left,i.scrollY-e.top,0,0)),t}),a=A.baseURI;n.open();let l=ua(document.doctype)+"<html></html>";try{let A=this.referenceElement.ownerDocument?.defaultView,e=A&&A.trustedTypes,t=e?.getPolicy?.("html2canvas-pro");!t&&e&&(t=e.createPolicy("html2canvas-pro",{createHTML:A=>A}));let s=t?t.createHTML(l):l;n.write(s)}catch{n.write(l)}ga(this.referenceElement.ownerDocument,s,r),n.close();let c=n.adoptNode(this.documentElement);return ya(c,a),n.replaceChild(c,n.documentElement),o}createElementClone(A){if(ra(A,2),Ir(A))return this.createCanvasClone(A);if(Sr(A))return this.createVideoClone(A);if(Dr(A))return this.createStyleClone(A);let e=A.cloneNode(!1);return Lr(e)&&(Lr(A)&&A.currentSrc&&A.currentSrc!==A.src&&(e.src=A.currentSrc,e.srcset=""),"lazy"===e.loading&&(e.loading="eager")),Vr(e)&&!Fr(e)?this.createCustomElementClone(A,e):e}createCustomElementClone(A,e){let t=document.createElement("div");t.className=e.className,ha(e.style,t);let s=e.attributes;for(let A=0;A<s.length;A++){let e=s[A];"class"!==e.name&&"style"!==e.name&&t.setAttribute(e.name,e.value)}if(A.shadowRoot)try{t.attachShadow({mode:"open"})}catch(A){this.context.logger.error("Failed to attach shadow root to custom element clone:",A)}return t}createStyleClone(A){try{let e=A.sheet;if(e&&e.cssRules){let t=[].slice.call(e.cssRules,0).reduce((A,e)=>e&&"string"==typeof e.cssText?A+e.cssText:A,""),s=A.cloneNode(!1);return s.textContent=t,this.options.cspNonce&&(s.nonce=this.options.cspNonce),s}}catch(A){if(this.context.logger.error("Unable to access cssRules property",A),"SecurityError"!==A.name)throw A}let e=A.cloneNode(!1);return this.options.cspNonce&&(e.nonce=this.options.cspNonce),e}createCanvasClone(A){if(this.options.inlineImages&&A.ownerDocument){let e=A.ownerDocument.createElement("img");try{return e.src=A.toDataURL(),e}catch{this.context.logger.info("Unable to inline canvas contents, canvas is tainted",A)}}let e=A.cloneNode(!1);try{e.width=A.width,e.height=A.height;let t=A.getContext("2d"),s=e.getContext("2d",{willReadFrequently:!0});if(s)if(!this.options.allowTaint&&t)s.putImageData(t.getImageData(0,0,A.width,A.height),0,0);else{let e=A.getContext("webgl2")??A.getContext("webgl");e&&!1===e.getContextAttributes()?.preserveDrawingBuffer&&this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false",A),s.drawImage(A,0,0)}return e}catch{this.context.logger.info("Unable to clone canvas as it is tainted",A)}return e}createVideoClone(A){let e=A.ownerDocument.createElement("canvas");e.width=A.offsetWidth,e.height=A.offsetHeight;let t=e.getContext("2d");try{return t&&(t.drawImage(A,0,0,e.width,e.height),this.options.allowTaint||t.getImageData(0,0,e.width,e.height)),e}catch{this.context.logger.info("Unable to clone video as it is tainted",A)}let s=A.ownerDocument.createElement("canvas");return s.width=A.offsetWidth,s.height=A.offsetHeight,s}appendChildNode(A,e,t){this.slotCloner.appendChildNode(A,e,t)}cloneChildNodes(A,e,t){this.slotCloner.cloneChildNodes(A,e,t)}cloneNode(A,e){if(xr(A))return document.createTextNode(A.data);if(!A.ownerDocument)return A.cloneNode(!1);let t=A.ownerDocument.defaultView;if(t&&Qr(A)&&(Ur(A)||Fr(A))){let s=this.createElementClone(A);s.style.transitionProperty="none";let r=t.getComputedStyle(A),i=Xr(A);this.referenceElement===A&&Ur(s)&&(this.clonedReferenceElement=s),Hr(s)&&ba(s,this.options.cspNonce);let n=this.counters.parse(new Aa(this.context,r));if(i){let e=t.getComputedStyle(A,":before"),r=this.resolvePseudoContent(A,s,e,0);r&&s.insertBefore(r,s.firstChild);let i=t.getComputedStyle(A,":after"),n=this.resolvePseudoContent(A,s,i,1);n&&s.appendChild(n)}return Vr(A)&&(e=!0),Sr(A)||this.cloneChildNodes(A,s,e),this.counters.pop(n),(r&&(this.options.copyStyles||Fr(A))&&!Mr(A)||e)&&ha(r,s),(0!==A.scrollTop||0!==A.scrollLeft)&&this.scrolledElements.push([s,A.scrollLeft,A.scrollTop]),(Tr(A)||Rr(A))&&(Tr(s)||Rr(s))&&(s.value=A.value),s}return A.cloneNode(!1)}resolvePseudoContent(A,e,t,s){if(!t)return;let r=t.content,i=e.ownerDocument;if(!i||!r||"none"===r||"-moz-alt-content"===r||"none"===t.display)return;this.counters.parse(new Aa(this.context,t));let n=new qo(this.context,t),o=i.createElement("html2canvaspseudoelement");ha(t,o),n.content.forEach(e=>{if(0===e.type)o.appendChild(i.createTextNode(e.value));else if(22===e.type){let A=i.createElement("img");A.src=e.value,A.style.opacity="1",o.appendChild(A)}else if(18===e.type){if("attr"===e.name){let t=e.values.filter(Ot);t.length&&o.appendChild(i.createTextNode(A.getAttribute(t[0].value)||""))}else if("counter"===e.name){let[A,t]=e.values.filter(Gt);if(A&&Ot(A)){let e=this.counters.getCounterValue(A.value),s=t&&Ot(t)?$r.parse(this.context,t.value):3;o.appendChild(i.createTextNode(oi(e,s,!1)))}}else if("counters"===e.name){let[A,t,s]=e.values.filter(Gt);if(A&&Ot(A)){let e=this.counters.getCounterValues(A.value),r=s&&Ot(s)?$r.parse(this.context,s.value):3,n=t&&0===t.type?t.value:"",a=e.map(A=>oi(A,r,!1)).join(n);o.appendChild(i.createTextNode(a))}}}else if(20===e.type)switch(e.value){case"open-quote":o.appendChild(i.createTextNode(yo(n.quotes,this.quoteDepth++,!0)));break;case"close-quote":o.appendChild(i.createTextNode(yo(n.quotes,--this.quoteDepth,!1)));break;default:o.appendChild(i.createTextNode(e.value))}}),o.className=`${wa} ${fa}`;let a=0===s?` ${wa}`:` ${fa}`;return Fr(e)?e.className.baseValue+=a:e.className+=a,o}static destroy(A){return!!A.parentNode&&(A.parentNode.removeChild(A),!0)}},aa=(A,e,t)=>{let s=A.createElement("iframe");return s.className="html2canvas-container",s.style.visibility="hidden",s.style.position="fixed",s.style.left="-10000px",s.style.top="0px",s.style.border="0",s.width=e.width.toString(),s.height=e.height.toString(),s.scrolling="no",s.setAttribute("data-html2canvas-ignore","true"),(t||A.body).appendChild(s),s},la=A=>new Promise(e=>{A.complete?e():A.src?(A.onload=e,A.onerror=e):e()}),ca=A=>Promise.all([].slice.call(A.images,0).map(la)),da=A=>new Promise((e,t)=>{let s=A.contentWindow;if(!s)return t("No window assigned for iframe");let r=s.document;s.onload=A.onload=()=>{s.onload=A.onload=null;let t=0,i=setInterval(()=>{t++,(r.body.childNodes.length>0&&"complete"===r.readyState||t>=600)&&(clearInterval(i),e(A))},50)}}),pa=["all","d","content"],ha=(A,e)=>{let t=[];for(let e=A.length-1;e>=0;e--){let s=A.item(e);if(-1===pa.indexOf(s)&&!s.startsWith("--")){let e=A.getPropertyValue(s);if(e){let r=A.getPropertyPriority(s);t.push(r?`${s}:${e} !${r}`:`${s}:${e}`)}}}return t.length>0&&(e.style.cssText=t.join(";")+";"),e},ua=A=>{let e="";return A&&(e+="<!DOCTYPE ",A.name&&(e+=A.name),A.internalSubset&&(e+=" "+A.internalSubset.replace(/"/g,""").replace(/>/g,">")),A.publicId?(e+=' PUBLIC "'+A.publicId.replace(/"/g,""")+'"',A.systemId&&(e+=' "'+A.systemId.replace(/"/g,""")+'"')):A.systemId&&(e+=' SYSTEM "'+A.systemId.replace(/"/g,""")+'"'),e+=">"),e},ga=(A,e,t)=>{A&&A.defaultView&&(e!==A.defaultView.pageXOffset||t!==A.defaultView.pageYOffset)&&A.defaultView.scrollTo(e,t)},Ba=([A,e,t])=>{A.scrollLeft=e,A.scrollTop=t},wa="___html2canvas___pseudoelement_before",fa="___html2canvas___pseudoelement_after",ma='{\n content: "" !important;\n display: none !important;\n}',ba=(A,e)=>{Ca(A,`.${wa}:before${ma}\n .${fa}:after${ma}`,e)},Ca=(A,e,t)=>{let s=A.ownerDocument;if(s){let r=s.createElement("style");r.textContent=e,t&&(r.nonce=t),A.appendChild(r)}},ya=(A,e)=>{let t=A.ownerDocument.createElement("base");t.href=e;let s=A.getElementsByTagName("head").item(0);s?.insertBefore(t,s?.firstChild??null)},Qa=class{static normalizeElement(A,e){let t={};return Ur(A)&&(e.animationDuration.some(A=>A>0)&&(t.animationDuration=A.style.animationDuration,A.style.animationDuration="0s"),null!==e.transform&&(t.transform=A.style.transform,A.style.transform="translate(0, 0)"),null!==e.rotate&&(t.rotate=A.style.rotate,A.style.rotate="0deg",void 0===t.transform&&(t.transform=A.style.transform,A.style.transform="translate(0, 0)"))),t}static restoreElement(A,e){Ur(A)&&(void 0!==e.animationDuration&&(A.style.animationDuration=e.animationDuration),void 0!==e.transform&&(A.style.transform=e.transform),void 0!==e.rotate&&(A.style.rotate=e.rotate))}},xa=class{constructor(A,e,t={}){if(this.context=A,this.textNodes=[],this.elements=[],this.createsStackingContext=!1,this.createsRealStackingContext=!1,this.isListOwner=!1,this.debugRender=!1,ra(e,3),this.styles=new Zo(A,A.config.window.getComputedStyle(e,null)),!1!==t.normalizeDom&&Ur(e)&&(this.originalStyles=Qa.normalizeElement(e,this.styles),this.originalElement=e),this.bounds=JA(this.context,e),"FIELDSET"===e.tagName){let A=e.querySelector(":scope > legend");if(A){let e=JA(this.context,A);this.legendBounds=e;let t=e.top+e.height/2-this.styles.borderTopWidth/2;this.bounds=new WA(this.bounds.left,t,this.bounds.width,this.bounds.height-(t-this.bounds.top))}}ra(e,4)&&(this.debugRender=!0)}restore(){this.originalStyles&&this.originalElement&&(Qa.restoreElement(this.originalElement,this.originalStyles),this.originalStyles=void 0,this.originalElement=void 0)}restoreTree(){this.restore();for(let A of this.elements)A.restoreTree()}},Fa=typeof Uint8Array>"u"?[]:new Uint8Array(256),Ua=0;Ua<64;Ua++)Fa["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(Ua)]=Ua;for(va=function(A){var e,t,s,r,i,n=.75*A.length,o=A.length,a=0;"="===A[A.length-1]&&(n--,"="===A[A.length-2]&&n--);var l=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(n):new Array(n),c=Array.isArray(l)?l:new Uint8Array(l);for(e=0;e<o;e+=4)t=Fa[A.charCodeAt(e)],s=Fa[A.charCodeAt(e+1)],r=Fa[A.charCodeAt(e+2)],i=Fa[A.charCodeAt(e+3)],c[a++]=t<<2|s>>4,c[a++]=(15&s)<<4|r>>2,c[a++]=(3&r)<<6|63&i;return l},Ea=function(A){for(var e=A.length,t=[],s=0;s<e;s+=2)t.push(A[s+1]<<8|A[s]);return t},ka=function(A){for(var e=A.length,t=[],s=0;s<e;s+=4)t.push(A[s+3]<<24|A[s+2]<<16|A[s+1]<<8|A[s]);return t},Ha=function(A,e,t){return A.slice?A.slice(e,t):new Uint16Array(Array.prototype.slice.call(A,e,t))},Ia=function(A,e,t){return A.slice?A.slice(e,t):new Uint32Array(Array.prototype.slice.call(A,e,t))},Sa=function(A,e){var t=va(A),s=Array.isArray(t)?ka(t):new Uint32Array(t),r=Array.isArray(t)?Ea(t):new Uint16Array(t),i=Ha(r,12,s[4]/2),n=2===s[5]?Ha(r,(24+s[4])/2):Ia(s,Math.ceil((24+s[4])/4));return new La(s[0],s[1],s[2],s[3],i,n)},La=function(){function A(A,e,t,s,r,i){this.initialValue=A,this.errorValue=e,this.highStart=t,this.highValueIndex=s,this.index=r,this.data=i}return A.prototype.get=function(A){var e;if(A>=0){if(A<55296||A>56319&&A<=65535)return e=((e=this.index[A>>5])<<2)+(31&A),this.data[e];if(A<=65535)return e=((e=this.index[2048+(A-55296>>5)])<<2)+(31&A),this.data[e];if(A<this.highStart)return e=2080+(A>>11),e=this.index[e],e+=A>>5&63,e=((e=this.index[e])<<2)+(31&A),this.data[e];if(A<=1114111)return this.data[this.highValueIndex]}return this.errorValue},A}(),Ma=typeof Uint8Array>"u"?[]:new Uint8Array(256),Da=0;Da<64;Da++)Ma["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(Da)]=Da;Ka=8,Ta=9,Ra=11,Oa=12,Pa=function(A){for(var e=[],t=0,s=A.length;t<s;){var r=A.charCodeAt(t++);if(r>=55296&&r<=56319&&t<s){var i=A.charCodeAt(t++);56320==(64512&i)?e.push(((1023&r)<<10)+(1023&i)+65536):(e.push(r),t--)}else e.push(r)}return e},Na=function(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];if(String.fromCodePoint)return String.fromCodePoint.apply(String,A);var t=A.length;if(!t)return"";for(var s=[],r=-1,i="";++r<t;){var n=A[r];n<=65535?s.push(n):(n-=65536,s.push(55296+(n>>10),n%1024+56320)),(r+1===t||s.length>16384)&&(i+=String.fromCharCode.apply(String,s),s.length=0)}return i},Va=Sa("AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA="),Ga="\xd7",Xa=function(A){return Va.get(A)},$a=function(A,e,t){var s=t-2,r=e[s],i=e[t-1],n=e[t];if(2===i&&3===n)return Ga;if(2===i||3===i||4===i||2===n||3===n||4===n)return"\xf7";if(i===Ka&&-1!==[Ka,Ta,Ra,Oa].indexOf(n)||(i===Ra||i===Ta)&&(n===Ta||10===n)||(i===Oa||10===i)&&10===n||13===n||5===n||7===n||1===i)return Ga;if(13===i&&14===n){for(;5===r;)r=e[--s];if(14===r)return Ga}if(15===i&&15===n){for(var o=0;15===r;)o++,r=e[--s];if(o%2==0)return Ga}return"\xf7"},Ya=function(A){var e=Pa(A),t=e.length,s=0,r=0,i=e.map(Xa);return{next:function(){if(s>=t)return{done:!0,value:null};for(var A=Ga;s<t&&(A=$a(0,i,++s))===Ga;);if(A!==Ga||s===t){var n=Na.apply(null,e.slice(r,s));return r=s,{value:n,done:!1}}return{done:!0,value:null}}}},Wa=function(A){for(var e,t=Ya(A),s=[];!(e=t.next()).done;)e.value&&s.push(e.value.slice());return s},Ja=A=>{if(A.createRange){let e=A.createRange();if(e.getBoundingClientRect){let t=A.createElement("boundtest");t.style.height="123px",t.style.display="block",A.body.appendChild(t),e.selectNode(t);let s=e.getBoundingClientRect(),r=Math.round(s.height);if(A.body.removeChild(t),123===r)return!0}}return!1},za=A=>{let e=A.createElement("boundtest");e.style.width="50px",e.style.display="block",e.style.fontSize="12px",e.style.letterSpacing="0px",e.style.wordSpacing="0px",A.body.appendChild(e);let t=A.createRange();e.innerHTML="function"==typeof"".repeat?"👨".repeat(10):"";let s=e.firstChild,r=_A(s.data).map(A=>jA(A)),i=0,n={},o=r.every((A,e)=>{t.setStart(s,i),t.setEnd(s,i+A.length);let r=t.getBoundingClientRect();i+=A.length;let o=r.x>n.x||r.y>n.y;return n=r,0===e||o});return A.body.removeChild(e),o},_a=()=>typeof(new Image).crossOrigin<"u",ja=()=>"string"==typeof(new XMLHttpRequest).responseType,Za=A=>{let e=new Image,t=A.createElement("canvas"),s=t.getContext("2d");if(!s)return!1;e.src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";try{s.drawImage(e,0,0),t.toDataURL()}catch{return!1}return!0},qa=A=>0===A[0]&&255===A[1]&&0===A[2]&&255===A[3],Al=A=>{let e=A.createElement("canvas"),t=100;e.width=t,e.height=t;let s=e.getContext("2d");if(!s)return Promise.reject(new Error("Failed to get 2D rendering context"));s.fillStyle="rgb(0, 255, 0)",s.fillRect(0,0,t,t);let r=new Image,i=e.toDataURL();r.src=i;let n=el(t,t,0,0,r);return s.fillStyle="red",s.fillRect(0,0,t,t),tl(n).then(e=>{s.drawImage(e,0,0);let r=s.getImageData(0,0,t,t).data;s.fillStyle="red",s.fillRect(0,0,t,t);let n=A.createElement("div");return n.style.backgroundImage=`url(${i})`,n.style.height="100px",qa(r)?tl(el(t,t,0,0,n)):Promise.reject(new Error("ForeignObject rendering not supported"))}).then(A=>(s.drawImage(A,0,0),qa(s.getImageData(0,0,t,t).data))).catch(()=>!1)},el=(A,e,t,s,r)=>{let i="http://www.w3.org/2000/svg",n=document.createElementNS(i,"svg"),o=document.createElementNS(i,"foreignObject");return n.setAttributeNS(null,"width",A.toString()),n.setAttributeNS(null,"height",e.toString()),o.setAttributeNS(null,"width","100%"),o.setAttributeNS(null,"height","100%"),o.setAttributeNS(null,"x",t.toString()),o.setAttributeNS(null,"y",s.toString()),o.setAttributeNS(null,"externalResourcesRequired","true"),n.appendChild(o),o.appendChild(r),n},tl=A=>new Promise((e,t)=>{let s=new Image;s.onload=()=>e(s),s.onerror=t,s.src=`data:image/svg+xml;charset=utf-8,${encodeURIComponent((new XMLSerializer).serializeToString(A))}`}),sl={get SUPPORT_RANGE_BOUNDS(){let A=Ja(document);return Object.defineProperty(sl,"SUPPORT_RANGE_BOUNDS",{value:A}),A},get SUPPORT_WORD_BREAKING(){let A=sl.SUPPORT_RANGE_BOUNDS&&za(document);return Object.defineProperty(sl,"SUPPORT_WORD_BREAKING",{value:A}),A},get SUPPORT_SVG_DRAWING(){let A=Za(document);return Object.defineProperty(sl,"SUPPORT_SVG_DRAWING",{value:A}),A},get SUPPORT_FOREIGNOBJECT_DRAWING(){let A="function"==typeof Array.from&&"function"==typeof window.fetch?Al(document):Promise.resolve(!1);return Object.defineProperty(sl,"SUPPORT_FOREIGNOBJECT_DRAWING",{value:A}),A},get SUPPORT_CORS_IMAGES(){let A=_a();return Object.defineProperty(sl,"SUPPORT_CORS_IMAGES",{value:A}),A},get SUPPORT_RESPONSE_TYPE(){let A=ja();return Object.defineProperty(sl,"SUPPORT_RESPONSE_TYPE",{value:A}),A},get SUPPORT_CORS_XHR(){let A="withCredentials"in new XMLHttpRequest;return Object.defineProperty(sl,"SUPPORT_CORS_XHR",{value:A}),A},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){let A=!!(typeof Intl<"u"&&Intl.Segmenter);return Object.defineProperty(sl,"SUPPORT_NATIVE_TEXT_SEGMENTATION",{value:A}),A}},rl=class{constructor(A,e){this.text=A,this.bounds=e}},il=(A,e,t,s)=>{let r=cl(e,t),i=[],n=0;return r.forEach(e=>{if(t.textDecorationLine.length||e.trim().length>0)if(sl.SUPPORT_RANGE_BOUNDS){let t=ol(s,n,e.length).getClientRects();if(t.length>1){let t=al(e),r=0;t.forEach(e=>{i.push(new rl(e,WA.fromDOMRectList(A,ol(s,r+n,e.length).getClientRects()))),r+=e.length})}else i.push(new rl(e,WA.fromDOMRectList(A,t)))}else{let t=s.splitText(e.length);i.push(new rl(e,nl(A,s))),s=t}else sl.SUPPORT_RANGE_BOUNDS||(s=s.splitText(e.length));n+=e.length}),i},nl=(A,e)=>{let t=e.ownerDocument;if(t){let s=t.createElement("html2canvaswrapper");s.appendChild(e.cloneNode(!0));let r=e.parentNode;if(r){r.replaceChild(s,e);let t=JA(A,s);return s.firstChild&&r.replaceChild(s.firstChild,s),t}}return WA.EMPTY},ol=(A,e,t)=>{let s=A.ownerDocument;if(!s)throw new Error("Node has no owner document");let r=s.createRange();return r.setStart(A,e),r.setEnd(A,e+t),r},al=A=>{if(sl.SUPPORT_NATIVE_TEXT_SEGMENTATION){let e=new Intl.Segmenter(void 0,{granularity:"grapheme"});return Array.from(e.segment(A)).map(A=>A.segment)}return Wa(A)},ll=(A,e)=>{if(sl.SUPPORT_NATIVE_TEXT_SEGMENTATION){let e=new Intl.Segmenter(void 0,{granularity:"word"});return Array.from(e.segment(A)).map(A=>A.segment)}return pl(A,e)},cl=(A,e)=>qn(e.writingMode)||0!==e.letterSpacing?al(A):ll(A,e),dl=[32,160,4961,65792,65793,4153,4241],pl=(A,e)=>{let t,s=Ze(A,{lineBreak:e.lineBreak,wordBreak:"break-word"===e.overflowWrap?"break-word":e.wordBreak}),r=[];for(;!(t=s.next()).done;)if(t.value){let A=_A(t.value.slice()),e="";A.forEach(A=>{-1===dl.indexOf(A)?e+=jA(A):(e.length&&r.push(e),r.push(jA(A)),e="")}),e.length&&r.push(e)}return r},hl=class{constructor(A,e,t){this.text=ul(e.data,t.textTransform),this.text.length!==e.data.length&&(e.data=this.text),this.textBounds=il(A,this.text,t,e)}},ul=(A,e)=>{switch(e){case 1:return A.toLowerCase();case 3:return A.replace(gl,Bl);case 2:return A.toUpperCase();default:return A}},gl=/(^|\s|:|-|\(|\))([a-z])/g,Bl=(A,e,t)=>A.length>0?e+t.toUpperCase():A,wl=class extends xa{constructor(A,e){super(A,e),this.src=e.currentSrc||e.src,this.intrinsicWidth=e.naturalWidth,this.intrinsicHeight=e.naturalHeight,this.context.cache.addImage(this.src)}},fl=class extends xa{constructor(A,e){super(A,e),this.canvas=e,this.intrinsicWidth=e.width,this.intrinsicHeight=e.height}},ml=["position","inset","top","right","bottom","left","inset-inline","inset-inline-start","inset-inline-end","inset-block","inset-block-start","inset-block-end","margin","margin-top","margin-right","margin-bottom","margin-left","margin-inline","margin-inline-start","margin-inline-end","margin-block","margin-block-start","margin-block-end"],bl=(A,e)=>{let t=e.getAttribute("style");ml.forEach(A=>e.style.removeProperty(A));let s=A.serializeToString(e);return null===t?e.removeAttribute("style"):e.setAttribute("style",t),s},Cl=class extends xa{constructor(A,e){super(A,e);let t=new XMLSerializer,s=JA(A,e);e.setAttribute("width",`${s.width}px`),e.setAttribute("height",`${s.height}px`),this.svg=`data:image/svg+xml,${encodeURIComponent(bl(t,e))}`,this.intrinsicWidth=e.width.baseVal.value,this.intrinsicHeight=e.height.baseVal.value,this.context.cache.addImage(this.svg)}},yl=class extends xa{constructor(A,e){super(A,e),this.value=e.value}},Ql=class extends xa{constructor(A,e){super(A,e),this.start=e.start,this.reversed="boolean"==typeof e.reversed&&!0===e.reversed}},xl=[{type:15,flags:0,unit:"px",number:3}],Fl=[{type:16,flags:0,number:50}],Ul=A=>A.width>A.height?new WA(A.left+(A.width-A.height)/2,A.top,A.height,A.height):A.width<A.height?new WA(A.left,A.top+(A.height-A.width)/2,A.width,A.width):A,vl=A=>{let e="password"===A.type?new Array(A.value.length+1).join("\u2022"):A.value;return 0===e.length?A.placeholder||"":e},El=A=>0===A.value.length&&!!A.placeholder,kl=707406591,Hl=class extends xa{constructor(A,e){switch(super(A,e),this.type=e.type.toLowerCase(),this.checked=e.checked,this.value=vl(e),this.isPlaceholder=El(e),("checkbox"===this.type||"radio"===this.type)&&(this.styles.backgroundColor=3739148031,this.styles.borderTopColor=this.styles.borderRightColor=this.styles.borderBottomColor=this.styles.borderLeftColor=2779096575,this.styles.borderTopWidth=this.styles.borderRightWidth=this.styles.borderBottomWidth=this.styles.borderLeftWidth=1,this.styles.borderTopStyle=this.styles.borderRightStyle=this.styles.borderBottomStyle=this.styles.borderLeftStyle=1,this.styles.backgroundClip=[0],this.styles.backgroundOrigin=[0],this.bounds=Ul(this.bounds)),this.type){case"checkbox":this.styles.borderTopRightRadius=this.styles.borderTopLeftRadius=this.styles.borderBottomRightRadius=this.styles.borderBottomLeftRadius=xl;break;case"radio":this.styles.borderTopRightRadius=this.styles.borderTopLeftRadius=this.styles.borderBottomRightRadius=this.styles.borderBottomLeftRadius=Fl}}},Il=class extends xa{constructor(A,e){super(A,e);let t=e.options[e.selectedIndex||0];this.value=t&&t.text||""}},Sl=class extends xa{constructor(A,e){super(A,e),this.value=e.value}},Ll=class extends xa{constructor(A,e,t){super(A,e),this.src=e.src,this.width=parseInt(e.width,10)||0,this.height=parseInt(e.height,10)||0,this.backgroundColor=this.styles.backgroundColor,this.parseTreeFn=t;try{if(e.contentWindow&&e.contentWindow.document&&e.contentWindow.document.documentElement&&this.parseTreeFn){this.tree=this.parseTreeFn(A,e.contentWindow.document.documentElement);let t=e.contentWindow.document.documentElement?Cr(A,getComputedStyle(e.contentWindow.document.documentElement).backgroundColor):yr.TRANSPARENT,s=e.contentWindow.document.body?Cr(A,getComputedStyle(e.contentWindow.document.body).backgroundColor):yr.TRANSPARENT;this.backgroundColor=ms(t)?ms(s)?this.styles.backgroundColor:s:t}}catch{}}},Ml=["OL","UL","MENU"],Dl=(A,e,t,s)=>{for(let r,i=e.firstChild;i;i=r)r=i.nextSibling,Kl(A,i,t,s)},Kl=(A,e,t,s)=>{if(xr(e)&&e.data.length>0)t.textNodes.push(new hl(A,e,t.styles));else if(Qr(e))if(Or(e)&&e.assignedNodes)e.assignedNodes().forEach(e=>Kl(A,e,t,s));else{let r=Tl(A,e);r.styles.isVisible()&&(Ol(e,r,s)?r.createsRealStackingContext=!0:Pl(r.styles)&&(r.createsStackingContext=!0),-1!==Ml.indexOf(e.tagName)&&(r.isListOwner=!0),t.elements.push(r),e.shadowRoot?Dl(A,e.shadowRoot,r,s):!Tr(e)&&!kr(e)&&!Rr(e)&&Dl(A,e,r,s))}},Tl=(A,e)=>Lr(e)?new wl(A,e):Ir(e)?new fl(A,e):kr(e)?new Cl(A,e):Pr(e)?new yl(A,e):Nr(e)?new Ql(A,e):vr(e)?new Hl(A,e):Rr(e)?new Il(A,e):Tr(e)?new Sl(A,e):Mr(e)?new Ll(A,e,Rl):new xa(A,e),Rl=(A,e)=>{let t=Tl(A,e);return t.createsRealStackingContext=!0,Dl(A,e,t,t),t},Ol=(A,e,t)=>e.styles.isPositionedWithZIndex()||e.styles.opacity<1||e.styles.isTransformed()||Hr(A)&&t.styles.isTransparent(),Pl=A=>!(!A.isPositioned()&&!A.isFloating())||Yr(A.display,268435456)||Yr(A.display,33554432)||Yr(A.display,536870912)||Yr(A.display,134217728),Nl=(A,e)=>A.length===e.length&&A.some((A,t)=>A===e[t]),Vl=(A,e,t,s,r)=>A.map((A,i)=>{switch(i){case 0:return A.add(e,t);case 1:return A.add(e+s,t);case 2:return A.add(e+s,t+r);case 3:return A.add(e,t+r)}return A}),Gl=class A{constructor(A,e){this.type=0,this.x=A,this.y=e}add(e,t){return new A(this.x+e,this.y+t)}},Xl=(A,e,t)=>new Gl(A.x+(e.x-A.x)*t,A.y+(e.y-A.y)*t),$l=class A{constructor(A,e,t,s){this.type=1,this.start=A,this.startControl=e,this.endControl=t,this.end=s}subdivide(e,t){let s=Xl(this.start,this.startControl,e),r=Xl(this.startControl,this.endControl,e),i=Xl(this.endControl,this.end,e),n=Xl(s,r,e),o=Xl(r,i,e),a=Xl(n,o,e);return t?new A(this.start,s,n,a):new A(a,o,i,this.end)}add(e,t){return new A(this.start.add(e,t),this.startControl.add(e,t),this.endControl.add(e,t),this.end.add(e,t))}reverse(){return new A(this.end,this.endControl,this.startControl,this.start)}},Yl=A=>1===A.type,Wl=class{constructor(A){let e=A.styles,t=A.bounds,[s,r]=ds(e.borderTopLeftRadius,t.width,t.height),[i,n]=ds(e.borderTopRightRadius,t.width,t.height),[o,a]=ds(e.borderBottomRightRadius,t.width,t.height),[l,c]=ds(e.borderBottomLeftRadius,t.width,t.height),d=[];d.push((s+i)/t.width),d.push((l+o)/t.width),d.push((r+c)/t.height),d.push((n+a)/t.height);let p=Math.max(...d);p>1&&(s/=p,r/=p,i/=p,n/=p,o/=p,a/=p,l/=p,c/=p);let h=t.width-i,u=t.height-a,g=t.width-o,B=t.height-c,w=e.borderTopWidth,f=e.borderRightWidth,m=e.borderBottomWidth,b=e.borderLeftWidth,C=ps(e.paddingTop,A.bounds.width),y=ps(e.paddingRight,A.bounds.width),Q=ps(e.paddingBottom,A.bounds.width),x=ps(e.paddingLeft,A.bounds.width);this.topLeftBorderDoubleOuterBox=s>0||r>0?Jl(t.left+b/3,t.top+w/3,s-b/3,r-w/3,0):new Gl(t.left+b/3,t.top+w/3),this.topRightBorderDoubleOuterBox=s>0||r>0?Jl(t.left+h,t.top+w/3,i-f/3,n-w/3,1):new Gl(t.left+t.width-f/3,t.top+w/3),this.bottomRightBorderDoubleOuterBox=o>0||a>0?Jl(t.left+g,t.top+u,o-f/3,a-m/3,2):new Gl(t.left+t.width-f/3,t.top+t.height-m/3),this.bottomLeftBorderDoubleOuterBox=l>0||c>0?Jl(t.left+b/3,t.top+B,l-b/3,c-m/3,3):new Gl(t.left+b/3,t.top+t.height-m/3),this.topLeftBorderDoubleInnerBox=s>0||r>0?Jl(t.left+2*b/3,t.top+2*w/3,s-2*b/3,r-2*w/3,0):new Gl(t.left+2*b/3,t.top+2*w/3),this.topRightBorderDoubleInnerBox=s>0||r>0?Jl(t.left+h,t.top+2*w/3,i-2*f/3,n-2*w/3,1):new Gl(t.left+t.width-2*f/3,t.top+2*w/3),this.bottomRightBorderDoubleInnerBox=o>0||a>0?Jl(t.left+g,t.top+u,o-2*f/3,a-2*m/3,2):new Gl(t.left+t.width-2*f/3,t.top+t.height-2*m/3),this.bottomLeftBorderDoubleInnerBox=l>0||c>0?Jl(t.left+2*b/3,t.top+B,l-2*b/3,c-2*m/3,3):new Gl(t.left+2*b/3,t.top+t.height-2*m/3),this.topLeftBorderStroke=s>0||r>0?Jl(t.left+b/2,t.top+w/2,s-b/2,r-w/2,0):new Gl(t.left+b/2,t.top+w/2),this.topRightBorderStroke=s>0||r>0?Jl(t.left+h,t.top+w/2,i-f/2,n-w/2,1):new Gl(t.left+t.width-f/2,t.top+w/2),this.bottomRightBorderStroke=o>0||a>0?Jl(t.left+g,t.top+u,o-f/2,a-m/2,2):new Gl(t.left+t.width-f/2,t.top+t.height-m/2),this.bottomLeftBorderStroke=l>0||c>0?Jl(t.left+b/2,t.top+B,l-b/2,c-m/2,3):new Gl(t.left+b/2,t.top+t.height-m/2),this.topLeftBorderBox=s>0||r>0?Jl(t.left,t.top,s,r,0):new Gl(t.left,t.top),this.topRightBorderBox=i>0||n>0?Jl(t.left+h,t.top,i,n,1):new Gl(t.left+t.width,t.top),this.bottomRightBorderBox=o>0||a>0?Jl(t.left+g,t.top+u,o,a,2):new Gl(t.left+t.width,t.top+t.height),this.bottomLeftBorderBox=l>0||c>0?Jl(t.left,t.top+B,l,c,3):new Gl(t.left,t.top+t.height),this.topLeftPaddingBox=s>0||r>0?Jl(t.left+b,t.top+w,Math.max(0,s-b),Math.max(0,r-w),0):new Gl(t.left+b,t.top+w),this.topRightPaddingBox=i>0||n>0?Jl(t.left+Math.min(h,t.width-f),t.top+w,h>t.width+f?0:Math.max(0,i-f),Math.max(0,n-w),1):new Gl(t.left+t.width-f,t.top+w),this.bottomRightPaddingBox=o>0||a>0?Jl(t.left+Math.min(g,t.width-b),t.top+Math.min(u,t.height-m),Math.max(0,o-f),Math.max(0,a-m),2):new Gl(t.left+t.width-f,t.top+t.height-m),this.bottomLeftPaddingBox=l>0||c>0?Jl(t.left+b,t.top+Math.min(B,t.height-m),Math.max(0,l-b),Math.max(0,c-m),3):new Gl(t.left+b,t.top+t.height-m),this.topLeftContentBox=s>0||r>0?Jl(t.left+b+x,t.top+w+C,Math.max(0,s-(b+x)),Math.max(0,r-(w+C)),0):new Gl(t.left+b+x,t.top+w+C),this.topRightContentBox=i>0||n>0?Jl(t.left+Math.min(h,t.width+b+x),t.top+w+C,h>t.width+b+x?0:i-b+x,n-(w+C),1):new Gl(t.left+t.width-(f+y),t.top+w+C),this.bottomRightContentBox=o>0||a>0?Jl(t.left+Math.min(g,t.width-(b+x)),t.top+Math.min(u,t.height+w+C),Math.max(0,o-(f+y)),a-(m+Q),2):new Gl(t.left+t.width-(f+y),t.top+t.height-(m+Q)),this.bottomLeftContentBox=l>0||c>0?Jl(t.left+b+x,t.top+B,Math.max(0,l-(b+x)),c-(m+Q),3):new Gl(t.left+b+x,t.top+t.height-(m+Q))}},Jl=(A,e,t,s,r)=>{let i=(Math.sqrt(2)-1)/3*4,n=t*i,o=s*i,a=A+t,l=e+s;switch(r){case 0:return new $l(new Gl(A,l),new Gl(A,l-o),new Gl(a-n,e),new Gl(a,e));case 1:return new $l(new Gl(A,e),new Gl(A+n,e),new Gl(a,l-o),new Gl(a,l));case 2:return new $l(new Gl(a,e),new Gl(a,e+o),new Gl(A+n,l),new Gl(A,l));default:return new $l(new Gl(a,l),new Gl(a-n,l),new Gl(A,e+o),new Gl(A,e))}},zl=A=>[A.topLeftBorderBox,A.topRightBorderBox,A.bottomRightBorderBox,A.bottomLeftBorderBox],_l=A=>[A.topLeftContentBox,A.topRightContentBox,A.bottomRightContentBox,A.bottomLeftContentBox],jl=A=>[A.topLeftPaddingBox,A.topRightPaddingBox,A.bottomRightPaddingBox,A.bottomLeftPaddingBox],Zl=class{constructor(A,e,t){this.offsetX=A,this.offsetY=e,this.matrix=t,this.type=0,this.target=6}},ql=class{constructor(A,e){this.path=A,this.target=e,this.type=1}},Ac=class{constructor(A){this.opacity=A,this.type=2,this.target=6}},ec=class{constructor(A){this.applyClip=A,this.type=3,this.target=6}},tc={[So.NORMAL]:"source-over",[So.MULTIPLY]:"multiply",[So.SCREEN]:"screen",[So.OVERLAY]:"overlay",[So.DARKEN]:"darken",[So.LIGHTEN]:"lighten",[So.COLOR_DODGE]:"color-dodge",[So.COLOR_BURN]:"color-burn",[So.HARD_LIGHT]:"hard-light",[So.SOFT_LIGHT]:"soft-light",[So.DIFFERENCE]:"difference",[So.EXCLUSION]:"exclusion",[So.HUE]:"hue",[So.SATURATION]:"saturation",[So.COLOR]:"color",[So.LUMINOSITY]:"luminosity"},sc=class{constructor(A){this.mixBlendMode=A,this.type=4,this.target=6,this.compositeOperation=tc[A]}},rc=class A{constructor(e){this.type=5,this.target=6;let t=A.parseDropShadow(e);this.shadow=t.shadow,this.safeFilterString=t.safeFilterString}static parseDropShadow(e){if(!e)return{safeFilterString:""};let t=A.findDropShadows(e);if(0===t.length)return{safeFilterString:e};let s=A.parseDropShadowBody(t[0].body),r="",i=0;for(let A of t)r+=e.slice(i,A.start),i=A.end;return r+=e.slice(i),{shadow:s,safeFilterString:r.replace(/\s+/g," ").trim()}}static findDropShadows(A){let e,t=[],s=/drop-shadow\(/gi;for(;null!==(e=s.exec(A));){let s=e.index+12-1,r=e.index,i=1,n=s+1;for(;n<A.length&&i>0;){let e=A[n];"("===e?i++:")"===e&&i--,n++}if(0!==i)break;let o=A.slice(s+1,n-1);t.push({body:o,start:r,end:n})}return t}static parseDropShadowBody(e){let t,s=A.tokenizeFilterArgs(e.trim()),r=[];for(let e of s)A.isCSSLength(e)?r.push(parseFloat(e)):e&&(t=e);if(!(r.length<2||r.length>3))return{offsetX:r[0],offsetY:r[1],blur:r[2]??0,color:t??"rgba(0,0,0,1)"}}static tokenizeFilterArgs(A){let e=[],t="",s=0;for(let r=0;r<A.length;r++){let i=A[r];"("===i?(s++,t+=i):")"===i?(s--,t+=i):/\s/.test(i)?s>0?t+=i:t&&(e.push(t),t=""):t+=i}return t&&e.push(t),e}static isCSSLength(A){return/^-?[\d.]+(px|em|rem|pt|cm|mm|in|pc|ex|ch|vw|vh|vmin|vmax|%)?$/i.test(A)}},ic=A=>0===A.type,nc=A=>1===A.type,oc=A=>2===A.type,ac=A=>3===A.type,lc=A=>4===A.type,cc=A=>5===A.type,dc=class{constructor(A){this.element=A,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}},pc=class{constructor(A,e){if(this.container=A,this.parent=e,this.effects=[],this.curves=new Wl(this.container),this.container.styles.opacity<1&&this.effects.push(new Ac(this.container.styles.opacity)),null!==this.container.styles.rotate){let A=this.container.styles.transformOrigin,e=this.container.bounds.left+ps(A[0],this.container.bounds.width),t=this.container.bounds.top+ps(A[1],this.container.bounds.height),s=this.container.styles.rotate*Math.PI/180,r=Math.cos(s),i=Math.sin(s),n=[r,i,-i,r,0,0];this.effects.push(new Zl(e,t,n))}if(null!==this.container.styles.transform){let A=this.container.styles.transformOrigin,e=this.container.bounds.left+ps(A[0],this.container.bounds.width),t=this.container.bounds.top+ps(A[1],this.container.bounds.height),s=this.container.styles.transform;this.effects.push(new Zl(e,t,s))}if(hc(this.container.styles)){let A=zl(this.curves),e=jl(this.curves);Nl(A,e)?this.effects.push(new ql(A,6)):(this.effects.push(new ql(A,2)),this.effects.push(new ql(e,4)))}if(0!==this.container.styles.clipPath.type){let A=gc(this.container.styles.clipPath,this.container.bounds);A&&this.effects.push(A)}if(this.container.styles.mixBlendMode!==So.NORMAL&&this.effects.push(new sc(this.container.styles.mixBlendMode)),null!==this.container.styles.filter&&this.effects.push(new rc(this.container.styles.filter)),1!==this.container.styles.zoom){let A=this.container.styles.transformOrigin,e=this.container.bounds.left+ps(A[0],this.container.bounds.width),t=this.container.bounds.top+ps(A[1],this.container.bounds.height),s=this.container.styles.zoom,r=[s,0,0,s,0,0];this.effects.push(new Zl(e,t,r))}}getEffects(A){let e=-1===[2,3].indexOf(this.container.styles.position),t=this.parent,s=this.effects.slice(0);for(;t;){let A=t.effects.filter(A=>!nc(A));if(e||0!==t.container.styles.position||!t.parent){if(e=-1===[2,3].indexOf(t.container.styles.position),hc(t.container.styles)){let A=zl(t.curves),e=jl(t.curves);Nl(A,e)||s.unshift(new ql(e,6))}s.unshift(...A)}else s.unshift(...A);t=t.parent}return s.filter(e=>Yr(e.target,A))}},hc=A=>0!==A.overflowX||0!==A.overflowY,uc=(A,e,t,s,r)=>"closest-side"===A?Math.min(e-t,s-e):"farthest-side"===A?Math.max(e-t,s-e):ps(A,r),gc=(A,e)=>{let{left:t,top:s,width:r,height:i}=e;switch(A.type){case 1:{let e=ps(A.left,r),n=ps(A.top,i),o=t+e,a=s+n,l=Math.max(0,r-e-ps(A.right,r)),c=Math.max(0,i-n-ps(A.bottom,i));return new ec(A=>{A.beginPath(),A.rect(o,a,l,c),A.clip()})}case 2:{let e,n=t+ps(A.cx,r),o=s+ps(A.cy,i);return e="closest-side"===A.radius?Math.min(n-t,o-s,t+r-n,s+i-o):"farthest-side"===A.radius?Math.max(n-t,o-s,t+r-n,s+i-o):ps(A.radius,Math.sqrt(r*r+i*i)/Math.SQRT2),new ec(A=>{A.beginPath(),A.arc(n,o,Math.max(0,e),0,2*Math.PI),A.clip()})}case 3:{let e=t+ps(A.cx,r),n=s+ps(A.cy,i),o=uc(A.rx,e,t,t+r,r),a=uc(A.ry,n,s,s+i,i);return new ec(A=>{A.beginPath(),A.ellipse(e,n,Math.max(0,o),Math.max(0,a),0,0,2*Math.PI),A.clip()})}case 4:{let e=A.points.map(([A,e])=>[t+ps(A,r),s+ps(e,i)]);return new ec(A=>{if(A.beginPath(),e.length>0){A.moveTo(e[0][0],e[0][1]);for(let t=1;t<e.length;t++)A.lineTo(e[t][0],e[t][1]);A.closePath()}A.clip()})}case 5:{let{d:e}=A,r=null;return new ec(A=>{try{r||(r=new Path2D(e));let i=A.getTransform();A.translate(t,s),A.clip(r),A.setTransform(i)}catch{}})}default:return null}},Bc=(A,e,t,s)=>{A.container.elements.forEach(r=>{let i=r.createsRealStackingContext,n=r.createsStackingContext,o=new pc(r,A);Yr(r.styles.display,2048)&&s.push(o);let a=r.isListOwner?[]:s;if(i||n){let A=i||r.styles.isPositioned()?t:e,s=new dc(o);if(r.styles.isPositioned()||r.styles.opacity<1||r.styles.isTransformed()){let e=r.styles.zIndex.order;if(e<0){let t=0;A.negativeZIndex.some((A,s)=>e>A.element.container.styles.zIndex.order?(t=s,!1):t>0),A.negativeZIndex.splice(t,0,s)}else if(e>0){let t=0;A.positiveZIndex.some((A,s)=>e>=A.element.container.styles.zIndex.order?(t=s+1,!1):t>0),A.positiveZIndex.splice(t,0,s)}else A.zeroOrAutoZIndexOrTransformedOrOpacity.push(s)}else r.styles.isFloating()?A.nonPositionedFloats.push(s):A.nonPositionedInlineLevel.push(s);Bc(o,s,i?s:t,a)}else r.styles.isInlineLevel()?e.inlineLevel.push(o):e.nonInlineLevel.push(o),Bc(o,e,t,a);r.isListOwner&&wc(r,a)})},wc=(A,e)=>{let t=A instanceof Ql?A.start:1,s=A instanceof Ql&&A.reversed;for(let A=0;A<e.length;A++){let r=e[A];r.container instanceof yl&&"number"==typeof r.container.value&&0!==r.container.value&&(t=r.container.value),r.listValue=oi(t,r.container.styles.listStyleType,!0),t+=s?-1:1}},fc=A=>{let e=new pc(A,null),t=new dc(e),s=[];return Bc(e,t,t,s),wc(e.container,s),t},mc=A=>{let e=A.bounds,t=A.styles;return e.add(t.borderLeftWidth,t.borderTopWidth,-(t.borderRightWidth+t.borderLeftWidth),-(t.borderTopWidth+t.borderBottomWidth))},bc=A=>{let e=A.styles,t=A.bounds,s=ps(e.paddingLeft,t.width),r=ps(e.paddingRight,t.width),i=ps(e.paddingTop,t.width),n=ps(e.paddingBottom,t.width);return t.add(s+e.borderLeftWidth,i+e.borderTopWidth,-(e.borderRightWidth+e.borderLeftWidth+s+r),-(e.borderTopWidth+e.borderBottomWidth+i+n))},Cc=(A,e)=>0===A?e.bounds:2===A?bc(e):mc(e),yc=(A,e)=>0===A?e.bounds:2===A?bc(e):mc(e),Qc=(A,e,t)=>{let s=Cc(vc(A.styles.backgroundOrigin,e),A),r=yc(vc(A.styles.backgroundClip,e),A),i=Uc(vc(A.styles.backgroundSize,e),t,s),[n,o]=i,a=ds(vc(A.styles.backgroundPosition,e),s.width-n,s.height-o),l=Ec(vc(A.styles.backgroundRepeat,e),a,i,s,r),c=Math.round(s.left+a[0]),d=Math.round(s.top+a[1]);return n=Math.max(1,n),o=Math.max(1,o),[l,c,d,n,o]},xc=A=>Ot(A)&&"auto"===A.value,Fc=A=>"number"==typeof A,Uc=(A,[e,t,s],r)=>{let[i,n]=A;if(!i)return[0,0];if(es(i)&&n&&es(n))return[ps(i,r.width),ps(n,r.height)];let o=Fc(s);if(Ot(i)&&("contain"===i.value||"cover"===i.value))return Fc(s)?r.width/r.height<s!=("cover"===i.value)?[r.width,r.width/s]:[r.height*s,r.height]:[r.width,r.height];let a=Fc(e),l=Fc(t),c=a||l;if(xc(i)&&(!n||xc(n)))return a&&l?[e,t]:o||c?c&&o?[a?e:t*s,l?t:e/s]:[a?e:r.width,l?t:r.height]:[r.width,r.height];if(o){let A=0,e=0;return es(i)?A=ps(i,r.width):es(n)&&(e=ps(n,r.height)),xc(i)?A=e*s:(!n||xc(n))&&(e=A/s),[A,e]}let d=null,p=null;if(es(i)?d=ps(i,r.width):n&&es(n)&&(p=ps(n,r.height)),null!==d&&(!n||xc(n))&&(p=a&&l?d/e*t:r.height),null!==p&&xc(i)&&(d=a&&l?p/t*e:r.width),null!==d&&null!==p)return[d,p];throw new Error("Unable to calculate background-size for element")},vc=(A,e)=>{let t=A[e];return typeof t>"u"?A[0]:t},Ec=(A,[e,t],[s,r],i,n)=>{switch(A){case 2:return[new Gl(Math.round(i.left),Math.round(i.top+t)),new Gl(Math.round(i.left+i.width),Math.round(i.top+t)),new Gl(Math.round(i.left+i.width),Math.round(r+i.top+t)),new Gl(Math.round(i.left),Math.round(r+i.top+t))];case 3:return[new Gl(Math.round(i.left+e),Math.round(i.top)),new Gl(Math.round(i.left+e+s),Math.round(i.top)),new Gl(Math.round(i.left+e+s),Math.round(i.height+i.top)),new Gl(Math.round(i.left+e),Math.round(i.height+i.top))];case 1:return[new Gl(Math.round(i.left+e),Math.round(i.top+t)),new Gl(Math.round(i.left+e+s),Math.round(i.top+t)),new Gl(Math.round(i.left+e+s),Math.round(i.top+t+r)),new Gl(Math.round(i.left+e),Math.round(i.top+t+r))];default:return[new Gl(Math.round(n.left),Math.round(n.top)),new Gl(Math.round(n.left+n.width),Math.round(n.top)),new Gl(Math.round(n.left+n.width),Math.round(n.height+n.top)),new Gl(Math.round(n.left),Math.round(n.height+n.top))]}},kc=class{constructor(A){this.ctx=A}render(A,e){this.ctx.fillStyle=bs(e.textDecorationColor||e.color);let t=1;"number"==typeof e.textDecorationThickness?t=e.textDecorationThickness:"from-font"===e.textDecorationThickness&&(t=Math.max(1,Math.floor(.05*e.fontSize.number)));let s=0;"number"==typeof e.textUnderlineOffset&&(s=e.textUnderlineOffset);let r=e.textDecorationStyle;e.textDecorationLine.forEach(e=>{let i=0;switch(e){case 1:i=A.top+A.height-t+s;break;case 2:i=A.top;break;case 3:i=A.top+(A.height/2-t/2);break;default:return}this.draw(A.left,i,A.width,t,r)})}draw(A,e,t,s,r){switch(r){case 0:default:this.ctx.fillRect(A,e,t,s);break;case 1:{let r=Math.max(1,s);this.ctx.fillRect(A,e,t,s),this.ctx.fillRect(A,e+s+r,t,s);break}case 2:this.drawPattern(A,e,t,s,[s,2*s]);break;case 3:this.drawPattern(A,e,t,s,[3*s,2*s]);break;case 4:this.drawWavy(A,e,t,s)}}drawPattern(A,e,t,s,r){this.ctx.save(),this.ctx.beginPath(),this.ctx.setLineDash(r),this.ctx.lineWidth=s,this.ctx.strokeStyle=this.ctx.fillStyle,this.ctx.moveTo(A,e+s/2),this.ctx.lineTo(A+t,e+s/2),this.ctx.stroke(),this.ctx.restore()}drawWavy(A,e,t,s){this.ctx.save(),this.ctx.beginPath(),this.ctx.lineWidth=s,this.ctx.strokeStyle=this.ctx.fillStyle;let r=2*s,i=4*s,n=A;for(this.ctx.moveTo(n,e+s/2);n<A+t;){let o=Math.min(n+i/2,A+t);if(this.ctx.quadraticCurveTo(n+i/4,e+s/2-r,o,e+s/2),n=o,n<A+t){let o=Math.min(n+i/2,A+t);this.ctx.quadraticCurveTo(n+i/4,e+s/2+r,o,e+s/2),n=o}}this.ctx.stroke(),this.ctx.restore()}},Hc=A=>void 0!==A&&!Number.isNaN(A),Ic=(A,e)=>{let t=A.measureText("Mg"),s=t;return{baseline:Hc(s.fontBoundingBoxAscent)?s.fontBoundingBoxAscent:Hc(t.actualBoundingBoxAscent)?t.actualBoundingBoxAscent:e,height:Hc(s.fontBoundingBoxAscent)&&Hc(s.fontBoundingBoxDescent)?s.fontBoundingBoxAscent+s.fontBoundingBoxDescent:Hc(t.actualBoundingBoxAscent)&&Hc(t.actualBoundingBoxDescent)?t.actualBoundingBoxAscent+t.actualBoundingBoxDescent:e}},Sc=(A,e)=>Ic(A,e).baseline,Lc=["-apple-system","system-ui"],Mc=/[\u2E80-\u2FFF\u3000-\u30FF\u3400-\u4DBF\u4E00-\u9FFF\uAC00-\uD7AF\uF900-\uFAFF\uFF01-\uFFEF]/,Dc=A=>Mc.test(A),Kc=()=>{if(typeof navigator>"u")return null;let A=navigator.userAgent,e=/iPhone|iPad|iPod/.test(A),t=/Macintosh/.test(A)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>1;if(!e&&!t)return null;for(let e of[/(?:iPhone|CPU(?:\siPhone)?)\sOS\s(\d+)[\._](\d+)/,/Version\/(\d+)\.(\d+)/]){let t=A.match(e);if(t&&t[1])return parseInt(t[1],10)}return null},Tc=A=>{let e=Kc();return null!==e&&e>=15&&e<17?A.map(A=>-1!==Lc.indexOf(A)?'-apple-system, "Helvetica Neue", Arial, sans-serif':A):A},Rc=()=>(typeof window<"u"?window:void 0)?.chrome?"miter":"round",Oc=class{constructor(A){this.glyphWidthCache=null,this.ctx=A.ctx,this.options=A.options,this.decorationRenderer=new kc(A.ctx)}cachedMeasureText(A,e){let t=this.glyphWidthCache;t||(t=new Map,this.glyphWidthCache=t);let s=A+e,r=t.get(s);return void 0===r&&(r=this.ctx.measureText(A).width,t.set(s,r)),r}iterateLettersWithLetterSpacing(A,e,t,s,r){if(qn(s))return void this.iterateVerticalGlyphs(A,e,t,s,r);let i=al(A.text),n=A.bounds.top+t,o=this.ctx.font,a=A.bounds.left;for(let A of i){if(Dc(A)){let e=this.ctx.textBaseline;this.ctx.textBaseline="ideographic",r(A,a,n),this.ctx.textBaseline=e}else r(A,a,n);a+=this.cachedMeasureText(A,o)+e}}iterateVerticalGlyphs(A,e,t,s,r){let i=al(A.text),n=this.ctx.font,o=4===s?-Math.PI/2:Math.PI/2,a=A.bounds.top;for(let l=0;l<i.length;){let c=i[l];if(!(Ao(s)||!Dc(c)&&c.trim().length>0)){let s=this.ctx.textBaseline;Dc(c)&&(this.ctx.textBaseline="ideographic"),r(c,A.bounds.left,a+t),this.ctx.textBaseline=s,a+=this.cachedMeasureText(c,n)+e,l++;continue}let d=l;for(;l<i.length;){let A=i[l];if(!Ao(s)&&!Dc(A)&&0===A.trim().length)break;if(!(Ao(s)||!Dc(A)&&A.trim().length>0))break;l++}this.ctx.save(),this.ctx.translate(A.bounds.left+t,a),this.ctx.rotate(o);let p=0;for(let A=d;A<l;A++)r(i[A],0,p),p+=this.cachedMeasureText(i[A],n)+e;this.ctx.restore(),a+=p}}renderTextWithLetterSpacing(A,e,t,s=0){this.renderFillText(A,e,t,s)}canRenderWholeText(A,e){return 0===A&&!qn(e)}renderFillText(A,e,t,s){this.canRenderWholeText(e,s)?this.ctx.fillText(A.text,A.bounds.left,A.bounds.top+t):this.iterateLettersWithLetterSpacing(A,e,t,s,(A,e,t)=>{this.ctx.fillText(A,e,t)})}renderStrokeText(A,e,t,s){this.canRenderWholeText(e,s)?this.ctx.strokeText(A.text,A.bounds.left,A.bounds.top+t):this.iterateLettersWithLetterSpacing(A,e,t,s,(A,e,t)=>{this.ctx.strokeText(A,e,t)})}renderTextStrokeWithStyle(A,e,t){!e.webkitTextStrokeWidth||!A.text.trim().length||(this.ctx.strokeStyle=bs(e.webkitTextStrokeColor),this.ctx.lineWidth=e.webkitTextStrokeWidth,this.ctx.lineJoin=Rc(),this.renderStrokeText(A,e.letterSpacing,t,e.writingMode),this.ctx.strokeStyle="",this.ctx.lineWidth=0,this.ctx.lineJoin="miter")}renderTextFillWithShadows(A,e,t){this.ctx.fillStyle=bs(e.color),this.renderTextWithLetterSpacing(A,e.letterSpacing,t,e.writingMode);let s=e.textShadow;s.length&&A.text.trim().length&&(s.slice(0).reverse().forEach(s=>{this.ctx.shadowColor=bs(s.color),this.ctx.shadowOffsetX=s.offsetX.number*this.options.scale,this.ctx.shadowOffsetY=s.offsetY.number*this.options.scale,this.ctx.shadowBlur=s.blur.number,this.renderTextWithLetterSpacing(A,e.letterSpacing,t,e.writingMode)}),this.ctx.shadowColor="",this.ctx.shadowOffsetX=0,this.ctx.shadowOffsetY=0,this.ctx.shadowBlur=0)}renderTextBoundWithPaintOrder(A,e,t,s){t.forEach(t=>{switch(t){case 0:this.ctx.fillStyle=bs(e.color),this.renderTextWithLetterSpacing(A,e.letterSpacing,s,e.writingMode);break;case 1:this.renderTextStrokeWithStyle(A,e,s)}})}renderTextDecoration(A,e){this.decorationRenderer.render(A,e)}truncateTextWithEllipsis(A,e,t){let s=this.ctx.measureText("\u2026").width,r=al(A);if(0===t){let A=A=>this.ctx.measureText(r.slice(0,A).join("")).width+s<=e,t=0,i=r.length;for(;t<i;){let e=t+i+1>>1;A(e)?t=e:i=e-1}return r.slice(0,t).join("")+"\u2026"}{let A=this.ctx.font,i=s,n=[];for(let s of r){let r=this.cachedMeasureText(s,A);if(i+r>e)break;n.push(s),i+=r+t}return n.join("")+"\u2026"}}createFontStyle(A){let e=A.fontVariant.filter(A=>"normal"===A||"small-caps"===A).join(""),t=Tc(A.fontFamily).join(", "),s=Tt(A.fontSize)?`${A.fontSize.number}${A.fontSize.unit}`:`${A.fontSize.number}px`;return[[A.fontStyle,e,A.fontWeight,s,t].join(" "),t,s]}renderLineClampedText(A,e,t,s,r){let i=1.5*e.fontSize.number,n=[],o=[],a=A.textBounds[0].bounds.top;A.textBounds.forEach(A=>{Math.abs(A.bounds.top-a)>=.5*i?(o.length>0&&n.push(o),o=[A],a=A.bounds.top):o.push(A)}),o.length>0&&n.push(o);let l=e.webkitLineClamp;if(n.length<=l)return!1;for(let A=0;A<l-1;A++)n[A].forEach(A=>this.renderTextBoundWithPaintOrder(A,e,t,s));let c=n[l-1];if(c?.length&&r){let A=c.map(A=>A.text).join(""),i=c[0],n=r.width-(i.bounds.left-r.left),o=new rl(this.truncateTextWithEllipsis(A,n,e.letterSpacing),i.bounds);for(let A of t)0===A?(this.ctx.fillStyle=bs(e.color),this.renderTextWithLetterSpacing(o,e.letterSpacing,s,e.writingMode)):1===A&&this.renderTextStrokeWithStyle(o,e,s)}return!0}renderEllipsisText(A,e,t,s,r){let i=1.5*e.fontSize.number,n=A.textBounds[0].bounds.top;if(!A.textBounds.every(A=>Math.abs(A.bounds.top-n)<.5*i))return!1;let o=A.textBounds.map(A=>A.text).join("").replace(/\s+/g," ").trim();if(this.ctx.measureText(o).width<=r.width+1)return!1;let a=new rl(this.truncateTextWithEllipsis(o,r.width,e.letterSpacing),A.textBounds[0].bounds);for(let A of t)0===A?this.renderTextFillWithShadows(a,e,s):1===A&&this.renderTextStrokeWithStyle(a,e,s);return!0}async renderTextNode(A,e,t){this.glyphWidthCache=null;let[s]=this.createFontStyle(e);this.ctx.font=s,this.ctx.direction=1===e.direction?"rtl":"ltr",this.ctx.textAlign="left",this.ctx.textBaseline="alphabetic";let r=e.paintOrder,i=Sc(this.ctx,e.fontSize.number);e.webkitLineClamp>0&&2&e.display&&1===e.overflowY&&A.textBounds.length>0&&this.renderLineClampedText(A,e,r,i,t)||1===e.textOverflow&&t&&1===e.overflowX&&A.textBounds.length>0&&this.renderEllipsisText(A,e,r,i,t)||A.textBounds.forEach(A=>{r.forEach(t=>{0===t?(this.renderTextFillWithShadows(A,e,i),e.textDecorationLine.length&&this.renderTextDecoration(A.bounds,e)):1===t&&this.renderTextStrokeWithStyle(A,e,i)})})}},Pc=(A,e)=>{e.forEach((e,t)=>{let s=Yl(e)?e.start:e;0===t?A.moveTo(s.x,s.y):A.lineTo(s.x,s.y),Yl(e)&&A.bezierCurveTo(e.startControl.x,e.startControl.y,e.endControl.x,e.endControl.y,e.end.x,e.end.y)})},Nc=(A,e)=>{A.beginPath(),Pc(A,e),A.closePath()},Vc=class{constructor(A){this.maxSize=A,this._map=new Map}get(A){if(!this._map.has(A))return;let e=this._map.get(A);return this._map.delete(A),this._map.set(A,e),e}set(A,e){if(this._map.has(A))this._map.delete(A);else if(this._map.size>=this.maxSize){let A=this._map.keys().next().value;void 0!==A&&this._map.delete(A)}this._map.set(A,e)}get size(){return this._map.size}clear(){this._map.clear()}},Gc=class{constructor(A){this.patternCache=new Vc(50),this.ctx=A.ctx,this.context=A.context,this.canvas=A.canvas}async renderBackgroundImage(A){let e=A.styles.backgroundImage.length-1,t=A.styles.backgroundBlendMode,s=0;for(let r of A.styles.backgroundImage.slice(0).reverse()){if(s>0){let A=t[s]??t[0]??"normal";"normal"!==A&&(this.ctx.save(),this.ctx.globalCompositeOperation=A)}0===r.type?await this.renderBackgroundURLImage(A,r,e):ki(r)?this.renderLinearGradient(A,r,e):Ii(r)?this.renderRepeatingLinearGradient(A,r,e):Hi(r)&&this.renderRadialGradient(A,r,e),s>0&&"normal"!==(t[s]??t[0]??"normal")&&this.ctx.restore(),e--,s++}}async renderBackgroundURLImage(A,e,t){let s,r=e.url;try{s=await this.context.cache.match(r)}catch(A){this.context.logger.error(`Error loading background-image ${r}`),this.context.onError?.(A instanceof Error?A:new Error(String(A)))}if(s){let e=isNaN(s.width)||0===s.width?1:s.width,i=isNaN(s.height)||0===s.height?1:s.height,[n,o,a,l,c]=Qc(A,t,[e,i,e/i]),d=vc(A.styles.backgroundRepeat,t),p=1===d?"no-repeat":2===d?"repeat-x":3===d?"repeat-y":"repeat",h=`${r}|${Math.round(l)}x${Math.round(c)}|${A.styles.imageRendering}|${p}`,u=this.patternCache.get(h);if(!u){let e=this.resizeImage(s,l,c,A.styles.imageRendering);u=this.ctx.createPattern(e,p),this.patternCache.set(h,u)}this.renderRepeat(n,u,o,a)}}renderRepeatingLinearGradient(A,e,t){let[s,r,i,n,o]=Qc(A,t,[null,null,null]),[a,l,c,d,p]=hi(e.angle,n,o),h=di(e.stops,a||1),u=h[h.length-1],g=h[0],B=u.stop-g.stop;if(B<=0)return void this.renderLinearGradient(A,e,t);let w=c-l,f=p-d,m=B/(Math.sqrt(w*w+f*f)||1),b=l,C=d,y=l+w*m,Q=d+f*m,x=this.canvas.ownerDocument??document,F=`rlg|${e.angle}|${Math.round(B)}|${JSON.stringify(e.stops)}`,U=this.patternCache.get(F);if(!U){let A=x.createElement("canvas"),e=Math.max(1,Math.ceil(B));A.width=e,A.height=e;let t=A.getContext("2d");if(!t)return;let s=t.createLinearGradient(b-r,C-i,y-r,Q-i);h.forEach(A=>{s.addColorStop((A.stop-g.stop)/B,bs(A.color))}),t.fillStyle=s,t.fillRect(0,0,e,e),e>0&&(U=this.ctx.createPattern(A,"repeat"),this.patternCache.set(F,U))}U&&this.renderRepeat(s,U,r,i)}renderLinearGradient(A,e,t){let[s,r,i,n,o]=Qc(A,t,[null,null,null]),[a,l,c,d,p]=hi(e.angle,n,o),h=`lg|${e.angle}|${Math.round(n)}x${Math.round(o)}|${JSON.stringify(e.stops)}`,u=this.patternCache.get(h);if(!u){let A=(this.canvas.ownerDocument??document).createElement("canvas");A.width=n,A.height=o;let t=A.getContext("2d");if(!t)return;let s=t.createLinearGradient(l,d,c,p);di(e.stops,a||1).forEach(A=>s.addColorStop(A.stop,bs(A.color))),t.fillStyle=s,t.fillRect(0,0,n,o),n>0&&o>0&&(u=this.ctx.createPattern(A,"repeat"),this.patternCache.set(h,u))}u&&this.renderRepeat(s,u,r,i)}renderRadialGradient(A,e,t){let[s,r,i,n,o]=Qc(A,t,[null,null,null]),a=0===e.position.length?[ls]:e.position,l=ps(a[0],n),c=ps(a[a.length-1],o),[d,p]=Bi(e,l,c,n,o);if((0===d||0===p)&&(d=Math.max(d,.01),p=Math.max(p,.01)),d>0&&p>0){let A=`rg|${Math.round(l)}x${Math.round(c)}|${Math.round(d)}x${Math.round(p)}|${JSON.stringify(e.stops)}`,t=di(e.stops,2*d),n=t[t.length-1],o=this.patternCache.get(A);if(!o){let e=(this.canvas.ownerDocument??document).createElement("canvas");e.width=Math.ceil(2*d),e.height=Math.ceil(2*p);let s=e.getContext("2d");if(s){let r=s.createRadialGradient(d,d,0,d,d,d);t.forEach(A=>r.addColorStop(A.stop,bs(A.color))),s.fillStyle=r,d!==p&&s.scale(1,p/d),s.fillRect(0,0,2*d,2*d),o=this.ctx.createPattern(e,"no-repeat"),this.patternCache.set(A,o)}}o&&(this.path(s),this.ctx.save(),this.ctx.clip(),n&&(this.ctx.fillStyle=bs(n.color),this.ctx.fill()),this.ctx.translate(r+l-d,i+c-p),this.ctx.fillStyle=o,this.ctx.fillRect(0,0,2*d,2*p),this.ctx.restore())}}renderRepeat(A,e,t,s){this.path(A),this.ctx.fillStyle=e,this.ctx.translate(t,s),this.ctx.fill(),this.ctx.translate(-t,-s)}resizeImage(A,e,t,s){let r=(this.canvas.ownerDocument??document).createElement("canvas");r.width=Math.max(1,e),r.height=Math.max(1,t);let i=r.getContext("2d");return i?(2===s||1===s?(this.context.logger.debug("Disabling image smoothing for background image due to CSS image-rendering"),i.imageSmoothingEnabled=!1):3===s?(this.context.logger.debug("Enabling image smoothing for background image due to CSS image-rendering: smooth"),i.imageSmoothingEnabled=!0):i.imageSmoothingEnabled=this.ctx.imageSmoothingEnabled,this.ctx.imageSmoothingQuality&&(i.imageSmoothingQuality=this.ctx.imageSmoothingQuality),i.drawImage(A,0,0,A.width,A.height,0,0,e,t),r):A}path(A){Nc(this.ctx,A)}},Xc=(A,e)=>{switch(e){case 0:return zc(A.topLeftBorderBox,A.topLeftPaddingBox,A.topRightBorderBox,A.topRightPaddingBox);case 1:return zc(A.topRightBorderBox,A.topRightPaddingBox,A.bottomRightBorderBox,A.bottomRightPaddingBox);case 2:return zc(A.bottomRightBorderBox,A.bottomRightPaddingBox,A.bottomLeftBorderBox,A.bottomLeftPaddingBox);default:return zc(A.bottomLeftBorderBox,A.bottomLeftPaddingBox,A.topLeftBorderBox,A.topLeftPaddingBox)}},$c=(A,e)=>{switch(e){case 0:return zc(A.topLeftBorderBox,A.topLeftBorderDoubleOuterBox,A.topRightBorderBox,A.topRightBorderDoubleOuterBox);case 1:return zc(A.topRightBorderBox,A.topRightBorderDoubleOuterBox,A.bottomRightBorderBox,A.bottomRightBorderDoubleOuterBox);case 2:return zc(A.bottomRightBorderBox,A.bottomRightBorderDoubleOuterBox,A.bottomLeftBorderBox,A.bottomLeftBorderDoubleOuterBox);default:return zc(A.bottomLeftBorderBox,A.bottomLeftBorderDoubleOuterBox,A.topLeftBorderBox,A.topLeftBorderDoubleOuterBox)}},Yc=(A,e)=>{switch(e){case 0:return zc(A.topLeftBorderDoubleInnerBox,A.topLeftPaddingBox,A.topRightBorderDoubleInnerBox,A.topRightPaddingBox);case 1:return zc(A.topRightBorderDoubleInnerBox,A.topRightPaddingBox,A.bottomRightBorderDoubleInnerBox,A.bottomRightPaddingBox);case 2:return zc(A.bottomRightBorderDoubleInnerBox,A.bottomRightPaddingBox,A.bottomLeftBorderDoubleInnerBox,A.bottomLeftPaddingBox);default:return zc(A.bottomLeftBorderDoubleInnerBox,A.bottomLeftPaddingBox,A.topLeftBorderDoubleInnerBox,A.topLeftPaddingBox)}},Wc=(A,e)=>{switch(e){case 0:return Jc(A.topLeftBorderStroke,A.topRightBorderStroke);case 1:return Jc(A.topRightBorderStroke,A.bottomRightBorderStroke);case 2:return Jc(A.bottomRightBorderStroke,A.bottomLeftBorderStroke);default:return Jc(A.bottomLeftBorderStroke,A.topLeftBorderStroke)}},Jc=(A,e)=>{let t=[];return Yl(A)?t.push(A.subdivide(.5,!1)):t.push(A),Yl(e)?t.push(e.subdivide(.5,!0)):t.push(e),t},zc=(A,e,t,s)=>{let r=[];return Yl(A)?r.push(A.subdivide(.5,!1)):r.push(A),Yl(t)?r.push(t.subdivide(.5,!0)):r.push(t),Yl(s)?r.push(s.subdivide(.5,!0).reverse()):r.push(s),Yl(e)?r.push(e.subdivide(.5,!1).reverse()):r.push(e),r},_c=class{constructor(A,e){this.ctx=A.ctx,this.pathCallbacks=e}async renderSolidBorder(A,e,t){this.pathCallbacks.path(Xc(t,e)),this.ctx.fillStyle=bs(A),this.ctx.fill()}async renderDoubleBorder(A,e,t,s){if(e<3)return void await this.renderSolidBorder(A,t,s);let r=$c(s,t);this.pathCallbacks.path(r),this.ctx.fillStyle=bs(A),this.ctx.fill();let i=Yc(s,t);this.pathCallbacks.path(i),this.ctx.fill()}async renderDashedDottedBorder(A,e,t,s,r){this.ctx.save();let i,n,o,a,l,c=Wc(s,t),d=Xc(s,t);2===r&&(this.pathCallbacks.path(d),this.ctx.clip()),Yl(d[0])?(i=d[0].start.x,n=d[0].start.y):(i=d[0].x,n=d[0].y),Yl(d[1])?(o=d[1].end.x,a=d[1].end.y):(o=d[1].x,a=d[1].y),l=0===t||2===t?Math.abs(i-o):Math.abs(n-a),this.ctx.beginPath(),3===r?this.pathCallbacks.formatPath(c):this.pathCallbacks.formatPath(d.slice(0,2));let p=e<3?3*e:2*e,h=e<3?2*e:e;3===r&&(p=e,h=e);let u=!0;if(l<=2*p)u=!1;else if(l<=2*p+h){let A=l/(2*p+h);p*=A,h*=A}else{let A=Math.floor((l+h)/(p+h)),e=(l-A*p)/(A-1),t=(l-(A+1)*p)/A;h=t<=0||Math.abs(h-e)<Math.abs(h-t)?e:t}if(u&&(3===r?this.ctx.setLineDash([0,p+h]):this.ctx.setLineDash([p,h])),3===r?(this.ctx.lineCap="round",this.ctx.lineWidth=e):this.ctx.lineWidth=2*e+1.1,this.ctx.strokeStyle=bs(A),this.ctx.stroke(),this.ctx.setLineDash([]),2===r){if(Yl(d[0])){let A=d[3],e=d[0];this.ctx.beginPath(),this.pathCallbacks.formatPath([new Gl(A.end.x,A.end.y),new Gl(e.start.x,e.start.y)]),this.ctx.stroke()}if(Yl(d[1])){let A=d[1],e=d[2];this.ctx.beginPath(),this.pathCallbacks.formatPath([new Gl(A.end.x,A.end.y),new Gl(e.start.x,e.start.y)]),this.ctx.stroke()}}this.ctx.restore()}},jc=class{constructor(A){this.ctx=A}renderBorderImage(A,e,t,s,r,i,n,o){let a=e.naturalWidth||e.width,l=e.naturalHeight||e.height;if(a<=0||l<=0)return;let c=Math.min("percent"===t.unit?t.top/100*l:Math.min(t.top,l),l),d=Math.min("percent"===t.unit?t.right/100*a:Math.min(t.right,a),a),p=Math.min("percent"===t.unit?t.bottom/100*l:Math.min(t.bottom,l),l),h=Math.min("percent"===t.unit?t.left/100*a:Math.min(t.left,a),a),{left:u,top:g,width:B,height:w}=A;if(B<=0||w<=0)return;let f=Math.min(r,w),m=Math.min(i,B),b=Math.min(n,w-f),C=Math.min(o,B-m);this.drawRegion(e,0,0,h,c,u,g,C,f),this.drawRegion(e,a-d,0,d,c,u+B-m,g,m,f),this.drawRegion(e,a-d,l-p,d,p,u+B-m,g+w-b,m,b),this.drawRegion(e,0,l-p,h,p,u,g+w-b,C,b);let y=[{sx:h,sy:0,sw:a-h-d,sh:c,dx:u+C,dy:g,dw:B-C-m,dh:f,repeat:s.horizontal},{sx:a-d,sy:c,sw:d,sh:l-c-p,dx:u+B-m,dy:g+f,dw:m,dh:w-f-b,repeat:s.vertical},{sx:h,sy:l-p,sw:a-h-d,sh:p,dx:u+C,dy:g+w-b,dw:B-C-m,dh:b,repeat:s.horizontal},{sx:0,sy:c,sw:h,sh:l-c-p,dx:u,dy:g+f,dw:C,dh:w-f-b,repeat:s.vertical}];for(let A of y){if(A.sw<=0||A.sh<=0||A.dw<=0||A.dh<=0)continue;let t=A.dw>=A.dh;0===A.repeat?this.ctx.drawImage(e,A.sx,A.sy,A.sw,A.sh,A.dx,A.dy,A.dw,A.dh):(1===A.repeat||2===A.repeat)&&this.drawRepeatedEdge(e,A,t,2===A.repeat)}if(t.fill){let A=h,t=c,s=a-h-d,r=l-c-p,i=u+C,n=g+f,o=B-C-m,y=w-f-b;this.drawRegion(e,A,t,s,r,i,n,o,y)}}drawRegion(A,e,t,s,r,i,n,o,a){s>0&&r>0&&o>0&&a>0&&this.ctx.drawImage(A,e,t,s,r,i,n,o,a)}drawRepeatedEdge(A,e,t,s){let r,i,n=t?e.sw:e.sh,o=t?e.dw:e.dh;if(!(n<=0||o<=0)){s?(i=Math.max(1,Math.round(o/n)),r=o/i):(r=n,i=Math.ceil(o/r)),this.ctx.save(),this.ctx.beginPath(),this.ctx.rect(e.dx,e.dy,e.dw,e.dh),this.ctx.clip();for(let s=0;s<i;s++){let i=s*r,n=o-i,a=Math.min(r,n);if(a<=0)break;t?this.ctx.drawImage(A,e.sx,e.sy,e.sw,e.sh,e.dx+i,e.dy,a,e.dh):this.ctx.drawImage(A,e.sx,e.sy,e.sw,e.sh,e.dx,e.dy+i,e.dw,a)}this.ctx.restore()}}},Zc=class{constructor(A,e){this.activeEffects=[],this.didSave=!1,this.saveAtDepth=-1,this.ctx=A.ctx,this.pathCallback=e}applyEffects(A){for(;this.activeEffects.length;)this.popEffect();this.didSave=!1,this.saveAtDepth=-1;let e=A=>ic(A)||nc(A)||ac(A),t=A.reduceRight((A,t,s)=>-1!==A?A:e(t)?s:-1,-1);for(let s=0;s<A.length;s++){let r=A[s];e(r)&&(this.didSave||(this.ctx.save(),this.didSave=!0),s===t&&(this.saveAtDepth=this.activeEffects.length)),this.applyEffect(r)}}applyEffect(A){ic(A)?(this.ctx.translate(A.offsetX,A.offsetY),this.ctx.transform(A.matrix[0],A.matrix[1],A.matrix[2],A.matrix[3],A.matrix[4],A.matrix[5]),this.ctx.translate(-A.offsetX,-A.offsetY)):nc(A)?(this.pathCallback.path(A.path),this.ctx.clip()):ac(A)?A.applyClip(this.ctx):oc(A)?this.ctx.globalAlpha*=A.opacity:lc(A)?this.ctx.globalCompositeOperation=A.compositeOperation:cc(A)&&(this.ctx.filter=A.safeFilterString||"none",A.shadow&&(this.ctx.shadowOffsetX=A.shadow.offsetX,this.ctx.shadowOffsetY=A.shadow.offsetY,this.ctx.shadowBlur=A.shadow.blur,this.ctx.shadowColor=A.shadow.color)),this.activeEffects.push(A)}popEffect(){0!==this.activeEffects.length&&(this.didSave&&this.activeEffects.length-1===this.saveAtDepth&&(this.ctx.restore(),this.didSave=!1,this.saveAtDepth=-1),this.activeEffects.pop(),!this.didSave&&0===this.activeEffects.length&&(this.ctx.globalAlpha=1,this.ctx.globalCompositeOperation="source-over",this.ctx.filter="none",this.ctx.shadowOffsetX=0,this.ctx.shadowOffsetY=0,this.ctx.shadowBlur=0,this.ctx.shadowColor="rgba(0, 0, 0, 0)"))}getActiveEffectCount(){return this.activeEffects.length}hasActiveEffects(){return this.activeEffects.length>0}},qc=(A,e,t,s,r)=>{let i=0,n=0,o=A,a=e,l=t.left,c=t.top,d=t.width,p=t.height,h=d/p,u=o/a,g=r?ps(r[0],1):.5,B=r?ps(r[1],1):.5;return 2===s?u>h?(p=d/u,c+=(t.height-p)*B):(d=p*u,l+=(t.width-d)*g):4===s?u>h?(o=a*h,i+=(A-o)*g):(a=o/h,n+=(e-a)*B):8===s?(o>d?(i+=(o-d)*g,o=d):(l+=(d-o)*g,d=o),a>p?(n+=(a-p)*B,a=p):(c+=(p-a)*B,p=a)):16===s&&((u>h?d:p*u)<(o>d?o:d)?u>h?(p=d/u,c+=(t.height-p)*B):(d=p*u,l+=(t.width-d)*g):(o>d?(i+=(o-d)*g,o=d):(l+=(d-o)*g,d=o),a>p?(n+=(a-p)*B,a=p):(c+=(p-a)*B,p=a))),{sx:i,sy:n,sw:o,sh:a,dx:l,dy:c,dw:d,dh:p}},Ad=(A,e,t)=>A.height<t?new WA(A.left,e.top,A.width,e.height):A,ed=(A,e,t,s)=>{let r=[],i=e.split("\n");for(let e of i){if(s){r.push(e);continue}let i=e.split(/(\s+)/),n="";for(let e of i){let s=n+e;A.measureText(s).width<=t||""===n?n=s:(r.push(n),n=e)}r.push(n)}return r},td=A=>A instanceof Sl||A instanceof Il||A instanceof Hl&&"radio"!==A.type&&"checkbox"!==A.type,sd=A=>{switch(A){case 1:return"center";case 2:return"right";default:return"left"}},rd=class A{constructor(A,e){this.context=A,this.options=e,this.canvas=e.canvas?e.canvas:document.createElement("canvas");let t=this.canvas.getContext("2d");if(!t)throw new Error("Failed to get 2D rendering context from canvas");this.ctx=t,e.canvas||(this.canvas.width=Math.floor(e.width*e.scale),this.canvas.height=Math.floor(e.height*e.scale),this.canvas.style.width=`${e.width}px`,this.canvas.style.height=`${e.height}px`),this.ctx.scale(this.options.scale,this.options.scale),this.ctx.translate(-e.x,-e.y),this.ctx.textBaseline="bottom",void 0!==e.imageSmoothing&&(this.ctx.imageSmoothingEnabled=e.imageSmoothing),e.imageSmoothingQuality&&(this.ctx.imageSmoothingQuality=e.imageSmoothingQuality),this.backgroundRenderer=new Gc({ctx:this.ctx,context:this.context,canvas:this.canvas,options:{width:e.width,height:e.height,scale:e.scale}}),this.borderRenderer=new _c({ctx:this.ctx},{path:A=>this.path(A),formatPath:A=>this.formatPath(A)}),this.borderImageRenderer=new jc(this.ctx),this.effectsRenderer=new Zc({ctx:this.ctx},{path:A=>this.path(A)}),this.textRenderer=new Oc({ctx:this.ctx,options:{scale:e.scale}}),this.context.logger.debug(`Canvas renderer initialized (${e.width}x${e.height}) with scale ${e.scale}`)}async renderStack(A){A.element.container.styles.isVisible()&&await this.renderStackContent(A)}async renderNode(A){A.container.debugRender,A.container.styles.isVisible()&&(await this.renderNodeBackgroundAndBorders(A),await this.renderNodeContent(A))}renderReplacedElement(A,e,t){let s=t.naturalWidth||A.intrinsicWidth,r=t.naturalHeight||A.intrinsicHeight;if(t&&s>0&&r>0){let i=bc(A),n=jl(e);this.path(n),this.ctx.save(),this.ctx.clip();let{sx:o,sy:a,sw:l,sh:c,dx:d,dy:p,dw:h,dh:u}=qc(s,r,i,A.styles.objectFit,A.styles.objectPosition);this.ctx.drawImage(t,o,a,l,c,d,p,h,u),this.ctx.restore()}}async renderNodeContent(e){this.effectsRenderer.applyEffects(e.getEffects(4));let t=e.container,s=e.curves,r=t.styles,i=bc(t);for(let A of t.textNodes)await this.textRenderer.renderTextNode(A,r,i);await async function(e,t,s,r,i,n,o,a){if(i instanceof wl)try{let A=await t.cache.match(i.src),s=e.imageSmoothingEnabled;2===o.imageRendering||1===o.imageRendering?e.imageSmoothingEnabled=!1:3===o.imageRendering&&(e.imageSmoothingEnabled=!0),a(i,n,A),e.imageSmoothingEnabled=s}catch(A){t.logger.error(`Error loading image ${i.src}`),t.onError?.(A instanceof Error?A:new Error(String(A)))}if(i instanceof fl&&a(i,n,i.canvas),i instanceof Cl)try{a(i,n,await t.cache.match(i.svg))}catch(A){t.logger.error(`Error loading svg ${i.svg.substring(0,255)}`),t.onError?.(A instanceof Error?A:new Error(String(A)))}if(i instanceof Ll&&i.tree){let r=await((e,t)=>new A(e,t))(t,{scale:s.scale,backgroundColor:i.backgroundColor,x:0,y:0,width:i.width,height:i.height}).render(i.tree);i.width&&i.height&&e.drawImage(r,0,0,i.width,i.height,i.bounds.left,i.bounds.top,i.bounds.width,i.bounds.height)}}(this.ctx,this.context,{scale:this.options.scale,backgroundColor:this.options.backgroundColor,x:this.options.x,y:this.options.y,width:this.options.width,height:this.options.height},0,t,s,r,(A,e,t)=>this.renderReplacedElement(A,e,t)),function(A,e,t,s,r){if(s instanceof Hl){let e=Math.min(s.bounds.width,s.bounds.height);"checkbox"===s.type&&s.checked?(A.save(),t([new Gl(s.bounds.left+.39363*e,s.bounds.top+.79*e),new Gl(s.bounds.left+.16*e,s.bounds.top+.5549*e),new Gl(s.bounds.left+.27347*e,s.bounds.top+.44071*e),new Gl(s.bounds.left+.39694*e,s.bounds.top+.5649*e),new Gl(s.bounds.left+.72983*e,s.bounds.top+.23*e),new Gl(s.bounds.left+.84*e,s.bounds.top+.34085*e),new Gl(s.bounds.left+.39363*e,s.bounds.top+.79*e)]),A.fillStyle=bs(kl),A.fill(),A.restore()):"radio"===s.type&&s.checked&&(A.save(),A.beginPath(),A.arc(s.bounds.left+e/2,s.bounds.top+e/2,e/4,0,2*Math.PI,!0),A.fillStyle=bs(kl),A.fill(),A.restore())}if(td(s)&&s.value.length){let[i]=e.createFontStyle(r);A.font=i;let n=ps(r.fontSize,0),{baseline:o,height:a}=Ic(A,n);A.fillStyle=s instanceof Hl&&s.isPlaceholder?bs(1970632191):bs(r.color),A.textBaseline="alphabetic",A.textAlign=sd(s.styles.textAlign);let l=bc(s),c=s instanceof Hl?Ad(l,mc(s),a):l,d=0;switch(s.styles.textAlign){case 1:d+=l.width/2;break;case 2:d+=l.width}let p=0;s instanceof Hl&&(p=(l.height-a)/2);let h=l.add(d,p,0,0);A.save(),t([new Gl(c.left,c.top),new Gl(c.left+c.width,c.top),new Gl(c.left+c.width,c.top+c.height),new Gl(c.left,c.top+c.height)]),A.clip();let u=ed(A,s.value,l.width,"pre"===r.whiteSpace||"nowrap"===r.whiteSpace),g=Fn(r.lineHeight,n);u.forEach((t,s)=>{let i=h.left,n=A.measureText(t).width;switch(r.textAlign){case 1:i+=(l.width-n)/2;break;case 2:i+=l.width-n}let a=new WA(i,h.top+s*g,0,0);e.renderTextWithLetterSpacing(new rl(t,a),r.letterSpacing,o,r.writingMode)}),A.restore(),A.textBaseline="alphabetic",A.textAlign="left"}}(this.ctx,this.textRenderer,this.path.bind(this),t,r),await async function(A,e,t,s,r,i){if(Yr(r.styles.display,2048))if(null!==r.styles.listStyleImage){let t=r.styles.listStyleImage;if(0===t.type){let s=t.url;try{let t=await e.cache.match(s);A.drawImage(t,r.bounds.left-(t.width+10),r.bounds.top)}catch(A){e.logger.error(`Error loading list-style-image ${s}`),e.onError?.(A instanceof Error?A:new Error(String(A)))}}}else if(s.listValue&&-1!==r.styles.listStyleType){let[e]=t.createFontStyle(i);A.font=e,A.fillStyle=bs(i.color),A.textBaseline="middle",A.textAlign="right";let n=new WA(r.bounds.left,r.bounds.top+ps(r.styles.paddingTop,r.bounds.width),r.bounds.width,Fn(i.lineHeight,i.fontSize.number)/2+1);t.renderTextWithLetterSpacing(new rl(s.listValue,n),i.letterSpacing,Fn(i.lineHeight,i.fontSize.number)/2+2,i.writingMode),A.textBaseline="bottom",A.textAlign="left"}}(this.ctx,this.context,this.textRenderer,e,t,r)}async renderStackContent(A){A.element.container.debugRender;let e=this.options.signal;await this.renderNodeBackgroundAndBorders(A.element);for(let t of A.negativeZIndex){if(e?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(t)}if(e?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderNodeContent(A.element);for(let e of A.nonInlineLevel)await this.renderNode(e);for(let t of A.nonPositionedFloats){if(e?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(t)}for(let t of A.nonPositionedInlineLevel){if(e?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(t)}for(let e of A.inlineLevel)await this.renderNode(e);for(let t of A.zeroOrAutoZIndexOrTransformedOrOpacity){if(e?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(t)}for(let t of A.positiveZIndex){if(e?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(t)}}mask(A){this.ctx.beginPath();let e=this.options.x,t=this.options.y;this.ctx.moveTo(e,t),this.ctx.lineTo(e+this.options.width,t),this.ctx.lineTo(e+this.options.width,t+this.options.height),this.ctx.lineTo(e,t+this.options.height),this.ctx.lineTo(e,t),this.formatPath(A.slice(0).reverse()),this.ctx.closePath()}path(A){Nc(this.ctx,A)}formatPath(A){Pc(this.ctx,A)}async renderNodeBackgroundAndBorders(A){this.effectsRenderer.applyEffects(A.getEffects(2));let e=A.container.styles,t=!ms(e.backgroundColor)||e.backgroundImage.length,s=nd(e),r=[{style:e.borderTopStyle,color:e.borderTopColor,width:e.borderTopWidth},{style:e.borderRightStyle,color:e.borderRightColor,width:e.borderRightWidth},{style:e.borderBottomStyle,color:e.borderBottomColor,width:e.borderBottomWidth},{style:e.borderLeftStyle,color:e.borderLeftColor,width:e.borderLeftWidth}],i=vc(e.backgroundClip,0),n=id(i,A.curves);if((t||e.boxShadow.length)&&(s&&A.container.textNodes.length>0?await this.renderTextClippedBackground(A):(this.ctx.save(),this.path(n),this.ctx.clip(),ms(e.backgroundColor)||(this.ctx.fillStyle=bs(e.backgroundColor),this.ctx.fill()),await this.backgroundRenderer.renderBackgroundImage(A.container),this.ctx.restore()),e.boxShadow.slice(0).reverse().forEach(e=>{this.ctx.save();let t=zl(A.curves),s=e.inset?0:1e4,r=Vl(t,-s+(e.inset?1:-1)*e.spread.number,(e.inset?1:-1)*e.spread.number,e.spread.number*(e.inset?-2:2),e.spread.number*(e.inset?-2:2));e.inset?(this.path(t),this.ctx.clip(),this.mask(r)):(this.mask(t),this.ctx.clip(),this.path(r)),this.ctx.shadowOffsetX=e.offsetX.number+s,this.ctx.shadowOffsetY=e.offsetY.number,this.ctx.shadowColor=bs(e.color),this.ctx.shadowBlur=e.blur.number,this.ctx.fillStyle=e.inset?bs(e.color):"rgba(0,0,0,1)",this.ctx.fill(),this.ctx.restore()})),e.borderImageSource){let t=e.borderImageSource;if(0===t.type){let s=t.url;try{let t=await this.context.cache.match(s);if(t){let s=A.container.bounds;this.borderImageRenderer.renderBorderImage(s,t,e.borderImageSlice,e.borderImageRepeat,Math.max(0,e.borderTopWidth),Math.max(0,e.borderRightWidth),Math.max(0,e.borderBottomWidth),Math.max(0,e.borderLeftWidth))}}catch{this.context.logger.error(`Error loading border-image ${s}`)}}return}let o=0;for(let e of r){if(0!==e.style&&!ms(e.color)&&e.width>0){let t=async()=>{2===e.style?await this.borderRenderer.renderDashedDottedBorder(e.color,e.width,o,A.curves,2):3===e.style?await this.borderRenderer.renderDashedDottedBorder(e.color,e.width,o,A.curves,3):4===e.style?await this.borderRenderer.renderDoubleBorder(e.color,e.width,o,A.curves):await this.borderRenderer.renderSolidBorder(e.color,o,A.curves)},s=A.container.legendBounds;if(0===o&&s){let e=A.container.bounds,r=s.left-e.left,i=s.left+s.width-e.left;r>0&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.rect(e.left,e.top,r,e.height),this.ctx.clip(),await t(),this.ctx.restore());let n=e.left+i,o=e.width-i;o>0&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.rect(n,e.top,o,e.height),this.ctx.clip(),await t(),this.ctx.restore())}else await t()}o++}}async render(A){this.options.backgroundColor&&(this.ctx.fillStyle=bs(this.options.backgroundColor),this.ctx.fillRect(this.options.x,this.options.y,this.options.width,this.options.height));let e=fc(A);return await this.renderStack(e),this.effectsRenderer.applyEffects([]),this.canvas}async renderTextClippedBackground(A){let e=A.container,t=e.styles,s=e.bounds;if(s.width<=0||s.height<=0)return;let r=(this.canvas.ownerDocument??document).createElement("canvas"),i=Math.ceil(s.width),n=Math.ceil(s.height);r.width=i,r.height=n;let o=r.getContext("2d");if(!o)return;let[a]=this.textRenderer.createFontStyle(t);o.font=a,o.textBaseline="alphabetic",o.textAlign="left",o.direction=1===t.direction?"rtl":"ltr";let l=Sc(o,t.fontSize.number),c=new Gc({ctx:o,context:this.context,canvas:r,options:{width:i,height:n,scale:1}});ms(t.backgroundColor)||(o.fillStyle=bs(t.backgroundColor),o.fillRect(0,0,i,n)),o.save(),o.translate(-s.left,-s.top),await c.renderBackgroundImage(e),o.restore(),o.globalCompositeOperation="destination-in",o.fillStyle="#000";let d=t.writingMode,p=t.letterSpacing;for(let A of e.textNodes)for(let e of A.textBounds){let A=e.bounds.left-s.left,t=e.bounds.top-s.top+l;p>0?this.renderTextMaskWithLetterSpacing(o,e,p,A,t,d):o.fillText(e.text,A,t)}this.ctx.drawImage(r,s.left,s.top)}renderTextMaskWithLetterSpacing(A,e,t,s,r,i){let n=al(e.text),o=s;for(let a of n){if(qn(i))return void A.fillText(e.text,s,r);A.fillText(a,o,r),o+=A.measureText(a).width+t}}},id=(A,e)=>{switch(A){case 0:return zl(e);case 2:return _l(e);default:return jl(e)}},nd=A=>A.backgroundClip.some(A=>3===A),od=class{constructor(A,e){this.context=A,this.options=e,this.canvas=e.canvas?e.canvas:document.createElement("canvas");let t=this.canvas.getContext("2d");if(!t)throw new Error("Failed to get 2D rendering context from canvas");this.ctx=t,this.canvas.width=Math.floor(e.width*e.scale),this.canvas.height=Math.floor(e.height*e.scale),this.canvas.style.width=`${e.width}px`,this.canvas.style.height=`${e.height}px`,this.ctx.scale(this.options.scale,this.options.scale),this.ctx.translate(-e.x,-e.y),this.context.logger.debug(`EXPERIMENTAL ForeignObject renderer initialized (${e.width}x${e.height} at ${e.x},${e.y}) with scale ${e.scale}`)}async render(A){if(this.options.signal?.aborted)throw new DOMException("The operation was aborted.","AbortError");let e=await tl(el(this.options.width*this.options.scale,this.options.height*this.options.scale,this.options.scale,this.options.scale,A));return this.options.backgroundColor&&(this.ctx.fillStyle=bs(this.options.backgroundColor),this.ctx.fillRect(0,0,this.options.width*this.options.scale,this.options.height*this.options.scale)),this.ctx.drawImage(e,-this.options.x*this.options.scale,-this.options.y*this.options.scale),this.canvas}},ad=class{static{this.instances={}}constructor({id:A,enabled:e}){this.id=A,this.enabled=e,this.start=Date.now()}debug(...A){this.enabled&&(typeof window<"u"&&window.console&&"function"==typeof console.debug?(this.id,this.getTime()):this.info(...A))}getTime(){return Date.now()-this.start}info(...A){this.enabled&&typeof window<"u"&&window.console&&"function"==typeof console.info&&(this.id,this.getTime())}warn(...A){this.enabled&&(typeof window<"u"&&window.console&&"function"==typeof console.warn?console.warn(this.id,`${this.getTime()}ms`,...A):this.info(...A))}error(...A){this.enabled&&(typeof window<"u"&&window.console&&"function"==typeof console.error?console.error(this.id,`${this.getTime()}ms`,...A):this.info(...A))}},ld=class{constructor(A,e){if(this.context=A,this._options=e,this._cache=new Map,this._pendingOperations=new Map,this._deferMode=!1,this._collectedUrls=new Set,this.maxSize=e.maxCacheSize??100,this.maxSize<1)throw new Error("Cache maxSize must be at least 1");this.maxSize>1e4&&this.context.logger.warn(`Cache maxSize ${this.maxSize} is very large and may cause memory issues. Consider using a smaller value (recommended: 100-1000).`)}startDefer(){this._deferMode=!0}async preloadAll(A=10){this._deferMode=!1;let e=Array.from(this._collectedUrls);if(this._collectedUrls.clear(),0===e.length)return;let t=Math.max(1,Math.min(A,100));this.context.logger.debug(`Preloading ${e.length} image(s) with concurrency ${t}`);for(let A=0;A<e.length;A+=t){let s=e.slice(A,A+t).map(A=>this._addImageWithPending(A));await Promise.allSettled(s)}}addImage(A){if(this._deferMode)return!this.has(A)&&(Bd(A)||hd(A))&&this._collectedUrls.add(A),Promise.resolve();let e=this._pendingOperations.get(A);if(e)return e;if(this.has(A)){let e=this._cache.get(A);return this._cache.delete(A),this._cache.set(A,e),Promise.resolve()}return Bd(A)||hd(A)?this._addImageWithPending(A):Promise.resolve()}_addImageWithPending(A){let e=this._pendingOperations.get(A);if(e)return e;let t=this._addImageInternal(A);return this._pendingOperations.set(A,t),t.finally(()=>{this._pendingOperations.delete(A)}),t}async _addImageInternal(A){let e=this._options.imageTimeout??15e3,t=this.withTimeout(this.loadImage(A),e,`Timed out (${e}ms) loading image`);t.catch(e=>{this.context.logger.error(`Failed to load image ${A}: ${e instanceof Error?e.message:"Unknown error"}`)}),this.set(A,t)}withTimeout(A,e,t){if(e<=0)return A;let s,r=new Promise((A,r)=>{s=setTimeout(()=>r(new Error(t)),e)});return Promise.race([A,r]).finally(()=>{void 0!==s&&clearTimeout(s)})}match(A){let e=this._cache.get(A);if(e)return this._cache.delete(A),this._cache.set(A,e),e.value}set(A,e){if(this._cache.has(A))this._cache.delete(A);else if(this._cache.size>=this.maxSize){let A=this._cache.keys().next().value;void 0!==A&&(this._cache.delete(A),this.context.logger.debug(`Cache: Evicted LRU entry: ${A}`))}this._cache.set(A,{value:e})}size(){return this._cache.size}getMaxSize(){return this.maxSize}clear(){this._cache.clear()}async loadImage(A){let e=this.context.originChecker,t=A=>e.isSameOrigin(A),s="function"==typeof this._options.customIsSameOrigin?await this._options.customIsSameOrigin(A,t):t(A),r=!s&&!1===this._options.allowTaint&&!ud(A)&&!Bd(A)&&"string"!=typeof this._options.proxy,i=!ud(A)&&(!0===this._options.useCORS||r)&&sl.SUPPORT_CORS_IMAGES&&!s,n=!ud(A)&&!s&&!Bd(A)&&"string"==typeof this._options.proxy&&sl.SUPPORT_CORS_XHR&&!i;if(!(s||!1!==this._options.allowTaint||ud(A)||Bd(A)||n||i))return;let o=A;return n&&(o=await this.proxy(o)),this.context.logger.debug(`Added image ${A.substring(0,256)}`),await new Promise((A,e)=>{let t=new Image;t.onload=()=>A(t),t.onerror=e,(gd(o)||i)&&(t.crossOrigin="anonymous"),t.src=o,!0===t.complete&&setTimeout(()=>A(t),500)})}has(A){return this._cache.has(A)}keys(){return Promise.resolve(Array.from(this._cache.keys()))}proxy(A){let e=this._options.proxy;if(!e)throw new Error("No proxy defined");let t=A.substring(0,256);return new Promise((s,r)=>{let i=sl.SUPPORT_RESPONSE_TYPE?"blob":"text",n=new XMLHttpRequest;n.onload=()=>{if(200===n.status)if("text"===i)s(n.response);else{let A=new FileReader;A.addEventListener("load",()=>s(A.result),!1),A.addEventListener("error",A=>r(A),!1),A.readAsDataURL(n.response)}else r(`Failed to proxy resource ${t} with status code ${n.status}`)},n.onerror=r;let o=e.indexOf("?")>-1?"&":"?";if(n.open("GET",`${e}${o}url=${encodeURIComponent(A)}&responseType=${i}`),"text"!==i&&n instanceof XMLHttpRequest&&(n.responseType=i),this._options.imageTimeout){let A=this._options.imageTimeout;n.timeout=A,n.ontimeout=()=>r(`Timed out (${A}ms) proxying ${t}`)}n.send()})}},cd=/^data:image\/svg\+xml/i,dd=/^data:image\/.*;base64,/i,pd=/^data:image\/.*/i,hd=A=>sl.SUPPORT_SVG_DRAWING||!wd(A),ud=A=>pd.test(A),gd=A=>dd.test(A),Bd=A=>"blob"===A.substring(0,4),wd=A=>"svg"===A.slice(-3).toLowerCase()||cd.test(A),fd=class{constructor(A){if(!A||!A.document)throw new Error("Valid window object required for OriginChecker");if(!A.location||!A.location.href)throw new Error("Window object must have valid location");this.link=A.document.createElement("a"),this.origin=this.getOrigin(A.location.href)}getOrigin(A){return this.link.href=A,this.link.href=this.link.href,this.link.protocol+this.link.hostname+this.link.port}isSameOrigin(A){return this.getOrigin(A)===this.origin}getContextOrigin(){return this.origin}},md=class A{static{this.instanceCount=1}constructor(e,t,s){this.windowBounds=t,this.instanceName="#"+A.instanceCount++,this.config=s,this.logger=new ad({id:this.instanceName,enabled:e.logging}),this.originChecker=new fd(s.window),this.cache=e.cache??s.cache??new ld(this,e),this.onError=e.onError}},bd=A=>{if(A?.aborted)throw new DOMException("The operation was aborted.","AbortError")},Cd=A=>{["scale","width","height","imageTimeout","x","y","windowWidth","windowHeight","scrollX","scrollY"].forEach(e=>{let t=A[e];if(null!=t&&"number"!=typeof t){let s=Number(t);Number.isNaN(s)||(A[e]=s)}})},yd=A=>({allowTaint:A.allowTaint??!1,imageTimeout:A.imageTimeout??15e3,proxy:A.proxy,useCORS:A.useCORS??!1,customIsSameOrigin:A.customIsSameOrigin,maxCacheSize:A.maxCacheSize}),Qd=(A,e,t)=>({logging:A.logging??!0,cache:A.cache??e.cache,...t}),xd=(A,e)=>{let t=e;return{windowWidth:A.windowWidth??t.innerWidth??800,windowHeight:A.windowHeight??t.innerHeight??600,scrollX:A.scrollX??t.pageXOffset??0,scrollY:A.scrollY??t.pageYOffset??0}},Fd=(A,e,t)=>({allowTaint:A.allowTaint??!1,onclone:A.onclone,ignoreElements:A.ignoreElements,iframeContainer:A.iframeContainer,inlineImages:t,copyStyles:t,cspNonce:A.cspNonce??e.cspNonce}),Ud=(A,e,t,s,r,i,n)=>({canvas:A.canvas,backgroundColor:e,signal:A.signal,scale:A.scale??n??1,x:(A.x??0)+t,y:(A.y??0)+s,width:A.width??Math.ceil(r),height:A.height??Math.ceil(i),imageSmoothing:A.imageSmoothing,imageSmoothingQuality:A.imageSmoothingQuality}),vd=(A,e,t)=>{let s=e.ownerDocument,r=s.documentElement?Cr(A,getComputedStyle(s.documentElement).backgroundColor):yr.TRANSPARENT,i=s.body?Cr(A,getComputedStyle(s.body).backgroundColor):yr.TRANSPARENT,n="string"==typeof t?Cr(A,t):null===t?yr.TRANSPARENT:4294967295;return e===s.documentElement?ms(r)?ms(i)?n:i:r:n},Ed=async(A,e,t)=>{if(Cd(e),!e.skipValidation){let t=e.validator||VA(),s=t.validateElement(A);if(!s.valid)throw new Error(s.error);let r=t.validateOptions(e);if(!r.valid)throw new Error(`Invalid options: ${r.error}`)}if(!A||"object"!=typeof A)throw new Error("Invalid element provided as first argument");let s=A.ownerDocument;if(!s)throw new Error("Element is not attached to a Document");let r=s.defaultView;if(!r)throw new Error("Document is not attached to a Window");let i=Qd(e,t,yd(e)),n=xd(e,r),o=new WA(n.scrollX,n.scrollY,n.windowWidth,n.windowHeight),a=new md(i,o,t),l=e.enablePerformanceMonitoring??e.logging??!1,c=new YA(a,l);c.start("total",{width:n.windowWidth,height:n.windowHeight});let d=e.signal;bd(d);let p=e.foreignObjectRendering??!1,h=Fd(e,t,p);a.logger.debug(`Starting document clone with size ${o.width}x${o.height} scrolled to ${-o.left},${-o.top}`),c.start("clone");let u=new oa(a,A,h),g=u.clonedReferenceElement;if(!g)throw new Error("Unable to find element in cloned iframe");let B=await u.toIFrame(s,o);c.end("clone"),d?.aborted&&((e.removeContainer??!0)&&oa.destroy(B),bd(d));let w,f,{width:m,height:b,left:C,top:y}=Hr(g)||Er(g)?zA(g.ownerDocument):JA(a,g),Q=vd(a,g,e.backgroundColor),x=Ud(e,Q,C,y,m,b,r.devicePixelRatio??1);try{return p?(a.logger.debug("Document cloned, using foreign object rendering"),c.start("render-foreignobject"),w=await new od(a,x).render(g),c.end("render-foreignobject")):(a.logger.debug(`Document cloned, element located at ${C},${y} with size ${m}x${b} using computed rendering`),a.logger.debug("Starting DOM parsing"),c.start("parse"),bd(d),a.cache.startDefer(),f=Rl(a,g),c.end("parse"),c.start("preload"),await a.cache.preloadAll(),c.end("preload"),Q===f.styles.backgroundColor&&(f.styles.backgroundColor=yr.TRANSPARENT),a.logger.debug(`Starting renderer for element at ${x.x},${x.y} with size ${x.width}x${x.height}`),c.start("render"),bd(d),w=await new rd(a,x).render(f),c.end("render")),c.start("cleanup"),(e.removeContainer??!0)&&(oa.destroy(B)||a.logger.error("Cannot detach cloned iframe as it is not in the DOM anymore")),c.end("cleanup"),c.end("total"),a.logger.debug("Finished rendering"),l&&c.logSummary(),w}finally{f&&f.restoreTree()}},kd=(A,e={},t)=>Ed(A,e,t||XA.fromElement(A,{cspNonce:e.cspNonce,cache:e.cache}))}),Sd=t(()=>{Hd={"panel.title":"Feedbacks","panel.ariaLabel":"Siteping feedback panel","panel.feedbackList":"Feedback list","panel.loading":"Loading feedbacks","panel.close":"Close panel","panel.deleteAll":"Delete all","panel.deleteAllConfirmTitle":"Delete all","panel.deleteAllConfirmMessage":"Delete all feedbacks for this project? This action cannot be undone.","panel.search":"Search...","panel.searchAria":"Search feedbacks","panel.filterAll":"All","panel.loadError":"Failed to load","panel.retry":"Retry","panel.empty":"No feedback yet","panel.showMore":"Show more","panel.showLess":"Show less","panel.resolve":"Resolve","panel.reopen":"Reopen","panel.delete":"Delete","panel.cancel":"Cancel","panel.confirmDelete":"Delete","panel.loadMore":"Load more ({remaining} remaining)","panel.statusAll":"All","panel.statusOpen":"Open","panel.statusResolved":"Resolved","panel.statusInProgress":"In progress","panel.statusWontFix":"Won't fix","type.label":"Type","type.question":"Question","type.change":"Change","type.bug":"Bug","type.other":"Other","status.label":"Status","scope.label":"Scope","scope.thisPage":"This page","scope.thisType":"This type","scope.all":"All pages","panel.filterMine":"Mine","panel.filterMineHint":"Only the feedback sent from this browser","fab.aria":"Siteping \u2014 Feedback menu","fab.messages":"Show sidebar","fab.annotate":"Create new annotation","fab.annotations":"Show or hide markers","annotator.instruction":"Draw a rectangle on the area to comment \u2014 or press Enter to comment on the last focused element","annotator.instantInstruction":"Comment on the clicked spot","annotator.touchInstruction":"Tap an element or drag to select an area","annotator.cancel":"Cancel","popup.ariaLabel":"Feedback form","popup.placeholder":"Describe your feedback...","popup.textareaAria":"Feedback message","popup.submitHintMac":"\u2318+Enter to send","popup.submitHintOther":"Ctrl+Enter to send","popup.cancel":"Cancel","popup.submit":"Send","identity.title":"Identify yourself","identity.nameLabel":"Name","identity.namePlaceholder":"Your name","identity.emailLabel":"Email","identity.emailPlaceholder":"your@email.com","identity.cancel":"Cancel","identity.submit":"Continue","marker.approximate":"Approximate position (confidence: {confidence}%)","marker.aria":"Feedback #{number}: {type} \u2014 {message}","marker.count":"{count} feedback markers displayed","fab.badge":"{count} unresolved feedbacks","feedback.sent.confirmation":"Feedback sent successfully","feedback.error.message":"Failed to send feedback","feedback.deleted.confirmation":"Feedback deleted","badge.count":"{count} unresolved feedbacks","bulk.selectAll":"Select all","bulk.selected":"{count} selected","bulk.resolve":"Resolve","bulk.delete":"Delete","bulk.deselect":"Deselect","sort.newest":"Newest first","sort.oldest":"Oldest first","sort.byType":"By type","sort.openFirst":"Open first","sort.label":"Sort","group.byPage":"By page","group.feedbacks":"{count} feedbacks","stats.open":"Open","stats.resolved":"Resolved","stats.bugs":"Bugs","stats.progress":"{percent}% resolved","detail.back":"Back","detail.title":"Feedback #{number}","detail.status":"Status","detail.message":"Message","detail.screenshot":"Screenshot","detail.screenshotAlt":"Screenshot of the annotated area","detail.metadata":"Details","detail.annotation":"Annotation","detail.page":"Page","detail.author":"Author","detail.date":"Created","detail.viewport":"Viewport","detail.browser":"Browser","detail.resolvedAt":"Resolved at","detail.closedAt":"Closed at","detail.goToAnnotation":"Go to annotation","detail.element":"Element","detail.selector":"Selector","detail.position":"Position","detail.resolve":"Resolve","detail.reopen":"Reopen","detail.delete":"Delete","detail.diagnostics":"Diagnostics","detail.diagnostics.console":"Console","detail.diagnostics.network":"Failed network","detail.diagnostics.expand":"Show diagnostics","detail.diagnostics.collapse":"Hide diagnostics","detail.diagnostics.noEntries":"No entries","comments.title":"Replies","comments.placeholder":"Reply to the team...","comments.error":"Not sent. Try again.","comments.full":"This thread is full.","comments.team":"Team","shortcuts.title":"Keyboard shortcuts","shortcuts.navigate":"Navigate feedbacks","shortcuts.resolve":"Resolve / Reopen","shortcuts.delete":"Delete","shortcuts.search":"Focus search","shortcuts.select":"Toggle selection","shortcuts.help":"Show shortcuts","shortcuts.close":"Close","shortcuts.hint":"Keyboard shortcuts","export.label":"Export","export.csv":"Export CSV","export.json":"Export JSON"}}),Ld={};s(Ld,{de:()=>Md});var Md,Dd=t(()=>{Md={"panel.title":"Feedbacks","panel.ariaLabel":"Siteping-Feedback-Panel","panel.feedbackList":"Feedbackliste","panel.loading":"Feedbacks werden geladen","panel.close":"Panel schlie\xdfen","panel.deleteAll":"Alle l\xf6schen","panel.deleteAllConfirmTitle":"Alle l\xf6schen","panel.deleteAllConfirmMessage":"Alle Feedbacks f\xfcr dieses Projekt l\xf6schen? Diese Aktion kann nicht r\xfcckg\xe4ngig gemacht werden.","panel.search":"Suchen...","panel.searchAria":"Feedbacks suchen","panel.filterAll":"Alle","panel.loadError":"Laden fehlgeschlagen","panel.retry":"Erneut versuchen","panel.empty":"Noch kein Feedback","panel.showMore":"Mehr anzeigen","panel.showLess":"Weniger anzeigen","panel.resolve":"Erledigen","panel.reopen":"Wieder \xf6ffnen","panel.delete":"L\xf6schen","panel.cancel":"Abbrechen","panel.confirmDelete":"L\xf6schen","panel.loadMore":"Mehr laden ({remaining} verbleibend)","panel.statusAll":"Alle","panel.statusOpen":"Offen","panel.statusResolved":"Erledigt","panel.statusInProgress":"In Arbeit","panel.statusWontFix":"Wird nicht behoben","type.label":"Typ","type.question":"Frage","type.change":"\xc4nderung","type.bug":"Fehler","type.other":"Sonstiges","status.label":"Status","scope.label":"Bereich","scope.thisPage":"Diese Seite","scope.thisType":"Dieser Typ","scope.all":"Alle Seiten","panel.filterMine":"Meine","panel.filterMineHint":"Nur das Feedback, das von diesem Browser gesendet wurde","fab.aria":"Siteping \u2014 Feedback-Men\xfc","fab.messages":"Seitenleiste anzeigen","fab.annotate":"Neue Anmerkung erstellen","fab.annotations":"Markierungen ein- oder ausblenden","annotator.instruction":"Zeichne ein Rechteck um den Bereich, den du kommentieren m\xf6chtest \u2014 oder dr\xfccke die Eingabetaste, um das zuletzt fokussierte Element zu kommentieren","annotator.instantInstruction":"Kommentar zur angeklickten Stelle","annotator.touchInstruction":"Tippe auf ein Element oder ziehe, um einen Bereich auszuw\xe4hlen","annotator.cancel":"Abbrechen","popup.ariaLabel":"Feedbackformular","popup.placeholder":"Beschreibe dein Feedback...","popup.textareaAria":"Feedbacknachricht","popup.submitHintMac":"\u2318+Enter zum Senden","popup.submitHintOther":"Strg+Enter zum Senden","popup.cancel":"Abbrechen","popup.submit":"Senden","identity.title":"Identifiziere dich","identity.nameLabel":"Name","identity.namePlaceholder":"Dein Name","identity.emailLabel":"E-Mail","identity.emailPlaceholder":"deine@email.de","identity.cancel":"Abbrechen","identity.submit":"Fortfahren","marker.approximate":"Ungef\xe4hre Position (Konfidenz: {confidence}%)","marker.aria":"Feedback #{number}: {type} \u2014 {message}","marker.count":"{count} Feedback-Markierungen angezeigt","fab.badge":"{count} unerledigte Feedbacks","feedback.sent.confirmation":"Feedback erfolgreich gesendet","feedback.error.message":"Feedback konnte nicht gesendet werden","feedback.deleted.confirmation":"Feedback gel\xf6scht","badge.count":"{count} unerledigte Feedbacks","bulk.selectAll":"Alle ausw\xe4hlen","bulk.selected":"{count} ausgew\xe4hlt","bulk.resolve":"Erledigen","bulk.delete":"L\xf6schen","bulk.deselect":"Abw\xe4hlen","sort.newest":"Neueste zuerst","sort.oldest":"\xc4lteste zuerst","sort.byType":"Nach Typ","sort.openFirst":"Offene zuerst","sort.label":"Sortieren","group.byPage":"Nach Seite","group.feedbacks":"{count} Feedbacks","stats.open":"Offen","stats.resolved":"Erledigt","stats.bugs":"Fehler","stats.progress":"{percent}% erledigt","detail.back":"Zur\xfcck","detail.title":"Feedback #{number}","detail.status":"Status","detail.message":"Nachricht","detail.screenshot":"Screenshot","detail.screenshotAlt":"Screenshot des markierten Bereichs","detail.metadata":"Details","detail.annotation":"Anmerkung","detail.page":"Seite","detail.author":"Autor","detail.date":"Erstellt","detail.viewport":"Viewport","detail.browser":"Browser","detail.resolvedAt":"Erledigt am","detail.closedAt":"Geschlossen am","detail.goToAnnotation":"Zur Anmerkung","detail.element":"Element","detail.selector":"Selektor","detail.position":"Position","detail.resolve":"Erledigen","detail.reopen":"Wieder \xf6ffnen","detail.delete":"L\xf6schen","detail.diagnostics":"Diagnose","detail.diagnostics.console":"Konsole","detail.diagnostics.network":"Fehlgeschlagenes Netzwerk","detail.diagnostics.expand":"Diagnose anzeigen","detail.diagnostics.collapse":"Diagnose ausblenden","detail.diagnostics.noEntries":"Keine Eintr\xe4ge","comments.title":"Antworten","comments.placeholder":"Dem Team antworten...","comments.error":"Nicht gesendet. Versuch es noch einmal.","comments.full":"Dieser Verlauf ist voll.","comments.team":"Team","shortcuts.title":"Tastenk\xfcrzel","shortcuts.navigate":"Feedbacks navigieren","shortcuts.resolve":"Erledigen / Wieder \xf6ffnen","shortcuts.delete":"L\xf6schen","shortcuts.search":"Suche fokussieren","shortcuts.select":"Auswahl umschalten","shortcuts.help":"K\xfcrzel anzeigen","shortcuts.close":"Schlie\xdfen","shortcuts.hint":"Tastenk\xfcrzel","export.label":"Exportieren","export.csv":"CSV exportieren","export.json":"JSON exportieren"}}),Kd={};s(Kd,{es:()=>Td});var Td,Rd=t(()=>{Td={"panel.title":"Comentarios","panel.ariaLabel":"Panel de comentarios de Siteping","panel.feedbackList":"Lista de comentarios","panel.loading":"Cargando comentarios","panel.close":"Cerrar panel","panel.deleteAll":"Eliminar todo","panel.deleteAllConfirmTitle":"Eliminar todo","panel.deleteAllConfirmMessage":"\xbfEliminar todos los comentarios de este proyecto? Esta acci\xf3n no se puede deshacer.","panel.search":"Buscar...","panel.searchAria":"Buscar comentarios","panel.filterAll":"Todos","panel.loadError":"No se pudo cargar","panel.retry":"Reintentar","panel.empty":"A\xfan no hay comentarios","panel.showMore":"Mostrar m\xe1s","panel.showLess":"Mostrar menos","panel.resolve":"Resolver","panel.reopen":"Reabrir","panel.delete":"Eliminar","panel.cancel":"Cancelar","panel.confirmDelete":"Eliminar","panel.loadMore":"Cargar m\xe1s ({remaining} restantes)","panel.statusAll":"Todos","panel.statusOpen":"Abierto","panel.statusResolved":"Resuelto","panel.statusInProgress":"En curso","panel.statusWontFix":"No se corregir\xe1","type.label":"Tipo","type.question":"Pregunta","type.change":"Cambio","type.bug":"Error","type.other":"Otro","status.label":"Estado","scope.label":"\xc1mbito","scope.thisPage":"Esta p\xe1gina","scope.thisType":"Este tipo","scope.all":"Todas las p\xe1ginas","panel.filterMine":"M\xedos","panel.filterMineHint":"Solo los comentarios enviados desde este navegador","fab.aria":"Siteping \u2014 Men\xfa de comentarios","fab.messages":"Mostrar barra lateral","fab.annotate":"Crear nueva anotaci\xf3n","fab.annotations":"Mostrar u ocultar marcadores","annotator.instruction":"Dibuja un rect\xe1ngulo sobre el \xe1rea que quieres comentar \u2014 o pulsa Intro para comentar el \xfaltimo elemento enfocado","annotator.instantInstruction":"Comentar el punto seleccionado","annotator.touchInstruction":"Toca un elemento o arrastra para seleccionar un \xe1rea","annotator.cancel":"Cancelar","popup.ariaLabel":"Formulario de comentarios","popup.placeholder":"Describe tu comentario...","popup.textareaAria":"Mensaje de comentario","popup.submitHintMac":"\u2318+Enter para enviar","popup.submitHintOther":"Ctrl+Enter para enviar","popup.cancel":"Cancelar","popup.submit":"Enviar","identity.title":"Identif\xedcate","identity.nameLabel":"Nombre","identity.namePlaceholder":"Tu nombre","identity.emailLabel":"Correo electr\xf3nico","identity.emailPlaceholder":"tu@email.com","identity.cancel":"Cancelar","identity.submit":"Continuar","marker.approximate":"Posici\xf3n aproximada (confianza: {confidence}%)","marker.aria":"Comentario #{number}: {type} \u2014 {message}","marker.count":"{count} marcadores de feedback mostrados","fab.badge":"{count} comentarios sin resolver","feedback.sent.confirmation":"Comentario enviado correctamente","feedback.error.message":"No se pudo enviar el comentario","feedback.deleted.confirmation":"Comentario eliminado","badge.count":"{count} comentarios sin resolver","bulk.selectAll":"Seleccionar todo","bulk.selected":"{count} seleccionados","bulk.resolve":"Resolver","bulk.delete":"Eliminar","bulk.deselect":"Deseleccionar","sort.newest":"M\xe1s recientes","sort.oldest":"M\xe1s antiguos","sort.byType":"Por tipo","sort.openFirst":"Abiertos primero","sort.label":"Ordenar","group.byPage":"Por p\xe1gina","group.feedbacks":"{count} comentarios","stats.open":"Abiertos","stats.resolved":"Resueltos","stats.bugs":"Errores","stats.progress":"{percent}% resueltos","detail.back":"Atr\xe1s","detail.title":"Comentario #{number}","detail.status":"Estado","detail.message":"Mensaje","detail.screenshot":"Captura","detail.screenshotAlt":"Captura del \xe1rea anotada","detail.metadata":"Detalles","detail.annotation":"Anotaci\xf3n","detail.page":"P\xe1gina","detail.author":"Autor","detail.date":"Creado","detail.viewport":"Viewport","detail.browser":"Navegador","detail.resolvedAt":"Resuelto el","detail.closedAt":"Cerrado el","detail.goToAnnotation":"Ir a la anotaci\xf3n","detail.element":"Elemento","detail.selector":"Selector","detail.position":"Posici\xf3n","detail.resolve":"Resolver","detail.reopen":"Reabrir","detail.delete":"Eliminar","detail.diagnostics":"Diagn\xf3stico","detail.diagnostics.console":"Consola","detail.diagnostics.network":"Red fallida","detail.diagnostics.expand":"Mostrar diagn\xf3stico","detail.diagnostics.collapse":"Ocultar diagn\xf3stico","detail.diagnostics.noEntries":"Sin entradas","comments.title":"Respuestas","comments.placeholder":"Responder al equipo...","comments.error":"No se envi\xf3. Int\xe9ntalo de nuevo.","comments.full":"Este hilo est\xe1 completo.","comments.team":"Equipo","shortcuts.title":"Atajos de teclado","shortcuts.navigate":"Navegar comentarios","shortcuts.resolve":"Resolver / Reabrir","shortcuts.delete":"Eliminar","shortcuts.search":"Buscar","shortcuts.select":"Alternar selecci\xf3n","shortcuts.help":"Mostrar atajos","shortcuts.close":"Cerrar","shortcuts.hint":"Atajos de teclado","export.label":"Exportar","export.csv":"Exportar CSV","export.json":"Exportar JSON"}}),Od={};s(Od,{fr:()=>Pd});var Pd,Nd=t(()=>{Pd={"panel.title":"Feedbacks","panel.ariaLabel":"Panneau de feedback Siteping","panel.feedbackList":"Liste des feedbacks","panel.loading":"Chargement des feedbacks","panel.close":"Fermer le panneau","panel.deleteAll":"Tout supprimer","panel.deleteAllConfirmTitle":"Tout supprimer","panel.deleteAllConfirmMessage":"Supprimer tous les feedbacks de ce projet ? Cette action est irr\xe9versible.","panel.search":"Rechercher...","panel.searchAria":"Rechercher dans les feedbacks","panel.filterAll":"Tous","panel.loadError":"Erreur de chargement","panel.retry":"R\xe9essayer","panel.empty":"Aucun feedback pour le moment","panel.showMore":"Voir plus","panel.showLess":"Voir moins","panel.resolve":"R\xe9soudre","panel.reopen":"Rouvrir","panel.delete":"Supprimer","panel.cancel":"Annuler","panel.confirmDelete":"Supprimer","panel.loadMore":"Voir plus ({remaining} restants)","panel.statusAll":"Tous","panel.statusOpen":"Ouvert","panel.statusResolved":"R\xe9solu","panel.statusInProgress":"En cours","panel.statusWontFix":"Sans suite","type.label":"Type","type.question":"Question","type.change":"Changement","type.bug":"Bug","type.other":"Autre","status.label":"Statut","scope.label":"Port\xe9e","scope.thisPage":"Cette page","scope.thisType":"Ce type","scope.all":"Toutes les pages","panel.filterMine":"Mes feedbacks","panel.filterMineHint":"Uniquement les feedbacks envoy\xe9s depuis ce navigateur","fab.aria":"Siteping \u2014 Menu feedback","fab.messages":"Afficher la barre lat\xe9rale","fab.annotate":"Cr\xe9er une nouvelle annotation","fab.annotations":"Afficher ou masquer les marqueurs","annotator.instruction":"Tracez un rectangle sur la zone \xe0 commenter \u2014 ou appuyez sur Entr\xe9e pour commenter le dernier \xe9l\xe9ment actif","annotator.instantInstruction":"Commenter l'endroit cliqu\xe9","annotator.touchInstruction":"Touchez un \xe9l\xe9ment ou faites glisser pour s\xe9lectionner une zone","annotator.cancel":"Annuler","popup.ariaLabel":"Formulaire de feedback","popup.placeholder":"D\xe9crivez votre retour...","popup.textareaAria":"Message de feedback","popup.submitHintMac":"\u2318+Entr\xe9e pour envoyer","popup.submitHintOther":"Ctrl+Entr\xe9e pour envoyer","popup.cancel":"Annuler","popup.submit":"Envoyer","identity.title":"Identifiez-vous","identity.nameLabel":"Nom","identity.namePlaceholder":"Votre nom","identity.emailLabel":"Email","identity.emailPlaceholder":"votre@email.com","identity.cancel":"Annuler","identity.submit":"Continuer","marker.approximate":"Position approximative (confiance : {confidence}%)","marker.aria":"Feedback n\xb0{number} : {type} \u2014 {message}","marker.count":"{count} marqueurs de feedback affich\xe9s","fab.badge":"{count} feedbacks non r\xe9solus","feedback.sent.confirmation":"Feedback envoy\xe9 avec succ\xe8s","feedback.error.message":"\xc9chec de l'envoi du feedback","feedback.deleted.confirmation":"Feedback supprim\xe9","badge.count":"{count} feedbacks non r\xe9solus","bulk.selectAll":"Tout s\xe9lectionner","bulk.selected":"{count} s\xe9lectionn\xe9(s)","bulk.resolve":"R\xe9soudre","bulk.delete":"Supprimer","bulk.deselect":"D\xe9s\xe9lectionner","sort.newest":"Plus r\xe9cents","sort.oldest":"Plus anciens","sort.byType":"Par type","sort.openFirst":"Ouverts d'abord","sort.label":"Trier","group.byPage":"Par page","group.feedbacks":"{count} feedbacks","stats.open":"Ouverts","stats.resolved":"R\xe9solus","stats.bugs":"Bugs","stats.progress":"{percent}% r\xe9solus","detail.back":"Retour","detail.title":"Feedback n\xb0{number}","detail.status":"Statut","detail.message":"Message","detail.screenshot":"Capture d'\xe9cran","detail.screenshotAlt":"Capture d'\xe9cran de la zone annot\xe9e","detail.metadata":"D\xe9tails","detail.annotation":"Annotation","detail.page":"Page","detail.author":"Auteur","detail.date":"Cr\xe9\xe9 le","detail.viewport":"Viewport","detail.browser":"Navigateur","detail.resolvedAt":"R\xe9solu le","detail.closedAt":"Cl\xf4tur\xe9 le","detail.goToAnnotation":"Aller \xe0 l'annotation","detail.element":"\xc9l\xe9ment","detail.selector":"S\xe9lecteur","detail.position":"Position","detail.resolve":"R\xe9soudre","detail.reopen":"Rouvrir","detail.delete":"Supprimer","detail.diagnostics":"Diagnostics","detail.diagnostics.console":"Console","detail.diagnostics.network":"R\xe9seau en \xe9chec","detail.diagnostics.expand":"Afficher les diagnostics","detail.diagnostics.collapse":"Masquer les diagnostics","detail.diagnostics.noEntries":"Aucune entr\xe9e","comments.title":"R\xe9ponses","comments.placeholder":"R\xe9pondre \xe0 l'\xe9quipe...","comments.error":"Non envoy\xe9. R\xe9essayez.","comments.full":"Ce fil est complet.","comments.team":"\xc9quipe","shortcuts.title":"Raccourcis clavier","shortcuts.navigate":"Naviguer les feedbacks","shortcuts.resolve":"R\xe9soudre / Rouvrir","shortcuts.delete":"Supprimer","shortcuts.search":"Rechercher","shortcuts.select":"S\xe9lectionner","shortcuts.help":"Raccourcis","shortcuts.close":"Fermer","shortcuts.hint":"Raccourcis clavier","export.label":"Exporter","export.csv":"Exporter CSV","export.json":"Exporter JSON"}}),Vd={};s(Vd,{it:()=>Gd});var Gd,Xd=t(()=>{Gd={"panel.title":"Feedback","panel.ariaLabel":"Pannello feedback di Siteping","panel.feedbackList":"Elenco feedback","panel.loading":"Caricamento feedback","panel.close":"Chiudi pannello","panel.deleteAll":"Elimina tutto","panel.deleteAllConfirmTitle":"Elimina tutto","panel.deleteAllConfirmMessage":"Eliminare tutti i feedback per questo progetto? Questa azione non pu\xf2 essere annullata.","panel.search":"Cerca...","panel.searchAria":"Cerca feedback","panel.filterAll":"Tutti","panel.loadError":"Caricamento non riuscito","panel.retry":"Riprova","panel.empty":"Nessun feedback ancora","panel.showMore":"Mostra di pi\xf9","panel.showLess":"Mostra meno","panel.resolve":"Risolvi","panel.reopen":"Riapri","panel.delete":"Elimina","panel.cancel":"Annulla","panel.confirmDelete":"Elimina","panel.loadMore":"Carica altro ({remaining} rimanenti)","panel.statusAll":"Tutti","panel.statusOpen":"Aperto","panel.statusResolved":"Risolto","panel.statusInProgress":"In corso","panel.statusWontFix":"Non verr\xe0 corretto","type.label":"Tipo","type.question":"Domanda","type.change":"Modifica","type.bug":"Bug","type.other":"Altro","status.label":"Stato","scope.label":"Ambito","scope.thisPage":"Questa pagina","scope.thisType":"Questo tipo","scope.all":"Tutte le pagine","panel.filterMine":"Miei","panel.filterMineHint":"Solo i feedback inviati da questo browser","fab.aria":"Siteping \u2014 Menu feedback","fab.messages":"Mostra barra laterale","fab.annotate":"Crea nuova annotazione","fab.annotations":"Mostra o nascondi i marcatori","annotator.instruction":"Disegna un rettangolo sull'area da commentare \u2014 oppure premi Invio per commentare l'ultimo elemento attivo","annotator.instantInstruction":"Commenta il punto selezionato","annotator.touchInstruction":"Tocca un elemento o trascina per selezionare un'area","annotator.cancel":"Annulla","popup.ariaLabel":"Modulo feedback","popup.placeholder":"Descrivi il tuo feedback...","popup.textareaAria":"Messaggio di feedback","popup.submitHintMac":"\u2318+Invio per inviare","popup.submitHintOther":"Ctrl+Invio per inviare","popup.cancel":"Annulla","popup.submit":"Invia","identity.title":"Identificati","identity.nameLabel":"Nome","identity.namePlaceholder":"Il tuo nome","identity.emailLabel":"Email","identity.emailPlaceholder":"tua@email.com","identity.cancel":"Annulla","identity.submit":"Continua","marker.approximate":"Posizione approssimativa (confidenza: {confidence}%)","marker.aria":"Feedback #{number}: {type} \u2014 {message}","marker.count":"{count} marcatori di feedback visualizzati","fab.badge":"{count} feedback non risolti","feedback.sent.confirmation":"Feedback inviato con successo","feedback.error.message":"Invio del feedback non riuscito","feedback.deleted.confirmation":"Feedback eliminato","badge.count":"{count} feedback non risolti","bulk.selectAll":"Seleziona tutto","bulk.selected":"{count} selezionati","bulk.resolve":"Risolvi","bulk.delete":"Elimina","bulk.deselect":"Deseleziona","sort.newest":"Pi\xf9 recenti","sort.oldest":"Pi\xf9 vecchi","sort.byType":"Per tipo","sort.openFirst":"Aperti prima","sort.label":"Ordina","group.byPage":"Per pagina","group.feedbacks":"{count} feedback","stats.open":"Aperti","stats.resolved":"Risolti","stats.bugs":"Bug","stats.progress":"{percent}% risolti","detail.back":"Indietro","detail.title":"Feedback #{number}","detail.status":"Stato","detail.message":"Messaggio","detail.screenshot":"Schermata","detail.screenshotAlt":"Schermata dell'area annotata","detail.metadata":"Dettagli","detail.annotation":"Annotazione","detail.page":"Pagina","detail.author":"Autore","detail.date":"Creato","detail.viewport":"Viewport","detail.browser":"Browser","detail.resolvedAt":"Risolto il","detail.closedAt":"Chiuso il","detail.goToAnnotation":"Vai all'annotazione","detail.element":"Elemento","detail.selector":"Selettore","detail.position":"Posizione","detail.resolve":"Risolvi","detail.reopen":"Riapri","detail.delete":"Elimina","detail.diagnostics":"Diagnostica","detail.diagnostics.console":"Console","detail.diagnostics.network":"Rete fallita","detail.diagnostics.expand":"Mostra diagnostica","detail.diagnostics.collapse":"Nascondi diagnostica","detail.diagnostics.noEntries":"Nessuna voce","comments.title":"Risposte","comments.placeholder":"Rispondi al team...","comments.error":"Non inviata. Riprova.","comments.full":"Questa discussione \xe8 piena.","comments.team":"Team","shortcuts.title":"Scorciatoie da tastiera","shortcuts.navigate":"Naviga i feedback","shortcuts.resolve":"Risolvi / Riapri","shortcuts.delete":"Elimina","shortcuts.search":"Cerca","shortcuts.select":"Attiva selezione","shortcuts.help":"Mostra scorciatoie","shortcuts.close":"Chiudi","shortcuts.hint":"Scorciatoie da tastiera","export.label":"Esporta","export.csv":"Esporta CSV","export.json":"Esporta JSON"}}),$d={};s($d,{ja:()=>Yd});var Yd,Wd=t(()=>{Yd={"panel.title":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af","panel.ariaLabel":"Siteping \u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u30d1\u30cd\u30eb","panel.feedbackList":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u4e00\u89a7","panel.loading":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u8aad\u307f\u8fbc\u307f\u4e2d","panel.close":"\u30d1\u30cd\u30eb\u3092\u9589\u3058\u308b","panel.deleteAll":"\u5168\u524a\u9664","panel.deleteAllConfirmTitle":"\u3059\u3079\u3066\u524a\u9664","panel.deleteAllConfirmMessage":"\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u3059\u3079\u3066\u524a\u9664\u3057\u307e\u3059\u304b\uff1f\u3053\u306e\u64cd\u4f5c\u306f\u53d6\u308a\u6d88\u305b\u307e\u305b\u3093\u3002","panel.search":"\u691c\u7d22...","panel.searchAria":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u691c\u7d22","panel.filterAll":"\u3059\u3079\u3066","panel.loadError":"\u8aad\u307f\u8fbc\u307f\u306b\u5931\u6557\u3057\u307e\u3057\u305f","panel.retry":"\u518d\u8a66\u884c","panel.empty":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306f\u307e\u3060\u3042\u308a\u307e\u305b\u3093","panel.showMore":"\u3082\u3063\u3068\u898b\u308b","panel.showLess":"\u6298\u308a\u305f\u305f\u3080","panel.resolve":"\u89e3\u6c7a","panel.reopen":"\u518d\u30aa\u30fc\u30d7\u30f3","panel.delete":"\u524a\u9664","panel.cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","panel.confirmDelete":"\u524a\u9664","panel.loadMore":"\u3055\u3089\u306b\u8aad\u307f\u8fbc\u3080\uff08\u6b8b\u308a {remaining} \u4ef6\uff09","panel.statusAll":"\u3059\u3079\u3066","panel.statusOpen":"\u672a\u5bfe\u5fdc","panel.statusResolved":"\u89e3\u6c7a\u6e08\u307f","panel.statusInProgress":"\u5bfe\u5fdc\u4e2d","panel.statusWontFix":"\u5bfe\u5fdc\u3057\u306a\u3044","type.label":"\u7a2e\u985e","type.question":"\u8cea\u554f","type.change":"\u5909\u66f4\u4f9d\u983c","type.bug":"\u4e0d\u5177\u5408","type.other":"\u305d\u306e\u4ed6","status.label":"\u30b9\u30c6\u30fc\u30bf\u30b9","scope.label":"\u7bc4\u56f2","scope.thisPage":"\u3053\u306e\u30da\u30fc\u30b8","scope.thisType":"\u3053\u306e\u30da\u30fc\u30b8\u7a2e\u5225","scope.all":"\u3059\u3079\u3066\u306e\u30da\u30fc\u30b8","panel.filterMine":"\u81ea\u5206\u306e\u6295\u7a3f","panel.filterMineHint":"\u3053\u306e\u30d6\u30e9\u30a6\u30b6\u304b\u3089\u9001\u4fe1\u3057\u305f\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306e\u307f","fab.aria":"Siteping \u2014 \u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u30e1\u30cb\u30e5\u30fc","fab.messages":"\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u8868\u793a","fab.annotate":"\u65b0\u3057\u3044\u6ce8\u91c8\u3092\u4f5c\u6210","fab.annotations":"\u30de\u30fc\u30ab\u30fc\u306e\u8868\u793a\u3092\u5207\u308a\u66ff\u3048","annotator.instruction":"\u30b3\u30e1\u30f3\u30c8\u3057\u305f\u3044\u7bc4\u56f2\u3092\u56db\u89d2\u3067\u56f2\u3093\u3067\u304f\u3060\u3055\u3044 \u2014 \u307e\u305f\u306f Enter \u30ad\u30fc\u3067\u6700\u5f8c\u306b\u30d5\u30a9\u30fc\u30ab\u30b9\u3057\u305f\u8981\u7d20\u306b\u30b3\u30e1\u30f3\u30c8\u3067\u304d\u307e\u3059","annotator.instantInstruction":"\u30af\u30ea\u30c3\u30af\u3057\u305f\u7b87\u6240\u306b\u30b3\u30e1\u30f3\u30c8","annotator.touchInstruction":"\u8981\u7d20\u3092\u30bf\u30c3\u30d7\u3059\u308b\u304b\u3001\u30c9\u30e9\u30c3\u30b0\u3057\u3066\u7bc4\u56f2\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044","annotator.cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","popup.ariaLabel":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u30d5\u30a9\u30fc\u30e0","popup.placeholder":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044...","popup.textareaAria":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u672c\u6587","popup.submitHintMac":"\u2318+Enter \u3067\u9001\u4fe1","popup.submitHintOther":"Ctrl+Enter \u3067\u9001\u4fe1","popup.cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","popup.submit":"\u9001\u4fe1","identity.title":"\u304a\u540d\u524d\u3068\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b","identity.nameLabel":"\u540d\u524d","identity.namePlaceholder":"\u304a\u540d\u524d","identity.emailLabel":"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9","identity.emailPlaceholder":"your@email.com","identity.cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","identity.submit":"\u7d9a\u3051\u308b","marker.approximate":"\u304a\u304a\u3088\u305d\u306e\u4f4d\u7f6e\uff08\u78ba\u5ea6: {confidence}%\uff09","marker.aria":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af #{number}: {type} \u2014 {message}","marker.count":"{count} \u4ef6\u306e\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u30de\u30fc\u30ab\u30fc\u3092\u8868\u793a\u4e2d","fab.badge":"\u672a\u89e3\u6c7a\u306e\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af {count} \u4ef6","feedback.sent.confirmation":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u9001\u4fe1\u3057\u307e\u3057\u305f","feedback.error.message":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306e\u9001\u4fe1\u306b\u5931\u6557\u3057\u307e\u3057\u305f","feedback.deleted.confirmation":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u524a\u9664\u3057\u307e\u3057\u305f","badge.count":"\u672a\u89e3\u6c7a\u306e\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af {count} \u4ef6","bulk.selectAll":"\u3059\u3079\u3066\u9078\u629e","bulk.selected":"{count} \u4ef6\u9078\u629e\u4e2d","bulk.resolve":"\u89e3\u6c7a","bulk.delete":"\u524a\u9664","bulk.deselect":"\u9078\u629e\u3092\u89e3\u9664","sort.newest":"\u65b0\u3057\u3044\u9806","sort.oldest":"\u53e4\u3044\u9806","sort.byType":"\u7a2e\u985e\u5225","sort.openFirst":"\u672a\u5bfe\u5fdc\u3092\u5148\u982d\u306b","sort.label":"\u4e26\u3073\u66ff\u3048","group.byPage":"\u30da\u30fc\u30b8\u5225","group.feedbacks":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af {count} \u4ef6","stats.open":"\u672a\u5bfe\u5fdc","stats.resolved":"\u89e3\u6c7a\u6e08\u307f","stats.bugs":"\u4e0d\u5177\u5408","stats.progress":"{percent}% \u89e3\u6c7a\u6e08\u307f","detail.back":"\u623b\u308b","detail.title":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af #{number}","detail.status":"\u30b9\u30c6\u30fc\u30bf\u30b9","detail.message":"\u30e1\u30c3\u30bb\u30fc\u30b8","detail.screenshot":"\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8","detail.screenshotAlt":"\u6ce8\u91c8\u304c\u4ed8\u3044\u305f\u7bc4\u56f2\u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8","detail.metadata":"\u8a73\u7d30","detail.annotation":"\u6ce8\u91c8","detail.page":"\u30da\u30fc\u30b8","detail.author":"\u6295\u7a3f\u8005","detail.date":"\u4f5c\u6210\u65e5\u6642","detail.viewport":"\u30d3\u30e5\u30fc\u30dd\u30fc\u30c8","detail.browser":"\u30d6\u30e9\u30a6\u30b6","detail.resolvedAt":"\u89e3\u6c7a\u65e5\u6642","detail.closedAt":"\u30af\u30ed\u30fc\u30ba\u65e5\u6642","detail.goToAnnotation":"\u6ce8\u91c8\u3078\u79fb\u52d5","detail.element":"\u8981\u7d20","detail.selector":"\u30bb\u30ec\u30af\u30bf\u30fc","detail.position":"\u4f4d\u7f6e","detail.resolve":"\u89e3\u6c7a","detail.reopen":"\u518d\u30aa\u30fc\u30d7\u30f3","detail.delete":"\u524a\u9664","detail.diagnostics":"\u8a3a\u65ad\u60c5\u5831","detail.diagnostics.console":"\u30b3\u30f3\u30bd\u30fc\u30eb","detail.diagnostics.network":"\u5931\u6557\u3057\u305f\u901a\u4fe1","detail.diagnostics.expand":"\u8a3a\u65ad\u60c5\u5831\u3092\u8868\u793a","detail.diagnostics.collapse":"\u8a3a\u65ad\u60c5\u5831\u3092\u96a0\u3059","detail.diagnostics.noEntries":"\u9805\u76ee\u306f\u3042\u308a\u307e\u305b\u3093","comments.title":"\u8fd4\u4fe1","comments.placeholder":"\u30c1\u30fc\u30e0\u306b\u8fd4\u4fe1...","comments.error":"\u9001\u4fe1\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3082\u3046\u4e00\u5ea6\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","comments.full":"\u3053\u306e\u30b9\u30ec\u30c3\u30c9\u306f\u4e0a\u9650\u306b\u9054\u3057\u307e\u3057\u305f\u3002","comments.team":"\u30c1\u30fc\u30e0","shortcuts.title":"\u30ad\u30fc\u30dc\u30fc\u30c9\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8","shortcuts.navigate":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u79fb\u52d5","shortcuts.resolve":"\u89e3\u6c7a / \u518d\u30aa\u30fc\u30d7\u30f3","shortcuts.delete":"\u524a\u9664","shortcuts.search":"\u691c\u7d22\u306b\u30d5\u30a9\u30fc\u30ab\u30b9","shortcuts.select":"\u9078\u629e\u3092\u5207\u308a\u66ff\u3048","shortcuts.help":"\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8\u3092\u8868\u793a","shortcuts.close":"\u9589\u3058\u308b","shortcuts.hint":"\u30ad\u30fc\u30dc\u30fc\u30c9\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8","export.label":"\u51fa\u529b","export.csv":"CSV \u3067\u51fa\u529b","export.json":"JSON \u3067\u51fa\u529b"}}),Jd={};s(Jd,{ko:()=>zd});var zd,_d=t(()=>{zd={"panel.title":"\ud53c\ub4dc\ubc31","panel.ariaLabel":"Siteping \ud53c\ub4dc\ubc31 \ud328\ub110","panel.feedbackList":"\ud53c\ub4dc\ubc31 \ubaa9\ub85d","panel.loading":"\ud53c\ub4dc\ubc31\uc744 \ubd88\ub7ec\uc624\ub294 \uc911","panel.close":"\ud328\ub110 \ub2eb\uae30","panel.deleteAll":"\ubaa8\ub450 \uc0ad\uc81c","panel.deleteAllConfirmTitle":"\ubaa8\ub450 \uc0ad\uc81c","panel.deleteAllConfirmMessage":"\uc774 \ud504\ub85c\uc81d\ud2b8\uc758 \ud53c\ub4dc\ubc31\uc744 \ubaa8\ub450 \uc0ad\uc81c\ud560\uae4c\uc694? \uc774 \uc791\uc5c5\uc740 \ub418\ub3cc\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.","panel.search":"\uac80\uc0c9...","panel.searchAria":"\ud53c\ub4dc\ubc31 \uac80\uc0c9","panel.filterAll":"\uc804\uccb4","panel.loadError":"\ubd88\ub7ec\uc624\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4","panel.retry":"\ub2e4\uc2dc \uc2dc\ub3c4","panel.empty":"\uc544\uc9c1 \ud53c\ub4dc\ubc31\uc774 \uc5c6\uc2b5\ub2c8\ub2e4","panel.showMore":"\ub354 \ubcf4\uae30","panel.showLess":"\uc811\uae30","panel.resolve":"\ud574\uacb0","panel.reopen":"\ub2e4\uc2dc \uc5f4\uae30","panel.delete":"\uc0ad\uc81c","panel.cancel":"\ucde8\uc18c","panel.confirmDelete":"\uc0ad\uc81c","panel.loadMore":"\ub354 \ubd88\ub7ec\uc624\uae30 ({remaining}\uac74 \ub0a8\uc74c)","panel.statusAll":"\uc804\uccb4","panel.statusOpen":"\uc5f4\ub9bc","panel.statusResolved":"\ud574\uacb0\ub428","panel.statusInProgress":"\uc9c4\ud589 \uc911","panel.statusWontFix":"\ucc98\ub9ac \uc548 \ud568","type.label":"\uc720\ud615","type.question":"\uc9c8\ubb38","type.change":"\uc218\uc815 \uc694\uccad","type.bug":"\ubc84\uadf8","type.other":"\uae30\ud0c0","status.label":"\uc0c1\ud0dc","scope.label":"\ubc94\uc704","scope.thisPage":"\uc774 \ud398\uc774\uc9c0","scope.thisType":"\uac19\uc740 \uc720\ud615\uc758 \ud398\uc774\uc9c0","scope.all":"\ubaa8\ub4e0 \ud398\uc774\uc9c0","panel.filterMine":"\ub0b4 \ud53c\ub4dc\ubc31","panel.filterMineHint":"\uc774 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \ubcf4\ub0b8 \ud53c\ub4dc\ubc31\ub9cc \ubd05\ub2c8\ub2e4","fab.aria":"Siteping \u2014 \ud53c\ub4dc\ubc31 \uba54\ub274","fab.messages":"\uc0ac\uc774\ub4dc\ubc14 \ubcf4\uae30","fab.annotate":"\uc0c8 \uc8fc\uc11d \ub9cc\ub4e4\uae30","fab.annotations":"\ub9c8\ucee4 \ubcf4\uc774\uae30 \ub610\ub294 \uc228\uae30\uae30","annotator.instruction":"\ub313\uae00\uc744 \ub0a8\uae38 \uc601\uc5ed\uc5d0 \uc0ac\uac01\ud615\uc744 \uadf8\ub9ac\uc138\uc694. Enter \ud0a4\ub97c \ub204\ub974\uba74 \ub9c8\uc9c0\ub9c9\uc73c\ub85c \ud3ec\ucee4\uc2a4\ud55c \uc694\uc18c\uc5d0 \ub313\uae00\uc744 \ub0a8\uae41\ub2c8\ub2e4","annotator.instantInstruction":"\ud074\ub9ad\ud55c \uc704\uce58\uc5d0 \ub313\uae00\uc744 \ub0a8\uae41\ub2c8\ub2e4","annotator.touchInstruction":"\uc694\uc18c\ub97c \ud0ed\ud558\uac70\ub098 \ub4dc\ub798\uadf8\ud574\uc11c \uc601\uc5ed\uc744 \uc120\ud0dd\ud558\uc138\uc694","annotator.cancel":"\ucde8\uc18c","popup.ariaLabel":"\ud53c\ub4dc\ubc31 \uc791\uc131","popup.placeholder":"\ud53c\ub4dc\ubc31 \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc138\uc694...","popup.textareaAria":"\ud53c\ub4dc\ubc31 \ub0b4\uc6a9","popup.submitHintMac":"\u2318+Enter\ub85c \ubcf4\ub0b4\uae30","popup.submitHintOther":"Ctrl+Enter\ub85c \ubcf4\ub0b4\uae30","popup.cancel":"\ucde8\uc18c","popup.submit":"\ubcf4\ub0b4\uae30","identity.title":"\uc791\uc131\uc790 \uc815\ubcf4","identity.nameLabel":"\uc774\ub984","identity.namePlaceholder":"\uc774\ub984","identity.emailLabel":"\uc774\uba54\uc77c","identity.emailPlaceholder":"you@example.com","identity.cancel":"\ucde8\uc18c","identity.submit":"\uacc4\uc18d","marker.approximate":"\ub300\ub7b5\uc801\uc778 \uc704\uce58 (\uc2e0\ub8b0\ub3c4: {confidence}%)","marker.aria":"\ud53c\ub4dc\ubc31 #{number}: {type} \u2014 {message}","marker.count":"\ud53c\ub4dc\ubc31 \ub9c8\ucee4 {count}\uac1c \ud45c\uc2dc \uc911","fab.badge":"\ud574\uacb0\ub418\uc9c0 \uc54a\uc740 \ud53c\ub4dc\ubc31 {count}\uac74","feedback.sent.confirmation":"\ud53c\ub4dc\ubc31\uc744 \ubcf4\ub0c8\uc2b5\ub2c8\ub2e4","feedback.error.message":"\ud53c\ub4dc\ubc31\uc744 \ubcf4\ub0b4\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4","feedback.deleted.confirmation":"\ud53c\ub4dc\ubc31\uc744 \uc0ad\uc81c\ud588\uc2b5\ub2c8\ub2e4","badge.count":"\ud574\uacb0\ub418\uc9c0 \uc54a\uc740 \ud53c\ub4dc\ubc31 {count}\uac74","bulk.selectAll":"\ubaa8\ub450 \uc120\ud0dd","bulk.selected":"{count}\uac74 \uc120\ud0dd\ub428","bulk.resolve":"\ud574\uacb0","bulk.delete":"\uc0ad\uc81c","bulk.deselect":"\uc120\ud0dd \ud574\uc81c","sort.newest":"\ucd5c\uc2e0\uc21c","sort.oldest":"\uc624\ub798\ub41c\uc21c","sort.byType":"\uc720\ud615\ubcc4","sort.openFirst":"\uc5f4\ub9b0 \ud56d\ubaa9 \uba3c\uc800","sort.label":"\uc815\ub82c","group.byPage":"\ud398\uc774\uc9c0\ubcc4","group.feedbacks":"\ud53c\ub4dc\ubc31 {count}\uac74","stats.open":"\uc5f4\ub9bc","stats.resolved":"\ud574\uacb0\ub428","stats.bugs":"\ubc84\uadf8","stats.progress":"{percent}% \ud574\uacb0","detail.back":"\ub4a4\ub85c","detail.title":"\ud53c\ub4dc\ubc31 #{number}","detail.status":"\uc0c1\ud0dc","detail.message":"\ub0b4\uc6a9","detail.screenshot":"\uc2a4\ud06c\ub9b0\uc0f7","detail.screenshotAlt":"\uc8fc\uc11d\uc744 \ub2e8 \uc601\uc5ed\uc758 \uc2a4\ud06c\ub9b0\uc0f7","detail.metadata":"\uc0c1\uc138 \uc815\ubcf4","detail.annotation":"\uc8fc\uc11d","detail.page":"\ud398\uc774\uc9c0","detail.author":"\uc791\uc131\uc790","detail.date":"\uc791\uc131\uc77c","detail.viewport":"\ubdf0\ud3ec\ud2b8","detail.browser":"\ube0c\ub77c\uc6b0\uc800","detail.resolvedAt":"\ud574\uacb0\uc77c","detail.closedAt":"\uc885\ub8cc\uc77c","detail.goToAnnotation":"\uc8fc\uc11d \uc704\uce58\ub85c \uc774\ub3d9","detail.element":"\uc694\uc18c","detail.selector":"\uc120\ud0dd\uc790","detail.position":"\uc704\uce58","detail.resolve":"\ud574\uacb0","detail.reopen":"\ub2e4\uc2dc \uc5f4\uae30","detail.delete":"\uc0ad\uc81c","detail.diagnostics":"\uc9c4\ub2e8 \uc815\ubcf4","detail.diagnostics.console":"\ucf58\uc194","detail.diagnostics.network":"\uc2e4\ud328\ud55c \ub124\ud2b8\uc6cc\ud06c \uc694\uccad","detail.diagnostics.expand":"\uc9c4\ub2e8 \uc815\ubcf4 \ubcf4\uae30","detail.diagnostics.collapse":"\uc9c4\ub2e8 \uc815\ubcf4 \uc228\uae30\uae30","detail.diagnostics.noEntries":"\uae30\ub85d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4","comments.title":"\ub2f5\uae00","comments.placeholder":"\ud300\uc5d0 \ub2f5\uae00 \ub0a8\uae30\uae30...","comments.error":"\ubcf4\ub0b4\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \ub2e4\uc2dc \uc2dc\ub3c4\ud558\uc138\uc694.","comments.full":"\uc774 \uc2a4\ub808\ub4dc\uc5d0\ub294 \ub354 \uc774\uc0c1 \ub2f5\uae00\uc744 \ub2ec \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.","comments.team":"\ud300","shortcuts.title":"\ud0a4\ubcf4\ub4dc \ub2e8\ucd95\ud0a4","shortcuts.navigate":"\ud53c\ub4dc\ubc31 \uac04 \uc774\ub3d9","shortcuts.resolve":"\ud574\uacb0 / \ub2e4\uc2dc \uc5f4\uae30","shortcuts.delete":"\uc0ad\uc81c","shortcuts.search":"\uac80\uc0c9\ucc3d\uc73c\ub85c \uc774\ub3d9","shortcuts.select":"\uc120\ud0dd \uc804\ud658","shortcuts.help":"\ub2e8\ucd95\ud0a4 \ubcf4\uae30","shortcuts.close":"\ub2eb\uae30","shortcuts.hint":"\ud0a4\ubcf4\ub4dc \ub2e8\ucd95\ud0a4","export.label":"\ub0b4\ubcf4\ub0b4\uae30","export.csv":"CSV \ub0b4\ubcf4\ub0b4\uae30","export.json":"JSON \ub0b4\ubcf4\ub0b4\uae30"}}),jd={};s(jd,{pt:()=>Zd});var Zd,qd=t(()=>{Zd={"panel.title":"Feedbacks","panel.ariaLabel":"Painel de feedback do Siteping","panel.feedbackList":"Lista de feedbacks","panel.loading":"Carregando feedbacks","panel.close":"Fechar painel","panel.deleteAll":"Excluir tudo","panel.deleteAllConfirmTitle":"Excluir tudo","panel.deleteAllConfirmMessage":"Excluir todos os feedbacks deste projeto? Esta a\xe7\xe3o n\xe3o pode ser desfeita.","panel.search":"Pesquisar...","panel.searchAria":"Pesquisar feedbacks","panel.filterAll":"Todos","panel.loadError":"Falha ao carregar","panel.retry":"Tentar novamente","panel.empty":"Nenhum feedback ainda","panel.showMore":"Mostrar mais","panel.showLess":"Mostrar menos","panel.resolve":"Resolver","panel.reopen":"Reabrir","panel.delete":"Excluir","panel.cancel":"Cancelar","panel.confirmDelete":"Excluir","panel.loadMore":"Carregar mais ({remaining} restantes)","panel.statusAll":"Todos","panel.statusOpen":"Aberto","panel.statusResolved":"Resolvido","panel.statusInProgress":"Em andamento","panel.statusWontFix":"N\xe3o ser\xe1 corrigido","type.label":"Tipo","type.question":"Pergunta","type.change":"Altera\xe7\xe3o","type.bug":"Bug","type.other":"Outro","status.label":"Status","scope.label":"Escopo","scope.thisPage":"Esta p\xe1gina","scope.thisType":"Este tipo","scope.all":"Todas as p\xe1ginas","panel.filterMine":"Meus","panel.filterMineHint":"Apenas os feedbacks enviados deste navegador","fab.aria":"Siteping \u2014 Menu de feedback","fab.messages":"Exibir barra lateral","fab.annotate":"Criar nova anota\xe7\xe3o","fab.annotations":"Exibir ou ocultar marcadores","annotator.instruction":"Desenhe um ret\xe2ngulo na \xe1rea que deseja comentar \u2014 ou pressione Enter para comentar o \xfaltimo elemento em foco","annotator.instantInstruction":"Comentar o ponto clicado","annotator.touchInstruction":"Toque em um elemento ou arraste para selecionar uma \xe1rea","annotator.cancel":"Cancelar","popup.ariaLabel":"Formul\xe1rio de feedback","popup.placeholder":"Descreva seu feedback...","popup.textareaAria":"Mensagem de feedback","popup.submitHintMac":"\u2318+Enter para enviar","popup.submitHintOther":"Ctrl+Enter para enviar","popup.cancel":"Cancelar","popup.submit":"Enviar","identity.title":"Identifique-se","identity.nameLabel":"Nome","identity.namePlaceholder":"Seu nome","identity.emailLabel":"E-mail","identity.emailPlaceholder":"seu@email.com","identity.cancel":"Cancelar","identity.submit":"Continuar","marker.approximate":"Posi\xe7\xe3o aproximada (confian\xe7a: {confidence}%)","marker.aria":"Feedback #{number}: {type} \u2014 {message}","marker.count":"{count} marcadores de feedback exibidos","fab.badge":"{count} feedbacks n\xe3o resolvidos","feedback.sent.confirmation":"Feedback enviado com sucesso","feedback.error.message":"Falha ao enviar feedback","feedback.deleted.confirmation":"Feedback exclu\xeddo","badge.count":"{count} feedbacks n\xe3o resolvidos","bulk.selectAll":"Selecionar tudo","bulk.selected":"{count} selecionados","bulk.resolve":"Resolver","bulk.delete":"Excluir","bulk.deselect":"Desmarcar","sort.newest":"Mais recentes","sort.oldest":"Mais antigos","sort.byType":"Por tipo","sort.openFirst":"Abertos primeiro","sort.label":"Ordenar","group.byPage":"Por p\xe1gina","group.feedbacks":"{count} feedbacks","stats.open":"Abertos","stats.resolved":"Resolvidos","stats.bugs":"Bugs","stats.progress":"{percent}% resolvidos","detail.back":"Voltar","detail.title":"Feedback #{number}","detail.status":"Status","detail.message":"Mensagem","detail.screenshot":"Captura","detail.screenshotAlt":"Captura da \xe1rea anotada","detail.metadata":"Detalhes","detail.annotation":"Anota\xe7\xe3o","detail.page":"P\xe1gina","detail.author":"Autor","detail.date":"Criado","detail.viewport":"Viewport","detail.browser":"Navegador","detail.resolvedAt":"Resolvido em","detail.closedAt":"Fechado em","detail.goToAnnotation":"Ir para anota\xe7\xe3o","detail.element":"Elemento","detail.selector":"Seletor","detail.position":"Posi\xe7\xe3o","detail.resolve":"Resolver","detail.reopen":"Reabrir","detail.delete":"Excluir","detail.diagnostics":"Diagn\xf3stico","detail.diagnostics.console":"Console","detail.diagnostics.network":"Rede com falha","detail.diagnostics.expand":"Mostrar diagn\xf3stico","detail.diagnostics.collapse":"Ocultar diagn\xf3stico","detail.diagnostics.noEntries":"Sem entradas","comments.title":"Respostas","comments.placeholder":"Responder \xe0 equipe...","comments.error":"N\xe3o enviada. Tente novamente.","comments.full":"Esta conversa est\xe1 cheia.","comments.team":"Equipe","shortcuts.title":"Atalhos de teclado","shortcuts.navigate":"Navegar feedbacks","shortcuts.resolve":"Resolver / Reabrir","shortcuts.delete":"Excluir","shortcuts.search":"Buscar","shortcuts.select":"Alternar sele\xe7\xe3o","shortcuts.help":"Mostrar atalhos","shortcuts.close":"Fechar","shortcuts.hint":"Atalhos de teclado","export.label":"Exportar","export.csv":"Exportar CSV","export.json":"Exportar JSON"}}),Ap={};s(Ap,{ru:()=>ep});var ep,tp,sp=t(()=>{ep={"panel.title":"\u041e\u0431\u0440\u0430\u0442\u043d\u0430\u044f \u0441\u0432\u044f\u0437\u044c","panel.ariaLabel":"\u041f\u0430\u043d\u0435\u043b\u044c \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 Siteping","panel.feedbackList":"\u0421\u043f\u0438\u0441\u043e\u043a \u043e\u0442\u0437\u044b\u0432\u043e\u0432","panel.loading":"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043e\u0442\u0437\u044b\u0432\u043e\u0432","panel.close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u043f\u0430\u043d\u0435\u043b\u044c","panel.deleteAll":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0451","panel.deleteAllConfirmTitle":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0451","panel.deleteAllConfirmMessage":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0435 \u043e\u0442\u0437\u044b\u0432\u044b \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430? \u042d\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043d\u0435\u043e\u0431\u0440\u0430\u0442\u0438\u043c\u043e.","panel.search":"\u041f\u043e\u0438\u0441\u043a...","panel.searchAria":"\u041f\u043e\u0438\u0441\u043a \u043f\u043e \u043e\u0442\u0437\u044b\u0432\u0430\u043c","panel.filterAll":"\u0412\u0441\u0435","panel.loadError":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438","panel.retry":"\u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c","panel.empty":"\u041f\u043e\u043a\u0430 \u043d\u0435\u0442 \u043e\u0442\u0437\u044b\u0432\u043e\u0432","panel.showMore":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435","panel.showLess":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043c\u0435\u043d\u044c\u0448\u0435","panel.resolve":"\u0420\u0435\u0448\u0435\u043d\u043e","panel.reopen":"\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0437\u0430\u043d\u043e\u0432\u043e","panel.delete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","panel.cancel":"\u041e\u0442\u043c\u0435\u043d\u0430","panel.confirmDelete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","panel.loadMore":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0435\u0449\u0451 ({remaining} \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c)","panel.statusAll":"\u0412\u0441\u0435","panel.statusOpen":"\u041e\u0442\u043a\u0440\u044b\u0442","panel.statusResolved":"\u0420\u0435\u0448\u0451\u043d","panel.statusInProgress":"\u0412 \u0440\u0430\u0431\u043e\u0442\u0435","panel.statusWontFix":"\u041d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e","type.label":"\u0422\u0438\u043f","type.question":"\u0412\u043e\u043f\u0440\u043e\u0441","type.change":"\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435","type.bug":"\u0411\u0430\u0433","type.other":"\u0414\u0440\u0443\u0433\u043e\u0435","status.label":"\u0421\u0442\u0430\u0442\u0443\u0441","scope.label":"\u041e\u0431\u043b\u0430\u0441\u0442\u044c","scope.thisPage":"\u042d\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430","scope.thisType":"\u042d\u0442\u043e\u0442 \u0442\u0438\u043f","scope.all":"\u0412\u0441\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b","panel.filterMine":"\u041c\u043e\u0438","panel.filterMineHint":"\u0422\u043e\u043b\u044c\u043a\u043e \u043e\u0442\u0437\u044b\u0432\u044b, \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430","fab.aria":"Siteping \u2014 \u041c\u0435\u043d\u044e \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438","fab.messages":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0430\u043d\u0435\u043b\u044c","fab.annotate":"\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044e","fab.annotations":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u043b\u0438 \u0441\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u0442\u043a\u0438","annotator.instruction":"\u0412\u044b\u0434\u0435\u043b\u0438\u0442\u0435 \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0434\u043b\u044f \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u2014 \u0438\u043b\u0438 \u043d\u0430\u0436\u043c\u0438\u0442\u0435 Enter, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442","annotator.instantInstruction":"\u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u043a \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435","annotator.touchInstruction":"\u041a\u043e\u0441\u043d\u0438\u0442\u0435\u0441\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0438\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u0430\u043b\u044c\u0446\u0435\u043c, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u043e\u0431\u043b\u0430\u0441\u0442\u044c","annotator.cancel":"\u041e\u0442\u043c\u0435\u043d\u0430","popup.ariaLabel":"\u0424\u043e\u0440\u043c\u0430 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438","popup.placeholder":"\u041e\u043f\u0438\u0448\u0438\u0442\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0438\u043b\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435...","popup.textareaAria":"\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435","popup.submitHintMac":"\u2318+Enter \u2014 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c","popup.submitHintOther":"Ctrl+Enter \u2014 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c","popup.cancel":"\u041e\u0442\u043c\u0435\u043d\u0430","popup.submit":"\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c","identity.title":"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u044c\u0442\u0435\u0441\u044c","identity.nameLabel":"\u0418\u043c\u044f","identity.namePlaceholder":"\u0412\u0430\u0448\u0435 \u0438\u043c\u044f","identity.emailLabel":"Email","identity.emailPlaceholder":"\u0432\u0430\u0448@email.com","identity.cancel":"\u041e\u0442\u043c\u0435\u043d\u0430","identity.submit":"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c","marker.approximate":"\u041f\u0440\u0438\u0431\u043b\u0438\u0437\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043f\u043e\u0437\u0438\u0446\u0438\u044f (\u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c: {confidence}%)","marker.aria":"\u041e\u0442\u0437\u044b\u0432 #{number}: {type} \u2014 {message}","marker.count":"\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043e \u043c\u0430\u0440\u043a\u0435\u0440\u043e\u0432 \u043e\u0442\u0437\u044b\u0432\u043e\u0432: {count}","fab.badge":"\u041d\u0435\u0440\u0435\u0448\u0451\u043d\u043d\u044b\u0445 \u043e\u0442\u0437\u044b\u0432\u043e\u0432: {count}","feedback.sent.confirmation":"\u041e\u0442\u0437\u044b\u0432 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d","feedback.error.message":"\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e\u0442\u0437\u044b\u0432","feedback.deleted.confirmation":"\u041e\u0442\u0437\u044b\u0432 \u0443\u0434\u0430\u043b\u0451\u043d","badge.count":"\u041d\u0435\u0440\u0435\u0448\u0451\u043d\u043d\u044b\u0445 \u043e\u0442\u0437\u044b\u0432\u043e\u0432: {count}","bulk.selectAll":"\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435","bulk.selected":"\u0412\u044b\u0431\u0440\u0430\u043d\u043e: {count}","bulk.resolve":"\u0420\u0435\u0448\u0438\u0442\u044c","bulk.delete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","bulk.deselect":"\u0421\u043d\u044f\u0442\u044c \u0432\u044b\u0431\u043e\u0440","sort.newest":"\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u043e\u0432\u044b\u0435","sort.oldest":"\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u0442\u0430\u0440\u044b\u0435","sort.byType":"\u041f\u043e \u0442\u0438\u043f\u0443","sort.openFirst":"\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0435","sort.label":"\u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430","group.byPage":"\u041f\u043e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435","group.feedbacks":"\u041e\u0442\u0437\u044b\u0432\u043e\u0432: {count}","stats.open":"\u041e\u0442\u043a\u0440\u044b\u0442\u044b\u0435","stats.resolved":"\u0420\u0435\u0448\u0451\u043d\u043d\u044b\u0435","stats.bugs":"\u0411\u0430\u0433\u0438","stats.progress":"\u0420\u0435\u0448\u0435\u043d\u043e: {percent}%","detail.back":"\u041d\u0430\u0437\u0430\u0434","detail.title":"\u041e\u0442\u0437\u044b\u0432 #{number}","detail.status":"\u0421\u0442\u0430\u0442\u0443\u0441","detail.message":"\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435","detail.screenshot":"\u0421\u043a\u0440\u0438\u043d\u0448\u043e\u0442","detail.screenshotAlt":"\u0421\u043a\u0440\u0438\u043d\u0448\u043e\u0442 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438","detail.metadata":"\u0414\u0435\u0442\u0430\u043b\u0438","detail.annotation":"\u0410\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f","detail.page":"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430","detail.author":"\u0410\u0432\u0442\u043e\u0440","detail.date":"\u0421\u043e\u0437\u0434\u0430\u043d","detail.viewport":"Viewport","detail.browser":"\u0411\u0440\u0430\u0443\u0437\u0435\u0440","detail.resolvedAt":"\u0420\u0435\u0448\u0451\u043d","detail.closedAt":"\u0417\u0430\u043a\u0440\u044b\u0442","detail.goToAnnotation":"\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u0438","detail.element":"\u042d\u043b\u0435\u043c\u0435\u043d\u0442","detail.selector":"\u0421\u0435\u043b\u0435\u043a\u0442\u043e\u0440","detail.position":"\u041f\u043e\u0437\u0438\u0446\u0438\u044f","detail.resolve":"\u0420\u0435\u0448\u0438\u0442\u044c","detail.reopen":"\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0437\u0430\u043d\u043e\u0432\u043e","detail.delete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","detail.diagnostics":"\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430","detail.diagnostics.console":"\u041a\u043e\u043d\u0441\u043e\u043b\u044c","detail.diagnostics.network":"\u0421\u0435\u0442\u0435\u0432\u044b\u0435 \u043e\u0448\u0438\u0431\u043a\u0438","detail.diagnostics.expand":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0443","detail.diagnostics.collapse":"\u0421\u043a\u0440\u044b\u0442\u044c \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0443","detail.diagnostics.noEntries":"\u041d\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0435\u0439","comments.title":"\u041e\u0442\u0432\u0435\u0442\u044b","comments.placeholder":"\u041e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0435...","comments.error":"\u041d\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0435\u0449\u0451 \u0440\u0430\u0437.","comments.full":"\u041e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e.","comments.team":"\u041a\u043e\u043c\u0430\u043d\u0434\u0430","shortcuts.title":"\u0413\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438","shortcuts.navigate":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043f\u043e \u043e\u0442\u0437\u044b\u0432\u0430\u043c","shortcuts.resolve":"\u0420\u0435\u0448\u0438\u0442\u044c / \u041f\u0435\u0440\u0435\u043e\u0442\u043a\u0440\u044b\u0442\u044c","shortcuts.delete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","shortcuts.search":"\u041f\u043e\u0438\u0441\u043a","shortcuts.select":"\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432\u044b\u0431\u043e\u0440","shortcuts.help":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043a\u043b\u0430\u0432\u0438\u0448\u0438","shortcuts.close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c","shortcuts.hint":"\u0413\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438","export.label":"\u042d\u043a\u0441\u043f\u043e\u0440\u0442","export.csv":"\u042d\u043a\u0441\u043f\u043e\u0440\u0442 \u0432 CSV","export.json":"\u042d\u043a\u0441\u043f\u043e\u0440\u0442 \u0432 JSON"}});function rp(A,e){switch(A){case"question":return e("type.question");case"change":return e("type.change");case"bug":return e("type.bug");case"other":return e("type.other");default:return A}}function ip(A,e){switch(A){case"open":return e("panel.statusOpen");case"in_progress":return e("panel.statusInProgress");case"resolved":return e("panel.statusResolved");case"wont_fix":return e("panel.statusWontFix");default:return A}}A.registerLocale=void 0,A.loadLocale=void 0;var np,op,ap=t(()=>{D(),Sd(),tp=function(A,e){let t={en:A};function s(A){return"en"!==A&&w.includes(A)}return{registerLocale(A,e){t[U(A)]=e},async loadLocale(A){let r=U(A),i=t[r];if(i)return i;if(!s(r))return null;let n=await e[r]();return t[r]=n,n},createT(e){let r=U(e);return"en"!==r&&!t[r]&&!s(r)&&console.warn(`[siteping] Unknown locale "${e}", falling back to "en"`),e=>t[r]?.[e]??A[e]??e}}}(Hd,{de:()=>Promise.resolve().then(()=>(Dd(),Ld)).then(A=>A.de),es:()=>Promise.resolve().then(()=>(Rd(),Kd)).then(A=>A.es),fr:()=>Promise.resolve().then(()=>(Nd(),Od)).then(A=>A.fr),it:()=>Promise.resolve().then(()=>(Xd(),Vd)).then(A=>A.it),ja:()=>Promise.resolve().then(()=>(Wd(),$d)).then(A=>A.ja),ko:()=>Promise.resolve().then(()=>(_d(),Jd)).then(A=>A.ko),pt:()=>Promise.resolve().then(()=>(qd(),jd)).then(A=>A.pt),ru:()=>Promise.resolve().then(()=>(sp(),Ap)).then(A=>A.ru)}),A.registerLocale=tp.registerLocale,A.loadLocale=tp.loadLocale,np=tp.createT,op=v});function lp(A,e,t){let s=new Blob([A],{type:t}),r=URL.createObjectURL(s),i=document.createElement("a");i.href=r,i.download=e,i.style.display="none",W(i),document.body.appendChild(i),i.click(),requestAnimationFrame(()=>{URL.revokeObjectURL(r),i.remove()})}var cp,dp,pp,hp,up,gp,Bp=t(()=>{$(),UA(),cp=["id","type","status","message","url","authorName","authorEmail","createdAt","resolvedAt","viewport"],dp=class{constructor(A,e,t){this.getFeedbacks=e,this.element=R("div",{style:"position: relative; display: inline-flex;"});let s=document.createElement("button");s.className="sp-export-btn",s.setAttribute("aria-haspopup","true"),s.setAttribute("aria-expanded","false"),s.appendChild(T('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7 10 12 15 17 10"/><line x1="12" y1="15" x2="12" y2="3"/></svg>'));let r=document.createElement("span");O(r,t("export.label")),s.appendChild(r),s.addEventListener("click",A=>{A.stopPropagation(),this.toggle()}),this.menu=R("div",{class:"sp-export-menu"}),this.menu.setAttribute("role","menu");let i=this.createOption('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="3" width="18" height="18" rx="2"/><line x1="3" y1="9" x2="21" y2="9"/><line x1="3" y1="15" x2="21" y2="15"/><line x1="9" y1="3" x2="9" y2="21"/><line x1="15" y1="3" x2="15" y2="21"/></svg>',t("export.csv"),()=>{this.exportAs("csv")}),n=this.createOption('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M8 3H6a2 2 0 0 0-2 2v4a2 2 0 0 1-2 2 2 2 0 0 1 2 2v4a2 2 0 0 0 2 2h2"/><path d="M16 3h2a2 2 0 0 1 2 2v4a2 2 0 0 0 2 2 2 2 0 0 0-2 2v4a2 2 0 0 1-2 2h-2"/></svg>',t("export.json"),()=>{this.exportAs("json")});this.menu.appendChild(i),this.menu.appendChild(n),this.element.appendChild(s),this.element.appendChild(this.menu),this.element.addEventListener("keydown",A=>{"Escape"!==A.key||!this.isOpen||(A.stopPropagation(),this.close(),s.focus())})}getFeedbacks;element;menu;isOpen=!1;removeOutsideClick=null;createOption(A,e,t){let s=document.createElement("button");s.className="sp-export-option",s.setAttribute("role","menuitem");let r=R("span",{class:"sp-export-option-icon"});r.appendChild(T(A));let i=R("span",{class:"sp-export-option-label"});return O(i,e),s.appendChild(r),s.appendChild(i),s.addEventListener("click",A=>{A.stopPropagation(),t(),this.close()}),s}toggle(){this.isOpen?this.close():this.open()}open(){this.isOpen=!0,this.removeOutsideClick=P(this.element,()=>this.close()),this.menu.classList.add("sp-export-menu--open"),this.element.querySelector(".sp-export-btn")?.setAttribute("aria-expanded","true")}close(){this.isOpen=!1,this.removeOutsideClick?.(),this.removeOutsideClick=null,this.menu.classList.remove("sp-export-menu--open"),this.element.querySelector(".sp-export-btn")?.setAttribute("aria-expanded","false")}exportAs(A){let e=this.getFeedbacks();if(0===e.length)return;let t=e[0]?.projectName??"feedbacks",s=(new Date).toISOString().slice(0,10),r=t.replace(/[^a-zA-Z0-9_-]/g,"_");if("csv"===A){let A=function(A){let e=cp.join(","),t=A.map(A=>cp.map(e=>{let t=A[e];return function(A){let e=/^[=+\-@\t\r]/.test(A)?`'${A}`:A;return e.includes('"')||e.includes(",")||e.includes("\n")||e.includes("\r")?`"${e.replace(/"/g,'""')}"`:e}(null==t?"":String(t))}).join(","));return[e,...t].join("\n")}(e);lp(A,`feedbacks-${r}-${s}.csv`,"text/csv;charset=utf-8")}else lp((i=e,JSON.stringify(i,null,2)),`feedbacks-${r}-${s}.json`,"application/json;charset=utf-8");var i}destroy(){this.close(),this.element.remove()}}}),wp=t(()=>{$(),ap(),pp='<svg viewBox="0 0 18 18" fill="none" aria-hidden="true"><rect x="1" y="1" width="16" height="16" rx="4" stroke="currentColor" stroke-width="2"/></svg>',hp='<svg viewBox="0 0 18 18" fill="none" aria-hidden="true"><rect x="1" y="1" width="16" height="16" rx="4" fill="url(#sp-cb-grad)" stroke="none"/><polyline points="5 9 8 12 13 6" fill="none" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><defs><linearGradient id="sp-cb-grad" x1="0" y1="0" x2="18" y2="18" gradientUnits="userSpaceOnUse"><stop offset="0%" stop-color="var(--sp-accent)"/><stop offset="100%" stop-color="var(--sp-accent-dark)"/></linearGradient></defs></svg>',up=".sp-bulk-checkbox{position:relative;width:16px;height:16px;flex-shrink:0;cursor:pointer;border-radius:4px;color:var(--sp-border);opacity:0;transition:opacity 0.15s ease,color 0.15s ease,transform 0.15s ease;display:inline-flex;align-items:center;justify-content:center;}.sp-bulk-checkbox svg{width:16px;height:16px;display:block;}.sp-bulk-checkbox:hover{color:var(--sp-accent);transform:scale(1.1);}.sp-bulk-checkbox--checked{color:var(--sp-accent);opacity:1 !important;filter:drop-shadow(0 0 4px var(--sp-accent-glow));}.sp-card:hover .sp-bulk-checkbox{opacity:1;}.sp-list--has-selection .sp-bulk-checkbox{opacity:1;}.sp-card--selected{border-left:3px solid var(--sp-accent) !important;background:var(--sp-accent-light) !important;}.sp-card--selected:hover{background:var(--sp-accent-light) !important;}.sp-bulk-select-all{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-bottom:4px;border-radius:var(--sp-radius);background:transparent;cursor:pointer;opacity:0;transition:opacity 0.2s ease,background 0.2s ease;user-select:none;font-family:var(--sp-font);font-size:12px;font-weight:500;color:var(--sp-text-secondary);}.sp-bulk-select-all:hover{background:var(--sp-bg-hover);}.sp-list:hover .sp-bulk-select-all,.sp-list--has-selection .sp-bulk-select-all{opacity:1;}.sp-bulk-select-all .sp-bulk-checkbox{opacity:1;}@keyframes sp-bulk-bar-in{from{transform:translateY(100%) scale(0.95);opacity:0;}to{transform:translateY(0) scale(1);opacity:1;}}@keyframes sp-bulk-bar-out{from{transform:translateY(0) scale(1);opacity:1;}to{transform:translateY(100%) scale(0.95);opacity:0;}}.sp-bulk-bar{position:absolute;bottom:16px;left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:16px;background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xl);z-index:10;pointer-events:none;opacity:0;transform:translateY(100%) scale(0.95);transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1),opacity 0.25s ease;font-family:var(--sp-font);}.sp-bulk-bar--visible{pointer-events:auto;opacity:1;transform:translateY(0) scale(1);}.sp-bulk-bar-count{font-size:13px;font-weight:600;color:var(--sp-text);white-space:nowrap;letter-spacing:-0.01em;}.sp-bulk-bar-actions{display:flex;align-items:center;gap:6px;}.sp-bulk-btn-resolve,.sp-bulk-btn-delete{padding:7px 14px;border-radius:var(--sp-radius-full);border:1.5px solid transparent;background:transparent;font-family:var(--sp-font);font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all 0.2s ease;white-space:nowrap;}.sp-bulk-btn-resolve{color:#22c55e;border-color:#22c55e;}.sp-bulk-btn-resolve:hover{background:rgba(34,197,94,0.1);box-shadow:0 0 12px rgba(34,197,94,0.15);}.sp-bulk-btn-resolve:active{transform:scale(0.96);transition-duration:0.1s;}.sp-bulk-btn-delete{color:#ef4444;border-color:#ef4444;}.sp-bulk-btn-delete:hover{background:rgba(239,68,68,0.1);box-shadow:0 0 12px rgba(239,68,68,0.15);}.sp-bulk-btn-delete:active{transform:scale(0.96);transition-duration:0.1s;}.sp-bulk-btn-resolve:disabled,.sp-bulk-btn-delete:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.sp-bulk-btn-deselect{width:28px;height:28px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:transparent;color:var(--sp-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s ease;flex-shrink:0;padding:0;}.sp-bulk-btn-deselect:hover{background:var(--sp-bg-hover);color:var(--sp-text);border-color:var(--sp-text-tertiary);}.sp-bulk-btn-deselect:active{transform:scale(0.92);transition-duration:0.1s;}.sp-bulk-btn-deselect svg{width:12px;height:12px;}.sp-bulk-btn-resolve .sp-spinner,.sp-bulk-btn-delete .sp-spinner{width:14px;height:14px;}@media (forced-colors: active){.sp-bulk-checkbox,.sp-bulk-btn-resolve,.sp-bulk-btn-delete,.sp-bulk-btn-deselect,.sp-bulk-bar{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-bulk-checkbox--checked{background:Highlight !important;color:HighlightText !important;}.sp-card--selected{border-left:4px solid Highlight !important;}}@media (prefers-reduced-motion: reduce){.sp-bulk-bar{transition-duration:0.01ms !important;}.sp-bulk-checkbox{transition-duration:0.01ms !important;}}",gp=class{constructor(A,e,t){this.callbacks=e,this.t=t,this.barElement=R("div",{class:"sp-bulk-bar"}),this.barElement.setAttribute("role","toolbar"),this.barElement.setAttribute("aria-label","Bulk actions"),this.countLabel=R("span",{class:"sp-bulk-bar-count"}),O(this.countLabel,op(this.t,"bulk.selected",{count:0}));let s=R("div",{class:"sp-bulk-bar-actions"});this.resolveBtn=document.createElement("button"),this.resolveBtn.className="sp-bulk-btn-resolve",this.resolveBtn.type="button",this.resolveBtn.addEventListener("click",()=>this.handleResolve()),this.deleteBtn=document.createElement("button"),this.deleteBtn.className="sp-bulk-btn-delete",this.deleteBtn.type="button",this.deleteBtn.addEventListener("click",()=>this.handleDelete());let r=document.createElement("button");r.className="sp-bulk-btn-deselect",r.type="button",r.setAttribute("aria-label",this.t("bulk.deselect")),r.appendChild(T('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>')),r.addEventListener("click",()=>this.deselectAll()),s.appendChild(this.resolveBtn),s.appendChild(this.deleteBtn),s.appendChild(r),this.barElement.appendChild(this.countLabel),this.barElement.appendChild(s),this.updateButtonLabels()}callbacks;barElement;selected=new Set;checkboxMap=new Map;countLabel;resolveBtn;deleteBtn;selectAllCheckbox=null;listContainer=null;isProcessing=!1;t;createCheckbox(A){let e=R("div",{class:"sp-bulk-checkbox"});return e.setAttribute("role","checkbox"),e.setAttribute("tabindex","0"),e.setAttribute("aria-label",`Select feedback ${A}`),e.addEventListener("click",e=>{e.stopPropagation(),this.toggle(A)}),e.addEventListener("keydown",e=>{(" "===e.key||"Enter"===e.key)&&(e.preventDefault(),e.stopPropagation(),this.toggle(A))}),this.checkboxMap.set(A,e),this.updateCheckbox(A),e}isSelected(A){return this.selected.has(A)}createSelectAllBar(A,e){let t=R("div",{class:"sp-bulk-select-all"}),s=R("div",{class:"sp-bulk-checkbox"});this.selectAllCheckbox=s,this.updateSelectAllCheckbox(A.length>0&&A.every(A=>this.selected.has(A)));let r=R("span");return O(r,e),t.appendChild(s),t.appendChild(r),t.addEventListener("click",()=>{this.selected.size===A.length&&A.length>0?this.deselectAll():this.selectAll(A)}),t}setListContainer(A){this.listContainer=A}toggle(A){this.isProcessing||(this.selected.has(A)?this.selected.delete(A):this.selected.add(A),this.updateCheckbox(A),this.updateBar(),this.updateSelectAllCheckbox(),this.updateListSelectionClass(),this.updateCardSelectedState(A))}selectAll(A){if(!this.isProcessing){for(let e of A)this.selected.add(e),this.updateCheckbox(e),this.updateCardSelectedState(e);this.updateBar(),this.updateSelectAllCheckbox(),this.updateListSelectionClass()}}deselectAll(){let A=[...this.selected];this.selected.clear();for(let e of A)this.updateCheckbox(e),this.updateCardSelectedState(e);this.updateBar(),this.updateSelectAllCheckbox(),this.updateListSelectionClass()}get selectedIds(){return[...this.selected]}get count(){return this.selected.size}get hasSelection(){return this.selected.size>0}reset(){this.selected.clear(),this.checkboxMap.clear(),this.selectAllCheckbox=null,this.isProcessing=!1,this.updateBar(),this.updateListSelectionClass()}destroy(){this.selected.clear(),this.checkboxMap.clear(),this.selectAllCheckbox=null,this.listContainer=null,this.barElement.remove()}updateBar(){let A=this.selected.size,e=A>0;this.barElement.classList.toggle("sp-bulk-bar--visible",e),O(this.countLabel,op(this.t,"bulk.selected",{count:A}));let t=[...this.selected];N(this.resolveBtn,!1===this.callbacks.permits?.(t,"canChangeStatus")),N(this.deleteBtn,!1===this.callbacks.permits?.(t,"canDelete")),this.updateButtonLabels()}updateButtonLabels(){let A=this.selected.size,e=this.t("bulk.resolve"),t=this.t("bulk.delete");this.resolveBtn.replaceChildren();let s=document.createElement("span");O(s,A>0?`${e} ${A}`:e),this.resolveBtn.appendChild(s),this.deleteBtn.replaceChildren();let r=document.createElement("span");O(r,A>0?`${t} ${A}`:t),this.deleteBtn.appendChild(r)}updateCheckbox(A){let e=this.checkboxMap.get(A);if(!e)return;let t=this.selected.has(A);e.classList.toggle("sp-bulk-checkbox--checked",t),e.setAttribute("aria-checked",String(t)),e.replaceChildren(),e.appendChild(T(t?hp:pp))}updateSelectAllCheckbox(A=this.selected.size>0&&this.selected.size===this.checkboxMap.size){this.selectAllCheckbox&&(this.selectAllCheckbox.classList.toggle("sp-bulk-checkbox--checked",A),this.selectAllCheckbox.setAttribute("aria-checked",String(A)),this.selectAllCheckbox.replaceChildren(),this.selectAllCheckbox.appendChild(T(A?hp:pp)))}updateListSelectionClass(){this.listContainer&&this.listContainer.classList.toggle("sp-list--has-selection",this.selected.size>0)}updateCardSelectedState(A){if(!this.listContainer)return;let e=CSS.escape(A),t=this.listContainer.querySelector(`[data-feedback-id="${e}"]`);t&&t.classList.toggle("sp-card--selected",this.selected.has(A))}async handleResolve(){if(this.isProcessing||0===this.selected.size)return;this.isProcessing=!0;let A=[...this.selected];V(this.resolveBtn),this.deleteBtn.disabled=!0;try{await this.callbacks.onResolve(A)}catch{return}finally{this.endProcessing()}this.deselectAll()}async handleDelete(){if(this.isProcessing||0===this.selected.size)return;this.isProcessing=!0;let A=[...this.selected];V(this.deleteBtn),this.resolveBtn.disabled=!0;try{await this.callbacks.onDelete(A)}catch{return}finally{this.endProcessing()}this.deselectAll()}endProcessing(){this.isProcessing=!1,this.resolveBtn.disabled=!1,this.deleteBtn.disabled=!1,this.updateButtonLabels()}}});function fp(A){for(let e of[...A.attributes])(!yp.has(e.name.toLowerCase())||!xp(e.value))&&A.removeAttribute(e.name);for(let e of[...A.children])Cp.has(e.localName.toLowerCase())?fp(e):e.remove()}function mp(A){let e=(new DOMParser).parseFromString(A,"text/html").body.firstElementChild;return"http://www.w3.org/2000/svg"!==e?.namespaceURI||"svg"!==e.localName?null:(fp(e),e.setAttribute("aria-hidden","true"),document.importNode(e,!0))}function bp(A){try{let e=new URL(A,document.baseURI);return/^(https?|mailto):$/.test(e.protocol)?e.href:null}catch{return null}}var Cp,yp,Qp,xp,Fp,Up,vp=t(()=>{Cp=new Set(["svg","g","path","circle","ellipse","line","polyline","polygon","rect","defs","lineargradient","radialgradient","stop","clippath","mask"]),yp=new Set("id viewbox preserveaspectratio width height x y x1 y1 x2 y2 cx cy r rx ry fx fy fr d points pathlength\n transform opacity color fill fill-opacity fill-rule stroke stroke-width stroke-linecap stroke-linejoin\n stroke-miterlimit stroke-dasharray stroke-dashoffset stroke-opacity clip-path clip-rule mask offset\n stop-color stop-opacity gradientunits gradienttransform spreadmethod clippathunits maskunits\n maskcontentunits".split(/\s+/)),Qp=/\b(?:(?:rgba?|hsla?|matrix|translate|scale|rotate|skewx|skewy)\([^()\\]*\)|url\(\s*(['"]?)#[\w-]+\1\s*\))/gi,xp=A=>!A.includes("\\")&&!A.replace(Qp,"").includes("("),Fp=A=>"function"==typeof A.onAction&&void 0===A.href,Up=A=>("string"==typeof A.href||"function"==typeof A.href)&&void 0===A.onAction});function Ep(A,e){try{return new Date(A).toLocaleString(e,{year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch{return A}}function kp(A,e){return A.length<=e?A:A.slice(0,e-1)+"\u2026"}function Hp(A){return!Number.isFinite(A)||A<0?"\u2014":A<1e3?`${Math.round(A)} ms`:`${(A/1e3).toFixed(1)} s`}function Ip({action:A,icon:e}){let t=document.createElement("span");return O(t,A.label),e?[e.cloneNode(!0),t]:[t]}var Sp,Lp,Mp,Dp=t(()=>{D(),$(),ap(),vA(),vp(),DA(),Sp='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"/><circle cx="12" cy="10" r="3"/></svg>',Lp='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="20 6 9 17 4 12"/></svg>',Mp=class{constructor(A,e,t,s,r=[]){this.colors=A,this.callbacks=e,this.customActions=r,this.t=t,this.locale=s,this.element=R("div",{class:"sp-detail"}),this.element.setAttribute("role","dialog"),this.element.setAttribute("aria-label","Feedback detail"),this.element.setAttribute("aria-hidden","true");let i=R("div",{class:"sp-detail-header"}),n=document.createElement("button");n.type="button",n.className="sp-detail-back",n.setAttribute("aria-label",this.t("detail.back")),n.appendChild(T('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="19" y1="12" x2="5" y2="12"/><polyline points="12 19 5 12 12 5"/></svg>')),n.addEventListener("click",()=>{this.hide(),this.callbacks.onBack()}),this.element.appendChild(i),i.appendChild(n),this.content=R("div",{class:"sp-detail-content"}),this.element.appendChild(this.content)}colors;callbacks;customActions;element;_isVisible=!1;currentFeedback=null;content;t;locale;resolveBtn=null;deleteBtn=null;customBtns=[];pending=new Map;show(A,e){this.currentFeedback=A;let t=this.element.querySelector(".sp-detail-header");if(!t)return;let s=t.querySelector(".sp-detail-back");if(!s)return;t.replaceChildren(s);let r=R("span",{class:"sp-detail-title"});O(r,op(this.t,"detail.title",{number:e})),t.appendChild(r);let i=R("span",{class:"sp-badge"});i.style.background=HA(A.type,this.colors),i.style.color=kA(A.type,this.colors),O(i,rp(A.type,this.t)),t.appendChild(i),this.content.replaceChildren();let n=0,o=this.buildSection(n++);this.buildStatusActions(o,A);let a=this.pending.get(A.id);a&&this.lock(a),this.content.appendChild(o);let l=this.buildSection(n++),c=R("div",{class:"sp-detail-section-title"});O(c,this.t("detail.message")),l.appendChild(c);let d=R("div",{class:"sp-detail-message"});d.style.borderLeftColor=kA(A.type,this.colors),O(d,A.message),l.appendChild(d);let p=this.callbacks.buildThread?.(A);if(p&&l.appendChild(p),this.content.appendChild(l),A.screenshotUrl&&(h=A.screenshotUrl,/^data:image\/(jpeg|png|webp);/i.test(h)||/^https:\/\//i.test(h)||function(A){try{let{protocol:e,hostname:t}=new URL(A);return"http:"===e&&("localhost"===t||t.endsWith(".localhost")||"127.0.0.1"===t||"[::1]"===t)}catch{return!1}}(h))){let e=this.buildSection(n++),t=R("div",{class:"sp-detail-section-title"});O(t,this.t("detail.screenshot")),e.appendChild(t);let s=document.createElement("img");s.className="sp-detail-screenshot",s.src=A.screenshotUrl,s.alt=this.t("detail.screenshotAlt"),s.loading="lazy",s.referrerPolicy="no-referrer",e.appendChild(s),this.content.appendChild(e)}var h;let u=this.buildSection(n++),g=R("div",{class:"sp-detail-section-title"});if(O(g,this.t("detail.metadata")),u.appendChild(g),this.buildMetadata(u,A),this.content.appendChild(u),A.annotations.length>0){let e=this.buildSection(n++),t=R("div",{class:"sp-detail-section-title"});t.appendChild(T(Sp));let s=R("span");O(s,this.t("detail.annotation")),t.appendChild(s),e.appendChild(t),this.buildAnnotation(e,A),this.content.appendChild(e)}if(function(A){if(!A)return!1;let e=Array.isArray(A.console)?A.console.length:0,t=Array.isArray(A.network)?A.network.length:0;return e>0||t>0}(A.diagnostics)){let e=this.buildSection(n++),t=R("div",{class:"sp-detail-section-title"});t.appendChild(T('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="4 17 10 11 4 5"/><line x1="12" y1="19" x2="20" y2="19"/></svg>'));let s=R("span");O(s,this.t("detail.diagnostics")),t.appendChild(s),e.appendChild(t),this.buildDiagnostics(e,A),this.content.appendChild(e)}this._isVisible=!0,this.element.setAttribute("aria-hidden","false"),this.element.offsetHeight,this.element.classList.add("sp-detail--visible"),requestAnimationFrame(()=>{s.focus()})}hide(){this._isVisible&&(this._isVisible=!1,this.element.classList.remove("sp-detail--visible"),this.element.setAttribute("aria-hidden","true"),this.currentFeedback=null,this.resolveBtn=null,this.deleteBtn=null,this.customBtns=[])}get feedbackId(){return this.currentFeedback?.id??null}get isVisible(){return this._isVisible}destroy(){this.hide(),this.element.remove()}buildSection(A){let e=R("div",{class:"sp-detail-section"});return e.style.animationDelay=40*A+"ms",e}buildStatusActions(A,e){let t=u(e.status),s=R("div",{class:"sp-detail-section-title"});O(s,this.t("detail.status")),A.appendChild(s);let r=e.status.replace(/_/g,"-"),i={open:"#22c55e",in_progress:"#f59e0b",resolved:"#9ca3af",wont_fix:"#94a3b8"},n=R("div",{class:"sp-detail-status"}),o=R("span",{class:`sp-detail-status-pill sp-detail-status-pill--${r}`}),a=R("span",{class:"sp-detail-status-dot"});a.style.background=i[e.status]??i.open,o.appendChild(a);let l=R("span");O(l,ip(e.status,this.t)),o.appendChild(l),n.appendChild(o),A.appendChild(n);let c=R("div",{class:"sp-detail-actions"});this.resolveBtn=document.createElement("button"),this.resolveBtn.type="button",this.resolveBtn.className=t?"sp-detail-btn-reopen":"sp-detail-btn-resolve",this.restoreResolveBtn(e),this.resolveBtn.addEventListener("click",()=>this.handleResolve()),this.deleteBtn=document.createElement("button"),this.deleteBtn.type="button",this.deleteBtn.className="sp-detail-btn-delete",this.restoreDeleteBtn(),this.deleteBtn.addEventListener("click",()=>this.handleDelete()),!1!==this.callbacks.permits?.(e,"canChangeStatus")&&c.appendChild(this.resolveBtn),!1!==this.callbacks.permits?.(e,"canDelete")&&c.appendChild(this.deleteBtn),A.appendChild(c),this.buildCustomActions(A,e)}buildCustomActions(A,e){if(this.customBtns=[],0===this.customActions.length)return;let t=(r=e,JSON.parse(JSON.stringify(r),(A,e)=>"object"==typeof e&&null!==e?Object.freeze(e):e)),s=R("div",{class:"sp-detail-actions sp-detail-actions--custom"});var r;for(let A of this.customActions){let e,{action:r}=A;try{if(r.visible&&!r.visible(t))continue;if(void 0===r.href){let s=document.createElement("button");s.type="button",s.setAttribute("aria-label",r.label),s.addEventListener("click",()=>{this.run(A,()=>this.callbacks.onCustomAction(r,t))}),this.customBtns.push(s),e=s}else{let A=bp("function"==typeof r.href?r.href(t):r.href);if(!A)throw new Error(`[siteping] Panel action "${r.id}": href must be an http(s) or mailto URL.`);let s=document.createElement("a");s.href=A,A.startsWith("mailto:")||(s.target="_blank"),s.rel="noopener noreferrer",e=s}}catch(A){this.callbacks.onCustomActionError(A);continue}e.className="sp-detail-btn-custom",e.setAttribute("data-action-id",r.id),e.title=r.label,e.append(...Ip(A)),s.appendChild(e)}s.childElementCount>0&&A.appendChild(s)}buildMetadata(A,e){let t=R("div",{class:"sp-detail-meta"});if(this.addMetaRow(t,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/></svg>',this.t("detail.page"),()=>{let A=R("div",{class:"sp-detail-meta-value"});return O(A,kp(function(A){try{return new URL(A).pathname}catch{return A}}(e.url),60)),A.title=e.url,A}),this.addMetaRow(t,QA,this.t("detail.author"),()=>{let A=R("div",{class:"sp-detail-meta-value"}),t=e.authorName||"Anonymous",s=e.authorEmail;return O(A,s?`${t} (${s})`:t),A}),this.addMetaRow(t,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>',this.t("detail.date"),()=>{let A=R("div",{class:"sp-detail-meta-value"});return O(A,Ep(e.createdAt,this.locale)),A}),this.addMetaRow(t,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="2" y="3" width="20" height="14" rx="2" ry="2"/><line x1="8" y1="21" x2="16" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/></svg>',this.t("detail.viewport"),()=>{let A=R("div",{class:"sp-detail-meta-value sp-detail-meta-value--mono"});return O(A,e.viewport||"Unknown"),A}),this.addMetaRow(t,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="10"/><line x1="2" y1="12" x2="22" y2="12"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/></svg>',this.t("detail.browser"),()=>{let A=R("div",{class:"sp-detail-meta-value"});return O(A,function(A){if(/Edg\//i.test(A)){let e=A.match(/Edg\/([\d.]+)/);return e?`Edge ${e[1]}`:"Edge"}if(/OPR\//i.test(A)||/Opera/i.test(A)){let e=A.match(/OPR\/([\d.]+)/);return e?`Opera ${e[1]}`:"Opera"}if(/Firefox\//i.test(A)){let e=A.match(/Firefox\/([\d.]+)/);return e?`Firefox ${e[1]}`:"Firefox"}if(/Chrome\//i.test(A)&&!/Chromium/i.test(A)){let e=A.match(/Chrome\/([\d.]+)/);return e?`Chrome ${e[1]}`:"Chrome"}if(/Safari\//i.test(A)&&!/Chrome/i.test(A)){let e=A.match(/Version\/([\d.]+)/);return e?`Safari ${e[1]}`:"Safari"}return"Unknown"}(e.userAgent)),A}),e.resolvedAt){let A=e.resolvedAt,s="wont_fix"===e.status?this.t("detail.closedAt"):this.t("detail.resolvedAt");this.addMetaRow(t,Lp,s,()=>{let e=R("div",{class:"sp-detail-meta-value sp-detail-meta-value--secondary"});return O(e,Ep(A,this.locale)),e})}A.appendChild(t)}addMetaRow(A,e,t,s){let r=R("div",{class:"sp-detail-meta-row"});r.appendChild(T(e));let i=R("div",{class:"sp-detail-meta-content"}),n=R("div",{class:"sp-detail-meta-label"});O(n,t),i.appendChild(n),i.appendChild(s()),r.appendChild(i),A.appendChild(r)}buildAnnotation(A,e){let t=e.annotations[0];if(!t)return;let s=R("div",{class:"sp-detail-annotation"}),r=R("div",{class:"sp-detail-annotation-info"});if(this.addAnnotationRow(r,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/></svg>',this.t("detail.element"),()=>{let A=R("span",{class:"sp-detail-annotation-value sp-detail-annotation-value--mono"});return O(A,t.elementId?`<${t.elementTag}#${t.elementId}>`:`<${t.elementTag}>`),A}),this.addAnnotationRow(r,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="10"/><line x1="22" y1="12" x2="18" y2="12"/><line x1="6" y1="12" x2="2" y2="12"/><line x1="12" y1="6" x2="12" y2="2"/><line x1="12" y1="22" x2="12" y2="18"/></svg>',this.t("detail.selector"),()=>{let A=R("span",{class:"sp-detail-annotation-value sp-detail-annotation-value--mono"});return O(A,kp(t.cssSelector,60)),A.title=t.cssSelector,A}),this.addAnnotationRow(r,Sp,this.t("detail.position"),()=>{let A=R("span",{class:"sp-detail-annotation-value"}),e=A=>`${(100*A).toFixed(1)}%`;return O(A,`${e(t.xPct)}, ${e(t.yPct)}`+(t.wPct>0||t.hPct>0?` (${e(t.wPct)} \xd7 ${e(t.hPct)})`:"")),A}),s.appendChild(r),A.appendChild(s),!1===this.callbacks.canGoToAnnotation?.(e))return;let i=document.createElement("button");i.type="button",i.className="sp-detail-btn-goto",i.appendChild(T(Sp));let n=document.createElement("span");O(n,this.t("detail.goToAnnotation")),i.appendChild(n),i.addEventListener("click",()=>{this.currentFeedback&&this.callbacks.onGoToAnnotation(this.currentFeedback)}),s.appendChild(i)}buildDiagnostics(A,e){let t=e.diagnostics;if(!t)return;let s=Array.isArray(t.console)?t.console:[],r=Array.isArray(t.network)?t.network:[],i=s.filter(A=>"error"===A.level).length,n=R("div",{class:"sp-detail-diag"}),o=document.createElement("button");o.type="button",o.className="sp-detail-diag-toggle",o.setAttribute("aria-expanded","false"),o.setAttribute("aria-label",this.t("detail.diagnostics.expand"));let a=document.createElement("span"),l=document.createElement("span");l.style.display="inline-flex",l.style.alignItems="center",l.style.gap="8px",l.appendChild(T('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="9 18 15 12 9 6"/></svg>')),O(a,this.t("detail.diagnostics")),l.appendChild(a),o.appendChild(l);let c=R("span",{class:"sp-detail-diag-counts"}),d=R("span",{class:"sp-detail-diag-count"+(i>0?" sp-detail-diag-count--errors":"")});O(d,`${s.length} console`);let p=R("span",{class:"sp-detail-diag-count"+(r.length>0?" sp-detail-diag-count--errors":"")});O(p,`${r.length} net`),c.appendChild(d),c.appendChild(p),o.appendChild(c);let h=R("div",{class:"sp-detail-diag-body"});if(s.length>0){let A=document.createElement("div"),e=R("div",{class:"sp-detail-diag-group-title"});O(e,this.t("detail.diagnostics.console")),A.appendChild(e);let t=document.createElement("ul");t.className="sp-detail-diag-list";for(let A of s){let e=document.createElement("li"),s=R("span",{class:`sp-detail-diag-level sp-detail-diag-level--${A.level}`});O(s,A.level);let r=R("span",{class:"sp-detail-diag-message"});O(r,kp(A.message,240)),r.title=A.message,e.appendChild(s),e.appendChild(r),t.appendChild(e)}A.appendChild(t),h.appendChild(A)}if(r.length>0){let A=document.createElement("div"),e=R("div",{class:"sp-detail-diag-group-title"});O(e,this.t("detail.diagnostics.network")),A.appendChild(e);let t=document.createElement("ul");t.className="sp-detail-diag-list";for(let A of r){let e=document.createElement("li");e.classList.add("sp-detail-diag-net");let s=R("span",{class:"sp-detail-diag-net-status"});O(s,0===A.status?"ERR":String(A.status));let r=R("span",{class:"sp-detail-diag-net-method"});O(r,A.method);let i=R("span",{class:"sp-detail-diag-net-url"});O(i,kp(A.url,120)),i.title=`${A.url} \u2014 ${Hp(A.durationMs)}`,e.appendChild(s),e.appendChild(r),e.appendChild(i),t.appendChild(e)}A.appendChild(t),h.appendChild(A)}o.addEventListener("click",()=>{let A=!("true"===o.getAttribute("aria-expanded"));o.setAttribute("aria-expanded",String(A)),o.setAttribute("aria-label",A?this.t("detail.diagnostics.collapse"):this.t("detail.diagnostics.expand")),h.classList.toggle("sp-detail-diag-body--open",A)}),n.appendChild(o),n.appendChild(h),A.appendChild(n)}addAnnotationRow(A,e,t,s){let r=R("div",{class:"sp-detail-annotation-row"});r.appendChild(T(e));let i=R("div",{class:"sp-detail-meta-content"}),n=R("div",{class:"sp-detail-annotation-label"});O(n,t),i.appendChild(n),i.appendChild(s()),r.appendChild(i),A.appendChild(r)}handleResolve(){return this.run("resolve",A=>this.callbacks.onResolve(A))}handleDelete(){return this.run("delete",A=>this.callbacks.onDelete(A))}async run(A,e){let t=this.currentFeedback;if(t&&!this.pending.has(t.id)){this.pending.set(t.id,A),this.lock(A);try{await e(t)}catch{}finally{this.pending.delete(t.id),this.currentFeedback?.id===t.id&&this.unlock(A,this.currentFeedback)}}}lock(A){this.setActionsDisabled(!0);let e=this.buttonFor(A);e&&(this.setButtonLoading(e),e.setAttribute("aria-busy","true"))}unlock(A,e){let t=this.buttonFor(A);t?.removeAttribute("aria-busy"),"resolve"===A?this.restoreResolveBtn(e):"delete"===A?this.restoreDeleteBtn():t?.replaceChildren(...Ip(A)),this.setActionsDisabled(!1)}buttonFor(A){return"resolve"===A?this.resolveBtn:"delete"===A?this.deleteBtn:this.customBtns.find(e=>e.dataset.actionId===A.action.id)??null}setActionsDisabled(A){for(let e of[this.resolveBtn,this.deleteBtn,...this.customBtns])e&&(e.disabled=A)}setButtonLoading(A){A.disabled=!0,A.replaceChildren(R("div",{class:"sp-spinner sp-spinner--sm"}))}restoreResolveBtn(A){if(!this.resolveBtn)return;this.resolveBtn.disabled=!1,this.resolveBtn.replaceChildren();let e=u(A.status);this.resolveBtn.appendChild(T(e?'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="1 4 1 10 7 10"/><path d="M3.51 15a9 9 0 1 0 2.13-9.36L1 10"/></svg>':Lp));let t=document.createElement("span");O(t,e?this.t("detail.reopen"):this.t("detail.resolve")),this.resolveBtn.appendChild(t)}restoreDeleteBtn(){if(!this.deleteBtn)return;this.deleteBtn.disabled=!1,this.deleteBtn.replaceChildren(),this.deleteBtn.appendChild(T('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="3 6 5 6 21 6"/><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/><line x1="10" y1="11" x2="10" y2="17"/><line x1="14" y1="11" x2="14" y2="17"/></svg>'));let A=document.createElement("span");O(A,this.t("detail.delete")),this.deleteBtn.appendChild(A)}}});function Kp(A){try{return new URL(A).pathname}catch{return A}}function Tp(A,e,t){let s=R("div",{class:"sp-group-header"});s.setAttribute("role","button"),s.setAttribute("tabindex","0"),s.setAttribute("aria-expanded","true"),s.style.borderBottomColor=t.border;let r=R("span",{class:"sp-group-header-chevron"});r.appendChild(T(Op)),s.appendChild(r);let i=R("span",{class:"sp-group-header-icon"});i.appendChild(T(Rp)),s.appendChild(i);let n=R("span",{class:"sp-group-header-path"}),o=function(A){if(A.length<=40)return A;let e=Math.floor(19.5);return A.slice(0,e)+"\u2026"+A.slice(-e)}(A);O(n,o),A.length>40&&(n.title=A),s.appendChild(n);let a=R("span",{class:"sp-group-header-count"});a.style.background=t.accentLight,a.style.color=t.accent,O(a,String(e)),s.appendChild(a);let l=()=>{let A="true"===s.getAttribute("aria-expanded");s.setAttribute("aria-expanded",String(!A)),s.classList.toggle("sp-group-header--collapsed",A);let e=s.nextElementSibling;e?.classList.contains("sp-group-content")&&e.classList.toggle("sp-group-content--collapsed",A)};return s.addEventListener("click",l),s.addEventListener("keydown",A=>{("Enter"===A.key||" "===A.key)&&(A.preventDefault(),l())}),s}var Rp,Op,Pp,Np,Vp,Gp,Xp,$p=t(()=>{D(),$(),Rp='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/><polyline points="10 9 9 9 8 9"/></svg>',Op='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="9 18 15 12 9 6"/></svg>',Pp={question:0,change:1,bug:2,other:3},Np=class{element;_sortMode="newest";_groupByPage=!1;menuEl=null;sortBtn;sortDropdown;groupToggle;t;colors;onChange;removeOutsideClick=null;constructor(A,e,t){this.colors=A,this.onChange=e,this.t=t,this.element=R("div",{class:"sp-sort-controls"}),this.sortBtn=document.createElement("button"),this.sortBtn.className="sp-sort-btn",this.sortBtn.setAttribute("aria-haspopup","listbox"),this.sortBtn.setAttribute("aria-expanded","false"),this.sortBtn.setAttribute("aria-label",this.t("sort.label"));let s=T('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M11 5h10"/><path d="M11 9h7"/><path d="M11 13h4"/><path d="M3 17l3 3 3-3"/><path d="M6 18V4"/></svg>');this.sortBtn.appendChild(s);let r=R("span",{class:"sp-sort-btn-label"});O(r,this.t("sort.newest")),this.sortBtn.appendChild(r),this.sortBtn.addEventListener("click",A=>{A.stopPropagation(),this.toggleMenu()}),this.groupToggle=document.createElement("button"),this.groupToggle.className="sp-group-toggle",this.groupToggle.setAttribute("aria-pressed","false");let i=T(Rp);this.groupToggle.appendChild(i);let n=R("span",{class:"sp-group-toggle-label"});O(n,this.t("group.byPage")),this.groupToggle.appendChild(n),this.groupToggle.addEventListener("click",()=>{this._groupByPage=!this._groupByPage,this.groupToggle.classList.toggle("sp-group-toggle--active",this._groupByPage),this.groupToggle.setAttribute("aria-pressed",String(this._groupByPage)),this.onChange()}),this.sortDropdown=R("div",{class:"sp-sort-dropdown"}),this.sortDropdown.appendChild(this.sortBtn),this.element.appendChild(this.sortDropdown),this.element.appendChild(this.groupToggle),this.element.addEventListener("keydown",A=>{"Escape"!==A.key||!this.menuEl||(A.stopPropagation(),this.closeMenu(),this.sortBtn.focus())})}get sortMode(){return this._sortMode}get groupByPage(){return this._groupByPage}toggleMenu(){this.menuEl?this.closeMenu():this.openMenu()}openMenu(){this.menuEl=R("div",{class:"sp-sort-menu"}),this.menuEl.setAttribute("role","listbox"),this.menuEl.setAttribute("aria-label",this.t("sort.label")),this.sortBtn.setAttribute("aria-expanded","true");let A=[{mode:"newest",label:this.t("sort.newest")},{mode:"oldest",label:this.t("sort.oldest")},{mode:"by-type",label:this.t("sort.byType")},{mode:"open-first",label:this.t("sort.openFirst")}];for(let e of A){let A=document.createElement("button");A.className="sp-sort-option"+(e.mode===this._sortMode?" sp-sort-option--active":""),A.setAttribute("role","option"),A.setAttribute("aria-selected",String(e.mode===this._sortMode)),e.mode===this._sortMode&&(A.style.background=this.colors.accentLight,A.style.color=this.colors.accent),O(A,e.label),A.addEventListener("click",A=>{A.stopPropagation(),this._sortMode=e.mode,this.updateSortLabel(),this.closeMenu(),this.onChange()}),this.menuEl.appendChild(A)}this.sortDropdown.appendChild(this.menuEl),this.removeOutsideClick=P(this.sortDropdown,()=>this.closeMenu())}closeMenu(){this.menuEl&&(this.menuEl.remove(),this.menuEl=null),this.sortBtn.setAttribute("aria-expanded","false"),this.removeOutsideClick?.(),this.removeOutsideClick=null}updateSortLabel(){let A={newest:this.t("sort.newest"),oldest:this.t("sort.oldest"),"by-type":this.t("sort.byType"),"open-first":this.t("sort.openFirst")},e=this.sortBtn.querySelector(".sp-sort-btn-label");e&&O(e,A[this._sortMode])}destroy(){this.closeMenu()}},Vp='.sp-sort-controls{display:flex;align-items:center;gap:6px;margin-top:4px;padding-top:8px;border-top:1px solid var(--sp-border);}.sp-sort-dropdown{display:contents;}.sp-sort-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all 0.2s ease;position:relative;}.sp-sort-btn svg{width:14px;height:14px;flex-shrink:0;}.sp-sort-btn:hover{border-color:var(--sp-accent);color:var(--sp-accent);background:var(--sp-accent-light);}.sp-sort-btn[aria-expanded="true"]{border-color:var(--sp-accent);color:var(--sp-accent);background:var(--sp-accent-light);}.sp-sort-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:170px;padding:4px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-md);z-index:10;animation:sp-sort-menu-in 0.15s ease-out both;}@keyframes sp-sort-menu-in{from{opacity:0;transform:translateY(-4px) scale(0.97);}to{opacity:1;transform:translateY(0) scale(1);}}.sp-sort-option{display:block;width:100%;padding:8px 12px;border:none;border-radius:8px;background:transparent;color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;text-align:left;transition:all 0.15s ease;}.sp-sort-option:hover{background:var(--sp-bg-hover);color:var(--sp-text);}.sp-sort-option--active{font-weight:600;}.sp-sort-option--active:hover{background:var(--sp-accent-light);color:var(--sp-accent);}.sp-group-toggle,.sp-mine-toggle{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all 0.2s ease;}.sp-group-toggle svg,.sp-mine-toggle svg{width:13px;height:13px;flex-shrink:0;}.sp-group-toggle:hover,.sp-mine-toggle:hover{border-color:var(--sp-accent);color:var(--sp-accent);background:var(--sp-accent-light);}.sp-group-toggle--active,.sp-mine-toggle--active{background:var(--sp-accent-gradient);border-color:transparent;color:#fff;box-shadow:0 2px 8px var(--sp-accent-glow);}.sp-group-toggle--active:hover,.sp-mine-toggle--active:hover{background:var(--sp-accent-gradient);border-color:transparent;color:#fff;}.sp-group-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--sp-accent-light);border-bottom:1px solid var(--sp-border);cursor:pointer;user-select:none;position:sticky;top:0;z-index:2;transition:background 0.2s ease;}.sp-group-header:hover{background:var(--sp-bg-hover);}.sp-group-header:focus-visible{outline:2px solid var(--sp-accent);outline-offset:-2px;}.sp-group-header-chevron{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;transition:transform 0.2s ease;transform:rotate(90deg);}.sp-group-header-chevron svg{width:12px;height:12px;color:var(--sp-text-tertiary);}.sp-group-header--collapsed .sp-group-header-chevron{transform:rotate(0deg);}.sp-group-header-icon{display:flex;align-items:center;flex-shrink:0;}.sp-group-header-icon svg{width:14px;height:14px;color:var(--sp-text-tertiary);}.sp-group-header-path{font-size:12px;font-weight:600;color:var(--sp-text-secondary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sp-group-header-count{font-size:11px;font-weight:700;padding:1px 8px;border-radius:var(--sp-radius-full);flex-shrink:0;font-variant-numeric:tabular-nums;}.sp-group-content{overflow:hidden;transition:max-height 0.25s ease,opacity 0.2s ease;max-height:5000px;opacity:1;}.sp-group-content--collapsed{max-height:0;opacity:0;pointer-events:none;}@media (forced-colors: active){.sp-sort-btn,.sp-group-toggle,.sp-mine-toggle,.sp-sort-option,.sp-group-header{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-group-toggle--active,.sp-mine-toggle--active{background:Highlight !important;color:HighlightText !important;}.sp-sort-btn:focus-visible,.sp-group-toggle:focus-visible,.sp-mine-toggle:focus-visible,.sp-sort-option:focus-visible,.sp-group-header:focus-visible{outline:3px solid Highlight !important;}.sp-sort-menu{border:2px solid ButtonText !important;background:Canvas !important;}}@media (prefers-reduced-motion: reduce){.sp-sort-menu{animation:none;}.sp-group-header-chevron{transition:none;}.sp-group-content{transition:none;}}'}),Yp=t(()=>{D(),$(),ap(),Gp='.sp-stats-bar{display:flex;flex-direction:column;gap:8px;padding:12px 24px;border-bottom:1px solid var(--sp-border);user-select:none;}.sp-stats-bar[hidden]{display:none;}.sp-stats-row{display:flex;align-items:center;gap:16px;}.sp-stats-item{display:flex;align-items:center;gap:6px;}.sp-stats-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}.sp-stats-value{font-size:16px;font-weight:600;line-height:1;color:var(--sp-text);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";transition:opacity 0.3s ease;}.sp-stats-label{font-size:11px;line-height:1;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.04em;}.sp-stats-progress{display:flex;align-items:center;gap:8px;}.sp-stats-progress-track{flex:1;height:4px;border-radius:2px;background:var(--sp-border);overflow:hidden;}.sp-stats-progress-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--sp-accent),#22c55e);width:0%;transition:width 0.5s ease;}.sp-stats-progress-label{font-size:10px;line-height:1;color:var(--sp-text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";min-width:64px;text-align:right;}',Xp=class{constructor(A,e){this.colors=A,this.t=e,this.element=R("div",{class:"sp-stats-bar"}),this.element.setAttribute("aria-label","Feedback statistics"),this.element.hidden=!0;let t=R("div",{class:"sp-stats-row"}),s=R("div",{class:"sp-stats-item"}),r=R("span",{class:"sp-stats-dot"});r.style.background="#22c55e",this.valueOpen=R("span",{class:"sp-stats-value"}),O(this.valueOpen,"0");let i=R("span",{class:"sp-stats-label"});O(i,this.t("stats.open")),s.appendChild(r),s.appendChild(this.valueOpen),s.appendChild(i);let n=R("div",{class:"sp-stats-item"}),o=R("span",{class:"sp-stats-dot"});o.style.background="#9ca3af",this.valueResolved=R("span",{class:"sp-stats-value"}),O(this.valueResolved,"0");let a=R("span",{class:"sp-stats-label"});O(a,this.t("stats.resolved")),n.appendChild(o),n.appendChild(this.valueResolved),n.appendChild(a);let l=R("div",{class:"sp-stats-item"}),c=R("span",{class:"sp-stats-dot"});c.style.background=this.colors.typeBug,this.valueBugs=R("span",{class:"sp-stats-value"}),O(this.valueBugs,"0");let d=R("span",{class:"sp-stats-label"});O(d,this.t("stats.bugs")),l.appendChild(c),l.appendChild(this.valueBugs),l.appendChild(d),t.appendChild(s),t.appendChild(n),t.appendChild(l);let p=R("div",{class:"sp-stats-progress"}),h=R("div",{class:"sp-stats-progress-track"});this.progressFill=R("div",{class:"sp-stats-progress-fill"}),h.appendChild(this.progressFill),this.progressLabel=R("span",{class:"sp-stats-progress-label"}),O(this.progressLabel,""),p.appendChild(h),p.appendChild(this.progressLabel),this.element.appendChild(t),this.element.appendChild(p)}colors;element;valueOpen;valueResolved;valueBugs;progressFill;progressLabel;t;update(A,e){if(0===e)return void(this.element.hidden=!0);this.element.hidden=!1;let t=0,s=0,r=0;for(let e of A)u(e.status)?s++:t++,"bug"===e.type&&r++;O(this.valueOpen,String(t)),O(this.valueResolved,String(s)),O(this.valueBugs,String(r));let i=A.length,n=i>0?Math.round(s/i*100):0;requestAnimationFrame(()=>{this.progressFill.style.width=`${n}%`});let o=op(this.t,"stats.progress",{percent:n});O(this.progressLabel,o)}}});function Wp(A){let e=Array.from(A.querySelectorAll(".sp-card")),t=A.getRootNode().activeElement?.closest(".sp-card"),s=t?e.indexOf(t):-1;return s>=0?s:e.findIndex(A=>A.classList.contains("sp-card--focused"))}var Jp,zp,_p,jp=t(()=>{$(),Jp=[{keys:["J","K"],label:"shortcuts.navigate"},{keys:["R"],label:"shortcuts.resolve"},{keys:["D"],label:"shortcuts.delete"},{keys:["F","/"],label:"shortcuts.search"},{keys:["X"],label:"shortcuts.select"},{keys:["?"],label:"shortcuts.help"},{keys:["Esc"],label:"shortcuts.close"}],zp=class{constructor(A,e,t){this.t=t,this.keyMap=new Map([["j",()=>e.onNavigate("down")],["k",()=>e.onNavigate("up")],["r",()=>e.onResolve()],["d",()=>e.onDelete()],["f",()=>e.onFocusSearch()],["/",()=>e.onFocusSearch()],["x",()=>e.onToggleSelect()],["?",()=>this.toggleHelp()]]),this.isSuspended=e.isSuspended??(()=>!1),this.helpOverlay=this.buildOverlay(),this.hintButton=this.buildHintButton(),this.boundHandler=A=>this.handleKeydown(A)}t;helpOverlay;hintButton;keyMap;isSuspended;boundHandler;shadowRoot=null;enabled=!1;helpVisible=!1;destroyed=!1;enable(A){this.destroyed||this.enabled||(A&&(this.shadowRoot=A),(this.shadowRoot??document).addEventListener("keydown",this.boundHandler),this.enabled=!0)}disable(){this.enabled&&((this.shadowRoot??document).removeEventListener("keydown",this.boundHandler),this.enabled=!1,this.helpVisible&&this.hideHelp())}get isHelpVisible(){return this.helpVisible}toggleHelp(){this.helpVisible?this.hideHelp():this.showHelp()}destroy(){this.destroyed||(this.disable(),this.helpOverlay.remove(),this.hintButton.remove(),this.destroyed=!0)}handleKeydown(A){if("Escape"===A.key)return void(this.helpVisible&&(A.preventDefault(),A.stopPropagation(),this.hideHelp()));if(this.helpVisible||this.isSuspended())return;let e=A.composedPath();if(e.some(A=>A instanceof Element&&"true"===A.getAttribute("aria-modal")))return;let t=e[0];if(t){let A=t.tagName?.toLowerCase();if("input"===A||"textarea"===A||"select"===A||t.isContentEditable)return}if(A.ctrlKey||A.altKey||A.metaKey)return;let s=this.keyMap.get(A.key);s&&(A.preventDefault(),A.stopPropagation(),s())}showHelp(){this.helpVisible=!0,this.helpOverlay.classList.add("sp-shortcuts-overlay--visible"),this.helpOverlay.querySelector(".sp-shortcuts-close")?.focus()}hideHelp(){this.helpVisible=!1,this.helpOverlay.classList.remove("sp-shortcuts-overlay--visible")}buildOverlay(){let A=R("div",{class:"sp-shortcuts-overlay"});A.setAttribute("role","dialog"),A.setAttribute("aria-modal","true"),A.setAttribute("aria-label",this.t("shortcuts.title")),A.addEventListener("click",e=>{e.target===A&&this.hideHelp()});let e=R("div",{class:"sp-shortcuts-card"}),t=R("div",{class:"sp-shortcuts-title"});t.appendChild(T('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="2" y="4" width="20" height="16" rx="2"/><path d="M6 8h.01"/><path d="M10 8h.01"/><path d="M14 8h.01"/><path d="M18 8h.01"/><path d="M6 12h.01"/><path d="M18 12h.01"/><path d="M8 16h8"/></svg>'));let s=R("span");O(s,this.t("shortcuts.title")),t.appendChild(s),e.appendChild(t);let r=document.createElement("button");r.className="sp-shortcuts-close",r.setAttribute("aria-label",this.t("shortcuts.close")),r.appendChild(T('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>')),r.addEventListener("click",()=>this.hideHelp()),e.appendChild(r);let i=R("div",{class:"sp-shortcuts-grid"});for(let A of Jp){let e=R("div",{class:"sp-shortcuts-row"}),t=R("div",{class:"sp-shortcuts-keys"});A.keys.forEach((A,e)=>{if(e>0){let A=R("span",{class:"sp-shortcuts-separator"});O(A,"/"),t.appendChild(A)}let s=R("span",{class:"sp-kbd"});O(s,A),t.appendChild(s)});let s=R("span",{class:"sp-shortcuts-desc"});O(s,this.t(A.label)),e.appendChild(t),e.appendChild(s),i.appendChild(e)}return e.appendChild(i),A.appendChild(e),A}buildHintButton(){let A=document.createElement("button");return A.className="sp-shortcuts-hint",A.setAttribute("aria-label",this.t("shortcuts.hint")),O(A,"?"),A.addEventListener("click",A=>{A.stopPropagation(),this.toggleHelp()}),A}}}),Zp=t(()=>{$(),_p=class{element;current;opts;onChange;datasetKey;constructor(A){this.opts=A.options,this.current=A.value,this.onChange=A.onChange,this.datasetKey=A.datasetKey,this.element=R("div",{class:"sp-segmented"+(A.extraClass?` ${A.extraClass}`:""),role:"radiogroup"}),this.element.setAttribute("aria-label",A.ariaLabel);for(let e of this.opts){let t=document.createElement("button");t.type="button",t.className=void 0!==A.modifierPrefix?`sp-segmented__btn ${A.modifierPrefix}${e.value}`:"sp-segmented__btn",t.dataset[this.datasetKey]=e.value,t.setAttribute("role","radio");let s=this.current===e.value;if(t.setAttribute("aria-checked",String(s)),t.tabIndex=s?0:-1,s&&t.classList.add("sp-segmented__btn--active"),e.color&&t.style.setProperty("--sp-chip-color",e.color),e.bg&&t.style.setProperty("--sp-chip-bg",e.bg),e.icon){let A=R("span",{class:"sp-segmented__icon"});A.appendChild(T(e.icon)),t.appendChild(A)}let r=R("span",{class:"sp-segmented__label"});O(r,e.label),t.appendChild(r),t.addEventListener("click",()=>this.select(e.value)),t.addEventListener("keydown",A=>this.handleKey(A,e.value)),this.element.appendChild(t)}}select(A){this.current=A,this.syncSelection(),this.onChange(A)}syncSelection(){let A=this.element.querySelectorAll(".sp-segmented__btn");for(let e of A){let A=e.dataset[this.datasetKey]===this.current;e.classList.toggle("sp-segmented__btn--active",A),e.setAttribute("aria-checked",String(A)),e.tabIndex=A?0:-1}}setOptionVisible(A,e){let t=this.element.querySelector(`[data-${this.kebabKey()}="${A}"]`);return!!t&&(t.style.display=e?"":"none",!0)}get value(){return this.current}focusOption(A){this.element.querySelector(`[data-${this.kebabKey()}="${A}"]`)?.focus()}handleKey(A,e){let t,s=this.opts.map(A=>A.value).filter(A=>{let e=this.element.querySelector(`[data-${this.kebabKey()}="${A}"]`);return null!==e&&"none"!==e.style.display}),r=s.indexOf(e);if(r<0)return;switch(A.key){case"ArrowLeft":t=(r-1+s.length)%s.length;break;case"ArrowRight":t=(r+1)%s.length;break;case"Home":t=0;break;case"End":t=s.length-1;break;default:return}A.preventDefault();let i=s[t];void 0!==i&&(this.select(i),this.focusOption(i))}kebabKey(){return this.datasetKey.replace(/[A-Z]/g,A=>`-${A.toLowerCase()}`)}}});function qp({input:A,send:e},t){A.readOnly=t,e.setAttribute("aria-busy",String(t)),e.setAttribute("aria-disabled",String(t))}var Ah,eh=t(()=>{D(),$(),PA(),Ah=0}),th={};s(th,{Panel:()=>rh});var sh,rh,ih=t(()=>{D(),Zp(),$(),Bp(),UA(),ap(),vA(),vp(),wp(),Dp(),$p(),Yp(),eh(),jp(),DA(),PA(),sh=m.filter(A=>!u(A)),rh=class{constructor(A,e,t,s,r,i,n,o,a){this.colors=e,this.bus=t,this.client=s,this.projectName=r,this.markers=i,this.t=n,this.locale=o,this.shadowRoot=A,this.readOnly=!!a?.readOnly,this.resolveIdentity=a?.resolveIdentity??(async()=>null),this.getScope=a?.getScope??(()=>({url:window.location.pathname,urlPattern:null})),this.scopeAnnotationsByUrl=a?.scopeAnnotationsByUrl??!0,this.ownFeedback=a?.ownFeedback??{ids:()=>new Set,remove:()=>{}},this.scrim=R("div",{class:"sp-scrim"}),this.scrim.addEventListener("click",()=>this.close()),this.root=R("div",{class:"sp-panel"}),this.root.setAttribute("role","complementary"),this.root.setAttribute("aria-label",this.t("panel.ariaLabel")),this.root.setAttribute("aria-hidden","true");let l=R("div",{class:"sp-panel-header"}),c=R("span",{class:"sp-panel-title"});O(c,this.t("panel.title")),this.closeBtn=document.createElement("button"),this.closeBtn.className="sp-panel-close",this.closeBtn.setAttribute("aria-label",this.t("panel.close")),this.closeBtn.appendChild(T(dA)),this.closeBtn.addEventListener("click",()=>this.close()),this.deleteAllBtn=document.createElement("button"),this.deleteAllBtn.className="sp-btn-delete-all",this.deleteAllBtn.setAttribute("aria-label",this.t("panel.deleteAll")),this.deleteAllBtn.appendChild(T(yA));let d=document.createElement("span");O(d,` ${this.t("panel.deleteAll")}`),this.deleteAllBtn.appendChild(d),this.deleteAllBtn.addEventListener("click",()=>this.confirmDeleteAll()),N(this.deleteAllBtn,!0),this.exportBtn=new dp(e,()=>this.feedbacks,this.t);let p=R("div",{class:"sp-panel-header-right"});p.appendChild(this.exportBtn.element),p.appendChild(this.deleteAllBtn),p.appendChild(this.closeBtn),l.appendChild(c),l.appendChild(p),this.stats=new Xp(e,this.t);let h=R("div",{class:"sp-filters"}),g=R("div",{class:"sp-search-wrap"}),B=T(pA);B.setAttribute("class","sp-search-icon"),this.searchInput=document.createElement("input"),this.searchInput.type="text",this.searchInput.className="sp-search",this.searchInput.placeholder=this.t("panel.search"),this.searchInput.setAttribute("aria-label",this.t("panel.searchAria")),this.searchInput.addEventListener("input",()=>{this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout(()=>this.loadFeedbacks().catch(()=>{}),200)}),g.appendChild(B),g.appendChild(this.searchInput);let w=R("div",{class:"sp-filter-bar"});w.appendChild(this.buildTypeDropdown()),w.appendChild(this.buildStatusSegmented()),w.appendChild(this.buildScopeSegmented()),w.appendChild(this.buildMineToggle()),this.sortControls=new Np(e,()=>this.renderList(),this.t),h.appendChild(g),h.appendChild(w),h.appendChild(this.sortControls.element),this.listContainer=R("div",{class:"sp-list"}),this.listContainer.setAttribute("role","list"),this.listContainer.setAttribute("aria-label",this.t("panel.feedbackList")),this.bulk=new gp(e,{onResolve:A=>this.bulkResolve(A),onDelete:A=>this.bulkDelete(A),permits:(A,e)=>this.feedbacks.every(t=>!A.includes(t.id)||this.can(t,e))},this.t),this.bulk.setListContainer(this.listContainer),this.detail=new Mp(e,{onBack:()=>this.detail.hide(),onResolve:async A=>{try{let e=!u(A.status);await this.client.resolveFeedback(A.id,e),await this.loadFeedbacks(),this.detail.hide()}catch(A){throw this.bus.emit("feedback:error",A instanceof Error?A:new Error(String(A))),A}},onDelete:async A=>{try{await this.client.deleteFeedback(A.id),this.bus.emit("feedback:deleted",A.id),await this.loadFeedbacks(),this.detail.hide()}catch(A){throw this.bus.emit("feedback:error",A instanceof Error?A:new Error(String(A))),A}},canGoToAnnotation:A=>!this.scopeAnnotationsByUrl||A.url===this.getScope().url,onGoToAnnotation:A=>{if(A.annotations.length>0){let e=A.annotations[0];if(!e)return;this.markers.revealPin(A.id)||(window.scrollTo({left:e.scrollX,top:e.scrollY,behavior:"smooth"}),this.markers.pinHighlight(A)),TA()&&this.close()}},onCustomAction:async(A,e)=>{try{await A.onAction(e,{refresh:()=>this.refreshDetail(e.id),close:()=>this.close()})}catch(A){this.reportActionError(A)}},onCustomActionError:A=>this.reportActionError(A),permits:(A,e)=>this.can(A,e),buildThread:A=>function(A,{t:e,locale:t,canPost:s,draft:r,post:i}){let n=A.comments??[];if(!s&&0===n.length)return null;let o=R("div"),a=R("ol",{class:"sp-thread-list",role:"list","aria-label":e("comments.title"),"aria-live":"polite"}),l=new Set,c=A=>{if(l.has(A.id))return;l.add(A.id);let s=R("li",{class:"sp-detail-message sp-comment","data-role":A.authorRole}),r=R("div",{class:"sp-comment-head"}),i=R("span");if(O(i,A.authorName),r.appendChild(i),"team"===A.authorRole){let A=R("span",{class:"sp-badge"});O(A,e("comments.team")),r.appendChild(A)}let n=R("time",{datetime:A.createdAt});O(n,X(A.createdAt,t)),r.appendChild(n);let o=R("div");O(o,A.body),s.append(r,o),a.appendChild(s)};for(let A of n)c(A);if(o.appendChild(a),!s)return o;let d=document.createElement("textarea");d.className="sp-input sp-thread-input",d.rows=3,d.maxLength=C,d.placeholder=e("comments.placeholder"),d.setAttribute("aria-label",d.placeholder),d.value=r.text,d.addEventListener("input",()=>{r.text=d.value});let p=R("div",{class:"sp-thread-foot"}),h=R("span",{id:"sp-thread-hint-"+ ++Ah});RA()||(O(h,e(G()?"popup.submitHintMac":"popup.submitHintOther")),d.setAttribute("aria-describedby",h.id),d.setAttribute("aria-keyshortcuts","Control+Enter Meta+Enter"));let u=document.createElement("button");u.type="button",u.className="sp-btn-primary",O(u,e("popup.submit")),p.append(h,u);let g=R("div",{class:"sp-thread-error",role:"alert"});o.append(d,p,g);let B={add:c,input:d,send:u,error:g};r.view=B,qp(B,!0===r.sending);let w=async()=>{r.text=d.value;let A=r.text.trim();if(r.sending||!A)return;r.sent?.body!==A&&(r.sent={body:A,clientId:k()});let{clientId:t}=r.sent;r.sending=!0,O(g,""),qp(B,!0);let s="",n=null;try{n=await i(A,t)}catch(A){s=e(function(A){return 409===S(A,"status")||"STORE_LIMIT"===S(A,"code")}(A)?"comments.full":"comments.error")}r.sending=!1;let o=r.view??B;qp(o,!1),O(o.error,s),n&&(o.add(n),o.input.value=r.text="",r.sent=void 0)};return u.addEventListener("click",()=>{w()}),d.addEventListener("keydown",A=>{"Enter"===A.key&&(A.metaKey||A.ctrlKey)&&(A.preventDefault(),w())}),o}(A,{t:this.t,locale:o,canPost:this.canComment&&!1!==A.permissions?.canComment,draft:this.draftOf(A.id),post:(e,t)=>this.postComment(A,e,t)})},this.t,o,function(A){let e=[];if(!Array.isArray(A))return e;let t=new Set;return A.forEach((A,s)=>{let r=`[siteping] panelActions[${s}]`,i=A?.id;if("string"==typeof i&&i&&"string"==typeof A?.label&&A.label)if(Fp(A)||Up(A))if("string"!=typeof A.href||bp(A.href))if(t.has(i))console.warn(`${r} ignored: duplicate id "${i}".`);else{t.add(i);let s=void 0===A.icon?null:mp(A.icon);void 0!==A.icon&&!s&&console.warn(`${r} ("${i}"): \`icon\` is not SVG markup \u2014 showing the label only.`),e.push({action:A,icon:s})}else console.warn(`${r} ("${i}") ignored: \`href\` must be an http(s) or mailto URL.`);else console.warn(`${r} ("${i}") ignored: it needs either an \`onAction\` function or an \`href\`, not both.`);else console.warn(`${r} ignored: it needs a non-empty string \`id\` and \`label\`.`)}),e}(a?.panelActions)),this.shortcuts=new zp(e,{onNavigate:A=>{let e=Wp(this.listContainer);!function(A,e){let t=A.querySelectorAll(".sp-card");if(0===t.length)return;for(let A of t)A.classList.remove("sp-card--focused");let s=t[Math.max(0,Math.min(e,t.length-1))];s&&(s.classList.add("sp-card--focused"),s.scrollIntoView({block:"nearest",behavior:"smooth"}),s.focus({preventScroll:!0}))}(this.listContainer,"down"===A?e+1:e-1)},onResolve:()=>this.pressInFocusedCard('[data-action="resolve"]'),onDelete:()=>this.pressInFocusedCard('[data-action="delete"]'),onFocusSearch:()=>this.searchInput.focus(),onToggleSelect:()=>this.pressInFocusedCard(".sp-bulk-checkbox"),isSuspended:()=>this.detail.isVisible},this.t),this.root.appendChild(l),this.root.appendChild(this.stats.element),this.root.appendChild(h),this.root.appendChild(this.listContainer),this.root.appendChild(this.bulk.barElement),this.root.appendChild(this.detail.element),this.root.appendChild(this.shortcuts.helpOverlay),this.root.appendChild(this.shortcuts.hintButton),A.appendChild(this.scrim),A.appendChild(this.root),this.attachSheetDrag(),this.onListClick=A=>{let e=A.target;if(e.closest(".sp-bulk-checkbox"))return;let t=e.closest("[data-action]");if(t){A.stopPropagation();let e=t.closest(".sp-card");if(!e)return;let s=e.dataset.feedbackId,r=this.feedbacks.find(A=>A.id===s);if(!r)return;let i=t.dataset.action;if("expand"===i){let A=e.querySelector(".sp-card-message");if(!A)return;let s=A.classList.toggle("sp-card-message--expanded");O(t,s?this.t("panel.showLess"):this.t("panel.showMore")),t.setAttribute("aria-expanded",String(s))}else if("resolve"===i){if(this.pendingMutations.has(r.id))return;let A=t;this.toggleResolve(r,A).catch(()=>{})}else if("delete"===i){if(this.pendingMutations.has(r.id))return;let A=t;this.deleteFeedback(r,A).catch(()=>{})}return}let s=e.closest(".sp-card");if(s){let A=s.dataset.feedbackId,e=this.feedbacks.find(e=>e.id===A);e&&this.detail.show(e,Number(s.dataset.number))}},this.listContainer.addEventListener("click",this.onListClick),this.onListKeydown=A=>{let e=A;if("Enter"!==e.key&&" "!==e.key)return;let t=e.target,s=t.closest(".sp-card");if(!s||t!==s)return;e.preventDefault();let r=s.dataset.feedbackId,i=this.feedbacks.find(A=>A.id===r);i&&this.detail.show(i,Number(s.dataset.number))},this.listContainer.addEventListener("keydown",this.onListKeydown),this.onListMouseover=A=>{let e=A.target.closest(".sp-card");if(!e)return;let t=e.dataset.feedbackId;t&&this.markers.highlight(t)},this.listContainer.addEventListener("mouseover",this.onListMouseover),this.onListMouseout=A=>{let e=A.relatedTarget;e&&this.listContainer.contains(e)||this.markers.highlight("")},this.listContainer.addEventListener("mouseout",this.onListMouseout),this.bus.on("panel:toggle",A=>{A?this.open():this.close()}),z(A,()=>this.isOpen),A.addEventListener("keydown",e=>{let t=e;if("Escape"===t.key&&this.isOpen){if(this.shortcuts.isHelpVisible)return;return this.detail.isVisible?void this.detail.hide():void this.close()}if("Tab"===t.key&&this.isOpen){let e=A=>{let e=A;for(;e&&e!==this.root;){if("none"===getComputedStyle(e).display)return!1;e=e.parentElement}return!0},s=Array.from(this.root.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])')).filter(A=>e(A)&&!A.hasAttribute("disabled"));if(0===s.length)return;let r=s[0],i=s[s.length-1];if(!r||!i)return;let n=A.activeElement;t.shiftKey&&n===r?(t.preventDefault(),i.focus()):!t.shiftKey&&n===i&&(t.preventDefault(),r.focus())}}),this.onMarkerClick=A=>{this.scrollToFeedback(A.detail.feedbackId)},document.addEventListener("sp-marker-click",this.onMarkerClick)}colors;bus;client;projectName;markers;t;locale;root;scrim;listContainer;searchInput;closeBtn;deleteAllBtn;activeFilters=new Set(["all"]);typeDropdownBtn;typeDropdownContainer;typeDropdownMenu=null;removeTypeDropdownOutsideClick=null;statusSegmented;typeOptions;feedbacks=[];currentPage=1;totalFeedbacks=0;isLoadingMore=!1;isOpen=!1;searchTimeout=null;loadController=null;isLoading=!1;pendingScrollId=null;pendingMutations=new Set;canComment=!1;threadDrafts=new Map;readOnly;resolveIdentity;stats;sortControls;bulk;exportBtn;shortcuts;detail;shadowRoot;getScope;scopeAnnotationsByUrl;scopeSegmented;initialScopeFilter="this";mineOnly=!1;ownFeedback;onMarkerClick;onListClick;onListKeydown;onListMouseover;onListMouseout;async open(){if(this.isOpen)return;this.isOpen=!0;let A=TA();this.root.setAttribute("role",A?"dialog":"complementary"),A?this.root.setAttribute("aria-modal","true"):this.root.removeAttribute("aria-modal"),this.root.classList.add("sp-panel--open"),this.scrim.classList.add("sp-scrim--open"),this.root.setAttribute("aria-hidden","false"),this.bus.emit("open"),this.shortcuts.enable(this.shadowRoot),await this.loadFeedbacks(),requestAnimationFrame(()=>{(RA()?this.closeBtn:this.searchInput).focus()})}close(){this.isOpen&&(this.isOpen=!1,this.root.classList.remove("sp-panel--open"),this.scrim.classList.remove("sp-scrim--open"),this.root.setAttribute("aria-hidden","true"),this.bus.emit("close"),this.shortcuts.disable(),this.detail.hide(),this.pendingScrollId=null,this.root.getRootNode().querySelector(".sp-fab")?.focus())}attachSheetDrag(){let A=0,e=0,t=0,s=!1;this.root.addEventListener("pointerdown",r=>{let i=r.target;"mouse"===r.pointerType||!TA()||i.closest("button")||!i.closest(".sp-panel-header, .sp-detail-header")||(s=!0,A=r.clientY,e=r.timeStamp,t=0,this.root.style.transition="none",this.root.setPointerCapture?.(r.pointerId))}),this.root.addEventListener("pointermove",e=>{s&&(t=Math.max(0,e.clientY-A),this.root.style.transform=`translateY(${t}px)`)});let r=A=>{s&&(s=!1,this.root.style.transition="",this.root.style.transform="",(t>40&&t/Math.max(1,A.timeStamp-e)>.5||t>this.root.offsetHeight/4)&&this.close())};this.root.addEventListener("pointerup",r),this.root.addEventListener("pointercancel",r)}showLoading(){this.listContainer.replaceChildren();let A=R("div",{class:"sp-loading"});A.setAttribute("role","status"),A.setAttribute("aria-live","polite"),A.setAttribute("aria-label",this.t("panel.loading"));let e=R("div",{class:"sp-spinner"});A.appendChild(e),this.listContainer.appendChild(A)}showError(){this.listContainer.replaceChildren();let A=R("div",{class:"sp-empty"});A.setAttribute("role","status"),A.setAttribute("aria-live","polite");let e=R("div",{class:"sp-empty-text"});O(e,this.t("panel.loadError"));let t=document.createElement("button");t.className="sp-btn-ghost",t.style.marginTop="8px",O(t,this.t("panel.retry")),t.addEventListener("click",()=>this.loadFeedbacks().catch(()=>{})),A.appendChild(e),A.appendChild(t),this.listContainer.appendChild(A)}statusBucket(A){if("all"!==A)return u(A)?b:sh}async loadFeedbacks(A=1){this.loadController?.abort(),this.loadController=new AbortController;let{signal:e}=this.loadController;this.currentPage=1;let t=this.searchInput.value.trim()||void 0,s=this.activeFilters.has("all")?void 0:Array.from(this.activeFilters)[0],r=this.statusBucket(this.statusSegmented.value),i=this.getScope();this.syncScopeAvailability();let n=this.scopeSegmented.value,o={page:1,limit:20};s&&(o.type=s),r&&(o.statuses=r),t&&(o.search=t),"this"===n?o.url=i.url:"template"===n&&i.urlPattern&&(o.urlPattern=i.urlPattern);let a=this.feedbacks.length>0;a||this.showLoading();let l=!this.mineOnly&&this.isMarkerQuery(o,i);this.isLoading=!0;try{let t=this.mineOnly?this.fetchOwnFeedbacks(o,e):this.client.getFeedbacks(this.projectName,o);l||this.loadPageMarkers(i,e);let s=await t,{feedbacks:r,total:n}=s,a=1;for(;a<A&&r.length<n&&!e.aborted;){a++;let A=await this.client.getFeedbacks(this.projectName,{...o,page:a});r=[...r,...A.feedbacks],n=A.total}if(e.aborted)return;this.currentPage=a,this.feedbacks=r,this.totalFeedbacks=n,this.canComment=!0===s.capabilities?.comments,N(this.deleteAllBtn,this.readOnly||!1===s.permissions?.canDeleteAll),this.stats.update(r,n),this.bulk.reset(),this.renderList(),this.pendingScrollId&&this.flashCard(this.pendingScrollId),l&&this.renderPageMarkers(r,i)}catch(A){if(e.aborted)return;a||this.showError(),this.bus.emit("feedback:error",A instanceof Error?A:new Error(String(A)))}finally{e.aborted||(this.isLoading=!1,this.pendingScrollId=null)}}async loadMoreFeedbacks(){if(this.isLoadingMore)return;this.isLoadingMore=!0;let A=this.loadController,e=this.currentPage+1,t=this.searchInput.value.trim()||void 0,s=this.activeFilters.has("all")?void 0:Array.from(this.activeFilters)[0],r=this.statusBucket(this.statusSegmented.value),i=this.getScope(),n=this.scopeSegmented.value,o={page:e,limit:20};s&&(o.type=s),r&&(o.statuses=r),t&&(o.search=t),"this"===n?o.url=i.url:"template"===n&&i.urlPattern&&(o.urlPattern=i.urlPattern);let a,l=this.listContainer.querySelector(".sp-btn-load-more");l&&(a=V(l));try{let{feedbacks:t,total:s}=await this.client.getFeedbacks(this.projectName,o);if(A!==this.loadController)return;this.currentPage=e,this.totalFeedbacks=s,this.feedbacks=[...this.feedbacks,...t],this.stats.update(this.feedbacks,s),this.renderList(),this.isMarkerQuery(o,i)&&this.renderPageMarkers(this.feedbacks,i)}catch(A){a&&a(),this.bus.emit("feedback:error",A instanceof Error?A:new Error(String(A)))}finally{this.isLoadingMore=!1}}isMarkerQuery(A,e){let t=this.scopeAnnotationsByUrl?e.url:void 0;return!(A.type||A.statuses||A.search||A.urlPattern||A.url!==t)}async fetchOwnFeedbacks(A,e){let t,s,r,i=this.ownFeedback.ids(),n=new Map,o=new Set,a=0,l=!0;for(let c=1;n.size<i.size&&!e.aborted;c++){let e=await this.client.getFeedbacks(this.projectName,{...A,page:c,limit:100}),{feedbacks:d,total:p}=e;s=e.capabilities,r=e.permissions,t??=p,l&&=p===t;for(let A of d)o.add(A.id),i.has(A.id)&&n.set(A.id,A);if(a+=d.length,0===d.length||a>=p)break}return Object.keys(A).every(A=>"page"===A||"limit"===A)&&l&&o.size===t&&this.ownFeedback.remove(...[...i].filter(A=>!n.has(A))),{feedbacks:[...n.values()],total:n.size,capabilities:s,permissions:r}}async loadPageMarkers(A,e){let t=this.scopeAnnotationsByUrl?{limit:20,url:A.url}:{limit:20};try{let{feedbacks:s}=await this.client.getFeedbacks(this.projectName,t);e.aborted||this.renderPageMarkers(s,A)}catch{}}renderPageMarkers(A,e){this.markers.render(this.scopeAnnotationsByUrl?A.filter(A=>A.url===e.url):A)}renderList(){if(this.listContainer.replaceChildren(),0===this.feedbacks.length){let A=R("div",{class:"sp-empty"});A.setAttribute("role","status"),A.setAttribute("aria-live","polite");let e=R("div",{class:"sp-empty-text"});return O(e,this.t("panel.empty")),A.appendChild(e),void this.listContainer.appendChild(A)}let A=function(A,e){let t=[...A];switch(e){case"newest":t.sort((A,e)=>new Date(e.createdAt).getTime()-new Date(A.createdAt).getTime());break;case"oldest":t.sort((A,e)=>new Date(A.createdAt).getTime()-new Date(e.createdAt).getTime());break;case"by-type":t.sort((A,e)=>{let t=Pp[A.type]??99,s=Pp[e.type]??99;return t!==s?t-s:new Date(e.createdAt).getTime()-new Date(A.createdAt).getTime()});break;case"open-first":t.sort((A,e)=>{let t=u(A.status)?1:0,s=u(e.status)?1:0;return t!==s?t-s:new Date(e.createdAt).getTime()-new Date(A.createdAt).getTime()})}return t}(this.feedbacks,this.sortControls.sortMode),e=A.filter(A=>this.selectable(A)).map(A=>A.id);if(e.length>0&&this.listContainer.appendChild(this.bulk.createSelectAllBar(e,this.t("bulk.selectAll"))),this.sortControls.groupByPage){let e=function(A){let e=new Map;for(let t of A){let A=Kp(t.url),s=e.get(A);s?s.push(t):e.set(A,[t])}return new Map([...e.entries()].sort((A,e)=>e[1].length-A[1].length))}(A),t=0;for(let[A,s]of e){let e=Tp(A,s.length,this.colors);this.listContainer.appendChild(e);let r=R("div",{class:"sp-group-content"});for(let A of s){let e=this.createCard(A,t+1);e.style.setProperty("--sp-card-i",String(t)),r.appendChild(e),t++}this.listContainer.appendChild(r)}}else A.forEach((A,e)=>{let t=this.createCard(A,e+1);t.style.setProperty("--sp-card-i",String(e)),this.listContainer.appendChild(t)});let t=this.totalFeedbacks-this.feedbacks.length;if(t>0){let A=R("div",{class:"sp-load-more-wrap"}),e=document.createElement("button");e.className="sp-btn-ghost sp-btn-load-more",O(e,op(this.t,"panel.loadMore",{remaining:t})),e.addEventListener("click",()=>this.loadMoreFeedbacks().catch(()=>{})),A.appendChild(e),this.listContainer.appendChild(A)}}createCard(A,e){let t=u(A.status),s=kA(A.type,this.colors),r=R("div",{class:"sp-card "+(t?"sp-card--resolved":"")});r.classList.toggle("sp-card--selected",this.bulk.isSelected(A.id)),r.setAttribute("role","listitem"),r.setAttribute("tabindex","0"),r.setAttribute("aria-label",`Feedback #${e}: ${rp(A.type,this.t)} \u2014 ${A.message.slice(0,80)}`),r.dataset.feedbackId=A.id,r.dataset.number=String(e);let i=R("div",{class:"sp-card-bar"});i.style.background=t?"#9ca3af":s;let n=R("div",{class:"sp-card-body"}),o=R("div",{class:"sp-card-header"});this.selectable(A)&&o.appendChild(this.bulk.createCheckbox(A.id));let a=R("span",{class:"sp-card-number"});O(a,`#${e}`);let l=R("span",{class:"sp-badge"}),c=HA(A.type,this.colors);l.style.background=c,l.style.color=s,O(l,rp(A.type,this.t));let d=R("span",{class:"sp-badge sp-badge--status"});d.dataset.status=A.status,d.style.background=function(A,e){switch(A){case"in_progress":return e.statusInProgressBg;case"resolved":return e.statusResolvedBg;case"wont_fix":return e.statusWontFixBg;default:return e.statusOpenBg}}(A.status,this.colors),d.style.color=function(A,e){switch(A){case"in_progress":return e.statusInProgress;case"resolved":return e.statusResolved;case"wont_fix":return e.statusWontFix;default:return e.statusOpen}}(A.status,this.colors),O(d,ip(A.status,this.t));let p=R("span",{class:"sp-card-date"});O(p,X(A.createdAt,this.locale)),o.appendChild(a),o.appendChild(l),o.appendChild(d),o.appendChild(p);let h=R("div",{class:"sp-card-message"});O(h,A.message);let g=document.createElement("button");g.className="sp-card-expand",g.dataset.action="expand",O(g,this.t("panel.showMore")),g.style.display="none",g.setAttribute("aria-expanded","false"),requestAnimationFrame(()=>{h.scrollHeight>h.clientHeight&&(g.style.display="block")});let B=R("div",{class:"sp-card-footer"}),w=document.createElement("button");w.className="sp-btn-resolve",w.dataset.action="resolve",w.appendChild(T(t?CA:hA));let f=document.createElement("span");O(f,` ${this.t(t?"panel.reopen":"panel.resolve")}`),w.appendChild(f);let m=document.createElement("button");m.className="sp-btn-delete",m.dataset.action="delete",m.appendChild(T(yA));let b=document.createElement("span");return O(b,` ${this.t("panel.delete")}`),m.appendChild(b),this.can(A,"canChangeStatus")&&B.appendChild(w),this.can(A,"canDelete")&&B.appendChild(m),n.appendChild(o),n.appendChild(h),n.appendChild(g),B.hasChildNodes()&&n.appendChild(B),r.appendChild(i),r.appendChild(n),r}can(A,e){return!this.readOnly&&!1!==A.permissions?.[e]}selectable(A){return this.can(A,"canChangeStatus")||this.can(A,"canDelete")}async bulkResolve(A){let e=new Set(this.feedbacks.filter(A=>u(A.status)).map(A=>A.id)),t=A.filter(A=>!e.has(A)),s=await Promise.allSettled(t.map(A=>this.client.resolveFeedback(A,!0)));await this.settleBulk(t,s)}async bulkDelete(A){let e=await Promise.allSettled(A.map(A=>this.client.deleteFeedback(A)));A.forEach((A,t)=>{"fulfilled"===e[t]?.status&&this.bus.emit("feedback:deleted",A)}),await this.settleBulk(A,e)}async settleBulk(A,e){let t=A.filter((A,t)=>"rejected"===e[t]?.status);t.length<A.length&&await this.loadFeedbacks();let s=e.find(A=>"rejected"===A.status);if(!s)return;let r=new Set(this.feedbacks.map(A=>A.id));this.bulk.selectAll(t.filter(A=>r.has(A)));let i=s.reason instanceof Error?s.reason:new Error(String(s.reason));throw this.bus.emit("feedback:error",i),i}async confirmDeleteAll(){if(await this.showConfirmDialog(this.t("panel.deleteAllConfirmTitle"),this.t("panel.deleteAllConfirmMessage"))){this.deleteAllBtn.disabled=!0;try{await this.client.deleteAllFeedbacks(this.projectName),this.bus.emit("feedback:all-deleted"),await this.loadFeedbacks()}catch(A){this.bus.emit("feedback:error",A instanceof Error?A:new Error(String(A)))}finally{this.deleteAllBtn.disabled=!1}}}showConfirmDialog(A,e){return new Promise(t=>{let s=R("div",{class:"sp-confirm-backdrop"}),r=`sp-confirm-title-${Date.now()}`,i=`sp-confirm-msg-${Date.now()}`,n=R("div",{class:"sp-confirm-dialog"});n.setAttribute("role","alertdialog"),n.setAttribute("aria-modal","true"),n.setAttribute("aria-labelledby",r),n.setAttribute("aria-describedby",i);let o=R("div",{class:"sp-confirm-title"});o.id=r,O(o,A);let a=R("div",{class:"sp-confirm-message"});a.id=i,O(a,e);let l=R("div",{class:"sp-confirm-actions"}),c=document.createElement("button");c.type="button",c.className="sp-btn-ghost",O(c,this.t("panel.cancel"));let d=document.createElement("button");d.type="button",d.className="sp-btn-danger",O(d,this.t("panel.confirmDelete"));let p=!1,h=A=>{p||(p=!0,s.removeEventListener("keydown",u),s.style.opacity="0",n.style.transform="translateY(8px) scale(0.97)",setTimeout(()=>{s.remove(),t(A)},200))},u=A=>{let e=A;if("Escape"===e.key)return e.stopPropagation(),void h(!1);"Tab"===e.key&&(e.preventDefault(),s.getRootNode().activeElement===c?d.focus():c.focus())};s.addEventListener("keydown",u),c.addEventListener("click",()=>h(!1)),d.addEventListener("click",()=>h(!0)),s.addEventListener("click",A=>{A.target===s&&h(!1)}),l.appendChild(c),l.appendChild(d),n.appendChild(o),n.appendChild(a),n.appendChild(l),s.appendChild(n),this.root.getRootNode()instanceof ShadowRoot?this.root.getRootNode().appendChild(s):this.root.appendChild(s),requestAnimationFrame(()=>{s.style.opacity="1",n.style.transform="translateY(0) scale(1)",c.focus()})})}async deleteFeedback(A,e){this.pendingMutations.add(A.id);let t=V(e);try{await this.client.deleteFeedback(A.id),this.bus.emit("feedback:deleted",A.id),await this.loadFeedbacks()}catch(A){t(),this.bus.emit("feedback:error",A instanceof Error?A:new Error(String(A)))}finally{this.pendingMutations.delete(A.id)}}async toggleResolve(A,e){this.pendingMutations.add(A.id);let t=V(e);try{let e=!u(A.status);await this.client.resolveFeedback(A.id,e),await this.loadFeedbacks()}catch(A){t(),this.bus.emit("feedback:error",A instanceof Error?A:new Error(String(A)))}finally{this.pendingMutations.delete(A.id)}}buildTypeDropdown(){return this.typeOptions=[{value:"all",label:this.t("panel.filterAll"),icon:fA,color:this.colors.accent,bg:this.colors.accentLight},{value:"question",label:this.t("type.question"),icon:uA,color:this.colors.typeQuestion,bg:this.colors.typeQuestionBg},{value:"change",label:this.t("type.change"),icon:gA,color:this.colors.typeChange,bg:this.colors.typeChangeBg},{value:"bug",label:this.t("type.bug"),icon:BA,color:this.colors.typeBug,bg:this.colors.typeBugBg},{value:"other",label:this.t("type.other"),icon:wA,color:this.colors.typeOther,bg:this.colors.typeOtherBg}],this.typeDropdownContainer=R("div",{class:"sp-filter-dropdown"}),this.typeDropdownBtn=document.createElement("button"),this.typeDropdownBtn.type="button",this.typeDropdownBtn.className="sp-filter-dropdown-btn",this.typeDropdownBtn.setAttribute("aria-haspopup","listbox"),this.typeDropdownBtn.setAttribute("aria-expanded","false"),this.renderTypeDropdownTrigger(),this.typeDropdownBtn.addEventListener("click",A=>{A.stopPropagation(),this.typeDropdownMenu?this.closeTypeDropdown():this.openTypeDropdown()}),this.typeDropdownContainer.addEventListener("keydown",A=>{"Escape"!==A.key||!this.typeDropdownMenu||(A.stopPropagation(),this.closeTypeDropdown(),this.typeDropdownBtn.focus())}),this.typeDropdownContainer.appendChild(this.typeDropdownBtn),this.typeDropdownContainer}renderTypeDropdownTrigger(){let A=this.typeOptions.find(A=>this.activeFilters.has(A.value))??this.typeOptions[0];if(!A)return;this.typeDropdownBtn.replaceChildren(),this.typeDropdownBtn.style.setProperty("--sp-chip-color",A.color),this.typeDropdownBtn.style.setProperty("--sp-chip-bg",A.bg),this.typeDropdownBtn.dataset.filter=A.value,this.typeDropdownBtn.classList.toggle("sp-filter-dropdown-btn--filtered","all"!==A.value),this.typeDropdownBtn.setAttribute("aria-label",`${this.t("type.label")}: ${A.label}`);let e=R("span",{class:"sp-filter-dropdown-btn__icon"});e.appendChild(T(A.icon)),this.typeDropdownBtn.appendChild(e);let t=R("span",{class:"sp-filter-dropdown-btn__label"}),s=R("span",{class:"sp-filter-dropdown-btn__prefix"});O(s,this.t("type.label"));let r=R("span",{class:"sp-filter-dropdown-btn__value"});O(r,A.label),t.appendChild(s),t.appendChild(r),this.typeDropdownBtn.appendChild(t);let i=R("span",{class:"sp-filter-dropdown-btn__chevron"});i.appendChild(T(bA)),this.typeDropdownBtn.appendChild(i)}openTypeDropdown(){this.typeDropdownMenu=R("div",{class:"sp-filter-dropdown-menu"}),this.typeDropdownMenu.setAttribute("role","listbox"),this.typeDropdownMenu.setAttribute("aria-label",this.t("type.label")),this.typeDropdownBtn.setAttribute("aria-expanded","true");for(let A of this.typeOptions){let e=document.createElement("button");e.type="button";let t=this.activeFilters.has(A.value);e.className="sp-filter-dropdown-option"+(t?" sp-filter-dropdown-option--active":""),e.style.setProperty("--sp-chip-color",A.color),e.style.setProperty("--sp-chip-bg",A.bg),e.dataset.filter=A.value,e.setAttribute("role","option"),e.setAttribute("aria-selected",String(t));let s=R("span",{class:"sp-filter-dropdown-option__icon"});s.appendChild(T(A.icon)),e.appendChild(s);let r=R("span",{class:"sp-filter-dropdown-option__label"});if(O(r,A.label),e.appendChild(r),t){let A=R("span",{class:"sp-filter-dropdown-option__check"});A.appendChild(T(hA)),e.appendChild(A)}e.addEventListener("click",e=>{e.stopPropagation(),this.selectTypeFilter(A.value)}),this.typeDropdownMenu.appendChild(e)}this.typeDropdownContainer.appendChild(this.typeDropdownMenu),this.removeTypeDropdownOutsideClick=P(this.typeDropdownContainer,()=>this.closeTypeDropdown())}closeTypeDropdown(){this.typeDropdownMenu&&(this.typeDropdownMenu.remove(),this.typeDropdownMenu=null),this.typeDropdownBtn.setAttribute("aria-expanded","false"),this.removeTypeDropdownOutsideClick?.(),this.removeTypeDropdownOutsideClick=null}selectTypeFilter(A){this.activeFilters.clear(),this.activeFilters.add(A),this.renderTypeDropdownTrigger(),this.closeTypeDropdown(),this.loadFeedbacks().catch(()=>{})}buildStatusSegmented(){return this.statusSegmented=new _p({options:[{value:"all",label:this.t("panel.statusAll"),icon:fA,color:this.colors.accent,bg:this.colors.accentLight},{value:"open",label:this.t("panel.statusOpen"),icon:mA,color:this.colors.statusOpen,bg:this.colors.statusOpenBg},{value:"resolved",label:this.t("panel.statusResolved"),icon:hA,color:this.colors.statusResolved,bg:this.colors.statusResolvedBg}],value:"all",onChange:()=>{this.loadFeedbacks().catch(()=>{})},ariaLabel:this.t("status.label"),datasetKey:"statusFilter",modifierPrefix:"sp-segmented__btn--"}),this.statusSegmented.element}buildScopeSegmented(){return this.scopeSegmented=new _p({options:[{value:"this",label:this.t("scope.thisPage")},{value:"template",label:this.t("scope.thisType")},{value:"all",label:this.t("scope.all")}],value:this.initialScopeFilter,onChange:()=>{this.loadFeedbacks().catch(()=>{})},ariaLabel:this.t("scope.label"),datasetKey:"scopeFilter",modifierPrefix:"sp-segmented__btn--scope-",extraClass:"sp-segmented--scope"}),this.syncScopeAvailability(),this.scopeSegmented.element}syncScopeAvailability(){if(!this.scopeSegmented)return;let A=!!this.getScope().urlPattern;this.scopeSegmented.setOptionVisible("template",A),!A&&"template"===this.scopeSegmented.value&&this.scopeSegmented.select("this")}buildMineToggle(){let A=document.createElement("button");return A.type="button",A.className="sp-mine-toggle",A.title=this.t("panel.filterMineHint"),A.setAttribute("aria-pressed","false"),A.append(T(QA),this.t("panel.filterMine")),A.addEventListener("click",()=>{this.mineOnly=!this.mineOnly,A.classList.toggle("sp-mine-toggle--active",this.mineOnly),A.setAttribute("aria-pressed",String(this.mineOnly)),this.loadFeedbacks().catch(()=>{})}),A}pressInFocusedCard(A){this.listContainer.querySelectorAll(".sp-card")[Wp(this.listContainer)]?.querySelector(A)?.click()}scrollToFeedback(A){this.isLoading?this.pendingScrollId=A:this.flashCard(A)}flashCard(A){let e=CSS.escape(A),t=this.listContainer.querySelector(`[data-feedback-id="${e}"]`);if(t){t.scrollIntoView({behavior:"smooth",block:"center"}),t.classList.add("sp-anim-flash"),t.addEventListener("animationend",()=>{t.classList.remove("sp-anim-flash")},{once:!0});let e=this.feedbacks.find(e=>e.id===A);e&&TA()&&this.detail.show(e,Number(t.dataset.number))}}draftOf(A){let e=this.threadDrafts.get(A)??{text:""};return this.threadDrafts.set(A,e),e}async postComment(A,e,t){let s=await this.resolveIdentity();if(!s)return null;try{let r=await this.client.addComment(A.id,{body:e,clientId:t,authorName:s.name,authorEmail:s.email,authorRole:"client"});for(let e of new Set([A,this.feedbacks.find(e=>e.id===A.id)]))e&&!e.comments?.some(A=>A.id===r.id)&&(e.comments=[...e.comments??[],r]);return this.bus.emit("comment:added",r),r}catch(A){throw this.bus.emit("feedback:error",A instanceof Error?A:new Error(String(A))),A}}reportActionError(A){this.bus.emit("panel:action-error",A instanceof Error?A:new Error(String(A)))}async refreshDetail(A){if(this.isOpen&&await this.loadFeedbacks(this.currentPage),this.detail.feedbackId!==A)return;let e=this.feedbacks.findIndex(e=>e.id===A),t=this.feedbacks[e];t?this.detail.show(t,e+1):this.detail.hide()}async refresh(){this.isOpen&&await this.loadFeedbacks()}get isCurrentlyOpen(){return this.isOpen}destroy(){this.isOpen=!1,this.loadController?.abort(),this.searchTimeout&&clearTimeout(this.searchTimeout),this.listContainer.removeEventListener("click",this.onListClick),this.listContainer.removeEventListener("keydown",this.onListKeydown),this.listContainer.removeEventListener("mouseover",this.onListMouseover),this.listContainer.removeEventListener("mouseout",this.onListMouseout),document.removeEventListener("sp-marker-click",this.onMarkerClick),this.closeTypeDropdown(),this.sortControls.destroy(),this.bulk.destroy(),this.exportBtn.destroy(),this.shortcuts.destroy(),this.detail.destroy(),this.scrim.remove(),this.root.remove()}}});D(),D();var nh=new Set(["role","name","aria-label","rel","href"]);function oh(A,e){let t=nh.has(A);t||=A.startsWith("data-")&&ph(A);let s=ph(e)&&e.length<100;return s||=e.startsWith("#")&&ph(e.slice(1)),t&&s}function ah(A){return ph(A)}function lh(A){return ph(A)}function ch(A){return!0}function dh(A,e){if(A.nodeType!==Node.ELEMENT_NODE)throw new Error("Can't generate CSS selector for non-element node type.");if("html"===A.tagName.toLowerCase())return"html";let t,s={root:document.body,idName:ah,className:lh,tagName:ch,attr:oh,timeoutMs:1e3,seedMinLength:3,optimizedMinLength:2,maxNumberOfPathChecks:1/0},r=new Date,i={...s,...e},n=function(A,e){return A.nodeType===Node.DOCUMENT_NODE?A:A===e.root?A.ownerDocument:A}(i.root,s),o=0;for(let e of function*(A,e,t){let s=[],r=[],i=A,n=0;for(;i&&i!==t;){let A=hh(i,e);for(let e of A)e.level=n;if(s.push(A),i=i.parentElement,n++,r.push(...Ch(s)),n>=e.seedMinLength){r.sort(Bh);for(let A of r)yield A;r=[]}}r.sort(Bh);for(let A of r)yield A}(A,i,n)){if((new Date).getTime()-r.getTime()>i.timeoutMs||o>=i.maxNumberOfPathChecks){let e=fh(A,n);if(!e)throw new Error(`Timeout: Can't find a unique selector after ${i.timeoutMs}ms`);return uh(e)}if(o++,yh(e,n)){t=e;break}}if(!t)throw new Error("Selector was not found.");let a=[...Qh(t,A,i,n,r)];return a.sort(Bh),a.length>0?uh(a[0]):uh(t)}function ph(A){if(/^[a-z\-]{3,}$/i.test(A)){let e=A.split(/-|[A-Z]/);for(let A of e)if(A.length<=2||/[^aeiou]{4,}/i.test(A))return!1;return!0}return!1}function hh(A,e){let t=[],s=A.getAttribute("id");s&&e.idName(s)&&t.push({name:"#"+CSS.escape(s),penalty:0});for(let s=0;s<A.classList.length;s++){let r=A.classList[s];e.className(r)&&t.push({name:"."+CSS.escape(r),penalty:1})}for(let s=0;s<A.attributes.length;s++){let r=A.attributes[s];e.attr(r.name,r.value)&&t.push({name:`[${CSS.escape(r.name)}="${CSS.escape(r.value)}"]`,penalty:2})}let r=A.tagName.toLowerCase();if(e.tagName(r)){t.push({name:r,penalty:5});let e=wh(A,r);void 0!==e&&t.push({name:bh(r,e),penalty:10})}let i=wh(A);return void 0!==i&&t.push({name:mh(r,i),penalty:50}),t}function uh(A){let e=A[0],t=e.name;for(let s=1;s<A.length;s++){let r=A[s].level||0;t=e.level===r-1?`${A[s].name} > ${t}`:`${A[s].name} ${t}`,e=A[s]}return t}function gh(A){return A.map(A=>A.penalty).reduce((A,e)=>A+e,0)}function Bh(A,e){return gh(A)-gh(e)}function wh(A,e){let t=A.parentNode;if(!t)return;let s=t.firstChild;if(!s)return;let r=0;for(;s&&(s.nodeType===Node.ELEMENT_NODE&&(void 0===e||s.tagName.toLowerCase()===e)&&r++,s!==A);)s=s.nextSibling;return r}function fh(A,e){let t=0,s=A,r=[];for(;s&&s!==e;){let A=s.tagName.toLowerCase(),e=wh(s,A);if(void 0===e)return;r.push({name:bh(A,e),penalty:NaN,level:t}),s=s.parentElement,t++}if(yh(r,e))return r}function mh(A,e){return"html"===A?"html":`${A}:nth-child(${e})`}function bh(A,e){return"html"===A?"html":`${A}:nth-of-type(${e})`}function*Ch(A,e=[]){if(A.length>0)for(let t of A[0])yield*Ch(A.slice(1,A.length),e.concat(t));else yield e}function yh(A,e){let t=uh(A);switch(e.querySelectorAll(t).length){case 0:throw new Error(`Can't select any node with this selector: ${t}`);case 1:return!0;default:return!1}}function*Qh(A,e,t,s,r){if(A.length>2&&A.length>t.optimizedMinLength)for(let i=1;i<A.length-1;i++){if((new Date).getTime()-r.getTime()>t.timeoutMs)return;let n=[...A];n.splice(i,1),yh(n,s)&&s.querySelector(uh(n))===e&&(yield n,yield*Qh(n,e,t,s,r))}}D();var xh=["role","aria-label","type","name","href","src","data-testid","data-id"];function Fh(A){let e=A.children.length,t=0,s=A.parentElement;if(s)for(let e of s.children){if(e===A)break;e.tagName===A.tagName&&t++}return`${e}:${t}:${Uh(A)}`}function Uh(A){let e=[];for(let t of xh){let s=A.getAttribute(t);s&&e.push(`${t}=${s}`)}return e.length>0?function(A){let e=5381;for(let t=0;t<A.length;t++)e=(e<<5)+e+A.charCodeAt(t)|0;return(e>>>0).toString(36)}(e.join(",")):"0"}function vh(A){return"SITEPING-WIDGET"===A.tagName||null!==A.closest("siteping-widget")||null!==A.closest('[data-siteping-ignore="true"]')||null!==A.closest("#siteping-markers")||null!==A.closest("#sp-tooltip")}function Eh(A){let e=A,t=A.shadowRoot?.activeElement;for(;t instanceof HTMLElement;){let A=t.getBoundingClientRect();A.width>=4&&A.height>=4&&(e=t),t=t.shadowRoot?.activeElement}return e}var kh=256;function Hh(A,e){let t=A;for(;t&&vh(t);)t=t[e];return t}function Ih(A){return 1===A.nodeType&&"true"===A.getAttribute("data-siteping-ignore")}function Sh(A){return 3===A.nodeType?NodeFilter.FILTER_ACCEPT:Ih(A)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_SKIP}function Lh(A,e){let t="before"===e?"previousElementSibling":"nextElementSibling",s=Hh(A[t],t),r=3;for(;s&&r>0;){let A="before"===e?Kh(s,kh,!0).trim():Dh(s,kh,!0).trim();if(A)return"before"===e?A.slice(-32):A.slice(0,32);s=Hh(s[t],t),r--}return""}function Mh(A){let e=Hh(A.previousElementSibling,"previousElementSibling"),t=Hh(A.nextElementSibling,"nextElementSibling");return[e?Dh(e,kh,!0).trim().slice(0,40):"",t?Dh(t,kh,!0).trim().slice(0,40):""].filter(Boolean).join(" | ")}function Dh(A,e,t=!1){let s="";if(null===A.firstElementChild){for(let t of A.childNodes)if(3===t.nodeType&&(s+=t.data,s.length>=e))break;return s.length>e?s.slice(0,e):s}let r=t?A.ownerDocument.createTreeWalker(A,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,Sh):A.ownerDocument.createTreeWalker(A,NodeFilter.SHOW_TEXT);for(;s.length<e;){let A=r.nextNode();if(!A)break;s+=A.data}return s.length>e?s.slice(0,e):s}function Kh(A,e,t=!1){let s="",r=A=>{for(let i=A.lastChild;i;i=i.previousSibling)if(3===i.nodeType){if(s=i.data+s,s.length>=e)return!0}else if(1===i.nodeType&&(!t||!Ih(i))&&r(i))return!0;return!1};return r(A),s.length>e?s.slice(-e):s}function Th(A){return A.includes("'")?`concat('${A.replace(/'/g,"',\"'\",'")}')`:`'${A}'`}var Rh="data-feedback-anchor",Oh=" >>> ",Ph={className:A=>!/^(css|sc|emotion|styled)-/.test(A)&&!/^[a-z]{1,3}[A-Za-z0-9]{4,8}$/.test(A),attr:A=>["data-testid","data-id","role","aria-label"].includes(A),idName:A=>!A.startsWith("radix-")&&!/^:r[0-9]+:$/.test(A),seedMinLength:3,optimizedMinLength:2};function Nh(A){if(A.parentElement)return A.parentElement;let e=A.getRootNode();return e instanceof ShadowRoot?e.host:null}function Vh(A){let e=[],t=A;for(;t;){let A=t.getRootNode();A instanceof ShadowRoot?(e.unshift(dh(t,{...Ph,root:A})),t=A.host):(e.unshift(dh(t,Ph)),t=null)}let s=e.join(Oh),r=function(A){if(A.getRootNode()instanceof ShadowRoot)return function(A){let e="";for(let t=A;t;t=t.parentElement){let A=t.localName;if(t.id){e=`/${A}[@id=${Th(t.id)}]${e}`;continue}let s=1;for(let e=t.previousElementSibling;e;e=e.previousElementSibling)e.localName===A&&s++;e=`/${A}[${s}]${e}`}return`.${e}`}(A);if(A.id)return`//${A.localName}[@id=${Th(A.id)}]`;let e=[],t=A;for(;t&&t!==document.body&&e.length<6;){let A=t.localName,s=t.parentElement;if(t.id)return e.unshift(`/${A}[@id=${Th(t.id)}]`),"/"+e.join("");let r=1;if(s)for(let e of s.children){if(e===t)break;e.localName===A&&r++}e.unshift(`/${A}[${r}]`),t=s}return t!==document.body?"/"+e.join(""):"/html/body"+e.join("")}(A),i=(A.textContent?.trim()??"").slice(0,120),n=Lh(A,"before"),o=Lh(A,"after"),a=Fh(A),l=Mh(A),c=function(A,e){let t=A;for(;t;){let A=t.closest(e);if(A)return A;let s=t.getRootNode();t=s instanceof ShadowRoot?s.host:null}return null}(A,`[${Rh}]`)?.getAttribute(Rh)??null;return{cssSelector:s,xpath:r,textSnippet:i,textPrefix:n,textSuffix:o,fingerprint:a,neighborText:l,elementTag:A.tagName.slice(0,Q),elementId:A.id&&A.id.length<=x?A.id:void 0,anchorKey:c}}function Gh(A,e){let t=A.getBoundingClientRect();return t.left<=e.x&&t.top<=e.y&&t.right>=e.x+e.width&&t.bottom>=e.y+e.height}function Xh(A,e){let t=document.elementFromPoint(A,e),s=t?.shadowRoot;for(;s&&"function"==typeof s.elementFromPoint;){let r=s.elementFromPoint(A,e);if(!r||r.getRootNode()!==s)break;t=r,s=r.shadowRoot}return t}$(),UA(),$(),UA(),vA();var $h={width:334,height:280},Yh={top:0,bottom:0};DA(),PA();var Wh={question:"type.question",change:"type.change",bug:"type.bug",other:"type.other"},Jh="opacity 250ms cubic-bezier(0.16, 1, 0.3, 1),transform 250ms cubic-bezier(0.16, 1, 0.3, 1)";function zh(){return"function"==typeof window.matchMedia&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}var _h,jh=class{constructor(A,e){this.colors=A,this.t=e,this.root=R("div",{style:`position:fixed;z-index:2147483647;pointer-events:auto;width:300px;padding:16px;border-radius:16px;background:${this.colors.glassBg};backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid ${this.colors.glassBorder};box-shadow:0 8px 32px ${this.colors.shadow},0 2px 8px ${this.colors.shadow};font-family:"Inter",system-ui,-apple-system,sans-serif;opacity:0;transform:translateY(8px) scale(0.98);transition:${Jh};display:none;-webkit-font-smoothing:antialiased;`}),this.root.setAttribute("role","dialog"),this.root.setAttribute("aria-modal","true"),this.root.setAttribute("data-siteping-ignore","true");let t=[{type:"question",icon:uA},{type:"change",icon:gA},{type:"bug",icon:BA},{type:"other",icon:wA}];this.typeRow=R("div",{style:"display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px;"});for(let A of t){let e=document.createElement("button");e.style.cssText=`height:44px;border-radius:9999px;border:1px solid ${this.colors.border};background:${this.colors.glassBg};cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;font-weight:500;color:${this.colors.textTertiary};transition:all 0.2s ease;padding:0 12px;`;let t=T(A.icon);t.setAttribute("style","width:13px;height:13px;flex-shrink:0;"),e.appendChild(t),e.appendChild(document.createElement("span")),e.dataset.type=A.type,e.setAttribute("aria-pressed","false"),e.addEventListener("click",()=>{this.submittingState||this.selectType(A.type,this.typeRow)}),e.addEventListener("mouseenter",()=>{if(!this.submittingState&&e.dataset.type!==this.selectedType){let A=HA(e.dataset.type??"",this.colors);e.style.background=A,e.style.borderColor=kA(e.dataset.type??"",this.colors)+"40"}}),e.addEventListener("mouseleave",()=>{this.submittingState||e.dataset.type!==this.selectedType&&(e.style.background=this.colors.glassBg,e.style.borderColor=this.colors.border)}),this.typeRow.appendChild(e)}this.textarea=document.createElement("textarea"),this.textarea.style.cssText=`width:100%;min-height:72px;max-height:152px;padding:10px 12px;border-radius:12px;border:1px solid ${this.colors.border};background:${this.colors.glassBgHeavy};color:${this.colors.text};font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;line-height:1.5;resize:vertical;outline:none;transition:all 0.2s ease;box-sizing:border-box;`,this.textarea.maxLength=5e3,this.hint=R("div",{style:`font-size:11px;color:${this.colors.textTertiary};text-align:right;margin-top:4px;font-family:"Inter",system-ui,-apple-system,sans-serif;letter-spacing:0.01em;`}),this.textarea.addEventListener("focus",()=>{this.submittingState||(this.textarea.style.borderColor=this.colors.accent,this.textarea.style.boxShadow=`0 0 0 3px ${this.colors.accent}14`,this.textarea.style.background=this.colors.bg)}),this.textarea.addEventListener("blur",()=>{this.submittingState||(this.textarea.style.borderColor=this.colors.border,this.textarea.style.boxShadow="none",this.textarea.style.background=this.colors.glassBgHeavy)}),this.textarea.addEventListener("input",()=>{this.updateSubmitState()}),this.textarea.addEventListener("keydown",A=>{this.submittingState||"Enter"===A.key&&(A.ctrlKey||A.metaKey)&&(A.preventDefault(),this.submit())});let s=R("div",{style:"display:flex;justify-content:flex-end;gap:8px;margin-top:12px;"});this.cancelBtn=document.createElement("button"),this.cancelBtn.style.cssText=`height:34px;padding:0 16px;border-radius:9999px;border:1px solid ${this.colors.border};background:${this.colors.glassBg};color:${this.colors.textTertiary};font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s ease;`,this.cancelBtn.addEventListener("click",()=>this.dismiss()),this.cancelBtn.addEventListener("mouseenter",()=>{this.submittingState||(this.cancelBtn.style.borderColor=this.colors.accent,this.cancelBtn.style.color=this.colors.accent)}),this.cancelBtn.addEventListener("mouseleave",()=>{this.submittingState||(this.cancelBtn.style.borderColor=this.colors.border,this.cancelBtn.style.color=this.colors.textTertiary)}),this.submitBtn=document.createElement("button"),this.submitBtn.style.cssText=`height:34px;padding:0 18px;border-radius:9999px;border:none;background:${this.colors.accentGradient};color:#fff;font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;font-weight:600;cursor:pointer;opacity:0.35;pointer-events:none;transition:all 0.2s ease;box-shadow:0 2px 8px ${this.colors.accentGlow};display:inline-flex;align-items:center;justify-content:center;min-width:64px;`,this.submitLabel=document.createElement("span"),this.submitBtn.appendChild(this.submitLabel),this.submitBtn.addEventListener("click",()=>this.submit()),s.appendChild(this.cancelBtn),s.appendChild(this.submitBtn),this.root.appendChild(this.typeRow),this.root.appendChild(this.textarea),this.root.appendChild(this.hint),this.root.appendChild(s),W(this.root),document.body.appendChild(this.root),this.applyLabels()}colors;t;root;selectedType=null;textarea;submitBtn;cancelBtn;typeRow;submitLabel;hint;resolve=null;previouslyFocused=null;onKeydownTrap=null;onSubmit=null;submittingState=!1;showFrame=null;hideTimeoutId=null;spinnerAnimation=null;sheet=!1;stopKeyboardTracking=null;get isOpen(){return null!==this.resolve}get sheetTop(){return this.sheet&&this.isOpen?window.innerHeight-this.root.offsetHeight:null}refreshLabels(){this.applyLabels()}applyLabels(){this.root.setAttribute("aria-label",this.t("popup.ariaLabel"));let A=this.root.querySelectorAll("button[data-type]");for(let e of A){let A=e.dataset.type;if(!A)continue;let t=Wh[A];if(!t)continue;let s=e.querySelector("span");s&&O(s,this.t(t))}this.textarea.placeholder=this.t("popup.placeholder"),this.textarea.setAttribute("aria-label",this.t("popup.textareaAria")),O(this.hint,G()?this.t("popup.submitHintMac"):this.t("popup.submitHintOther")),O(this.cancelBtn,this.t("popup.cancel")),O(this.submitLabel,this.t("popup.submit"))}show(A,e,t=Yh){return new Promise(s=>{this.cancelPendingTransition(),this.resolve=s,this.onSubmit=e??null,this.selectedType=null,this.textarea.value="",this.submittingState=!1,this.updateSubmitState(),this.resetTypeButtons(),this.previouslyFocused=document.activeElement;let r=RA();this.sheet=TA();let i=this.sheet?"48px":r?"44px":"34px";this.cancelBtn.style.height=i,this.submitBtn.style.height=i,this.cancelBtn.style.flex=this.sheet?"1":"",this.submitBtn.style.flex=this.sheet?"2":"",this.textarea.style.fontSize=r?"16px":"13px",this.textarea.style.minHeight=this.sheet?"96px":"72px",this.hint.style.display=r?"none":"",this.root.style.transform=this.hiddenTransform(),J(this.root,!1),this.root.style.display="block",this.layout(A,t),this.onKeydownTrap=A=>{if("Escape"===A.key&&this.dismiss(),"Tab"===A.key){let e=Array.from(this.root.querySelectorAll('button:not([disabled]), textarea:not([disabled]), input:not([disabled]), [tabindex]:not([tabindex="-1"])'));if(0===e.length)return;let t=e[0],s=e[e.length-1];if(!t||!s)return;A.shiftKey?(document.activeElement===t||!this.root.contains(document.activeElement))&&(A.preventDefault(),s.focus()):(document.activeElement===s||!this.root.contains(document.activeElement))&&(A.preventDefault(),t.focus())}},this.root.addEventListener("keydown",this.onKeydownTrap),this.root.style.transition=zh()?"none":Jh,this.showFrame=requestAnimationFrame(()=>{this.showFrame=null,this.root.style.opacity="1",this.root.style.transform="translateY(0) scale(1)",(r?this.typeRow.querySelector("button"):this.textarea)?.focus()})})}layout(A,e){let t=this.root.style;if(t.width=this.sheet?"auto":"300px",t.borderRadius=this.sheet?"20px 20px 0 0":"16px",t.background=this.sheet?this.colors.bg:this.colors.glassBg,t.boxShadow=this.sheet?`0 -8px 32px ${this.colors.shadow}`:`0 8px 32px ${this.colors.shadow}, 0 2px 8px ${this.colors.shadow}`,t.overscrollBehavior=this.sheet?"contain":"",this.stopKeyboardTracking?.(),this.stopKeyboardTracking=null,this.sheet){t.top="auto",t.left="0",t.right="0",t.overflowY="auto";let A=(A,e=window.innerHeight)=>{t.bottom=`${A}px`,t.maxHeight=e-8+"px",t.padding="16px 16px "+(A>0?"16px":"calc(16px + env(safe-area-inset-bottom, 0px))")};return A(0),void(this.stopKeyboardTracking=OA(A))}t.right="",t.bottom="",t.padding="16px",t.maxHeight="",t.overflowY="";let{top:s,left:r,maxHeight:i}=function(A,e,t,s=Yh){let r,i=s.top+8,n=t.height-s.bottom-8,o=Math.max(0,n-i),a=A.bottom+8,l=A.top-8-e.height,c=A=>A>=i&&A+e.height<=n,d=null;c(a)?r=a:c(l)?r=l:e.height<=o?r=Math.min(Math.max(a,i),n-e.height):(r=i,d=o);let p=A.left;return p+e.width>t.width-8&&(p=A.right-e.width),p=Math.max(8,Math.min(p,t.width-8-e.width)),{top:r,left:p,maxHeight:d}}(A,this.measure(),{width:window.innerWidth,height:window.innerHeight},e);t.top=`${s}px`,t.left=`${r}px`,null!==i&&(t.maxHeight=`${Math.max(0,i-this.verticalChromeHeight())}px`,t.overflowY="auto",this.root.scrollTop=0)}hiddenTransform(){return this.sheet?"translateY(100%)":"translateY(8px) scale(0.98)"}measure(){let A=this.root.offsetWidth,e=this.root.offsetHeight;return A>0&&e>0?{width:A,height:e}:$h}verticalChromeHeight(){let A=window.getComputedStyle(this.root);return"border-box"===A.boxSizing?0:[A.paddingTop,A.paddingBottom,A.borderTopWidth,A.borderBottomWidth].reduce((A,e)=>A+(Number.parseFloat(e)||0),0)}selectType(A,e){this.selectedType=A;let t=e.querySelectorAll("button");for(let e of t){let t=e.dataset.type===A,s=kA(e.dataset.type??"",this.colors),r=HA(e.dataset.type??"",this.colors);e.style.background=t?r:this.colors.glassBg,e.style.borderColor=t?s+"60":this.colors.border,e.style.color=t?s:this.colors.textTertiary,e.style.fontWeight=t?"600":"500",e.setAttribute("aria-pressed",String(t))}this.updateSubmitState()}resetTypeButtons(){let A=this.root.querySelectorAll("button[data-type]");for(let e of A)e.setAttribute("aria-pressed","false"),e.disabled=!1,e.style.background=this.colors.glassBg,e.style.borderColor=this.colors.border,e.style.color=this.colors.textTertiary,e.style.fontWeight="500",e.style.cursor="pointer"}updateSubmitState(){if(this.submittingState)return;let A=null!==this.selectedType&&this.textarea.value.trim().length>0;this.submitBtn.disabled=!A,this.submitBtn.style.opacity=A?"1":"0.35",this.submitBtn.style.pointerEvents=A?"auto":"none"}submit(){if(this.submittingState||!this.selectedType||!this.textarea.value.trim())return;let A={type:this.selectedType,message:this.textarea.value.trim()};if(!this.onSubmit)return this.resolve?.(A),this.resolve=null,void this.hideElement();this.enterSubmittingState(),(0,this.onSubmit)(A).then(()=>{this.resolve?.(A),this.resolve=null,this.hideElement()}).catch(()=>{this.exitSubmittingState()})}dismiss(){this.submittingState||!this.isOpen||(this.resolve?.(null),this.resolve=null,this.hideElement())}enterSubmittingState(){this.submittingState=!0,this.submitLabel.style.display="none",this.submitBtn.disabled=!0,this.submitBtn.style.cursor="wait",this.submitBtn.style.opacity="0.85",this.submitBtn.setAttribute("aria-busy","true"),this.submitBtn.appendChild(this.buildSpinner()),this.cancelBtn.disabled=!0,this.cancelBtn.style.opacity="0.5",this.cancelBtn.style.cursor="not-allowed",this.cancelBtn.style.pointerEvents="none",this.textarea.disabled=!0,this.textarea.style.opacity="0.6";let A=this.typeRow.querySelectorAll("button");for(let e of A)e.disabled=!0,e.style.cursor="not-allowed",e.style.opacity="0.6"}exitSubmittingState(){this.submittingState=!1,this.spinnerAnimation?.cancel(),this.spinnerAnimation=null,this.submitBtn.querySelector('[data-role="sp-popup-spinner"]')?.remove(),this.submitLabel.style.display="",this.submitBtn.removeAttribute("aria-busy"),this.submitBtn.style.cursor="pointer",this.cancelBtn.disabled=!1,this.cancelBtn.style.opacity="1",this.cancelBtn.style.cursor="pointer",this.cancelBtn.style.pointerEvents="auto",this.textarea.disabled=!1,this.textarea.style.opacity="1";let A=this.typeRow.querySelectorAll("button");for(let e of A)e.disabled=!1,e.style.cursor="pointer",e.style.opacity="1";this.updateSubmitState()}buildSpinner(){let A=document.createElement("div");return A.dataset.role="sp-popup-spinner",A.style.cssText="width:14px;height:14px;border:2px solid rgba(255,255,255,0.35);border-top-color:#fff;border-radius:50%;box-sizing:border-box;",!zh()&&"function"==typeof A.animate&&(this.spinnerAnimation=A.animate([{transform:"rotate(0deg)"},{transform:"rotate(360deg)"}],{duration:600,iterations:1/0,easing:"linear"})),A}hideElement(){this.cancelPendingTransition(),this.onKeydownTrap&&(this.root.removeEventListener("keydown",this.onKeydownTrap),this.onKeydownTrap=null),this.submittingState&&this.exitSubmittingState(),this.onSubmit=null,this.stopKeyboardTracking?.(),this.stopKeyboardTracking=null,this.root.style.opacity="0",this.root.style.transform=this.hiddenTransform(),this.previouslyFocused?.focus(),this.previouslyFocused=null,J(this.root,!0),zh()?this.root.style.display="none":this.hideTimeoutId=setTimeout(()=>{this.hideTimeoutId=null,this.root.style.display="none"},250)}cancelPendingTransition(){null!==this.showFrame&&cancelAnimationFrame(this.showFrame),null!==this.hideTimeoutId&&clearTimeout(this.hideTimeoutId),this.showFrame=null,this.hideTimeoutId=null}destroy(){this.submittingState&&this.exitSubmittingState(),this.cancelPendingTransition(),this.resolve?.(null),this.resolve=null,this.onSubmit=null,this.onKeydownTrap&&(this.root.removeEventListener("keydown",this.onKeydownTrap),this.onKeydownTrap=null),this.stopKeyboardTracking?.(),this.stopKeyboardTracking=null,this.root.remove()}},Zh=!1;function qh(A,e,t){return Math.min(t,Math.max(A,e))}function Au(A){return qh(0,Math.round(1e4*A)/1e4,1)}function eu(A){let e=Math.max(0,A.left),t=Math.max(0,A.top);return new DOMRect(e,t,Math.max(0,Math.min(A.right,window.innerWidth)-e),Math.max(0,Math.min(A.bottom,window.innerHeight)-t))}PA();var tu=class{constructor(A,e,t,s=!1,r){this.colors=A,this.bus=e,this.t=t,this.enableScreenshot=s,this.getFallbackTarget=r,this.popup=new jh(A,t),this.bus.on("annotation:start",()=>this.activate())}colors;bus;t;enableScreenshot;getFallbackTarget;overlay=null;toolbar=null;drawingRect=null;startX=0;startY=0;isDrawing=!1;isActive=!1;instantMode=!1;popup;savedOverflow="";preActiveFocusElement=null;keyboardTarget=null;rafId=null;pendingMoveEvent=null;rejectPendingSubmission=null;unregisterEscapeLayer=z(document,()=>this.isActive);get isBusy(){return this.isActive}refreshLabels(){this.popup.refreshLabels()}async maybeCapture(A){return this.enableScreenshot?async function(A){let e=await async function(){if(void 0!==_h)return _h;try{let A=await Promise.resolve().then(()=>(Id(),NA));return _h=A.default??A}catch(A){return _h=null,Zh||(Zh=!0,console.warn("[siteping] html2canvas-pro import failed unexpectedly. Capture is disabled for this session \u2014 feedbacks are still submitted, just without screenshots. Underlying error:",A)),null}}();if(!e)return null;let t=1200,s=qh(48,.6*A.width,280),r=qh(48,.6*A.height,220),i=window.scrollX+A.x,n=window.scrollY+A.y,o=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth),a=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),l=Math.max(0,i-s),c=Math.max(0,n-r),d=Math.min(o,i+A.width+s)-l,p=Math.min(a,n+A.height+r)-c;if(d<=0||p<=0)return null;let h={xPct:Au((i-l)/d),yPct:Au((n-c)/p),wPct:Au(A.width/d),hPct:Au(A.height/p)};try{let A=await e(document.body,{x:l,y:c,width:d,height:p,scale:window.devicePixelRatio,useCORS:!0,allowTaint:!0,logging:!1,ignoreElements:A=>"SITEPING-WIDGET"===A.tagName||null!==A.closest?.("siteping-widget")||"true"===A.getAttribute?.("data-siteping-ignore")});if(A.width<=t)return{dataUrl:A.toDataURL("image/jpeg",.85),region:h};let s=t/A.width,r=t,i=Math.round(A.height*s),n=document.createElement("canvas");n.width=r,n.height=i;let o=n.getContext("2d");return o?(o.drawImage(A,0,0,r,i),{dataUrl:n.toDataURL("image/jpeg",.85),region:h}):null}catch(A){return console.warn("[siteping] Screenshot capture failed:",A),null}}(A):null}activate(){if(this.isActive)return;this.isActive=!0;let A=!this.instantMode,e=TA(),t=RA(),s=this.t("annotator.instruction");this.preActiveFocusElement=document.activeElement;let r=document.activeElement;if(this.keyboardTarget=r instanceof HTMLElement&&r!==document.body&&r!==document.documentElement&&!vh(r)?Eh(r):this.getFallbackTarget?.()??null,this.savedOverflow=document.body.style.overflow,document.body.style.overflow="hidden",this.overlay=R("div",{style:`position:fixed;inset:0;z-index:2147483646;pointer-events:auto;background:rgba(15,23,42,0.04);cursor:${A?"crosshair":"default"};touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;`}),this.overlay.setAttribute("role","application"),this.overlay.setAttribute("aria-label",A?s:this.t("annotator.instantInstruction")),this.overlay.setAttribute("data-siteping-ignore","true"),A){this.toolbar=R("div",{style:`position:fixed;top:0;left:0;right:0;z-index:2147483647;pointer-events:auto;min-height:52px;box-sizing:border-box;padding:calc(env(safe-area-inset-top,0px) + 8px) ${e?"12px 8px 16px":"16px 8px"};background:${e?this.colors.bg:this.colors.glassBg};backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid ${this.colors.glassBorder};display:flex;align-items:center;justify-content:center;gap:${e?12:16}px;font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.35;color:${this.colors.text};box-shadow:0 4px 16px ${this.colors.shadow};-webkit-font-smoothing:antialiased;`}),this.toolbar.setAttribute("data-siteping-ignore","true");let A=R("span",{style:`width:8px;height:8px;border-radius:50%;flex-shrink:0;background:${this.colors.accent};box-shadow:0 0 8px ${this.colors.accentGlow};animation:pulse 1.5s ease-in-out infinite;`}),r=document.createElement("style");r.textContent=["@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.4}}","@media(prefers-reduced-motion:reduce){@keyframes pulse{from,to{opacity:1}}}"].join(""),this.toolbar.appendChild(r);let i=R("span",{style:"font-weight:500;letter-spacing:-0.01em;min-width:0;"});O(i,t?this.t("annotator.touchInstruction"):s);let n=document.createElement("button");n.style.cssText=`height:${t?40:34}px;padding:0 18px;border-radius:9999px;flex-shrink:0;border:1px solid ${this.colors.border};background:${this.colors.glassBg};color:${this.colors.textTertiary};font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s ease;`,O(n,this.t("annotator.cancel")),n.addEventListener("click",()=>this.cancelSession()),n.addEventListener("mouseenter",()=>{n.style.borderColor=this.colors.typeBug,n.style.color=this.colors.typeBug,n.style.background=this.colors.typeBugBg}),n.addEventListener("mouseleave",()=>{n.style.borderColor=this.colors.border,n.style.color=this.colors.textTertiary,n.style.background=this.colors.glassBg}),this.toolbar.appendChild(A),this.toolbar.appendChild(i),this.toolbar.appendChild(n)}A&&(this.overlay.addEventListener("mousedown",this.onMouseDown),this.overlay.addEventListener("mousemove",this.onMouseMove),this.overlay.addEventListener("mouseup",this.onMouseUp),this.overlay.addEventListener("touchstart",this.onTouchStart,{passive:!1}),this.overlay.addEventListener("touchmove",this.onTouchMove,{passive:!1}),this.overlay.addEventListener("touchend",this.onTouchEnd),this.overlay.addEventListener("keydown",this.onOverlayKeyDown)),this.overlay.setAttribute("tabindex","0"),document.addEventListener("keydown",this.onKeyDown),W(this.overlay),this.toolbar&&W(this.toolbar),document.body.appendChild(this.overlay),this.toolbar&&document.body.appendChild(this.toolbar),this.overlay.focus({preventScroll:!0})}toolbarInsets(){if(!this.toolbar)return Yh;let A=this.toolbar.getBoundingClientRect();if(0===A.height)return Yh;let e=window.innerHeight;return A.top+A.height/2<e/2?{top:Math.max(0,A.bottom),bottom:0}:{top:0,bottom:Math.max(0,e-A.top)}}cancelSession(){this.isActive&&(this.popup.dismiss(),!this.popup.isOpen&&this.deactivate())}deactivate(){if(!this.isActive)return;this.isActive=!1,this.isDrawing=!1,this.instantMode=!1;let A=this.preActiveFocusElement;this.preActiveFocusElement=null,this.keyboardTarget=null,null!==this.rafId&&(cancelAnimationFrame(this.rafId),this.rafId=null),this.pendingMoveEvent=null,document.body.style.overflow=this.savedOverflow,document.removeEventListener("keydown",this.onKeyDown),this.overlay?.remove(),this.toolbar?.remove(),this.drawingRect?.remove(),this.overlay=null,this.toolbar=null,this.drawingRect=null,A instanceof HTMLElement&&A.isConnected&&A.focus({preventScroll:!0}),this.bus.emit("annotation:end")}onKeyDown=A=>{"Escape"===A.key&&this.cancelSession()};onOverlayKeyDown=async A=>{if("Enter"!==A.key||(A.preventDefault(),this.popup.isOpen)||this.isDrawing)return;let e=this.keyboardTarget;!e||!(e instanceof HTMLElement)||await this.annotateElement(e)};async annotateElement(A,e=!1){let t=A.getBoundingClientRect();if(t.width<=0||t.height<=0)return;let s=new DOMRect(t.x,t.y,t.width,t.height);this.drawingRect?.remove();let r=this.createDrawingRect();r.style.left=`${t.x}px`,r.style.top=`${t.y}px`,r.style.width=`${t.width}px`,r.style.height=`${t.height}px`,this.drawingRect=r,this.overlay?.appendChild(r);let i={anchor:Vh(A),rect:{xPct:0,yPct:0,wPct:1,hPct:1},scrollX:window.scrollX,scrollY:window.scrollY,viewportW:window.innerWidth,viewportH:window.innerHeight,devicePixelRatio:window.devicePixelRatio},n=await this.openForm(i,s,e?eu(s):s);this.drawingRect?.remove(),this.drawingRect=null,n&&this.deactivate()}onMouseDown=A=>{this.startDrawing(A.clientX,A.clientY)};onTouchStart=A=>{A.preventDefault();let e=A.touches[0];e&&this.startDrawing(e.clientX,e.clientY)};startDrawing(A,e){this.popup.isOpen||(this.isDrawing=!0,this.startX=A,this.startY=e,this.drawingRect?.remove(),this.drawingRect=this.createDrawingRect(),this.overlay?.appendChild(this.drawingRect))}createDrawingRect(){let A=R("div",{style:`position:fixed;border:2px solid ${this.colors.accent};background:${this.colors.accent}12;pointer-events:none;border-radius:8px;box-shadow:0 0 16px ${this.colors.accentGlow};transition:box-shadow 0.15s ease;`});return A.setAttribute("data-siteping-ignore","true"),A}onMouseMove=A=>{this.scheduleRectUpdate(A)};onTouchMove=A=>{A.preventDefault(),A.touches[0]&&this.scheduleRectUpdate(A.touches[0])};scheduleRectUpdate(A){!this.isDrawing||!this.drawingRect||(this.pendingMoveEvent=A,null===this.rafId&&(this.rafId=requestAnimationFrame(()=>{this.rafId=null;let A=this.pendingMoveEvent;if(!A||!this.drawingRect)return;let e=Math.min(A.clientX,this.startX),t=Math.min(A.clientY,this.startY),s=Math.abs(A.clientX-this.startX),r=Math.abs(A.clientY-this.startY);this.drawingRect.style.left=`${e}px`,this.drawingRect.style.top=`${t}px`,this.drawingRect.style.width=`${s}px`,this.drawingRect.style.height=`${r}px`})))}onTouchEnd=async A=>{let e=A.changedTouches[0];if(e){if(this.isDrawing&&(Math.abs(e.clientX-this.startX)<10||Math.abs(e.clientY-this.startY)<10)){this.isDrawing=!1,this.drawingRect?.remove(),this.drawingRect=null;let A=this.elementAt(e.clientX,e.clientY);return void(A&&await this.annotateElement(A,!0))}await this.finishDrawing(e.clientX,e.clientY)}};elementAt(A,e){this.overlay&&(this.overlay.style.pointerEvents="none");let t=Xh(A,e);this.overlay&&(this.overlay.style.pointerEvents="auto");let s=t instanceof SVGElement?(t.ownerSVGElement??t).parentElement:t;return s instanceof HTMLElement&&s!==document.body&&s!==document.documentElement&&!vh(s)?s:null}onMouseUp=async A=>{await this.finishDrawing(A.clientX,A.clientY)};finishDrawing=async(A,e)=>{if(!this.isDrawing||!this.drawingRect)return;this.isDrawing=!1;let t=Math.min(A,this.startX),s=Math.min(e,this.startY),r=Math.abs(A-this.startX),i=Math.abs(e-this.startY);if(r<10||i<10)return this.drawingRect.remove(),void(this.drawingRect=null);let n=new DOMRect(t,s,r,i),{annotation:o}=this.buildAnnotation(n),a=await this.openForm(o,n);this.drawingRect?.remove(),this.drawingRect=null,a&&this.deactivate()};async startInstantAnnotation(A,e){if(this.isActive)return;this.instantMode=!0,this.bus.emit("annotation:start");let t=Math.max(0,Math.min(A-10,window.innerWidth-20)),s=Math.max(0,Math.min(e-10,window.innerHeight-20)),r=new DOMRect(t,s,20,20),{annotation:i,anchorBounds:n}=this.buildAnnotation(r),o=eu(n);this.drawingRect?.remove(),this.drawingRect=R("div",{style:`position:fixed;left:${t}px;top:${s}px;width:20px;height:20px;border:2px solid ${this.colors.accent};background:${this.colors.accent}12;pointer-events:none;border-radius:8px;box-shadow:0 0 16px ${this.colors.accentGlow};`}),this.drawingRect.setAttribute("data-siteping-ignore","true"),this.overlay?.appendChild(this.drawingRect),await this.openForm(i,r,o),this.drawingRect?.remove(),this.drawingRect=null,this.deactivate()}openForm(A,e,t=e){let s={clientId:k()},r=this.popup.show(e,e=>this.runSubmission(A,e,t,s),this.toolbarInsets());return this.revealSelection(e),r}revealSelection(A){let e=this.popup.sheetTop;if(null===e||!this.drawingRect)return;let t=Math.min(A.bottom+16-e,A.top-72);if(t<=0)return;let s=window.scrollY;window.scrollBy({top:t,behavior:"instant"}),this.drawingRect.style.top=A.top-(window.scrollY-s)+"px"}async runSubmission(A,e,t,s){void 0===s.screenshot&&(s.screenshot=await this.maybeCapture(new DOMRect(t.x+A.scrollX-window.scrollX,t.y+A.scrollY-window.scrollY,t.width,t.height)));let r=s.screenshot;await new Promise((t,i)=>{let n=()=>{o(),a(),l(),this.rejectPendingSubmission=null},o=this.bus.on("feedback:sent",()=>{n(),t()}),a=this.bus.on("feedback:error",A=>{n(),i(A)}),l=this.bus.on("submission:cancelled",()=>{n(),i(new Error("Feedback submission cancelled"))});this.rejectPendingSubmission=A=>{n(),i(A)},this.bus.emit("annotation:complete",{annotation:A,type:e.type,message:e.message,clientId:s.clientId,screenshotDataUrl:r?.dataUrl??null,screenshotRegion:r?.region??null})})}buildAnnotation(A){this.overlay&&(this.overlay.style.pointerEvents="none");let e=function(A,e=document.documentElement){let t=Xh(A.x+A.width/2,A.y+A.height/2);if(!t||t===e)return document.body;let s=t;for(;s&&s!==document.body;){if(s.hasAttribute(Rh)&&Gh(s,A))return s;s=Nh(s)}for(s=t;s&&s!==document.body;){if(Gh(s,A))return s;s=Nh(s)}return document.body}(A);this.overlay&&(this.overlay.style.pointerEvents="auto");let t=Vh(e),s=e.getBoundingClientRect(),r=function(A,e){return e.width<=0||e.height<=0?{xPct:0,yPct:0,wPct:1,hPct:1}:{xPct:(A.x-e.x)/e.width,yPct:(A.y-e.y)/e.height,wPct:A.width/e.width,hPct:A.height/e.height}}(A,s);return{annotation:{anchor:t,rect:r,scrollX:window.scrollX,scrollY:window.scrollY,viewportW:window.innerWidth,viewportH:window.innerHeight,devicePixelRatio:window.devicePixelRatio},anchorBounds:s}}destroy(){this.deactivate(),this.unregisterEscapeLayer(),this.rejectPendingSubmission?.(new Error("Annotator destroyed during submission")),this.popup.destroy()}};function su(A,e){let t=`siteping_own_feedback:${JSON.stringify([A,e??null])}`,s=()=>{try{let A=JSON.parse(localStorage.getItem(t)??"[]");return new Set(Array.isArray(A)?A.filter(A=>"string"==typeof A):[])}catch{return new Set}},r=A=>{try{A.size>0?localStorage.setItem(t,JSON.stringify([...A].slice(-500))):localStorage.removeItem(t)}catch{}};return{ids:s,add(A){let e=s();e.delete(A),r(e.add(A))},remove(...A){let e=s(),t=e.size;for(let t of A)e.delete(t);e.size<t&&r(e)},clear:()=>r(new Set)}}D();var ru=1e4,iu="siteping_retry_queue";function nu(A,e,t){let s,r=new Promise((A,r)=>{s=setTimeout(()=>r(t()),e)});return Promise.race([A,r]).finally(()=>clearTimeout(s))}async function ou(A,e){let t={};return e&&(t["Content-Type"]="application/json"),A.apiKey&&(t.Authorization=`Bearer ${A.apiKey}`),function(A,e){let t={...A};for(let[A,s]of Object.entries(e??{})){for(let e of Object.keys(t))e.toLowerCase()===A.toLowerCase()&&delete t[e];t[A]=s}return t}(t,"function"==typeof A.headers?await nu(Promise.resolve(A.headers()),ru,()=>new Error("headers factory did not settle within 10 s")):A.headers)}async function au(A,e,t,s,{boundBody:r=!1}={}){for(let i=0;;i++){let n=new AbortController,o=setTimeout(()=>n.abort(),ru);try{let a=await fetch(A,{...e,signal:n.signal}).catch(A=>{if(3===i)throw I(A,t);return null});if(a&&(a.ok||a.status>=400&&a.status<500||3===i)){if(clearTimeout(o),r&&(o=setTimeout(()=>n.abort(),ru)),!a.ok)throw await H(a,t);return await s(a).catch(A=>{throw I(A,t)})}}finally{clearTimeout(o)}let a=1e3*2**i,l=1e3*Math.random()-500;await new Promise(A=>setTimeout(A,a+l))}}function lu(A){return A>=500}async function cu(A){return typeof navigator<"u"&&navigator.locks?navigator.locks.request("siteping_retry_queue",()=>A()):A()}function du(A){if(!p(A,"endpoint")||"string"!=typeof A.endpoint||!p(A,"payload"))return!1;let{payload:e}=A;return p(e,"authorName")&&"string"==typeof e.authorName&&p(e,"authorEmail")&&"string"==typeof e.authorEmail}function pu(){let A,e=localStorage.getItem(iu);if(!e)return[];try{A=JSON.parse(e)}catch{return localStorage.removeItem(iu),console.warn(`[siteping] discarded an unreadable retry queue from localStorage (${e.length} chars)`),[]}return Array.isArray(A)?A.filter(du):[]}function hu(A){try{return localStorage.setItem(iu,JSON.stringify(A)),!0}catch{return!1}}function uu(A){return null!=A.payload.screenshotDataUrl}function gu(A){let{screenshotDataUrl:e,screenshotRegion:t,...s}=A.payload;return{endpoint:A.endpoint,payload:s}}function Bu(A){return A.trim()}function wu(A){return A.trim().toLowerCase()}function fu(A,e){let t=Math.min(1,Math.max(0,A)),s=e-(t-A);return[t,Math.max(0,t+s<=1?s:1-t)]}function mu(A){let[e,t]=fu(A.rect.xPct,A.rect.wPct),[s,r]=fu(A.rect.yPct,A.rect.hPct);return{...A,rect:{xPct:e,yPct:s,wPct:t,hPct:r}}}async function bu(A){return await A.json()}async function Cu(){}var yu=class{constructor(A,e,t={}){this.endpoint=A,this.projectName=e,this.auth=t}endpoint;projectName;auth;async headers(A,e){try{return await ou(this.auth,A)}catch(A){throw I(A,e)}}async sendFeedback(A){let e="Failed to send feedback",{screenshotRegion:t,...s}=A,r={...s,annotations:s.annotations.map(mu)},i=t?{...r,screenshotRegion:t}:r;try{let A=await au(this.endpoint,{method:"POST",headers:await this.headers(!0,e),body:JSON.stringify(i)},e,bu,{boundBody:!0});return a=i.clientId,cu(()=>{try{let A=pu(),e=A.filter(A=>A.payload.clientId!==a);if(e.length===A.length)return;e.length>0?localStorage.setItem(iu,JSON.stringify(e)):localStorage.removeItem(iu)}catch{}}),A}catch(A){throw function(A){return A instanceof o||A instanceof n&&"SERVER"===A.code}(A)&&function(A,e){cu(()=>{try{let t=pu().filter(A=>A.payload.clientId!==e.clientId);if(t.length>=20&&t.shift(),t.push({endpoint:A,payload:e}),hu(t))return;let s=t.slice(),r=0;for(let[A,e]of s.entries())if(uu(e)&&(s[A]=gu(e),r+=1,hu(s)))return void console.warn(`[siteping] retry queue exceeded the localStorage quota \u2014 dropped the screenshot of ${r} of ${t.length} queued feedback(s)`);for(;s.length>1;)if(s.shift(),hu(s)){let A=t.length-s.length,e=t.slice(A).filter(uu).length;return void console.warn(`[siteping] retry queue exceeded the localStorage quota \u2014 dropped the ${A} oldest of ${t.length} queued feedback(s)${e>0?`, and the screenshot of ${e} of the rest`:""}`)}console.warn("[siteping] feedback could not be queued for retry \u2014 localStorage is full or unavailable")}catch{}})}(this.endpoint,i),A}var a}async getFeedbacks(A,e){let t="Failed to fetch feedbacks",s=function(A){let e=new URLSearchParams({projectName:A.projectName});return A.page&&e.set("page",String(A.page)),A.limit&&e.set("limit",String(A.limit)),A.type&&e.set("type",A.type),A.status&&e.set("status",A.status),A.statuses?.length&&e.set("statuses",A.statuses.join(",")),A.search&&e.set("search",A.search),A.url&&e.set("url",A.url),A.urlPattern&&e.set("urlPattern",A.urlPattern),e}({projectName:A,...e}),r=await this.headers(!1,t);return au(function(A,e){let t=e.toString();if(!t)return A;let s=A.includes("#")?A.indexOf("#"):A.length,r=A.slice(0,s),i=/[?&]$/.test(r)?"":r.includes("?")?"&":"?";return r+i+t+A.slice(s)}(this.endpoint,s),{method:"GET",cache:"no-store",...Object.keys(r).length>0?{headers:r}:{}},t,bu)}async addComment(A,e){let t="Failed to post comment";return au(this.endpoint,{method:"POST",headers:await this.headers(!0,t),body:JSON.stringify({...e,projectName:this.projectName,feedbackId:A})},t,bu,{boundBody:!0})}async resolveFeedback(A,e){let t="Failed to update feedback";return au(this.endpoint,{method:"PATCH",headers:await this.headers(!0,t),body:JSON.stringify({id:A,projectName:this.projectName,status:e?"resolved":"open"})},t,bu)}async deleteFeedback(A){let e="Failed to delete feedback";await au(this.endpoint,{method:"DELETE",headers:await this.headers(!0,e),body:JSON.stringify({id:A,projectName:this.projectName})},e,Cu)}async deleteAllFeedbacks(A){let e="Failed to delete all feedbacks";await au(this.endpoint,{method:"DELETE",headers:await this.headers(!0,e),body:JSON.stringify({projectName:A,deleteAll:!0})},e,Cu)}};function Qu(A,e){if(A.length<=e)return A;let t=e-1,s=A.charCodeAt(t-1);return s>=55296&&s<=56319&&(t-=1),`${A.slice(0,t)}\u2026`}var xu=["log","info","warn","error"];function Fu(A){if(null===A)return"null";if(void 0===A)return"undefined";if("string"==typeof A)return A;if("number"==typeof A||"boolean"==typeof A||"bigint"==typeof A)return String(A);if(A instanceof Error)return`${A.name}: ${A.message}${A.stack?`\n${A.stack}`:""}`;try{let e=[],t=500;return JSON.stringify(A,function(A,s){if(!(--t<0)){if("function"==typeof s)return"[Function]";if("symbol"==typeof s)return s.toString();if("object"!=typeof s||null===s)return s;for(;e.length>0&&e[e.length-1]!==this;)e.pop();return e.includes(s)?"[Circular]":(e.push(s),s)}})}catch{try{return String(A)}catch{return"[Unserializable]"}}}function Uu(A){let e="";for(let t=0;t<A.length&&(t>0&&(e+=" "),e+=Fu(A[t]),!(e.length>=500));t++);return Qu(e,500)}var vu=class{maxEntries;entries=[];originals=new Map;wrappers=new Map;disposed=!1;constructor(A=50){if(this.maxEntries=Number.isFinite(A)&&A>=0?Math.min(Math.floor(A),50):50,!(typeof console>"u"))for(let A of xu){let e=console[A];if("function"!=typeof e)continue;this.originals.set(A,e);let t=this,s=function(...s){try{t.push(A,s)}catch{}e.apply(this??console,s)};try{Object.defineProperty(s,"name",{value:A})}catch{}this.wrappers.set(A,s),console[A]=s}}push(A,e){0!==this.maxEntries&&(this.entries.length>=this.maxEntries&&this.entries.shift(),this.entries.push({level:A,timestamp:(new Date).toISOString(),message:Uu(e)}))}getEntries(){return this.entries.slice()}dispose(){if(this.disposed||(this.disposed=!0,typeof console>"u"))return;let A=console;for(let[e,t]of this.originals)if(A[e]===this.wrappers.get(e))try{A[e]=t}catch{}this.originals.clear(),this.wrappers.clear()}};function Eu(A){let e=function(A){try{let e=new URL(A,typeof location>"u"?void 0:location.href);return e.username||e.password?(e.username="",e.password="",e.href):A}catch{return A}}(function(A){if("string"==typeof A)return A;if(A instanceof URL)return A.href;if("object"==typeof A&&null!==A&&"url"in A){let e=A.url;if("string"==typeof e)return e}try{return String(A)}catch{return"(unknown)"}}(A)),t=e.search(/[?#]/);return Qu(-1===t?e:e.slice(0,t),2e3)}var ku=class{maxEntries;entries=[];originalFetch=null;originalXhrOpen=null;originalXhrSend=null;wrappedFetch=null;wrappedXhrOpen=null;wrappedXhrSend=null;disposed=!1;constructor(A=20){this.maxEntries=Number.isFinite(A)&&A>=0?Math.min(Math.floor(A),20):20,this.installFetch(),this.installXhr()}push(A){0!==this.maxEntries&&(this.entries.length>=this.maxEntries&&this.entries.shift(),this.entries.push({...A,method:A.method.slice(0,20),status:A.status<=599?A.status:0,durationMs:Math.min(Math.max(A.durationMs,0),6e5)}))}installFetch(){if("function"!=typeof globalThis.fetch)return;let A=globalThis.fetch;this.originalFetch=A;let e=async(e,t)=>{let s=new Date,r=typeof performance<"u"?performance.now():Date.now(),i=Eu(e),n=(t?.method??(e instanceof Request?e.method:"GET")).toUpperCase();try{let o=await A(e,t);if(!o.ok){let A=typeof performance<"u"?performance.now():Date.now();this.push({url:i,method:n,status:o.status,durationMs:Math.round(A-r),timestamp:s.toISOString()})}return o}catch(A){let e=typeof performance<"u"?performance.now():Date.now();throw this.push({url:i,method:n,status:0,durationMs:Math.round(e-r),timestamp:s.toISOString()}),A}};this.wrappedFetch=e,globalThis.fetch=e}installXhr(){if(typeof XMLHttpRequest>"u")return;let A=XMLHttpRequest.prototype,e=A.open,t=A.send;this.originalXhrOpen=e,this.originalXhrSend=t;let s=this,r=new WeakMap,i=function(A,t,...s){try{r.set(this,{method:A.toUpperCase(),url:Eu(t),startedAt:new Date,t0:typeof performance<"u"?performance.now():Date.now()})}catch{}return e.call(this,A,t,...s)},n=function(A){let e=r.get(this);if(e){let A=()=>{try{let A=typeof performance<"u"?performance.now():Date.now(),t=this.status;(0===t||t>=400)&&s.push({url:e.url,method:e.method,status:t,durationMs:Math.round(A-e.t0),timestamp:e.startedAt.toISOString()})}catch{}};try{this.addEventListener("loadend",A,{once:!0})}catch{try{this.addEventListener("loadend",A)}catch{}}}return t.call(this,A??null)};this.wrappedXhrOpen=i,this.wrappedXhrSend=n,A.open=i,A.send=n}getEntries(){return this.entries.slice()}dispose(){if(!this.disposed){if(this.disposed=!0,this.originalFetch&&globalThis.fetch===this.wrappedFetch)try{globalThis.fetch=this.originalFetch}catch{}if(typeof XMLHttpRequest<"u")try{let A=XMLHttpRequest.prototype;this.originalXhrOpen&&A.open===this.wrappedXhrOpen&&(A.open=this.originalXhrOpen),this.originalXhrSend&&A.send===this.wrappedXhrSend&&(A.send=this.originalXhrSend)}catch{}}}},Hu=class{listeners=new Map;on(A,e){let t=this.listeners.get(A);return t||(t=new Set,this.listeners.set(A,t)),t.add(e),()=>{t?.delete(e)}}off(A,e){this.listeners.get(A)?.delete(e)}emit(A,...e){let t=this.listeners.get(A);if(t)for(let s of t)try{s(...e)}catch(e){console.error(`[siteping] Error in event listener for "${String(A)}":`,e)}}removeAll(){this.listeners.clear()}};$(),UA(),ap(),vA(),PA();var Iu={chat:"fab.messages",annotate:"fab.annotate","toggle-annotations":"fab.annotations"},Su=class{constructor(A,e,t,s){this.bus=t,this.t=s;let r=e.position??"bottom-right";this.items=[{id:"chat",icon:xA},{id:"annotate",icon:FA}],!1!==e.showAnnotationsToggle&&this.items.push({id:"toggle-annotations",icon:lA,iconAlt:cA}),this.fab=document.createElement("button"),this.fab.className=`sp-fab sp-fab--${r} sp-anim-fab-in`,this.fab.style.position="fixed",this.fab.appendChild(T(aA)),this.fab.setAttribute("aria-expanded","false"),this.fab.addEventListener("click",()=>this.toggle()),this.radialContainer=document.createElement("div"),this.radialContainer.className=`sp-radial sp-radial--${r}`,this.radialContainer.setAttribute("role","menu");for(let A=0;A<this.items.length;A++){let e=this.items[A];if(!e)continue;let t=document.createElement("button");t.className="sp-radial-item",t.style.setProperty("--sp-i",String(A)),t.appendChild(T(e.icon)),t.setAttribute("role","menuitem"),t.dataset.itemId=e.id,t.addEventListener("click",A=>{A.stopPropagation(),this.handleItemClick(e.id)});let s=document.createElement("span");s.className="sp-radial-label",t.appendChild(s),this.radialContainer.appendChild(t)}this.scrim=document.createElement("div"),this.scrim.className="sp-scrim",this.scrim.addEventListener("click",()=>this.close()),this.root=document.createElement("div"),this.root.appendChild(this.scrim),this.root.appendChild(this.radialContainer),this.root.appendChild(this.fab),A.appendChild(this.root),this.applyLabels();let i=A.host;this.onDocumentClick=A=>{this.isOpen&&!A.composedPath().includes(i)&&this.close()},document.addEventListener("click",this.onDocumentClick,!0);let n=A=>{"Escape"===A.key&&this.isOpen&&(A.stopPropagation(),this.close())};this.fab.addEventListener("keydown",n),this.radialContainer.addEventListener("keydown",n),z(this.root,()=>this.isOpen),this.radialContainer.addEventListener("keydown",e=>{let t=Array.from(this.radialContainer.querySelectorAll(".sp-radial-item"));if(0===t.length||!this.isOpen)return;let s=A.activeElement??document.activeElement,r=t.indexOf(s);switch(e.key){case"ArrowUp":{e.preventDefault();let A=r<=0?t.length-1:r-1;t[A]?.focus();break}case"ArrowDown":{e.preventDefault();let A=r>=t.length-1?0:r+1;t[A]?.focus();break}case"Home":e.preventDefault(),t[0]?.focus();break;case"End":e.preventDefault(),t[t.length-1]?.focus()}})}bus;t;root;scrim;fab;radialContainer;badgeEl=null;isOpen=!1;annotationsVisible=!0;items;onDocumentClick;refreshLabels(){this.applyLabels()}applyLabels(){this.fab.setAttribute("aria-label",this.t("fab.aria"));let A=this.radialContainer.querySelectorAll(".sp-radial-item");for(let e of A){let A=e.dataset.itemId;if(!A)continue;let t=Iu[A];if(!t)continue;let s=this.t(t);e.setAttribute("aria-label",s);let r=e.querySelector(".sp-radial-label");r&&O(r,s)}}updateBadge(A){if(A<=0)return this.badgeEl?.remove(),void(this.badgeEl=null);this.badgeEl||(this.badgeEl=document.createElement("span"),this.badgeEl.className="sp-fab-badge",this.badgeEl.setAttribute("role","status"),this.badgeEl.setAttribute("aria-live","polite"),this.fab.appendChild(this.badgeEl));let e=A>99?"99+":String(A);O(this.badgeEl,e),this.badgeEl.setAttribute("aria-label",op(this.t,"fab.badge",{count:A}))}toggle(){this.isOpen?this.close():this.open()}open(){this.isOpen=!0,this.setFabIcon(dA),this.fab.setAttribute("aria-expanded","true"),this.scrim.classList.add("sp-scrim--open");let A=RA()?60:54;this.radialContainer.querySelectorAll(".sp-radial-item").forEach((e,t)=>{let s=-(16+A*(t+1));e.style.transform=`translate(0px, ${s}px) scale(1)`,e.classList.add("sp-radial-item--open")}),requestAnimationFrame(()=>{this.radialContainer.querySelector(".sp-radial-item")?.focus()})}close(){this.isOpen=!1,this.setFabIcon(aA),this.fab.setAttribute("aria-expanded","false"),this.scrim.classList.remove("sp-scrim--open"),this.radialContainer.querySelectorAll(".sp-radial-item").forEach(A=>{A.style.transform="translate(0, 0) scale(0.8)",A.classList.remove("sp-radial-item--open")}),this.fab.focus()}setFabIcon(A){let e=this.badgeEl;this.fab.replaceChildren(T(A)),e&&this.fab.appendChild(e)}handleItemClick(A){switch(this.close(),A){case"chat":this.bus.emit("panel:toggle",!0);break;case"annotate":{let A=this.bus.on("annotation:end",()=>{A(),this.fab.focus()});this.bus.emit("annotation:start");break}case"toggle-annotations":{this.annotationsVisible=!this.annotationsVisible,this.bus.emit("annotations:toggle",this.annotationsVisible);let A=this.radialContainer.querySelector('[data-item-id="toggle-annotations"]')?.querySelector("svg");if(A){let e=T(this.annotationsVisible?lA:cA);A.replaceWith(e)}break}}}destroy(){document.removeEventListener("click",this.onDocumentClick,!0),this.root.remove()}};UA(),ap(),D();var Lu="siteping_identity";function Mu(){try{let A=localStorage.getItem(Lu);if(!A)return null;let e=JSON.parse(A);return function(A){if(!p(A,"name")||!p(A,"email"))return!1;let{name:e,email:t}=A;return"string"==typeof e&&"string"==typeof t&&e.length>0&&e.length<=f&&t.length<=f&&r(t)}(e)?e:null}catch{return null}}function Du(A){return A.normalize("NFC").replace(/\s+/g," ").trim()}function Ku(A){return A.replace(/\s+/g," ").trim()}function Tu(A,e){if(A===e)return 1;let t=Math.max(A.length,e.length);return 0===t?1:1-function(A,e){if(A===e)return 0;if(0===A.length)return e.length;if(0===e.length)return A.length;if(A.length>e.length){let t=A;A=e,e=t}let t=A.length,s=e.length,r=new Array(t+1);for(let A=0;A<=t;A++)r[A]=A;let i=new Array(t+1);for(let n=1;n<=s;n++){i[0]=n;for(let s=1;s<=t;s++){let t=r[s-1];i[s]=A[s-1]===e[n-1]?t:1+Math.min(t,r[s],i[s-1])}let s=r;r=i,i=s}return r[t]}(A,e)/t}function Ru(A){let e=new Map;for(let t=0;t<A.length-1;t++){let s=A.charCodeAt(t)<<16|A.charCodeAt(t+1);e.set(s,(e.get(s)??0)+1)}return e}function Ou(A,e,t){let s=t.length-1;if(e<=0||s<=0)return 0;let r=0,i=new Map;for(let e=0;e<t.length-1;e++){let s=t.charCodeAt(e)<<16|t.charCodeAt(e+1),n=A.get(s);if(void 0===n)continue;let o=i.get(s)??0;o<n&&(i.set(s,o+1),r++)}return 2*r/(e+s)}function Pu(A,e,t){if(e<=0)return 0;let s=t.split(" "),r=s.length-1;if(r<=0)return 0;let i=0,n=new Map;for(let e=0;e<s.length-1;e++){let t=`${s[e]} ${s[e+1]}`,r=A.get(t);if(void 0===r)continue;let o=n.get(t)??0;o<r&&(n.set(t,o+1),i++)}return 2*i/(e+r)}D();var Nu={checkOpacity:!0,opacityProperty:!0,checkVisibilityCSS:!0,visibilityProperty:!0};function Vu(A){if(!A.isConnected)return"hidden";if("function"==typeof A.checkVisibility)return A.checkVisibility(Nu)?"visible":A.checkVisibility()?"soft-hidden":"hidden";if(A.getClientRects().length>0)try{return"visible"===getComputedStyle(A).visibility?"visible":"soft-hidden"}catch{return"visible"}let e=A.firstElementChild;return e&&e.getClientRects().length>0?"visible":0===A.ownerDocument.documentElement.getClientRects().length?"unknown":"hidden"}var Gu={anchorKey:1,id:1,css:.95,xpath:.9,scan:.85};function Xu(A,e){return Du((A??"").slice(0,2e3)).slice(0,e)}function $u(A,e){let t=function(A){let e=Xu(A.textSnippet,500),t=function(A){let e=new Map,t=A.split(" ");for(let A=0;A<t.length-1;A++){let s=`${t[A]} ${t[A+1]}`;e.set(s,(e.get(s)??0)+1)}return e}(e),s=0;for(let A of t.values())s+=A;return{snippet:e,snippetBigrams:Ru(e),snippetBigramTotal:Math.max(0,e.length-1),snippetWordPairs:t,snippetWordPairTotal:s,prefix:Xu(A.textPrefix,128),suffix:Xu(A.textSuffix,128),neighbor:Xu(A.neighborText,128),fingerprint:(A.fingerprint??"").slice(0,64),tag:"string"==typeof A.elementTag?A.elementTag:""}}(A),{pool:s,treeRoots:r}=function(A){let e=new Map,t=(t,s,r)=>{!t||e.has(t)||r&&t.tagName!==A.elementTag||e.set(t,s)},s="string"==typeof A.cssSelector?A.cssSelector.split(Oh):[],r=s[s.length-1]??A.cssSelector,i=s.length>1?function(A){let e=[],t=[document];for(let s of A){let A;try{A=Yu(t,s)}catch{return[]}let r=[];for(let e of A)e.shadowRoot&&r.push(e.shadowRoot);if(0===r.length)return[];e.push(r),t=r}return e}(s.slice(0,-1)):null,n=i?i[i.length-1]??[]:[document],o=i?[document,...i.flat()]:n;if(A.anchorKey){let e=A.anchorKey.replace(/\\/g,"\\\\").replace(/"/g,'\\"');try{for(let A of Yu(o,`[${Rh}="${e}"]`))t(A,"anchorKey",!1)}catch{}}if(A.elementId){let e=A.elementId.replace(/\\/g,"\\\\").replace(/"/g,'\\"');try{for(let A of Yu(n,`[id="${e}"]`))t(A,"id",!0)}catch{for(let e of n)t(e.getElementById(A.elementId),"id",!0)}}try{for(let A of Yu(n,r))t(A,"css",!0)}catch{}if(i)return{pool:e,treeRoots:n};try{let e=document.evaluate(A.xpath,document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null),s=Math.min(e.snapshotLength,16);for(let A=0;A<s;A++){let s=e.snapshotItem(A);s instanceof Element&&t(s,"xpath",!0)}}catch{}return{pool:e,treeRoots:n}}(A),i=[];for(let[A,e]of s){let s=Wu(A,e,t);s&&i.push(s)}let n=0,o=!1;for(let A of i)A.final>n&&(n=A.final),("id"===A.strategy||"anchorKey"===A.strategy)&&1===A.visibility&&(A.signals?.text??0)>=.8&&(void 0===A.signals?.fingerprint||A.signals.fingerprint>=.8)&&(o=!0);let a=!!(t.snippet||t.fingerprint||t.prefix||t.suffix||t.neighbor),l=e?.scanBudget;if(a&&r.length>0&&n<Gu.scan&&!o)if(l&&l.remaining<=0)l.starved=!0;else{l&&l.remaining--;for(let A of function(A,e,t){let s=A.tag.toLowerCase();if(!s)return[];let r=[];try{for(let A of t){let e=A.querySelectorAll(s);for(let A=0;A<e.length&&r.length<1e4;A++){let t=e[A];t&&r.push(t)}if(1e4===r.length)break}}catch{return[]}let i=A.fingerprint.split(":"),n=3===i.length?Number(i[0]):Number.NaN,o=3===i.length?i[2]??"":"",a=[];for(let t of r){if(e.has(t))continue;let s=0;if(A.snippetBigramTotal>0){let e=Ku(Dh(t,500)),r=Ou(A.snippetBigrams,A.snippetBigramTotal,e);A.snippetWordPairTotal>0?s+=.6*(.5*r+.5*(r>0?Pu(A.snippetWordPairs,A.snippetWordPairTotal,e):0)):s+=.6*r}if(o&&Uh(t)===o&&(s+=.25),!Number.isNaN(n)){let A=Math.abs(t.children.length-n);0===A?s+=.15:A<=2&&(s+=.07)}a.push({element:t,cheap:s})}return a.sort((A,e)=>e.cheap-A.cheap),a.slice(0,24).map(A=>A.element)}(t,s,r)){let e=Wu(A,"scan",t);e&&i.push(e)}}let c=i.filter(Ju);if(0===c.length)return null;c.sort((A,e)=>e.final-A.final);let d=function(A){let e=A[0],t=A.filter(A=>e.final-A.final<=.05&&(A===e||e.element.contains(A.element))),s=e;for(let A of t)A!==s&&s.element.contains(A.element)&&(s=A);return s}(c);return{element:d.element,confidence:zu(d),strategy:d.strategy}}function Yu(A,e){let t=[];for(let s of A){let A=s.querySelectorAll(e);for(let e=0;e<A.length&&t.length<16;e++){let s=A[e];s&&t.push(s)}if(16===t.length)break}return t}function Wu(A,e,t){let s=function(A,e){let t=0,s=0,r={blend:0,strongest:0};if(e.snippet){s+=40;let i=Du(Dh(A,500));r.text=function(A,e,t=.6){if(!e||!A)return 0;if(A.includes(e))return 1;let s=A.length>500?A.slice(0,500):A;if(e.length>s.length){let A=Tu(s,e);return A>=t?A:0}if(e.length<8&&s.length>64)return 0;let r=1-function(A,e){let t=e.length,s=new Int32Array(t+1),r=new Int32Array(t+1);for(let A=0;A<=t;A++)s[A]=A;let i=t;for(let n=1;n<=A.length;n++){r[0]=0;let o=A.charCodeAt(n-1);for(let A=1;A<=t;A++){let t=s[A-1]+(e.charCodeAt(A-1)===o?0:1),i=s[A]+1,n=r[A-1]+1;r[A]=Math.min(t,i,n)}let a=r[t];a<i&&(i=a);let l=s;s=r,r=l}return i}(s,e)/e.length;return r>=t?r:0}(i,e.snippet,.5),t+=40*r.text}if(e.fingerprint&&(s+=20,r.fingerprint=function(A,e){let t=e.split(":");if(3!==t.length)return 0;let[s,r,i]=t,n=Number(s),o=Number(r);if(Number.isNaN(n)||Number.isNaN(o))return 0;let a=Fh(A),[l,c,d]=a.split(":"),p=0,h=Math.abs(Number(l)-n);0===h?p+=.2:h<=2?p+=.1:h<=5&&(p+=.03);let u=Math.abs(Number(c)-o);return 0===u?p+=.4:1===u?p+=.2:u<=3&&(p+=.08),d===i&&(p+=.4),p}(A,e.fingerprint),t+=20*r.fingerprint),e.prefix||e.suffix){s+=20;let i=0,n=0;if(e.prefix){let t=Du(Lh(A,"before"));i+=t?Tu(t,e.prefix):0,n++}if(e.suffix){let t=Du(Lh(A,"after"));i+=t?Tu(t,e.suffix):0,n++}n>0&&(r.context=i/n,t+=20*r.context)}if(e.neighbor){s+=20;let i=Du(Mh(A));r.neighbor=i?Tu(i,e.neighbor):0,t+=20*r.neighbor}return 0===s?null:(r.blend=t/s,r.strongest=Math.max(r.text??0,r.fingerprint??0,r.context??0,r.neighbor??0),r)}(A,t),r=function(A){switch(A){case"hidden":return.3;case"soft-hidden":return.6;default:return 1}}(Vu(A));return null===s?"scan"===e?null:{element:A,strategy:e,verification:.6,strongest:.6,visibility:r,final:.6*Gu[e]*r,unverified:!0}:{element:A,strategy:e,verification:s.blend,strongest:s.strongest,signals:s,visibility:r,final:Gu[e]*s.blend*r}}function Ju(A){if("scan"===A.strategy)return A.verification>=.4;if(A.unverified||!A.signals)return!0;let e=A.signals;return void 0===e.text||e.text>=.5||(e.fingerprint??0)>=.6||(e.context??0)>=.6||(e.neighbor??0)>=.6}function zu(A){return"scan"===A.strategy?Math.min(A.verification,Gu.scan):A.unverified?Gu[A.strategy]:Gu[A.strategy]*Math.min(1,A.strongest/.8)}function _u(A,e,t){let s=$u(A,t);if(!s)return null;let r=s.element.getBoundingClientRect(),i=new DOMRect(r.x+e.xPct*r.width,r.y+e.yPct*r.height,e.wPct*r.width,e.hPct*r.height);return{element:s.element,rect:i,confidence:s.confidence,strategy:s.strategy}}function ju(A){return{cssSelector:A.cssSelector,xpath:A.xpath,textSnippet:A.textSnippet,elementTag:A.elementTag,elementId:A.elementId??void 0,textPrefix:A.textPrefix,textSuffix:A.textSuffix,fingerprint:A.fingerprint,neighborText:A.neighborText,anchorKey:A.anchorKey??null}}function Zu(A){return{xPct:A.xPct,yPct:A.yPct,wPct:A.wPct,hPct:A.hPct}}function qu(A){return{top:A.top+window.scrollY-13,left:A.right+window.scrollX-13}}function Ag(A,e){let t=A.entries[e],s=A.elementIndices[e];if(t&&void 0!==s)return t.elements[s]}function eg(A){let e=A.elementIndices[0];return void 0===e?void 0:A.entries[0]?.positions[e]}$(),UA(),ap(),DA(),PA();var tg=class{constructor(A,e,t,s,r=null){this.colors=A,this.tooltip=e,this.bus=t,this.t=s,this.liveRegion=r,this.container=R("div",{style:"position:absolute;top:0;left:0;pointer-events:none;z-index:2147483646;"}),this.container.id="siteping-markers",W(this.container),document.body.appendChild(this.container),this.bus.on("annotations:toggle",A=>{this.container.style.display=A?"block":"none"}),this.resizeHandler=()=>this.scheduleReposition("resize"),window.addEventListener("resize",this.resizeHandler,{passive:!0}),this.scrollHandler=()=>this.scheduleReposition("scroll"),window.addEventListener("scroll",this.scrollHandler,{passive:!0,capture:!0}),this.mutationObserver=new MutationObserver(A=>{let e=!1;for(let t of A)if(!this.container.contains(t.target)&&!this.tooltip.contains(t.target)){e=!0;break}e&&this.scheduleReposition("mutation")}),this.mutationObserver.observe(document.body,{childList:!0,subtree:!0,attributes:!1,characterData:!1}),this.onDocumentClickForClusters=A=>{this.container.contains(A.target)||this.collapseAllClusters()},document.addEventListener("click",this.onDocumentClickForClusters,!0)}colors;tooltip;bus;t;liveRegion;container;entries=[];highlightElements=[];pinnedFeedback=null;onDocumentClick=null;repositionTimer=null;mutationObserver=null;scrollHandler=null;resizeHandler=null;anchorCache=new Map;pendingLayoutChange=!1;pendingResize=!1;hiddenRecheckAt=new Map;clusters=[];onDocumentClickForClusters=null;lastOpenCount=-1;get count(){return this.entries.length}get openCount(){let A=0;for(let e of this.entries)u(e.feedback.status)||A++;return A}scheduleReposition(A="mutation"){"scroll"!==A&&(this.pendingLayoutChange=!0),"resize"===A&&(this.pendingResize=!0),!this.repositionTimer&&("requestIdleCallback"in window?this.repositionTimer=window.requestIdleCallback(()=>{this.repositionTimer=null,this.repositionAll()},{timeout:300}):this.repositionTimer=+setTimeout(()=>{this.repositionTimer=null,this.repositionAll()},200))}repositionAll(){let A=this.pendingLayoutChange,e=this.pendingResize;this.pendingLayoutChange=!1,this.pendingResize=!1,e&&this.hiddenRecheckAt.clear();let t=Date.now(),s={remaining:2,starved:!1},r=new Set,i=!1;for(let e of this.entries)for(let n=0;n<e.feedback.annotations.length;n++){let o=e.elements[n];if(!o)continue;let a=e.feedback.annotations[n];if(!a)continue;let l=`${e.feedback.id}:${n}`;r.add(l);let c,d=this.anchorCache.get(l)?.deref(),p=(this.hiddenRecheckAt.get(l)??0)>t,h=d?.isConnected&&(p||!(A&&"hidden"===Vu(d)));if(d&&h){let A=d.getBoundingClientRect(),e=Zu(a);c={element:d,rect:new DOMRect(A.left+e.xPct*A.width,A.top+e.yPct*A.height,e.wPct*A.width,e.hPct*A.height),confidence:1,strategy:"css"}}else p?c=null:(s.starved=!1,c=_u(ju(a),Zu(a),{scanBudget:s}),s.starved||(c?.element&&this.anchorCache.set(l,new WeakRef(c.element)),c&&"hidden"!==Vu(c.element)?this.hiddenRecheckAt.delete(l):this.hiddenRecheckAt.set(l,t+3e3)));let u="none"!==o.style.display;c?(u||(i=!0),e.positions[n]=qu(c.rect),o.style.display="flex",this.applyConfidenceStyle(o,c.confidence,e.feedback)):(u&&(i=!0),o.style.display="none")}for(let A of this.anchorCache.keys())r.has(A)||this.anchorCache.delete(A);for(let A of this.hiddenRecheckAt.keys())r.has(A)||this.hiddenRecheckAt.delete(A);i&&this.buildClusters(),this.applyClusterPositions(),this.pinnedFeedback&&this.showHighlight(this.pinnedFeedback)}applyClusterPositions(){for(let A of this.clusters)A.expanded?this.applyFanPositions(A):this.applyStackPositions(A)}emitMarkersChanged(){let A=this.openCount;A!==this.lastOpenCount&&(this.lastOpenCount=A,this.bus.emit("markers:changed",A))}render(A){this.clear(),A.forEach((A,e)=>{let t=this.buildEntry(A,e+1);this.entries.push(t)}),this.buildClusters(),this.liveRegion&&this.entries.length>0&&(this.liveRegion.textContent=op(this.t,"marker.count",{count:this.entries.length})),this.emitMarkersChanged()}addFeedback(A,e){let t=this.buildEntry(A,e);for(let A of t.elements)A.style.animation="sp-marker-in 0.35s cubic-bezier(0.34,1.56,0.64,1) both";this.entries.push(t),this.buildClusters(),this.emitMarkersChanged()}buildEntry(A,e){let t={feedback:A,elements:[],positions:[]};for(let s of A.annotations){let r=_u(ju(s),Zu(s)),i=r?qu(r.rect):{top:0,left:0},n=this.createMarker(e,A,i);r?this.applyConfidenceStyle(n,r.confidence,A):n.style.display="none",this.container.appendChild(n),t.elements.push(n),t.positions.push(i)}return t}buildClusters(){for(let A of this.container.querySelectorAll(".sp-cluster-badge"))A.remove();let A=[];for(let e of this.entries)for(let t=0;t<e.elements.length;t++){let s=e.positions[t];!s||"none"===e.elements[t]?.style.display||A.push({entry:e,elIdx:t,pos:s})}let e=new Set;this.clusters=[];for(let t=0;t<A.length;t++){if(e.has(t))continue;let s=A[t];if(!s)continue;let r={entries:[s.entry],elementIndices:[s.elIdx],expanded:!1};e.add(t);for(let i=t+1;i<A.length;i++){if(e.has(i))continue;let t=s.pos,n=A[i];if(!n)continue;let o=n.pos;Math.sqrt((t.left-o.left)**2+(t.top-o.top)**2)<28&&(r.entries.push(n.entry),r.elementIndices.push(n.elIdx),e.add(i))}this.clusters.push(r)}for(let A of this.clusters)A.entries.length<=1||(this.applyStackPositions(A),this.addClusterBadge(A))}applyStackPositions(A){let e=eg(A);if(!e)return;let{top:t,left:s}=e,r=A.entries.length<=1;for(let e=0;e<A.entries.length;e++){let i=Ag(A,e);i&&(i.style.top=`${t+(r?0:3*e)}px`,i.style.left=`${s+(r?0:3*e)}px`,i.style.zIndex=String(e+1))}}applyFanPositions(A){let e=eg(A);if(!e)return;let{top:t,left:s}=e,r=A.entries.length,i=s-32*(r-1)/2;for(let e=0;e<r;e++){let s=Ag(A,e);s&&(s.style.top=`${t}px`,s.style.left=`${i+32*e}px`,s.style.zIndex=String(10+e))}}addClusterBadge(A){let e=Ag(A,A.entries.length-1);if(!e)return;let t=R("div",{class:"sp-cluster-badge",style:`position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:9999px;background:${this.colors.accent};color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:1.5px solid #fff;pointer-events:none;font-family:"Inter",system-ui,-apple-system,sans-serif;line-height:1;`});O(t,String(A.entries.length)),e.appendChild(t)}setBadgesVisible(A,e){for(let t=0;t<A.entries.length;t++){let s=Ag(A,t)?.querySelector(".sp-cluster-badge");s&&(s.style.display=e?"flex":"none")}}findCluster(A){for(let e of this.clusters)if(!(e.entries.length<=1))for(let t=0;t<e.entries.length;t++)if(Ag(e,t)===A)return e;return null}handleClusterClick(A,e){let t=this.findCluster(A);return!!t&&!t.expanded&&(e.stopPropagation(),this.collapseAllClusters(),t.expanded=!0,this.applyFanPositions(t),this.setBadgesVisible(t,!1),!0)}collapseCluster(A){A.expanded&&(A.expanded=!1,this.applyStackPositions(A),this.setBadgesVisible(A,!0))}collapseAllClusters(){for(let A of this.clusters)this.collapseCluster(A)}applyConfidenceStyle(A,e,t){let s=u(t.status);e<.7&&!s?(A.style.borderStyle="dashed",A.style.opacity="0.7",A.title=op(this.t,"marker.approximate",{confidence:Math.round(100*e)})):(A.style.borderStyle="solid",A.style.opacity="1",A.title="")}createMarker(A,e,t){let s=kA(e.type,this.colors),r=u(e.status),i=R("div",{style:`position:absolute;top:${t.top}px;left:${t.left}px;width:26px;height:26px;border-radius:50%;background:${r?"rgba(241,245,249,0.9)":"rgba(255,255,255,0.92)"};border:2px solid ${r?"#cbd5e1":s};display:flex;align-items:center;justify-content:center;font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:11px;font-weight:700;color:${r?"#94a3b8":s};cursor:pointer;pointer-events:auto;box-shadow:${r?"0 2px 8px rgba(0,0,0,0.06)":`0 2px 12px ${s}25, 0 2px 6px rgba(0,0,0,0.06)`};transition:top 0.25s cubic-bezier(0.34,1.56,0.64,1),left 0.25s cubic-bezier(0.34,1.56,0.64,1),transform 0.15s ease,box-shadow 0.15s ease;user-select:none;-webkit-font-smoothing:antialiased;`});i.dataset.feedbackId=e.id,i.setAttribute("tabindex","0"),i.setAttribute("role","button");let n=e.message.length>60?`${e.message.slice(0,60)}...`:e.message,o=op(this.t,"marker.aria",{number:A,type:rp(e.type,this.t),message:n});i.setAttribute("aria-label",o),i.setAttribute("aria-describedby",this.tooltip.tooltipId),O(i,r?"\u2713":String(A)),RA()&&i.appendChild(R("span",{style:"position:absolute;inset:-9px;border-radius:50%;"})),i.addEventListener("mouseenter",()=>{i.style.transform="scale(1.2)",i.style.boxShadow=r?"0 4px 16px rgba(0,0,0,0.1)":`0 4px 20px ${s}35, 0 4px 12px rgba(0,0,0,0.08)`,this.tooltip.show(e,i.getBoundingClientRect()),this.pinnedFeedback||this.showHighlight(e)}),i.addEventListener("mouseleave",()=>{i.style.transform="scale(1)",i.style.boxShadow=r?"0 2px 8px rgba(0,0,0,0.06)":`0 2px 12px ${s}25, 0 2px 6px rgba(0,0,0,0.06)`,this.tooltip.scheduleHide(),this.pinnedFeedback||this.clearHighlight()}),i.addEventListener("focus",()=>{this.tooltip.show(e,i.getBoundingClientRect()),this.pinnedFeedback||this.showHighlight(e)}),i.addEventListener("blur",()=>{this.tooltip.scheduleHide(),this.pinnedFeedback||this.clearHighlight()});let a=A=>{A instanceof MouseEvent&&this.handleClusterClick(i,A)||(TA()&&this.tooltip.hide(),this.pinHighlight(e),this.bus.emit("panel:toggle",!0),i.dispatchEvent(new CustomEvent("sp-marker-click",{detail:{feedbackId:e.id},bubbles:!0})))};return i.addEventListener("click",A=>a(A)),i.addEventListener("keydown",A=>{("Enter"===A.key||" "===A.key)&&(A.preventDefault(),a(A))}),i}focusFeedback(A){let e=this.entries.find(e=>e.feedback.id===A);if(!e)return!1;let t=e.elements.find(A=>"none"!==A.style.display);return t&&t.scrollIntoView({behavior:"smooth",block:"center"}),this.pinHighlight(e.feedback),this.highlight(A),!0}revealPin(A){return"none"!==this.container.style.display&&this.entries.some(e=>e.feedback.id===A&&e.elements.some(A=>"none"!==A.style.display))&&this.focusFeedback(A)}highlight(A){for(let e of this.entries)if(e.feedback.id===A)for(let A of e.elements)A.style.animation="sp-pulse-ring 0.7s ease-out",A.addEventListener("animationend",()=>{A.style.animation=""},{once:!0})}showHighlight(A){this.removeHighlightElements();for(let e of A.annotations){let t=_u(ju(e),Zu(e));if(!t)continue;let s=kA(A.type,this.colors),r=t.rect,i=R("div",{style:`position:absolute;top:${r.top+window.scrollY}px;left:${r.left+window.scrollX}px;width:${r.width}px;height:${r.height}px;border:2px solid ${s};background:${s}0c;border-radius:8px;pointer-events:none;z-index:-1;opacity:0;box-shadow:0 0 16px ${s}20;transition:opacity 300ms ease;`});this.container.appendChild(i),this.highlightElements.push(i),i.offsetHeight,i.style.opacity="1"}}pinHighlight(A){this.unpinHighlight(),this.showHighlight(A),this.pinnedFeedback=A,this.onDocumentClick=A=>{this.container.contains(A.target)||this.unpinHighlight()},document.addEventListener("click",this.onDocumentClick,{capture:!0})}unpinHighlight(){this.onDocumentClick&&(document.removeEventListener("click",this.onDocumentClick,{capture:!0}),this.onDocumentClick=null),this.pinnedFeedback=null,this.clearHighlight()}clearHighlight(){for(let A of this.highlightElements)A.style.opacity="0",setTimeout(()=>A.remove(),300);this.highlightElements=[]}removeHighlightElements(){for(let A of this.highlightElements)A.remove();this.highlightElements=[]}clear(){this.unpinHighlight(),this.container.replaceChildren(),this.entries=[],this.clusters=[],this.anchorCache.clear()}destroy(){this.unpinHighlight(),this.repositionTimer&&("cancelIdleCallback"in window&&window.cancelIdleCallback(this.repositionTimer),clearTimeout(this.repositionTimer)),this.resizeHandler&&window.removeEventListener("resize",this.resizeHandler),this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler,{capture:!0}),this.onDocumentClickForClusters&&document.removeEventListener("click",this.onDocumentClickForClusters,!0),this.mutationObserver?.disconnect(),this.container.remove()}};D();var sg=class{constructor(A,e){this.store=A,this.projectName=e}store;projectName;async sendFeedback(A){return ig(await rg(this.write(A),"Failed to send feedback"))}async write(A){try{return await this.store.createFeedback({projectName:A.projectName,type:A.type,message:A.message,status:"open",url:A.url,urlPattern:A.urlPattern??null,viewport:A.viewport,userAgent:A.userAgent,authorName:A.authorName,authorEmail:A.authorEmail,clientId:A.clientId,annotations:A.annotations.map(B),screenshotDataUrl:A.screenshotDataUrl??null,screenshotRegion:A.screenshotRegion??null,diagnostics:A.diagnostics??null})}catch(t){if(!((e=t)instanceof y||g(e,"STORE_DUPLICATE")||g(e,"P2002")))throw t;let s=await this.store.findByClientId(A.clientId);if(!s||s.projectName!==A.projectName)throw t;return s}var e}async getFeedbacks(A,e){let{feedbacks:t,total:s}=await this.store.getFeedbacks({projectName:A,page:e?.page,limit:e?.limit,type:e?.type,status:e?.status,statuses:e?.statuses,search:e?.search,url:e?.url,urlPattern:e?.urlPattern});return{feedbacks:t.map(ig),total:s,capabilities:{comments:!!this.store.addComment}}}async resolveFeedback(A,e){let t=await this.store.updateFeedback(A,function(A,e=new Date){return u(A)?{status:A,resolvedAt:e}:{status:A,resolvedAt:null}}(e?"resolved":"open"));return ig(t)}async deleteFeedback(A){await this.store.deleteFeedback(A)}async deleteAllFeedbacks(A){await this.store.deleteAllFeedbacks(A)}async addComment(A,e){let t="Failed to post comment";if(!this.store.addComment)throw new n(`${t}: this store keeps no comments`,"SERVER",!1);return ng(await rg(this.store.addComment(A,e),t))}};function rg(A,e){return nu(A,3e4,()=>new n(`${e}: the store did not answer within 30 s`,"TIMEOUT",!0))}function ig(A){return{id:A.id,projectName:A.projectName,type:A.type,message:A.message,status:A.status,url:A.url,urlPattern:A.urlPattern??null,viewport:A.viewport,userAgent:A.userAgent,authorName:A.authorName,authorEmail:A.authorEmail,resolvedAt:A.resolvedAt?.toISOString()??null,createdAt:A.createdAt.toISOString(),updatedAt:A.updatedAt.toISOString(),annotations:A.annotations.map(og),comments:A.comments?.map(ng),screenshotUrl:A.screenshotUrl??null,screenshotRegion:A.screenshotRegion??null,diagnostics:A.diagnostics??null}}function ng({clientId:A,createdAt:e,...t}){return{...t,createdAt:e.toISOString()}}function og(A){return{id:A.id,feedbackId:A.feedbackId,cssSelector:A.cssSelector,xpath:A.xpath,textSnippet:A.textSnippet,elementTag:A.elementTag,elementId:A.elementId,textPrefix:A.textPrefix,textSuffix:A.textSuffix,fingerprint:A.fingerprint,neighborText:A.neighborText,anchorKey:A.anchorKey??null,xPct:A.xPct,yPct:A.yPct,wPct:A.wPct,hPct:A.hPct,scrollX:A.scrollX,scrollY:A.scrollY,viewportW:A.viewportW,viewportH:A.viewportH,devicePixelRatio:A.devicePixelRatio,createdAt:A.createdAt.toISOString()}}Bp(),wp(),Dp(),$p(),Yp(),jp();var ag="cubic-bezier(0.16, 1, 0.3, 1)",lg="cubic-bezier(0.34, 1.56, 0.64, 1)",cg=`@keyframes sp-fab-in{from{transform:scale(0) rotate(-180deg);opacity:0;}to{transform:scale(1) rotate(0deg);opacity:1;}}@keyframes sp-fab-glow{0%,100%{box-shadow:0 4px 20px var(--sp-accent-glow),0 2px 8px rgba(0,0,0,0.08);}50%{box-shadow:0 4px 28px var(--sp-accent-glow),0 2px 12px rgba(0,0,0,0.1);}}@keyframes sp-marker-in{0%{transform:scale(0);opacity:0;}60%{transform:scale(1.2);opacity:1;}100%{transform:scale(1);}}@keyframes sp-pulse-ring{0%{box-shadow:0 0 0 0 var(--sp-accent-glow);}70%{box-shadow:0 0 0 8px transparent;}100%{box-shadow:0 0 0 0 transparent;}}@keyframes sp-flash-bg{0%{background-color:var(--sp-accent-light);}100%{background-color:transparent;}}@keyframes sp-slide-up{from{transform:translateY(8px);opacity:0;}to{transform:translateY(0);opacity:1;}}@keyframes sp-fade-in{from{opacity:0;}to{opacity:1;}}@keyframes sp-shimmer{0%{background-position:-200% 0;}100%{background-position:200% 0;}}.sp-anim-fab-in{animation:sp-fab-in 0.5s linear(0, 0.006, 0.025, 0.06, 0.11, 0.17, 0.25, 0.34, 0.45, 0.56, 0.67, 0.78, 0.88, 0.95, 1.01, 1.04, 1.05, 1.04, 1.02, 1, 0.99, 1) both;}.sp-anim-marker-in{animation:sp-marker-in 0.35s ${lg} both;}.sp-anim-pulse{animation:sp-pulse-ring 0.7s ease-out;}.sp-anim-flash{animation:sp-flash-bg 0.5s cubic-bezier(0.25, 1, 0.5, 1);}.sp-anim-slide-up{animation:sp-slide-up 0.3s ${ag} both;}.sp-anim-fade-in{animation:sp-fade-in 0.2s ease-out both;}.sp-panel{transform:translateX(110%);transition:transform 0.4s ${ag};}.sp-panel.sp-panel--open{transform:translateX(0);}.sp-radial-item{opacity:0;pointer-events:none;transform:translate(0,0) scale(0.8);transition:transform 0.35s ${lg},opacity 0.2s ease,background 0.2s ease,border-color 0.2s ease,box-shadow 0.2s ease;}.sp-radial-item.sp-radial-item--open{opacity:1;pointer-events:auto;}.sp-radial-item{transition-delay:calc(var(--sp-i, 0) * 50ms);}@keyframes sp-card-in{from{transform:translateY(12px);opacity:0;}to{transform:translateY(0);opacity:1;}}.sp-card{animation:sp-card-in 0.35s ${ag} both;animation-delay:calc(var(--sp-card-i, 0) * 40ms);}@keyframes sp-spin{to{transform:rotate(360deg);}}.sp-spinner{width:20px;height:20px;border:2px solid var(--sp-border);border-top-color:var(--sp-accent);border-radius:50%;animation:sp-spin 0.6s linear infinite;}@keyframes sp-badge-in{0%{transform:scale(0);}60%{transform:scale(1.3);}100%{transform:scale(1);}}.sp-fab-badge{animation:sp-badge-in 0.4s ${lg} both;}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}}`;K();var dg=`:host{-webkit-tap-highlight-color:transparent;}.sp-list,.sp-detail-content{overscroll-behavior:contain;}.sp-scrim{display:none;}@media (hover: none){.sp-fab:hover:not(:active),.sp-card:hover:not(:active),.sp-btn-primary:hover:not(:active),.sp-btn-danger:hover:not(:active){transform:none;}.sp-card:hover:not(:active){box-shadow:var(--sp-shadow-xs);}.sp-radial-item--open .sp-radial-label{opacity:1;transform:translate(0,-50%);}.sp-bulk-checkbox{opacity:1;}.sp-bulk-checkbox::after{content:"";position:absolute;inset:-12px;}.sp-bulk-select-all{display:none;}.sp-list--has-selection .sp-bulk-select-all{display:flex;}.sp-shortcuts-hint{display:none;}}@media (pointer: coarse){.sp-radial-item{width:48px;height:48px;left:2px;bottom:2px;}.sp-radial-item svg{width:20px;height:20px;}.sp-radial-label{font-size:13px;font-weight:600;padding:8px 12px;}.sp-search,.sp-input{font-size:16px;}.sp-filter-dropdown-btn{height:36px;}.sp-segmented__btn{height:32px;}.sp-sort-btn,.sp-group-toggle,.sp-mine-toggle{min-height:36px;}.sp-btn-resolve,.sp-btn-delete{min-height:40px;}.sp-detail-back{width:44px;height:44px;}.sp-detail-actions button,.sp-detail-actions a{height:44px;}}@media ${L}{.sp-fab--bottom-right,.sp-radial--bottom-right{right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));}.sp-fab--bottom-left,.sp-radial--bottom-left{left:calc(16px + env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));}.sp-scrim{display:block;position:fixed;inset:0;background:var(--sp-scrim);opacity:0;pointer-events:none;touch-action:none;transition:opacity 0.3s ease;}.sp-scrim--open{opacity:1;pointer-events:auto;}.sp-panel{top:auto;left:0;right:0;bottom:0;width:auto;max-width:none;height:calc(100vh - 48px);height:calc(100dvh - 40px - env(safe-area-inset-top,0px));border-left:none;border-top:1px solid var(--sp-glass-border);border-radius:var(--sp-radius-xl) var(--sp-radius-xl) 0 0;background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;transform:translateY(105%);}.sp-panel.sp-panel--open{transform:translateY(0);}.sp-panel-header,.sp-detail-header{position:relative;padding-top:22px;background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;touch-action:none;}.sp-panel-header{padding:22px 12px 12px 20px;}.sp-panel-header::before,.sp-detail-header::before{content:"";position:absolute;top:8px;left:50%;width:36px;height:5px;margin-left:-18px;border-radius:3px;background:var(--sp-border);}.sp-export-btn,.sp-btn-delete-all{width:40px;height:40px;padding:0;justify-content:center;border-radius:var(--sp-radius);}.sp-export-btn svg,.sp-btn-delete-all svg{width:17px;height:17px;}.sp-export-btn span,.sp-btn-delete-all span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}.sp-stats-bar{padding:10px 20px;}.sp-filters{padding:12px 16px 10px;background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;}.sp-stats-bar,.sp-filters{touch-action:pan-x;}.sp-search{height:44px;}.sp-filter-bar{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 8px;padding:0 16px 2px;scrollbar-width:none;}.sp-filter-bar::-webkit-scrollbar{display:none;}.sp-filter-dropdown{flex:0 0 auto;}.sp-filter-dropdown-btn{width:auto;}.sp-filter-dropdown-menu,.sp-sort-menu{position:fixed;top:auto;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));min-width:0;padding:6px;border-radius:var(--sp-radius-lg);background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--sp-shadow-xl);z-index:30;}.sp-filter-dropdown-option,.sp-sort-option{min-height:44px;font-size:14px;}.sp-list{padding:10px 12px calc(12px + env(safe-area-inset-bottom,0px));}.sp-bulk-bar{bottom:calc(16px + env(safe-area-inset-bottom,0px));}.sp-detail{background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;}.sp-detail-section{padding:18px 20px;}.sp-detail-content{padding-bottom:env(safe-area-inset-bottom,0px);}.sp-identity-backdrop{align-items:flex-end;}.sp-identity-modal{width:100%;max-width:none;margin-bottom:var(--sp-kb, 0px);padding:24px 20px calc(20px + env(safe-area-inset-bottom,0px));border-radius:var(--sp-radius-xl) var(--sp-radius-xl) 0 0;background:var(--sp-bg);transform:translateY(100%);}.sp-identity-actions button{flex:1;height:48px;}.sp-identity-actions .sp-btn-primary{flex:2;}}`;function pg(A){return`:host{all:initial;position:fixed;z-index:2147483647;font-family:var(--sp-font);font-size:14px;line-height:1.5;color:var(--sp-text);color-scheme:${"#ffffff"===A.bg?"light":"dark"};-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;${function(A){return`--sp-accent: ${A.accent};--sp-accent-light: ${A.accentLight};--sp-accent-dark: ${A.accentDark};--sp-accent-glow: ${A.accentGlow};--sp-accent-gradient: ${A.accentGradient};--sp-bg: ${A.bg};--sp-bg-hover: ${A.bgHover};--sp-text: ${A.text};--sp-text-secondary: ${A.textSecondary};--sp-text-tertiary: ${A.textTertiary};--sp-border: ${A.border};--sp-shadow: ${A.shadow};--sp-glass-bg: ${A.glassBg};--sp-glass-bg-heavy: ${A.glassBgHeavy};--sp-glass-border: ${A.glassBorder};--sp-glass-border-subtle: ${A.glassBorderSubtle};--sp-type-question: ${A.typeQuestion};--sp-type-change: ${A.typeChange};--sp-type-bug: ${A.typeBug};--sp-type-other: ${A.typeOther};--sp-type-question-bg: ${A.typeQuestionBg};--sp-type-change-bg: ${A.typeChangeBg};--sp-type-bug-bg: ${A.typeBugBg};--sp-type-other-bg: ${A.typeOtherBg};--sp-radius: 12px;--sp-radius-lg: 16px;--sp-radius-xl: 20px;--sp-radius-full: 9999px;--sp-blur: 20px;--sp-blur-heavy: 32px;--sp-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.04);--sp-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.05), 0 1px 2px rgba(0, 0, 0, 0.04);--sp-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.08), 0 2px 4px rgba(0, 0, 0, 0.04);--sp-shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.04);--sp-shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.12), 0 8px 16px rgba(0, 0, 0, 0.06);--sp-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;`}(A)} --sp-identity-bg: ${A.glassBgHeavy};--sp-identity-overlay: ${"#ffffff"===A.bg?"rgba(15, 23, 42, 0.2)":"rgba(0, 0, 0, 0.4)"};--sp-scrim: ${"#ffffff"===A.bg?"rgba(15, 23, 42, 0.32)":"rgba(0, 0, 0, 0.5)"};}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}:focus-visible{outline:2px solid var(--sp-accent);outline-offset:2px;box-shadow:0 0 0 4px var(--sp-bg);}.sp-fab{position:fixed;width:52px;height:52px;border-radius:var(--sp-radius-full);background:var(--sp-accent-gradient);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px var(--sp-accent-glow),0 2px 8px rgba(0,0,0,0.08);transition:transform 0.25s cubic-bezier(0.34,1.56,0.64,1),box-shadow 0.3s ease;outline:none;}.sp-fab:focus-visible{outline:2px solid #fff;outline-offset:3px;}.sp-fab:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 8px 28px var(--sp-accent-glow),0 4px 12px rgba(0,0,0,0.1);}.sp-fab:active{transform:translateY(0) scale(0.95);transition-duration:0.1s;}.sp-fab--bottom-right{bottom:24px;right:24px;}.sp-fab--bottom-left{bottom:24px;left:24px;}.sp-fab svg{width:22px;height:22px;fill:currentColor;transition:transform 0.3s cubic-bezier(0.34,1.56,0.64,1);}.sp-fab-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 6px;border-radius:var(--sp-radius-full);background:#ef4444;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #fff;pointer-events:none;font-family:var(--sp-font);line-height:1;}.sp-radial{position:fixed;pointer-events:none;width:52px;height:52px;}.sp-radial--bottom-right{bottom:24px;right:24px;}.sp-radial--bottom-left{bottom:24px;left:24px;}.sp-radial-item{position:absolute;left:4px;bottom:4px;width:44px;height:44px;border-radius:var(--sp-radius-full);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));color:var(--sp-text);border:1px solid var(--sp-glass-border);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--sp-shadow-md);font-size:12px;font-weight:600;}.sp-radial-item:hover,.sp-radial-item:focus-visible{background:rgba(255,255,255,0.95);border-color:var(--sp-accent);color:var(--sp-accent);box-shadow:var(--sp-shadow-md),0 0 0 3px var(--sp-accent-light);outline:none;}.sp-radial-item svg{width:18px;height:18px;flex-shrink:0;stroke:currentColor;fill:none;}.sp-radial-label{position:absolute;top:50%;white-space:nowrap;font-size:12px;font-weight:500;color:var(--sp-text);pointer-events:none;opacity:0;padding:4px 12px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-sm);transform:translate(4px,-50%);transition:opacity 0.2s ease,transform 0.2s ease;}.sp-radial--bottom-right .sp-radial-label{right:calc(100% + 12px);}.sp-radial--bottom-left .sp-radial-label{left:calc(100% + 12px);transform:translate(-4px,-50%);}.sp-radial-item:hover .sp-radial-label,.sp-radial-item:focus-visible .sp-radial-label{opacity:1;transform:translate(0,-50%);}.sp-panel{position:fixed;top:0;right:0;width:400px;max-width:100vw;height:100vh;height:100dvh;background:var(--sp-glass-bg);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border-left:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xl);display:flex;flex-direction:column;overflow:hidden;}.sp-panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));position:relative;z-index:2;}.sp-panel-title{font-size:17px;font-weight:700;color:var(--sp-text);letter-spacing:-0.02em;}.sp-panel-close{width:44px;height:44px;border-radius:var(--sp-radius);border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--sp-text-tertiary);transition:all 0.2s ease;}.sp-panel-close:hover{background:var(--sp-bg-hover);color:var(--sp-text);}.sp-panel-close svg{width:16px;height:16px;}.sp-filters{padding:16px 24px;border-bottom:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));position:sticky;top:0;z-index:1;}.sp-search-wrap{position:relative;margin-bottom:12px;}.sp-search{width:100%;height:40px;padding:0 12px 0 38px;border-radius:var(--sp-radius);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text);font-family:var(--sp-font);font-size:13px;outline:none;transition:all 0.2s ease;}.sp-search::placeholder{color:var(--sp-text-tertiary);}.sp-search:focus{border-color:var(--sp-accent);box-shadow:0 0 0 3px var(--sp-accent-light);background:var(--sp-bg);}.sp-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--sp-text-tertiary);width:16px;height:16px;transition:color 0.2s ease;}.sp-search:focus ~ .sp-search-icon,.sp-search-wrap:focus-within .sp-search-icon{color:var(--sp-accent);}.sp-filter-bar{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap;}.sp-filter-dropdown{position:relative;flex:1 1 auto;min-width:0;}.sp-filter-dropdown-btn{--sp-chip-color: var(--sp-text-secondary);--sp-chip-bg: var(--sp-glass-bg-heavy);display:inline-flex;align-items:center;gap:8px;width:100%;height:32px;padding:0 8px 0 10px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background 0.18s ease,border-color 0.18s ease,box-shadow 0.18s ease;}.sp-filter-dropdown-btn:hover{border-color:var(--sp-chip-color);background:var(--sp-chip-bg);}.sp-filter-dropdown-btn[aria-expanded="true"]{border-color:var(--sp-chip-color);background:var(--sp-chip-bg);box-shadow:0 0 0 3px color-mix(in srgb,var(--sp-chip-color) 14%,transparent);}.sp-filter-dropdown-btn--filtered{border-color:var(--sp-chip-color);background:var(--sp-chip-bg);}.sp-filter-dropdown-btn__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;color:var(--sp-chip-color);}.sp-filter-dropdown-btn__icon svg{width:14px;height:14px;}.sp-filter-dropdown-btn__label{display:inline-flex;align-items:baseline;gap:6px;flex:1;min-width:0;overflow:hidden;}.sp-filter-dropdown-btn__prefix{color:var(--sp-text-tertiary);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:0.06em;}.sp-filter-dropdown-btn__value{color:var(--sp-chip-color);font-weight:600;overflow:hidden;text-overflow:ellipsis;}.sp-filter-dropdown-btn__chevron{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;color:var(--sp-text-tertiary);transition:transform 0.18s ease,color 0.18s ease;}.sp-filter-dropdown-btn__chevron svg{width:12px;height:12px;}.sp-filter-dropdown-btn[aria-expanded="true"] .sp-filter-dropdown-btn__chevron{transform:rotate(180deg);color:var(--sp-chip-color);}.sp-filter-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;min-width:180px;padding:4px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-md);z-index:10;animation:sp-filter-menu-in 0.15s ease-out both;}@keyframes sp-filter-menu-in{from{opacity:0;transform:translateY(-4px) scale(0.98);}to{opacity:1;transform:translateY(0) scale(1);}}.sp-filter-dropdown-option{--sp-chip-color: var(--sp-text-secondary);--sp-chip-bg: transparent;display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--sp-text);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;text-align:left;transition:background 0.12s ease,color 0.12s ease;}.sp-filter-dropdown-option__icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border-radius:6px;background:var(--sp-chip-bg);color:var(--sp-chip-color);}.sp-filter-dropdown-option__icon svg{width:13px;height:13px;}.sp-filter-dropdown-option__label{flex:1;min-width:0;}.sp-filter-dropdown-option__check{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;color:var(--sp-chip-color);}.sp-filter-dropdown-option__check svg{width:13px;height:13px;}.sp-filter-dropdown-option:hover{background:var(--sp-bg-hover);}.sp-filter-dropdown-option--active{color:var(--sp-chip-color);font-weight:600;}.sp-filter-dropdown-option--active:hover{background:var(--sp-chip-bg);}.sp-segmented{display:inline-flex;align-items:stretch;padding:2px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);flex-shrink:0;}.sp-segmented__btn{--sp-chip-color: var(--sp-text-tertiary);--sp-chip-bg: transparent;display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border:none;border-radius:var(--sp-radius-full);background:transparent;color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background 0.18s ease,color 0.18s ease,box-shadow 0.18s ease;}.sp-segmented__icon{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;flex-shrink:0;color:var(--sp-chip-color);transition:color 0.18s ease,transform 0.18s ease;}.sp-segmented__icon svg{width:13px;height:13px;}.sp-segmented__btn:hover{color:var(--sp-chip-color);}.sp-segmented__btn:hover .sp-segmented__icon{color:var(--sp-chip-color);}.sp-segmented__btn--active{background:var(--sp-chip-bg);color:var(--sp-chip-color);font-weight:600;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--sp-chip-color) 35%,transparent),0 1px 2px rgba(0,0,0,0.04);}.sp-segmented__btn--active .sp-segmented__icon{color:var(--sp-chip-color);}.sp-segmented__btn--open.sp-segmented__btn--active .sp-segmented__icon{animation:sp-segmented-pulse 2.4s ease-in-out infinite;}@keyframes sp-segmented-pulse{0%,100%{transform:scale(1);}50%{transform:scale(0.85);}}@media (prefers-reduced-motion: reduce){.sp-filter-dropdown-btn,.sp-filter-dropdown-btn__chevron,.sp-filter-dropdown-option,.sp-segmented__btn,.sp-segmented__icon{transition:none;}.sp-filter-dropdown-menu{animation:none;}.sp-segmented__btn--open.sp-segmented__btn--active .sp-segmented__icon{animation:none;}}.sp-list{flex:1;overflow-y:auto;padding:8px 12px;}.sp-list::-webkit-scrollbar{width:6px;}.sp-list::-webkit-scrollbar-track{background:transparent;}.sp-list::-webkit-scrollbar-thumb{background:var(--sp-border);border-radius:var(--sp-radius-full);}.sp-list::-webkit-scrollbar-thumb:hover{background:var(--sp-text-tertiary);}.sp-card{display:flex;padding:14px 16px;margin-bottom:6px;cursor:pointer;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xs);transition:all 0.2s cubic-bezier(0.34,1.56,0.64,1);}.sp-card:hover{background:var(--sp-bg);border-color:var(--sp-border);box-shadow:var(--sp-shadow-md);transform:translateY(-2px);}.sp-card:active{transform:translateY(0) scale(0.99);transition-duration:0.1s;}.sp-card-bar{width:3px;border-radius:var(--sp-radius-full);margin-right:14px;flex-shrink:0;}.sp-card-body{flex:1;min-width:0;}.sp-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;}.sp-card-number{font-size:12px;font-weight:700;color:var(--sp-text-tertiary);font-variant-numeric:tabular-nums;}.sp-badge{padding:2px 10px;border-radius:var(--sp-radius-full);font-size:11px;font-weight:600;letter-spacing:0.02em;}.sp-card-date{font-size:11px;color:var(--sp-text-tertiary);margin-left:auto;}.sp-card-message{font-size:13px;line-height:1.5;color:var(--sp-text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}.sp-card-message--expanded{-webkit-line-clamp:unset;}.sp-card-expand{font-size:12px;font-weight:500;color:var(--sp-accent);cursor:pointer;background:none;border:none;padding:4px 0;font-family:var(--sp-font);transition:opacity 0.15s ease;}.sp-card-expand:hover{opacity:0.8;}.sp-card-footer{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:10px;}.sp-btn-resolve,.sp-btn-delete{padding:8px 14px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:transparent;color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all 0.2s ease;}.sp-btn-resolve svg,.sp-btn-delete svg{width:14px;height:14px;}.sp-btn-resolve:hover{border-color:#22c55e;color:#22c55e;background:rgba(34,197,94,0.06);}.sp-btn-delete:hover{border-color:#ef4444;color:#ef4444;background:rgba(239,68,68,0.06);}.sp-btn-resolve:disabled,.sp-btn-delete:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.sp-spinner--sm{width:14px;height:14px;}.sp-panel-header-right{display:flex;align-items:center;gap:8px;}.sp-btn-delete-all{padding:5px 12px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:transparent;color:var(--sp-text-tertiary);font-family:var(--sp-font);font-size:11px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all 0.2s ease;}.sp-btn-delete-all svg{width:13px;height:13px;}.sp-btn-delete-all:hover{border-color:#ef4444;color:#ef4444;background:rgba(239,68,68,0.06);}.sp-btn-delete-all:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.sp-confirm-backdrop{position:fixed;inset:0;background:var(--sp-backdrop, rgba(15, 23, 42, 0.2));backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));display:flex;align-items:center;justify-content:center;z-index:2147483647;opacity:0;transition:opacity 0.2s ease;}.sp-confirm-dialog{width:min(340px,calc(100vw - 32px));padding:28px;border-radius:20px;background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xl);font-family:var(--sp-font);transform:translateY(8px) scale(0.97);transition:transform 0.25s cubic-bezier(0.16,1,0.3,1);}.sp-confirm-title{font-size:17px;font-weight:700;color:var(--sp-text);letter-spacing:-0.02em;margin-bottom:8px;}.sp-confirm-message{font-size:14px;color:var(--sp-text-secondary);line-height:1.5;margin-bottom:20px;}.sp-confirm-actions{display:flex;gap:8px;justify-content:flex-end;}.sp-btn-danger{height:40px;padding:0 22px;border-radius:var(--sp-radius);border:none;background:#ef4444;color:#fff;font-family:var(--sp-font);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease;box-shadow:0 2px 8px rgba(239,68,68,0.25);}.sp-btn-danger:hover{background:#dc2626;box-shadow:0 4px 16px rgba(239,68,68,0.3);transform:translateY(-1px);}.sp-btn-danger:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-card--resolved{opacity:0.5;}.sp-card--resolved .sp-card-message{text-decoration:line-through;text-decoration-color:var(--sp-text-tertiary);}.sp-loading{display:flex;align-items:center;justify-content:center;padding:48px 24px;}.sp-identity-backdrop{position:fixed;inset:0;background:var(--sp-identity-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2147483647;opacity:0;transition:opacity 0.25s ease;}.sp-identity-modal{width:340px;max-width:calc(100vw - 32px);padding:28px;border-radius:var(--sp-radius-xl);background:var(--sp-identity-bg);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:0 16px 48px var(--sp-shadow),0 8px 16px var(--sp-shadow);font-family:var(--sp-font);color:var(--sp-text);transform:translateY(12px) scale(0.97);transition:transform 0.3s cubic-bezier(0.16,1,0.3,1);}.sp-identity--open{opacity:1;}.sp-identity--open .sp-identity-modal{transform:none;}.sp-identity-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px;}.sp-identity-title{font-size:17px;font-weight:700;color:var(--sp-text);letter-spacing:-0.02em;}.sp-input{width:100%;height:42px;padding:0 14px;border-radius:var(--sp-radius);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text);font-family:var(--sp-font);font-size:14px;outline:none;transition:all 0.2s ease;}.sp-input::placeholder{color:var(--sp-text-tertiary);}.sp-input:focus{border-color:var(--sp-accent);box-shadow:0 0 0 3px var(--sp-accent-light);background:var(--sp-bg);}.sp-input-label{font-size:13px;font-weight:500;color:var(--sp-text-secondary);margin-bottom:6px;display:block;}.sp-btn-primary{height:40px;padding:0 22px;border-radius:var(--sp-radius);border:none;background:var(--sp-accent-gradient);color:#fff;font-family:var(--sp-font);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease;box-shadow:0 2px 8px var(--sp-accent-glow);}.sp-btn-primary:hover{box-shadow:0 4px 16px var(--sp-accent-glow);transform:translateY(-1px);}.sp-btn-primary:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-btn-primary:disabled{opacity:0.4;cursor:not-allowed;transform:none;box-shadow:none;}.sp-btn-ghost{height:40px;padding:0 22px;border-radius:var(--sp-radius);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:14px;font-weight:500;cursor:pointer;transition:all 0.2s ease;}.sp-btn-ghost:hover{border-color:var(--sp-accent);color:var(--sp-accent);background:var(--sp-accent-light);}.sp-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 24px;color:var(--sp-text-tertiary);text-align:center;gap:8px;animation:sp-fade-in 0.3s ease-out both;}.sp-empty-text{font-size:14px;font-weight:500;}.sp-load-more-wrap{display:flex;justify-content:center;padding:12px 0 4px;}.sp-btn-load-more{width:100%;}@media (forced-colors: active){.sp-fab,.sp-radial-item,.sp-filter-dropdown-btn,.sp-segmented,.sp-segmented__btn,.sp-card,.sp-panel-close,.sp-search,.sp-btn-resolve,.sp-btn-delete,.sp-btn-delete-all,.sp-btn-primary,.sp-btn-ghost,.sp-btn-danger,.sp-card-expand,.sp-input,.sp-confirm-dialog{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-segmented__btn--active{background:Highlight !important;color:HighlightText !important;}.sp-filter-dropdown-menu{border:2px solid ButtonText !important;background:Canvas !important;}.sp-filter-dropdown-option--active{background:Highlight !important;color:HighlightText !important;}.sp-fab:focus-visible,.sp-radial-item:focus-visible,.sp-filter-dropdown-btn:focus-visible,.sp-segmented__btn:focus-visible,.sp-filter-dropdown-option:focus-visible,.sp-panel-close:focus-visible,.sp-btn-resolve:focus-visible,.sp-btn-delete:focus-visible,.sp-btn-delete-all:focus-visible,.sp-btn-primary:focus-visible,.sp-btn-ghost:focus-visible,.sp-btn-danger:focus-visible,.sp-card-expand:focus-visible,.sp-input:focus-visible,.sp-search:focus-visible{outline:3px solid Highlight !important;}.sp-panel{border:2px solid ButtonText !important;}.sp-fab-badge{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-card-bar{background:ButtonText !important;}}${cg} ${Gp} ${Vp} ${up} .sp-export-btn{padding:5px 12px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:transparent;color:var(--sp-text-tertiary);font-family:var(--sp-font);font-size:11px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all 0.2s ease;position:relative;}.sp-export-btn svg{width:13px;height:13px;}.sp-export-btn:hover{border-color:var(--sp-accent);color:var(--sp-accent);background:var(--sp-accent-light);}.sp-export-btn:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.sp-export-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;padding:4px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-lg);z-index:10;opacity:0;transform:translateY(-4px) scale(0.97);transition:opacity 0.15s ease,transform 0.15s ease;pointer-events:none;}.sp-export-menu--open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}.sp-export-option{display:flex;align-items:center;gap:10px;width:100%;padding:8px 16px;border:none;border-radius:8px;background:transparent;color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:13px;font-weight:500;cursor:pointer;transition:all 0.15s ease;text-align:left;}.sp-export-option:hover,.sp-export-option:focus-visible{background:var(--sp-accent-light);color:var(--sp-accent);}.sp-export-option-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;}.sp-export-option-icon svg{width:16px;height:16px;}.sp-export-option-label{flex:1;}@media (forced-colors: active){.sp-export-btn,.sp-export-option,.sp-export-menu{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-export-btn:focus-visible,.sp-export-option:focus-visible{outline:3px solid Highlight !important;}} .sp-shortcuts-overlay{position:fixed;inset:0;background:var(--sp-backdrop, rgba(15, 23, 42, 0.2));backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));display:flex;align-items:center;justify-content:center;z-index:10;opacity:0;pointer-events:none;transition:opacity 0.2s ease;}.sp-shortcuts-overlay--visible{opacity:1;pointer-events:auto;}.sp-shortcuts-card{width:380px;max-width:calc(100vw - 32px);padding:24px 28px 20px;border-radius:20px;background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xl);font-family:var(--sp-font);position:relative;transform:scale(0.92) translateY(8px);transition:transform 0.25s cubic-bezier(0.16,1,0.3,1);}.sp-shortcuts-overlay--visible .sp-shortcuts-card{transform:scale(1) translateY(0);}.sp-shortcuts-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:var(--sp-text);margin-bottom:18px;}.sp-shortcuts-title svg{width:18px;height:18px;color:var(--sp-text-secondary);flex-shrink:0;}.sp-shortcuts-close{position:absolute;top:16px;right:16px;width:28px;height:28px;border-radius:8px;border:none;background:transparent;color:var(--sp-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.15s ease,color 0.15s ease;}.sp-shortcuts-close:hover{background:var(--sp-bg-hover);color:var(--sp-text);}.sp-shortcuts-close svg{width:14px;height:14px;}.sp-shortcuts-grid{display:flex;flex-direction:column;gap:10px;}.sp-shortcuts-row{display:flex;align-items:center;gap:12px;}.sp-shortcuts-keys{display:flex;align-items:center;gap:4px;min-width:80px;justify-content:flex-end;}.sp-shortcuts-separator{font-size:11px;color:var(--sp-text-tertiary);user-select:none;}.sp-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:26px;padding:0 7px;border-radius:6px;background:var(--sp-bg-hover);border:1px solid var(--sp-border);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.08),0 1px 2px rgba(0,0,0,0.04);font-family:ui-monospace,"SF Mono","Cascadia Code","Segoe UI Mono",Menlo,monospace;font-size:12px;font-weight:600;color:var(--sp-text);text-align:center;line-height:1;user-select:none;}.sp-shortcuts-desc{font-size:13px;color:var(--sp-text-secondary);line-height:1.3;}.sp-shortcuts-hint{width:24px;height:24px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-bg-hover);color:var(--sp-text-tertiary);font-family:ui-monospace,"SF Mono","Cascadia Code","Segoe UI Mono",Menlo,monospace;font-size:12px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.15s ease,color 0.15s ease,border-color 0.15s ease;position:absolute;bottom:12px;right:12px;}.sp-shortcuts-hint:hover{background:var(--sp-accent-light);color:var(--sp-accent);border-color:var(--sp-accent);}.sp-shortcuts-hint::after{content:attr(aria-label);position:absolute;bottom:calc(100% + 6px);right:0;padding:4px 8px;border-radius:6px;background:var(--sp-glass-bg-heavy);border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-sm);font-family:var(--sp-font);font-size:11px;font-weight:500;color:var(--sp-text-secondary);white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity 0.15s ease,transform 0.15s ease;}.sp-shortcuts-hint:hover::after{opacity:1;transform:translateY(0);}.sp-card--focused{outline:2px solid var(--sp-accent);outline-offset:-2px;border-radius:inherit;}@media (prefers-reduced-motion: reduce){.sp-shortcuts-overlay,.sp-shortcuts-card,.sp-shortcuts-close,.sp-shortcuts-hint,.sp-shortcuts-hint::after{transition-duration:0.01ms !important;}} .sp-detail{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--sp-glass-bg);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));z-index:20;transform:translateX(100%);transition:transform 0.35s cubic-bezier(0.16,1,0.3,1);will-change:transform;overflow:hidden;}.sp-detail--visible{transform:translateX(0);}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.sp-detail{background:var(--sp-bg);}}@supports (-webkit-backdrop-filter: blur(1px)) and (not (backdrop-filter: blur(1px))){.sp-detail{background:var(--sp-bg);}}.sp-detail-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));flex-shrink:0;min-height:64px;}.sp-detail-back{width:40px;height:40px;border-radius:var(--sp-radius);border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--sp-text-tertiary);transition:all 0.2s ease;flex-shrink:0;padding:0;}.sp-detail-back:hover{background:var(--sp-bg-hover);color:var(--sp-text);}.sp-detail-back:active{transform:scale(0.92);transition-duration:0.1s;}.sp-detail-back svg{width:18px;height:18px;}.sp-detail-title{font-size:16px;font-weight:700;color:var(--sp-text);letter-spacing:-0.02em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sp-detail-header .sp-badge{flex-shrink:0;}.sp-detail-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:0;}.sp-detail-content::-webkit-scrollbar{width:6px;}.sp-detail-content::-webkit-scrollbar-track{background:transparent;}.sp-detail-content::-webkit-scrollbar-thumb{background:var(--sp-border);border-radius:var(--sp-radius-full);}.sp-detail-content::-webkit-scrollbar-thumb:hover{background:var(--sp-text-tertiary);}.sp-detail-section{padding:20px 24px;border-bottom:1px solid var(--sp-border);opacity:0;transform:translateY(8px);animation:sp-detail-section-in 0.35s cubic-bezier(0.16,1,0.3,1) forwards;}@keyframes sp-detail-section-in{to{opacity:1;transform:translateY(0);}}.sp-detail-section:last-child{border-bottom:none;}.sp-detail-section-title{font-size:11px;font-weight:600;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:14px;display:flex;align-items:center;gap:6px;}.sp-detail-section-title svg{width:14px;height:14px;opacity:0.6;}.sp-detail-status{display:flex;align-items:center;gap:10px;margin-bottom:16px;}.sp-detail-status-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:var(--sp-radius-full);font-size:12px;font-weight:600;letter-spacing:0.02em;}.sp-detail-status-pill--open{background:rgba(34,197,94,0.1);color:#22c55e;border:1px solid rgba(34,197,94,0.2);}.sp-detail-status-pill--resolved{background:rgba(156,163,175,0.1);color:#9ca3af;border:1px solid rgba(156,163,175,0.2);}.sp-detail-status-pill--in-progress{background:rgba(245,158,11,0.1);color:#f59e0b;border:1px solid rgba(245,158,11,0.2);}.sp-detail-status-pill--wont-fix{background:rgba(148,163,184,0.1);color:#94a3b8;border:1px solid rgba(148,163,184,0.2);}.sp-detail-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}.sp-detail-actions{display:flex;gap:8px;}.sp-detail-actions button,.sp-detail-actions a{flex:1;height:40px;padding:0 16px;border-radius:var(--sp-radius);font-family:var(--sp-font);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all 0.2s ease;}.sp-detail-actions button svg,.sp-detail-actions a svg{width:15px;height:15px;}.sp-detail-btn-resolve{border:1.5px solid #22c55e;background:rgba(34,197,94,0.06);color:#22c55e;}.sp-detail-btn-resolve:hover{background:rgba(34,197,94,0.14);box-shadow:0 0 16px rgba(34,197,94,0.12);transform:translateY(-1px);}.sp-detail-btn-resolve:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-detail-btn-reopen{border:1.5px solid var(--sp-accent);background:var(--sp-accent-light);color:var(--sp-accent);}.sp-detail-btn-reopen:hover{background:rgba(var(--sp-accent),0.14);box-shadow:0 0 16px var(--sp-accent-glow);transform:translateY(-1px);}.sp-detail-btn-reopen:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-detail-btn-delete{border:1.5px solid #ef4444;background:rgba(239,68,68,0.06);color:#ef4444;}.sp-detail-btn-delete:hover{background:rgba(239,68,68,0.14);box-shadow:0 0 16px rgba(239,68,68,0.12);transform:translateY(-1px);}.sp-detail-btn-delete:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-detail-btn-custom{border:1.5px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text);text-decoration:none;}.sp-detail-btn-custom:hover{background:var(--sp-bg-hover);border-color:var(--sp-accent);color:var(--sp-accent);box-shadow:0 0 16px var(--sp-accent-glow);transform:translateY(-1px);}.sp-detail-btn-custom:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-detail-actions--custom{flex-wrap:wrap;margin-top:8px;}.sp-detail-actions--custom > .sp-detail-btn-custom{flex:1 1 auto;min-width:0;}.sp-detail-btn-custom svg{flex-shrink:0;}.sp-detail-btn-custom span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sp-detail-actions button:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;transform:none;box-shadow:none;}.sp-detail-message{font-size:14px;line-height:1.65;color:var(--sp-text);padding:14px 16px;border-left:3px solid var(--sp-accent);border-radius:0 var(--sp-radius) var(--sp-radius) 0;background:var(--sp-glass-bg-heavy);white-space:pre-wrap;word-break:break-word;}.sp-thread-list{list-style:none;}.sp-comment{margin-top:8px;border-left-color:var(--sp-border);}.sp-comment[data-role="team"]{border-left-color:var(--sp-accent);}.sp-comment-head,.sp-thread-foot{display:flex;align-items:center;gap:6px;font-size:12px;}.sp-comment-head{margin-bottom:4px;font-weight:600;}.sp-comment-head .sp-badge{background:var(--sp-accent-light);}.sp-comment-head time,.sp-thread-foot,.sp-thread-input::placeholder{font-weight:400;color:var(--sp-text-secondary);}.sp-comment-head time{margin-left:auto;}.sp-thread-input{height:auto;margin-top:10px;padding:10px 14px;}.sp-thread-foot{justify-content:space-between;margin-top:8px;}.sp-thread-foot [aria-busy="true"]::before{content:"";display:inline-block;width:10px;height:10px;margin-right:8px;border:2px solid;border-top-color:transparent;border-radius:50%;animation:sp-spin 0.6s linear infinite;}.sp-thread-error{margin-top:8px;padding:8px 12px;border-radius:var(--sp-radius);background:var(--sp-type-bug-bg);font-size:12px;}.sp-thread-error:empty{display:none;}.sp-detail-screenshot{display:block;width:100%;height:auto;max-height:400px;object-fit:contain;border-radius:var(--sp-radius);border:1px solid var(--sp-glass-border);background:var(--sp-glass-bg-heavy);}.sp-detail-meta{display:flex;flex-direction:column;gap:14px;}.sp-detail-meta-row{display:flex;align-items:flex-start;gap:12px;}.sp-detail-meta-row svg{width:14px;height:14px;color:var(--sp-text-tertiary);flex-shrink:0;margin-top:1px;}.sp-detail-meta-content{flex:1;min-width:0;}.sp-detail-meta-label{font-size:10px;font-weight:600;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.06em;line-height:1;margin-bottom:4px;}.sp-detail-meta-value{font-size:13px;line-height:1.4;color:var(--sp-text);word-break:break-all;}.sp-detail-meta-value--mono{font-family:"SF Mono","Cascadia Code","Fira Code","Consolas",monospace;font-size:12px;background:var(--sp-glass-bg-heavy);padding:2px 6px;border-radius:4px;border:1px solid var(--sp-glass-border-subtle);}.sp-detail-meta-value--secondary{color:var(--sp-text-secondary);font-size:12px;}.sp-detail-annotation{display:flex;flex-direction:column;gap:12px;}.sp-detail-annotation-info{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);border:1px solid var(--sp-glass-border-subtle);}.sp-detail-annotation-row{display:flex;align-items:flex-start;gap:10px;}.sp-detail-annotation-row svg{width:13px;height:13px;color:var(--sp-text-tertiary);flex-shrink:0;margin-top:2px;}.sp-detail-annotation-label{font-size:10px;font-weight:600;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.06em;line-height:1;margin-bottom:3px;}.sp-detail-annotation-value{font-size:12px;line-height:1.4;color:var(--sp-text);word-break:break-all;}.sp-detail-annotation-value--mono{font-family:"SF Mono","Cascadia Code","Fira Code","Consolas",monospace;font-size:11px;background:var(--sp-bg-hover);padding:2px 6px;border-radius:4px;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sp-detail-btn-goto{width:100%;height:44px;padding:0 20px;border-radius:var(--sp-radius);border:none;background:var(--sp-accent-gradient);color:#fff;font-family:var(--sp-font);font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all 0.25s ease;box-shadow:0 2px 12px var(--sp-accent-glow);}.sp-detail-btn-goto svg{width:16px;height:16px;}.sp-detail-btn-goto:hover{box-shadow:0 4px 20px var(--sp-accent-glow);transform:translateY(-2px);}.sp-detail-btn-goto:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}@media (forced-colors: active){.sp-detail{border:2px solid ButtonText !important;background:Canvas !important;}.sp-detail-back,.sp-detail-btn-goto,.sp-detail-btn-resolve,.sp-detail-btn-reopen,.sp-detail-btn-delete,.sp-detail-btn-custom{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-detail-back:focus-visible,.sp-detail-btn-goto:focus-visible,.sp-detail-btn-resolve:focus-visible,.sp-detail-btn-reopen:focus-visible,.sp-detail-btn-delete:focus-visible,.sp-detail-btn-custom:focus-visible{outline:3px solid Highlight !important;}.sp-detail-status-pill{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-detail-message{border-left:3px solid ButtonText !important;}}.sp-detail-diag{display:flex;flex-direction:column;gap:12px;}.sp-detail-diag-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:var(--sp-radius);border:1px solid var(--sp-glass-border-subtle);background:var(--sp-glass-bg-heavy);color:var(--sp-text);font-family:var(--sp-font);font-size:12px;font-weight:600;cursor:pointer;transition:background 0.15s ease;}.sp-detail-diag-toggle:hover{background:var(--sp-bg-hover);}.sp-detail-diag-toggle svg{width:12px;height:12px;transition:transform 0.2s ease;}.sp-detail-diag-toggle[aria-expanded="true"] svg{transform:rotate(90deg);}.sp-detail-diag-counts{display:inline-flex;gap:6px;font-weight:500;color:var(--sp-text-tertiary);}.sp-detail-diag-count{padding:1px 7px;border-radius:var(--sp-radius-full);background:var(--sp-bg-hover);font-variant-numeric:tabular-nums;}.sp-detail-diag-count--errors{background:rgba(239,68,68,0.14);color:#ef4444;}.sp-detail-diag-body{display:none;flex-direction:column;gap:14px;}.sp-detail-diag-body--open{display:flex;}.sp-detail-diag-group-title{font-size:10px;font-weight:700;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:6px;}.sp-detail-diag-list{list-style:none;padding:0;margin:0;border-radius:var(--sp-radius);border:1px solid var(--sp-glass-border-subtle);background:var(--sp-glass-bg-heavy);max-height:240px;overflow-y:auto;}.sp-detail-diag-list li{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-bottom:1px solid var(--sp-glass-border-subtle);font-family:"SF Mono","Cascadia Code","Fira Code","Consolas",monospace;font-size:11px;line-height:1.45;color:var(--sp-text);}.sp-detail-diag-list li:last-child{border-bottom:none;}.sp-detail-diag-level{flex-shrink:0;font-weight:700;width:44px;text-transform:uppercase;letter-spacing:0.04em;font-size:10px;}.sp-detail-diag-level--log{color:var(--sp-text-tertiary);}.sp-detail-diag-level--info{color:#3b82f6;}.sp-detail-diag-level--warn{color:#f59e0b;}.sp-detail-diag-level--error{color:#ef4444;}.sp-detail-diag-message{flex:1;min-width:0;word-break:break-word;white-space:pre-wrap;}.sp-detail-diag-net{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;}.sp-detail-diag-net-status{flex-shrink:0;font-weight:700;color:#ef4444;min-width:32px;text-align:right;font-variant-numeric:tabular-nums;}.sp-detail-diag-net-method{flex-shrink:0;font-weight:600;color:var(--sp-text-tertiary);min-width:44px;}.sp-detail-diag-net-url{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sp-text);}.sp-detail-diag-empty{padding:12px;font-style:italic;font-size:11px;color:var(--sp-text-tertiary);text-align:center;}@media (prefers-reduced-motion: reduce){.sp-detail{transition-duration:0.01ms !important;}.sp-detail-section{animation-duration:0.01ms !important;}} ${dg}`}DA(),DA(),$(),UA(),ap(),DA();var hg="opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1), transform 0.2s cubic-bezier(0.16, 1, 0.3, 1)",ug=class{constructor(A,e="en"){this.colors=A,this.locale=e,this.root=R("div",{style:`position:fixed;z-index:2147483647;max-width:280px;padding:12px 14px;border-radius:14px;background:${this.colors.glassBgHeavy};backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid ${this.colors.glassBorder};box-shadow:0 8px 32px ${this.colors.shadow},0 2px 8px ${this.colors.shadow};font-family:"Inter",system-ui,-apple-system,sans-serif;pointer-events:auto;opacity:0;transform:translateY(6px) scale(0.97);transition:${hg};visibility:hidden;-webkit-font-smoothing:antialiased;`}),this.root.setAttribute("role","tooltip"),this.root.id=this.tooltipId,this.arrow=R("div",{style:`position:absolute;width:12px;height:12px;background:${this.colors.glassBgHeavy};border:1px solid ${this.colors.glassBorder};transform:rotate(45deg);pointer-events:none;`}),this.root.appendChild(this.arrow),this.root.addEventListener("mouseenter",()=>this.cancelHide()),this.root.addEventListener("mouseleave",()=>this.scheduleHide()),W(this.root),document.body.appendChild(this.root)}colors;locale;root;arrow;showTimer=null;hideTimer=null;currentFeedbackId=null;tooltipId="sp-tooltip";show(A,e){this.cancelHide(),this.currentFeedbackId!==A.id&&(this.cancelShow(),this.showTimer=setTimeout(()=>{this.currentFeedbackId=A.id,this.render(A),this.position(e);let t=typeof window<"u"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;this.root.style.transition=t?"none":hg,this.root.style.visibility="visible",this.root.style.opacity="1",this.root.style.transform="translateY(0) scale(1)"},120))}scheduleHide(){this.cancelHide(),this.hideTimer=setTimeout(()=>this.hide(),80)}hide(){this.cancelShow(),this.currentFeedbackId=null,this.root.style.opacity="0",this.root.style.transform="translateY(6px) scale(0.97)",setTimeout(()=>{this.currentFeedbackId||(this.root.style.visibility="hidden")},200)}cancelShow(){this.showTimer&&(clearTimeout(this.showTimer),this.showTimer=null)}cancelHide(){this.hideTimer&&(clearTimeout(this.hideTimer),this.hideTimer=null)}render(A){let e=Array.from(this.root.children);for(let A of e)A!==this.arrow&&A.remove();let t=kA(A.type,this.colors),s=HA(A.type,this.colors),r=np(this.locale),i=rp(A.type,r),n=R("div",{style:"display:flex;align-items:center;gap:8px;margin-bottom:8px;"}),o=R("span",{style:`padding:3px 10px;border-radius:9999px;font-size:11px;font-weight:600;color:${t};background:${s};letter-spacing:0.02em;`});O(o,i);let a=R("span",{style:`font-size:11px;color:${this.colors.textSecondary};margin-left:auto;`});O(a,X(A.createdAt,this.locale)),n.appendChild(o),n.appendChild(a);let l=R("div",{style:`font-size:13px;line-height:1.55;color:${this.colors.text};display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;`});O(l,A.message),this.root.insertBefore(n,this.arrow),this.root.insertBefore(l,this.arrow)}position(A){let e=this.root.getBoundingClientRect(),t=A.top-e.height-10,s=A.left+A.width/2-e.width/2,r=!0;t<8&&(t=A.bottom+10,r=!1),s=Math.max(8,Math.min(s,window.innerWidth-e.width-8)),this.root.style.top=`${t}px`,this.root.style.left=`${s}px`;let i=Math.max(16,Math.min(A.left+A.width/2-s-6,e.width-22));this.arrow.style.cssText=r?`position:absolute;width:12px;height:12px;background:${this.colors.glassBgHeavy};border-right:1px solid ${this.colors.glassBorder};border-bottom:1px solid ${this.colors.glassBorder};transform:rotate(45deg);pointer-events:none;bottom:-6px;left:${i}px;`:`position:absolute;width:12px;height:12px;background:${this.colors.glassBgHeavy};border-left:1px solid ${this.colors.glassBorder};border-top:1px solid ${this.colors.glassBorder};transform:rotate(45deg);pointer-events:none;top:-6px;left:${i}px;`}contains(A){return this.root.contains(A)}destroy(){this.cancelShow(),this.cancelHide(),this.root.remove()}};PA();var gg=null;function Bg(){let A=()=>{};return{destroy:A,open:A,close:A,refresh:A,focusFeedback:()=>!1,on:()=>A,off:A}}function wg(){try{return process.env.NODE_ENV}catch{return}}function fg(e){if(typeof window>"u"||typeof document>"u")return e.onSkip?.("ssr"),Bg();let t=e.debug?(...A)=>console.debug("[siteping]",...A):()=>{};if(gg)return t("initSiteping() called more than once \u2014 returning existing instance"),gg;if(!e.forceShow&&"production"===wg())return e.onSkip?.("production"),Bg();let s="number"==typeof e.minViewportWidth&&Number.isFinite(e.minViewportWidth)?e.minViewportWidth:0;if(!e.forceShow&&window.innerWidth<s){let A="mobile";return e.onSkip?.(A),Bg()}if(!(e.store||e.endpoint&&"string"==typeof e.endpoint))return console.error("[siteping] Missing 'endpoint' or 'store' in config. Provide an endpoint like '/api/siteping' or a SitepingStore instance."),Bg();if(!e.projectName||"string"!=typeof e.projectName)return console.error("[siteping] Missing or invalid 'projectName' in config. Expected a non-empty string."),Bg();let i=function(A){let e=function(A){try{return Intl.getCanonicalLocales(A.replace(/_/g,"-"))[0]}catch{return}}(A);return e||(console.warn(`[siteping] Invalid locale "${A}", falling back to "en"`),"en")}(e.locale??"en"),n="en"===i?Promise.resolve():A.loadLocale(i).catch(()=>{}),o=np(i),a=e.scopeAnnotationsByUrl??!0,l=()=>{try{let A=e.getPageScope?.();if(A)return A}catch(A){t("getPageScope() threw, falling back to pathname:",A)}return{url:window.location.pathname,urlPattern:null}};t("Initializing widget",{projectName:e.projectName,theme:e.theme??"light",locale:i,scopeAnnotationsByUrl:a});let c=function(A){return void 0===A||!1===A?{console:!1,network:!1,maxConsoleEntries:50,maxNetworkEntries:20}:!0===A?{console:!0,network:!0,maxConsoleEntries:50,maxNetworkEntries:20}:{console:!1!==A.console,network:!1!==A.network,maxConsoleEntries:"number"==typeof A.maxConsoleEntries?A.maxConsoleEntries:50,maxNetworkEntries:"number"==typeof A.maxNetworkEntries?A.maxNetworkEntries:20}}(e.captureDiagnostics),d=c.console?new vu(c.maxConsoleEntries):null,h=c.network?new ku(c.maxNetworkEntries):null,u=EA(e.accentColor,e.theme),g=new Hu,B=new Hu,w=(()=>{if(e.store)return new sg(e.store,e.projectName);let A=e.endpoint;if("string"!=typeof A||0===A.length)throw new Error("[siteping] internal invariant: endpoint must be a non-empty string in HTTP mode");return new yu(A,e.projectName,{apiKey:e.apiKey,headers:e.headers})})();e.onOpen&&g.on("open",e.onOpen),e.onClose&&g.on("close",e.onClose),e.onFeedbackSent&&g.on("feedback:sent",e.onFeedbackSent),e.onCommentAdded&&g.on("comment:added",e.onCommentAdded),e.onError&&g.on("feedback:error",e.onError),e.onError&&g.on("panel:action-error",e.onError),g.on("panel:action-error",A=>console.error("[siteping] Panel action failed:",A)),e.onAnnotationStart&&g.on("annotation:start",e.onAnnotationStart),e.onAnnotationEnd&&g.on("annotation:end",e.onAnnotationEnd);let m=su(e.projectName,e.endpoint);g.on("feedback:sent",A=>m.add(A.id)),g.on("feedback:deleted",A=>m.remove(A)),g.on("feedback:all-deleted",()=>m.clear());let b={"feedback:sent":()=>g.on("feedback:sent",A=>B.emit("feedback:sent",A)),"feedback:deleted":()=>g.on("feedback:deleted",A=>B.emit("feedback:deleted",A)),"comment:added":()=>g.on("comment:added",A=>B.emit("comment:added",A)),"feedback:error":()=>g.on("feedback:error",A=>B.emit("feedback:error",A)),"panel:open":()=>g.on("open",()=>B.emit("panel:open")),"panel:close":()=>g.on("close",()=>B.emit("panel:close")),"annotation:start":()=>g.on("annotation:start",()=>B.emit("annotation:start")),"annotation:end":()=>g.on("annotation:end",()=>B.emit("annotation:end"))};for(let A of Object.values(b))A();g.on("open",()=>t("Panel opened")),g.on("close",()=>t("Panel closed")),g.on("feedback:sent",A=>t("Feedback sent",A.id)),g.on("feedback:error",A=>t("Feedback failed",A.message)),g.on("annotation:start",()=>t("Annotation started")),g.on("annotation:end",()=>t("Annotation ended"));let C=document.createElement("siteping-widget");C.style.cssText="position:fixed;z-index:2147483647;pointer-events:auto;";let y="test"===wg()?"open":"closed",Q=C.attachShadow({mode:y});if("adoptedStyleSheets"in ShadowRoot.prototype){let A=new CSSStyleSheet;A.replaceSync(pg(u)),Q.adoptedStyleSheets=[A]}else{let A=document.createElement("style");A.textContent=pg(u),Q.appendChild(A)}W(C,Q);let x=function(){let A=A=>{iA(A.target)&&_()&&A.stopImmediatePropagation()},e=[["pointerdown",A],["focusin",A],["focusout",A=>{(iA(A.target)||iA(A.relatedTarget))&&_()&&A.stopImmediatePropagation()}],["keydown",A=>{"Escape"===A.key&&iA(A.target)&&_()&&function(A){for(let e=j(A);e;e=rA(e))for(let A of sA.get(e)??[])if(A())return!0;return!1}(A)&&A.preventDefault()}]];for(let[A,t]of e)window.addEventListener(A,t,!0);return()=>{for(let[A,t]of e)window.removeEventListener(A,t,!0)}}();document.body.appendChild(C);let F=function(A){let e=null,t=t=>{let s=t.target;s instanceof HTMLElement&&(s===document.body||s===document.documentElement||s===A||vh(s)||(e=Eh(s)))};return document.addEventListener("focusin",t),{getLastPageFocus:()=>(e&&!e.isConnected&&(e=null),e),destroy(){document.removeEventListener("focusin",t),e=null}}}(C),U=document.createElement("div");U.setAttribute("role","status"),U.setAttribute("aria-live","polite"),U.setAttribute("aria-atomic","true"),U.setAttribute("data-siteping-ignore","true"),U.style.cssText="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;",W(U),document.body.appendChild(U);let v=new ug(u,i),E=new tg(u,v,g,o,U),k=new Su(Q,e,g,o);g.on("markers:changed",A=>k.updateBadge(A));let H=null,I=null,S=!1,L=0;async function M(A=!1){let t=e.identity??Mu();if(t)return t;let s=await function(A,e,t){return new Promise(s=>{let i=A.activeElement??document.activeElement,n=A.host;t&&n.parentNode&&n.parentNode.appendChild(n);let o=document.createElement("div");o.className="sp-identity-backdrop";let a=document.createElement("div");a.className="sp-identity-modal";let l=`sp-identity-title-${Date.now()}`;a.setAttribute("role","dialog"),a.setAttribute("aria-modal","true"),a.setAttribute("aria-labelledby",l);let c=document.createElement("div");c.className="sp-identity-title",c.id=l,c.textContent=e("identity.title"),c.style.marginBottom="20px";let d=`sp-identity-name-${Date.now()}`,p=`sp-identity-email-${Date.now()}`,h=document.createElement("label");h.className="sp-input-label",h.textContent=e("identity.nameLabel"),h.setAttribute("for",d);let u=document.createElement("input");u.className="sp-input",u.id=d,u.type="text",u.maxLength=f,u.placeholder=e("identity.namePlaceholder"),u.style.marginBottom="14px";let g=document.createElement("label");g.className="sp-input-label",g.textContent=e("identity.emailLabel"),g.setAttribute("for",p);let B=document.createElement("input");B.className="sp-input",B.id=p,B.type="email",B.maxLength=f,B.placeholder=e("identity.emailPlaceholder");let w=document.createElement("div");w.className="sp-identity-actions";let m=OA(A=>a.style.setProperty("--sp-kb",`${A}px`)),b=A=>{o.removeEventListener("keydown",x),F(),m(),o.classList.remove("sp-identity--open"),setTimeout(()=>{o.remove(),i?.focus(),s(A)},250)},C=document.createElement("button");C.className="sp-btn-ghost",C.textContent=e("identity.cancel"),C.addEventListener("click",()=>b(null));let y=document.createElement("button");y.className="sp-btn-primary",y.textContent=e("identity.submit");let Q=(A,e)=>{A.style.borderColor=e?"var(--sp-type-bug, #ef4444)":"",e?A.setAttribute("aria-invalid","true"):A.removeAttribute("aria-invalid")};y.addEventListener("click",()=>{let A=u.value.trim(),e=B.value.trim();if(!A||!e)return;let t=A.length>f,s=e.length>f||!r(e);Q(u,t),Q(B,s),!t&&!s&&b({name:A,email:e})});let x=e=>{let t=e;if("Escape"===t.key)return t.stopPropagation(),void b(null);if("Tab"===t.key){let e=Array.from(a.querySelectorAll('input, button, [tabindex]:not([tabindex="-1"])'));if(0===e.length)return;let s=e[0],r=e[e.length-1];if(!s||!r)return;let i=A.activeElement;t.shiftKey?(i===s||!a.contains(i))&&(t.preventDefault(),r.focus()):(i===r||!a.contains(i))&&(t.preventDefault(),s.focus())}};o.addEventListener("keydown",x);let F=z(o,()=>!0);o.addEventListener("click",A=>{A.target===o&&b(null)}),w.appendChild(C),w.appendChild(y),a.appendChild(c),a.appendChild(h),a.appendChild(u),a.appendChild(g),a.appendChild(B),a.appendChild(w),o.appendChild(a),A.appendChild(o),requestAnimationFrame(()=>{o.classList.add("sp-identity--open"),u.focus()})})}(Q,o,A);return s&&function(A){try{localStorage.setItem(Lu,JSON.stringify(A))}catch{}}(s),s}async function D(){return S?null:H||(I||(I=Promise.resolve().then(()=>(ih(),th)).then(A=>S?null:(H=new A.Panel(Q,u,g,w,e.projectName,E,o,i,{getScope:l,scopeAnnotationsByUrl:a,panelActions:e.panelActions,ownFeedback:m,resolveIdentity:M,readOnly:e.readOnly}),H))),I)}if(typeof window<"u"){let A=()=>{S||D()},e=window.requestIdleCallback;"function"==typeof e?e(A):setTimeout(A,200)}let K=!1,T=g.on("panel:toggle",A=>{H||(A?(K=!0,D().then(A=>{A&&K&&A.open(),K=!1}).catch(A=>t("Failed to lazy-load panel:",A))):K=!1)}),R=new tu(u,g,o,e.enableScreenshot??!1,()=>F.getLastPageFocus()),O=null;e.enableRightClickComment&&(O=A=>{if(A.defaultPrevented)return;let e=A.pointerType;""===e||void 0===e&&2!==A.button||A.shiftKey||A.ctrlKey||A.altKey||A.metaKey||A.composedPath().some(A=>A===C||A instanceof Element&&(A.hasAttribute("data-siteping-ignore")||"siteping-markers"===A.id))||R.isBusy||(A.preventDefault(),R.startInstantAnnotation(A.clientX,A.clientY).catch(A=>t("right-click annotation failed",A)))},document.addEventListener("contextmenu",O)),"en"!==i&&n.then(()=>{S||(k.refreshLabels(),R.refreshLabels())});let P=!1,N=g.on("annotation:complete",async A=>{if(P)g.emit("submission:cancelled");else{P=!0;try{let{annotation:t,type:s,message:r,clientId:i,screenshotDataUrl:n,screenshotRegion:c}=A,p=await M(!0);if(!p)return void g.emit("submission:cancelled");let u=l(),B=null;(d||h)&&(B={console:d?.getEntries()??[],network:h?.getEntries()??[]});let f={projectName:e.projectName,type:s,message:r,url:u.url,urlPattern:u.urlPattern,viewport:`${window.innerWidth}x${window.innerHeight}`,userAgent:navigator.userAgent,authorName:p.name,authorEmail:p.email,annotations:[t],clientId:i,screenshotDataUrl:n??null,screenshotRegion:c??null,diagnostics:B};try{let A=await w.sendFeedback(f);g.emit("feedback:sent",A),(!a||A.url===u.url)&&E.addFeedback(A,E.count+1),U.textContent=o("feedback.sent.confirmation"),H&&await H.refresh()}catch(A){g.emit("feedback:error",A instanceof Error?A:new Error(String(A))),U.textContent=o("feedback.error.message")}}finally{P=!1}}}),V=l(),G=a?{limit:20,url:V.url}:{limit:20},X=function(A){return void 0===A||!1===A?{enabled:!1,param:"siteping"}:!0===A?{enabled:!0,param:"siteping"}:{enabled:!0,param:A.param??"siteping"}}(e.deepLink),$=++L;Promise.all([w.getFeedbacks(e.projectName,G),n]).then(([{feedbacks:A}])=>{if(S||L!==$)return;let e=a?A.filter(A=>A.url===V.url):A;if(E.render(e),X.enabled)try{let A=new URLSearchParams(window.location.search).get(X.param);if(A){let e=E.focusFeedback(A);t(`deepLink ?${X.param}=${A} ${e?"focused":"did not match a visible feedback"}`)}}catch(A){t("deepLink parsing failed:",A)}}).catch(A=>{t("Failed to load initial markers:",A)}),e.endpoint&&async function(A,e,t={}){await cu(async()=>{try{let s=pu();if(0===s.length)return;let r=[],i=[],n=0;for(let t of s)t.endpoint===A?!e||Bu(t.payload.authorName)===Bu(e.name)&&wu(t.payload.authorEmail)===wu(e.email)?r.push(t):n+=1:i.push(t);if(0===r.length&&0===n)return;let o=[],a=0;if(r.length>0){let e=await ou(t,!0);for(let t of r){let s=new AbortController,r=setTimeout(()=>s.abort(),ru);try{let r=await fetch(A,{method:"POST",headers:e,body:JSON.stringify(t.payload),signal:s.signal});if(r.ok){let e=await r.json().catch(()=>null);p(e,"id")&&"string"==typeof e.id&&su(t.payload.projectName,A).add(e.id);continue}lu(r.status)?o.push(t):a+=1}catch{o.push(t)}finally{clearTimeout(r)}}}a>0&&console.warn(`[siteping] flushRetryQueue: dropped ${a} queued feedback(s) the server rejected (4xx) \u2014 they would fail identically on every replay`);let l=i.concat(o);l.length>0?localStorage.setItem(iu,JSON.stringify(l)):localStorage.removeItem(iu)}catch{}})}(e.endpoint,e.identity??Mu(),{apiKey:e.apiKey,headers:e.headers}).then(()=>t("Retry queue flushed")).catch(()=>{});let Y=()=>{let A=++L;if(H?.isCurrentlyOpen)return H.refresh();let t=l(),s=a?{limit:20,url:t.url}:{limit:20};return w.getFeedbacks(e.projectName,s).then(({feedbacks:e})=>{if(S||A!==L||H?.isCurrentlyOpen)return;let s=a?e.filter(A=>A.url===t.url):e;E.render(s)})},J=null;if(!1!==e.watchNavigation&&typeof window<"u"&&typeof history<"u"){let A=A=>`${A.url}\n${A.urlPattern??""}`,e=A(V),s=()=>{if(S)return;let s=A(l());if(s===e)return;let r=e;e=s,t("SPA navigation detected \u2014 refreshing feedbacks for new scope"),Y().catch(()=>{e===s&&(e=r)})},r=history.pushState,i=history.replaceState,n=function(...A){r.apply(this,A),s()},o=function(...A){i.apply(this,A),s()};history.pushState=n,history.replaceState=o,window.addEventListener("popstate",s),window.addEventListener("hashchange",s),J=()=>{window.removeEventListener("popstate",s),window.removeEventListener("hashchange",s),history.pushState===n&&(history.pushState=r),history.replaceState===o&&(history.replaceState=i)}}let Z={destroy:()=>{S||(t("Destroying widget"),O&&document.removeEventListener("contextmenu",O),S=!0,K=!1,J?.(),F.destroy(),N(),T(),k.destroy(),H?.destroy(),R.destroy(),E.destroy(),v.destroy(),d?.dispose(),h?.dispose(),g.removeAll(),B.removeAll(),U.remove(),C.remove(),x(),gg===Z&&(gg=null))},open:()=>{g.emit("panel:toggle",!0)},close:()=>{H?H.close():K=!1},focusFeedback:A=>E.focusFeedback(A),refresh:()=>{Y().catch(()=>{})},on:(A,e)=>B.on(A,e),off:(A,e)=>{B.off(A,e)}};return gg=Z,Z}return ap(),
|
|
1
|
+
var SitePing=function(e){"use strict";var t=Object.defineProperty,i=(e,t,i)=>()=>{if(i)throw i[0];try{return e&&(t=e(e=0)),t}catch(e){throw i=[e],e}},r=(e,i)=>{for(var r in i)t(e,r,{get:i[r],enumerable:!0})};var s=i(()=>{});function n(e){return o.test(e)}var o,a=i(()=>{o=/^(?!\.)(?!.*\.\.)[\p{L}\p{M}\p{N}!#$%&'*+/=?^_`{|}~.-]{0,63}[\p{L}\p{M}\p{N}!#$%&'*+/=?^_`{|}~-]@(?:[\p{L}\p{N}](?:[\p{L}\p{M}\p{N}-]{0,61}[\p{L}\p{M}\p{N}])?\.)+[\p{L}\p{N}][\p{L}\p{M}\p{N}-]{0,61}[\p{L}\p{M}\p{N}]$/u});function l(e,t){return function(e){return"object"==typeof e&&null!==e}(e)&&t in e}var d,c,p,h,u,f=i(()=>{}),g=i(()=>{f(),d=class extends Error{code;retryable;constructor(e,t,i){super(e),this.code=t,this.retryable=i,this.name="SitepingError"}},c=class extends d{constructor(e){super(e,"NETWORK",!0),this.name="SitepingNetworkError"}},p=class extends d{status;constructor(e,t){super(e,"VALIDATION",!1),this.name="SitepingValidationError",this.status=t}},h=class extends d{status;constructor(e,t){super(e,"AUTH",!1),this.name="SitepingAuthError",this.status=t}},u=["NETWORK","VALIDATION","AUTH","SERVER","TIMEOUT"]});function m(e){return(e.split(/[-_]/)[0]??e).toLowerCase()}function b(e,t,i){return function(e,t){return e.replace(/\{(\w+)\}/g,(e,i)=>{let r=t[i];return void 0===r?e:String(r)})}(e(t),i)}var y=i(()=>{});function x(e){return S.includes(e)}function v(e,t){return l(e,"code")&&e.code===t}function w(e){return{cssSelector:e.anchor.cssSelector,xpath:e.anchor.xpath,textSnippet:e.anchor.textSnippet,elementTag:e.anchor.elementTag,elementId:e.anchor.elementId,textPrefix:e.anchor.textPrefix,textSuffix:e.anchor.textSuffix,fingerprint:e.anchor.fingerprint,neighborText:e.anchor.neighborText,anchorKey:e.anchor.anchorKey??null,xPct:e.rect.xPct,yPct:e.rect.yPct,wPct:e.rect.wPct,hPct:e.rect.hPct,scrollX:e.scrollX,scrollY:e.scrollY,viewportW:e.viewportW,viewportH:e.viewportH,devicePixelRatio:e.devicePixelRatio}}var k,C,S,E,M,A,T,B=i(()=>{f(),k=200,C=["open","in_progress","resolved","wont_fix"],S=["resolved","wont_fix"],E=5e3,M=class extends Error{code="STORE_DUPLICATE";constructor(e="Duplicate record",t){super(e,t),this.name="StoreDuplicateError"}},A=191,T=191});function R(){try{return crypto.randomUUID()}catch{return`${Date.now()}-${Math.random().toString(36).slice(2)}`}}async function L(e,t){let{status:i}=e,r=await e.text().catch(()=>"Unknown error"),s=`${t}: ${r?`${i} ${r}`:i}`;return 401===i||403===i?new h(s,i):i>=500||408===i||429===i?new d(s,"SERVER",!0):i>=400?new p(s,i):new d(s,"SERVER",!1)}function P(e,t){if(e instanceof c)return e;let i=e instanceof Error?e.message:String(e);return new c(`${t}: ${i}`)}var I,N,D=i(()=>{g(),I=(e,t)=>e?.[t]}),O=i(()=>{s(),a(),g(),y(),f(),B(),D()}),F=i(()=>{N="(max-width: 640px), (max-height: 500px) and (pointer: coarse)"});function $(e){let t=document.createRange().createContextualFragment(e).firstElementChild;if("svg"!==t?.nodeName.toLowerCase())throw new Error("[siteping] Invalid SVG string");for(let e of[...t.attributes])e.name.startsWith("on")&&t.removeAttribute(e.name);for(let e of t.querySelectorAll("*"))for(let t of[...e.attributes])t.name.startsWith("on")&&e.removeAttribute(t.name);return t}function z(e,t){let i=document.createElement(e);if(t)for(let[e,r]of Object.entries(t))"class"===e?i.className=r:"style"===e?i.style.cssText=r:i.setAttribute(e,r);return i}function _(e,t){e.textContent=t}function W(e,t){let i=e.getRootNode(),r=i instanceof ShadowRoot?i.host:null,s=i=>{e.contains(i.target)||t()},n=e=>{e.target!==r&&t()};return i.addEventListener("click",s,!0),r&&document.addEventListener("click",n,!0),()=>{i.removeEventListener("click",s,!0),r&&document.removeEventListener("click",n,!0)}}function H(e,t){e.hidden=t,e.style.display=t?"none":""}function V(e,t){e.toggleAttribute("inert",t)}function j(e){let t=e.getRootNode().activeElement;return null!==t&&e.contains(t)}function U(e){let t=Array.from(e.childNodes).map(e=>e.cloneNode(!0));return e.disabled=!0,e.replaceChildren(z("div",{class:"sp-spinner sp-spinner--sm"})),()=>{e.replaceChildren(...t),e.disabled=!1}}function Y(){let e=navigator.userAgentData;return e?"macOS"===e.platform:navigator.platform?.includes("Mac")??/Macintosh|Mac OS X/i.test(navigator.userAgent)}function q(e,t="en"){let i=Date.now()-new Date(e).getTime(),r=Math.floor(i/1e3);if(r<60)return new Intl.RelativeTimeFormat(t,{numeric:"auto"}).format(0,"second");let s=new Intl.RelativeTimeFormat(t,{numeric:"always",style:"narrow"}),n=Math.floor(r/60);if(n<60)return s.format(-n,"minute");let o=Math.floor(n/60);if(o<24)return s.format(-o,"hour");let a=Math.floor(o/24);return a<7?s.format(-a,"day"):new Date(e).toLocaleDateString(t)}var G=i(()=>{});function K(e){for(let t=e;t;t=de(t))if(se.has(t))return!0;return!1}function X(e,t){se.add(e),t&&oe.set(e,t);for(let t of ie)e.addEventListener(t,pe,{passive:!0});for(let t of["keydown","keypress","keyup"])e.addEventListener(t,he);let i=()=>{for(let t of re)("inert"!==t||!ne.has(e))&&e.removeAttribute(t)};i(),new MutationObserver(i).observe(e,{attributeFilter:re})}function J(e,t){t?ne.add(e):ne.delete(e),e.toggleAttribute("inert",t)}function Q(e,t){let i=ae.get(e);return i||(i=new Set,ae.set(e,i)),i.add(t),()=>{i.delete(t)}}function Z(e,t){let i=le.get(e);return i||(i=new Set,le.set(e,i)),i.add(t),e.addEventListener("keydown",t),()=>{i.delete(t),e.removeEventListener("keydown",t)}}function ee(){if("none"===getComputedStyle(document.body).pointerEvents)return!0;for(let e of document.querySelectorAll('[aria-modal="true"]'))if(e.getClientRects().length>0&&"visible"===getComputedStyle(e).visibility&&!K(e))return!0;return!1}function te(e){let t=e.composedPath()[0];for(;t instanceof Element;){let e=(t.shadowRoot??oe.get(t))?.activeElement;if(!e)break;t=e}return t instanceof Node?t:null}var ie,re,se,ne,oe,ae,le,de,ce,pe,he,ue,fe,ge,me,be,ye,xe,ve,we,ke,Ce,Se,Ee,Me,Ae,Te,Be,Re,Le,Pe=i(()=>{ie=["pointerdown","mousedown","touchstart","touchend","click","focusin","focusout","wheel","touchmove"],re=["inert","aria-hidden"],se=new WeakSet,ne=new WeakSet,oe=new WeakMap,ae=new WeakMap,le=new WeakMap,de=e=>e instanceof ShadowRoot?e.host:e.parentNode,ce=e=>e instanceof Node&&K(e),pe=e=>e.stopPropagation(),he=e=>{let{key:t}=e,i=te(e);"Tab"!==t&&"Escape"!==t&&i instanceof HTMLElement&&(i.isContentEditable||/^(INPUT|TEXTAREA|SELECT)$/.test(i.tagName))&&e.stopPropagation()}}),Ie=i(()=>{ue='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/><circle cx="12" cy="10" r="1" fill="currentColor" stroke="none"/><circle cx="8" cy="10" r="1" fill="currentColor" stroke="none"/><circle cx="16" cy="10" r="1" fill="currentColor" stroke="none"/></svg>',fe='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg>',ge='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94"/><path d="M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19"/><line x1="1" y1="1" x2="23" y2="23"/></svg>',me='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>',be='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>',ye='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="20 6 9 17 4 12"/></svg>',xe='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="2" y="3" width="20" height="5" rx="1"/><path d="M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8M10 12h4"/></svg>',ve='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="10"/><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>',we='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"/><path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"/></svg>',ke='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="8" y="6" width="8" height="14" rx="4"/><path d="M19 9h2"/><path d="M3 9h2"/><path d="M19 13h2"/><path d="M3 13h2"/><path d="M19 17h2"/><path d="M3 17h2"/><path d="M10 2h4"/></svg>',Ce='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="1"/><circle cx="19" cy="12" r="1"/><circle cx="5" cy="12" r="1"/></svg>',Se='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polygon points="12 2 2 7 12 12 22 7 12 2"/><polyline points="2 17 12 22 22 17"/><polyline points="2 12 12 17 22 12"/></svg>',Ee='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="3" fill="currentColor" stroke="none"/></svg>',Me='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg>',Ae='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="1 4 1 10 7 10"/><path d="M3.51 15a9 9 0 1 0 2.13-9.36L1 10"/></svg>',Te='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="3 6 5 6 21 6"/><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/><line x1="10" y1="11" x2="10" y2="17"/><line x1="14" y1="11" x2="14" y2="17"/></svg>',Be='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>',Re='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="8" y1="6" x2="21" y2="6"/><line x1="8" y1="12" x2="21" y2="12"/><line x1="8" y1="18" x2="21" y2="18"/><line x1="3" y1="6" x2="3.01" y2="6"/><line x1="3" y1="12" x2="3.01" y2="12"/><line x1="3" y1="18" x2="3.01" y2="18"/></svg>',Le='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 20h9"/><path d="M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"/></svg>'});function Ne(e,t,i){let r="#";for(let s=1;s<7;s+=2){let n=parseInt(e.slice(s,s+2),16);r+=Math.round(n+(parseInt(t.slice(s,s+2),16)-n)*i).toString(16).padStart(2,"0")}return r}function De(e){let t=0;for(let[i,r]of[[1,.2126],[3,.7152],[5,.0722]]){let s=parseInt(e.slice(i,i+2),16)/255;t+=r*(s<=.04045?s/12.92:((s+.055)/1.055)**2.4)}return t}function Oe(e,t,i){let r=De(t),s=e;for(let t=1;t<=10;t++){let n=De(s);if((Math.max(n,r)+.05)/(Math.min(n,r)+.05)>=4.5)break;s=Ne(e,i,t/10)}return s}function Fe(e=He,t){let i=function(e){if(Ve.test(e))return e;let t=je.test(e)?e.match(je):null;return t?`#${t[1]}${t[1]}${t[2]}${t[2]}${t[3]}${t[3]}`:Ue.test(e)?e.slice(0,7):(console.warn(`[siteping] Invalid accentColor "${e}" \u2014 only hex colors (#RGB, #RRGGBB, #RRGGBBAA) are supported. Using default.`),He)}(e),r=Ne(i,"#000000",.15);return"dark"===function(e){return"dark"===e||"auto"===e&&!(typeof window>"u"||"function"!=typeof window.matchMedia)&&window.matchMedia(Ye).matches?"dark":"light"}(t)?{accent:i,accentLight:i+"22",accentDark:r,accentGlow:i+"44",accentGradient:`linear-gradient(135deg, ${i}, ${r})`,accentText:Oe(i,Ne("#1e293b",i,34/255),"#ffffff"),bg:"#0f172a",bgHover:"#1e293b",text:"#f1f5f9",textSecondary:"#94a3b8",textTertiary:"#8695aa",border:"#334155",shadow:"rgba(0, 0, 0, 0.3)",glassBg:"rgba(15, 23, 42, 0.94)",glassBgHeavy:"rgba(15, 23, 42, 0.96)",glassBorder:"rgba(51, 65, 85, 0.5)",glassBorderSubtle:"rgba(51, 65, 85, 0.3)",typeQuestion:"#60a5fa",typeChange:"#fbbf24",typeBug:"#f87171",typeOther:"#94a3b8",typeQuestionBg:"rgba(59, 130, 246, 0.15)",typeChangeBg:"rgba(245, 158, 11, 0.15)",typeBugBg:"rgba(239, 68, 68, 0.15)",typeOtherBg:"rgba(100, 116, 139, 0.15)",statusOpen:"#4ade80",statusOpenBg:"rgba(74, 222, 128, 0.15)",statusResolved:"#a3b0c2",statusResolvedBg:"rgba(148, 163, 184, 0.15)",statusInProgress:"#fbbf24",statusInProgressBg:"rgba(245, 158, 11, 0.15)",statusWontFix:"#a3b0c2",statusWontFixBg:"rgba(148, 163, 184, 0.15)"}:{accent:i,accentLight:i+"14",accentDark:r,accentGlow:i+"33",accentGradient:`linear-gradient(135deg, ${i}, ${r})`,accentText:Oe(i,Ne("#f8f9fb",i,20/255),"#000000"),bg:"#ffffff",bgHover:"#f8f9fb",text:"#0f172a",textSecondary:"#475569",textTertiary:"#64748b",border:"#e2e8f0",shadow:"rgba(0, 0, 0, 0.06)",glassBg:"rgba(255, 255, 255, 0.72)",glassBgHeavy:"rgba(255, 255, 255, 0.85)",glassBorder:"rgba(255, 255, 255, 0.35)",glassBorderSubtle:"rgba(255, 255, 255, 0.18)",typeQuestion:"#2563eb",typeChange:"#b45309",typeBug:"#d01f1f",typeOther:"#5b6778",typeQuestionBg:"#eff6ff",typeChangeBg:"#fffbeb",typeBugBg:"#fef2f2",typeOtherBg:"#f8fafc",statusOpen:"#15803d",statusOpenBg:"#f0fdf4",statusResolved:"#5b6778",statusResolvedBg:"#f1f5f9",statusInProgress:"#b45309",statusInProgressBg:"#fffbeb",statusWontFix:"#5b6778",statusWontFixBg:"#f1f5f9"}}function $e(e,t){switch(e){case"question":return t.typeQuestion;case"change":return t.typeChange;case"bug":return t.typeBug;default:return t.typeOther}}function ze(e,t){switch(e){case"in_progress":return t.statusInProgress;case"resolved":return t.statusResolved;case"wont_fix":return t.statusWontFix;default:return t.statusOpen}}function _e(e,t){switch(e){case"in_progress":return t.statusInProgressBg;case"resolved":return t.statusResolvedBg;case"wont_fix":return t.statusWontFixBg;default:return t.statusOpenBg}}function We(e,t){switch(e){case"question":return t.typeQuestionBg;case"change":return t.typeChangeBg;case"bug":return t.typeBugBg;default:return t.typeOtherBg}}var He,Ve,je,Ue,Ye,qe=i(()=>{He="#0066ff",Ve=/^#[0-9a-fA-F]{6}$/,je=/^#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])$/,Ue=/^#[0-9a-fA-F]{8}$/,Ye="(prefers-color-scheme: dark)"});function Ge(e){return"function"==typeof window.matchMedia&&window.matchMedia(e).matches}function Ke(){return Ge(N)}function Xe(){return Ge("(pointer: coarse)")}function Je(){return Ge("(prefers-reduced-motion: reduce)")}function Qe(e){let t=window.visualViewport;if(!t)return()=>{};let i=()=>e(Math.max(0,Math.round(window.innerHeight-t.height-t.offsetTop)),t.height);return i(),t.addEventListener("resize",i),t.addEventListener("scroll",i),()=>{t.removeEventListener("resize",i),t.removeEventListener("scroll",i)}}var Ze=i(()=>{F()}),et={};function tt(e={}){return new pt({allowDataUrls:!0,maxImageTimeout:3e5,...e})}function it(e){return!(20===e.type&&"none"===e.value||18===e.type&&!ao[e.name])}function rt(e){if(!e||"none"===e)return qc;let t=Yc.get(e);if(void 0!==t)return Yc.delete(e),Yc.set(e,t),t;let i=Gc(e);if(Yc.size>=Uc){let e=Yc.keys().next().value;void 0!==e&&Yc.delete(e)}return Yc.set(e,i),i}function st(e){let t=0,i=0;for(let r of e.functions)"blur"===r.kind?t+=r.value:"drop-shadow"===r.kind&&(t+=r.blur,i=Math.max(i,Math.abs(r.x),Math.abs(r.y)));return Math.ceil(3*t+i)}function nt(e){let t=(e.ownerDocument??document).createElement("canvas");return t.width=e.width,t.height=e.height,t}async function ot(e,t,i,r,s){if(Yl(s),t.functions.length>0&&function(e=document){let t=rp.get(e);if(void 0!==t)return t;let i=e.createElement("canvas"),r=e.createElement("canvas"),s=!1;try{i.width=i.height=r.width=r.height=32;let e=i.getContext("2d"),t=r.getContext("2d");if(e&&t&&"filter"in t){e.fillStyle="#fff",e.fillRect(8,8,8,8),t.filter="blur(2px)",t.drawImage(i,0,0);let r=(t.getImageData(6,12,1,1).data[3]??0)>0;t.clearRect(0,0,32,32),t.filter="drop-shadow(12px 0px 0px rgba(255, 0, 0, 0.5))",t.drawImage(i,0,0);let n=t.getImageData(24,12,1,1).data;s=r&&(n[0]??0)>240&&(n[1]??0)<10&&(n[3]??0)>=126&&(n[3]??0)<=129}}catch{}finally{Vc(i),Vc(r)}return rp.set(e,s),s}(e.ownerDocument??document)){let n=function(e,t,i,r,s){let n,o,a=!1;try{Yl(s),n=nt(e);let l=n.getContext("2d");if(!l||!("filter"in l)||(l.filter=tp(t,r),"none"===l.filter||""===l.filter))return null;l.drawImage(e,0,0),Yl(s),o=nt(e);let d=o.getContext("2d");return d?(d.globalAlpha=i,d.drawImage(n,0,0),Yl(s),a=!0,o):null}catch{return Yl(s),null}finally{n&&Vc(n),o&&!a&&Vc(o)}}(e,t,i,r,s);if(n)return n}if(!sp(t))throw new Hc("Filter chain requires native canvas filters");return async function(e,t,i,r,s){Yl(s);let n=t.functions.find(e=>"blur"===e.kind),o=t.functions.find(e=>"drop-shadow"===e.kind),a=n&&"blur"===n.kind?n.value:0,l=o&&"drop-shadow"===o.kind?{x:o.x,y:o.y,blur:o.blur,color:o.color}:void 0;if(!a&&!l){let t=nt(e),r=t.getContext("2d");if(!r)throw Vc(t),new Hc("Filter surface canvas is unavailable");r.globalAlpha=i;try{return r.drawImage(e,0,0),t}catch{throw Vc(t),new Hc("Filter surface image cannot be drawn")}}let d,c=e.ownerDocument??document,p=(e,t={})=>{let i=c.createElementNS("http://www.w3.org/2000/svg",e);return Object.entries(t).forEach(([e,t])=>i.setAttribute(e,String(t))),i},h=p("svg",{width:e.width,height:e.height,viewBox:`0 0 ${e.width} ${e.height}`}),u=p("defs"),f=p("filter",{id:"composited-filter",filterUnits:"userSpaceOnUse",x:0,y:0,width:e.width,height:e.height,"color-interpolation-filters":"sRGB"});if(a&&f.appendChild(p("feGaussianBlur",{stdDeviation:a*r,result:"blurred-source"})),l){f.appendChild(p("feGaussianBlur",{in:a?"blurred-source":"SourceAlpha",stdDeviation:l.blur*r})),f.appendChild(p("feOffset",{dx:l.x*r,dy:l.y*r,result:"offset-shadow"})),f.appendChild(p("feFlood",{"flood-color":l.color})),f.appendChild(p("feComposite",{in2:"offset-shadow",operator:"in"}));let e=p("feMerge");e.appendChild(p("feMergeNode")),e.appendChild(p("feMergeNode",{in:a?"blurred-source":"SourceGraphic"})),f.appendChild(e)}u.appendChild(f),h.appendChild(u);try{if(d=e.toDataURL("image/png"),"data:,"===d)throw new Error("Canvas size is unsupported")}catch{throw new Hc("Filter surface pixels cannot be serialized")}h.appendChild(p("image",{width:e.width,height:e.height,href:d,filter:"url(#composited-filter)"}));let g,m=c.defaultView,b=m?.Image?new m.Image:new Image;try{b.src=`data:image/svg+xml,${encodeURIComponent((new XMLSerializer).serializeToString(h))}`,await ip(b,s),Yl(s),g=nt(e);let t=g.getContext("2d");if(!t)throw new Hc("Filter surface canvas is unavailable");return t.globalAlpha=i,t.drawImage(b,0,0),g}catch(e){throw g&&Vc(g),s?.aborted&&Yl(s),e instanceof Hc?e:new Hc("Filter surface image cannot be drawn")}finally{b.removeAttribute("src")}}(e,t,i,r,s)}function at(e,t,i){let r=t*i*4;return!Number.isFinite(r)||t<=0||i<=0||t>8192||i>8192||e.pixels+r>16777216?0:(e.pixels+=r,r)}function lt(e){let t=e.styles,i=e.bounds;for(let r of t.boxShadow)if(!r.inset){let t=Math.max(0,r.spread.number)+3*r.blur.number;i=op(i,np(e.bounds.add(r.offsetX.number,r.offsetY.number,0,0),t))}for(let r of e.textNodes)for(let s of r.textBounds){let r=np(s.bounds,2*Pi(t.fontSize,e.bounds.height)+t.webkitTextStrokeWidth);i=op(i,r);for(let e of t.textShadow)i=op(i,np(r.add(e.offsetX.number,e.offsetY.number,0,0),3*e.blur.number))}for(let t of e.elements)t.styles.isVisible()&&(i=op(i,lt(t)));let r=rt(t.filter);return np(i,r?st(r):0)}function dt(e,t,i,r){let s=np(t,i),n=Math.floor(Math.max(e.left,s.left)*r)/r,o=Math.floor(Math.max(e.top,s.top)*r)/r,a=Math.ceil(Math.min(e.left+e.width,s.left+s.width)*r)/r,l=Math.ceil(Math.min(e.top+e.height,s.top+s.height)*r)/r;return new ut(n,o,Math.max(0,a-n),Math.max(0,l-o))}r(et,{Html2CanvasConfig:()=>ct,PerformanceMonitor:()=>ht,Validator:()=>pt,createDefaultValidator:()=>tt,default:()=>Eh,html2canvas:()=>Eh});var ct,pt,ht,ut,ft,gt,mt,bt,yt,xt,vt,wt,kt,Ct,St,Et,Mt,At,Tt,Bt,Rt,Lt,Pt,It,Nt,Dt,Ot,Ft,$t,zt,_t,Wt,Ht,Vt,jt,Ut,Yt,qt,Gt,Kt,Xt,Jt,Qt,Zt,ei,ti,ii,ri,si,ni,oi,ai,li,di,ci,pi,hi,ui,fi,gi,mi,bi,yi,xi,vi,wi,ki,Ci,Si,Ei,Mi,Ai,Ti,Bi,Ri,Li,Pi,Ii,Ni,Di,Oi,Fi,$i,zi,_i,Wi,Hi,Vi,ji,Ui,Yi,qi,Gi,Ki,Xi,Ji,Qi,Zi,er,tr,ir,rr,sr,nr,or,ar,lr,dr,cr,pr,hr,ur,fr,gr,mr,br,yr,xr,vr,wr,kr,Cr,Sr,Er,Mr,Ar,Tr,Br,Rr,Lr,Pr,Ir,Nr,Dr,Or,Fr,$r,zr,_r,Wr,Hr,Vr,jr,Ur,Yr,qr,Gr,Kr,Xr,Jr,Qr,Zr,es,ts,is,rs,ss,ns,os,as,ls,ds,cs,ps,hs,us,fs,gs,ms,bs,ys,xs,vs,ws,ks,Cs,Ss,Es,Ms,As,Ts,Bs,Rs,Ls,Ps,Is,Ns,Ds,Os,Fs,$s,zs,_s,Ws,Hs,Vs,js,Us,Ys,qs,Gs,Ks,Xs,Js,Qs,Zs,en,tn,rn,sn,nn,on,an,ln,dn,cn,pn,hn,un,fn,gn,mn,bn,yn,xn,vn,wn,kn,Cn,Sn,En,Mn,An,Tn,Bn,Rn,Ln,Pn,In,Nn,Dn,On,Fn,$n,zn,_n,Wn,Hn,Vn,jn,Un,Yn,qn,Gn,Kn,Xn,Jn,Qn,Zn,eo,to,io,ro,so,no,oo,ao,lo,co,po,ho,uo,fo,go,mo,bo,yo,xo,vo,wo,ko,Co,So,Eo,Mo,Ao,To,Bo,Ro,Lo,Po,Io,No,Do,Oo,Fo,$o,zo,_o,Wo,Ho,Vo,jo,Uo,Yo,qo,Go,Ko,Xo,Jo,Qo,Zo,ea,ta,ia,ra,sa,na,oa,aa,la,da,ca,pa,ha,ua,fa,ga,ma,ba,ya,xa,va,wa,ka,Ca,Sa,Ea,Ma,Aa,Ta,Ba,Ra,La,Pa,Ia,Na,Da,Oa,Fa,$a,za,_a,Wa,Ha,Va,ja,Ua,Ya,qa,Ga,Ka,Xa,Ja,Qa,Za,el,tl,il,rl,sl,nl,ol,al,ll,dl,cl,pl,hl,ul,fl,gl,ml,bl,yl,xl,vl,wl,kl,Cl,Sl,El,Ml,Al,Tl,Bl,Rl,Ll,Pl,Il,Nl,Dl,Ol,Fl,$l,zl,_l,Wl,Hl,Vl,jl,Ul,Yl,ql,Gl,Kl,Xl,Jl,Ql,Zl,ed,td,id,rd,sd,nd,od,ad,ld,dd,cd,pd,hd,ud,fd,gd,md,bd,yd,xd,vd,wd,kd,Cd,Sd,Ed,Md,Ad,Td,Bd,Rd,Ld,Pd,Id,Nd,Dd,Od,Fd,$d,zd,_d,Wd,Hd,Vd,jd,Ud,Yd,qd,Gd,Kd,Xd,Jd,Qd,Zd,ec,tc,ic,rc,sc,nc,oc,ac,lc,dc,cc,pc,hc,uc,fc,gc,mc,bc,yc,xc,vc,wc,kc,Cc,Sc,Ec,Mc,Ac,Tc,Bc,Rc,Lc,Pc,Ic,Nc,Dc,Oc,Fc,$c,zc,_c,Wc,Hc,Vc,jc,Uc,Yc,qc,Gc,Kc,Xc,Jc,Qc,Zc,ep,tp,ip,rp,sp,np,op,ap,lp,dp,cp,pp,hp,up,fp,gp,mp,bp,yp,xp,vp,wp,kp,Cp,Sp,Ep,Mp,Ap,Tp,Bp,Rp,Lp,Pp,Ip,Np,Dp,Op,Fp,$p,zp,_p,Wp,Hp,Vp,jp,Up,Yp,qp,Gp,Kp,Xp,Jp,Qp,Zp,eh,th,ih,rh,sh,nh,oh,ah,lh,dh,ch,ph,hh,uh,fh,gh,mh,bh,yh,xh,vh,wh,kh,Ch,Sh,Eh,Mh,Ah=i(()=>{ct=class e{window;cspNonce;cache;constructor(e={}){let t=e.window||(typeof window<"u"?window:void 0);if(!t)throw new Error("Window object is required but not available");this.window=t,this.cspNonce=e.cspNonce,this.cache=e.cache}static fromElement(t,i={}){let r=t.ownerDocument;if(!r)throw new Error("Element is not attached to a document");let s=r.defaultView;if(!s)throw new Error("Document is not attached to a window");return new e({window:s,...i})}clone(t={}){return new e({window:t.window||this.window,cspNonce:t.cspNonce??this.cspNonce,cache:t.cache??this.cache})}},pt=class{config;constructor(e={}){this.config={maxImageTimeout:3e5,allowDataUrls:!0,...e}}validateUrl(e,t="general"){if(!e||"string"!=typeof e)return{valid:!1,error:"URL must be a non-empty string"};if(e.startsWith("data:"))return this.config.allowDataUrls?{valid:!0,sanitized:e}:{valid:!1,error:"Data URLs are not allowed"};if(e.startsWith("blob:"))return{valid:!0,sanitized:e};try{let i=new URL(e);if(!["http:","https:"].includes(i.protocol))return{valid:!1,error:`Protocol ${i.protocol} is not allowed. Only http and https are permitted.`};if("proxy"===t&&this.config.allowedProxyDomains&&this.config.allowedProxyDomains.length>0){let e=i.hostname.toLowerCase();if(!this.config.allowedProxyDomains.some(t=>{let i=t.toLowerCase();return e===i||e.endsWith("."+i)}))return{valid:!1,error:`Proxy domain ${i.hostname} is not in the allowed list`}}if("proxy"===t){if(!this.config.allowLocalhostProxy){let e=i.hostname.toLowerCase();if("localhost"===e||"127.0.0.1"===e||"::1"===e)return{valid:!1,error:"Localhost is not allowed for proxy URLs"};if(this.isPrivateIP(e))return{valid:!1,error:"Private IP addresses are not allowed for proxy URLs"};if(e.startsWith("169.254.")||e.startsWith("fe80:"))return{valid:!1,error:"Link-local addresses are not allowed for proxy URLs"}}return{valid:!0,sanitized:e}}return{valid:!0,sanitized:e}}catch(e){return{valid:!1,error:`Invalid URL format: ${e instanceof Error?e.message:"Unknown error"}`}}}isPrivateIP(e){return!![/^0\./,/^10\./,/^100\.(6[4-9]|[7-9][0-9]|1[0-1][0-9]|12[0-7])\./,/^127\./,/^169\.254\./,/^172\.(1[6-9]|2[0-9]|3[0-1])\./,/^192\.0\.0\./,/^192\.0\.2\./,/^192\.168\./,/^198\.(1[8-9])\./,/^198\.51\.100\./,/^203\.0\.113\./,/^2(2[4-9]|3[0-9])\./,/^24[0-9]\./,/^255\.255\.255\.255$/].some(t=>t.test(e))||!!e.includes(":")&&this.isPrivateIPv6(e)}isPrivateIPv6(e){let t=e.toLowerCase().trim().replace(/^\[|\]$/g,""),i=t.split("%")[0]??t;if(/^(0:){7}1$/.test(i)||"::1"===i||/^(0:){7}0$/.test(i)||"::"===i)return!0;let r=this.expandIPv6(i);if(!r)return this.isPrivateIPv6Prefix(i);let s=parseInt(r.substring(0,2),16);if(s>=252&&s<=253)return!0;if(254===s){let e=parseInt(r.substring(2,4),16);if(e>=128&&e<=191)return!0}return 255===s}expandIPv6(e){try{if(e.includes("::")){let t=e.split("::");if(t.length>2)return null;let i=t[0]?t[0].split(":"):[],r=t[1]?t[1].split(":"):[],s=8-i.length-r.length;if(s<0)return null;let n=Array(s).fill("0000");return[...i,...n,...r].map(e=>e.padStart(4,"0")).join(":")}{let t=e.split(":");return 8!==t.length?null:t.map(e=>e.padStart(4,"0")).join(":")}}catch{return null}}isPrivateIPv6Prefix(e){return!!(/^fc[0-9a-f]{0,2}:?/i.test(e)||/^fd[0-9a-f]{0,2}:?/i.test(e)||/^fe[89ab][0-9a-f]:?/i.test(e)||/^ff[0-9a-f]{0,2}:?/i.test(e))}validateCspNonce(e){return e&&"string"==typeof e?e.length<16?{valid:!1,error:"CSP nonce is too short (minimum 16 characters recommended)"}:/^[A-Za-z0-9+/=_-]+$/.test(e)?{valid:!0,sanitized:e}:{valid:!1,error:"CSP nonce contains invalid characters"}:{valid:!1,error:"CSP nonce must be a non-empty string"}}validateImageTimeout(e){return"number"!=typeof e||isNaN(e)?{valid:!1,error:"Image timeout must be a number"}:e<0?{valid:!1,error:"Image timeout cannot be negative"}:this.config.maxImageTimeout&&e>this.config.maxImageTimeout?{valid:!1,error:`Image timeout ${e}ms exceeds maximum allowed ${this.config.maxImageTimeout}ms`}:{valid:!0,sanitized:e}}validateDimensions(e,t){if("number"!=typeof e||"number"!=typeof t)return{valid:!1,error:"Dimensions must be numbers"};if(isNaN(e)||isNaN(t))return{valid:!1,error:"Dimensions cannot be NaN"};if(e<=0||t<=0)return{valid:!1,error:"Dimensions must be positive"};let i=32767;return e>i||t>i?{valid:!1,error:`Dimensions exceed maximum allowed (${i}px)`}:{valid:!0,sanitized:{width:e,height:t}}}validateScale(e){return"number"!=typeof e||isNaN(e)?{valid:!1,error:"Scale must be a number"}:e<=0?{valid:!1,error:"Scale must be positive"}:e>10?{valid:!1,error:"Scale factor too large (maximum 10x)"}:{valid:!0,sanitized:e}}validateElement(e){if(!e)return{valid:!1,error:"Element is required"};if("object"!=typeof e)return{valid:!1,error:"Element must be an object"};let t=e;return typeof HTMLElement<"u"&&e instanceof HTMLElement?e.ownerDocument?{valid:!0}:{valid:!1,error:"Element must be attached to a document"}:t.ownerDocument?t.ownerDocument.defaultView?{valid:!0}:{valid:!1,error:"Document must be attached to a window (ownerDocument.defaultView required)"}:{valid:!1,error:"Element must be attached to a document (ownerDocument required)"}}validateOptions(e){let t=[],i=e.proxy;if(null!=i&&"string"==typeof i&&i.length>0){let e=this.validateUrl(i,"proxy");e.valid||t.push(`Proxy: ${e.error}`)}if(void 0!==e.imageTimeout){let i=this.validateImageTimeout(e.imageTimeout);i.valid||t.push(`Image timeout: ${i.error}`)}if(void 0!==e.width||void 0!==e.height){let i=e.width??800,r=e.height??600,s=this.validateDimensions(i,r);s.valid||t.push(`Dimensions: ${s.error}`)}if(void 0!==e.scale){let i=this.validateScale(e.scale);i.valid||t.push(`Scale: ${i.error}`)}if(void 0!==e.cspNonce){let i=this.validateCspNonce(e.cspNonce);i.valid||t.push(`CSP nonce: ${i.error}`)}if(this.config.customValidator){let i=this.config.customValidator(e,"options");i.valid||t.push(`Custom validation: ${i.error}`)}return t.length>0?{valid:!1,error:t.join("; ")}:{valid:!0}}},ht=class{context;activeMetrics=new Map;completedMetrics=[];enabled;getTime;constructor(e,t=!0){this.context=e,this.enabled=t,this.getTime=typeof performance<"u"&&"function"==typeof performance.now?()=>performance.now():()=>Date.now()}start(e,t){this.enabled&&(this.activeMetrics.has(e)&&this.context?.logger.warn(`Performance metric '${e}' already started. Overwriting.`),this.activeMetrics.set(e,{name:e,startTime:this.getTime(),metadata:t}))}end(e){if(!this.enabled)return;let t=this.activeMetrics.get(e);if(t)return t.endTime=this.getTime(),t.duration=t.endTime-t.startTime,this.completedMetrics.push(t),this.activeMetrics.delete(e),this.context?.logger.debug(`\u23f1\ufe0f ${e}: ${t.duration.toFixed(2)}ms`,t.metadata),t;this.context?.logger.warn(`Performance metric '${e}' not found. Was start() called?`)}measure(e,t,i){this.start(e,i);try{let i=t();return this.end(e),i}catch(t){throw this.end(e),t}}async measureAsync(e,t,i){this.start(e,i);try{let i=await t();return this.end(e),i}catch(t){throw this.end(e),t}}getMetrics(){return[...this.completedMetrics]}getMetric(e){return this.completedMetrics.find(t=>t.name===e)}getSummary(){let e=this.completedMetrics.reduce((e,t)=>e+(t.duration||0),0),t=this.completedMetrics.map(t=>({name:t.name,duration:t.duration||0,percentage:e>0?((t.duration||0)/e*100).toFixed(1)+"%":"0%"}));return{totalDuration:e,metrics:this.getMetrics(),breakdown:t}}logSummary(){if(!this.enabled||0===this.completedMetrics.length||!this.context)return;let e=this.getSummary();this.context.logger.info(`\n\ud83d\udcca Performance Summary (Total: ${e.totalDuration.toFixed(2)}ms):`),e.breakdown.sort((e,t)=>t.duration-e.duration).forEach(e=>{this.context.logger.info(` ${e.name.padEnd(20)} ${e.duration.toFixed(2).padStart(8)}ms ${e.percentage.padStart(6)}`)})}clear(){this.activeMetrics.clear(),this.completedMetrics.splice(0)}isEnabled(){return this.enabled}getActiveMetrics(){return Array.from(this.activeMetrics.keys())}},ut=class e{left;top;width;height;constructor(e,t,i,r){this.left=e,this.top=t,this.width=i,this.height=r}add(t,i,r,s){return new e(this.left+t,this.top+i,this.width+r,this.height+s)}static fromClientRect(t,i){return new e(i.left+t.windowBounds.left,i.top+t.windowBounds.top,i.width,i.height)}static fromDOMRectList(t,i){let r=Array.from(i),s=r.find(e=>0!==e.width);return s||(s=r.find(e=>0!==e.height)),!s&&r.length>0&&(s=r[0]),s?new e(s.left+t.windowBounds.left,s.top+t.windowBounds.top,s.width,s.height):e.EMPTY}static EMPTY=new e(0,0,0,0)},ft=(e,t)=>ut.fromClientRect(e,t.getBoundingClientRect()),gt=e=>{let t=e.body,i=e.documentElement;if(!t||!i)throw new Error("Unable to get document size");return new ut(0,0,Math.max(Math.max(t.scrollWidth,i.scrollWidth),Math.max(t.offsetWidth,i.offsetWidth),Math.max(t.clientWidth,i.clientWidth)),Math.max(Math.max(t.scrollHeight,i.scrollHeight),Math.max(t.offsetHeight,i.offsetHeight),Math.max(t.clientHeight,i.clientHeight)))},mt=(e,t)=>{let i=e[t];if(void 0===i)throw new Error(`Missing element at index ${t}`);return i},bt=e=>e>=48&&e<=57,yt=e=>e>=55296&&e<=57343,xt=e=>bt(e)||e>=65&&e<=70||e>=97&&e<=102,vt=e=>e>=97&&e<=122,wt=e=>e>=65&&e<=90,kt=e=>vt(e)||wt(e),Ct=e=>e>=128,St=e=>10===e||9===e||32===e,Et=e=>kt(e)||Ct(e)||95===e,Mt=e=>Et(e)||bt(e)||45===e,At=e=>e>=0&&e<=8||11===e||e>=14&&e<=31||127===e,Tt=(e,t)=>92===e&&10!==t,Bt=(e,t,i)=>45===e?Et(t)||Tt(t,i):!!Et(e)||!(92!==e||!Tt(e,t)),Rt=(e,t,i)=>43===e||45===e?!!bt(t)||46===t&&bt(i):bt(46===e?t:e),Lt=e=>{let t=0,i=1;(43===e[t]||45===e[t])&&(45===e[t]&&(i=-1),t++);let r=[];for(;bt(e[t]??NaN);)r.push(mt(e,t)),t++;let s=r.length?parseInt(String.fromCodePoint(...r),10):0;46===e[t]&&t++;let n=[];for(;bt(e[t]??NaN);)n.push(mt(e,t)),t++;let o=n.length,a=o?parseInt(String.fromCodePoint(...n),10):0;(69===e[t]||101===e[t])&&t++;let l=1;(43===e[t]||45===e[t])&&(45===e[t]&&(l=-1),t++);let d=[];for(;bt(e[t]??NaN);)d.push(mt(e,t)),t++;let c=d.length?parseInt(String.fromCodePoint(...d),10):0;return i*(s+a*Math.pow(10,-o))*Math.pow(10,l*c)},Pt={type:2},It={type:3},Nt={type:4},Dt={type:13},Ot={type:8},Ft={type:21},$t={type:9},zt={type:10},_t={type:11},Wt={type:12},Ht={type:14},Vt={type:23},jt={type:1},Ut={type:25},Yt={type:24},qt={type:26},Gt={type:27},Kt={type:28},Xt={type:29},Jt={type:31},Qt={type:32},Zt=class e{static _pool=[];static MAX_POOL_SIZE=40;static get(){return e._pool.pop()||new e}static release(t){e._pool.length<e.MAX_POOL_SIZE&&(t._reset(),e._pool.push(t))}_value;_cursor;constructor(){this._value=[],this._cursor=0}_reset(){this._value=[],this._cursor=0}write(e){this._cursor>0&&(this._value=this._value.slice(this._cursor),this._cursor=0),this._value=this._value.concat([...e].map(e=>e.codePointAt(0)))}read(){let e=[],t=this.consumeToken();for(;t!==Qt;)e.push(t),t=this.consumeToken();return e}consumeToken(){let e=this.consumeCodePoint();switch(e){case 34:return this.consumeStringToken(34);case 35:{let e=this.peekCodePoint(0),t=this.peekCodePoint(1),i=this.peekCodePoint(2);if(Mt(e)||Tt(t,i)){let r=Bt(e,t,i)?2:1;return{type:5,value:this.consumeName(),flags:r}}break}case 36:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),Dt;break;case 39:return this.consumeStringToken(39);case 40:return Pt;case 41:return It;case 42:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),Ht;break;case 43:if(Rt(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case 44:return Nt;case 45:{let t=e,i=this.peekCodePoint(0),r=this.peekCodePoint(1);if(Rt(t,i,r))return this.reconsumeCodePoint(e),this.consumeNumericToken();if(Bt(t,i,r))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();if(45===i&&62===r)return this.consumeCodePoint(),this.consumeCodePoint(),Yt;break}case 46:if(Rt(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case 47:if(42===this.peekCodePoint(0))for(this.consumeCodePoint();;){let e=this.consumeCodePoint();if(42===e&&(e=this.consumeCodePoint(),47===e))return this.consumeToken();if(-1===e)return this.consumeToken()}break;case 58:return qt;case 59:return Gt;case 60:if(33===this.peekCodePoint(0)&&45===this.peekCodePoint(1)&&45===this.peekCodePoint(2))return this.consumeCodePoint(),this.consumeCodePoint(),this.consumeCodePoint(),Ut;break;case 64:{let e=this.peekCodePoint(0),t=this.peekCodePoint(1),i=this.peekCodePoint(2);if(Bt(e,t,i))return{type:7,value:this.consumeName()};break}case 91:return Kt;case 92:if(Tt(e,this.peekCodePoint(0)))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();break;case 93:return Xt;case 94:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),Ot;break;case 123:return _t;case 125:return Wt;case 117:case 85:{let t=this.peekCodePoint(0),i=this.peekCodePoint(1);return 43!==t||!xt(i)&&63!==i?(this.reconsumeCodePoint(e),this.consumeIdentLikeToken()):(this.consumeCodePoint(),this.consumeUnicodeRangeToken())}case 124:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),$t;if(124===this.peekCodePoint(0))return this.consumeCodePoint(),Ft;break;case 126:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),zt;break;case-1:return Qt}return St(e)?(this.consumeWhiteSpace(),Jt):bt(e)?(this.reconsumeCodePoint(e),this.consumeNumericToken()):Et(e)?(this.reconsumeCodePoint(e),this.consumeIdentLikeToken()):{type:6,value:String.fromCodePoint(e)}}consumeCodePoint(){let e=this._value[this._cursor];return void 0===e?-1:(this._cursor++,e)}reconsumeCodePoint(e){this._cursor>0&&this._value[this._cursor-1]===e?this._cursor--:this._value.splice(this._cursor,0,e)}peekCodePoint(e){let t=this._value[this._cursor+e];return void 0!==t?t:-1}consumeUnicodeRangeToken(){let e=[],t=this.consumeCodePoint();for(;xt(t)&&e.length<6;)e.push(t),t=this.consumeCodePoint();let i=!1;for(;63===t&&e.length<6;)e.push(t),t=this.consumeCodePoint(),i=!0;if(i)return{type:30,start:parseInt(String.fromCodePoint(...e.map(e=>63===e?48:e)),16),end:parseInt(String.fromCodePoint(...e.map(e=>63===e?70:e)),16)};let r=parseInt(String.fromCodePoint(...e),16);if(45===t&&xt(this.peekCodePoint(0))){t=this.consumeCodePoint();let e=[];for(;xt(t)&&e.length<6;)e.push(t),t=this.consumeCodePoint();return{type:30,start:r,end:parseInt(String.fromCodePoint(...e),16)}}return{type:30,start:r,end:r}}consumeIdentLikeToken(){let e=this.consumeName();return"url"===e.toLowerCase()&&40===this.peekCodePoint(0)?(this.consumeCodePoint(),this.consumeUrlToken()):40===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:19,value:e}):{type:20,value:e}}consumeUrlToken(){let e=[];if(this.consumeWhiteSpace(),-1===this.peekCodePoint(0))return{type:22,value:""};let t=this.peekCodePoint(0);if(39===t||34===t){let e=this.consumeStringToken(this.consumeCodePoint());return 0===e.type&&(this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0))?(this.consumeCodePoint(),{type:22,value:e.value}):(this.consumeBadUrlRemnants(),Vt)}for(;;){let t=this.consumeCodePoint();if(-1===t||41===t)return{type:22,value:String.fromCodePoint(...e)};if(St(t))return this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:22,value:String.fromCodePoint(...e)}):(this.consumeBadUrlRemnants(),Vt);if(34===t||39===t||40===t||At(t))return this.consumeBadUrlRemnants(),Vt;if(92===t){if(!Tt(t,this.peekCodePoint(0)))return this.consumeBadUrlRemnants(),Vt;e.push(this.consumeEscapedCodePoint())}else e.push(t)}}consumeWhiteSpace(){for(;St(this.peekCodePoint(0));)this.consumeCodePoint()}consumeBadUrlRemnants(){for(;;){let e=this.consumeCodePoint();if(41===e||-1===e)return;Tt(e,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}}consumeStringSlice(e){let t="",i=this._cursor+e,r=this._cursor;for(;r<i;){let e=Math.min(i,r+5e4);t+=String.fromCodePoint(...this._value.slice(r,e)),r=e}return this._cursor=i+1,t}consumeStringToken(e){let t="",i=0;for(;;){let r=this._value[this._cursor+i];if(-1===r||void 0===r||r===e)return t+=this.consumeStringSlice(i),{type:0,value:t};if(10===r)return this._cursor+=i,jt;if(92===r){let e=this._value[this._cursor+i+1];-1!==e&&void 0!==e&&(10===e?(t+=this.consumeStringSlice(i),i=-1,this._cursor++):Tt(r,e)&&(t+=this.consumeStringSlice(i),t+=String.fromCodePoint(this.consumeEscapedCodePoint()),i=-1))}i++}}consumeNumber(){let e=[],t=4,i=this.peekCodePoint(0);for((43===i||45===i)&&e.push(this.consumeCodePoint());bt(this.peekCodePoint(0));)e.push(this.consumeCodePoint());i=this.peekCodePoint(0);let r=this.peekCodePoint(1);if(46===i&&bt(r))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=8;bt(this.peekCodePoint(0));)e.push(this.consumeCodePoint());i=this.peekCodePoint(0),r=this.peekCodePoint(1);let s=this.peekCodePoint(2);if((69===i||101===i)&&((43===r||45===r)&&bt(s)||bt(r)))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=8;bt(this.peekCodePoint(0));)e.push(this.consumeCodePoint());return[Lt(e),t]}consumeNumericToken(){let[e,t]=this.consumeNumber(),i=this.peekCodePoint(0),r=this.peekCodePoint(1),s=this.peekCodePoint(2);return Bt(i,r,s)?{type:15,number:e,flags:t,unit:this.consumeName()}:37===i?(this.consumeCodePoint(),{type:16,number:e,flags:t}):{type:17,number:e,flags:t}}consumeEscapedCodePoint(){let e=this.consumeCodePoint();if(xt(e)){let t=String.fromCodePoint(e);for(;xt(this.peekCodePoint(0))&&t.length<6;)t+=String.fromCodePoint(this.consumeCodePoint());St(this.peekCodePoint(0))&&this.consumeCodePoint();let i=parseInt(t,16);return 0===i||yt(i)||i>1114111?65533:i}return-1===e?65533:e}consumeName(){let e="";for(;;){let t=this.consumeCodePoint();if(Mt(t))e+=String.fromCodePoint(t);else{if(!Tt(t,this.peekCodePoint(0)))return this.reconsumeCodePoint(t),e;e+=String.fromCodePoint(this.consumeEscapedCodePoint())}}}},ei=class e{_tokens;constructor(e){this._tokens=e}static create(t){let i=new Zt;return i.write(t),new e(i.read())}static parseValue(t){return e.create(t).parseComponentValue()}static parseValues(t){return e.create(t).parseComponentValues()}parseComponentValue(){let e=this.consumeToken();for(;31===e.type;)e=this.consumeToken();if(32===e.type)throw new SyntaxError("Error parsing CSS component value, unexpected EOF");this.reconsumeToken(e);let t=this.consumeComponentValue();do{e=this.consumeToken()}while(31===e.type);if(32===e.type)return t;throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")}parseComponentValues(){let e=[];for(;;){let t=this.consumeComponentValue();if(32===t.type)return e;e.push(t)}}consumeComponentValue(){let e=this.consumeToken();switch(e.type){case 11:case 28:case 2:return this.consumeSimpleBlock(e.type);case 19:return this.consumeFunction(e)}return e}consumeSimpleBlock(e){let t={type:e,values:[]},i=this.consumeToken();for(;;){if(32===i.type||di(i,e))return t;this.reconsumeToken(i),t.values.push(this.consumeComponentValue()),i=this.consumeToken()}}consumeFunction(e){let t={name:e.value,values:[],type:18};for(;;){let e=this.consumeToken();if(32===e.type||3===e.type)return t;this.reconsumeToken(e),t.values.push(this.consumeComponentValue())}}consumeToken(){let e=this._tokens.shift();return typeof e>"u"?Qt:e}reconsumeToken(e){this._tokens.unshift(e)}},ti=e=>15===e.type,ii=e=>17===e.type,ri=e=>20===e.type,si=e=>0===e.type,ni=(e,t)=>ri(e)&&e.value===t,oi=e=>31!==e.type,ai=e=>31!==e.type&&4!==e.type,li=e=>{let t=[],i=[];return e.forEach(e=>{4!==e.type?31!==e.type&&i.push(e):i.length&&(t.push(i),i=[])}),i.length&&t.push(i),t},di=(e,t)=>11===t&&12===e.type||28===t&&29===e.type||2===t&&3===e.type,ci=/(\d+(?:\.\d+)?|[+\-*/()])/g,pi=e=>{let t=e.match(ci);if(!t)return NaN;let i=[],r=[],s={"+":1,"-":1,"*":2,"/":2};for(let e of t)if(/^\d+(?:\.\d+)?$/.test(e))i.push(parseFloat(e));else if("("===e)r.push(e);else if(")"===e){for(;r.length&&"("!==r[r.length-1];)i.push(r.pop());if(!r.length)return NaN;r.pop()}else{for(;r.length&&(s[mt(r,r.length-1)]??0)>=(s[e]??0);)i.push(r.pop());r.push(e)}for(;r.length;){let e=r.pop();if("("===e)return NaN;i.push(e)}let n=[];for(let e of i)if("number"==typeof e)n.push(e);else{let t=n.pop(),i=n.pop();if(void 0===i||void 0===t)return NaN;switch(e){case"+":n.push(i+t);break;case"-":n.push(i-t);break;case"*":n.push(i*t);break;case"/":n.push(0===t?NaN:i/t);break;default:return NaN}}return 1===n.length?n[0]??NaN:NaN},hi=(e,t,i)=>Math.min(Math.max(e,t),i),ui=(e,t)=>[e[0]*t[0]+e[1]*t[1]+e[2]*t[2],e[3]*t[0]+e[4]*t[1]+e[5]*t[2],e[6]*t[0]+e[7]*t[1]+e[8]*t[2]],fi=e=>ui([3.2409699419045226,-1.537383177570094,-.4986107602930034,-.9692436362808796,1.8759675015077202,.04155505740717559,.05563007969699366,-.20397695888897652,1.0569715142428786],e),gi=e=>ui([.41239079926595934,.357584339383878,.1804807884018343,.21263900587151027,.715168678767756,.07219231536073371,.01933081871559182,.11919477979462598,.9505321522496607],e),mi=e=>{let[t,i,r]=e,s=e=>{let t=e<0?-1:1,i=Math.abs(e);return i>.0031308?t*(1.055*i**(1/2.4)-.055):12.92*e};return[s(t),s(i),s(r)]},bi=e=>{let[t,i,r]=e,s=e=>{let t=e<0?-1:1,i=Math.abs(e);return i<=.04045?e/12.92:t*((i+.055)/1.055)**2.4};return[s(t),s(i),s(r)]},yi=e=>{let[t,i,r]=mi(fi([e[0],e[1],e[2]]));return[t,i,r,e[3]]},xi=e=>{let[t,i,r]=fi([e[0],e[1],e[2]]);return[hi(Math.round(255*t),0,255),hi(Math.round(255*i),0,255),hi(Math.round(255*r),0,255),e[3]]},vi=e=>17===e.type||15===e.type,wi=e=>16===e.type||vi(e)||ki(e),ki=e=>17===e.type&&void 0!==e._calcPercentage,Ci=e=>18===e.type&&"calc"===e.name,Si=e=>{let t=Mi(e,0);if(!t)return null;let i=Mi(e,100);if(!i)return null;let r=t.number,s=i.number-r;return 0===s?t:{type:17,number:r,flags:4,_calcPercentage:s,_calcPixelOffset:r}},Ei=e=>Ci(e)?Si(e):wi(e)?e:null,Mi=(e,t=0)=>{let i=e=>{let r="";for(let s of e)if(31!==s.type)if(18===s.type){if("calc"!==s.name)return null;{let e=i(s.values);if(null===e)return null;r+=`(${e})`}}else if(17===s.type)r+=s.number.toString();else if(15===s.type)"px"===s.unit?r+=s.number.toString():"rem"===s.unit||"em"===s.unit?r+=(16*s.number).toString():r+=s.number.toString();else if(16===s.type)r+=(s.number/100*t).toString();else if(6===s.type){let e=s.value;"+"===e||"-"===e||"*"===e||"/"===e?r+=` ${e} `:"("===e?r+="(":")"===e&&(r+=")")}return r};try{let t=i(e.values);if(null===t||""===t.trim())return null;let r=pi(t);if("number"==typeof r&&!isNaN(r))return{type:17,number:r,flags:4}}catch{return null}return null},Ai=e=>e.length>1?[mt(e,0),mt(e,1)]:[mt(e,0)],Ti={type:17,number:0,flags:4},Bi={type:16,number:50,flags:4},Ri={type:16,number:100,flags:4},Li=(e,t,i)=>{let[r,s]=e;return[Pi(r,t),Pi(typeof s<"u"?s:r,i)]},Pi=(e,t)=>{if(ki(e))return e._calcPercentage/100*t+e._calcPixelOffset;if(16===e.type)return e.number/100*t;if(ti(e))switch(e.unit){case"rem":case"em":return 16*e.number;default:return e.number}return e.number},Ii="grad",Ni="turn",Di={name:"angle",parse:(e,t)=>{if(15===t.type)switch(t.unit){case"deg":return Math.PI*t.number/180;case Ii:return Math.PI/200*t.number;case"rad":return t.number;case Ni:return 2*Math.PI*t.number}throw new Error("Unsupported angle type")}},Oi=e=>15===e.type&&("deg"===e.unit||e.unit===Ii||"rad"===e.unit||e.unit===Ni),Fi=e=>{switch(e.filter(ri).map(e=>e.value).join(" ")){case"to bottom right":case"to right bottom":case"left top":case"top left":return[Ti,Ti];case"to top":case"bottom":return $i(0);case"to bottom left":case"to left bottom":case"right top":case"top right":return[Ti,Ri];case"to right":case"left":return $i(90);case"to top left":case"to left top":case"right bottom":case"bottom right":return[Ri,Ri];case"to bottom":case"top":return $i(180);case"to top right":case"to right top":case"left bottom":case"bottom left":return[Ri,Ti];case"to left":case"right":return $i(270)}return 0},$i=e=>Math.PI*e/180,zi=e=>!(255&e),_i=e=>{let t=255&e,i=255&e>>8,r=255&e>>16,s=255&e>>24;return t<255?`rgba(${s},${r},${i},${t/255})`:`rgb(${s},${r},${i})`},Wi=(e,t,i,r)=>(e<<24|t<<16|i<<8|Math.round(255*r))>>>0,Hi=(e,t)=>{if(17===e.type)return e.number;if(16===e.type){let i=3===t?1:255;return 3===t?e.number/100*i:Math.round(e.number/100*i)}return 0},Vi=e=>{let t=e[0];return"from"===(t&&20===t.type?t.value:"unknown")},ji=e=>Wi(hi(Math.round(255*e[0]),0,255),hi(Math.round(255*e[1]),0,255),hi(Math.round(255*e[2]),0,255),hi(e[3],0,1)),Ui=e=>{let[t,i,r,s]=e,n=mi([t,i,r]);return Wi(hi(Math.round(255*n[0]),0,255),hi(Math.round(255*n[1]),0,255),hi(Math.round(255*n[2]),0,255),s)},Yi=e=>{let t=fi([e[0],e[1],e[2]]);return Ui([t[0],t[1],t[2],e[3]])},qi=(e,t)=>{if(Vi(t.filter(ai)))throw new Error("Relative color not supported for lab()");let[i,r,s,n]=tr(t),o=Gi(t)?100*i:i,a=mi(fi(dr([o,r,s])));return Wi(hi(Math.round(255*a[0]),0,255),hi(Math.round(255*a[1]),0,255),hi(Math.round(255*a[2]),0,255),n)},Gi=e=>{let t=e.filter(ai)[0];return void 0!==t&&16===t.type},Ki=(e,t)=>{if(Vi(t.filter(ai)))throw new Error("Relative color not supported for oklab()");let[i,r,s,n]=tr(t),o=mi(fi(lr([i,r,s])));return Wi(hi(Math.round(255*o[0]),0,255),hi(Math.round(255*o[1]),0,255),hi(Math.round(255*o[2]),0,255),n)},Xi=(e,t)=>{if(Vi(t.filter(ai)))throw new Error("Relative color not supported for oklch()");let[i,r,s,n]=ir(t),o=mi(fi(lr(ar([i,r,s]))));return Wi(hi(Math.round(255*o[0]),0,255),hi(Math.round(255*o[1]),0,255),hi(Math.round(255*o[2]),0,255),n)},Ji=(e,t)=>{if(Vi(t.filter(ai)))throw new Error("Relative color not supported for lch()");let[i,r,s,n]=er(t),o=mi(fi(dr(ar([i,r,s]))));return Wi(hi(Math.round(255*o[0]),0,255),hi(Math.round(255*o[1]),0,255),hi(Math.round(255*o[2]),0,255),n)},Qi=(e,t)=>{let i=t.filter(ai),r=i[0],s=i[1],n=i[2],o=i[3],a=void 0!==o&&6===o.type&&"/"===o.value?i[4]:i[3];return[r?(17===r.type?$i(r.number):Di.parse(e,r))/(2*Math.PI):0,void 0!==s&&wi(s)?s.number/100:0,void 0!==n&&wi(n)?n.number/100:0,void 0!==a&&wi(a)?Pi(a,1):1]},Zi=(e,t)=>{if(Vi(t))throw new Error("Relative color not supported for hsl()");let[i,r,s,n]=Qi(e,t),o=or([i,r,s]);return Wi(255*o[0],255*o[1],255*o[2],n)},er=e=>{let t=e.filter(ai),i=t[0],r=t[1],s=t[2],n=t[4];return[void 0!==i&&wi(i)?i.number:0,void 0!==r&&wi(r)?r.number:0,void 0!==s&&(ii(s)||ti(s))?s.number:0,void 0!==n&&wi(n)?Pi(n,1):1]},tr=e=>{let t=e.filter(ai),i=t[0],r=t[1],s=t[2],n=t[4];return[void 0!==i?16===i.type?i.number/100:ii(i)?i.number:0:0,void 0!==r?16===r.type?r.number/100:ii(r)?r.number:0:0,void 0!==s&&(ii(s)||ti(s))?s.number:0,void 0!==n&&wi(n)?Pi(n,1):1]},ir=e=>{let t=e.filter(ai),i=t[0],r=t[1],s=t[2],n=t[4];return[void 0!==i?16===i.type?i.number/100:ii(i)?i.number:0:0,void 0!==r?16===r.type?r.number/100:ii(r)?r.number:0:0,void 0!==s&&(ii(s)||ti(s))?s.number:0,void 0!==n&&wi(n)?Pi(n,1):1]},rr=e=>ui([1.0479297925449969,.022946870601609652,-.05019226628920524,.02962780877005599,.9904344267538799,-.017073799063418826,-.009243040646204504,.015055191490298152,.7518742814281371],e),sr=e=>ui([.955473421488075,-.02309845494876471,.06325924320057072,-.0283697093338637,1.0099953980813041,.021041441191917323,.012314014864481998,-.020507649298898964,1.330365926242124],e),nr=(e,t,i)=>(i<0&&(i+=1),i>=1&&(i-=1),i<1/6?(t-e)*i*6+e:i<.5?t:i<2/3?6*(t-e)*(2/3-i)+e:e),or=([e,t,i])=>{if(0===t)return[i,i,i];let r=i<=.5?i*(t+1):i+t-i*t,s=2*i-r;return[nr(s,r,e+1/3),nr(s,r,e),nr(s,r,e-1/3)]},ar=([e,t,i])=>(t<0&&(t=0),isNaN(i)&&(i=0),[e,t*Math.cos(i*Math.PI/180),t*Math.sin(i*Math.PI/180)]),lr=e=>{let t=ui([1,.3963377773761749,.2158037573099136,1,-.1055613458156586,-.0638541728258133,1,-.0894841775298119,-1.2914855480194092],e),i=[t[0]**3,t[1]**3,t[2]**3];return ui([1.2268798758459243,-.5578149944602171,.2813910456659647,-.0405757452148008,1.112286803280317,-.0717110580655164,-.0763729366746601,-.4214933324022432,1.5869240198367816],i)},dr=e=>{let t=(e[0]+16)/116,i=e[1]/500+t,r=t-e[2]/200,s=24389/27,n=24/116,o=[.3457*(i>n?i**3:(116*i-16)/s)/.3585,e[0]>8?t**3:e[0]/s,.2958*(r>n?r**3:(116*r-16)/s)/.3585];return sr([o[0],o[1],o[2]])},cr=(e,t)=>{let i=t.filter(ai);if(3===i.length||4===i.length){let e=Hi(mt(i,0),0),t=Hi(mt(i,1),1),r=Hi(mt(i,2),2),s=4===i.length?Hi(mt(i,3),3):1,n=bi([e/255,t/255,r/255]),[o,a,l]=gi([n[0],n[1],n[2]]);return[o,a,l,s]}return[0,0,0,1]},pr=(e,t)=>{let[i,r,s,n]=Qi(e,t),o=bi(or([i,r,s])),[a,l,d]=gi([o[0],o[1],o[2]]);return[a,l,d,n]},hr=(e,t)=>{let[i,r,s,n]=tr(t),[o,a,l]=dr([i,r,s]);return[o,a,l,n]},ur=(e,t)=>{let[i,r,s,n]=er(t),[o,a,l]=dr(ar([i,r,s]));return[o,a,l,n]},fr=(e,t)=>{let[i,r,s,n]=ir(t),[o,a,l]=lr(ar([i,r,s]));return[o,a,l,n]},gr=(e,t)=>{let[i,r,s,n]=tr(t),[o,a,l]=lr([i,r,s]);return[o,a,l,n]},mr=e=>sr([e[0],e[1],e[2]]),br=e=>e,yr=e=>{let[t,i,r]=rr([e[0],e[2],e[3]]);return[t,i,r,e[3]]},xr=e=>Yi([e[0],e[1],e[2],e[3]]),vr=e=>{let t=mr([e[0],e[1],e[2]]);return Yi([t[0],t[1],t[2],e[3]])},wr=e=>ui([.4865709486482162,.26566769316909306,.1982172852343625,.2289745640697488,.6917385218365064,.079286914093745,0,.04511338185890264,1.043944368900976],e),kr=e=>ui([2.493496911941425,-.9313836179191239,-.40271078445071684,-.8294889695615747,1.7626640603183463,.023624685841943577,.03584583024378447,-.07617238926804182,.9568845240076872],e),Cr=e=>{let t=e=>{let t=e<0?-1:1;return e*t<=.04045?e/12.92:t*((e+.055)/1.055)**2.4||0};return[t(e[0]),t(e[1]),t(e[2])]},Sr=e=>mi(e),Er=e=>{let t=Cr([e[0],e[1],e[2]]);return wr([t[0],t[1],t[2]])},Mr=e=>{let[t,i,r]=Sr(kr([e[0],e[1],e[2]]));return[t,i,r,e[3]]},Ar=e=>{let t=Er([e[0],e[1],e[2]]);return Yi([t[0],t[1],t[2],e[3]])},Tr=e=>ui([2.0415879038107465,-.5650069742788596,-.34473135077832956,-.9692436362808795,1.8759675015077202,.04155505740717557,.013444280632031142,-.11836239223101838,1.0151749943912054],e),Br=e=>ui([.5766690429101305,.1855582379065463,.1882286462349947,.29734497525053605,.6273635662554661,.0752914584939978,.02703136138641234,.07068885253582723,.9913375368376388],e),Rr=e=>{let t=e.map(e=>(e<0?-1:1)*Math.abs(e)**2.19921875);return[t[0]??0,t[1]??0,t[2]??0]},Lr=e=>{let t=e.map(e=>(e<0?-1:1)*Math.abs(e)**.4547069271758437);return[t[0]??0,t[1]??0,t[2]??0]},Pr=e=>{let[t,i,r]=Lr(Tr([e[0],e[1],e[2]]));return[t,i,r,e[3]]},Ir=e=>{let t=fi(Br(Rr([e[0],e[1],e[2]])));return Ui([t[0],t[1],t[2],e[3]])},Nr=e=>ui([.7977666449006423,.13518129740053308,.0313477341283922,.2880748288194013,.711835234241873,8993693872564e-17,0,0,.8251046025104602],e),Dr=e=>ui([1.3457868816471583,-.25557208737979464,-.05110186497554526,-.5446307051249019,1.5082477428451468,.02052744743642139,0,0,1.2119675456389452],e),Or=e=>{let[t,i,r]=e,s=e=>e<16/512?e/16:e**1.8;return[s(t),s(i),s(r)]},Fr=e=>{let[t,i,r]=e,s=e=>e>1/512?e**(1/1.8):16*e;return[s(t),s(i),s(r)]},$r=e=>{let t=Or([e[0],e[1],e[2]]);return sr(Nr([t[0],t[1],t[2]]))},zr=e=>{let[t,i,r]=Fr(Dr(rr([e[0],e[1],e[2]])));return[t,i,r,e[3]]},_r=e=>{let t=$r([e[0],e[1],e[2]]);return Yi([t[0],t[1],t[2],e[3]])},Wr=1.09929682680944,Hr=.018053968510807,Vr=e=>{let t=e=>e<4.5*Hr?e/4.5:Math.pow((e+Wr-1)/Wr,2.2222222222222223);return[t(e[0]),t(e[1]),t(e[2])]},jr=e=>{let t=e=>e>=Hr?Wr*Math.pow(e,.45)-.09929682680944008:4.5*e;return[t(e[0]),t(e[1]),t(e[2])]},Ur=e=>ui([.6369580483012914,.14461690358620832,.1688809751641721,.2627002120112671,.6779980715188708,.05930171646986196,0,.028072693049087428,1.060985057710791],e),Yr=e=>ui([1.716651187971268,-.355670783776392,-.25336628137366,-.666684351832489,1.616481236634939,.0157685458139111,.017639857445311,-.042770613257809,.942103121235474],e),qr=e=>{let t=Vr([e[0],e[1],e[2]]);return Ur([t[0],t[1],t[2]])},Gr=e=>{let[t,i,r]=jr(Yr([e[0],e[1],e[2]]));return[t,i,r,e[3]]},Kr=e=>{let t=qr([e[0],e[1],e[2]]);return Yi([t[0],t[1],t[2],e[3]])},Xr={lch:2,oklch:2,hsl:0},Jr=[1,.3963377773761749,.2158037573099136,1,-.1055613458156586,-.0638541728258133,1,-.0894841775298119,-1.2914855480194092],Zr=(Qr=e=>{let t=e[0],i=e[1],r=e[2],s=e[3],n=e[4],o=e[5],a=e[6],l=e[7],d=e[8],c=t*(n*d-o*l)-i*(s*d-o*a)+r*(s*l-n*a);return[(n*d-o*l)/c,(r*l-i*d)/c,(i*o-r*n)/c,(o*a-s*d)/c,(t*d-r*a)/c,(r*s-t*o)/c,(s*l-n*a)/c,(i*a-t*l)/c,(t*n-i*s)/c]})([1.2268798758459243,-.5578149944602171,.2813910456659647,-.0405757452148008,1.112286803280317,-.0717110580655164,-.0763729366746601,-.4214933324022432,1.5869240198367816]),es=Qr(Jr),ts=24389/27,rs=(is=24/116)*is*is,ss=.3457/.3585,ns=.2958/.3585,os=e=>[(255&e>>24)/255,(255&e>>16)/255,(255&e>>8)/255],as=e=>{let[t,i,r]=rr([e[0],e[1],e[2]]),s=t/ss,n=i,o=r/ns,a=s>rs?Math.cbrt(s):(ts*s+16)/116,l=n>rs?Math.cbrt(n):(ts*n+16)/116;return[116*l-16,500*(a-l),200*(l-(o>rs?Math.cbrt(o):(ts*o+16)/116))]},ls=e=>{let t=ui(Zr,e),i=[Math.cbrt(t[0]),Math.cbrt(t[1]),Math.cbrt(t[2])];return ui(es,i)},ds=e=>{let t=Math.hypot(e[1],e[2]),i=180*Math.atan2(e[2],e[1])/Math.PI;return[e[0],t,(i+360)%360]},cs=e=>{let t=e[0],i=e[1],r=e[2],s=Math.max(t,i,r),n=Math.min(t,i,r),o=(s+n)/2;if(s===n)return[0,0,o];let a,l=s-n;return a=s===t?((i-r)/l+(i<r?6:0))/6:s===i?((r-t)/l+2)/6:((t-i)/l+4)/6,[a,o>.5?l/(2-s-n):l/(s+n),o]},ps=(e,t)=>{let i,r=(255&e)/255,s=os(e),n=bi(s),o=gi(n);switch(t){case"srgb":i=s;break;case"srgb-linear":i=n;break;case"xyz":case"xyz-d65":i=o;break;case"xyz-d50":i=rr(o);break;case"lab":i=as(o);break;case"oklab":i=ls(o);break;case"lch":i=ds(as(o));break;case"oklch":i=ds(ls(o));break;case"hsl":i=[360*cs(s)[0],cs(s)[1],cs(s)[2]]}return[i[0],i[1],i[2],r]},hs=(e,t)=>{let i=e[0],r=e[1],s=e[2],n=e[3];switch(t){case"srgb":return ji([i,r,s,n]);case"srgb-linear":return Ui([i,r,s,n]);case"xyz":case"xyz-d65":return Yi([i,r,s,n]);case"xyz-d50":return Yi([...sr([i,r,s]),n]);case"lab":return us(dr([i,r,s]),n);case"oklab":return us(lr([i,r,s]),n);case"lch":return us(dr(ar([i,r,s])),n);case"oklch":return us(lr(ar([i,r,s])),n);case"hsl":{let e=or([i/360,r,s]);return ji([e[0],e[1],e[2],n])}}},us=(e,t)=>{let i=mi(fi(e));return ji([i[0],i[1],i[2],t])},fs=(e,t,i,r,s="shorter")=>{let n=i+r;if(0===n)return e;let o=((t-e)%360+360)%360;switch(s){case"shorter":o>180&&(o-=360);break;case"longer":o<180&&(o-=360);break;case"increasing":break;case"decreasing":o>0&&(o-=360)}return e+o*(r/n)},gs=(e,t)=>{let i,r=null;for(let e of t)if(31!==e.type&&4!==e.type)if(16===e.type)r=e.number;else if(ri(e)&&"none"===e.value)null===r&&(r=0);else{if(void 0!==i)throw new Error("Unexpected token in color-mix() component");i=e}if(void 0===i)throw new Error("color-mix() component is missing a color");let s=i;return{color:xs.parse(e,s),percentage:r}},ms=["srgb","srgb-linear","lab","oklab","lch","oklch","hsl","xyz","xyz-d50","xyz-d65"],bs=(e,t,i,r,s,n)=>{let o=Xr[s],a=[e[0]*e[3],e[1]*e[3],e[2]*e[3],e[3]],l=[t[0]*t[3],t[1]*t[3],t[2]*t[3],t[3]],d=i*a[3]+r*l[3];if(d<=0)return[0,0,0,0];let c=[0,0,0,d];for(let e=0;e<3;e++)e!==o&&(c[e]=(i*mt(a,e)+r*mt(l,e))/d);if(void 0!==o){let s=mt(e,o),a=mt(t,o);0===e[1]&&(s=a),0===t[1]&&(a=s),c[o]=fs(s,a,i,r,n)}return c},ys=(e,t)=>{let i=[[]];for(let e of t)4===e.type?i.push([]):i[i.length-1].push(e);let r=i.map(e=>e.filter(e=>31!==e.type));if(3!==r.length)throw new Error("color-mix() requires exactly two color components");let s=r[0],n=s?s[0]:void 0,o=void 0!==n&&ri(n)&&"in"===n.value;if(!s||s.length<2||!o)throw new Error("color-mix() requires an interpolation space after `in`");let a=s[1];if(!a||!ri(a))throw new Error("color-mix() space must be an identifier");let l=a.value;if(-1===ms.indexOf(l))throw new Error(`Unsupported color-mix() interpolation space "${l}"`);let d="shorter",c=s.slice(2);if(c.length>0){let e=c[0],t=c[1];if(!(e&&t&&ri(e)&&ri(t)&&"hue"===t.value))throw new Error("Unsupported color-mix() hue method syntax");if(-1===["shorter","longer","increasing","decreasing"].indexOf(e.value))throw new Error(`Unsupported color-mix() hue method "${e.value}"`);d=e.value}let p=r[1],h=r[2];if(!p||!h)throw new Error("color-mix() requires exactly two color components");let u=gs(e,p),f=gs(e,h),g=u.percentage,m=f.percentage;if(null===g&&null===m)g=50,m=50;else if(null===g)g=100-(m??0);else if(null===m)m=100-g;else{let e=g+m;e>0&&(g=g/e*100,m=m/e*100)}let b=(g??0)/100,y=(m??0)/100,x=bs(ps(u.color,l),ps(f.color,l),b,y,l,d);return hs(x,l)},xs={name:"color",parse:(e,t)=>{if(18===t.type){let i=Ms[t.name];if(typeof i>"u")throw new Error(`Attempting to parse an unsupported color function "${t.name}"`);return i(e,t.values)}if(5===t.type){let[e,i,r,s]=vs(t);return Wi(e,i,r,s)}if(20===t.type){let e=Ts[t.value.toUpperCase()];if(typeof e<"u")return e}return 0}},vs=e=>{if(3===e.value.length){let t=e.value.substring(0,1),i=e.value.substring(1,2),r=e.value.substring(2,3);return[parseInt(t+t,16),parseInt(i+i,16),parseInt(r+r,16),1]}if(4===e.value.length){let t=e.value.substring(0,1),i=e.value.substring(1,2),r=e.value.substring(2,3),s=e.value.substring(3,4);return[parseInt(t+t,16),parseInt(i+i,16),parseInt(r+r,16),parseInt(s+s,16)/255]}if(6===e.value.length){let t=e.value.substring(0,2),i=e.value.substring(2,4),r=e.value.substring(4,6);return[parseInt(t,16),parseInt(i,16),parseInt(r,16),1]}if(8===e.value.length){let t=e.value.substring(0,2),i=e.value.substring(2,4),r=e.value.substring(4,6),s=e.value.substring(6,8);return[parseInt(t,16),parseInt(i,16),parseInt(r,16),parseInt(s,16)/255]}return[0,0,0,1]},ks=(e,t)=>{let i=t.filter(ai),r=i[0],s=r&&20===r.type?r.value:"unknown";if(Vi(i)){let t=(e,t)=>{if(ii(t))return t.number;if(ri(t)){let i=(e=>"r"===e||"x"===e?0:"g"===e||"y"===e?1:2)(t.value);return mt(e,i)}let i=e=>{let t=e.filter(ai),r="(";for(let e of t)r+=18===e.type&&"calc"===e.name?i(e.values):ii(e)?e.number:6===e.type||ri(e)?e.value:"";return r+=")",r};if(18===t.type){let r=t.values.filter(ai);if("calc"===t.name){let t=i(r).replace(/r|x/,e[0].toString()).replace(/g|y/,e[1].toString()).replace(/b|z/,e[2].toString());return pi(t)}}return null},r=mt(i,1),s=18===r.type?r.name:ri(r)||5===r.type?"rgb":"unknown",n=mt(i,2),o=ri(n)?n.value:"unknown",a=18===r.type?r.values:ri(r)?[r]:[];if(ri(r)){if(typeof Ts[r.value.toUpperCase()]>"u")throw new Error("Attempting to use unknown color in relative color 'from'");{let t=As(e,r.value),i=255&t;a=[{type:17,number:255&t>>24,flags:1},{type:17,number:255&t>>16,flags:1},{type:17,number:255&t>>8,flags:1},{type:17,number:i>1?i/255:i,flags:1}]}}else if(5===r.type){let[e,t,i,s]=vs(r);a=[{type:17,number:e,flags:1},{type:17,number:t,flags:1},{type:17,number:i,flags:1},{type:17,number:s>1?s/255:s,flags:1}]}if(0===a.length)throw new Error("Attempting to use unknown color in relative color 'from'");if("unknown"===o)throw new Error("Attempting to use unknown colorspace in relative color 'to'");let l=Ss[s],d=Es[o],c=Cs[o];if(typeof l>"u")throw new Error(`Attempting to parse an unsupported color space "${s}" for color() function`);if(typeof d>"u")throw new Error(`Attempting to parse an unsupported color space "${o}" for color() function`);let p=d(l(e,a)),h=t(p,mt(i,3)),u=t(p,mt(i,4)),f=t(p,mt(i,5)),g=i[6],m=i[7],b=void 0!==g&&6===g.type&&"/"===g.value&&void 0!==m&&ii(m)?m.number:1;if(null===h||null===u||null===f)throw new Error("Invalid relative color in color() function");if(typeof c>"u")throw new Error(`Attempting to parse an unsupported color space "${o}" for color() function`);return c([h,u,f,b])}{let e=s,t=Cs[e];if(typeof t>"u")throw new Error(`Attempting to parse an unsupported color space "${e}" for color() function`);let r=mt(i,1),n=mt(i,2),o=mt(i,3),a=i[4],l=i[5];return t([ii(r)?r.number:0,ii(n)?n.number:0,ii(o)?o.number:0,void 0!==a&&6===a.type&&"/"===a.value&&void 0!==l&&ii(l)?l.number:1])}},Cs={srgb:ji,"srgb-linear":Ui,"display-p3":Ar,"a98-rgb":Ir,"prophoto-rgb":_r,xyz:xr,"xyz-d50":vr,"xyz-d65":xr,rec2020:Kr},Ss={rgb:cr,hsl:pr,lab:hr,lch:ur,oklab:gr,oklch:fr},Es={srgb:yi,"srgb-linear":xi,"display-p3":Mr,"a98-rgb":Pr,"prophoto-rgb":zr,xyz:br,"xyz-d50":yr,"xyz-d65":br,rec2020:Gr},Ms={hsl:Zi,hsla:Zi,rgb:ws=(e,t)=>{let i=t.filter(ai);if(Vi(i))throw new Error("Relative color not supported for rgb()");if(3===i.length||4===i.length){let e=Hi(mt(i,0),0),t=Hi(mt(i,1),1),r=Hi(mt(i,2),2),s=4===i.length?Hi(mt(i,3),3):1;return Wi(e,t,r,s)}if(5===i.length){let e=mt(i,3);if(6===e.type&&"/"===e.value){let e=Hi(mt(i,0),0),t=Hi(mt(i,1),1),r=Hi(mt(i,2),2),s=Hi(mt(i,4),3);return Wi(e,t,r,s)}}return 0},rgba:ws,lch:Ji,oklch:Xi,oklab:Ki,lab:qi,color:ks,"color-mix":(e,t)=>{try{return ys(e,t)}catch(t){return e.logger.warn(`Unsupported color-mix() value: ${t instanceof Error?t.message:t}`),0}}},As=(e,t)=>xs.parse(e,ei.create(t).parseComponentValue()),Ts={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199},Bs=e=>e.nodeType===Node.ELEMENT_NODE,Rs=e=>e.nodeType===Node.TEXT_NODE,Ls=e=>"object"==typeof e.className,Ps=e=>Bs(e)&&typeof e.style<"u"&&!Ls(e),Is=e=>"INPUT"===e.tagName,Ns=e=>"HTML"===e.tagName,Ds=e=>"svg"===e.tagName,Os=e=>"BODY"===e.tagName,Fs=e=>"CANVAS"===e.tagName,$s=e=>"VIDEO"===e.tagName,zs=e=>"IMG"===e.tagName,_s=e=>"IFRAME"===e.tagName,Ws=e=>"STYLE"===e.tagName,Hs=e=>"SCRIPT"===e.tagName,Vs=e=>"TEXTAREA"===e.tagName,js=e=>"SELECT"===e.tagName,Us=e=>"SLOT"===e.tagName,Ys=e=>"LI"===e.tagName,qs=e=>"OL"===e.tagName,Gs=e=>!Ls(e)&&e.tagName.indexOf("-")>0,Ks=new Set(["IMG","VIDEO","AUDIO","CANVAS","IFRAME","INPUT","TEXTAREA","SELECT","BR","HR","META","LINK","BASE","COL","SOURCE","TRACK","WBR","AREA","PARAM","EMBED","OBJECT"]),Xs=e=>!Ls(e)&&!Ks.has(e.tagName),Js={name:"list-style-type",initialValue:"none",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"disc":return 0;case"circle":return 1;case"square":return 2;case"decimal":return 3;case"cjk-decimal":return 4;case"decimal-leading-zero":return 5;case"lower-roman":return 6;case"upper-roman":return 7;case"lower-greek":return 8;case"lower-alpha":return 9;case"upper-alpha":return 10;case"arabic-indic":return 11;case"armenian":return 12;case"bengali":return 13;case"cambodian":return 14;case"cjk-earthly-branch":return 15;case"cjk-heavenly-stem":return 16;case"cjk-ideographic":return 17;case"devanagari":return 18;case"ethiopic-numeric":return 19;case"georgian":return 20;case"gujarati":return 21;case"gurmukhi":return 22;case"hebrew":return 52;case"hiragana":return 23;case"hiragana-iroha":return 24;case"japanese-formal":return 25;case"japanese-informal":return 26;case"kannada":return 27;case"katakana":return 28;case"katakana-iroha":return 29;case"khmer":return 30;case"korean-hangul-formal":return 31;case"korean-hanja-formal":return 32;case"korean-hanja-informal":return 33;case"lao":return 34;case"lower-armenian":return 35;case"malayalam":return 36;case"mongolian":return 37;case"myanmar":return 38;case"oriya":return 39;case"persian":return 40;case"simp-chinese-formal":return 41;case"simp-chinese-informal":return 42;case"tamil":return 43;case"telugu":return 44;case"thai":return 45;case"tibetan":return 46;case"trad-chinese-formal":return 47;case"trad-chinese-informal":return 48;case"upper-armenian":return 49;case"disclosure-open":return 50;case"disclosure-closed":return 51;default:return-1}}},Qs=(e,t)=>0!==(e&t),Zs=class{counters={};getCounterValue(e){let t=this.counters[e];return t&&t.length?mt(t,t.length-1):1}getCounterValues(e){return this.counters[e]||[]}pop(e){e.forEach(e=>this.counters[e]?.pop())}parse(e){let t=e.counterIncrement,i=e.counterReset,r=!0;null!==t&&t.forEach(e=>{let t=this.counters[e.counter];if(t&&0!==e.increment){r=!1,t.length||t.push(1);let i=Math.max(0,t.length-1);t[i]=(t[i]??0)+e.increment}});let s=[];return r&&i.forEach(e=>{let t=this.counters[e.counter];s.push(e.counter),t||(t=this.counters[e.counter]=[]),t.push(e.reset)}),s}},en={integers:[1e3,900,500,400,100,90,50,40,10,9,5,4,1],values:["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"]},tn={integers:[9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u0554","\u0553","\u0552","\u0551","\u0550","\u054f","\u054e","\u054d","\u054c","\u054b","\u054a","\u0549","\u0548","\u0547","\u0546","\u0545","\u0544","\u0543","\u0542","\u0541","\u0540","\u053f","\u053e","\u053d","\u053c","\u053b","\u053a","\u0539","\u0538","\u0537","\u0536","\u0535","\u0534","\u0533","\u0532","\u0531"]},rn={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,400,300,200,100,90,80,70,60,50,40,30,20,19,18,17,16,15,10,9,8,7,6,5,4,3,2,1],values:["\u05d9\u05f3","\u05d8\u05f3","\u05d7\u05f3","\u05d6\u05f3","\u05d5\u05f3","\u05d4\u05f3","\u05d3\u05f3","\u05d2\u05f3","\u05d1\u05f3","\u05d0\u05f3","\u05ea","\u05e9","\u05e8","\u05e7","\u05e6","\u05e4","\u05e2","\u05e1","\u05e0","\u05de","\u05dc","\u05db","\u05d9\u05d8","\u05d9\u05d7","\u05d9\u05d6","\u05d8\u05d6","\u05d8\u05d5","\u05d9","\u05d8","\u05d7","\u05d6","\u05d5","\u05d4","\u05d3","\u05d2","\u05d1","\u05d0"]},sn={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u10f5","\u10f0","\u10ef","\u10f4","\u10ee","\u10ed","\u10ec","\u10eb","\u10ea","\u10e9","\u10e8","\u10e7","\u10e6","\u10e5","\u10e4","\u10f3","\u10e2","\u10e1","\u10e0","\u10df","\u10de","\u10dd","\u10f2","\u10dc","\u10db","\u10da","\u10d9","\u10d8","\u10d7","\u10f1","\u10d6","\u10d5","\u10d4","\u10d3","\u10d2","\u10d1","\u10d0"]},nn=(e,t,i,r,s,n)=>e<t||e>i?fn(e,s,n.length>0):r.integers.reduce((t,i,s)=>{for(;e>=i;)e-=i,t+=r.values[s];return t},"")+n,on=(e,t,i,r)=>{let s="";do{i||e--,s=r(e)+s,e/=t}while(e*t>=t);return s},an=(e,t,i,r,s)=>{let n=i-t+1;return(e<0?"-":"")+(on(Math.abs(e),n,r,e=>String.fromCodePoint(Math.floor(e%n)+t))+s)},ln=(e,t,i=". ")=>{let r=t.length;return on(Math.abs(e),r,!1,e=>String(t[Math.floor(e%r)]))+i},dn=(e,t,i,r,s,n)=>{if(e<-9999||e>9999)return fn(e,4,s.length>0);let o=Math.abs(e),a=s;if(0===o)return t[0]+a;for(let r=0;o>0&&r<=4;r++){let s=o%10;0===s&&Qs(n,1)&&""!==a?a=t[s]+a:s>1||1===s&&0===r||1===s&&1===r&&Qs(n,2)||1===s&&1===r&&Qs(n,4)&&e>100||1===s&&r>1&&Qs(n,8)?a=(t[s]??"")+(r>0?i[r-1]??"":"")+a:1===s&&r>0&&(a=(i[r-1]??"")+a),o=Math.floor(o/10)}return(e<0?r:"")+a},cn="\u5341\u767e\u5343\u842c",pn="\u62fe\u4f70\u4edf\u842c",hn="\u30de\u30a4\u30ca\u30b9",un="\ub9c8\uc774\ub108\uc2a4",fn=(e,t,i)=>{let r=i?". ":"",s=i?"\u3001":"",n=i?", ":"",o=i?" ":"";switch(t){case 0:return"\u2022"+o;case 1:return"\u25e6"+o;case 2:return"\u25fe"+o;case 5:let t=an(e,48,57,!0,r);return t.length<4?`0${t}`:t;case 4:return ln(e,"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d",s);case 6:return nn(e,1,3999,en,3,r).toLowerCase();case 7:return nn(e,1,3999,en,3,r);case 8:return an(e,945,969,!1,r);case 9:return an(e,97,122,!1,r);case 10:return an(e,65,90,!1,r);case 11:return an(e,1632,1641,!0,r);case 12:case 49:return nn(e,1,9999,tn,3,r);case 35:return nn(e,1,9999,tn,3,r).toLowerCase();case 13:return an(e,2534,2543,!0,r);case 14:case 30:return an(e,6112,6121,!0,r);case 15:return ln(e,"\u5b50\u4e11\u5bc5\u536f\u8fb0\u5df3\u5348\u672a\u7533\u9149\u620c\u4ea5",s);case 16:return ln(e,"\u7532\u4e59\u4e19\u4e01\u620a\u5df1\u5e9a\u8f9b\u58ec\u7678",s);case 17:case 48:return dn(e,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d",cn,"\u8ca0",s,14);case 47:return dn(e,"\u96f6\u58f9\u8cb3\u53c3\u8086\u4f0d\u9678\u67d2\u634c\u7396",pn,"\u8ca0",s,15);case 42:return dn(e,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d",cn,"\u8d1f",s,14);case 41:return dn(e,"\u96f6\u58f9\u8d30\u53c1\u8086\u4f0d\u9646\u67d2\u634c\u7396",pn,"\u8d1f",s,15);case 26:return dn(e,"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u4e07",hn,s,0);case 25:return dn(e,"\u96f6\u58f1\u5f10\u53c2\u56db\u4f0d\u516d\u4e03\u516b\u4e5d","\u62fe\u767e\u5343\u4e07",hn,s,7);case 31:return dn(e,"\uc601\uc77c\uc774\uc0bc\uc0ac\uc624\uc721\uce60\ud314\uad6c","\uc2ed\ubc31\ucc9c\ub9cc",un,n,7);case 33:return dn(e,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u842c",un,n,0);case 32:return dn(e,"\u96f6\u58f9\u8cb3\u53c3\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u62fe\u767e\u5343",un,n,7);case 18:return an(e,2406,2415,!0,r);case 20:return nn(e,1,19999,sn,3,r);case 21:return an(e,2790,2799,!0,r);case 22:return an(e,2662,2671,!0,r);case 52:return nn(e,1,10999,rn,3,r);case 23:return ln(e,"\u3042\u3044\u3046\u3048\u304a\u304b\u304d\u304f\u3051\u3053\u3055\u3057\u3059\u305b\u305d\u305f\u3061\u3064\u3066\u3068\u306a\u306b\u306c\u306d\u306e\u306f\u3072\u3075\u3078\u307b\u307e\u307f\u3080\u3081\u3082\u3084\u3086\u3088\u3089\u308a\u308b\u308c\u308d\u308f\u3090\u3091\u3092\u3093");case 24:return ln(e,"\u3044\u308d\u306f\u306b\u307b\u3078\u3068\u3061\u308a\u306c\u308b\u3092\u308f\u304b\u3088\u305f\u308c\u305d\u3064\u306d\u306a\u3089\u3080\u3046\u3090\u306e\u304a\u304f\u3084\u307e\u3051\u3075\u3053\u3048\u3066\u3042\u3055\u304d\u3086\u3081\u307f\u3057\u3091\u3072\u3082\u305b\u3059");case 27:return an(e,3302,3311,!0,r);case 28:return ln(e,"\u30a2\u30a4\u30a6\u30a8\u30aa\u30ab\u30ad\u30af\u30b1\u30b3\u30b5\u30b7\u30b9\u30bb\u30bd\u30bf\u30c1\u30c4\u30c6\u30c8\u30ca\u30cb\u30cc\u30cd\u30ce\u30cf\u30d2\u30d5\u30d8\u30db\u30de\u30df\u30e0\u30e1\u30e2\u30e4\u30e6\u30e8\u30e9\u30ea\u30eb\u30ec\u30ed\u30ef\u30f0\u30f1\u30f2\u30f3",s);case 29:return ln(e,"\u30a4\u30ed\u30cf\u30cb\u30db\u30d8\u30c8\u30c1\u30ea\u30cc\u30eb\u30f2\u30ef\u30ab\u30e8\u30bf\u30ec\u30bd\u30c4\u30cd\u30ca\u30e9\u30e0\u30a6\u30f0\u30ce\u30aa\u30af\u30e4\u30de\u30b1\u30d5\u30b3\u30a8\u30c6\u30a2\u30b5\u30ad\u30e6\u30e1\u30df\u30b7\u30f1\u30d2\u30e2\u30bb\u30b9",s);case 34:return an(e,3792,3801,!0,r);case 37:return an(e,6160,6169,!0,r);case 38:return an(e,4160,4169,!0,r);case 39:return an(e,2918,2927,!0,r);case 40:return an(e,1776,1785,!0,r);case 43:return an(e,3046,3055,!0,r);case 44:return an(e,3174,3183,!0,r);case 45:return an(e,3664,3673,!0,r);case 46:return an(e,3872,3881,!0,r);default:return an(e,48,57,!0,r)}},gn={name:"display",initialValue:"inline-block",prefix:!1,type:1,parse:(e,t)=>t.filter(ri).reduce((e,t)=>e|mn(t.value),0)},mn=e=>{switch(e){case"block":case"-webkit-box":return 2;case"inline":return 4;case"run-in":return 8;case"flow":return 16;case"flow-root":return 32;case"table":return 64;case"flex":case"-webkit-flex":return 128;case"grid":case"-ms-grid":return 256;case"ruby":return 512;case"subgrid":return 1024;case"list-item":return 2048;case"table-row-group":return 4096;case"table-header-group":return 8192;case"table-footer-group":return 16384;case"table-row":return 32768;case"table-cell":return 65536;case"table-column-group":return 131072;case"table-column":return 262144;case"table-caption":return 524288;case"ruby-base":return 1048576;case"ruby-text":return 2097152;case"ruby-base-container":return 4194304;case"ruby-text-container":return 8388608;case"contents":return 16777216;case"inline-block":return 33554432;case"inline-list-item":return 67108864;case"inline-table":return 134217728;case"inline-flex":return 268435456;case"inline-grid":return 536870912}return 0},bn={name:"float",initialValue:"none",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"left":return 1;case"right":return 2;case"inline-start":return 3;case"inline-end":return 4}return 0}},yn={name:"overflow",initialValue:"visible",prefix:!1,type:1,parse:(e,t)=>t.filter(ri).map(e=>{switch(e.value){case"hidden":return 1;case"scroll":return 2;case"clip":return 3;case"auto":return 4;default:return 0}})},xn={name:"text-decoration-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},vn={name:"text-decoration-line",initialValue:"none",prefix:!1,type:1,parse:(e,t)=>t.filter(ri).map(e=>{switch(e.value){case"underline":return 1;case"overline":return 2;case"line-through":return 3;case"none":return 4}return 0}).filter(e=>0!==e)},wn={name:"content",initialValue:"none",type:1,prefix:!1,parse:(e,t)=>{if(0===t.length)return[];let i=t[0];return i&&20===i.type&&"none"===i.value?[]:t}},kn={name:"quotes",initialValue:"none",prefix:!0,type:1,parse:(e,t)=>{if(0===t.length)return null;let i=t[0];if(i&&20===i.type&&"none"===i.value)return null;let r=[],s=t.filter(si);if(s.length%2!=0)return null;for(let e=0;e<s.length;e+=2){let t=mt(s,e).value,i=mt(s,e+1).value;r.push({open:t,close:i})}return r}},Cn=(e,t,i)=>{if(!e)return"";let r=e[Math.min(t,e.length-1)];return r?i?r.open:r.close:""},Sn=(e,t)=>{let i=[],r=e.filter(oi);for(let e=0;e<r.length;e++){let s=r[e],n=r[e+1];if(s&&20===s.type){let e=n&&ii(n)?n.number:t;i.push([s.value,e])}}return i},En={name:"counter-increment",initialValue:"none",prefix:!0,type:1,parse:(e,t)=>{if(0===t.length)return null;let i=t[0];return i&&20===i.type&&"none"===i.value?null:Sn(t,1).map(([e,t])=>({counter:e,increment:t}))}},Mn={name:"counter-reset",initialValue:"none",prefix:!0,type:1,parse:(e,t)=>0===t.length?[]:Sn(t,0).filter(([e])=>"none"!==e).map(([e,t])=>({counter:e,reset:t}))},An={name:"background-clip",initialValue:"border-box",prefix:!1,type:1,parse:(e,t)=>t.map(e=>{if(ri(e))switch(e.value){case"padding-box":return 1;case"content-box":return 2;case"text":return 3}return 0})},Tn={name:"background-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},Bn=(e,t)=>{let i=xs.parse(e,mt(t,0)),r=t[1];return r&&wi(r)?{color:i,stop:r}:{color:i,stop:null}},Rn=(e,t)=>{let i=e.map(e=>({color:e.color,stop:e.stop})),r=mt(i,0),s=mt(i,i.length-1);null===r.stop&&(r.stop=Ti),null===s.stop&&(s.stop=Ri);let n=[],o=0;for(let e=0;e<i.length;e++){let r=mt(i,e).stop;if(null!==r){let e=Pi(r,t);e>o?n.push(e):n.push(o),o=e}else n.push(null)}let a=null;for(let e=0;e<n.length;e++){let t=mt(n,e);if(null===t)null===a&&(a=e);else if(null!==a){let i=e-a,r=(t-n[a-1])/(i+1);for(let e=1;e<=i;e++)n[a+e-1]=r*e;a=null}}return i.map(({color:e},i)=>({color:e,stop:Math.max(Math.min(1,n[i]/t),0)}))},Ln=(e,t,i)=>{let r=t/2,s=i/2,n=Pi(e[0],t)-r,o=s-Pi(e[1],i);return(Math.atan2(o,n)+2*Math.PI)%(2*Math.PI)},Pn=(e,t,i)=>{let r="number"==typeof e?e:Ln(e,t,i),s=Math.abs(t*Math.sin(r))+Math.abs(i*Math.cos(r)),n=t/2,o=i/2,a=s/2,l=Math.sin(r-Math.PI/2)*a,d=Math.cos(r-Math.PI/2)*a;return[s,n-d,n+d,o-l,o+l]},In=(e,t)=>Math.sqrt(e*e+t*t),Nn=(e,t,i,r,s)=>[[0,0],[0,t],[e,0],[e,t]].reduce((e,t)=>{let[n,o]=t,a=In(i-n,r-o);return(s?a<e.optimumDistance:a>e.optimumDistance)?{optimumCorner:t,optimumDistance:a}:e},{optimumDistance:s?1/0:-1/0,optimumCorner:null}).optimumCorner,Dn=(e,t,i,r,s)=>{let n=0,o=0;switch(e.size){case 0:0===e.shape?n=o=Math.min(Math.abs(t),Math.abs(t-r),Math.abs(i),Math.abs(i-s)):1===e.shape&&(n=Math.min(Math.abs(t),Math.abs(t-r)),o=Math.min(Math.abs(i),Math.abs(i-s)));break;case 2:if(0===e.shape)n=o=Math.min(In(t,i),In(t,i-s),In(t-r,i),In(t-r,i-s));else if(1===e.shape){let e=Math.min(Math.abs(i),Math.abs(i-s))/Math.min(Math.abs(t),Math.abs(t-r)),[a,l]=Nn(r,s,t,i,!0);n=In(a-t,(l-i)/e),o=e*n}break;case 1:0===e.shape?n=o=Math.max(Math.abs(t),Math.abs(t-r),Math.abs(i),Math.abs(i-s)):1===e.shape&&(n=Math.max(Math.abs(t),Math.abs(t-r)),o=Math.max(Math.abs(i),Math.abs(i-s)));break;case 3:if(0===e.shape)n=o=Math.max(In(t,i),In(t,i-s),In(t-r,i),In(t-r,i-s));else if(1===e.shape){let e=Math.max(Math.abs(i),Math.abs(i-s))/Math.max(Math.abs(t),Math.abs(t-r)),[a,l]=Nn(r,s,t,i,!1);n=In(a-t,(l-i)/e),o=e*n}}if(Array.isArray(e.size)){let t=e.size;n=Pi(mt(t,0),r),o=2===t.length?Pi(mt(t,1),s):n}return[n,o]},$n="closest-side",zn="farthest-side",_n="closest-corner",Wn="farthest-corner",Hn="circle",Vn="ellipse",jn="cover",Un="contain",Gn=(e,t)=>({...On(e,t),type:3}),Kn=(e,t)=>({...Yn(e,t),type:4}),Jn=(e,t)=>({...Xn(e,t),type:6}),Qn=e=>e&&(ti(e)&&("dppx"===e.unit||"x"===e.unit)||ii(e))?e.number:1,Zn=(e,t)=>{let i=li(t),r=e.config.window.devicePixelRatio||1,s=[];for(let e of i){let t=e.find(e=>22===e.type||18===e.type);if(!t)continue;let i=e.find(e=>ti(e)||ii(e));s.push({imageToken:t,resolution:Qn(i)})}if(0===s.length)throw new Error("image-set() requires at least one image candidate");let n=s.filter(e=>e.resolution>=r).sort((e,t)=>e.resolution-t.resolution),o=mt(n.length>0?n:s.slice().sort((e,t)=>t.resolution-e.resolution),0);return oo.parse(e,o.imageToken)},eo=e=>1===e.type,to=e=>2===e.type,io=e=>3===e.type,ro=e=>4===e.type,so=e=>5===e.type,no=e=>6===e.type,oo={name:"image",parse:(e,t)=>{if(22===t.type){let i={url:t.value,type:0};return e.cache.addImage(t.value),i}if(18===t.type){let i=ao[t.name];if(typeof i>"u")throw new Error(`Attempting to parse an unsupported image function "${t.name}"`);return i(e,t.values)}throw new Error(`Unsupported image type ${t.type}`)}},ao={"linear-gradient":On=(e,t)=>{let i=$i(180),r=[];return li(t).forEach((t,s)=>{if(0===s){let r=t[0];if(r&&20===r.type&&"to"===r.value)return void(i=Fi(t));if(r&&Oi(r))return void(i=Di.parse(e,r))}let n=Bn(e,t);r.push(n)}),{angle:i,stops:r,type:1}},"-moz-linear-gradient":Fn=(e,t)=>{let i=$i(180),r=[];return li(t).forEach((t,s)=>{if(0===s){let r=t[0];if(r&&20===r.type&&-1!==["top","left","right","bottom"].indexOf(r.value))return void(i=Fi(t));if(r&&Oi(r))return void(i=(Di.parse(e,r)+$i(270))%$i(360))}let n=Bn(e,t);r.push(n)}),{angle:i,stops:r,type:1}},"-ms-linear-gradient":Fn,"-o-linear-gradient":Fn,"-webkit-linear-gradient":Fn,"radial-gradient":Yn=(e,t)=>{let i=1,r=3,s=[],n=[];return li(t).forEach((t,o)=>{let a=!0;if(0===o){let e=!1;a=t.reduce((t,s)=>{if(e)if(ri(s))switch(s.value){case"center":return n.push(Bi),t;case"top":case"left":return n.push(Ti),t;case"right":case"bottom":return n.push(Ri),t}else(wi(s)||vi(s))&&n.push(s);else if(ri(s))switch(s.value){case Hn:return i=0,!1;case Vn:return i=1,!1;case"at":return e=!0,!1;case $n:return r=0,!1;case jn:case zn:return r=1,!1;case Un:case _n:return r=2,!1;case Wn:return r=3,!1}else if(vi(s)||wi(s))return Array.isArray(r)||(r=[]),r.push(s),!1;return t},a)}if(a){let i=Bn(e,t);s.push(i)}}),{size:r,shape:i,stops:s,position:n,type:2}},"-moz-radial-gradient":qn=(e,t)=>{let i=1,r=3,s=[],n=[];return li(t).forEach((t,o)=>{let a=!0;if(0===o?a=t.reduce((e,t)=>{if(ri(t))switch(t.value){case"center":return n.push(Bi),!1;case"top":case"left":return n.push(Ti),!1;case"right":case"bottom":return n.push(Ri),!1}else if(wi(t)||vi(t))return n.push(t),!1;return e},a):1===o&&(a=t.reduce((e,t)=>{if(ri(t))switch(t.value){case Hn:return i=0,!1;case Vn:return i=1,!1;case Un:case $n:return r=0,!1;case zn:return r=1,!1;case _n:return r=2,!1;case jn:case Wn:return r=3,!1}else if(vi(t)||wi(t))return Array.isArray(r)||(r=[]),r.push(t),!1;return e},a)),a){let i=Bn(e,t);s.push(i)}}),{size:r,shape:i,stops:s,position:n,type:2}},"-ms-radial-gradient":qn,"-o-radial-gradient":qn,"-webkit-radial-gradient":qn,"-webkit-gradient":(e,t)=>{let i=$i(180),r=[],s=1;return li(t).forEach((t,i)=>{let n=t[0];if(n){if(0===i){if(ri(n)&&"linear"===n.value)return void(s=1);if(ri(n)&&"radial"===n.value)return void(s=2)}if(18===n.type)if("from"===n.name){let t=xs.parse(e,mt(n.values,0));r.push({stop:Ti,color:t})}else if("to"===n.name){let t=xs.parse(e,mt(n.values,0));r.push({stop:Ri,color:t})}else if("color-stop"===n.name){let t=n.values.filter(ai);if(2===t.length){let i=xs.parse(e,mt(t,1)),s=mt(t,0);ii(s)&&r.push({stop:{type:16,number:100*s.number,flags:s.flags},color:i})}}}}),1===s?{angle:(i+$i(180))%$i(360),stops:r,type:s}:{size:3,shape:0,stops:r,position:[],type:s}},"repeating-linear-gradient":Gn,"-webkit-repeating-linear-gradient":Gn,"-moz-repeating-linear-gradient":Gn,"-ms-repeating-linear-gradient":Gn,"-o-repeating-linear-gradient":Gn,"repeating-radial-gradient":Kn,"-webkit-repeating-radial-gradient":Kn,"-moz-repeating-radial-gradient":Kn,"conic-gradient":Xn=(e,t)=>{let i=0,r=[],s=[];return li(t).forEach((t,n)=>{let o=!0;if(0===n){let s=!1,n=!1;o=t.reduce((t,o)=>{if(ri(o))switch(o.value){case"from":return s=!0,n=!1,!1;case"at":return s=!1,n=!0,!1;case"center":return r.push(Bi),t;case"top":case"left":return r.push(Ti),t;case"right":case"bottom":return r.push(Ri),t}return s?(i=Di.parse(e,o),!1):(n&&wi(o)&&r.push(o),t)},!0)}o&&t.length>0&&s.push(Bn(e,t))}),{type:5,angle:i,position:r,stops:s}},"-webkit-conic-gradient":Xn,"-moz-conic-gradient":Xn,"repeating-conic-gradient":Jn,"-webkit-repeating-conic-gradient":Jn,"-moz-repeating-conic-gradient":Jn,"image-set":Zn,"-webkit-image-set":Zn},lo={name:"background-image",initialValue:"none",type:1,prefix:!1,skipCache:!0,parse:(e,t)=>{if(0===t.length)return[];let i=t[0];return i&&20===i.type&&"none"===i.value?[]:t.filter(e=>ai(e)&&it(e)).map(t=>oo.parse(e,t))}},co={name:"background-origin",initialValue:"border-box",prefix:!1,type:1,parse:(e,t)=>t.map(e=>{if(ri(e))switch(e.value){case"padding-box":return 1;case"content-box":return 2}return 0})},po={name:"background-position",initialValue:"0% 0%",type:1,prefix:!1,parse:(e,t)=>li(t).map(e=>e.map(Ei).filter(e=>null!==e)).map(Ai)},ho={name:"background-repeat",initialValue:"repeat",prefix:!1,type:1,parse:(e,t)=>li(t).map(e=>e.filter(ri).map(e=>e.value).join(" ")).map(uo)},uo=e=>{switch(e){case"no-repeat":return 1;case"repeat-x":case"repeat no-repeat":return 2;case"repeat-y":case"no-repeat repeat":return 3;default:return 0}},fo={name:"background-size",initialValue:"0",prefix:!1,type:1,parse:(e,t)=>li(t).map(e=>e.map(e=>go(e)?e:Ei(e)).filter(e=>null!==e))},go=e=>ri(e)||wi(e),bo=(mo=e=>({name:`border-${e}-color`,initialValue:"transparent",prefix:!1,type:3,format:"color"}))("top"),yo=mo("right"),xo=mo("bottom"),vo=mo("left"),ko=(wo=e=>({name:`border-${e}-radius`,initialValue:"0 0",prefix:!1,type:1,parse:(e,t)=>Ai(t.filter(wi))}))("top-left"),Co=wo("top-right"),So=wo("bottom-right"),Eo=wo("bottom-left"),Ao=(Mo=e=>({name:`border-${e}-style`,initialValue:"solid",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"none":return 0;case"dashed":return 2;case"dotted":return 3;case"double":return 4}return 1}}))("top"),To=Mo("right"),Bo=Mo("bottom"),Ro=Mo("left"),Po=(Lo=e=>({name:`border-${e}-width`,initialValue:"0",type:0,prefix:!1,parse:(e,t)=>ti(t)?t.number:0}))("top"),Io=Lo("right"),No=Lo("bottom"),Do=Lo("left"),Oo={type:0},Fo=e=>{let[t]=e;return t?ri(t)?"farthest-side"===t.value?"farthest-side":"closest-side":wi(t)?t:"closest-side":"closest-side"},$o=e=>{let t=null,i=null;for(let r of e)if(ri(r))switch(r.value){case"left":t=Ti;break;case"right":t=Ri;break;case"top":i=Ti;break;case"bottom":i=Ri;break;case"center":null===t?t=Bi:null===i&&(i=Bi)}else wi(r)&&(null===t?t=r:null===i&&(i=r));return{cx:t??Bi,cy:i??Bi}},zo=e=>{let t=[];for(let i of e)if(31!==i.type){if(ri(i)&&"round"===i.value)break;wi(i)&&t.push(i)}let i=t[0]??Ti,r=t[1]??i;return{type:1,top:i,right:r,bottom:t[2]??i,left:t[3]??r}},_o=e=>{let t=e.filter(oi),i=t.findIndex(e=>ni(e,"at")),r=-1===i?t:t.slice(0,i),s=-1===i?[]:t.slice(i+1);return{type:2,radius:Fo(r),...$o(s)}},Wo=e=>{let t=e.filter(oi),i=t.findIndex(e=>ni(e,"at")),r=-1===i?t:t.slice(0,i),s=-1===i?[]:t.slice(i+1);return{type:3,rx:Fo(r.slice(0,1)),ry:Fo(r.slice(1,2)),...$o(s)}},Ho=e=>{let t=li(e),i=[];for(let e of t){if(1===e.length&&e[0]&&ri(e[0]))continue;let t=e.filter(wi);t.length>=2&&i.push([mt(t,0),mt(t,1)])}return{type:4,points:i}},Vo=e=>{let t=e.find(e=>0===e.type);return t?{type:5,d:t.value}:Oo},jo=e=>{let t=[];for(let i of e)if(31!==i.type){if(ri(i)&&"round"===i.value)break;wi(i)&&t.push(i)}return t.length<4?Oo:{type:6,x:mt(t,0),y:mt(t,1),width:mt(t,2),height:mt(t,3)}},Uo=e=>{let t=[];for(let i of e)if(31!==i.type){if(ri(i)){if("round"===i.value)break;if("auto"===i.value){t.push("auto");continue}return Oo}wi(i)&&t.push(i)}if(4!==t.length)return Oo;let i=(e,t)=>"auto"!==e?e:"top"===t||"left"===t?Ti:Ri;return{type:1,top:i(mt(t,0),"top"),right:i(mt(t,1),"right"),bottom:i(mt(t,2),"bottom"),left:i(mt(t,3),"left")}},Yo={name:"clip-path",initialValue:"none",prefix:!1,type:0,parse:(e,t)=>{if(ri(t)&&"none"===t.value)return Oo;if(18===t.type)switch(t.name){case"inset":return zo(t.values);case"circle":return _o(t.values);case"ellipse":return Wo(t.values);case"polygon":return Ho(t.values);case"path":return Vo(t.values);case"xywh":return jo(t.values);case"rect":return Uo(t.values)}return Oo}},qo={name:"color",initialValue:"transparent",prefix:!1,type:3,format:"color"},Go={name:"direction",initialValue:"ltr",prefix:!1,type:2,parse:(e,t)=>"rtl"===t?1:0},Ko={name:"font-family",initialValue:"",prefix:!1,type:1,parse:(e,t)=>{let i=[],r=[],s=[],n=!1;return t.forEach(e=>{switch(e.type){case 20:i.push(e.value);break;case 0:n=!0,i.push(e.value);break;case 17:i.push(e.number.toString());break;case 4:r.push(i.join(" ")),s.push(n),n=!1,i.length=0}}),i.length&&(r.push(i.join(" ")),s.push(n)),r.map((e,t)=>s[t]||-1!==e.indexOf(" ")?`'${e.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,"\\a ").replace(/\r/g,"\\d ").replace(/\f/g,"\\c ")}'`:e)}},Xo={name:"font-size",initialValue:"0",prefix:!1,type:3,format:"length"},Jo={name:"letter-spacing",initialValue:"0",prefix:!1,type:0,parse:(e,t)=>20===t.type&&"normal"===t.value?0:17===t.type||15===t.type?t.number:0},Qo={name:"line-break",initialValue:"normal",prefix:!1,type:2,parse:(e,t)=>"strict"===t?"strict":"normal"},Zo={name:"line-height",initialValue:"normal",prefix:!1,type:4},ea=(e,t)=>ri(e)&&"normal"===e.value?1.2*t:17===e.type?t*e.number:wi(e)?Pi(e,t):t,ta={name:"list-style-image",initialValue:"none",type:0,prefix:!1,skipCache:!0,parse:(e,t)=>20===t.type&&"none"===t.value||!it(t)?null:oo.parse(e,t)},ia={name:"list-style-position",initialValue:"outside",prefix:!1,type:2,parse:(e,t)=>"inside"===t?0:1},sa=(ra=e=>({name:`margin-${e}`,initialValue:"0",prefix:!1,type:4}))("top"),na=ra("right"),oa=ra("bottom"),aa=ra("left"),la={name:"overflow-wrap",initialValue:"normal",prefix:!1,type:2,parse:(e,t)=>"break-word"===t?"break-word":"normal"},ca=(da=e=>({name:`padding-${e}`,initialValue:"0",prefix:!1,type:3,format:"length-percentage"}))("top"),pa=da("right"),ha=da("bottom"),ua=da("left"),fa={name:"text-align",initialValue:"left",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"right":return 2;case"center":case"justify":return 1;default:return 0}}},ga={name:"position",initialValue:"static",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"relative":return 1;case"absolute":return 2;case"fixed":return 3;case"sticky":return 4}return 0}},ma={name:"text-shadow",initialValue:"none",type:1,prefix:!1,parse:(e,t)=>1===t.length&&ni(mt(t,0),"none")?[]:li(t).map(t=>{let i={color:0,offsetX:Ti,offsetY:Ti,blur:Ti},r=0;for(let s=0;s<t.length;s++){let n=t[s];n&&(vi(n)?(0===r?i.offsetX=n:1===r?i.offsetY=n:i.blur=n,r++):i.color=xs.parse(e,n))}return i})},ba={name:"text-transform",initialValue:"none",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"uppercase":return 2;case"lowercase":return 1;case"capitalize":return 3}return 0}},ya={name:"transform",initialValue:"none",prefix:!0,type:0,parse:(e,t)=>{if(20===t.type&&"none"===t.value)return null;if(18===t.type){let i=xa[t.name];if(typeof i>"u")throw new Error(`Attempting to parse an unsupported transform function "${t.name}"`);return i(e,t.values)}return null}},xa={matrix:(e,t)=>{let i=t.filter(e=>17===e.type).map(e=>e.number);return 6===i.length?i:null},matrix3d:(e,t)=>{let i=t.filter(e=>17===e.type).map(e=>e.number);return 16!==i.length?null:[mt(i,0),mt(i,1),mt(i,4),mt(i,5),mt(i,12),mt(i,13)]},rotate:(e,t)=>{if(1!==t.length)return null;let i=mt(t,0),r=0;if(17===i.type&&0===i.number)r=0;else{if(15!==i.type)return null;r=Di.parse(e,i)}let s=Math.cos(r),n=Math.sin(r);return[s,n,-n,s,0,0]}},wa=[va={type:16,number:50,flags:4},va],ka={name:"transform-origin",initialValue:"50% 50%",prefix:!0,type:1,parse:(e,t)=>{let i=t.filter(wi);return 2!==i.length?wa:[mt(i,0),mt(i,1)]}},Ca={name:"rotate",initialValue:"none",prefix:!1,type:0,parse:(e,t)=>20===t.type&&"none"===t.value?null:17===t.type&&0===t.number?0:15===t.type?180*Di.parse(e,t)/Math.PI:null},Sa={name:"visibility",initialValue:"none",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"hidden":return 1;case"collapse":return 2;default:return 0}}},Ea={name:"word-break",initialValue:"normal",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"break-all":return"break-all";case"keep-all":return"keep-all";default:return"normal"}}},Ma={name:"white-space",initialValue:"normal",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"pre":return"pre";case"nowrap":return"nowrap";case"pre-wrap":return"pre-wrap";case"pre-line":return"pre-line";default:return"normal"}}},Aa=e=>0!==e,Ta=e=>3===e||4===e,Ba={name:"writing-mode",initialValue:"horizontal-tb",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"vertical-rl":return 1;case"vertical-lr":return 2;case"sideways-rl":return 3;case"sideways-lr":return 4;default:return 0}}},Ra={name:"z-index",initialValue:"auto",prefix:!1,type:0,parse:(e,t)=>{if(20===t.type)return{auto:!0,order:0};if(ii(t))return{auto:!1,order:t.number};throw new Error("Invalid z-index number parsed")}},La={name:"time",parse:(e,t)=>{if(15===t.type)switch(t.unit.toLowerCase()){case"s":return 1e3*t.number;case"ms":return t.number}throw new Error("Unsupported time type")}},Pa={name:"opacity",initialValue:"1",type:0,prefix:!1,parse:(e,t)=>ii(t)?t.number:1},Ia={name:"text-decoration-style",initialValue:"solid",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"double":return 1;case"dotted":return 2;case"dashed":return 3;case"wavy":return 4;default:return 0}}},Na={name:"text-decoration-thickness",initialValue:"auto",prefix:!1,type:0,parse:(e,t)=>{if(ri(t))switch(t.value){case"auto":return"auto";case"from-font":return"from-font"}return ti(t)?t.number:"auto"}},Da={name:"text-underline-offset",initialValue:"auto",prefix:!1,type:0,parse:(e,t)=>ri(t)&&"auto"===t.value?"auto":ti(t)?t.number:"auto"},Oa={name:"font-weight",initialValue:"normal",type:0,prefix:!1,parse:(e,t)=>ii(t)?t.number:ri(t)&&"bold"===t.value?700:400},Fa={name:"font-variant",initialValue:"none",type:1,prefix:!1,parse:(e,t)=>t.filter(ri).map(e=>e.value)},$a={name:"font-style",initialValue:"normal",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"oblique":return"oblique";case"italic":return"italic";default:return"normal"}}},za={name:"duration",initialValue:"0s",prefix:!1,type:1,parse:(e,t)=>t.filter(ti).map(t=>La.parse(e,t))},_a={name:"box-shadow",initialValue:"none",type:1,prefix:!1,parse:(e,t)=>1===t.length&&ni(mt(t,0),"none")?[]:li(t).map(t=>{let i={color:255,offsetX:Ti,offsetY:Ti,blur:Ti,spread:Ti,inset:!1},r=0;for(let s=0;s<t.length;s++){let n=t[s];n&&(ni(n,"inset")?i.inset=!0:vi(n)?(0===r?i.offsetX=n:1===r?i.offsetY=n:2===r?i.blur=n:i.spread=n,r++):i.color=xs.parse(e,n))}return i})},Wa={name:"paint-order",initialValue:"normal",prefix:!1,type:1,parse:(e,t)=>{let i=[];return t.filter(ri).forEach(e=>{switch(e.value){case"stroke":i.push(1);break;case"fill":i.push(0);break;case"markers":i.push(2)}}),[0,1,2].forEach(e=>{-1===i.indexOf(e)&&i.push(e)}),i}},Ha={name:"-webkit-text-stroke-color",initialValue:"currentcolor",prefix:!1,type:3,format:"color"},Va={name:"-webkit-text-stroke-width",initialValue:"0",type:0,prefix:!1,parse:(e,t)=>ti(t)?t.number:0},ja={name:"-webkit-line-clamp",initialValue:"none",prefix:!0,type:0,parse:(e,t)=>20===t.type&&"none"===t.value?0:17===t.type?Math.max(0,Math.floor(t.number)):0},Ua={name:"object-fit",initialValue:"fill",prefix:!1,type:1,parse:(e,t)=>t.filter(ri).reduce((e,t)=>e|Ya(t.value),0)},Ya=e=>{switch(e){case"contain":return 2;case"cover":return 4;case"none":return 8;case"scale-down":return 16}return 0},qa={name:"text-overflow",initialValue:"clip",prefix:!1,type:2,parse:(e,t)=>"ellipsis"===t?1:0},Ga={name:"image-rendering",initialValue:"auto",prefix:!1,type:2,parse:(e,t)=>{switch(t.toLowerCase()){case"crisp-edges":case"-webkit-crisp-edges":case"-moz-crisp-edges":return 1;case"pixelated":case"-webkit-optimize-contrast":return 2;case"smooth":case"high-quality":return 3;default:return 0}}},Ka={NORMAL:"normal",MULTIPLY:"multiply",SCREEN:"screen",OVERLAY:"overlay",DARKEN:"darken",LIGHTEN:"lighten",COLOR_DODGE:"color-dodge",COLOR_BURN:"color-burn",HARD_LIGHT:"hard-light",SOFT_LIGHT:"soft-light",DIFFERENCE:"difference",EXCLUSION:"exclusion",HUE:"hue",SATURATION:"saturation",COLOR:"color",LUMINOSITY:"luminosity"},Xa=new Set(Object.values(Ka)),Ja={name:"mix-blend-mode",initialValue:"normal",type:2,prefix:!1,parse:(e,t)=>Xa.has(t)?t:Ka.NORMAL},Qa={name:"filter",initialValue:"none",prefix:!1,type:1,parse:(e,t)=>{if(1===t.length){let e=mt(t,0);if(20===e.type&&"none"===e.value)return null}let i=[];for(let e of t)if(22!==e.type){if(18===e.type){let t=e,r=Za(t.values);switch(t.name){case"blur":i.push(`blur(${r})`);break;case"brightness":case"contrast":case"invert":case"opacity":case"saturate":case"sepia":default:i.push(`${t.name}(${r})`);break;case"grayscale":i.push(`grayscale(${r})`);break;case"hue-rotate":i.push(`hue-rotate(${r})`);break;case"drop-shadow":i.push(`drop-shadow(${r})`)}}}else i.push(`url("${e.value}")`);return i.length>0?i.join(" "):null}},Za=e=>{let t=[];for(let i of e)31!==i.type?18===i.type?t.push(`${i.name}(${Za(i.values)})`):4===i.type?t.push(","):6===i.type?t.push(i.value):15===i.type?t.push(`${i.number}${i.unit}`):17===i.type?t.push(`${i.number}`):16===i.type?t.push(`${i.number}%`):20===i.type?t.push(i.value):5===i.type&&t.push(`#${i.value}`):t.push(" ");return t.join("").trim()},el={name:"font-variant-ligatures",initialValue:"normal",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"none":return 1;case"common-ligatures":return 2;case"no-common-ligatures":return 3;case"discretionary-ligatures":return 4;case"no-discretionary-ligatures":return 5;case"historical-ligatures":return 6;case"no-historical-ligatures":return 7;case"contextual":return 8;case"no-contextual":return 9;default:return 0}}},tl={name:"zoom",initialValue:"1",type:0,prefix:!1,parse:(e,t)=>16===t.type?Math.max(0,t.number/100):17===t.type?Math.max(0,t.number):1},il={name:"object-position",initialValue:"50% 50%",prefix:!1,type:1,parse:(e,t)=>{let i=[],r=0;for(;r<t.length&&i.length<2;){let e=t[r];if(!e)break;if(ri(e))switch(e.value){case"left":case"top":i.push(Ti);break;case"center":i.push(Bi);break;case"right":case"bottom":i.push(Ri)}else wi(e)&&i.push(e);r++}for(;i.length<2;)i.push(Bi);return[mt(i,0),mt(i,1)]}},rl=new Set(Object.values({NORMAL:"normal",MULTIPLY:"multiply",SCREEN:"screen",OVERLAY:"overlay",DARKEN:"darken",LIGHTEN:"lighten",COLOR_DODGE:"color-dodge",COLOR_BURN:"color-burn",HARD_LIGHT:"hard-light",SOFT_LIGHT:"soft-light",DIFFERENCE:"difference",EXCLUSION:"exclusion",HUE:"hue",SATURATION:"saturation",COLOR:"color",LUMINOSITY:"luminosity"})),sl={name:"background-blend-mode",initialValue:"normal",prefix:!1,type:1,parse:(e,t)=>{let i=[],r=t.filter(ai);for(let e of r)ri(e)&&rl.has(e.value)&&i.push(e.value);return i.length>0?i:["normal"]}},nl={name:"border-image-source",initialValue:"none",prefix:!1,type:1,skipCache:!0,parse:(e,t)=>{if(0===t.length)return null;let i=t.filter(e=>ai(e)&&it(e));return 0===i.length?null:oo.parse(e,mt(i,0))}},ol=e=>{let t=[...e];if(1===t.length){let e=mt(t,0);t.push(e,e,e)}else 2===t.length?t.push(mt(t,0),mt(t,1)):3===t.length&&t.push(mt(t,1));return[mt(t,0),mt(t,1),mt(t,2),mt(t,3)]},al={name:"border-image-slice",initialValue:"100%",prefix:!1,type:1,parse:(e,t)=>{let i=t.filter(oi),r=[],s=!1,n="percent";for(let e of i)ri(e)&&"fill"===e.value?s=!0:17===e.type?(r.push(e.number),n="number"):16===e.type&&(r.push(e.number),n="percent");let[o,a,l,d]=ol(r.length>0?r:[100]);return{top:o,right:a,bottom:l,left:d,fill:s,unit:n}}},ll=e=>{switch(e){case"repeat":return 1;case"round":return 2;case"space":return 3;default:return 0}},dl={name:"border-image-repeat",initialValue:"stretch",prefix:!1,type:1,parse:(e,t)=>{let i=t.filter(oi),r=[];for(let e of i)ri(e)&&r.push(ll(e.value));let s=r[0]??0;return{horizontal:s,vertical:r[1]??s}}},cl={name:"box-decoration-break",initialValue:"slice",prefix:!1,type:2,parse:(e,t)=>"clone"===t?1:0},pl={name:"accent-color",initialValue:"auto",prefix:!1,type:0,parse:(e,t)=>ri(t)&&"auto"===t.value?null:xs.parse(e,t)},hl={name:"-webkit-text-fill-color",initialValue:"currentcolor",prefix:!0,type:0,parse:(e,t)=>ri(t)&&"currentcolor"===t.value?null:xs.parse(e,t)},ul={name:"isolation",initialValue:"auto",prefix:!1,type:2,parse:(e,t)=>"isolate"===t?1:0},fl={name:"outline-style",initialValue:"none",prefix:!1,type:2,parse:(e,t)=>{switch(t){case"solid":return 2;case"dashed":return 3;case"dotted":return 4;case"double":return 5;case"auto":return 1;default:return 0}}},gl={name:"outline-color",initialValue:"currentcolor",prefix:!1,type:0,parse:(e,t)=>!ri(t)||"currentcolor"!==t.value&&"invert"!==t.value?xs.parse(e,t):null},ml={name:"outline-width",initialValue:"medium",prefix:!1,type:0,parse:Po.parse},bl={name:"backdrop-filter",initialValue:"none",prefix:!1,type:1,parse:(e,t)=>Qa.parse(e,t)},yl=["dot","circle","double-circle","triangle","sesame"],xl=e=>{let t=[...e];if(1===t.length){let e=mt(t,0);t.push(e,e,e)}else 2===t.length?t.push(mt(t,0),mt(t,1)):3===t.length&&t.push(mt(t,1));return[mt(t,0),mt(t,1),mt(t,2),mt(t,3)]},vl=e=>ri(e)&&"auto"===e.value?{kind:"auto"}:17===e.type?{kind:"number",value:e.number}:15===e.type&&"px"===e.unit?{kind:"length",value:e.number}:16===e.type?{kind:"percentage",value:e.number}:null,wl=e=>{let t=[];for(let i of e){if(31===i.type)continue;let e=vl(i);if(!e)return null;t.push(e)}return 0===t.length||t.length>4?null:xl(t)},kl=[["animationDuration",za,"animationDuration"],["backgroundClip",An,"backgroundClip"],["backgroundColor",Tn,"backgroundColor"],["backgroundImage",lo,"backgroundImage"],["backgroundOrigin",co,"backgroundOrigin"],["backgroundPosition",po,"backgroundPosition"],["backgroundRepeat",ho,"backgroundRepeat"],["backgroundSize",fo,"backgroundSize"],["borderTopColor",bo,"borderTopColor"],["borderRightColor",yo,"borderRightColor"],["borderBottomColor",xo,"borderBottomColor"],["borderLeftColor",vo,"borderLeftColor"],["borderTopLeftRadius",ko,"borderTopLeftRadius"],["borderTopRightRadius",Co,"borderTopRightRadius"],["borderBottomRightRadius",So,"borderBottomRightRadius"],["borderBottomLeftRadius",Eo,"borderBottomLeftRadius"],["borderTopStyle",Ao,"borderTopStyle"],["borderRightStyle",To,"borderRightStyle"],["borderBottomStyle",Bo,"borderBottomStyle"],["borderLeftStyle",Ro,"borderLeftStyle"],["borderTopWidth",Po,"borderTopWidth"],["borderRightWidth",Io,"borderRightWidth"],["borderBottomWidth",No,"borderBottomWidth"],["borderLeftWidth",Do,"borderLeftWidth"],["boxShadow",_a,"boxShadow"],["clipPath",Yo,"clipPath"],["color",qo,"color"],["direction",Go,"direction"],["display",gn,"display"],["fontFamily",Ko,"fontFamily"],["fontSize",Xo,"fontSize"],["fontStyle",$a,"fontStyle"],["fontVariant",Fa,"fontVariant"],["fontWeight",Oa,"fontWeight"],["letterSpacing",Jo,"letterSpacing"],["lineBreak",Qo,"lineBreak"],["lineHeight",Zo,"lineHeight"],["listStyleImage",ta,"listStyleImage"],["listStylePosition",ia,"listStylePosition"],["listStyleType",Js,"listStyleType"],["marginTop",sa,"marginTop"],["marginRight",na,"marginRight"],["marginBottom",oa,"marginBottom"],["marginLeft",aa,"marginLeft"],["opacity",Pa,"opacity"],["overflowWrap",la,"overflowWrap"],["paddingTop",ca,"paddingTop"],["paddingRight",pa,"paddingRight"],["paddingBottom",ha,"paddingBottom"],["paddingLeft",ua,"paddingLeft"],["paintOrder",Wa,"paintOrder"],["position",ga,"position"],["textAlign",fa,"textAlign"],["textDecorationStyle",Ia,"textDecorationStyle"],["textDecorationThickness",Na,"textDecorationThickness"],["textUnderlineOffset",Da,"textUnderlineOffset"],["textShadow",ma,"textShadow"],["textTransform",ba,"textTransform"],["textOverflow",qa,"textOverflow"],["transform",ya,"transform"],["transformOrigin",ka,"transformOrigin"],["rotate",Ca,"rotate"],["translate",{name:"translate",initialValue:"none",prefix:!1,type:1,parse:(e,t)=>{let i=[];for(let e of t)wi(e)&&i.push(e);return 0===i.length?null:[mt(i,0),i.length>1?mt(i,1):Ti]}},"translate"],["scale",{name:"scale",initialValue:"none",prefix:!1,type:1,parse:(e,t)=>{let i=[];for(let e of t)ii(e)&&i.push(e.number);return 0===i.length?null:[mt(i,0),i.length>1?mt(i,1):mt(i,0)]}},"scale"],["visibility",Sa,"visibility"],["webkitTextStrokeColor",Ha,"webkitTextStrokeColor"],["webkitTextStrokeWidth",Va,"webkitTextStrokeWidth"],["webkitLineClamp",ja,"webkitLineClamp"],["wordBreak",Ea,"wordBreak"],["whiteSpace",Ma,"whiteSpace"],["writingMode",Ba,"writingMode"],["zIndex",Ra,"zIndex"],["objectFit",Ua,"objectFit"],["imageRendering",Ga,"imageRendering"],["mixBlendMode",Ja,"mixBlendMode"],["filter",Qa,"filter"],["fontVariantLigatures",el,"fontVariantLigatures"],["zoom",tl,"zoom"],["objectPosition",il,"objectPosition"],["backgroundBlendMode",sl,"backgroundBlendMode"],["borderImageSource",nl,"borderImageSource"],["borderImageSlice",al,"borderImageSlice"],["borderImageRepeat",dl,"borderImageRepeat"],["boxDecorationBreak",cl,"boxDecorationBreak"],["accentColor",pl,"accentColor"],["webkitTextFillColor",hl,"webkitTextFillColor"],["isolation",ul,"isolation"],["outlineColor",gl,"outlineColor"],["outlineStyle",fl,"outlineStyle"],["outlineWidth",ml,"outlineWidth"],["outlineOffset",{name:"outline-offset",initialValue:"0px",prefix:!1,type:0,parse:(e,t)=>ti(t)||ii(t)?t.number:0},"outlineOffset"],["backdropFilter",bl,"backdropFilter"],["maskImage",{name:"mask-image",initialValue:"none",prefix:!1,type:1,skipCache:!0,parse:lo.parse},"maskImage"],["maskPosition",{name:"mask-position",initialValue:"0%",prefix:!1,type:1,parse:po.parse},"maskPosition"],["maskRepeat",{name:"mask-repeat",initialValue:"repeat",prefix:!1,type:1,parse:ho.parse},"maskRepeat"],["maskSize",{name:"mask-size",initialValue:"auto",prefix:!1,type:1,parse:fo.parse},"maskSize"],["textEmphasisStyle",{name:"text-emphasis-style",initialValue:"none",prefix:!1,type:1,parse:(e,t)=>{let i=t.filter(oi);if(0===i.length)return null;let r=mt(i,0);if(0===r.type)return r.value;if(ri(r)){if("none"===r.value)return null;if("filled"!==r.value&&"open"!==r.value&&-1===yl.indexOf(r.value))return r.value}let s=!0,n="circle";for(let e of i)ri(e)&&("filled"===e.value?s=!0:"open"===e.value?s=!1:-1!==yl.indexOf(e.value)&&(n=e.value));return{fill:s,shape:n}}},"textEmphasisStyle"],["textEmphasisColor",{name:"text-emphasis-color",initialValue:"currentcolor",prefix:!1,type:0,parse:(e,t)=>ri(t)&&"currentcolor"===t.value?null:xs.parse(e,t)},"textEmphasisColor"],["textEmphasisPosition",{name:"text-emphasis-position",initialValue:"over right",prefix:!1,type:1,parse:(e,t)=>{let i=!0,r=!0;for(let e of t)if(ri(e))switch(e.value){case"over":i=!0;break;case"under":i=!1;break;case"right":r=!0;break;case"left":r=!1}return{over:i,right:r}}},"textEmphasisPosition"],["borderImageWidth",{name:"border-image-width",initialValue:"auto",prefix:!1,type:1,parse:(e,t)=>{let i=wl(t),r={kind:"auto"};return i?{top:i[0],right:i[1],bottom:i[2],left:i[3]}:{top:r,right:r,bottom:r,left:r}}},"borderImageWidth"],["borderImageOutset",{name:"border-image-outset",initialValue:"0px",prefix:!1,type:1,parse:(e,t)=>{let i=wl(t),r={kind:"length",value:0};return i?{top:i[0],right:i[1],bottom:i[2],left:i[3]}:{top:r,right:r,bottom:r,left:r}}},"borderImageOutset"],["webkitBoxReflect",{name:"-webkit-box-reflect",initialValue:"none",prefix:!0,type:1,skipCache:!0,parse:(e,t)=>{let i=null,r=0,s=null;for(let n of t)if(31!==n.type){if(null===i&&ri(n)){if("below"===n.value||"above"===n.value||"left"===n.value||"right"===n.value){i=n.value;continue}if("none"===n.value)return null}if(0===r&&ti(n)&&"px"===n.unit){r=n.number;continue}if(null===s&&it(n)){s=oo.parse(e,n);continue}}return null===i?null:{direction:i,offset:r,mask:s}}},"webkitBoxReflect"]],Cl=new Map,Sl=(e,t,i)=>{let r=null!==i&&typeof i<"u"?i.toString():t.initialValue;""===r.trim()&&(r=t.initialValue);let s=Cl.get(t);if(s){let e=s.get(r);if(void 0!==e)return s.delete(r),s.set(r,e),e}let n=Zt.get();n.write(r);let o=new ei(n.read());Zt.release(n);let a=(()=>{switch(t.type){case 2:{let i=o.parseComponentValue();return t.parse(e,ri(i)?i.value:t.initialValue)}case 0:return t.parse(e,o.parseComponentValue());case 1:return t.parse(e,o.parseComponentValues());case 4:return o.parseComponentValue();case 3:switch(t.format){case"angle":return Di.parse(e,o.parseComponentValue());case"color":return xs.parse(e,o.parseComponentValue());case"image":return oo.parse(e,o.parseComponentValue());case"length":{let e=o.parseComponentValue();return vi(e)?e:Ti}case"length-percentage":{let e=o.parseComponentValue();return wi(e)?e:Ti}case"time":return La.parse(e,o.parseComponentValue())}}})();if(s||(s=new Map,Cl.set(t,s)),!(t.skipCache||3===t.type&&"image"===t.format)){if(s.size>=200){let e=s.keys().next().value;void 0!==e&&s.delete(e)}s.set(r,a)}return a},El=class{styles;constructor(e){this.styles=e}get topColor(){return this.styles.borderTopColor}get rightColor(){return this.styles.borderRightColor}get bottomColor(){return this.styles.borderBottomColor}get leftColor(){return this.styles.borderLeftColor}get topStyle(){return this.styles.borderTopStyle}get rightStyle(){return this.styles.borderRightStyle}get bottomStyle(){return this.styles.borderBottomStyle}get leftStyle(){return this.styles.borderLeftStyle}get topWidth(){return this.styles.borderTopWidth}get rightWidth(){return this.styles.borderRightWidth}get bottomWidth(){return this.styles.borderBottomWidth}get leftWidth(){return this.styles.borderLeftWidth}get topLeftRadius(){return this.styles.borderTopLeftRadius}get topRightRadius(){return this.styles.borderTopRightRadius}get bottomRightRadius(){return this.styles.borderBottomRightRadius}get bottomLeftRadius(){return this.styles.borderBottomLeftRadius}get imageSource(){return this.styles.borderImageSource}get imageSlice(){return this.styles.borderImageSlice}get imageRepeat(){return this.styles.borderImageRepeat}get boxShadow(){return this.styles.boxShadow}},Ml=class{styles;constructor(e){this.styles=e}get color(){return this.styles.backgroundColor}get image(){return this.styles.backgroundImage}get clip(){return this.styles.backgroundClip}get origin(){return this.styles.backgroundOrigin}get position(){return this.styles.backgroundPosition}get repeat(){return this.styles.backgroundRepeat}get size(){return this.styles.backgroundSize}get blendMode(){return this.styles.backgroundBlendMode}},Al=class{styles;constructor(e){this.styles=e}get family(){return this.styles.fontFamily}get size(){return this.styles.fontSize}get style(){return this.styles.fontStyle}get variant(){return this.styles.fontVariant}get weight(){return this.styles.fontWeight}get ligatures(){return this.styles.fontVariantLigatures}get color(){return this.styles.color}get letterSpacing(){return this.styles.letterSpacing}get lineHeight(){return this.styles.lineHeight}get textAlign(){return this.styles.textAlign}get textTransform(){return this.styles.textTransform}get textOverflow(){return this.styles.textOverflow}get textShadow(){return this.styles.textShadow}get textDecorationColor(){return this.styles.textDecorationColor}get textDecorationLine(){return this.styles.textDecorationLine}get textDecorationStyle(){return this.styles.textDecorationStyle}get textDecorationThickness(){return this.styles.textDecorationThickness}get textUnderlineOffset(){return this.styles.textUnderlineOffset}get wordBreak(){return this.styles.wordBreak}get lineBreak(){return this.styles.lineBreak}get overflowWrap(){return this.styles.overflowWrap}get writingMode(){return this.styles.writingMode}get direction(){return this.styles.direction}get webkitTextStrokeColor(){return this.styles.webkitTextStrokeColor}get webkitTextStrokeWidth(){return this.styles.webkitTextStrokeWidth}get webkitLineClamp(){return this.styles.webkitLineClamp}get paintOrder(){return this.styles.paintOrder}},Tl=class{styles;constructor(e){this.styles=e}get display(){return this.styles.display}get position(){return this.styles.position}get float(){return this.styles.float}get zIndex(){return this.styles.zIndex}get marginTop(){return this.styles.marginTop}get marginRight(){return this.styles.marginRight}get marginBottom(){return this.styles.marginBottom}get marginLeft(){return this.styles.marginLeft}get paddingTop(){return this.styles.paddingTop}get paddingRight(){return this.styles.paddingRight}get paddingBottom(){return this.styles.paddingBottom}get paddingLeft(){return this.styles.paddingLeft}get overflowX(){return this.styles.overflowX}get overflowY(){return this.styles.overflowY}get opacity(){return this.styles.opacity}get visibility(){return this.styles.visibility}get transform(){return this.styles.transform}get transformOrigin(){return this.styles.transformOrigin}get rotate(){return this.styles.rotate}get zoom(){return this.styles.zoom}get clipPath(){return this.styles.clipPath}get mixBlendMode(){return this.styles.mixBlendMode}get filter(){return this.styles.filter}get imageRendering(){return this.styles.imageRendering}get objectFit(){return this.styles.objectFit}get objectPosition(){return this.styles.objectPosition}get boxDecorationBreak(){return this.styles.boxDecorationBreak}get listStyleImage(){return this.styles.listStyleImage}get listStylePosition(){return this.styles.listStylePosition}get listStyleType(){return this.styles.listStyleType}get animationDuration(){return this.styles.animationDuration}isVisible(){return this.styles.isVisible()}isTransparent(){return this.styles.isTransparent()}isTransformed(){return this.styles.isTransformed()}isPositioned(){return this.styles.isPositioned()}isPositionedWithZIndex(){return this.styles.isPositionedWithZIndex()}isFloating(){return this.styles.isFloating()}isInlineLevel(){return this.styles.isInlineLevel()}},Bl=class{animationDuration;backgroundClip;backgroundColor;backgroundImage;backgroundOrigin;backgroundPosition;backgroundRepeat;backgroundSize;borderTopColor;borderRightColor;borderBottomColor;borderLeftColor;borderTopLeftRadius;borderTopRightRadius;borderBottomRightRadius;borderBottomLeftRadius;borderTopStyle;borderRightStyle;borderBottomStyle;borderLeftStyle;borderTopWidth;borderRightWidth;borderBottomWidth;borderLeftWidth;boxShadow;clipPath;color;direction;display;float;fontFamily;fontSize;fontStyle;fontVariant;fontWeight;letterSpacing;lineBreak;lineHeight;listStyleImage;listStylePosition;listStyleType;marginTop;marginRight;marginBottom;marginLeft;opacity;overflowX;overflowY;overflowWrap;paddingTop;paddingRight;paddingBottom;paddingLeft;paintOrder;position;textAlign;textDecorationColor;textDecorationLine;textDecorationStyle;textDecorationThickness;textUnderlineOffset;textShadow;textTransform;textOverflow;transform;transformOrigin;rotate;translate;scale;visibility;webkitTextStrokeColor;webkitTextStrokeWidth;webkitLineClamp;wordBreak;whiteSpace;writingMode;zIndex;objectFit;imageRendering;mixBlendMode;filter;fontVariantLigatures;zoom;objectPosition;backgroundBlendMode;borderImageSource;borderImageSlice;borderImageRepeat;boxDecorationBreak;accentColor;webkitTextFillColor;isolation;outlineColor;outlineStyle;outlineWidth;outlineOffset;backdropFilter;maskImage;maskPosition;maskRepeat;maskSize;textEmphasisStyle;textEmphasisColor;textEmphasisPosition;borderImageWidth;borderImageOutset;webkitBoxReflect;_border;_background;_font;_layout;get border(){return this._border??(this._border=new El(this))}get background(){return this._background??(this._background=new Ml(this))}get font(){return this._font??(this._font=new Al(this))}get layout(){return this._layout??(this._layout=new Tl(this))}constructor(e,t){if("none"!==t.display){for(let[i,r,s]of kl)this[i]=Sl(e,r,t[s]);Object.assign(this,Rl(e,t))}else{this.display=0;for(let[t,i]of kl)"display"!==t&&(this[t]=Sl(e,i,void 0));Object.assign(this,Rl(e,null))}}isVisible(){return this.display>0&&this.opacity>0&&0===this.visibility}isTransparent(){return zi(this.backgroundColor)}isTransformed(){return null!==this.transform||null!==this.rotate||null!==this.translate||null!==this.scale}isPositioned(){return 0!==this.position}isPositionedWithZIndex(){return this.isPositioned()&&!this.zIndex.auto}isFloating(){return 0!==this.float}isInlineLevel(){return Qs(this.display,4)||Qs(this.display,33554432)||Qs(this.display,268435456)||Qs(this.display,536870912)||Qs(this.display,67108864)||Qs(this.display,134217728)}},Rl=(e,t)=>{let i=(e,i)=>{if(t)return t[e]??i},r=Sl(e,yn,i("overflow"));return{float:Sl(e,bn,i("cssFloat")),textDecorationColor:Sl(e,xn,i("textDecorationColor",i("color"))),textDecorationLine:Sl(e,vn,i("textDecorationLine",i("textDecoration"))),overflowX:r[0],overflowY:r[r.length>1?1:0]}},Ll=class{content;quotes;constructor(e,t){this.content=Sl(e,wn,t.content),this.quotes=Sl(e,kn,t.quotes)}},Pl=class{counterIncrement;counterReset;constructor(e,t){this.counterIncrement=Sl(e,En,t.counterIncrement),this.counterReset=Sl(e,Mn,t.counterReset)}},Il=e=>{if("function"!=typeof e.getAttribute)return 0;switch(e.getAttribute("data-html2canvas-debug")){case"all":return 1;case"clone":return 2;case"parse":return 3;case"render":return 4;default:return 0}},Nl=(e,t)=>{let i=Il(e);return 1===i||t===i},Dl=e=>{let t="";for(let i of e)try{let e=i.cssRules;for(let i=0;i<e.length;i++){let r=e[i];r&&"string"==typeof r.cssText&&(t+=r.cssText)}}catch{}return t},Ol=(e,t,i)=>{let r=Dl(t);if(!r)return null;let s=e.createElement("style");return s.textContent=r,i&&(s.nonce=i),s},Fl=class{cloneNodeFn;options;context;constructor(e,t,i){this.cloneNodeFn=e,this.options=t,this.context=i}appendChildNode(e,t,i){this.safeAppendClonedChild(e,t,i)}cloneChildNodes(e,t,i){e.shadowRoot&&t.shadowRoot?(this.cloneShadowDOMChildren(e.shadowRoot,t.shadowRoot,i),this.cloneLightDOMChildren(e,t,i)):e.shadowRoot&&!t.shadowRoot?this.cloneShadowDOMAsLightDOM(e.shadowRoot,t,i):this.cloneLightDOMChildren(e,t,i)}shouldCloneChild(e){return!(Bs(e)&&(Hs(e)||e.hasAttribute("data-html2canvas-ignore")||"function"==typeof this.options.ignoreElements&&this.options.ignoreElements(e)))}shouldCloneStyleElement(e){return!this.options.copyStyles||!Bs(e)||!Ws(e)}safeAppendClonedChild(e,t,i){this.shouldCloneChild(t)&&this.shouldCloneStyleElement(t)&&e.appendChild(this.cloneNodeFn(t,i))}cloneAssignedNodes(e,t,i){e.forEach(e=>{this.safeAppendClonedChild(t,e,i)})}cloneSlotFallbackContent(e,t,i){for(let r=e.firstChild;r;r=r.nextSibling)this.safeAppendClonedChild(t,r,i)}cloneSlotElement(e,t,i){if(!Us(e))return;let r=e;if("function"!=typeof r.assignedNodes)return this.context.logger.warn("HTMLSlotElement.assignedNodes is not available",e),void this.cloneSlotFallbackContent(e,t,i);let s=r.assignedNodes();if(!s||!Array.isArray(s))return this.context.logger.warn("assignedNodes() did not return a valid array",e),void this.cloneSlotFallbackContent(e,t,i);s.length>0?this.cloneAssignedNodes(s,t,i):this.cloneSlotFallbackContent(e,t,i)}cloneShadowDOMChildren(e,t,i){for(let r=e.firstChild;r;r=r.nextSibling)Bs(r)&&Us(r)?this.cloneSlotElement(r,t,i):this.safeAppendClonedChild(t,r,i);this.appendAdoptedStyleSheets(e,t,i)}cloneLightDOMChildren(e,t,i){for(let r=e.firstChild;r;r=r.nextSibling)this.appendChildNode(t,r,i)}cloneSlotElementAsLightDOM(e,t,i){if(!Us(e))return;let r=e;if("function"!=typeof r.assignedNodes){for(let r=e.firstChild;r;r=r.nextSibling)this.appendChildNode(t,r,i);return}let s=r.assignedNodes();if(s&&Array.isArray(s)&&s.length>0)s.forEach(e=>this.appendChildNode(t,e,i));else for(let r=e.firstChild;r;r=r.nextSibling)this.appendChildNode(t,r,i)}cloneShadowDOMAsLightDOM(e,t,i){for(let r=e.firstChild;r;r=r.nextSibling)Bs(r)&&Us(r)?this.cloneSlotElementAsLightDOM(r,t,i):this.appendChildNode(t,r,i);this.appendAdoptedStyleSheets(e,t,i)}appendAdoptedStyleSheets(e,t,i){if(i)return;let r=e.adoptedStyleSheets;if(!r||0===r.length)return;let s="host"in t?t.host.ownerDocument:t.ownerDocument;if(!s)return;let n=Ol(s,r,this.options.cspNonce);n&&t.appendChild(n)}},$l=["all","d","content"],zl=(e,t)=>{let i=[];for(let t=e.length-1;t>=0;t--){let r=e.item(t);if(-1===$l.indexOf(r)&&!r.startsWith("--")){let t=e.getPropertyValue(r);if(t){let s=e.getPropertyPriority(r);i.push(s?`${r}:${t} !${s}`:`${r}:${t}`)}}}return i.length>0&&(t.style.cssText=i.join(";")+";"),t},_l="___html2canvas___pseudoelement_before",Wl="___html2canvas___pseudoelement_after",Hl='{\n content: "" !important;\n display: none !important;\n}',Vl=(e,t)=>{jl(e,`.${_l}:before${Hl}\n .${Wl}:after${Hl}`,t)},jl=(e,t,i)=>{let r=e.ownerDocument;if(r){let s=r.createElement("style");s.textContent=t,i&&(s.nonce=i),e.appendChild(s)}},Ul=class{context;counters;quoteDepth=0;constructor(e,t){this.context=e,this.counters=t}resolvePseudoContent(e,t,i,r){if(!i)return;let s=i.content,n=t.ownerDocument;if(!n||!s||"none"===s||"-moz-alt-content"===s||"none"===i.display)return;this.counters.parse(new Pl(this.context,i));let o=new Ll(this.context,i),a=n.createElement("html2canvaspseudoelement");zl(i,a),o.content.forEach(t=>{if(0===t.type)a.appendChild(n.createTextNode(t.value));else if(22===t.type){let e=n.createElement("img");e.src=t.value,e.style.opacity="1",a.appendChild(e)}else if(18===t.type){if("attr"===t.name){let i=t.values.filter(ri);i.length&&i[0]&&a.appendChild(n.createTextNode(e.getAttribute(i[0].value)||""))}else if("counter"===t.name){let[e,i]=t.values.filter(ai);if(e&&ri(e)){let t=this.counters.getCounterValue(e.value),r=i&&ri(i)?Js.parse(this.context,i.value):3;a.appendChild(n.createTextNode(fn(t,r,!1)))}}else if("counters"===t.name){let[e,i,r]=t.values.filter(ai);if(e&&ri(e)){let t=this.counters.getCounterValues(e.value),s=r&&ri(r)?Js.parse(this.context,r.value):3,o=i&&0===i.type?i.value:"",l=t.map(e=>fn(e,s,!1)).join(o);a.appendChild(n.createTextNode(l))}}}else if(20===t.type)switch(t.value){case"open-quote":a.appendChild(n.createTextNode(Cn(o.quotes,this.quoteDepth++,!0)));break;case"close-quote":{let e=this.quoteDepth>0;this.quoteDepth=Math.max(0,this.quoteDepth-1),e&&a.appendChild(n.createTextNode(Cn(o.quotes,this.quoteDepth,!1)));break}default:a.appendChild(n.createTextNode(t.value))}}),a.className=`${_l} ${Wl}`;let l=0===r?` ${_l}`:` ${Wl}`;return Ls(t)?t.className.baseValue+=l:t.className+=l,a}},Yl=e=>{if(e?.aborted)throw new DOMException("The operation was aborted.","AbortError")},ql=new WeakMap,Gl=e=>{let t=e&&e.trustedTypes;if(!t)return null;if(ql.has(t))return ql.get(t)??null;let i=null;try{i=t.getPolicy?.("html2canvas-pro")??t.createPolicy("html2canvas-pro",{createHTML:e=>e})}catch{i=null}return ql.set(t,i),i},Kl=(e,t,i)=>{let r=e.createElement("iframe");return r.className="html2canvas-container",r.style.visibility="hidden",r.style.position="fixed",r.style.left="-10000px",r.style.top="0px",r.style.border="0",r.width=t.width.toString(),r.height=t.height.toString(),r.scrolling="no",r.setAttribute("data-html2canvas-ignore","true"),(i||e.body).appendChild(r),r},Xl=e=>new Promise(t=>{e.complete?t():e.src?(e.onload=t,e.onerror=t):t()}),Jl=e=>Promise.all([].slice.call(e.images,0).map(Xl)),Ql=(e,t,i)=>new Promise((r,s)=>{let n=e.contentWindow;if(!n)return s("No window assigned for iframe");let o,a=n.document,l=setTimeout(()=>{o&&clearInterval(o),s(new Error("Cloned iframe did not fire its load event within 60000ms"))},6e4),d=()=>{o&&clearInterval(o),clearTimeout(l),s(new DOMException("The operation was aborted.","AbortError"))};n.onload=e.onload=()=>{n.onload=e.onload=null;let s=Math.ceil(600),c=0;o=setInterval(()=>{c++,i?.aborted?d():a.body.childNodes.length>0&&"complete"===a.readyState?(clearInterval(o),o=void 0,clearTimeout(l),r(e)):c>=s&&(clearInterval(o),o=void 0,t?.warn("Cloned iframe did not become ready within 30 seconds; continuing with a possibly incomplete document"),r(e))},50)},i&&(i.aborted?d():i.addEventListener("abort",d,{once:!0}))}),Zl=e=>{let t="";return e&&(t+="<!DOCTYPE ",e.name&&(t+=e.name),e.internalSubset&&(t+=" "+e.internalSubset.replace(/"/g,""").replace(/>/g,">")),e.publicId?(t+=' PUBLIC "'+e.publicId.replace(/"/g,""")+'"',e.systemId&&(t+=' "'+e.systemId.replace(/"/g,""")+'"')):e.systemId&&(t+=' SYSTEM "'+e.systemId.replace(/"/g,""")+'"'),t+=">"),t},ed=(e,t,i)=>{e&&e.defaultView&&(t!==e.defaultView.pageXOffset||i!==e.defaultView.pageYOffset)&&e.defaultView.scrollTo(t,i)},td=([e,t,i])=>{e.scrollLeft=t,e.scrollTop=i},id=(e,t)=>{let i=e.ownerDocument.createElement("base");i.href=t;let r=e.getElementsByTagName("head").item(0);r?.insertBefore(i,r?.firstChild??null)},rd=(e,t,i,r)=>{let s=Kl(t,i,r.container);if(!s.contentWindow)throw new Error("Unable to find iframe window");let n=t.defaultView.pageXOffset,o=t.defaultView.pageYOffset,a=s.contentWindow,l=a.document,d=Ql(s,e.logger,r.signal).then(async()=>{r.scrolledElements.forEach(td),a&&a.scrollTo(i.left,i.top);let t=r.onclone,n=r.clonedReferenceElement;if(typeof n>"u")throw new Error(`Error finding the ${r.referenceElementName} in the cloned document`);return Yl(r.signal),l.fonts&&l.fonts.ready&&await l.fonts.ready,Yl(r.signal),/(AppleWebKit)/g.test(navigator.userAgent)&&(await Jl(l),Yl(r.signal)),"function"==typeof t&&await Promise.resolve().then(()=>t(l,n)),a.scrollTo(i.left,i.top),/AppleWebKit/g.test(navigator.userAgent)&&(a.scrollY!==i.top||a.scrollX!==i.left)&&(e.logger.warn("Unable to restore scroll position for cloned document"),e.adjustWindowBounds(a.scrollX-i.left,a.scrollY-i.top)),s}),c=t.baseURI;l.open();let p=Zl(t.doctype)+"<html></html>";try{let e=Gl(t.defaultView),i=e?e.createHTML(p):p;l.write(i)}catch{l.write(p)}ed(t,n,o),l.close();let h=l.adoptNode(r.documentElement);return id(h,c),l.replaceChild(h,l.documentElement),d},sd=e=>{let t=e;for(;t;){if(t.parentNode&&t.parentNode.host)return t.parentNode;let e=t.getRootNode();if(e&&e!==t.ownerDocument&&e.host)return e;t=t.parentNode}return null},nd=class{context;options;scrolledElements;referenceElement;clonedReferenceElement;documentElement;counters;pseudoContents;slotCloner;constructor(e,t,i){if(this.context=e,this.options=i,this.scrolledElements=[],this.referenceElement=t,this.counters=new Zs,this.pseudoContents=new Ul(e,this.counters),this.slotCloner=new Fl((e,t)=>this.cloneNode(e,t),{ignoreElements:i.ignoreElements,copyStyles:i.copyStyles??!0,cspNonce:i.cspNonce},e),!t.ownerDocument)throw new Error("Cloned element does not have an owner document");if(!this.options.iframeContainer){let e=sd(t);e&&(this.options.iframeContainer=e)}this.documentElement=this.cloneNode(t.ownerDocument.documentElement,!1),this.appendDocumentAdoptedStyles(t.ownerDocument)}appendDocumentAdoptedStyles(e){if(this.options.copyStyles)return;let t=e.adoptedStyleSheets;if(!t||0===t.length)return;let i=this.documentElement.getElementsByTagName("head").item(0);if(!i)return;let r=Ol(this.documentElement.ownerDocument??e,t,this.options.cspNonce);r&&i.appendChild(r)}toIFrame(e,t){return rd(this.context,e,t,{documentElement:this.documentElement,clonedReferenceElement:this.clonedReferenceElement,referenceElementName:this.referenceElement.nodeName,scrolledElements:this.scrolledElements,onclone:this.options.onclone,container:this.options.iframeContainer,signal:this.options.signal})}createElementClone(e){if(Nl(e,2),Fs(e))return this.createCanvasClone(e);if($s(e))return this.createVideoClone(e);if(Ws(e))return this.createStyleClone(e);let t=e.cloneNode(!1);return zs(t)&&(zs(e)&&e.currentSrc&&e.currentSrc!==e.src&&(t.src=e.currentSrc,t.srcset=""),"lazy"===t.loading&&(t.loading="eager")),Gs(t)&&!Ls(t)?this.createCustomElementClone(e,t):t}createCustomElementClone(e,t){let i=document.createElement("div");i.className=t.className,zl(t.style,i);let r=t.attributes;for(let e=0;e<r.length;e++){let t=r.item(e);t&&"class"!==t.name&&"style"!==t.name&&i.setAttribute(t.name,t.value)}if(e.shadowRoot)try{i.attachShadow({mode:"open"})}catch(e){this.context.logger.error("Failed to attach shadow root to custom element clone:",e)}return i}createStyleClone(e){try{let t=e.sheet;if(t&&t.cssRules){let i=[].slice.call(t.cssRules,0).reduce((e,t)=>t&&"string"==typeof t.cssText?e+t.cssText:e,""),r=e.cloneNode(!1);return r.textContent=i,this.options.cspNonce&&(r.nonce=this.options.cspNonce),r}}catch(e){if(this.context.logger.error("Unable to access cssRules property",e),"SecurityError"!==e.name)throw e}let t=e.cloneNode(!1);return this.options.cspNonce&&(t.nonce=this.options.cspNonce),t}createCanvasClone(e){if(this.options.inlineImages&&e.ownerDocument){let t=e.ownerDocument.createElement("img");try{return t.src=e.toDataURL(),t}catch{this.context.logger.info("Unable to inline canvas contents, canvas is tainted",e)}}let t=e.cloneNode(!1);try{t.width=e.width,t.height=e.height;let i=e.getContext("2d"),r=t.getContext("2d",{willReadFrequently:!0});if(r)if(!this.options.allowTaint&&i)r.putImageData(i.getImageData(0,0,e.width,e.height),0,0);else{let t=e.getContext("webgl2")??e.getContext("webgl");t&&!1===t.getContextAttributes()?.preserveDrawingBuffer&&this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false",e),r.drawImage(e,0,0)}return t}catch{this.context.logger.info("Unable to clone canvas as it is tainted",e)}return t}createVideoClone(e){let t=e.ownerDocument.createElement("canvas");t.width=e.offsetWidth,t.height=e.offsetHeight;let i=t.getContext("2d");try{return i&&(i.drawImage(e,0,0,t.width,t.height),this.options.allowTaint||i.getImageData(0,0,t.width,t.height)),t}catch{this.context.logger.info("Unable to clone video as it is tainted",e)}let r=e.ownerDocument.createElement("canvas");return r.width=e.offsetWidth,r.height=e.offsetHeight,r}appendChildNode(e,t,i){this.slotCloner.appendChildNode(e,t,i)}cloneChildNodes(e,t,i){this.slotCloner.cloneChildNodes(e,t,i)}cloneNode(e,t){if(Rs(e))return(e.ownerDocument??document).createTextNode(e.data);if(!e.ownerDocument)return e.cloneNode(!1);let i=e.ownerDocument.defaultView;if(i&&Bs(e)&&(Ps(e)||Ls(e))){let r=this.createElementClone(e);r.style.transitionProperty="none";let s=i.getComputedStyle(e),n=Xs(e);this.referenceElement===e&&Ps(r)&&(this.clonedReferenceElement=r),Os(r)&&Vl(r,this.options.cspNonce);let o=this.counters.parse(new Pl(this.context,s));if(n){let t=i.getComputedStyle(e,":before"),s=this.pseudoContents.resolvePseudoContent(e,r,t,0);s&&r.insertBefore(s,r.firstChild)}if(Gs(e)&&(t=!0),$s(e)||this.cloneChildNodes(e,r,t),n){let t=i.getComputedStyle(e,":after"),s=this.pseudoContents.resolvePseudoContent(e,r,t,1);s&&r.appendChild(s)}return this.counters.pop(o),(s&&(this.options.copyStyles||Ls(e))&&!_s(e)||t)&&zl(s,r),(0!==e.scrollTop||0!==e.scrollLeft)&&this.scrolledElements.push([r,e.scrollLeft,e.scrollTop]),(Vs(e)||js(e))&&(Vs(r)||js(r))&&(r.value=e.value),r}return e.cloneNode(!1)}static destroy(e){return!!e.parentNode&&(e.parentNode.removeChild(e),!0)}},od=class{static normalizeElement(e,t){let i={};if(!Ps(e)&&!Ls(e))return i;t.animationDuration.some(e=>e>0)&&(i.animationDuration=e.style.animationDuration,e.style.animationDuration="0s"),null!==t.transform&&(i.transform=e.style.transform,e.style.transform="translate(0, 0)");let r=!1;return null!==t.rotate&&(i.rotate=e.style.rotate,e.style.rotate="0deg",r=!0),null!==t.translate&&(i.translate=e.style.translate,e.style.translate="0px",r=!0),null!==t.scale&&(i.scale=e.style.scale,e.style.scale="1",r=!0),r&&void 0===i.transform&&(i.transform=e.style.transform,e.style.transform="translate(0, 0)"),i}static restoreElement(e,t){!Ps(e)&&!Ls(e)||(void 0!==t.animationDuration&&(e.style.animationDuration=t.animationDuration),void 0!==t.transform&&(e.style.transform=t.transform),void 0!==t.rotate&&(e.style.rotate=t.rotate),void 0!==t.translate&&(e.style.translate=t.translate),void 0!==t.scale&&(e.style.scale=t.scale))}},ad=class{context;styles;textNodes=[];elements=[];bounds;legendBounds;createsStackingContext=!1;createsRealStackingContext=!1;isListOwner=!1;debugRender=!1;originalStyles;originalElement;constructor(e,t,i={}){if(this.context=e,Nl(t,3),this.styles=new Bl(e,e.config.window.getComputedStyle(t,null)),!1!==i.normalizeDom&&(Ps(t)||Ls(t))&&(this.originalStyles=od.normalizeElement(t,this.styles),this.originalElement=t),this.bounds=ft(this.context,t),"FIELDSET"===t.tagName){let e=t.querySelector(":scope > legend");if(e){let t=ft(this.context,e);this.legendBounds=t;let i=t.top+t.height/2-this.styles.borderTopWidth/2;this.bounds=new ut(this.bounds.left,i,this.bounds.width,this.bounds.height-(i-this.bounds.top))}}Nl(t,4)&&(this.debugRender=!0)}restore(){this.originalStyles&&this.originalElement&&(od.restoreElement(this.originalElement,this.originalStyles),this.originalStyles=void 0,this.originalElement=void 0)}restoreTree(){this.restore();for(let e of this.elements)e.restoreTree()}},ld=e=>{if(e.createRange){let t=e.createRange();if(t.getBoundingClientRect){let i=e.createElement("boundtest");i.style.height="123px",i.style.display="block",e.body.appendChild(i),t.selectNode(i);let r=t.getBoundingClientRect(),s=Math.round(r.height);if(e.body.removeChild(i),123===s)return!0}}return!1},dd=()=>typeof(new Image).crossOrigin<"u",cd=e=>{let t=new Image,i=e.createElement("canvas"),r=i.getContext("2d");if(!r)return!1;t.src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";try{r.drawImage(t,0,0),i.toDataURL()}catch{return!1}return!0},pd=(e,t,i,r,s)=>{let n="http://www.w3.org/2000/svg",o=document.createElementNS(n,"svg"),a=document.createElementNS(n,"foreignObject");return o.setAttributeNS(null,"width",e.toString()),o.setAttributeNS(null,"height",t.toString()),a.setAttributeNS(null,"width","100%"),a.setAttributeNS(null,"height","100%"),a.setAttributeNS(null,"x",i.toString()),a.setAttributeNS(null,"y",r.toString()),a.setAttributeNS(null,"externalResourcesRequired","true"),o.appendChild(a),a.appendChild(s),o},hd=e=>new Promise((t,i)=>{let r=new Image;r.onload=()=>t(r),r.onerror=i,r.src=`data:image/svg+xml;charset=utf-8,${encodeURIComponent((new XMLSerializer).serializeToString(e))}`}),ud={get SUPPORT_RANGE_BOUNDS(){let e=ld(document);return Object.defineProperty(ud,"SUPPORT_RANGE_BOUNDS",{value:e}),e},get SUPPORT_SVG_DRAWING(){let e=cd(document);return Object.defineProperty(ud,"SUPPORT_SVG_DRAWING",{value:e}),e},get SUPPORT_CORS_IMAGES(){let e=dd();return Object.defineProperty(ud,"SUPPORT_CORS_IMAGES",{value:e}),e}},fd=class{text;bounds;constructor(e,t){this.text=e,this.bounds=t}},gd=(e,t,i,r)=>{let s=kd(t,i),n=[],o=0;return s.forEach(t=>{if(i.textDecorationLine.length||t.trim().length>0)if(ud.SUPPORT_RANGE_BOUNDS){let i=bd(r,o,t.length).getClientRects();if(i.length>1){let i=vd(t),s=0;i.forEach(t=>{n.push(new fd(t,ut.fromDOMRectList(e,bd(r,s+o,t.length).getClientRects()))),s+=t.length})}else n.push(new fd(t,ut.fromDOMRectList(e,i)))}else{let i=r.splitText(t.length);n.push(new fd(t,md(e,r))),r=i}else ud.SUPPORT_RANGE_BOUNDS||(r=r.splitText(t.length));o+=t.length}),n},md=(e,t)=>{let i=t.ownerDocument;if(i){let r=i.createElement("html2canvaswrapper");r.appendChild(t.cloneNode(!0));let s=t.parentNode;if(s){s.replaceChild(r,t);let i=ft(e,r);return r.firstChild&&s.replaceChild(r.firstChild,r),i}}return ut.EMPTY},bd=(e,t,i)=>{let r=e.ownerDocument;if(!r)throw new Error("Node has no owner document");let s=r.createRange();return s.setStart(e,t),s.setEnd(e,t+i),s},yd=new Map,xd=e=>{let t=yd.get(e);return t||(t=new Intl.Segmenter(void 0,{granularity:e}),yd.set(e,t)),t},vd=e=>Array.from(xd("grapheme").segment(e),e=>e.segment),wd=e=>Array.from(xd("word").segment(e),e=>e.segment),kd=(e,t)=>Aa(t.writingMode)||0!==t.letterSpacing?vd(e):wd(e),Cd=class{text;textBounds;constructor(e,t,i){this.text=Sd(t.data,i.textTransform),this.text.length!==t.data.length&&(t.data=this.text),this.textBounds=gd(e,this.text,i,t)}},Sd=(e,t)=>{switch(t){case 1:return e.toLowerCase();case 3:return e.replace(Ed,Md);case 2:return e.toUpperCase();default:return e}},Ed=/(^|\s|:|-|\(|\))([a-z])/g,Md=(e,t,i)=>e.length>0?t+i.toUpperCase():e,Ad=class extends ad{src;intrinsicWidth;intrinsicHeight;constructor(e,t,i={}){super(e,t,i),this.src=t.currentSrc||t.src,this.intrinsicWidth=t.naturalWidth,this.intrinsicHeight=t.naturalHeight,this.context.cache.addImage(this.src)}},Td=class extends ad{canvas;intrinsicWidth;intrinsicHeight;constructor(e,t,i={}){super(e,t,i),this.canvas=t,this.intrinsicWidth=t.width,this.intrinsicHeight=t.height}},Bd=["position","inset","top","right","bottom","left","inset-inline","inset-inline-start","inset-inline-end","inset-block","inset-block-start","inset-block-end","margin","margin-top","margin-right","margin-bottom","margin-left","margin-inline","margin-inline-start","margin-inline-end","margin-block","margin-block-start","margin-block-end"],Rd=(e,t)=>{let i=t.getAttribute("style");Bd.forEach(e=>t.style.removeProperty(e));let r=e.serializeToString(t);return null===i?t.removeAttribute("style"):t.setAttribute("style",i),r},Ld=class extends ad{svg;intrinsicWidth;intrinsicHeight;constructor(e,t,i={}){super(e,t,i);let r=new XMLSerializer,s=ft(e,t);t.setAttribute("width",`${s.width}px`),t.setAttribute("height",`${s.height}px`),this.svg=`data:image/svg+xml,${encodeURIComponent(Rd(r,t))}`,this.intrinsicWidth=t.width.baseVal.value,this.intrinsicHeight=t.height.baseVal.value,this.context.cache.addImage(this.svg)}},Pd=class extends ad{value;constructor(e,t,i={}){super(e,t,i),this.value=t.value}},Id=class extends ad{start;reversed;constructor(e,t,i={}){super(e,t,i),this.start=t.start,this.reversed="boolean"==typeof t.reversed&&!0===t.reversed}},Nd=[{type:15,flags:0,unit:"px",number:3}],Dd=[{type:16,flags:0,number:50}],Od=e=>e.width>e.height?new ut(e.left+(e.width-e.height)/2,e.top,e.height,e.height):e.width<e.height?new ut(e.left,e.top+(e.height-e.width)/2,e.width,e.width):e,Fd=e=>{let t="password"===e.type?new Array(e.value.length+1).join("\u2022"):e.value;return 0===t.length?e.placeholder||"":t},$d=e=>0===e.value.length&&!!e.placeholder,zd=class extends ad{type;checked;value;isPlaceholder;constructor(e,t,i={}){switch(super(e,t,i),this.type=t.type.toLowerCase(),this.checked=t.checked,this.value=Fd(t),this.isPlaceholder=$d(t),("checkbox"===this.type||"radio"===this.type)&&(this.styles.backgroundColor=3739148031,this.styles.borderTopColor=this.styles.borderRightColor=this.styles.borderBottomColor=this.styles.borderLeftColor=2779096575,this.styles.borderTopWidth=this.styles.borderRightWidth=this.styles.borderBottomWidth=this.styles.borderLeftWidth=1,this.styles.borderTopStyle=this.styles.borderRightStyle=this.styles.borderBottomStyle=this.styles.borderLeftStyle=1,this.styles.backgroundClip=[0],this.styles.backgroundOrigin=[0],this.bounds=Od(this.bounds)),this.type){case"checkbox":this.styles.borderTopRightRadius=this.styles.borderTopLeftRadius=this.styles.borderBottomRightRadius=this.styles.borderBottomLeftRadius=Nd;break;case"radio":this.styles.borderTopRightRadius=this.styles.borderTopLeftRadius=this.styles.borderBottomRightRadius=this.styles.borderBottomLeftRadius=Dd}}},_d=class extends ad{value;constructor(e,t,i={}){super(e,t,i);let r=t.options[t.selectedIndex||0];this.value=r&&r.text||""}},Wd=class extends ad{value;constructor(e,t,i={}){super(e,t,i),this.value=t.value}},Hd=class extends ad{src;width;height;tree;backgroundColor;parseTreeFn;constructor(e,t,i,r={}){super(e,t,r),this.src=t.src,this.width=parseInt(t.width,10)||0,this.height=parseInt(t.height,10)||0,this.backgroundColor=this.styles.backgroundColor,this.parseTreeFn=i;try{let i=t.contentWindow,r=i?.document;if(i&&r&&r.documentElement&&this.parseTreeFn){this.tree=this.parseTreeFn(e,r.documentElement);let t=As(e,i.getComputedStyle(r.documentElement).backgroundColor),s=r.body?As(e,i.getComputedStyle(r.body).backgroundColor):0;this.backgroundColor=zi(t)?zi(s)?this.styles.backgroundColor:s:t}}catch(e){let t=e instanceof Error?e:new Error(String(e));this.context.logger.warn(`Unable to render iframe content${this.src?` from ${this.src}`:""}: ${t.message}`),this.context.onError?.(t)}}},Vd=["OL","UL","MENU"],jd=(e,t,i,r,s=1,n={})=>{for(let o,a=t.firstChild;a;a=o)o=a.nextSibling,Ud(e,a,i,r,s,n)},Ud=(e,t,i,r,s=1,n={})=>{if(Rs(t)&&t.data.length>0){let r=new Cd(e,t,i.styles);if(1!==s){let e=i.bounds.left,t=i.bounds.top;r.textBounds=r.textBounds.map(i=>new fd(i.text,new ut(e+(i.bounds.left-e)/s,t+(i.bounds.top-t)/s,i.bounds.width/s,i.bounds.height/s)))}i.textNodes.push(r)}else if(Bs(t))if(Us(t)&&t.assignedNodes)t.assignedNodes().forEach(t=>Ud(e,t,i,r,s,n));else{let o=Yd(e,t,n),a=o.styles.zoom||1;if(1!==a&&(o.bounds=new ut(o.bounds.left,o.bounds.top,o.bounds.width/a,o.bounds.height/a)),o.styles.isVisible()){Gd(t,o,r)?o.createsRealStackingContext=!0:Kd(o.styles)&&(o.createsStackingContext=!0),-1!==Vd.indexOf(t.tagName)&&(o.isListOwner=!0),i.elements.push(o);let a=s*(o.styles.zoom||1);t.shadowRoot?jd(e,t.shadowRoot,o,r,a,n):!Vs(t)&&!Ds(t)&&!js(t)&&jd(e,t,o,r,a,n)}}},Yd=(e,t,i={})=>zs(t)?new Ad(e,t,i):Fs(t)?new Td(e,t,i):Ds(t)?new Ld(e,t,i):Ys(t)?new Pd(e,t,i):qs(t)?new Id(e,t,i):Is(t)?new zd(e,t,i):js(t)?new _d(e,t,i):Vs(t)?new Wd(e,t,i):_s(t)?new Hd(e,t,(e,t)=>qd(e,t,i),i):new ad(e,t,i),qd=(e,t,i={})=>{let r=Yd(e,t,i);return r.createsRealStackingContext=!0,jd(e,t,r,r,1,i),r},Gd=(e,t,i)=>t.styles.isPositionedWithZIndex()||t.styles.opacity<1||!!t.styles.filter||!!t.styles.backdropFilter||t.styles.maskImage.length>0||!!t.styles.webkitBoxReflect||1===t.styles.isolation||t.styles.isTransformed()||Os(e)&&i.styles.isTransparent(),Kd=e=>!(!e.isPositioned()&&!e.isFloating()&&e.mixBlendMode===Ka.NORMAL)||Qs(e.display,268435456)||Qs(e.display,33554432)||Qs(e.display,536870912)||Qs(e.display,134217728),Xd=(e,t)=>e.length===t.length&&e.some((e,i)=>e===t[i]),Jd=(e,t,i,r,s)=>e.map((e,n)=>{switch(n){case 0:return e.add(t,i);case 1:return e.add(t+r,i);case 2:return e.add(t+r,i+s);case 3:return e.add(t,i+s)}return e}),Qd=class e{type;x;y;constructor(e,t){this.type=0,this.x=e,this.y=t}add(t,i){return new e(this.x+t,this.y+i)}},Zd=(e,t,i)=>new Qd(e.x+(t.x-e.x)*i,e.y+(t.y-e.y)*i),ec=class e{type;start;startControl;endControl;end;constructor(e,t,i,r){this.type=1,this.start=e,this.startControl=t,this.endControl=i,this.end=r}subdivide(t,i){let r=Zd(this.start,this.startControl,t),s=Zd(this.startControl,this.endControl,t),n=Zd(this.endControl,this.end,t),o=Zd(r,s,t),a=Zd(s,n,t),l=Zd(o,a,t);return i?new e(this.start,r,o,l):new e(l,a,n,this.end)}add(t,i){return new e(this.start.add(t,i),this.startControl.add(t,i),this.endControl.add(t,i),this.end.add(t,i))}reverse(){return new e(this.end,this.endControl,this.startControl,this.start)}},tc=e=>1===e.type,ic=class{topLeftBorderDoubleOuterBox;topRightBorderDoubleOuterBox;bottomRightBorderDoubleOuterBox;bottomLeftBorderDoubleOuterBox;topLeftBorderDoubleInnerBox;topRightBorderDoubleInnerBox;bottomRightBorderDoubleInnerBox;bottomLeftBorderDoubleInnerBox;topLeftBorderStroke;topRightBorderStroke;bottomRightBorderStroke;bottomLeftBorderStroke;topLeftBorderBox;topRightBorderBox;bottomRightBorderBox;bottomLeftBorderBox;topLeftPaddingBox;topRightPaddingBox;bottomRightPaddingBox;bottomLeftPaddingBox;topLeftContentBox;topRightContentBox;bottomRightContentBox;bottomLeftContentBox;constructor(e){let t=e.styles,i=e.bounds,[r,s]=Li(t.borderTopLeftRadius,i.width,i.height),[n,o]=Li(t.borderTopRightRadius,i.width,i.height),[a,l]=Li(t.borderBottomRightRadius,i.width,i.height),[d,c]=Li(t.borderBottomLeftRadius,i.width,i.height),p=[];p.push((r+n)/i.width),p.push((d+a)/i.width),p.push((s+c)/i.height),p.push((o+l)/i.height);let h=Math.max(...p);h>1&&(r/=h,s/=h,n/=h,o/=h,a/=h,l/=h,d/=h,c/=h);let u=i.width-n,f=i.height-l,g=i.width-a,m=i.height-c,b=t.borderTopWidth,y=t.borderRightWidth,x=t.borderBottomWidth,v=t.borderLeftWidth,w=Pi(t.paddingTop,e.bounds.width),k=Pi(t.paddingRight,e.bounds.width),C=Pi(t.paddingBottom,e.bounds.width),S=Pi(t.paddingLeft,e.bounds.width);this.topLeftBorderDoubleOuterBox=r>0||s>0?rc(i.left+v/3,i.top+b/3,r-v/3,s-b/3,0):new Qd(i.left+v/3,i.top+b/3),this.topRightBorderDoubleOuterBox=n>0||o>0?rc(i.left+u,i.top+b/3,n-y/3,o-b/3,1):new Qd(i.left+i.width-y/3,i.top+b/3),this.bottomRightBorderDoubleOuterBox=a>0||l>0?rc(i.left+g,i.top+f,a-y/3,l-x/3,2):new Qd(i.left+i.width-y/3,i.top+i.height-x/3),this.bottomLeftBorderDoubleOuterBox=d>0||c>0?rc(i.left+v/3,i.top+m,d-v/3,c-x/3,3):new Qd(i.left+v/3,i.top+i.height-x/3),this.topLeftBorderDoubleInnerBox=r>0||s>0?rc(i.left+2*v/3,i.top+2*b/3,r-2*v/3,s-2*b/3,0):new Qd(i.left+2*v/3,i.top+2*b/3),this.topRightBorderDoubleInnerBox=n>0||o>0?rc(i.left+u,i.top+2*b/3,n-2*y/3,o-2*b/3,1):new Qd(i.left+i.width-2*y/3,i.top+2*b/3),this.bottomRightBorderDoubleInnerBox=a>0||l>0?rc(i.left+g,i.top+f,a-2*y/3,l-2*x/3,2):new Qd(i.left+i.width-2*y/3,i.top+i.height-2*x/3),this.bottomLeftBorderDoubleInnerBox=d>0||c>0?rc(i.left+2*v/3,i.top+m,d-2*v/3,c-2*x/3,3):new Qd(i.left+2*v/3,i.top+i.height-2*x/3),this.topLeftBorderStroke=r>0||s>0?rc(i.left+v/2,i.top+b/2,r-v/2,s-b/2,0):new Qd(i.left+v/2,i.top+b/2),this.topRightBorderStroke=n>0||o>0?rc(i.left+u,i.top+b/2,n-y/2,o-b/2,1):new Qd(i.left+i.width-y/2,i.top+b/2),this.bottomRightBorderStroke=a>0||l>0?rc(i.left+g,i.top+f,a-y/2,l-x/2,2):new Qd(i.left+i.width-y/2,i.top+i.height-x/2),this.bottomLeftBorderStroke=d>0||c>0?rc(i.left+v/2,i.top+m,d-v/2,c-x/2,3):new Qd(i.left+v/2,i.top+i.height-x/2),this.topLeftBorderBox=r>0||s>0?rc(i.left,i.top,r,s,0):new Qd(i.left,i.top),this.topRightBorderBox=n>0||o>0?rc(i.left+u,i.top,n,o,1):new Qd(i.left+i.width,i.top),this.bottomRightBorderBox=a>0||l>0?rc(i.left+g,i.top+f,a,l,2):new Qd(i.left+i.width,i.top+i.height),this.bottomLeftBorderBox=d>0||c>0?rc(i.left,i.top+m,d,c,3):new Qd(i.left,i.top+i.height),this.topLeftPaddingBox=r>0||s>0?rc(i.left+v,i.top+b,Math.max(0,r-v),Math.max(0,s-b),0):new Qd(i.left+v,i.top+b),this.topRightPaddingBox=n>0||o>0?rc(i.left+Math.min(u,i.width-y),i.top+b,u>i.width+y?0:Math.max(0,n-y),Math.max(0,o-b),1):new Qd(i.left+i.width-y,i.top+b),this.bottomRightPaddingBox=a>0||l>0?rc(i.left+Math.min(g,i.width-v),i.top+Math.min(f,i.height-x),Math.max(0,a-y),Math.max(0,l-x),2):new Qd(i.left+i.width-y,i.top+i.height-x),this.bottomLeftPaddingBox=d>0||c>0?rc(i.left+v,i.top+Math.min(m,i.height-x),Math.max(0,d-v),Math.max(0,c-x),3):new Qd(i.left+v,i.top+i.height-x),this.topLeftContentBox=r>0||s>0?rc(i.left+v+S,i.top+b+w,Math.max(0,r-(v+S)),Math.max(0,s-(b+w)),0):new Qd(i.left+v+S,i.top+b+w),this.topRightContentBox=n>0||o>0?rc(i.left+Math.min(u,i.width+v+S),i.top+b+w,u>i.width+v+S?0:n-v+S,o-(b+w),1):new Qd(i.left+i.width-(y+k),i.top+b+w),this.bottomRightContentBox=a>0||l>0?rc(i.left+Math.min(g,i.width-(v+S)),i.top+Math.min(f,i.height+b+w),Math.max(0,a-(y+k)),l-(x+C),2):new Qd(i.left+i.width-(y+k),i.top+i.height-(x+C)),this.bottomLeftContentBox=d>0||c>0?rc(i.left+v+S,i.top+m,Math.max(0,d-(v+S)),c-(x+C),3):new Qd(i.left+v+S,i.top+i.height-(x+C))}},rc=(e,t,i,r,s)=>{let n=(Math.sqrt(2)-1)/3*4,o=i*n,a=r*n,l=e+i,d=t+r;switch(s){case 0:return new ec(new Qd(e,d),new Qd(e,d-a),new Qd(l-o,t),new Qd(l,t));case 1:return new ec(new Qd(e,t),new Qd(e+o,t),new Qd(l,d-a),new Qd(l,d));case 2:return new ec(new Qd(l,t),new Qd(l,t+a),new Qd(e+o,d),new Qd(e,d));default:return new ec(new Qd(l,d),new Qd(l-o,d),new Qd(e,t+a),new Qd(e,t))}},sc=e=>[e.topLeftBorderBox,e.topRightBorderBox,e.bottomRightBorderBox,e.bottomLeftBorderBox],nc=e=>[e.topLeftContentBox,e.topRightContentBox,e.bottomRightContentBox,e.bottomLeftContentBox],oc=e=>[e.topLeftPaddingBox,e.topRightPaddingBox,e.bottomRightPaddingBox,e.bottomLeftPaddingBox],ac=class{offsetX;offsetY;matrix;type=0;target=6;constructor(e,t,i){this.offsetX=e,this.offsetY=t,this.matrix=i}},lc=class{path;target;type=1;constructor(e,t){this.path=e,this.target=t}},dc=class{opacity;type=2;target=6;constructor(e){this.opacity=e}},cc=class{applyClip;type=3;target=6;constructor(e){this.applyClip=e}},pc={[Ka.NORMAL]:"source-over",[Ka.MULTIPLY]:"multiply",[Ka.SCREEN]:"screen",[Ka.OVERLAY]:"overlay",[Ka.DARKEN]:"darken",[Ka.LIGHTEN]:"lighten",[Ka.COLOR_DODGE]:"color-dodge",[Ka.COLOR_BURN]:"color-burn",[Ka.HARD_LIGHT]:"hard-light",[Ka.SOFT_LIGHT]:"soft-light",[Ka.DIFFERENCE]:"difference",[Ka.EXCLUSION]:"exclusion",[Ka.HUE]:"hue",[Ka.SATURATION]:"saturation",[Ka.COLOR]:"color",[Ka.LUMINOSITY]:"luminosity"},hc=class{mixBlendMode;type=4;target=6;compositeOperation;constructor(e){this.mixBlendMode=e,this.compositeOperation=pc[e]}},uc=class e{type=5;target=6;safeFilterString;shadow;constructor(t){let i=e.parseDropShadow(t);this.shadow=i.shadow,this.safeFilterString=i.safeFilterString}static parseDropShadow(t){if(!t)return{safeFilterString:""};let i=e.findDropShadows(t);if(0===i.length)return{safeFilterString:t};let r=e.parseDropShadowBody(mt(i,0).body),s="",n=0;for(let e of i)s+=t.slice(n,e.start),n=e.end;return s+=t.slice(n),{shadow:r,safeFilterString:s.replace(/\s+/g," ").trim()}}static findDropShadows(e){let t,i=[],r=/drop-shadow\(/gi;for(;null!==(t=r.exec(e));){let r=t.index+12-1,s=t.index,n=1,o=r+1;for(;o<e.length&&n>0;){let t=e[o]??"";"("===t?n++:")"===t&&n--,o++}if(0!==n)break;let a=e.slice(r+1,o-1);i.push({body:a,start:s,end:o})}return i}static parseDropShadowBody(t){let i,r=e.tokenizeFilterArgs(t.trim()),s=[];for(let t of r)e.isCSSLength(t)?s.push(parseFloat(t)):t&&(i=t);if(!(s.length<2||s.length>3))return{offsetX:mt(s,0),offsetY:mt(s,1),blur:s.length>2?mt(s,2):0,color:i??"rgba(0,0,0,1)"}}static tokenizeFilterArgs(e){let t=[],i="",r=0;for(let s=0;s<e.length;s++){let n=e[s]??"";"("===n?(r++,i+=n):")"===n?(r--,i+=n):/\s/.test(n)?r>0?i+=n:i&&(t.push(i),i=""):i+=n}return i&&t.push(i),t}static isCSSLength(e){return/^-?[\d.]+(px|em|rem|pt|cm|mm|in|pc|ex|ch|vw|vh|vmin|vmax|%)?$/i.test(e)}},fc=e=>0===e.type,gc=e=>1===e.type,mc=e=>2===e.type,bc=e=>3===e.type,yc=e=>4===e.type,xc=e=>5===e.type,vc=class{element;negativeZIndex;zeroOrAutoZIndexOrTransformedOrOpacity;positiveZIndex;nonPositionedFloats;nonPositionedInlineLevel;inlineLevel;nonInlineLevel;constructor(e){this.element=e,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}},wc=class{container;parent;effects=[];curves;listValue;plainEffectsCache=null;constructor(e,t){if(this.container=e,this.parent=t,this.curves=new ic(this.container),this.container.styles.opacity<1&&this.effects.push(new dc(this.container.styles.opacity)),null!==this.container.styles.translate){let e=this.container.styles.transformOrigin,t=this.container.bounds.left+Pi(e[0],this.container.bounds.width),i=this.container.bounds.top+Pi(e[1],this.container.bounds.height),[r,s]=this.container.styles.translate,n=Pi(r,this.container.bounds.width),o=Pi(s,this.container.bounds.height);this.effects.push(new ac(t,i,[1,0,0,1,n,o]))}if(null!==this.container.styles.rotate){let e=this.container.styles.transformOrigin,t=this.container.bounds.left+Pi(e[0],this.container.bounds.width),i=this.container.bounds.top+Pi(e[1],this.container.bounds.height),r=this.container.styles.rotate*Math.PI/180,s=Math.cos(r),n=Math.sin(r),o=[s,n,-n,s,0,0];this.effects.push(new ac(t,i,o))}if(null!==this.container.styles.scale){let e=this.container.styles.transformOrigin,t=this.container.bounds.left+Pi(e[0],this.container.bounds.width),i=this.container.bounds.top+Pi(e[1],this.container.bounds.height),[r,s]=this.container.styles.scale;this.effects.push(new ac(t,i,[r,0,0,s,0,0]))}if(null!==this.container.styles.transform){let e=this.container.styles.transformOrigin,t=this.container.bounds.left+Pi(e[0],this.container.bounds.width),i=this.container.bounds.top+Pi(e[1],this.container.bounds.height),r=this.container.styles.transform;this.effects.push(new ac(t,i,r))}if(kc(this.container.styles)){let e=sc(this.curves),t=oc(this.curves);Xd(e,t)?this.effects.push(new lc(e,6)):(this.effects.push(new lc(e,2)),this.effects.push(new lc(t,4)))}if(0!==this.container.styles.clipPath.type){let e=Sc(this.container.styles.clipPath,this.container.bounds);e&&this.effects.push(e)}if(this.container.styles.mixBlendMode!==Ka.NORMAL&&this.effects.push(new hc(this.container.styles.mixBlendMode)),null!==this.container.styles.filter&&this.effects.push(new uc(this.container.styles.filter)),1!==this.container.styles.zoom){let e=this.container.bounds.left,t=this.container.bounds.top,i=this.container.styles.zoom,r=[i,0,0,i,0,0];this.effects.push(new ac(e,t,r))}}getEffects(e,t){if(!t){let t=this.plainEffectsCache;t||(t=new Map,this.plainEffectsCache=t);let i=t.get(e);return i||(i=this.computeEffects(e),t.set(e,i)),i}return this.computeEffects(e,t)}computeEffects(e,t){let i=-1===[2,3].indexOf(this.container.styles.position),r=this===t?null:this.parent,s=e=>e.effects.filter(i=>e!==t||!xc(i)&&!mc(i)&&!yc(i)),n=s(this);for(;r;){let e=s(r).filter(e=>!gc(e));if(i||0!==r.container.styles.position||!r.parent){if(i=-1===[2,3].indexOf(r.container.styles.position),kc(r.container.styles)){let e=sc(r.curves),t=oc(r.curves);Xd(e,t)||n.unshift(new lc(t,6))}n.unshift(...e)}else n.unshift(...e);r=r===t?null:r.parent}return n.filter(t=>Qs(t.target,e))}},kc=e=>0!==e.overflowX||0!==e.overflowY,Cc=(e,t,i,r,s)=>"closest-side"===e?Math.min(t-i,r-t):"farthest-side"===e?Math.max(t-i,r-t):Pi(e,s),Sc=(e,t)=>{let{left:i,top:r,width:s,height:n}=t;switch(e.type){case 1:{let t=Pi(e.left,s),o=Pi(e.top,n),a=i+t,l=r+o,d=Math.max(0,s-t-Pi(e.right,s)),c=Math.max(0,n-o-Pi(e.bottom,n));return new cc(e=>{e.beginPath(),e.rect(a,l,d,c),e.clip()})}case 2:{let t,o=i+Pi(e.cx,s),a=r+Pi(e.cy,n);return t="closest-side"===e.radius?Math.min(o-i,a-r,i+s-o,r+n-a):"farthest-side"===e.radius?Math.max(o-i,a-r,i+s-o,r+n-a):Pi(e.radius,Math.sqrt(s*s+n*n)/Math.SQRT2),new cc(e=>{e.beginPath(),e.arc(o,a,Math.max(0,t),0,2*Math.PI),e.clip()})}case 3:{let t=i+Pi(e.cx,s),o=r+Pi(e.cy,n),a=Cc(e.rx,t,i,i+s,s),l=Cc(e.ry,o,r,r+n,n);return new cc(e=>{e.beginPath(),e.ellipse(t,o,Math.max(0,a),Math.max(0,l),0,0,2*Math.PI),e.clip()})}case 4:{let t=e.points.map(([e,t])=>[i+Pi(e,s),r+Pi(t,n)]);return new cc(e=>{if(e.beginPath(),t.length>0){e.moveTo(mt(mt(t,0),0),mt(mt(t,0),1));for(let i=1;i<t.length;i++)e.lineTo(mt(mt(t,i),0),mt(mt(t,i),1));e.closePath()}e.clip()})}case 5:{let{d:t}=e,s=null;return new cc(e=>{try{s||(s=new Path2D(t));let n=e.getTransform();e.translate(i,r),e.clip(s),e.setTransform(n)}catch{}})}case 6:{let t=i+Pi(e.x,s),o=r+Pi(e.y,n),a=Math.max(0,Pi(e.width,s)),l=Math.max(0,Pi(e.height,n));return new cc(e=>{e.beginPath(),e.rect(t,o,a,l),e.clip()})}default:return null}},Ec=(e,t,i,r)=>{e.container.elements.forEach(s=>{let n=s.createsRealStackingContext,o=s.createsStackingContext,a=new wc(s,e);Qs(s.styles.display,2048)&&r.push(a);let l=s.isListOwner?[]:r;if(n||o){let e=n||s.styles.isPositioned()?i:t,r=new vc(a);if(s.styles.isPositioned()||s.styles.opacity<1||s.styles.isTransformed()){let t=s.styles.zIndex.order;if(t<0){let i=0;e.negativeZIndex.some((e,r)=>t>=e.element.container.styles.zIndex.order?(i=r+1,!1):i>0),e.negativeZIndex.splice(i,0,r)}else if(t>0){let i=0;e.positiveZIndex.some((e,r)=>t>=e.element.container.styles.zIndex.order?(i=r+1,!1):i>0),e.positiveZIndex.splice(i,0,r)}else e.zeroOrAutoZIndexOrTransformedOrOpacity.push(r)}else s.styles.isFloating()?e.nonPositionedFloats.push(r):e.nonPositionedInlineLevel.push(r);Ec(a,r,n?r:i,l)}else s.styles.isInlineLevel()?t.inlineLevel.push(a):t.nonInlineLevel.push(a),Ec(a,t,i,l);s.isListOwner&&Mc(s,l)})},Mc=(e,t)=>{let i=e instanceof Id?e.start:1,r=e instanceof Id&&e.reversed;for(let e=0;e<t.length;e++){let s=mt(t,e);s.container instanceof Pd&&"number"==typeof s.container.value&&0!==s.container.value&&(i=s.container.value),s.listValue=fn(i,s.container.styles.listStyleType,!0),i+=r?-1:1}},Ac=e=>{let t=new wc(e,null),i=new vc(t),r=[];return Ec(t,i,i,r),Mc(t.container,r),i},Tc=e=>Math.min(1,Math.max(0,e)),Bc=e=>{let t=mt(e,0),i=mt(e,e.length-1);if(i.stop-t.stop<1e-6)return null;let r=Math.max(i.stop-t.stop,.01),s=[],n=Math.ceil(1/r);for(let i=0;i<n;i++)for(let n of e){let e=i*r+(n.stop-t.stop);if(e>1)break;s.push({stop:e,color:_i(n.color)})}let o=s[s.length-1];return(!o||o.stop<1)&&s.push({stop:1,color:_i(i.color)}),s},Rc=e=>e.map(e=>({stop:Tc(e.stop),color:_i(e.color)})),Lc=(e,t,i,r,s=!1)=>{let n=Rn(r,t),o=mt(n,n.length-1),a=_i(o.color),l=e.createElement("canvas");l.width=Math.max(1,Math.ceil(2*t)),l.height=Math.max(1,Math.ceil(2*i));let d,c=l.getContext("2d");if(!c)return null;if(s){let e=Bc(n);if(!e)return c.fillStyle=a,c.fillRect(0,0,l.width,l.height),{canvas:l,lastColor:a,rx:t,ry:i};d=e}else d=Rc(n);let p=c.createRadialGradient(t,t,0,t,t,t);return d.forEach(e=>p.addColorStop(Tc(e.stop),e.color)),c.fillStyle=p,t!==i&&c.scale(1,i/t),c.fillRect(0,0,2*t,2*t),{canvas:l,lastColor:a,rx:t,ry:i}},Pc=e=>{let t=e.bounds,i=e.styles;return t.add(i.borderLeftWidth,i.borderTopWidth,-(i.borderRightWidth+i.borderLeftWidth),-(i.borderTopWidth+i.borderBottomWidth))},Ic=e=>{let t=e.styles,i=e.bounds,r=Pi(t.paddingLeft,i.width),s=Pi(t.paddingRight,i.width),n=Pi(t.paddingTop,i.width),o=Pi(t.paddingBottom,i.width);return i.add(r+t.borderLeftWidth,n+t.borderTopWidth,-(t.borderRightWidth+t.borderLeftWidth+r+s),-(t.borderTopWidth+t.borderBottomWidth+n+o))},Nc=(e,t)=>0===e?t.bounds:2===e?Ic(t):Pc(t),Dc=(e,t)=>0===e?t.bounds:2===e?Ic(t):Pc(t),Oc=(e,t,i)=>{let r=Nc(_c(e.styles.backgroundOrigin,t),e),s=Dc(_c(e.styles.backgroundClip,t),e),n=zc(_c(e.styles.backgroundSize,t),i,r),[o,a]=n,l=Li(_c(e.styles.backgroundPosition,t),r.width-o,r.height-a),d=Wc(_c(e.styles.backgroundRepeat,t),l,n,r,s),c=Math.round(r.left+l[0]),p=Math.round(r.top+l[1]);return o=Math.max(1,o),a=Math.max(1,a),[d,c,p,o,a]},Fc=e=>ri(e)&&"auto"===e.value,$c=e=>"number"==typeof e,zc=(e,[t,i,r],s)=>{let[n,o]=e;if(!n)return[0,0];if(wi(n)&&o&&wi(o))return[Pi(n,s.width),Pi(o,s.height)];let a=$c(r);if(ri(n)&&("contain"===n.value||"cover"===n.value))return $c(r)?s.width/s.height<r!=("cover"===n.value)?[s.width,s.width/r]:[s.height*r,s.height]:[s.width,s.height];let l=$c(t),d=$c(i),c=l||d;if(Fc(n)&&(!o||Fc(o)))return l&&d?[t,i]:a||c?c&&a?[l?t:i*r,d?i:t/r]:[l?t:s.width,d?i:s.height]:[s.width,s.height];if(a){let e=0,t=0;return wi(n)?e=Pi(n,s.width):o&&wi(o)&&(t=Pi(o,s.height)),Fc(n)?e=t*r:(!o||Fc(o))&&(t=e/r),[e,t]}let p=null,h=null;if(wi(n)?p=Pi(n,s.width):o&&wi(o)&&(h=Pi(o,s.height)),null!==p&&(!o||Fc(o))&&(h=l&&d?p/t*i:s.height),null!==h&&Fc(n)&&(p=l&&d?h/i*t:s.width),null!==p&&null!==h)return[p,h];throw new Error("Unable to calculate background-size for element")},_c=(e,t)=>{let i=e[t];return typeof i>"u"?mt(e,0):i},Wc=(e,[t,i],[r,s],n,o)=>{switch(e){case 2:return[new Qd(Math.round(n.left),Math.round(n.top+i)),new Qd(Math.round(n.left+n.width),Math.round(n.top+i)),new Qd(Math.round(n.left+n.width),Math.round(s+n.top+i)),new Qd(Math.round(n.left),Math.round(s+n.top+i))];case 3:return[new Qd(Math.round(n.left+t),Math.round(n.top)),new Qd(Math.round(n.left+t+r),Math.round(n.top)),new Qd(Math.round(n.left+t+r),Math.round(n.height+n.top)),new Qd(Math.round(n.left+t),Math.round(n.height+n.top))];case 1:return[new Qd(Math.round(n.left+t),Math.round(n.top+i)),new Qd(Math.round(n.left+t+r),Math.round(n.top+i)),new Qd(Math.round(n.left+t+r),Math.round(n.top+i+s)),new Qd(Math.round(n.left+t),Math.round(n.top+i+s))];default:return[new Qd(Math.round(o.left),Math.round(o.top)),new Qd(Math.round(o.left+o.width),Math.round(o.top)),new Qd(Math.round(o.left+o.width),Math.round(o.height+o.top)),new Qd(Math.round(o.left),Math.round(o.height+o.top))]}},Hc=class extends Error{},Vc=e=>{e.width=e.height=0},jc=["brightness","contrast","grayscale","hue-rotate","invert","opacity","saturate","sepia"],Uc=256,Yc=new Map,qc={functions:[]},Gc=e=>{let t=[],i=0;for(;i<e.length;){let r=e[i];if(" "===r||"\n"===r||"\t"===r){i++;continue}let s=e.indexOf("(",i);if(-1===s)return null;let n=e.slice(i,s).trim();if(!/^[a-zA-Z-]+$/.test(n))return null;let o=Kc(e,s);if(-1===o)return null;let a=Jc(n,e.slice(s+1,o).trim());if(!a)return null;t.push(a),i=o+1}return{functions:t}},Kc=(e,t)=>{let i=1;for(let r=t+1;r<e.length;r++){let t=e[r];if("("===t)i++;else if(")"===t&&(i--,0===i))return r}return-1},Xc=/^-?\d+(?:\.\d+)?px$/,Jc=(e,t)=>{if("blur"===e){if("0"===t)return{kind:"blur",value:0};if(!Xc.test(t))return null;let e=Number.parseFloat(t);return e<0?null:{kind:"blur",value:e}}if("drop-shadow"===e)return Zc(t);if(-1!==jc.indexOf(e)){let i=e;if("hue-rotate"===i){let e=ep(t);return null===e?null:{kind:"unitless",name:i,value:e}}let r=t.trim(),s=r.endsWith("%"),n=s?r.slice(0,-1):r;return/^-?\d+(?:\.\d+)?$/.test(n)?{kind:"unitless",name:i,value:Number.parseFloat(n)*(s?.01:1)}:null}return null},Qc=e=>{let t=[],i=0,r="";for(let s of e)"("===s?i++:")"===s&&i--," "!==s||0!==i?r+=s:(r&&t.push(r),r="");return r&&t.push(r),t},Zc=e=>{let t=Qc(e),i=t.filter(e=>Xc.test(e)).map(e=>Number.parseFloat(e));if(i.length<2||i.length>3)return null;let r=t.filter(e=>!Xc.test(e));return t.length-r.length!==i.length?null:{kind:"drop-shadow",x:i[0],y:i[1],blur:i[2]??0,color:r.join(" ")||"rgba(0, 0, 0, 0)"}},ep=e=>{let t=e.trim();if("0"===t)return 0;let i=Number.parseFloat(t);return Number.isNaN(i)?null:t.endsWith("deg")?i:t.endsWith("grad")?.9*i:t.endsWith("rad")?180*i/Math.PI:t.endsWith("turn")?360*i:null},tp=(e,t)=>e.functions.map(e=>{switch(e.kind){case"blur":return`blur(${e.value*t}px)`;case"drop-shadow":return`drop-shadow(${e.x*t}px ${e.y*t}px ${e.blur*t}px ${e.color})`;case"unitless":return"hue-rotate"===e.name?`hue-rotate(${e.value}deg)`:`${e.name}(${e.value})`}}).join(" "),ip=(e,t)=>new Promise((i,r)=>{let s=e=>{clearTimeout(o),t?.removeEventListener("abort",n),e?r(e):i()},n=()=>s(new DOMException("The operation was aborted.","AbortError")),o=setTimeout(()=>s(new Hc("Filter surface image decode timed out")),1e4);t?.addEventListener("abort",n,{once:!0}),t?.aborted?n():e.decode().then(()=>s(),()=>s(new Hc("Filter surface image decode failed")))}),rp=new WeakMap,sp=e=>{let t=0,i=0;for(let r of e.functions)if("blur"===r.kind)t++;else{if("drop-shadow"!==r.kind)return!1;i++}return!(t>1||i>1||t>0&&i>0&&!(e.functions.findIndex(e=>"blur"===e.kind)<e.functions.findIndex(e=>"drop-shadow"===e.kind)))},np=(e,t)=>e.add(-t,-t,2*t,2*t),op=(e,t)=>new ut(Math.min(e.left,t.left),Math.min(e.top,t.top),Math.max(e.left+e.width,t.left+t.width)-Math.min(e.left,t.left),Math.max(e.top+e.height,t.top+t.height)-Math.min(e.top,t.top)),ap=class{ctx;constructor(e){this.ctx=e}render(e,t){this.ctx.fillStyle=_i(t.textDecorationColor??t.color);let i=1;"number"==typeof t.textDecorationThickness?i=t.textDecorationThickness:"from-font"===t.textDecorationThickness&&(i=Math.max(1,Math.floor(.05*t.fontSize.number)));let r=0;"number"==typeof t.textUnderlineOffset&&(r=t.textUnderlineOffset);let s=t.textDecorationStyle;t.textDecorationLine.forEach(t=>{let n=0;switch(t){case 1:n=e.top+e.height-i+r;break;case 2:n=e.top;break;case 3:n=e.top+(e.height/2-i/2);break;default:return}this.draw(e.left,n,e.width,i,s)})}draw(e,t,i,r,s){switch(s){case 0:default:this.ctx.fillRect(e,t,i,r);break;case 1:{let s=Math.max(1,r);this.ctx.fillRect(e,t,i,r),this.ctx.fillRect(e,t+r+s,i,r);break}case 2:this.drawPattern(e,t,i,r,[r,2*r]);break;case 3:this.drawPattern(e,t,i,r,[3*r,2*r]);break;case 4:this.drawWavy(e,t,i,r)}}drawPattern(e,t,i,r,s){this.ctx.save(),this.ctx.beginPath(),this.ctx.setLineDash(s),this.ctx.lineWidth=r,this.ctx.strokeStyle=this.ctx.fillStyle,this.ctx.moveTo(e,t+r/2),this.ctx.lineTo(e+i,t+r/2),this.ctx.stroke(),this.ctx.restore()}drawWavy(e,t,i,r){this.ctx.save(),this.ctx.beginPath(),this.ctx.lineWidth=r,this.ctx.strokeStyle=this.ctx.fillStyle;let s=2*r,n=4*r,o=e;for(this.ctx.moveTo(o,t+r/2);o<e+i;){let a=Math.min(o+n/2,e+i);if(this.ctx.quadraticCurveTo(o+n/4,t+r/2-s,a,t+r/2),o=a,o<e+i){let a=Math.min(o+n/2,e+i);this.ctx.quadraticCurveTo(o+n/4,t+r/2+s,a,t+r/2),o=a}}this.ctx.stroke(),this.ctx.restore()}},lp=e=>void 0!==e&&!Number.isNaN(e),dp=(e,t)=>{let i=e.measureText("Mg"),r=i;return{baseline:lp(r.fontBoundingBoxAscent)?r.fontBoundingBoxAscent:lp(i.actualBoundingBoxAscent)?i.actualBoundingBoxAscent:t,height:lp(r.fontBoundingBoxAscent)&&lp(r.fontBoundingBoxDescent)?r.fontBoundingBoxAscent+r.fontBoundingBoxDescent:lp(i.actualBoundingBoxAscent)&&lp(i.actualBoundingBoxDescent)?i.actualBoundingBoxAscent+i.actualBoundingBoxDescent:t}},cp=(e,t)=>dp(e,t).baseline,pp=/[\u2E80-\u2FFF\u3000-\u30FF\u3400-\u4DBF\u4E00-\u9FFF\uAC00-\uD7AF\uF900-\uFAFF\uFF01-\uFFEF]/,hp=e=>pp.test(e),up=()=>!(typeof navigator>"u"||void 0===navigator.userAgentData&&void 0===(typeof window<"u"?window:void 0)?.chrome),fp=()=>up()?"miter":"round",gp=class{ctx;options;decorationRenderer;baselineCache=new Map;glyphWidthCache=null;constructor(e){this.ctx=e.ctx,this.options=e.options,this.decorationRenderer=new ap(e.ctx)}cachedMeasureText(e,t){let i=this.glyphWidthCache;i||(i=new Map,this.glyphWidthCache=i);let r=e+t,s=i.get(r);return void 0===s&&(s=this.ctx.measureText(e).width,i.set(r,s)),s}iterateLettersWithLetterSpacing(e,t,i,r,s){if(Aa(r))return void this.iterateVerticalGlyphs(e,t,i,r,s);let n=vd(e.text),o=e.bounds.top+i,a=this.ctx.font,l=e.bounds.left;for(let e of n)s(e,l,o),l+=this.cachedMeasureText(e,a)+t}iterateVerticalGlyphs(e,t,i,r,s){let n=vd(e.text),o=this.ctx.font,a=4===r?-Math.PI/2:Math.PI/2,l=e.bounds.top;for(let d=0;d<n.length;){let c=n[d];if(!(Ta(r)||!hp(c)&&c.trim().length>0)){let r=this.ctx.textBaseline;hp(c)&&(this.ctx.textBaseline="ideographic"),s(c,e.bounds.left,l+i),this.ctx.textBaseline=r,l+=this.cachedMeasureText(c,o)+t,d++;continue}let p=d;for(;d<n.length;){let e=n[d];if(!Ta(r)&&!hp(e)&&0===e.trim().length)break;if(!(Ta(r)||!hp(e)&&e.trim().length>0))break;d++}this.ctx.save(),this.ctx.translate(e.bounds.left+i,l),this.ctx.rotate(a);let h=0;for(let e=p;e<d;e++){let i=n[e];s(i,0,h),h+=this.cachedMeasureText(i,o)+t}this.ctx.restore(),l+=h}}renderTextWithLetterSpacing(e,t,i,r=0){this.renderFillText(e,t,i,r)}canRenderWholeText(e,t){return 0===e&&!Aa(t)}renderFillText(e,t,i,r){this.canRenderWholeText(t,r)?this.ctx.fillText(e.text,e.bounds.left,e.bounds.top+i):this.iterateLettersWithLetterSpacing(e,t,i,r,(e,t,i)=>{this.ctx.fillText(e,t,i)})}renderStrokeText(e,t,i,r){this.canRenderWholeText(t,r)?this.ctx.strokeText(e.text,e.bounds.left,e.bounds.top+i):this.iterateLettersWithLetterSpacing(e,t,i,r,(e,t,i)=>{this.ctx.strokeText(e,t,i)})}renderTextStrokeWithStyle(e,t,i){!t.webkitTextStrokeWidth||!e.text.trim().length||(this.ctx.strokeStyle=_i(t.webkitTextStrokeColor),this.ctx.lineWidth=t.webkitTextStrokeWidth,this.ctx.lineJoin=fp(),this.renderStrokeText(e,t.letterSpacing,i,t.writingMode),this.ctx.strokeStyle="",this.ctx.lineWidth=0,this.ctx.lineJoin="miter")}renderTextFillWithShadows(e,t,i){this.ctx.fillStyle=this.resolveFillColor(t),this.renderTextWithLetterSpacing(e,t.letterSpacing,i,t.writingMode);let r=t.textShadow;r.length&&e.text.trim().length&&(r.slice(0).reverse().forEach(r=>{this.ctx.shadowColor=_i(r.color),this.ctx.shadowOffsetX=r.offsetX.number*this.options.scale,this.ctx.shadowOffsetY=r.offsetY.number*this.options.scale,this.ctx.shadowBlur=r.blur.number*this.options.scale,this.renderTextWithLetterSpacing(e,t.letterSpacing,i,t.writingMode)}),this.ctx.shadowColor="",this.ctx.shadowOffsetX=0,this.ctx.shadowOffsetY=0,this.ctx.shadowBlur=0)}renderTextBoundWithPaintOrder(e,t,i,r){i.forEach(i=>{switch(i){case 0:this.ctx.fillStyle=this.resolveFillColor(t),this.renderTextWithLetterSpacing(e,t.letterSpacing,r,t.writingMode);break;case 1:this.renderTextStrokeWithStyle(e,t,r)}})}renderTextDecoration(e,t){this.decorationRenderer.render(e,t)}truncateTextWithEllipsis(e,t,i){let r=this.ctx.measureText("\u2026").width,s=vd(e);if(0===i){let e=e=>this.ctx.measureText(s.slice(0,e).join("")).width+r<=t,i=0,n=s.length;for(;i<n;){let t=i+n+1>>1;e(t)?i=t:n=t-1}return s.slice(0,i).join("")+"\u2026"}{let e=this.ctx.font,n=r,o=[];for(let r of s){let s=this.cachedMeasureText(r,e);if(n+s>t)break;o.push(r),n+=s+i}return o.join("")+"\u2026"}}createFontStyle(e){let t=e.fontVariant.filter(e=>"normal"===e||"small-caps"===e).join(""),i=e.fontFamily.join(", "),r=ti(e.fontSize)?`${e.fontSize.number}${e.fontSize.unit}`:`${e.fontSize.number}px`;return[[e.fontStyle,t,e.fontWeight,r,i].join(" "),i,r]}resolveFillColor(e){return _i(e.webkitTextFillColor??e.color)}renderLineClampedText(e,t,i,r,s){let n=ea(t.lineHeight,t.fontSize.number),o=[],a=[],l=mt(e.textBounds,0).bounds.top;e.textBounds.forEach(e=>{Math.abs(e.bounds.top-l)>=.5*n?(a.length>0&&o.push(a),a=[e],l=e.bounds.top):a.push(e)}),a.length>0&&o.push(a);let d=t.webkitLineClamp;if(o.length<=d)return!1;for(let e=0;e<d-1;e++)mt(o,e).forEach(e=>this.renderTextBoundWithPaintOrder(e,t,i,r));let c=o[d-1];if(c?.length&&s){let e=c.map(e=>e.text).join(""),n=mt(c,0),o=s.width-(n.bounds.left-s.left),a=new fd(this.truncateTextWithEllipsis(e,o,t.letterSpacing),n.bounds);for(let e of i)0===e?(this.ctx.fillStyle=this.resolveFillColor(t),this.renderTextWithLetterSpacing(a,t.letterSpacing,r,t.writingMode)):1===e&&this.renderTextStrokeWithStyle(a,t,r)}return!0}renderEllipsisText(e,t,i,r,s){let n=ea(t.lineHeight,t.fontSize.number),o=mt(e.textBounds,0).bounds.top;if(!e.textBounds.every(e=>Math.abs(e.bounds.top-o)<.5*n))return!1;let a=e.textBounds.map(e=>e.text).join("").replace(/\s+/g," ").trim();if(this.ctx.measureText(a).width<=s.width+1)return!1;let l=new fd(this.truncateTextWithEllipsis(a,s.width,t.letterSpacing),mt(e.textBounds,0).bounds);for(let e of i)0===e?this.renderTextFillWithShadows(l,t,r):1===e&&this.renderTextStrokeWithStyle(l,t,r);return!0}measureBaselineCached(e,t){let i=this.baselineCache.get(e);return void 0===i&&(i=cp(this.ctx,t),this.baselineCache.size>=64&&this.baselineCache.clear(),this.baselineCache.set(e,i)),i}async renderTextNode(e,t,i){this.glyphWidthCache=null;let[r]=this.createFontStyle(t);this.ctx.font=r??"",this.ctx.direction=1===t.direction?"rtl":"ltr",this.ctx.textAlign="left",this.ctx.textBaseline="alphabetic";let s=t.paintOrder,n=this.measureBaselineCached(r??"",t.fontSize.number);t.webkitLineClamp>0&&34&t.display&&1===t.overflowY&&e.textBounds.length>0&&this.renderLineClampedText(e,t,s,n,i)||1===t.textOverflow&&i&&1===t.overflowX&&e.textBounds.length>0&&this.renderEllipsisText(e,t,s,n,i)||(e.textBounds.forEach(e=>{s.forEach(i=>{0===i?(this.renderTextFillWithShadows(e,t,n),t.textDecorationLine.length&&this.renderTextDecoration(e.bounds,t)):1===i&&this.renderTextStrokeWithStyle(e,t,n)})}),t.textEmphasisStyle&&this.renderTextEmphasis(e,t,n))}renderTextEmphasis(e,t,i){if(Aa(t.writingMode))return;let r=t.textEmphasisStyle;if(!r)return;let s=t.fontSize.number,n=.5*s,o=_i(t.textEmphasisColor??t.color),a=t.textEmphasisPosition,l=(e,t)=>{if("string"==typeof r){let i=this.ctx.font;return this.ctx.font=i.replace(/^\S+/,`${n}px`),this.ctx.textAlign="center",this.ctx.fillText(r,e,t+n/3),this.ctx.font=i,void(this.ctx.textAlign="left")}let{fill:i,shape:s}=r,o=n*("dot"===s?.3:"sesame"===s?.26:.34);this.ctx.beginPath(),"sesame"===s?this.ctx.ellipse(e,t,1.3*o,.8*o,Math.PI/4,0,2*Math.PI):"triangle"===s?(this.ctx.moveTo(e,t-o),this.ctx.lineTo(e+1.1*o,t+.8*o),this.ctx.lineTo(e-1.1*o,t+.8*o),this.ctx.closePath()):this.ctx.arc(e,t,o,0,2*Math.PI),i?"double-circle"===s?(this.ctx.lineWidth=.7*o,this.ctx.stroke(),this.ctx.beginPath(),this.ctx.arc(e,t,.4*o,0,2*Math.PI),this.ctx.lineWidth=.35*o,this.ctx.stroke()):this.ctx.fill():(this.ctx.lineWidth=Math.max(1,.35*o),this.ctx.stroke(),"double-circle"===s&&(this.ctx.beginPath(),this.ctx.arc(e,t,.5*o,0,2*Math.PI),this.ctx.stroke()))},d=this.ctx.font;for(let r of e.textBounds){let e=r.bounds.top+i,c=a.over?e-s-.4*n:e+.9*n,p=r.bounds.left;for(let e of vd(r.text)){let i=this.cachedMeasureText(e,d);this.ctx.save();try{this.ctx.fillStyle=o,this.ctx.strokeStyle=o,this.ctx.lineWidth=1,l(p+i/2+t.letterSpacing/2,c)}finally{this.ctx.restore()}p+=i+t.letterSpacing}}}},mp=(e,t)=>{t.forEach((t,i)=>{let r=tc(t)?t.start:t;0===i?e.moveTo(r.x,r.y):e.lineTo(r.x,r.y),tc(t)&&e.bezierCurveTo(t.startControl.x,t.startControl.y,t.endControl.x,t.endControl.y,t.end.x,t.end.y)})},bp=(e,t)=>{e.beginPath(),mp(e,t),e.closePath()},yp=class{maxSize;_map;constructor(e){this.maxSize=e,this._map=new Map}get(e){if(!this._map.has(e))return;let t=this._map.get(e);return this._map.delete(e),this._map.set(e,t),t}set(e,t){if(this._map.has(e))this._map.delete(e);else if(this._map.size>=this.maxSize){let e=this._map.keys().next().value;void 0!==e&&this._map.delete(e)}this._map.set(e,t)}get size(){return this._map.size}clear(){this._map.clear()}},xp=class{ctx;context;canvas;patternCache=new yp(50);constructor(e){this.ctx=e.ctx,this.context=e.context,this.canvas=e.canvas}async renderBackgroundImage(e){let t=e.styles.backgroundImage.length-1,i=e.styles.backgroundBlendMode,r=0;for(let s of e.styles.backgroundImage.slice(0).reverse()){if(r>0){let e=i[r]??i[0]??"normal";"normal"!==e&&(this.ctx.save(),this.ctx.globalCompositeOperation=e)}0===s.type?await this.renderBackgroundURLImage(e,s,t):eo(s)?this.renderLinearGradient(e,s,t):io(s)?this.renderRepeatingLinearGradient(e,s,t):to(s)?this.renderRadialGradient(e,s,t):ro(s)?this.renderRepeatingRadialGradient(e,s,t):so(s)?this.renderConicGradient(e,s,t):no(s)&&this.renderRepeatingConicGradient(e,s,t),r>0&&"normal"!==(i[r]??i[0]??"normal")&&this.ctx.restore(),t--,r++}}async renderBackgroundURLImage(e,t,i){let r,s=t.url;try{r=await this.context.cache.match(s)}catch{this.context.logger.error(`Error loading background-image ${s}`)}if(r){let t=isNaN(r.width)||0===r.width?1:r.width,n=isNaN(r.height)||0===r.height?1:r.height,[o,a,l,d,c]=Oc(e,i,[t,n,t/n]),p=_c(e.styles.backgroundRepeat,i),h=1===p?"no-repeat":2===p?"repeat-x":3===p?"repeat-y":"repeat",u=`${s}|${Math.round(d)}x${Math.round(c)}|${e.styles.imageRendering}|${h}`,f=this.patternCache.get(u);if(!f){let t=this.resizeImage(r,d,c,e.styles.imageRendering);f=this.ctx.createPattern(t,h),this.patternCache.set(u,f)}this.renderRepeat(o,f,a,l)}}renderRepeatingLinearGradient(e,t,i){let[r,s,n,o,a]=Oc(e,i,[null,null,null]),[l,d,c,p,h]=Pn(t.angle,o,a),u=s+d,f=s+c,g=n+p,m=n+h,b=Rn(t.stops,l||1),y=Bc(b),x=this.ctx.createLinearGradient(u,g,f,m);if(y)y.forEach(e=>x.addColorStop(Math.min(1,Math.max(0,e.stop)),e.color));else{let e=_i(mt(b,b.length-1).color);x.addColorStop(0,e),x.addColorStop(1,e)}this.path(r),this.ctx.fillStyle=x,this.ctx.fill()}renderLinearGradient(e,t,i){let[r,s,n,o,a]=Oc(e,i,[null,null,null]),[l,d,c,p,h]=Pn(t.angle,o,a),u=`lg|${t.angle}|${Math.round(o)}x${Math.round(a)}|${JSON.stringify(t.stops)}`,f=this.patternCache.get(u);if(!f){let e=(this.canvas.ownerDocument??document).createElement("canvas");e.width=o,e.height=a;let i=e.getContext("2d");if(!i)return;let r=i.createLinearGradient(d,p,c,h);Rn(t.stops,l||1).forEach(e=>r.addColorStop(e.stop,_i(e.color))),i.fillStyle=r,i.fillRect(0,0,o,a),o>0&&a>0&&(f=this.ctx.createPattern(e,"repeat"),this.patternCache.set(u,f))}f&&this.renderRepeat(r,f,s,n)}renderRadialGradient(e,t,i){let[r,s,n,o,a]=Oc(e,i,[null,null,null]),l=0===t.position.length?[Bi]:t.position,d=Pi(mt(l,0),o),c=Pi(mt(l,l.length-1),a),[p,h]=Dn(t,d,c,o,a);if((0===p||0===h)&&(p=Math.max(p,.01),h=Math.max(h,.01)),p>0&&h>0){let e=`rg|${Math.round(d)}x${Math.round(c)}|${Math.round(p)}x${Math.round(h)}|${JSON.stringify(t.stops)}`,i=Rn(t.stops,p),o=_i(mt(i,i.length-1).color),a=this.patternCache.get(e);if(!a){let i=this.canvas.ownerDocument??document,r=Lc(i,p,h,t.stops,!1);if(!r)return;a=this.ctx.createPattern(r.canvas,"no-repeat"),this.patternCache.set(e,a)}this.path(r),this.ctx.save(),this.ctx.clip(),this.ctx.fillStyle=o,this.ctx.fill(),this.ctx.translate(s+d-p,n+c-h),this.ctx.fillStyle=a,this.ctx.fillRect(0,0,2*p,2*h),this.ctx.restore()}}renderRepeatingRadialGradient(e,t,i){let[r,s,n,o,a]=Oc(e,i,[null,null,null]),l=0===t.position.length?[Bi]:t.position,d=Pi(mt(l,0),o),c=Pi(mt(l,l.length-1),a),[p,h]=Dn(t,d,c,o,a);if((0===p||0===h)&&(p=Math.max(p,.01),h=Math.max(h,.01)),!(p>0&&h>0))return;let u=`rrg|${Math.round(d)}x${Math.round(c)}|${Math.round(p)}x${Math.round(h)}|${JSON.stringify(t.stops)}`,f=this.patternCache.get(u);if(!f){let e=this.canvas.ownerDocument??document,i=Lc(e,p,h,t.stops,!0);if(!i)return;f=this.ctx.createPattern(i.canvas,"no-repeat"),this.patternCache.set(u,f)}f&&(this.path(r),this.ctx.save(),this.ctx.clip(),this.ctx.translate(s+d-p,n+c-h),this.ctx.fillStyle=f,this.ctx.fillRect(0,0,2*p,2*h),this.ctx.restore())}renderConicGradient(e,t,i){let[r,s,n,o,a]=Oc(e,i,[null,null,null]),l=0===t.position.length?[Bi]:t.position,d=s+Pi(mt(l,0),o),c=n+Pi(mt(l,l.length-1),a),p=this.ctx.createConicGradient(t.angle-Math.PI/2,d,c);Rn(t.stops,1).forEach(e=>{p.addColorStop(Math.min(1,Math.max(0,e.stop)),_i(e.color))}),this.path(r),this.ctx.save(),this.ctx.clip(),this.ctx.fillStyle=p,this.ctx.fill(),this.ctx.restore()}renderRepeatingConicGradient(e,t,i){let[r,s,n,o,a]=Oc(e,i,[null,null,null]),l=0===t.position.length?[Bi]:t.position,d=s+Pi(mt(l,0),o),c=n+Pi(mt(l,l.length-1),a),p=Rn(t.stops,1),h=mt(p,0),u=mt(p,p.length-1),f=Math.max(u.stop-h.stop,.01);if(u.stop-h.stop<1e-6){let e=this.ctx.createConicGradient(t.angle-Math.PI/2,d,c);return e.addColorStop(0,_i(u.color)),e.addColorStop(1,_i(u.color)),this.path(r),this.ctx.save(),this.ctx.clip(),this.ctx.fillStyle=e,this.ctx.fill(),void this.ctx.restore()}let g=[],m=Math.ceil(1/f);for(let e=0;e<m;e++)for(let t of p){let i=e*f+(t.stop-h.stop);if(i>1)break;g.push({stop:i,color:_i(t.color)})}let b=mt(g,g.length-1);b&&b.stop<1&&g.push({stop:1,color:b.color});let y=this.ctx.createConicGradient(t.angle-Math.PI/2,d,c);g.forEach(e=>{y.addColorStop(Math.min(1,Math.max(0,e.stop)),e.color)}),this.path(r),this.ctx.save(),this.ctx.clip(),this.ctx.fillStyle=y,this.ctx.fill(),this.ctx.restore()}renderRepeat(e,t,i,r){this.path(e),this.ctx.fillStyle=t,this.ctx.translate(i,r),this.ctx.fill(),this.ctx.translate(-i,-r)}resizeImage(e,t,i,r){let s=(this.canvas.ownerDocument??document).createElement("canvas");s.width=Math.max(1,t),s.height=Math.max(1,i);let n=s.getContext("2d");return n?(2===r||1===r?(this.context.logger.debug("Disabling image smoothing for background image due to CSS image-rendering"),n.imageSmoothingEnabled=!1):3===r?(this.context.logger.debug("Enabling image smoothing for background image due to CSS image-rendering: smooth"),n.imageSmoothingEnabled=!0):n.imageSmoothingEnabled=this.ctx.imageSmoothingEnabled,this.ctx.imageSmoothingQuality&&(n.imageSmoothingQuality=this.ctx.imageSmoothingQuality),n.drawImage(e,0,0,e.width,e.height,0,0,t,i),s):e}path(e){bp(this.ctx,e)}},vp=(e,t)=>{switch(t){case 0:return Ep(e.topLeftBorderBox,e.topLeftPaddingBox,e.topRightBorderBox,e.topRightPaddingBox);case 1:return Ep(e.topRightBorderBox,e.topRightPaddingBox,e.bottomRightBorderBox,e.bottomRightPaddingBox);case 2:return Ep(e.bottomRightBorderBox,e.bottomRightPaddingBox,e.bottomLeftBorderBox,e.bottomLeftPaddingBox);default:return Ep(e.bottomLeftBorderBox,e.bottomLeftPaddingBox,e.topLeftBorderBox,e.topLeftPaddingBox)}},wp=(e,t)=>{switch(t){case 0:return Ep(e.topLeftBorderBox,e.topLeftBorderDoubleOuterBox,e.topRightBorderBox,e.topRightBorderDoubleOuterBox);case 1:return Ep(e.topRightBorderBox,e.topRightBorderDoubleOuterBox,e.bottomRightBorderBox,e.bottomRightBorderDoubleOuterBox);case 2:return Ep(e.bottomRightBorderBox,e.bottomRightBorderDoubleOuterBox,e.bottomLeftBorderBox,e.bottomLeftBorderDoubleOuterBox);default:return Ep(e.bottomLeftBorderBox,e.bottomLeftBorderDoubleOuterBox,e.topLeftBorderBox,e.topLeftBorderDoubleOuterBox)}},kp=(e,t)=>{switch(t){case 0:return Ep(e.topLeftBorderDoubleInnerBox,e.topLeftPaddingBox,e.topRightBorderDoubleInnerBox,e.topRightPaddingBox);case 1:return Ep(e.topRightBorderDoubleInnerBox,e.topRightPaddingBox,e.bottomRightBorderDoubleInnerBox,e.bottomRightPaddingBox);case 2:return Ep(e.bottomRightBorderDoubleInnerBox,e.bottomRightPaddingBox,e.bottomLeftBorderDoubleInnerBox,e.bottomLeftPaddingBox);default:return Ep(e.bottomLeftBorderDoubleInnerBox,e.bottomLeftPaddingBox,e.topLeftBorderDoubleInnerBox,e.topLeftPaddingBox)}},Cp=(e,t)=>{switch(t){case 0:return Sp(e.topLeftBorderStroke,e.topRightBorderStroke);case 1:return Sp(e.topRightBorderStroke,e.bottomRightBorderStroke);case 2:return Sp(e.bottomRightBorderStroke,e.bottomLeftBorderStroke);default:return Sp(e.bottomLeftBorderStroke,e.topLeftBorderStroke)}},Sp=(e,t)=>{let i=[];return tc(e)?i.push(e.subdivide(.5,!1)):i.push(e),tc(t)?i.push(t.subdivide(.5,!0)):i.push(t),i},Ep=(e,t,i,r)=>{let s=[];return tc(e)?s.push(e.subdivide(.5,!1)):s.push(e),tc(i)?s.push(i.subdivide(.5,!0)):s.push(i),tc(r)?s.push(r.subdivide(.5,!0).reverse()):s.push(r),tc(t)?s.push(t.subdivide(.5,!1).reverse()):s.push(t),s},Mp=class{ctx;pathCallbacks;constructor(e,t){this.ctx=e.ctx,this.pathCallbacks=t}async renderSolidBorder(e,t,i){this.pathCallbacks.path(vp(i,t)),this.ctx.fillStyle=_i(e),this.ctx.fill()}async renderDoubleBorder(e,t,i,r){if(t<3)return void await this.renderSolidBorder(e,i,r);let s=wp(r,i);this.pathCallbacks.path(s),this.ctx.fillStyle=_i(e),this.ctx.fill();let n=kp(r,i);this.pathCallbacks.path(n),this.ctx.fill()}async renderDashedDottedBorder(e,t,i,r,s){this.ctx.save();let n,o,a,l,d,c=Cp(r,i),p=vp(r,i);2===s&&(this.pathCallbacks.path(p),this.ctx.clip()),tc(mt(p,0))?(n=mt(p,0).start.x,o=mt(p,0).start.y):(n=mt(p,0).x,o=mt(p,0).y),tc(mt(p,1))?(a=mt(p,1).end.x,l=mt(p,1).end.y):(a=mt(p,1).x,l=mt(p,1).y),d=0===i||2===i?Math.abs(n-a):Math.abs(o-l),this.ctx.beginPath(),3===s?this.pathCallbacks.formatPath(c):this.pathCallbacks.formatPath(p.slice(0,2));let h=t<3?3*t:2*t,u=t<3?2*t:t;3===s&&(h=t,u=t);let f=!0;if(d<=2*h)f=!1;else if(d<=2*h+u){let e=d/(2*h+u);h*=e,u*=e}else{let e=Math.floor((d+u)/(h+u)),t=(d-e*h)/(e-1),i=(d-(e+1)*h)/e;u=i<=0||Math.abs(u-t)<Math.abs(u-i)?t:i}if(f&&(3===s?this.ctx.setLineDash([0,h+u]):this.ctx.setLineDash([h,u])),3===s?(this.ctx.lineCap="round",this.ctx.lineWidth=t):this.ctx.lineWidth=2*t+1.1,this.ctx.strokeStyle=_i(e),this.ctx.stroke(),this.ctx.setLineDash([]),2===s){if(tc(mt(p,0))){let e=mt(p,3),t=mt(p,0);this.ctx.beginPath(),this.pathCallbacks.formatPath([new Qd(e.end.x,e.end.y),new Qd(t.start.x,t.start.y)]),this.ctx.stroke()}if(tc(mt(p,1))){let e=mt(p,1),t=mt(p,2);this.ctx.beginPath(),this.pathCallbacks.formatPath([new Qd(e.end.x,e.end.y),new Qd(t.start.x,t.start.y)]),this.ctx.stroke()}}this.ctx.restore()}},Ap=(e,t,i)=>{let r=e?[e.top,e.right,e.bottom,e.left]:null;return[0,1,2,3].map(e=>{let s=r?r[e]:null,n=t[e]??0;return s&&"auto"!==s.kind?"number"===s.kind?n*(s.value??1):"length"===s.kind?s.value??0:(s.value??0)/100*(0===e||2===e?i.height:i.width):n})},Tp=(e,t)=>{let i=e?[e.top,e.right,e.bottom,e.left]:null,r=e=>{let r=i?i[e]:null;return r?"number"===r.kind?(t[e]??0)*(r.value??0):r.value??0:0};return{top:r(0),right:r(1),bottom:r(2),left:r(3)}},Bp=class{ctx;constructor(e){this.ctx=e}renderBorderImage(e,t,i,r,s,n,o,a,l={top:0,right:0,bottom:0,left:0}){e=e.add(-l.left,-l.top,l.left+l.right,l.top+l.bottom);let d=t.naturalWidth||t.width,c=t.naturalHeight||t.height;if(d<=0||c<=0)return;let p=Math.min("percent"===i.unit?i.top/100*c:Math.min(i.top,c),c),h=Math.min("percent"===i.unit?i.right/100*d:Math.min(i.right,d),d),u=Math.min("percent"===i.unit?i.bottom/100*c:Math.min(i.bottom,c),c),f=Math.min("percent"===i.unit?i.left/100*d:Math.min(i.left,d),d),{left:g,top:m,width:b,height:y}=e;if(b<=0||y<=0)return;let x=Math.min(s,y),v=Math.min(n,b),w=Math.min(o,y-x),k=Math.min(a,b-v);this.drawRegion(t,0,0,f,p,g,m,k,x),this.drawRegion(t,d-h,0,h,p,g+b-v,m,v,x),this.drawRegion(t,d-h,c-u,h,u,g+b-v,m+y-w,v,w),this.drawRegion(t,0,c-u,f,u,g,m+y-w,k,w);let C=[{sx:f,sy:0,sw:d-f-h,sh:p,dx:g+k,dy:m,dw:b-k-v,dh:x,repeat:r.horizontal,horizontal:!0},{sx:d-h,sy:p,sw:h,sh:c-p-u,dx:g+b-v,dy:m+x,dw:v,dh:y-x-w,repeat:r.vertical,horizontal:!1},{sx:f,sy:c-u,sw:d-f-h,sh:u,dx:g+k,dy:m+y-w,dw:b-k-v,dh:w,repeat:r.horizontal,horizontal:!0},{sx:0,sy:p,sw:f,sh:c-p-u,dx:g,dy:m+x,dw:k,dh:y-x-w,repeat:r.vertical,horizontal:!1}];for(let e of C)e.sw<=0||e.sh<=0||e.dw<=0||e.dh<=0||(0===e.repeat?this.ctx.drawImage(t,e.sx,e.sy,e.sw,e.sh,e.dx,e.dy,e.dw,e.dh):(1===e.repeat||2===e.repeat)&&this.drawRepeatedEdge(t,e,e.horizontal,2===e.repeat));i.fill&&this.drawCenterRegion(t,{sx:f,sy:p,sw:d-f-h,sh:c-p-u},{dx:g+k,dy:m+x,dw:b-k-v,dh:y-x-w},r)}drawRegion(e,t,i,r,s,n,o,a,l){r>0&&s>0&&a>0&&l>0&&this.ctx.drawImage(e,t,i,r,s,n,o,a,l)}drawRepeatedEdge(e,t,i,r){let s,n,o=i?t.sw:t.sh,a=i?t.dw:t.dh;if(!(o<=0||a<=0)){r?(n=Math.max(1,Math.round(a/o)),s=a/n):(s=o,n=Math.ceil(a/s)),this.ctx.save(),this.ctx.beginPath(),this.ctx.rect(t.dx,t.dy,t.dw,t.dh),this.ctx.clip();for(let r=0;r<n;r++){let n=r*s;i?this.ctx.drawImage(e,t.sx,t.sy,t.sw,t.sh,t.dx+n,t.dy,s,t.dh):this.ctx.drawImage(e,t.sx,t.sy,t.sw,t.sh,t.dx,t.dy+n,t.dw,s)}this.ctx.restore()}}drawCenterRegion(e,t,i,r){if(t.sw<=0||t.sh<=0||i.dw<=0||i.dh<=0)return;let s=(e,t,i)=>{if(0===e)return{size:i,count:1};if(2===e){let e=Math.max(1,Math.round(i/t));return{size:i/e,count:e}}return{size:t,count:Math.max(1,Math.ceil(i/t))}},n=s(r.horizontal,t.sw,i.dw),o=s(r.vertical,t.sh,i.dh);this.ctx.save(),this.ctx.beginPath(),this.ctx.rect(i.dx,i.dy,i.dw,i.dh),this.ctx.clip();for(let r=0;r<o.count;r++)for(let s=0;s<n.count;s++)this.ctx.drawImage(e,t.sx,t.sy,t.sw,t.sh,i.dx+s*n.size,i.dy+r*o.size,n.size,o.size);this.ctx.restore()}},Rp=/blur\((\d+(?:\.\d+)?)px\)/gi,Lp=(e,t)=>1===t?e:e.replace(Rp,(e,i)=>`blur(${parseFloat(i)*t}px)`),Pp=class{ctx;pathCallback;scale;activeEffects=[];didSave=!1;saveAtDepth=-1;constructor(e,t){this.ctx=e.ctx,this.pathCallback=t,this.scale=e.scale??1}applyEffects(e){for(;this.activeEffects.length;)this.popEffect();this.didSave=!1,this.saveAtDepth=-1;let t=e=>fc(e)||gc(e)||bc(e),i=e.reduceRight((e,i,r)=>-1!==e?e:t(i)?r:-1,-1);for(let r=0;r<e.length;r++){let s=mt(e,r);t(s)&&(this.didSave||(this.ctx.save(),this.didSave=!0),r===i&&(this.saveAtDepth=this.activeEffects.length)),this.applyEffect(s)}}applyEffect(e){fc(e)?(this.ctx.translate(e.offsetX,e.offsetY),this.ctx.transform(e.matrix[0],e.matrix[1],e.matrix[2],e.matrix[3],e.matrix[4],e.matrix[5]),this.ctx.translate(-e.offsetX,-e.offsetY)):gc(e)?(this.pathCallback.path(e.path),this.ctx.clip()):bc(e)?e.applyClip(this.ctx):mc(e)?this.ctx.globalAlpha*=e.opacity:yc(e)?this.ctx.globalCompositeOperation=e.compositeOperation:xc(e)&&(this.ctx.filter=Lp(e.safeFilterString,this.scale)||"none",e.shadow&&(this.ctx.shadowOffsetX=e.shadow.offsetX*this.scale,this.ctx.shadowOffsetY=e.shadow.offsetY*this.scale,this.ctx.shadowBlur=e.shadow.blur*this.scale,this.ctx.shadowColor=e.shadow.color)),this.activeEffects.push(e)}popEffect(){0!==this.activeEffects.length&&(this.didSave&&this.activeEffects.length-1===this.saveAtDepth&&(this.ctx.restore(),this.didSave=!1,this.saveAtDepth=-1),this.activeEffects.pop(),!this.didSave&&0===this.activeEffects.length&&(this.ctx.globalAlpha=1,this.ctx.globalCompositeOperation="source-over",this.ctx.filter="none",this.ctx.shadowOffsetX=0,this.ctx.shadowOffsetY=0,this.ctx.shadowBlur=0,this.ctx.shadowColor="rgba(0, 0, 0, 0)"))}getActiveEffectCount(){return this.activeEffects.length}hasActiveEffects(){return this.activeEffects.length>0}},Ip=(e,t)=>0===e.length?void 0:e[t%e.length]??e[0],Np=(e,t,i,r)=>{let s=e?e[0]:void 0,n=e&&e.length>1?mt(e,1):void 0,o=(e,t,i)=>void 0===e||ri(e)?null:wi(e)?Pi(e,t):i,a=void 0!==(l=s)&&ri(l)?l.value:null;var l;if("contain"===a||"cover"===a){let e="contain"===a?Math.min(t.width/i,t.height/r):Math.max(t.width/i,t.height/r);return{width:i*e,height:r*e}}let d=o(s,t.width,i),c=o(n,t.height,r);return null===d&&null===c?(d=i,c=r):null===d?d=i/r*c:null===c&&(c=r/i*d),{width:d,height:c}},Dp=(e,t,i,r,s)=>{let n=t.naturalWidth||t.width||s.width,o=t.naturalHeight||t.height||s.height,{width:a,height:l}=Np(Ip(i.maskSize,r),s,n,o),d=Ip(i.maskPosition,r)??[],c=s.left+Pi(mt(d,0),s.width-a),p=s.top+Pi(mt(d,d.length-1),s.height-l),h=Ip(i.maskRepeat,r)??0,u=0===h||2===h,f=0===h||3===h,g=u?Math.ceil((c-s.left)/a):0,m=f?Math.ceil((p-s.top)/l):0,b=u?Math.ceil((s.left+s.width-c)/a):0,y=f?Math.ceil((s.top+s.height-p)/l):0;for(let i=-m;i<=y;i++)for(let r=-g;r<=b;r++)e.drawImage(t,c+r*a,p+i*l,a,l)},Op=(e,t,i)=>{let{width:r,height:s}=i,n=0===t.position.length?[Bi]:t.position,o=Pi(mt(n,0),r),a=Pi(mt(n,n.length-1),s),[l,d]=Dn(t,o,a,r,s);l=Math.max(l,.01),d=Math.max(d,.01);let c=e.canvas.ownerDocument??document,p=Lc(c,l,d,t.stops,ro(t));p&&(e.fillStyle=p.lastColor,e.fillRect(i.left,i.top,i.width,i.height),e.drawImage(p.canvas,i.left+o-l,i.top+a-d,2*l,2*d))},Fp=(e,t,i)=>{let{width:r,height:s}=i;if(r<=0||s<=0)return;if(to(t)||ro(t))return void Op(e,t,i);let n=null;if(1===t.type||3===t.type){let o=t,[a,l,d,c,p]=Pn(o.angle||0,r,s),h=Rn(o.stops,a||1);if(3===t.type){let t=Bc(h);if(!t)return e.fillStyle=_i(mt(h,h.length-1).color),void e.fillRect(i.left,i.top,r,s);n=e.createLinearGradient(i.left+l,i.top+c,i.left+d,i.top+p),t.forEach(e=>n.addColorStop(Math.min(1,Math.max(0,e.stop)),e.color))}else n=e.createLinearGradient(i.left+l,i.top+c,i.left+d,i.top+p),Rc(h).forEach(e=>n.addColorStop(e.stop,e.color))}else if(5===t.type||6===t.type){let o=t,a=Rn(o.stops,1),l=6===t.type;if(l&&!Bc(a))return e.fillStyle=_i(mt(a,a.length-1).color),void e.fillRect(i.left,i.top,r,s);n=e.createConicGradient(o.angle-Math.PI/2,i.left+r/2,i.top+s/2),((l?Bc(a):null)??Rc(a)).forEach(e=>n.addColorStop(Math.min(1,Math.max(0,e.stop)),e.color))}n&&(e.fillStyle=n,e.fillRect(i.left,i.top,r,s))},$p=async(e,t,i,r,s)=>{for(let n=0;n<t.length;n++){let o=mt(t,n);if(0===o.type){let t=await s(o.url);t&&Dp(e,t,i,n,r)}else Fp(e,o,r)}},zp=(e,t,i,r,s)=>{let n=0,o=0,a=e,l=t,d=i.left,c=i.top,p=i.width,h=i.height,u=p/h,f=a/l,g=s?Pi(s[0],1):.5,m=s?Pi(s[1],1):.5;return 2===r?f>u?(h=p/f,c+=(i.height-h)*m):(p=h*f,d+=(i.width-p)*g):4===r?f>u?(a=l*u,n+=(e-a)*g):(l=a/u,o+=(t-l)*m):8===r?(a>p?(n+=(a-p)*g,a=p):(d+=(p-a)*g,p=a),l>h?(o+=(l-h)*m,l=h):(c+=(h-l)*m,h=l)):16===r&&((f>u?p:h*f)*(f>u?p/f:h)<Math.min(a,p)*Math.min(l,h)?f>u?(h=p/f,c+=(i.height-h)*m):(p=h*f,d+=(i.width-p)*g):(a>p?(n+=(a-p)*g,a=p):(d+=(p-a)*g,p=a),l>h?(o+=(l-h)*m,l=h):(c+=(h-l)*m,h=l))),{sx:n,sy:o,sw:a,sh:l,dx:d,dy:c,dw:p,dh:h}},_p=(e,t,i)=>e.height<i?new ut(e.left,t.top,e.width,t.height):e,Wp=(e,t,i,r)=>{let s=[],n=t.split("\n");for(let t of n){if(r){s.push(t);continue}let n=t.split(/(\s+)/),o="";for(let t of n){let r=o+t;e.measureText(r).width<=i||""===o?o=r:(s.push(o),o=t)}s.push(o)}return s},Hp=e=>e instanceof Wd||e instanceof _d||e instanceof zd&&"radio"!==e.type&&"checkbox"!==e.type,Vp=e=>{switch(e){case 1:return"center";case 2:return"right";default:return"left"}},jp=(e,t)=>{let i=t>e?t*(1+Math.pow(e/t-1,3)):t;return Math.max(0,e+i)},Up=(e,t)=>{if(0===t)return e;let i=e.map((e,t)=>tc(e)?{x:t%2==0?e.start.x:e.end.x,y:t%2==0?e.end.y:e.start.y,rx:Math.abs(e.end.x-e.start.x),ry:Math.abs(e.end.y-e.start.y)}:{x:e.x,y:e.y,rx:0,ry:0}),r=mt(i,1).x-mt(i,0).x+2*t,s=mt(i,3).y-mt(i,0).y+2*t;if(r<=0||s<=0)return[];let n=i.map(e=>({x:jp(e.rx,t),y:jp(e.ry,t)})),o=(e,t)=>t>0?e/t:1,a=Math.min(1,o(r,mt(n,0).x+mt(n,1).x),o(r,mt(n,3).x+mt(n,2).x),o(s,mt(n,0).y+mt(n,3).y),o(s,mt(n,1).y+mt(n,2).y));return e.map((e,r)=>{let s=mt(i,r),o=s.x+(1===r||2===r?t:-t),l=s.y+(r>=2?t:-t);if(!tc(e))return new Qd(o,l);let d=mt(n,r).x*a,c=mt(n,r).y*a;if(!d||!c)return new Qd(o,l);let p=d/s.rx,h=c/s.ry,u=e=>new Qd(o+(e.x-s.x)*p,l+(e.y-s.y)*h);return new ec(u(e.start),u(e.startControl),u(e.endControl),u(e.end))})},Yp=(e,t,i)=>{let{a:r,b:s,c:n,d:o,e:a,f:l}=e;if(![r,s,n,o,a,l,t,i].every(Number.isFinite))return null;let d=r*o-s*n;if(!Number.isFinite(d)||0===d)return null;let c=(e,t)=>({x:(o*(e-a)-n*(t-l))/d,y:(-s*(e-a)+r*(t-l))/d}),p=[c(0,0),c(t,0),c(t,i),c(0,i)];if(!p.every(e=>Number.isFinite(e.x)&&Number.isFinite(e.y)))return null;let h=Math.min(...p.map(e=>e.x)),u=Math.min(...p.map(e=>e.y)),f=Math.max(...p.map(e=>e.x)),g=Math.max(...p.map(e=>e.y)),m=r*r+s*s,b=n*n+o*o,y=r*n+s*o,x=Math.sqrt((m+b+Math.hypot(m-b,2*y))/2);if(!Number.isFinite(x)||x<=0)return null;let v=1e-10*Math.max(m,b);return{matrix:e,viewport:new ut(h,u,f-h,g-u),scale:x,uniform:Math.abs(m-b)<=v&&Math.abs(y)<=v}},qp=(e,t,i)=>{e.beginPath(),e.rect(t.left,t.top,t.width,t.height),i.length&&(mp(e,i),e.closePath())},Gp=(e,t)=>{let i=t.spread.number,r=Pc(e.container);return r.width-2*i<=0||r.height-2*i<=0?[]:Up(oc(e.curves),-i)},Kp=async(e,t,i,r,s,n)=>{let o=Pc(t.container),a=i.blur.number/2,l=Math.ceil(3*a)+2,d=i.spread.number,c=dt((i.inset?o:t.container.bounds.add(i.offsetX.number-d,i.offsetY.number-d,2*d,2*d)).add(-l,-l,2*l,2*l),n.viewport,l,n.scale);if(!c.width||!c.height)return!0;let p,h,u=Math.ceil(c.width*n.scale),f=Math.ceil(c.height*n.scale),g=at(s,u,f);if(!g)return!1;try{p=e.canvas.ownerDocument.createElement("canvas"),p.width=u,p.height=f;let s=p.getContext("2d");if(!s)return!1;s.scale(n.scale,n.scale),s.translate(-c.left,-c.top);let o=i.inset?Gp(t,i):Up(sc(t.curves),d),l=Jd(o,i.offsetX.number,i.offsetY.number,0,0);i.inset?qp(s,c,l):bp(s,l),s.fillStyle=_i(i.color),s.fill(i.inset?"evenodd":"nonzero"),h=await ot(p,{functions:[{kind:"blur",value:a}]},1,n.scale,r.signal),e.save();try{i.inset?(bp(e,oc(t.curves)),e.clip()):(qp(e,n.viewport,sc(t.curves)),e.clip("evenodd")),e.drawImage(h,c.left,c.top,h.width/n.scale,h.height/n.scale)}finally{e.restore()}return!0}catch(e){if(!(e instanceof Hc))throw e;return!1}finally{h&&h!==p&&Vc(h),p&&Vc(p),s.pixels-=g}},Xp=async(e,t,i,r,s)=>{if(r.signal?.aborted)throw new DOMException("The operation was aborted.","AbortError");if(zi(i.color))return;let n=i.spread.number;if(!i.inset&&(t.container.bounds.width+2*n<=0||t.container.bounds.height+2*n<=0))return;let o="function"==typeof e.getTransform,a=o?e.getTransform():{a:r.scale,b:0,c:0,d:r.scale,e:-r.x*r.scale,f:-r.y*r.scale},l=Yp(a,e.canvas.width,e.canvas.height);if(!l)return;let{viewport:d}=l;if(i.blur.number>0&&(i.inset||!l.uniform)&&await Kp(e,t,i,r,s,l))return;let c=Pc(t.container);e.save();try{if(i.inset&&0===i.blur.number)return bp(e,oc(t.curves)),e.clip(),qp(e,c,Jd(Gp(t,i),i.offsetX.number,i.offsetY.number,0,0)),e.fillStyle=_i(i.color),void e.fill("evenodd");let r=Math.ceil(2*i.blur.number+Math.abs(n)+Math.abs(i.offsetX.number)+Math.abs(i.offsetY.number))+2,s=i.inset?c.add(-r,-r,2*r,2*r):t.container.bounds.add(-n,-n,2*n,2*n),{a:p,b:h,c:u,d:f,e:g,f:m}=a,b=s.left+s.width,y=s.top+s.height,x=Math.max(p*s.left+u*s.top+g,p*b+u*s.top+g,p*b+u*y+g,p*s.left+u*y+g),v=Math.max(1e4,x+r*l.scale+2);i.inset?(bp(e,oc(t.curves)),e.clip()):(qp(e,d,sc(t.curves)),e.clip("evenodd")),o?e.setTransform(p,h,u,f,g-v,m):e.translate(-v/p,0),i.inset?qp(e,s,Gp(t,i)):bp(e,Up(sc(t.curves),n)),o?e.setTransform(p,h,u,f,g,m):e.translate(v/p,0),e.shadowOffsetX=v+p*i.offsetX.number+u*i.offsetY.number,e.shadowOffsetY=h*i.offsetX.number+f*i.offsetY.number,e.shadowBlur=i.blur.number*l.scale,e.shadowColor=_i(i.color),e.fillStyle="rgb(0, 0, 0)",e.fill(i.inset?"evenodd":"nonzero")}finally{e.restore()}},Jp=class{ctx;context;scale;createFontStyle;constructor(e){this.ctx=e.ctx,this.context=e.context,this.scale=e.scale,this.createFontStyle=e.createFontStyle}async render(e){let t=e.container,i=t.styles,r=t.bounds,s=this.scale;if(r.width<=0||r.height<=0)return;let n=this.ctx.canvas.ownerDocument??document,o=Math.ceil(r.width),a=Math.ceil(r.height),l=Math.ceil(r.width*s),d=Math.ceil(r.height*s),c=this.createLayer(n,l,d);if(!c)return;let p=null,h=null,u=null;try{c.ctx.scale(s,s);let[f]=this.createFontStyle(i);c.ctx.font=f??"",c.ctx.textBaseline="alphabetic",c.ctx.textAlign="left",c.ctx.direction=1===i.direction?"rtl":"ltr";let g=cp(c.ctx,i.fontSize.number),m=new xp({ctx:c.ctx,context:this.context,canvas:c.canvas,options:{width:o,height:a,scale:1}});zi(i.backgroundColor)||(c.ctx.fillStyle=_i(i.backgroundColor),c.ctx.fillRect(0,0,o,a)),c.ctx.save(),c.ctx.translate(-r.left,-r.top),await m.renderBackgroundImage(t),c.ctx.restore();let b={bounds:r,baseline:g,letterSpacing:i.letterSpacing,writingMode:i.writingMode};if(p=this.createGlyphLayer(n,l,d,c.ctx),!p)return;let y=!!i.webkitTextStrokeWidth;y&&(p.ctx.strokeStyle=_i(i.webkitTextStrokeColor),p.ctx.lineWidth=i.webkitTextStrokeWidth,p.ctx.lineJoin=fp());for(let e of t.textNodes)for(let t of e.textBounds)this.drawGlyphs(p,t,b,(e,t,i,r)=>{e.fillText(t,i,r),y&&e.strokeText(t,i,r)});if(c.ctx.globalCompositeOperation="destination-in",c.ctx.drawImage(p.canvas,0,0,o,a),u=this.renderShadowSilhouettes(e,n,l,d,c.ctx,i,b),u){if(h=this.createLayer(n,l,d),!h)return;for(let e of u)h.ctx.drawImage(e,0,0);h.ctx.drawImage(c.canvas,0,0),this.ctx.drawImage(h.canvas,r.left,r.top,r.width,r.height)}else this.ctx.drawImage(c.canvas,r.left,r.top,r.width,r.height)}finally{Vc(c.canvas),p&&Vc(p.canvas),h&&Vc(h.canvas),u&&u.forEach(Vc)}}createLayer(e,t,i){let r=e.createElement("canvas");r.width=t,r.height=i;let s=r.getContext("2d");return s?{canvas:r,ctx:s}:null}createGlyphLayer(e,t,i,r){let s=this.createLayer(e,t,i);return s?(s.ctx.scale(this.scale,this.scale),s.ctx.font=r.font,s.ctx.textBaseline=r.textBaseline,s.ctx.textAlign=r.textAlign,s.ctx.direction=r.direction,s.ctx.fillStyle="#000",s):null}drawGlyphs(e,t,i,r){let s=t.bounds.left-i.bounds.left,n=t.bounds.top-i.bounds.top+i.baseline,{letterSpacing:o,writingMode:a}=i;if(o<=0)return void r(e.ctx,t.text,s,n);if(Aa(a))return void r(e.ctx,t.text,s,n);let l=s;for(let i of vd(t.text))r(e.ctx,i,l,n),l+=e.ctx.measureText(i).width+o}renderShadowSilhouettes(e,t,i,r,s,n,o){let a=n.textShadow;if(!a.length)return null;let l=[];for(let n=a.length-1;n>=0;n--){let d=mt(a,n),c=this.createGlyphLayer(t,i,r,s);if(c){c.ctx.shadowColor=_i(d.color),c.ctx.shadowOffsetX=d.offsetX.number*this.scale,c.ctx.shadowOffsetY=d.offsetY.number*this.scale,c.ctx.shadowBlur=d.blur.number*this.scale,c.ctx.fillStyle=_i(d.color);for(let t of e.container.textNodes)for(let e of t.textBounds)this.drawGlyphs(c,e,o,(e,t,i,r)=>{e.fillText(t,i,r)});l.push(c.canvas)}}return l.length?l:null}},Qp=class e{surfaceRoot;surfaceBudget;canvas;ctx;context;options;backgroundRenderer;borderRenderer;borderImageRenderer;effectsRenderer;textRenderer;textClipRenderer;legacySubtree=!1;constructor(e,t,i,r={pixels:0}){this.surfaceRoot=i,this.surfaceBudget=r,this.context=e,this.options=t,this.canvas=t.canvas?t.canvas:e.resourceDocument.createElement("canvas");let s=this.canvas.getContext("2d");if(!s)throw t.canvas||Vc(this.canvas),i?new Hc("Filter surface canvas is unavailable"):new Error("Failed to get 2D rendering context from canvas");this.ctx=s,t.canvas||(this.canvas.width=Math.floor(t.width*t.scale),this.canvas.height=Math.floor(t.height*t.scale),this.canvas.style.width=`${t.width}px`,this.canvas.style.height=`${t.height}px`),this.ctx.scale(this.options.scale,this.options.scale),this.ctx.translate(-t.x,-t.y),this.ctx.textBaseline="bottom",void 0!==t.imageSmoothing&&(this.ctx.imageSmoothingEnabled=t.imageSmoothing),t.imageSmoothingQuality&&(this.ctx.imageSmoothingQuality=t.imageSmoothingQuality),this.backgroundRenderer=new xp({ctx:this.ctx,context:this.context,canvas:this.canvas,options:{width:t.width,height:t.height,scale:t.scale}}),this.borderRenderer=new Mp({ctx:this.ctx},{path:e=>this.path(e),formatPath:e=>this.formatPath(e)}),this.borderImageRenderer=new Bp(this.ctx),this.effectsRenderer=new Pp({ctx:this.ctx,scale:t.scale},{path:e=>this.path(e)}),this.textRenderer=new gp({ctx:this.ctx,options:{scale:t.scale}}),this.textClipRenderer=new Jp({ctx:this.ctx,context:this.context,scale:t.scale,createFontStyle:e=>this.textRenderer.createFontStyle(e)}),this.context.logger.debug(`Canvas renderer initialized (${t.width}x${t.height}) with scale ${t.scale}`)}async renderStack(e){let t=e.element.container.styles;if(t.isVisible()){let i=rt(t.filter),r=null!==i&&i.functions.length>0,s=t.maskImage.length>0,n=t.webkitBoxReflect,o=t.mixBlendMode!==Ka.NORMAL;if(e.element!==this.surfaceRoot&&!this.legacySubtree&&(s||n||o||null!==i&&(r||t.opacity<1))&&this.canComposite(e.element)){if(!await this.renderCompositedStack(e,i,s,n,o)){this.legacySubtree=!0;try{await this.renderStackContent(e)}finally{this.legacySubtree=!1}}return}await this.renderStackContent(e)}}canComposite(e){let t=e=>{let t=e.styles;return!t.isTransformed()&&1===t.zoom&&0===t.clipPath.type&&!Qs(t.display,2048)&&null!==rt(t.filter)},i=e=>t(e)&&e.elements.every(i),r=e.parent;for(;r&&r!==this.surfaceRoot;){if(!t(r.container))return!1;r=r.parent}return i(e.container)}async renderCompositedStack(t,i,r,s,n=!1){let o=this.options.signal;if(o?.aborted)throw new DOMException("The operation was aborted.","AbortError");let a=dt(lt(t.element.container),new ut(this.options.x,this.options.y,this.options.width,this.options.height),i?st(i):0,this.options.scale);if(!a.width||!a.height)return!0;let l=at(this.surfaceBudget,Math.ceil(a.width*this.options.scale),Math.ceil(a.height*this.options.scale));if(!l)return this.context.logger.info("Filter surface budget exceeded; using the existing renderer"),!1;let d,c,p={...this.options,canvas:void 0,backgroundColor:null,x:a.left,y:a.top,width:a.width,height:a.height};try{d=new e(this.context,p,t.element,this.surfaceBudget),await d.renderStackContent(t),d.effectsRenderer.applyEffects([]),i&&(c=await ot(d.canvas,i,t.element.container.styles.opacity,p.scale,o));let l=c??d.canvas;if(r&&await this.applyMask(l,t.element.container.styles,a),o?.aborted)throw new DOMException("The operation was aborted.","AbortError");let h=t.element.effects,u=t.element.getEffects(4,this.surfaceRoot).filter(e=>!h.includes(e)||!xc(e)&&!mc(e)&&!yc(e)&&!gc(e));return this.effectsRenderer.applyEffects(u),n?(this.ctx.save(),this.ctx.globalCompositeOperation=t.element.container.styles.mixBlendMode,this.ctx.drawImage(l,p.x,p.y,l.width/p.scale,l.height/p.scale),this.ctx.restore()):this.ctx.drawImage(l,p.x,p.y,l.width/p.scale,l.height/p.scale),s&&await this.drawReflection(l,t.element.container.bounds,a,s),!0}catch(e){if(!(e instanceof Hc))throw e;return this.context.logger.info(`${e.message}; using the existing renderer`),!1}finally{d&&Vc(d.canvas),c&&Vc(c),this.surfaceBudget.pixels-=l}}async applyMask(e,t,i){let r=e.getContext("2d");if(!r)return;let s=this.context.resourceDocument.createElement("canvas");s.width=e.width,s.height=e.height;let n=s.getContext("2d");if(n){n.scale(this.options.scale,this.options.scale),n.translate(-i.left,-i.top);try{await $p(n,t.maskImage,t,{left:i.left,top:i.top,width:i.width,height:i.height},async e=>await this.context.cache.match(e))}catch(e){return void this.context.logger.error(`Error rendering mask-image: ${e instanceof Error?e.message:e}`)}r.save();try{r.setTransform(1,0,0,1,0,0),r.globalCompositeOperation="destination-in",r.drawImage(s,0,0)}finally{r.restore()}}}async drawReflection(e,t,i,r){let s=this.options.scale,n=Math.ceil(t.width*s),o=Math.ceil(t.height*s);if(n<=0||o<=0)return;let a,l,d=at(this.surfaceBudget,n,o);if(d)try{a=this.context.resourceDocument.createElement("canvas"),a.width=n,a.height=o;let d=a.getContext("2d");if(!d)return;let c=Math.round((t.left-i.left)*s),p=Math.round((t.top-i.top)*s),h="left"===r.direction||"right"===r.direction;d.save();try{h?(d.translate(n,0),d.scale(-1,1)):(d.translate(0,o),d.scale(1,-1)),d.drawImage(e,-c,-p)}finally{d.restore()}if(r.mask){l=this.context.resourceDocument.createElement("canvas"),l.width=n,l.height=o;let e=l.getContext("2d");if(e){e.scale(s,s),await $p(e,[r.mask],{maskPosition:[],maskRepeat:[],maskSize:[]},{left:0,top:0,width:t.width,height:t.height},async e=>await this.context.cache.match(e)),d.save();try{h?(d.translate(n,0),d.scale(-1,1)):(d.translate(0,o),d.scale(1,-1)),d.globalCompositeOperation="destination-in",d.drawImage(l,0,0,n,o)}finally{d.restore()}}}let u=r.offset,f=t.left,g=t.top;"below"===r.direction?g=t.top+t.height+u:"above"===r.direction?g=t.top-t.height-u:f="right"===r.direction?t.left+t.width+u:t.left-t.width-u,this.ctx.save();try{this.ctx.filter="none",this.ctx.drawImage(a,f,g,t.width,t.height)}finally{this.ctx.restore()}}finally{a&&Vc(a),l&&Vc(l),this.surfaceBudget.pixels-=d}}async renderNode(e){e.container.debugRender,e.container.styles.isVisible()&&(await this.renderNodeBackgroundAndBorders(e),await this.renderNodeContent(e))}renderReplacedElement(e,t,i){let r=i.naturalWidth||e.intrinsicWidth,s=i.naturalHeight||e.intrinsicHeight;if(i&&r>0&&s>0){let n=Ic(e),o=oc(t);this.path(o),this.ctx.save(),this.ctx.clip();let{sx:a,sy:l,sw:d,sh:c,dx:p,dy:h,dw:u,dh:f}=zp(r,s,n,e.styles.objectFit,e.styles.objectPosition);this.ctx.drawImage(i,a,l,d,c,p,h,u,f),this.ctx.restore()}}async renderNodeContent(t){this.effectsRenderer.applyEffects(t.getEffects(4,this.surfaceRoot));let i=t.container,r=t.curves,s=i.styles,n=Ic(i);for(let e of i.textNodes)await this.textRenderer.renderTextNode(e,s,n);await async function(t,i,r,s,n,o,a,l){if(n instanceof Ad)try{let e=await i.cache.match(n.src),r=t.imageSmoothingEnabled;2===a.imageRendering||1===a.imageRendering?t.imageSmoothingEnabled=!1:3===a.imageRendering&&(t.imageSmoothingEnabled=!0),l(n,o,e),t.imageSmoothingEnabled=r}catch{i.logger.error(`Error loading image ${n.src}`)}if(n instanceof Td&&l(n,o,n.canvas),n instanceof Ld)try{l(n,o,await i.cache.match(n.svg))}catch{i.logger.error(`Error loading svg ${n.svg.substring(0,255)}`)}if(n instanceof Hd&&n.tree){let s=await((t,i)=>new e(t,i))(i,{scale:r.scale,backgroundColor:n.backgroundColor,x:0,y:0,width:n.width,height:n.height}).render(n.tree);n.width&&n.height&&t.drawImage(s,0,0,n.width,n.height,n.bounds.left,n.bounds.top,n.bounds.width,n.bounds.height)}}(this.ctx,this.context,{scale:this.options.scale,backgroundColor:this.options.backgroundColor,x:this.options.x,y:this.options.y,width:this.options.width,height:this.options.height},0,i,r,s,(e,t,i)=>this.renderReplacedElement(e,t,i)),function(e,t,i,r,s){if(r instanceof zd){let t=Math.min(r.bounds.width,r.bounds.height);"checkbox"===r.type&&r.checked?(e.save(),i([new Qd(r.bounds.left+.39363*t,r.bounds.top+.79*t),new Qd(r.bounds.left+.16*t,r.bounds.top+.5549*t),new Qd(r.bounds.left+.27347*t,r.bounds.top+.44071*t),new Qd(r.bounds.left+.39694*t,r.bounds.top+.5649*t),new Qd(r.bounds.left+.72983*t,r.bounds.top+.23*t),new Qd(r.bounds.left+.84*t,r.bounds.top+.34085*t),new Qd(r.bounds.left+.39363*t,r.bounds.top+.79*t)]),e.fillStyle=_i(r.styles.accentColor??7733247),e.fill(),e.restore()):"radio"===r.type&&r.checked&&(e.save(),e.beginPath(),e.arc(r.bounds.left+t/2,r.bounds.top+t/2,t/4,0,2*Math.PI,!0),e.fillStyle=_i(r.styles.accentColor??7733247),e.fill(),e.restore())}if(Hp(r)&&r.value.length){let[n]=t.createFontStyle(s);e.font=n??"";let o=Pi(s.fontSize,0),{baseline:a,height:l}=dp(e,o);e.fillStyle=r instanceof zd&&r.isPlaceholder?_i(1970632191):_i(s.color),e.textBaseline="alphabetic",e.textAlign=Vp(r.styles.textAlign);let d=Ic(r),c=r instanceof zd?_p(d,Pc(r),l):d,p=0;switch(r.styles.textAlign){case 1:p+=d.width/2;break;case 2:p+=d.width}let h=0;r instanceof zd&&(h=(d.height-l)/2);let u=d.add(p,h,0,0);e.save(),i([new Qd(c.left,c.top),new Qd(c.left+c.width,c.top),new Qd(c.left+c.width,c.top+c.height),new Qd(c.left,c.top+c.height)]),e.clip();let f=Wp(e,r.value,d.width,"pre"===s.whiteSpace||"nowrap"===s.whiteSpace),g=ea(s.lineHeight,o);f.forEach((i,r)=>{let n=u.left,o=e.measureText(i).width;switch(s.textAlign){case 1:n+=(d.width-o)/2;break;case 2:n+=d.width-o}let l=new ut(n,u.top+r*g,0,0);t.renderTextWithLetterSpacing(new fd(i,l),s.letterSpacing,a,s.writingMode)}),e.restore(),e.textBaseline="alphabetic",e.textAlign="left"}}(this.ctx,this.textRenderer,this.path.bind(this),i,s),await async function(e,t,i,r,s,n){if(Qs(s.styles.display,2048))if(null!==s.styles.listStyleImage){let i=s.styles.listStyleImage;if(0===i.type){let r=i.url;try{let i=await t.cache.match(r),o=Pi(n.fontSize,0),a=i?.naturalWidth||i.width,l=i?.naturalHeight||i.height;if(a<=0||l<=0)return;let d=Math.min(o/a,o/l),c=a*d,p=l*d,h=s.bounds.top+Pi(s.styles.paddingTop,s.bounds.width)+ea(n.lineHeight,n.fontSize.number)/2;e.drawImage(i,s.bounds.left-(c+10),h-p/2,c,p)}catch{t.logger.error(`Error loading list-style-image ${r}`)}}}else if(r.listValue&&-1!==s.styles.listStyleType){let t=s.styles.listStyleType;if(0===t||1===t||2===t){let i=.45*n.fontSize.number,r=s.bounds.left-.9*i,o=s.bounds.top+Pi(s.styles.paddingTop,s.bounds.width)+ea(n.lineHeight,n.fontSize.number)/2;e.save(),e.fillStyle=_i(n.color),e.beginPath(),2===t?e.rect(r-i/2,o-i/2,i,i):(e.arc(r,o,i/2,0,2*Math.PI),1===t&&(e.strokeStyle=_i(n.color),e.lineWidth=.18*i)),1===t?e.stroke():e.fill(),e.restore()}else{let[t]=i.createFontStyle(n);e.font=t??"",e.fillStyle=_i(n.color),e.textBaseline="middle",e.textAlign="right";let o=new ut(s.bounds.left,s.bounds.top+Pi(s.styles.paddingTop,s.bounds.width),s.bounds.width,ea(n.lineHeight,n.fontSize.number)/2+1);i.renderTextWithLetterSpacing(new fd(r.listValue,o),n.letterSpacing,ea(n.lineHeight,n.fontSize.number)/2+2,n.writingMode),e.textBaseline="bottom",e.textAlign="left"}}}(this.ctx,this.context,this.textRenderer,t,i,s)}async renderStackContent(e){e.element.container.debugRender;let t=this.options.signal;await this.renderNodeBackgroundAndBorders(e.element);for(let i of e.negativeZIndex){if(t?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(i)}if(t?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderNodeContent(e.element);for(let t of e.nonInlineLevel)await this.renderNode(t);for(let i of e.nonPositionedFloats){if(t?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(i)}for(let i of e.nonPositionedInlineLevel){if(t?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(i)}for(let t of e.inlineLevel)await this.renderNode(t);for(let i of e.zeroOrAutoZIndexOrTransformedOrOpacity){if(t?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(i)}for(let i of e.positiveZIndex){if(t?.aborted)throw new DOMException("The operation was aborted.","AbortError");await this.renderStack(i)}}path(e){bp(this.ctx,e)}formatPath(e){mp(this.ctx,e)}async renderSurfaceBoxShadow(e,t){let i=t.spread.number,r=t.blur.number/2,s=Math.ceil(3*r)+1,n=e.container.bounds.add(-i,-i,2*i,2*i);if(n.width<=0||n.height<=0)return;let o=this.options.scale,a=dt(n.add(-s,-s,2*s,2*s),new ut(this.options.x-t.offsetX.number,this.options.y-t.offsetY.number,this.options.width,this.options.height),s,o);if(!a.width||!a.height)return;let l,d,c=Math.ceil(a.width*o),p=Math.ceil(a.height*o),h=at(this.surfaceBudget,c,p);if(!h)throw new Hc("Box shadow surface budget exceeded");try{l=this.context.resourceDocument.createElement("canvas"),l.width=c,l.height=p;let s=l.getContext("2d");if(!s)throw new Hc("Box shadow surface canvas is unavailable");s.scale(o,o),s.translate(-a.left,-a.top),bp(s,Jd(sc(e.curves),-i,-i,2*i,2*i)),s.fillStyle=_i(t.color),s.fill(),d=await ot(l,{functions:[{kind:"blur",value:r}]},1,o,this.options.signal),this.ctx.save();try{this.ctx.beginPath(),this.ctx.rect(this.options.x,this.options.y,this.options.width,this.options.height),mp(this.ctx,sc(e.curves)),this.ctx.closePath(),this.ctx.clip("evenodd"),this.ctx.drawImage(d,a.left+t.offsetX.number,a.top+t.offsetY.number,d.width/o,d.height/o)}finally{this.ctx.restore()}}finally{l&&Vc(l),d&&Vc(d),this.surfaceBudget.pixels-=h}}async renderNodeBackgroundAndBorders(e){this.effectsRenderer.applyEffects(e.getEffects(2,this.surfaceRoot)),!this.surfaceRoot&&e.container.styles.backdropFilter&&await this.renderBackdropFilter(e);let t=e.container.styles,i=!zi(t.backgroundColor)||t.backgroundImage.length,r=eh(t),s=[{style:t.borderTopStyle,color:t.borderTopColor,width:t.borderTopWidth},{style:t.borderRightStyle,color:t.borderRightColor,width:t.borderRightWidth},{style:t.borderBottomStyle,color:t.borderBottomColor,width:t.borderBottomWidth},{style:t.borderLeftStyle,color:t.borderLeftColor,width:t.borderLeftWidth}],n=_c(t.backgroundClip,0),o=Zp(n,e.curves);if(i||t.boxShadow.length){r&&e.container.textNodes.length>0?await this.textClipRenderer.render(e):(this.ctx.save(),this.path(o),this.ctx.clip(),zi(t.backgroundColor)||(this.ctx.fillStyle=_i(t.backgroundColor),this.ctx.fill()),await this.backgroundRenderer.renderBackgroundImage(e.container),this.ctx.restore());for(let i of t.boxShadow.slice(0).reverse())!this.surfaceRoot||i.inset?await Xp(this.ctx,e,i,this.options,this.surfaceBudget):await this.renderSurfaceBoxShadow(e,i)}if(t.borderImageSource){let i=t.borderImageSource,r=e.container.bounds,s=[Math.max(0,t.borderTopWidth),Math.max(0,t.borderRightWidth),Math.max(0,t.borderBottomWidth),Math.max(0,t.borderLeftWidth)],n=null;if(0===i.type){let e=i.url;try{n=await this.context.cache.match(e)??null}catch{this.context.logger.error(`Error loading border-image ${e}`)}}else n=this.rasterizeGradientSource(i,r);if(n){let e=Tp(t.borderImageOutset,s),i=r.add(-e.left,-e.top,e.left+e.right,e.top+e.bottom),o=Ap(t.borderImageWidth,s,i);this.borderImageRenderer.renderBorderImage(r,n,t.borderImageSlice,t.borderImageRepeat,o[0],o[1],o[2],o[3],e)}return}let a=0;for(let t of s){if(0!==t.style&&!zi(t.color)&&t.width>0){let i=async()=>{2===t.style?await this.borderRenderer.renderDashedDottedBorder(t.color,t.width,a,e.curves,2):3===t.style?await this.borderRenderer.renderDashedDottedBorder(t.color,t.width,a,e.curves,3):4===t.style?await this.borderRenderer.renderDoubleBorder(t.color,t.width,a,e.curves):await this.borderRenderer.renderSolidBorder(t.color,a,e.curves)},r=e.container.legendBounds;if(0===a&&r){let t=e.container.bounds,s=r.left-t.left,n=r.left+r.width-t.left;s>0&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.rect(t.left,t.top,s,t.height),this.ctx.clip(),await i(),this.ctx.restore());let o=t.left+n,a=t.width-n;a>0&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.rect(o,t.top,a,t.height),this.ctx.clip(),await i(),this.ctx.restore())}else await i()}a++}this.renderOutline(e)}renderOutline(e){let t=e.container.styles;if(0===t.outlineStyle||1===t.outlineStyle)return;let i=Math.max(0,t.outlineWidth);if(i<=0)return;let r=t.outlineColor??t.color;if(zi(r))return;let s=Math.max(0,t.outlineOffset)+i/2,n=Jd(sc(e.curves),-s,-s,2*s,2*s);this.ctx.save();try{this.ctx.strokeStyle=_i(r),this.ctx.lineWidth=i,3===t.outlineStyle?this.ctx.setLineDash([3*i,3*i]):4===t.outlineStyle&&this.ctx.setLineDash([i,2*i]),this.path(n),this.ctx.stroke()}finally{this.ctx.restore()}}rasterizeGradientSource(e,t){let i=Math.max(1,Math.ceil(t.width)),r=Math.max(1,Math.ceil(t.height)),s=(this.ctx.canvas.ownerDocument??document).createElement("canvas");s.width=i,s.height=r;let n=s.getContext("2d");if(!n)return null;if(1===e.type||3===e.type){let t=e,[o,a,l,d,c]=Pn(t.angle,i,r),p=Rn(t.stops,o||i),h=3===e.type,u=h?Bc(p):null,f=n.createLinearGradient(a,l,d,c);if(u)u.forEach(e=>{f.addColorStop(Math.min(1,Math.max(0,e.stop)),e.color)});else if(h){let e=_i(mt(p,p.length-1).color);f.addColorStop(0,e),f.addColorStop(1,e)}else Rc(p).forEach(e=>{f.addColorStop(e.stop,e.color)});return n.fillStyle=f,n.fillRect(0,0,i,r),s}if(2===e.type||4===e.type){let t=e,o=0===t.position.length?[Bi]:t.position,a=Pi(mt(o,0),i),l=Pi(mt(o,o.length-1),r),[d,c]=Dn(t,a,l,i,r);if(d<=0||c<=0)return null;let p=this.ctx.canvas.ownerDocument??document,h=Lc(p,d,c,t.stops,4===e.type);return h?(n.fillStyle=h.lastColor,n.fillRect(0,0,i,r),n.drawImage(h.canvas,a-d,l-c,2*d,2*c),s):null}if(5===e.type||6===e.type){let t,o=e,a=Pi(mt(o.position,0),i),l=Pi(mt(o.position,1),r),d=n.createConicGradient(o.angle-Math.PI/2,a,l);if(6===e.type){let e=Rn(o.stops,1),i=mt(e,0),r=mt(e,e.length-1),s=Math.max(r.stop-i.stop,.01);t=[];let n=Math.ceil(1/s);for(let r=0;r<n;r++)for(let n of e){let e=r*s+(n.stop-i.stop);if(e>1)break;t.push({stop:e,color:_i(n.color)})}let a=mt(t,t.length-1);a&&a.stop<1&&t.push({stop:1,color:a.color})}else t=Rn(o.stops,Math.max(i,r)).map(e=>({stop:e.stop,color:_i(e.color)}));return t.forEach(e=>{d.addColorStop(Math.min(1,Math.max(0,e.stop)),e.color)}),n.fillStyle=d,n.fillRect(0,0,i,r),s}return this.context.logger.warn("Unsupported border-image source; only URL and gradient images are supported"),null}async renderBackdropFilter(e){let t=rt(e.container.styles.backdropFilter);if(!t||0===t.functions.length)return;let i=e.container.bounds;if(i.width<=0||i.height<=0)return;let r=this.options.scale,s=Math.ceil(i.width*r),n=Math.ceil(i.height*r);if(s<=0||n<=0)return;let o,a,l=at(this.surfaceBudget,s,n);if(l)try{o=this.context.resourceDocument.createElement("canvas"),o.width=s,o.height=n;let e=o.getContext("2d");if(!e)return;let l=Math.round((i.left-this.options.x)*r),d=Math.round((i.top-this.options.y)*r);e.drawImage(this.canvas,l,d,s,n,0,0,s,n);try{a=await ot(o,t,1,r,this.options.signal)}catch(e){if(e instanceof Hc)return void this.context.logger.info(`${e.message}; rendering without the backdrop effect`);throw e}if(this.options.signal?.aborted)throw new DOMException("The operation was aborted.","AbortError");this.ctx.save();try{this.ctx.filter="none",this.ctx.drawImage(a,i.left,i.top,i.width,i.height)}finally{this.ctx.restore()}}finally{o&&Vc(o),a&&Vc(a),this.surfaceBudget.pixels-=l}}async render(e){try{this.options.backgroundColor&&(this.ctx.fillStyle=_i(this.options.backgroundColor),this.ctx.fillRect(this.options.x,this.options.y,this.options.width,this.options.height));let t=Ac(e);return await this.renderStack(t),this.effectsRenderer.applyEffects([]),this.canvas}catch(e){throw this.options.canvas||Vc(this.canvas),e}}},Zp=(e,t)=>{switch(e){case 0:return sc(t);case 2:return nc(t);default:return oc(t)}},eh=e=>e.backgroundClip.some(e=>3===e),th=class{canvas;ctx;options;context;constructor(e,t){this.context=e,this.options=t,this.canvas=t.canvas?t.canvas:e.resourceDocument.createElement("canvas");let i=this.canvas.getContext("2d");if(!i)throw new Error("Failed to get 2D rendering context from canvas");this.ctx=i,this.canvas.width=Math.floor(t.width*t.scale),this.canvas.height=Math.floor(t.height*t.scale),this.canvas.style.width=`${t.width}px`,this.canvas.style.height=`${t.height}px`,this.ctx.scale(this.options.scale,this.options.scale),this.ctx.translate(-t.x,-t.y),this.context.logger.debug(`EXPERIMENTAL ForeignObject renderer initialized (${t.width}x${t.height} at ${t.x},${t.y}) with scale ${t.scale}`)}async render(e){if(this.options.signal?.aborted)throw new DOMException("The operation was aborted.","AbortError");let t=rh(e),i=pd(this.options.width,this.options.height,0,0,e),r=hd(i);t();let s=await r;if(this.options.signal?.aborted)throw new DOMException("The operation was aborted.","AbortError");return this.options.backgroundColor&&(this.ctx.fillStyle=_i(this.options.backgroundColor),this.ctx.fillRect(this.options.x,this.options.y,this.options.width,this.options.height)),this.ctx.drawImage(s,this.options.x,this.options.y,this.options.width,this.options.height),this.canvas}},ih=["marginTop","marginRight","marginBottom","marginLeft","top","right","bottom","left"],rh=e=>{let t=e.style,i=ih.map(e=>[e,t[e]]);for(let e of ih)t[e]=e.startsWith("margin")?"0px":"auto";return()=>{for(let[e,r]of i)t[e]=r}},sh=class{id;enabled;start;constructor({id:e,enabled:t}){this.id=e,this.enabled=t,this.start=Date.now()}debug(...e){this.enabled&&(typeof window<"u"&&window.console&&"function"==typeof console.debug?(this.id,this.getTime()):this.info(...e))}getTime(){return Date.now()-this.start}info(...e){this.enabled&&typeof window<"u"&&window.console&&"function"==typeof console.info&&(this.id,this.getTime())}warn(...e){this.enabled&&(typeof window<"u"&&window.console&&"function"==typeof console.warn?console.warn(this.id,`${this.getTime()}ms`,...e):this.info(...e))}error(...e){this.enabled&&(typeof window<"u"&&window.console&&"function"==typeof console.error?console.error(this.id,`${this.getTime()}ms`,...e):this.info(...e))}},nh=class{context;_options;_cache=new Map;maxSize;_pendingOperations=new Map;_deferMode=!1;_collectedUrls=new Set;_evictionSuspendCount=0;get _evictionEnabled(){return 0===this._evictionSuspendCount}constructor(e,t){if(this.context=e,this._options=t,this.maxSize=t.maxCacheSize??100,this.maxSize<1)throw new Error("Cache maxSize must be at least 1");this.maxSize>1e4&&this.context.logger.warn(`Cache maxSize ${this.maxSize} is very large and may cause memory issues. Consider using a smaller value (recommended: 100-1000).`)}startDefer(){this._deferMode=!0,this._evictionSuspendCount++}async preloadAll(e=10,t,i){this._deferMode=!1;let r=Array.from(this._collectedUrls);this._collectedUrls.clear();try{if(0===r.length)return;let s=Math.max(1,Math.min(e,100));this.context.logger.debug(`Preloading ${r.length} image(s) with concurrency ${s}`);let n=0,o=i?new Promise((e,t)=>{let r=()=>t(new DOMException("The operation was aborted.","AbortError"));i.aborted?r():i.addEventListener("abort",r,{once:!0})}):null;o?.catch(()=>{}),t?.(0,r.length);for(let e=0;e<r.length;e+=s){Yl(i);let a=r.slice(e,e+s);a.map(e=>this._addImageWithPending(e));let l=Promise.allSettled(a.map(e=>this._cache.get(e)?.value??Promise.resolve()));await(o?Promise.race([l,o]):l),n+=a.length,t?.(n,r.length)}}finally{this._evictionSuspendCount=Math.max(0,this._evictionSuspendCount-1)}}addImage(e){if(this._deferMode)return!this.has(e)&&(hh(e)||dh(e))&&this._collectedUrls.add(e),Promise.resolve();let t=this._pendingOperations.get(e);if(t)return t;if(this.has(e)){let t=this._cache.get(e);return this._cache.delete(e),this._cache.set(e,t),Promise.resolve()}return hh(e)||dh(e)?this._addImageWithPending(e):Promise.resolve()}_addImageWithPending(e){let t=this._pendingOperations.get(e);if(t)return t;let i=this._addImageInternal(e);return this._pendingOperations.set(e,i),i.finally(()=>{this._pendingOperations.delete(e)}),i}async _addImageInternal(e){let t=this._options.imageTimeout??15e3,i=this.withTimeout(this.loadImage(e),t,`Timed out (${t}ms) loading image`);i.catch(t=>{let i=t instanceof Error?t.message:String(t),r=`Failed to load image ${e.substring(0,256)}: ${i}`;this.context.logger.error(r),this.context.onError?.(new Error(r))}),this.set(e,i)}withTimeout(e,t,i){if(t<=0)return e;let r,s=new Promise((e,s)=>{r=setTimeout(()=>s(new Error(i)),t)});return Promise.race([e,s]).finally(()=>{void 0!==r&&clearTimeout(r)})}match(e){let t=this._cache.get(e);if(t)return this._cache.delete(e),this._cache.set(e,t),t.value}set(e,t){if(this._cache.has(e))this._cache.delete(e);else if(this._evictionEnabled&&this._cache.size>=this.maxSize){let e=this._cache.keys().next().value;void 0!==e&&(this._cache.delete(e),this.context.logger.debug(`Cache: Evicted LRU entry: ${e}`))}this._cache.set(e,{value:t})}size(){return this._cache.size}getMaxSize(){return this.maxSize}clear(){this._cache.clear()}async loadImage(e){let t=this.context.originChecker,i=e=>t.isSameOrigin(e),r="function"==typeof this._options.customIsSameOrigin?await this._options.customIsSameOrigin(e,i):i(e),s=!r&&!1===this._options.allowTaint&&!ch(e)&&!hh(e)&&"string"!=typeof this._options.proxy,n=!ch(e)&&(!0===this._options.useCORS||s)&&ud.SUPPORT_CORS_IMAGES&&!r,o=!(ch(e)||r||hh(e)||"string"!=typeof this._options.proxy||n);if(!(r||!1!==this._options.allowTaint||ch(e)||hh(e)||o||n))return;let a=e;o&&(a=await this.proxy(a)),this.context.logger.debug(`Added image ${e.substring(0,256)}`);let l=this.context.config.window.Image??Image;return await new Promise((e,t)=>{let i=new l;i.onload=()=>e(i),i.onerror=t,(ph(a)||n)&&(i.crossOrigin="anonymous"),i.src=a,!0===i.complete&&("function"==typeof i.decode?i.decode().then(()=>e(i),()=>t(new Error(`Failed to decode image ${a.substring(0,256)}`))):setTimeout(()=>e(i),500))})}has(e){return this._cache.has(e)}keys(){return Promise.resolve(Array.from(this._cache.keys()))}proxy(e){let t=this._options.proxy;if(!t)throw new Error("No proxy defined");let i=e.substring(0,256);return new Promise((r,s)=>{let n=new XMLHttpRequest;n.onload=()=>{if(200===n.status){let e=new FileReader;e.addEventListener("load",()=>r(e.result),!1),e.addEventListener("error",e=>s(e),!1),e.readAsDataURL(n.response)}else s(`Failed to proxy resource ${i} with status code ${n.status}`)},n.onerror=s;let o=t.indexOf("?")>-1?"&":"?";if(n.open("GET",`${t}${o}url=${encodeURIComponent(e)}&responseType=blob`),n.responseType="blob",this._options.imageTimeout){let e=this._options.imageTimeout;n.timeout=e,n.ontimeout=()=>s(`Timed out (${e}ms) proxying ${i}`)}n.send()})}},oh=/^data:image\/svg\+xml/i,ah=/^data:image\/.*;base64,/i,lh=/^data:image\/.*/i,dh=e=>ud.SUPPORT_SVG_DRAWING||!uh(e),ch=e=>lh.test(e),ph=e=>ah.test(e),hh=e=>"blob"===e.substring(0,4),uh=e=>"svg"===e.slice(-3).toLowerCase()||oh.test(e),fh=class{baseUri;origin;constructor(e){if(!e||!e.document)throw new Error("Valid window object required for OriginChecker");if(!e.location||!e.location.href)throw new Error("Window object must have valid location");this.baseUri=e.location.href,this.origin=this.getOrigin(e.location.href)}getOrigin(e){try{return new URL(e,this.baseUri).origin}catch{return""}}isSameOrigin(e){return this.getOrigin(e)===this.origin}getContextOrigin(){return this.origin}},gh=class e{static instanceCount=1;instanceName="#"+e.instanceCount++;logger;cache;originChecker;config;onError;_windowBounds;constructor(e,t,i){this.config=i,this.logger=new sh({id:this.instanceName,enabled:e.logging}),this.originChecker=new fh(i.window),this.cache=e.cache??i.cache??new nh(this,e),this.onError=e.onError,this._windowBounds=t}get windowBounds(){return this._windowBounds}get resourceDocument(){return this.config.window.document||(typeof document<"u"?document:void 0)}adjustWindowBounds(e,t){this._windowBounds=this._windowBounds.add(e,t,0,0)}},mh=e=>{["scale","width","height","imageTimeout","x","y","windowWidth","windowHeight","scrollX","scrollY"].forEach(t=>{let i=e[t];if(null!=i&&"number"!=typeof i){let r=Number(i);Number.isNaN(r)||(e[t]=r)}})},bh=e=>({allowTaint:e.allowTaint??!1,imageTimeout:e.imageTimeout??15e3,proxy:e.proxy,useCORS:e.useCORS??!1,customIsSameOrigin:e.customIsSameOrigin,maxCacheSize:e.maxCacheSize}),yh=(e,t,i)=>({logging:e.logging??!0,cache:e.cache??t.cache,...i}),xh=(e,t)=>{let i=t;return{windowWidth:e.windowWidth??i.innerWidth??800,windowHeight:e.windowHeight??i.innerHeight??600,scrollX:e.scrollX??i.pageXOffset??0,scrollY:e.scrollY??i.pageYOffset??0}},vh=(e,t,i)=>({allowTaint:e.allowTaint??!1,onclone:e.onclone,ignoreElements:e.ignoreElements,iframeContainer:e.iframeContainer,inlineImages:i,copyStyles:i,cspNonce:e.cspNonce??t.cspNonce,signal:e.signal}),wh=(e,t,i,r,s,n,o)=>({canvas:e.canvas,backgroundColor:t,signal:e.signal,scale:e.scale??o??1,x:(e.x??0)+i,y:(e.y??0)+r,width:e.width??Math.ceil(s),height:e.height??Math.ceil(n),imageSmoothing:e.imageSmoothing,imageSmoothingQuality:e.imageSmoothingQuality}),kh=(e,t,i)=>{let r=t.ownerDocument,s=r.documentElement?As(e,getComputedStyle(r.documentElement).backgroundColor):0,n=r.body?As(e,getComputedStyle(r.body).backgroundColor):0,o="string"==typeof i?As(e,i):null===i?0:4294967295;return t===r.documentElement?zi(s)?zi(n)?o:n:s:o},Ch=(e,t,i,r)=>{if(e)try{e(i,r)}catch(e){t.logger.error(`onProgress callback failed: ${e instanceof Error?e.message:String(e)}`)}},Sh=async(e,t,i)=>{if(mh(t),!t.skipValidation){let i=t.validator||tt(),r=i.validateElement(e);if(!r.valid)throw new Error(r.error);let s=i.validateOptions(t);if(!s.valid)throw new Error(`Invalid options: ${s.error}`)}if(!e||"object"!=typeof e)throw new Error("Invalid element provided as first argument");let r=e.ownerDocument;if(!r)throw new Error("Element is not attached to a Document");let s=r.defaultView;if(!s)throw new Error("Document is not attached to a Window");let n=bh(t),o=yh(t,i,n),a=xh(t,s),l=new ut(a.scrollX,a.scrollY,a.windowWidth,a.windowHeight),d=new gh(o,l,i),c=t.enablePerformanceMonitoring??t.logging??!1,p=new ht(d,c);p.start("total",{width:a.windowWidth,height:a.windowHeight});let h=t.signal;Yl(h);let u=t.foreignObjectRendering??!1,f=vh(t,i,u);d.logger.debug(`Starting document clone with size ${l.width}x${l.height} scrolled to ${-l.left},${-l.top}`),Ch(t.onProgress,d,"clone",10),p.start("clone");let g=new nd(d,e,f),m=g.clonedReferenceElement;if(!m)throw new Error("Unable to find element in cloned iframe");let b=await g.toIFrame(r,l);p.end("clone"),Ch(t.onProgress,d,"clone",30),h?.aborted&&((t.removeContainer??!0)&&nd.destroy(b),Yl(h));let y,x,{width:v,height:w,left:k,top:C}=Os(m)||Ns(m)?gt(m.ownerDocument):ft(d,m),S=kh(d,m,t.backgroundColor),E=wh(t,S,k,C,v,w,s.devicePixelRatio??1);try{u?(d.logger.debug("Document cloned, using foreign object rendering"),p.start("render-foreignobject"),y=await new th(d,E).render(m),p.end("render-foreignobject")):(d.logger.debug(`Document cloned, element located at ${k},${C} with size ${v}x${w} using computed rendering`),d.logger.debug("Starting DOM parsing"),p.start("parse"),Yl(h),d.cache.startDefer(),x=qd(d,m,{normalizeDom:t.normalizeDom}),p.end("parse"),Ch(t.onProgress,d,"parse",50),p.start("preload"),await d.cache.preloadAll(10,(e,i)=>{Ch(t.onProgress,d,"preload",50+Math.round(e/i*10))},h),p.end("preload"),Ch(t.onProgress,d,"layout",60),S===x.styles.backgroundColor&&(x.styles.backgroundColor=0),d.logger.debug(`Starting renderer for element at ${E.x},${E.y} with size ${E.width}x${E.height}`),p.start("render"),Yl(h),y=await new Qp(d,E).render(x),p.end("render")),Ch(t.onProgress,d,"render",90)}finally{p.start("cleanup");try{x&&x.restoreTree()}finally{(t.removeContainer??!0)&&nd.destroy(b),p.end("cleanup")}}return p.end("total"),d.logger.debug("Finished rendering"),c&&p.logSummary(),Ch(t.onProgress,d,"render",100),y},Eh=(e,t={},i)=>{let r=i||ct.fromElement(e,{cspNonce:t.cspNonce,cache:t.cache});return Sh(e,t,r)}}),Th=i(()=>{Mh={"panel.title":"Feedbacks","panel.ariaLabel":"Siteping feedback panel","panel.feedbackList":"Feedback list","panel.loading":"Loading feedbacks","panel.close":"Close panel","panel.deleteAll":"Delete all","panel.deleteAllConfirmTitle":"Delete all","panel.deleteAllConfirmMessage":"Delete all feedbacks for this project? This action cannot be undone.","panel.search":"Search...","panel.searchAria":"Search feedbacks","panel.filterAll":"All","panel.loadError":"Failed to load","panel.retry":"Retry","panel.empty":"No feedback yet","panel.showMore":"Show more","panel.notOnPage":"Not visible on this page","panel.showLess":"Show less","panel.resolve":"Resolve","panel.reopen":"Reopen","panel.delete":"Delete","panel.cancel":"Cancel","panel.confirmDelete":"Delete","panel.loadMore":"Load more ({remaining} remaining)","panel.statusAll":"All","panel.statusOpen":"Open","panel.statusResolved":"Resolved","panel.statusInProgress":"In progress","panel.statusWontFix":"Won't fix","panel.statusClosed":"Closed","type.label":"Type","type.question":"Question","type.change":"Change","type.bug":"Bug","type.other":"Other","status.label":"Status","scope.label":"Scope","scope.thisPage":"This page","scope.thisType":"This type","scope.all":"All pages","panel.filterMine":"Mine","panel.filterMineHint":"Only the feedback sent from this browser","fab.aria":"Siteping \u2014 Feedback menu","fab.messages":"Show sidebar","fab.annotate":"Create new annotation","fab.annotations":"Show or hide markers","annotator.instruction":"Draw a rectangle on the area to comment \u2014 or press Enter to comment on the last focused element","annotator.instantInstruction":"Comment on the clicked spot","annotator.touchInstruction":"Tap an element or drag to select an area","annotator.cancel":"Cancel","popup.ariaLabel":"Feedback form","popup.placeholder":"Describe your feedback...","popup.textareaAria":"Feedback message","popup.submitHintMac":"\u2318+Enter to send","popup.submitHintOther":"Ctrl+Enter to send","popup.cancel":"Cancel","popup.submit":"Send","identity.title":"Identify yourself","identity.nameLabel":"Name","identity.namePlaceholder":"Your name","identity.emailLabel":"Email","identity.emailPlaceholder":"your@email.com","identity.cancel":"Cancel","identity.submit":"Continue","marker.approximate":"Approximate position (confidence: {confidence}%)","marker.aria":"Feedback #{number}: {type}, {status} \u2014 {message}","marker.count":"{count} feedback markers displayed","fab.badge":"{count} unresolved feedbacks","feedback.sent.confirmation":"Feedback sent successfully","feedback.error.message":"Failed to send feedback","feedback.queued":"Saved on this device. It will be sent on your next visit.","feedback.deleted.confirmation":"Feedback deleted","badge.count":"{count} unresolved feedbacks","bulk.aria":"Bulk actions","bulk.selectAll":"Select all","bulk.selectFeedback":"Select {label}","bulk.selected":"{count} selected","bulk.resolve":"Resolve","bulk.delete":"Delete","bulk.deselect":"Deselect","sort.newest":"Newest first","sort.oldest":"Oldest first","sort.byType":"By type","sort.openFirst":"Open first","sort.label":"Sort","group.byPage":"By page","group.feedbacks":"{count} feedbacks","stats.aria":"Feedback statistics","stats.open":"Open","stats.closed":"Closed","stats.bugs":"Bugs","stats.progress":"{percent}% closed","detail.back":"Back","detail.aria":"Feedback detail","detail.title":"Feedback #{number}","detail.status":"Status","detail.message":"Message","detail.screenshot":"Screenshot","detail.screenshotAlt":"Screenshot of the annotated area","detail.metadata":"Details","detail.annotation":"Annotation","detail.page":"Page","detail.author":"Author","detail.date":"Created","detail.viewport":"Viewport","detail.browser":"Browser","detail.resolvedAt":"Resolved at","detail.closedAt":"Closed at","detail.goToAnnotation":"Go to annotation","detail.element":"Element","detail.selector":"Selector","detail.position":"Position","detail.resolve":"Resolve","detail.reopen":"Reopen","detail.delete":"Delete","detail.diagnostics":"Diagnostics","detail.diagnostics.console":"Console","detail.diagnostics.network":"Failed network","detail.diagnostics.expand":"Show diagnostics","detail.diagnostics.collapse":"Hide diagnostics","detail.diagnostics.noEntries":"No entries","comments.title":"Replies","comments.placeholder":"Reply to the team...","comments.error":"Not sent. Try again.","comments.full":"This thread is full.","comments.team":"Team","shortcuts.title":"Keyboard shortcuts","shortcuts.navigate":"Navigate feedbacks","shortcuts.resolve":"Resolve / Reopen","shortcuts.delete":"Delete","shortcuts.search":"Focus search","shortcuts.select":"Toggle selection","shortcuts.help":"Show shortcuts","shortcuts.close":"Close","shortcuts.hint":"Keyboard shortcuts","export.label":"Export","export.csv":"Export CSV","export.json":"Export JSON"}}),Bh={};r(Bh,{de:()=>Rh});var Rh,Lh=i(()=>{Rh={"panel.title":"Feedbacks","panel.ariaLabel":"Siteping-Feedback-Panel","panel.feedbackList":"Feedbackliste","panel.loading":"Feedbacks werden geladen","panel.close":"Panel schlie\xdfen","panel.deleteAll":"Alle l\xf6schen","panel.deleteAllConfirmTitle":"Alle l\xf6schen","panel.deleteAllConfirmMessage":"Alle Feedbacks f\xfcr dieses Projekt l\xf6schen? Diese Aktion kann nicht r\xfcckg\xe4ngig gemacht werden.","panel.search":"Suchen...","panel.searchAria":"Feedbacks suchen","panel.filterAll":"Alle","panel.loadError":"Laden fehlgeschlagen","panel.retry":"Erneut versuchen","panel.empty":"Noch kein Feedback","panel.showMore":"Mehr anzeigen","panel.notOnPage":"Auf dieser Seite nicht sichtbar","panel.showLess":"Weniger anzeigen","panel.resolve":"Erledigen","panel.reopen":"Wieder \xf6ffnen","panel.delete":"L\xf6schen","panel.cancel":"Abbrechen","panel.confirmDelete":"L\xf6schen","panel.loadMore":"Mehr laden ({remaining} verbleibend)","panel.statusAll":"Alle","panel.statusOpen":"Offen","panel.statusResolved":"Erledigt","panel.statusInProgress":"In Arbeit","panel.statusWontFix":"Wird nicht behoben","panel.statusClosed":"Geschlossen","type.label":"Typ","type.question":"Frage","type.change":"\xc4nderung","type.bug":"Fehler","type.other":"Sonstiges","status.label":"Status","scope.label":"Bereich","scope.thisPage":"Diese Seite","scope.thisType":"Dieser Typ","scope.all":"Alle Seiten","panel.filterMine":"Meine","panel.filterMineHint":"Nur das Feedback, das von diesem Browser gesendet wurde","fab.aria":"Siteping \u2014 Feedback-Men\xfc","fab.messages":"Seitenleiste anzeigen","fab.annotate":"Neue Anmerkung erstellen","fab.annotations":"Markierungen ein- oder ausblenden","annotator.instruction":"Zeichne ein Rechteck um den Bereich, den du kommentieren m\xf6chtest \u2014 oder dr\xfccke die Eingabetaste, um das zuletzt fokussierte Element zu kommentieren","annotator.instantInstruction":"Kommentar zur angeklickten Stelle","annotator.touchInstruction":"Tippe auf ein Element oder ziehe, um einen Bereich auszuw\xe4hlen","annotator.cancel":"Abbrechen","popup.ariaLabel":"Feedbackformular","popup.placeholder":"Beschreibe dein Feedback...","popup.textareaAria":"Feedbacknachricht","popup.submitHintMac":"\u2318+Enter zum Senden","popup.submitHintOther":"Strg+Enter zum Senden","popup.cancel":"Abbrechen","popup.submit":"Senden","identity.title":"Identifiziere dich","identity.nameLabel":"Name","identity.namePlaceholder":"Dein Name","identity.emailLabel":"E-Mail","identity.emailPlaceholder":"deine@email.de","identity.cancel":"Abbrechen","identity.submit":"Fortfahren","marker.approximate":"Ungef\xe4hre Position (Konfidenz: {confidence}%)","marker.aria":"Feedback #{number}: {type}, {status} \u2014 {message}","marker.count":"{count} Feedback-Markierungen angezeigt","fab.badge":"{count} unerledigte Feedbacks","feedback.sent.confirmation":"Feedback erfolgreich gesendet","feedback.error.message":"Feedback konnte nicht gesendet werden","feedback.queued":"Auf diesem Ger\xe4t gespeichert. Wird beim n\xe4chsten Besuch gesendet.","feedback.deleted.confirmation":"Feedback gel\xf6scht","badge.count":"{count} unerledigte Feedbacks","bulk.aria":"Sammelaktionen","bulk.selectAll":"Alle ausw\xe4hlen","bulk.selectFeedback":"Ausw\xe4hlen: {label}","bulk.selected":"{count} ausgew\xe4hlt","bulk.resolve":"Erledigen","bulk.delete":"L\xf6schen","bulk.deselect":"Abw\xe4hlen","sort.newest":"Neueste zuerst","sort.oldest":"\xc4lteste zuerst","sort.byType":"Nach Typ","sort.openFirst":"Offene zuerst","sort.label":"Sortieren","group.byPage":"Nach Seite","group.feedbacks":"{count} Feedbacks","stats.aria":"Feedbackstatistik","stats.open":"Offen","stats.closed":"Geschlossen","stats.bugs":"Fehler","stats.progress":"{percent}% geschlossen","detail.back":"Zur\xfcck","detail.aria":"Feedbackdetails","detail.title":"Feedback #{number}","detail.status":"Status","detail.message":"Nachricht","detail.screenshot":"Screenshot","detail.screenshotAlt":"Screenshot des markierten Bereichs","detail.metadata":"Details","detail.annotation":"Anmerkung","detail.page":"Seite","detail.author":"Autor","detail.date":"Erstellt","detail.viewport":"Viewport","detail.browser":"Browser","detail.resolvedAt":"Erledigt am","detail.closedAt":"Geschlossen am","detail.goToAnnotation":"Zur Anmerkung","detail.element":"Element","detail.selector":"Selektor","detail.position":"Position","detail.resolve":"Erledigen","detail.reopen":"Wieder \xf6ffnen","detail.delete":"L\xf6schen","detail.diagnostics":"Diagnose","detail.diagnostics.console":"Konsole","detail.diagnostics.network":"Fehlgeschlagenes Netzwerk","detail.diagnostics.expand":"Diagnose anzeigen","detail.diagnostics.collapse":"Diagnose ausblenden","detail.diagnostics.noEntries":"Keine Eintr\xe4ge","comments.title":"Antworten","comments.placeholder":"Dem Team antworten...","comments.error":"Nicht gesendet. Versuch es noch einmal.","comments.full":"Dieser Verlauf ist voll.","comments.team":"Team","shortcuts.title":"Tastenk\xfcrzel","shortcuts.navigate":"Feedbacks navigieren","shortcuts.resolve":"Erledigen / Wieder \xf6ffnen","shortcuts.delete":"L\xf6schen","shortcuts.search":"Suche fokussieren","shortcuts.select":"Auswahl umschalten","shortcuts.help":"K\xfcrzel anzeigen","shortcuts.close":"Schlie\xdfen","shortcuts.hint":"Tastenk\xfcrzel","export.label":"Exportieren","export.csv":"CSV exportieren","export.json":"JSON exportieren"}}),Ph={};r(Ph,{es:()=>Ih});var Ih,Nh=i(()=>{Ih={"panel.title":"Comentarios","panel.ariaLabel":"Panel de comentarios de Siteping","panel.feedbackList":"Lista de comentarios","panel.loading":"Cargando comentarios","panel.close":"Cerrar panel","panel.deleteAll":"Eliminar todo","panel.deleteAllConfirmTitle":"Eliminar todo","panel.deleteAllConfirmMessage":"\xbfEliminar todos los comentarios de este proyecto? Esta acci\xf3n no se puede deshacer.","panel.search":"Buscar...","panel.searchAria":"Buscar comentarios","panel.filterAll":"Todos","panel.loadError":"No se pudo cargar","panel.retry":"Reintentar","panel.empty":"A\xfan no hay comentarios","panel.showMore":"Mostrar m\xe1s","panel.notOnPage":"No visible en esta p\xe1gina","panel.showLess":"Mostrar menos","panel.resolve":"Resolver","panel.reopen":"Reabrir","panel.delete":"Eliminar","panel.cancel":"Cancelar","panel.confirmDelete":"Eliminar","panel.loadMore":"Cargar m\xe1s ({remaining} restantes)","panel.statusAll":"Todos","panel.statusOpen":"Abierto","panel.statusResolved":"Resuelto","panel.statusInProgress":"En curso","panel.statusWontFix":"No se corregir\xe1","panel.statusClosed":"Cerrado","type.label":"Tipo","type.question":"Pregunta","type.change":"Cambio","type.bug":"Error","type.other":"Otro","status.label":"Estado","scope.label":"\xc1mbito","scope.thisPage":"Esta p\xe1gina","scope.thisType":"Este tipo","scope.all":"Todas las p\xe1ginas","panel.filterMine":"M\xedos","panel.filterMineHint":"Solo los comentarios enviados desde este navegador","fab.aria":"Siteping \u2014 Men\xfa de comentarios","fab.messages":"Mostrar barra lateral","fab.annotate":"Crear nueva anotaci\xf3n","fab.annotations":"Mostrar u ocultar marcadores","annotator.instruction":"Dibuja un rect\xe1ngulo sobre el \xe1rea que quieres comentar \u2014 o pulsa Intro para comentar el \xfaltimo elemento enfocado","annotator.instantInstruction":"Comentar el punto seleccionado","annotator.touchInstruction":"Toca un elemento o arrastra para seleccionar un \xe1rea","annotator.cancel":"Cancelar","popup.ariaLabel":"Formulario de comentarios","popup.placeholder":"Describe tu comentario...","popup.textareaAria":"Mensaje de comentario","popup.submitHintMac":"\u2318+Enter para enviar","popup.submitHintOther":"Ctrl+Enter para enviar","popup.cancel":"Cancelar","popup.submit":"Enviar","identity.title":"Identif\xedcate","identity.nameLabel":"Nombre","identity.namePlaceholder":"Tu nombre","identity.emailLabel":"Correo electr\xf3nico","identity.emailPlaceholder":"tu@email.com","identity.cancel":"Cancelar","identity.submit":"Continuar","marker.approximate":"Posici\xf3n aproximada (confianza: {confidence}%)","marker.aria":"Comentario #{number}: {type}, {status} \u2014 {message}","marker.count":"{count} marcadores de feedback mostrados","fab.badge":"{count} comentarios sin resolver","feedback.sent.confirmation":"Comentario enviado correctamente","feedback.error.message":"No se pudo enviar el comentario","feedback.queued":"Guardado en este dispositivo. Se enviar\xe1 en tu pr\xf3xima visita.","feedback.deleted.confirmation":"Comentario eliminado","badge.count":"{count} comentarios sin resolver","bulk.aria":"Acciones en lote","bulk.selectAll":"Seleccionar todo","bulk.selectFeedback":"Seleccionar {label}","bulk.selected":"{count} seleccionados","bulk.resolve":"Resolver","bulk.delete":"Eliminar","bulk.deselect":"Deseleccionar","sort.newest":"M\xe1s recientes","sort.oldest":"M\xe1s antiguos","sort.byType":"Por tipo","sort.openFirst":"Abiertos primero","sort.label":"Ordenar","group.byPage":"Por p\xe1gina","group.feedbacks":"{count} comentarios","stats.aria":"Estad\xedsticas de comentarios","stats.open":"Abiertos","stats.closed":"Cerrados","stats.bugs":"Errores","stats.progress":"{percent}% cerrados","detail.back":"Atr\xe1s","detail.aria":"Detalle del comentario","detail.title":"Comentario #{number}","detail.status":"Estado","detail.message":"Mensaje","detail.screenshot":"Captura","detail.screenshotAlt":"Captura del \xe1rea anotada","detail.metadata":"Detalles","detail.annotation":"Anotaci\xf3n","detail.page":"P\xe1gina","detail.author":"Autor","detail.date":"Creado","detail.viewport":"Viewport","detail.browser":"Navegador","detail.resolvedAt":"Resuelto el","detail.closedAt":"Cerrado el","detail.goToAnnotation":"Ir a la anotaci\xf3n","detail.element":"Elemento","detail.selector":"Selector","detail.position":"Posici\xf3n","detail.resolve":"Resolver","detail.reopen":"Reabrir","detail.delete":"Eliminar","detail.diagnostics":"Diagn\xf3stico","detail.diagnostics.console":"Consola","detail.diagnostics.network":"Red fallida","detail.diagnostics.expand":"Mostrar diagn\xf3stico","detail.diagnostics.collapse":"Ocultar diagn\xf3stico","detail.diagnostics.noEntries":"Sin entradas","comments.title":"Respuestas","comments.placeholder":"Responder al equipo...","comments.error":"No se envi\xf3. Int\xe9ntalo de nuevo.","comments.full":"Este hilo est\xe1 completo.","comments.team":"Equipo","shortcuts.title":"Atajos de teclado","shortcuts.navigate":"Navegar comentarios","shortcuts.resolve":"Resolver / Reabrir","shortcuts.delete":"Eliminar","shortcuts.search":"Buscar","shortcuts.select":"Alternar selecci\xf3n","shortcuts.help":"Mostrar atajos","shortcuts.close":"Cerrar","shortcuts.hint":"Atajos de teclado","export.label":"Exportar","export.csv":"Exportar CSV","export.json":"Exportar JSON"}}),Dh={};r(Dh,{fr:()=>Oh});var Oh,Fh=i(()=>{Oh={"panel.title":"Feedbacks","panel.ariaLabel":"Panneau de feedback Siteping","panel.feedbackList":"Liste des feedbacks","panel.loading":"Chargement des feedbacks","panel.close":"Fermer le panneau","panel.deleteAll":"Tout supprimer","panel.deleteAllConfirmTitle":"Tout supprimer","panel.deleteAllConfirmMessage":"Supprimer tous les feedbacks de ce projet ? Cette action est irr\xe9versible.","panel.search":"Rechercher...","panel.searchAria":"Rechercher dans les feedbacks","panel.filterAll":"Tous","panel.loadError":"Erreur de chargement","panel.retry":"R\xe9essayer","panel.empty":"Aucun feedback pour le moment","panel.showMore":"Voir plus","panel.notOnPage":"Pas visible sur cette page","panel.showLess":"Voir moins","panel.resolve":"R\xe9soudre","panel.reopen":"Rouvrir","panel.delete":"Supprimer","panel.cancel":"Annuler","panel.confirmDelete":"Supprimer","panel.loadMore":"Voir plus ({remaining} restants)","panel.statusAll":"Tous","panel.statusOpen":"Ouvert","panel.statusResolved":"R\xe9solu","panel.statusInProgress":"En cours","panel.statusWontFix":"Sans suite","panel.statusClosed":"Cl\xf4tur\xe9","type.label":"Type","type.question":"Question","type.change":"Changement","type.bug":"Bug","type.other":"Autre","status.label":"Statut","scope.label":"Port\xe9e","scope.thisPage":"Cette page","scope.thisType":"Ce type","scope.all":"Toutes les pages","panel.filterMine":"Mes feedbacks","panel.filterMineHint":"Uniquement les feedbacks envoy\xe9s depuis ce navigateur","fab.aria":"Siteping \u2014 Menu feedback","fab.messages":"Afficher la barre lat\xe9rale","fab.annotate":"Cr\xe9er une nouvelle annotation","fab.annotations":"Afficher ou masquer les marqueurs","annotator.instruction":"Tracez un rectangle sur la zone \xe0 commenter \u2014 ou appuyez sur Entr\xe9e pour commenter le dernier \xe9l\xe9ment actif","annotator.instantInstruction":"Commenter l'endroit cliqu\xe9","annotator.touchInstruction":"Touchez un \xe9l\xe9ment ou faites glisser pour s\xe9lectionner une zone","annotator.cancel":"Annuler","popup.ariaLabel":"Formulaire de feedback","popup.placeholder":"D\xe9crivez votre retour...","popup.textareaAria":"Message de feedback","popup.submitHintMac":"\u2318+Entr\xe9e pour envoyer","popup.submitHintOther":"Ctrl+Entr\xe9e pour envoyer","popup.cancel":"Annuler","popup.submit":"Envoyer","identity.title":"Identifiez-vous","identity.nameLabel":"Nom","identity.namePlaceholder":"Votre nom","identity.emailLabel":"Email","identity.emailPlaceholder":"votre@email.com","identity.cancel":"Annuler","identity.submit":"Continuer","marker.approximate":"Position approximative (confiance : {confidence}%)","marker.aria":"Feedback n\xb0{number} : {type}, {status} \u2014 {message}","marker.count":"{count} marqueurs de feedback affich\xe9s","fab.badge":"{count} feedbacks non r\xe9solus","feedback.sent.confirmation":"Feedback envoy\xe9 avec succ\xe8s","feedback.error.message":"\xc9chec de l'envoi du feedback","feedback.queued":"Enregistr\xe9 sur cet appareil. Il sera envoy\xe9 \xe0 votre prochaine visite.","feedback.deleted.confirmation":"Feedback supprim\xe9","badge.count":"{count} feedbacks non r\xe9solus","bulk.aria":"Actions group\xe9es","bulk.selectAll":"Tout s\xe9lectionner","bulk.selectFeedback":"S\xe9lectionner {label}","bulk.selected":"{count} s\xe9lectionn\xe9(s)","bulk.resolve":"R\xe9soudre","bulk.delete":"Supprimer","bulk.deselect":"D\xe9s\xe9lectionner","sort.newest":"Plus r\xe9cents","sort.oldest":"Plus anciens","sort.byType":"Par type","sort.openFirst":"Ouverts d'abord","sort.label":"Trier","group.byPage":"Par page","group.feedbacks":"{count} feedbacks","stats.aria":"Statistiques des feedbacks","stats.open":"Ouverts","stats.closed":"Cl\xf4tur\xe9s","stats.bugs":"Bugs","stats.progress":"{percent}% cl\xf4tur\xe9s","detail.back":"Retour","detail.aria":"D\xe9tail du feedback","detail.title":"Feedback n\xb0{number}","detail.status":"Statut","detail.message":"Message","detail.screenshot":"Capture d'\xe9cran","detail.screenshotAlt":"Capture d'\xe9cran de la zone annot\xe9e","detail.metadata":"D\xe9tails","detail.annotation":"Annotation","detail.page":"Page","detail.author":"Auteur","detail.date":"Cr\xe9\xe9 le","detail.viewport":"Viewport","detail.browser":"Navigateur","detail.resolvedAt":"R\xe9solu le","detail.closedAt":"Cl\xf4tur\xe9 le","detail.goToAnnotation":"Aller \xe0 l'annotation","detail.element":"\xc9l\xe9ment","detail.selector":"S\xe9lecteur","detail.position":"Position","detail.resolve":"R\xe9soudre","detail.reopen":"Rouvrir","detail.delete":"Supprimer","detail.diagnostics":"Diagnostics","detail.diagnostics.console":"Console","detail.diagnostics.network":"R\xe9seau en \xe9chec","detail.diagnostics.expand":"Afficher les diagnostics","detail.diagnostics.collapse":"Masquer les diagnostics","detail.diagnostics.noEntries":"Aucune entr\xe9e","comments.title":"R\xe9ponses","comments.placeholder":"R\xe9pondre \xe0 l'\xe9quipe...","comments.error":"Non envoy\xe9. R\xe9essayez.","comments.full":"Ce fil est complet.","comments.team":"\xc9quipe","shortcuts.title":"Raccourcis clavier","shortcuts.navigate":"Naviguer les feedbacks","shortcuts.resolve":"R\xe9soudre / Rouvrir","shortcuts.delete":"Supprimer","shortcuts.search":"Rechercher","shortcuts.select":"S\xe9lectionner","shortcuts.help":"Raccourcis","shortcuts.close":"Fermer","shortcuts.hint":"Raccourcis clavier","export.label":"Exporter","export.csv":"Exporter CSV","export.json":"Exporter JSON"}}),$h={};r($h,{it:()=>zh});var zh,_h=i(()=>{zh={"panel.title":"Feedback","panel.ariaLabel":"Pannello feedback di Siteping","panel.feedbackList":"Elenco feedback","panel.loading":"Caricamento feedback","panel.close":"Chiudi pannello","panel.deleteAll":"Elimina tutto","panel.deleteAllConfirmTitle":"Elimina tutto","panel.deleteAllConfirmMessage":"Eliminare tutti i feedback per questo progetto? Questa azione non pu\xf2 essere annullata.","panel.search":"Cerca...","panel.searchAria":"Cerca feedback","panel.filterAll":"Tutti","panel.loadError":"Caricamento non riuscito","panel.retry":"Riprova","panel.empty":"Nessun feedback ancora","panel.showMore":"Mostra di pi\xf9","panel.notOnPage":"Non visibile in questa pagina","panel.showLess":"Mostra meno","panel.resolve":"Risolvi","panel.reopen":"Riapri","panel.delete":"Elimina","panel.cancel":"Annulla","panel.confirmDelete":"Elimina","panel.loadMore":"Carica altro ({remaining} rimanenti)","panel.statusAll":"Tutti","panel.statusOpen":"Aperto","panel.statusResolved":"Risolto","panel.statusInProgress":"In corso","panel.statusWontFix":"Non verr\xe0 corretto","panel.statusClosed":"Chiuso","type.label":"Tipo","type.question":"Domanda","type.change":"Modifica","type.bug":"Bug","type.other":"Altro","status.label":"Stato","scope.label":"Ambito","scope.thisPage":"Questa pagina","scope.thisType":"Questo tipo","scope.all":"Tutte le pagine","panel.filterMine":"Miei","panel.filterMineHint":"Solo i feedback inviati da questo browser","fab.aria":"Siteping \u2014 Menu feedback","fab.messages":"Mostra barra laterale","fab.annotate":"Crea nuova annotazione","fab.annotations":"Mostra o nascondi i marcatori","annotator.instruction":"Disegna un rettangolo sull'area da commentare \u2014 oppure premi Invio per commentare l'ultimo elemento attivo","annotator.instantInstruction":"Commenta il punto selezionato","annotator.touchInstruction":"Tocca un elemento o trascina per selezionare un'area","annotator.cancel":"Annulla","popup.ariaLabel":"Modulo feedback","popup.placeholder":"Descrivi il tuo feedback...","popup.textareaAria":"Messaggio di feedback","popup.submitHintMac":"\u2318+Invio per inviare","popup.submitHintOther":"Ctrl+Invio per inviare","popup.cancel":"Annulla","popup.submit":"Invia","identity.title":"Identificati","identity.nameLabel":"Nome","identity.namePlaceholder":"Il tuo nome","identity.emailLabel":"Email","identity.emailPlaceholder":"tua@email.com","identity.cancel":"Annulla","identity.submit":"Continua","marker.approximate":"Posizione approssimativa (confidenza: {confidence}%)","marker.aria":"Feedback #{number}: {type}, {status} \u2014 {message}","marker.count":"{count} marcatori di feedback visualizzati","fab.badge":"{count} feedback non risolti","feedback.sent.confirmation":"Feedback inviato con successo","feedback.error.message":"Invio del feedback non riuscito","feedback.queued":"Salvato su questo dispositivo. Verr\xe0 inviato alla prossima visita.","feedback.deleted.confirmation":"Feedback eliminato","badge.count":"{count} feedback non risolti","bulk.aria":"Azioni di gruppo","bulk.selectAll":"Seleziona tutto","bulk.selectFeedback":"Seleziona {label}","bulk.selected":"{count} selezionati","bulk.resolve":"Risolvi","bulk.delete":"Elimina","bulk.deselect":"Deseleziona","sort.newest":"Pi\xf9 recenti","sort.oldest":"Pi\xf9 vecchi","sort.byType":"Per tipo","sort.openFirst":"Aperti prima","sort.label":"Ordina","group.byPage":"Per pagina","group.feedbacks":"{count} feedback","stats.aria":"Statistiche dei feedback","stats.open":"Aperti","stats.closed":"Chiusi","stats.bugs":"Bug","stats.progress":"{percent}% chiusi","detail.back":"Indietro","detail.aria":"Dettaglio del feedback","detail.title":"Feedback #{number}","detail.status":"Stato","detail.message":"Messaggio","detail.screenshot":"Schermata","detail.screenshotAlt":"Schermata dell'area annotata","detail.metadata":"Dettagli","detail.annotation":"Annotazione","detail.page":"Pagina","detail.author":"Autore","detail.date":"Creato","detail.viewport":"Viewport","detail.browser":"Browser","detail.resolvedAt":"Risolto il","detail.closedAt":"Chiuso il","detail.goToAnnotation":"Vai all'annotazione","detail.element":"Elemento","detail.selector":"Selettore","detail.position":"Posizione","detail.resolve":"Risolvi","detail.reopen":"Riapri","detail.delete":"Elimina","detail.diagnostics":"Diagnostica","detail.diagnostics.console":"Console","detail.diagnostics.network":"Rete fallita","detail.diagnostics.expand":"Mostra diagnostica","detail.diagnostics.collapse":"Nascondi diagnostica","detail.diagnostics.noEntries":"Nessuna voce","comments.title":"Risposte","comments.placeholder":"Rispondi al team...","comments.error":"Non inviata. Riprova.","comments.full":"Questa discussione \xe8 piena.","comments.team":"Team","shortcuts.title":"Scorciatoie da tastiera","shortcuts.navigate":"Naviga i feedback","shortcuts.resolve":"Risolvi / Riapri","shortcuts.delete":"Elimina","shortcuts.search":"Cerca","shortcuts.select":"Attiva selezione","shortcuts.help":"Mostra scorciatoie","shortcuts.close":"Chiudi","shortcuts.hint":"Scorciatoie da tastiera","export.label":"Esporta","export.csv":"Esporta CSV","export.json":"Esporta JSON"}}),Wh={};r(Wh,{ja:()=>Hh});var Hh,Vh=i(()=>{Hh={"panel.title":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af","panel.ariaLabel":"Siteping \u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u30d1\u30cd\u30eb","panel.feedbackList":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u4e00\u89a7","panel.loading":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u8aad\u307f\u8fbc\u307f\u4e2d","panel.close":"\u30d1\u30cd\u30eb\u3092\u9589\u3058\u308b","panel.deleteAll":"\u5168\u524a\u9664","panel.deleteAllConfirmTitle":"\u3059\u3079\u3066\u524a\u9664","panel.deleteAllConfirmMessage":"\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u3059\u3079\u3066\u524a\u9664\u3057\u307e\u3059\u304b\uff1f\u3053\u306e\u64cd\u4f5c\u306f\u53d6\u308a\u6d88\u305b\u307e\u305b\u3093\u3002","panel.search":"\u691c\u7d22...","panel.searchAria":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u691c\u7d22","panel.filterAll":"\u3059\u3079\u3066","panel.loadError":"\u8aad\u307f\u8fbc\u307f\u306b\u5931\u6557\u3057\u307e\u3057\u305f","panel.retry":"\u518d\u8a66\u884c","panel.empty":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306f\u307e\u3060\u3042\u308a\u307e\u305b\u3093","panel.showMore":"\u3082\u3063\u3068\u898b\u308b","panel.notOnPage":"\u3053\u306e\u30da\u30fc\u30b8\u3067\u306f\u8868\u793a\u3055\u308c\u3066\u3044\u307e\u305b\u3093","panel.showLess":"\u6298\u308a\u305f\u305f\u3080","panel.resolve":"\u89e3\u6c7a","panel.reopen":"\u518d\u30aa\u30fc\u30d7\u30f3","panel.delete":"\u524a\u9664","panel.cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","panel.confirmDelete":"\u524a\u9664","panel.loadMore":"\u3055\u3089\u306b\u8aad\u307f\u8fbc\u3080\uff08\u6b8b\u308a {remaining} \u4ef6\uff09","panel.statusAll":"\u3059\u3079\u3066","panel.statusOpen":"\u672a\u5bfe\u5fdc","panel.statusResolved":"\u89e3\u6c7a\u6e08\u307f","panel.statusInProgress":"\u5bfe\u5fdc\u4e2d","panel.statusWontFix":"\u5bfe\u5fdc\u3057\u306a\u3044","panel.statusClosed":"\u30af\u30ed\u30fc\u30ba\u6e08\u307f","type.label":"\u7a2e\u985e","type.question":"\u8cea\u554f","type.change":"\u5909\u66f4\u4f9d\u983c","type.bug":"\u4e0d\u5177\u5408","type.other":"\u305d\u306e\u4ed6","status.label":"\u30b9\u30c6\u30fc\u30bf\u30b9","scope.label":"\u7bc4\u56f2","scope.thisPage":"\u3053\u306e\u30da\u30fc\u30b8","scope.thisType":"\u3053\u306e\u30da\u30fc\u30b8\u7a2e\u5225","scope.all":"\u3059\u3079\u3066\u306e\u30da\u30fc\u30b8","panel.filterMine":"\u81ea\u5206\u306e\u6295\u7a3f","panel.filterMineHint":"\u3053\u306e\u30d6\u30e9\u30a6\u30b6\u304b\u3089\u9001\u4fe1\u3057\u305f\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306e\u307f","fab.aria":"Siteping \u2014 \u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u30e1\u30cb\u30e5\u30fc","fab.messages":"\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u8868\u793a","fab.annotate":"\u65b0\u3057\u3044\u6ce8\u91c8\u3092\u4f5c\u6210","fab.annotations":"\u30de\u30fc\u30ab\u30fc\u306e\u8868\u793a\u3092\u5207\u308a\u66ff\u3048","annotator.instruction":"\u30b3\u30e1\u30f3\u30c8\u3057\u305f\u3044\u7bc4\u56f2\u3092\u56db\u89d2\u3067\u56f2\u3093\u3067\u304f\u3060\u3055\u3044 \u2014 \u307e\u305f\u306f Enter \u30ad\u30fc\u3067\u6700\u5f8c\u306b\u30d5\u30a9\u30fc\u30ab\u30b9\u3057\u305f\u8981\u7d20\u306b\u30b3\u30e1\u30f3\u30c8\u3067\u304d\u307e\u3059","annotator.instantInstruction":"\u30af\u30ea\u30c3\u30af\u3057\u305f\u7b87\u6240\u306b\u30b3\u30e1\u30f3\u30c8","annotator.touchInstruction":"\u8981\u7d20\u3092\u30bf\u30c3\u30d7\u3059\u308b\u304b\u3001\u30c9\u30e9\u30c3\u30b0\u3057\u3066\u7bc4\u56f2\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044","annotator.cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","popup.ariaLabel":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u30d5\u30a9\u30fc\u30e0","popup.placeholder":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044...","popup.textareaAria":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u672c\u6587","popup.submitHintMac":"\u2318+Enter \u3067\u9001\u4fe1","popup.submitHintOther":"Ctrl+Enter \u3067\u9001\u4fe1","popup.cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","popup.submit":"\u9001\u4fe1","identity.title":"\u304a\u540d\u524d\u3068\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b","identity.nameLabel":"\u540d\u524d","identity.namePlaceholder":"\u304a\u540d\u524d","identity.emailLabel":"\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9","identity.emailPlaceholder":"your@email.com","identity.cancel":"\u30ad\u30e3\u30f3\u30bb\u30eb","identity.submit":"\u7d9a\u3051\u308b","marker.approximate":"\u304a\u304a\u3088\u305d\u306e\u4f4d\u7f6e\uff08\u78ba\u5ea6: {confidence}%\uff09","marker.aria":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af #{number}: {type}\u3001{status} \u2014 {message}","marker.count":"{count} \u4ef6\u306e\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u30de\u30fc\u30ab\u30fc\u3092\u8868\u793a\u4e2d","fab.badge":"\u672a\u89e3\u6c7a\u306e\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af {count} \u4ef6","feedback.sent.confirmation":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u9001\u4fe1\u3057\u307e\u3057\u305f","feedback.error.message":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306e\u9001\u4fe1\u306b\u5931\u6557\u3057\u307e\u3057\u305f","feedback.queued":"\u3053\u306e\u7aef\u672b\u306b\u4fdd\u5b58\u3057\u307e\u3057\u305f\u3002\u6b21\u56de\u306e\u30a2\u30af\u30bb\u30b9\u6642\u306b\u9001\u4fe1\u3055\u308c\u307e\u3059\u3002","feedback.deleted.confirmation":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u524a\u9664\u3057\u307e\u3057\u305f","badge.count":"\u672a\u89e3\u6c7a\u306e\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af {count} \u4ef6","bulk.aria":"\u4e00\u62ec\u64cd\u4f5c","bulk.selectAll":"\u3059\u3079\u3066\u9078\u629e","bulk.selectFeedback":"{label}\u3092\u9078\u629e","bulk.selected":"{count} \u4ef6\u9078\u629e\u4e2d","bulk.resolve":"\u89e3\u6c7a","bulk.delete":"\u524a\u9664","bulk.deselect":"\u9078\u629e\u3092\u89e3\u9664","sort.newest":"\u65b0\u3057\u3044\u9806","sort.oldest":"\u53e4\u3044\u9806","sort.byType":"\u7a2e\u985e\u5225","sort.openFirst":"\u672a\u5bfe\u5fdc\u3092\u5148\u982d\u306b","sort.label":"\u4e26\u3073\u66ff\u3048","group.byPage":"\u30da\u30fc\u30b8\u5225","group.feedbacks":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af {count} \u4ef6","stats.aria":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306e\u7d71\u8a08","stats.open":"\u672a\u5bfe\u5fdc","stats.closed":"\u30af\u30ed\u30fc\u30ba\u6e08\u307f","stats.bugs":"\u4e0d\u5177\u5408","stats.progress":"{percent}% \u30af\u30ed\u30fc\u30ba\u6e08\u307f","detail.back":"\u623b\u308b","detail.aria":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u306e\u8a73\u7d30","detail.title":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af #{number}","detail.status":"\u30b9\u30c6\u30fc\u30bf\u30b9","detail.message":"\u30e1\u30c3\u30bb\u30fc\u30b8","detail.screenshot":"\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8","detail.screenshotAlt":"\u6ce8\u91c8\u304c\u4ed8\u3044\u305f\u7bc4\u56f2\u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8","detail.metadata":"\u8a73\u7d30","detail.annotation":"\u6ce8\u91c8","detail.page":"\u30da\u30fc\u30b8","detail.author":"\u6295\u7a3f\u8005","detail.date":"\u4f5c\u6210\u65e5\u6642","detail.viewport":"\u30d3\u30e5\u30fc\u30dd\u30fc\u30c8","detail.browser":"\u30d6\u30e9\u30a6\u30b6","detail.resolvedAt":"\u89e3\u6c7a\u65e5\u6642","detail.closedAt":"\u30af\u30ed\u30fc\u30ba\u65e5\u6642","detail.goToAnnotation":"\u6ce8\u91c8\u3078\u79fb\u52d5","detail.element":"\u8981\u7d20","detail.selector":"\u30bb\u30ec\u30af\u30bf\u30fc","detail.position":"\u4f4d\u7f6e","detail.resolve":"\u89e3\u6c7a","detail.reopen":"\u518d\u30aa\u30fc\u30d7\u30f3","detail.delete":"\u524a\u9664","detail.diagnostics":"\u8a3a\u65ad\u60c5\u5831","detail.diagnostics.console":"\u30b3\u30f3\u30bd\u30fc\u30eb","detail.diagnostics.network":"\u5931\u6557\u3057\u305f\u901a\u4fe1","detail.diagnostics.expand":"\u8a3a\u65ad\u60c5\u5831\u3092\u8868\u793a","detail.diagnostics.collapse":"\u8a3a\u65ad\u60c5\u5831\u3092\u96a0\u3059","detail.diagnostics.noEntries":"\u9805\u76ee\u306f\u3042\u308a\u307e\u305b\u3093","comments.title":"\u8fd4\u4fe1","comments.placeholder":"\u30c1\u30fc\u30e0\u306b\u8fd4\u4fe1...","comments.error":"\u9001\u4fe1\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3082\u3046\u4e00\u5ea6\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002","comments.full":"\u3053\u306e\u30b9\u30ec\u30c3\u30c9\u306f\u4e0a\u9650\u306b\u9054\u3057\u307e\u3057\u305f\u3002","comments.team":"\u30c1\u30fc\u30e0","shortcuts.title":"\u30ad\u30fc\u30dc\u30fc\u30c9\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8","shortcuts.navigate":"\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u79fb\u52d5","shortcuts.resolve":"\u89e3\u6c7a / \u518d\u30aa\u30fc\u30d7\u30f3","shortcuts.delete":"\u524a\u9664","shortcuts.search":"\u691c\u7d22\u306b\u30d5\u30a9\u30fc\u30ab\u30b9","shortcuts.select":"\u9078\u629e\u3092\u5207\u308a\u66ff\u3048","shortcuts.help":"\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8\u3092\u8868\u793a","shortcuts.close":"\u9589\u3058\u308b","shortcuts.hint":"\u30ad\u30fc\u30dc\u30fc\u30c9\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8","export.label":"\u51fa\u529b","export.csv":"CSV \u3067\u51fa\u529b","export.json":"JSON \u3067\u51fa\u529b"}}),jh={};r(jh,{ko:()=>Uh});var Uh,Yh=i(()=>{Uh={"panel.title":"\ud53c\ub4dc\ubc31","panel.ariaLabel":"Siteping \ud53c\ub4dc\ubc31 \ud328\ub110","panel.feedbackList":"\ud53c\ub4dc\ubc31 \ubaa9\ub85d","panel.loading":"\ud53c\ub4dc\ubc31\uc744 \ubd88\ub7ec\uc624\ub294 \uc911","panel.close":"\ud328\ub110 \ub2eb\uae30","panel.deleteAll":"\ubaa8\ub450 \uc0ad\uc81c","panel.deleteAllConfirmTitle":"\ubaa8\ub450 \uc0ad\uc81c","panel.deleteAllConfirmMessage":"\uc774 \ud504\ub85c\uc81d\ud2b8\uc758 \ud53c\ub4dc\ubc31\uc744 \ubaa8\ub450 \uc0ad\uc81c\ud560\uae4c\uc694? \uc774 \uc791\uc5c5\uc740 \ub418\ub3cc\ub9b4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.","panel.search":"\uac80\uc0c9...","panel.searchAria":"\ud53c\ub4dc\ubc31 \uac80\uc0c9","panel.filterAll":"\uc804\uccb4","panel.loadError":"\ubd88\ub7ec\uc624\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4","panel.retry":"\ub2e4\uc2dc \uc2dc\ub3c4","panel.empty":"\uc544\uc9c1 \ud53c\ub4dc\ubc31\uc774 \uc5c6\uc2b5\ub2c8\ub2e4","panel.showMore":"\ub354 \ubcf4\uae30","panel.notOnPage":"\uc774 \ud398\uc774\uc9c0\uc5d0\uc11c \ubcf4\uc774\uc9c0 \uc54a\uc74c","panel.showLess":"\uc811\uae30","panel.resolve":"\ud574\uacb0","panel.reopen":"\ub2e4\uc2dc \uc5f4\uae30","panel.delete":"\uc0ad\uc81c","panel.cancel":"\ucde8\uc18c","panel.confirmDelete":"\uc0ad\uc81c","panel.loadMore":"\ub354 \ubd88\ub7ec\uc624\uae30 ({remaining}\uac74 \ub0a8\uc74c)","panel.statusAll":"\uc804\uccb4","panel.statusOpen":"\uc5f4\ub9bc","panel.statusResolved":"\ud574\uacb0\ub428","panel.statusInProgress":"\uc9c4\ud589 \uc911","panel.statusWontFix":"\ucc98\ub9ac \uc548 \ud568","panel.statusClosed":"\uc885\ub8cc\ub428","type.label":"\uc720\ud615","type.question":"\uc9c8\ubb38","type.change":"\uc218\uc815 \uc694\uccad","type.bug":"\ubc84\uadf8","type.other":"\uae30\ud0c0","status.label":"\uc0c1\ud0dc","scope.label":"\ubc94\uc704","scope.thisPage":"\uc774 \ud398\uc774\uc9c0","scope.thisType":"\uac19\uc740 \uc720\ud615\uc758 \ud398\uc774\uc9c0","scope.all":"\ubaa8\ub4e0 \ud398\uc774\uc9c0","panel.filterMine":"\ub0b4 \ud53c\ub4dc\ubc31","panel.filterMineHint":"\uc774 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \ubcf4\ub0b8 \ud53c\ub4dc\ubc31\ub9cc \ubd05\ub2c8\ub2e4","fab.aria":"Siteping \u2014 \ud53c\ub4dc\ubc31 \uba54\ub274","fab.messages":"\uc0ac\uc774\ub4dc\ubc14 \ubcf4\uae30","fab.annotate":"\uc0c8 \uc8fc\uc11d \ub9cc\ub4e4\uae30","fab.annotations":"\ub9c8\ucee4 \ubcf4\uc774\uae30 \ub610\ub294 \uc228\uae30\uae30","annotator.instruction":"\ub313\uae00\uc744 \ub0a8\uae38 \uc601\uc5ed\uc5d0 \uc0ac\uac01\ud615\uc744 \uadf8\ub9ac\uc138\uc694. Enter \ud0a4\ub97c \ub204\ub974\uba74 \ub9c8\uc9c0\ub9c9\uc73c\ub85c \ud3ec\ucee4\uc2a4\ud55c \uc694\uc18c\uc5d0 \ub313\uae00\uc744 \ub0a8\uae41\ub2c8\ub2e4","annotator.instantInstruction":"\ud074\ub9ad\ud55c \uc704\uce58\uc5d0 \ub313\uae00\uc744 \ub0a8\uae41\ub2c8\ub2e4","annotator.touchInstruction":"\uc694\uc18c\ub97c \ud0ed\ud558\uac70\ub098 \ub4dc\ub798\uadf8\ud574\uc11c \uc601\uc5ed\uc744 \uc120\ud0dd\ud558\uc138\uc694","annotator.cancel":"\ucde8\uc18c","popup.ariaLabel":"\ud53c\ub4dc\ubc31 \uc791\uc131","popup.placeholder":"\ud53c\ub4dc\ubc31 \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc138\uc694...","popup.textareaAria":"\ud53c\ub4dc\ubc31 \ub0b4\uc6a9","popup.submitHintMac":"\u2318+Enter\ub85c \ubcf4\ub0b4\uae30","popup.submitHintOther":"Ctrl+Enter\ub85c \ubcf4\ub0b4\uae30","popup.cancel":"\ucde8\uc18c","popup.submit":"\ubcf4\ub0b4\uae30","identity.title":"\uc791\uc131\uc790 \uc815\ubcf4","identity.nameLabel":"\uc774\ub984","identity.namePlaceholder":"\uc774\ub984","identity.emailLabel":"\uc774\uba54\uc77c","identity.emailPlaceholder":"you@example.com","identity.cancel":"\ucde8\uc18c","identity.submit":"\uacc4\uc18d","marker.approximate":"\ub300\ub7b5\uc801\uc778 \uc704\uce58 (\uc2e0\ub8b0\ub3c4: {confidence}%)","marker.aria":"\ud53c\ub4dc\ubc31 #{number}: {type}, {status} \u2014 {message}","marker.count":"\ud53c\ub4dc\ubc31 \ub9c8\ucee4 {count}\uac1c \ud45c\uc2dc \uc911","fab.badge":"\ud574\uacb0\ub418\uc9c0 \uc54a\uc740 \ud53c\ub4dc\ubc31 {count}\uac74","feedback.sent.confirmation":"\ud53c\ub4dc\ubc31\uc744 \ubcf4\ub0c8\uc2b5\ub2c8\ub2e4","feedback.error.message":"\ud53c\ub4dc\ubc31\uc744 \ubcf4\ub0b4\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4","feedback.queued":"\uc774 \uae30\uae30\uc5d0 \uc800\uc7a5\ud588\uc2b5\ub2c8\ub2e4. \ub2e4\uc74c \ubc29\ubb38 \uc2dc \uc804\uc1a1\ub429\ub2c8\ub2e4.","feedback.deleted.confirmation":"\ud53c\ub4dc\ubc31\uc744 \uc0ad\uc81c\ud588\uc2b5\ub2c8\ub2e4","badge.count":"\ud574\uacb0\ub418\uc9c0 \uc54a\uc740 \ud53c\ub4dc\ubc31 {count}\uac74","bulk.aria":"\uc77c\uad04 \uc791\uc5c5","bulk.selectAll":"\ubaa8\ub450 \uc120\ud0dd","bulk.selectFeedback":"{label} \uc120\ud0dd","bulk.selected":"{count}\uac74 \uc120\ud0dd\ub428","bulk.resolve":"\ud574\uacb0","bulk.delete":"\uc0ad\uc81c","bulk.deselect":"\uc120\ud0dd \ud574\uc81c","sort.newest":"\ucd5c\uc2e0\uc21c","sort.oldest":"\uc624\ub798\ub41c\uc21c","sort.byType":"\uc720\ud615\ubcc4","sort.openFirst":"\uc5f4\ub9b0 \ud56d\ubaa9 \uba3c\uc800","sort.label":"\uc815\ub82c","group.byPage":"\ud398\uc774\uc9c0\ubcc4","group.feedbacks":"\ud53c\ub4dc\ubc31 {count}\uac74","stats.aria":"\ud53c\ub4dc\ubc31 \ud1b5\uacc4","stats.open":"\uc5f4\ub9bc","stats.closed":"\uc885\ub8cc\ub428","stats.bugs":"\ubc84\uadf8","stats.progress":"{percent}% \uc885\ub8cc","detail.back":"\ub4a4\ub85c","detail.aria":"\ud53c\ub4dc\ubc31 \uc0c1\uc138","detail.title":"\ud53c\ub4dc\ubc31 #{number}","detail.status":"\uc0c1\ud0dc","detail.message":"\ub0b4\uc6a9","detail.screenshot":"\uc2a4\ud06c\ub9b0\uc0f7","detail.screenshotAlt":"\uc8fc\uc11d\uc744 \ub2e8 \uc601\uc5ed\uc758 \uc2a4\ud06c\ub9b0\uc0f7","detail.metadata":"\uc0c1\uc138 \uc815\ubcf4","detail.annotation":"\uc8fc\uc11d","detail.page":"\ud398\uc774\uc9c0","detail.author":"\uc791\uc131\uc790","detail.date":"\uc791\uc131\uc77c","detail.viewport":"\ubdf0\ud3ec\ud2b8","detail.browser":"\ube0c\ub77c\uc6b0\uc800","detail.resolvedAt":"\ud574\uacb0\uc77c","detail.closedAt":"\uc885\ub8cc\uc77c","detail.goToAnnotation":"\uc8fc\uc11d \uc704\uce58\ub85c \uc774\ub3d9","detail.element":"\uc694\uc18c","detail.selector":"\uc120\ud0dd\uc790","detail.position":"\uc704\uce58","detail.resolve":"\ud574\uacb0","detail.reopen":"\ub2e4\uc2dc \uc5f4\uae30","detail.delete":"\uc0ad\uc81c","detail.diagnostics":"\uc9c4\ub2e8 \uc815\ubcf4","detail.diagnostics.console":"\ucf58\uc194","detail.diagnostics.network":"\uc2e4\ud328\ud55c \ub124\ud2b8\uc6cc\ud06c \uc694\uccad","detail.diagnostics.expand":"\uc9c4\ub2e8 \uc815\ubcf4 \ubcf4\uae30","detail.diagnostics.collapse":"\uc9c4\ub2e8 \uc815\ubcf4 \uc228\uae30\uae30","detail.diagnostics.noEntries":"\uae30\ub85d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4","comments.title":"\ub2f5\uae00","comments.placeholder":"\ud300\uc5d0 \ub2f5\uae00 \ub0a8\uae30\uae30...","comments.error":"\ubcf4\ub0b4\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \ub2e4\uc2dc \uc2dc\ub3c4\ud558\uc138\uc694.","comments.full":"\uc774 \uc2a4\ub808\ub4dc\uc5d0\ub294 \ub354 \uc774\uc0c1 \ub2f5\uae00\uc744 \ub2ec \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.","comments.team":"\ud300","shortcuts.title":"\ud0a4\ubcf4\ub4dc \ub2e8\ucd95\ud0a4","shortcuts.navigate":"\ud53c\ub4dc\ubc31 \uac04 \uc774\ub3d9","shortcuts.resolve":"\ud574\uacb0 / \ub2e4\uc2dc \uc5f4\uae30","shortcuts.delete":"\uc0ad\uc81c","shortcuts.search":"\uac80\uc0c9\ucc3d\uc73c\ub85c \uc774\ub3d9","shortcuts.select":"\uc120\ud0dd \uc804\ud658","shortcuts.help":"\ub2e8\ucd95\ud0a4 \ubcf4\uae30","shortcuts.close":"\ub2eb\uae30","shortcuts.hint":"\ud0a4\ubcf4\ub4dc \ub2e8\ucd95\ud0a4","export.label":"\ub0b4\ubcf4\ub0b4\uae30","export.csv":"CSV \ub0b4\ubcf4\ub0b4\uae30","export.json":"JSON \ub0b4\ubcf4\ub0b4\uae30"}}),qh={};r(qh,{pt:()=>Gh});var Gh,Kh=i(()=>{Gh={"panel.title":"Feedbacks","panel.ariaLabel":"Painel de feedback do Siteping","panel.feedbackList":"Lista de feedbacks","panel.loading":"Carregando feedbacks","panel.close":"Fechar painel","panel.deleteAll":"Excluir tudo","panel.deleteAllConfirmTitle":"Excluir tudo","panel.deleteAllConfirmMessage":"Excluir todos os feedbacks deste projeto? Esta a\xe7\xe3o n\xe3o pode ser desfeita.","panel.search":"Pesquisar...","panel.searchAria":"Pesquisar feedbacks","panel.filterAll":"Todos","panel.loadError":"Falha ao carregar","panel.retry":"Tentar novamente","panel.empty":"Nenhum feedback ainda","panel.showMore":"Mostrar mais","panel.notOnPage":"N\xe3o vis\xedvel nesta p\xe1gina","panel.showLess":"Mostrar menos","panel.resolve":"Resolver","panel.reopen":"Reabrir","panel.delete":"Excluir","panel.cancel":"Cancelar","panel.confirmDelete":"Excluir","panel.loadMore":"Carregar mais ({remaining} restantes)","panel.statusAll":"Todos","panel.statusOpen":"Aberto","panel.statusResolved":"Resolvido","panel.statusInProgress":"Em andamento","panel.statusWontFix":"N\xe3o ser\xe1 corrigido","panel.statusClosed":"Fechado","type.label":"Tipo","type.question":"Pergunta","type.change":"Altera\xe7\xe3o","type.bug":"Bug","type.other":"Outro","status.label":"Status","scope.label":"Escopo","scope.thisPage":"Esta p\xe1gina","scope.thisType":"Este tipo","scope.all":"Todas as p\xe1ginas","panel.filterMine":"Meus","panel.filterMineHint":"Apenas os feedbacks enviados deste navegador","fab.aria":"Siteping \u2014 Menu de feedback","fab.messages":"Exibir barra lateral","fab.annotate":"Criar nova anota\xe7\xe3o","fab.annotations":"Exibir ou ocultar marcadores","annotator.instruction":"Desenhe um ret\xe2ngulo na \xe1rea que deseja comentar \u2014 ou pressione Enter para comentar o \xfaltimo elemento em foco","annotator.instantInstruction":"Comentar o ponto clicado","annotator.touchInstruction":"Toque em um elemento ou arraste para selecionar uma \xe1rea","annotator.cancel":"Cancelar","popup.ariaLabel":"Formul\xe1rio de feedback","popup.placeholder":"Descreva seu feedback...","popup.textareaAria":"Mensagem de feedback","popup.submitHintMac":"\u2318+Enter para enviar","popup.submitHintOther":"Ctrl+Enter para enviar","popup.cancel":"Cancelar","popup.submit":"Enviar","identity.title":"Identifique-se","identity.nameLabel":"Nome","identity.namePlaceholder":"Seu nome","identity.emailLabel":"E-mail","identity.emailPlaceholder":"seu@email.com","identity.cancel":"Cancelar","identity.submit":"Continuar","marker.approximate":"Posi\xe7\xe3o aproximada (confian\xe7a: {confidence}%)","marker.aria":"Feedback #{number}: {type}, {status} \u2014 {message}","marker.count":"{count} marcadores de feedback exibidos","fab.badge":"{count} feedbacks n\xe3o resolvidos","feedback.sent.confirmation":"Feedback enviado com sucesso","feedback.error.message":"Falha ao enviar feedback","feedback.queued":"Salvo neste dispositivo. Ser\xe1 enviado na sua pr\xf3xima visita.","feedback.deleted.confirmation":"Feedback exclu\xeddo","badge.count":"{count} feedbacks n\xe3o resolvidos","bulk.aria":"A\xe7\xf5es em massa","bulk.selectAll":"Selecionar tudo","bulk.selectFeedback":"Selecionar {label}","bulk.selected":"{count} selecionados","bulk.resolve":"Resolver","bulk.delete":"Excluir","bulk.deselect":"Desmarcar","sort.newest":"Mais recentes","sort.oldest":"Mais antigos","sort.byType":"Por tipo","sort.openFirst":"Abertos primeiro","sort.label":"Ordenar","group.byPage":"Por p\xe1gina","group.feedbacks":"{count} feedbacks","stats.aria":"Estat\xedsticas de feedbacks","stats.open":"Abertos","stats.closed":"Fechados","stats.bugs":"Bugs","stats.progress":"{percent}% fechados","detail.back":"Voltar","detail.aria":"Detalhes do feedback","detail.title":"Feedback #{number}","detail.status":"Status","detail.message":"Mensagem","detail.screenshot":"Captura","detail.screenshotAlt":"Captura da \xe1rea anotada","detail.metadata":"Detalhes","detail.annotation":"Anota\xe7\xe3o","detail.page":"P\xe1gina","detail.author":"Autor","detail.date":"Criado","detail.viewport":"Viewport","detail.browser":"Navegador","detail.resolvedAt":"Resolvido em","detail.closedAt":"Fechado em","detail.goToAnnotation":"Ir para anota\xe7\xe3o","detail.element":"Elemento","detail.selector":"Seletor","detail.position":"Posi\xe7\xe3o","detail.resolve":"Resolver","detail.reopen":"Reabrir","detail.delete":"Excluir","detail.diagnostics":"Diagn\xf3stico","detail.diagnostics.console":"Console","detail.diagnostics.network":"Rede com falha","detail.diagnostics.expand":"Mostrar diagn\xf3stico","detail.diagnostics.collapse":"Ocultar diagn\xf3stico","detail.diagnostics.noEntries":"Sem entradas","comments.title":"Respostas","comments.placeholder":"Responder \xe0 equipe...","comments.error":"N\xe3o enviada. Tente novamente.","comments.full":"Esta conversa est\xe1 cheia.","comments.team":"Equipe","shortcuts.title":"Atalhos de teclado","shortcuts.navigate":"Navegar feedbacks","shortcuts.resolve":"Resolver / Reabrir","shortcuts.delete":"Excluir","shortcuts.search":"Buscar","shortcuts.select":"Alternar sele\xe7\xe3o","shortcuts.help":"Mostrar atalhos","shortcuts.close":"Fechar","shortcuts.hint":"Atalhos de teclado","export.label":"Exportar","export.csv":"Exportar CSV","export.json":"Exportar JSON"}}),Xh={};r(Xh,{ru:()=>Jh});var Jh,Qh,Zh=i(()=>{Jh={"panel.title":"\u041e\u0431\u0440\u0430\u0442\u043d\u0430\u044f \u0441\u0432\u044f\u0437\u044c","panel.ariaLabel":"\u041f\u0430\u043d\u0435\u043b\u044c \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 Siteping","panel.feedbackList":"\u0421\u043f\u0438\u0441\u043e\u043a \u043e\u0442\u0437\u044b\u0432\u043e\u0432","panel.loading":"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043e\u0442\u0437\u044b\u0432\u043e\u0432","panel.close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u043f\u0430\u043d\u0435\u043b\u044c","panel.deleteAll":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0451","panel.deleteAllConfirmTitle":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0451","panel.deleteAllConfirmMessage":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0435 \u043e\u0442\u0437\u044b\u0432\u044b \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430? \u042d\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043d\u0435\u043e\u0431\u0440\u0430\u0442\u0438\u043c\u043e.","panel.search":"\u041f\u043e\u0438\u0441\u043a...","panel.searchAria":"\u041f\u043e\u0438\u0441\u043a \u043f\u043e \u043e\u0442\u0437\u044b\u0432\u0430\u043c","panel.filterAll":"\u0412\u0441\u0435","panel.loadError":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438","panel.retry":"\u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c","panel.empty":"\u041f\u043e\u043a\u0430 \u043d\u0435\u0442 \u043e\u0442\u0437\u044b\u0432\u043e\u0432","panel.showMore":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435","panel.notOnPage":"\u041d\u0435 \u0432\u0438\u0434\u043d\u043e \u043d\u0430 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435","panel.showLess":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043c\u0435\u043d\u044c\u0448\u0435","panel.resolve":"\u0420\u0435\u0448\u0435\u043d\u043e","panel.reopen":"\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0437\u0430\u043d\u043e\u0432\u043e","panel.delete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","panel.cancel":"\u041e\u0442\u043c\u0435\u043d\u0430","panel.confirmDelete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","panel.loadMore":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0435\u0449\u0451 ({remaining} \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c)","panel.statusAll":"\u0412\u0441\u0435","panel.statusOpen":"\u041e\u0442\u043a\u0440\u044b\u0442","panel.statusResolved":"\u0420\u0435\u0448\u0451\u043d","panel.statusInProgress":"\u0412 \u0440\u0430\u0431\u043e\u0442\u0435","panel.statusWontFix":"\u041d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e","panel.statusClosed":"\u0417\u0430\u043a\u0440\u044b\u0442","type.label":"\u0422\u0438\u043f","type.question":"\u0412\u043e\u043f\u0440\u043e\u0441","type.change":"\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435","type.bug":"\u0411\u0430\u0433","type.other":"\u0414\u0440\u0443\u0433\u043e\u0435","status.label":"\u0421\u0442\u0430\u0442\u0443\u0441","scope.label":"\u041e\u0431\u043b\u0430\u0441\u0442\u044c","scope.thisPage":"\u042d\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430","scope.thisType":"\u042d\u0442\u043e\u0442 \u0442\u0438\u043f","scope.all":"\u0412\u0441\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b","panel.filterMine":"\u041c\u043e\u0438","panel.filterMineHint":"\u0422\u043e\u043b\u044c\u043a\u043e \u043e\u0442\u0437\u044b\u0432\u044b, \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430","fab.aria":"Siteping \u2014 \u041c\u0435\u043d\u044e \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438","fab.messages":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0430\u043d\u0435\u043b\u044c","fab.annotate":"\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044e","fab.annotations":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u043b\u0438 \u0441\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u0442\u043a\u0438","annotator.instruction":"\u0412\u044b\u0434\u0435\u043b\u0438\u0442\u0435 \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0434\u043b\u044f \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u2014 \u0438\u043b\u0438 \u043d\u0430\u0436\u043c\u0438\u0442\u0435 Enter, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442","annotator.instantInstruction":"\u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u043a \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435","annotator.touchInstruction":"\u041a\u043e\u0441\u043d\u0438\u0442\u0435\u0441\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0438\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u0430\u043b\u044c\u0446\u0435\u043c, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u043e\u0431\u043b\u0430\u0441\u0442\u044c","annotator.cancel":"\u041e\u0442\u043c\u0435\u043d\u0430","popup.ariaLabel":"\u0424\u043e\u0440\u043c\u0430 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438","popup.placeholder":"\u041e\u043f\u0438\u0448\u0438\u0442\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0438\u043b\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435...","popup.textareaAria":"\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435","popup.submitHintMac":"\u2318+Enter \u2014 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c","popup.submitHintOther":"Ctrl+Enter \u2014 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c","popup.cancel":"\u041e\u0442\u043c\u0435\u043d\u0430","popup.submit":"\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c","identity.title":"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u044c\u0442\u0435\u0441\u044c","identity.nameLabel":"\u0418\u043c\u044f","identity.namePlaceholder":"\u0412\u0430\u0448\u0435 \u0438\u043c\u044f","identity.emailLabel":"Email","identity.emailPlaceholder":"\u0432\u0430\u0448@email.com","identity.cancel":"\u041e\u0442\u043c\u0435\u043d\u0430","identity.submit":"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c","marker.approximate":"\u041f\u0440\u0438\u0431\u043b\u0438\u0437\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043f\u043e\u0437\u0438\u0446\u0438\u044f (\u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c: {confidence}%)","marker.aria":"\u041e\u0442\u0437\u044b\u0432 #{number}: {type}, {status} \u2014 {message}","marker.count":"\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043e \u043c\u0430\u0440\u043a\u0435\u0440\u043e\u0432 \u043e\u0442\u0437\u044b\u0432\u043e\u0432: {count}","fab.badge":"\u041d\u0435\u0440\u0435\u0448\u0451\u043d\u043d\u044b\u0445 \u043e\u0442\u0437\u044b\u0432\u043e\u0432: {count}","feedback.sent.confirmation":"\u041e\u0442\u0437\u044b\u0432 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d","feedback.error.message":"\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e\u0442\u0437\u044b\u0432","feedback.queued":"\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043e \u043d\u0430 \u044d\u0442\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435. \u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043f\u043e\u0441\u0435\u0449\u0435\u043d\u0438\u0438.","feedback.deleted.confirmation":"\u041e\u0442\u0437\u044b\u0432 \u0443\u0434\u0430\u043b\u0451\u043d","badge.count":"\u041d\u0435\u0440\u0435\u0448\u0451\u043d\u043d\u044b\u0445 \u043e\u0442\u0437\u044b\u0432\u043e\u0432: {count}","bulk.aria":"\u041c\u0430\u0441\u0441\u043e\u0432\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f","bulk.selectAll":"\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435","bulk.selectFeedback":"\u0412\u044b\u0431\u0440\u0430\u0442\u044c: {label}","bulk.selected":"\u0412\u044b\u0431\u0440\u0430\u043d\u043e: {count}","bulk.resolve":"\u0420\u0435\u0448\u0438\u0442\u044c","bulk.delete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","bulk.deselect":"\u0421\u043d\u044f\u0442\u044c \u0432\u044b\u0431\u043e\u0440","sort.newest":"\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u043e\u0432\u044b\u0435","sort.oldest":"\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u0442\u0430\u0440\u044b\u0435","sort.byType":"\u041f\u043e \u0442\u0438\u043f\u0443","sort.openFirst":"\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0435","sort.label":"\u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430","group.byPage":"\u041f\u043e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435","group.feedbacks":"\u041e\u0442\u0437\u044b\u0432\u043e\u0432: {count}","stats.aria":"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043e\u0442\u0437\u044b\u0432\u043e\u0432","stats.open":"\u041e\u0442\u043a\u0440\u044b\u0442\u044b\u0435","stats.closed":"\u0417\u0430\u043a\u0440\u044b\u0442\u044b\u0435","stats.bugs":"\u0411\u0430\u0433\u0438","stats.progress":"\u0417\u0430\u043a\u0440\u044b\u0442\u043e: {percent}%","detail.back":"\u041d\u0430\u0437\u0430\u0434","detail.aria":"\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u043e\u0442\u0437\u044b\u0432\u0430","detail.title":"\u041e\u0442\u0437\u044b\u0432 #{number}","detail.status":"\u0421\u0442\u0430\u0442\u0443\u0441","detail.message":"\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435","detail.screenshot":"\u0421\u043a\u0440\u0438\u043d\u0448\u043e\u0442","detail.screenshotAlt":"\u0421\u043a\u0440\u0438\u043d\u0448\u043e\u0442 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438","detail.metadata":"\u0414\u0435\u0442\u0430\u043b\u0438","detail.annotation":"\u0410\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f","detail.page":"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430","detail.author":"\u0410\u0432\u0442\u043e\u0440","detail.date":"\u0421\u043e\u0437\u0434\u0430\u043d","detail.viewport":"Viewport","detail.browser":"\u0411\u0440\u0430\u0443\u0437\u0435\u0440","detail.resolvedAt":"\u0420\u0435\u0448\u0451\u043d","detail.closedAt":"\u0417\u0430\u043a\u0440\u044b\u0442","detail.goToAnnotation":"\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u0438","detail.element":"\u042d\u043b\u0435\u043c\u0435\u043d\u0442","detail.selector":"\u0421\u0435\u043b\u0435\u043a\u0442\u043e\u0440","detail.position":"\u041f\u043e\u0437\u0438\u0446\u0438\u044f","detail.resolve":"\u0420\u0435\u0448\u0438\u0442\u044c","detail.reopen":"\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0437\u0430\u043d\u043e\u0432\u043e","detail.delete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","detail.diagnostics":"\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430","detail.diagnostics.console":"\u041a\u043e\u043d\u0441\u043e\u043b\u044c","detail.diagnostics.network":"\u0421\u0435\u0442\u0435\u0432\u044b\u0435 \u043e\u0448\u0438\u0431\u043a\u0438","detail.diagnostics.expand":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0443","detail.diagnostics.collapse":"\u0421\u043a\u0440\u044b\u0442\u044c \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0443","detail.diagnostics.noEntries":"\u041d\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0435\u0439","comments.title":"\u041e\u0442\u0432\u0435\u0442\u044b","comments.placeholder":"\u041e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0435...","comments.error":"\u041d\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0435\u0449\u0451 \u0440\u0430\u0437.","comments.full":"\u041e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e.","comments.team":"\u041a\u043e\u043c\u0430\u043d\u0434\u0430","shortcuts.title":"\u0413\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438","shortcuts.navigate":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043f\u043e \u043e\u0442\u0437\u044b\u0432\u0430\u043c","shortcuts.resolve":"\u0420\u0435\u0448\u0438\u0442\u044c / \u041f\u0435\u0440\u0435\u043e\u0442\u043a\u0440\u044b\u0442\u044c","shortcuts.delete":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","shortcuts.search":"\u041f\u043e\u0438\u0441\u043a","shortcuts.select":"\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432\u044b\u0431\u043e\u0440","shortcuts.help":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043a\u043b\u0430\u0432\u0438\u0448\u0438","shortcuts.close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c","shortcuts.hint":"\u0413\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438","export.label":"\u042d\u043a\u0441\u043f\u043e\u0440\u0442","export.csv":"\u042d\u043a\u0441\u043f\u043e\u0440\u0442 \u0432 CSV","export.json":"\u042d\u043a\u0441\u043f\u043e\u0440\u0442 \u0432 JSON"}});function eu(e,t){switch(e){case"question":return t("type.question");case"change":return t("type.change");case"bug":return t("type.bug");case"other":return t("type.other");default:return e}}function tu(e,t){switch(e){case"open":return t("panel.statusOpen");case"in_progress":return t("panel.statusInProgress");case"resolved":return t("panel.statusResolved");case"wont_fix":return t("panel.statusWontFix");default:return e}}e.registerLocale=void 0,e.loadLocale=void 0;var iu,ru,su=i(()=>{O(),Th(),Qh=function(e,t){let i=Object.assign(Object.create(null),{en:e}),r=Object.create(null);function s(e){return Object.hasOwn(t,e)}return{registerLocale(e,t){let i=m(e);r[i]={...r[i],...t}},async loadLocale(e){let n=m(e);return s(n)&&(i[n]??=await t[n]()),r[n]?{...i[n],...r[n]}:i[n]??null},createT(t){let n=m(t);return!i[n]&&!r[n]&&!s(n)&&console.warn(`[siteping] Unknown locale "${t}", falling back to "en"`),t=>r[n]?.[t]??i[n]?.[t]??e[t]??t}}}(Mh,{de:()=>Promise.resolve().then(()=>(Lh(),Bh)).then(e=>e.de),es:()=>Promise.resolve().then(()=>(Nh(),Ph)).then(e=>e.es),fr:()=>Promise.resolve().then(()=>(Fh(),Dh)).then(e=>e.fr),it:()=>Promise.resolve().then(()=>(_h(),$h)).then(e=>e.it),ja:()=>Promise.resolve().then(()=>(Vh(),Wh)).then(e=>e.ja),ko:()=>Promise.resolve().then(()=>(Yh(),jh)).then(e=>e.ko),pt:()=>Promise.resolve().then(()=>(Kh(),qh)).then(e=>e.pt),ru:()=>Promise.resolve().then(()=>(Zh(),Xh)).then(e=>e.ru)}),e.registerLocale=Qh.registerLocale,e.loadLocale=Qh.loadLocale,iu=Qh.createT,ru=b});function nu(e,t,i){let r=new Blob([e],{type:i}),s=URL.createObjectURL(r),n=document.createElement("a");n.href=s,n.download=t,n.style.display="none",X(n),document.body.appendChild(n),n.click(),requestAnimationFrame(()=>{URL.revokeObjectURL(s),n.remove()})}var ou,au,lu,du,cu,pu=i(()=>{G(),Pe(),ou=["id","type","status","message","url","authorName","authorEmail","createdAt","resolvedAt","viewport"],au=class{constructor(e,t,i){this.getFeedbacks=t,this.element=z("div",{style:"position: relative; display: inline-flex;"});let r=document.createElement("button");r.className="sp-export-btn",r.setAttribute("aria-haspopup","true"),r.setAttribute("aria-expanded","false"),r.appendChild($('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7 10 12 15 17 10"/><line x1="12" y1="15" x2="12" y2="3"/></svg>'));let s=document.createElement("span");_(s,i("export.label")),r.appendChild(s),r.addEventListener("click",e=>{e.stopPropagation(),this.toggle()}),this.menu=z("div",{class:"sp-export-menu"}),this.menu.setAttribute("role","menu");let n=this.createOption('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="3" width="18" height="18" rx="2"/><line x1="3" y1="9" x2="21" y2="9"/><line x1="3" y1="15" x2="21" y2="15"/><line x1="9" y1="3" x2="9" y2="21"/><line x1="15" y1="3" x2="15" y2="21"/></svg>',i("export.csv"),()=>{this.exportAs("csv")}),o=this.createOption('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M8 3H6a2 2 0 0 0-2 2v4a2 2 0 0 1-2 2 2 2 0 0 1 2 2v4a2 2 0 0 0 2 2h2"/><path d="M16 3h2a2 2 0 0 1 2 2v4a2 2 0 0 0 2 2 2 2 0 0 0-2 2v4a2 2 0 0 1-2 2h-2"/></svg>',i("export.json"),()=>{this.exportAs("json")});this.menu.appendChild(n),this.menu.appendChild(o),this.element.appendChild(r),this.element.appendChild(this.menu),this.element.addEventListener("keydown",e=>{"Escape"!==e.key||!this.isOpen||(e.stopPropagation(),this.close(),r.focus())})}getFeedbacks;element;menu;isOpen=!1;removeOutsideClick=null;createOption(e,t,i){let r=document.createElement("button");r.className="sp-export-option",r.setAttribute("role","menuitem");let s=z("span",{class:"sp-export-option-icon"});s.appendChild($(e));let n=z("span",{class:"sp-export-option-label"});return _(n,t),r.appendChild(s),r.appendChild(n),r.addEventListener("click",e=>{e.stopPropagation(),i(),this.close()}),r}toggle(){this.isOpen?this.close():this.open()}open(){this.isOpen=!0,this.removeOutsideClick=W(this.element,()=>this.close()),this.menu.classList.add("sp-export-menu--open"),this.element.querySelector(".sp-export-btn")?.setAttribute("aria-expanded","true")}close(){this.isOpen=!1,this.removeOutsideClick?.(),this.removeOutsideClick=null,this.menu.classList.remove("sp-export-menu--open"),this.element.querySelector(".sp-export-btn")?.setAttribute("aria-expanded","false")}exportAs(e){let t=this.getFeedbacks();if(0===t.length)return;let i=t[0]?.projectName??"feedbacks",r=(new Date).toISOString().slice(0,10),s=i.replace(/[^a-zA-Z0-9_-]/g,"_");if("csv"===e){let e=`\ufeff${function(e){let t=ou.join(","),i=e.map(e=>ou.map(t=>{let i=e[t];return function(e){let t=/^[=+\-@\t\r]/.test(e)?`'${e}`:e;return t.includes('"')||t.includes(",")||t.includes("\n")||t.includes("\r")?`"${t.replace(/"/g,'""')}"`:t}(null==i?"":String(i))}).join(","));return[t,...i].join("\n")}(t)}`;nu(e,`feedbacks-${s}-${r}.csv`,"text/csv;charset=utf-8")}else nu((n=t,JSON.stringify(n,null,2)),`feedbacks-${s}-${r}.json`,"application/json;charset=utf-8");var n}destroy(){this.close(),this.element.remove()}}}),hu=i(()=>{G(),su(),lu='<svg viewBox="0 0 18 18" fill="none" aria-hidden="true"><rect x="1" y="1" width="16" height="16" rx="4" stroke="currentColor" stroke-width="2"/></svg>',du='<svg viewBox="0 0 18 18" fill="none" aria-hidden="true"><rect x="1" y="1" width="16" height="16" rx="4" fill="url(#sp-cb-grad)" stroke="none"/><polyline points="5 9 8 12 13 6" fill="none" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><defs><linearGradient id="sp-cb-grad" x1="0" y1="0" x2="18" y2="18" gradientUnits="userSpaceOnUse"><stop offset="0%" stop-color="var(--sp-accent)"/><stop offset="100%" stop-color="var(--sp-accent-dark)"/></linearGradient></defs></svg>',cu=class{constructor(e,t,i){this.callbacks=t,this.t=i,this.barElement=z("div",{class:"sp-bulk-bar"}),this.barElement.setAttribute("role","toolbar"),this.barElement.setAttribute("aria-label",i("bulk.aria")),V(this.barElement,!0),this.countLabel=z("span",{class:"sp-bulk-bar-count"}),_(this.countLabel,ru(this.t,"bulk.selected",{count:0}));let r=z("div",{class:"sp-bulk-bar-actions"});this.resolveBtn=document.createElement("button"),this.resolveBtn.className="sp-bulk-btn-resolve",this.resolveBtn.type="button",this.resolveBtn.addEventListener("click",()=>this.handleResolve()),this.deleteBtn=document.createElement("button"),this.deleteBtn.className="sp-bulk-btn-delete",this.deleteBtn.type="button",this.deleteBtn.addEventListener("click",()=>this.handleDelete());let s=document.createElement("button");s.className="sp-bulk-btn-deselect",s.type="button",s.setAttribute("aria-label",this.t("bulk.deselect")),s.appendChild($('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>')),s.addEventListener("click",()=>this.deselectAll()),r.appendChild(this.resolveBtn),r.appendChild(this.deleteBtn),r.appendChild(s),this.barElement.appendChild(this.countLabel),this.barElement.appendChild(r),this.updateButtonLabels()}callbacks;barElement;selected=new Set;checkboxMap=new Map;countLabel;resolveBtn;deleteBtn;selectAllCheckbox=null;listContainer=null;isProcessing=!1;t;createCheckbox(e,t){let i=z("div",{class:"sp-bulk-checkbox"});return i.setAttribute("role","checkbox"),i.setAttribute("tabindex","0"),i.setAttribute("aria-label",ru(this.t,"bulk.selectFeedback",{label:t})),i.addEventListener("click",t=>{t.stopPropagation(),this.toggle(e)}),i.addEventListener("keydown",t=>{(" "===t.key||"Enter"===t.key)&&(t.preventDefault(),t.stopPropagation(),this.toggle(e))}),this.checkboxMap.set(e,i),this.updateCheckbox(e),i}isSelected(e){return this.selected.has(e)}createSelectAllBar(e,t){let i=z("div",{class:"sp-bulk-select-all"}),r=z("div",{class:"sp-bulk-checkbox"});r.setAttribute("role","checkbox"),r.setAttribute("tabindex","0"),r.setAttribute("aria-label",t),this.selectAllCheckbox=r,this.updateSelectAllCheckbox(e.length>0&&e.every(e=>this.selected.has(e)));let s=z("span");_(s,t),i.appendChild(r),i.appendChild(s);let n=()=>{this.selected.size===e.length&&e.length>0?this.deselectAll():this.selectAll(e)};return i.addEventListener("click",n),r.addEventListener("keydown",e=>{(" "===e.key||"Enter"===e.key)&&(e.preventDefault(),e.stopPropagation(),n())}),i}setListContainer(e){this.listContainer=e}toggle(e){this.isProcessing||(this.selected.has(e)?this.selected.delete(e):this.selected.add(e),this.updateCheckbox(e),this.updateBar(),this.updateSelectAllCheckbox(),this.updateListSelectionClass(),this.updateCardSelectedState(e))}selectAll(e){if(!this.isProcessing){for(let t of e)this.selected.add(t),this.updateCheckbox(t),this.updateCardSelectedState(t);this.updateBar(),this.updateSelectAllCheckbox(),this.updateListSelectionClass()}}deselectAll(){let e=[...this.selected];this.selected.clear();for(let t of e)this.updateCheckbox(t),this.updateCardSelectedState(t);this.updateBar(),this.updateSelectAllCheckbox(),this.updateListSelectionClass()}get selectedIds(){return[...this.selected]}get count(){return this.selected.size}get hasSelection(){return this.selected.size>0}reset(){this.selected.clear(),this.checkboxMap.clear(),this.selectAllCheckbox=null,this.isProcessing=!1,this.updateBar(),this.updateListSelectionClass()}destroy(){this.selected.clear(),this.checkboxMap.clear(),this.selectAllCheckbox=null,this.listContainer=null,this.barElement.remove()}updateBar(){let e=this.selected.size,t=e>0;!t&&j(this.barElement)&&this.selectAllCheckbox?.focus(),V(this.barElement,!t),this.barElement.classList.toggle("sp-bulk-bar--visible",t),_(this.countLabel,ru(this.t,"bulk.selected",{count:e}));let i=[...this.selected];H(this.resolveBtn,!1===this.callbacks.permits?.(i,"canChangeStatus")),H(this.deleteBtn,!1===this.callbacks.permits?.(i,"canDelete")),this.updateButtonLabels()}updateButtonLabels(){let e=this.selected.size,t=this.t("bulk.resolve"),i=this.t("bulk.delete");this.resolveBtn.replaceChildren();let r=document.createElement("span");_(r,e>0?`${t} ${e}`:t),this.resolveBtn.appendChild(r),this.deleteBtn.replaceChildren();let s=document.createElement("span");_(s,e>0?`${i} ${e}`:i),this.deleteBtn.appendChild(s)}updateCheckbox(e){let t=this.checkboxMap.get(e);if(!t)return;let i=this.selected.has(e);t.classList.toggle("sp-bulk-checkbox--checked",i),t.setAttribute("aria-checked",String(i)),t.replaceChildren(),t.appendChild($(i?du:lu))}updateSelectAllCheckbox(e=this.selected.size>0&&this.selected.size===this.checkboxMap.size){this.selectAllCheckbox&&(this.selectAllCheckbox.classList.toggle("sp-bulk-checkbox--checked",e),this.selectAllCheckbox.setAttribute("aria-checked",String(e)),this.selectAllCheckbox.replaceChildren(),this.selectAllCheckbox.appendChild($(e?du:lu)))}updateListSelectionClass(){this.listContainer&&this.listContainer.classList.toggle("sp-list--has-selection",this.selected.size>0)}updateCardSelectedState(e){if(!this.listContainer)return;let t=CSS.escape(e),i=this.listContainer.querySelector(`[data-feedback-id="${t}"]`);i&&i.classList.toggle("sp-card--selected",this.selected.has(e))}async handleResolve(){if(this.isProcessing||0===this.selected.size)return;this.isProcessing=!0;let e=[...this.selected];U(this.resolveBtn),this.deleteBtn.disabled=!0;try{await this.callbacks.onResolve(e)}catch{return}finally{this.endProcessing()}this.deselectAll()}async handleDelete(){if(this.isProcessing||0===this.selected.size)return;this.isProcessing=!0;let e=[...this.selected];U(this.deleteBtn),this.resolveBtn.disabled=!0;try{await this.callbacks.onDelete(e)}catch{return}finally{this.endProcessing()}this.deselectAll()}endProcessing(){this.isProcessing=!1,this.resolveBtn.disabled=!1,this.deleteBtn.disabled=!1,this.updateButtonLabels()}}});function uu(e){for(let t of[...e.attributes])(!bu.has(t.name.toLowerCase())||!xu(t.value))&&e.removeAttribute(t.name);for(let t of[...e.children])mu.has(t.localName.toLowerCase())?uu(t):t.remove()}function fu(e){let t=(new DOMParser).parseFromString(e,"text/html").body.firstElementChild;return"http://www.w3.org/2000/svg"!==t?.namespaceURI||"svg"!==t.localName?null:(uu(t),t.setAttribute("aria-hidden","true"),document.importNode(t,!0))}function gu(e){try{let t=new URL(e,document.baseURI);return/^(https?|mailto):$/.test(t.protocol)?t.href:null}catch{return null}}var mu,bu,yu,xu,vu,wu,ku=i(()=>{mu=new Set(["svg","g","path","circle","ellipse","line","polyline","polygon","rect","defs","lineargradient","radialgradient","stop","clippath","mask"]),bu=new Set("id viewbox preserveaspectratio width height x y x1 y1 x2 y2 cx cy r rx ry fx fy fr d points pathlength\n transform opacity color fill fill-opacity fill-rule stroke stroke-width stroke-linecap stroke-linejoin\n stroke-miterlimit stroke-dasharray stroke-dashoffset stroke-opacity clip-path clip-rule mask offset\n stop-color stop-opacity gradientunits gradienttransform spreadmethod clippathunits maskunits\n maskcontentunits".split(/\s+/)),yu=/\b(?:(?:rgba?|hsla?|matrix|translate|scale|rotate|skewx|skewy)\([^()\\]*\)|url\(\s*(['"]?)#[\w-]+\1\s*\))/gi,xu=e=>!e.includes("\\")&&!e.replace(yu,"").includes("("),vu=e=>"function"==typeof e.onAction&&void 0===e.href,wu=e=>("string"==typeof e.href||"function"==typeof e.href)&&void 0===e.onAction});function Cu(e,t){try{return new Date(e).toLocaleString(t,{year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch{return e}}function Su(e,t){return e.length<=t?e:e.slice(0,t-1)+"\u2026"}function Eu(e){return!Number.isFinite(e)||e<0?"\u2014":e<1e3?`${Math.round(e)} ms`:`${(e/1e3).toFixed(1)} s`}function Mu({action:e,icon:t}){let i=document.createElement("span");return _(i,e.label),t?[t.cloneNode(!0),i]:[i]}var Au,Tu,Bu,Ru=i(()=>{O(),G(),su(),Ie(),ku(),qe(),Au='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"/><circle cx="12" cy="10" r="3"/></svg>',Tu='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="20 6 9 17 4 12"/></svg>',Bu=class{constructor(e,t,i,r,s=[]){this.colors=e,this.callbacks=t,this.customActions=s,this.t=i,this.locale=r,this.element=z("div",{class:"sp-detail"}),this.element.setAttribute("role","dialog"),this.element.setAttribute("aria-label",i("detail.aria")),this.element.setAttribute("aria-hidden","true"),V(this.element,!0);let n=z("div",{class:"sp-detail-header"}),o=document.createElement("button");o.type="button",o.className="sp-detail-back",o.setAttribute("aria-label",this.t("detail.back")),o.appendChild($('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="19" y1="12" x2="5" y2="12"/><polyline points="12 19 5 12 12 5"/></svg>')),o.addEventListener("click",()=>{this.hide(),this.callbacks.onBack()}),this.element.appendChild(n),n.appendChild(o),this.content=z("div",{class:"sp-detail-content"}),this.element.appendChild(this.content)}colors;callbacks;customActions;element;_isVisible=!1;opener=null;currentFeedback=null;content;t;locale;resolveBtn=null;deleteBtn=null;customBtns=[];pending=new Map;show(e,t){this.currentFeedback=e;let i=this.element.querySelector(".sp-detail-header");if(!i)return;let r=i.querySelector(".sp-detail-back");if(!r)return;i.replaceChildren(r);let s=z("span",{class:"sp-detail-title"});_(s,ru(this.t,"detail.title",{number:t})),i.appendChild(s);let n=z("span",{class:"sp-badge"});n.style.background=We(e.type,this.colors),n.style.color=$e(e.type,this.colors),_(n,eu(e.type,this.t)),i.appendChild(n),this.content.replaceChildren();let o=0,a=this.buildSection(o++);this.buildStatusActions(a,e);let l=this.pending.get(e.id);l&&this.lock(l),this.content.appendChild(a);let d=this.buildSection(o++),c=z("div",{class:"sp-detail-section-title"});_(c,this.t("detail.message")),d.appendChild(c);let p=z("div",{class:"sp-detail-message"});p.style.borderLeftColor=$e(e.type,this.colors),_(p,e.message),d.appendChild(p);let h=this.callbacks.buildThread?.(e);if(h&&d.appendChild(h),this.content.appendChild(d),e.screenshotUrl&&(u=e.screenshotUrl,/^data:image\/(jpeg|png|webp);/i.test(u)||/^https:\/\//i.test(u)||function(e){try{let{protocol:t,hostname:i}=new URL(e);return"http:"===t&&("localhost"===i||i.endsWith(".localhost")||"127.0.0.1"===i||"[::1]"===i)}catch{return!1}}(u))){let t=this.buildSection(o++),i=z("div",{class:"sp-detail-section-title"});_(i,this.t("detail.screenshot")),t.appendChild(i);let r=document.createElement("img");r.className="sp-detail-screenshot",r.src=e.screenshotUrl,r.alt=this.t("detail.screenshotAlt"),r.loading="lazy",r.referrerPolicy="no-referrer",t.appendChild(r),this.content.appendChild(t)}var u;let f=this.buildSection(o++),g=z("div",{class:"sp-detail-section-title"});if(_(g,this.t("detail.metadata")),f.appendChild(g),this.buildMetadata(f,e),this.content.appendChild(f),e.annotations.length>0){let t=this.buildSection(o++),i=z("div",{class:"sp-detail-section-title"});i.appendChild($(Au));let r=z("span");_(r,this.t("detail.annotation")),i.appendChild(r),t.appendChild(i),this.buildAnnotation(t,e),this.content.appendChild(t)}if(function(e){if(!e)return!1;let t=Array.isArray(e.console)?e.console.length:0,i=Array.isArray(e.network)?e.network.length:0;return t>0||i>0}(e.diagnostics)){let t=this.buildSection(o++),i=z("div",{class:"sp-detail-section-title"});i.appendChild($('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="4 17 10 11 4 5"/><line x1="12" y1="19" x2="20" y2="19"/></svg>'));let r=z("span");_(r,this.t("detail.diagnostics")),i.appendChild(r),t.appendChild(i),this.buildDiagnostics(t,e),this.content.appendChild(t)}if(!this._isVisible){let e=this.element.getRootNode().activeElement;this.opener=e instanceof HTMLElement?e:null}this._isVisible=!0,this.element.setAttribute("aria-hidden","false"),V(this.element,!1),this.element.offsetHeight,this.element.classList.add("sp-detail--visible"),requestAnimationFrame(()=>{r.focus()})}hide(){if(!this._isVisible)return;this._isVisible=!1;let e=j(this.element),t=this.currentFeedback?.id;this.element.classList.remove("sp-detail--visible"),this.element.setAttribute("aria-hidden","true"),V(this.element,!0),e&&(!0===this.opener?.isConnected?this.opener:t?this.element.parentElement?.querySelector(`.sp-card[data-feedback-id="${CSS.escape(t)}"]`):null)?.focus(),this.opener=null,this.currentFeedback=null,this.resolveBtn=null,this.deleteBtn=null,this.customBtns=[]}get feedbackId(){return this.currentFeedback?.id??null}get isVisible(){return this._isVisible}destroy(){this.hide(),this.element.remove()}buildSection(e){let t=z("div",{class:"sp-detail-section"});return t.style.animationDelay=40*e+"ms",t}buildStatusActions(e,t){let i=x(t.status),r=z("div",{class:"sp-detail-section-title"});_(r,this.t("detail.status")),e.appendChild(r);let s=t.status.replace(/_/g,"-"),n={open:"#22c55e",in_progress:"#f59e0b",resolved:"#9ca3af",wont_fix:"#94a3b8"},o=z("div",{class:"sp-detail-status"}),a=z("span",{class:`sp-detail-status-pill sp-detail-status-pill--${s}`}),l=z("span",{class:"sp-detail-status-dot"});l.style.background=n[t.status]??n.open,a.appendChild(l);let d=z("span");_(d,tu(t.status,this.t)),a.appendChild(d),o.appendChild(a),e.appendChild(o);let c=z("div",{class:"sp-detail-actions"});this.resolveBtn=document.createElement("button"),this.resolveBtn.type="button",this.resolveBtn.className=i?"sp-detail-btn-reopen":"sp-detail-btn-resolve",this.restoreResolveBtn(t),this.resolveBtn.addEventListener("click",()=>this.handleResolve()),this.deleteBtn=document.createElement("button"),this.deleteBtn.type="button",this.deleteBtn.className="sp-detail-btn-delete",this.restoreDeleteBtn(),this.deleteBtn.addEventListener("click",()=>this.handleDelete()),!1!==this.callbacks.permits?.(t,"canChangeStatus")&&c.appendChild(this.resolveBtn),!1!==this.callbacks.permits?.(t,"canDelete")&&c.appendChild(this.deleteBtn),e.appendChild(c),this.buildCustomActions(e,t)}buildCustomActions(e,t){if(this.customBtns=[],0===this.customActions.length)return;let i=(s=t,JSON.parse(JSON.stringify(s),(e,t)=>"object"==typeof t&&null!==t?Object.freeze(t):t)),r=z("div",{class:"sp-detail-actions sp-detail-actions--custom"});var s;for(let e of this.customActions){let t,{action:s}=e;try{if(s.visible&&!s.visible(i))continue;if(void 0===s.href){let r=document.createElement("button");r.type="button",r.setAttribute("aria-label",s.label),r.addEventListener("click",()=>{this.run(e,()=>this.callbacks.onCustomAction(s,i))}),this.customBtns.push(r),t=r}else{let e=gu("function"==typeof s.href?s.href(i):s.href);if(!e)throw new Error(`[siteping] Panel action "${s.id}": href must be an http(s) or mailto URL.`);let r=document.createElement("a");r.href=e,e.startsWith("mailto:")||(r.target="_blank"),r.rel="noopener noreferrer",t=r}}catch(e){this.callbacks.onCustomActionError(e);continue}t.className="sp-detail-btn-custom",t.setAttribute("data-action-id",s.id),t.title=s.label,t.append(...Mu(e)),r.appendChild(t)}r.childElementCount>0&&e.appendChild(r)}buildMetadata(e,t){let i=z("div",{class:"sp-detail-meta"});if(this.addMetaRow(i,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/></svg>',this.t("detail.page"),()=>{let e=z("div",{class:"sp-detail-meta-value"});return _(e,Su(function(e){try{return new URL(e).pathname}catch{return e}}(t.url),60)),e.title=t.url,e}),this.addMetaRow(i,Be,this.t("detail.author"),()=>{let e=z("div",{class:"sp-detail-meta-value"}),i=t.authorName||"Anonymous",r=t.authorEmail;return _(e,r?`${i} (${r})`:i),e}),this.addMetaRow(i,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>',this.t("detail.date"),()=>{let e=z("div",{class:"sp-detail-meta-value"});return _(e,Cu(t.createdAt,this.locale)),e}),this.addMetaRow(i,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="2" y="3" width="20" height="14" rx="2" ry="2"/><line x1="8" y1="21" x2="16" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/></svg>',this.t("detail.viewport"),()=>{let e=z("div",{class:"sp-detail-meta-value sp-detail-meta-value--mono"});return _(e,t.viewport||"Unknown"),e}),this.addMetaRow(i,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="10"/><line x1="2" y1="12" x2="22" y2="12"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/></svg>',this.t("detail.browser"),()=>{let e=z("div",{class:"sp-detail-meta-value"});return _(e,function(e){if(/Edg\//i.test(e)){let t=e.match(/Edg\/([\d.]+)/);return t?`Edge ${t[1]}`:"Edge"}if(/OPR\//i.test(e)||/Opera/i.test(e)){let t=e.match(/OPR\/([\d.]+)/);return t?`Opera ${t[1]}`:"Opera"}if(/Firefox\//i.test(e)){let t=e.match(/Firefox\/([\d.]+)/);return t?`Firefox ${t[1]}`:"Firefox"}if(/Chrome\//i.test(e)&&!/Chromium/i.test(e)){let t=e.match(/Chrome\/([\d.]+)/);return t?`Chrome ${t[1]}`:"Chrome"}if(/Safari\//i.test(e)&&!/Chrome/i.test(e)){let t=e.match(/Version\/([\d.]+)/);return t?`Safari ${t[1]}`:"Safari"}return"Unknown"}(t.userAgent)),e}),t.resolvedAt){let e=t.resolvedAt,r="wont_fix"===t.status?this.t("detail.closedAt"):this.t("detail.resolvedAt");this.addMetaRow(i,Tu,r,()=>{let t=z("div",{class:"sp-detail-meta-value sp-detail-meta-value--secondary"});return _(t,Cu(e,this.locale)),t})}e.appendChild(i)}addMetaRow(e,t,i,r){let s=z("div",{class:"sp-detail-meta-row"});s.appendChild($(t));let n=z("div",{class:"sp-detail-meta-content"}),o=z("div",{class:"sp-detail-meta-label"});_(o,i),n.appendChild(o),n.appendChild(r()),s.appendChild(n),e.appendChild(s)}buildAnnotation(e,t){let i=t.annotations[0];if(!i)return;let r=z("div",{class:"sp-detail-annotation"}),s=z("div",{class:"sp-detail-annotation-info"});if(this.addAnnotationRow(s,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/></svg>',this.t("detail.element"),()=>{let e=z("span",{class:"sp-detail-annotation-value sp-detail-annotation-value--mono"});return _(e,i.elementId?`<${i.elementTag}#${i.elementId}>`:`<${i.elementTag}>`),e}),this.addAnnotationRow(s,'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="10"/><line x1="22" y1="12" x2="18" y2="12"/><line x1="6" y1="12" x2="2" y2="12"/><line x1="12" y1="6" x2="12" y2="2"/><line x1="12" y1="22" x2="12" y2="18"/></svg>',this.t("detail.selector"),()=>{let e=z("span",{class:"sp-detail-annotation-value sp-detail-annotation-value--mono"});return _(e,Su(i.cssSelector,60)),e.title=i.cssSelector,e}),this.addAnnotationRow(s,Au,this.t("detail.position"),()=>{let e=z("span",{class:"sp-detail-annotation-value"}),t=e=>`${(100*e).toFixed(1)}%`;return _(e,`${t(i.xPct)}, ${t(i.yPct)}`+(i.wPct>0||i.hPct>0?` (${t(i.wPct)} \xd7 ${t(i.hPct)})`:"")),e}),r.appendChild(s),e.appendChild(r),!1===this.callbacks.canGoToAnnotation?.(t))return;let n=document.createElement("button");n.type="button",n.className="sp-detail-btn-goto",n.appendChild($(Au));let o=document.createElement("span");_(o,this.t("detail.goToAnnotation")),n.appendChild(o),n.addEventListener("click",()=>{this.currentFeedback&&this.callbacks.onGoToAnnotation(this.currentFeedback)}),r.appendChild(n);let a=this.callbacks.lostNote?.(t.id);a&&r.appendChild(a)}buildDiagnostics(e,t){let i=t.diagnostics;if(!i)return;let r=Array.isArray(i.console)?i.console:[],s=Array.isArray(i.network)?i.network:[],n=r.filter(e=>"error"===e.level).length,o=z("div",{class:"sp-detail-diag"}),a=document.createElement("button");a.type="button",a.className="sp-detail-diag-toggle",a.setAttribute("aria-expanded","false"),a.setAttribute("aria-label",this.t("detail.diagnostics.expand"));let l=document.createElement("span"),d=document.createElement("span");d.style.display="inline-flex",d.style.alignItems="center",d.style.gap="8px",d.appendChild($('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="9 18 15 12 9 6"/></svg>')),_(l,this.t("detail.diagnostics")),d.appendChild(l),a.appendChild(d);let c=z("span",{class:"sp-detail-diag-counts"}),p=z("span",{class:"sp-detail-diag-count"+(n>0?" sp-detail-diag-count--errors":"")});_(p,`${r.length} console`);let h=z("span",{class:"sp-detail-diag-count"+(s.length>0?" sp-detail-diag-count--errors":"")});_(h,`${s.length} net`),c.appendChild(p),c.appendChild(h),a.appendChild(c);let u=z("div",{class:"sp-detail-diag-body"});if(r.length>0){let e=document.createElement("div"),t=z("div",{class:"sp-detail-diag-group-title"});_(t,this.t("detail.diagnostics.console")),e.appendChild(t);let i=document.createElement("ul");i.className="sp-detail-diag-list";for(let e of r){let t=document.createElement("li"),r=z("span",{class:`sp-detail-diag-level sp-detail-diag-level--${e.level}`});_(r,e.level);let s=z("span",{class:"sp-detail-diag-message"});_(s,Su(e.message,240)),s.title=e.message,t.appendChild(r),t.appendChild(s),i.appendChild(t)}e.appendChild(i),u.appendChild(e)}if(s.length>0){let e=document.createElement("div"),t=z("div",{class:"sp-detail-diag-group-title"});_(t,this.t("detail.diagnostics.network")),e.appendChild(t);let i=document.createElement("ul");i.className="sp-detail-diag-list";for(let e of s){let t=document.createElement("li");t.classList.add("sp-detail-diag-net");let r=z("span",{class:"sp-detail-diag-net-status"});_(r,0===e.status?"ERR":String(e.status));let s=z("span",{class:"sp-detail-diag-net-method"});_(s,e.method);let n=z("span",{class:"sp-detail-diag-net-url"});_(n,Su(e.url,120)),n.title=`${e.url} \u2014 ${Eu(e.durationMs)}`,t.appendChild(r),t.appendChild(s),t.appendChild(n),i.appendChild(t)}e.appendChild(i),u.appendChild(e)}a.addEventListener("click",()=>{let e=!("true"===a.getAttribute("aria-expanded"));a.setAttribute("aria-expanded",String(e)),a.setAttribute("aria-label",e?this.t("detail.diagnostics.collapse"):this.t("detail.diagnostics.expand")),u.classList.toggle("sp-detail-diag-body--open",e)}),o.appendChild(a),o.appendChild(u),e.appendChild(o)}addAnnotationRow(e,t,i,r){let s=z("div",{class:"sp-detail-annotation-row"});s.appendChild($(t));let n=z("div",{class:"sp-detail-meta-content"}),o=z("div",{class:"sp-detail-annotation-label"});_(o,i),n.appendChild(o),n.appendChild(r()),s.appendChild(n),e.appendChild(s)}handleResolve(){return this.run("resolve",e=>this.callbacks.onResolve(e))}handleDelete(){return this.run("delete",e=>this.callbacks.onDelete(e))}async run(e,t){let i=this.currentFeedback;if(i&&!this.pending.has(i.id)){this.pending.set(i.id,e),this.lock(e);try{await t(i)}catch{}finally{this.pending.delete(i.id),this.currentFeedback?.id===i.id&&this.unlock(e,this.currentFeedback)}}}lock(e){this.setActionsDisabled(!0);let t=this.buttonFor(e);t&&(this.setButtonLoading(t),t.setAttribute("aria-busy","true"))}unlock(e,t){let i=this.buttonFor(e);i?.removeAttribute("aria-busy"),"resolve"===e?this.restoreResolveBtn(t):"delete"===e?this.restoreDeleteBtn():i?.replaceChildren(...Mu(e)),this.setActionsDisabled(!1)}buttonFor(e){return"resolve"===e?this.resolveBtn:"delete"===e?this.deleteBtn:this.customBtns.find(t=>t.dataset.actionId===e.action.id)??null}setActionsDisabled(e){for(let t of[this.resolveBtn,this.deleteBtn,...this.customBtns])t&&(t.disabled=e)}setButtonLoading(e){e.disabled=!0,e.replaceChildren(z("div",{class:"sp-spinner sp-spinner--sm"}))}restoreResolveBtn(e){if(!this.resolveBtn)return;this.resolveBtn.disabled=!1,this.resolveBtn.replaceChildren();let t=x(e.status);this.resolveBtn.appendChild($(t?'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="1 4 1 10 7 10"/><path d="M3.51 15a9 9 0 1 0 2.13-9.36L1 10"/></svg>':Tu));let i=document.createElement("span");_(i,t?this.t("detail.reopen"):this.t("detail.resolve")),this.resolveBtn.appendChild(i)}restoreDeleteBtn(){if(!this.deleteBtn)return;this.deleteBtn.disabled=!1,this.deleteBtn.replaceChildren(),this.deleteBtn.appendChild($('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="3 6 5 6 21 6"/><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/><line x1="10" y1="11" x2="10" y2="17"/><line x1="14" y1="11" x2="14" y2="17"/></svg>'));let e=document.createElement("span");_(e,this.t("detail.delete")),this.deleteBtn.appendChild(e)}}});function Lu(e){try{return new URL(e).pathname}catch{return e}}function Pu(e,t){let i=z("div",{class:"sp-group-header"});i.setAttribute("role","button"),i.setAttribute("tabindex","0"),i.setAttribute("aria-expanded","true"),i.style.borderBottomColor="var(--sp-border)";let r=z("span",{class:"sp-group-header-chevron"});r.appendChild($(Nu)),i.appendChild(r);let s=z("span",{class:"sp-group-header-icon"});s.appendChild($(Iu)),i.appendChild(s);let n=z("span",{class:"sp-group-header-path"}),o=function(e){if(e.length<=40)return e;let t=Math.floor(19.5);return e.slice(0,t)+"\u2026"+e.slice(-t)}(e);_(n,o),e.length>40&&(n.title=e),i.appendChild(n);let a=z("span",{class:"sp-group-header-count"});a.style.background="var(--sp-accent-light)",a.style.color="var(--sp-accent)",_(a,String(t)),i.appendChild(a);let l=()=>{let e="true"===i.getAttribute("aria-expanded");i.setAttribute("aria-expanded",String(!e)),i.classList.toggle("sp-group-header--collapsed",e);let t=i.nextElementSibling;t?.classList.contains("sp-group-content")&&t.classList.toggle("sp-group-content--collapsed",e)};return i.addEventListener("click",l),i.addEventListener("keydown",e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),l())}),i}var Iu,Nu,Du,Ou,Fu,$u,zu,_u=i(()=>{O(),G(),Iu='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/><polyline points="10 9 9 9 8 9"/></svg>',Nu='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="9 18 15 12 9 6"/></svg>',Du={question:0,change:1,bug:2,other:3},Ou=class{element;_sortMode="newest";_groupByPage=!1;menuEl=null;sortBtn;sortDropdown;groupToggle;t;onChange;removeOutsideClick=null;constructor(e,t){this.onChange=e,this.t=t,this.element=z("div",{class:"sp-sort-controls"}),this.sortBtn=document.createElement("button"),this.sortBtn.className="sp-sort-btn",this.sortBtn.setAttribute("aria-haspopup","listbox"),this.sortBtn.setAttribute("aria-expanded","false");let i=$('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M11 5h10"/><path d="M11 9h7"/><path d="M11 13h4"/><path d="M3 17l3 3 3-3"/><path d="M6 18V4"/></svg>');this.sortBtn.appendChild(i),this.sortBtn.appendChild(z("span",{class:"sp-sort-btn-label"})),this.updateSortLabel(),this.sortBtn.addEventListener("click",e=>{e.stopPropagation(),this.toggleMenu()}),this.groupToggle=document.createElement("button"),this.groupToggle.className="sp-group-toggle",this.groupToggle.setAttribute("aria-pressed","false");let r=$(Iu);this.groupToggle.appendChild(r);let s=z("span",{class:"sp-group-toggle-label"});_(s,this.t("group.byPage")),this.groupToggle.appendChild(s),this.groupToggle.addEventListener("click",()=>{this._groupByPage=!this._groupByPage,this.groupToggle.classList.toggle("sp-group-toggle--active",this._groupByPage),this.groupToggle.setAttribute("aria-pressed",String(this._groupByPage)),this.onChange()}),this.sortDropdown=z("div",{class:"sp-sort-dropdown"}),this.sortDropdown.appendChild(this.sortBtn),this.element.appendChild(this.sortDropdown),this.element.appendChild(this.groupToggle),this.element.addEventListener("keydown",e=>{"Escape"!==e.key||!this.menuEl||(e.stopPropagation(),this.closeMenu(),this.sortBtn.focus())})}get sortMode(){return this._sortMode}get groupByPage(){return this._groupByPage}toggleMenu(){this.menuEl?this.closeMenu():this.openMenu()}openMenu(){this.menuEl=z("div",{class:"sp-sort-menu"}),this.menuEl.setAttribute("role","listbox"),this.menuEl.setAttribute("aria-label",this.t("sort.label")),this.sortBtn.setAttribute("aria-expanded","true");let e=[{mode:"newest",label:this.t("sort.newest")},{mode:"oldest",label:this.t("sort.oldest")},{mode:"by-type",label:this.t("sort.byType")},{mode:"open-first",label:this.t("sort.openFirst")}];for(let t of e){let e=document.createElement("button");e.className="sp-sort-option"+(t.mode===this._sortMode?" sp-sort-option--active":""),e.setAttribute("role","option"),e.setAttribute("aria-selected",String(t.mode===this._sortMode)),t.mode===this._sortMode&&(e.style.background="var(--sp-accent-light)",e.style.color="var(--sp-accent-text)"),_(e,t.label),e.addEventListener("click",e=>{e.stopPropagation(),this._sortMode=t.mode,this.updateSortLabel(),this.closeMenu(),this.onChange()}),this.menuEl.appendChild(e)}this.sortDropdown.appendChild(this.menuEl),this.removeOutsideClick=W(this.sortDropdown,()=>this.closeMenu())}closeMenu(){this.menuEl&&(this.menuEl.remove(),this.menuEl=null),this.sortBtn.setAttribute("aria-expanded","false"),this.removeOutsideClick?.(),this.removeOutsideClick=null}updateSortLabel(){let e={newest:this.t("sort.newest"),oldest:this.t("sort.oldest"),"by-type":this.t("sort.byType"),"open-first":this.t("sort.openFirst")}[this._sortMode],t=this.sortBtn.querySelector(".sp-sort-btn-label");t&&_(t,e),this.sortBtn.setAttribute("aria-label",`${this.t("sort.label")}: ${e}`)}destroy(){this.closeMenu()}},Fu='.sp-sort-controls{display:flex;align-items:center;gap:6px;margin-top:4px;padding-top:8px;border-top:1px solid var(--sp-border);}.sp-sort-dropdown{display:contents;}.sp-sort-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all 0.2s ease;position:relative;}.sp-sort-btn svg{width:14px;height:14px;flex-shrink:0;}.sp-sort-btn:hover{border-color:var(--sp-accent);color:var(--sp-accent-text);background:var(--sp-accent-light);}.sp-sort-btn[aria-expanded="true"]{border-color:var(--sp-accent);color:var(--sp-accent-text);background:var(--sp-accent-light);}.sp-sort-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:170px;padding:4px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-md);z-index:10;animation:sp-sort-menu-in 0.15s ease-out both;}@keyframes sp-sort-menu-in{from{opacity:0;transform:translateY(-4px) scale(0.97);}to{opacity:1;transform:translateY(0) scale(1);}}.sp-sort-option{display:block;width:100%;padding:8px 12px;border:none;border-radius:8px;background:transparent;color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;text-align:left;transition:all 0.15s ease;}.sp-sort-option:hover{background:var(--sp-bg-hover);color:var(--sp-text);}.sp-sort-option--active{font-weight:600;}.sp-sort-option--active:hover{background:var(--sp-accent-light);color:var(--sp-accent-text);}.sp-group-toggle,.sp-mine-toggle{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all 0.2s ease;}.sp-group-toggle svg,.sp-mine-toggle svg{width:13px;height:13px;flex-shrink:0;}.sp-group-toggle:hover,.sp-mine-toggle:hover{border-color:var(--sp-accent);color:var(--sp-accent-text);background:var(--sp-accent-light);}.sp-group-toggle--active,.sp-mine-toggle--active{background:var(--sp-accent-gradient);border-color:transparent;color:#fff;box-shadow:0 2px 8px var(--sp-accent-glow);}.sp-group-toggle--active:hover,.sp-mine-toggle--active:hover{background:var(--sp-accent-gradient);border-color:transparent;color:#fff;}.sp-group-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--sp-accent-light);border-bottom:1px solid var(--sp-border);cursor:pointer;user-select:none;position:sticky;top:0;z-index:2;transition:background 0.2s ease;}.sp-group-header:hover{background:var(--sp-bg-hover);}.sp-group-header:focus-visible{outline:2px solid var(--sp-accent);outline-offset:-2px;}.sp-group-header-chevron{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;transition:transform 0.2s ease;transform:rotate(90deg);}.sp-group-header-chevron svg{width:12px;height:12px;color:var(--sp-text-tertiary);}.sp-group-header--collapsed .sp-group-header-chevron{transform:rotate(0deg);}.sp-group-header-icon{display:flex;align-items:center;flex-shrink:0;}.sp-group-header-icon svg{width:14px;height:14px;color:var(--sp-text-tertiary);}.sp-group-header-path{font-size:12px;font-weight:600;color:var(--sp-text-secondary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sp-group-header-count{font-size:11px;font-weight:700;padding:1px 8px;border-radius:var(--sp-radius-full);flex-shrink:0;font-variant-numeric:tabular-nums;}.sp-group-content{overflow:hidden;transition:max-height 0.25s ease,opacity 0.2s ease;max-height:5000px;opacity:1;}.sp-group-content--collapsed{max-height:0;opacity:0;pointer-events:none;}@media (forced-colors: active){.sp-sort-btn,.sp-group-toggle,.sp-mine-toggle,.sp-sort-option,.sp-group-header{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-group-toggle--active,.sp-mine-toggle--active{background:Highlight !important;color:HighlightText !important;}.sp-sort-btn:focus-visible,.sp-group-toggle:focus-visible,.sp-mine-toggle:focus-visible,.sp-sort-option:focus-visible,.sp-group-header:focus-visible{outline:3px solid Highlight !important;}.sp-sort-menu{border:2px solid ButtonText !important;background:Canvas !important;}}@media (prefers-reduced-motion: reduce){.sp-sort-menu{animation:none;}.sp-group-header-chevron{transition:none;}.sp-group-content{transition:none;}}'}),Wu=i(()=>{O(),G(),su(),$u='.sp-stats-bar{display:flex;flex-direction:column;gap:8px;padding:12px 24px;border-bottom:1px solid var(--sp-border);user-select:none;}.sp-stats-bar[hidden]{display:none;}.sp-stats-row{display:flex;align-items:center;gap:16px;}.sp-stats-item{display:flex;align-items:center;gap:6px;}.sp-stats-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}.sp-stats-value{font-size:16px;font-weight:600;line-height:1;color:var(--sp-text);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";transition:opacity 0.3s ease;}.sp-stats-label{font-size:11px;line-height:1;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.04em;}.sp-stats-progress{display:flex;align-items:center;gap:8px;}.sp-stats-progress-track{flex:1;height:4px;border-radius:2px;background:var(--sp-border);overflow:hidden;}.sp-stats-progress-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--sp-accent),#22c55e);width:0%;transition:width 0.5s ease;}.sp-stats-progress-label{font-size:10px;line-height:1;color:var(--sp-text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";min-width:64px;text-align:right;}',zu=class{element;valueOpen;valueClosed;valueBugs;progressFill;progressLabel;t;constructor(e){this.t=e,this.element=z("div",{class:"sp-stats-bar"}),this.element.setAttribute("aria-label",e("stats.aria")),this.element.hidden=!0;let t=z("div",{class:"sp-stats-row"}),i=z("div",{class:"sp-stats-item"}),r=z("span",{class:"sp-stats-dot"});r.style.background="#22c55e",this.valueOpen=z("span",{class:"sp-stats-value"}),_(this.valueOpen,"0");let s=z("span",{class:"sp-stats-label"});_(s,this.t("stats.open")),i.appendChild(r),i.appendChild(this.valueOpen),i.appendChild(s);let n=z("div",{class:"sp-stats-item"}),o=z("span",{class:"sp-stats-dot"});o.style.background="#9ca3af",this.valueClosed=z("span",{class:"sp-stats-value"}),_(this.valueClosed,"0");let a=z("span",{class:"sp-stats-label"});_(a,this.t("stats.closed")),n.appendChild(o),n.appendChild(this.valueClosed),n.appendChild(a);let l=z("div",{class:"sp-stats-item"}),d=z("span",{class:"sp-stats-dot"});d.style.background="var(--sp-type-bug)",this.valueBugs=z("span",{class:"sp-stats-value"}),_(this.valueBugs,"0");let c=z("span",{class:"sp-stats-label"});_(c,this.t("stats.bugs")),l.appendChild(d),l.appendChild(this.valueBugs),l.appendChild(c),t.appendChild(i),t.appendChild(n),t.appendChild(l);let p=z("div",{class:"sp-stats-progress"}),h=z("div",{class:"sp-stats-progress-track"});this.progressFill=z("div",{class:"sp-stats-progress-fill"}),h.appendChild(this.progressFill),this.progressLabel=z("span",{class:"sp-stats-progress-label"}),_(this.progressLabel,""),p.appendChild(h),p.appendChild(this.progressLabel),this.element.appendChild(t),this.element.appendChild(p)}update(e,t){if(0===t)return void(this.element.hidden=!0);this.element.hidden=!1;let i=0,r=0,s=0;for(let t of e)x(t.status)?r++:i++,"bug"===t.type&&s++;_(this.valueOpen,String(i)),_(this.valueClosed,String(r)),_(this.valueBugs,String(s));let n=e.length,o=n>0?Math.round(r/n*100):0;requestAnimationFrame(()=>{this.progressFill.style.width=`${o}%`});let a=ru(this.t,"stats.progress",{percent:o});_(this.progressLabel,a)}}});function Hu(e){let t=Array.from(e.querySelectorAll(".sp-card")),i=e.getRootNode().activeElement?.closest(".sp-card"),r=i?t.indexOf(i):-1;return r>=0?r:t.findIndex(e=>e.classList.contains("sp-card--focused"))}var Vu,ju,Uu,Yu=i(()=>{G(),Vu=[{keys:["J","K"],label:"shortcuts.navigate"},{keys:["R"],label:"shortcuts.resolve"},{keys:["D"],label:"shortcuts.delete"},{keys:["F","/"],label:"shortcuts.search"},{keys:["X"],label:"shortcuts.select"},{keys:["?"],label:"shortcuts.help"},{keys:["Esc"],label:"shortcuts.close"}],ju=class{constructor(e,t,i){this.t=i,this.keyMap=new Map([["j",()=>t.onNavigate("down")],["k",()=>t.onNavigate("up")],["r",()=>t.onResolve()],["d",()=>t.onDelete()],["f",()=>t.onFocusSearch()],["/",()=>t.onFocusSearch()],["x",()=>t.onToggleSelect()],["?",()=>this.toggleHelp()]]),this.isSuspended=t.isSuspended??(()=>!1),this.helpOverlay=this.buildOverlay(),this.hintButton=this.buildHintButton(),this.boundHandler=e=>this.handleKeydown(e)}t;helpOverlay;hintButton;keyMap;isSuspended;boundHandler;shadowRoot=null;enabled=!1;helpVisible=!1;opener=null;destroyed=!1;enable(e){this.destroyed||this.enabled||(e&&(this.shadowRoot=e),(this.shadowRoot??document).addEventListener("keydown",this.boundHandler),this.enabled=!0)}disable(){this.enabled&&((this.shadowRoot??document).removeEventListener("keydown",this.boundHandler),this.enabled=!1,this.helpVisible&&this.hideHelp())}get isHelpVisible(){return this.helpVisible}toggleHelp(){this.helpVisible?this.hideHelp():this.showHelp()}destroy(){this.destroyed||(this.disable(),this.helpOverlay.remove(),this.hintButton.remove(),this.destroyed=!0)}handleKeydown(e){if("Escape"===e.key)return void(this.helpVisible&&(e.preventDefault(),e.stopPropagation(),this.hideHelp()));if(this.helpVisible||this.isSuspended())return;let t=e.composedPath();if(t.some(e=>e instanceof Element&&"true"===e.getAttribute("aria-modal")))return;let i=t[0];if(i){let e=i.tagName?.toLowerCase();if("input"===e||"textarea"===e||"select"===e||i.isContentEditable)return}if(e.ctrlKey||e.altKey||e.metaKey)return;let r=this.keyMap.get(e.key);r&&(e.preventDefault(),e.stopPropagation(),r())}showHelp(){let e=this.helpOverlay.getRootNode().activeElement;this.opener=e instanceof HTMLElement?e:null,this.helpVisible=!0,V(this.helpOverlay,!1),this.helpOverlay.classList.add("sp-shortcuts-overlay--visible"),this.helpOverlay.querySelector(".sp-shortcuts-close")?.focus()}hideHelp(){this.helpVisible=!1;let e=j(this.helpOverlay);V(this.helpOverlay,!0),this.helpOverlay.classList.remove("sp-shortcuts-overlay--visible"),e&&this.opener?.isConnected&&this.opener.focus(),this.opener=null}buildOverlay(){let e=z("div",{class:"sp-shortcuts-overlay"});e.setAttribute("role","dialog"),e.setAttribute("aria-modal","true"),e.setAttribute("aria-label",this.t("shortcuts.title")),V(e,!0),e.addEventListener("click",t=>{t.target===e&&this.hideHelp()});let t=z("div",{class:"sp-shortcuts-card"}),i=z("div",{class:"sp-shortcuts-title"});i.appendChild($('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="2" y="4" width="20" height="16" rx="2"/><path d="M6 8h.01"/><path d="M10 8h.01"/><path d="M14 8h.01"/><path d="M18 8h.01"/><path d="M6 12h.01"/><path d="M18 12h.01"/><path d="M8 16h8"/></svg>'));let r=z("span");_(r,this.t("shortcuts.title")),i.appendChild(r),t.appendChild(i);let s=document.createElement("button");s.className="sp-shortcuts-close",s.setAttribute("aria-label",this.t("shortcuts.close")),s.appendChild($('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>')),s.addEventListener("click",()=>this.hideHelp()),t.appendChild(s);let n=z("div",{class:"sp-shortcuts-grid"});for(let e of Vu){let t=z("div",{class:"sp-shortcuts-row"}),i=z("div",{class:"sp-shortcuts-keys"});e.keys.forEach((e,t)=>{if(t>0){let e=z("span",{class:"sp-shortcuts-separator"});_(e,"/"),i.appendChild(e)}let r=z("span",{class:"sp-kbd"});_(r,e),i.appendChild(r)});let r=z("span",{class:"sp-shortcuts-desc"});_(r,this.t(e.label)),t.appendChild(i),t.appendChild(r),n.appendChild(t)}return t.appendChild(n),e.appendChild(t),e}buildHintButton(){let e=document.createElement("button");return e.className="sp-shortcuts-hint",e.setAttribute("aria-label",this.t("shortcuts.hint")),_(e,"?"),e.addEventListener("click",e=>{e.stopPropagation(),this.toggleHelp()}),e}}}),qu=i(()=>{G(),Uu=class{element;current;opts;onChange;datasetKey;constructor(e){this.opts=e.options,this.current=e.value,this.onChange=e.onChange,this.datasetKey=e.datasetKey,this.element=z("div",{class:"sp-segmented"+(e.extraClass?` ${e.extraClass}`:""),role:"radiogroup"}),this.element.setAttribute("aria-label",e.ariaLabel);for(let t of this.opts){let i=document.createElement("button");i.type="button",i.className=void 0!==e.modifierPrefix?`sp-segmented__btn ${e.modifierPrefix}${t.value}`:"sp-segmented__btn",i.dataset[this.datasetKey]=t.value,i.setAttribute("role","radio");let r=this.current===t.value;if(i.setAttribute("aria-checked",String(r)),i.tabIndex=r?0:-1,r&&i.classList.add("sp-segmented__btn--active"),t.color&&i.style.setProperty("--sp-chip-color",t.color),t.bg&&i.style.setProperty("--sp-chip-bg",t.bg),t.icon){let e=z("span",{class:"sp-segmented__icon"});e.appendChild($(t.icon)),i.appendChild(e)}let s=z("span",{class:"sp-segmented__label"});_(s,t.label),i.appendChild(s),i.addEventListener("click",()=>this.select(t.value)),i.addEventListener("keydown",e=>this.handleKey(e,t.value)),this.element.appendChild(i)}}select(e){this.current=e,this.syncSelection(),this.onChange(e)}syncSelection(){let e=this.element.querySelectorAll(".sp-segmented__btn");for(let t of e){let e=t.dataset[this.datasetKey]===this.current;t.classList.toggle("sp-segmented__btn--active",e),t.setAttribute("aria-checked",String(e)),t.tabIndex=e?0:-1}}setOptionVisible(e,t){let i=this.element.querySelector(`[data-${this.kebabKey()}="${e}"]`);return!!i&&(i.style.display=t?"":"none",!0)}get value(){return this.current}focusOption(e){this.element.querySelector(`[data-${this.kebabKey()}="${e}"]`)?.focus()}handleKey(e,t){let i,r=this.opts.map(e=>e.value).filter(e=>{let t=this.element.querySelector(`[data-${this.kebabKey()}="${e}"]`);return null!==t&&"none"!==t.style.display}),s=r.indexOf(t);if(s<0)return;switch(e.key){case"ArrowLeft":i=(s-1+r.length)%r.length;break;case"ArrowRight":i=(s+1)%r.length;break;case"Home":i=0;break;case"End":i=r.length-1;break;default:return}e.preventDefault();let n=r[i];void 0!==n&&(this.select(n),this.focusOption(n))}kebabKey(){return this.datasetKey.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}}});function Gu({input:e,send:t},i){e.readOnly=i,t.setAttribute("aria-busy",String(i)),t.setAttribute("aria-disabled",String(i))}var Ku,Xu=i(()=>{O(),G(),Ze(),Ku=0}),Ju={};function Qu(e,t){let i=z("div",{class:e});return i.setAttribute("role","list"),i.setAttribute("aria-label",t),i}r(Ju,{Panel:()=>ef});var Zu,ef,tf=i(()=>{O(),qu(),G(),pu(),Pe(),su(),Ie(),ku(),hu(),Ru(),_u(),Wu(),Xu(),Yu(),qe(),Ze(),Zu=C.filter(e=>!x(e)),ef=class{constructor(e,t,i,r,s,n,o,a,l){this.colors=t,this.bus=i,this.client=r,this.projectName=s,this.markers=n,this.t=o,this.locale=a,this.shadowRoot=e,this.readOnly=!!l?.readOnly,this.resolveIdentity=l?.resolveIdentity??(async()=>null),this.getScope=l?.getScope??(()=>({url:window.location.pathname,urlPattern:null})),this.scopeAnnotationsByUrl=l?.scopeAnnotationsByUrl??!0,this.ownFeedback=l?.ownFeedback??{ids:()=>new Set,remove:()=>{}},this.scrim=z("div",{class:"sp-scrim"}),this.scrim.addEventListener("click",()=>this.close()),this.root=z("div",{class:"sp-panel"}),this.root.setAttribute("role","complementary"),this.root.setAttribute("aria-label",this.t("panel.ariaLabel")),this.root.setAttribute("aria-hidden","true"),V(this.root,!0);let d=z("div",{class:"sp-panel-header"}),c=z("span",{class:"sp-panel-title"});_(c,this.t("panel.title")),this.closeBtn=document.createElement("button"),this.closeBtn.className="sp-panel-close",this.closeBtn.setAttribute("aria-label",this.t("panel.close")),this.closeBtn.appendChild($(me)),this.closeBtn.addEventListener("click",()=>this.close()),this.deleteAllBtn=document.createElement("button"),this.deleteAllBtn.className="sp-btn-delete-all",this.deleteAllBtn.setAttribute("aria-label",this.t("panel.deleteAll")),this.deleteAllBtn.appendChild($(Te));let p=document.createElement("span");_(p,` ${this.t("panel.deleteAll")}`),this.deleteAllBtn.appendChild(p),this.deleteAllBtn.addEventListener("click",()=>this.confirmDeleteAll()),H(this.deleteAllBtn,!0),this.exportBtn=new au(t,()=>this.feedbacks,this.t);let h=z("div",{class:"sp-panel-header-right"});h.appendChild(this.exportBtn.element),h.appendChild(this.deleteAllBtn),h.appendChild(this.closeBtn),d.appendChild(c),d.appendChild(h),this.stats=new zu(this.t);let u=z("div",{class:"sp-filters"}),f=z("div",{class:"sp-search-wrap"}),g=$(be);g.setAttribute("class","sp-search-icon"),this.searchInput=document.createElement("input"),this.searchInput.type="text",this.searchInput.className="sp-search",this.searchInput.placeholder=this.t("panel.search"),this.searchInput.setAttribute("aria-label",this.t("panel.searchAria")),this.searchInput.addEventListener("input",()=>{this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout(()=>this.loadFeedbacks().catch(()=>{}),200)}),f.appendChild(g),f.appendChild(this.searchInput);let m=z("div",{class:"sp-filter-bar"});m.appendChild(this.buildTypeDropdown()),m.appendChild(this.buildStatusSegmented()),m.appendChild(this.buildScopeSegmented()),m.appendChild(this.buildMineToggle()),this.sortControls=new Ou(()=>this.renderList(),this.t),u.appendChild(f),u.appendChild(m),u.appendChild(this.sortControls.element),this.listContainer=z("div",{class:"sp-list"}),this.bulk=new cu(t,{onResolve:e=>this.bulkResolve(e),onDelete:e=>this.bulkDelete(e),permits:(e,t)=>this.feedbacks.every(i=>!e.includes(i.id)||this.can(i,t))},this.t),this.bulk.setListContainer(this.listContainer),this.detail=new Bu(t,{onBack:()=>this.detail.hide(),onResolve:async e=>{try{let t=!x(e.status);await this.client.resolveFeedback(e.id,t),await this.loadFeedbacks(),this.hideDetailOf(e.id)}catch(e){throw this.bus.emit("feedback:error",e instanceof Error?e:new Error(String(e))),e}},onDelete:async e=>{try{await this.client.deleteFeedback(e.id),this.bus.emit("feedback:deleted",e.id),await this.loadFeedbacks(),this.hideDetailOf(e.id)}catch(e){throw this.bus.emit("feedback:error",e instanceof Error?e:new Error(String(e))),e}},canGoToAnnotation:e=>!this.scopeAnnotationsByUrl||e.url===this.getScope().url,lostNote:e=>this.lostNote(e),onGoToAnnotation:e=>{if(e.annotations.length>0){let t=e.annotations[0];if(!t)return;this.markers.revealPin(e.id)||(window.scrollTo({left:t.scrollX,top:t.scrollY,behavior:"smooth"}),this.markers.pinHighlight(e)),Ke()&&this.close()}},onCustomAction:async(e,t)=>{try{await e.onAction(t,{refresh:()=>this.refreshDetail(t.id),close:()=>this.close()})}catch(e){this.reportActionError(e)}},onCustomActionError:e=>this.reportActionError(e),permits:(e,t)=>this.can(e,t),buildThread:e=>function(e,{t:t,locale:i,canPost:r,draft:s,post:n}){let o=e.comments??[];if(!r&&0===o.length)return null;let a=z("div"),l=z("ol",{class:"sp-thread-list",role:"list","aria-label":t("comments.title"),"aria-live":"polite"}),d=new Set,c=e=>{if(d.has(e.id))return;d.add(e.id);let r=z("li",{class:"sp-detail-message sp-comment","data-role":e.authorRole}),s=z("div",{class:"sp-comment-head"}),n=z("span");if(_(n,e.authorName),s.appendChild(n),"team"===e.authorRole){let e=z("span",{class:"sp-badge"});_(e,t("comments.team")),s.appendChild(e)}let o=z("time",{datetime:e.createdAt});_(o,q(e.createdAt,i)),s.appendChild(o);let a=z("div");_(a,e.body),r.append(s,a),l.appendChild(r)};for(let e of o)c(e);if(a.appendChild(l),!r)return a;let p=document.createElement("textarea");p.className="sp-input sp-thread-input",p.rows=3,p.maxLength=E,p.placeholder=t("comments.placeholder"),p.setAttribute("aria-label",p.placeholder),p.value=s.text,p.addEventListener("input",()=>{s.text=p.value});let h=z("div",{class:"sp-thread-foot"}),u=z("span",{id:"sp-thread-hint-"+ ++Ku});Xe()||(_(u,t(Y()?"popup.submitHintMac":"popup.submitHintOther")),p.setAttribute("aria-describedby",u.id),p.setAttribute("aria-keyshortcuts","Control+Enter Meta+Enter"));let f=document.createElement("button");f.type="button",f.className="sp-btn-primary",_(f,t("popup.submit")),h.append(u,f);let g=z("div",{class:"sp-thread-error",role:"alert"});a.append(p,h,g);let m={add:c,input:p,send:f,error:g};s.view=m,Gu(m,!0===s.sending);let b=async()=>{s.text=p.value;let e=s.text.trim();if(s.sending||!e)return;s.sent?.body!==e&&(s.sent={body:e,clientId:R()});let{clientId:i}=s.sent;s.sending=!0,_(g,""),Gu(m,!0);let r="",o=null;try{o=await n(e,i)}catch(e){r=t(function(e){return 409===I(e,"status")||"STORE_LIMIT"===I(e,"code")}(e)?"comments.full":"comments.error")}s.sending=!1;let a=s.view??m;Gu(a,!1),_(a.error,r),o&&(a.add(o),a.input.value=s.text="",s.sent=void 0)};return f.addEventListener("click",()=>{b()}),p.addEventListener("keydown",e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),b())}),a}(e,{t:this.t,locale:a,canPost:this.canComment&&!1!==e.permissions?.canComment,draft:this.draftOf(e.id),post:(t,i)=>this.postComment(e,t,i)})},this.t,a,function(e){let t=[];if(!Array.isArray(e))return t;let i=new Set;return e.forEach((e,r)=>{let s=`[siteping] panelActions[${r}]`,n=e?.id;if("string"==typeof n&&n&&"string"==typeof e?.label&&e.label)if(vu(e)||wu(e))if("string"!=typeof e.href||gu(e.href))if(i.has(n))console.warn(`${s} ignored: duplicate id "${n}".`);else{i.add(n);let r=void 0===e.icon?null:fu(e.icon);void 0!==e.icon&&!r&&console.warn(`${s} ("${n}"): \`icon\` is not SVG markup \u2014 showing the label only.`),t.push({action:e,icon:r})}else console.warn(`${s} ("${n}") ignored: \`href\` must be an http(s) or mailto URL.`);else console.warn(`${s} ("${n}") ignored: it needs either an \`onAction\` function or an \`href\`, not both.`);else console.warn(`${s} ignored: it needs a non-empty string \`id\` and \`label\`.`)}),t}(l?.panelActions)),this.shortcuts=new ju(t,{onNavigate:e=>{let t=Hu(this.listContainer);!function(e,t){let i=e.querySelectorAll(".sp-card");if(0===i.length)return;for(let e of i)e.classList.remove("sp-card--focused");let r=i[Math.max(0,Math.min(t,i.length-1))];r&&(r.classList.add("sp-card--focused"),r.scrollIntoView({block:"nearest",behavior:"smooth"}),r.focus({preventScroll:!0}))}(this.listContainer,"down"===e?t+1:t-1)},onResolve:()=>this.pressInFocusedCard('[data-action="resolve"]'),onDelete:()=>this.pressInFocusedCard('[data-action="delete"]'),onFocusSearch:()=>this.searchInput.focus(),onToggleSelect:()=>this.pressInFocusedCard(".sp-bulk-checkbox"),isSuspended:()=>this.detail.isVisible},this.t),this.root.appendChild(d),this.root.appendChild(this.stats.element),this.root.appendChild(u),this.root.appendChild(this.listContainer),this.root.appendChild(this.bulk.barElement),this.root.appendChild(this.detail.element),this.root.appendChild(this.shortcuts.helpOverlay),this.root.appendChild(this.shortcuts.hintButton),e.appendChild(this.scrim),e.appendChild(this.root),this.attachSheetDrag(),this.onListClick=e=>{let t=e.target;if(t.closest(".sp-bulk-checkbox"))return;let i=t.closest("[data-action]");if(i){e.stopPropagation();let t=i.closest(".sp-card");if(!t)return;let r=t.dataset.feedbackId,s=this.feedbacks.find(e=>e.id===r);if(!s)return;let n=i.dataset.action;if("expand"===n){let e=t.querySelector(".sp-card-message");if(!e)return;let r=e.classList.toggle("sp-card-message--expanded");_(i,r?this.t("panel.showLess"):this.t("panel.showMore")),i.setAttribute("aria-expanded",String(r))}else if("resolve"===n){if(this.pendingMutations.has(s.id))return;let e=i;this.toggleResolve(s,e).catch(()=>{})}else if("delete"===n){if(this.pendingMutations.has(s.id))return;let e=i;this.deleteFeedback(s,e).catch(()=>{})}return}let r=t.closest(".sp-card");if(r){let e=r.dataset.feedbackId,t=this.feedbacks.find(t=>t.id===e);t&&this.detail.show(t,Number(r.dataset.number))}},this.listContainer.addEventListener("click",this.onListClick),this.onListKeydown=e=>{let t=e;if("Enter"!==t.key&&" "!==t.key)return;let i=t.target,r=i.closest(".sp-card");if(!r||i!==r)return;t.preventDefault();let s=r.dataset.feedbackId,n=this.feedbacks.find(e=>e.id===s);n&&this.detail.show(n,Number(r.dataset.number))},this.listContainer.addEventListener("keydown",this.onListKeydown),this.onListMouseover=e=>{let t=e.target.closest(".sp-card");if(!t)return;let i=t.dataset.feedbackId;i&&this.markers.highlight(i)},this.listContainer.addEventListener("mouseover",this.onListMouseover),this.onListMouseout=e=>{let t=e.relatedTarget;t&&this.listContainer.contains(t)||this.markers.highlight("")},this.listContainer.addEventListener("mouseout",this.onListMouseout),this.bus.on("markers:placed",()=>this.syncLostNotes()),this.bus.on("panel:toggle",e=>{e?this.open():this.close()}),Q(e,()=>this.isOpen),Z(e,t=>{if("Escape"===t.key&&this.isOpen){if(this.shortcuts.isHelpVisible)return;return this.detail.isVisible?void this.detail.hide():void this.close()}if("Tab"===t.key&&this.isOpen){let i=e=>{let t=e;for(;t&&t!==this.root;){if("none"===getComputedStyle(t).display)return!1;t=t.parentElement}return!0},r=this.shortcuts.isHelpVisible?this.shortcuts.helpOverlay:this.detail.isVisible?this.detail.element:this.root,s=Array.from(r.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])')).filter(e=>i(e)&&!e.hasAttribute("disabled")&&!e.closest("[inert]"));if(0===s.length)return;let n=s[0],o=s[s.length-1];if(!n||!o)return;let a=e.activeElement;a&&r.contains(a)?t.shiftKey&&a===n?(t.preventDefault(),o.focus()):!t.shiftKey&&a===o&&(t.preventDefault(),n.focus()):(t.preventDefault(),(t.shiftKey?o:n).focus())}}),this.onMarkerClick=e=>{this.scrollToFeedback(e.detail.feedbackId)},document.addEventListener("sp-marker-click",this.onMarkerClick)}colors;bus;client;projectName;markers;t;locale;root;scrim;listContainer;searchInput;closeBtn;deleteAllBtn;activeFilters=new Set(["all"]);typeDropdownBtn;typeDropdownContainer;typeDropdownMenu=null;removeTypeDropdownOutsideClick=null;statusSegmented;typeOptions;feedbacks=[];currentPage=1;totalFeedbacks=0;isLoadingMore=!1;isOpen=!1;searchTimeout=null;loadController=null;isLoading=!1;pendingScrollId=null;pendingDetail=!1;pendingMutations=new Set;canComment=!1;threadDrafts=new Map;threadWriteCount=0;threadWrites=new Map;readOnly;resolveIdentity;stats;sortControls;bulk;exportBtn;shortcuts;detail;shadowRoot;getScope;scopeAnnotationsByUrl;scopeSegmented;initialScopeFilter="this";mineOnly=!1;ownFeedback;onMarkerClick;onListClick;onListKeydown;onListMouseover;onListMouseout;async open(){if(this.isOpen)return;this.isOpen=!0;let e=Ke();this.root.setAttribute("role",e?"dialog":"complementary"),e?this.root.setAttribute("aria-modal","true"):this.root.removeAttribute("aria-modal"),this.root.classList.add("sp-panel--open"),this.scrim.classList.add("sp-scrim--open"),this.root.setAttribute("aria-hidden","false"),V(this.root,!1),this.bus.emit("open"),this.shortcuts.enable(this.shadowRoot),await this.loadFeedbacks(),requestAnimationFrame(()=>{(Xe()?this.closeBtn:this.searchInput).focus()})}close(){this.isOpen&&(this.isOpen=!1,this.root.classList.remove("sp-panel--open"),this.scrim.classList.remove("sp-scrim--open"),this.root.setAttribute("aria-hidden","true"),V(this.root,!0),this.bus.emit("close"),this.shortcuts.disable(),this.detail.hide(),this.pendingScrollId=null,this.pendingDetail=!1,this.root.getRootNode().querySelector(".sp-fab")?.focus())}attachSheetDrag(){let e=0,t=0,i=0,r=!1;this.root.addEventListener("pointerdown",s=>{let n=s.target;"mouse"===s.pointerType||!Ke()||n.closest("button")||!n.closest(".sp-panel-header, .sp-detail-header")||(r=!0,e=s.clientY,t=s.timeStamp,i=0,this.root.style.transition="none",this.root.setPointerCapture?.(s.pointerId))}),this.root.addEventListener("pointermove",t=>{r&&(i=Math.max(0,t.clientY-e),this.root.style.transform=`translateY(${i}px)`)});let s=e=>{r&&(r=!1,this.root.style.transition="",this.root.style.transform="",(i>40&&i/Math.max(1,e.timeStamp-t)>.5||i>this.root.offsetHeight/4)&&this.close())};this.root.addEventListener("pointerup",s),this.root.addEventListener("pointercancel",s)}showLoading(){this.listContainer.replaceChildren();let e=z("div",{class:"sp-loading"});e.setAttribute("role","status"),e.setAttribute("aria-live","polite"),e.setAttribute("aria-label",this.t("panel.loading"));let t=z("div",{class:"sp-spinner"});e.appendChild(t),this.listContainer.appendChild(e)}showError(){this.listContainer.replaceChildren();let e=z("div",{class:"sp-empty"});e.setAttribute("role","status"),e.setAttribute("aria-live","polite");let t=z("div",{class:"sp-empty-text"});_(t,this.t("panel.loadError"));let i=document.createElement("button");i.className="sp-btn-ghost",i.style.marginTop="8px",_(i,this.t("panel.retry")),i.addEventListener("click",()=>this.loadFeedbacks().catch(()=>{})),e.appendChild(t),e.appendChild(i),this.listContainer.appendChild(e)}statusBucket(e){if("all"!==e)return x(e)?S:Zu}async loadFeedbacks(e=1){this.loadController?.abort(),this.loadController=new AbortController;let{signal:t}=this.loadController;this.currentPage=1;let i=this.searchInput.value.trim()||void 0,r=this.activeFilters.has("all")?void 0:Array.from(this.activeFilters)[0],s=this.statusBucket(this.statusSegmented.value),n=this.getScope();this.syncScopeAvailability();let o=this.scopeSegmented.value,a={page:1,limit:20};r&&(a.type=r),s&&(a.statuses=s),i&&(a.search=i),"this"===o?a.url=n.url:"template"===o&&n.urlPattern&&(a.urlPattern=n.urlPattern);let l=this.feedbacks.length>0;l||this.showLoading();let d=!this.mineOnly&&this.isMarkerQuery(a,n),c=this.keepThreads();this.isLoading=!0;try{let i=this.mineOnly?this.fetchOwnFeedbacks(a,t):this.client.getFeedbacks(this.projectName,a);d||this.loadPageMarkers(n,t);let r=await i,{feedbacks:s,total:o}=r,l=1;for(;l<e&&s.length<o&&!t.aborted;){l++;let e=await this.client.getFeedbacks(this.projectName,{...a,page:l});s=[...s,...e.feedbacks],o=e.total}if(t.aborted)return;this.currentPage=l,this.feedbacks=s.map(c),this.totalFeedbacks=o,this.canComment=!0===r.capabilities?.comments,H(this.deleteAllBtn,this.readOnly||!1===r.permissions?.canDeleteAll),this.stats.update(s,o),this.bulk.reset(),this.renderList(),this.pendingScrollId&&this.flashCard(this.pendingScrollId,this.pendingDetail),d&&this.renderPageMarkers(s,n)}catch(e){if(t.aborted)return;l||this.showError(),this.bus.emit("feedback:error",e instanceof Error?e:new Error(String(e)))}finally{t.aborted||(this.isLoading=!1,this.pendingScrollId=null,this.pendingDetail=!1)}}async loadMoreFeedbacks(){if(this.isLoadingMore)return;this.isLoadingMore=!0;let e=this.loadController,t=this.currentPage+1,i=this.searchInput.value.trim()||void 0,r=this.activeFilters.has("all")?void 0:Array.from(this.activeFilters)[0],s=this.statusBucket(this.statusSegmented.value),n=this.getScope(),o=this.scopeSegmented.value,a={page:t,limit:20};r&&(a.type=r),s&&(a.statuses=s),i&&(a.search=i),"this"===o?a.url=n.url:"template"===o&&n.urlPattern&&(a.urlPattern=n.urlPattern);let l,d=this.listContainer.querySelector(".sp-btn-load-more");d&&(l=U(d));let c=this.keepThreads();try{let{feedbacks:i,total:r}=await this.client.getFeedbacks(this.projectName,a);if(e!==this.loadController)return;this.currentPage=t,this.totalFeedbacks=r,this.feedbacks=[...this.feedbacks,...i.map(c)],this.stats.update(this.feedbacks,r),this.renderList(),this.isMarkerQuery(a,n)&&this.renderPageMarkers(this.feedbacks,n)}catch(e){l&&l(),this.bus.emit("feedback:error",e instanceof Error?e:new Error(String(e)))}finally{this.isLoadingMore=!1}}isMarkerQuery(e,t){let i=this.scopeAnnotationsByUrl?t.url:void 0;return!(e.type||e.statuses||e.search||e.urlPattern||e.url!==i)}async fetchOwnFeedbacks(e,t){let i,r,s,n=this.ownFeedback.ids(),o=new Map,a=new Set,l=0,d=!0;for(let c=1;o.size<n.size&&!t.aborted;c++){let t=await this.client.getFeedbacks(this.projectName,{...e,page:c,limit:100}),{feedbacks:p,total:h}=t;r=t.capabilities,s=t.permissions,i??=h,d&&=h===i;for(let e of p)a.add(e.id),n.has(e.id)&&o.set(e.id,e);if(l+=p.length,0===p.length||l>=h)break}return Object.keys(e).every(e=>"page"===e||"limit"===e)&&d&&a.size===i&&this.ownFeedback.remove(...[...n].filter(e=>!o.has(e))),{feedbacks:[...o.values()],total:o.size,capabilities:r,permissions:s}}async loadPageMarkers(e,t){let i=this.scopeAnnotationsByUrl?{limit:20,url:e.url}:{limit:20};try{let{feedbacks:r}=await this.client.getFeedbacks(this.projectName,i);t.aborted||this.renderPageMarkers(r,e)}catch{}}renderPageMarkers(e,t){this.markers.render(this.scopeAnnotationsByUrl?e.filter(e=>e.url===t.url):e)}renderList(){if(this.listContainer.replaceChildren(),0===this.feedbacks.length){let e=z("div",{class:"sp-empty"});e.setAttribute("role","status"),e.setAttribute("aria-live","polite");let t=z("div",{class:"sp-empty-text"});return _(t,this.t("panel.empty")),e.appendChild(t),void this.listContainer.appendChild(e)}let e=function(e,t){let i=[...e];switch(t){case"newest":i.sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime());break;case"oldest":i.sort((e,t)=>new Date(e.createdAt).getTime()-new Date(t.createdAt).getTime());break;case"by-type":i.sort((e,t)=>{let i=Du[e.type]??99,r=Du[t.type]??99;return i!==r?i-r:new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()});break;case"open-first":i.sort((e,t)=>{let i=x(e.status)?1:0,r=x(t.status)?1:0;return i!==r?i-r:new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()})}return i}(this.feedbacks,this.sortControls.sortMode),t=e.filter(e=>this.selectable(e)).map(e=>e.id);if(t.length>0&&this.listContainer.appendChild(this.bulk.createSelectAllBar(t,this.t("bulk.selectAll"))),this.sortControls.groupByPage){let t=function(e){let t=new Map;for(let i of e){let e=Lu(i.url),r=t.get(e);r?r.push(i):t.set(e,[i])}return new Map([...t.entries()].sort((e,t)=>t[1].length-e[1].length))}(e),i=0;for(let[e,r]of t){let t=Pu(e,r.length);this.listContainer.appendChild(t);let s=Qu("sp-group-content",e);for(let e of r){let t=this.createCard(e,i+1);t.style.setProperty("--sp-card-i",String(i)),s.appendChild(t),i++}this.listContainer.appendChild(s)}}else{let t=Qu("sp-cards",this.t("panel.feedbackList"));e.forEach((e,i)=>{let r=this.createCard(e,i+1);r.style.setProperty("--sp-card-i",String(i)),t.appendChild(r)}),this.listContainer.appendChild(t)}let i=this.totalFeedbacks-this.feedbacks.length;if(i>0){let e=z("div",{class:"sp-load-more-wrap"}),t=document.createElement("button");t.className="sp-btn-ghost sp-btn-load-more",_(t,ru(this.t,"panel.loadMore",{remaining:i})),t.addEventListener("click",()=>this.loadMoreFeedbacks().catch(()=>{})),e.appendChild(t),this.listContainer.appendChild(e)}}lostNote(e){let t=z("div",{class:"sp-lost"});return t.dataset.lostFor=e,_(t,this.t("panel.notOnPage")),t.hidden=!this.markers.isLost(e),t}syncLostNotes(){for(let e of this.root.querySelectorAll("[data-lost-for]"))e.hidden=!this.markers.isLost(e.dataset.lostFor??"")}createCard(e,t){let i=x(e.status),r=$e(e.type,this.colors),s=z("div",{class:"sp-card "+(i?"sp-card--resolved":"")});s.classList.toggle("sp-card--selected",this.bulk.isSelected(e.id)),s.setAttribute("role","listitem"),s.setAttribute("tabindex","0");let n=ru(this.t,"marker.aria",{number:t,type:eu(e.type,this.t),status:tu(e.status,this.t),message:e.message.slice(0,80)});s.setAttribute("aria-label",n),s.dataset.feedbackId=e.id,s.dataset.number=String(t);let o=z("div",{class:"sp-card-bar"});o.style.background=i?"#9ca3af":r;let a=z("div",{class:"sp-card-body"}),l=z("div",{class:"sp-card-header"});this.selectable(e)&&l.appendChild(this.bulk.createCheckbox(e.id,n));let d=z("span",{class:"sp-card-number"});_(d,`#${t}`);let c=z("span",{class:"sp-badge"}),p=We(e.type,this.colors);c.style.background=p,c.style.color=r,_(c,eu(e.type,this.t));let h=z("span",{class:"sp-badge sp-badge--status"});h.dataset.status=e.status,h.style.background=_e(e.status,this.colors),h.style.color=ze(e.status,this.colors),_(h,tu(e.status,this.t));let u=z("span",{class:"sp-card-date"});_(u,q(e.createdAt,this.locale)),l.appendChild(d),l.appendChild(c),l.appendChild(h),l.appendChild(u);let f=z("div",{class:"sp-card-message"});_(f,e.message);let g=document.createElement("button");g.className="sp-card-expand",g.dataset.action="expand",_(g,this.t("panel.showMore")),g.style.display="none",g.setAttribute("aria-expanded","false"),requestAnimationFrame(()=>{f.scrollHeight>f.clientHeight&&(g.style.display="block")});let m=z("div",{class:"sp-card-footer"}),b=document.createElement("button");b.className="sp-btn-resolve",b.dataset.action="resolve",b.appendChild($(i?Ae:ye));let y=document.createElement("span");_(y,` ${this.t(i?"panel.reopen":"panel.resolve")}`),b.appendChild(y);let v=document.createElement("button");v.className="sp-btn-delete",v.dataset.action="delete",v.appendChild($(Te));let w=document.createElement("span");return _(w,` ${this.t("panel.delete")}`),v.appendChild(w),this.can(e,"canChangeStatus")&&m.appendChild(b),this.can(e,"canDelete")&&m.appendChild(v),a.appendChild(l),a.appendChild(f),a.appendChild(g),a.appendChild(this.lostNote(e.id)),m.hasChildNodes()&&a.appendChild(m),s.appendChild(o),s.appendChild(a),s}can(e,t){return!this.readOnly&&!1!==e.permissions?.[t]}selectable(e){return this.can(e,"canChangeStatus")||this.can(e,"canDelete")}async bulkResolve(e){let t=new Set(this.feedbacks.filter(e=>x(e.status)).map(e=>e.id)),i=e.filter(e=>!t.has(e)),r=await Promise.allSettled(i.map(e=>this.client.resolveFeedback(e,!0)));await this.settleBulk(i,r)}async bulkDelete(e){let t=await Promise.allSettled(e.map(e=>this.client.deleteFeedback(e)));e.forEach((e,i)=>{"fulfilled"===t[i]?.status&&this.bus.emit("feedback:deleted",e)}),await this.settleBulk(e,t)}async settleBulk(e,t){let i=e.filter((e,i)=>"rejected"===t[i]?.status);i.length<e.length&&await this.loadFeedbacks();let r=t.find(e=>"rejected"===e.status);if(!r)return;let s=new Set(this.feedbacks.map(e=>e.id));this.bulk.selectAll(i.filter(e=>s.has(e)));let n=r.reason instanceof Error?r.reason:new Error(String(r.reason));throw this.bus.emit("feedback:error",n),n}async confirmDeleteAll(){if(await this.showConfirmDialog(this.t("panel.deleteAllConfirmTitle"),this.t("panel.deleteAllConfirmMessage"))){this.deleteAllBtn.disabled=!0;try{await this.client.deleteAllFeedbacks(this.projectName),this.bus.emit("feedback:all-deleted"),await this.loadFeedbacks()}catch(e){this.bus.emit("feedback:error",e instanceof Error?e:new Error(String(e))),await this.loadFeedbacks().catch(()=>{})}finally{this.deleteAllBtn.disabled=!1}}}showConfirmDialog(e,t){return new Promise(i=>{let r=z("div",{class:"sp-confirm-backdrop"}),s=`sp-confirm-title-${Date.now()}`,n=`sp-confirm-msg-${Date.now()}`,o=z("div",{class:"sp-confirm-dialog"});o.setAttribute("role","alertdialog"),o.setAttribute("aria-modal","true"),o.setAttribute("aria-labelledby",s),o.setAttribute("aria-describedby",n);let a=z("div",{class:"sp-confirm-title"});a.id=s,_(a,e);let l=z("div",{class:"sp-confirm-message"});l.id=n,_(l,t);let d=z("div",{class:"sp-confirm-actions"}),c=document.createElement("button");c.type="button",c.className="sp-btn-ghost",_(c,this.t("panel.cancel"));let p=document.createElement("button");p.type="button",p.className="sp-btn-danger",_(p,this.t("panel.confirmDelete"));let h=!1,u=e=>{h||(h=!0,f(),r.style.opacity="0",o.style.transform="translateY(8px) scale(0.97)",setTimeout(()=>{r.remove(),i(e)},200))},f=Z(r,e=>{if("Escape"===e.key)return e.stopPropagation(),void u(!1);"Tab"===e.key&&(e.preventDefault(),r.getRootNode().activeElement===c?p.focus():c.focus())});c.addEventListener("click",()=>u(!1)),p.addEventListener("click",()=>u(!0)),r.addEventListener("click",e=>{e.target===r&&u(!1)}),d.appendChild(c),d.appendChild(p),o.appendChild(a),o.appendChild(l),o.appendChild(d),r.appendChild(o),this.root.getRootNode()instanceof ShadowRoot?this.root.getRootNode().appendChild(r):this.root.appendChild(r),requestAnimationFrame(()=>{r.style.opacity="1",o.style.transform="translateY(0) scale(1)",c.focus()})})}async deleteFeedback(e,t){this.pendingMutations.add(e.id);let i=U(t);try{await this.client.deleteFeedback(e.id),this.bus.emit("feedback:deleted",e.id),await this.loadFeedbacks()}catch(e){i(),this.bus.emit("feedback:error",e instanceof Error?e:new Error(String(e)))}finally{this.pendingMutations.delete(e.id)}}async toggleResolve(e,t){this.pendingMutations.add(e.id);let i=U(t);try{let t=!x(e.status);await this.client.resolveFeedback(e.id,t),await this.loadFeedbacks()}catch(e){i(),this.bus.emit("feedback:error",e instanceof Error?e:new Error(String(e)))}finally{this.pendingMutations.delete(e.id)}}buildTypeDropdown(){return this.typeOptions=[{value:"all",label:this.t("panel.filterAll"),icon:Se,color:"var(--sp-accent-text)",bg:"var(--sp-accent-light)"},{value:"question",label:this.t("type.question"),icon:ve,color:"var(--sp-type-question)",bg:"var(--sp-type-question-bg)"},{value:"change",label:this.t("type.change"),icon:we,color:"var(--sp-type-change)",bg:"var(--sp-type-change-bg)"},{value:"bug",label:this.t("type.bug"),icon:ke,color:"var(--sp-type-bug)",bg:"var(--sp-type-bug-bg)"},{value:"other",label:this.t("type.other"),icon:Ce,color:"var(--sp-type-other)",bg:"var(--sp-type-other-bg)"}],this.typeDropdownContainer=z("div",{class:"sp-filter-dropdown"}),this.typeDropdownBtn=document.createElement("button"),this.typeDropdownBtn.type="button",this.typeDropdownBtn.className="sp-filter-dropdown-btn",this.typeDropdownBtn.setAttribute("aria-haspopup","listbox"),this.typeDropdownBtn.setAttribute("aria-expanded","false"),this.renderTypeDropdownTrigger(),this.typeDropdownBtn.addEventListener("click",e=>{e.stopPropagation(),this.typeDropdownMenu?this.closeTypeDropdown():this.openTypeDropdown()}),this.typeDropdownContainer.addEventListener("keydown",e=>{"Escape"!==e.key||!this.typeDropdownMenu||(e.stopPropagation(),this.closeTypeDropdown(),this.typeDropdownBtn.focus())}),this.typeDropdownContainer.appendChild(this.typeDropdownBtn),this.typeDropdownContainer}renderTypeDropdownTrigger(){let e=this.typeOptions.find(e=>this.activeFilters.has(e.value))??this.typeOptions[0];if(!e)return;this.typeDropdownBtn.replaceChildren(),this.typeDropdownBtn.style.setProperty("--sp-chip-color",e.color),this.typeDropdownBtn.style.setProperty("--sp-chip-bg",e.bg),this.typeDropdownBtn.dataset.filter=e.value,this.typeDropdownBtn.classList.toggle("sp-filter-dropdown-btn--filtered","all"!==e.value),this.typeDropdownBtn.setAttribute("aria-label",`${this.t("type.label")}: ${e.label}`);let t=z("span",{class:"sp-filter-dropdown-btn__icon"});t.appendChild($(e.icon)),this.typeDropdownBtn.appendChild(t);let i=z("span",{class:"sp-filter-dropdown-btn__label"}),r=z("span",{class:"sp-filter-dropdown-btn__prefix"});_(r,this.t("type.label"));let s=z("span",{class:"sp-filter-dropdown-btn__value"});_(s,e.label),i.append(r," ",s),this.typeDropdownBtn.appendChild(i);let n=z("span",{class:"sp-filter-dropdown-btn__chevron"});n.appendChild($(Me)),this.typeDropdownBtn.appendChild(n)}openTypeDropdown(){this.typeDropdownMenu=z("div",{class:"sp-filter-dropdown-menu"}),this.typeDropdownMenu.setAttribute("role","listbox"),this.typeDropdownMenu.setAttribute("aria-label",this.t("type.label")),this.typeDropdownBtn.setAttribute("aria-expanded","true");for(let e of this.typeOptions){let t=document.createElement("button");t.type="button";let i=this.activeFilters.has(e.value);t.className="sp-filter-dropdown-option"+(i?" sp-filter-dropdown-option--active":""),t.style.setProperty("--sp-chip-color",e.color),t.style.setProperty("--sp-chip-bg",e.bg),t.dataset.filter=e.value,t.setAttribute("role","option"),t.setAttribute("aria-selected",String(i));let r=z("span",{class:"sp-filter-dropdown-option__icon"});r.appendChild($(e.icon)),t.appendChild(r);let s=z("span",{class:"sp-filter-dropdown-option__label"});if(_(s,e.label),t.appendChild(s),i){let e=z("span",{class:"sp-filter-dropdown-option__check"});e.appendChild($(ye)),t.appendChild(e)}t.addEventListener("click",t=>{t.stopPropagation(),this.selectTypeFilter(e.value)}),this.typeDropdownMenu.appendChild(t)}this.typeDropdownContainer.appendChild(this.typeDropdownMenu),this.removeTypeDropdownOutsideClick=W(this.typeDropdownContainer,()=>this.closeTypeDropdown())}closeTypeDropdown(){this.typeDropdownMenu&&(this.typeDropdownMenu.remove(),this.typeDropdownMenu=null),this.typeDropdownBtn.setAttribute("aria-expanded","false"),this.removeTypeDropdownOutsideClick?.(),this.removeTypeDropdownOutsideClick=null}selectTypeFilter(e){this.activeFilters.clear(),this.activeFilters.add(e),this.renderTypeDropdownTrigger(),this.closeTypeDropdown(),this.loadFeedbacks().catch(()=>{})}buildStatusSegmented(){return this.statusSegmented=new Uu({options:[{value:"all",label:this.t("panel.statusAll"),icon:Se,color:"var(--sp-accent-text)",bg:"var(--sp-accent-light)"},{value:"open",label:this.t("panel.statusOpen"),icon:Ee,color:"var(--sp-status-open)",bg:"var(--sp-status-open-bg)"},{value:"resolved",label:this.t("panel.statusClosed"),icon:xe,color:"var(--sp-status-resolved)",bg:"var(--sp-status-resolved-bg)"}],value:"all",onChange:()=>{this.loadFeedbacks().catch(()=>{})},ariaLabel:this.t("status.label"),datasetKey:"statusFilter",modifierPrefix:"sp-segmented__btn--"}),this.statusSegmented.element}buildScopeSegmented(){return this.scopeSegmented=new Uu({options:[{value:"this",label:this.t("scope.thisPage")},{value:"template",label:this.t("scope.thisType")},{value:"all",label:this.t("scope.all")}],value:this.initialScopeFilter,onChange:()=>{this.loadFeedbacks().catch(()=>{})},ariaLabel:this.t("scope.label"),datasetKey:"scopeFilter",modifierPrefix:"sp-segmented__btn--scope-",extraClass:"sp-segmented--scope"}),this.syncScopeAvailability(),this.scopeSegmented.element}syncScopeAvailability(){if(!this.scopeSegmented)return;let e=!!this.getScope().urlPattern;this.scopeSegmented.setOptionVisible("template",e),!e&&"template"===this.scopeSegmented.value&&this.scopeSegmented.select("this")}buildMineToggle(){let e=document.createElement("button");return e.type="button",e.className="sp-mine-toggle",e.title=this.t("panel.filterMineHint"),e.setAttribute("aria-pressed","false"),e.append($(Be),this.t("panel.filterMine")),e.addEventListener("click",()=>{this.mineOnly=!this.mineOnly,e.classList.toggle("sp-mine-toggle--active",this.mineOnly),e.setAttribute("aria-pressed",String(this.mineOnly)),this.loadFeedbacks().catch(()=>{})}),e}pressInFocusedCard(e){this.listContainer.querySelectorAll(".sp-card")[Hu(this.listContainer)]?.querySelector(e)?.click()}scrollToFeedback(e,t=!1){if(this.isLoading)return this.pendingScrollId=e,void(this.pendingDetail=t);this.flashCard(e,t)}showFeedback(e){this.scrollToFeedback(e,!0)}flashCard(e,t){let i=CSS.escape(e),r=this.listContainer.querySelector(`[data-feedback-id="${i}"]`);if(r){r.scrollIntoView({behavior:"smooth",block:"center"}),r.classList.add("sp-anim-flash"),r.addEventListener("animationend",()=>{r.classList.remove("sp-anim-flash")},{once:!0});let i=this.feedbacks.find(t=>t.id===e);i&&(t||Ke())&&this.detail.show(i,Number(r.dataset.number))}}draftOf(e){let t=this.threadDrafts.get(e)??{text:""};return this.threadDrafts.set(e,t),t}async postComment(e,t,i){let r=await this.resolveIdentity();if(!r)return null;try{let s=await this.client.addComment(e.id,{body:t,clientId:i,authorName:r.name,authorEmail:r.email,authorRole:"client"});for(let t of new Set([e,this.feedbacks.find(t=>t.id===e.id)]))t&&!t.comments?.some(e=>e.id===s.id)&&(t.comments=[...t.comments??[],s]);let n=this.threadWrites.get(e.id)?.replies??[];return this.threadWrites.set(e.id,{seq:++this.threadWriteCount,replies:[...n,s]}),this.bus.emit("comment:added",s),s}catch(e){throw this.bus.emit("feedback:error",e instanceof Error?e:new Error(String(e))),e}}keepThreads(){let e=this.threadWriteCount;return t=>{let i=this.threadWrites.get(t.id);if(!i||i.seq<=e)return t;let r=new Set(t.comments?.map(e=>e.id)),s=i.replies.filter(e=>!r.has(e.id));if(0===s.length)return t;let n=[...t.comments??[],...s];return n.sort((e,t)=>e.createdAt<t.createdAt?-1:e.createdAt>t.createdAt?1:0),{...t,comments:n}}}reportActionError(e){this.bus.emit("panel:action-error",e instanceof Error?e:new Error(String(e)))}hideDetailOf(e){this.detail.feedbackId===e&&this.detail.hide()}async refreshDetail(e){if(this.isOpen&&await this.loadFeedbacks(this.currentPage),this.detail.feedbackId!==e)return;let t=this.feedbacks.findIndex(t=>t.id===e),i=this.feedbacks[t];i?this.detail.show(i,t+1):this.detail.hide()}async refresh(){this.isOpen&&await this.loadFeedbacks()}get isCurrentlyOpen(){return this.isOpen}destroy(){this.isOpen=!1,this.loadController?.abort(),this.searchTimeout&&clearTimeout(this.searchTimeout),this.listContainer.removeEventListener("click",this.onListClick),this.listContainer.removeEventListener("keydown",this.onListKeydown),this.listContainer.removeEventListener("mouseover",this.onListMouseover),this.listContainer.removeEventListener("mouseout",this.onListMouseout),document.removeEventListener("sp-marker-click",this.onMarkerClick),this.closeTypeDropdown(),this.sortControls.destroy(),this.bulk.destroy(),this.exportBtn.destroy(),this.shortcuts.destroy(),this.detail.destroy(),this.scrim.remove(),this.root.remove()}}});O(),O();var rf=new Set(["role","name","aria-label","rel","href"]);function sf(e,t){let i=rf.has(e);i||=e.startsWith("data-")&&df(e);let r=df(t)&&t.length<100;return r||=t.startsWith("#")&&df(t.slice(1)),i&&r}function nf(e){return df(e)}function of(e){return df(e)}function af(e){return!0}function lf(e,t){if(e.nodeType!==Node.ELEMENT_NODE)throw new Error("Can't generate CSS selector for non-element node type.");if("html"===e.tagName.toLowerCase())return"html";let i,r={root:document.body,idName:nf,className:of,tagName:af,attr:sf,timeoutMs:1e3,seedMinLength:3,optimizedMinLength:2,maxNumberOfPathChecks:1/0},s=new Date,n={...r,...t},o=function(e,t){return e.nodeType===Node.DOCUMENT_NODE?e:e===t.root?e.ownerDocument:e}(n.root,r),a=0;for(let t of function*(e,t,i){let r=[],s=[],n=e,o=0;for(;n&&n!==i;){let e=cf(n,t);for(let t of e)t.level=o;if(r.push(e),n=n.parentElement,o++,s.push(...yf(r)),o>=t.seedMinLength){s.sort(uf);for(let e of s)yield e;s=[]}}s.sort(uf);for(let e of s)yield e}(e,n,o)){if((new Date).getTime()-s.getTime()>n.timeoutMs||a>=n.maxNumberOfPathChecks){let t=gf(e,o);if(!t)throw new Error(`Timeout: Can't find a unique selector after ${n.timeoutMs}ms`);return pf(t)}if(a++,xf(t,o)){i=t;break}}if(!i)throw new Error("Selector was not found.");let l=[...vf(i,e,n,o,s)];return l.sort(uf),l.length>0?pf(l[0]):pf(i)}function df(e){if(/^[a-z\-]{3,}$/i.test(e)){let t=e.split(/-|[A-Z]/);for(let e of t)if(e.length<=2||/[^aeiou]{4,}/i.test(e))return!1;return!0}return!1}function cf(e,t){let i=[],r=e.getAttribute("id");r&&t.idName(r)&&i.push({name:"#"+CSS.escape(r),penalty:0});for(let r=0;r<e.classList.length;r++){let s=e.classList[r];t.className(s)&&i.push({name:"."+CSS.escape(s),penalty:1})}for(let r=0;r<e.attributes.length;r++){let s=e.attributes[r];t.attr(s.name,s.value)&&i.push({name:`[${CSS.escape(s.name)}="${CSS.escape(s.value)}"]`,penalty:2})}let s=e.tagName.toLowerCase();if(t.tagName(s)){i.push({name:s,penalty:5});let t=ff(e,s);void 0!==t&&i.push({name:bf(s,t),penalty:10})}let n=ff(e);return void 0!==n&&i.push({name:mf(s,n),penalty:50}),i}function pf(e){let t=e[0],i=t.name;for(let r=1;r<e.length;r++){let s=e[r].level||0;i=t.level===s-1?`${e[r].name} > ${i}`:`${e[r].name} ${i}`,t=e[r]}return i}function hf(e){return e.map(e=>e.penalty).reduce((e,t)=>e+t,0)}function uf(e,t){return hf(e)-hf(t)}function ff(e,t){let i=e.parentNode;if(!i)return;let r=i.firstChild;if(!r)return;let s=0;for(;r&&(r.nodeType===Node.ELEMENT_NODE&&(void 0===t||r.tagName.toLowerCase()===t)&&s++,r!==e);)r=r.nextSibling;return s}function gf(e,t){let i=0,r=e,s=[];for(;r&&r!==t;){let e=r.tagName.toLowerCase(),t=ff(r,e);if(void 0===t)return;s.push({name:bf(e,t),penalty:NaN,level:i}),r=r.parentElement,i++}if(xf(s,t))return s}function mf(e,t){return"html"===e?"html":`${e}:nth-child(${t})`}function bf(e,t){return"html"===e?"html":`${e}:nth-of-type(${t})`}function*yf(e,t=[]){if(e.length>0)for(let i of e[0])yield*yf(e.slice(1,e.length),t.concat(i));else yield t}function xf(e,t){let i=pf(e);switch(t.querySelectorAll(i).length){case 0:throw new Error(`Can't select any node with this selector: ${i}`);case 1:return!0;default:return!1}}function*vf(e,t,i,r,s){if(e.length>2&&e.length>i.optimizedMinLength)for(let n=1;n<e.length-1;n++){if((new Date).getTime()-s.getTime()>i.timeoutMs)return;let o=[...e];o.splice(n,1),xf(o,r)&&r.querySelector(pf(o))===t&&(yield o,yield*vf(o,t,i,r,s))}}O();var wf=["role","aria-label","type","name","href","src","data-testid","data-id"];function kf(e){let t=e.children.length,i=0,r=e.parentElement;if(r)for(let t of r.children){if(t===e)break;t.tagName===e.tagName&&i++}return`${t}:${i}:${Cf(e)}`}function Cf(e){let t=[];for(let i of wf){let r=e.getAttribute(i);r&&t.push(`${i}=${r}`)}return t.length>0?function(e){let t=5381;for(let i=0;i<e.length;i++)t=(t<<5)+t+e.charCodeAt(i)|0;return(t>>>0).toString(36)}(t.join(",")):"0"}function Sf(e){return"SITEPING-WIDGET"===e.tagName||null!==e.closest("siteping-widget")||null!==e.closest('[data-siteping-ignore="true"]')||null!==e.closest("#siteping-markers")||null!==e.closest("#sp-tooltip")}function Ef(e){let t=e,i=e.shadowRoot?.activeElement;for(;i instanceof HTMLElement;){let e=i.getBoundingClientRect();e.width>=4&&e.height>=4&&(t=i),i=i.shadowRoot?.activeElement}return t}var Mf=256;function Af(e,t){let i=e;for(;i&&Sf(i);)i=i[t];return i}function Tf(e){return 1===e.nodeType&&"true"===e.getAttribute("data-siteping-ignore")}function Bf(e){return 3===e.nodeType?NodeFilter.FILTER_ACCEPT:Tf(e)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_SKIP}function Rf(e,t){let i="before"===t?"previousElementSibling":"nextElementSibling",r=Af(e[i],i),s=3;for(;r&&s>0;){let e="before"===t?If(r,Mf,!0).trim():Pf(r,Mf,!0).trim();if(e)return"before"===t?e.slice(-32):e.slice(0,32);r=Af(r[i],i),s--}return""}function Lf(e){let t=Af(e.previousElementSibling,"previousElementSibling"),i=Af(e.nextElementSibling,"nextElementSibling");return[t?Pf(t,Mf,!0).trim().slice(0,40):"",i?Pf(i,Mf,!0).trim().slice(0,40):""].filter(Boolean).join(" | ")}function Pf(e,t,i=!1){let r="";if(null===e.firstElementChild){for(let i of e.childNodes)if(3===i.nodeType&&(r+=i.data,r.length>=t))break;return r.length>t?r.slice(0,t):r}let s=i?e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,Bf):e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_TEXT);for(;r.length<t;){let e=s.nextNode();if(!e)break;r+=e.data}return r.length>t?r.slice(0,t):r}function If(e,t,i=!1){let r="",s=e=>{for(let n=e.lastChild;n;n=n.previousSibling)if(3===n.nodeType){if(r=n.data+r,r.length>=t)return!0}else if(1===n.nodeType&&(!i||!Tf(n))&&s(n))return!0;return!1};return s(e),r.length>t?r.slice(-t):r}function Nf(e){return e.id&&e.id.length<=T?e.id:void 0}function Df(e){return e.includes("'")?`concat('${e.replace(/'/g,"',\"'\",'")}')`:`'${e}'`}O();var Of="data-feedback-anchor",Ff=" >>> ",$f={className:e=>!/^(css|sc|emotion|styled)-/.test(e)&&!/^[a-z]{1,3}[A-Za-z0-9]{4,8}$/.test(e),attr:e=>["data-testid","data-id","role","aria-label"].includes(e),idName:e=>!e.startsWith("radix-")&&!/^:r[0-9]+:$/.test(e),seedMinLength:3,optimizedMinLength:2};function zf(e,t){let i=e;for(;i;){let e=i.closest(t);if(e)return e;let r=i.getRootNode();i=r instanceof ShadowRoot?r.host:null}return null}function _f(e){if(e.parentElement)return e.parentElement;let t=e.getRootNode();return t instanceof ShadowRoot?t.host:null}function Wf(e){let t=[],i=e;for(;i;){let e=i.getRootNode();e instanceof ShadowRoot?(t.unshift(lf(i,{...$f,root:e})),i=e.host):(t.unshift(lf(i,$f)),i=null)}let r=t.join(Ff),s=function(e){if(e.getRootNode()instanceof ShadowRoot)return function(e){let t="";for(let i=e;i;i=i.parentElement){let e=i.localName,r=Nf(i);if(r){t=`/${e}[@id=${Df(r)}]${t}`;continue}let s=1;for(let t=i.previousElementSibling;t;t=t.previousElementSibling)t.localName===e&&s++;t=`/${e}[${s}]${t}`}return`.${t}`}(e);let t=Nf(e);if(t)return`//${e.localName}[@id=${Df(t)}]`;let i=[],r=e;for(;r&&r!==document.body&&i.length<6;){let e=r.localName,t=r.parentElement,s=Nf(r);if(s)return i.unshift(`/${e}[@id=${Df(s)}]`),"/"+i.join("");let n=1;if(t)for(let i of t.children){if(i===r)break;i.localName===e&&n++}i.unshift(`/${e}[${n}]`),r=t}return r!==document.body?"/"+i.join(""):"/html/body"+i.join("")}(e),n=null!==zf(e,'[data-siteping-ignore="true"]'),o=n?"":Pf(e,256,!0).trim().slice(0,120),a=n?"":Rf(e,"before"),l=n?"":Rf(e,"after"),d=kf(e),c=n?"":Lf(e),p=zf(e,`[${Of}]`)?.getAttribute(Of)??null;return{cssSelector:r,xpath:s,textSnippet:o,textPrefix:a,textSuffix:l,fingerprint:d,neighborText:c,elementTag:e.tagName.slice(0,A),elementId:e.id&&e.id.length<=T?e.id:void 0,anchorKey:p}}function Hf(e,t){let i=e.getBoundingClientRect();return i.left<=t.x&&i.top<=t.y&&i.right>=t.x+t.width&&i.bottom>=t.y+t.height}function Vf(e,t){let i=document.elementFromPoint(e,t),r=i?.shadowRoot;for(;r&&"function"==typeof r.elementFromPoint;){let s=r.elementFromPoint(e,t);if(!s||s.getRootNode()!==r)break;i=s,r=s.shadowRoot}return i}G(),Pe(),G(),Pe(),Ie();var jf={width:334,height:280},Uf={top:0,bottom:0};qe(),Ze();var Yf,qf={question:"type.question",change:"type.change",bug:"type.bug",other:"type.other"},Gf="opacity 250ms cubic-bezier(0.16, 1, 0.3, 1),transform 250ms cubic-bezier(0.16, 1, 0.3, 1)",Kf=class{constructor(e,t){this.colors=e,this.t=t,this.root=z("div",{style:`position:fixed;z-index:2147483647;pointer-events:auto;width:300px;padding:16px;border-radius:16px;background:${this.colors.glassBg};backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid ${this.colors.glassBorder};box-shadow:0 8px 32px ${this.colors.shadow},0 2px 8px ${this.colors.shadow};font-family:"Inter",system-ui,-apple-system,sans-serif;opacity:0;transform:translateY(8px) scale(0.98);transition:${Gf};display:none;-webkit-font-smoothing:antialiased;`}),this.root.setAttribute("role","dialog"),this.root.setAttribute("aria-modal","true"),this.root.setAttribute("data-siteping-ignore","true");let i=[{type:"question",icon:ve},{type:"change",icon:we},{type:"bug",icon:ke},{type:"other",icon:Ce}];this.typeRow=z("div",{style:"display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px;"});for(let e of i){let t=document.createElement("button");t.style.cssText=`height:44px;border-radius:9999px;border:1px solid ${this.colors.border};background:${this.colors.glassBg};cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;font-weight:500;color:${this.colors.textTertiary};transition:all 0.2s ease;padding:0 12px;`;let i=$(e.icon);i.style.cssText="width:13px;height:13px;flex-shrink:0;",t.appendChild(i),t.appendChild(document.createElement("span")),t.dataset.type=e.type,t.setAttribute("aria-pressed","false"),t.addEventListener("click",()=>{this.submittingState||this.selectType(e.type,this.typeRow)}),t.addEventListener("mouseenter",()=>{if(!this.submittingState&&t.dataset.type!==this.selectedType){let e=We(t.dataset.type??"",this.colors);t.style.background=e,t.style.borderColor=$e(t.dataset.type??"",this.colors)+"40"}}),t.addEventListener("mouseleave",()=>{this.submittingState||t.dataset.type!==this.selectedType&&(t.style.background=this.colors.glassBg,t.style.borderColor=this.colors.border)}),this.typeRow.appendChild(t)}this.textarea=document.createElement("textarea"),this.textarea.style.cssText=`width:100%;min-height:72px;max-height:152px;padding:10px 12px;border-radius:12px;border:1px solid ${this.colors.border};background:${this.colors.glassBgHeavy};color:${this.colors.text};font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;line-height:1.5;resize:vertical;outline:none;transition:all 0.2s ease;box-sizing:border-box;`,this.textarea.maxLength=5e3,this.hint=z("div",{style:`font-size:11px;color:${this.colors.textTertiary};text-align:right;margin-top:4px;font-family:"Inter",system-ui,-apple-system,sans-serif;letter-spacing:0.01em;`}),this.textarea.addEventListener("focus",()=>{this.submittingState||(this.textarea.style.borderColor=this.colors.accent,this.textarea.style.boxShadow=`0 0 0 3px ${this.colors.accent}14`,this.textarea.style.background=this.colors.bg)}),this.textarea.addEventListener("blur",()=>{this.submittingState||(this.textarea.style.borderColor=this.colors.border,this.textarea.style.boxShadow="none",this.textarea.style.background=this.colors.glassBgHeavy)}),this.textarea.addEventListener("input",()=>{this.updateSubmitState()}),this.textarea.addEventListener("keydown",e=>{this.submittingState||"Enter"===e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),this.submit())});let r=z("div",{style:"display:flex;justify-content:flex-end;gap:8px;margin-top:12px;"});this.cancelBtn=document.createElement("button"),this.cancelBtn.style.cssText=`height:34px;padding:0 16px;border-radius:9999px;border:1px solid ${this.colors.border};background:${this.colors.glassBg};color:${this.colors.textTertiary};font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s ease;`,this.cancelBtn.addEventListener("click",()=>this.dismiss()),this.cancelBtn.addEventListener("mouseenter",()=>{this.submittingState||(this.cancelBtn.style.borderColor=this.colors.accent,this.cancelBtn.style.color=this.colors.accentText)}),this.cancelBtn.addEventListener("mouseleave",()=>{this.submittingState||(this.cancelBtn.style.borderColor=this.colors.border,this.cancelBtn.style.color=this.colors.textTertiary)}),this.submitBtn=document.createElement("button"),this.submitBtn.style.cssText=`height:34px;padding:0 18px;border-radius:9999px;border:none;background:${this.colors.accentGradient};color:#fff;font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;font-weight:600;cursor:pointer;opacity:0.35;pointer-events:none;transition:all 0.2s ease;box-shadow:0 2px 8px ${this.colors.accentGlow};display:inline-flex;align-items:center;justify-content:center;min-width:64px;`,this.submitLabel=document.createElement("span"),this.submitBtn.appendChild(this.submitLabel),this.submitBtn.addEventListener("click",()=>this.submit()),r.appendChild(this.cancelBtn),r.appendChild(this.submitBtn),this.root.appendChild(this.typeRow),this.root.appendChild(this.textarea),this.root.appendChild(this.hint),this.root.appendChild(r),X(this.root),document.body.appendChild(this.root),this.applyLabels()}colors;t;root;selectedType=null;textarea;submitBtn;cancelBtn;typeRow;submitLabel;hint;resolve=null;previouslyFocused=null;removeKeydownTrap=null;onSubmit=null;submittingState=!1;showFrame=null;hideTimeoutId=null;spinnerAnimation=null;sheet=!1;stopKeyboardTracking=null;get isOpen(){return null!==this.resolve}get sheetTop(){return this.sheet&&this.isOpen?window.innerHeight-this.root.offsetHeight:null}refreshLabels(){this.applyLabels()}applyLabels(){this.root.setAttribute("aria-label",this.t("popup.ariaLabel"));let e=this.root.querySelectorAll("button[data-type]");for(let t of e){let e=t.dataset.type;if(!e)continue;let i=qf[e];if(!i)continue;let r=t.querySelector("span");r&&_(r,this.t(i))}this.textarea.placeholder=this.t("popup.placeholder"),this.textarea.setAttribute("aria-label",this.t("popup.textareaAria")),_(this.hint,Y()?this.t("popup.submitHintMac"):this.t("popup.submitHintOther")),_(this.cancelBtn,this.t("popup.cancel")),_(this.submitLabel,this.t("popup.submit"))}show(e,t,i=Uf){return new Promise(r=>{this.cancelPendingTransition(),this.resolve=r,this.onSubmit=t??null,this.selectedType=null,this.textarea.value="",this.submittingState=!1,this.updateSubmitState(),this.resetTypeButtons(),this.previouslyFocused=document.activeElement;let s=Xe();this.sheet=Ke();let n=this.sheet?"48px":s?"44px":"34px";this.cancelBtn.style.height=n,this.submitBtn.style.height=n,this.cancelBtn.style.flex=this.sheet?"1":"",this.submitBtn.style.flex=this.sheet?"2":"",this.textarea.style.fontSize=s?"16px":"13px",this.textarea.style.minHeight=this.sheet?"96px":"72px",this.hint.style.display=s?"none":"",this.root.style.transform=this.hiddenTransform(),J(this.root,!1),this.root.style.display="block",this.layout(e,i),this.removeKeydownTrap?.(),this.removeKeydownTrap=Z(this.root,e=>{if("Escape"===e.key&&this.dismiss(),"Tab"===e.key){let t=Array.from(this.root.querySelectorAll('button:not([disabled]), textarea:not([disabled]), input:not([disabled]), [tabindex]:not([tabindex="-1"])'));if(0===t.length)return;let i=t[0],r=t[t.length-1];if(!i||!r)return;e.shiftKey?(document.activeElement===i||!this.root.contains(document.activeElement))&&(e.preventDefault(),r.focus()):(document.activeElement===r||!this.root.contains(document.activeElement))&&(e.preventDefault(),i.focus())}}),this.root.style.transition=Je()?"none":Gf,this.showFrame=requestAnimationFrame(()=>{this.showFrame=null,this.root.style.opacity="1",this.root.style.transform="translateY(0) scale(1)",(s?this.typeRow.querySelector("button"):this.textarea)?.focus()})})}layout(e,t){let i=this.root.style;if(i.width=this.sheet?"auto":"300px",i.borderRadius=this.sheet?"20px 20px 0 0":"16px",i.background=this.sheet?this.colors.bg:this.colors.glassBg,i.boxShadow=this.sheet?`0 -8px 32px ${this.colors.shadow}`:`0 8px 32px ${this.colors.shadow}, 0 2px 8px ${this.colors.shadow}`,i.overscrollBehavior=this.sheet?"contain":"",this.stopKeyboardTracking?.(),this.stopKeyboardTracking=null,this.sheet){i.top="auto",i.left="0",i.right="0",i.overflowY="auto";let e=(e,t=window.innerHeight)=>{i.bottom=`${e}px`,i.maxHeight=t-8+"px",i.padding="16px 16px "+(e>0?"16px":"calc(16px + env(safe-area-inset-bottom, 0px))")};return e(0),void(this.stopKeyboardTracking=Qe(e))}i.right="",i.bottom="",i.padding="16px",i.maxHeight="",i.overflowY="";let{top:r,left:s,maxHeight:n}=function(e,t,i,r=Uf){let s,n=r.top+8,o=i.height-r.bottom-8,a=Math.max(0,o-n),l=e.bottom+8,d=e.top-8-t.height,c=e=>e>=n&&e+t.height<=o,p=null;c(l)?s=l:c(d)?s=d:t.height<=a?s=Math.min(Math.max(l,n),o-t.height):(s=n,p=a);let h=e.left;return h+t.width>i.width-8&&(h=e.right-t.width),h=Math.max(8,Math.min(h,i.width-8-t.width)),{top:s,left:h,maxHeight:p}}(e,this.measure(),{width:window.innerWidth,height:window.innerHeight},t);i.top=`${r}px`,i.left=`${s}px`,null!==n&&(i.maxHeight=`${Math.max(0,n-this.verticalChromeHeight())}px`,i.overflowY="auto",this.root.scrollTop=0)}hiddenTransform(){return this.sheet?"translateY(100%)":"translateY(8px) scale(0.98)"}measure(){let e=this.root.offsetWidth,t=this.root.offsetHeight;return e>0&&t>0?{width:e,height:t}:jf}verticalChromeHeight(){let e=window.getComputedStyle(this.root);return"border-box"===e.boxSizing?0:[e.paddingTop,e.paddingBottom,e.borderTopWidth,e.borderBottomWidth].reduce((e,t)=>e+(Number.parseFloat(t)||0),0)}selectType(e,t){this.selectedType=e;let i=t.querySelectorAll("button");for(let t of i){let i=t.dataset.type===e,r=$e(t.dataset.type??"",this.colors),s=We(t.dataset.type??"",this.colors);t.style.background=i?s:this.colors.glassBg,t.style.borderColor=i?r+"60":this.colors.border,t.style.color=i?r:this.colors.textTertiary,t.style.fontWeight=i?"600":"500",t.setAttribute("aria-pressed",String(i))}this.updateSubmitState()}resetTypeButtons(){let e=this.root.querySelectorAll("button[data-type]");for(let t of e)t.setAttribute("aria-pressed","false"),t.disabled=!1,t.style.background=this.colors.glassBg,t.style.borderColor=this.colors.border,t.style.color=this.colors.textTertiary,t.style.fontWeight="500",t.style.cursor="pointer"}updateSubmitState(){if(this.submittingState)return;let e=this.textarea.value.trim().length>0;this.submitBtn.disabled=!e,this.submitBtn.style.opacity=e?"1":"0.35",this.submitBtn.style.pointerEvents=e?"auto":"none"}submit(){if(this.submittingState||!this.textarea.value.trim())return;let e={type:this.selectedType??"other",message:this.textarea.value.trim()};if(!this.onSubmit)return this.resolve?.(e),this.resolve=null,void this.hideElement();this.enterSubmittingState(),(0,this.onSubmit)(e).then(()=>{this.resolve?.(e),this.resolve=null,this.hideElement()}).catch(()=>{this.exitSubmittingState()})}dismiss(){this.submittingState||!this.isOpen||(this.resolve?.(null),this.resolve=null,this.hideElement())}enterSubmittingState(){this.submittingState=!0,this.submitLabel.style.display="none",this.submitBtn.disabled=!0,this.submitBtn.style.cursor="wait",this.submitBtn.style.opacity="0.85",this.submitBtn.setAttribute("aria-busy","true"),this.submitBtn.appendChild(this.buildSpinner()),this.cancelBtn.disabled=!0,this.cancelBtn.style.opacity="0.5",this.cancelBtn.style.cursor="not-allowed",this.cancelBtn.style.pointerEvents="none",this.textarea.disabled=!0,this.textarea.style.opacity="0.6";let e=this.typeRow.querySelectorAll("button");for(let t of e)t.disabled=!0,t.style.cursor="not-allowed",t.style.opacity="0.6"}exitSubmittingState(){this.submittingState=!1,this.spinnerAnimation?.cancel(),this.spinnerAnimation=null,this.submitBtn.querySelector('[data-role="sp-popup-spinner"]')?.remove(),this.submitLabel.style.display="",this.submitBtn.removeAttribute("aria-busy"),this.submitBtn.style.cursor="pointer",this.cancelBtn.disabled=!1,this.cancelBtn.style.opacity="1",this.cancelBtn.style.cursor="pointer",this.cancelBtn.style.pointerEvents="auto",this.textarea.disabled=!1,this.textarea.style.opacity="1";let e=this.typeRow.querySelectorAll("button");for(let t of e)t.disabled=!1,t.style.cursor="pointer",t.style.opacity="1";this.updateSubmitState()}buildSpinner(){let e=document.createElement("div");return e.dataset.role="sp-popup-spinner",e.style.cssText="width:14px;height:14px;border:2px solid rgba(255,255,255,0.35);border-top-color:#fff;border-radius:50%;box-sizing:border-box;",!Je()&&"function"==typeof e.animate&&(this.spinnerAnimation=e.animate([{transform:"rotate(0deg)"},{transform:"rotate(360deg)"}],{duration:600,iterations:1/0,easing:"linear"})),e}hideElement(){this.cancelPendingTransition(),this.removeKeydownTrap?.(),this.removeKeydownTrap=null,this.submittingState&&this.exitSubmittingState(),this.onSubmit=null,this.stopKeyboardTracking?.(),this.stopKeyboardTracking=null,this.root.style.opacity="0",this.root.style.transform=this.hiddenTransform(),this.previouslyFocused?.focus(),this.previouslyFocused=null,J(this.root,!0),Je()?this.root.style.display="none":this.hideTimeoutId=setTimeout(()=>{this.hideTimeoutId=null,this.root.style.display="none"},250)}cancelPendingTransition(){null!==this.showFrame&&cancelAnimationFrame(this.showFrame),null!==this.hideTimeoutId&&clearTimeout(this.hideTimeoutId),this.showFrame=null,this.hideTimeoutId=null}destroy(){this.submittingState&&this.exitSubmittingState(),this.cancelPendingTransition(),this.resolve?.(null),this.resolve=null,this.onSubmit=null,this.removeKeydownTrap?.(),this.removeKeydownTrap=null,this.stopKeyboardTracking?.(),this.stopKeyboardTracking=null,this.root.remove()}},Xf=!1;function Jf(e,t,i){return Math.min(i,Math.max(e,t))}function Qf(e){return Jf(0,Math.round(1e4*e)/1e4,1)}function Zf(e){let t=Math.max(0,e.left),i=Math.max(0,e.top);return new DOMRect(t,i,Math.max(0,Math.min(e.right,window.innerWidth)-t),Math.max(0,Math.min(e.bottom,window.innerHeight)-i))}Ze();var eg=class{constructor(e,t,i,r=!1,s){this.colors=e,this.bus=t,this.t=i,this.enableScreenshot=r,this.getFallbackTarget=s,this.popup=new Kf(e,i),this.bus.on("annotation:start",()=>this.activate())}colors;bus;t;enableScreenshot;getFallbackTarget;overlay=null;toolbar=null;toolbarCancel=null;cancelFrozen=!1;drawingRect=null;startX=0;startY=0;isDrawing=!1;isActive=!1;instantMode=!1;popup;stalePopup=!1;savedOverflow="";preActiveFocusElement=null;keyboardTarget=null;rafId=null;pendingMoveEvent=null;rejectPendingSubmission=null;unregisterEscapeLayer=Q(document,()=>this.isActive);get isBusy(){return this.isActive}refreshLabels(){this.popup.refreshLabels()}restyle(){this.stalePopup=this.isActive||this.popup.isOpen,!this.stalePopup&&(this.popup.destroy(),this.popup=new Kf(this.colors,this.t))}async maybeCapture(e){return this.enableScreenshot?async function(e){let t=await async function(){if(void 0!==Yf)return Yf;try{let e=await Promise.resolve().then(()=>(Ah(),et));return Yf=e.default??e}catch(e){return Yf=null,Xf||(Xf=!0,console.warn("[siteping] html2canvas-pro import failed unexpectedly. Capture is disabled for this session \u2014 feedbacks are still submitted, just without screenshots. Underlying error:",e)),null}}();if(!t)return null;let i=1200,r=Jf(48,.6*e.width,280),s=Jf(48,.6*e.height,220),n=window.scrollX+e.x,o=window.scrollY+e.y,a=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth),l=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),d=Math.max(0,n-r),c=Math.max(0,o-s),p=Math.min(a,n+e.width+r)-d,h=Math.min(l,o+e.height+s)-c;if(p<=0||h<=0)return null;let u={xPct:Qf((n-d)/p),yPct:Qf((o-c)/h),wPct:Qf(e.width/p),hPct:Qf(e.height/h)};try{let e=await t(document.body,{x:d,y:c,width:p,height:h,scale:window.devicePixelRatio,useCORS:!0,allowTaint:!0,logging:!1,ignoreElements:e=>"SITEPING-WIDGET"===e.tagName||null!==e.closest?.("siteping-widget")||"true"===e.getAttribute?.("data-siteping-ignore")});if(e.width<=i)return{dataUrl:e.toDataURL("image/jpeg",.85),region:u};let r=i/e.width,s=i,n=Math.round(e.height*r),o=document.createElement("canvas");o.width=s,o.height=n;let a=o.getContext("2d");return a?(a.drawImage(e,0,0,s,n),{dataUrl:o.toDataURL("image/jpeg",.85),region:u}):null}catch(e){return console.warn("[siteping] Screenshot capture failed:",e),null}}(e):null}activate(){if(this.isActive)return;this.isActive=!0;let e=!this.instantMode,t=Ke(),i=Xe(),r=this.t("annotator.instruction");this.preActiveFocusElement=document.activeElement;let s=document.activeElement;if(this.keyboardTarget=s instanceof HTMLElement&&s!==document.body&&s!==document.documentElement&&!Sf(s)?Ef(s):this.getFallbackTarget?.()??null,this.savedOverflow=document.body.style.overflow,document.body.style.overflow="hidden",this.overlay=z("div",{style:`position:fixed;inset:0;z-index:2147483646;pointer-events:auto;background:rgba(15,23,42,0.04);cursor:${e?"crosshair":"default"};touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;`}),this.overlay.setAttribute("role","application"),this.overlay.setAttribute("aria-label",e?r:this.t("annotator.instantInstruction")),this.overlay.setAttribute("data-siteping-ignore","true"),e){this.toolbar=z("div",{style:`position:fixed;top:0;left:0;right:0;z-index:2147483647;pointer-events:auto;min-height:52px;box-sizing:border-box;padding:calc(env(safe-area-inset-top,0px) + 8px) ${t?"12px 8px 16px":"16px 8px"};background:${t?this.colors.bg:this.colors.glassBg};backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid ${this.colors.glassBorder};display:flex;align-items:center;justify-content:center;gap:${t?12:16}px;font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.35;color:${this.colors.text};box-shadow:0 4px 16px ${this.colors.shadow};-webkit-font-smoothing:antialiased;`}),this.toolbar.setAttribute("data-siteping-ignore","true");let e=z("span",{style:`width:8px;height:8px;border-radius:50%;flex-shrink:0;background:${this.colors.accent};box-shadow:0 0 8px ${this.colors.accentGlow};`});!Je()&&"function"==typeof e.animate&&e.animate([{opacity:1},{opacity:.4},{opacity:1}],{duration:1500,easing:"ease-in-out",iterations:1/0});let s=z("span",{style:"font-weight:500;letter-spacing:-0.01em;min-width:0;"});_(s,i?this.t("annotator.touchInstruction"):r);let n=document.createElement("button");n.style.cssText=`height:${i?40:34}px;padding:0 18px;border-radius:9999px;flex-shrink:0;border:1px solid ${this.colors.border};background:${this.colors.glassBg};color:${this.colors.textTertiary};font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s ease;`,_(n,this.t("annotator.cancel")),n.addEventListener("click",()=>this.cancelSession()),n.addEventListener("mouseenter",()=>{this.cancelFrozen||this.paintCancel(!0)}),n.addEventListener("mouseleave",()=>this.paintCancel(!1)),this.toolbarCancel=n,this.toolbar.appendChild(e),this.toolbar.appendChild(s),this.toolbar.appendChild(n)}e&&(this.overlay.addEventListener("mousedown",this.onMouseDown),this.overlay.addEventListener("mousemove",this.onMouseMove),this.overlay.addEventListener("mouseup",this.onMouseUp),this.overlay.addEventListener("touchstart",this.onTouchStart,{passive:!1}),this.overlay.addEventListener("touchmove",this.onTouchMove,{passive:!1}),this.overlay.addEventListener("touchend",this.onTouchEnd),this.overlay.addEventListener("keydown",this.onOverlayKeyDown)),this.overlay.setAttribute("tabindex","0"),document.addEventListener("keydown",this.onKeyDown),X(this.overlay),this.toolbar&&X(this.toolbar),document.body.appendChild(this.overlay),this.toolbar&&document.body.appendChild(this.toolbar),this.overlay.focus({preventScroll:!0})}toolbarInsets(){if(!this.toolbar)return Uf;let e=this.toolbar.getBoundingClientRect();if(0===e.height)return Uf;let t=window.innerHeight;return e.top+e.height/2<t/2?{top:Math.max(0,e.bottom),bottom:0}:{top:0,bottom:Math.max(0,t-e.top)}}cancelSession(){this.isActive&&(this.popup.dismiss(),!this.popup.isOpen&&this.deactivate())}paintCancel(e){let t=this.toolbarCancel;t&&(t.style.borderColor=e?this.colors.typeBug:this.colors.border,t.style.color=e?this.colors.typeBug:this.colors.textTertiary,t.style.background=e?this.colors.typeBugBg:this.colors.glassBg)}freezeCancel(e){this.cancelFrozen=e;let t=this.toolbarCancel;t&&(e&&this.paintCancel(!1),t.style.opacity=e?"0.5":"1",t.style.cursor=e?"not-allowed":"pointer",e?t.setAttribute("aria-disabled","true"):t.removeAttribute("aria-disabled"))}deactivate(){if(!this.isActive)return;this.isActive=!1,this.isDrawing=!1,this.instantMode=!1;let e=this.preActiveFocusElement;this.preActiveFocusElement=null,this.keyboardTarget=null,null!==this.rafId&&(cancelAnimationFrame(this.rafId),this.rafId=null),this.pendingMoveEvent=null,document.body.style.overflow=this.savedOverflow,document.removeEventListener("keydown",this.onKeyDown),this.overlay?.remove(),this.toolbar?.remove(),this.drawingRect?.remove(),this.overlay=null,this.toolbar=null,this.toolbarCancel=null,this.cancelFrozen=!1,this.drawingRect=null,e instanceof HTMLElement&&e.isConnected&&e.focus({preventScroll:!0}),this.bus.emit("annotation:end"),this.stalePopup&&this.restyle()}onKeyDown=e=>{"Escape"===e.key&&this.cancelSession()};onOverlayKeyDown=async e=>{if("Enter"!==e.key||(e.preventDefault(),this.popup.isOpen)||this.isDrawing)return;let t=this.keyboardTarget;!t||!(t instanceof HTMLElement)||await this.annotateElement(t)};async annotateElement(e,t=!1){let i=e.getBoundingClientRect();if(i.width<=0||i.height<=0)return;let r=new DOMRect(i.x,i.y,i.width,i.height);this.drawingRect?.remove();let s=this.createDrawingRect();s.style.left=`${i.x}px`,s.style.top=`${i.y}px`,s.style.width=`${i.width}px`,s.style.height=`${i.height}px`,this.drawingRect=s,this.overlay?.appendChild(s);let n={anchor:Wf(e),rect:{xPct:0,yPct:0,wPct:1,hPct:1},scrollX:window.scrollX,scrollY:window.scrollY,viewportW:window.innerWidth,viewportH:window.innerHeight,devicePixelRatio:window.devicePixelRatio},o=await this.openForm(n,r,t?Zf(r):r);this.drawingRect?.remove(),this.drawingRect=null,o&&this.deactivate()}onMouseDown=e=>{this.startDrawing(e.clientX,e.clientY)};onTouchStart=e=>{e.preventDefault();let t=e.touches[0];t&&this.startDrawing(t.clientX,t.clientY)};startDrawing(e,t){this.popup.isOpen||(this.isDrawing=!0,this.startX=e,this.startY=t,this.drawingRect?.remove(),this.drawingRect=this.createDrawingRect(),this.overlay?.appendChild(this.drawingRect))}createDrawingRect(){let e=z("div",{style:`position:fixed;border:2px solid ${this.colors.accent};background:${this.colors.accent}12;pointer-events:none;border-radius:8px;box-shadow:0 0 16px ${this.colors.accentGlow};transition:box-shadow 0.15s ease;`});return e.setAttribute("data-siteping-ignore","true"),e}onMouseMove=e=>{this.scheduleRectUpdate(e)};onTouchMove=e=>{e.preventDefault(),e.touches[0]&&this.scheduleRectUpdate(e.touches[0])};scheduleRectUpdate(e){!this.isDrawing||!this.drawingRect||(this.pendingMoveEvent=e,null===this.rafId&&(this.rafId=requestAnimationFrame(()=>{this.rafId=null;let e=this.pendingMoveEvent;if(!e||!this.drawingRect)return;let t=Math.min(e.clientX,this.startX),i=Math.min(e.clientY,this.startY),r=Math.abs(e.clientX-this.startX),s=Math.abs(e.clientY-this.startY);this.drawingRect.style.left=`${t}px`,this.drawingRect.style.top=`${i}px`,this.drawingRect.style.width=`${r}px`,this.drawingRect.style.height=`${s}px`})))}onTouchEnd=async e=>{let t=e.changedTouches[0];t&&await this.finishDrawing(t.clientX,t.clientY)};elementAt(e,t){this.overlay&&(this.overlay.style.pointerEvents="none");let i=Vf(e,t);this.overlay&&(this.overlay.style.pointerEvents="auto");let r=i instanceof SVGElement?(i.ownerSVGElement??i).parentElement:i;return r instanceof HTMLElement&&r!==document.body&&r!==document.documentElement&&!Sf(r)?r:null}onMouseUp=async e=>{await this.finishDrawing(e.clientX,e.clientY)};finishDrawing=async(e,t)=>{if(!this.isDrawing||!this.drawingRect)return;this.isDrawing=!1;let i=Math.min(e,this.startX),r=Math.min(t,this.startY),s=Math.abs(e-this.startX),n=Math.abs(t-this.startY);if(s<10||n<10){this.drawingRect.remove(),this.drawingRect=null;let i=this.elementAt(e,t);return void(i&&await this.annotateElement(i,!0))}let o=new DOMRect(i,r,s,n),{annotation:a}=this.buildAnnotation(o),l=await this.openForm(a,o);this.drawingRect?.remove(),this.drawingRect=null,l&&this.deactivate()};async startInstantAnnotation(e,t){if(this.isActive)return;this.instantMode=!0,this.bus.emit("annotation:start");let i=Math.max(0,Math.min(e-10,window.innerWidth-20)),r=Math.max(0,Math.min(t-10,window.innerHeight-20)),s=new DOMRect(i,r,20,20),{annotation:n,anchorBounds:o}=this.buildAnnotation(s),a=Zf(o);this.drawingRect?.remove(),this.drawingRect=z("div",{style:`position:fixed;left:${i}px;top:${r}px;width:20px;height:20px;border:2px solid ${this.colors.accent};background:${this.colors.accent}12;pointer-events:none;border-radius:8px;box-shadow:0 0 16px ${this.colors.accentGlow};`}),this.drawingRect.setAttribute("data-siteping-ignore","true"),this.overlay?.appendChild(this.drawingRect),await this.openForm(n,s,a),this.drawingRect?.remove(),this.drawingRect=null,this.deactivate()}openForm(e,t,i=t){let r={clientId:R()},s=this.popup.show(t,t=>(this.freezeCancel(!0),this.runSubmission(e,t,i,r).finally(()=>this.freezeCancel(!1))),this.toolbarInsets());return this.revealSelection(t),s}revealSelection(e){let t=this.popup.sheetTop;if(null===t||!this.drawingRect)return;let i=Math.min(e.bottom+16-t,e.top-72);if(i<=0)return;let r=window.scrollY;window.scrollBy({top:i,behavior:"instant"}),this.drawingRect.style.top=e.top-(window.scrollY-r)+"px"}async runSubmission(e,t,i,r){void 0===r.screenshot&&(r.screenshot=await this.maybeCapture(new DOMRect(i.x+e.scrollX-window.scrollX,i.y+e.scrollY-window.scrollY,i.width,i.height)));let s=r.screenshot;await new Promise((i,n)=>{let o=()=>{a(),l(),d(),c(),this.rejectPendingSubmission=null},a=this.bus.on("feedback:sent",()=>{o(),i()}),l=this.bus.on("feedback:queued",()=>{o(),i()}),d=this.bus.on("feedback:error",e=>{o(),n(e)}),c=this.bus.on("submission:cancelled",()=>{o(),n(new Error("Feedback submission cancelled"))});this.rejectPendingSubmission=e=>{o(),n(e)},this.bus.emit("annotation:complete",{annotation:e,type:t.type,message:t.message,clientId:r.clientId,screenshotDataUrl:s?.dataUrl??null,screenshotRegion:s?.region??null})})}buildAnnotation(e){this.overlay&&(this.overlay.style.pointerEvents="none");let t=function(e,t=document.documentElement){let i=Vf(e.x+e.width/2,e.y+e.height/2);if(!i||i===t)return document.body;let r=i;for(;r&&r!==document.body;){if(r.hasAttribute(Of)&&Hf(r,e))return r;r=_f(r)}for(r=i;r&&r!==document.body;){if(Hf(r,e))return r;r=_f(r)}return document.body}(e);this.overlay&&(this.overlay.style.pointerEvents="auto");let i=Wf(t),r=t.getBoundingClientRect(),s=function(e,t){return t.width<=0||t.height<=0?{xPct:0,yPct:0,wPct:1,hPct:1}:{xPct:(e.x-t.x)/t.width,yPct:(e.y-t.y)/t.height,wPct:e.width/t.width,hPct:e.height/t.height}}(e,r);return{annotation:{anchor:i,rect:s,scrollX:window.scrollX,scrollY:window.scrollY,viewportW:window.innerWidth,viewportH:window.innerHeight,devicePixelRatio:window.devicePixelRatio},anchorBounds:r}}destroy(){this.deactivate(),this.unregisterEscapeLayer(),this.rejectPendingSubmission?.(new Error("Annotator destroyed during submission")),this.popup.destroy()}};function tg(e,t){let i=`siteping_own_feedback:${JSON.stringify([e,t??null])}`,r=()=>{try{let e=JSON.parse(localStorage.getItem(i)??"[]");return new Set(Array.isArray(e)?e.filter(e=>"string"==typeof e):[])}catch{return new Set}},s=e=>{try{e.size>0?localStorage.setItem(i,JSON.stringify([...e].slice(-500))):localStorage.removeItem(i)}catch{}};return{ids:r,add(e){let t=r();t.delete(e),s(t.add(e))},remove(...e){let t=r(),i=t.size;for(let i of e)t.delete(i);t.size<i&&s(t)},clear:()=>s(new Set)}}O();var ig=1e4,rg="siteping_retry_queue";function sg(e,t,i){let r,s=new Promise((e,s)=>{r=setTimeout(()=>s(i()),t)});return Promise.race([e,s]).finally(()=>clearTimeout(r))}async function ng(e,t){let i={};return t&&(i["Content-Type"]="application/json"),e.apiKey&&(i.Authorization=`Bearer ${e.apiKey}`),function(e,t){let i={...e};for(let[e,r]of Object.entries(t??{})){for(let t of Object.keys(i))t.toLowerCase()===e.toLowerCase()&&delete i[t];i[e]=r}return i}(i,"function"==typeof e.headers?await sg(Promise.resolve(e.headers()),ig,()=>new Error("headers factory did not settle within 10 s")):e.headers)}async function og(e,t,i,r,{boundBody:s=!1,timeoutMs:n=ig,resendOnTimeout:o=!0}={}){for(let a=0;;a++){let l,d=new AbortController,c=setTimeout(()=>d.abort(),n);try{let n=await fetch(e,{...t,signal:d.signal}).catch(e=>{if(3===a||!o&&d.signal.aborted)throw P(e,i);return null});if(l=ag(n,a),n&&(!lg(n.status)||3===a||l>1e4)){if(clearTimeout(c),s&&(c=setTimeout(()=>d.abort(),ig)),!n.ok)throw await L(n,i);return await r(n).catch(e=>{throw P(e,i)})}}finally{clearTimeout(c)}await new Promise(e=>setTimeout(e,l))}}function ag(e,t){let i=e?.headers.get("Retry-After"),r=i?/^\d+$/.test(i)?1e3*Number(i):Date.parse(i)-Date.now():Number.NaN;return Number.isNaN(r)?1e3*2**t+1e3*Math.random()-500:Math.max(0,r)}function lg(e){return e>=500||408===e||429===e}async function dg(e){return typeof navigator<"u"&&navigator.locks?navigator.locks.request("siteping_retry_queue",()=>e()):e()}function cg(e){if(!l(e,"endpoint")||"string"!=typeof e.endpoint||!l(e,"payload"))return!1;let{payload:t}=e;return l(t,"authorName")&&"string"==typeof t.authorName&&l(t,"authorEmail")&&"string"==typeof t.authorEmail}function pg(){let e,t=localStorage.getItem(rg);if(!t)return[];try{e=JSON.parse(t)}catch{return localStorage.removeItem(rg),console.warn(`[siteping] discarded an unreadable retry queue from localStorage (${t.length} chars)`),[]}return Array.isArray(e)?e.filter(cg):[]}var hg=new WeakMap;function ug(e){try{return localStorage.setItem(rg,JSON.stringify(e)),!0}catch{return!1}}function fg(e){return null!=e.payload.screenshotDataUrl}function gg(e){let{screenshotDataUrl:t,screenshotRegion:i,...r}=e.payload;return{endpoint:e.endpoint,payload:r}}function mg(e){return e.trim()}function bg(e){return e.trim().toLowerCase()}function yg(e,t){let i=Math.min(1,Math.max(0,e)),r=t-(i-e);return[i,Math.max(0,i+r<=1?r:1-i)]}function xg(e){let[t,i]=yg(e.rect.xPct,e.rect.wPct),[r,s]=yg(e.rect.yPct,e.rect.hPct);return{...e,rect:{xPct:t,yPct:r,wPct:i,hPct:s}}}async function vg(e){return await e.json()}async function wg(){}var kg=class{constructor(e,t,i={}){this.endpoint=e,this.projectName=t,this.auth=i}endpoint;projectName;auth;listRefusalExplained=!1;async headers(e,t){try{return await ng(this.auth,e)}catch(e){throw P(e,t)}}async sendFeedback(e){let t="Failed to send feedback",{screenshotRegion:i,...r}=e,s={...r,annotations:r.annotations.map(xg)},n=i?{...s,screenshotRegion:i}:s;try{let e=await og(this.endpoint,{method:"POST",headers:await this.headers(!0,t),body:JSON.stringify(n)},t,vg,{boundBody:!0});return o=n.clientId,dg(()=>{try{let e=pg(),t=e.filter(e=>e.payload.clientId!==o);if(t.length===e.length)return;t.length>0?localStorage.setItem(rg,JSON.stringify(t)):localStorage.removeItem(rg)}catch{}}),e}catch(e){throw function(e){return e instanceof c||e instanceof d&&"SERVER"===e.code}(e)&&hg.set(e,await function(e,t){return dg(()=>{try{let i=pg().filter(e=>e.payload.clientId!==t.clientId);if(i.length>=20&&i.shift(),i.push({endpoint:e,payload:t}),ug(i))return!0;let r=i.slice(),s=0;for(let[e,t]of r.entries())if(fg(t)&&(r[e]=gg(t),s+=1,ug(r)))return console.warn(`[siteping] retry queue exceeded the localStorage quota \u2014 dropped the screenshot of ${s} of ${i.length} queued feedback(s)`),!0;for(;r.length>1;)if(r.shift(),ug(r)){let e=i.length-r.length,t=i.slice(e).filter(fg).length;return console.warn(`[siteping] retry queue exceeded the localStorage quota \u2014 dropped the ${e} oldest of ${i.length} queued feedback(s)${t>0?`, and the screenshot of ${t} of the rest`:""}`),!0}console.warn("[siteping] feedback could not be queued for retry \u2014 localStorage is full or unavailable")}catch{}return!1}).catch(()=>!1)}(this.endpoint,n)),e}var o}async getFeedbacks(e,t){let i="Failed to fetch feedbacks",r=function(e){let t=new URLSearchParams({projectName:e.projectName});return e.page&&t.set("page",String(e.page)),e.limit&&t.set("limit",String(e.limit)),e.type&&t.set("type",e.type),e.status&&t.set("status",e.status),e.statuses?.length&&t.set("statuses",e.statuses.join(",")),e.search&&t.set("search",e.search),e.url&&t.set("url",e.url),e.urlPattern&&t.set("urlPattern",e.urlPattern),t}({projectName:e,...t}),s=await this.headers(!1,i);return og(function(e,t){let i=t.toString();if(!i)return e;let r=e.includes("#")?e.indexOf("#"):e.length,s=e.slice(0,r),n=/[?&]$/.test(s)?"":s.includes("?")?"&":"?";return s+n+i+e.slice(r)}(this.endpoint,r),{method:"GET",cache:"no-store",...Object.keys(s).length>0?{headers:s}:{}},i,vg).catch(e=>{throw e instanceof h&&!this.listRefusalExplained&&(this.listRefusalExplained=!0,console.warn(`[siteping] Feedback list refused (${e.status}): with an apiKey, GET needs it unless publicEndpoints includes "GET"; pins and panel stay empty. https://siteping.dev/docs/server#the-security-model-honestly`)),e})}async addComment(e,t){let i="Failed to post comment";return og(this.endpoint,{method:"POST",headers:await this.headers(!0,i),body:JSON.stringify({...t,projectName:this.projectName,feedbackId:e})},i,vg,{boundBody:!0})}async resolveFeedback(e,t){let i="Failed to update feedback";return og(this.endpoint,{method:"PATCH",headers:await this.headers(!0,i),body:JSON.stringify({id:e,projectName:this.projectName,status:t?"resolved":"open"})},i,vg)}async deleteFeedback(e){let t="Failed to delete feedback";await og(this.endpoint,{method:"DELETE",headers:await this.headers(!0,t),body:JSON.stringify({id:e,projectName:this.projectName})},t,wg)}async deleteAllFeedbacks(e){let t="Failed to delete all feedbacks";await og(this.endpoint,{method:"DELETE",headers:await this.headers(!0,t),body:JSON.stringify({projectName:e,deleteAll:!0})},t,wg,{timeoutMs:6e4,resendOnTimeout:!1})}};function Cg(e,t){if(e.length<=t)return e;let i=t-1,r=e.charCodeAt(i-1);return r>=55296&&r<=56319&&(i-=1),`${e.slice(0,i)}\u2026`}var Sg=["log","info","warn","error"];function Eg(e){if(null===e)return"null";if(void 0===e)return"undefined";if("string"==typeof e)return e;if("number"==typeof e||"boolean"==typeof e||"bigint"==typeof e)return String(e);if(e instanceof Error)return`${e.name}: ${e.message}${e.stack?`\n${e.stack}`:""}`;try{let t=[],i=500;return JSON.stringify(e,function(e,r){if(!(--i<0)){if("function"==typeof r)return"[Function]";if("symbol"==typeof r)return r.toString();if("object"!=typeof r||null===r)return r;for(;t.length>0&&t[t.length-1]!==this;)t.pop();return t.includes(r)?"[Circular]":(t.push(r),r)}})}catch{try{return String(e)}catch{return"[Unserializable]"}}}function Mg(e){let t="";for(let i=0;i<e.length&&(i>0&&(t+=" "),t+=Eg(e[i]),!(t.length>=500));i++);return Cg(t,500)}var Ag=class{maxEntries;entries=[];originals=new Map;wrappers=new Map;disposed=!1;constructor(e=50){if(this.maxEntries=Number.isFinite(e)&&e>=0?Math.min(Math.floor(e),50):50,!(typeof console>"u"))for(let e of Sg){let t=console[e];if("function"!=typeof t)continue;this.originals.set(e,t);let i=this,r=function(...r){try{i.push(e,r)}catch{}t.apply(this??console,r)};try{Object.defineProperty(r,"name",{value:e})}catch{}this.wrappers.set(e,r),console[e]=r}}push(e,t){0!==this.maxEntries&&(this.entries.length>=this.maxEntries&&this.entries.shift(),this.entries.push({level:e,timestamp:(new Date).toISOString(),message:Mg(t)}))}getEntries(){return this.entries.slice()}dispose(){if(this.disposed||(this.disposed=!0,typeof console>"u"))return;let e=console;for(let[t,i]of this.originals)if(e[t]===this.wrappers.get(t))try{e[t]=i}catch{}this.originals.clear(),this.wrappers.clear()}};function Tg(e){let t=function(e){try{let t=new URL(e,typeof location>"u"?void 0:location.href);return t.username||t.password?(t.username="",t.password="",t.href):e}catch{return e}}(function(e){if("string"==typeof e)return e;if(e instanceof URL)return e.href;if("object"==typeof e&&null!==e&&"url"in e){let t=e.url;if("string"==typeof t)return t}try{return String(e)}catch{return"(unknown)"}}(e)),i=t.search(/[?#]/);return Cg(-1===i?t:t.slice(0,i),2e3)}var Bg=class{maxEntries;entries=[];originalFetch=null;originalXhrOpen=null;originalXhrSend=null;wrappedFetch=null;wrappedXhrOpen=null;wrappedXhrSend=null;disposed=!1;constructor(e=20){this.maxEntries=Number.isFinite(e)&&e>=0?Math.min(Math.floor(e),20):20,this.installFetch(),this.installXhr()}push(e){0!==this.maxEntries&&(this.entries.length>=this.maxEntries&&this.entries.shift(),this.entries.push({...e,method:e.method.slice(0,20),status:e.status<=599?e.status:0,durationMs:Math.min(Math.max(e.durationMs,0),6e5)}))}installFetch(){if("function"!=typeof globalThis.fetch)return;let e=globalThis.fetch;this.originalFetch=e;let t=async(t,i)=>{let r=new Date,s=typeof performance<"u"?performance.now():Date.now(),n=Tg(t),o=(i?.method??(t instanceof Request?t.method:"GET")).toUpperCase();try{let a=await e(t,i);if(!a.ok){let e=typeof performance<"u"?performance.now():Date.now();this.push({url:n,method:o,status:a.status,durationMs:Math.round(e-s),timestamp:r.toISOString()})}return a}catch(e){let t=typeof performance<"u"?performance.now():Date.now();throw this.push({url:n,method:o,status:0,durationMs:Math.round(t-s),timestamp:r.toISOString()}),e}};this.wrappedFetch=t,globalThis.fetch=t}installXhr(){if(typeof XMLHttpRequest>"u")return;let e=XMLHttpRequest.prototype,t=e.open,i=e.send;this.originalXhrOpen=t,this.originalXhrSend=i;let r=this,s=new WeakMap,n=function(e,i,...r){try{s.set(this,{method:e.toUpperCase(),url:Tg(i),startedAt:new Date,t0:typeof performance<"u"?performance.now():Date.now()})}catch{}return t.call(this,e,i,...r)},o=function(e){let t=s.get(this);if(t){let e=()=>{try{let e=typeof performance<"u"?performance.now():Date.now(),i=this.status;(0===i||i>=400)&&r.push({url:t.url,method:t.method,status:i,durationMs:Math.round(e-t.t0),timestamp:t.startedAt.toISOString()})}catch{}};try{this.addEventListener("loadend",e,{once:!0})}catch{try{this.addEventListener("loadend",e)}catch{}}}return i.call(this,e??null)};this.wrappedXhrOpen=n,this.wrappedXhrSend=o,e.open=n,e.send=o}getEntries(){return this.entries.slice()}dispose(){if(!this.disposed){if(this.disposed=!0,this.originalFetch&&globalThis.fetch===this.wrappedFetch)try{globalThis.fetch=this.originalFetch}catch{}if(typeof XMLHttpRequest<"u")try{let e=XMLHttpRequest.prototype;this.originalXhrOpen&&e.open===this.wrappedXhrOpen&&(e.open=this.originalXhrOpen),this.originalXhrSend&&e.send===this.wrappedXhrSend&&(e.send=this.originalXhrSend)}catch{}}}},Rg=class{listeners=new Map;on(e,t){let i=this.listeners.get(e);return i||(i=new Set,this.listeners.set(e,i)),i.add(t),()=>{i?.delete(t)}}off(e,t){this.listeners.get(e)?.delete(t)}emit(e,...t){let i=this.listeners.get(e);if(i)for(let r of i)try{r(...t)}catch(t){console.error(`[siteping] Error in event listener for "${String(e)}":`,t)}}removeAll(){this.listeners.clear()}};G(),Pe(),su(),Ie(),Ze();var Lg={chat:"fab.messages",annotate:"fab.annotate","toggle-annotations":"fab.annotations"},Pg=class{constructor(e,t,i,r){this.bus=i,this.t=r;let s=t.position??"bottom-right";this.items=[{id:"chat",icon:Re},{id:"annotate",icon:Le}],!1!==t.showAnnotationsToggle&&this.items.push({id:"toggle-annotations",icon:fe,iconAlt:ge}),this.fab=document.createElement("button"),this.fab.className=`sp-fab sp-fab--${s} sp-anim-fab-in`,this.fab.style.position="fixed",this.fab.appendChild($(ue)),this.fab.setAttribute("aria-expanded","false"),this.fab.addEventListener("click",()=>this.toggle()),this.radialContainer=document.createElement("div"),this.radialContainer.className=`sp-radial sp-radial--${s}`,this.radialContainer.setAttribute("role","menu"),V(this.radialContainer,!0);for(let e=0;e<this.items.length;e++){let t=this.items[e];if(!t)continue;let i=document.createElement("button");i.className="sp-radial-item",i.style.setProperty("--sp-i",String(e)),i.appendChild($(t.icon)),i.setAttribute("role","menuitem"),i.dataset.itemId=t.id,i.addEventListener("click",e=>{e.stopPropagation(),this.handleItemClick(t.id)});let r=document.createElement("span");r.className="sp-radial-label",i.appendChild(r),this.radialContainer.appendChild(i)}this.scrim=document.createElement("div"),this.scrim.className="sp-scrim",this.scrim.addEventListener("click",()=>this.close()),this.root=document.createElement("div"),this.root.appendChild(this.scrim),this.root.appendChild(this.radialContainer),this.root.appendChild(this.fab),e.appendChild(this.root),this.applyLabels();let n=e.host;this.onDocumentClick=e=>{this.isOpen&&!e.composedPath().includes(n)&&this.close()},document.addEventListener("click",this.onDocumentClick,!0);let o=e=>{"Escape"===e.key&&this.isOpen&&(e.stopPropagation(),this.close())};this.fab.addEventListener("keydown",o),this.radialContainer.addEventListener("keydown",o),Q(this.root,()=>this.isOpen),this.radialContainer.addEventListener("keydown",t=>{let i=Array.from(this.radialContainer.querySelectorAll(".sp-radial-item"));if(0===i.length||!this.isOpen)return;let r=e.activeElement??document.activeElement,s=i.indexOf(r);switch(t.key){case"ArrowUp":{t.preventDefault();let e=s<=0?i.length-1:s-1;i[e]?.focus();break}case"ArrowDown":{t.preventDefault();let e=s>=i.length-1?0:s+1;i[e]?.focus();break}case"Home":t.preventDefault(),i[0]?.focus();break;case"End":t.preventDefault(),i[i.length-1]?.focus()}})}bus;t;root;scrim;fab;radialContainer;badgeEl=null;isOpen=!1;annotationsVisible=!0;items;onDocumentClick;refreshLabels(){this.applyLabels()}applyLabels(){this.applyFabLabel();let e=this.radialContainer.querySelectorAll(".sp-radial-item");for(let t of e){let e=t.dataset.itemId;if(!e)continue;let i=Lg[e];if(!i)continue;let r=this.t(i);t.setAttribute("aria-label",r);let s=t.querySelector(".sp-radial-label");s&&_(s,r)}}applyFabLabel(){let e=this.t("fab.aria"),t=this.badgeEl?.textContent;this.fab.setAttribute("aria-label",t?`${e}, ${ru(this.t,"fab.badge",{count:t})}`:e)}updateBadge(e){if(e<=0)return this.badgeEl?.remove(),this.badgeEl=null,void this.applyFabLabel();this.badgeEl||(this.badgeEl=document.createElement("span"),this.badgeEl.className="sp-fab-badge",this.badgeEl.setAttribute("role","status"),this.badgeEl.setAttribute("aria-live","polite"),this.fab.appendChild(this.badgeEl));let t=e>99?"99+":String(e);_(this.badgeEl,t),this.badgeEl.setAttribute("aria-label",ru(this.t,"fab.badge",{count:e})),this.applyFabLabel()}toggle(){this.isOpen?this.close():this.open()}open(){this.isOpen=!0,this.setFabIcon(me),this.fab.setAttribute("aria-expanded","true"),this.scrim.classList.add("sp-scrim--open"),V(this.radialContainer,!1);let e=Xe()?60:54;this.radialContainer.querySelectorAll(".sp-radial-item").forEach((t,i)=>{let r=-(16+e*(i+1));t.style.transform=`translate(0px, ${r}px) scale(1)`,t.classList.add("sp-radial-item--open")}),requestAnimationFrame(()=>{this.radialContainer.querySelector(".sp-radial-item")?.focus()})}close(){this.isOpen=!1,this.setFabIcon(ue),this.fab.setAttribute("aria-expanded","false"),this.scrim.classList.remove("sp-scrim--open"),V(this.radialContainer,!0),this.radialContainer.querySelectorAll(".sp-radial-item").forEach(e=>{e.style.transform="translate(0, 0) scale(0.8)",e.classList.remove("sp-radial-item--open")}),this.fab.focus()}setFabIcon(e){let t=this.badgeEl;this.fab.replaceChildren($(e)),t&&this.fab.appendChild(t)}handleItemClick(e){switch(this.close(),e){case"chat":this.bus.emit("panel:toggle",!0);break;case"annotate":{let e=this.bus.on("annotation:end",()=>{e(),this.fab.focus()});this.bus.emit("annotation:start");break}case"toggle-annotations":{this.annotationsVisible=!this.annotationsVisible,this.bus.emit("annotations:toggle",this.annotationsVisible);let e=this.radialContainer.querySelector('[data-item-id="toggle-annotations"]')?.querySelector("svg");if(e){let t=$(this.annotationsVisible?fe:ge);e.replaceWith(t)}break}}}destroy(){document.removeEventListener("click",this.onDocumentClick,!0),this.root.remove()}};Pe(),su(),O();var Ig="siteping_identity";function Ng(){try{let e=localStorage.getItem(Ig);if(!e)return null;let t=JSON.parse(e);return function(e){if(!l(e,"name")||!l(e,"email"))return!1;let{name:t,email:i}=e;return"string"==typeof t&&"string"==typeof i&&t.length>0&&t.length<=k&&i.length<=k&&n(i)}(t)?t:null}catch{return null}}function Dg(e){return e.normalize("NFC").replace(/\s+/g," ").trim()}function Og(e){return e.replace(/\s+/g," ").trim()}function Fg(e,t){if(e===t)return 1;let i=Math.max(e.length,t.length);return 0===i?1:1-function(e,t){if(e===t)return 0;if(0===e.length)return t.length;if(0===t.length)return e.length;if(e.length>t.length){let i=e;e=t,t=i}let i=e.length,r=t.length,s=new Array(i+1);for(let e=0;e<=i;e++)s[e]=e;let n=new Array(i+1);for(let o=1;o<=r;o++){n[0]=o;for(let r=1;r<=i;r++){let i=s[r-1];n[r]=e[r-1]===t[o-1]?i:1+Math.min(i,s[r],n[r-1])}let r=s;s=n,n=r}return s[i]}(e,t)/i}function $g(e,t,i=.6){if(!t||!e)return 0;if(e.includes(t))return 1;let r=e.length>500?e.slice(0,500):e;if(t.length>r.length){let e=Fg(r,t);return e>=i?e:0}if(t.length<8&&r.length>64)return 0;let s=1-function(e,t){let i=t.length,r=new Int32Array(i+1),s=new Int32Array(i+1);for(let e=0;e<=i;e++)r[e]=e;let n=i;for(let o=1;o<=e.length;o++){s[0]=0;let a=e.charCodeAt(o-1);for(let e=1;e<=i;e++){let i=r[e-1]+(t.charCodeAt(e-1)===a?0:1),n=r[e]+1,o=s[e-1]+1;s[e]=Math.min(i,n,o)}let l=s[i];l<n&&(n=l);let d=r;r=s,s=d}return n}(r,t)/t.length;return s>=i?s:0}function zg(e){let t=new Map;for(let i=0;i<e.length-1;i++){let r=e.charCodeAt(i)<<16|e.charCodeAt(i+1);t.set(r,(t.get(r)??0)+1)}return t}function _g(e,t,i){let r=i.length-1;if(t<=0||r<=0)return 0;let s=0,n=new Map;for(let t=0;t<i.length-1;t++){let r=i.charCodeAt(t)<<16|i.charCodeAt(t+1),o=e.get(r);if(void 0===o)continue;let a=n.get(r)??0;a<o&&(n.set(r,a+1),s++)}return 2*s/(t+r)}function Wg(e,t,i){if(t<=0)return 0;let r=i.split(" "),s=r.length-1;if(s<=0)return 0;let n=0,o=new Map;for(let t=0;t<r.length-1;t++){let i=`${r[t]} ${r[t+1]}`,s=e.get(i);if(void 0===s)continue;let a=o.get(i)??0;a<s&&(o.set(i,a+1),n++)}return 2*n/(t+s)}O();var Hg={checkOpacity:!0,opacityProperty:!0,checkVisibilityCSS:!0,visibilityProperty:!0};function Vg(e){if(!e.isConnected)return"hidden";if("function"==typeof e.checkVisibility)return e.checkVisibility(Hg)?"visible":e.checkVisibility()?"soft-hidden":"hidden";if(e.getClientRects().length>0)try{return"visible"===getComputedStyle(e).visibility?"visible":"soft-hidden"}catch{return"visible"}let t=e.firstElementChild;return t&&t.getClientRects().length>0?"visible":0===e.ownerDocument.documentElement.getClientRects().length?"unknown":"hidden"}var jg={anchorKey:1,id:1,css:.95,xpath:.9,scan:.85},Ug=500;function Yg(e,t){return Dg((e??"").slice(0,2e3)).slice(0,t)}function qg(e,t){let i=function(e){let t=Yg(e.textSnippet,Ug),i=function(e){let t=new Map,i=e.split(" ");for(let e=0;e<i.length-1;e++){let r=`${i[e]} ${i[e+1]}`;t.set(r,(t.get(r)??0)+1)}return t}(t),r=0;for(let e of i.values())r+=e;return{snippet:t,snippetBigrams:zg(t),snippetBigramTotal:Math.max(0,t.length-1),snippetWordPairs:i,snippetWordPairTotal:r,prefix:Yg(e.textPrefix,128),suffix:Yg(e.textSuffix,128),neighbor:Yg(e.neighborText,128),fingerprint:(e.fingerprint??"").slice(0,64),tag:"string"==typeof e.elementTag?e.elementTag:""}}(e),{pool:r,treeRoots:s}=function(e){let t=new Map,i=(i,r,s)=>{!i||t.has(i)||s&&i.tagName!==e.elementTag||t.set(i,r)},r="string"==typeof e.cssSelector?e.cssSelector.split(Ff):[],s=r[r.length-1]??e.cssSelector,n=r.length>1?function(e){let t=[],i=[document];for(let r of e){let e;try{e=Gg(i,r)}catch{return[]}let s=[];for(let t of e)t.shadowRoot&&s.push(t.shadowRoot);if(0===s.length)return[];t.push(s),i=s}return t}(r.slice(0,-1)):null,o=n?n[n.length-1]??[]:[document],a=n?[document,...n.flat()]:o;if(e.anchorKey){let t=e.anchorKey.replace(/\\/g,"\\\\").replace(/"/g,'\\"');try{for(let e of Gg(a,`[${Of}="${t}"]`))i(e,"anchorKey",!1)}catch{}}if(e.elementId){let t=e.elementId.replace(/\\/g,"\\\\").replace(/"/g,'\\"');try{for(let e of Gg(o,`[id="${t}"]`))i(e,"id",!0)}catch{for(let t of o)i(t.getElementById(e.elementId),"id",!0)}}try{for(let e of Gg(o,s))i(e,"css",!0)}catch{}if(n)return{pool:t,treeRoots:o};try{let t=document.evaluate(e.xpath,document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null),r=Math.min(t.snapshotLength,16);for(let e=0;e<r;e++){let r=t.snapshotItem(e);r instanceof Element&&i(r,"xpath",!0)}}catch{}return{pool:t,treeRoots:o}}(e),n=[];for(let[e,t]of r){let r=Kg(e,t,i);r&&n.push(r)}let o=0,a=!1;for(let e of n)e.final>o&&(o=e.final),("id"===e.strategy||"anchorKey"===e.strategy)&&1===e.visibility&&(e.signals?.text??0)>=.8&&(void 0===e.signals?.fingerprint||e.signals.fingerprint>=.8)&&(a=!0);let l=!!(i.snippet||i.fingerprint||i.prefix||i.suffix||i.neighbor),d=t?.scanBudget;if(l&&s.length>0&&o<jg.scan&&!a)if(d&&d.remaining<=0)d.starved=!0;else{d&&d.remaining--;for(let e of function(e,t,i){let r=e.tag.toLowerCase();if(!r)return[];let s=[];try{for(let e of i){let t=e.querySelectorAll(r);for(let e=0;e<t.length&&s.length<1e4;e++){let i=t[e];i&&s.push(i)}if(1e4===s.length)break}}catch{return[]}let n=e.fingerprint.split(":"),o=3===n.length?Number(n[0]):Number.NaN,a=3===n.length?n[2]??"":"",l=[];for(let i of s){if(t.has(i))continue;let r=0;if(e.snippetBigramTotal>0){let t=Og(Pf(i,Ug)),s=_g(e.snippetBigrams,e.snippetBigramTotal,t);e.snippetWordPairTotal>0?r+=.6*(.5*s+.5*(s>0?Wg(e.snippetWordPairs,e.snippetWordPairTotal,t):0)):r+=.6*s}if(a&&Cf(i)===a&&(r+=.25),!Number.isNaN(o)){let e=Math.abs(i.children.length-o);0===e?r+=.15:e<=2&&(r+=.07)}l.push({element:i,cheap:r})}return l.sort((e,t)=>t.cheap-e.cheap),l.slice(0,24).map(e=>e.element)}(i,r,s)){let t=Kg(e,"scan",i);t&&n.push(t)}}let c=n.filter(Xg);if(0===c.length)return null;c.sort((e,t)=>t.final-e.final);let p=function(e){let t=e[0],i=e.filter(e=>t.final-e.final<=.05&&(e===t||t.element.contains(e.element))),r=t;for(let e of i)e!==r&&r.element.contains(e.element)&&(r=e);return r}(c);return{element:p.element,confidence:Jg(p),strategy:p.strategy}}function Gg(e,t){let i=[];for(let r of e){let e=r.querySelectorAll(t);for(let t=0;t<e.length&&i.length<16;t++){let r=e[t];r&&i.push(r)}if(16===i.length)break}return i}function Kg(e,t,i){let r=function(e,t){let i=0,r=0,s={blend:0,strongest:0};if(t.snippet){r+=40;let n=Pf(e,Ug,!0);if(s.text=$g(Dg(n),t.snippet,.5),s.text<1){let i=Pf(e,Ug);i!==n&&(s.text=Math.max(s.text,$g(Dg(i),t.snippet,.5)))}i+=40*s.text}if(t.fingerprint&&(r+=20,s.fingerprint=function(e,t){let i=t.split(":");if(3!==i.length)return 0;let[r,s,n]=i,o=Number(r),a=Number(s);if(Number.isNaN(o)||Number.isNaN(a))return 0;let l=kf(e),[d,c,p]=l.split(":"),h=0,u=Math.abs(Number(d)-o);0===u?h+=.2:u<=2?h+=.1:u<=5&&(h+=.03);let f=Math.abs(Number(c)-a);return 0===f?h+=.4:1===f?h+=.2:f<=3&&(h+=.08),p===n&&(h+=.4),h}(e,t.fingerprint),i+=20*s.fingerprint),t.prefix||t.suffix){r+=20;let n=0,o=0;if(t.prefix){let i=Dg(Rf(e,"before"));n+=i?Fg(i,t.prefix):0,o++}if(t.suffix){let i=Dg(Rf(e,"after"));n+=i?Fg(i,t.suffix):0,o++}o>0&&(s.context=n/o,i+=20*s.context)}if(t.neighbor){r+=20;let n=Dg(Lf(e));s.neighbor=n?Fg(n,t.neighbor):0,i+=20*s.neighbor}return 0===r?null:(s.blend=i/r,s.strongest=Math.max(s.text??0,s.fingerprint??0,s.context??0,s.neighbor??0),s)}(e,i),s=function(e){switch(e){case"hidden":return.3;case"soft-hidden":return.6;default:return 1}}(Vg(e));return null===r?"scan"===t?null:{element:e,strategy:t,verification:.6,strongest:.6,visibility:s,final:.6*jg[t]*s,unverified:!0}:{element:e,strategy:t,verification:r.blend,strongest:r.strongest,signals:r,visibility:s,final:jg[t]*r.blend*s}}function Xg(e){if("scan"===e.strategy)return e.verification>=.4;if(e.unverified||!e.signals)return!0;let t=e.signals;return void 0===t.text||t.text>=.5||(t.fingerprint??0)>=.6||(t.context??0)>=.6||(t.neighbor??0)>=.6}function Jg(e){return"scan"===e.strategy?Math.min(e.verification,jg.scan):e.unverified?jg[e.strategy]:jg[e.strategy]*Math.min(1,e.strongest/.8)}function Qg(e,t,i){let r=qg(e,i);if(!r)return null;let s=r.element.getBoundingClientRect(),n=new DOMRect(s.x+t.xPct*s.width,s.y+t.yPct*s.height,t.wPct*s.width,t.hPct*s.height);return{element:r.element,rect:n,confidence:r.confidence,strategy:r.strategy}}function Zg(e){return{cssSelector:e.cssSelector,xpath:e.xpath,textSnippet:e.textSnippet,elementTag:e.elementTag,elementId:e.elementId??void 0,textPrefix:e.textPrefix,textSuffix:e.textSuffix,fingerprint:e.fingerprint,neighborText:e.neighborText,anchorKey:e.anchorKey??null}}function em(e){return{xPct:e.xPct,yPct:e.yPct,wPct:e.wPct,hPct:e.hPct}}G(),Pe(),su(),qe(),Ze();var tm={bg:"rgba(241,245,249,0.9)",ring:"#cbd5e1",color:"#94a3b8",shadow:"0 2px 8px rgba(0,0,0,0.06)",hoverShadow:"0 4px 16px rgba(0,0,0,0.1)"};function im(e){return{top:e.top+window.scrollY-13,left:e.right+window.scrollX-13}}function rm(e,t){let i=e.entries[t],r=e.elementIndices[t];if(i&&void 0!==r)return i.elements[r]}function sm(e){let t=e.elementIndices[0];return void 0===t?void 0:e.entries[0]?.positions[t]}var nm=e=>"none"!==e.style.display;function om(e,t,i){!Je()&&"function"==typeof e.animate&&e.animate(t,i)}var am=class{constructor(e,t,i,r,s=null){this.colors=e,this.tooltip=t,this.bus=i,this.t=r,this.liveRegion=s,this.container=z("div",{style:"position:absolute;top:0;left:0;pointer-events:none;z-index:2147483646;"}),this.container.id="siteping-markers",X(this.container),document.body.appendChild(this.container),this.bus.on("annotations:toggle",e=>{this.container.style.display=e?"block":"none"}),this.resizeHandler=()=>this.scheduleReposition("resize"),window.addEventListener("resize",this.resizeHandler,{passive:!0}),this.scrollHandler=()=>this.scheduleReposition("scroll"),window.addEventListener("scroll",this.scrollHandler,{passive:!0,capture:!0}),this.mutationObserver=new MutationObserver(e=>{let t=!1;for(let i of e)if(!this.container.contains(i.target)&&!this.tooltip.contains(i.target)){t=!0;break}t&&this.scheduleReposition("mutation")}),this.mutationObserver.observe(document.body,{childList:!0,subtree:!0,attributes:!1,characterData:!1}),this.onDocumentClickForClusters=e=>{this.container.contains(e.target)||this.collapseAllClusters()},document.addEventListener("click",this.onDocumentClickForClusters,!0)}colors;tooltip;bus;t;liveRegion;container;entries=[];highlightElements=[];pinnedFeedback=null;onDocumentClick=null;repositionTimer=null;mutationObserver=null;scrollHandler=null;resizeHandler=null;anchorCache=new Map;pendingLayoutChange=!1;pendingResize=!1;hiddenRecheckAt=new Map;clusters=[];onDocumentClickForClusters=null;lastOpenCount=-1;get count(){return this.entries.length}get openCount(){let e=0;for(let t of this.entries)x(t.feedback.status)||e++;return e}scheduleReposition(e="mutation"){"scroll"!==e&&(this.pendingLayoutChange=!0),"resize"===e&&(this.pendingResize=!0),!this.repositionTimer&&("requestIdleCallback"in window?this.repositionTimer=window.requestIdleCallback(()=>{this.repositionTimer=null,this.repositionAll()},{timeout:300}):this.repositionTimer=+setTimeout(()=>{this.repositionTimer=null,this.repositionAll()},200))}repositionAll(){let e=this.pendingLayoutChange,t=this.pendingResize;this.pendingLayoutChange=!1,this.pendingResize=!1,t&&this.hiddenRecheckAt.clear();let i=Date.now(),r={remaining:2,starved:!1},s=new Set,n=!1;for(let t of this.entries)for(let o=0;o<t.feedback.annotations.length;o++){let a=t.elements[o];if(!a)continue;let l=t.feedback.annotations[o];if(!l)continue;let d=`${t.feedback.id}:${o}`;s.add(d);let c,p=this.anchorCache.get(d),h=p?.ref.deref(),u=(this.hiddenRecheckAt.get(d)??0)>i,f=h?.isConnected&&(u||!(e&&"hidden"===Vg(h)));if(p&&h&&f){let e=h.getBoundingClientRect(),t=em(l);c={element:h,rect:new DOMRect(e.left+t.xPct*e.width,e.top+t.yPct*e.height,t.wPct*e.width,t.hPct*e.height),confidence:p.confidence,strategy:p.strategy}}else if(u)c=null;else if(r.starved=!1,c=Qg(Zg(l),em(l),{scanBudget:r}),!r.starved){if(c?.element){let{confidence:e,strategy:t}=c;this.anchorCache.set(d,{ref:new WeakRef(c.element),confidence:e,strategy:t})}c&&"hidden"!==Vg(c.element)?this.hiddenRecheckAt.delete(d):this.hiddenRecheckAt.set(d,i+3e3)}let g="none"!==a.style.display;c?(g||(n=!0),t.positions[o]=im(c.rect),a.style.display="flex",this.applyConfidenceStyle(a,c.confidence,t.feedback)):(g&&(n=!0),a.style.display="none")}for(let e of this.anchorCache.keys())s.has(e)||this.anchorCache.delete(e);for(let e of this.hiddenRecheckAt.keys())s.has(e)||this.hiddenRecheckAt.delete(e);n&&(this.buildClusters(),this.bus.emit("markers:placed")),this.applyClusterPositions(),this.pinnedFeedback&&this.showHighlight(this.pinnedFeedback)}applyClusterPositions(){for(let e of this.clusters)e.expanded?this.applyFanPositions(e):this.applyStackPositions(e)}emitMarkersChanged(){let e=this.openCount;e!==this.lastOpenCount&&(this.lastOpenCount=e,this.bus.emit("markers:changed",e))}render(e){this.clear(),e.forEach((e,t)=>{let i=this.buildEntry(e,t+1);this.entries.push(i)}),this.buildClusters();let t=this.entries.filter(e=>e.elements.some(nm)).length;this.liveRegion&&t>0&&(this.liveRegion.textContent=ru(this.t,"marker.count",{count:t})),this.emitMarkersChanged(),this.bus.emit("markers:placed")}addFeedback(e,t){let i=this.buildEntry(e,t);for(let e of i.elements)om(e,[{scale:0,opacity:0},{scale:1.2,opacity:1,offset:.6},{scale:1}],{duration:350,easing:"cubic-bezier(0.34,1.56,0.64,1)"});this.entries.push(i),this.buildClusters(),this.emitMarkersChanged(),this.bus.emit("markers:placed")}buildEntry(e,t){let i={feedback:e,elements:[],positions:[]};for(let r of e.annotations){let s=Qg(Zg(r),em(r)),n=s?im(s.rect):{top:0,left:0},o=this.createMarker(t,e,n);s?this.applyConfidenceStyle(o,s.confidence,e):o.style.display="none",this.container.appendChild(o),i.elements.push(o),i.positions.push(n)}return i}buildClusters(){for(let e of this.container.querySelectorAll(".sp-cluster-badge"))e.remove();let e=[];for(let t of this.entries)for(let i=0;i<t.elements.length;i++){let r=t.positions[i];!r||"none"===t.elements[i]?.style.display||e.push({entry:t,elIdx:i,pos:r})}let t=new Set;this.clusters=[];for(let i=0;i<e.length;i++){if(t.has(i))continue;let r=e[i];if(!r)continue;let s={entries:[r.entry],elementIndices:[r.elIdx],expanded:!1};t.add(i);for(let n=i+1;n<e.length;n++){if(t.has(n))continue;let i=r.pos,o=e[n];if(!o)continue;let a=o.pos;Math.sqrt((i.left-a.left)**2+(i.top-a.top)**2)<28&&(s.entries.push(o.entry),s.elementIndices.push(o.elIdx),t.add(n))}this.clusters.push(s)}for(let e of this.clusters)e.entries.length<=1||(this.applyStackPositions(e),this.addClusterBadge(e))}applyStackPositions(e){let t=sm(e);if(!t)return;let{top:i,left:r}=t,s=e.entries.length<=1;for(let t=0;t<e.entries.length;t++){let n=rm(e,t);n&&(n.style.top=`${i+(s?0:3*t)}px`,n.style.left=`${r+(s?0:3*t)}px`,n.style.zIndex=String(t+1))}}applyFanPositions(e){let t=sm(e);if(!t)return;let{top:i,left:r}=t,s=e.entries.length,n=r-32*(s-1)/2;for(let t=0;t<s;t++){let r=rm(e,t);r&&(r.style.top=`${i}px`,r.style.left=`${n+32*t}px`,r.style.zIndex=String(10+t))}}addClusterBadge(e){let t=rm(e,e.entries.length-1);if(!t)return;let i=z("div",{class:"sp-cluster-badge",style:`position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:9999px;background:${this.colors.accent};color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:1.5px solid #fff;pointer-events:none;font-family:"Inter",system-ui,-apple-system,sans-serif;line-height:1;`});_(i,String(e.entries.length)),t.appendChild(i)}setBadgesVisible(e,t){for(let i=0;i<e.entries.length;i++){let r=rm(e,i)?.querySelector(".sp-cluster-badge");r&&(r.style.display=t?"flex":"none")}}findCluster(e){for(let t of this.clusters)if(!(t.entries.length<=1))for(let i=0;i<t.entries.length;i++)if(rm(t,i)===e)return t;return null}handleClusterClick(e,t){let i=this.findCluster(e);return!!i&&!i.expanded&&(t.stopPropagation(),this.collapseAllClusters(),i.expanded=!0,this.applyFanPositions(i),this.setBadgesVisible(i,!1),!0)}collapseCluster(e){e.expanded&&(e.expanded=!1,this.applyStackPositions(e),this.setBadgesVisible(e,!0))}collapseAllClusters(){for(let e of this.clusters)this.collapseCluster(e)}applyConfidenceStyle(e,t,i){let r=x(i.status);t<.7&&!r?(e.style.borderStyle="dashed",e.style.opacity="0.7",e.title=ru(this.t,"marker.approximate",{confidence:Math.round(100*t)})):(e.style.borderStyle="solid",e.style.opacity="1",e.title="")}createMarker(e,t,i){let{status:r}=t,s=function(e,t){return x(e)?tm:{bg:"rgba(255,255,255,0.92)",ring:"in_progress"===e?`${t} ${t} ${t}40 ${t}40`:t,color:t,shadow:`0 2px 12px ${t}25, 0 2px 6px rgba(0,0,0,0.06)`,hoverShadow:`0 4px 20px ${t}35, 0 4px 12px rgba(0,0,0,0.08)`}}(r,$e(t.type,this.colors)),n=z("div",{style:`position:absolute;top:${i.top}px;left:${i.left}px;width:26px;height:26px;border-radius:50%;background:${s.bg};border:2px solid;border-color:${s.ring};display:flex;align-items:center;justify-content:center;font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:11px;font-weight:700;color:${s.color};cursor:pointer;pointer-events:auto;box-shadow:${s.shadow};transition:top 0.25s cubic-bezier(0.34,1.56,0.64,1),left 0.25s cubic-bezier(0.34,1.56,0.64,1),transform 0.15s ease,box-shadow 0.15s ease;user-select:none;-webkit-font-smoothing:antialiased;`});n.dataset.feedbackId=t.id,n.setAttribute("tabindex","0"),n.setAttribute("role","button");let o=t.message.length>60?`${t.message.slice(0,60)}...`:t.message,a=ru(this.t,"marker.aria",{number:e,type:eu(t.type,this.t),status:tu(r,this.t),message:o});n.setAttribute("aria-label",a),n.setAttribute("aria-describedby",this.tooltip.tooltipId),"wont_fix"===r?n.appendChild(z("span",{style:"width:2px;height:16px;border-radius:1px;background:currentColor;transform:rotate(45deg);"})):_(n,"resolved"===r?"\u2713":String(e)),Xe()&&n.appendChild(z("span",{style:"position:absolute;inset:-9px;border-radius:50%;"})),n.addEventListener("mouseenter",()=>{n.style.transform="scale(1.2)",n.style.boxShadow=s.hoverShadow,this.tooltip.show(t,n.getBoundingClientRect()),this.pinnedFeedback||this.showHighlight(t)}),n.addEventListener("mouseleave",()=>{n.style.transform="scale(1)",n.style.boxShadow=s.shadow,this.tooltip.scheduleHide(),this.pinnedFeedback||this.clearHighlight()}),n.addEventListener("focus",()=>{this.tooltip.show(t,n.getBoundingClientRect()),this.pinnedFeedback||this.showHighlight(t)}),n.addEventListener("blur",()=>{this.tooltip.scheduleHide(),this.pinnedFeedback||this.clearHighlight()});let l=e=>{e instanceof MouseEvent&&this.handleClusterClick(n,e)||(Ke()&&this.tooltip.hide(),this.pinHighlight(t),this.bus.emit("panel:toggle",!0),n.dispatchEvent(new CustomEvent("sp-marker-click",{detail:{feedbackId:t.id},bubbles:!0})))};return n.addEventListener("click",e=>l(e)),n.addEventListener("keydown",e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),l(e))}),n}focusFeedback(e){let t=this.entries.find(t=>t.feedback.id===e),i=t?.elements.find(nm);return!(!t||!i||(i.scrollIntoView({behavior:"smooth",block:"center"}),this.pinHighlight(t.feedback),this.highlight(e),0))}revealPin(e){return"none"!==this.container.style.display&&this.focusFeedback(e)}isLost(e){let t=this.entries.filter(t=>t.feedback.id===e);return t.length>0&&t.every(e=>e.elements.every(e=>"none"===e.style.display))}highlight(e){for(let t of this.entries)if(t.feedback.id===e)for(let e of t.elements)om(e,[{boxShadow:`0 0 0 0 ${this.colors.accentGlow}`},{boxShadow:"0 0 0 8px transparent",offset:.7},{boxShadow:"0 0 0 0 transparent"}],{duration:700,easing:"ease-out"})}showHighlight(e){this.removeHighlightElements();for(let t of e.annotations){let i=Qg(Zg(t),em(t));if(!i)continue;let r=$e(e.type,this.colors),s=i.rect,n=z("div",{style:`position:absolute;top:${s.top+window.scrollY}px;left:${s.left+window.scrollX}px;width:${s.width}px;height:${s.height}px;border:2px solid ${r};background:${r}0c;border-radius:8px;pointer-events:none;z-index:-1;opacity:0;box-shadow:0 0 16px ${r}20;transition:opacity 300ms ease;`});this.container.appendChild(n),this.highlightElements.push(n),n.offsetHeight,n.style.opacity="1"}}pinHighlight(e){this.unpinHighlight(),this.showHighlight(e),this.pinnedFeedback=e,this.onDocumentClick=e=>{this.container.contains(e.target)||this.unpinHighlight()},document.addEventListener("click",this.onDocumentClick,{capture:!0})}unpinHighlight(){this.onDocumentClick&&(document.removeEventListener("click",this.onDocumentClick,{capture:!0}),this.onDocumentClick=null),this.pinnedFeedback=null,this.clearHighlight()}clearHighlight(){for(let e of this.highlightElements)e.style.opacity="0",setTimeout(()=>e.remove(),300);this.highlightElements=[]}removeHighlightElements(){for(let e of this.highlightElements)e.remove();this.highlightElements=[]}clear(){this.unpinHighlight(),this.container.replaceChildren(),this.entries=[],this.clusters=[],this.anchorCache.clear()}destroy(){this.unpinHighlight(),this.repositionTimer&&("cancelIdleCallback"in window&&window.cancelIdleCallback(this.repositionTimer),clearTimeout(this.repositionTimer)),this.resizeHandler&&window.removeEventListener("resize",this.resizeHandler),this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler,{capture:!0}),this.onDocumentClickForClusters&&document.removeEventListener("click",this.onDocumentClickForClusters,!0),this.mutationObserver?.disconnect(),this.container.remove()}};O();var lm=class{constructor(e,t){this.store=e,this.projectName=t}store;projectName;async sendFeedback(e){return cm(await dm(this.write(e),"Failed to send feedback"))}async write(e){try{return await this.store.createFeedback({projectName:e.projectName,type:e.type,message:e.message,status:"open",url:e.url,urlPattern:e.urlPattern??null,viewport:e.viewport,userAgent:e.userAgent,authorName:e.authorName,authorEmail:e.authorEmail,clientId:e.clientId,annotations:e.annotations.map(w),screenshotDataUrl:e.screenshotDataUrl??null,screenshotRegion:e.screenshotRegion??null,diagnostics:e.diagnostics??null})}catch(i){if(!((t=i)instanceof M||v(t,"STORE_DUPLICATE")||v(t,"P2002")))throw i;let r=await this.store.findByClientId(e.clientId);if(!r||r.projectName!==e.projectName)throw i;return r}var t}async getFeedbacks(e,t){let{feedbacks:i,total:r}=await this.store.getFeedbacks({projectName:e,page:t?.page,limit:t?.limit,type:t?.type,status:t?.status,statuses:t?.statuses,search:t?.search,url:t?.url,urlPattern:t?.urlPattern});return{feedbacks:i.map(cm),total:r,capabilities:{comments:!!this.store.addComment}}}async resolveFeedback(e,t){let i=await this.store.updateFeedback(e,function(e,t=new Date){return x(e)?{status:e,resolvedAt:t}:{status:e,resolvedAt:null}}(t?"resolved":"open"));return cm(i)}async deleteFeedback(e){await this.store.deleteFeedback(e)}async deleteAllFeedbacks(e){await this.store.deleteAllFeedbacks(e)}async addComment(e,t){let i="Failed to post comment";if(!this.store.addComment)throw new d(`${i}: this store keeps no comments`,"SERVER",!1);return pm(await dm(this.store.addComment(e,t),i))}};function dm(e,t){return sg(e,3e4,()=>new d(`${t}: the store did not answer within 30 s`,"TIMEOUT",!0))}function cm(e){return{id:e.id,projectName:e.projectName,type:e.type,message:e.message,status:e.status,url:e.url,urlPattern:e.urlPattern??null,viewport:e.viewport,userAgent:e.userAgent,authorName:e.authorName,authorEmail:e.authorEmail,resolvedAt:e.resolvedAt?.toISOString()??null,createdAt:e.createdAt.toISOString(),updatedAt:e.updatedAt.toISOString(),annotations:e.annotations.map(hm),comments:e.comments?.map(pm),screenshotUrl:e.screenshotUrl??null,screenshotRegion:e.screenshotRegion??null,diagnostics:e.diagnostics??null}}function pm({clientId:e,createdAt:t,...i}){return{...i,createdAt:t.toISOString()}}function hm(e){return{id:e.id,feedbackId:e.feedbackId,cssSelector:e.cssSelector,xpath:e.xpath,textSnippet:e.textSnippet,elementTag:e.elementTag,elementId:e.elementId,textPrefix:e.textPrefix,textSuffix:e.textSuffix,fingerprint:e.fingerprint,neighborText:e.neighborText,anchorKey:e.anchorKey??null,xPct:e.xPct,yPct:e.yPct,wPct:e.wPct,hPct:e.hPct,scrollX:e.scrollX,scrollY:e.scrollY,viewportW:e.viewportW,viewportH:e.viewportH,devicePixelRatio:e.devicePixelRatio,createdAt:e.createdAt.toISOString()}}pu(),hu(),Ru(),_u(),Wu(),Yu();var um="cubic-bezier(0.16, 1, 0.3, 1)",fm="cubic-bezier(0.34, 1.56, 0.64, 1)",gm=`@keyframes sp-fab-in{from{transform:scale(0) rotate(-180deg);opacity:0;}to{transform:scale(1) rotate(0deg);opacity:1;}}@keyframes sp-fab-glow{0%,100%{box-shadow:0 4px 20px var(--sp-accent-glow),0 2px 8px rgba(0,0,0,0.08);}50%{box-shadow:0 4px 28px var(--sp-accent-glow),0 2px 12px rgba(0,0,0,0.1);}}@keyframes sp-flash-bg{0%{background-color:var(--sp-accent-light);}100%{background-color:transparent;}}@keyframes sp-slide-up{from{transform:translateY(8px);opacity:0;}to{transform:translateY(0);opacity:1;}}@keyframes sp-fade-in{from{opacity:0;}to{opacity:1;}}@keyframes sp-shimmer{0%{background-position:-200% 0;}100%{background-position:200% 0;}}.sp-anim-fab-in{animation:sp-fab-in 0.5s linear(0, 0.006, 0.025, 0.06, 0.11, 0.17, 0.25, 0.34, 0.45, 0.56, 0.67, 0.78, 0.88, 0.95, 1.01, 1.04, 1.05, 1.04, 1.02, 1, 0.99, 1) both;}.sp-anim-flash{animation:sp-flash-bg 0.5s cubic-bezier(0.25, 1, 0.5, 1);}.sp-anim-slide-up{animation:sp-slide-up 0.3s ${um} both;}.sp-anim-fade-in{animation:sp-fade-in 0.2s ease-out both;}.sp-panel{transform:translateX(110%);transition:transform 0.4s ${um};}.sp-panel.sp-panel--open{transform:translateX(0);}.sp-radial-item{opacity:0;pointer-events:none;transform:translate(0,0) scale(0.8);transition:transform 0.35s ${fm},opacity 0.2s ease,background 0.2s ease,border-color 0.2s ease,box-shadow 0.2s ease;}.sp-radial-item.sp-radial-item--open{opacity:1;pointer-events:auto;}.sp-radial-item{transition-delay:calc(var(--sp-i, 0) * 50ms);}@keyframes sp-card-in{from{transform:translateY(12px);opacity:0;}to{transform:translateY(0);opacity:1;}}.sp-card{animation:sp-card-in 0.35s ${um} both;animation-delay:calc(var(--sp-card-i, 0) * 40ms);}@keyframes sp-spin{to{transform:rotate(360deg);}}.sp-spinner{width:20px;height:20px;border:2px solid var(--sp-border);border-top-color:var(--sp-accent);border-radius:50%;animation:sp-spin 0.6s linear infinite;}@keyframes sp-badge-in{0%{transform:scale(0);}60%{transform:scale(1.3);}100%{transform:scale(1);}}.sp-fab-badge{animation:sp-badge-in 0.4s ${fm} both;}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-delay:0s !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}}`;F();var mm=`:host{-webkit-tap-highlight-color:transparent;}.sp-list,.sp-detail-content{overscroll-behavior:contain;}.sp-scrim{display:none;}@media (hover: none){.sp-fab:hover:not(:active),.sp-card:hover:not(:active),.sp-btn-primary:hover:not(:active),.sp-btn-danger:hover:not(:active){transform:none;}.sp-card:hover:not(:active){box-shadow:var(--sp-shadow-xs);}.sp-radial-item--open .sp-radial-label{opacity:1;transform:translate(0,-50%);}.sp-bulk-checkbox{opacity:1;}.sp-bulk-checkbox::after{content:"";position:absolute;inset:-12px;}.sp-bulk-select-all{display:none;}.sp-list--has-selection .sp-bulk-select-all{display:flex;}.sp-shortcuts-hint{display:none;}}@media (pointer: coarse){.sp-radial-item{width:48px;height:48px;left:2px;bottom:2px;}.sp-radial-item svg{width:20px;height:20px;}.sp-radial-label{font-size:13px;font-weight:600;padding:8px 12px;}.sp-search,.sp-input{font-size:16px;}.sp-filter-dropdown-btn{height:36px;}.sp-segmented__btn{height:32px;}.sp-sort-btn,.sp-group-toggle,.sp-mine-toggle{min-height:36px;}.sp-btn-resolve,.sp-btn-delete{min-height:40px;}.sp-detail-back{width:44px;height:44px;}.sp-detail-actions button,.sp-detail-actions a{height:44px;}}@media ${N}{.sp-fab--bottom-right,.sp-radial--bottom-right{right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));}.sp-fab--bottom-left,.sp-radial--bottom-left{left:calc(16px + env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));}.sp-scrim{display:block;position:fixed;inset:0;background:var(--sp-scrim);opacity:0;pointer-events:none;touch-action:none;transition:opacity 0.3s ease;}.sp-scrim--open{opacity:1;pointer-events:auto;}.sp-panel{top:auto;left:0;right:0;bottom:0;width:auto;max-width:none;height:calc(100vh - 48px);height:calc(100dvh - 40px - env(safe-area-inset-top,0px));border-left:none;border-top:1px solid var(--sp-glass-border);border-radius:var(--sp-radius-xl) var(--sp-radius-xl) 0 0;background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;transform:translateY(105%);}.sp-panel.sp-panel--open{transform:translateY(0);}.sp-panel-header,.sp-detail-header{position:relative;padding-top:22px;background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;touch-action:none;}.sp-panel-header{padding:22px 12px 12px 20px;}.sp-panel-header::before,.sp-detail-header::before{content:"";position:absolute;top:8px;left:50%;width:36px;height:5px;margin-left:-18px;border-radius:3px;background:var(--sp-border);}.sp-export-btn,.sp-btn-delete-all{width:40px;height:40px;padding:0;justify-content:center;border-radius:var(--sp-radius);}.sp-export-btn svg,.sp-btn-delete-all svg{width:17px;height:17px;}.sp-export-btn span,.sp-btn-delete-all span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}.sp-stats-bar{padding:10px 20px;}.sp-filters{padding:12px 16px 10px;background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;}.sp-stats-bar,.sp-filters{touch-action:pan-x;}.sp-search{height:44px;}.sp-filter-bar{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 8px;padding:0 16px 2px;scrollbar-width:none;}.sp-filter-bar::-webkit-scrollbar{display:none;}.sp-filter-dropdown{flex:0 0 auto;}.sp-filter-dropdown-btn{width:auto;}.sp-filter-dropdown-menu,.sp-sort-menu{position:fixed;top:auto;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));min-width:0;padding:6px;border-radius:var(--sp-radius-lg);background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--sp-shadow-xl);z-index:30;}.sp-filter-dropdown-option,.sp-sort-option{min-height:44px;font-size:14px;}.sp-list{padding:10px 12px calc(12px + env(safe-area-inset-bottom,0px));}.sp-bulk-bar{bottom:calc(16px + env(safe-area-inset-bottom,0px));}.sp-detail{background:var(--sp-bg);-webkit-backdrop-filter:none;backdrop-filter:none;}.sp-detail-section{padding:18px 20px;}.sp-detail-content{padding-bottom:env(safe-area-inset-bottom,0px);}.sp-identity-backdrop{align-items:flex-end;}.sp-identity-modal{width:100%;max-width:none;margin-bottom:var(--sp-kb, 0px);padding:24px 20px calc(20px + env(safe-area-inset-bottom,0px));border-radius:var(--sp-radius-xl) var(--sp-radius-xl) 0 0;background:var(--sp-bg);transform:translateY(100%);}.sp-identity-actions button{flex:1;height:48px;}.sp-identity-actions .sp-btn-primary{flex:2;}}`;function bm(e){return`:host{all:initial;position:fixed;z-index:2147483647;font-family:var(--sp-font);font-size:14px;line-height:1.5;color:var(--sp-text);color-scheme:${"#ffffff"===e.bg?"light":"dark"};-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;${function(e){return`--sp-accent: ${e.accent};--sp-accent-light: ${e.accentLight};--sp-accent-dark: ${e.accentDark};--sp-accent-glow: ${e.accentGlow};--sp-accent-gradient: ${e.accentGradient};--sp-accent-text: ${e.accentText};--sp-bg: ${e.bg};--sp-bg-hover: ${e.bgHover};--sp-text: ${e.text};--sp-text-secondary: ${e.textSecondary};--sp-text-tertiary: ${e.textTertiary};--sp-border: ${e.border};--sp-shadow: ${e.shadow};--sp-glass-bg: ${e.glassBg};--sp-glass-bg-heavy: ${e.glassBgHeavy};--sp-glass-border: ${e.glassBorder};--sp-glass-border-subtle: ${e.glassBorderSubtle};--sp-type-question: ${e.typeQuestion};--sp-type-change: ${e.typeChange};--sp-type-bug: ${e.typeBug};--sp-type-other: ${e.typeOther};--sp-type-question-bg: ${e.typeQuestionBg};--sp-type-change-bg: ${e.typeChangeBg};--sp-type-bug-bg: ${e.typeBugBg};--sp-type-other-bg: ${e.typeOtherBg};--sp-status-open: ${e.statusOpen};--sp-status-open-bg: ${e.statusOpenBg};--sp-status-resolved: ${e.statusResolved};--sp-status-resolved-bg: ${e.statusResolvedBg};--sp-radius: 12px;--sp-radius-lg: 16px;--sp-radius-xl: 20px;--sp-radius-full: 9999px;--sp-blur: 20px;--sp-blur-heavy: 32px;--sp-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.04);--sp-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.05), 0 1px 2px rgba(0, 0, 0, 0.04);--sp-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.08), 0 2px 4px rgba(0, 0, 0, 0.04);--sp-shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.04);--sp-shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.12), 0 8px 16px rgba(0, 0, 0, 0.06);--sp-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;`}(e)} --sp-identity-bg: ${e.glassBgHeavy};--sp-identity-overlay: ${"#ffffff"===e.bg?"rgba(15, 23, 42, 0.2)":"rgba(0, 0, 0, 0.4)"};--sp-scrim: ${"#ffffff"===e.bg?"rgba(15, 23, 42, 0.32)":"rgba(0, 0, 0, 0.5)"};}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}:focus-visible{outline:2px solid var(--sp-accent);outline-offset:2px;box-shadow:0 0 0 4px var(--sp-bg);}.sp-fab{position:fixed;width:52px;height:52px;border-radius:var(--sp-radius-full);background:var(--sp-accent-gradient);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px var(--sp-accent-glow),0 2px 8px rgba(0,0,0,0.08);transition:transform 0.25s cubic-bezier(0.34,1.56,0.64,1),box-shadow 0.3s ease;outline:none;}.sp-fab:focus-visible{outline:2px solid #fff;outline-offset:3px;}.sp-fab:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 8px 28px var(--sp-accent-glow),0 4px 12px rgba(0,0,0,0.1);}.sp-fab:active{transform:translateY(0) scale(0.95);transition-duration:0.1s;}.sp-fab--bottom-right{bottom:24px;right:24px;}.sp-fab--bottom-left{bottom:24px;left:24px;}.sp-fab svg{width:22px;height:22px;fill:currentColor;transition:transform 0.3s cubic-bezier(0.34,1.56,0.64,1);}.sp-fab-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 6px;border-radius:var(--sp-radius-full);background:#ef4444;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #fff;pointer-events:none;font-family:var(--sp-font);line-height:1;}.sp-toast{position:fixed;left:50%;bottom:92px;transform:translateX(-50%);max-width:min(360px,calc(100vw - 32px));padding:10px 14px;border-radius:var(--sp-radius-lg);background:var(--sp-text);color:var(--sp-bg);font:500 13px/1.4 var(--sp-font);box-shadow:var(--sp-shadow-lg);cursor:pointer;animation:sp-toast-in 0.2s ease-out;}.sp-toast[hidden]{display:none;}.sp-toast--error{border-left:4px solid var(--sp-type-bug);}@keyframes sp-toast-in{from{opacity:0;transform:translate(-50%,8px);}}@media (prefers-reduced-motion: reduce){.sp-toast{animation:none;}}.sp-radial{position:fixed;pointer-events:none;width:52px;height:52px;}.sp-radial--bottom-right{bottom:24px;right:24px;}.sp-radial--bottom-left{bottom:24px;left:24px;}.sp-radial-item{position:absolute;left:4px;bottom:4px;width:44px;height:44px;border-radius:var(--sp-radius-full);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));color:var(--sp-text);border:1px solid var(--sp-glass-border);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--sp-shadow-md);font-size:12px;font-weight:600;}.sp-radial-item:hover,.sp-radial-item:focus-visible{background:rgba(255,255,255,0.95);border-color:var(--sp-accent);color:var(--sp-accent-text);box-shadow:var(--sp-shadow-md),0 0 0 3px var(--sp-accent-light);outline:none;}.sp-radial-item svg{width:18px;height:18px;flex-shrink:0;stroke:currentColor;fill:none;}.sp-radial-label{position:absolute;top:50%;white-space:nowrap;font-size:12px;font-weight:500;color:var(--sp-text);pointer-events:none;opacity:0;padding:4px 12px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-sm);transform:translate(4px,-50%);transition:opacity 0.2s ease,transform 0.2s ease;}.sp-radial--bottom-right .sp-radial-label{right:calc(100% + 12px);}.sp-radial--bottom-left .sp-radial-label{left:calc(100% + 12px);transform:translate(-4px,-50%);}.sp-radial-item:hover .sp-radial-label,.sp-radial-item:focus-visible .sp-radial-label{opacity:1;transform:translate(0,-50%);}.sp-panel{position:fixed;top:0;right:0;width:400px;max-width:100vw;height:100vh;height:100dvh;background:var(--sp-glass-bg);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border-left:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xl);display:flex;flex-direction:column;overflow:hidden;}.sp-panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));position:relative;z-index:2;}.sp-panel-title{font-size:17px;font-weight:700;color:var(--sp-text);letter-spacing:-0.02em;}.sp-panel-close{width:44px;height:44px;border-radius:var(--sp-radius);border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--sp-text-tertiary);transition:all 0.2s ease;}.sp-panel-close:hover{background:var(--sp-bg-hover);color:var(--sp-text);}.sp-panel-close svg{width:16px;height:16px;}.sp-filters{padding:16px 24px;border-bottom:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));position:sticky;top:0;z-index:1;}.sp-search-wrap{position:relative;margin-bottom:12px;}.sp-search{width:100%;height:40px;padding:0 12px 0 38px;border-radius:var(--sp-radius);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text);font-family:var(--sp-font);font-size:13px;outline:none;transition:all 0.2s ease;}.sp-search::placeholder{color:var(--sp-text-tertiary);}.sp-search:focus{border-color:var(--sp-accent);box-shadow:0 0 0 3px var(--sp-accent-light);background:var(--sp-bg);}.sp-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--sp-text-tertiary);width:16px;height:16px;transition:color 0.2s ease;}.sp-search:focus ~ .sp-search-icon,.sp-search-wrap:focus-within .sp-search-icon{color:var(--sp-accent-text);}.sp-filter-bar{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap;}.sp-filter-dropdown{position:relative;flex:1 1 auto;min-width:0;}.sp-filter-dropdown-btn{--sp-chip-color: var(--sp-text-secondary);--sp-chip-bg: var(--sp-glass-bg-heavy);display:inline-flex;align-items:center;gap:8px;width:100%;height:32px;padding:0 8px 0 10px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background 0.18s ease,border-color 0.18s ease,box-shadow 0.18s ease;}.sp-filter-dropdown-btn:hover{border-color:var(--sp-chip-color);background:var(--sp-chip-bg);}.sp-filter-dropdown-btn[aria-expanded="true"]{border-color:var(--sp-chip-color);background:var(--sp-chip-bg);box-shadow:0 0 0 3px color-mix(in srgb,var(--sp-chip-color) 14%,transparent);}.sp-filter-dropdown-btn--filtered{border-color:var(--sp-chip-color);background:var(--sp-chip-bg);}.sp-filter-dropdown-btn__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;color:var(--sp-chip-color);}.sp-filter-dropdown-btn__icon svg{width:14px;height:14px;}.sp-filter-dropdown-btn__label{display:inline-flex;align-items:baseline;gap:6px;flex:1;min-width:0;overflow:hidden;}.sp-filter-dropdown-btn__prefix{color:var(--sp-text-tertiary);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:0.06em;}.sp-filter-dropdown-btn__value{color:var(--sp-chip-color);font-weight:600;overflow:hidden;text-overflow:ellipsis;}.sp-filter-dropdown-btn__chevron{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;color:var(--sp-text-tertiary);transition:transform 0.18s ease,color 0.18s ease;}.sp-filter-dropdown-btn__chevron svg{width:12px;height:12px;}.sp-filter-dropdown-btn[aria-expanded="true"] .sp-filter-dropdown-btn__chevron{transform:rotate(180deg);color:var(--sp-chip-color);}.sp-filter-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;min-width:180px;padding:4px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-md);z-index:10;animation:sp-filter-menu-in 0.15s ease-out both;}@keyframes sp-filter-menu-in{from{opacity:0;transform:translateY(-4px) scale(0.98);}to{opacity:1;transform:translateY(0) scale(1);}}.sp-filter-dropdown-option{--sp-chip-color: var(--sp-text-secondary);--sp-chip-bg: transparent;display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--sp-text);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;text-align:left;transition:background 0.12s ease,color 0.12s ease;}.sp-filter-dropdown-option__icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border-radius:6px;background:var(--sp-chip-bg);color:var(--sp-chip-color);}.sp-filter-dropdown-option__icon svg{width:13px;height:13px;}.sp-filter-dropdown-option__label{flex:1;min-width:0;}.sp-filter-dropdown-option__check{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;color:var(--sp-chip-color);}.sp-filter-dropdown-option__check svg{width:13px;height:13px;}.sp-filter-dropdown-option:hover{background:var(--sp-bg-hover);}.sp-filter-dropdown-option--active{color:var(--sp-chip-color);font-weight:600;}.sp-filter-dropdown-option--active:hover{background:var(--sp-chip-bg);}.sp-segmented{display:inline-flex;align-items:stretch;padding:2px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);flex-shrink:0;}.sp-segmented__btn{--sp-chip-color: var(--sp-text-tertiary);--sp-chip-bg: transparent;display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border:none;border-radius:var(--sp-radius-full);background:transparent;color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background 0.18s ease,color 0.18s ease,box-shadow 0.18s ease;}.sp-segmented__icon{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;flex-shrink:0;color:var(--sp-chip-color);transition:color 0.18s ease,transform 0.18s ease;}.sp-segmented__icon svg{width:13px;height:13px;}.sp-segmented__btn:hover{color:var(--sp-chip-color);}.sp-segmented__btn:hover .sp-segmented__icon{color:var(--sp-chip-color);}.sp-segmented__btn--active{background:var(--sp-chip-bg);color:var(--sp-chip-color);font-weight:600;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--sp-chip-color) 35%,transparent),0 1px 2px rgba(0,0,0,0.04);}.sp-segmented__btn--active .sp-segmented__icon{color:var(--sp-chip-color);}.sp-segmented__btn--open.sp-segmented__btn--active .sp-segmented__icon{animation:sp-segmented-pulse 2.4s ease-in-out infinite;}@keyframes sp-segmented-pulse{0%,100%{transform:scale(1);}50%{transform:scale(0.85);}}@media (prefers-reduced-motion: reduce){.sp-filter-dropdown-btn,.sp-filter-dropdown-btn__chevron,.sp-filter-dropdown-option,.sp-segmented__btn,.sp-segmented__icon{transition:none;}.sp-filter-dropdown-menu{animation:none;}.sp-segmented__btn--open.sp-segmented__btn--active .sp-segmented__icon{animation:none;}}.sp-list{flex:1;overflow-y:auto;padding:8px 12px;}.sp-list::-webkit-scrollbar{width:6px;}.sp-list::-webkit-scrollbar-track{background:transparent;}.sp-list::-webkit-scrollbar-thumb{background:var(--sp-border);border-radius:var(--sp-radius-full);}.sp-list::-webkit-scrollbar-thumb:hover{background:var(--sp-text-tertiary);}.sp-card{display:flex;padding:14px 16px;margin-bottom:6px;cursor:pointer;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xs);transition:all 0.2s cubic-bezier(0.34,1.56,0.64,1);}.sp-card:hover{background:var(--sp-bg);border-color:var(--sp-border);box-shadow:var(--sp-shadow-md);transform:translateY(-2px);}.sp-card:active{transform:translateY(0) scale(0.99);transition-duration:0.1s;}.sp-card-bar{width:3px;border-radius:var(--sp-radius-full);margin-right:14px;flex-shrink:0;}.sp-card-body{flex:1;min-width:0;}.sp-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;}.sp-card-number{font-size:12px;font-weight:700;color:var(--sp-text-tertiary);font-variant-numeric:tabular-nums;}.sp-badge{padding:2px 10px;border-radius:var(--sp-radius-full);font-size:11px;font-weight:600;letter-spacing:0.02em;}.sp-card-date{font-size:11px;color:var(--sp-text-tertiary);margin-left:auto;}.sp-lost{font-size:11px;color:var(--sp-text-tertiary);margin-top:4px;}.sp-card-message{font-size:13px;line-height:1.5;color:var(--sp-text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}.sp-card-message--expanded{-webkit-line-clamp:unset;}.sp-card-expand{font-size:12px;font-weight:500;color:var(--sp-accent-text);cursor:pointer;background:none;border:none;padding:4px 0;font-family:var(--sp-font);transition:opacity 0.15s ease;}.sp-card-expand:hover{opacity:0.8;}.sp-card-footer{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:10px;}.sp-btn-resolve,.sp-btn-delete{padding:8px 14px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:transparent;color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all 0.2s ease;}.sp-btn-resolve svg,.sp-btn-delete svg{width:14px;height:14px;}.sp-btn-resolve:hover{border-color:var(--sp-status-open);color:var(--sp-status-open);background:rgba(34,197,94,0.06);}.sp-btn-delete:hover{border-color:var(--sp-type-bug);color:var(--sp-type-bug);background:rgba(239,68,68,0.06);}.sp-btn-resolve:disabled,.sp-btn-delete:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.sp-spinner--sm{width:14px;height:14px;}.sp-panel-header-right{display:flex;align-items:center;gap:8px;}.sp-btn-delete-all{padding:5px 12px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:transparent;color:var(--sp-text-tertiary);font-family:var(--sp-font);font-size:11px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all 0.2s ease;}.sp-btn-delete-all svg{width:13px;height:13px;}.sp-btn-delete-all:hover{border-color:#ef4444;color:#ef4444;background:rgba(239,68,68,0.06);}.sp-btn-delete-all:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.sp-confirm-backdrop{position:fixed;inset:0;background:var(--sp-backdrop, rgba(15, 23, 42, 0.2));backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));display:flex;align-items:center;justify-content:center;z-index:2147483647;opacity:0;transition:opacity 0.2s ease;}.sp-confirm-dialog{width:min(340px,calc(100vw - 32px));padding:28px;border-radius:20px;background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xl);font-family:var(--sp-font);transform:translateY(8px) scale(0.97);transition:transform 0.25s cubic-bezier(0.16,1,0.3,1);}.sp-confirm-title{font-size:17px;font-weight:700;color:var(--sp-text);letter-spacing:-0.02em;margin-bottom:8px;}.sp-confirm-message{font-size:14px;color:var(--sp-text-secondary);line-height:1.5;margin-bottom:20px;}.sp-confirm-actions{display:flex;gap:8px;justify-content:flex-end;}.sp-btn-danger{height:40px;padding:0 22px;border-radius:var(--sp-radius);border:none;background:#ef4444;color:#fff;font-family:var(--sp-font);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease;box-shadow:0 2px 8px rgba(239,68,68,0.25);}.sp-btn-danger:hover{background:#dc2626;box-shadow:0 4px 16px rgba(239,68,68,0.3);transform:translateY(-1px);}.sp-btn-danger:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-card--resolved{opacity:0.5;}.sp-card--resolved .sp-card-message{text-decoration:line-through;text-decoration-color:var(--sp-text-tertiary);}.sp-loading{display:flex;align-items:center;justify-content:center;padding:48px 24px;}.sp-identity-backdrop{position:fixed;inset:0;background:var(--sp-identity-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2147483647;opacity:0;transition:opacity 0.25s ease;}.sp-identity-modal{width:340px;max-width:calc(100vw - 32px);padding:28px;border-radius:var(--sp-radius-xl);background:var(--sp-identity-bg);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:0 16px 48px var(--sp-shadow),0 8px 16px var(--sp-shadow);font-family:var(--sp-font);color:var(--sp-text);transform:translateY(12px) scale(0.97);transition:transform 0.3s cubic-bezier(0.16,1,0.3,1);}.sp-identity--open{opacity:1;}.sp-identity--open .sp-identity-modal{transform:none;}.sp-identity-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px;}.sp-identity-title{font-size:17px;font-weight:700;color:var(--sp-text);letter-spacing:-0.02em;}.sp-input{width:100%;height:42px;padding:0 14px;border-radius:var(--sp-radius);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text);font-family:var(--sp-font);font-size:14px;outline:none;transition:all 0.2s ease;}.sp-input::placeholder{color:var(--sp-text-tertiary);}.sp-input:focus{border-color:var(--sp-accent);box-shadow:0 0 0 3px var(--sp-accent-light);background:var(--sp-bg);}.sp-input-label{font-size:13px;font-weight:500;color:var(--sp-text-secondary);margin-bottom:6px;display:block;}.sp-btn-primary{height:40px;padding:0 22px;border-radius:var(--sp-radius);border:none;background:var(--sp-accent-gradient);color:#fff;font-family:var(--sp-font);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease;box-shadow:0 2px 8px var(--sp-accent-glow);}.sp-btn-primary:hover{box-shadow:0 4px 16px var(--sp-accent-glow);transform:translateY(-1px);}.sp-btn-primary:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-btn-primary:disabled{opacity:0.4;cursor:not-allowed;transform:none;box-shadow:none;}.sp-btn-ghost{height:40px;padding:0 22px;border-radius:var(--sp-radius);border:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:14px;font-weight:500;cursor:pointer;transition:all 0.2s ease;}.sp-btn-ghost:hover{border-color:var(--sp-accent);color:var(--sp-accent-text);background:var(--sp-accent-light);}.sp-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 24px;color:var(--sp-text-tertiary);text-align:center;gap:8px;animation:sp-fade-in 0.3s ease-out both;}.sp-empty-text{font-size:14px;font-weight:500;}.sp-load-more-wrap{display:flex;justify-content:center;padding:12px 0 4px;}.sp-btn-load-more{width:100%;}@media (forced-colors: active){.sp-fab,.sp-radial-item,.sp-filter-dropdown-btn,.sp-segmented,.sp-segmented__btn,.sp-card,.sp-panel-close,.sp-search,.sp-btn-resolve,.sp-btn-delete,.sp-btn-delete-all,.sp-btn-primary,.sp-btn-ghost,.sp-btn-danger,.sp-card-expand,.sp-input,.sp-confirm-dialog{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-segmented__btn--active{background:Highlight !important;color:HighlightText !important;}.sp-filter-dropdown-menu{border:2px solid ButtonText !important;background:Canvas !important;}.sp-filter-dropdown-option--active{background:Highlight !important;color:HighlightText !important;}.sp-fab:focus-visible,.sp-radial-item:focus-visible,.sp-filter-dropdown-btn:focus-visible,.sp-segmented__btn:focus-visible,.sp-filter-dropdown-option:focus-visible,.sp-panel-close:focus-visible,.sp-btn-resolve:focus-visible,.sp-btn-delete:focus-visible,.sp-btn-delete-all:focus-visible,.sp-btn-primary:focus-visible,.sp-btn-ghost:focus-visible,.sp-btn-danger:focus-visible,.sp-card-expand:focus-visible,.sp-input:focus-visible,.sp-search:focus-visible{outline:3px solid Highlight !important;}.sp-panel{border:2px solid ButtonText !important;}.sp-fab-badge{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-card-bar{background:ButtonText !important;}}${gm} ${$u} ${Fu} .sp-bulk-checkbox{position:relative;width:16px;height:16px;flex-shrink:0;cursor:pointer;border-radius:4px;color:var(--sp-border);opacity:0;transition:opacity 0.15s ease,color 0.15s ease,transform 0.15s ease;display:inline-flex;align-items:center;justify-content:center;}.sp-bulk-checkbox svg{width:16px;height:16px;display:block;}.sp-bulk-checkbox:hover{color:var(--sp-accent-text);transform:scale(1.1);}.sp-bulk-checkbox--checked{color:var(--sp-accent-text);opacity:1 !important;filter:drop-shadow(0 0 4px var(--sp-accent-glow));}.sp-card:hover .sp-bulk-checkbox{opacity:1;}.sp-list--has-selection .sp-bulk-checkbox{opacity:1;}.sp-card--selected{border-left:3px solid var(--sp-accent) !important;background:var(--sp-accent-light) !important;}.sp-card--selected:hover{background:var(--sp-accent-light) !important;}.sp-bulk-select-all{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-bottom:4px;border-radius:var(--sp-radius);background:transparent;cursor:pointer;opacity:0;transition:opacity 0.2s ease,background 0.2s ease;user-select:none;font-family:var(--sp-font);font-size:12px;font-weight:500;color:var(--sp-text-secondary);}.sp-bulk-select-all:hover{background:var(--sp-bg-hover);}.sp-list:hover .sp-bulk-select-all,.sp-list--has-selection .sp-bulk-select-all{opacity:1;}.sp-bulk-select-all .sp-bulk-checkbox{opacity:1;}@keyframes sp-bulk-bar-in{from{transform:translateY(100%) scale(0.95);opacity:0;}to{transform:translateY(0) scale(1);opacity:1;}}@keyframes sp-bulk-bar-out{from{transform:translateY(0) scale(1);opacity:1;}to{transform:translateY(100%) scale(0.95);opacity:0;}}.sp-bulk-bar{position:absolute;bottom:16px;left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:16px;background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xl);z-index:10;pointer-events:none;opacity:0;transform:translateY(100%) scale(0.95);transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1),opacity 0.25s ease;font-family:var(--sp-font);}.sp-bulk-bar--visible{pointer-events:auto;opacity:1;transform:translateY(0) scale(1);}.sp-bulk-bar-count{font-size:13px;font-weight:600;color:var(--sp-text);white-space:nowrap;letter-spacing:-0.01em;}.sp-bulk-bar-actions{display:flex;align-items:center;gap:6px;}.sp-bulk-btn-resolve,.sp-bulk-btn-delete{padding:7px 14px;border-radius:var(--sp-radius-full);border:1.5px solid transparent;background:transparent;font-family:var(--sp-font);font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all 0.2s ease;white-space:nowrap;}.sp-bulk-btn-resolve{color:#22c55e;border-color:#22c55e;}.sp-bulk-btn-resolve:hover{background:rgba(34,197,94,0.1);box-shadow:0 0 12px rgba(34,197,94,0.15);}.sp-bulk-btn-resolve:active{transform:scale(0.96);transition-duration:0.1s;}.sp-bulk-btn-delete{color:#ef4444;border-color:#ef4444;}.sp-bulk-btn-delete:hover{background:rgba(239,68,68,0.1);box-shadow:0 0 12px rgba(239,68,68,0.15);}.sp-bulk-btn-delete:active{transform:scale(0.96);transition-duration:0.1s;}.sp-bulk-btn-resolve:disabled,.sp-bulk-btn-delete:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.sp-bulk-btn-deselect{width:28px;height:28px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:transparent;color:var(--sp-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s ease;flex-shrink:0;padding:0;}.sp-bulk-btn-deselect:hover{background:var(--sp-bg-hover);color:var(--sp-text);border-color:var(--sp-text-tertiary);}.sp-bulk-btn-deselect:active{transform:scale(0.92);transition-duration:0.1s;}.sp-bulk-btn-deselect svg{width:12px;height:12px;}.sp-bulk-btn-resolve .sp-spinner,.sp-bulk-btn-delete .sp-spinner{width:14px;height:14px;}@media (forced-colors: active){.sp-bulk-checkbox,.sp-bulk-btn-resolve,.sp-bulk-btn-delete,.sp-bulk-btn-deselect,.sp-bulk-bar{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-bulk-checkbox--checked{background:Highlight !important;color:HighlightText !important;}.sp-card--selected{border-left:4px solid Highlight !important;}}@media (prefers-reduced-motion: reduce){.sp-bulk-bar{transition-duration:0.01ms !important;}.sp-bulk-checkbox{transition-duration:0.01ms !important;}} .sp-export-btn{padding:5px 12px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:transparent;color:var(--sp-text-tertiary);font-family:var(--sp-font);font-size:11px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all 0.2s ease;position:relative;}.sp-export-btn svg{width:13px;height:13px;}.sp-export-btn:hover{border-color:var(--sp-accent);color:var(--sp-accent-text);background:var(--sp-accent-light);}.sp-export-btn:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.sp-export-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;padding:4px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-lg);z-index:10;opacity:0;transform:translateY(-4px) scale(0.97);transition:opacity 0.15s ease,transform 0.15s ease;pointer-events:none;}.sp-export-menu--open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}.sp-export-option{display:flex;align-items:center;gap:10px;width:100%;padding:8px 16px;border:none;border-radius:8px;background:transparent;color:var(--sp-text-secondary);font-family:var(--sp-font);font-size:13px;font-weight:500;cursor:pointer;transition:all 0.15s ease;text-align:left;}.sp-export-option:hover,.sp-export-option:focus-visible{background:var(--sp-accent-light);color:var(--sp-accent-text);}.sp-export-option-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;}.sp-export-option-icon svg{width:16px;height:16px;}.sp-export-option-label{flex:1;}@media (forced-colors: active){.sp-export-btn,.sp-export-option,.sp-export-menu{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-export-btn:focus-visible,.sp-export-option:focus-visible{outline:3px solid Highlight !important;}} .sp-shortcuts-overlay{position:fixed;inset:0;background:var(--sp-backdrop, rgba(15, 23, 42, 0.2));backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));display:flex;align-items:center;justify-content:center;z-index:10;opacity:0;pointer-events:none;transition:opacity 0.2s ease;}.sp-shortcuts-overlay--visible{opacity:1;pointer-events:auto;}.sp-shortcuts-card{width:380px;max-width:calc(100vw - 32px);padding:24px 28px 20px;border-radius:20px;background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-xl);font-family:var(--sp-font);position:relative;transform:scale(0.92) translateY(8px);transition:transform 0.25s cubic-bezier(0.16,1,0.3,1);}.sp-shortcuts-overlay--visible .sp-shortcuts-card{transform:scale(1) translateY(0);}.sp-shortcuts-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:var(--sp-text);margin-bottom:18px;}.sp-shortcuts-title svg{width:18px;height:18px;color:var(--sp-text-secondary);flex-shrink:0;}.sp-shortcuts-close{position:absolute;top:16px;right:16px;width:28px;height:28px;border-radius:8px;border:none;background:transparent;color:var(--sp-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.15s ease,color 0.15s ease;}.sp-shortcuts-close:hover{background:var(--sp-bg-hover);color:var(--sp-text);}.sp-shortcuts-close svg{width:14px;height:14px;}.sp-shortcuts-grid{display:flex;flex-direction:column;gap:10px;}.sp-shortcuts-row{display:flex;align-items:center;gap:12px;}.sp-shortcuts-keys{display:flex;align-items:center;gap:4px;min-width:80px;justify-content:flex-end;}.sp-shortcuts-separator{font-size:11px;color:var(--sp-text-tertiary);user-select:none;}.sp-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:26px;padding:0 7px;border-radius:6px;background:var(--sp-bg-hover);border:1px solid var(--sp-border);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.08),0 1px 2px rgba(0,0,0,0.04);font-family:ui-monospace,"SF Mono","Cascadia Code","Segoe UI Mono",Menlo,monospace;font-size:12px;font-weight:600;color:var(--sp-text);text-align:center;line-height:1;user-select:none;}.sp-shortcuts-desc{font-size:13px;color:var(--sp-text-secondary);line-height:1.3;}.sp-shortcuts-hint{width:24px;height:24px;border-radius:var(--sp-radius-full);border:1px solid var(--sp-border);background:var(--sp-bg-hover);color:var(--sp-text-tertiary);font-family:ui-monospace,"SF Mono","Cascadia Code","Segoe UI Mono",Menlo,monospace;font-size:12px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.15s ease,color 0.15s ease,border-color 0.15s ease;position:absolute;bottom:12px;right:12px;}.sp-shortcuts-hint:hover{background:var(--sp-accent-light);color:var(--sp-accent-text);border-color:var(--sp-accent);}.sp-shortcuts-hint::after{content:attr(aria-label);position:absolute;bottom:calc(100% + 6px);right:0;padding:4px 8px;border-radius:6px;background:var(--sp-glass-bg-heavy);border:1px solid var(--sp-glass-border);box-shadow:var(--sp-shadow-sm);font-family:var(--sp-font);font-size:11px;font-weight:500;color:var(--sp-text-secondary);white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity 0.15s ease,transform 0.15s ease;}.sp-shortcuts-hint:hover::after{opacity:1;transform:translateY(0);}.sp-card--focused{outline:2px solid var(--sp-accent);outline-offset:-2px;border-radius:inherit;}@media (prefers-reduced-motion: reduce){.sp-shortcuts-overlay,.sp-shortcuts-card,.sp-shortcuts-close,.sp-shortcuts-hint,.sp-shortcuts-hint::after{transition-duration:0.01ms !important;}} .sp-detail{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--sp-glass-bg);backdrop-filter:blur(var(--sp-blur-heavy));-webkit-backdrop-filter:blur(var(--sp-blur-heavy));z-index:20;transform:translateX(100%);transition:transform 0.35s cubic-bezier(0.16,1,0.3,1);will-change:transform;overflow:hidden;}.sp-detail--visible{transform:translateX(0);}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.sp-detail{background:var(--sp-bg);}}@supports (-webkit-backdrop-filter: blur(1px)) and (not (backdrop-filter: blur(1px))){.sp-detail{background:var(--sp-bg);}}.sp-detail-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--sp-border);background:var(--sp-glass-bg-heavy);backdrop-filter:blur(var(--sp-blur));-webkit-backdrop-filter:blur(var(--sp-blur));flex-shrink:0;min-height:64px;}.sp-detail-back{width:40px;height:40px;border-radius:var(--sp-radius);border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--sp-text-tertiary);transition:all 0.2s ease;flex-shrink:0;padding:0;}.sp-detail-back:hover{background:var(--sp-bg-hover);color:var(--sp-text);}.sp-detail-back:active{transform:scale(0.92);transition-duration:0.1s;}.sp-detail-back svg{width:18px;height:18px;}.sp-detail-title{font-size:16px;font-weight:700;color:var(--sp-text);letter-spacing:-0.02em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sp-detail-header .sp-badge{flex-shrink:0;}.sp-detail-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:0;}.sp-detail-content::-webkit-scrollbar{width:6px;}.sp-detail-content::-webkit-scrollbar-track{background:transparent;}.sp-detail-content::-webkit-scrollbar-thumb{background:var(--sp-border);border-radius:var(--sp-radius-full);}.sp-detail-content::-webkit-scrollbar-thumb:hover{background:var(--sp-text-tertiary);}.sp-detail-section{padding:20px 24px;border-bottom:1px solid var(--sp-border);opacity:0;transform:translateY(8px);animation:sp-detail-section-in 0.35s cubic-bezier(0.16,1,0.3,1) forwards;}@keyframes sp-detail-section-in{to{opacity:1;transform:translateY(0);}}.sp-detail-section:last-child{border-bottom:none;}.sp-detail-section-title{font-size:11px;font-weight:600;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:14px;display:flex;align-items:center;gap:6px;}.sp-detail-section-title svg{width:14px;height:14px;opacity:0.6;}.sp-detail-status{display:flex;align-items:center;gap:10px;margin-bottom:16px;}.sp-detail-status-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:var(--sp-radius-full);font-size:12px;font-weight:600;letter-spacing:0.02em;}.sp-detail-status-pill--open{background:rgba(34,197,94,0.1);color:#22c55e;border:1px solid rgba(34,197,94,0.2);}.sp-detail-status-pill--resolved{background:rgba(156,163,175,0.1);color:#9ca3af;border:1px solid rgba(156,163,175,0.2);}.sp-detail-status-pill--in-progress{background:rgba(245,158,11,0.1);color:#f59e0b;border:1px solid rgba(245,158,11,0.2);}.sp-detail-status-pill--wont-fix{background:rgba(148,163,184,0.1);color:#94a3b8;border:1px solid rgba(148,163,184,0.2);}.sp-detail-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}.sp-detail-actions{display:flex;gap:8px;}.sp-detail-actions button,.sp-detail-actions a{flex:1;height:40px;padding:0 16px;border-radius:var(--sp-radius);font-family:var(--sp-font);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all 0.2s ease;}.sp-detail-actions button svg,.sp-detail-actions a svg{width:15px;height:15px;}.sp-detail-btn-resolve{border:1.5px solid #22c55e;background:rgba(34,197,94,0.06);color:#22c55e;}.sp-detail-btn-resolve:hover{background:rgba(34,197,94,0.14);box-shadow:0 0 16px rgba(34,197,94,0.12);transform:translateY(-1px);}.sp-detail-btn-resolve:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-detail-btn-reopen{border:1.5px solid var(--sp-accent);background:var(--sp-accent-light);color:var(--sp-accent-text);}.sp-detail-btn-reopen:hover{background:rgba(var(--sp-accent),0.14);box-shadow:0 0 16px var(--sp-accent-glow);transform:translateY(-1px);}.sp-detail-btn-reopen:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-detail-btn-delete{border:1.5px solid #ef4444;background:rgba(239,68,68,0.06);color:#ef4444;}.sp-detail-btn-delete:hover{background:rgba(239,68,68,0.14);box-shadow:0 0 16px rgba(239,68,68,0.12);transform:translateY(-1px);}.sp-detail-btn-delete:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-detail-btn-custom{border:1.5px solid var(--sp-border);background:var(--sp-glass-bg-heavy);color:var(--sp-text);text-decoration:none;}.sp-detail-btn-custom:hover{background:var(--sp-bg-hover);border-color:var(--sp-accent);color:var(--sp-accent-text);box-shadow:0 0 16px var(--sp-accent-glow);transform:translateY(-1px);}.sp-detail-btn-custom:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}.sp-detail-actions--custom{flex-wrap:wrap;margin-top:8px;}.sp-detail-actions--custom > .sp-detail-btn-custom{flex:1 1 auto;min-width:0;}.sp-detail-btn-custom svg{flex-shrink:0;}.sp-detail-btn-custom span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sp-detail-actions button:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;transform:none;box-shadow:none;}.sp-detail-message{font-size:14px;line-height:1.65;color:var(--sp-text);padding:14px 16px;border-left:3px solid var(--sp-accent);border-radius:0 var(--sp-radius) var(--sp-radius) 0;background:var(--sp-glass-bg-heavy);white-space:pre-wrap;word-break:break-word;}.sp-thread-list{list-style:none;}.sp-comment{margin-top:8px;border-left-color:var(--sp-border);}.sp-comment[data-role="team"]{border-left-color:var(--sp-accent);}.sp-comment-head,.sp-thread-foot{display:flex;align-items:center;gap:6px;font-size:12px;}.sp-comment-head{margin-bottom:4px;font-weight:600;}.sp-comment-head .sp-badge{background:var(--sp-accent-light);}.sp-comment-head time,.sp-thread-foot,.sp-thread-input::placeholder{font-weight:400;color:var(--sp-text-secondary);}.sp-comment-head time{margin-left:auto;}.sp-thread-input{height:auto;margin-top:10px;padding:10px 14px;}.sp-thread-foot{justify-content:space-between;margin-top:8px;}.sp-thread-foot [aria-busy="true"]::before{content:"";display:inline-block;width:10px;height:10px;margin-right:8px;border:2px solid;border-top-color:transparent;border-radius:50%;animation:sp-spin 0.6s linear infinite;}.sp-thread-error{margin-top:8px;padding:8px 12px;border-radius:var(--sp-radius);background:var(--sp-type-bug-bg);font-size:12px;}.sp-thread-error:empty{display:none;}.sp-detail-screenshot{display:block;width:100%;height:auto;max-height:400px;object-fit:contain;border-radius:var(--sp-radius);border:1px solid var(--sp-glass-border);background:var(--sp-glass-bg-heavy);}.sp-detail-meta{display:flex;flex-direction:column;gap:14px;}.sp-detail-meta-row{display:flex;align-items:flex-start;gap:12px;}.sp-detail-meta-row svg{width:14px;height:14px;color:var(--sp-text-tertiary);flex-shrink:0;margin-top:1px;}.sp-detail-meta-content{flex:1;min-width:0;}.sp-detail-meta-label{font-size:10px;font-weight:600;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.06em;line-height:1;margin-bottom:4px;}.sp-detail-meta-value{font-size:13px;line-height:1.4;color:var(--sp-text);word-break:break-all;}.sp-detail-meta-value--mono{font-family:"SF Mono","Cascadia Code","Fira Code","Consolas",monospace;font-size:12px;background:var(--sp-glass-bg-heavy);padding:2px 6px;border-radius:4px;border:1px solid var(--sp-glass-border-subtle);}.sp-detail-meta-value--secondary{color:var(--sp-text-secondary);font-size:12px;}.sp-detail-annotation{display:flex;flex-direction:column;gap:12px;}.sp-detail-annotation-info{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--sp-radius);background:var(--sp-glass-bg-heavy);border:1px solid var(--sp-glass-border-subtle);}.sp-detail-annotation-row{display:flex;align-items:flex-start;gap:10px;}.sp-detail-annotation-row svg{width:13px;height:13px;color:var(--sp-text-tertiary);flex-shrink:0;margin-top:2px;}.sp-detail-annotation-label{font-size:10px;font-weight:600;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.06em;line-height:1;margin-bottom:3px;}.sp-detail-annotation-value{font-size:12px;line-height:1.4;color:var(--sp-text);word-break:break-all;}.sp-detail-annotation-value--mono{font-family:"SF Mono","Cascadia Code","Fira Code","Consolas",monospace;font-size:11px;background:var(--sp-bg-hover);padding:2px 6px;border-radius:4px;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sp-detail-btn-goto{width:100%;height:44px;padding:0 20px;border-radius:var(--sp-radius);border:none;background:var(--sp-accent-gradient);color:#fff;font-family:var(--sp-font);font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all 0.25s ease;box-shadow:0 2px 12px var(--sp-accent-glow);}.sp-detail-btn-goto svg{width:16px;height:16px;}.sp-detail-btn-goto:hover{box-shadow:0 4px 20px var(--sp-accent-glow);transform:translateY(-2px);}.sp-detail-btn-goto:active{transform:translateY(0) scale(0.98);transition-duration:0.1s;}@media (forced-colors: active){.sp-detail{border:2px solid ButtonText !important;background:Canvas !important;}.sp-detail-back,.sp-detail-btn-goto,.sp-detail-btn-resolve,.sp-detail-btn-reopen,.sp-detail-btn-delete,.sp-detail-btn-custom{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-detail-back:focus-visible,.sp-detail-btn-goto:focus-visible,.sp-detail-btn-resolve:focus-visible,.sp-detail-btn-reopen:focus-visible,.sp-detail-btn-delete:focus-visible,.sp-detail-btn-custom:focus-visible{outline:3px solid Highlight !important;}.sp-detail-status-pill{border:2px solid ButtonText !important;background:Canvas !important;color:ButtonText !important;}.sp-detail-message{border-left:3px solid ButtonText !important;}}.sp-detail-diag{display:flex;flex-direction:column;gap:12px;}.sp-detail-diag-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:var(--sp-radius);border:1px solid var(--sp-glass-border-subtle);background:var(--sp-glass-bg-heavy);color:var(--sp-text);font-family:var(--sp-font);font-size:12px;font-weight:600;cursor:pointer;transition:background 0.15s ease;}.sp-detail-diag-toggle:hover{background:var(--sp-bg-hover);}.sp-detail-diag-toggle svg{width:12px;height:12px;transition:transform 0.2s ease;}.sp-detail-diag-toggle[aria-expanded="true"] svg{transform:rotate(90deg);}.sp-detail-diag-counts{display:inline-flex;gap:6px;font-weight:500;color:var(--sp-text-tertiary);}.sp-detail-diag-count{padding:1px 7px;border-radius:var(--sp-radius-full);background:var(--sp-bg-hover);font-variant-numeric:tabular-nums;}.sp-detail-diag-count--errors{background:rgba(239,68,68,0.14);color:#ef4444;}.sp-detail-diag-body{display:none;flex-direction:column;gap:14px;}.sp-detail-diag-body--open{display:flex;}.sp-detail-diag-group-title{font-size:10px;font-weight:700;color:var(--sp-text-tertiary);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:6px;}.sp-detail-diag-list{list-style:none;padding:0;margin:0;border-radius:var(--sp-radius);border:1px solid var(--sp-glass-border-subtle);background:var(--sp-glass-bg-heavy);max-height:240px;overflow-y:auto;}.sp-detail-diag-list li{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-bottom:1px solid var(--sp-glass-border-subtle);font-family:"SF Mono","Cascadia Code","Fira Code","Consolas",monospace;font-size:11px;line-height:1.45;color:var(--sp-text);}.sp-detail-diag-list li:last-child{border-bottom:none;}.sp-detail-diag-level{flex-shrink:0;font-weight:700;width:44px;text-transform:uppercase;letter-spacing:0.04em;font-size:10px;}.sp-detail-diag-level--log{color:var(--sp-text-tertiary);}.sp-detail-diag-level--info{color:#3b82f6;}.sp-detail-diag-level--warn{color:#f59e0b;}.sp-detail-diag-level--error{color:#ef4444;}.sp-detail-diag-message{flex:1;min-width:0;word-break:break-word;white-space:pre-wrap;}.sp-detail-diag-net{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;}.sp-detail-diag-net-status{flex-shrink:0;font-weight:700;color:#ef4444;min-width:32px;text-align:right;font-variant-numeric:tabular-nums;}.sp-detail-diag-net-method{flex-shrink:0;font-weight:600;color:var(--sp-text-tertiary);min-width:44px;}.sp-detail-diag-net-url{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sp-text);}.sp-detail-diag-empty{padding:12px;font-style:italic;font-size:11px;color:var(--sp-text-tertiary);text-align:center;}@media (prefers-reduced-motion: reduce){.sp-detail{transition-duration:0.01ms !important;}.sp-detail-section{animation-duration:0.01ms !important;}} ${mm}`}qe(),qe(),G(),Pe(),su(),qe();var ym="opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1), transform 0.2s cubic-bezier(0.16, 1, 0.3, 1)",xm=class{constructor(e,t="en"){this.colors=e,this.locale=t,this.root=z("div",{style:`position:fixed;z-index:2147483647;max-width:280px;padding:12px 14px;border-radius:14px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);font-family:"Inter",system-ui,-apple-system,sans-serif;pointer-events:auto;opacity:0;transform:translateY(6px) scale(0.97);transition:${ym};visibility:hidden;-webkit-font-smoothing:antialiased;`}),this.root.setAttribute("role","tooltip"),this.root.id=this.tooltipId,this.arrow=z("div",{style:"position:absolute;width:12px;height:12px;transform:rotate(45deg);pointer-events:none;"}),this.root.appendChild(this.arrow),this.restyle(),this.root.addEventListener("mouseenter",()=>this.cancelHide()),this.root.addEventListener("mouseleave",()=>this.scheduleHide()),X(this.root),document.body.appendChild(this.root)}colors;locale;root;arrow;showTimer=null;hideTimer=null;currentFeedbackId=null;tooltipId="sp-tooltip";restyle(){let{glassBgHeavy:e,glassBorder:t,shadow:i}=this.colors,{style:r}=this.root;r.background=e,r.border=`1px solid ${t}`,r.boxShadow=`0 8px 32px ${i}, 0 2px 8px ${i}`}show(e,t){this.cancelHide(),this.currentFeedbackId!==e.id&&(this.cancelShow(),this.showTimer=setTimeout(()=>{this.currentFeedbackId=e.id,this.render(e),this.position(t);let i=typeof window<"u"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;this.root.style.transition=i?"none":ym,this.root.style.visibility="visible",this.root.style.opacity="1",this.root.style.transform="translateY(0) scale(1)"},120))}scheduleHide(){this.cancelHide(),this.hideTimer=setTimeout(()=>this.hide(),80)}hide(){this.cancelShow(),this.currentFeedbackId=null,this.root.style.opacity="0",this.root.style.transform="translateY(6px) scale(0.97)",setTimeout(()=>{this.currentFeedbackId||(this.root.style.visibility="hidden")},200)}cancelShow(){this.showTimer&&(clearTimeout(this.showTimer),this.showTimer=null)}cancelHide(){this.hideTimer&&(clearTimeout(this.hideTimer),this.hideTimer=null)}render(e){let t=Array.from(this.root.children);for(let e of t)e!==this.arrow&&e.remove();let i=$e(e.type,this.colors),r=We(e.type,this.colors),s=iu(this.locale),n=eu(e.type,s),o=z("div",{style:"display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-bottom:8px;"}),a=(e,t,i)=>{let r=z("span",{style:`padding:3px 10px;border-radius:9999px;font-size:11px;font-weight:600;white-space:nowrap;color:${t};background:${i};letter-spacing:0.02em;`});return _(r,e),r},l=z("span",{style:`font-size:11px;color:${this.colors.textSecondary};margin-left:auto;`});_(l,q(e.createdAt,this.locale)),o.appendChild(a(n,i,r)),o.appendChild(a(tu(e.status,s),ze(e.status,this.colors),_e(e.status,this.colors))),o.appendChild(l);let d=z("div",{style:`font-size:13px;line-height:1.55;color:${this.colors.text};display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;`});_(d,e.message),this.root.insertBefore(o,this.arrow),this.root.insertBefore(d,this.arrow)}position(e){let t=this.root.getBoundingClientRect(),i=e.top-t.height-10,r=e.left+e.width/2-t.width/2,s=!0;i<8&&(i=e.bottom+10,s=!1),r=Math.max(8,Math.min(r,window.innerWidth-t.width-8)),this.root.style.top=`${i}px`,this.root.style.left=`${r}px`;let n=Math.max(16,Math.min(e.left+e.width/2-r-6,t.width-22));this.arrow.style.cssText=s?`position:absolute;width:12px;height:12px;background:${this.colors.glassBgHeavy};border-right:1px solid ${this.colors.glassBorder};border-bottom:1px solid ${this.colors.glassBorder};transform:rotate(45deg);pointer-events:none;bottom:-6px;left:${n}px;`:`position:absolute;width:12px;height:12px;background:${this.colors.glassBgHeavy};border-left:1px solid ${this.colors.glassBorder};border-top:1px solid ${this.colors.glassBorder};transform:rotate(45deg);pointer-events:none;top:-6px;left:${n}px;`}contains(e){return this.root.contains(e)}destroy(){this.cancelShow(),this.cancelHide(),this.root.remove()}};Ze();var vm=null;function wm(){let e=()=>{};return{destroy:e,open:e,close:e,refresh:()=>Promise.resolve(),focusFeedback:()=>!1,on:()=>e,off:e}}function km(){try{return process.env.NODE_ENV}catch{return}}function Cm(t){if(typeof window>"u"||typeof document>"u")return t.onSkip?.("ssr"),wm();let i=t.debug?(...e)=>console.debug("[siteping]",...e):()=>{};if(vm)return i("initSiteping() called more than once \u2014 returning existing instance"),vm();let r=km();if(!t.forceShow&&("production"===r||void 0===r&&!function(){let e=location.hostname;return""===e||"localhost"===e||e.endsWith(".localhost")||"127.0.0.1"===e||"[::1]"===e}()))return t.onSkip?.("production"),wm();let s="number"==typeof t.minViewportWidth&&Number.isFinite(t.minViewportWidth)?t.minViewportWidth:0;if(!t.forceShow&&window.innerWidth<s){let e="mobile";return t.onSkip?.(e),wm()}if(!(t.store||t.endpoint&&"string"==typeof t.endpoint))return console.error("[siteping] Missing 'endpoint' or 'store' in config. Provide an endpoint like '/api/siteping' or a SitepingStore instance."),wm();if(!t.projectName||"string"!=typeof t.projectName)return console.error("[siteping] Missing or invalid 'projectName' in config. Expected a non-empty string."),wm();let o=function(e){let t=function(e){try{return Intl.getCanonicalLocales(e.replace(/_/g,"-"))[0]}catch{return}}(e);return t||(console.warn(`[siteping] Invalid locale "${e}", falling back to "en"`),"en")}(t.locale??"en"),a="en"===o?Promise.resolve():e.loadLocale(o).catch(()=>{}),d=iu(o),c=t.scopeAnnotationsByUrl??!0,p=()=>{try{let e=t.getPageScope?.();if(e)return e}catch(e){i("getPageScope() threw, falling back to pathname:",e)}return{url:window.location.pathname,urlPattern:null}};i("Initializing widget",{projectName:t.projectName,theme:t.theme??"light",locale:o,scopeAnnotationsByUrl:c});let h=function(e){return void 0===e||!1===e?{console:!1,network:!1,maxConsoleEntries:50,maxNetworkEntries:20}:!0===e?{console:!0,network:!0,maxConsoleEntries:50,maxNetworkEntries:20}:{console:!1!==e.console,network:!1!==e.network,maxConsoleEntries:"number"==typeof e.maxConsoleEntries?e.maxConsoleEntries:50,maxNetworkEntries:"number"==typeof e.maxNetworkEntries?e.maxNetworkEntries:20}}(t.captureDiagnostics),u=h.console?new Ag(h.maxConsoleEntries):null,f=h.network?new Bg(h.maxNetworkEntries):null,g=Fe(t.accentColor,t.theme),m=new Rg,b=new Set,y=(e,...t)=>{for(let i of b)i.emit(e,...t)},x=(()=>{if(t.store)return new lm(t.store,t.projectName);let e=t.endpoint;if("string"!=typeof e||0===e.length)throw new Error("[siteping] internal invariant: endpoint must be a non-empty string in HTTP mode");return new kg(e,t.projectName,{apiKey:t.apiKey,headers:t.headers})})();t.onOpen&&m.on("open",t.onOpen),t.onClose&&m.on("close",t.onClose),t.onFeedbackSent&&m.on("feedback:sent",t.onFeedbackSent),t.onCommentAdded&&m.on("comment:added",t.onCommentAdded),t.onError&&m.on("feedback:error",t.onError),t.onError&&m.on("panel:action-error",t.onError),m.on("panel:action-error",e=>console.error("[siteping] Panel action failed:",e)),t.onAnnotationStart&&m.on("annotation:start",t.onAnnotationStart),t.onAnnotationEnd&&m.on("annotation:end",t.onAnnotationEnd);let v=tg(t.projectName,t.endpoint);m.on("feedback:sent",e=>v.add(e.id)),m.on("feedback:deleted",e=>v.remove(e)),m.on("feedback:all-deleted",()=>v.clear());let w={"feedback:sent":()=>m.on("feedback:sent",e=>y("feedback:sent",e)),"feedback:deleted":()=>m.on("feedback:deleted",e=>y("feedback:deleted",e)),"comment:added":()=>m.on("comment:added",e=>y("comment:added",e)),"feedback:error":()=>m.on("feedback:error",e=>y("feedback:error",e)),"panel:open":()=>m.on("open",()=>y("panel:open")),"panel:close":()=>m.on("close",()=>y("panel:close")),"annotation:start":()=>m.on("annotation:start",()=>y("annotation:start")),"annotation:end":()=>m.on("annotation:end",()=>y("annotation:end"))};for(let e of Object.values(w))e();m.on("open",()=>i("Panel opened")),m.on("close",()=>i("Panel closed")),m.on("feedback:sent",e=>i("Feedback sent",e.id)),m.on("feedback:error",e=>i("Feedback failed",e.message)),m.on("annotation:start",()=>i("Annotation started")),m.on("annotation:end",()=>i("Annotation ended"));let C=document.createElement("siteping-widget");C.style.cssText="position:fixed;z-index:2147483647;pointer-events:auto;";let S,E="test"===km()?"open":"closed",M=C.attachShadow({mode:E});if("adoptedStyleSheets"in ShadowRoot.prototype){let e=new CSSStyleSheet;M.adoptedStyleSheets=[e],S=()=>e.replaceSync(bm(g))}else{let e=document.createElement("style");M.appendChild(e),S=()=>{e.textContent=bm(g)}}S(),X(C,M);let A=function(){let e=e=>{ce(e.target)&&ee()&&e.stopImmediatePropagation()},t=[["pointerdown",e],["focusin",e],["focusout",e=>{(ce(e.target)||ce(e.relatedTarget))&&ee()&&e.stopImmediatePropagation()}],["keydown",e=>{if(("Tab"===e.key||"Escape"===e.key)&&ce(e.target)&&ee()){if("Escape"===e.key)return void(function(e){for(let t=te(e);t;t=de(t))for(let e of ae.get(t)??[])if(e())return!0;return!1}(e)&&e.preventDefault());for(let t=te(e);t;t=de(t))for(let i of[...le.get(t)??[]])i(e);e.stopImmediatePropagation()}}]];for(let[e,i]of t)window.addEventListener(e,i,!0);return()=>{for(let[e,i]of t)window.removeEventListener(e,i,!0)}}();document.body.appendChild(C);let T=function(e){let t=null,i=i=>{let r=i.target;r instanceof HTMLElement&&(r===document.body||r===document.documentElement||r===e||Sf(r)||(t=Ef(r)))};return document.addEventListener("focusin",i),{getLastPageFocus:()=>(t&&!t.isConnected&&(t=null),t),destroy(){document.removeEventListener("focusin",i),t=null}}}(C),B=document.createElement("div");B.setAttribute("role","status"),B.setAttribute("aria-live","polite"),B.setAttribute("aria-atomic","true"),B.setAttribute("data-siteping-ignore","true"),B.style.cssText="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;",X(B),document.body.appendChild(B);let R=document.createElement("div");R.className="sp-toast",R.setAttribute("aria-hidden","true"),R.hidden=!0;let L,P=()=>{clearTimeout(L),R.hidden=!0};R.addEventListener("click",P),M.appendChild(R);let I=(e,t)=>{B.textContent=e,R.textContent=e,R.classList.toggle("sp-toast--error",t),R.hidden=!1,clearTimeout(L),L=setTimeout(P,t?8e3:4e3)},N=new xm(g,o),D=new am(g,N,m,d,B),O=new Pg(M,t,m,d);m.on("markers:changed",e=>O.updateBadge(e));let F=null,$=null,z=!1,_=0;async function W(e=!1){let i=t.identity??Ng();if(i)return i;let r=await function(e,t,i){return new Promise(r=>{let s=e.activeElement??document.activeElement,o=e.host;i&&o.parentNode&&o.parentNode.appendChild(o);let a=document.createElement("div");a.className="sp-identity-backdrop";let l=document.createElement("div");l.className="sp-identity-modal";let d=`sp-identity-title-${Date.now()}`;l.setAttribute("role","dialog"),l.setAttribute("aria-modal","true"),l.setAttribute("aria-labelledby",d);let c=document.createElement("div");c.className="sp-identity-title",c.id=d,c.textContent=t("identity.title"),c.style.marginBottom="20px";let p=`sp-identity-name-${Date.now()}`,h=`sp-identity-email-${Date.now()}`,u=document.createElement("label");u.className="sp-input-label",u.textContent=t("identity.nameLabel"),u.setAttribute("for",p);let f=document.createElement("input");f.className="sp-input",f.id=p,f.type="text",f.maxLength=k,f.placeholder=t("identity.namePlaceholder"),f.style.marginBottom="14px";let g=document.createElement("label");g.className="sp-input-label",g.textContent=t("identity.emailLabel"),g.setAttribute("for",h);let m=document.createElement("input");m.className="sp-input",m.id=h,m.type="email",m.maxLength=k,m.placeholder=t("identity.emailPlaceholder");let b=document.createElement("div");b.className="sp-identity-actions";let y=Qe(e=>l.style.setProperty("--sp-kb",`${e}px`)),x=e=>{S(),E(),y(),a.classList.remove("sp-identity--open"),setTimeout(()=>{a.remove(),s?.focus(),r(e)},250)},v=document.createElement("button");v.className="sp-btn-ghost",v.textContent=t("identity.cancel"),v.addEventListener("click",()=>x(null));let w=document.createElement("button");w.className="sp-btn-primary",w.textContent=t("identity.submit");let C=(e,t)=>{e.style.borderColor=t?"var(--sp-type-bug, #ef4444)":"",t?e.setAttribute("aria-invalid","true"):e.removeAttribute("aria-invalid")};w.addEventListener("click",()=>{let e=f.value.trim(),t=m.value.trim();if(!e||!t)return;let i=e.length>k,r=t.length>k||!n(t);C(f,i),C(m,r),!i&&!r&&x({name:e,email:t})});let S=Z(a,t=>{if("Escape"===t.key)return t.stopPropagation(),void x(null);if("Tab"===t.key){let i=Array.from(l.querySelectorAll('input, button, [tabindex]:not([tabindex="-1"])'));if(0===i.length)return;let r=i[0],s=i[i.length-1];if(!r||!s)return;let n=e.activeElement;t.shiftKey?(n===r||!l.contains(n))&&(t.preventDefault(),s.focus()):(n===s||!l.contains(n))&&(t.preventDefault(),r.focus())}}),E=Q(a,()=>!0);a.addEventListener("click",e=>{e.target===a&&x(null)}),b.appendChild(v),b.appendChild(w),l.appendChild(c),l.appendChild(u),l.appendChild(f),l.appendChild(g),l.appendChild(m),l.appendChild(b),a.appendChild(l),e.appendChild(a),requestAnimationFrame(()=>{a.classList.add("sp-identity--open"),f.focus()})})}(M,d,e);return r&&function(e){try{localStorage.setItem(Ig,JSON.stringify(e))}catch{}}(r),r}async function H(){return z?null:F||($||($=Promise.resolve().then(()=>(tf(),Ju)).then(e=>z?null:(F=new e.Panel(M,g,m,x,t.projectName,D,d,o,{getScope:p,scopeAnnotationsByUrl:c,panelActions:t.panelActions,ownFeedback:v,resolveIdentity:W,readOnly:t.readOnly}),F))),$)}if(typeof window<"u"){let e=()=>{z||H()},t=window.requestIdleCallback;"function"==typeof t?t(e):setTimeout(e,200)}let V=!1,j=m.on("panel:toggle",e=>{F||(e?(V=!0,H().then(e=>{e&&V&&e.open(),V=!1}).catch(e=>i("Failed to lazy-load panel:",e))):V=!1)}),U=new eg(g,m,d,t.enableScreenshot??!1,()=>T.getLastPageFocus()),Y=null;t.enableRightClickComment&&(Y=e=>{if(e.defaultPrevented)return;let t=e.pointerType;""===t||void 0===t&&2!==e.button||e.shiftKey||e.ctrlKey||e.altKey||e.metaKey||e.composedPath().some(e=>e===C||e instanceof Element&&(e.hasAttribute("data-siteping-ignore")||"siteping-markers"===e.id))||U.isBusy||(e.preventDefault(),U.startInstantAnnotation(e.clientX,e.clientY).catch(e=>i("right-click annotation failed",e)))},document.addEventListener("contextmenu",Y)),"en"!==o&&a.then(()=>{z||(O.refreshLabels(),U.refreshLabels())});let q=!1,G=m.on("annotation:complete",async e=>{if(q)m.emit("submission:cancelled");else{q=!0;try{let{annotation:i,type:r,message:s,clientId:n,screenshotDataUrl:o,screenshotRegion:a}=e,l=await W(!0);if(!l)return void m.emit("submission:cancelled");let h=p(),g=null;(u||f)&&(g={console:u?.getEntries()??[],network:f?.getEntries()??[]});let b={projectName:t.projectName,type:r,message:s,url:h.url,urlPattern:h.urlPattern,viewport:`${window.innerWidth}x${window.innerHeight}`,userAgent:navigator.userAgent,authorName:l.name,authorEmail:l.email,annotations:[i],clientId:n,screenshotDataUrl:o??null,screenshotRegion:a??null,diagnostics:g};try{let e=await x.sendFeedback(b);m.emit("feedback:sent",e),(!c||e.url===h.url)&&D.addFeedback(e,D.count+1),I(d("feedback.sent.confirmation"),!1),F&&await F.refresh()}catch(e){let t=function(e){return"object"==typeof e&&null!==e?hg.get(e):void 0}(e);t&&m.emit("feedback:queued"),m.emit("feedback:error",e instanceof Error?e:new Error(String(e))),I(d(t?"feedback.queued":"feedback.error.message"),!t)}}finally{q=!1}}}),K=p(),J=c?{limit:20,url:K.url}:{limit:20},ie=function(e){return void 0===e||!1===e?{enabled:!1,param:"siteping"}:!0===e?{enabled:!0,param:"siteping"}:{enabled:!0,param:e.param??"siteping"}}(t.deepLink),re=++_;Promise.all([x.getFeedbacks(t.projectName,J),a]).then(([{feedbacks:e}])=>{if(z||_!==re)return;let t=c?e.filter(e=>e.url===K.url):e;if(D.render(t),ie.enabled)try{let e=new URLSearchParams(window.location.search).get(ie.param);if(e){let t=D.focusFeedback(e);i(`deepLink ?${ie.param}=${e} ${t?"focused":"did not match a visible feedback"}`),t&&H().then(async t=>{!t||z||(await t.open(),t.showFeedback(e))}).catch(e=>i("deepLink could not open the feedback:",e))}}catch(e){i("deepLink parsing failed:",e)}}).catch(e=>{i("Failed to load initial markers:",e)}),t.endpoint&&async function(e,t,i={}){await dg(async()=>{try{let r=pg();if(0===r.length)return;let s=[],n=[],o=0;for(let i of r)i.endpoint===e?!t||mg(i.payload.authorName)===mg(t.name)&&bg(i.payload.authorEmail)===bg(t.email)?s.push(i):o+=1:n.push(i);if(0===s.length&&0===o)return;let a=[],d=0;if(s.length>0){let t=await ng(i,!0);for(let i of s){let r=new AbortController,s=setTimeout(()=>r.abort(),ig);try{let s=await fetch(e,{method:"POST",headers:t,body:JSON.stringify(i.payload),signal:r.signal});if(s.ok){let t=await s.json().catch(()=>null);l(t,"id")&&"string"==typeof t.id&&tg(i.payload.projectName,e).add(t.id);continue}lg(s.status)?a.push(i):d+=1}catch{a.push(i)}finally{clearTimeout(s)}}}d>0&&console.warn(`[siteping] flushRetryQueue: dropped ${d} queued feedback(s) the server rejected (4xx) \u2014 they would fail identically on every replay`);let c=n.concat(a);c.length>0?localStorage.setItem(rg,JSON.stringify(c)):localStorage.removeItem(rg)}catch{}})}(t.endpoint,t.identity??Ng(),{apiKey:t.apiKey,headers:t.headers}).then(()=>i("Retry queue flushed")).catch(()=>{});let se=()=>{let e=++_;if(F?.isCurrentlyOpen)return F.refresh();let i=p(),r=c?{limit:20,url:i.url}:{limit:20};return x.getFeedbacks(t.projectName,r).then(({feedbacks:t})=>{if(z||e!==_||F?.isCurrentlyOpen)return;let r=c?t.filter(e=>e.url===i.url):t;D.render(r)})},ne="auto"===t.theme?function(e){if(typeof window>"u"||"function"!=typeof window.matchMedia)return()=>{};let t=window.matchMedia(Ye);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)}(()=>{Object.assign(g,Fe(t.accentColor,"auto")),S(),N.restyle(),U.restyle(),se().catch(()=>{})}):void 0,oe=null;if(!1!==t.watchNavigation&&typeof window<"u"&&typeof history<"u"){let e=e=>`${e.url}\n${e.urlPattern??""}`,t=e(K),r=()=>{if(z)return;let r=e(p());if(r===t)return;let s=t;t=r,i("SPA navigation detected \u2014 refreshing feedbacks for new scope"),se().catch(()=>{t===r&&(t=s)})},s=history.pushState,n=history.replaceState,o=function(...e){s.apply(this,e),r()},a=function(...e){n.apply(this,e),r()};history.pushState=o,history.replaceState=a,window.addEventListener("popstate",r),window.addEventListener("hashchange",r),oe=()=>{window.removeEventListener("popstate",r),window.removeEventListener("hashchange",r),history.pushState===o&&(history.pushState=s),history.replaceState===a&&(history.replaceState=n)}}let pe=0,he=()=>{let e=new Rg,t=!0;return pe++,b.add(e),{destroy:()=>{t&&(t=!1,b.delete(e),0===--pe&&(i("Destroying widget"),Y&&document.removeEventListener("contextmenu",Y),z=!0,V=!1,oe?.(),ne?.(),T.destroy(),G(),j(),O.destroy(),F?.destroy(),U.destroy(),D.destroy(),N.destroy(),u?.dispose(),f?.dispose(),m.removeAll(),clearTimeout(L),B.remove(),C.remove(),A(),vm=null))},open:()=>{t&&m.emit("panel:toggle",!0)},close:()=>{t&&(F?F.close():V=!1)},refresh:()=>t?se().catch(()=>{}):Promise.resolve(),focusFeedback:e=>t&&(e=>D.focusFeedback(e))(e),on:(t,i)=>e.on(t,i),off:(t,i)=>{e.off(t,i)}}};return vm=he,he()}return O(),su(),
|
|
2
2
|
/*! Bundled license information:
|
|
3
3
|
|
|
4
4
|
html2canvas-pro/dist/html2canvas-pro.esm.js:
|
|
5
5
|
(*!
|
|
6
|
-
* html2canvas-pro 2.
|
|
6
|
+
* html2canvas-pro 2.5.2 <https://yorickshan.github.io/html2canvas-pro/>
|
|
7
7
|
* Copyright (c) 2024-present yorickshan and html2canvas-pro contributors
|
|
8
8
|
* Released under MIT License
|
|
9
9
|
*)
|
|
10
10
|
*/
|
|
11
|
-
|
|
11
|
+
e.initSiteping=function(e){return Cm(e)},e.isSitepingError=function(e){return l(e,"code")&&l(e,"retryable")&&"boolean"==typeof e.retryable&&"string"==typeof e.code&&u.includes(e.code)},e}({});
|
|
12
12
|
//# sourceMappingURL=index.global.js.map
|