browserzap 0.5.5 → 0.6.0

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.
@@ -1 +1 @@
1
- (()=>{"use strict";const e="data-browserzap-cursor",t="data-browserzap-control",n="data-browserzap-approval",o="data-browserzap-handoff",r="data-browserzap-comment";function i(i){return i instanceof Element&&(i.hasAttribute(e)||i.hasAttribute(t)||i.hasAttribute(n)||i.hasAttribute(o)||i.hasAttribute(r))}function a(e,t){for(const[n,o]of Object.entries(t))e.style.setProperty(n,o)}function s(){try{return matchMedia("(prefers-reduced-motion: reduce)").matches}catch{return!1}}function l(e){if(!e)return null;let t="";try{t=getComputedStyle(e).backgroundColor}catch{return null}const n=/^rgba?\(([^)]+)\)$/.exec(t);if(!n)return null;const o=n[1].split(",").map(e=>Number(e.trim())),[r,i,a]=o,s=o.length>3?o[3]:1;return![r,i,a,s].every(Number.isFinite)||s<.5?null:.2126*r+.7152*i+.0722*a}function c(){return(l(document.body)??l(document.documentElement)??255)<110?{strong:"#ff922b",soft:"rgba(255, 146, 43, 0.30)",ink:"#1a0d04"}:{strong:"#d9480f",soft:"rgba(217, 72, 15, 0.18)",ink:"#ffffff"}}function u(e,t){const n=document.createElement("div");return a(n,e),void 0!==t&&(n.textContent=t),n}function d(e,t,n){if(e?.el.isConnected)return e;e?.el.remove();const o=document.fullscreenElement??document.documentElement;if(!o)return null;const r=document.createElement("div");r.setAttribute(t,""),n?(r.setAttribute("role",n.role),r.setAttribute("aria-label",n.label)):r.setAttribute("aria-hidden","true"),a(r,{position:"fixed",inset:"0","z-index":"2147483647","pointer-events":"none",overflow:"visible"});const i=r.attachShadow({mode:"closed"});return o.appendChild(r),{el:r,root:i}}function f(e){return(e??"").replace(/\s+/g," ").trim()}function p(e){return f(e).toLowerCase()}function m(e,t){return e.length>t?`${e.slice(0,t-1)}…`:e}function h(e,t=!1){const n=[],o=r=>{if(r.nodeType===Node.TEXT_NODE)return void n.push(r.textContent??"");if(r.nodeType!==Node.ELEMENT_NODE)return;const i=r,a=i.tagName;if("SCRIPT"===a||"STYLE"===a||"TEMPLATE"===a)return;if(t&&("INPUT"===a||"SELECT"===a||"TEXTAREA"===a||"BUTTON"===a))return;if("IMG"===a)return void n.push(` ${i.getAttribute("alt")??""} `);const s=i!==e&&function(e){const t=e.ownerDocument.defaultView?.getComputedStyle(e).display??"inline";return"inline"!==t&&"contents"!==t&&"none"!==t}(i);s&&n.push(" ");for(const e of Array.from(i.childNodes))o(e);s&&n.push(" ")};return o(e),f(n.join(""))}function*g(e){const t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);let n=t.nextNode();for(;n;){const e=n;yield e,e.shadowRoot&&(yield*g(e.shadowRoot)),n=t.nextNode()}}function b(){const e=Array.from(document.querySelectorAll("dialog[open]"));for(let t=e.length-1;t>=0;t--)if(e[t].matches(":modal"))return e[t];return null}function x(){return"hidden"===document.visibilityState}function y(e){if(e.parentElement)return e.parentElement;const t=e.getRootNode();return t instanceof ShadowRoot?t.host:null}function v(e,t){let n=t;for(;n;){if(n===e)return!0;n=y(n)}return!1}function w(e,t){const n=e.getRootNode();try{return n.querySelector(`#${CSS.escape(t)}`)??document.getElementById(t)}catch{return null}}const k=String.raw`pass(word|code|phrase)?\b|\bpwd\b|\bpin\b|\botp\b|one[-\s]?time|2fa|\bmfa\b|security code|verification code|\bcvv\b|\bcvc\b|\bcsc\b|card ?number|credit ?card|social security|\bssn\b|\biban\b|routing number|account number|tax id|national id|passport`,E=new Set(["button","link","checkbox","radio","switch","tab","menuitem","menuitemcheckbox","menuitemradio","option","combobox","listbox","textbox","searchbox","slider","spinbutton","treeitem","gridcell"]),T=new Set(["button","link","checkbox","radio","switch","tab","menuitem","menuitemcheckbox","menuitemradio","option","treeitem","heading","gridcell","cell"]),A=new Set(["textbox","searchbox","spinbutton","combobox"]),S=/\b(delete|remove|erase|destroy|discard|deactivate|terminate|revoke|unsubscribe|close (my )?account|cancel (my |the )?(subscription|order|plan|membership))\b/i,M=/\b(pay|payment|purchase|buy|checkout|check out|place (the |my )?order|submit order|order now|complete (the )?order|donate|transfer|send money|subscribe|upgrade)\b/i,$=/\b(submit|send|post|publish|share|tweet|reply|comment|confirm|apply|book|reserve|sign up|invite|save changes|approve|accept|merge|deploy)\b/i,L=new RegExp(k,"i"),C=/\b(verify (that )?you('re| are) (a )?human|are you a robot|i'?m not a robot|human verification|security check|captcha|checking your browser)\b/i,N=/\b(two[- ]factor|2fa|multi[- ]factor|verification code|one[- ]time (pass)?code|authenticator app|enter the code)\b/i,I={checkbox:"checkbox",radio:"radio",button:"button",submit:"button",reset:"button",image:"button",range:"slider",number:"spinbutton",search:"searchbox",file:"button",color:"button"};function R(e){const t=f(e.getAttribute("role")).split(" ")[0];if(t)return t.toLowerCase();switch(e.tagName.toLowerCase()){case"a":case"area":return e.hasAttribute("href")?"link":"generic";case"button":case"summary":return"button";case"select":{const t=e;return t.multiple||t.size>1?"listbox":"combobox"}case"textarea":return"textbox";case"input":{const t=(e.type||"text").toLowerCase();return I[t]??"textbox"}case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"heading";case"img":return"img";default:return e.isContentEditable?"textbox":"generic"}}function H(e){return e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement}function O(e){return H(e)&&e.labels?Array.from(e.labels):[]}function P(e){const t=f(e.getAttribute("aria-labelledby"));if(t){const n=f(t.split(" ").map(t=>w(e,t)).filter(e=>Boolean(e)).map(e=>h(e)).join(" "));if(n)return{name:n,source:"aria-labelledby"}}const n=f(e.getAttribute("aria-label"));if(n)return{name:n,source:"aria-label"};if(e instanceof HTMLInputElement){const t=e.type.toLowerCase();if("submit"===t||"button"===t||"reset"===t){const n="submit"===t?"Submit":"reset"===t?"Reset":"";return{name:f(e.value)||n,source:"value"}}if("image"===t)return{name:f(e.alt)||"Submit",source:"alt"}}if(H(e)){const t=f(O(e).map(e=>h(e,!0)).join(" "));if(t)return{name:t,source:"label"}}if(e instanceof HTMLImageElement){const t=f(e.alt);if(t)return{name:t,source:"alt"}}const o=R(e);if(T.has(o)||"SUMMARY"===e.tagName){const t=h(e);if(t)return{name:t,source:"content"}}const r=f(e.getAttribute("title"));if(r)return{name:r,source:"title"};const i=f(e.getAttribute("placeholder"));return i?{name:i,source:"placeholder"}:{name:"",source:"none"}}function _(e){const t=e.tagName;if("INPUT"===t)return"hidden"!==e.type.toLowerCase();if("BUTTON"===t||"SELECT"===t||"TEXTAREA"===t||"SUMMARY"===t)return!0;if(("A"===t||"AREA"===t)&&e.hasAttribute("href"))return!0;const n=f(e.getAttribute("role")).split(" ")[0].toLowerCase();return!(!n||!E.has(n))||!0===e.isContentEditable&&null!==e.getAttribute("contenteditable")}const B={docId:function(){const e=new Uint8Array(8);return crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}(),snapshotId:0,nextRef:1,refs:new Map,ids:new WeakMap,mutations:0},U={label:new Map,sibling:new Map};function q(){U.label=new Map,U.sibling=new Map}function z(e){const t=e;if("function"==typeof t.checkVisibility&&!t.checkVisibility({checkOpacity:!0,checkVisibilityCSS:!0}))return!1;const n=e.getBoundingClientRect();return!(n.width<=0||n.height<=0||e.closest('[inert],[aria-hidden="true"]'))}function D(e){return e.getClientRects()[0]??e.getBoundingClientRect()}function F(e){return z(e)?e:e instanceof HTMLInputElement&&("checkbox"===e.type||"radio"===e.type)?O(e).find(e=>z(e))??null:null}function G(e){if("true"===e.getAttribute("aria-disabled"))return!0;try{return e.matches(":disabled")}catch{return!1}}function j(e,t){if(!H(e)&&!e.isContentEditable)return null;if("password"===(e.getAttribute("type")??"").toLowerCase())return"password field";const n=(e.getAttribute("autocomplete")??"").toLowerCase();if(/\b(cc-[a-z-]+|current-password|new-password|one-time-code)\b/.test(n))return`autocomplete=${n}`;const o=[t,e.getAttribute("name"),e.id,e.getAttribute("aria-label"),e.getAttribute("placeholder")].join(" ").match(L);return o?`looks like "${o[0].toLowerCase()}"`:null}function W(e){const t={};if(G(e)&&(t.disabled=!0),e instanceof HTMLInputElement&&("checkbox"===e.type||"radio"===e.type)?t.checked=e.checked:e.hasAttribute("aria-checked")&&(t.checked="true"===e.getAttribute("aria-checked")),e.hasAttribute("aria-expanded")&&(t.expanded="true"===e.getAttribute("aria-expanded")),e.hasAttribute("aria-selected")&&(t.selected="true"===e.getAttribute("aria-selected")),e instanceof HTMLSelectElement){const n=e.selectedOptions[0];n&&(t.value=m(f(n.label||n.text),100)),t.options=e.options.length}else(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement)&&(e.required&&(t.required=!0),e instanceof HTMLInputElement&&("checkbox"===e.type||"radio"===e.type)||(t.filled=e.value.length>0),e.readOnly&&(t.readonly=!0));return t}function K(e){const t=U.label.get(e);if(void 0!==t)return t;const n=function(e){const t=f(e.getAttribute("aria-labelledby"));if(t){const n=f(t.split(" ").map(t=>w(e,t)).filter(Boolean).map(e=>h(e)).join(" "));if(n)return n}const n=f(e.getAttribute("aria-label"));if(n)return n;if(!e.matches("section,article,aside,nav,main,form,fieldset,dialog,header,footer,li,table,tr,[role=region],[role=group],[role=dialog],[role=alertdialog],[role=form],[role=tabpanel],[role=navigation],[role=complementary],[role=listitem],[role=row]"))return function(e){const t=e.parentElement;if(!t||!e.className||"string"!=typeof e.className)return!1;let n=U.sibling.get(t);if(!n){n=new Map;for(const e of Array.from(t.children)){if("string"!=typeof e.className||!e.className)continue;const t=`${e.tagName}.${e.className}`;n.set(t,(n.get(t)??0)+1)}U.sibling.set(t,n)}return(n.get(`${e.tagName}.${e.className}`)??0)>=2&&null!==e.querySelector(V)}(e)?Q(e):"";const o=e.querySelector(":scope > :is(h1,h2,h3,h4,h5,h6,legend,caption), :scope > header :is(h1,h2,h3,h4,h5,h6)");return o?h(o):e.matches(X)?function(e){const t=Array.from(e.children).filter(e=>e.matches("th,td,[role=cell],[role=gridcell],[role=rowheader],[role=columnheader]")).filter(e=>!e.querySelector(V)&&h(e)),n=t.find(e=>e.matches("th,[role=rowheader]"));return n?h(n):t[0]?h(t[0]):""}(e):e.matches(Y)?Q(e):""}(e);return U.label.set(e,n),n}const X="tr,[role=row]",Y="li,[role=listitem],article",V='a[href],button,input:not([type=hidden]),select,textarea,summary,[role=button],[role=link],[role=checkbox],[role=radio],[role=switch],[role=tab],[role=menuitem],[role=option],[role=combobox],[role=textbox],[contenteditable=""],[contenteditable=true]',Z=60;function Q(e){const t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);let n=0;for(let e=t.nextNode();e&&n<Z;e=t.nextNode(),n++){const t=e;if(!(t.matches("label,script,style,template")||_(t)||t.querySelector(V))&&(Array.from(t.childNodes).some(e=>e.nodeType===Node.TEXT_NODE&&f(e.textContent))&&z(t)))return m(h(t),60)}return""}function J(e){const t=[];let n=y(e);for(;n&&n!==document.documentElement;){const e=K(n);e&&t.push(e),n=y(n)}return t}function ee(e){let t=y(e);for(;t&&t!==document.documentElement;){const e=K(t);if(e)return e;t=y(t)}return""}function te(e,t){return`${e}|${p(t)}`}function ne(e,t,n,o){let r=B.ids.get(e);return r||(r="e"+B.nextRef++,B.ids.set(e,r)),B.refs.set(r,{el:new WeakRef(e),fingerprint:te(t,n),context:o}),r}function oe(e){return e.visible??=e.proxy?null!==F(e.el):z(e.el),e.visible}function re(){const e=[];for(const t of g(document)){if(!_(t))continue;const{name:n,source:o}=P(t);e.push({el:t,role:R(t),name:m(n,200),source:o,proxy:!0})}return e}function ie(e){const t=ee(e.el);return{ref:ne(e.el,e.role,e.name,t),role:e.role,name:m(e.name,100),context:t?m(t,60):void 0,visible:oe(e)}}function ae(e,t,n){return H(e)&&A.has(t)?"reversible":S.test(n)?"destructive":M.test(n)?"financial":$.test(n)||(e instanceof HTMLButtonElement&&"submit"===e.type&&null!==e.form||e instanceof HTMLInputElement&&("submit"===e.type||"image"===e.type)&&null!==e.form)&&"post"===e.form.method.toLowerCase()?"external_side_effect":"reversible"}function se(){if(document.querySelector('iframe[src*="recaptcha"],iframe[src*="hcaptcha"],iframe[src*="challenges.cloudflare.com"],iframe[title*="captcha" i],.g-recaptcha,.h-captcha,.cf-turnstile,#challenge-form,[data-sitekey]'))return{kind:"captcha",evidence:"a CAPTCHA widget is present"};const e=Array.from(document.querySelectorAll("h1,h2,h3,legend,[role=heading]")).filter(e=>z(e)).map(e=>h(e)).join(" | "),t=`${document.title} | ${e}`.match(C);if(t)return{kind:"captcha",evidence:`page asks: "${t[0]}"`};if(document.querySelector('input[autocomplete="one-time-code"]'))return{kind:"mfa",evidence:"a one-time-code field is present"};const n=e.match(N);return n?{kind:"mfa",evidence:`page asks: "${n[0]}"`}:null}function le(e){return!(e.overlay||e.interactive||e.insideInteractive||e.insideClickableRegion)&&!!(e.cursorPointer||e.inlineOnClick||e.tabbable)&&!e.parentCursorPointer&&!e.containsInteractive&&e.visible&&e.enabled&&e.hasText}const ce="clickable",ue=new Set,de=new WeakSet;function fe(e){try{return getComputedStyle(e).cursor}catch{return""}}function pe(e,t){let n,o=null;const r=()=>void 0===n?n=y(e):n;let a=null,s=null,l=null;const c=()=>{if(l)return l;const e={interactive:!1,clickable:!1};for(let n=r();n;n=y(n))_(n)&&(e.interactive=!0),t.has(n)&&(e.clickable=!0);return l=e,e};return{get overlay(){return i(e)},get interactive(){return _(e)},get insideInteractive(){return c().interactive},get insideClickableRegion(){return c().clickable},get cursorPointer(){return"pointer"===(o??=fe(e))},get inlineOnClick(){return e.hasAttribute("onclick")},get tabbable(){return e.tabIndex>=0},get parentCursorPointer(){const e=r();return null!==e&&"pointer"===(a??=fe(e))},get containsInteractive(){return null!==e.querySelector(V)},get visible(){return z(e)},get enabled(){return!G(e)},get hasText(){return(s??=me(e)).length>0}}}function me(e){const t=e.innerText;return f("string"==typeof t&&t?t:h(e))}function he(e){return m(me(e),200)}function ge(){const e=new Set,t=[];for(const n of g(document))le(pe(n,e))&&(e.add(n),t.push({el:n,role:ce,name:he(n),source:"content",proxy:!1}));return t}function be(e){let t="";for(const n of Array.from(e.childNodes))n.nodeType===Node.TEXT_NODE&&(t+=n.textContent??"");return t}function xe(e){for(let t=y(e);t;t=y(t))if(_(t))return!0;return!1}function ye(e,t,n={}){return{ok:!1,code:e,message:t,...n}}function ve(e){return`"${m(e,60)}"`}function we(e,t,n={}){return ye("TARGET_NOT_INTERACTABLE",`${e} ${t}`,n)}function ke(){const e=b();if(e)return e;const t=Array.from(document.querySelectorAll('[aria-modal="true"]')).filter(e=>e.matches("dialog,[role=dialog],[role=alertdialog]")&&z(e));return t.length?t[t.length-1]:null}function Ee(e,t){const n=p(t),o=e.filter(e=>p(ee(e.el))===n);return o.length?o:e.filter(e=>J(e.el).some(e=>p(e)===n))}function Te(e){const t=B.refs.get(e),n=t?.el.deref();if(!t||!n)return ye("STALE_SNAPSHOT",`Reference ${e} is unknown on this page. Run page_inspect again.`);if(!n.isConnected)return ye("STALE_SNAPSHOT",`The element behind ${e} was removed from the page. Run page_inspect again.`,{staleFingerprint:t.fingerprint,staleContext:t.context});const o=function(e){return de.has(e)||function(e){return le(pe(e,ue))}(e)?ce:R(e)}(n),{name:r,source:i}=function(e,t){return t===ce?{name:he(e),source:"content"}:P(e)}(n,o);return te(o,r)!==t.fingerprint?ye("STALE_SNAPSHOT",`The element behind ${e} changed (now ${o} "${m(r,40)}"). Run page_inspect again.`,{staleFingerprint:t.fingerprint,staleContext:t.context}):{el:n,role:o,name:r,source:i,proxy:!0}}function Ae(e){if(e.ref)return Te(e.ref);const t=e.role?.toLowerCase(),n=!(t&&!E.has(t)&&"generic"!==t&&"clickable"!==t);let o=n?re():function(e){const t=[];for(const n of g(document)){if(R(n)!==e)continue;const{name:o,source:r}=P(n);t.push({el:n,role:e,name:m(o,200),source:r,proxy:!1})}return t}(t);const r=n&&("clickable"===t||!t&&(Boolean(e.name)||Boolean(e.text)));r&&(o=o.concat(ge())),t&&(o=o.filter(e=>e.role===t)),n&&(o=function(e){const t=ke();return t?e.filter(e=>v(t,e.el)):e}(o)),e.within&&(o=Ee(o,e.within));const a=[],s=e.name??e.label??e.text;if(e.label){const t=p(e.label);a.push({label:"label",pick:e=>H(e.el)&&"placeholder"!==e.source&&p(e.name)===t})}if(e.href){const t=e.href;a.push({label:"href",pick:e=>e.el instanceof HTMLAnchorElement&&((e.el.getAttribute("href")??"")===t||e.el.href===t||e.el.pathname===t)})}if(e.name||e.text){const t=p(e.name??e.text);a.push({label:"name",pick:e=>"placeholder"!==e.source&&p(e.name)===t})}if(e.text){const t=p(e.text);a.push({label:"text",pick:e=>p(h(e.el))===t}),a.push({label:"text in a clickable region",pick:e=>"clickable"===e.role&&function(e,t){if(!t)return!1;const n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);for(let e=n.nextNode();e;e=n.nextNode()){const n=e;if(0===n.children.length&&p(h(n))===t)return!0}return!1}(e.el,t)}),a.push({label:"placeholder",pick:e=>p(e.el.getAttribute("placeholder"))===t})}if(!a.length&&e.role&&a.push({label:"role",pick:()=>!0}),!a.length)return ye("INVALID_ARGUMENT","A target needs one of: ref, name, label, text, href (optionally with role and within).");for(const t of a){const n=o.filter(t.pick);if(!n.length)continue;const r=n.filter(oe),i=r.length?r:n;return 1===i.length?i[0]:ye("TARGET_AMBIGUOUS",`${i.length} elements match ${Se(e)} by ${t.label}. Nothing was done. `+(i.length>50?"The first 50 are listed. ":"")+"Use a ref from the candidates, or add role/within (a candidate's context) to narrow it.",{candidates:i.slice(0,50).map(ie)})}if(e.text&&r){let t=function(e,t){const n=new Set,o=[];if(!e)return o;for(const r of g(document)){if(t&&!v(t,r))continue;if(p(0===r.children.length?h(r):be(r))!==e)continue;if(i(r)||_(r)||xe(r)||!z(r))continue;if(r.closest("th, thead, [role=columnheader]"))continue;const a=r.closest("tr, [role=row], li, [role=listitem]"),s=a&&!a.querySelector(V)?a:r;n.has(s)||G(s)||(n.add(s),de.add(s),o.push({el:s,role:ce,name:he(s),source:"content",proxy:!1}))}return o}(p(e.text),ke());if(e.within&&(t=Ee(t,e.within)),1===t.length)return t[0];if(t.length>1)return ye("TARGET_AMBIGUOUS",`${t.length} elements show ${Se(e)}. Nothing was done. Use a ref from the candidates, or add within (a candidate's context) to narrow it.`,{candidates:t.slice(0,50).map(ie)})}const l=p(s??e.href??""),c=l?o.filter(e=>p(e.name).includes(l)&&oe(e)).slice(0,8).map(ie):[];return ye("TARGET_NOT_FOUND",`No element matches ${Se(e)}.`,c.length?{candidates:c}:{})}function Se(e){const t=[];return e.role&&t.push(`role=${e.role}`),e.name&&t.push(`name="${e.name}"`),e.label&&t.push(`label="${e.label}"`),e.text&&t.push(`text="${e.text}"`),e.href&&t.push(`href="${e.href}"`),e.within&&t.push(`within="${e.within}"`),t.join(" ")||"(empty target)"}const Me=new WeakMap,$e=[];function Le(e,t){const n=Me.get(e);return Boolean(n&&n.bursts.length>=3&&t-n.bursts[0]<3e3&&t-n.last<3e3)}function Ce(e){if("childList"!==e.type||0===e.addedNodes.length&&0===e.removedNodes.length)return!1;for(const t of e.addedNodes)if(!i(t))return!1;for(const t of e.removedNodes)if(!i(t))return!1;return!0}new MutationObserver(e=>{const t=performance.now();for(const n of e){if(Ce(n))continue;B.mutations+=1;let e=Me.get(n.target);e||(e={last:-1/0,bursts:[]},Me.set(n.target,e)),t-e.last>50&&(e.bursts.push(t),e.bursts.length>3&&e.bursts.shift()),e.last=t,$e.push({seq:B.mutations,at:t,node:new WeakRef(n.target)}),$e.length>2e3&&$e.shift()}}).observe(document,{subtree:!0,childList:!0,attributes:!0,characterData:!0});const Ne=['[aria-busy="true"]','[role="progressbar"]',"progress",'[role="status"]','[role="alert"]','[class*="spinner" i]','[class*="loading" i]','[class*="loader" i]','[id*="spinner" i]','[id*="loading" i]'].join(", "),Ie=/load|wait|fetch|progress|processing|please|searching|saving/i;let Re=null,He=0;const Oe=new WeakMap;function Pe(e){q();const{name:t,source:n}=P(e),o=R(e),r=H(e)&&t&&"placeholder"!==n?{label:t}:t&&"placeholder"===n?{text:t}:{role:o,name:t},i=[ee(e),...J(e)].filter((e,t,n)=>e&&n.indexOf(e)===t);for(const n of[r,...i.map(e=>({...r,within:e}))]){if(!t)break;const o=Ae(n);if("el"in o&&o.el===e)return{target:n,ambiguous:!1,name:t}}return{target:i[0]?{...r,within:i[0]}:r,ambiguous:!0,name:t}}function _e(e,t){try{chrome.runtime.sendMessage({source:"engine-recorder",step:{...e,id:`${B.docId}-${++He}`},value:t})}catch{}}function Be(e){return e instanceof HTMLInputElement&&!["checkbox","radio","button","submit","reset","file","image","hidden","range","color"].includes(e.type)||e instanceof HTMLTextAreaElement}function Ue(e){const t=e.value;if(Oe.get(e)===t)return;Oe.set(e,t);const{target:n,ambiguous:o,name:r}=Pe(e),i=Boolean(j(e,r));_e({tool:"field_fill",args:{target:n},label:`Type into "${r||"field"}"`,param:r||"value",sensitive:i,ambiguous:o},i?void 0:t)}const qe="data-browserzap-comment-target";let ze=null,De=0;function Fe(e){try{chrome.runtime.sendMessage({source:"engine-comment",...e})}catch{}}function Ge(e){return e.composedPath().some(e=>e instanceof Node&&i(e))}function je(e){const t=[];let n=e;for(;n&&t.length<6&&n!==document.documentElement&&n!==document.body;){let e=n.tagName.toLowerCase();if(n.id)e+=`#${n.id}`;else{const t=Array.from(n.classList).filter(e=>!/^\d/.test(e)).slice(0,2);t.length&&(e+=`.${t.join(".")}`);const o=y(n);if(o){const t=Array.from(o.children).filter(e=>e.tagName===n.tagName);t.length>1&&(e+=`:nth-of-type(${t.indexOf(n)+1})`)}}if(t.unshift(e),n.id)break;n=y(n)}return t.join(" > ")}function We(e){q();const{name:t}=P(e),{target:n,ambiguous:o}=Pe(e),r=e.getBoundingClientRect(),i=H(e)||e.isContentEditable,a=e.getAttribute("data-testid")??e.getAttribute("data-test")??e.getAttribute("data-cy")??e.getAttribute("data-test-id"),s={role:R(e),name:t||null,target:n,targetUnique:!o,tag:e.tagName.toLowerCase(),id:e.id||null,testId:a||null,classes:Array.from(e.classList).slice(0,6),domPath:je(e),rect:{x:Math.round(r.x),y:Math.round(r.y),width:Math.round(r.width),height:Math.round(r.height)}};if(i)s.sensitive=Boolean(j(e,t));else{const t=f(e.innerText??e.textContent??"");t&&(s.text=t.length>160?`${t.slice(0,159)}…`:t)}return s}function Ke(e){q();const{name:t}=P(e),n=R(e),o=e.tagName.toLowerCase(),r=n&&"generic"!==n?n:o;return t?`${r} "${t.length>40?`${t.slice(0,39)}…`:t}"`:r}function Xe(e,t){const n=t.getBoundingClientRect();a(e,{transform:`translate(${n.left}px, ${n.top}px)`,width:`${Math.max(n.width,2)}px`,height:`${Math.max(n.height,2)}px`})}function Ye(){if(ze){ze.frame=0,ze.picked&&Xe(ze.highlight,ze.picked);for(const e of ze.pins.values()){if(!e.el.isConnected){e.badge.style.display="none";continue}const t=e.el.getBoundingClientRect();a(e.badge,{display:"flex",transform:`translate(${Math.max(t.left-10,2)}px, ${Math.max(t.top-10,2)}px)`})}}}function Ve(){ze&&!ze.frame&&(ze.frame=requestAnimationFrame(Ye))}function Ze(){ze?.card&&(ze.card.remove(),ze.card=null)}function Qe(e){if(!ze)return{ok:!1};const t=String(e.cid??""),n=Number(e.n)||ze.next;let o=e.el instanceof Element?e.el:null;if(!o)try{o=document.querySelector(`[${qe}="${CSS.escape(t)}"]`)}catch{o=null}if(document.querySelectorAll(`[${qe}="${CSS.escape(t)}"]`).forEach(e=>e.removeAttribute(qe)),!o)return{ok:!1};ze.pins.get(t)?.badge.remove();const r=function(e){const t=c();return u({position:"fixed",left:"0",top:"0",width:"20px",height:"20px","border-radius":"50%",display:"flex","align-items":"center","justify-content":"center",background:t.strong,color:t.ink,font:"700 11px/1 system-ui, sans-serif","box-shadow":"0 1px 4px rgba(0,0,0,.4)"},String(e))}(n);return ze.host.root.appendChild(r),ze.pins.set(t,{n,el:o,badge:r}),ze.next=Math.max(ze.next,n+1),Ye(),{ok:!0}}let Je=null,et=null,tt=null,nt=null,ot=null;function rt(){null!==tt&&(clearTimeout(tt),tt=null)}function it(e){if(!Je?.el.isConnected||!et)return;const t=et.pill,n=t.getBoundingClientRect();e.x>=n.left-4&&e.x<=n.right+4&&e.y>=n.top-4&&e.y<=n.bottom+4&&(t.style.setProperty("pointer-events","none"),setTimeout(()=>{et?.pill===t&&t.style.setProperty("pointer-events","auto")},1200))}function at(e){if(rt(),!Je)return;const t=Je;if(Je=null,et=null,e||s()||"function"!=typeof t.el.animate)return void t.el.remove();const n=()=>t.el.remove();t.el.animate([{opacity:1},{opacity:0}],{duration:140,easing:"ease-out"}).finished.then(n).catch(n)}function st(){if(null!==ot&&(clearTimeout(ot),ot=null),!nt)return;const e=nt;nt=null,removeEventListener("scroll",e.follow,!0),removeEventListener("resize",e.follow),e.host.el.remove()}const lt=[404,500,502,503,504],ct=[/\bsomething went wrong\b/,/\b(?:we(?:'ve| have) )?encountered an error\b/,/\binternal server error\b/,/\bservice (?:temporarily )?unavailable\b/,/\b(?:an )?unexpected error (?:has )?occurred\b/,/\ban error occurred\b/,/\bthis page (?:isn'?t|is not) working\b/,/\bpage not found\b/],ut=/^(?:error\s+|http\s+)?(\d{3})(?!\d)/,dt=/^(?:error\s+|http\s+)?\d{3}\s*$/;function ft(e){const t=e.trim().toLowerCase().match(ut);if(!t)return null;const n=Number(t[1]);return lt.includes(n)?n:null}function pt(e){const t=e.toLowerCase().match(new RegExp(ct.map(e=>e.source).join("|")));return t?t[0].slice(0,120):null}function mt(e){const t=document.querySelector("main")??document.body;return t?function(e){const t=e.headings.filter(e=>e.level<=2&&e.text.trim()).slice(0,2);for(const e of t){const t=ft(e.text);if(null!==t&&!(e.level>1&&dt.test(e.text.trim())))return{status:t,text:e.text.trim().slice(0,120)}}for(const e of t){const t=pt(e.text);if(t)return{status:null,text:t}}const n=pt(e.text);return n&&e.network5xx?{status:null,text:n}:null}({headings:Array.from(document.querySelectorAll("h1,h2")).filter(e=>z(e)).slice(0,2).map(e=>({level:Number(e.tagName[1]),text:m(f(h(e)),120)})),text:f(t.innerText??"").slice(0,4e3),network5xx:e}):null}function ht(e){const t=e.target??{},n=String(e.purpose??"click"),o=Ae(t);if("ok"in o)return o;const{el:r,role:a,name:s}=o,l=ee(r),c={ref:ne(r,a,s,l),role:a,name:m(s,100),context:l?m(l,60):void 0};if("probe"!==n){if(G(r))return we(`${a} ${ve(s)}`,"is disabled.",{target:c});if(!F(r))return we(`${a} ${ve(s)}`,"is not visible.",{target:c})}const u={ok:!0,...c,docId:B.docId,risk:ae(r,a,s),sensitive:j(r,s),state:W(r),challenge:se(),mutations:B.mutations,url:location.href,hidden:x()},d=e.scroll?F(r):null;if(e.scroll&&d){const e=d;e.scrollIntoView({block:"center",inline:"center",behavior:"instant"});const t=D(e),n=Math.round(t.left+t.width/2),o=Math.round(t.top+t.height/2);if(n<0||o<0||n>innerWidth||o>innerHeight)return we(`${a} ${ve(s)}`,"could not be scrolled into view.",{target:c});const l=e.getRootNode().elementFromPoint(n,o);if(null===l||!(i(l)||v(e,l)||v(r,l)||l instanceof HTMLLabelElement&&O(r).includes(l))){const e=l?`${l.tagName.toLowerCase()} "${m(P(l).name||h(l),40)}"`:"nothing";return we(`${a} ${ve(s)}`,`is covered by ${e}.`,{target:c})}u.point={x:n,y:o},u.pageRect={x:t.left+scrollX,y:t.top+scrollY,width:t.width,height:t.height},u.mutations=B.mutations}return u}function gt(e){return e instanceof HTMLTextAreaElement?e:e instanceof HTMLInputElement?["checkbox","radio","button","submit","reset","image","file","range","color","hidden"].includes(e.type)?null:e:e.isContentEditable?e:null}function bt(){let e=document.activeElement;for(;e?.shadowRoot?.activeElement;)e=e.shadowRoot.activeElement;return e}function xt(e,t){const n=e instanceof HTMLTextAreaElement?HTMLTextAreaElement.prototype:HTMLInputElement.prototype,o=Object.getOwnPropertyDescriptor(n,"value")?.set;o?o.call(e,t):e.value=t,e.dispatchEvent(new Event("input",{bubbles:!0,composed:!0}))}function yt(e){const t=Te(String(e.ref));if("ok"in t)return t;const n=String(e.value??""),o=t.el;let r;if(o instanceof HTMLInputElement||o instanceof HTMLTextAreaElement)o.focus({preventScroll:!0}),xt(o,n),r="nativeSetter";else{const e=o;e.focus({preventScroll:!0});const t=document.createRange();t.selectNodeContents(e);const i=getSelection();i?.removeAllRanges(),i?.addRange(t);const a=n?document.execCommand("insertText",!1,n):document.execCommand("delete");a||(e.textContent=n),r=a?"insertText":"textContent"}o.dispatchEvent(new Event("change",{bubbles:!0}));const i=function(e){return e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement?e.value:e.innerText??""}(o);return{ok:!0,verified:o instanceof HTMLInputElement&&"number"===o.type?Number(i)===Number(n):f(i)===f(n),method:r,length:i.length,mutations:B.mutations}}let vt=null,wt=null,kt=null,Et=null,Tt=!1;function At(e){return`translate3d(${e.x-1}px, ${e.y-1}px, 0)`}function St(e){e.getAnimations().forEach(e=>e.cancel())}function Mt(){if(vt?.el.isConnected&&wt)return wt;const t=d(vt,e);return vt=t,t?(wt=function(e){const t=c(),n=document.createElement("div");n.setAttribute("data-bz-marker","arrow"),a(n,{position:"absolute",left:"0",top:"0",width:"18px",height:"22px","transform-origin":"1px 1px","will-change":"transform, opacity",opacity:"0","pointer-events":"none"});const o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.setAttribute("width","18"),o.setAttribute("height","22"),o.setAttribute("viewBox","0 0 18 22"),o.setAttribute("aria-hidden","true");const r=document.createElementNS("http://www.w3.org/2000/svg","path");r.setAttribute("d","M1 1v16.2l4.4-4 2.7 7.2 2.9-1.2-2.7-7.1 5.9-.5z"),r.setAttribute("fill","#ffffff"),r.setAttribute("stroke","#111111"),r.setAttribute("stroke-width","1.4"),r.setAttribute("stroke-linejoin","round"),o.appendChild(r),n.appendChild(o);const i=u({position:"absolute",left:"0",top:"0",width:"9px",height:"18px",display:"none",opacity:"0","pointer-events":"none","will-change":"transform, opacity"});i.setAttribute("data-bz-marker","caret");const s=`${t.strong}`,l="0 0 0 0.5px rgba(255, 255, 255, 0.85), 0 0 0 1.5px rgba(17, 17, 17, 0.35)",d=u({position:"absolute",left:"4px",top:"0",width:"1.5px",height:"100%",background:s,"box-shadow":l}),f=u({position:"absolute",left:"0",top:"0",width:"9px",height:"2px",background:s,"box-shadow":l}),p=u({position:"absolute",left:"0",bottom:"0",width:"9px",height:"2px",background:s,"box-shadow":l});i.append(d,f,p);const m=document.createElement("div");a(m,{position:"absolute",left:"0",top:"0",width:"30px",height:"30px","border-radius":"50%","box-sizing":"border-box",border:`2px solid ${t.strong}`,background:t.soft,opacity:"0","pointer-events":"none"});const h=document.createElement("div");a(h,{position:"absolute",left:"0",top:"0","max-width":"160px",padding:"2px 7px","border-radius":"5px",background:"rgba(17, 17, 17, 0.9)",color:"#ffffff","box-shadow":"0 2px 8px rgba(0, 0, 0, 0.28)",font:'600 10px/1.5 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',"white-space":"nowrap","text-overflow":"ellipsis",overflow:"hidden",opacity:"0","pointer-events":"none"}),h.textContent="click";const g=document.createElement("div");return a(g,{position:"absolute",left:"0",top:"0","box-sizing":"border-box",border:`2px solid ${t.strong}`,"border-radius":"6px","box-shadow":`0 0 0 3px ${t.soft}`,opacity:"0","will-change":"opacity","pointer-events":"none"}),e.append(g,m,n,i,h),{cursor:n,ripple:m,label:h,outline:g,caret:i}}(t.root),wt):(wt=null,null)}const $t=new Set(["","text","search","url","tel","email","password","number"]);function Lt(e){const t=function(){const e=bt();return e&&e!==document.body&&e!==document.documentElement&&gt(e)?e:null}(),n=t?function(e){const t=e.getBoundingClientRect();if(t.width<=0||t.height<=0)return null;const n=getComputedStyle(e),o=parseFloat(n.lineHeight)||1.35*(parseFloat(n.fontSize)||13),r=t.left+(parseFloat(n.borderLeftWidth)||0)+(parseFloat(n.paddingLeft)||0),i=t.right-(parseFloat(n.borderRightWidth)||0)-(parseFloat(n.paddingRight)||0),a=Math.max(r,i-1),s=Math.min(Math.max(o,12),Math.max(t.height-2,12));if(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement){const n=e instanceof HTMLInputElement?e.type:"textarea";let o="";if(e instanceof HTMLTextAreaElement||$t.has(n)){const t=e instanceof HTMLInputElement&&"password"===n?"•".repeat(e.value.length):e.value;o=e instanceof HTMLTextAreaElement?t.slice(t.lastIndexOf("\n")+1):t}const i=Math.min(Math.max(r+function(e,t){if(!t)return 0;const n=getComputedStyle(e);try{const e=document.createElement("canvas").getContext("2d");if(e)return e.font=n.font&&""!==n.font?n.font:`${n.fontStyle} ${n.fontWeight} ${n.fontSize} ${n.fontFamily}`,e.measureText(t).width}catch{}return t.length*(parseFloat(n.fontSize)||13)*.55}(e,o)-e.scrollLeft,r),a);return{x:i,y:t.top+(t.height-s)/2,height:s}}const l=getSelection(),c=l&&l.rangeCount?l.getRangeAt(0):null;if(c&&l?.isCollapsed&&function(e,t){for(let n=t;n;n=n.parentNode)if(n===e)return!0;return!1}(e,c.startContainer)){const e=c.getBoundingClientRect();if(e.height>0)return{x:Math.min(Math.max(e.left,r),a),y:e.top,height:Math.min(Math.max(e.height,12),t.height)}}return{x:r,y:t.top+(t.height-s)/2,height:s}}(t):null;return!(!t||!n||(St(e.caret),e.caret.style.display="block",e.caret.style.height=`${Math.round(n.height)}px`,e.caret.style.transform=`translate3d(${Math.round(n.x-4)}px, ${Math.round(n.y)}px, 0)`,e.caret.style.opacity="1",e.cursor.style.display="none",e.cursor.style.opacity="0",s()||e.caret.animate([{opacity:1},{opacity:0}],{duration:560,iterations:1/0,direction:"alternate",easing:"steps(1, end)"}),0))}function Ct(e){St(e.caret),e.caret.style.display="none",e.caret.style.opacity="0",e.cursor.style.display="block"}function Nt(e,t){const n=kt;if(kt=t,St(e.cursor),e.cursor.style.opacity="1",!n||s()||Math.hypot(t.x-n.x,t.y-n.y)<2)return e.cursor.style.transform=At(t),null;const o=Math.hypot(t.x-n.x,t.y-n.y),r=Math.max(90,Math.min(240,o/3));return e.cursor.style.transform=At(n),e.cursor.animate([{transform:At(n)},{transform:At(t)}],{duration:r,easing:"cubic-bezier(0.2, 0.7, 0.3, 1)",fill:"forwards"})}function It(e,t,n){St(e.label),e.label.textContent=n||"click",e.label.style.transform=`translate3d(${t.x+12}px, ${t.y+14}px, 0)`,s()?e.label.style.opacity="1":e.label.animate([{opacity:0,transform:`translate3d(${t.x+12}px, ${t.y+20}px, 0)`},{opacity:1,transform:`translate3d(${t.x+12}px, ${t.y+14}px, 0)`,offset:.18},{opacity:1,transform:`translate3d(${t.x+12}px, ${t.y+14}px, 0)`,offset:.7},{opacity:0,transform:`translate3d(${t.x+12}px, ${t.y+10}px, 0)`}],{duration:700,easing:"ease-out"})}function Rt(e,t){return"click"===e.phase||"press"===e.phase?(function(e,t){const n=Mt();n&&(it(e),St(n.ripple),St(n.outline),n.outline.style.opacity="0",Ct(n),n.cursor.style.opacity="1",n.cursor.style.transform=At(e),It(n,e,t),s()||(St(n.cursor),n.cursor.animate([{transform:`${At(e)} scale(1)`},{transform:`${At(e)} scale(0.86)`,offset:.35},{transform:`${At(e)} scale(1)`}],{duration:180,easing:"ease-out"}),n.ripple.animate([{transform:`translate3d(${e.x-15}px, ${e.y-15}px, 0) scale(0.25)`,opacity:.9},{transform:`translate3d(${e.x-15}px, ${e.y-15}px, 0) scale(1.3)`,opacity:0}],{duration:420,easing:"cubic-bezier(0.16, 1, 0.3, 1)"})),kt=e)}(e.point,e.label),Promise.resolve()):"type"===e.phase||"label"===e.phase?(function(e,t,n,o){const r=Mt();r&&(St(r.outline),r.outline.style.opacity="0",o&&Lt(r)||(Ct(r),Nt(r,e)),It(r,e,t),n&&function(e,t){St(e.outline);const n=Math.round(t.x-scrollX),o=Math.round(t.y-scrollY);a(e.outline,{width:`${Math.max(1,Math.round(t.width))}px`,height:`${Math.max(1,Math.round(t.height))}px`,transform:`translate3d(${n}px, ${o}px, 0)`}),s()?e.outline.style.opacity="1":e.outline.animate([{opacity:0},{opacity:1,offset:.15},{opacity:1,offset:.7},{opacity:0}],{duration:900,easing:"ease-out"})}(r,n))}(e.point,e.label||"type",e.rect,t),Promise.resolve()):async function(e,t){const n=Mt();if(!n)return;it(e);const o=null===kt;if(t&&Lt(n))return void(kt=e);Ct(n);const r=Nt(n,e);if(o&&!s()&&(St(n.cursor),n.cursor.animate([{opacity:0},{opacity:1}],{duration:120,easing:"ease-out"})),!r)return;const i=Number(r.effect?.getTiming().duration)||240;await Promise.race([r.finished.catch(()=>{}),new Promise(e=>setTimeout(e,i+120))]),n.cursor.style.transform=At(e),r.cancel()}(e.point,t)}document.addEventListener("visibilitychange",()=>{"visible"===document.visibilityState&&Tt&&Et&&(document.fullscreenElement&&vt&&vt.el.parentElement!==document.fullscreenElement&&(vt.el.remove(),vt=null,wt=null),Rt(Et,"arrow"!==Et.marker).catch(()=>{}))});let Ht=null,Ot=null,Pt=null,_t=null,Bt="";function Ut(e){const t=e.replace(/\s+/g," ").trim();return t.length>320?`${t.slice(0,319)}…`:t}function qt(e){e.preventDefault(),e.stopPropagation()}function zt(){_t&&(removeEventListener("scroll",_t,!0),removeEventListener("resize",_t),_t=null),Ot&&(Ot.frame.style.setProperty("opacity","0"),Ot.frame.getAnimations().forEach(e=>e.cancel()))}function Dt(){const e=Pt;if(!e)return{ok:!0,skipped:!0};const t=d(Ht,o,{role:"alertdialog",label:"BrowserZap: your turn"});if(Ht=t,!t)return Ot=null,{ok:!0,skipped:!0};Ot||(Ot=function(e){const t=c(),n=u({position:"absolute",left:"50%",bottom:"28px",transform:"translateX(-50%)",width:"min(440px, calc(100vw - 32px))","box-sizing":"border-box",display:"flex","flex-direction":"column","align-items":"flex-start",gap:"7px",padding:"12px 15px 13px","border-radius":"12px",background:"rgba(17, 17, 17, 0.96)",color:"#ffffff",border:`1px solid ${t.strong}`,"box-shadow":"0 12px 36px rgba(0, 0, 0, 0.42)",font:'500 13px/1.45 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',"pointer-events":"none"}),o=u({font:'700 12px/1.4 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',"letter-spacing":"0.06em","text-transform":"uppercase"},"Your turn"),r=u({"overflow-wrap":"anywhere","white-space":"pre-wrap"}),i=document.createElement("button");i.type="button",i.tabIndex=-1,i.textContent="Done",a(i,{appearance:"none",margin:"2px 0 0",padding:"6px 20px",border:"0","border-radius":"999px",background:t.strong,color:t.ink,font:'700 12.5px/1.5 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',cursor:"pointer","pointer-events":"auto"}),i.addEventListener("pointerdown",qt),i.addEventListener("mousedown",qt),i.addEventListener("click",e=>{if(qt(e),e.isTrusted)try{chrome.runtime.sendMessage({source:"engine-handoff",type:"done",pauseId:Bt}).catch(()=>{})}catch{}}),n.append(o,r,i);const s=u({position:"absolute",left:"0",top:"0","box-sizing":"border-box","will-change":"transform",opacity:"0","pointer-events":"none"});s.setAttribute("data-bz-ring","field");const l=u({position:"absolute",inset:"0","box-sizing":"border-box",border:`2px solid ${t.strong}`,"border-radius":"8px","box-shadow":`0 0 0 3px ${t.soft}`,opacity:"0.9"});return s.append(l),e.append(s,n),{card:n,message:r,done:i,frame:s,box:l}}(t.root)),Ot.message.textContent=e.message,e.field||(e.field=function(e){if(!e)return null;if(e.ref){const t=B.refs.get(e.ref)?.el.deref();if(t?.isConnected)return t}if(e.name||e.label){const t=Ae({role:e.role,name:e.name,label:e.label,within:e.within});if(!("ok"in t))return t.el}return null}(e.target));const n=e.field,r=function(e){if(!e||null===gt(e))return!1;try{e.focus({preventScroll:!1})}catch{return!1}return bt()===e}(n);return function(e){if(!Ot)return;if(zt(),!e||!e.isConnected)return;const t=Ot,n=()=>{if(!e.isConnected)return;const n=e.getBoundingClientRect();a(t.frame,{width:`${Math.round(n.width+6)}px`,height:`${Math.round(n.height+6)}px`,transform:`translate3d(${Math.round(n.left-3)}px, ${Math.round(n.top-3)}px, 0)`,opacity:"1"})};n(),_t=n,addEventListener("scroll",_t,{capture:!0,passive:!0}),addEventListener("resize",_t,{passive:!0}),s()||t.box.animate([{opacity:.5,transform:"scale(1)"},{opacity:1,transform:"scale(1.015)"}],{duration:1100,iterations:1/0,direction:"alternate",easing:"ease-in-out"})}(n),{ok:!0,ringed:Boolean(n),focused:r}}function Ft(e){if(!e||e===document.body||e===document.documentElement)return{};if(!z(e))return{};const t=D(e);if(t.width<=0||t.height<=0)return{};const n=Math.round(t.left+Math.min(t.width/2,18)),o=Math.round(t.top+t.height/2);if(n<0||o<0||n>innerWidth||o>innerHeight)return{};const{name:r}=P(e);return{point:{x:n,y:o},ref:ne(e,R(e),r,ee(e))}}function Gt(e){return!e||e instanceof HTMLTextAreaElement||e.isContentEditable?null:e.form??e.closest("form")}function jt(e){return e.querySelector("button[type=submit],button:not([type]),input[type=submit],input[type=image]")}function Wt(e){return!!e&&(e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement||(e instanceof HTMLInputElement?null!==gt(e):!0===e.isContentEditable))}document.addEventListener("visibilitychange",()=>{"visible"===document.visibilityState&&Pt&&Dt()});const Kt={ArrowDown:()=>({top:40}),ArrowUp:()=>({top:-40}),ArrowRight:()=>({left:40}),ArrowLeft:()=>({left:-40}),PageDown:e=>({top:e}),PageUp:e=>({top:-e}),Space:e=>({top:e}),Home:()=>({to:"start"}),End:()=>({to:"end"})},Xt="data-browserzap-upload",Yt={loadInfo:function(){const e=performance.getEntriesByType("navigation")[0],t=e=>"number"==typeof e&&e>0?Math.round(e):null;return{ok:!0,docId:B.docId,readyState:document.readyState,httpStatus:e?.responseStatus||null,ttfbMs:t(e?.responseStart),domContentLoadedMs:t(e?.domContentLoadedEventStart),loadMs:t(e?.loadEventEnd)}},busyState:function(){let e=null;for(const t of Array.from(document.querySelectorAll(Ne))){if(!z(t))continue;const n=t.getAttribute("role"),o=f(t.innerText??t.textContent);if("status"!==n&&"alert"!==n||Ie.test(o)){if(("progressbar"===n||"PROGRESS"===t.tagName)&&("PROGRESS"===t.tagName?t.hasAttribute("value"):t.hasAttribute("aria-valuenow"))&&!Ie.test(`${o} ${t.getAttribute("aria-label")??""}`))continue;e=m(o||t.getAttribute("aria-label")||n||t.tagName.toLowerCase(),60);break}}return{ok:!0,docId:B.docId,readyState:document.readyState,mutations:B.mutations,indicator:e}},recordStart:function(){if(Re)return{ok:!0,recording:!0};const e=e=>{if(!e.isTrusted)return;const t=function(e){let t=e instanceof Element?e:null;for(;t&&!_(t);)t=y(t);return t}(e.composedPath()[0]??null);if(!t||Be(t)||t instanceof HTMLSelectElement)return;if(t instanceof HTMLInputElement&&("checkbox"===t.type||"radio"===t.type))return;const n=B.mutations,o=location.href,{target:r,ambiguous:i,name:a}=Pe(t);_e({tool:"element_click",args:{target:r},label:`Click ${R(t)} "${a||"(unnamed)"}"`,ambiguous:i,expectChange:!0});const s=`${B.docId}-${He}`;setTimeout(()=>{if(B.mutations===n&&location.href===o)try{chrome.runtime.sendMessage({source:"engine-recorder",patch:{id:s,expectChange:!1}})}catch{}},800)},t=e=>{if(!e.isTrusted)return;const t=e.composedPath()[0];if(t instanceof Element)if(Be(t))Ue(t);else if(t instanceof HTMLInputElement&&("checkbox"===t.type||"radio"===t.type)){if("radio"===t.type&&!t.checked)return;const{target:e,ambiguous:n,name:o}=Pe(t);_e({tool:"field_fill",args:{target:e,value:String(t.checked)},label:`${t.checked?"Check":"Uncheck"} "${o}"`,ambiguous:n})}else if(t instanceof HTMLSelectElement){const e=t.selectedOptions[0];if(!e)return;const{target:n,ambiguous:o,name:r}=Pe(t),i=f(e.label||e.text);_e({tool:"select_option",args:{target:n,option:{label:i}},label:`Choose "${i}" in "${r}"`,ambiguous:o})}},n=e=>{const t=e;if(!t.isTrusted||"Enter"!==t.key||t.isComposing)return;const n=t.composedPath()[0];n instanceof HTMLInputElement&&Be(n)&&(Ue(n),_e({tool:"browser_press_key",args:{key:"Enter"},label:"Press Enter",expectChange:!0}))};return document.addEventListener("click",e,!0),document.addEventListener("change",t,!0),document.addEventListener("keydown",n,!0),Re={off:()=>{document.removeEventListener("click",e,!0),document.removeEventListener("change",t,!0),document.removeEventListener("keydown",n,!0)}},{ok:!0,recording:!0}},recordStop:function(){return Re?.off(),Re=null,{ok:!0,recording:!1}},commentStart:function(e){if(ze)return{ok:!0,on:!0};const t=d(null,r);if(!t)return{ok:!0,on:!0};const n=c(),o=u({position:"fixed",left:"0",top:"0",display:"none","box-sizing":"border-box",border:`2px solid ${n.strong}`,background:n.soft,"border-radius":"3px"}),s=u({position:"absolute",left:"0",bottom:"100%","margin-bottom":"2px",background:n.strong,color:n.ink,font:"600 11px/1.3 system-ui, sans-serif",padding:"1px 6px","border-radius":"3px","white-space":"nowrap"});o.appendChild(s);const l=u({position:"fixed",top:"8px",left:"50%",transform:"translateX(-50%)",background:"#1b1b1b",color:"#f5f5f5",font:"600 12px/1.3 system-ui, sans-serif",padding:"6px 12px","border-radius":"999px","box-shadow":"0 2px 10px rgba(0,0,0,.3)",border:`1px solid ${n.strong}`},"Comment mode — click an element to comment · Esc to finish");t.root.append(o,l);const f=e=>{const t=e.composedPath()[0];return t instanceof Element&&!i(t)?t:null},p=e=>{if(!ze||ze.card||Ge(e))return;const t=f(e);t&&t!==document.documentElement&&t!==document.body&&(ze.picked=t,s.textContent=Ke(t),ze.highlight.style.display="block",Xe(ze.highlight,t))},m=e=>{Ge(e)||(e.preventDefault(),e.stopImmediatePropagation())},h=e=>{if(Ge(e))return;if(m(e),!e.isTrusted||!ze)return;const t=f(e);t&&(ze.picked=t,s.textContent=Ke(t),ze.highlight.style.display="block",Xe(ze.highlight,t),function(e){if(!ze)return;Ze();const t=c(),n=e.getBoundingClientRect(),o=u({position:"fixed",left:`${Math.min(Math.max(n.left,8),innerWidth-300-8)}px`,top:`${n.bottom+170<innerHeight?n.bottom+8:Math.max(n.top-170,8)}px`,width:"300px","box-sizing":"border-box",background:"#1b1b1b",color:"#f5f5f5","border-radius":"10px",padding:"10px","pointer-events":"auto","box-shadow":"0 8px 28px rgba(0,0,0,.35)",font:'13px/1.4 system-ui, -apple-system, "Segoe UI", sans-serif',border:`1px solid ${t.strong}`}),r=u({"font-weight":"600","margin-bottom":"6px",overflow:"hidden","text-overflow":"ellipsis","white-space":"nowrap"},`Comment on ${Ke(e)}`),i=document.createElement("textarea");i.placeholder="What should change here?",i.maxLength=2e3,i.rows=3,a(i,{width:"100%","box-sizing":"border-box",resize:"vertical","border-radius":"6px",border:"1px solid #444",background:"#262626",color:"#f5f5f5",padding:"6px",font:"inherit"});const s=u({display:"flex",gap:"6px","justify-content":"flex-end","margin-top":"8px","align-items":"center"}),l=u({"margin-right":"auto",color:"#a3a3a3","font-size":"11px"},"Ctrl+Enter to save · Esc to cancel"),d=(e,n)=>{const o=document.createElement("button");return o.type="button",o.textContent=e,a(o,{border:n?"none":"1px solid #555",background:n?t.strong:"transparent",color:n?t.ink:"#eee","border-radius":"6px",padding:"4px 12px",cursor:"pointer",font:"inherit","font-weight":"600"}),o},f=d("Cancel",!1),p=d("Save",!0),m=()=>{const e=i.value.trim();if(!e||!ze?.picked)return;const t=ze.picked,n=`c-${Date.now().toString(36)}-${++De}`;t.setAttribute(qe,n),Ze(),ze.highlight.style.display="none",ze.picked=null,Fe({type:"add",cid:n,text:e,info:We(t),page:{url:location.href,title:document.title.slice(0,200),viewport:{width:innerWidth,height:innerHeight},devicePixelRatio}})};p.addEventListener("click",e=>{e.isTrusted&&m()}),f.addEventListener("click",e=>{e.isTrusted&&(Ze(),ze&&(ze.picked=null,ze.highlight.style.display="none"))}),i.addEventListener("keydown",e=>{e.stopPropagation(),e.isTrusted&&("Enter"===e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),m()),"Escape"===e.key&&(e.preventDefault(),Ze(),ze&&(ze.picked=null,ze.highlight.style.display="none")))}),s.append(l,f,p),o.append(r,i,s),ze.host.root.appendChild(o),ze.card=o,i.focus()}(t))},g=e=>{e.isTrusted&&"Escape"===e.key&&!Ge(e)&&(e.preventDefault(),ze?.card?Ze():Fe({type:"exit"}))},b=["pointerdown","pointerup","mousedown","mouseup","dblclick","contextmenu","auxclick","submit"];window.addEventListener("pointermove",p,!0),window.addEventListener("click",h,!0);for(const e of b)window.addEventListener(e,m,!0);window.addEventListener("keydown",g,!0),window.addEventListener("scroll",Ve,!0),window.addEventListener("resize",Ve,!0),ze={host:t,highlight:o,label:s,card:null,picked:null,pins:new Map,masks:[],frame:0,next:1,off:()=>{window.removeEventListener("pointermove",p,!0),window.removeEventListener("click",h,!0);for(const e of b)window.removeEventListener(e,m,!0);window.removeEventListener("keydown",g,!0),window.removeEventListener("scroll",Ve,!0),window.removeEventListener("resize",Ve,!0)}};for(const t of Array.isArray(e.pins)?e.pins:[]){let e=null;try{e=t.domPath?document.querySelector(t.domPath):null}catch{e=null}e&&Qe({cid:t.cid,n:t.n,el:e})}return{ok:!0,on:!0}},commentStop:function(){return ze?(ze.off(),ze.frame&&cancelAnimationFrame(ze.frame),ze.host.el.remove(),document.querySelectorAll(`[${qe}]`).forEach(e=>e.removeAttribute(qe)),ze=null,{ok:!0,on:!1}):{ok:!0,on:!1}},commentPin:Qe,commentUnpin:function(e){const t=String(e.cid??"");return ze?.pins.get(t)?.badge.remove(),ze?.pins.delete(t),document.querySelectorAll(`[${qe}="${CSS.escape(t)}"]`).forEach(e=>e.removeAttribute(qe)),{ok:!0}},commentCaptureStart:async function(e){if(!ze)return{ok:!1};const t=String(e.cid??"");let n=null;try{n=document.querySelector(`[${qe}="${CSS.escape(t)}"]`)}catch{n=null}for(const e of Array.from(ze.host.root.children))e.style.visibility="hidden";q();for(const e of Array.from(document.querySelectorAll('input, textarea, [contenteditable=""], [contenteditable="true"]'))){const{name:t}=P(e);if(!j(e,t))continue;const n=e.getBoundingClientRect();if(n.width<1||n.height<1||n.bottom<0||n.top>innerHeight)continue;const o=u({position:"fixed",left:`${n.left}px`,top:`${n.top}px`,width:`${n.width}px`,height:`${n.height}px`,background:"#3a3a3a"});ze.host.root.appendChild(o),ze.masks.push(o)}await new Promise(e=>requestAnimationFrame(()=>requestAnimationFrame(()=>e())));const o=n?.getBoundingClientRect();return{ok:!0,rect:o?{x:o.x,y:o.y,width:o.width,height:o.height}:null,viewport:{width:innerWidth,height:innerHeight},devicePixelRatio}},commentCaptureEnd:function(){if(!ze)return{ok:!0};for(const e of ze.masks)e.remove();ze.masks=[];for(const e of Array.from(ze.host.root.children))e.style.visibility="";return ze.picked||(ze.highlight.style.display="none"),{ok:!0}},snapshot:function(e){const t=Math.min(Number(e.maxElements)||150,400),n=!1!==e.includeText,o=Math.min(Number(e.maxTextChars)||4e3,2e4);B.snapshotId+=1;const r=re(),i=r.filter(oe),a=ke();let s=a?i.filter(e=>v(a,e.el)):i;const l="string"==typeof e.within&&e.within?e.within:null;l&&(s=Ee(s,l)),function(){if(!(B.refs.size<2e3))for(const[e,t]of B.refs)t.el.deref()||B.refs.delete(e)}();const c=[];let u=0,d=!1;const g=e=>{if(c.length>=t)return!1;const n=(e=>{const t=ee(e.el),n={ref:ne(e.el,e.role,e.name,t),role:e.role,name:m(e.name,100),...W(e.el)};"placeholder"!==e.source&&"none"!==e.source||(n.nameSource=e.source),t&&(n.context=m(t,60)),e.el instanceof HTMLAnchorElement&&e.el.href&&(n.href=m(e.el.href,200)),j(e.el,e.name)&&(n.sensitive=!0);const o=e.el.getBoundingClientRect();return(o.bottom<0||o.top>innerHeight)&&(n.offscreen=!0),n})(e),o=JSON.stringify(n).length;return!(u+o>98304||(u+=o,c.push(n),0))};for(const e of s)if(!g(e)){d=!0;break}const b=ge(),x=(a?b.filter(e=>v(a,e.el)):b).filter(oe),y=l?Ee(x,l):x;let w=0,k=!1;for(const e of y){if(w>=60||!g(e)){k=!0;break}w+=1}const E=l?p(l):null,T=Array.from(document.querySelectorAll("h1,h2,h3,h4,h5,h6")).filter(e=>z(e)).filter(e=>!E||p(h(e))===E||J(e).some(e=>p(e)===E)).slice(0,40).map(e=>({level:Number(e.tagName[1]),text:m(h(e),100)})),A=Array.from(document.querySelectorAll("iframe,frame")),S=A.filter(e=>{try{return!e.contentDocument}catch{return!0}}).length;let M,$=!1;if(n){const e=f(document.body?.innerText??"");$=e.length>o,M=e.slice(0,o)}return{ok:!0,snapshotId:`s${B.snapshotId}`,docId:B.docId,url:location.href,title:m(document.title,200),elements:c,headings:T,text:M,challenge:se(),siteError:mt(!0===e.network5xx),counts:{interactive:r.length,visible:i.length,returned:c.length,hidden:r.length-i.length,...a||l?{inScope:s.length}:{},...y.length?{clickable:y.length,clickableReturned:w}:{}},modal:a?{name:m(P(a).name||K(a),100),outside:i.length-(a?i.filter(e=>v(a,e.el)).length:0)}:null,within:l,limits:{truncated:d,textTruncated:$,clickableTruncated:k,frames:A.length,crossOriginFrames:S,note:[a?"A modal dialog is open: only its controls are listed and can be targeted. Close it to reach the page behind.":"",l&&0===s.length&&0===y.length?`No visible controls are inside "${m(l,80)}".`:"",k?`Only ${w} of ${y.length} clickable region(s) are listed; use within to narrow the page.`:"",S?"Controls inside cross-origin frames are not inspected.":""].filter(Boolean).join(" ")||void 0}}},siteError:function(e){return{ok:!0,docId:B.docId,siteError:mt(!0===e.network5xx)}},fileInput:function(e){const t=String(e.phase??"mark"),n=String(e.mark??"");if("unmark"===t)return document.querySelectorAll(`[${Xt}]`).forEach(e=>e.removeAttribute(Xt)),{ok:!0};const o=Te(String(e.ref));if("ok"in o)return o;const r=o.el;return r instanceof HTMLInputElement&&"file"===r.type?r.disabled?{ok:!1,code:"TARGET_NOT_INTERACTABLE",message:"The file input is disabled."}:"check"===t?{ok:!0,files:r.files?.length??0,names:Array.from(r.files??[]).map(e=>e.name).slice(0,10)}:(n&&r.setAttribute(Xt,n),{ok:!0,multiple:r.multiple,accept:r.accept||null,files:r.files?.length??0}):{ok:!1,code:"TARGET_NOT_INTERACTABLE",message:`"${o.name||r.tagName.toLowerCase()}" is not a file input. Target the page's "Choose file" input itself.`}},resolve:ht,click:function(e){const t=Te(String(e.ref));if("ok"in t)return t;const n=F(t.el);if(!n)return we(ve(t.name),"is not visible.");const o=D(n);return o.width<=0||o.height<=0?we(ve(t.name),"has no visible area."):(function(e){e.scrollIntoView({block:"center",inline:"center",behavior:"instant"});const t=e.getBoundingClientRect(),n=t.left+t.width/2,o=t.top+t.height/2,r={bubbles:!0,cancelable:!0,composed:!0,view:window,button:0,buttons:1,clientX:n,clientY:o,screenX:n,screenY:o,detail:1};try{const t={...r,pointerId:1,pointerType:"mouse",isPrimary:!0,width:1,height:1};e.dispatchEvent(new PointerEvent("pointerdown",t)),e.dispatchEvent(new MouseEvent("mousedown",r)),e.dispatchEvent(new PointerEvent("pointerup",{...t,buttons:0})),e.dispatchEvent(new MouseEvent("mouseup",{...r,buttons:0}))}catch{}"function"==typeof e.click?e.click():e.dispatchEvent(new MouseEvent("click",{...r,buttons:0}))}(n),{ok:!0,ref:e.ref,method:"dom",hidden:x(),state:W(t.el),mutations:B.mutations})},cursor:async function(e){const t=String(e.phase??"move");if("hide"===t)return function(e){if(Tt=!1,Et=null,kt=null,!vt)return;const t=vt;if(vt=null,wt=null,e||s()||"function"!=typeof t.el.animate)return void t.el.remove();const n=()=>t.el.remove();t.el.animate([{opacity:1},{opacity:0}],{duration:140,easing:"ease-out"}).finished.then(n).catch(n),setTimeout(n,220)}(!0===e.immediate),{ok:!0};if("idle"===t)return{ok:!0};const n=e.point;if(!n||!Number.isFinite(n.x)||!Number.isFinite(n.y))return{ok:!0,skipped:!0};const o=e.rect,r={phase:t,point:n,label:"string"==typeof e.label?e.label.slice(0,24):"",rect:o&&Number.isFinite(o.width)&&Number.isFinite(o.height)?{x:o.x,y:o.y,width:o.width,height:o.height}:null,marker:"arrow"===e.marker?"arrow":"caret"};return Et=r,"visible"!==document.visibilityState?{ok:!0,skipped:!0}:(Tt=!0,await Rt(r,"arrow"!==r.marker),"move"===t?{ok:!0,mutations:B.mutations}:{ok:!0})},indicator:function(e){const o=String(e.phase??"show");return"hide"===o?(at(!0===e.immediate),st(),{ok:!0}):"visible"!==document.visibilityState?{ok:!0,skipped:!0}:"ring"===o?(function(e){const t=B.refs.get(e)?.el.deref();if(!t||!t.isConnected)return void st();st();const o=d(null,n);if(!o)return;const r=c(),i=u({position:"absolute",left:"0",top:"0","will-change":"transform","pointer-events":"none"}),l=u({position:"absolute",inset:"0","box-sizing":"border-box",border:`2px solid ${r.strong}`,"border-radius":"8px","box-shadow":`0 0 0 3px ${r.soft}`,opacity:"0.9"});i.append(l),o.root.append(i);const f=()=>{if(!t.isConnected)return void st();const e=t.getBoundingClientRect();a(i,{width:`${Math.round(e.width+6)}px`,height:`${Math.round(e.height+6)}px`,transform:`translate3d(${Math.round(e.left-3)}px, ${Math.round(e.top-3)}px, 0)`})};f(),nt={host:o,follow:f},ot=setTimeout(()=>st(),12e4),s()||(l.animate([{opacity:.5,transform:"scale(1)"},{opacity:1,transform:"scale(1.015)"}],{duration:1100,iterations:1/0,direction:"alternate",easing:"ease-in-out"}),addEventListener("scroll",f,{capture:!0,passive:!0}),addEventListener("resize",f,{passive:!0}))}(String(e.ref??"")),{ok:!0}):"ringHide"===o?(st(),{ok:!0}):(r="idle"===o?1500:3e4,function(){if(Je?.el.isConnected&&et)return et;const e=d(Je,t);return Je=e,e?(et=function(e){const t=c(),n=u({position:"absolute",inset:"0","box-sizing":"border-box",border:`2px solid ${t.strong}`,"box-shadow":`inset 0 0 26px ${t.soft}`,opacity:"0.9","pointer-events":"none"}),o=u({position:"absolute",left:"0",right:"0",bottom:"22px",display:"flex","justify-content":"center","pointer-events":"none"}),r=u({display:"flex","align-items":"center",gap:"9px",padding:"5px 6px 5px 12px","border-radius":"999px",background:"rgba(17, 17, 17, 0.9)",color:"#ffffff","box-shadow":"0 4px 18px rgba(0, 0, 0, 0.3)",font:'600 11.5px/1.5 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',"white-space":"nowrap","pointer-events":"auto"}),i=u({width:"6px",height:"6px","border-radius":"50%",background:t.strong,"flex-shrink":"0"}),l=u({"letter-spacing":"0.01em",opacity:"0.94"},"BrowserZap · agent working"),d=document.createElement("button");d.type="button",d.tabIndex=-1,d.textContent="Stop",a(d,{appearance:"none",margin:"0",padding:"3px 11px",border:"0","border-radius":"999px",background:t.strong,color:t.ink,font:'700 11px/1.5 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',cursor:"pointer"});const f=e=>{e.preventDefault(),e.stopPropagation()};return d.addEventListener("pointerdown",f),d.addEventListener("mousedown",f),d.addEventListener("click",e=>{if(f(e),e.isTrusted){try{chrome.runtime.sendMessage({source:"engine-control",type:"stop"}).catch(()=>{})}catch{}at(!1)}}),r.append(i,l,d),o.append(r),e.append(n,o),s()||r.animate([{opacity:0,transform:"translate3d(0, 6px, 0)"},{opacity:1,transform:"translate3d(0, 0, 0)"}],{duration:160,easing:"ease-out"}),{border:n,pill:r}}(e.root),s()||et.border.animate([{opacity:.45},{opacity:1}],{duration:1500,iterations:1/0,direction:"alternate",easing:"ease-in-out"}),et):(et=null,null)}()&&(rt(),tt=setTimeout(()=>at(!1),r)),{ok:!0});var r},handoff:function(e){const t=String(e.phase??"show");return"hide"===t?(zt(),Pt=null,Ht&&(Ht.el.remove(),Ht=null,Ot=null),{ok:!0}):(Ht?.el.isConnected||(Ht=null,Ot=null),"suppress"===t?(Ht&&Ht.el.style.setProperty("display","none"),{ok:!0}):"restore"===t?(Ht&&Ht.el.style.removeProperty("display"),{ok:!0}):(Pt={message:Ut(String(e.message??"The agent needs you to take over.")),target:e.target??void 0,field:null},Bt=String(e.pauseId??""),"visible"!==document.visibilityState?{ok:!0,skipped:!0}:Dt()))},fillPrepare:function(e){const t=ht({target:e.target,purpose:"fill",scroll:!0});if(!t.ok)return t;const n=Te(t.ref);if(t.sensitive)return ye("USER_ACTION_REQUIRED",`"${t.name}" is a sensitive field (${t.sensitive}). BrowserZap never types into it; ask the user to fill it.`,{target:{ref:t.ref,role:t.role,name:t.name},sensitive:t.sensitive});if(n.el instanceof HTMLInputElement&&("checkbox"===n.el.type||"radio"===n.el.type))return{...t,kind:"toggle",checked:n.el.checked};if(n.el instanceof HTMLSelectElement)return ye("UNSUPPORTED_CONTROL",`"${t.name}" is a <select>. Use select_option.`,{target:t});const o=gt(n.el);if(!o)return ye("UNSUPPORTED_CONTROL",`${t.role} "${t.name}" does not accept text.`,{target:t});if(o.readOnly)return ye("TARGET_NOT_INTERACTABLE",`"${t.name}" is read-only.`,{target:t});if(o.focus({preventScroll:!0}),o instanceof HTMLInputElement||o instanceof HTMLTextAreaElement)o instanceof HTMLTextAreaElement||["text","search","url","tel","password",""].includes(o.type)?o.select():o.value&&xt(o,"");else{const e=document.createRange();e.selectNodeContents(o);const t=getSelection();t?.removeAllRanges(),t?.addRange(e)}const r=v(o,bt());return"string"!=typeof e.value||t.challenge?{...t,kind:"text",focused:r}:{...t,kind:"text",focused:r,applied:yt({ref:t.ref,value:e.value})}},fillApply:yt,selectOption:function(e){const t=ht({target:e.target,purpose:"select",scroll:!0});if(!t.ok)return t;const n=Te(t.ref).el;if(!(n instanceof HTMLSelectElement))return ye("UNSUPPORTED_CONTROL",`${t.role} "${t.name}" is not a native <select>. Open it with element_click, then click the option.`,{target:t});const o=e.option??{},r=Array.from(n.options);let i=[];if(void 0!==o.value)i=r.filter(e=>e.value===o.value);else{if(void 0===o.label)return ye("INVALID_ARGUMENT","option needs a label or a value.");{const e=p(o.label);i=r.filter(t=>p(t.label||t.text)===e)}}if(!i.length)return ye("TARGET_NOT_FOUND",`No option matches in "${t.name}".`,{candidates:r.slice(0,20).map(e=>({ref:"",role:"option",name:m(f(e.label||e.text),100),value:e.value}))});if(i.length>1)return ye("TARGET_AMBIGUOUS",`${i.length} options match in "${t.name}". Select by value instead.`,{candidates:i.slice(0,8).map(e=>({ref:"",role:"option",name:f(e.label||e.text),value:e.value}))});const a=i[0];if(a.disabled)return ye("TARGET_NOT_INTERACTABLE",`Option "${f(a.label)}" is disabled.`);const s=n.value;n.focus({preventScroll:!0}),n.value=a.value,n.dispatchEvent(new Event("input",{bubbles:!0})),n.dispatchEvent(new Event("change",{bubbles:!0}));const l=n.value===a.value&&n.selectedOptions[0]===a;return{ok:!0,ref:t.ref,name:t.name,selected:{label:m(f(a.label||a.text),100),value:a.value},changed:s!==n.value,verified:l,sensitive:t.sensitive,point:t.point,pageRect:t.pageRect}},observe:function(e){let t;if("string"==typeof e.ref){const n=B.refs.get(e.ref),o=n?.el.deref();t=o&&o.isConnected?{connected:!0,...W(o)}:{connected:!1}}const n={ok:!0,docId:B.docId,url:location.href,title:document.title,readyState:document.readyState,mutations:B.mutations,target:t};if("number"==typeof e.since){const t=function(e){if(e>=B.mutations)return{count:0,quietMs:null};const t=performance.now();if($e.length&&$e[0].seq>e+1)return{count:2e3,quietMs:0};let n=t;const o=new Set;for(let r=$e.length-1;r>=0;r--){const i=$e[r];if(i.seq>e)continue;if(n===t&&(n=i.at),i.at<n-1500)break;const a=i.node.deref();a&&o.add(a)}const r=new Set;let i=null,a=0;for(let n=$e.length-1;n>=0&&$e[n].seq>e;n--){const e=$e[n].node.deref();if(!e||r.has(e))continue;if(r.add(e),o.has(e)||Le(e,t))continue;a++;const s=Me.get(e)?.last??t;(null===i||s>i)&&(i=s)}return{count:a,quietMs:null===i?null:Math.round(t-i)}}(e.since);n.changes=t.count,n.changeQuietMs=t.quietMs}if(e.expect&&"object"==typeof e.expect){const t=function(e){const t={ok:!0,docId:B.docId,url:location.href};if("string"==typeof e.text&&(t.text=p(document.body?.innerText).includes(p(e.text))),e.target){const n=Ae(e.target);t.target=!("ok"in n)&&oe(n),t.targetAmbiguous="ok"in n&&"TARGET_AMBIGUOUS"===n.code,t.targetAmbiguous&&(t.targetCandidates=("candidates"in n?n.candidates:void 0)??[])}if(e.targetGone){const n=Ae(e.targetGone);t.targetGone="ok"in n?"TARGET_NOT_FOUND"===n.code||"STALE_SNAPSHOT"===n.code:!oe(n)}return t}(e.expect);n.expect={text:t.text,target:t.target,targetGone:t.targetGone,ambiguous:t.targetAmbiguous,candidates:t.targetCandidates}}return n},keyContext:function(e){const t=bt(),n=String(e.key??""),o={ok:!0,docId:B.docId,url:location.href,hidden:x(),...Ft(t)};if("Enter"!==n||!t)return{...o,risk:"reversible"};if(t instanceof HTMLButtonElement||t instanceof HTMLAnchorElement&&t.href||t instanceof HTMLInputElement&&["submit","image","button"].includes(t.type)){const{name:e}=P(t),n=R(t);return{...o,risk:ae(t,n,e),submits:{role:n,name:m(e,100),fingerprint:te(n,e)},challenge:se()}}const r=Gt(t);if(!r)return{...o,risk:"reversible"};const i=jt(r),a=i?P(i).name:K(r)||"form",s=i?R(i):"form",l=i?ae(i,s,a):"post"===r.method.toLowerCase()?"external_side_effect":"reversible";return{...o,risk:l,submits:{role:s,name:m(a,100),fingerprint:te(s,a)},challenge:se()}},pressKey:function(e){const t=String(e.key??""),n=new Set(Array.isArray(e.modifiers)?e.modifiers:[]),o=bt()??document.body??document.documentElement,r=Number(e.keyCode)||0,i={key:"Space"===t?" ":t,code:String(e.code??t),keyCode:r,which:r,bubbles:!0,cancelable:!0,composed:!0,view:window,altKey:n.has("alt"),ctrlKey:n.has("ctrl"),metaKey:n.has("meta"),shiftKey:n.has("shift")},a=o.dispatchEvent(new KeyboardEvent("keydown",i));!a||"Enter"!==t&&"Space"!==t||o.dispatchEvent(new KeyboardEvent("keypress",i));let s="none";return!a||i.altKey||i.ctrlKey||i.metaKey||(s=function(e,t,n){const o=t,r=t instanceof HTMLButtonElement||"SUMMARY"===t.tagName||t instanceof HTMLInputElement&&["button","submit","reset","image","checkbox","radio"].includes(t.type);if("Enter"===e){if(t instanceof HTMLAnchorElement&&t.href)return o.click(),"activate";if(t instanceof HTMLButtonElement||"SUMMARY"===t.tagName)return o.click(),"activate";const e=Gt(t);if(e&&t instanceof HTMLInputElement&&gt(t)){const t=jt(e);if(t){if(G(t))return"none";t.click()}else e.requestSubmit();return"submit"}return"none"}if("Space"===e&&r)return o.click(),"activate";if("Tab"===e){const e=function(){const e=[];for(const t of g(document)){const n=t;"number"!=typeof n.tabIndex||n.tabIndex<0||G(t)||t instanceof HTMLInputElement&&"hidden"===t.type||z(t)&&e.push(n)}return[...e.filter(e=>e.tabIndex>0).sort((e,t)=>e.tabIndex-t.tabIndex),...e.filter(e=>0===e.tabIndex)]}();if(!e.length)return"none";const t=e.indexOf(o);return(t<0?e[n?e.length-1:0]:e[(t+(n?-1:1)+e.length)%e.length]).focus(),"focus"}if("Escape"===e){const e=b();return e&&e.dispatchEvent(new Event("cancel",{cancelable:!0}))?(e.close(),"closeDialog"):"none"}if(("Backspace"===e||"Delete"===e)&&Wt(t))return document.execCommand("Backspace"===e?"delete":"forwardDelete"),"delete";const i=Kt[e];if(i&&!Wt(t)&&!r){const t=i(Math.round(.875*innerHeight));return t.to?scrollTo({top:"start"===t.to?0:document.documentElement.scrollHeight,behavior:"instant"}):window.scrollBy({top:(n&&"Space"===e?-1:1)*(t.top??0),left:t.left??0,behavior:"instant"}),"scroll"}return"none"}(t,o,Boolean(i.shiftKey))),o.dispatchEvent(new KeyboardEvent("keyup",i)),{ok:!0,method:"dom",prevented:!a,defaultAction:s,mutations:B.mutations}},scroll:function(e){const t=Math.min(Math.max(Number(e.amount)||600,1),5e3),n=String(e.direction??"down"),o="left"===n?-t:"right"===n?t:0,r="up"===n?-t:"down"===n?t:0;let i=window;if(e.target){const t=Ae(e.target);if("ok"in t)return t;i=t.el}const a=()=>i===window?{x:scrollX,y:scrollY}:{x:i.scrollLeft,y:i.scrollTop},s=a();i.scrollBy({left:o,top:r,behavior:"instant"});const l=a();return{ok:!0,moved:s.x!==l.x||s.y!==l.y,position:l,atEnd:i===window&&innerHeight+scrollY>=document.documentElement.scrollHeight-2}}};14!==globalThis.__browserzapEngine?.version&&(globalThis.__browserzapEngine={version:14,run(e,t){const n=Object.prototype.hasOwnProperty.call(Yt,e)?Yt[e]:void 0;if(!n)return ye("INVALID_ARGUMENT",`Unknown engine operation: ${e}`);q();try{return n(t??{})}catch(e){return ye("INTERNAL",e instanceof Error?e.message:String(e))}finally{q()}}})})();
1
+ (()=>{"use strict";const e="data-browserzap-cursor",t="data-browserzap-control",n="data-browserzap-approval",o="data-browserzap-handoff",r="data-browserzap-comment";function i(i){return i instanceof Element&&(i.hasAttribute(e)||i.hasAttribute(t)||i.hasAttribute(n)||i.hasAttribute(o)||i.hasAttribute(r))}function a(e,t){for(const[n,o]of Object.entries(t))e.style.setProperty(n,o)}function s(){try{return matchMedia("(prefers-reduced-motion: reduce)").matches}catch{return!1}}function l(e){if(!e)return null;let t="";try{t=getComputedStyle(e).backgroundColor}catch{return null}const n=/^rgba?\(([^)]+)\)$/.exec(t);if(!n)return null;const o=n[1].split(",").map(e=>Number(e.trim())),[r,i,a]=o,s=o.length>3?o[3]:1;return![r,i,a,s].every(Number.isFinite)||s<.5?null:.2126*r+.7152*i+.0722*a}function c(){return(l(document.body)??l(document.documentElement)??255)<110?{strong:"#ff922b",soft:"rgba(255, 146, 43, 0.30)",ink:"#1a0d04"}:{strong:"#d9480f",soft:"rgba(217, 72, 15, 0.18)",ink:"#ffffff"}}function u(e,t){const n=document.createElement("div");return a(n,e),void 0!==t&&(n.textContent=t),n}function d(e,t,n){if(e?.el.isConnected)return e;e?.el.remove();const o=document.fullscreenElement??document.documentElement;if(!o)return null;const r=document.createElement("div");r.setAttribute(t,""),n?(r.setAttribute("role",n.role),r.setAttribute("aria-label",n.label)):r.setAttribute("aria-hidden","true"),a(r,{position:"fixed",inset:"0","z-index":"2147483647","pointer-events":"none",overflow:"visible"});const i=r.attachShadow({mode:"closed"});return o.appendChild(r),{el:r,root:i}}function f(e){return(e??"").replace(/\s+/g," ").trim()}function p(e){return f(e).toLowerCase()}function m(e,t){return e.length>t?`${e.slice(0,t-1)}…`:e}function h(e,t=!1){const n=[],o=r=>{if(r.nodeType===Node.TEXT_NODE)return void n.push(r.textContent??"");if(r.nodeType!==Node.ELEMENT_NODE)return;const i=r,a=i.tagName;if("SCRIPT"===a||"STYLE"===a||"TEMPLATE"===a)return;if(t&&("INPUT"===a||"SELECT"===a||"TEXTAREA"===a||"BUTTON"===a))return;if("IMG"===a)return void n.push(` ${i.getAttribute("alt")??""} `);const s=i!==e&&function(e){const t=e.ownerDocument.defaultView?.getComputedStyle(e).display??"inline";return"inline"!==t&&"contents"!==t&&"none"!==t}(i);s&&n.push(" ");for(const e of Array.from(i.childNodes))o(e);s&&n.push(" ")};return o(e),f(n.join(""))}function*g(e){const t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);let n=t.nextNode();for(;n;){const e=n;yield e,e.shadowRoot&&(yield*g(e.shadowRoot)),n=t.nextNode()}}function b(){const e=Array.from(document.querySelectorAll("dialog[open]"));for(let t=e.length-1;t>=0;t--)if(e[t].matches(":modal"))return e[t];return null}function x(){return"hidden"===document.visibilityState}function y(e){if(e.parentElement)return e.parentElement;const t=e.getRootNode();return t instanceof ShadowRoot?t.host:null}function v(e,t){let n=t;for(;n;){if(n===e)return!0;n=y(n)}return!1}function w(e,t){const n=e.getRootNode();try{return n.querySelector(`#${CSS.escape(t)}`)??document.getElementById(t)}catch{return null}}const k=String.raw`pass(word|code|phrase)?\b|\bpwd\b|\bpin\b|\botp\b|one[-\s]?time|2fa|\bmfa\b|security code|verification code|\bcvv\b|\bcvc\b|\bcsc\b|card ?number|credit ?card|social security|\bssn\b|\biban\b|routing number|account number|tax id|national id|passport`,E=new Set(["button","link","checkbox","radio","switch","tab","menuitem","menuitemcheckbox","menuitemradio","option","combobox","listbox","textbox","searchbox","slider","spinbutton","treeitem","gridcell"]),T=new Set(["button","link","checkbox","radio","switch","tab","menuitem","menuitemcheckbox","menuitemradio","option","treeitem","heading","gridcell","cell"]),A=new Set(["textbox","searchbox","spinbutton","combobox"]),S=/\b(delete|remove|erase|destroy|discard|deactivate|terminate|revoke|unsubscribe|close (my )?account|cancel (my |the )?(subscription|order|plan|membership))\b/i,M=/\b(pay|payment|purchase|buy|checkout|check out|place (the |my )?order|submit order|order now|complete (the )?order|donate|transfer|send money|subscribe|upgrade)\b/i,$=/\b(submit|send|post|publish|share|tweet|reply|comment|confirm|apply|book|reserve|sign up|invite|save changes|approve|accept|merge|deploy)\b/i,L=new RegExp(k,"i"),C=/\b(verify (that )?you('re| are) (a )?human|are you a robot|i'?m not a robot|human verification|security check|captcha|checking your browser)\b/i,N=/\b(two[- ]factor|2fa|multi[- ]factor|verification code|one[- ]time (pass)?code|authenticator app|enter the code)\b/i,I={checkbox:"checkbox",radio:"radio",button:"button",submit:"button",reset:"button",image:"button",range:"slider",number:"spinbutton",search:"searchbox",file:"button",color:"button"};function R(e){const t=f(e.getAttribute("role")).split(" ")[0];if(t)return t.toLowerCase();switch(e.tagName.toLowerCase()){case"a":case"area":return e.hasAttribute("href")?"link":"generic";case"button":case"summary":return"button";case"select":{const t=e;return t.multiple||t.size>1?"listbox":"combobox"}case"textarea":return"textbox";case"input":{const t=(e.type||"text").toLowerCase();return I[t]??"textbox"}case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"heading";case"img":return"img";default:return e.isContentEditable?"textbox":"generic"}}function H(e){return e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement}function O(e){return H(e)&&e.labels?Array.from(e.labels):[]}function P(e){const t=f(e.getAttribute("aria-labelledby"));if(t){const n=f(t.split(" ").map(t=>w(e,t)).filter(e=>Boolean(e)).map(e=>h(e)).join(" "));if(n)return{name:n,source:"aria-labelledby"}}const n=f(e.getAttribute("aria-label"));if(n)return{name:n,source:"aria-label"};if(e instanceof HTMLInputElement){const t=e.type.toLowerCase();if("submit"===t||"button"===t||"reset"===t){const n="submit"===t?"Submit":"reset"===t?"Reset":"";return{name:f(e.value)||n,source:"value"}}if("image"===t)return{name:f(e.alt)||"Submit",source:"alt"}}if(H(e)){const t=f(O(e).map(e=>h(e,!0)).join(" "));if(t)return{name:t,source:"label"}}if(e instanceof HTMLImageElement){const t=f(e.alt);if(t)return{name:t,source:"alt"}}const o=R(e);if(T.has(o)||"SUMMARY"===e.tagName){const t=h(e);if(t)return{name:t,source:"content"}}const r=f(e.getAttribute("title"));if(r)return{name:r,source:"title"};const i=f(e.getAttribute("placeholder"));return i?{name:i,source:"placeholder"}:{name:"",source:"none"}}function _(e){const t=e.tagName;if("INPUT"===t)return"hidden"!==e.type.toLowerCase();if("BUTTON"===t||"SELECT"===t||"TEXTAREA"===t||"SUMMARY"===t)return!0;if(("A"===t||"AREA"===t)&&e.hasAttribute("href"))return!0;const n=f(e.getAttribute("role")).split(" ")[0].toLowerCase();return!(!n||!E.has(n))||!0===e.isContentEditable&&null!==e.getAttribute("contenteditable")}const B={docId:function(){const e=new Uint8Array(8);return crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}(),snapshotId:0,nextRef:1,refs:new Map,ids:new WeakMap,mutations:0},U={label:new Map,sibling:new Map};function q(){U.label=new Map,U.sibling=new Map}function z(e){const t=e;if("function"==typeof t.checkVisibility&&!t.checkVisibility({checkOpacity:!0,checkVisibilityCSS:!0}))return!1;const n=e.getBoundingClientRect();return!(n.width<=0||n.height<=0||e.closest('[inert],[aria-hidden="true"]'))}function D(e){return e.getClientRects()[0]??e.getBoundingClientRect()}function F(e){return z(e)?e:e instanceof HTMLInputElement&&("checkbox"===e.type||"radio"===e.type)?O(e).find(e=>z(e))??null:null}function G(e){if("true"===e.getAttribute("aria-disabled"))return!0;try{return e.matches(":disabled")}catch{return!1}}function j(e,t){if(!H(e)&&!e.isContentEditable)return null;if("password"===(e.getAttribute("type")??"").toLowerCase())return"password field";const n=(e.getAttribute("autocomplete")??"").toLowerCase();if(/\b(cc-[a-z-]+|current-password|new-password|one-time-code)\b/.test(n))return`autocomplete=${n}`;const o=[t,e.getAttribute("name"),e.id,e.getAttribute("aria-label"),e.getAttribute("placeholder")].join(" ").match(L);return o?`looks like "${o[0].toLowerCase()}"`:null}function W(e){const t={};if(G(e)&&(t.disabled=!0),e instanceof HTMLInputElement&&("checkbox"===e.type||"radio"===e.type)?t.checked=e.checked:e.hasAttribute("aria-checked")&&(t.checked="true"===e.getAttribute("aria-checked")),e.hasAttribute("aria-expanded")&&(t.expanded="true"===e.getAttribute("aria-expanded")),e.hasAttribute("aria-selected")&&(t.selected="true"===e.getAttribute("aria-selected")),e instanceof HTMLSelectElement){const n=e.selectedOptions[0];n&&(t.value=m(f(n.label||n.text),100)),t.options=e.options.length}else(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement)&&(e.required&&(t.required=!0),e instanceof HTMLInputElement&&("checkbox"===e.type||"radio"===e.type)||(t.filled=e.value.length>0),e.readOnly&&(t.readonly=!0));return t}function K(e){const t=U.label.get(e);if(void 0!==t)return t;const n=function(e){const t=f(e.getAttribute("aria-labelledby"));if(t){const n=f(t.split(" ").map(t=>w(e,t)).filter(Boolean).map(e=>h(e)).join(" "));if(n)return n}const n=f(e.getAttribute("aria-label"));if(n)return n;if(!e.matches("section,article,aside,nav,main,form,fieldset,dialog,header,footer,li,table,tr,[role=region],[role=group],[role=dialog],[role=alertdialog],[role=form],[role=tabpanel],[role=navigation],[role=complementary],[role=listitem],[role=row]"))return function(e){const t=e.parentElement;if(!t||!e.className||"string"!=typeof e.className)return!1;let n=U.sibling.get(t);if(!n){n=new Map;for(const e of Array.from(t.children)){if("string"!=typeof e.className||!e.className)continue;const t=`${e.tagName}.${e.className}`;n.set(t,(n.get(t)??0)+1)}U.sibling.set(t,n)}return(n.get(`${e.tagName}.${e.className}`)??0)>=2&&null!==e.querySelector(V)}(e)?Q(e):"";const o=e.querySelector(":scope > :is(h1,h2,h3,h4,h5,h6,legend,caption), :scope > header :is(h1,h2,h3,h4,h5,h6)");return o?h(o):e.matches(X)?function(e){const t=Array.from(e.children).filter(e=>e.matches("th,td,[role=cell],[role=gridcell],[role=rowheader],[role=columnheader]")).filter(e=>!e.querySelector(V)&&h(e)),n=t.find(e=>e.matches("th,[role=rowheader]"));return n?h(n):t[0]?h(t[0]):""}(e):e.matches(Y)?Q(e):""}(e);return U.label.set(e,n),n}const X="tr,[role=row]",Y="li,[role=listitem],article",V='a[href],button,input:not([type=hidden]),select,textarea,summary,[role=button],[role=link],[role=checkbox],[role=radio],[role=switch],[role=tab],[role=menuitem],[role=option],[role=combobox],[role=textbox],[contenteditable=""],[contenteditable=true]',Z=60;function Q(e){const t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);let n=0;for(let e=t.nextNode();e&&n<Z;e=t.nextNode(),n++){const t=e;if(!(t.matches("label,script,style,template")||_(t)||t.querySelector(V))&&(Array.from(t.childNodes).some(e=>e.nodeType===Node.TEXT_NODE&&f(e.textContent))&&z(t)))return m(h(t),60)}return""}function J(e){const t=[];let n=y(e);for(;n&&n!==document.documentElement;){const e=K(n);e&&t.push(e),n=y(n)}return t}function ee(e){let t=y(e);for(;t&&t!==document.documentElement;){const e=K(t);if(e)return e;t=y(t)}return""}function te(e,t){return`${e}|${p(t)}`}function ne(e,t,n,o){let r=B.ids.get(e);return r||(r="e"+B.nextRef++,B.ids.set(e,r)),B.refs.set(r,{el:new WeakRef(e),fingerprint:te(t,n),context:o}),r}function oe(e){return e.visible??=e.proxy?null!==F(e.el):z(e.el),e.visible}function re(){const e=[];for(const t of g(document)){if(!_(t))continue;const{name:n,source:o}=P(t);e.push({el:t,role:R(t),name:m(n,200),source:o,proxy:!0})}return e}function ie(e){const t=ee(e.el);return{ref:ne(e.el,e.role,e.name,t),role:e.role,name:m(e.name,100),context:t?m(t,60):void 0,visible:oe(e)}}function ae(e,t,n){return H(e)&&A.has(t)?"reversible":S.test(n)?"destructive":M.test(n)?"financial":$.test(n)||(e instanceof HTMLButtonElement&&"submit"===e.type&&null!==e.form||e instanceof HTMLInputElement&&("submit"===e.type||"image"===e.type)&&null!==e.form)&&"post"===e.form.method.toLowerCase()?"external_side_effect":"reversible"}function se(){if(document.querySelector('iframe[src*="recaptcha"],iframe[src*="hcaptcha"],iframe[src*="challenges.cloudflare.com"],iframe[title*="captcha" i],.g-recaptcha,.h-captcha,.cf-turnstile,#challenge-form,[data-sitekey]'))return{kind:"captcha",evidence:"a CAPTCHA widget is present"};const e=Array.from(document.querySelectorAll("h1,h2,h3,legend,[role=heading]")).filter(e=>z(e)).map(e=>h(e)).join(" | "),t=`${document.title} | ${e}`.match(C);if(t)return{kind:"captcha",evidence:`page asks: "${t[0]}"`};if(document.querySelector('input[autocomplete="one-time-code"]'))return{kind:"mfa",evidence:"a one-time-code field is present"};const n=e.match(N);return n?{kind:"mfa",evidence:`page asks: "${n[0]}"`}:null}function le(e){return!(e.overlay||e.interactive||e.insideInteractive||e.insideClickableRegion)&&!!(e.cursorPointer||e.inlineOnClick||e.tabbable)&&!e.parentCursorPointer&&!e.containsInteractive&&e.visible&&e.enabled&&e.hasText}const ce="clickable",ue=new Set,de=new WeakSet;function fe(e){try{return getComputedStyle(e).cursor}catch{return""}}function pe(e,t){let n,o=null;const r=()=>void 0===n?n=y(e):n;let a=null,s=null,l=null;const c=()=>{if(l)return l;const e={interactive:!1,clickable:!1};for(let n=r();n;n=y(n))_(n)&&(e.interactive=!0),t.has(n)&&(e.clickable=!0);return l=e,e};return{get overlay(){return i(e)},get interactive(){return _(e)},get insideInteractive(){return c().interactive},get insideClickableRegion(){return c().clickable},get cursorPointer(){return"pointer"===(o??=fe(e))},get inlineOnClick(){return e.hasAttribute("onclick")},get tabbable(){return e.tabIndex>=0},get parentCursorPointer(){const e=r();return null!==e&&"pointer"===(a??=fe(e))},get containsInteractive(){return null!==e.querySelector(V)},get visible(){return z(e)},get enabled(){return!G(e)},get hasText(){return(s??=me(e)).length>0}}}function me(e){const t=e.innerText;return f("string"==typeof t&&t?t:h(e))}function he(e){return m(me(e),200)}function ge(){const e=new Set,t=[];for(const n of g(document))le(pe(n,e))&&(e.add(n),t.push({el:n,role:ce,name:he(n),source:"content",proxy:!1}));return t}function be(e){let t="";for(const n of Array.from(e.childNodes))n.nodeType===Node.TEXT_NODE&&(t+=n.textContent??"");return t}function xe(e){for(let t=y(e);t;t=y(t))if(_(t))return!0;return!1}function ye(e,t,n={}){return{ok:!1,code:e,message:t,...n}}function ve(e){return`"${m(e,60)}"`}function we(e,t,n={}){return ye("TARGET_NOT_INTERACTABLE",`${e} ${t}`,n)}function ke(){const e=b();if(e)return e;const t=Array.from(document.querySelectorAll('[aria-modal="true"]')).filter(e=>e.matches("dialog,[role=dialog],[role=alertdialog]")&&z(e));return t.length?t[t.length-1]:null}function Ee(e,t){const n=p(t),o=e.filter(e=>p(ee(e.el))===n);return o.length?o:e.filter(e=>J(e.el).some(e=>p(e)===n))}function Te(e){const t=B.refs.get(e),n=t?.el.deref();if(!t||!n)return ye("STALE_SNAPSHOT",`Reference ${e} is unknown on this page. Run page_inspect again.`);if(!n.isConnected)return ye("STALE_SNAPSHOT",`The element behind ${e} was removed from the page. Run page_inspect again.`,{staleFingerprint:t.fingerprint,staleContext:t.context});const o=function(e){return de.has(e)||function(e){return le(pe(e,ue))}(e)?ce:R(e)}(n),{name:r,source:i}=function(e,t){return t===ce?{name:he(e),source:"content"}:P(e)}(n,o);return te(o,r)!==t.fingerprint?ye("STALE_SNAPSHOT",`The element behind ${e} changed (now ${o} "${m(r,40)}"). Run page_inspect again.`,{staleFingerprint:t.fingerprint,staleContext:t.context}):{el:n,role:o,name:r,source:i,proxy:!0}}function Ae(e){if(e.ref)return Te(e.ref);const t=e.role?.toLowerCase(),n=!(t&&!E.has(t)&&"generic"!==t&&"clickable"!==t);let o=n?re():function(e){const t=[];for(const n of g(document)){if(R(n)!==e)continue;const{name:o,source:r}=P(n);t.push({el:n,role:e,name:m(o,200),source:r,proxy:!1})}return t}(t);const r=n&&("clickable"===t||!t&&(Boolean(e.name)||Boolean(e.text)));r&&(o=o.concat(ge())),t&&(o=o.filter(e=>e.role===t)),n&&(o=function(e){const t=ke();return t?e.filter(e=>v(t,e.el)):e}(o)),e.within&&(o=Ee(o,e.within));const a=[],s=e.name??e.label??e.text;if(e.label){const t=p(e.label);a.push({label:"label",pick:e=>H(e.el)&&"placeholder"!==e.source&&p(e.name)===t})}if(e.href){const t=e.href;a.push({label:"href",pick:e=>e.el instanceof HTMLAnchorElement&&((e.el.getAttribute("href")??"")===t||e.el.href===t||e.el.pathname===t)})}if(e.name||e.text){const t=p(e.name??e.text);a.push({label:"name",pick:e=>"placeholder"!==e.source&&p(e.name)===t})}if(e.text){const t=p(e.text);a.push({label:"text",pick:e=>p(h(e.el))===t}),a.push({label:"text in a clickable region",pick:e=>"clickable"===e.role&&function(e,t){if(!t)return!1;const n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);for(let e=n.nextNode();e;e=n.nextNode()){const n=e;if(0===n.children.length&&p(h(n))===t)return!0}return!1}(e.el,t)}),a.push({label:"placeholder",pick:e=>p(e.el.getAttribute("placeholder"))===t})}if(!a.length&&e.role&&a.push({label:"role",pick:()=>!0}),!a.length)return ye("INVALID_ARGUMENT","A target needs one of: ref, name, label, text, href (optionally with role and within).");for(const t of a){const n=o.filter(t.pick);if(!n.length)continue;const r=n.filter(oe),i=r.length?r:n;return 1===i.length?i[0]:ye("TARGET_AMBIGUOUS",`${i.length} elements match ${Se(e)} by ${t.label}. Nothing was done. `+(i.length>50?"The first 50 are listed. ":"")+"Use a ref from the candidates, or add role/within (a candidate's context) to narrow it.",{candidates:i.slice(0,50).map(ie)})}if(e.text&&r){let t=function(e,t){const n=new Set,o=[];if(!e)return o;for(const r of g(document)){if(t&&!v(t,r))continue;if(p(0===r.children.length?h(r):be(r))!==e)continue;if(i(r)||_(r)||xe(r)||!z(r))continue;if(r.closest("th, thead, [role=columnheader]"))continue;const a=r.closest("tr, [role=row], li, [role=listitem]"),s=a&&!a.querySelector(V)?a:r;n.has(s)||G(s)||(n.add(s),de.add(s),o.push({el:s,role:ce,name:he(s),source:"content",proxy:!1}))}return o}(p(e.text),ke());if(e.within&&(t=Ee(t,e.within)),1===t.length)return t[0];if(t.length>1)return ye("TARGET_AMBIGUOUS",`${t.length} elements show ${Se(e)}. Nothing was done. Use a ref from the candidates, or add within (a candidate's context) to narrow it.`,{candidates:t.slice(0,50).map(ie)})}const l=p(s??e.href??""),c=l?o.filter(e=>p(e.name).includes(l)&&oe(e)).slice(0,8).map(ie):[];return ye("TARGET_NOT_FOUND",`No element matches ${Se(e)}.`,c.length?{candidates:c}:{})}function Se(e){const t=[];return e.role&&t.push(`role=${e.role}`),e.name&&t.push(`name="${e.name}"`),e.label&&t.push(`label="${e.label}"`),e.text&&t.push(`text="${e.text}"`),e.href&&t.push(`href="${e.href}"`),e.within&&t.push(`within="${e.within}"`),t.join(" ")||"(empty target)"}const Me=new WeakMap,$e=[];function Le(e,t){const n=Me.get(e);return Boolean(n&&n.bursts.length>=3&&t-n.bursts[0]<3e3&&t-n.last<3e3)}function Ce(e){if("childList"!==e.type||0===e.addedNodes.length&&0===e.removedNodes.length)return!1;for(const t of e.addedNodes)if(!i(t))return!1;for(const t of e.removedNodes)if(!i(t))return!1;return!0}new MutationObserver(e=>{const t=performance.now();for(const n of e){if(Ce(n))continue;B.mutations+=1;let e=Me.get(n.target);e||(e={last:-1/0,bursts:[]},Me.set(n.target,e)),t-e.last>50&&(e.bursts.push(t),e.bursts.length>3&&e.bursts.shift()),e.last=t,$e.push({seq:B.mutations,at:t,node:new WeakRef(n.target)}),$e.length>2e3&&$e.shift()}}).observe(document,{subtree:!0,childList:!0,attributes:!0,characterData:!0});const Ne=['[aria-busy="true"]','[role="progressbar"]',"progress",'[role="status"]','[role="alert"]','[class*="spinner" i]','[class*="loading" i]','[class*="loader" i]','[id*="spinner" i]','[id*="loading" i]'].join(", "),Ie=/load|wait|fetch|progress|processing|please|searching|saving/i;let Re=null,He=0;const Oe=new WeakMap;function Pe(e){q();const{name:t,source:n}=P(e),o=R(e),r=H(e)&&t&&"placeholder"!==n?{label:t}:t&&"placeholder"===n?{text:t}:{role:o,name:t},i=[ee(e),...J(e)].filter((e,t,n)=>e&&n.indexOf(e)===t);for(const n of[r,...i.map(e=>({...r,within:e}))]){if(!t)break;const o=Ae(n);if("el"in o&&o.el===e)return{target:n,ambiguous:!1,name:t}}return{target:i[0]?{...r,within:i[0]}:r,ambiguous:!0,name:t}}function _e(e,t){try{chrome.runtime.sendMessage({source:"engine-recorder",step:{...e,id:`${B.docId}-${++He}`},value:t})}catch{}}function Be(e){return e instanceof HTMLInputElement&&!["checkbox","radio","button","submit","reset","file","image","hidden","range","color"].includes(e.type)||e instanceof HTMLTextAreaElement}function Ue(e){const t=e.value;if(Oe.get(e)===t)return;Oe.set(e,t);const{target:n,ambiguous:o,name:r}=Pe(e),i=Boolean(j(e,r));_e({tool:"field_fill",args:{target:n},label:`Type into "${r||"field"}"`,param:r||"value",sensitive:i,ambiguous:o},i?void 0:t)}const qe="data-browserzap-comment-target";let ze=null,De=0;function Fe(e){try{chrome.runtime.sendMessage({source:"engine-comment",...e})}catch{}}function Ge(e){return e.composedPath().some(e=>e instanceof Node&&i(e))}function je(e){const t=[];let n=e;for(;n&&t.length<6&&n!==document.documentElement&&n!==document.body;){let e=n.tagName.toLowerCase();if(n.id)e+=`#${n.id}`;else{const t=Array.from(n.classList).filter(e=>!/^\d/.test(e)).slice(0,2);t.length&&(e+=`.${t.join(".")}`);const o=y(n);if(o){const t=Array.from(o.children).filter(e=>e.tagName===n.tagName);t.length>1&&(e+=`:nth-of-type(${t.indexOf(n)+1})`)}}if(t.unshift(e),n.id)break;n=y(n)}return t.join(" > ")}function We(e){q();const{name:t}=P(e),{target:n,ambiguous:o}=Pe(e),r=e.getBoundingClientRect(),i=H(e)||e.isContentEditable,a=e.getAttribute("data-testid")??e.getAttribute("data-test")??e.getAttribute("data-cy")??e.getAttribute("data-test-id"),s={role:R(e),name:t||null,target:n,targetUnique:!o,tag:e.tagName.toLowerCase(),id:e.id||null,testId:a||null,classes:Array.from(e.classList).slice(0,6),domPath:je(e),rect:{x:Math.round(r.x),y:Math.round(r.y),width:Math.round(r.width),height:Math.round(r.height)}};if(i)s.sensitive=Boolean(j(e,t));else{const t=f(e.innerText??e.textContent??"");t&&(s.text=t.length>160?`${t.slice(0,159)}…`:t)}return s}function Ke(e){q();const{name:t}=P(e),n=R(e),o=e.tagName.toLowerCase(),r=n&&"generic"!==n?n:o;return t?`${r} "${t.length>40?`${t.slice(0,39)}…`:t}"`:r}function Xe(e,t){const n=t.getBoundingClientRect();a(e,{transform:`translate(${n.left}px, ${n.top}px)`,width:`${Math.max(n.width,2)}px`,height:`${Math.max(n.height,2)}px`})}function Ye(){if(ze){ze.frame=0,ze.picked&&Xe(ze.highlight,ze.picked);for(const e of ze.pins.values()){if(!e.el.isConnected){e.badge.style.display="none";continue}const t=e.el.getBoundingClientRect();a(e.badge,{display:"flex",transform:`translate(${Math.max(t.left-10,2)}px, ${Math.max(t.top-10,2)}px)`})}}}function Ve(){ze&&!ze.frame&&(ze.frame=requestAnimationFrame(Ye))}function Ze(){ze?.card&&(ze.card.remove(),ze.card=null)}function Qe(e){if(!ze)return{ok:!1};const t=String(e.cid??""),n=Number(e.n)||ze.next;let o=e.el instanceof Element?e.el:null;if(!o)try{o=document.querySelector(`[${qe}="${CSS.escape(t)}"]`)}catch{o=null}if(document.querySelectorAll(`[${qe}="${CSS.escape(t)}"]`).forEach(e=>e.removeAttribute(qe)),!o)return{ok:!1};ze.pins.get(t)?.badge.remove();const r=function(e){const t=c();return u({position:"fixed",left:"0",top:"0",width:"20px",height:"20px","border-radius":"50%",display:"flex","align-items":"center","justify-content":"center",background:t.strong,color:t.ink,font:"700 11px/1 system-ui, sans-serif","box-shadow":"0 1px 4px rgba(0,0,0,.4)"},String(e))}(n);return ze.host.root.appendChild(r),ze.pins.set(t,{n,el:o,badge:r}),ze.next=Math.max(ze.next,n+1),Ye(),{ok:!0}}let Je=null,et=null,tt=null,nt=null,ot=null;function rt(){null!==tt&&(clearTimeout(tt),tt=null)}function it(e){if(!Je?.el.isConnected||!et)return;const t=et.pill,n=t.getBoundingClientRect();e.x>=n.left-4&&e.x<=n.right+4&&e.y>=n.top-4&&e.y<=n.bottom+4&&(t.style.setProperty("pointer-events","none"),setTimeout(()=>{et?.pill===t&&t.style.setProperty("pointer-events","auto")},1200))}function at(e){if(rt(),!Je)return;const t=Je;if(Je=null,et=null,e||s()||"function"!=typeof t.el.animate)return void t.el.remove();const n=()=>t.el.remove();t.el.animate([{opacity:1},{opacity:0}],{duration:140,easing:"ease-out"}).finished.then(n).catch(n)}function st(){if(null!==ot&&(clearTimeout(ot),ot=null),!nt)return;const e=nt;nt=null,removeEventListener("scroll",e.follow,!0),removeEventListener("resize",e.follow),e.host.el.remove()}const lt=[404,500,502,503,504],ct=[/\bsomething went wrong\b/,/\b(?:we(?:'ve| have) )?encountered an error\b/,/\binternal server error\b/,/\bservice (?:temporarily )?unavailable\b/,/\b(?:an )?unexpected error (?:has )?occurred\b/,/\ban error occurred\b/,/\bthis page (?:isn'?t|is not) working\b/,/\bpage not found\b/],ut=/^(?:error\s+|http\s+)?(\d{3})(?!\d)/,dt=/^(?:error\s+|http\s+)?\d{3}\s*$/;function ft(e){const t=e.trim().toLowerCase().match(ut);if(!t)return null;const n=Number(t[1]);return lt.includes(n)?n:null}function pt(e){const t=e.toLowerCase().match(new RegExp(ct.map(e=>e.source).join("|")));return t?t[0].slice(0,120):null}function mt(e){const t=document.querySelector("main")??document.body;return t?function(e){const t=e.headings.filter(e=>e.level<=2&&e.text.trim()).slice(0,2);for(const e of t){const t=ft(e.text);if(null!==t&&!(e.level>1&&dt.test(e.text.trim())))return{status:t,text:e.text.trim().slice(0,120)}}for(const e of t){const t=pt(e.text);if(t)return{status:null,text:t}}const n=pt(e.text);return n&&e.network5xx?{status:null,text:n}:null}({headings:Array.from(document.querySelectorAll("h1,h2")).filter(e=>z(e)).slice(0,2).map(e=>({level:Number(e.tagName[1]),text:m(f(h(e)),120)})),text:f(t.innerText??"").slice(0,4e3),network5xx:e}):null}function ht(e){const t=e.target??{},n=String(e.purpose??"click"),o=Ae(t);if("ok"in o)return o;const{el:r,role:a,name:s}=o,l=ee(r),c={ref:ne(r,a,s,l),role:a,name:m(s,100),context:l?m(l,60):void 0};if("probe"!==n){if(G(r))return we(`${a} ${ve(s)}`,"is disabled.",{target:c});if(!F(r))return we(`${a} ${ve(s)}`,"is not visible.",{target:c})}const u={ok:!0,...c,docId:B.docId,risk:ae(r,a,s),sensitive:j(r,s),state:W(r),challenge:se(),mutations:B.mutations,url:location.href,hidden:x()},d=e.scroll?F(r):null;if(e.scroll&&d){const e=d;e.scrollIntoView({block:"center",inline:"center",behavior:"instant"});const t=D(e),n=Math.round(t.left+t.width/2),o=Math.round(t.top+t.height/2);if(n<0||o<0||n>innerWidth||o>innerHeight)return we(`${a} ${ve(s)}`,"could not be scrolled into view.",{target:c});const l=e.getRootNode().elementFromPoint(n,o);if(null===l||!(i(l)||v(e,l)||v(r,l)||l instanceof HTMLLabelElement&&O(r).includes(l))){const e=l?`${l.tagName.toLowerCase()} "${m(P(l).name||h(l),40)}"`:"nothing";return we(`${a} ${ve(s)}`,`is covered by ${e}.`,{target:c})}u.point={x:n,y:o},u.pageRect={x:t.left+scrollX,y:t.top+scrollY,width:t.width,height:t.height},u.mutations=B.mutations}return u}function gt(e){return e instanceof HTMLTextAreaElement?e:e instanceof HTMLInputElement?["checkbox","radio","button","submit","reset","image","file","range","color","hidden"].includes(e.type)?null:e:e.isContentEditable?e:null}function bt(){let e=document.activeElement;for(;e?.shadowRoot?.activeElement;)e=e.shadowRoot.activeElement;return e}function xt(e,t){const n=e instanceof HTMLTextAreaElement?HTMLTextAreaElement.prototype:HTMLInputElement.prototype,o=Object.getOwnPropertyDescriptor(n,"value")?.set;o?o.call(e,t):e.value=t,e.dispatchEvent(new Event("input",{bubbles:!0,composed:!0}))}function yt(e){const t=Te(String(e.ref));if("ok"in t)return t;const n=String(e.value??""),o=t.el;let r;if(o instanceof HTMLInputElement||o instanceof HTMLTextAreaElement)o.focus({preventScroll:!0}),xt(o,n),r="nativeSetter";else{const e=o;e.focus({preventScroll:!0});const t=document.createRange();t.selectNodeContents(e);const i=getSelection();i?.removeAllRanges(),i?.addRange(t);const a=n?document.execCommand("insertText",!1,n):document.execCommand("delete");a||(e.textContent=n),r=a?"insertText":"textContent"}o.dispatchEvent(new Event("change",{bubbles:!0}));const i=function(e){return e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement?e.value:e.innerText??""}(o);return{ok:!0,verified:o instanceof HTMLInputElement&&"number"===o.type?Number(i)===Number(n):f(i)===f(n),method:r,length:i.length,mutations:B.mutations}}let vt=null,wt=null,kt=null,Et=null,Tt=!1;function At(e){return`translate3d(${e.x-1}px, ${e.y-1}px, 0)`}function St(e){e.getAnimations().forEach(e=>e.cancel())}function Mt(){if(vt?.el.isConnected&&wt)return wt;const t=d(vt,e);return vt=t,t?(wt=function(e){const t=c(),n=document.createElement("div");n.setAttribute("data-bz-marker","arrow"),a(n,{position:"absolute",left:"0",top:"0",width:"18px",height:"22px","transform-origin":"1px 1px","will-change":"transform, opacity",opacity:"0","pointer-events":"none"});const o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.setAttribute("width","18"),o.setAttribute("height","22"),o.setAttribute("viewBox","0 0 18 22"),o.setAttribute("aria-hidden","true");const r=document.createElementNS("http://www.w3.org/2000/svg","path");r.setAttribute("d","M1 1v16.2l4.4-4 2.7 7.2 2.9-1.2-2.7-7.1 5.9-.5z"),r.setAttribute("fill","#ffffff"),r.setAttribute("stroke","#111111"),r.setAttribute("stroke-width","1.4"),r.setAttribute("stroke-linejoin","round"),o.appendChild(r),n.appendChild(o);const i=u({position:"absolute",left:"0",top:"0",width:"9px",height:"18px",display:"none",opacity:"0","pointer-events":"none","will-change":"transform, opacity"});i.setAttribute("data-bz-marker","caret");const s=`${t.strong}`,l="0 0 0 0.5px rgba(255, 255, 255, 0.85), 0 0 0 1.5px rgba(17, 17, 17, 0.35)",d=u({position:"absolute",left:"4px",top:"0",width:"1.5px",height:"100%",background:s,"box-shadow":l}),f=u({position:"absolute",left:"0",top:"0",width:"9px",height:"2px",background:s,"box-shadow":l}),p=u({position:"absolute",left:"0",bottom:"0",width:"9px",height:"2px",background:s,"box-shadow":l});i.append(d,f,p);const m=document.createElement("div");a(m,{position:"absolute",left:"0",top:"0",width:"30px",height:"30px","border-radius":"50%","box-sizing":"border-box",border:`2px solid ${t.strong}`,background:t.soft,opacity:"0","pointer-events":"none"});const h=document.createElement("div");a(h,{position:"absolute",left:"0",top:"0","max-width":"160px",padding:"2px 7px","border-radius":"5px",background:"rgba(17, 17, 17, 0.9)",color:"#ffffff","box-shadow":"0 2px 8px rgba(0, 0, 0, 0.28)",font:'600 10px/1.5 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',"white-space":"nowrap","text-overflow":"ellipsis",overflow:"hidden",opacity:"0","pointer-events":"none"}),h.textContent="click";const g=document.createElement("div");return a(g,{position:"absolute",left:"0",top:"0","box-sizing":"border-box",border:`2px solid ${t.strong}`,"border-radius":"6px","box-shadow":`0 0 0 3px ${t.soft}`,opacity:"0","will-change":"opacity","pointer-events":"none"}),e.append(g,m,n,i,h),{cursor:n,ripple:m,label:h,outline:g,caret:i}}(t.root),wt):(wt=null,null)}const $t=new Set(["","text","search","url","tel","email","password","number"]);function Lt(e){const t=function(){const e=bt();return e&&e!==document.body&&e!==document.documentElement&&gt(e)?e:null}(),n=t?function(e){const t=e.getBoundingClientRect();if(t.width<=0||t.height<=0)return null;const n=getComputedStyle(e),o=parseFloat(n.lineHeight)||1.35*(parseFloat(n.fontSize)||13),r=t.left+(parseFloat(n.borderLeftWidth)||0)+(parseFloat(n.paddingLeft)||0),i=t.right-(parseFloat(n.borderRightWidth)||0)-(parseFloat(n.paddingRight)||0),a=Math.max(r,i-1),s=Math.min(Math.max(o,12),Math.max(t.height-2,12));if(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement){const n=e instanceof HTMLInputElement?e.type:"textarea";let o="";if(e instanceof HTMLTextAreaElement||$t.has(n)){const t=e instanceof HTMLInputElement&&"password"===n?"•".repeat(e.value.length):e.value;o=e instanceof HTMLTextAreaElement?t.slice(t.lastIndexOf("\n")+1):t}const i=Math.min(Math.max(r+function(e,t){if(!t)return 0;const n=getComputedStyle(e);try{const e=document.createElement("canvas").getContext("2d");if(e)return e.font=n.font&&""!==n.font?n.font:`${n.fontStyle} ${n.fontWeight} ${n.fontSize} ${n.fontFamily}`,e.measureText(t).width}catch{}return t.length*(parseFloat(n.fontSize)||13)*.55}(e,o)-e.scrollLeft,r),a);return{x:i,y:t.top+(t.height-s)/2,height:s}}const l=getSelection(),c=l&&l.rangeCount?l.getRangeAt(0):null;if(c&&l?.isCollapsed&&function(e,t){for(let n=t;n;n=n.parentNode)if(n===e)return!0;return!1}(e,c.startContainer)){const e=c.getBoundingClientRect();if(e.height>0)return{x:Math.min(Math.max(e.left,r),a),y:e.top,height:Math.min(Math.max(e.height,12),t.height)}}return{x:r,y:t.top+(t.height-s)/2,height:s}}(t):null;return!(!t||!n||(St(e.caret),e.caret.style.display="block",e.caret.style.height=`${Math.round(n.height)}px`,e.caret.style.transform=`translate3d(${Math.round(n.x-4)}px, ${Math.round(n.y)}px, 0)`,e.caret.style.opacity="1",e.cursor.style.display="none",e.cursor.style.opacity="0",s()||e.caret.animate([{opacity:1},{opacity:0}],{duration:560,iterations:1/0,direction:"alternate",easing:"steps(1, end)"}),0))}function Ct(e){St(e.caret),e.caret.style.display="none",e.caret.style.opacity="0",e.cursor.style.display="block"}function Nt(e,t){const n=kt;if(kt=t,St(e.cursor),e.cursor.style.opacity="1",!n||s()||Math.hypot(t.x-n.x,t.y-n.y)<2)return e.cursor.style.transform=At(t),null;const o=Math.hypot(t.x-n.x,t.y-n.y),r=Math.max(90,Math.min(240,o/3));return e.cursor.style.transform=At(n),e.cursor.animate([{transform:At(n)},{transform:At(t)}],{duration:r,easing:"cubic-bezier(0.2, 0.7, 0.3, 1)",fill:"forwards"})}function It(e,t,n){St(e.label),e.label.textContent=n||"click",e.label.style.transform=`translate3d(${t.x+12}px, ${t.y+14}px, 0)`,s()?e.label.style.opacity="1":e.label.animate([{opacity:0,transform:`translate3d(${t.x+12}px, ${t.y+20}px, 0)`},{opacity:1,transform:`translate3d(${t.x+12}px, ${t.y+14}px, 0)`,offset:.18},{opacity:1,transform:`translate3d(${t.x+12}px, ${t.y+14}px, 0)`,offset:.7},{opacity:0,transform:`translate3d(${t.x+12}px, ${t.y+10}px, 0)`}],{duration:700,easing:"ease-out"})}function Rt(e,t){return"click"===e.phase||"press"===e.phase?(function(e,t){const n=Mt();n&&(it(e),St(n.ripple),St(n.outline),n.outline.style.opacity="0",Ct(n),n.cursor.style.opacity="1",n.cursor.style.transform=At(e),It(n,e,t),s()||(St(n.cursor),n.cursor.animate([{transform:`${At(e)} scale(1)`},{transform:`${At(e)} scale(0.86)`,offset:.35},{transform:`${At(e)} scale(1)`}],{duration:180,easing:"ease-out"}),n.ripple.animate([{transform:`translate3d(${e.x-15}px, ${e.y-15}px, 0) scale(0.25)`,opacity:.9},{transform:`translate3d(${e.x-15}px, ${e.y-15}px, 0) scale(1.3)`,opacity:0}],{duration:420,easing:"cubic-bezier(0.16, 1, 0.3, 1)"})),kt=e)}(e.point,e.label),Promise.resolve()):"type"===e.phase||"label"===e.phase?(function(e,t,n,o){const r=Mt();r&&(St(r.outline),r.outline.style.opacity="0",o&&Lt(r)||(Ct(r),Nt(r,e)),It(r,e,t),n&&function(e,t){St(e.outline);const n=Math.round(t.x-scrollX),o=Math.round(t.y-scrollY);a(e.outline,{width:`${Math.max(1,Math.round(t.width))}px`,height:`${Math.max(1,Math.round(t.height))}px`,transform:`translate3d(${n}px, ${o}px, 0)`}),s()?e.outline.style.opacity="1":e.outline.animate([{opacity:0},{opacity:1,offset:.15},{opacity:1,offset:.7},{opacity:0}],{duration:900,easing:"ease-out"})}(r,n))}(e.point,e.label||"type",e.rect,t),Promise.resolve()):async function(e,t){const n=Mt();if(!n)return;it(e);const o=null===kt;if(t&&Lt(n))return void(kt=e);Ct(n);const r=Nt(n,e);if(o&&!s()&&(St(n.cursor),n.cursor.animate([{opacity:0},{opacity:1}],{duration:120,easing:"ease-out"})),!r)return;const i=Number(r.effect?.getTiming().duration)||240;await Promise.race([r.finished.catch(()=>{}),new Promise(e=>setTimeout(e,i+120))]),n.cursor.style.transform=At(e),r.cancel()}(e.point,t)}document.addEventListener("visibilitychange",()=>{"visible"===document.visibilityState&&Tt&&Et&&(document.fullscreenElement&&vt&&vt.el.parentElement!==document.fullscreenElement&&(vt.el.remove(),vt=null,wt=null),Rt(Et,"arrow"!==Et.marker).catch(()=>{}))});let Ht=null,Ot=null,Pt=null,_t=null,Bt="";function Ut(e){const t=e.replace(/\s+/g," ").trim();return t.length>320?`${t.slice(0,319)}…`:t}function qt(e){e.preventDefault(),e.stopPropagation()}function zt(){_t&&(removeEventListener("scroll",_t,!0),removeEventListener("resize",_t),_t=null),Ot&&(Ot.frame.style.setProperty("opacity","0"),Ot.frame.getAnimations().forEach(e=>e.cancel()))}function Dt(){const e=Pt;if(!e)return{ok:!0,skipped:!0};const t=d(Ht,o,{role:"alertdialog",label:"BrowserZap: your turn"});if(Ht=t,!t)return Ot=null,{ok:!0,skipped:!0};Ot||(Ot=function(e){const t=c(),n=u({position:"absolute",left:"50%",bottom:"28px",transform:"translateX(-50%)",width:"min(440px, calc(100vw - 32px))","box-sizing":"border-box",display:"flex","flex-direction":"column","align-items":"flex-start",gap:"7px",padding:"12px 15px 13px","border-radius":"12px",background:"rgba(17, 17, 17, 0.96)",color:"#ffffff",border:`1px solid ${t.strong}`,"box-shadow":"0 12px 36px rgba(0, 0, 0, 0.42)",font:'500 13px/1.45 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',"pointer-events":"none"}),o=u({font:'700 12px/1.4 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',"letter-spacing":"0.06em","text-transform":"uppercase"},"Your turn"),r=u({"overflow-wrap":"anywhere","white-space":"pre-wrap"}),i=document.createElement("button");i.type="button",i.tabIndex=-1,i.textContent="Done",a(i,{appearance:"none",margin:"2px 0 0",padding:"6px 20px",border:"0","border-radius":"999px",background:t.strong,color:t.ink,font:'700 12.5px/1.5 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',cursor:"pointer","pointer-events":"auto"}),i.addEventListener("pointerdown",qt),i.addEventListener("mousedown",qt),i.addEventListener("click",e=>{if(qt(e),e.isTrusted)try{chrome.runtime.sendMessage({source:"engine-handoff",type:"done",pauseId:Bt}).catch(()=>{})}catch{}}),n.append(o,r,i);const s=u({position:"absolute",left:"0",top:"0","box-sizing":"border-box","will-change":"transform",opacity:"0","pointer-events":"none"});s.setAttribute("data-bz-ring","field");const l=u({position:"absolute",inset:"0","box-sizing":"border-box",border:`2px solid ${t.strong}`,"border-radius":"8px","box-shadow":`0 0 0 3px ${t.soft}`,opacity:"0.9"});return s.append(l),e.append(s,n),{card:n,message:r,done:i,frame:s,box:l}}(t.root)),Ot.message.textContent=e.message,e.field||(e.field=function(e){if(!e)return null;if(e.ref){const t=B.refs.get(e.ref)?.el.deref();if(t?.isConnected)return t}if(e.name||e.label){const t=Ae({role:e.role,name:e.name,label:e.label,within:e.within});if(!("ok"in t))return t.el}return null}(e.target));const n=e.field,r=function(e){if(!e||null===gt(e))return!1;try{e.focus({preventScroll:!1})}catch{return!1}return bt()===e}(n);return function(e){if(!Ot)return;if(zt(),!e||!e.isConnected)return;const t=Ot,n=()=>{if(!e.isConnected)return;const n=e.getBoundingClientRect();a(t.frame,{width:`${Math.round(n.width+6)}px`,height:`${Math.round(n.height+6)}px`,transform:`translate3d(${Math.round(n.left-3)}px, ${Math.round(n.top-3)}px, 0)`,opacity:"1"})};n(),_t=n,addEventListener("scroll",_t,{capture:!0,passive:!0}),addEventListener("resize",_t,{passive:!0}),s()||t.box.animate([{opacity:.5,transform:"scale(1)"},{opacity:1,transform:"scale(1.015)"}],{duration:1100,iterations:1/0,direction:"alternate",easing:"ease-in-out"})}(n),{ok:!0,ringed:Boolean(n),focused:r}}function Ft(e){if(!e||e===document.body||e===document.documentElement)return{};if(!z(e))return{};const t=D(e);if(t.width<=0||t.height<=0)return{};const n=Math.round(t.left+Math.min(t.width/2,18)),o=Math.round(t.top+t.height/2);if(n<0||o<0||n>innerWidth||o>innerHeight)return{};const{name:r}=P(e);return{point:{x:n,y:o},ref:ne(e,R(e),r,ee(e))}}function Gt(e){return!e||e instanceof HTMLTextAreaElement||e.isContentEditable?null:e.form??e.closest("form")}function jt(e){return e.querySelector("button[type=submit],button:not([type]),input[type=submit],input[type=image]")}function Wt(e){return!!e&&(e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement||(e instanceof HTMLInputElement?null!==gt(e):!0===e.isContentEditable))}document.addEventListener("visibilitychange",()=>{"visible"===document.visibilityState&&Pt&&Dt()});const Kt={ArrowDown:()=>({top:40}),ArrowUp:()=>({top:-40}),ArrowRight:()=>({left:40}),ArrowLeft:()=>({left:-40}),PageDown:e=>({top:e}),PageUp:e=>({top:-e}),Space:e=>({top:e}),Home:()=>({to:"start"}),End:()=>({to:"end"})},Xt="data-browserzap-upload",Yt={loadInfo:function(){const e=performance.getEntriesByType("navigation")[0],t=e=>"number"==typeof e&&e>0?Math.round(e):null;return{ok:!0,docId:B.docId,readyState:document.readyState,httpStatus:e?.responseStatus||null,ttfbMs:t(e?.responseStart),domContentLoadedMs:t(e?.domContentLoadedEventStart),loadMs:t(e?.loadEventEnd)}},busyState:function(){let e=null;for(const t of Array.from(document.querySelectorAll(Ne))){if(!z(t))continue;const n=t.getAttribute("role"),o=f(t.innerText??t.textContent);if("status"!==n&&"alert"!==n||Ie.test(o)){if(("progressbar"===n||"PROGRESS"===t.tagName)&&("PROGRESS"===t.tagName?t.hasAttribute("value"):t.hasAttribute("aria-valuenow"))&&!Ie.test(`${o} ${t.getAttribute("aria-label")??""}`))continue;e=m(o||t.getAttribute("aria-label")||n||t.tagName.toLowerCase(),60);break}}return{ok:!0,docId:B.docId,readyState:document.readyState,mutations:B.mutations,indicator:e}},recordStart:function(){if(Re)return{ok:!0,recording:!0};const e=e=>{if(!e.isTrusted)return;const t=function(e){let t=e instanceof Element?e:null;for(;t&&!_(t);)t=y(t);return t}(e.composedPath()[0]??null);if(!t||Be(t)||t instanceof HTMLSelectElement)return;if(t instanceof HTMLInputElement&&("checkbox"===t.type||"radio"===t.type))return;const n=B.mutations,o=location.href,{target:r,ambiguous:i,name:a}=Pe(t);_e({tool:"element_click",args:{target:r},label:`Click ${R(t)} "${a||"(unnamed)"}"`,ambiguous:i,expectChange:!0});const s=`${B.docId}-${He}`;setTimeout(()=>{if(B.mutations===n&&location.href===o)try{chrome.runtime.sendMessage({source:"engine-recorder",patch:{id:s,expectChange:!1}})}catch{}},800)},t=e=>{if(!e.isTrusted)return;const t=e.composedPath()[0];if(t instanceof Element)if(Be(t))Ue(t);else if(t instanceof HTMLInputElement&&("checkbox"===t.type||"radio"===t.type)){if("radio"===t.type&&!t.checked)return;const{target:e,ambiguous:n,name:o}=Pe(t);_e({tool:"field_fill",args:{target:e,value:String(t.checked)},label:`${t.checked?"Check":"Uncheck"} "${o}"`,ambiguous:n})}else if(t instanceof HTMLSelectElement){const e=t.selectedOptions[0];if(!e)return;const{target:n,ambiguous:o,name:r}=Pe(t),i=f(e.label||e.text);_e({tool:"select_option",args:{target:n,option:{label:i}},label:`Choose "${i}" in "${r}"`,ambiguous:o})}},n=e=>{const t=e;if(!t.isTrusted||"Enter"!==t.key||t.isComposing)return;const n=t.composedPath()[0];n instanceof HTMLInputElement&&Be(n)&&(Ue(n),_e({tool:"browser_press_key",args:{key:"Enter"},label:"Press Enter",expectChange:!0}))};return document.addEventListener("click",e,!0),document.addEventListener("change",t,!0),document.addEventListener("keydown",n,!0),Re={off:()=>{document.removeEventListener("click",e,!0),document.removeEventListener("change",t,!0),document.removeEventListener("keydown",n,!0)}},{ok:!0,recording:!0}},recordStop:function(){return Re?.off(),Re=null,{ok:!0,recording:!1}},commentStart:function(e){if(ze)return{ok:!0,on:!0};const t=d(null,r);if(!t)return{ok:!0,on:!0};const n=c(),o=u({position:"fixed",left:"0",top:"0",display:"none","box-sizing":"border-box",border:`2px solid ${n.strong}`,background:n.soft,"border-radius":"3px"}),s=u({position:"absolute",left:"0",bottom:"100%","margin-bottom":"2px",background:n.strong,color:n.ink,font:"600 11px/1.3 system-ui, sans-serif",padding:"1px 6px","border-radius":"3px","white-space":"nowrap"});o.appendChild(s);const l=u({position:"fixed",top:"8px",left:"50%",transform:"translateX(-50%)",background:"#1b1b1b",color:"#f5f5f5",font:"600 12px/1.3 system-ui, sans-serif",padding:"6px 12px","border-radius":"999px","box-shadow":"0 2px 10px rgba(0,0,0,.3)",border:`1px solid ${n.strong}`},"Comment mode — click an element to comment · Esc to finish");t.root.append(o,l);const f=e=>{const t=e.composedPath()[0];return t instanceof Element&&!i(t)?t:null},p=e=>{if(!ze||ze.card||Ge(e))return;const t=f(e);t&&t!==document.documentElement&&t!==document.body&&(ze.picked=t,s.textContent=Ke(t),ze.highlight.style.display="block",Xe(ze.highlight,t))},m=e=>{Ge(e)||(e.preventDefault(),e.stopImmediatePropagation())},h=e=>{if(Ge(e))return;if(m(e),!e.isTrusted||!ze)return;const t=f(e);t&&(ze.picked=t,s.textContent=Ke(t),ze.highlight.style.display="block",Xe(ze.highlight,t),function(e){if(!ze)return;Ze();const t=c(),n=e.getBoundingClientRect(),o=u({position:"fixed",left:`${Math.min(Math.max(n.left,8),innerWidth-300-8)}px`,top:`${n.bottom+170<innerHeight?n.bottom+8:Math.max(n.top-170,8)}px`,width:"300px","box-sizing":"border-box",background:"#1b1b1b",color:"#f5f5f5","border-radius":"10px",padding:"10px","pointer-events":"auto","box-shadow":"0 8px 28px rgba(0,0,0,.35)",font:'13px/1.4 system-ui, -apple-system, "Segoe UI", sans-serif',border:`1px solid ${t.strong}`}),r=u({"font-weight":"600","margin-bottom":"6px",overflow:"hidden","text-overflow":"ellipsis","white-space":"nowrap"},`Comment on ${Ke(e)}`),i=document.createElement("textarea");i.placeholder="What should change here?",i.maxLength=2e3,i.rows=3,a(i,{width:"100%","box-sizing":"border-box",resize:"vertical","border-radius":"6px",border:"1px solid #444",background:"#262626",color:"#f5f5f5",padding:"6px",font:"inherit"});const s=u({display:"flex",gap:"6px","justify-content":"flex-end","margin-top":"8px","align-items":"center"}),l=u({"margin-right":"auto",color:"#a3a3a3","font-size":"11px"},"Ctrl+Enter to save · Esc to cancel"),d=(e,n)=>{const o=document.createElement("button");return o.type="button",o.textContent=e,a(o,{border:n?"none":"1px solid #555",background:n?t.strong:"transparent",color:n?t.ink:"#eee","border-radius":"6px",padding:"4px 12px",cursor:"pointer",font:"inherit","font-weight":"600"}),o},f=d("Cancel",!1),p=d("Save",!0),m=()=>{const e=i.value.trim();if(!e||!ze?.picked)return;const t=ze.picked,n=`c-${Date.now().toString(36)}-${++De}`;t.setAttribute(qe,n),Ze(),ze.highlight.style.display="none",ze.picked=null,Fe({type:"add",cid:n,text:e,info:We(t),page:{url:location.href,title:document.title.slice(0,200),viewport:{width:innerWidth,height:innerHeight},devicePixelRatio}})};p.addEventListener("click",e=>{e.isTrusted&&m()}),f.addEventListener("click",e=>{e.isTrusted&&(Ze(),ze&&(ze.picked=null,ze.highlight.style.display="none"))}),i.addEventListener("keydown",e=>{e.stopPropagation(),e.isTrusted&&("Enter"===e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),m()),"Escape"===e.key&&(e.preventDefault(),Ze(),ze&&(ze.picked=null,ze.highlight.style.display="none")))}),s.append(l,f,p),o.append(r,i,s),ze.host.root.appendChild(o),ze.card=o,i.focus()}(t))},g=e=>{e.isTrusted&&"Escape"===e.key&&!Ge(e)&&(e.preventDefault(),ze?.card?Ze():Fe({type:"exit"}))},b=["pointerdown","pointerup","mousedown","mouseup","dblclick","contextmenu","auxclick","submit"];window.addEventListener("pointermove",p,!0),window.addEventListener("click",h,!0);for(const e of b)window.addEventListener(e,m,!0);window.addEventListener("keydown",g,!0),window.addEventListener("scroll",Ve,!0),window.addEventListener("resize",Ve,!0),ze={host:t,highlight:o,label:s,card:null,picked:null,pins:new Map,masks:[],frame:0,next:1,off:()=>{window.removeEventListener("pointermove",p,!0),window.removeEventListener("click",h,!0);for(const e of b)window.removeEventListener(e,m,!0);window.removeEventListener("keydown",g,!0),window.removeEventListener("scroll",Ve,!0),window.removeEventListener("resize",Ve,!0)}};for(const t of Array.isArray(e.pins)?e.pins:[]){let e=null;try{e=t.domPath?document.querySelector(t.domPath):null}catch{e=null}e&&Qe({cid:t.cid,n:t.n,el:e})}return{ok:!0,on:!0}},commentStop:function(){return ze?(ze.off(),ze.frame&&cancelAnimationFrame(ze.frame),ze.host.el.remove(),document.querySelectorAll(`[${qe}]`).forEach(e=>e.removeAttribute(qe)),ze=null,{ok:!0,on:!1}):{ok:!0,on:!1}},commentPin:Qe,commentUnpin:function(e){const t=String(e.cid??"");return ze?.pins.get(t)?.badge.remove(),ze?.pins.delete(t),document.querySelectorAll(`[${qe}="${CSS.escape(t)}"]`).forEach(e=>e.removeAttribute(qe)),{ok:!0}},commentCaptureStart:async function(e){if(!ze)return{ok:!1};const t=String(e.cid??"");let n=null;try{n=document.querySelector(`[${qe}="${CSS.escape(t)}"]`)}catch{n=null}for(const e of Array.from(ze.host.root.children))e.style.visibility="hidden";q();for(const e of Array.from(document.querySelectorAll('input, textarea, [contenteditable=""], [contenteditable="true"]'))){const{name:t}=P(e);if(!j(e,t))continue;const n=e.getBoundingClientRect();if(n.width<1||n.height<1||n.bottom<0||n.top>innerHeight)continue;const o=u({position:"fixed",left:`${n.left}px`,top:`${n.top}px`,width:`${n.width}px`,height:`${n.height}px`,background:"#3a3a3a"});ze.host.root.appendChild(o),ze.masks.push(o)}await new Promise(e=>requestAnimationFrame(()=>requestAnimationFrame(()=>e())));const o=n?.getBoundingClientRect();return{ok:!0,rect:o?{x:o.x,y:o.y,width:o.width,height:o.height}:null,viewport:{width:innerWidth,height:innerHeight},devicePixelRatio}},commentCaptureEnd:function(){if(!ze)return{ok:!0};for(const e of ze.masks)e.remove();ze.masks=[];for(const e of Array.from(ze.host.root.children))e.style.visibility="";return ze.picked||(ze.highlight.style.display="none"),{ok:!0}},snapshot:function(e){const t=Math.min(Number(e.maxElements)||150,400),n=!1!==e.includeText,o=Math.min(Number(e.maxTextChars)||4e3,2e4);B.snapshotId+=1;const r=re(),i=r.filter(oe),a=ke();let s=a?i.filter(e=>v(a,e.el)):i;const l="string"==typeof e.within&&e.within?e.within:null;l&&(s=Ee(s,l)),function(){if(!(B.refs.size<2e3))for(const[e,t]of B.refs)t.el.deref()||B.refs.delete(e)}();const c=[];let u=0,d=!1;const g=e=>{if(c.length>=t)return!1;const n=(e=>{const t=ee(e.el),n={ref:ne(e.el,e.role,e.name,t),role:e.role,name:m(e.name,100),...W(e.el)};"placeholder"!==e.source&&"none"!==e.source||(n.nameSource=e.source),t&&(n.context=m(t,60)),e.el instanceof HTMLAnchorElement&&e.el.href&&(n.href=m(e.el.href,200)),j(e.el,e.name)&&(n.sensitive=!0);const o=e.el.getBoundingClientRect();return(o.bottom<0||o.top>innerHeight)&&(n.offscreen=!0),n})(e),o=JSON.stringify(n).length;return!(u+o>98304||(u+=o,c.push(n),0))};for(const e of s)if(!g(e)){d=!0;break}const b=ge(),x=(a?b.filter(e=>v(a,e.el)):b).filter(oe),y=l?Ee(x,l):x;let w=0,k=!1;for(const e of y){if(w>=60||!g(e)){k=!0;break}w+=1}const E=l?p(l):null,T=Array.from(document.querySelectorAll("h1,h2,h3,h4,h5,h6")).filter(e=>z(e)).filter(e=>!E||p(h(e))===E||J(e).some(e=>p(e)===E)).slice(0,40).map(e=>({level:Number(e.tagName[1]),text:m(h(e),100)})),A=Array.from(document.querySelectorAll("iframe,frame")),S=A.filter(e=>{try{return!e.contentDocument}catch{return!0}}).length;let M,$=!1;if(n){const e=f(document.body?.innerText??"");$=e.length>o,M=e.slice(0,o)}return{ok:!0,snapshotId:`s${B.snapshotId}`,docId:B.docId,url:location.href,title:m(document.title,200),elements:c,headings:T,text:M,challenge:se(),siteError:mt(!0===e.network5xx),counts:{interactive:r.length,visible:i.length,returned:c.length,hidden:r.length-i.length,...a||l?{inScope:s.length}:{},...y.length?{clickable:y.length,clickableReturned:w}:{}},modal:a?{name:m(P(a).name||K(a),100),outside:i.length-(a?i.filter(e=>v(a,e.el)).length:0)}:null,within:l,limits:{truncated:d,textTruncated:$,clickableTruncated:k,frames:A.length,crossOriginFrames:S,note:[a?"A modal dialog is open: only its controls are listed and can be targeted. Close it to reach the page behind.":"",l&&0===s.length&&0===y.length?`No visible controls are inside "${m(l,80)}".`:"",k?`Only ${w} of ${y.length} clickable region(s) are listed; use within to narrow the page.`:"",S?"Controls inside cross-origin frames are not inspected.":""].filter(Boolean).join(" ")||void 0}}},siteError:function(e){return{ok:!0,docId:B.docId,siteError:mt(!0===e.network5xx)}},fileInput:function(e){const t=String(e.phase??"mark"),n=String(e.mark??"");if("unmark"===t)return document.querySelectorAll(`[${Xt}]`).forEach(e=>e.removeAttribute(Xt)),{ok:!0};const o=Te(String(e.ref));if("ok"in o)return o;const r=o.el;return r instanceof HTMLInputElement&&"file"===r.type?r.disabled?{ok:!1,code:"TARGET_NOT_INTERACTABLE",message:"The file input is disabled."}:"check"===t?{ok:!0,files:r.files?.length??0,names:Array.from(r.files??[]).map(e=>e.name).slice(0,10)}:(n&&r.setAttribute(Xt,n),{ok:!0,multiple:r.multiple,accept:r.accept||null,files:r.files?.length??0}):{ok:!1,code:"TARGET_NOT_INTERACTABLE",message:`"${o.name||r.tagName.toLowerCase()}" is not a file input. Target the page's "Choose file" input itself.`}},resolve:ht,click:function(e){const t=Te(String(e.ref));if("ok"in t)return t;const n=F(t.el);if(!n)return we(ve(t.name),"is not visible.");const o=D(n);return o.width<=0||o.height<=0?we(ve(t.name),"has no visible area."):(function(e){e.scrollIntoView({block:"center",inline:"center",behavior:"instant"});const t=e.getBoundingClientRect(),n=t.left+t.width/2,o=t.top+t.height/2,r={bubbles:!0,cancelable:!0,composed:!0,view:window,button:0,buttons:1,clientX:n,clientY:o,screenX:n,screenY:o,detail:1};try{const t={...r,pointerId:1,pointerType:"mouse",isPrimary:!0,width:1,height:1};e.dispatchEvent(new PointerEvent("pointerdown",t)),e.dispatchEvent(new MouseEvent("mousedown",r)),e.dispatchEvent(new PointerEvent("pointerup",{...t,buttons:0})),e.dispatchEvent(new MouseEvent("mouseup",{...r,buttons:0}))}catch{}"function"==typeof e.click?e.click():e.dispatchEvent(new MouseEvent("click",{...r,buttons:0}))}(n),{ok:!0,ref:e.ref,method:"dom",hidden:x(),state:W(t.el),mutations:B.mutations})},cursor:async function(e){const t=String(e.phase??"move");if("hide"===t)return function(e){if(Tt=!1,Et=null,kt=null,!vt)return;const t=vt;if(vt=null,wt=null,e||s()||"function"!=typeof t.el.animate)return void t.el.remove();const n=()=>t.el.remove();t.el.animate([{opacity:1},{opacity:0}],{duration:140,easing:"ease-out"}).finished.then(n).catch(n),setTimeout(n,220)}(!0===e.immediate),{ok:!0};if("idle"===t)return{ok:!0};const n=e.point;if(!n||!Number.isFinite(n.x)||!Number.isFinite(n.y))return{ok:!0,skipped:!0};const o=e.rect,r={phase:t,point:n,label:"string"==typeof e.label?e.label.slice(0,24):"",rect:o&&Number.isFinite(o.width)&&Number.isFinite(o.height)?{x:o.x,y:o.y,width:o.width,height:o.height}:null,marker:"arrow"===e.marker?"arrow":"caret"};return Et=r,"visible"!==document.visibilityState?{ok:!0,skipped:!0}:(Tt=!0,await Rt(r,"arrow"!==r.marker),"move"===t?{ok:!0,mutations:B.mutations}:{ok:!0})},indicator:function(e){const o=String(e.phase??"show");return"hide"===o?(at(!0===e.immediate),st(),{ok:!0}):"visible"!==document.visibilityState?{ok:!0,skipped:!0}:"ring"===o?(function(e){const t=B.refs.get(e)?.el.deref();if(!t||!t.isConnected)return void st();st();const o=d(null,n);if(!o)return;const r=c(),i=u({position:"absolute",left:"0",top:"0","will-change":"transform","pointer-events":"none"}),l=u({position:"absolute",inset:"0","box-sizing":"border-box",border:`2px solid ${r.strong}`,"border-radius":"8px","box-shadow":`0 0 0 3px ${r.soft}`,opacity:"0.9"});i.append(l),o.root.append(i);const f=()=>{if(!t.isConnected)return void st();const e=t.getBoundingClientRect();a(i,{width:`${Math.round(e.width+6)}px`,height:`${Math.round(e.height+6)}px`,transform:`translate3d(${Math.round(e.left-3)}px, ${Math.round(e.top-3)}px, 0)`})};f(),nt={host:o,follow:f},ot=setTimeout(()=>st(),12e4),s()||(l.animate([{opacity:.5,transform:"scale(1)"},{opacity:1,transform:"scale(1.015)"}],{duration:1100,iterations:1/0,direction:"alternate",easing:"ease-in-out"}),addEventListener("scroll",f,{capture:!0,passive:!0}),addEventListener("resize",f,{passive:!0}))}(String(e.ref??"")),{ok:!0}):"ringHide"===o?(st(),{ok:!0}):(r="idle"===o?1500:3e4,function(){if(Je?.el.isConnected&&et)return et;const e=d(Je,t);return Je=e,e?(et=function(e){const t=c(),n=u({position:"absolute",inset:"0","box-sizing":"border-box",border:`2px solid ${t.strong}`,"box-shadow":`inset 0 0 26px ${t.soft}`,opacity:"0.9","pointer-events":"none"}),o=u({position:"absolute",left:"0",right:"0",bottom:"22px",display:"flex","justify-content":"center","pointer-events":"none"}),r=u({display:"flex","align-items":"center",gap:"9px",padding:"5px 6px 5px 12px","border-radius":"999px",background:"rgba(17, 17, 17, 0.9)",color:"#ffffff","box-shadow":"0 4px 18px rgba(0, 0, 0, 0.3)",font:'600 11.5px/1.5 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',"white-space":"nowrap","pointer-events":"auto"}),i=u({width:"6px",height:"6px","border-radius":"50%",background:t.strong,"flex-shrink":"0"}),l=u({"letter-spacing":"0.01em",opacity:"0.94"},"BrowserZap · agent working"),d=document.createElement("button");d.type="button",d.tabIndex=-1,d.textContent="Stop",a(d,{appearance:"none",margin:"0",padding:"3px 11px",border:"0","border-radius":"999px",background:t.strong,color:t.ink,font:'700 11px/1.5 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif',cursor:"pointer"});const f=e=>{e.preventDefault(),e.stopPropagation()};return d.addEventListener("pointerdown",f),d.addEventListener("mousedown",f),d.addEventListener("click",e=>{if(f(e),e.isTrusted){try{chrome.runtime.sendMessage({source:"engine-control",type:"stop"}).catch(()=>{})}catch{}at(!1)}}),r.append(i,l,d),o.append(r),e.append(n,o),s()||r.animate([{opacity:0,transform:"translate3d(0, 6px, 0)"},{opacity:1,transform:"translate3d(0, 0, 0)"}],{duration:160,easing:"ease-out"}),{border:n,pill:r}}(e.root),s()||et.border.animate([{opacity:.45},{opacity:1}],{duration:1500,iterations:1/0,direction:"alternate",easing:"ease-in-out"}),et):(et=null,null)}()&&(rt(),tt=setTimeout(()=>at(!1),r)),{ok:!0});var r},handoff:function(e){const t=String(e.phase??"show");return"hide"===t?(zt(),Pt=null,Ht&&(Ht.el.remove(),Ht=null,Ot=null),{ok:!0}):(Ht?.el.isConnected||(Ht=null,Ot=null),"suppress"===t?(Ht&&Ht.el.style.setProperty("display","none"),{ok:!0}):"restore"===t?(Ht&&Ht.el.style.removeProperty("display"),{ok:!0}):(Pt={message:Ut(String(e.message??"The agent needs you to take over.")),target:e.target??void 0,field:null},Bt=String(e.pauseId??""),"visible"!==document.visibilityState?{ok:!0,skipped:!0}:Dt()))},fillPrepare:function(e){const t=ht({target:e.target,purpose:"fill",scroll:!0});if(!t.ok)return t;const n=Te(t.ref);if(t.sensitive)return ye("USER_ACTION_REQUIRED",`"${t.name}" is a sensitive field (${t.sensitive}). BrowserZap never types into it; ask the user to fill it.`,{target:{ref:t.ref,role:t.role,name:t.name},sensitive:t.sensitive});if(n.el instanceof HTMLInputElement&&("checkbox"===n.el.type||"radio"===n.el.type))return{...t,kind:"toggle",checked:n.el.checked};if(n.el instanceof HTMLSelectElement)return ye("UNSUPPORTED_CONTROL",`"${t.name}" is a <select>. Use select_option.`,{target:t});const o=gt(n.el);if(!o)return ye("UNSUPPORTED_CONTROL",`${t.role} "${t.name}" does not accept text.`,{target:t});if(o.readOnly)return ye("TARGET_NOT_INTERACTABLE",`"${t.name}" is read-only.`,{target:t});if(o.focus({preventScroll:!0}),o instanceof HTMLInputElement||o instanceof HTMLTextAreaElement)o instanceof HTMLTextAreaElement||["text","search","url","tel","password",""].includes(o.type)?o.select():o.value&&xt(o,"");else{const e=document.createRange();e.selectNodeContents(o);const t=getSelection();t?.removeAllRanges(),t?.addRange(e)}const r=v(o,bt());return"string"!=typeof e.value||t.challenge?{...t,kind:"text",focused:r}:{...t,kind:"text",focused:r,applied:yt({ref:t.ref,value:e.value})}},fillApply:yt,selectOption:function(e){const t=ht({target:e.target,purpose:"select",scroll:!0});if(!t.ok)return t;const n=Te(t.ref).el;if(!(n instanceof HTMLSelectElement))return ye("UNSUPPORTED_CONTROL",`${t.role} "${t.name}" is not a native <select>. Open it with element_click, then click the option.`,{target:t});const o=e.option??{},r=Array.from(n.options);let i=[];if(void 0!==o.value)i=r.filter(e=>e.value===o.value);else{if(void 0===o.label)return ye("INVALID_ARGUMENT","option needs a label or a value.");{const e=p(o.label);i=r.filter(t=>p(t.label||t.text)===e)}}if(!i.length)return ye("TARGET_NOT_FOUND",`No option matches in "${t.name}".`,{candidates:r.slice(0,20).map(e=>({ref:"",role:"option",name:m(f(e.label||e.text),100),value:e.value}))});if(i.length>1)return ye("TARGET_AMBIGUOUS",`${i.length} options match in "${t.name}". Select by value instead.`,{candidates:i.slice(0,8).map(e=>({ref:"",role:"option",name:f(e.label||e.text),value:e.value}))});const a=i[0];if(a.disabled)return ye("TARGET_NOT_INTERACTABLE",`Option "${f(a.label)}" is disabled.`);const s=n.value;n.focus({preventScroll:!0}),n.value=a.value,n.dispatchEvent(new Event("input",{bubbles:!0})),n.dispatchEvent(new Event("change",{bubbles:!0}));const l=n.value===a.value&&n.selectedOptions[0]===a;return{ok:!0,ref:t.ref,name:t.name,selected:{label:m(f(a.label||a.text),100),value:a.value},changed:s!==n.value,verified:l,sensitive:t.sensitive,point:t.point,pageRect:t.pageRect}},observe:function(e){let t;if("string"==typeof e.ref){const n=B.refs.get(e.ref),o=n?.el.deref();t=o&&o.isConnected?{connected:!0,...W(o)}:{connected:!1}}const n={ok:!0,docId:B.docId,url:location.href,title:document.title,readyState:document.readyState,mutations:B.mutations,target:t};if("number"==typeof e.since){const t=function(e){if(e>=B.mutations)return{count:0,quietMs:null};const t=performance.now();if($e.length&&$e[0].seq>e+1)return{count:2e3,quietMs:0};let n=t;const o=new Set;for(let r=$e.length-1;r>=0;r--){const i=$e[r];if(i.seq>e)continue;if(n===t&&(n=i.at),i.at<n-1500)break;const a=i.node.deref();a&&o.add(a)}const r=new Set;let i=null,a=0;for(let n=$e.length-1;n>=0&&$e[n].seq>e;n--){const e=$e[n].node.deref();if(!e||r.has(e))continue;if(r.add(e),o.has(e)||Le(e,t))continue;a++;const s=Me.get(e)?.last??t;(null===i||s>i)&&(i=s)}return{count:a,quietMs:null===i?null:Math.round(t-i)}}(e.since);n.changes=t.count,n.changeQuietMs=t.quietMs}if(!0===e.modal){const e=ke();n.modal=e?{role:e.getAttribute("role")||"dialog",name:m(P(e).name||"",80)||null}:null}if(e.expect&&"object"==typeof e.expect){const t=function(e){const t={ok:!0,docId:B.docId,url:location.href};if("string"==typeof e.text&&(t.text=p(document.body?.innerText).includes(p(e.text))),e.target){const n=Ae(e.target);t.target=!("ok"in n)&&oe(n),t.targetAmbiguous="ok"in n&&"TARGET_AMBIGUOUS"===n.code,t.targetAmbiguous&&(t.targetCandidates=("candidates"in n?n.candidates:void 0)??[])}if(e.targetGone){const n=Ae(e.targetGone);t.targetGone="ok"in n?"TARGET_NOT_FOUND"===n.code||"STALE_SNAPSHOT"===n.code:!oe(n)}return t}(e.expect);n.expect={text:t.text,target:t.target,targetGone:t.targetGone,ambiguous:t.targetAmbiguous,candidates:t.targetCandidates}}return n},keyContext:function(e){const t=bt(),n=String(e.key??""),o={ok:!0,docId:B.docId,url:location.href,hidden:x(),...Ft(t)};if("Enter"!==n||!t)return{...o,risk:"reversible"};if(t instanceof HTMLButtonElement||t instanceof HTMLAnchorElement&&t.href||t instanceof HTMLInputElement&&["submit","image","button"].includes(t.type)){const{name:e}=P(t),n=R(t);return{...o,risk:ae(t,n,e),submits:{role:n,name:m(e,100),fingerprint:te(n,e)},challenge:se()}}const r=Gt(t);if(!r)return{...o,risk:"reversible"};const i=jt(r),a=i?P(i).name:K(r)||"form",s=i?R(i):"form",l=i?ae(i,s,a):"post"===r.method.toLowerCase()?"external_side_effect":"reversible";return{...o,risk:l,submits:{role:s,name:m(a,100),fingerprint:te(s,a)},challenge:se()}},pressKey:function(e){const t=String(e.key??""),n=new Set(Array.isArray(e.modifiers)?e.modifiers:[]),o=bt()??document.body??document.documentElement,r=Number(e.keyCode)||0,i={key:"Space"===t?" ":t,code:String(e.code??t),keyCode:r,which:r,bubbles:!0,cancelable:!0,composed:!0,view:window,altKey:n.has("alt"),ctrlKey:n.has("ctrl"),metaKey:n.has("meta"),shiftKey:n.has("shift")},a=o.dispatchEvent(new KeyboardEvent("keydown",i));!a||"Enter"!==t&&"Space"!==t||o.dispatchEvent(new KeyboardEvent("keypress",i));let s="none";return!a||i.altKey||i.ctrlKey||i.metaKey||(s=function(e,t,n){const o=t,r=t instanceof HTMLButtonElement||"SUMMARY"===t.tagName||t instanceof HTMLInputElement&&["button","submit","reset","image","checkbox","radio"].includes(t.type);if("Enter"===e){if(t instanceof HTMLAnchorElement&&t.href)return o.click(),"activate";if(t instanceof HTMLButtonElement||"SUMMARY"===t.tagName)return o.click(),"activate";const e=Gt(t);if(e&&t instanceof HTMLInputElement&&gt(t)){const t=jt(e);if(t){if(G(t))return"none";t.click()}else e.requestSubmit();return"submit"}return"none"}if("Space"===e&&r)return o.click(),"activate";if("Tab"===e){const e=function(){const e=[];for(const t of g(document)){const n=t;"number"!=typeof n.tabIndex||n.tabIndex<0||G(t)||t instanceof HTMLInputElement&&"hidden"===t.type||z(t)&&e.push(n)}return[...e.filter(e=>e.tabIndex>0).sort((e,t)=>e.tabIndex-t.tabIndex),...e.filter(e=>0===e.tabIndex)]}();if(!e.length)return"none";const t=e.indexOf(o);return(t<0?e[n?e.length-1:0]:e[(t+(n?-1:1)+e.length)%e.length]).focus(),"focus"}if("Escape"===e){const e=b();return e&&e.dispatchEvent(new Event("cancel",{cancelable:!0}))?(e.close(),"closeDialog"):"none"}if(("Backspace"===e||"Delete"===e)&&Wt(t))return document.execCommand("Backspace"===e?"delete":"forwardDelete"),"delete";const i=Kt[e];if(i&&!Wt(t)&&!r){const t=i(Math.round(.875*innerHeight));return t.to?scrollTo({top:"start"===t.to?0:document.documentElement.scrollHeight,behavior:"instant"}):window.scrollBy({top:(n&&"Space"===e?-1:1)*(t.top??0),left:t.left??0,behavior:"instant"}),"scroll"}return"none"}(t,o,Boolean(i.shiftKey))),o.dispatchEvent(new KeyboardEvent("keyup",i)),{ok:!0,method:"dom",prevented:!a,defaultAction:s,mutations:B.mutations}},scroll:function(e){const t=Math.min(Math.max(Number(e.amount)||600,1),5e3),n=String(e.direction??"down"),o="left"===n?-t:"right"===n?t:0,r="up"===n?-t:"down"===n?t:0;let i=window;if(e.target){const t=Ae(e.target);if("ok"in t)return t;i=t.el}const a=()=>i===window?{x:scrollX,y:scrollY}:{x:i.scrollLeft,y:i.scrollTop},s=a();i.scrollBy({left:o,top:r,behavior:"instant"});const l=a();return{ok:!0,moved:s.x!==l.x||s.y!==l.y,position:l,atEnd:i===window&&innerHeight+scrollY>=document.documentElement.scrollHeight-2}}};15!==globalThis.__browserzapEngine?.version&&(globalThis.__browserzapEngine={version:15,run(e,t){const n=Object.prototype.hasOwnProperty.call(Yt,e)?Yt[e]:void 0;if(!n)return ye("INVALID_ARGUMENT",`Unknown engine operation: ${e}`);q();try{return n(t??{})}catch(e){return ye("INTERNAL",e instanceof Error?e.message:String(e))}finally{q()}}})})();
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "manifest_version": 3,
3
3
  "name": "BrowserZap",
4
- "version": "0.5.5",
4
+ "version": "0.6.0",
5
5
  "description": "Let your AI agent use the Chrome you already use: exact clicks, your approval before anything risky, passwords stay yours.",
6
6
  "homepage_url": "https://browserzap.com",
7
7
  "permissions": [
@@ -1,2 +1,2 @@
1
1
  /*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
2
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial;--tw-divide-x-reverse:0}}}@layer theme{:root,:host{--font-sans:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", Consolas, monospace;--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-900:oklch(37.8% .077 168.94);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-700:oklch(50% .134 242.749);--color-sky-800:oklch(44.3% .11 240.79);--color-sky-900:oklch(39.1% .09 240.876);--color-indigo-50:oklch(96.2% .018 272.314);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-300:oklch(78.5% .115 274.713);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--color-rose-900:oklch(41% .159 10.272);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--default-mono-font-family:ui-monospace, "SF Mono", "Cascadia Mono", Consolas, monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}body{margin:calc(var(--spacing) * 0);background-color:var(--bz-bg-0);--tw-leading:var(--leading-snug);font-family:Inter Variable,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:var(--leading-snug);color:var(--bz-fg-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:2px solid var(--bz-accent);outline-offset:2px}code{background-color:var(--bz-bg-3);padding-inline:calc(var(--spacing) * 1);border-radius:.25rem;font-family:ui-monospace,SF Mono,Cascadia Mono,Consolas,monospace;font-size:11px}input[type=text],input[type=password],input[type=number],textarea{border-radius:var(--radius-md);border-style:var(--tw-border-style);border-width:1px;border-color:var(--bz-line);background-color:var(--bz-bg-2);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);color:var(--bz-fg-0);--tw-outline-style:none;outline-style:none;font-size:12px}:is(input[type=text],input[type=password],input[type=number],textarea):focus{border-color:var(--bz-accent)}[hidden]{display:none!important}}@layer components{.panel{margin-inline:calc(var(--spacing) * 2);margin-block:calc(var(--spacing) * 2);border-radius:var(--radius-xl);background-color:var(--bz-bg-1);padding:calc(var(--spacing) * 3);box-shadow:var(--bz-ring)}.panel-title{margin:calc(var(--spacing) * 0);--tw-font-weight:var(--font-weight-bold);font-size:11px;font-weight:var(--font-weight-bold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);color:var(--bz-fg-2);text-transform:uppercase}.hint{margin:calc(var(--spacing) * 0);color:var(--bz-fg-2);font-size:11px}.btn{cursor:pointer;border-radius:var(--radius-lg);border-style:var(--tw-border-style);border-width:1px;border-color:var(--bz-line);background-color:var(--bz-bg-1);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1);--tw-font-weight:var(--font-weight-medium);font-size:12px;font-weight:var(--font-weight-medium);color:var(--bz-fg-0);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.btn:hover{background-color:var(--bz-bg-2)}}.btn:disabled{opacity:.5}.btn-primary{border-color:var(--bz-ink);background-color:var(--bz-ink);color:var(--bz-ink-fg)}@media (hover:hover){.btn-primary:hover{background-color:var(--bz-ink)}@supports (color:color-mix(in lab, red, red)){.btn-primary:hover{background-color:color-mix(in oklab, var(--bz-ink) 85%, transparent)}}}.btn-ghost{background-color:#0000}@media (hover:hover){.btn-ghost:hover{background-color:var(--bz-bg-2)}}.btn-danger{border-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger{border-color:color-mix(in oklab, var(--bz-danger) 40%, transparent)}}.btn-danger{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger{background-color:color-mix(in oklab, var(--bz-danger) 10%, transparent)}}.btn-danger{color:var(--bz-danger)}@media (hover:hover){.btn-danger:hover{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger:hover{background-color:color-mix(in oklab, var(--bz-danger) 20%, transparent)}}}.card{gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-lg);border-style:var(--tw-border-style);border-width:1px;border-color:var(--bz-line);background-color:var(--bz-bg-1);padding:calc(var(--spacing) * 2.5);flex-direction:column;display:flex}.pill{padding-inline:calc(var(--spacing) * 2);--tw-font-weight:var(--font-weight-bold);font-size:10px;font-weight:var(--font-weight-bold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);text-transform:uppercase;border-radius:3.40282e38px;padding-block:1px}.pill-ok{background-color:var(--bz-ok)}@supports (color:color-mix(in lab, red, red)){.pill-ok{background-color:color-mix(in oklab, var(--bz-ok) 15%, transparent)}}.pill-ok{color:var(--bz-ok)}.pill-warn{background-color:var(--bz-warn)}@supports (color:color-mix(in lab, red, red)){.pill-warn{background-color:color-mix(in oklab, var(--bz-warn) 15%, transparent)}}.pill-warn{color:var(--bz-warn)}.pill-bad{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.pill-bad{background-color:color-mix(in oklab, var(--bz-danger) 15%, transparent)}}.pill-bad{color:var(--bz-danger)}.pill-muted{background-color:var(--bz-bg-3);color:var(--bz-fg-2)}.meta{color:var(--bz-fg-1);font-size:11px}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.right-0{right:calc(var(--spacing) * 0)}.z-10{z-index:10}.z-40{z-index:40}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing) * 0)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-9{margin-top:calc(var(--spacing) * 9)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.aspect-\[4\/3\]{aspect-ratio:4/3}.size-1{width:calc(var(--spacing) * 1);height:calc(var(--spacing) * 1)}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-16{height:calc(var(--spacing) * 16)}.h-24{height:calc(var(--spacing) * 24)}.h-\[520px\]{height:520px}.max-h-20{max-height:calc(var(--spacing) * 20)}.max-h-28{max-height:calc(var(--spacing) * 28)}.max-h-72{max-height:calc(var(--spacing) * 72)}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing) * 1)}.w-1\/3{width:33.3333%}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[8rem\]{max-width:8rem}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0{gap:calc(var(--spacing) * 0)}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-12{gap:calc(var(--spacing) * 12)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-10{column-gap:calc(var(--spacing) * 10)}.gap-y-8{row-gap:calc(var(--spacing) * 8)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-line>:not(:last-child)){border-color:var(--bz-line)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[32px\]{border-radius:32px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-accent,.border-accent\/40{border-color:var(--bz-accent)}@supports (color:color-mix(in lab, red, red)){.border-accent\/40{border-color:color-mix(in oklab, var(--bz-accent) 40%, transparent)}}.border-amber-300{border-color:var(--color-amber-300)}.border-amber-400{border-color:var(--color-amber-400)}.border-danger\/30{border-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.border-danger\/30{border-color:color-mix(in oklab, var(--bz-danger) 30%, transparent)}}.border-danger\/40{border-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.border-danger\/40{border-color:color-mix(in oklab, var(--bz-danger) 40%, transparent)}}.border-emerald-200{border-color:var(--color-emerald-200)}.border-emerald-300{border-color:var(--color-emerald-300)}.border-emerald-400{border-color:var(--color-emerald-400)}.border-emerald-500{border-color:var(--color-emerald-500)}.border-indigo-200{border-color:var(--color-indigo-200)}.border-indigo-300{border-color:var(--color-indigo-300)}.border-indigo-500{border-color:var(--color-indigo-500)}.border-line{border-color:var(--bz-line)}.border-ok\/40{border-color:var(--bz-ok)}@supports (color:color-mix(in lab, red, red)){.border-ok\/40{border-color:color-mix(in oklab, var(--bz-ok) 40%, transparent)}}.border-rose-200{border-color:var(--color-rose-200)}.border-rose-300{border-color:var(--color-rose-300)}.border-sky-300{border-color:var(--color-sky-300)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.border-slate-600{border-color:var(--color-slate-600)}.border-warn\/40{border-color:var(--bz-warn)}@supports (color:color-mix(in lab, red, red)){.border-warn\/40{border-color:color-mix(in oklab, var(--bz-warn) 40%, transparent)}}.bg-accent\/10{background-color:var(--bz-accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/10{background-color:color-mix(in oklab, var(--bz-accent) 10%, transparent)}}.bg-accent\/15{background-color:var(--bz-accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/15{background-color:color-mix(in oklab, var(--bz-accent) 15%, transparent)}}.bg-amber-50{background-color:var(--color-amber-50)}.bg-bg-1{background-color:var(--bz-bg-1)}.bg-danger,.bg-danger\/5{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.bg-danger\/5{background-color:color-mix(in oklab, var(--bz-danger) 5%, transparent)}}.bg-danger\/10{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.bg-danger\/10{background-color:color-mix(in oklab, var(--bz-danger) 10%, transparent)}}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-900{background-color:var(--color-emerald-900)}.bg-emerald-900\/40{background-color:#004e3b66}@supports (color:color-mix(in lab, red, red)){.bg-emerald-900\/40{background-color:color-mix(in oklab, var(--color-emerald-900) 40%, transparent)}}.bg-emerald-900\/60{background-color:#004e3b99}@supports (color:color-mix(in lab, red, red)){.bg-emerald-900\/60{background-color:color-mix(in oklab, var(--color-emerald-900) 60%, transparent)}}.bg-fg-2{background-color:var(--bz-fg-2)}.bg-indigo-50{background-color:var(--color-indigo-50)}.bg-line{background-color:var(--bz-line)}.bg-ok,.bg-ok\/10{background-color:var(--bz-ok)}@supports (color:color-mix(in lab, red, red)){.bg-ok\/10{background-color:color-mix(in oklab, var(--bz-ok) 10%, transparent)}}.bg-rose-50{background-color:var(--color-rose-50)}.bg-sky-50{background-color:var(--color-sky-50)}.bg-sky-900{background-color:var(--color-sky-900)}.bg-sky-900\/60{background-color:#024a7099}@supports (color:color-mix(in lab, red, red)){.bg-sky-900\/60{background-color:color-mix(in oklab, var(--color-sky-900) 60%, transparent)}}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-800{background-color:var(--color-slate-800)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-warn,.bg-warn\/10{background-color:var(--bz-warn)}@supports (color:color-mix(in lab, red, red)){.bg-warn\/10{background-color:color-mix(in oklab, var(--bz-warn) 10%, transparent)}}.object-contain{object-fit:contain}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0{padding-block:calc(var(--spacing) * 0)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-14{padding-block:calc(var(--spacing) * 14)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-24{padding-block:calc(var(--spacing) * 24)}.py-28{padding-block:calc(var(--spacing) * 28)}.py-px{padding-block:1px}.pt-20{padding-top:calc(var(--spacing) * 20)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-14{padding-bottom:calc(var(--spacing) * 14)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pb-28{padding-bottom:calc(var(--spacing) * 28)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SF Mono,Cascadia Mono,Consolas,monospace}.font-sans{font-family:Inter Variable,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.font-serif{font-family:var(--font-serif)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[19px\]{font-size:19px}.text-\[20px\]{font-size:20px}.text-\[38px\]{font-size:38px}.text-\[40px\]{font-size:40px}.text-\[44px\]{font-size:44px}.text-\[52px\]{font-size:52px}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-\[1\.04\]{--tw-leading:1.04;line-height:1.04}.leading-\[1\.06\]{--tw-leading:1.06;line-height:1.06}.leading-\[1\.08\]{--tw-leading:1.08;line-height:1.08}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.01em\]{--tw-tracking:-.01em;letter-spacing:-.01em}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-\[-0\.04em\]{--tw-tracking:-.04em;letter-spacing:-.04em}.tracking-\[-0\.015em\]{--tw-tracking:-.015em;letter-spacing:-.015em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-accent{color:var(--bz-accent)}.text-amber-600{color:var(--color-amber-600)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-danger{color:var(--bz-danger)}.text-emerald-200{color:var(--color-emerald-200)}.text-emerald-300{color:var(--color-emerald-300)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-emerald-900{color:var(--color-emerald-900)}.text-fg-1{color:var(--bz-fg-1)}.text-fg-2{color:var(--bz-fg-2)}.text-indigo-300{color:var(--color-indigo-300)}.text-indigo-600{color:var(--color-indigo-600)}.text-indigo-700{color:var(--color-indigo-700)}.text-ok{color:var(--bz-ok)}.text-rose-700{color:var(--color-rose-700)}.text-rose-800{color:var(--color-rose-800)}.text-rose-900{color:var(--color-rose-900)}.text-sky-200{color:var(--color-sky-200)}.text-sky-700{color:var(--color-sky-700)}.text-sky-800{color:var(--color-sky-800)}.text-sky-900{color:var(--color-sky-900)}.text-slate-100{color:var(--color-slate-100)}.text-slate-200{color:var(--color-slate-200)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-800{color:var(--color-slate-800)}.text-warn{color:var(--bz-warn)}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-emerald-600{accent-color:var(--color-emerald-600)}.accent-indigo-600{accent-color:var(--color-indigo-600)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-amber-200{--tw-ring-color:var(--color-amber-200)}.ring-emerald-200{--tw-ring-color:var(--color-emerald-200)}.ring-emerald-500{--tw-ring-color:var(--color-emerald-500)}.ring-emerald-500\/40{--tw-ring-color:#00bb7f66}@supports (color:color-mix(in lab, red, red)){.ring-emerald-500\/40{--tw-ring-color:color-mix(in oklab, var(--color-emerald-500) 40%, transparent)}}.ring-rose-200{--tw-ring-color:var(--color-rose-200)}.ring-sky-200{--tw-ring-color:var(--color-sky-200)}.ring-sky-500{--tw-ring-color:var(--color-sky-500)}.ring-sky-500\/40{--tw-ring-color:#00a5ef66}@supports (color:color-mix(in lab, red, red)){.ring-sky-500\/40{--tw-ring-color:color-mix(in oklab, var(--color-sky-500) 40%, transparent)}}.ring-slate-200{--tw-ring-color:var(--color-slate-200)}.ring-slate-600{--tw-ring-color:var(--color-slate-600)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[bridge\:restart\]{bridge:restart}.group-open\:rotate-45:is(:where(.group):is([open],:popover-open,:open) *){rotate:45deg}@media (hover:hover){.hover\:bg-slate-800:hover{background-color:var(--color-slate-800)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:top-4:focus{top:calc(var(--spacing) * 4)}.focus\:left-4:focus{left:calc(var(--spacing) * 4)}.focus\:z-50:focus{z-index:50}.focus\:rounded-lg:focus{border-radius:var(--radius-lg)}.focus\:px-3:focus{padding-inline:calc(var(--spacing) * 3)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}@media (prefers-reduced-motion:reduce){.motion-reduce\:animate-none{animation:none}}@media (min-width:40rem){.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}:where(.sm\:divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px * var(--tw-divide-x-reverse));border-inline-end-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:px-7{padding-inline:calc(var(--spacing) * 7)}.sm\:py-16{padding-block:calc(var(--spacing) * 16)}.sm\:py-20{padding-block:calc(var(--spacing) * 20)}.sm\:py-28{padding-block:calc(var(--spacing) * 28)}.sm\:py-32{padding-block:calc(var(--spacing) * 32)}.sm\:pt-28{padding-top:calc(var(--spacing) * 28)}.sm\:pb-32{padding-bottom:calc(var(--spacing) * 32)}.sm\:pb-36{padding-bottom:calc(var(--spacing) * 36)}.sm\:text-\[48px\]{font-size:48px}.sm\:text-\[52px\]{font-size:52px}.sm\:text-\[56px\]{font-size:56px}.sm\:text-\[68px\]{font-size:68px}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline-flex{display:inline-flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}}@media (min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-24{top:calc(var(--spacing) * 24)}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}.lg\:grid-cols-\[1fr_300px\]{grid-template-columns:1fr 300px}.lg\:grid-cols-\[2fr_1fr_1fr_1fr\]{grid-template-columns:2fr 1fr 1fr 1fr}.lg\:grid-cols-\[220px_1fr\]{grid-template-columns:220px 1fr}.lg\:items-center{align-items:center}.lg\:self-start{align-self:flex-start}.lg\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.lg\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(fonts/inter-latin-wght-normal.woff2)format("woff2-variations")}:root{--bz-bg-0:#fafafa;--bz-bg-1:#fff;--bz-bg-2:#f2f2f2;--bz-bg-3:#e8e8e8;--bz-fg-0:#0a0a0a;--bz-fg-1:#404040;--bz-fg-2:#6b6b6b;--bz-accent:#3f5fe8;--bz-ink:#171717;--bz-ink-fg:#fafafa;--bz-ok:#15803d;--bz-warn:#b45309;--bz-danger:#dc2626;--bz-line:#e5e5e5;--bz-ring:0 0 0 1px #0000000f, 0 1px 2px -1px #0000000f, 0 2px 4px 0 #0000000a;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bz-bg-0:#0d0d0d;--bz-bg-1:#171717;--bz-bg-2:#1f1f1f;--bz-bg-3:#2a2a2a;--bz-fg-0:#fafafa;--bz-fg-1:#d4d4d4;--bz-fg-2:#a1a1a1;--bz-accent:#8ea2ff;--bz-ink:#ededed;--bz-ink-fg:#171717;--bz-ok:#4ade80;--bz-warn:#fbbf24;--bz-danger:#f87171;--bz-line:#ffffff1a;--bz-ring:0 0 0 1px #ffffff14;color-scheme:dark}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@keyframes pulse{50%{opacity:.5}}
2
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial;--tw-divide-x-reverse:0}}}@layer theme{:root,:host{--font-sans:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", Consolas, monospace;--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-900:oklch(37.8% .077 168.94);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-700:oklch(50% .134 242.749);--color-sky-800:oklch(44.3% .11 240.79);--color-sky-900:oklch(39.1% .09 240.876);--color-indigo-50:oklch(96.2% .018 272.314);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-300:oklch(78.5% .115 274.713);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--color-rose-900:oklch(41% .159 10.272);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--default-mono-font-family:ui-monospace, "SF Mono", "Cascadia Mono", Consolas, monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}body{margin:calc(var(--spacing) * 0);background-color:var(--bz-bg-0);--tw-leading:var(--leading-snug);font-family:Inter Variable,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:var(--leading-snug);color:var(--bz-fg-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:2px solid var(--bz-accent);outline-offset:2px}code{background-color:var(--bz-bg-3);padding-inline:calc(var(--spacing) * 1);border-radius:.25rem;font-family:ui-monospace,SF Mono,Cascadia Mono,Consolas,monospace;font-size:11px}input[type=text],input[type=password],input[type=number],textarea{border-radius:var(--radius-md);border-style:var(--tw-border-style);border-width:1px;border-color:var(--bz-line);background-color:var(--bz-bg-2);width:100%;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);color:var(--bz-fg-0);--tw-outline-style:none;outline-style:none;font-size:12px}:is(input[type=text],input[type=password],input[type=number],textarea):focus{border-color:var(--bz-accent)}[hidden]{display:none!important}}@layer components{.panel{margin-inline:calc(var(--spacing) * 2);margin-block:calc(var(--spacing) * 2);border-radius:var(--radius-xl);background-color:var(--bz-bg-1);padding:calc(var(--spacing) * 3);box-shadow:var(--bz-ring)}.panel-title{margin:calc(var(--spacing) * 0);--tw-font-weight:var(--font-weight-bold);font-size:11px;font-weight:var(--font-weight-bold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);color:var(--bz-fg-2);text-transform:uppercase}.hint{margin:calc(var(--spacing) * 0);color:var(--bz-fg-2);font-size:11px}.btn{cursor:pointer;border-radius:var(--radius-lg);border-style:var(--tw-border-style);border-width:1px;border-color:var(--bz-line);background-color:var(--bz-bg-1);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1);--tw-font-weight:var(--font-weight-medium);font-size:12px;font-weight:var(--font-weight-medium);color:var(--bz-fg-0);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.btn:hover{background-color:var(--bz-bg-2)}}.btn:disabled{opacity:.5}.btn-primary{border-color:var(--bz-ink);background-color:var(--bz-ink);color:var(--bz-ink-fg)}@media (hover:hover){.btn-primary:hover{background-color:var(--bz-ink)}@supports (color:color-mix(in lab, red, red)){.btn-primary:hover{background-color:color-mix(in oklab, var(--bz-ink) 85%, transparent)}}}.btn-ghost{background-color:#0000}@media (hover:hover){.btn-ghost:hover{background-color:var(--bz-bg-2)}}.btn-danger{border-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger{border-color:color-mix(in oklab, var(--bz-danger) 40%, transparent)}}.btn-danger{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger{background-color:color-mix(in oklab, var(--bz-danger) 10%, transparent)}}.btn-danger{color:var(--bz-danger)}@media (hover:hover){.btn-danger:hover{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger:hover{background-color:color-mix(in oklab, var(--bz-danger) 20%, transparent)}}}.card{gap:calc(var(--spacing) * 1.5);border-radius:var(--radius-lg);border-style:var(--tw-border-style);border-width:1px;border-color:var(--bz-line);background-color:var(--bz-bg-1);padding:calc(var(--spacing) * 2.5);flex-direction:column;display:flex}.pill{padding-inline:calc(var(--spacing) * 2);--tw-font-weight:var(--font-weight-bold);font-size:10px;font-weight:var(--font-weight-bold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);text-transform:uppercase;border-radius:3.40282e38px;padding-block:1px}.pill-ok{background-color:var(--bz-ok)}@supports (color:color-mix(in lab, red, red)){.pill-ok{background-color:color-mix(in oklab, var(--bz-ok) 15%, transparent)}}.pill-ok{color:var(--bz-ok)}.pill-warn{background-color:var(--bz-warn)}@supports (color:color-mix(in lab, red, red)){.pill-warn{background-color:color-mix(in oklab, var(--bz-warn) 15%, transparent)}}.pill-warn{color:var(--bz-warn)}.pill-bad{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.pill-bad{background-color:color-mix(in oklab, var(--bz-danger) 15%, transparent)}}.pill-bad{color:var(--bz-danger)}.pill-muted{background-color:var(--bz-bg-3);color:var(--bz-fg-2)}.meta{color:var(--bz-fg-1);font-size:11px}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.right-0{right:calc(var(--spacing) * 0)}.z-10{z-index:10}.z-40{z-index:40}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing) * 0)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-9{margin-top:calc(var(--spacing) * 9)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.aspect-\[4\/3\]{aspect-ratio:4/3}.size-1{width:calc(var(--spacing) * 1);height:calc(var(--spacing) * 1)}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-16{height:calc(var(--spacing) * 16)}.h-24{height:calc(var(--spacing) * 24)}.h-\[520px\]{height:520px}.h-full{height:100%}.max-h-20{max-height:calc(var(--spacing) * 20)}.max-h-28{max-height:calc(var(--spacing) * 28)}.max-h-72{max-height:calc(var(--spacing) * 72)}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing) * 1)}.w-1\/3{width:33.3333%}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[8rem\]{max-width:8rem}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0{gap:calc(var(--spacing) * 0)}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-12{gap:calc(var(--spacing) * 12)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-10{column-gap:calc(var(--spacing) * 10)}.gap-y-8{row-gap:calc(var(--spacing) * 8)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-line>:not(:last-child)){border-color:var(--bz-line)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[32px\]{border-radius:32px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-accent,.border-accent\/40{border-color:var(--bz-accent)}@supports (color:color-mix(in lab, red, red)){.border-accent\/40{border-color:color-mix(in oklab, var(--bz-accent) 40%, transparent)}}.border-amber-300{border-color:var(--color-amber-300)}.border-amber-400{border-color:var(--color-amber-400)}.border-danger\/30{border-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.border-danger\/30{border-color:color-mix(in oklab, var(--bz-danger) 30%, transparent)}}.border-danger\/40{border-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.border-danger\/40{border-color:color-mix(in oklab, var(--bz-danger) 40%, transparent)}}.border-emerald-200{border-color:var(--color-emerald-200)}.border-emerald-300{border-color:var(--color-emerald-300)}.border-emerald-400{border-color:var(--color-emerald-400)}.border-emerald-500{border-color:var(--color-emerald-500)}.border-indigo-200{border-color:var(--color-indigo-200)}.border-indigo-300{border-color:var(--color-indigo-300)}.border-indigo-500{border-color:var(--color-indigo-500)}.border-line{border-color:var(--bz-line)}.border-ok\/40{border-color:var(--bz-ok)}@supports (color:color-mix(in lab, red, red)){.border-ok\/40{border-color:color-mix(in oklab, var(--bz-ok) 40%, transparent)}}.border-rose-200{border-color:var(--color-rose-200)}.border-rose-300{border-color:var(--color-rose-300)}.border-sky-300{border-color:var(--color-sky-300)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.border-slate-600{border-color:var(--color-slate-600)}.border-warn\/40{border-color:var(--bz-warn)}@supports (color:color-mix(in lab, red, red)){.border-warn\/40{border-color:color-mix(in oklab, var(--bz-warn) 40%, transparent)}}.bg-accent\/10{background-color:var(--bz-accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/10{background-color:color-mix(in oklab, var(--bz-accent) 10%, transparent)}}.bg-accent\/15{background-color:var(--bz-accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/15{background-color:color-mix(in oklab, var(--bz-accent) 15%, transparent)}}.bg-amber-50{background-color:var(--color-amber-50)}.bg-bg-1{background-color:var(--bz-bg-1)}.bg-danger,.bg-danger\/5{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.bg-danger\/5{background-color:color-mix(in oklab, var(--bz-danger) 5%, transparent)}}.bg-danger\/10{background-color:var(--bz-danger)}@supports (color:color-mix(in lab, red, red)){.bg-danger\/10{background-color:color-mix(in oklab, var(--bz-danger) 10%, transparent)}}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-900{background-color:var(--color-emerald-900)}.bg-emerald-900\/40{background-color:#004e3b66}@supports (color:color-mix(in lab, red, red)){.bg-emerald-900\/40{background-color:color-mix(in oklab, var(--color-emerald-900) 40%, transparent)}}.bg-emerald-900\/60{background-color:#004e3b99}@supports (color:color-mix(in lab, red, red)){.bg-emerald-900\/60{background-color:color-mix(in oklab, var(--color-emerald-900) 60%, transparent)}}.bg-fg-2{background-color:var(--bz-fg-2)}.bg-indigo-50{background-color:var(--color-indigo-50)}.bg-line{background-color:var(--bz-line)}.bg-ok,.bg-ok\/10{background-color:var(--bz-ok)}@supports (color:color-mix(in lab, red, red)){.bg-ok\/10{background-color:color-mix(in oklab, var(--bz-ok) 10%, transparent)}}.bg-rose-50{background-color:var(--color-rose-50)}.bg-sky-50{background-color:var(--color-sky-50)}.bg-sky-900{background-color:var(--color-sky-900)}.bg-sky-900\/60{background-color:#024a7099}@supports (color:color-mix(in lab, red, red)){.bg-sky-900\/60{background-color:color-mix(in oklab, var(--color-sky-900) 60%, transparent)}}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-800{background-color:var(--color-slate-800)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-warn,.bg-warn\/10{background-color:var(--bz-warn)}@supports (color:color-mix(in lab, red, red)){.bg-warn\/10{background-color:color-mix(in oklab, var(--bz-warn) 10%, transparent)}}.object-contain{object-fit:contain}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0{padding-block:calc(var(--spacing) * 0)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-14{padding-block:calc(var(--spacing) * 14)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-24{padding-block:calc(var(--spacing) * 24)}.py-28{padding-block:calc(var(--spacing) * 28)}.py-px{padding-block:1px}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-20{padding-top:calc(var(--spacing) * 20)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-14{padding-bottom:calc(var(--spacing) * 14)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pb-28{padding-bottom:calc(var(--spacing) * 28)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SF Mono,Cascadia Mono,Consolas,monospace}.font-sans{font-family:Inter Variable,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.font-serif{font-family:var(--font-serif)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[19px\]{font-size:19px}.text-\[20px\]{font-size:20px}.text-\[38px\]{font-size:38px}.text-\[40px\]{font-size:40px}.text-\[44px\]{font-size:44px}.text-\[52px\]{font-size:52px}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-\[1\.04\]{--tw-leading:1.04;line-height:1.04}.leading-\[1\.06\]{--tw-leading:1.06;line-height:1.06}.leading-\[1\.08\]{--tw-leading:1.08;line-height:1.08}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.01em\]{--tw-tracking:-.01em;letter-spacing:-.01em}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-\[-0\.04em\]{--tw-tracking:-.04em;letter-spacing:-.04em}.tracking-\[-0\.015em\]{--tw-tracking:-.015em;letter-spacing:-.015em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-accent{color:var(--bz-accent)}.text-amber-600{color:var(--color-amber-600)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-danger{color:var(--bz-danger)}.text-emerald-200{color:var(--color-emerald-200)}.text-emerald-300{color:var(--color-emerald-300)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-emerald-900{color:var(--color-emerald-900)}.text-fg-1{color:var(--bz-fg-1)}.text-fg-2{color:var(--bz-fg-2)}.text-indigo-300{color:var(--color-indigo-300)}.text-indigo-600{color:var(--color-indigo-600)}.text-indigo-700{color:var(--color-indigo-700)}.text-ok{color:var(--bz-ok)}.text-rose-700{color:var(--color-rose-700)}.text-rose-800{color:var(--color-rose-800)}.text-rose-900{color:var(--color-rose-900)}.text-sky-200{color:var(--color-sky-200)}.text-sky-700{color:var(--color-sky-700)}.text-sky-800{color:var(--color-sky-800)}.text-sky-900{color:var(--color-sky-900)}.text-slate-100{color:var(--color-slate-100)}.text-slate-200{color:var(--color-slate-200)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-800{color:var(--color-slate-800)}.text-warn{color:var(--bz-warn)}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-emerald-600{accent-color:var(--color-emerald-600)}.accent-indigo-600{accent-color:var(--color-indigo-600)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-amber-200{--tw-ring-color:var(--color-amber-200)}.ring-emerald-200{--tw-ring-color:var(--color-emerald-200)}.ring-emerald-500{--tw-ring-color:var(--color-emerald-500)}.ring-emerald-500\/40{--tw-ring-color:#00bb7f66}@supports (color:color-mix(in lab, red, red)){.ring-emerald-500\/40{--tw-ring-color:color-mix(in oklab, var(--color-emerald-500) 40%, transparent)}}.ring-rose-200{--tw-ring-color:var(--color-rose-200)}.ring-sky-200{--tw-ring-color:var(--color-sky-200)}.ring-sky-500{--tw-ring-color:var(--color-sky-500)}.ring-sky-500\/40{--tw-ring-color:#00a5ef66}@supports (color:color-mix(in lab, red, red)){.ring-sky-500\/40{--tw-ring-color:color-mix(in oklab, var(--color-sky-500) 40%, transparent)}}.ring-slate-200{--tw-ring-color:var(--color-slate-200)}.ring-slate-600{--tw-ring-color:var(--color-slate-600)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[bridge\:restart\]{bridge:restart}.group-open\:rotate-45:is(:where(.group):is([open],:popover-open,:open) *){rotate:45deg}@media (hover:hover){.hover\:bg-slate-800:hover{background-color:var(--color-slate-800)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:top-4:focus{top:calc(var(--spacing) * 4)}.focus\:left-4:focus{left:calc(var(--spacing) * 4)}.focus\:z-50:focus{z-index:50}.focus\:rounded-lg:focus{border-radius:var(--radius-lg)}.focus\:px-3:focus{padding-inline:calc(var(--spacing) * 3)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}@media (prefers-reduced-motion:reduce){.motion-reduce\:animate-none{animation:none}}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}:where(.sm\:divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px * var(--tw-divide-x-reverse));border-inline-end-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:px-7{padding-inline:calc(var(--spacing) * 7)}.sm\:py-16{padding-block:calc(var(--spacing) * 16)}.sm\:py-20{padding-block:calc(var(--spacing) * 20)}.sm\:py-28{padding-block:calc(var(--spacing) * 28)}.sm\:py-32{padding-block:calc(var(--spacing) * 32)}.sm\:pt-28{padding-top:calc(var(--spacing) * 28)}.sm\:pb-32{padding-bottom:calc(var(--spacing) * 32)}.sm\:pb-36{padding-bottom:calc(var(--spacing) * 36)}.sm\:text-\[48px\]{font-size:48px}.sm\:text-\[52px\]{font-size:52px}.sm\:text-\[56px\]{font-size:56px}.sm\:text-\[68px\]{font-size:68px}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline-flex{display:inline-flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}}@media (min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-24{top:calc(var(--spacing) * 24)}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1\.6fr_1fr_1\.4fr_1fr_1fr\]{grid-template-columns:1.6fr 1fr 1.4fr 1fr 1fr}.lg\:grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}.lg\:grid-cols-\[1fr_300px\]{grid-template-columns:1fr 300px}.lg\:grid-cols-\[220px_1fr\]{grid-template-columns:220px 1fr}.lg\:items-center{align-items:center}.lg\:self-start{align-self:flex-start}.lg\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.lg\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(fonts/inter-latin-wght-normal.woff2)format("woff2-variations")}:root{--bz-bg-0:#fafafa;--bz-bg-1:#fff;--bz-bg-2:#f2f2f2;--bz-bg-3:#e8e8e8;--bz-fg-0:#0a0a0a;--bz-fg-1:#404040;--bz-fg-2:#6b6b6b;--bz-accent:#3f5fe8;--bz-ink:#171717;--bz-ink-fg:#fafafa;--bz-ok:#15803d;--bz-warn:#b45309;--bz-danger:#dc2626;--bz-line:#e5e5e5;--bz-ring:0 0 0 1px #0000000f, 0 1px 2px -1px #0000000f, 0 2px 4px 0 #0000000a;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bz-bg-0:#0d0d0d;--bz-bg-1:#171717;--bz-bg-2:#1f1f1f;--bz-bg-3:#2a2a2a;--bz-fg-0:#fafafa;--bz-fg-1:#d4d4d4;--bz-fg-2:#a1a1a1;--bz-accent:#8ea2ff;--bz-ink:#ededed;--bz-ink-fg:#171717;--bz-ok:#4ade80;--bz-warn:#fbbf24;--bz-danger:#f87171;--bz-line:#ffffff1a;--bz-ring:0 0 0 1px #ffffff14;color-scheme:dark}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@keyframes pulse{50%{opacity:.5}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "browserzap",
3
- "version": "0.5.5",
3
+ "version": "0.6.0",
4
4
  "description": "Let your AI agent (Claude Code, Codex, Cursor or any MCP client) work in your own Chrome, with your logins, your approval and a Stop button.",
5
5
  "homepage": "https://browserzap.com",
6
6
  "bugs": {