doxa-maps/public/dx-maps/plugin-studio/plugin-studio.js

253 lines
269 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(function(){"use strict";/**
* @vue/shared v3.5.42
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/function jo(e){const t=Object.create(null);for(const o of e.split(","))t[o]=1;return o=>o in t}const V={},lt=[],xe=()=>{},qn=()=>!1,Jt=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Xt=e=>e.startsWith("onUpdate:"),Q=Object.assign,Vo=(e,t)=>{const o=e.indexOf(t);o>-1&&e.splice(o,1)},ba=Object.prototype.hasOwnProperty,H=(e,t)=>ba.call(e,t),A=Array.isArray,Ye=e=>_t(e)==="[object Map]",Zt=e=>_t(e)==="[object Set]",Gn=e=>_t(e)==="[object Date]",E=e=>typeof e=="function",J=e=>typeof e=="string",ke=e=>typeof e=="symbol",z=e=>e!==null&&typeof e=="object",Yn=e=>(z(e)||E(e))&&E(e.then)&&E(e.catch),Jn=Object.prototype.toString,_t=e=>Jn.call(e),va=e=>_t(e).slice(8,-1),Qt=e=>_t(e)==="[object Object]",Ko=e=>J(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,wt=jo(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),eo=e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))},ka=/-\w/g,ne=eo(e=>e.replace(ka,t=>t.slice(1).toUpperCase())),ya=/\B([A-Z])/g,me=eo(e=>e.replace(ya,"-$1").toLowerCase()),to=eo(e=>e.charAt(0).toUpperCase()+e.slice(1)),qo=eo(e=>e?`on${to(e)}`:""),Se=(e,t)=>!Object.is(e,t),oo=(e,...t)=>{for(let o=0;o<e.length;o++)e[o](...t)},Xn=(e,t,o,n=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:o})},Go=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Zn=e=>{const t=J(e)?Number(e):NaN;return isNaN(t)?e:t};let Qn;const no=()=>Qn||(Qn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function xt(e){if(A(e)){const t={};for(let o=0;o<e.length;o++){const n=e[o],s=J(n)?Sa(n):xt(n);if(s)for(const i in s)t[i]=s[i]}return t}else if(J(e)||z(e))return e}const _a=/;(?![^(]*\))/g,wa=/:([^]+)/,xa=/\/\*[^]*?\*\//g;function Sa(e){const t={};return e.replace(xa,"").split(_a).forEach(o=>{if(o){const n=o.split(wa);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function de(e){let t="";if(J(e))t=e;else if(A(e))for(let o=0;o<e.length;o++){const n=de(e[o]);n&&(t+=n+" ")}else if(z(e))for(const o in e)e[o]&&(t+=o+" ");return t.trim()}const Ma=jo("itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly");function es(e){return!!e||e===""}function La(e,t){if(e.length!==t.length)return!1;let o=!0;for(let n=0;o&&n<e.length;n++)o=so(e[n],t[n]);return o}function ts(e,t){if(e.size!==t.size)return!1;const o=Array.from(t),n=new Uint8Array(o.length);for(const s of e){let i=-1;for(let a=0;a<o.length;a++)if(!n[a]&&so(s,o[a])){i=a;break}if(i<0)return!1;n[i]=1}return!0}function so(e,t){if(e===t)return!0;let o=Gn(e),n=Gn(t);if(o||n)return o&&n?e.getTime()===t.getTime():!1;if(o=ke(e),n=ke(t),o||n)return e===t;if(o=A(e),n=A(t),o||n)return o&&n?La(e,t):!1;if(o=z(e),n=z(t),o||n){if(!o||!n)return!1;if(o=Ye(e),n=Ye(t),o||n||(o=Zt(e),n=Zt(t),o||n))return o&&n?ts(e,t):!1;const s=Object.keys(e).length,i=Object.keys(t).length;if(s!==i)return!1;for(const a in e){const r=e.hasOwnProperty(a),l=t.hasOwnProperty(a);if(r&&!l||!r&&l||!so(e[a],t[a]))return!1}}return String(e)===String(t)}const os=e=>!!(e&&e.__v_isRef===!0),T=e=>J(e)?e:e==null?"":A(e)||z(e)&&(e.toString===Jn||!E(e.toString))?os(e)?T(e.value):JSON.stringify(e,ns,2):String(e),ns=(e,t)=>os(t)?ns(e,t.value):Ye(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[n,s],i)=>(o[Yo(n,i)+" =>"]=s,o),{})}:Zt(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>Yo(o))}:ke(t)?Yo(t):z(t)&&!A(t)&&!Qt(t)?String(t):t,Yo=(e,t="")=>{var o;return ke(e)?`Symbol(${(o=e.description)!=null?o:t})`:e};/**
* @vue/reactivity v3.5.42
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/let se;class Ta{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&se&&(se.active?(this.parent=se,this.index=(se.scopes||(se.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,o;if(this.scopes){const n=this.scopes.slice();for(t=0,o=n.length;t<o;t++)n[t].pause()}for(t=0,o=this.effects.length;t<o;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,o;if(this.scopes){const s=this.scopes.slice();for(t=0,o=s.length;t<o;t++)s[t].resume()}const n=this.effects.slice();for(t=0,o=n.length;t<o;t++)n[t].resume()}}run(t){if(this._active){const o=se;try{return se=this,t()}finally{se=o}}}on(){++this._on===1&&(this.prevScope=se,se=this)}off(){if(this._on>0&&--this._on===0){if(se===this)se=this.prevScope;else{let t=se;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let o,n;for(o=0,n=this.effects.length;o<n;o++)this.effects[o].stop();for(this.effects.length=0,o=0,n=this.cleanups.length;o<n;o++)this.cleanups[o]();if(this.cleanups.length=0,this.scopes){const s=this.scopes.slice();for(o=0,n=s.length;o<n;o++)s[o].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const s=this.parent.scopes.pop();s&&s!==this&&(this.parent.scopes[this.index]=s,s.index=this.index)}this.parent=void 0}}}function Oa(){return se}let q;const Jo=new WeakSet;class ss{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,se&&(se.active?se.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Jo.has(this)&&(Jo.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||as(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,ps(this),rs(this);const t=q,o=ye;q=this,ye=!0;try{return this.fn()}finally{ls(this),q=t,ye=o,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)en(t);this.deps=this.depsTail=void 0,ps(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Jo.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Qo(this)&&this.run()}get dirty(){return Qo(this)}}let is=0,St,Mt;function as(e,t=!1){if(e.flags|=8,t){e.next=Mt,Mt=e;return}e.next=St,St=e}function Xo(){is++}function Zo(){if(--is>0)return;if(Mt){let t=Mt;for(Mt=void 0;t;){const o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;St;){let t=St;for(St=void 0;t;){const o=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=o}}if(e)throw e}function rs(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ls(e){let t,o=e.depsTail,n=o;for(;n;){const s=n.prevDep;n.version===-1?(n===o&&(o=s),en(n),Ca(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=s}e.deps=t,e.depsTail=o}function Qo(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(cs(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function cs(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Lt)||(e.globalVersion=Lt,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Qo(e))))return;e.flags|=2;const t=e.dep,o=q,n=ye;q=e,ye=!0;try{rs(e);const s=e.fn(e._value);(t.version===0||Se(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{q=o,ye=n,ls(e),e.flags&=-3}}function en(e,t=!1){const{dep:o,prevSub:n,nextSub:s}=e;if(n&&(n.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=n,e.nextSub=void 0),o.subs===e&&(o.subs=n,!n&&o.computed)){o.computed.flags&=-5;for(let i=o.computed.deps;i;i=i.nextDep)en(i,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function Ca(e){const{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}let ye=!0;const ds=[];function Me(){ds.push(ye),ye=!1}function Le(){const e=ds.pop();ye=e===void 0?!0:e}function ps(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const o=q;q=void 0;try{t()}finally{q=o}}}let Lt=0;class Pa{constructor(t,o){this.sub=t,this.dep=o,this.version=o.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class tn{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!q||!ye||q===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==q)o=this.activeLink=new Pa(q,this),q.deps?(o.prevDep=q.depsTail,q.depsTail.nextDep=o,q.depsTail=o):q.deps=q.depsTail=o,us(o);else if(o.version===-1&&(o.version=this.version,o.nextDep)){const n=o.nextDep;n.prevDep=o.prevDep,o.prevDep&&(o.prevDep.nextDep=n),o.prevDep=q.depsTail,o.nextDep=void 0,q.depsTail.nextDep=o,q.depsTail=o,q.deps===o&&(q.deps=n)}return o}trigger(t){this.version++,Lt++,this.notify(t)}notify(t){Xo();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{Zo()}}}function us(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)us(n)}const o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}const on=new WeakMap,Qe=Symbol(""),nn=Symbol(""),Tt=Symbol("");function le(e,t,o){if(ye&&q){let n=on.get(e);n||on.set(e,n=new Map);let s=n.get(o);s||(n.set(o,s=new tn),s.map=n,s.key=o),s.track()}}function Ue(e,t,o,n,s,i){const a=on.get(e);if(!a){Lt++;return}const r=l=>{l&&l.trigger()};if(Xo(),t==="clear")a.forEach(r);else{const l=A(e),d=l&&Ko(o);if(l&&o==="length"){const p=Number(n);a.forEach((h,y)=>{(y==="length"||y===Tt||!ke(y)&&y>=p)&&r(h)})}else switch((o!==void 0||a.has(void 0))&&r(a.get(o)),d&&r(a.get(Tt)),t){case"add":l?d&&r(a.get("length")):(r(a.get(Qe)),Ye(e)&&r(a.get(nn)));break;case"delete":l||(r(a.get(Qe)),Ye(e)&&r(a.get(nn)));break;case"set":Ye(e)&&r(a.get(Qe));break}}Zo()}function ct(e){const t=R(e);return t===e?t:(le(t,"iterate",Tt),be(e)?t:t.map(_e))}function io(e){return le(e=R(e),"iterate",Tt),e}function Te(e,t){return Be(e)?dt(et(e)?_e(t):t):_e(t)}const Aa={__proto__:null,[Symbol.iterator](){return sn(this,Symbol.iterator,e=>Te(this,e))},concat(...e){return ct(this).concat(...e.map(t=>A(t)?ct(t):t))},entries(){return sn(this,"entries",e=>(e[1]=Te(this,e[1]),e))},every(e,t){return ze(this,"every",e,t,void 0,arguments)},filter(e,t){return ze(this,"filter",e,t,o=>o.map(n=>Te(this,n)),arguments)},find(e,t){return ze(this,"find",e,t,o=>Te(this,o),arguments)},findIndex(e,t){return ze(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return ze(this,"findLast",e,t,o=>Te(this,o),arguments)},findLastIndex(e,t){return ze(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return ze(this,"forEach",e,t,void 0,arguments)},includes(...e){return an(this,"includes",e)},indexOf(...e){return an(this,"indexOf",e)},join(e){return ct(this).join(e)},lastIndexOf(...e){return an(this,"lastIndexOf",e)},map(e,t){return ze(this,"map",e,t,void 0,arguments)},pop(){return Ot(this,"pop")},push(...e){return Ot(this,"push",e)},reduce(e,...t){return fs(this,"reduce",e,t)},reduceRight(e,...t){return fs(this,"reduceRight",e,t)},shift(){return Ot(this,"shift")},some(e,t){return ze(this,"some",e,t,void 0,arguments)},splice(...e){return Ot(this,"splice",e)},toReversed(){return ct(this).toReversed()},toSorted(e){return ct(this).toSorted(e)},toSpliced(...e){return ct(this).toSpliced(...e)},unshift(...e){return Ot(this,"unshift",e)},values(){return sn(this,"values",e=>Te(this,e))}};function sn(e,t,o){const n=io(e),s=n[t]();return n!==e&&!be(e)&&(s._next=s.next,s.next=()=>{const i=s._next();return i.done||(i.value=o(i.value)),i}),s}const Na=Array.prototype;function ze(e,t,o,n,s,i){const a=io(e),r=a!==e&&!be(e),l=a[t];if(l!==Na[t]){const h=l.apply(e,i);return r?_e(h):h}let d=o;a!==e&&(r?d=function(h,y){return o.call(this,Te(e,h),y,e)}:o.length>2&&(d=function(h,y){return o.call(this,h,y,e)}));const p=l.call(a,d,n);return r&&s?s(p):p}function fs(e,t,o,n){const s=io(e),i=s!==e&&!be(e);let a=o,r=!1;s!==e&&(i?(r=n.length===0,a=function(d,p,h){return r&&(r=!1,d=Te(e,d)),o.call(this,d,Te(e,p),h,e)}):o.length>3&&(a=function(d,p,h){return o.call(this,d,p,h,e)}));const l=s[t](a,...n);return r?Te(e,l):l}function an(e,t,o){const n=R(e);le(n,"iterate",Tt);const s=n[t](...o);return(s===-1||s===!1)&&dn(o[0])?(o[0]=R(o[0]),n[t](...o)):s}function Ot(e,t,o=[]){Me(),Xo();const n=R(e)[t].apply(e,o);return Zo(),Le(),n}const Ea=jo("__proto__,__v_isRef,__isVue"),hs=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ke));function Fa(e){ke(e)||(e=String(e));const t=R(this);return le(t,"has",e),t.hasOwnProperty(e)}class gs{constructor(t=!1,o=!1){this._isReadonly=t,this._isShallow=o}get(t,o,n){if(o==="__v_skip")return t.__v_skip;const s=this._isReadonly,i=this._isShallow;if(o==="__v_isReactive")return!s;if(o==="__v_isReadonly")return s;if(o==="__v_isShallow")return i;if(o==="__v_raw")return n===(s?i?ys:ks:i?vs:bs).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const a=A(t);if(!s){let l;if(a&&(l=Aa[o]))return l;if(o==="hasOwnProperty")return Fa}const r=Reflect.get(t,o,ie(t)?t:n);if((ke(o)?hs.has(o):Ea(o))||(s||le(t,"get",o),i))return r;if(ie(r)){const l=a&&Ko(o)?r:r.value;return s&&z(l)?cn(l):l}return z(r)?s?cn(r):ln(r):r}}class $s extends gs{constructor(t=!1){super(!1,t)}set(t,o,n,s){let i=t[o];const a=A(t)&&Ko(o);if(!this._isShallow){const d=Be(i);if(!be(n)&&!Be(n)&&(i=R(i),n=R(n)),!a&&ie(i)&&!ie(n))return d||(i.value=n),!0}const r=a?Number(o)<t.length:H(t,o),l=Reflect.set(t,o,n,ie(t)?t:s);return t===R(s)&&l&&(r?Se(n,i)&&Ue(t,"set",o,n):Ue(t,"add",o,n)),l}deleteProperty(t,o){const n=H(t,o);t[o];const s=Reflect.deleteProperty(t,o);return s&&n&&Ue(t,"delete",o,void 0),s}has(t,o){const n=Reflect.has(t,o);return(!ke(o)||!hs.has(o))&&le(t,"has",o),n}ownKeys(t){return le(t,"iterate",A(t)?"length":Qe),Reflect.ownKeys(t)}}class ms extends gs{constructor(t=!1){super(!0,t)}set(t,o){return!0}deleteProperty(t,o){return!0}}const Ia=new $s,Ra=new ms,Da=new $s(!0),Ha=new ms(!0),rn=e=>e,ao=e=>Reflect.getPrototypeOf(e);function Wa(e,t,o){return function(...n){const s=this.__v_raw,i=R(s),a=Ye(i),r=e==="entries"||e===Symbol.iterator&&a,l=e==="keys"&&a,d=s[e](...n),p=o?rn:t?dt:_e;return!t&&le(i,"iterate",l?nn:Qe),Q(Object.create(d),{next(){const{value:h,done:y}=d.next();return y?{value:h,done:y}:{value:r?[p(h[0]),p(h[1])]:p(h),done:y}}})}}function ro(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Ua(e,t){const o={get(s){const i=this.__v_raw,a=R(i),r=R(s);e||(Se(s,r)&&le(a,"get",s),le(a,"get",r));const{has:l}=ao(a),d=t?rn:e?dt:_e;if(l.call(a,s))return d(i.get(s));if(l.call(a,r))return d(i.get(r));i!==a&&i.get(s)},get size(){const s=this.__v_raw;return!e&&le(R(s),"iterate",Qe),s.size},has(s){const i=this.__v_raw,a=R(i),r=R(s);return e||(Se(s,r)&&le(a,"has",s),le(a,"has",r)),s===r?i.has(s):i.has(s)||i.has(r)},forEach(s,i){const a=this,r=a.__v_raw,l=R(r),d=t?rn:e?dt:_e;return!e&&le(l,"iterate",Qe),r.forEach((p,h)=>s.call(i,d(p),d(h),a))}};return Q(o,e?{add:ro("add"),set:ro("set"),delete:ro("delete"),clear:ro("clear")}:{add(s){const i=R(this),a=ao(i),r=R(s),l=!t&&!be(s)&&!Be(s)?r:s;return a.has.call(i,l)||Se(s,l)&&a.has.call(i,s)||Se(r,l)&&a.has.call(i,r)||(i.add(l),Ue(i,"add",l,l)),this},set(s,i){!t&&!be(i)&&!Be(i)&&(i=R(i));const a=R(this),{has:r,get:l}=ao(a);let d=r.call(a,s);d||(s=R(s),d=r.call(a,s));const p=l.call(a,s);return a.set(s,i),d?Se(i,p)&&Ue(a,"set",s,i):Ue(a,"add",s,i),this},delete(s){const i=R(this),{has:a,get:r}=ao(i);let l=a.call(i,s);l||(s=R(s),l=a.call(i,s)),r&&r.call(i,s);const d=i.delete(s);return l&&Ue(i,"delete",s,void 0),d},clear(){const s=R(this),i=s.size!==0,a=s.clear();return i&&Ue(s,"clear",void 0,void 0),a}}),["keys","values","entries",Symbol.iterator].forEach(s=>{o[s]=Wa(s,e,t)}),o}function lo(e,t){const o=Ua(e,t);return(n,s,i)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?n:Reflect.get(H(o,s)&&s in n?o:n,s,i)}const za={get:lo(!1,!1)},Ba={get:lo(!1,!0)},ja={get:lo(!0,!1)},Va={get:lo(!0,!0)},bs=new WeakMap,vs=new WeakMap,ks=new WeakMap,ys=new WeakMap;function Ka(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ln(e){return Be(e)?e:co(e,!1,Ia,za,bs)}function qa(e){return co(e,!1,Da,Ba,vs)}function cn(e){return co(e,!0,Ra,ja,ks)}function $u(e){return co(e,!0,Ha,Va,ys)}function co(e,t,o,n,s){if(!z(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const i=s.get(e);if(i)return i;const a=Ka(va(e));if(a===0)return e;const r=new Proxy(e,a===2?n:o);return s.set(e,r),r}function et(e){return Be(e)?et(e.__v_raw):!!(e&&e.__v_isReactive)}function Be(e){return!!(e&&e.__v_isReadonly)}function be(e){return!!(e&&e.__v_isShallow)}function dn(e){return e?!!e.__v_raw:!1}function R(e){const t=e&&e.__v_raw;return t?R(t):e}function Ga(e){return!H(e,"__v_skip")&&Object.isExtensible(e)&&Xn(e,"__v_skip",!0),e}const _e=e=>z(e)?ln(e):e,dt=e=>z(e)?cn(e):e;function ie(e){return e?e.__v_isRef===!0:!1}function _s(e){return Ya(e,!1)}function Ya(e,t){return ie(e)?e:new Ja(e,t)}class Ja{constructor(t,o){this.dep=new tn,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=o?t:R(t),this._value=o?t:_e(t),this.__v_isShallow=o}get value(){return this.dep.track(),this._value}set value(t){const o=this._rawValue,n=this.__v_isShallow||be(t)||Be(t);t=n?t:R(t),Se(t,o)&&(this._rawValue=t,this._value=n?t:_e(t),this.dep.trigger())}}function ws(e){return ie(e)?e.value:e}const Xa={get:(e,t,o)=>t==="__v_raw"?e:ws(Reflect.get(e,t,o)),set:(e,t,o,n)=>{const s=e[t];return ie(s)&&!ie(o)?(s.value=o,!0):Reflect.set(e,t,o,n)}};function xs(e){return et(e)?e:new Proxy(e,Xa)}class Za{constructor(t,o,n){this.fn=t,this.setter=o,this._value=void 0,this.dep=new tn(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Lt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&q!==this)return as(this,!0),!0}get value(){const t=this.dep.track();return cs(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Qa(e,t,o=!1){let n,s;return E(e)?n=e:(n=e.get,s=e.set),new Za(n,s,o)}const po={},uo=new WeakMap;let tt;function er(e,t=!1,o=tt){if(o){let n=uo.get(o);n||uo.set(o,n=[]),n.push(e)}}function tr(e,t,o=V){const{immediate:n,deep:s,once:i,scheduler:a,augmentJob:r,call:l}=o,d=P=>s?P:be(P)||s===!1||s===0?je(P,1):je(P);let p,h,y,k,W=!1,F=!1;if(ie(e)?(h=()=>e.value,W=be(e)):et(e)?(h=()=>d(e),W=!0):A(e)?(F=!0,W=e.some(P=>et(P)||be(P)),h=()=>e.map(P=>{if(ie(P))return P.value;if(et(P))return d(P);if(E(P))return l?l(P,2):P()})):E(e)?t?h=l?()=>l(e,2):e:h=()=>{if(y){Me();try{y()}finally{Le()}}const P=tt;tt=p;try{return l?l(e,3,[k]):e(k)}finally{tt=P}}:h=xe,t&&s){const P=h,oe=s===!0?1/0:s;h=()=>je(P(),oe)}const ee=Oa(),X=()=>{p.stop(),ee&&ee.active&&Vo(ee.effects,p)};if(i&&t){const P=t;t=(...oe)=>{const Fe=P(...oe);return X(),Fe}}let D=F?new Array(e.length).fill(po):po;const B=P=>{if(!(!(p.flags&1)||!p.dirty&&!P))if(t){const oe=p.run();if(P||s||W||(F?oe.some((Fe,Ie)=>Se(Fe,D[Ie])):Se(oe,D))){y&&y();const Fe=tt;tt=p;try{const Ie=[oe,D===po?void 0:F&&D[0]===po?[]:D,k];D=oe,l?l(t,3,Ie):t(...Ie)}finally{tt=Fe}}}else p.run()};return r&&r(B),p=new ss(h),p.scheduler=a?()=>a(B,!1):B,k=P=>er(P,!1,p),y=p.onStop=()=>{const P=uo.get(p);if(P){if(l)l(P,4);else for(const oe of P)oe();uo.delete(p)}},t?n?B(!0):D=p.run():a?a(B.bind(null,!0),!0):p.run(),X.pause=p.pause.bind(p),X.resume=p.resume.bind(p),X.stop=X,X}function je(e,t=1/0,o){if(t<=0||!z(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,ie(e))je(e.value,t,o);else if(A(e))for(let n=0;n<e.length;n++)je(e[n],t,o);else if(Zt(e)||Ye(e))e.forEach(n=>{je(n,t,o)});else if(Qt(e)){for(const n in e)je(e[n],t,o);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&je(e[n],t,o)}return e}/**
* @vue/runtime-core v3.5.42
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/const Ct=[];let pn=!1;function mu(e,...t){if(pn)return;pn=!0,Me();const o=Ct.length?Ct[Ct.length-1].component:null,n=o&&o.appContext.config.warnHandler,s=or();if(n)pt(n,o,11,[e+t.map(i=>{var a,r;return(r=(a=i.toString)==null?void 0:a.call(i))!=null?r:JSON.stringify(i)}).join(""),o&&o.proxy,s.map(({vnode:i})=>`at <${xi(o,i.type)}>`).join(`
`),s]);else{const i=[`[Vue warn]: ${e}`,...t];s.length&&i.push(`
`,...nr(s)),console.warn(...i)}Le(),pn=!1}function or(){let e=Ct[Ct.length-1];if(!e)return[];const t=[];for(;e;){const o=t[0];o&&o.vnode===e?o.recurseCount++:t.push({vnode:e,recurseCount:0});const n=e.component&&e.component.parent;e=n&&n.vnode}return t}function nr(e){const t=[];return e.forEach((o,n)=>{t.push(...n===0?[]:[`
`],...sr(o))}),t}function sr({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:"",n=e.component?e.component.parent==null:!1,s=` at <${xi(e.component,e.type,n)}`,i=">"+o;return e.props?[s,...ir(e.props),i]:[s+i]}function ir(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach(n=>{t.push(...Ss(n,e[n]))}),o.length>3&&t.push(" ..."),t}function Ss(e,t,o){return J(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?o?t:[`${e}=${t}`]:ie(t)?(t=Ss(e,R(t.value),!0),o?t:[`${e}=Ref<`,t,">"]):E(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=R(t),o?t:[`${e}=`,t])}function pt(e,t,o,n){try{return n?e(...n):e()}catch(s){fo(s,t,o)}}function we(e,t,o,n){if(E(e)){const s=pt(e,t,o,n);return s&&Yn(s)&&s.catch(i=>{fo(i,t,o)}),s}if(A(e)){const s=[];for(let i=0;i<e.length;i++)s.push(we(e[i],t,o,n));return s}}function fo(e,t,o,n=!0){const s=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:a}=t&&t.appContext.config||V;if(t){let r=t.parent;const l=t.proxy,d=`https://vuejs.org/error-reference/#runtime-${o}`;for(;r;){const p=r.ec;if(p){for(let h=0;h<p.length;h++)if(p[h](e,l,d)===!1)return}r=r.parent}if(i){Me(),pt(i,null,10,[e,l,d]),Le();return}}ar(e,o,s,n,a)}function ar(e,t,o,n=!0,s=!1){if(s)throw e;console.error(e)}const pe=[];let Oe=-1;const ut=[];let Je=null,ft=0;const Ms=Promise.resolve();let ho=null;function Ls(e){const t=ho||Ms;return e?t.then(this?e.bind(this):e):t}function rr(e){let t=Oe+1,o=pe.length;for(;t<o;){const n=t+o>>>1,s=pe[n],i=Pt(s);i<e||i===e&&s.flags&2?t=n+1:o=n}return t}function un(e){if(!(e.flags&1)){const t=Pt(e),o=pe[pe.length-1];!o||!(e.flags&2)&&t>=Pt(o)?pe.push(e):pe.splice(rr(t),0,e),e.flags|=1,Ts()}}function Ts(){ho||(ho=Ms.then(Ps))}function lr(e){if(!A(e))Je&&e.id===-1?Je.splice(ft+1,0,e):e.flags&1||(ut.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)ut.push(e[t]);Ts()}function Os(e,t,o=Oe+1){for(;o<pe.length;o++){const n=pe[o];if(n&&n.flags&2){if(e&&n.id!==e.uid)continue;pe.splice(o,1),o--,n.flags&4&&(n.flags&=-2),n(),n.flags&4||(n.flags&=-2)}}}function Cs(e){if(ut.length){const t=[...new Set(ut)].sort((o,n)=>Pt(o)-Pt(n));if(ut.length=0,Je){for(let o=0;o<t.length;o++)Je.push(t[o]);return}for(Je=t,ft=0;ft<Je.length;ft++){const o=Je[ft];o.flags&4&&(o.flags&=-2),o.flags&8||o(),o.flags&=-2}Je=null,ft=0}}const Pt=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Ps(e){try{for(Oe=0;Oe<pe.length;Oe++){const t=pe[Oe];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),pt(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Oe<pe.length;Oe++){const t=pe[Oe];t&&(t.flags&=-2)}Oe=-1,pe.length=0,Cs(),ho=null,(pe.length||ut.length)&&Ps()}}let ae=null,As=null;function go(e){const t=ae;return ae=e,As=e&&e.type.__scopeId||null,t}function ht(e,t=ae,o){if(!t||e._n)return e;const n=(...s)=>{n._d&&gi(-1);const i=go(t),a=Ke.length;let r;try{r=e(...s)}finally{for(let l=Ke.length;l>a;l--)Ln();go(i),n._d&&gi(1)}return r};return n._n=!0,n._c=!0,n._d=!0,n}function gt(e,t){if(ae===null)return e;const o=Lo(ae),n=e.dirs||(e.dirs=[]);for(let s=0;s<t.length;s++){let[i,a,r,l=V]=t[s];i&&(E(i)&&(i={mounted:i,updated:i}),i.deep&&je(a),n.push({dir:i,instance:o,value:a,oldValue:void 0,arg:r,modifiers:l}))}return e}function ot(e,t,o,n){const s=e.dirs,i=t&&t.dirs;for(let a=0;a<s.length;a++){const r=s[a];i&&(r.oldValue=i[a].value);let l=r.dir[n];l&&(Me(),we(l,o,8,[e.el,r,e,t]),Le())}}function cr(e,t){if(ce){let o=ce.provides;const n=ce.parent&&ce.parent.provides;n===o&&(o=ce.provides=Object.create(n)),o[e]=t}}function At(e,t,o=!1){const n=bi();if(n||mt){let s=mt?mt._context.provides:n?n.parent==null||n.ce?n.vnode.appContext&&n.vnode.appContext.provides:n.parent.provides:void 0;if(s&&e in s)return s[e];if(arguments.length>1)return o&&E(t)?t.call(n&&n.proxy):t}}const dr=Symbol.for("v-scx"),pr=()=>At(dr);function $o(e,t,o){return Ns(e,t,o)}function Ns(e,t,o=V){const{immediate:n,deep:s,flush:i,once:a}=o,r=Q({},o),l=t&&n||!t&&i!=="post";let d;if(Ut){if(i==="sync"){const k=pr();d=k.__watcherHandles||(k.__watcherHandles=[])}else if(!l){const k=()=>{};return k.stop=xe,k.resume=xe,k.pause=xe,k}}const p=ce;r.call=(k,W,F)=>we(k,p,W,F);let h=!1;i==="post"?r.scheduler=k=>{he(k,p&&p.suspense)}:i!=="sync"&&(h=!0,r.scheduler=(k,W)=>{W?k():un(k)}),r.augmentJob=k=>{t&&(k.flags|=4),h&&(k.flags|=2,p&&(k.id=p.uid,k.i=p))};const y=tr(e,t,r);return Ut&&(d?d.push(y):l&&y()),y}function ur(e,t,o){const n=this.proxy,s=J(e)?e.includes(".")?Es(n,e):()=>n[e]:e.bind(n,n);let i;E(t)?i=t:(i=t.handler,o=t);const a=Wt(this),r=Ns(s,i.bind(n),o);return a(),r}function Es(e,t){const o=t.split(".");return()=>{let n=e;for(let s=0;s<o.length&&n;s++)n=n[o[s]];return n}}const fr=Symbol("_vte"),mo=e=>e.__isTeleport,fn=Symbol("_leaveCb");function hr(e){let t=e[0];if(e.length>1){for(const o of e)if(o.type!==Pe){t=o;break}}return t}function Fs(e){if(!gn(e))return mo(e.type)&&e.children?hr(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:o}=e;if(o){if(t&16)return o[0];if(t&32&&E(o.default))return o.default()}}function hn(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const o=e.component.subTree;hn(mo(o.type)&&Fs(o)||o,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function bo(e,t){return E(e)?Q({name:e.name},t,{setup:e}):e}function Is(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Rs(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}const vo=new WeakMap;function Nt(e,t,o,n,s=!1){if(A(e)){e.forEach((F,ee)=>Nt(F,t&&(A(t)?t[ee]:t),o,n,s));return}if($t(n)&&!s){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&Nt(e,t,o,n.component.subTree);return}const i=n.shapeFlag&4?Lo(n.component):n.el,a=s?null:i,{i:r,r:l}=e,d=t&&t.r,p=r.refs===V?r.refs={}:r.refs,h=r.setupState,y=R(h),k=h===V?qn:F=>Rs(p,F)?!1:H(y,F),W=(F,ee)=>!(ee&&Rs(p,ee));if(d!=null&&d!==l){if(Ds(t),J(d))p[d]=null,k(d)&&(h[d]=null);else if(ie(d)){const F=t;W(d,F.k)&&(d.value=null),F.k&&(p[F.k]=null)}}if(E(l))pt(l,r,12,[a,p]);else{const F=J(l),ee=ie(l);if(F||ee){const X=()=>{if(e.f){const D=F?k(l)?h[l]:p[l]:W()||!e.k?l.value:p[e.k];if(s)A(D)&&Vo(D,i);else if(A(D))D.includes(i)||D.push(i);else if(F)p[l]=[i],k(l)&&(h[l]=p[l]);else{const B=[i];W(l,e.k)&&(l.value=B),e.k&&(p[e.k]=B)}}else F?(p[l]=a,k(l)&&(h[l]=a)):ee&&(W(l,e.k)&&(l.value=a),e.k&&(p[e.k]=a))};if(a){const D=()=>{X(),vo.delete(e)};D.id=-1,vo.set(e,D),he(D,o)}else Ds(e),X()}}}function Ds(e){const t=vo.get(e);t&&(t.flags|=8,vo.delete(e))}no().requestIdleCallback,no().cancelIdleCallback;const $t=e=>!!e.type.__asyncLoader,gn=e=>e.type.__isKeepAlive;function gr(e,t){Hs(e,"a",t)}function $r(e,t){Hs(e,"da",t)}function Hs(e,t,o=ce){const n=e.__wdc||(e.__wdc=()=>{let s=o;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(ko(t,n,o),o){let s=o.parent;for(;s&&s.parent;)gn(s.parent.vnode)&&mr(n,t,o,s),s=s.parent}}function mr(e,t,o,n){const s=ko(t,e,n,!0);Us(()=>{Vo(n[t],s)},o)}function ko(e,t,o=ce,n=!1){if(o){const s=o[e]||(o[e]=[]),i=t.__weh||(t.__weh=(...a)=>{Me();const r=Wt(o),l=we(t,o,e,a);return r(),Le(),l});return n?s.unshift(i):s.push(i),i}}const Ve=e=>(t,o=ce)=>{(!Ut||e==="sp")&&ko(e,(...n)=>t(...n),o)},br=Ve("bm"),$n=Ve("m"),vr=Ve("bu"),kr=Ve("u"),Ws=Ve("bum"),Us=Ve("um"),yr=Ve("sp"),_r=Ve("rtg"),wr=Ve("rtc");function xr(e,t=ce){ko("ec",e,t)}const Sr="components";function mn(e,t){return Lr(Sr,e,!0,t)||e}const Mr=Symbol.for("v-ndc");function Lr(e,t,o=!0,n=!1){const s=ae||ce;if(s){const i=s.type;{const r=wi(i,!1);if(r&&(r===t||r===ne(t)||r===to(ne(t))))return i}const a=zs(s[e]||i[e],t)||zs(s.appContext[e],t);return!a&&n?i:a}}function zs(e,t){return e&&(e[t]||e[ne(t)]||e[to(ne(t))])}function Ce(e,t,o,n){let s;const i=o,a=A(e);if(a||J(e)){const r=a&&et(e);let l=!1,d=!1;r&&(l=!be(e),d=Be(e),e=io(e)),s=new Array(e.length);for(let p=0,h=e.length;p<h;p++)s[p]=t(l?d?dt(_e(e[p])):_e(e[p]):e[p],p,void 0,i)}else if(typeof e=="number"){s=new Array(e);for(let r=0;r<e;r++)s[r]=t(r+1,r,void 0,i)}else if(z(e))if(e[Symbol.iterator])s=Array.from(e,(r,l)=>t(r,l,void 0,i));else{const r=Object.keys(e);s=new Array(r.length);for(let l=0,d=r.length;l<d;l++){const p=r[l];s[l]=t(e[p],p,l,i)}}else s=[];return s}function nt(e,t,o,n,s,i){if(o==null&&(o={}),ae.ce||ae.parent&&$t(ae.parent)&&ae.parent.ce){const d=i!=null&&o.key==null?Q({},o,{key:i}):o,p=Object.keys(d).length>0;return t!=="default"&&(d.name=t),S(),Rt(Y,null,[ve("slot",d,n)],p?-2:64)}let a=e[t];a&&a._c&&(a._d=!1);const r=Ke.length;S();let l;try{const d=a&&Bs(a(o)),p=o.key||i||d&&d.key;l=Rt(Y,{key:(p&&!ke(p)?p:`_${t}`)+(!d&&n?"_fb":"")},d||(n?n():[]),d&&e._===1?64:-2)}catch(d){for(let p=Ke.length;p>r;p--)Ln();throw d}finally{a&&a._c&&(a._d=!0)}return l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),l}function Bs(e){return e.some(t=>Tn(t)?!(t.type===Pe||t.type===Y&&!Bs(t.children)):!0)?e:null}const bn=e=>e?ki(e)?Lo(e):bn(e.parent):null,Et=Q(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>bn(e.parent),$root:e=>bn(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>qs(e),$forceUpdate:e=>e.f||(e.f=()=>{un(e.update)}),$nextTick:e=>e.n||(e.n=Ls.bind(e.proxy)),$watch:e=>ur.bind(e)}),vn=(e,t)=>e!==V&&!e.__isScriptSetup&&H(e,t),Tr={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:o,setupState:n,data:s,props:i,accessCache:a,type:r,appContext:l}=e;if(t[0]!=="$"){const y=a[t];if(y!==void 0)switch(y){case 1:return n[t];case 2:return s[t];case 4:return o[t];case 3:return i[t]}else{if(vn(n,t))return a[t]=1,n[t];if(s!==V&&H(s,t))return a[t]=2,s[t];if(H(i,t))return a[t]=3,i[t];if(o!==V&&H(o,t))return a[t]=4,o[t];kn&&(a[t]=0)}}const d=Et[t];let p,h;if(d)return t==="$attrs"&&le(e.attrs,"get",""),d(e);if((p=r.__cssModules)&&(p=p[t]))return p;if(o!==V&&H(o,t))return a[t]=4,o[t];if(h=l.config.globalProperties,H(h,t))return h[t]},set({_:e},t,o){const{data:n,setupState:s,ctx:i}=e;return vn(s,t)?(s[t]=o,!0):n!==V&&H(n,t)?(n[t]=o,!0):H(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:n,appContext:s,props:i,type:a}},r){let l;return!!(o[r]||e!==V&&r[0]!=="$"&&H(e,r)||vn(t,r)||H(i,r)||H(n,r)||H(Et,r)||H(s.config.globalProperties,r)||(l=a.__cssModules)&&l[r])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:H(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function js(e){return A(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}let kn=!0;function Or(e){const t=qs(e),o=e.proxy,n=e.ctx;kn=!1,t.beforeCreate&&Vs(t.beforeCreate,e,"bc");const{data:s,computed:i,methods:a,watch:r,provide:l,inject:d,created:p,beforeMount:h,mounted:y,beforeUpdate:k,updated:W,activated:F,deactivated:ee,beforeDestroy:X,beforeUnmount:D,destroyed:B,unmounted:P,render:oe,renderTracked:Fe,renderTriggered:Ie,errorCaptured:Ze,serverPrefetch:Ho,expose:it,inheritAttrs:Kt,components:Wo,directives:Uo,filters:Vn}=t;if(d&&Cr(d,n,null),a)for(const Z in a){const G=a[Z];E(G)&&(n[Z]=G.bind(o))}if(s){const Z=s.call(o,o);z(Z)&&(e.data=ln(Z))}if(kn=!0,i)for(const Z in i){const G=i[Z],at=E(G)?G.bind(o,o):E(G.get)?G.get.bind(o,o):xe,zo=!E(G)&&E(G.set)?G.set.bind(o):xe,rt=Si({get:at,set:zo});Object.defineProperty(n,Z,{enumerable:!0,configurable:!0,get:()=>rt.value,set:Re=>rt.value=Re})}if(r)for(const Z in r)Ks(r[Z],n,o,Z);if(l){const Z=E(l)?l.call(o):l;Reflect.ownKeys(Z).forEach(G=>{cr(G,Z[G])})}p&&Vs(p,e,"c");function fe(Z,G){A(G)?G.forEach(at=>Z(at.bind(o))):G&&Z(G.bind(o))}if(fe(br,h),fe($n,y),fe(vr,k),fe(kr,W),fe(gr,F),fe($r,ee),fe(xr,Ze),fe(wr,Fe),fe(_r,Ie),fe(Ws,D),fe(Us,P),fe(yr,Ho),A(it))if(it.length){const Z=e.exposed||(e.exposed={});it.forEach(G=>{Object.defineProperty(Z,G,{get:()=>o[G],set:at=>o[G]=at,enumerable:!0})})}else e.exposed||(e.exposed={});oe&&e.render===xe&&(e.render=oe),Kt!=null&&(e.inheritAttrs=Kt),Wo&&(e.components=Wo),Uo&&(e.directives=Uo),Ho&&Is(e)}function Cr(e,t,o=xe){A(e)&&(e=yn(e));for(const n in e){const s=e[n];let i;z(s)?"default"in s?i=At(s.from||n,s.default,!0):i=At(s.from||n):i=At(s),ie(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:a=>i.value=a}):t[n]=i}}function Vs(e,t,o){we(A(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,o)}function Ks(e,t,o,n){let s=n.includes(".")?Es(o,n):()=>o[n];if(J(e)){const i=t[e];E(i)&&$o(s,i)}else if(E(e))$o(s,e.bind(o));else if(z(e))if(A(e))e.forEach(i=>Ks(i,t,o,n));else{const i=E(e.handler)?e.handler.bind(o):t[e.handler];E(i)&&$o(s,i,e)}}function qs(e){const t=e.type,{mixins:o,extends:n}=t,{mixins:s,optionsCache:i,config:{optionMergeStrategies:a}}=e.appContext,r=i.get(t);let l;return r?l=r:!s.length&&!o&&!n?l=t:(l={},s.length&&s.forEach(d=>yo(l,d,a,!0)),yo(l,t,a)),z(t)&&i.set(t,l),l}function yo(e,t,o,n=!1){const{mixins:s,extends:i}=t;i&&yo(e,i,o,!0),s&&s.forEach(a=>yo(e,a,o,!0));for(const a in t)if(!(n&&a==="expose")){const r=Pr[a]||o&&o[a];e[a]=r?r(e[a],t[a]):t[a]}return e}const Pr={data:Gs,props:Ys,emits:Ys,methods:Ft,computed:Ft,beforeCreate:ue,created:ue,beforeMount:ue,mounted:ue,beforeUpdate:ue,updated:ue,beforeDestroy:ue,beforeUnmount:ue,destroyed:ue,unmounted:ue,activated:ue,deactivated:ue,errorCaptured:ue,serverPrefetch:ue,components:Ft,directives:Ft,watch:Nr,provide:Gs,inject:Ar};function Gs(e,t){return t?e?function(){return Q(E(e)?e.call(this,this):e,E(t)?t.call(this,this):t)}:t:e}function Ar(e,t){return Ft(yn(e),yn(t))}function yn(e){if(A(e)){const t={};for(let o=0;o<e.length;o++)t[e[o]]=e[o];return t}return e}function ue(e,t){return e?[...new Set([].concat(e,t))]:t}function Ft(e,t){return e?Q(Object.create(null),e,t):t}function Ys(e,t){return e?A(e)&&A(t)?[...new Set([...e,...t])]:Q(Object.create(null),js(e),js(t??{})):t}function Nr(e,t){if(!e)return t;if(!t)return e;const o=Q(Object.create(null),e);for(const n in t)o[n]=ue(e[n],t[n]);return o}function Js(){return{app:null,config:{isNativeTag:qn,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Er=0;function Fr(e,t){return function(n,s=null){E(n)||(n=Q({},n)),s!=null&&!z(s)&&(s=null);const i=Js(),a=new WeakSet,r=[];let l=!1;const d=i.app={_uid:Er++,_component:n,_props:s,_container:null,_context:i,_instance:null,version:fl,get config(){return i.config},set config(p){},use(p,...h){return a.has(p)||(p&&E(p.install)?(a.add(p),p.install(d,...h)):E(p)&&(a.add(p),p(d,...h))),d},mixin(p){return i.mixins.includes(p)||i.mixins.push(p),d},component(p,h){return h?(i.components[p]=h,d):i.components[p]},directive(p,h){return h?(i.directives[p]=h,d):i.directives[p]},mount(p,h,y){if(!l){const k=d._ceVNode||ve(n,s);return k.appContext=i,y===!0?y="svg":y===!1&&(y=void 0),e(k,p,y),l=!0,d._container=p,p.__vue_app__=d,Lo(k.component)}},onUnmount(p){r.push(p)},unmount(){l&&(we(r,d._instance,16),e(null,d._container),delete d._container.__vue_app__)},provide(p,h){return i.provides[p]=h,d},runWithContext(p){const h=mt;mt=d;try{return p()}finally{mt=h}}};return d}}let mt=null;const Ir=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${ne(t)}Modifiers`]||e[`${me(t)}Modifiers`];function Rr(e,t,...o){if(e.isUnmounted)return;const n=e.vnode.props||V;let s=o;const i=t.startsWith("update:"),a=i&&Ir(n,t.slice(7));a&&(a.trim&&(s=o.map(p=>J(p)?p.trim():p)),a.number&&(s=s.map(Go)));let r,l=n[r=qo(t)]||n[r=qo(ne(t))];!l&&i&&(l=n[r=qo(me(t))]),l&&we(l,e,6,s);const d=n[r+"Once"];if(d){if(!e.emitted)e.emitted={};else if(e.emitted[r])return;e.emitted[r]=!0,we(d,e,6,s)}}const Dr=new WeakMap;function Xs(e,t,o=!1){const n=o?Dr:t.emitsCache,s=n.get(e);if(s!==void 0)return s;const i=e.emits;let a={},r=!1;if(!E(e)){const l=d=>{const p=Xs(d,t,!0);p&&(r=!0,Q(a,p))};!o&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!i&&!r?(z(e)&&n.set(e,null),null):(A(i)?i.forEach(l=>a[l]=null):Q(a,i),z(e)&&n.set(e,a),a)}function _o(e,t){return!e||!Jt(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),H(e,t[0].toLowerCase()+t.slice(1))||H(e,me(t))||H(e,t))}function bu(){}function Zs(e){const{type:t,vnode:o,proxy:n,withProxy:s,propsOptions:[i],slots:a,attrs:r,emit:l,render:d,renderCache:p,props:h,data:y,setupState:k,ctx:W,inheritAttrs:F}=e,ee=go(e);let X,D;try{if(o.shapeFlag&4){const P=s||n,oe=P;X=Ne(d.call(oe,P,p,h,k,y,W)),D=r}else{const P=t;X=Ne(P.length>1?P(h,{attrs:r,slots:a,emit:l}):P(h,null)),D=t.props?r:Hr(r)}}catch(P){Ke.length=0,fo(P,e,1),X=ve(Pe)}let B=X;if(D&&F!==!1){const P=Object.keys(D),{shapeFlag:oe}=B;P.length&&oe&7&&(i&&P.some(Xt)&&(D=Wr(D,i)),B=bt(B,D,!1,!0))}if(o.dirs&&(B=bt(B,null,!1,!0),B.dirs=B.dirs?B.dirs.concat(o.dirs):o.dirs),o.transition){const P=mo(B.type)&&Fs(B)||B;hn(P,o.transition)}return X=B,go(ee),X}const Hr=e=>{let t;for(const o in e)(o==="class"||o==="style"||Jt(o))&&((t||(t={}))[o]=e[o]);return t},Wr=(e,t)=>{const o={};for(const n in e)(!Xt(n)||!(n.slice(9)in t))&&(o[n]=e[n]);return o};function Ur(e,t,o){const{props:n,children:s,component:i}=e,{props:a,children:r,patchFlag:l}=t,d=i.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&l>=0){if(l&1024)return!0;if(l&16)return n?Qs(n,a,d):!!a;if(l&8){const p=t.dynamicProps;for(let h=0;h<p.length;h++){const y=p[h];if(ei(a,n,y)&&!_o(d,y))return!0}}}else return(s||r)&&(!r||!r.$stable)?!0:n===a?!1:n?a?Qs(n,a,d):!0:!!a;return!1}function Qs(e,t,o){const n=Object.keys(t);if(n.length!==Object.keys(e).length)return!0;for(let s=0;s<n.length;s++){const i=n[s];if(ei(t,e,i)&&!_o(o,i))return!0}return!1}function ei(e,t,o){const n=e[o],s=t[o];return o==="style"&&z(n)&&z(s)?!so(n,s):n!==s}function zr({vnode:e,parent:t,suspense:o},n){for(;t;){const s=t.subTree;if(s.suspense&&s.suspense.activeBranch===e&&(s.suspense.vnode.el=s.el=n,e=s),s===e)(e=t.vnode).el=n,t=t.parent;else break}o&&o.activeBranch===e&&(o.vnode.el=n)}const ti={},oi=()=>Object.create(ti),ni=e=>Object.getPrototypeOf(e)===ti;function Br(e,t,o,n=!1){const s={},i=oi();e.propsDefaults=Object.create(null),si(e,t,s,i);for(const a in e.propsOptions[0])a in s||(s[a]=void 0);o?e.props=n?s:qa(s):e.type.props?e.props=s:e.props=i,e.attrs=i}function jr(e,t,o,n){const{props:s,attrs:i,vnode:{patchFlag:a}}=e,r=R(s),[l]=e.propsOptions;let d=!1;if((n||a>0)&&!(a&16)){if(a&8){const p=e.vnode.dynamicProps;for(let h=0;h<p.length;h++){let y=p[h];if(_o(e.emitsOptions,y))continue;const k=t[y];if(l)if(H(i,y))k!==i[y]&&(i[y]=k,d=!0);else{const W=ne(y);s[W]=_n(l,r,W,k,e,!1)}else k!==i[y]&&(i[y]=k,d=!0)}}}else{si(e,t,s,i)&&(d=!0);let p;for(const h in r)(!t||!H(t,h)&&((p=me(h))===h||!H(t,p)))&&(l?o&&(o[h]!==void 0||o[p]!==void 0)&&(s[h]=_n(l,r,h,void 0,e,!0)):delete s[h]);if(i!==r)for(const h in i)(!t||!H(t,h))&&(delete i[h],d=!0)}d&&Ue(e.attrs,"set","")}function si(e,t,o,n){const[s,i]=e.propsOptions;let a=!1,r;if(t)for(let l in t){if(wt(l))continue;const d=t[l];let p;s&&H(s,p=ne(l))?!i||!i.includes(p)?o[p]=d:(r||(r={}))[p]=d:_o(e.emitsOptions,l)||(!(l in n)||d!==n[l])&&(n[l]=d,a=!0)}if(i){const l=R(o),d=r||V;for(let p=0;p<i.length;p++){const h=i[p];o[h]=_n(s,l,h,d[h],e,!H(d,h))}}return a}function _n(e,t,o,n,s,i){const a=e[o];if(a!=null){const r=H(a,"default");if(r&&n===void 0){const l=a.default;if(a.type!==Function&&!a.skipFactory&&E(l)){const{propsDefaults:d}=s;if(o in d)n=d[o];else{const p=Wt(s);n=d[o]=l.call(null,t),p()}}else n=l;s.ce&&s.ce._setProp(o,n)}a[0]&&(i&&!r?n=!1:a[1]&&(n===""||n===me(o))&&(n=!0))}return n}const Vr=new WeakMap;function ii(e,t,o=!1){const n=o?Vr:t.propsCache,s=n.get(e);if(s)return s;const i=e.props,a={},r=[];let l=!1;if(!E(e)){const p=h=>{l=!0;const[y,k]=ii(h,t,!0);Q(a,y),k&&r.push(...k)};!o&&t.mixins.length&&t.mixins.forEach(p),e.extends&&p(e.extends),e.mixins&&e.mixins.forEach(p)}if(!i&&!l)return z(e)&&n.set(e,lt),lt;if(A(i))for(let p=0;p<i.length;p++){const h=ne(i[p]);ai(h)&&(a[h]=V)}else if(i)for(const p in i){const h=ne(p);if(ai(h)){const y=i[p],k=a[h]=A(y)||E(y)?{type:y}:Q({},y),W=k.type;let F=!1,ee=!0;if(A(W))for(let X=0;X<W.length;++X){const D=W[X],B=E(D)&&D.name;if(B==="Boolean"){F=!0;break}else B==="String"&&(ee=!1)}else F=E(W)&&W.name==="Boolean";k[0]=F,k[1]=ee,(F||H(k,"default"))&&r.push(h)}}const d=[a,r];return z(e)&&n.set(e,d),d}function ai(e){return e[0]!=="$"&&!wt(e)}const wn=e=>e==="_"||e==="_ctx"||e==="$stable",xn=e=>A(e)?e.map(Ne):[Ne(e)],Kr=(e,t,o)=>{if(t._n)return t;const n=ht((...s)=>xn(t(...s)),o);return n._c=!1,n},ri=(e,t,o)=>{const n=e._ctx;for(const s in e){if(wn(s))continue;const i=e[s];if(E(i))t[s]=Kr(s,i,n);else if(i!=null){const a=xn(i);t[s]=()=>a}}},li=(e,t)=>{const o=xn(t);e.slots.default=()=>o},ci=(e,t,o)=>{for(const n in t)(o||!wn(n))&&(e[n]=t[n])},qr=(e,t,o)=>{const n=e.slots=oi();if(e.vnode.shapeFlag&32){const s=t._;s?(ci(n,t,o),o&&Xn(n,"_",s,!0)):ri(t,n)}else t&&li(e,t)},Gr=(e,t,o)=>{const{vnode:n,slots:s}=e;let i=!0,a=V;if(n.shapeFlag&32){const r=t._;r?o&&r===1?i=!1:ci(s,t,o):(i=!t.$stable,ri(t,s)),a=t}else t&&(li(e,t),a={default:1});if(i)for(const r in s)!wn(r)&&a[r]==null&&delete s[r]},he=Qr;function Yr(e){return Jr(e)}function Jr(e,t){const o=no();o.__VUE__=!0;const{insert:n,remove:s,patchProp:i,createElement:a,createText:r,createComment:l,setText:d,setElementText:p,parentNode:h,nextSibling:y,setScopeId:k=xe,insertStaticContent:W}=e,F=(c,u,f,v=null,m=null,g=null,x=void 0,w=null,_=!!u.dynamicChildren)=>{if(c===u)return;c&&!Dt(c,u)&&(v=Bo(c),Re(c,m,g,!0),c=null),u.patchFlag===-2&&(_=!1,u.dynamicChildren=null);const{type:$,ref:C,shapeFlag:M}=u;switch($){case wo:ee(c,u,f,v);break;case Pe:X(c,u,f,v);break;case Mn:c==null&&D(u,f,v,x);break;case Y:Wo(c,u,f,v,m,g,x,w,_);break;default:M&1?oe(c,u,f,v,m,g,x,w,_):M&6?Uo(c,u,f,v,m,g,x,w,_):(M&64||M&128)&&$.process(c,u,f,v,m,g,x,w,_,Gt)}C!=null&&m?Nt(C,c&&c.ref,g,u||c,!u):C==null&&c&&c.ref!=null&&Nt(c.ref,null,g,c,!0)},ee=(c,u,f,v)=>{if(c==null)n(u.el=r(u.children),f,v);else{const m=u.el=c.el;u.children!==c.children&&d(m,u.children)}},X=(c,u,f,v)=>{c==null?n(u.el=l(u.children||""),f,v):u.el=c.el},D=(c,u,f,v)=>{[c.el,c.anchor]=W(c.children,u,f,v,c.el,c.anchor)},B=({el:c,anchor:u},f,v)=>{let m;for(;c&&c!==u;)m=y(c),n(c,f,v),c=m;n(u,f,v)},P=({el:c,anchor:u})=>{let f;for(;c&&c!==u;)f=y(c),s(c),c=f;s(u)},oe=(c,u,f,v,m,g,x,w,_)=>{if(u.type==="svg"?x="svg":u.type==="math"&&(x="mathml"),c==null)Fe(u,f,v,m,g,x,w,_);else{const $=c.el&&c.el._isVueCE?c.el:null;try{$&&$._beginPatch(),Ho(c,u,m,g,x,w,_)}finally{$&&$._endPatch()}}},Fe=(c,u,f,v,m,g,x,w)=>{let _,$;const{props:C,shapeFlag:M,transition:O,dirs:N}=c;if(_=c.el=a(c.type,g,C&&C.is,C),M&8?p(_,c.children):M&16&&Ze(c.children,_,null,v,m,Sn(c,g),x,w),N&&ot(c,null,v,"created"),Ie(_,c,c.scopeId,x,v),C){for(const K in C)K!=="value"&&!wt(K)&&i(_,K,null,C[K],g,v);"value"in C&&i(_,"value",null,C.value,g),($=C.onVnodeBeforeMount)&&Ee($,v,c)}N&&ot(c,null,v,"beforeMount");const I=Xr(m,O);I&&O.beforeEnter(_),n(_,u,f),(($=C&&C.onVnodeMounted)||I||N)&&he(()=>{try{$&&Ee($,v,c),I&&O.enter(_),N&&ot(c,null,v,"mounted")}finally{}},m)},Ie=(c,u,f,v,m)=>{if(f&&k(c,f),v)for(let g=0;g<v.length;g++)k(c,v[g]);if(m){let g=m.subTree;if(u===g||hi(g.type)&&(g.ssContent===u||g.ssFallback===u)){const x=m.vnode;Ie(c,x,x.scopeId,x.slotScopeIds,m.parent)}}},Ze=(c,u,f,v,m,g,x,w,_=0)=>{for(let $=_;$<c.length;$++){const C=c[$]=w?qe(c[$]):Ne(c[$]);F(null,C,u,f,v,m,g,x,w)}},Ho=(c,u,f,v,m,g,x)=>{const w=u.el=c.el;let{patchFlag:_,dynamicChildren:$,dirs:C}=u;_|=c.patchFlag&16;const M=c.props||V,O=u.props||V;let N;if(f&&st(f,!1),(N=O.onVnodeBeforeUpdate)&&Ee(N,f,u,c),C&&ot(u,c,f,"beforeUpdate"),f&&st(f,!0),$&&(!c.dynamicChildren||c.dynamicChildren.length!==$.length)&&(_=0,x=!1,$=null),(M.innerHTML&&O.innerHTML==null||M.textContent&&O.textContent==null)&&p(w,""),$?it(c.dynamicChildren,$,w,f,v,Sn(u,m),g):x||G(c,u,w,null,f,v,Sn(u,m),g,!1),_>0){if(_&16)Kt(w,M,O,f,m);else if(_&2&&M.class!==O.class&&i(w,"class",null,O.class,m),_&4&&i(w,"style",M.style,O.style,m),_&8){const I=u.dynamicProps;for(let K=0;K<I.length;K++){const j=I[K],te=M[j],re=O[j];(re!==te||j==="value")&&i(w,j,te,re,m,f)}}_&1&&c.children!==u.children&&p(w,u.children)}else!x&&$==null&&Kt(w,M,O,f,m);((N=O.onVnodeUpdated)||C)&&he(()=>{N&&Ee(N,f,u,c),C&&ot(u,c,f,"updated")},v)},it=(c,u,f,v,m,g,x)=>{for(let w=0;w<u.length;w++){const _=c[w],$=u[w],C=_.el&&(_.type===Y||!Dt(_,$)||_.shapeFlag&198)?h(_.el):f;F(_,$,C,null,v,m,g,x,!0)}},Kt=(c,u,f,v,m)=>{if(u!==f){if(u!==V)for(const g in u)!wt(g)&&!(g in f)&&i(c,g,u[g],null,m,v);for(const g in f){if(wt(g))continue;const x=f[g],w=u[g];x!==w&&g!=="value"&&i(c,g,w,x,m,v)}"value"in f&&i(c,"value",u.value,f.value,m)}},Wo=(c,u,f,v,m,g,x,w,_)=>{const $=u.el=c?c.el:r(""),C=u.anchor=c?c.anchor:r("");let{patchFlag:M,dynamicChildren:O,slotScopeIds:N}=u;N&&(w=w?w.concat(N):N),c==null?(n($,f,v),n(C,f,v),Ze(u.children||[],f,C,m,g,x,w,_)):M>0&&M&64&&O&&c.dynamicChildren&&c.dynamicChildren.length===O.length?(it(c.dynamicChildren,O,f,m,g,x,w),(u.key!=null||m&&u===m.subTree)&&di(c,u,!0)):G(c,u,f,C,m,g,x,w,_)},Uo=(c,u,f,v,m,g,x,w,_)=>{u.slotScopeIds=w,c==null?u.shapeFlag&512?m.ctx.activate(u,f,v,x,_):Vn(u,f,v,m,g,x,_):ua(c,u,_)},Vn=(c,u,f,v,m,g,x)=>{const w=c.component=il(c,v,m);if(gn(c)&&(w.ctx.renderer=Gt),al(w,!1,x),w.asyncDep){if(m&&m.registerDep(w,fe,x),!c.el){const _=w.subTree=ve(Pe);X(null,_,u,f),c.placeholder=_.el}}else fe(w,c,u,f,m,g,x)},ua=(c,u,f)=>{const v=u.component=c.component;if(Ur(c,u,f))if(v.asyncDep&&!v.asyncResolved){Z(v,u,f);return}else v.next=u,v.update();else u.el=c.el,v.vnode=u},fe=(c,u,f,v,m,g,x)=>{const w=()=>{if(c.isMounted){let{next:M,bu:O,u:N,parent:I,vnode:K}=c;{const He=pi(c);if(He){M&&(M.el=K.el,Z(c,M,x)),He.asyncDep.then(()=>{he(()=>{c.isUnmounted||$()},m)});return}}let j=M,te;st(c,!1),M?(M.el=K.el,Z(c,M,x)):M=K,O&&oo(O),(te=M.props&&M.props.onVnodeBeforeUpdate)&&Ee(te,I,M,K),st(c,!0);const re=Zs(c),De=c.subTree;c.subTree=re,F(De,re,h(De.el),Bo(De),c,m,g),M.el=re.el,j===null&&zr(c,re.el),N&&he(N,m),(te=M.props&&M.props.onVnodeUpdated)&&he(()=>Ee(te,I,M,K),m)}else{let M;const{el:O,props:N}=u,{bm:I,m:K,parent:j,root:te,type:re}=c,De=$t(u);st(c,!1),I&&oo(I),!De&&(M=N&&N.onVnodeBeforeMount)&&Ee(M,j,u),st(c,!0);{te.ce&&te.ce._hasShadowRoot()&&te.ce._injectChildStyle(re,c.parent?c.parent.type:void 0);const He=c.subTree=Zs(c);F(null,He,f,v,c,m,g),u.el=He.el}if(K&&he(K,m),!De&&(M=N&&N.onVnodeMounted)){const He=u;he(()=>Ee(M,j,He),m)}(u.shapeFlag&256||j&&$t(j.vnode)&&j.vnode.shapeFlag&256)&&c.a&&he(c.a,m),c.isMounted=!0,u=f=v=null}};c.scope.on();const _=c.effect=new ss(w);c.scope.off();const $=c.update=_.run.bind(_),C=c.job=_.runIfDirty.bind(_);C.i=c,C.id=c.uid,_.scheduler=()=>un(C),st(c,!0),$()},Z=(c,u,f)=>{u.component=c;const v=c.vnode.props;c.vnode=u,c.next=null,jr(c,u.props,v,f),Gr(c,u.children,f),Me(),Os(c),Le()},G=(c,u,f,v,m,g,x,w,_=!1)=>{const $=c&&c.children,C=c?c.shapeFlag:0,M=u.children,{patchFlag:O,shapeFlag:N}=u;if(O>0){if(O&128){zo($,M,f,v,m,g,x,w,_);return}else if(O&256){at($,M,f,v,m,g,x,w,_);return}}N&8?(C&16&&qt($,m,g),M!==$&&p(f,M)):C&16?N&16?zo($,M,f,v,m,g,x,w,_):qt($,m,g,!0):(C&8&&p(f,""),N&16&&Ze(M,f,v,m,g,x,w,_))},at=(c,u,f,v,m,g,x,w,_)=>{c=c||lt,u=u||lt;const $=c.length,C=u.length,M=Math.min($,C);let O;for(O=0;O<M;O++){const N=u[O]=_?qe(u[O]):Ne(u[O]);F(c[O],N,f,null,m,g,x,w,_)}$>C?qt(c,m,g,!0,!1,M):Ze(u,f,v,m,g,x,w,_,M)},zo=(c,u,f,v,m,g,x,w,_)=>{let $=0;const C=u.length;let M=c.length-1,O=C-1;for(;$<=M&&$<=O;){const N=c[$],I=u[$]=_?qe(u[$]):Ne(u[$]);if(Dt(N,I))F(N,I,f,null,m,g,x,w,_);else break;$++}for(;$<=M&&$<=O;){const N=c[M],I=u[O]=_?qe(u[O]):Ne(u[O]);if(Dt(N,I))F(N,I,f,null,m,g,x,w,_);else break;M--,O--}if($>M){if($<=O){const N=O+1,I=N<C?u[N].el:v;for(;$<=O;)F(null,u[$]=_?qe(u[$]):Ne(u[$]),f,I,m,g,x,w,_),$++}}else if($>O)for(;$<=M;)Re(c[$],m,g,!0),$++;else{const N=$,I=$,K=new Map;for($=I;$<=O;$++){const $e=u[$]=_?qe(u[$]):Ne(u[$]);$e.key!=null&&K.set($e.key,$)}let j,te=0;const re=O-I+1;let De=!1,He=0;const Yt=new Array(re);for($=0;$<re;$++)Yt[$]=0;for($=N;$<=M;$++){const $e=c[$];if(te>=re){Re($e,m,g,!0);continue}let We;if($e.key!=null)We=K.get($e.key);else for(j=I;j<=O;j++)if(Yt[j-I]===0&&Dt($e,u[j])){We=j;break}We===void 0?Re($e,m,g,!0):(Yt[We-I]=$+1,We>=He?He=We:De=!0,F($e,u[We],f,null,m,g,x,w,_),te++)}const ga=De?Zr(Yt):lt;for(j=ga.length-1,$=re-1;$>=0;$--){const $e=I+$,We=u[$e],$a=u[$e+1],ma=$e+1<C?$a.el||fi($a):v;Yt[$]===0?F(null,We,f,ma,m,g,x,w,_):De&&(j<0||$!==ga[j]?rt(We,f,ma,2):j--)}}},rt=(c,u,f,v,m=null)=>{const{el:g,type:x,transition:w,children:_,shapeFlag:$}=c;if($&6){rt(c.component.subTree,u,f,v);return}if($&128){c.suspense.move(u,f,v);return}if($&64){x.move(c,u,f,Gt);return}if(x===Y){n(g,u,f);for(let M=0;M<_.length;M++)rt(_[M],u,f,v);n(c.anchor,u,f);return}if(x===Mn){B(c,u,f);return}if(v!==2&&$&1&&w)if(v===0)w.persisted&&!g[fn]?n(g,u,f):(w.beforeEnter(g),n(g,u,f),he(()=>w.enter(g),m));else{const{leave:M,delayLeave:O,afterLeave:N}=w,I=()=>{c.ctx.isUnmounted?s(g):n(g,u,f)},K=()=>{const j=g._isLeaving||!!g[fn];g._isLeaving&&g[fn](!0),w.persisted&&!j?I():M(g,()=>{I(),N&&N()})};O?O(g,I,K):K()}else n(g,u,f)},Re=(c,u,f,v=!1,m=!1)=>{const{type:g,props:x,ref:w,children:_,dynamicChildren:$,shapeFlag:C,patchFlag:M,dirs:O,cacheIndex:N,memo:I}=c;if(M===-2&&(m=!1),w!=null&&(Me(),Nt(w,null,f,c,!0),Le()),N!=null&&(u.renderCache[N]=void 0),C&256){u.ctx.deactivate(c);return}const K=C&1&&O,j=!$t(c);let te;if(j&&(te=x&&x.onVnodeBeforeUnmount)&&Ee(te,u,c),C&6)hu(c.component,f,v);else{if(C&128){c.suspense.unmount(f,v);return}K&&ot(c,null,u,"beforeUnmount"),C&64?c.type.remove(c,u,f,Gt,v):$&&!$.hasOnce&&(g!==Y||M>0&&M&64)?qt($,u,f,!1,!0):(g===Y&&M&384||!m&&C&16)&&qt(_,u,f),v&&fa(c)}const re=I!=null&&N==null;(j&&(te=x&&x.onVnodeUnmounted)||K||re)&&he(()=>{te&&Ee(te,u,c),K&&ot(c,null,u,"unmounted"),re&&(c.el=null)},f)},fa=c=>{const{type:u,el:f,anchor:v,transition:m}=c;if(u===Y){fu(f,v);return}if(u===Mn){P(c);return}const g=()=>{s(f),m&&!m.persisted&&m.afterLeave&&m.afterLeave()};if(c.shapeFlag&1&&m&&!m.persisted){const{leave:x,delayLeave:w}=m,_=()=>x(f,g);w?w(c.el,g,_):_()}else g()},fu=(c,u)=>{let f;for(;c!==u;)f=y(c),s(c),c=f;s(u)},hu=(c,u,f)=>{const{bum:v,scope:m,job:g,subTree:x,um:w,m:_,a:$}=c;ui(_),ui($),v&&oo(v),m.stop(),g&&(g.flags|=8,Re(x,c,u,f)),w&&he(w,u),he(()=>{c.isUnmounted=!0},u)},qt=(c,u,f,v=!1,m=!1,g=0)=>{for(let x=g;x<c.length;x++)Re(c[x],u,f,v,m)},Bo=c=>{if(c.shapeFlag&6)return Bo(c.component.subTree);if(c.shapeFlag&128)return c.suspense.next();const u=y(c.anchor||c.el),f=u&&u[fr];return f?y(f):u};let Kn=!1;const ha=(c,u,f)=>{let v;c==null?u._vnode&&(Re(u._vnode,null,null,!0),v=u._vnode.component):F(u._vnode||null,c,u,null,null,null,f),u._vnode=c,Kn||(Kn=!0,Os(v),Cs(),Kn=!1)},Gt={p:F,um:Re,m:rt,r:fa,mt:Vn,mc:Ze,pc:G,pbc:it,n:Bo,o:e};return{render:ha,hydrate:void 0,createApp:Fr(ha)}}function Sn({type:e,props:t},o){return o==="svg"&&e==="foreignObject"||o==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:o}function st({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Xr(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function di(e,t,o=!1){const n=e.children,s=t.children;if(A(n)&&A(s))for(let i=0;i<n.length;i++){const a=n[i];let r=s[i];r.shapeFlag&1&&!r.dynamicChildren&&((r.patchFlag<=0||r.patchFlag===32)&&(r=s[i]=qe(s[i]),r.el=a.el),!o&&r.patchFlag!==-2&&di(a,r)),r.type===wo&&(r.patchFlag===-1&&(r=s[i]=qe(r)),r.el=a.el),r.type===Pe&&!r.el&&(r.el=a.el)}}function Zr(e){const t=e.slice(),o=[0];let n,s,i,a,r;const l=e.length;for(n=0;n<l;n++){const d=e[n];if(d!==0){if(s=o[o.length-1],e[s]<d){t[n]=s,o.push(n);continue}for(i=0,a=o.length-1;i<a;)r=i+a>>1,e[o[r]]<d?i=r+1:a=r;d<e[o[i]]&&(i>0&&(t[n]=o[i-1]),o[i]=n)}}for(i=o.length,a=o[i-1];i-- >0;)o[i]=a,a=t[a];return o}function pi(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:pi(t)}function ui(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function fi(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?fi(t.subTree):null}const hi=e=>e.__isSuspense;function Qr(e,t){t&&t.pendingBranch?A(e)?t.effects.push(...e):t.effects.push(e):lr(e)}const Y=Symbol.for("v-fgt"),wo=Symbol.for("v-txt"),Pe=Symbol.for("v-cmt"),Mn=Symbol.for("v-stc"),Ke=[];let ge=null;function S(e=!1){Ke.push(ge=e?null:[])}function Ln(){Ke.pop(),ge=Ke[Ke.length-1]||null}let It=1;function gi(e,t=!1){It+=e,e<0&&ge&&t&&(ge.hasOnce=!0)}function $i(e){return e.dynamicChildren=It>0?ge||lt:null,Ln(),It>0&&ge&&ge.push(e),e}function L(e,t,o,n,s,i){return $i(b(e,t,o,n,s,i,!0))}function Rt(e,t,o,n,s){return $i(ve(e,t,o,n,s,!0))}function Tn(e){return e?e.__v_isVNode===!0:!1}function Dt(e,t){return e.type===t.type&&e.key===t.key}const mi=({key:e})=>e??null,xo=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?J(e)||ie(e)||E(e)?{i:ae,r:e,k:t,f:!!o}:e:null);function b(e,t=null,o=null,n=0,s=null,i=e===Y?0:1,a=!1,r=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&mi(t),ref:t&&xo(t),scopeId:As,slotScopeIds:null,children:o,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:n,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:ae};return r?(So(l,o),i&128&&e.normalize(l)):o&&(l.shapeFlag|=J(o)?8:16),It>0&&!a&&ge&&(l.patchFlag>0||i&6)&&l.patchFlag!==32&&ge.push(l),l}const ve=el;function el(e,t=null,o=null,n=0,s=null,i=!1){if((!e||e===Mr)&&(e=Pe),Tn(e)){const r=bt(e,t,!0);return o&&So(r,o),It>0&&!i&&ge&&(r.shapeFlag&6?ge[ge.indexOf(e)]=r:ge.push(r)),r.patchFlag=-2,r}if(ul(e)&&(e=e.__vccOpts),t){t=tl(t);let{class:r,style:l}=t;r&&!J(r)&&(t.class=de(r)),z(l)&&(dn(l)&&!A(l)&&(l=Q({},l)),t.style=xt(l))}const a=J(e)?1:hi(e)?128:mo(e)?64:z(e)?4:E(e)?2:0;return b(e,t,o,n,s,a,i,!0)}function tl(e){return e?dn(e)||ni(e)?Q({},e):e:null}function bt(e,t,o=!1,n=!1){const{props:s,ref:i,patchFlag:a,children:r,transition:l}=e,d=t?ol(s||{},t):s,p={__v_isVNode:!0,__v_skip:!0,type:e.type,props:d,key:d&&mi(d),ref:t&&t.ref?o&&i?A(i)?i.concat(xo(t)):[i,xo(t)]:xo(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:r,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Y?a===-1?16:a|16:a,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&bt(e.ssContent),ssFallback:e.ssFallback&&bt(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&hn(p,l.clone(p)),p}function Ae(e=" ",t=0){return ve(wo,null,e,t)}function U(e="",t=!1){return t?(S(),Rt(Pe,null,e)):ve(Pe,null,e)}function Ne(e){return e==null||typeof e=="boolean"?ve(Pe):A(e)?ve(Y,null,e.slice()):Tn(e)?qe(e):ve(wo,null,String(e))}function qe(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:bt(e)}function So(e,t){let o=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(A(t))o=16;else if(typeof t=="object")if(n&65){const s=t.default;s&&(s._c&&(s._d=!1),So(e,s()),s._c&&(s._d=!0));return}else{o=32;const s=t._;!s&&!ni(t)?t._ctx=ae:s===3&&ae&&(ae.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(E(t)){if(n&65){So(e,{default:t});return}t={default:t,_ctx:ae},o=32}else t=String(t),n&64?(o=16,t=[Ae(t)]):o=8;e.children=t,e.shapeFlag|=o}function ol(...e){const t={};for(let o=0;o<e.length;o++){const n=e[o];for(const s in n)if(s==="class")t.class!==n.class&&(t.class=de([t.class,n.class]));else if(s==="style")t.style=xt([t.style,n.style]);else if(Jt(s)){const i=t[s],a=n[s];a&&i!==a&&!(A(i)&&i.includes(a))?t[s]=i?[].concat(i,a):a:a==null&&i==null&&!Xt(s)&&(t[s]=a)}else s!==""&&(t[s]=n[s])}return t}function Ee(e,t,o,n=null){we(e,t,7,[o,n])}const nl=Js();let sl=0;function il(e,t,o){const n=e.type,s=(t?t.appContext:e.appContext)||nl,i={uid:sl++,vnode:e,type:n,parent:t,appContext:s,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new Ta(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(s.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:ii(n,s),emitsOptions:Xs(n,s),emit:null,emitted:null,propsDefaults:V,inheritAttrs:n.inheritAttrs,ctx:V,data:V,props:V,attrs:V,slots:V,refs:V,setupState:V,setupContext:null,suspense:o,suspenseId:o?o.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=Rr.bind(null,i),e.ce&&e.ce(i),i}let ce=null;const bi=()=>ce||ae;let Mo,Ht;{const e=no(),t=(o,n)=>{let s;return(s=e[o])||(s=e[o]=[]),s.push(n),i=>{s.length>1?s.forEach(a=>a(i)):s[0](i)}};Mo=t("__VUE_INSTANCE_SETTERS__",o=>ce=o),Ht=t("__VUE_SSR_SETTERS__",o=>Ut=o)}const Wt=e=>{const t=ce;return Mo(e),e.scope.on(),()=>{e.scope.off(),Mo(t)}},vi=()=>{ce&&ce.scope.off(),Mo(null)};function ki(e){return e.vnode.shapeFlag&4}let Ut=!1;function al(e,t=!1,o=!1){t&&Ht(t);const{props:n,children:s}=e.vnode,i=ki(e);Br(e,n,i,t),qr(e,s,o||t);const a=i?rl(e,t):void 0;return t&&Ht(!1),a}function rl(e,t){const o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Tr);const{setup:n}=o;if(n){Me();const s=e.setupContext=n.length>1?cl(e):null,i=Wt(e),a=pt(n,e,0,[e.props,s]),r=Yn(a);if(Le(),i(),(r||e.sp)&&!$t(e)&&Is(e),r){if(a.then(vi,vi),t)return a.then(l=>{Ht(!0);try{yi(e,l,t)}finally{Ht(!1)}}).catch(l=>{fo(l,e,0)});e.asyncDep=a}else yi(e,a)}else _i(e)}function yi(e,t,o){E(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:z(t)&&(e.setupState=xs(t)),_i(e)}function _i(e,t,o){const n=e.type;e.render||(e.render=n.render||xe);{const s=Wt(e);Me();try{Or(e)}finally{Le(),s()}}}const ll={get(e,t){return le(e,"get",""),e[t]}};function cl(e){const t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,ll),slots:e.slots,emit:e.emit,expose:t}}function Lo(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(xs(Ga(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in Et)return Et[o](e)},has(t,o){return o in t||o in Et}})):e.proxy}const dl=/(?:^|[-_])\w/g,pl=e=>e.replace(dl,t=>t.toUpperCase()).replace(/[-_]/g,"");function wi(e,t=!0){return E(e)?e.displayName||e.name:e.name||t&&e.__name}function xi(e,t,o=!1){let n=wi(t);if(!n&&t.__file){const s=t.__file.match(/([^/\\]+)\.\w+$/);s&&(n=s[1])}if(!n&&e){const s=i=>{for(const a in i)if(i[a]===t)return a};n=s(e.components)||e.parent&&s(e.parent.type.components)||s(e.appContext.components)}return n?pl(n):o?"App":"Anonymous"}function ul(e){return E(e)&&"__vccOpts"in e}const Si=(e,t)=>Qa(e,t,Ut),fl="3.5.42";/**
* @vue/runtime-dom v3.5.42
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/let On;const Mi=typeof window<"u"&&window.trustedTypes;if(Mi)try{On=Mi.createPolicy("vue",{createHTML:e=>e})}catch{}const Li=On?e=>On.createHTML(e):e=>e,hl="http://www.w3.org/2000/svg",gl="http://www.w3.org/1998/Math/MathML",Ge=typeof document<"u"?document:null,Ti=Ge&&Ge.createElement("template"),$l={insert:(e,t,o)=>{t.insertBefore(e,o||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,o,n)=>{const s=t==="svg"?Ge.createElementNS(hl,e):t==="mathml"?Ge.createElementNS(gl,e):o?Ge.createElement(e,{is:o}):Ge.createElement(e);return e==="select"&&n&&n.multiple!=null&&s.setAttribute("multiple",n.multiple),s},createText:e=>Ge.createTextNode(e),createComment:e=>Ge.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ge.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,n,s,i){const a=o?o.previousSibling:t.lastChild;if(s&&(s===i||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),o),!(s===i||!(s=s.nextSibling)););else{Ti.innerHTML=Li(n==="svg"?`<svg>${e}</svg>`:n==="mathml"?`<math>${e}</math>`:e);const r=Ti.content;if(n==="svg"||n==="mathml"){const l=r.firstChild;for(;l.firstChild;)r.appendChild(l.firstChild);r.removeChild(l)}t.insertBefore(r,o)}return[a?a.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}},ml=Symbol("_vtc");function bl(e,t,o){const n=e[ml];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}const To=Symbol("_vod"),Oi=Symbol("_vsh"),Cn={name:"show",beforeMount(e,{value:t},{transition:o}){e[To]=e.style.display==="none"?"":e.style.display,o&&t?o.beforeEnter(e):zt(e,t)},mounted(e,{value:t},{transition:o}){o&&t&&o.enter(e)},updated(e,{value:t,oldValue:o},{transition:n}){!t!=!o&&(n?t?(n.beforeEnter(e),zt(e,!0),n.enter(e)):n.leave(e,()=>{zt(e,!1)}):zt(e,t))},beforeUnmount(e,{value:t}){zt(e,t)}};function zt(e,t){e.style.display=t?e[To]:"none",e[Oi]=!t}const vl=Symbol(""),kl=/(?:^|;)\s*display\s*:/;function yl(e,t,o){const n=e.style,s=J(o);let i=!1;if(o&&!s){if(t)if(J(t))for(const a of t.split(";")){const r=a.slice(0,a.indexOf(":")).trim();o[r]==null&&Bt(n,r,"")}else for(const a in t)o[a]==null&&Bt(n,a,"");for(const a in o){a==="display"&&(i=!0);const r=o[a];r!=null?wl(e,a,!J(t)&&t?t[a]:void 0,r)||Bt(n,a,r):Bt(n,a,"")}}else if(s){if(t!==o){const a=n[vl];a&&(o+=";"+a),n.cssText=o,i=kl.test(o)}}else t&&e.removeAttribute("style");To in e&&(e[To]=i?n.display:"",e[Oi]&&(n.display="none"))}const Oo=/\s*!important$/;function Bt(e,t,o){if(A(o))o.forEach(n=>Bt(e,t,n));else if(o==null&&(o=""),t.startsWith("--"))Oo.test(o)?e.setProperty(t,o.replace(Oo,""),"important"):e.setProperty(t,o);else{const n=_l(e,t);Oo.test(o)?e.setProperty(me(n),o.replace(Oo,""),"important"):e[n]=o}}const Ci=["Webkit","Moz","ms"],Pn={};function _l(e,t){const o=Pn[t];if(o)return o;let n=ne(t);if(n!=="filter"&&n in e)return Pn[t]=n;n=to(n);for(let s=0;s<Ci.length;s++){const i=Ci[s]+n;if(i in e)return Pn[t]=i}return t}function wl(e,t,o,n){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&J(n)&&o===n}const Pi="http://www.w3.org/1999/xlink";function Ai(e,t,o,n,s,i=Ma(t)){n&&t.startsWith("xlink:")?o==null?e.removeAttributeNS(Pi,t.slice(6,t.length)):e.setAttributeNS(Pi,t,o):o==null||i&&!es(o)?e.removeAttribute(t):e.setAttribute(t,i?"":ke(o)?String(o):o)}function Ni(e,t,o,n,s){if(t==="innerHTML"||t==="textContent"){o!=null&&(e[t]=t==="innerHTML"?Li(o):o);return}const i=e.tagName;if(t==="value"&&i!=="PROGRESS"&&!i.includes("-")){const r=i==="OPTION"?e.getAttribute("value")||"":e.value,l=o==null?e.type==="checkbox"?"on":"":String(o);(r!==l||!("_value"in e))&&(e.value=l),o==null&&e.removeAttribute(t),e._value=o;return}let a=!1;if(o===""||o==null){const r=typeof e[t];r==="boolean"?o=es(o):o==null&&r==="string"?(o="",a=!0):r==="number"&&(o=0,a=!0)}try{e[t]=o}catch{}a&&e.removeAttribute(s||t)}function vt(e,t,o,n){e.addEventListener(t,o,n)}function xl(e,t,o,n){e.removeEventListener(t,o,n)}const Ei=Symbol("_vei");function Sl(e,t,o,n,s=null){const i=e[Ei]||(e[Ei]={}),a=i[t];if(n&&a)a.value=n;else{const[r,l]=Tl(t);if(n){const d=i[t]=Pl(n,s);vt(e,r,d,l)}else a&&(xl(e,r,a,l),i[t]=void 0)}}const Ml=/(Once|Passive|Capture)$/,Ll=/^on:?(?:Once|Passive|Capture)$/;function Tl(e){let t,o;for(;(o=e.match(Ml))&&!Ll.test(e);)t||(t={}),e=e.slice(0,e.length-o[1].length),t[o[1].toLowerCase()]=!0;return[e[2]===":"?e.slice(3):me(e.slice(2)),t]}let An=0;const Ol=Promise.resolve(),Cl=()=>An||(Ol.then(()=>An=0),An=Date.now());function Pl(e,t){const o=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=o.attached)return;const s=o.value;if(A(s)){const i=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{i.call(n),n._stopped=!0};const a=s.slice(),r=[n];for(let l=0;l<a.length&&!n._stopped;l++){const d=a[l];d&&we(d,t,5,r)}}else we(s,t,5,[n])};return o.value=e,o.attached=Cl(),o}const Fi=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Al=(e,t,o,n,s,i)=>{const a=s==="svg";t==="class"?bl(e,n,a):t==="style"?yl(e,o,n):Jt(t)?Xt(t)||Sl(e,t,o,n,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Nl(e,t,n,a))?(Ni(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Ai(e,t,n,a,i,t!=="value")):e._isVueCE&&(El(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!J(n)))?Ni(e,ne(t),n,i,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),Ai(e,t,n,a))};function Nl(e,t,o,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&Fi(t)&&E(o));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return Fi(t)&&J(o)?!1:t in e}function El(e,t){const o=e._def.props;if(!o)return!1;const n=ne(t);return Array.isArray(o)?o.some(s=>ne(s)===n):Object.keys(o).some(s=>ne(s)===n)}const Ii={};function Fl(e,t,o){let n=bo(e,t);Qt(n)&&(n=Q({},n,t));class s extends Nn{constructor(a){super(n,a,o)}}return s.def=n,s}const Il=typeof HTMLElement<"u"?HTMLElement:class{};class Nn extends Il{constructor(t,o={},n=zi){super(),this._def=t,this._props=o,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&n!==zi?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Q({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof Nn){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,Ls(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const o of t)this._setAttr(o.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let n=0;n<this.attributes.length;n++)this._setAttr(this.attributes[n].name);this._ob=new MutationObserver(this._processMutations.bind(this)),this._ob.observe(this,{attributes:!0});const t=(n,s=!1)=>{this._resolved=!0,this._pendingResolve=void 0;const{props:i,styles:a}=n;let r;if(i&&!A(i))for(const l in i){const d=i[l];(d===Number||d&&d.type===Number)&&(l in this._props&&(this._props[l]=Zn(this._props[l])),(r||(r=Object.create(null)))[ne(l)]=!0)}this._numberProps=r,this._resolveProps(n),this.shadowRoot&&this._applyStyles(a),this._mount(n)},o=this._def.__asyncLoader;if(o)return this._pendingResolve=o().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const o=this._instance&&this._instance.exposed;if(o)for(const n in o)H(this,n)||Object.defineProperty(this,n,{get:()=>ws(o[n])})}_resolveProps(t){const{props:o}=t,n=A(o)?o:Object.keys(o||{});for(const s of Object.keys(this))s[0]!=="_"&&n.includes(s)&&this._setProp(s,this[s]);for(const s of n.map(ne))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(i){this._setProp(s,i,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const o=this.hasAttribute(t);let n=o?this.getAttribute(t):Ii;const s=ne(t);o&&this._numberProps&&this._numberProps[s]&&(n=Zn(n)),this._setProp(s,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,o,n=!0,s=!1){if(o!==this._props[t]&&(this._dirty=!0,o===Ii?delete this._props[t]:(this._props[t]=o,t==="key"&&this._app&&(this._app._ceVNode.key=o)),s&&this._instance&&this._update(),n)){const i=this._ob;i&&(this._processMutations(i.takeRecords()),i.disconnect()),o===!0?this.setAttribute(me(t),""):typeof o=="string"||typeof o=="number"?this.setAttribute(me(t),o+""):o||this.removeAttribute(me(t)),i&&i.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Ul(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const o=ve(this._def,Q(t,this._props));return this._instance||(o.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const s=(i,a)=>{this.dispatchEvent(new CustomEvent(i,Qt(a[0])?Q({detail:a},a[0]):{detail:a}))};n.emit=(i,...a)=>{s(i,a),me(i)!==i&&s(me(i),a)},this._setParent()}),o}_applyStyles(t,o,n){if(!t)return;if(o){if(o===this._def||this._styleChildren.has(o))return;this._styleChildren.add(o)}const s=this._nonce,i=this.shadowRoot,a=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(i);let r=null;for(let l=t.length-1;l>=0;l--){const d=document.createElement("style");s&&d.setAttribute("nonce",s),d.textContent=t[l],i.insertBefore(d,r||a),r=d,l===0&&(n||this._styleAnchors.set(this._def,d),o&&this._styleAnchors.set(o,d))}}_getStyleAnchor(t){if(!t)return null;const o=this._styleAnchors.get(t);return o&&o.parentNode===this.shadowRoot?o:(o&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let o=0;o<t.childNodes.length;o++){const n=t.childNodes[o];if(!(n instanceof HTMLStyleElement))return n}return null}_parseSlots(){const t=this._slots={};let o;for(;o=this.firstChild;){const n=o.nodeType===1&&o.getAttribute("slot")||"default";(t[n]||(t[n]=[])).push(o),this.removeChild(o)}}_renderSlots(){const t=this._getSlots(),o=this._instance.type.__scopeId;for(let n=0;n<t.length;n++){const s=t[n],i=s.getAttribute("name")||"default",a=this._slots[i],r=s.parentNode;if(a)for(const l of a){if(o&&l.nodeType===1){const d=o+"-s",p=document.createTreeWalker(l,1);l.setAttribute(d,"");let h;for(;h=p.nextNode();)h.setAttribute(d,"")}r.insertBefore(l,s)}else for(;s.firstChild;)r.insertBefore(s.firstChild,s);r.removeChild(s)}}_getSlots(){const t=[this];this._teleportTargets&&t.push(...this._teleportTargets);const o=new Set;for(const n of t){const s=n.querySelectorAll("slot");for(let i=0;i<s.length;i++)o.add(s[i])}return Array.from(o)}_injectChildStyle(t,o){this._applyStyles(t.styles,t,o)}_beginPatch(){this._patching=!0,this._dirty=!1}_endPatch(){this._patching=!1,this._dirty&&this._instance&&this._update()}_hasShadowRoot(){return this._def.shadowRoot!==!1}_removeChildStyle(t){}}const Ri=e=>{const t=e.props["onUpdate:modelValue"]||!1;return A(t)?o=>oo(t,o):t};function Rl(e){e.target.composing=!0}function Di(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Co=Symbol("_assign"),Po=Symbol("_initialValue");function En(e,t,o){return t&&(e=e.trim()),o&&(e=Go(e)),e}const Fn={created(e,{modifiers:{lazy:t,trim:o,number:n}},s){e.parentNode&&(e.type==="text"?e[Po]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[Po]=e.defaultValue.replace(/\r\n?/g,`
`))),e[Co]=Ri(s);const i=n||s.props&&s.props.type==="number";vt(e,t?"change":"input",a=>{a.target.composing||e[Co](En(e.value,o,i))}),(o||i)&&vt(e,"change",()=>{e.value=En(e.value,o,i)}),t||(vt(e,"compositionstart",Rl),vt(e,"compositionend",Di),vt(e,"change",Di))},mounted(e,{value:t,modifiers:{trim:o,number:n}}){const s=t??"",i=e[Po];delete e[Po],i!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==i?e[Co](En(e.value,o,n)):e.value=s},beforeUpdate(e,{value:t,oldValue:o,modifiers:{lazy:n,trim:s,number:i}},a){if(e[Co]=Ri(a),e.composing)return;const r=(i||e.type==="number")&&!/^0\d/.test(e.value)?Go(e.value):e.value,l=t??"";if(r===l)return;const d=e.getRootNode();(d instanceof Document||d instanceof ShadowRoot)&&d.activeElement===e&&e.type!=="range"&&(n&&t===o||s&&e.value.trim()===l)||(e.value=l)}},Dl=["ctrl","shift","alt","meta"],Hl={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Dl.some(o=>e[`${o}Key`]&&!t.includes(o))},Hi=(e,t)=>{if(!e)return e;const o=e._withMods||(e._withMods={}),n=t.join(".");return o[n]||(o[n]=(s,...i)=>{for(let a=0;a<t.length;a++){const r=Hl[t[a]];if(r&&r(s,t))return}return e(s,...i)})},Wl=Q({patchProp:Al},$l);let Wi;function Ui(){return Wi||(Wi=Yr(Wl))}const Ul=(...e)=>{Ui().render(...e)},zi=(...e)=>{const t=Ui().createApp(...e),{mount:o}=t;return t.mount=n=>{const s=Bl(n);if(!s)return;const i=t._component;!E(i)&&!i.render&&!i.template&&(i.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const a=o(s,!1,zl(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),a},t};function zl(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Bl(e){return J(e)?document.querySelector(e):e}const jl={title:"استوديو الإضافات",navLabel:"الإضافات حسب القدرة",countLabel:"{bundles} حزمة · {elements} إضافة مدرجة هنا",changeLanguage:"تغيير اللغة",copyEmbed:"نسخ رمز التضمين",copy:"نسخ",copied:"تم النسخ",scriptEmbed:"تضمين عبر سكربت",loading:"جارٍ تحميل {name}…",couldNotLoad:"تعذّر تحميل {name}.",chooseElement:"اختر إضافة من القائمة.",filterPlaceholder:"تصفية الإضافات",collapseAll:"طي الكل",noMatch:"لا توجد إضافة تطابق «{query}».",openSection:"فتح {cap}، {label}",part:"جزء",noStandalone:"بلا صفحة مستقلة",cap5:"هيكل التطبيق",cap4:"مركّب",cap3:"متعدد العروض",cap2:"إعداد مسبق",cap1:"مفرد",stageExperimental:"تجريبي","widget:rudder-voice/rudder-voice":"Rudder · تحويل الصوت إلى نص",toggleList:"إظهار القائمة أو إخفاؤها",openViews:"فتح قائمة العروض",expandList:"توسيع القائمة",collapseList:"طي القائمة",collapse:"طي",partOf:"جزء من {name}، غير منشور بمفرده",mapToken:"رمز الخريطة",mapboxToken:"رمز Mapbox",tokenPaste:"رمز Mapbox العام (pk.…)",tokenUrlLabel:"…أو رابط خدمة الرموز",tokenApply:"استخدام",tokenClear:"مسح",tokenStoredHere:"يُحفظ في هذا المتصفح فقط.",tokenSourceYours:"يُستخدم رمزك",tokenSourceUrl:"يُستخدم رمز من {url}",tokenSourceBuilt:"يُستخدم الرمز المضمَّن في هذه الصفحة",tokenSourceNone:"لا يوجد رمز Mapbox: لا يمكن تحميل خرائط Mapbox (خرائط MapLibre لا تحتاج رمزًا)",tokenSecret:"هذا رمز سري (sk.…). الصق رمزًا عامًا (pk.…): هذه الصفحة عامة.",tokenNotPk:"يبدأ رمز Mapbox العام بـ pk.",tokenUrlFailed:"تعذّر الحصول على رمز من هذا الرابط: {why}",settings:"الإعدادات",mapEngine:"محرّك الخرائط",engineDefault:"الافتراضي لكل خريطة",engineMapboxNote:"يحتاج إلى رمز",engineMaplibreNote:"لا يحتاج إلى رمز",tokenNotNeeded:"تم اختيار MapLibre: خرائطه لا تحتاج إلى رمز Mapbox",hideHeader:"إخفاء الشريط العلوي",showHeader:"إظهار الشريط العلوي",elementsCount:"{n} عناصر",elements:"عناصر"},Vl={title:"Plugin-Studio",navLabel:"Plugins nach Fähigkeit",countLabel:"{bundles} Bundles · {elements} Plugins hier aufgeführt",changeLanguage:"Sprache ändern",copyEmbed:"Einbettung kopieren",copy:"Kopieren",copied:"Kopiert",scriptEmbed:"Skript-Einbettung",loading:"{name} wird geladen…",couldNotLoad:"{name} konnte nicht geladen werden.",chooseElement:"Wählen Sie ein Plugin aus der Liste.",filterPlaceholder:"Plugins filtern",collapseAll:"Alle einklappen",noMatch:"Kein Plugin entspricht „{query}“.",openSection:"{cap} öffnen, {label}",part:"Teil",noStandalone:"keine eigene Seite",cap5:"App-Shell",cap4:"Komposit",cap3:"Mehrfachansicht",cap2:"Voreinstellung",cap1:"Einzeln",stageExperimental:"Experimentell","widget:rudder-voice/rudder-voice":"Rudder · Sprache zu Text",toggleList:"Liste ein-/ausblenden",openViews:"Ansichtsliste öffnen",expandList:"Liste ausklappen",collapseList:"Liste einklappen",collapse:"Einklappen",partOf:"Teil von {name}, nicht eigenständig veröffentlicht",mapToken:"Karten-Token",mapboxToken:"Mapbox-Token",tokenPaste:"Öffentlicher Mapbox-Token (pk.…)",tokenUrlLabel:"…oder die URL eines Token-Dienstes",tokenApply:"Verwenden",tokenClear:"Löschen",tokenStoredHere:"Nur in diesem Browser gespeichert.",tokenSourceYours:"Ihr Token wird verwendet",tokenSourceUrl:"Token von {url} wird verwendet",tokenSourceBuilt:"Der in diese Seite eingebaute Token wird verwendet",tokenSourceNone:"Kein Mapbox-Token: Mapbox-Karten können nicht laden (MapLibre-Karten brauchen keinen)",tokenSecret:"Das ist ein geheimer Token (sk.…). Fügen Sie einen öffentlichen ein (pk.…): Diese Seite ist öffentlich.",tokenNotPk:"Ein öffentlicher Mapbox-Token beginnt mit pk.",tokenUrlFailed:"Von dieser URL kam kein Token: {why}",settings:"Einstellungen",mapEngine:"Karten-Engine",engineDefault:"Je Karte eigenes",engineMapboxNote:"braucht einen Token",engineMaplibreNote:"kein Token nötig",tokenNotNeeded:"MapLibre ist gewählt: Seine Karten brauchen keinen Mapbox-Token",hideHeader:"Kopfzeile ausblenden",showHeader:"Kopfzeile einblenden",elementsCount:"{n} Elemente",elements:"Elemente"},Kl={title:"Plugin Studio",navLabel:"Plugins by capability",countLabel:"{bundles} bundles · {elements} plugins listed here",changeLanguage:"Change language",copyEmbed:"Copy embed",copy:"Copy",copied:"Copied",scriptEmbed:"Script embed",loading:"Loading {name}…",couldNotLoad:"Could not load {name}.",chooseElement:"Choose a plugin from the list.",filterPlaceholder:"Filter plugins",collapseAll:"Collapse all",noMatch:"No plugin matches “{query}”.",openSection:"Open {cap}, {label}",part:"part",noStandalone:"no standalone page",cap5:"App shell",cap4:"Composite",cap3:"Multi-view",cap2:"Preset",cap1:"Single",stageExperimental:"Experimental","widget:rudder-voice/rudder-voice":"Rudder · voice to text",toggleList:"Toggle list",openViews:"Open the list of views",expandList:"Expand list",collapseList:"Collapse list",collapse:"Collapse",partOf:"part of {name}, not published on its own",mapToken:"Map token",mapboxToken:"Mapbox token",tokenPaste:"Mapbox public token (pk.…)",tokenUrlLabel:"…or the URL of a token service",tokenApply:"Use",tokenClear:"Clear",tokenStoredHere:"Kept in this browser only.",tokenSourceYours:"Using your token",tokenSourceUrl:"Using a token from {url}",tokenSourceBuilt:"Using the token built into this page",tokenSourceNone:"No Mapbox token: Mapbox maps cannot load (MapLibre maps need none)",tokenSecret:"That is a secret token (sk.…). Paste a public one (pk.…): this page is public.",tokenNotPk:"A Mapbox public token starts with pk.",tokenUrlFailed:"Could not get a token from that URL: {why}",settings:"Settings",mapEngine:"Map engine",engineDefault:"Each map’s own",engineMapboxNote:"needs a token",engineMaplibreNote:"no token needed",tokenNotNeeded:"MapLibre is selected: its maps need no Mapbox token",hideHeader:"Hide header",showHeader:"Show header",elementsCount:"{n} elements",elements:"elements"},ql={title:"Estudio de plugins",navLabel:"Plugins por capacidad",countLabel:"{bundles} paquetes · {elements} plugins listados aquí",changeLanguage:"Cambiar idioma",copyEmbed:"Copiar código de inserción",copy:"Copiar",copied:"Copiado",scriptEmbed:"Inserción por script",loading:"Cargando {name}…",couldNotLoad:"No se pudo cargar {name}.",chooseElement:"Elija un plugin de la lista.",filterPlaceholder:"Filtrar plugins",collapseAll:"Contraer todo",noMatch:"Ningún plugin coincide con «{query}».",openSection:"Abrir {cap}, {label}",part:"parte",noStandalone:"sin página propia",cap5:"Contenedor de aplicación",cap4:"Compuesto",cap3:"Multivista",cap2:"Preajuste",cap1:"Individual",stageExperimental:"Experimental","widget:rudder-voice/rudder-voice":"Rudder · voz a texto",toggleList:"Mostrar u ocultar la lista",openViews:"Abrir la lista de vistas",expandList:"Expandir la lista",collapseList:"Contraer la lista",collapse:"Contraer",partOf:"parte de {name}, no publicada por separado",mapToken:"Token del mapa",mapboxToken:"Token de Mapbox",tokenPaste:"Token público de Mapbox (pk.…)",tokenUrlLabel:"…o la URL de un servicio de tokens",tokenApply:"Usar",tokenClear:"Borrar",tokenStoredHere:"Se guarda solo en este navegador.",tokenSourceYours:"Usando tu token",tokenSourceUrl:"Usando un token de {url}",tokenSourceBuilt:"Usando el token integrado en esta página",tokenSourceNone:"Sin token de Mapbox: los mapas de Mapbox no cargan (los de MapLibre no lo necesitan)",tokenSecret:"Ese es un token secreto (sk.…). Pega uno público (pk.…): esta página es pública.",tokenNotPk:"Un token público de Mapbox empieza por pk.",tokenUrlFailed:"No se pudo obtener un token de esa URL: {why}",settings:"Ajustes",mapEngine:"Motor de mapas",engineDefault:"El de cada mapa",engineMapboxNote:"necesita un token",engineMaplibreNote:"no necesita token",tokenNotNeeded:"MapLibre está seleccionado: sus mapas no necesitan token de Mapbox",hideHeader:"Ocultar encabezado",showHeader:"Mostrar encabezado",elementsCount:"{n} elementos",elements:"elementos"},Gl={title:"Studio de plugins",navLabel:"Plugins par capacité",countLabel:"{bundles} paquets · {elements} plugins listés ici",changeLanguage:"Changer de langue",copyEmbed:"Copier le code d’intégration",copy:"Copier",copied:"Copié",scriptEmbed:"Intégration par script",loading:"Chargement de {name}…",couldNotLoad:"Impossible de charger {name}.",chooseElement:"Choisissez un plugin dans la liste.",filterPlaceholder:"Filtrer les plugins",collapseAll:"Tout replier",noMatch:"Aucun plugin ne correspond à « {query} ».",openSection:"Ouvrir {cap}, {label}",part:"partie",noStandalone:"pas de page autonome",cap5:"Coquille d’application",cap4:"Composite",cap3:"Multivue",cap2:"Préréglage",cap1:"Simple",stageExperimental:"Expérimental","widget:rudder-voice/rudder-voice":"Rudder · voix vers texte",toggleList:"Afficher ou masquer la liste",openViews:"Ouvrir la liste des vues",expandList:"Déplier la liste",collapseList:"Replier la liste",collapse:"Replier",partOf:"partie de {name}, non publiée seule",mapToken:"Jeton de carte",mapboxToken:"Jeton Mapbox",tokenPaste:"Jeton public Mapbox (pk.…)",tokenUrlLabel:"…ou l’URL d’un service de jetons",tokenApply:"Utiliser",tokenClear:"Effacer",tokenStoredHere:"Conservé dans ce navigateur uniquement.",tokenSourceYours:"Votre jeton est utilisé",tokenSourceUrl:"Jeton obtenu de {url}",tokenSourceBuilt:"Jeton intégré à cette page",tokenSourceNone:"Aucun jeton Mapbox : les cartes Mapbox ne peuvent pas charger (MapLibre n’en a pas besoin)",tokenSecret:"C’est un jeton secret (sk.…). Collez un jeton public (pk.…) : cette page est publique.",tokenNotPk:"Un jeton public Mapbox commence par pk.",tokenUrlFailed:"Impossible d’obtenir un jeton depuis cette URL : {why}",settings:"Paramètres",mapEngine:"Moteur de carte",engineDefault:"Celui de chaque carte",engineMapboxNote:"nécessite un jeton",engineMaplibreNote:"aucun jeton requis",tokenNotNeeded:"MapLibre est sélectionné : ses cartes n’ont pas besoin de jeton Mapbox",hideHeader:"Masquer l'en-tête",showHeader:"Afficher l'en-tête",elementsCount:"{n} éléments",elements:"éléments"},Yl={title:"प्लगइन स्टूडियो",navLabel:"क्षमता के अनुसार प्लगइन",countLabel:"{bundles} बंडल · यहाँ {elements} प्लगइन सूचीबद्ध",changeLanguage:"भाषा बदलें",copyEmbed:"एम्बेड कोड कॉपी करें",copy:"कॉपी करें",copied:"कॉपी हो गया",scriptEmbed:"स्क्रिप्ट एम्बेड",loading:"{name} लोड हो रहा है…",couldNotLoad:"{name} लोड नहीं हो सका।",chooseElement:"सूची से कोई प्लगइन चुनें।",filterPlaceholder:"प्लगइन फ़िल्टर करें",collapseAll:"सभी संक्षिप्त करें",noMatch:"“{query}” से कोई प्लगइन मेल नहीं खाता।",openSection:"{cap} खोलें, {label}",part:"भाग",noStandalone:"कोई अलग पेज नहीं",cap5:"ऐप शेल",cap4:"संयुक्त",cap3:"बहु-दृश्य",cap2:"प्रीसेट",cap1:"एकल",stageExperimental:"प्रायोगिक","widget:rudder-voice/rudder-voice":"Rudder · आवाज़ से टेक्स्ट",toggleList:"सूची दिखाएँ या छिपाएँ",openViews:"दृश्यों की सूची खोलें",expandList:"सूची फैलाएँ",collapseList:"सूची संक्षिप्त करें",collapse:"संक्षिप्त करें",partOf:"{name} का भाग, अलग से प्रकाशित नहीं",mapToken:"मानचित्र टोकन",mapboxToken:"Mapbox टोकन",tokenPaste:"Mapbox सार्वजनिक टोकन (pk.…)",tokenUrlLabel:"…या किसी टोकन सेवा का URL",tokenApply:"उपयोग करें",tokenClear:"साफ़ करें",tokenStoredHere:"केवल इसी ब्राउज़र में रखा जाता है।",tokenSourceYours:"आपका टोकन उपयोग हो रहा है",tokenSourceUrl:"{url} से टोकन उपयोग हो रहा है",tokenSourceBuilt:"इस पेज में बना टोकन उपयोग हो रहा है",tokenSourceNone:"कोई Mapbox टोकन नहीं: Mapbox मानचित्र लोड नहीं हो सकते (MapLibre को इसकी ज़रूरत नहीं)",tokenSecret:"यह एक गुप्त टोकन है (sk.…)। सार्वजनिक टोकन (pk.…) चिपकाएँ: यह पेज सार्वजनिक है।",tokenNotPk:"Mapbox सार्वजनिक टोकन pk. से शुरू होता है",tokenUrlFailed:"उस URL से टोकन नहीं मिल सका: {why}",settings:"सेटिंग्स",mapEngine:"मानचित्र इंजन",engineDefault:"हर मानचित्र का अपना",engineMapboxNote:"टोकन चाहिए",engineMaplibreNote:"टोकन की ज़रूरत नहीं",tokenNotNeeded:"MapLibre चुना गया है: इसके मानचित्रों को Mapbox टोकन नहीं चाहिए",hideHeader:"हेडर छिपाएँ",showHeader:"हेडर दिखाएँ",elementsCount:"{n} तत्व",elements:"तत्व"},Jl={title:"Studio dei plugin",navLabel:"Plugin per capacità",countLabel:"{bundles} pacchetti · {elements} plugin elencati qui",changeLanguage:"Cambia lingua",copyEmbed:"Copia codice di incorporamento",copy:"Copia",copied:"Copiato",scriptEmbed:"Incorporamento tramite script",loading:"Caricamento di {name}…",couldNotLoad:"Impossibile caricare {name}.",chooseElement:"Scegli un plugin dall’elenco.",filterPlaceholder:"Filtra i plugin",collapseAll:"Comprimi tutto",noMatch:"Nessun plugin corrisponde a «{query}».",openSection:"Apri {cap}, {label}",part:"parte",noStandalone:"nessuna pagina propria",cap5:"Shell dell’app",cap4:"Composito",cap3:"Multivista",cap2:"Preimpostato",cap1:"Singolo",stageExperimental:"Sperimentale","widget:rudder-voice/rudder-voice":"Rudder · voce in testo",toggleList:"Mostra o nascondi l’elenco",openViews:"Apri l’elenco delle viste",expandList:"Espandi l’elenco",collapseList:"Comprimi l’elenco",collapse:"Comprimi",partOf:"parte di {name}, non pubblicata da sola",mapToken:"Token mappa",mapboxToken:"Token Mapbox",tokenPaste:"Token pubblico Mapbox (pk.…)",tokenUrlLabel:"…o l’URL di un servizio di token",tokenApply:"Usa",tokenClear:"Cancella",tokenStoredHere:"Conservato solo in questo browser.",tokenSourceYours:"Uso il tuo token",tokenSourceUrl:"Uso un token da {url}",tokenSourceBuilt:"Uso il token integrato in questa pagina",tokenSourceNone:"Nessun token Mapbox: le mappe Mapbox non si caricano (MapLibre non ne ha bisogno)",tokenSecret:"Questo è un token segreto (sk.…). Incolla un token pubblico (pk.…): questa pagina è pubblica.",tokenNotPk:"Un token pubblico Mapbox inizia con pk.",tokenUrlFailed:"Impossibile ottenere un token da quell’URL: {why}",settings:"Impostazioni",mapEngine:"Motore mappe",engineDefault:"Quello di ogni mappa",engineMapboxNote:"richiede un token",engineMaplibreNote:"nessun token necessario",tokenNotNeeded:"MapLibre è selezionato: le sue mappe non richiedono un token Mapbox",hideHeader:"Nascondi intestazione",showHeader:"Mostra intestazione",elementsCount:"{n} elementi",elements:"elementi"},Xl={title:"Estúdio de plugins",navLabel:"Plugins por capacidade",countLabel:"{bundles} pacotes · {elements} plugins listados aqui",changeLanguage:"Mudar idioma",copyEmbed:"Copiar código de incorporação",copy:"Copiar",copied:"Copiado",scriptEmbed:"Incorporação por script",loading:"Carregando {name}…",couldNotLoad:"Não foi possível carregar {name}.",chooseElement:"Escolha um plugin na lista.",filterPlaceholder:"Filtrar plugins",collapseAll:"Recolher tudo",noMatch:"Nenhum plugin corresponde a “{query}”.",openSection:"Abrir {cap}, {label}",part:"parte",noStandalone:"sem página própria",cap5:"Shell do aplicativo",cap4:"Composto",cap3:"Multivisualização",cap2:"Predefinição",cap1:"Único",stageExperimental:"Experimental","widget:rudder-voice/rudder-voice":"Rudder · voz para texto",toggleList:"Mostrar ou ocultar a lista",openViews:"Abrir a lista de visualizações",expandList:"Expandir a lista",collapseList:"Recolher a lista",collapse:"Recolher",partOf:"parte de {name}, não publicada separadamente",mapToken:"Token do mapa",mapboxToken:"Token do Mapbox",tokenPaste:"Token público do Mapbox (pk.…)",tokenUrlLabel:"…ou o URL de um serviço de tokens",tokenApply:"Usar",tokenClear:"Limpar",tokenStoredHere:"Guardado apenas neste navegador.",tokenSourceYours:"A usar o seu token",tokenSourceUrl:"A usar um token de {url}",tokenSourceBuilt:"A usar o token incorporado nesta página",tokenSourceNone:"Sem token do Mapbox: os mapas Mapbox não carregam (os MapLibre não precisam)",tokenSecret:"Esse é um token secreto (sk.…). Cole um público (pk.…): esta página é pública.",tokenNotPk:"Um token público do Mapbox começa por pk.",tokenUrlFailed:"Não foi possível obter um token desse URL: {why}",settings:"Definições",mapEngine:"Motor de mapas",engineDefault:"O de cada mapa",engineMapboxNote:"precisa de um token",engineMaplibreNote:"não precisa de token",tokenNotNeeded:"MapLibre está selecionado: os seus mapas não precisam de token do Mapbox",hideHeader:"Ocultar cabeçalho",showHeader:"Mostrar cabeçalho",elementsCount:"{n} elementos",elements:"elementos"},Zl={title:"Studio de pluginuri",navLabel:"Pluginuri după capacitate",countLabel:"{bundles} pachete · {elements} pluginuri listate aici",changeLanguage:"Schimbă limba",copyEmbed:"Copiază codul de încorporare",copy:"Copiază",copied:"Copiat",scriptEmbed:"Încorporare prin script",loading:"Se încarcă {name}…",couldNotLoad:"{name} nu a putut fi încărcat.",chooseElement:"Alegeți un plugin din listă.",filterPlaceholder:"Filtrează pluginurile",collapseAll:"Restrânge tot",noMatch:"Niciun plugin nu corespunde cu „{query}”.",openSection:"Deschide {cap}, {label}",part:"parte",noStandalone:"fără pagină proprie",cap5:"Cadru de aplicație",cap4:"Compus",cap3:"Vizualizări multiple",cap2:"Presetat",cap1:"Simplu",stageExperimental:"Experimental","widget:rudder-voice/rudder-voice":"Rudder · voce în text",toggleList:"Afișează sau ascunde lista",openViews:"Deschide lista de vizualizări",expandList:"Extinde lista",collapseList:"Restrânge lista",collapse:"Restrânge",partOf:"parte din {name}, nepublicată separat",mapToken:"Token hartă",mapboxToken:"Token Mapbox",tokenPaste:"Token public Mapbox (pk.…)",tokenUrlLabel:"…sau adresa URL a unui serviciu de tokenuri",tokenApply:"Folosește",tokenClear:"Șterge",tokenStoredHere:"Păstrat doar în acest browser.",tokenSourceYours:"Se folosește tokenul tău",tokenSourceUrl:"Se folosește un token de la {url}",tokenSourceBuilt:"Se folosește tokenul inclus în această pagină",tokenSourceNone:"Niciun token Mapbox: hărțile Mapbox nu se pot încărca (MapLibre nu are nevoie)",tokenSecret:"Acesta este un token secret (sk.…). Lipește unul public (pk.…): pagina este publică.",tokenNotPk:"Un token public Mapbox începe cu pk.",tokenUrlFailed:"Nu s-a putut obține un token de la acea adresă: {why}",settings:"Setări",mapEngine:"Motor hărți",engineDefault:"Al fiecărei hărți",engineMapboxNote:"necesită un token",engineMaplibreNote:"nu necesită token",tokenNotNeeded:"MapLibre este selectat: hărțile sale nu necesită token Mapbox",hideHeader:"Ascunde antetul",showHeader:"Afișează antetul",elementsCount:"{n} elemente",elements:"elemente"},Ql={title:"Студия плагинов",navLabel:"Плагины по возможностям",countLabel:"Здесь: пакетов {bundles} · плагинов {elements}",changeLanguage:"Сменить язык",copyEmbed:"Скопировать код встраивания",copy:"Копировать",copied:"Скопировано",scriptEmbed:"Встраивание через скрипт",loading:"Загрузка {name}…",couldNotLoad:"Не удалось загрузить {name}.",chooseElement:"Выберите плагин из списка.",filterPlaceholder:"Фильтр плагинов",collapseAll:"Свернуть всё",noMatch:"Нет плагинов, соответствующих «{query}».",openSection:"Открыть {cap}, {label}",part:"часть",noStandalone:"нет отдельной страницы",cap5:"Оболочка приложения",cap4:"Составной",cap3:"Несколько видов",cap2:"Предустановка",cap1:"Одиночный",stageExperimental:"Экспериментальные","widget:rudder-voice/rudder-voice":"Rudder · голос в текст",toggleList:"Показать или скрыть список",openViews:"Открыть список представлений",expandList:"Развернуть список",collapseList:"Свернуть список",collapse:"Свернуть",partOf:"часть {name}, не публикуется отдельно",mapToken:"Токен карты",mapboxToken:"Токен Mapbox",tokenPaste:"Публичный токен Mapbox (pk.…)",tokenUrlLabel:"…или адрес службы токенов",tokenApply:"Применить",tokenClear:"Очистить",tokenStoredHere:"Хранится только в этом браузере.",tokenSourceYours:"Используется ваш токен",tokenSourceUrl:"Используется токен с {url}",tokenSourceBuilt:"Используется токен, встроенный в страницу",tokenSourceNone:"Нет токена Mapbox: карты Mapbox не загрузятся (MapLibre он не нужен)",tokenSecret:"Это секретный токен (sk.…). Вставьте публичный (pk.…): эта страница общедоступна.",tokenNotPk:"Публичный токен Mapbox начинается с pk.",tokenUrlFailed:"Не удалось получить токен по этому адресу: {why}",settings:"Настройки",mapEngine:"Движок карт",engineDefault:"Свой у каждой карты",engineMapboxNote:"нужен токен",engineMaplibreNote:"токен не нужен",tokenNotNeeded:"Выбран MapLibre: его картам не нужен токен Mapbox",hideHeader:"Скрыть заголовок",showHeader:"Показать заголовок",elementsCount:"{n} элементов",elements:"элементов"},ec={title:"插件工作室",navLabel:"按能力分类的插件",countLabel:"此处列出 {bundles} 个包 · {elements} 个插件",changeLanguage:"切换语言",copyEmbed:"复制嵌入代码",copy:"复制",copied:"已复制",scriptEmbed:"脚本嵌入",loading:"正在加载 {name}…",couldNotLoad:"无法加载 {name}。",chooseElement:"请从列表中选择一个插件。",filterPlaceholder:"筛选插件",collapseAll:"全部折叠",noMatch:"没有与“{query}”匹配的插件。",openSection:"打开 {cap},{label}",part:"部分",noStandalone:"无独立页面",cap5:"应用外壳",cap4:"组合",cap3:"多视图",cap2:"预设",cap1:"单一",stageExperimental:"实验性","widget:rudder-voice/rudder-voice":"Rudder · 语音转文字",toggleList:"显示或隐藏列表",openViews:"打开视图列表",expandList:"展开列表",collapseList:"折叠列表",collapse:"折叠",partOf:"{name} 的一部分,不单独发布",mapToken:"地图令牌",mapboxToken:"Mapbox 令牌",tokenPaste:"Mapbox 公开令牌 (pk.…)",tokenUrlLabel:"…或令牌服务的网址",tokenApply:"使用",tokenClear:"清除",tokenStoredHere:"仅保存在此浏览器中。",tokenSourceYours:"正在使用您的令牌",tokenSourceUrl:"正在使用来自 {url} 的令牌",tokenSourceBuilt:"正在使用此页面内置的令牌",tokenSourceNone:"没有 Mapbox 令牌:Mapbox 地图无法加载(MapLibre 地图不需要)",tokenSecret:"这是秘密令牌 (sk.…)。请粘贴公开令牌 (pk.…):此页面是公开的。",tokenNotPk:"Mapbox 公开令牌以 pk. 开头",tokenUrlFailed:"无法从该网址获取令牌:{why}",settings:"设置",mapEngine:"地图引擎",engineDefault:"各地图自身的",engineMapboxNote:"需要令牌",engineMaplibreNote:"无需令牌",tokenNotNeeded:"已选择 MapLibre:其地图无需 Mapbox 令牌",hideHeader:"隐藏标题栏",showHeader:"显示标题栏",elementsCount:"{n} 个元素",elements:"元素"};function In(e,t){const o=bi(),n=t||(o&&o.type&&o.type.__hmrId?"hmr-"+o.type.__hmrId:oc(e));$n(()=>{var l;if(!o)return;const s=(l=o.proxy)==null?void 0:l.$el;if(!s)return;const i=s.getRootNode();if(!(i instanceof ShadowRoot))return;if(!i.querySelector('style[data-shadow-styles="reduced-motion"]')){const d=document.createElement("style");d.setAttribute("data-shadow-styles","reduced-motion"),d.textContent=tc,i.appendChild(d)}const a=i.querySelector(`style[data-shadow-styles="${n}"]`);if(a){a.textContent!==e&&(a.textContent=e);return}const r=document.createElement("style");r.setAttribute("data-shadow-styles",n),r.textContent=e,i.appendChild(r)})}const tc=`@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
scroll-behavior: auto !important;
}
}`;function oc(e){let t=0;for(let o=0;o<e.length;o++)t=(t<<5)-t+e.charCodeAt(o),t|=0;return"s"+Math.abs(t).toString(36)}const nc=".btt[data-v-6a25802e]{position:absolute;z-index:15;inset-inline-start:var(--map-fab-beside, calc(12px + env(safe-area-inset-left)) );bottom:calc(12px + env(safe-area-inset-bottom));width:44px;height:44px;display:flex;align-items:center;justify-content:center;font:18px/1 system-ui;color:#3b463d;background:#fff;border:1px solid var(--vtl-border, #d6d9d2);border-radius:50%;box-shadow:0 2px 10px #0000002e;cursor:pointer}.btt[data-v-6a25802e]:hover{background:#d1d4cd}.btt[data-v-6a25802e]:focus-visible{outline:2px solid var(--vtl-accent, #3b463d);outline-offset:2px}@media (prefers-reduced-motion: reduce){.btt[data-v-6a25802e]{transition:none}}",Ao=(e,t)=>{const o=e.__vccOpts||e;for(const[n,s]of t)o[n]=s;return o},sc=["aria-label","title"],ic=Ao({__name:"BackToTopButton",props:{target:{type:Object,default:null},threshold:{type:Number,default:400},labels:{type:Object,default:()=>({})}},setup(e){const t=e,o=_s(0),n=_s(!1);function s(){const d=t.target;if(!d){o.value=0,n.value=!1;return}o.value=d.scrollTop||0,n.value=(d.scrollHeight||0)-(d.clientHeight||0)>t.threshold}const i=Si(()=>n.value&&o.value>t.threshold);function a(){const d=t.target;if(!d)return;const p=typeof matchMedia=="function"&&matchMedia("(prefers-reduced-motion: reduce)").matches;d.scrollTo({top:0,behavior:p?"auto":"smooth"})}let r=null;function l(d){r&&(r.removeEventListener("scroll",s),r=null),d&&(d.addEventListener("scroll",s,{passive:!0}),r=d),s()}return $n(()=>l(t.target)),$o(()=>t.target,d=>l(d)),Ws(()=>l(null)),(d,p)=>i.value?(S(),L("button",{key:0,class:"btt",type:"button","aria-label":e.labels.backToTop||"",title:e.labels.backToTop||"",onClick:a},"↑",8,sc)):U("",!0)}},[["styles",[nc]],["__scopeId","data-v-6a25802e"]]),ac=Object.assign({"./locales/ar/buttons.json":{prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين",posterMap:"خريطة الملصق",prayerList:"قائمة الصلاة",cardDeck:"مجموعة البطاقات",printOptions:"خيارات الطباعة",showOnMap:"أظهر على الخريطة",close:"إغلاق",showOnMapAria:"أظهر {label} على الخريطة",cardStockAria:"حجم بطاقة الصلاة",previewPrintPoster:"معاينة وطباعة ملصق {label}",share:"مشاركة",shareSteps:["ضع هذه الخريطة على موقعك","أعدّ قائمة بمواقع الويب في مدينتك","علّمهم أن يضعوها أيضًا","علّمهم أن يعلّموا غيرهم وضعها","لنكثر الخرائط في كل مكان ليسوع!"],clearSelection:"إلغاء التحديد",noOptions:"لا توجد نتائج",renderingLocal:"يتم إنشاء صورة بجودة الطباعة في متصفحك — لا يتم تحميل أي شيء.",postersPerRow:"الملصقات في كل صف",packetVariantAria:"تفاصيل حزمة الصلاة",packetFull:"تفاصيل كاملة",packetLightweight:"مختصرة",working:"جارٍ العمل…",postersPerRowAuto:"تلقائي"},"./locales/ar/grid.json":{search:"ابحث عن الشعوب…",hide_filters:"إخفاء عوامل التصفية",show_filters:"إظهار عوامل التصفية",total:"الإجمالي",showing:"المعروض",load_more:"عرض المزيد",full_profile:"الملف الكامل",wagf_region:"المنطقة",wagf_block:"كتلة التقارب",rop1:"الشعب",religion:"الدين",exact_filter:"تطابق تام",clear_all:"مسح الكل",loading:"جارٍ التحميل…",no_results:"لا توجد شعوب مطابقة لهذا التصفية.",type_to_search:"اكتب للبحث...",load_failed:"تعذّر تحميل بيانات الشعوب. هذه مشكلة اتصال، وليست مشكلة في التصفية.",search_people_or_countries:"ابحث عن الشعوب أو الدول…",cards_per_row:"البطاقات في كل صف",cards_per_row_auto:"تلقائي"},"./locales/ar/messages.json":{menuComingSoon:"القائمة قادمة قريباً",pinHint:{tapDot:"اضغط على نقطة ملوّنة — لا يزال هناك من يحتاج إلى الصلاة"},upg100WallHeading:"قائمتي UPG100 — قوائم صلاة وملصقات",upg100WallTag:"تعبئة للصلاة",upg100WallIntroA:"كيف تُطعم جمعًا من خمسة آلاف؟ أجلسهم يسوع جماعاتٍ من خمسين ومن مئة، فصار المستحيل قابلًا للمشاركة (لوقا ٩:١٤). فعلنا المثل مع ٢١٠٦ شعوب غير مبلَّغة: ٢٧ قائمة من نحو خمسين إلى مئة. تُطبع كل قائمة حزمةَ صلاة وملصقًا، ليحمل ٢٧ تلميذًا أو كنيسة أو قائدًا محليًا كلٌّ واحدة — مصلّين لأجلهم ",upg100WallIntroEmph:"باسم شعبهم",upg100WallIntroB:".",loadingNamed:"جارٍ تحميل {name}…",couldNotLoadNamed:"تعذّر تحميل {name}.",engineMissing:"لم يتم تحميل محرك الخرائط {engine}.",packetFailed:"فشل إنشاء الكُتيّب: {reason}",selectionPacketFailed:"فشل إنشاء كُتيّب التحديد: {reason}",posterOneTerritory:"الملصق يطبع منطقة واحدة في كل مرة — {count} محددة.",selectionPosterFailed:"فشل إنشاء ملصق التحديد: {reason}",mapUnavailable:"الخريطة غير متاحة",copied:"تم النسخ!",copyFailed:"فشل النسخ — اضغط Ctrl/Cmd-C",engineNotLoaded:"لم يتم تحميل محرك الخريطة",engineNotLoadedDetail:"لم يتم تحميل محرك الخريطة {engine}. القائمة ووسيلة الإيضاح غير متأثرتين.",viewLoadFailed:"تعذّر تحميل هذا العرض.",retry:"إعادة المحاولة",noMapboxToken:"لا يوجد رمز Mapbox",noMapboxTokenDetail:"لم يُضبط أي رمز Mapbox. القائمة ووسيلة الإيضاح غير متأثرتين.",loadingBoundaries:"جارٍ تحميل الحدود…",fetchingUupgs:"جارٍ جلب {n} من UUPG…",mapStatusCounts:"المساحات: {polys} · المناطق: {zones}/{total} · الدبابيس: {pins}",tapTerritoriesHint:"انقر على الأقاليم في الخريطة أو صفوف وسيلة الإيضاح لإضافتها · انقر مجددًا لإزالتها",territoriesSelected:"الأقاليم: {count}",bandInRange:"✓ النطاق 50–100",bandOutOfRange:"النطاق 50–100",mapContextLost:"تم إلغاء تحميل هذه الخريطة لتحرير ذاكرة الرسوميات.",nOfTotal:"{n} من {total}",mapInitFailed:"تعذّر تهيئة الخريطة — تحقّق من الرمز والحاوية",countryWallIntroA:"ملصق لكل دولة، جاهز للصلاة والطباعة والتعليق على الحائط — نصلّي لأجلهم ",countryWallIntroB:". رُتّبت المناطق والدول بحسب عدد الشعوب غير المبلَّغة فيها، لتتقدّم الحاجة الأكبر.",countryWallSoon:"قريبًا: ستُنشأ قائمة صلاة لكل دولة، تسمّي كل شعب غير مبلَّغ فيها.",countryWallHeading:"ملصقات الدول — قوائم صلاة وملصقات",largerScreenNotice:"هذه الخريطة التجريبية مُعدّة للشاشات الكبيرة. تُفتح هنا، لكن بعض أجزائها قد لا يتّسع أو لا يعمل جيدًا على الهاتف.",desktopOnlyNotice:"{label} يعمل على الحاسوب فقط — افتح هذه الصفحة على حاسوب لاستخدامه.",noticeDismiss:"إغلاق",countryPosterTooMany:"عدد الشعوب أكبر من أن يتّسع له ملصق واحد بوضوح — ونعمل على حلّ لذلك."},"./locales/de/buttons.json":{prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten",posterMap:"Posterkarte",prayerList:"Gebetsliste",cardDeck:"Kartenset",printOptions:"Druckoptionen",showOnMap:"Auf der Karte zeigen",close:"Schließen",showOnMapAria:"{label} auf der Karte zeigen",cardStockAria:"Größe der Gebetskarte",previewPrintPoster:"Vorschau und Druck des Posters {label}",share:"Teilen",shareSteps:["Binde diese Karte auf deiner Website ein","Erstelle eine Liste der Websites in deiner Stadt","Zeige ihnen, wie sie sie ebenfalls einbinden","Zeige ihnen, wie sie es anderen beibringen","Lasst uns Karten überall vermehren – für Jesus!"],clearSelection:"Auswahl aufheben",noOptions:"Keine Optionen gefunden",renderingLocal:"Ein druckfähiges Bild wird in deinem Browser erzeugt — es wird nichts hochgeladen.",postersPerRow:"Poster pro Zeile",packetVariantAria:"Detailgrad des Gebetspakets",packetFull:"Vollständig",packetLightweight:"Kompakt",working:"Wird bearbeitet…",postersPerRowAuto:"Automatisch"},"./locales/de/grid.json":{search:"Volksgruppen suchen…",hide_filters:"Filter ausblenden",show_filters:"Filter anzeigen",total:"Gesamt",showing:"Angezeigt",load_more:"Mehr laden",full_profile:"Vollständiges Profil",wagf_region:"Region",wagf_block:"Affinitätsblock",rop1:"Volk",religion:"Religion",exact_filter:"Exakt",clear_all:"Alle löschen",loading:"Wird geladen…",no_results:"Keine Volksgruppen entsprechen diesem Filter.",type_to_search:"Zum Suchen tippen...",load_failed:"Die Daten konnten nicht geladen werden. Das ist ein Verbindungsproblem, nicht Ihr Filter.",search_people_or_countries:"Volksgruppen oder Länder suchen…",cards_per_row:"Karten pro Zeile",cards_per_row_auto:"Automatisch"},"./locales/de/messages.json":{menuComingSoon:"Menü folgt in Kürze",pinHint:{tapDot:"Tippe auf einen farbigen Punkt — jemand braucht noch Gebet"},upg100WallHeading:"Meine UPG100-Liste — Gebetslisten und Poster",upg100WallTag:"Gebetsmobilisierung",upg100WallIntroA:"Wie würden Sie eine Menge von fünftausend speisen? Jesus ließ sie in Gruppen zu fünfzig und hundert lagern, und das Unmögliche wurde teilbar (Lukas 9,14). Dasselbe haben wir mit den 2.106 unerreichten Volksgruppen getan: 27 Listen von etwa fünfzig bis hundert. Jede Liste druckt als Gebetspaket und als Poster, damit 27 Jünger, Gemeinden oder einheimische Leiter je eine tragen können — und für sie beten ",upg100WallIntroEmph:"mit dem Namen ihrer Volksgruppe",upg100WallIntroB:".",loadingNamed:"{name} wird geladen…",couldNotLoadNamed:"{name} konnte nicht geladen werden.",engineMissing:"Die Karten-Engine {engine} wurde nicht geladen.",packetFailed:"Heft fehlgeschlagen: {reason}",selectionPacketFailed:"Heft der Auswahl fehlgeschlagen: {reason}",posterOneTerritory:"Das Plakat druckt ein Gebiet auf einmal — {count} ausgewählt.",selectionPosterFailed:"Plakat der Auswahl fehlgeschlagen: {reason}",mapUnavailable:"Karte nicht verfügbar",copied:"Kopiert!",copyFailed:"Kopieren fehlgeschlagen — Strg/Cmd-C drücken",engineNotLoaded:"Karten-Engine nicht geladen",engineNotLoadedDetail:"Die Karten-Engine {engine} wurde nicht geladen. Liste und Legende sind nicht betroffen.",viewLoadFailed:"Diese Ansicht konnte nicht geladen werden.",retry:"Erneut versuchen",noMapboxToken:"Kein Mapbox-Token",noMapboxTokenDetail:"Kein Mapbox-Token konfiguriert. Liste und Legende sind nicht betroffen.",loadingBoundaries:"Grenzen werden geladen…",fetchingUupgs:"{n} UUPGs werden abgerufen…",mapStatusCounts:"Flächen: {polys} · Zonen: {zones}/{total} · Pins: {pins}",tapTerritoriesHint:"Tippen Sie auf Gebiete auf der Karte oder auf Legendenzeilen, um sie hinzuzufügen · erneut tippen zum Entfernen",territoriesSelected:"Gebiete: {count}",bandInRange:"✓ Bereich 50–100",bandOutOfRange:"Bereich 50–100",mapContextLost:"Diese Karte wurde entladen, um Grafikspeicher freizugeben.",nOfTotal:"{n} von {total}",mapInitFailed:"Karte konnte nicht initialisiert werden — Token und Container prüfen",countryWallIntroA:"Ein Poster pro Land, bereit zum Beten, Drucken und Aufhängen — und für sie beten ",countryWallIntroB:". Regionen und Länder sind danach geordnet, wie viele unerreichte Volksgruppen sie umfassen, damit der größte Bedarf vorne steht.",countryWallSoon:"Demnächst: Für jedes Land wird eine Gebetsliste erstellt, die jede unerreichte Volksgruppe darin mit Namen nennt.",countryWallHeading:"Länderposter — Gebetslisten und Poster",largerScreenNotice:"Diese experimentelle Karte ist für große Bildschirme gebaut. Sie öffnet sich hier, aber Teile passen oder funktionieren auf einem Telefon womöglich nicht gut.",desktopOnlyNotice:"{label} funktioniert nur am Desktop – öffnen Sie diese Seite an einem Computer.",noticeDismiss:"Schließen",countryPosterTooMany:"Zu viele Volksgruppen, um lesbar auf ein Plakat zu passen – an einer Lösung wird gearbeitet."},"./locales/en/buttons.json":{prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share",posterMap:"Poster Map",prayerList:"Prayer List",cardDeck:"Card Deck",printOptions:"Print Options",showOnMap:"Show on map",close:"Close",showOnMapAria:"Show {label} on the map",cardStockAria:"Prayer card size",working:"Working…",packetVariantAria:"Prayer packet detail",packetFull:"Full detail",packetLightweight:"Lightweight",previewPrintPoster:"Preview & print the {label} poster",clearSelection:"Clear selection",noOptions:"No options found",renderingLocal:"Rendering a print-quality image in your browser — nothing is uploaded.",postersPerRow:"Posters per row",postersPerRowAuto:"Auto"},"./locales/en/grid.json":{search:"Search people groups…",hide_filters:"Hide Filters",show_filters:"Show Filters",total:"Total",showing:"Showing",load_more:"Load More",full_profile:"Full Profile",wagf_region:"Region",wagf_block:"Affinity Block",rop1:"People Group",religion:"Religion",exact_filter:"Exact",clear_all:"Clear All",loading:"Loading…",no_results:"No people groups match this filter.",type_to_search:"Type to search...",load_failed:"People-group data could not be loaded. This is a connection problem, not your filter.",search_people_or_countries:"Search people groups or countries…",cards_per_row:"Cards per row",cards_per_row_auto:"Auto"},"./locales/en/messages.json":{menuComingSoon:"Menu coming soon",pinHint:{tapDot:"Tap a coloured dot — someone still needs prayer"},upg100WallHeading:"My UPG100 List — Prayer Lists & Posters",upg100WallTag:"Prayer Mobilization",upg100WallIntroA:"How would you feed a crowd of five thousand? Jesus sat them down in groups of fifty and a hundred, and the impossible became shareable (Luke 9:14). We did the same with the 2,106 unreached people groups: 27 lists of about fifty to a hundred. Each list prints as a prayer packet and a poster, so 27 disciples, churches or local leaders can each carry one — praying for them ",upg100WallIntroEmph:"by their people group name",upg100WallIntroB:".",loadingNamed:"Loading {name}…",couldNotLoadNamed:"Could not load {name}.",engineMissing:"The {engine} map engine did not load.",packetFailed:"Packet failed: {reason}",selectionPacketFailed:"Selection packet failed: {reason}",posterOneTerritory:"Poster prints one territory at a time — {count} selected.",selectionPosterFailed:"Selection poster failed: {reason}",mapUnavailable:"Map unavailable",copied:"Copied!",copyFailed:"Copy failed — press Ctrl/Cmd-C",engineNotLoaded:"map engine not loaded",engineNotLoadedDetail:"The {engine} map engine did not load. The list and legend are unaffected.",viewLoadFailed:"This view couldn't load.",retry:"Retry",noMapboxToken:"No Mapbox token",noMapboxTokenDetail:"No Mapbox token configured. The list and legend are unaffected.",loadingBoundaries:"Loading boundaries…",fetchingUupgs:"Fetching {n} UUPGs…",mapStatusCounts:"Areas: {polys} · zones: {zones}/{total} · pins: {pins}",tapTerritoriesHint:"Tap territories on the map or legend rows to add · tap again to remove",territoriesSelected:"Territories: {count}",bandInRange:"✓ 50–100 band",bandOutOfRange:"band 50–100",mapContextLost:"This map was unloaded to free graphics memory.",nOfTotal:"{n} of {total}",mapInitFailed:"Map failed to initialize — check token and container",countryWallIntroA:"One poster per country, ready to pray, print, and put on a wall — praying for them ",countryWallIntroB:". Regions and countries are ordered by how many unengaged people groups they hold, so the greatest need leads.",countryWallSoon:"Coming soon — a prayer list will be generated for each country, naming every unengaged people group within it.",countryWallHeading:"Country Posters — Prayer Lists & Posters",largerScreenNotice:"This experimental map is built for larger screens. It opens here, but parts of it may not fit or work well on a phone.",desktopOnlyNotice:"{label} only supports desktop — open this page on a desktop to use it.",noticeDismiss:"Dismiss",countryPosterTooMany:"Too many people groups to fit on one poster legibly — a solution is in progress."},"./locales/es/buttons.json":{prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar",posterMap:"Mapa del cartel",prayerList:"Lista de oración",cardDeck:"Baraja de tarjetas",printOptions:"Opciones de impresión",showOnMap:"Ver en el mapa",close:"Cerrar",showOnMapAria:"Ver {label} en el mapa",cardStockAria:"Tamaño de la tarjeta de oración",previewPrintPoster:"Previsualizar e imprimir el cartel de {label}",share:"Compartir",shareSteps:["Inserta este mapa en tu sitio","Haz una lista de los sitios web de tu ciudad","Enséñales a insertarlo también","Enséñales a enseñar a otros a insertarlo","¡Multiplica los mapas por todas partes para Jesús!"],clearSelection:"Borrar la selección",noOptions:"No se encontraron opciones",renderingLocal:"Se está generando una imagen con calidad de impresión en tu navegador: no se sube nada.",postersPerRow:"Pósteres por fila",packetVariantAria:"Detalle del paquete de oración",packetFull:"Detalle completo",packetLightweight:"Ligero",working:"Procesando…",postersPerRowAuto:"Automático"},"./locales/es/grid.json":{search:"Buscar pueblos…",hide_filters:"Ocultar filtros",show_filters:"Mostrar filtros",total:"Total",showing:"Mostrando",load_more:"Cargar más",full_profile:"Perfil completo",wagf_region:"Región",wagf_block:"Bloque de afinidad",rop1:"Pueblo",religion:"Religión",exact_filter:"Exacto",clear_all:"Borrar todo",loading:"Cargando…",no_results:"Ningún pueblo coincide con este filtro.",type_to_search:"Escribe para buscar...",load_failed:"No se pudieron cargar los datos de pueblos. Es un problema de conexión, no de tu filtro.",search_people_or_countries:"Buscar pueblos o países…",cards_per_row:"Tarjetas por fila",cards_per_row_auto:"Automático"},"./locales/es/messages.json":{menuComingSoon:"Menú próximamente",pinHint:{tapDot:"Toca un punto de color: alguien todavía necesita oración"},upg100WallHeading:"Mi lista UPG100 — Listas de oración y carteles",upg100WallTag:"Movilización de oración",upg100WallIntroA:"¿Cómo alimentarías a una multitud de cinco mil? Jesús los sentó en grupos de cincuenta y de cien, y lo imposible se volvió compartible (Lucas 9:14). Hicimos lo mismo con los 2.106 pueblos no alcanzados: 27 listas de unos cincuenta a cien. Cada lista se imprime como paquete de oración y cartel, para que 27 discípulos, iglesias o líderes locales lleven una cada uno — orando por ellos ",upg100WallIntroEmph:"por el nombre de su pueblo",upg100WallIntroB:".",loadingNamed:"Cargando {name}…",couldNotLoadNamed:"No se pudo cargar {name}.",engineMissing:"El motor de mapas {engine} no se cargó.",packetFailed:"Error al generar el cuadernillo: {reason}",selectionPacketFailed:"Error al generar el cuadernillo de la selección: {reason}",posterOneTerritory:"El cartel imprime un territorio a la vez: {count} seleccionados.",selectionPosterFailed:"Error al generar el cartel de la selección: {reason}",mapUnavailable:"Mapa no disponible",copied:"¡Copiado!",copyFailed:"Error al copiar: pulsa Ctrl/Cmd-C",engineNotLoaded:"motor de mapas no cargado",engineNotLoadedDetail:"El motor de mapas {engine} no se cargó. La lista y la leyenda no se ven afectadas.",viewLoadFailed:"No se pudo cargar esta vista.",retry:"Reintentar",noMapboxToken:"No hay token de Mapbox",noMapboxTokenDetail:"No hay ningún token de Mapbox configurado. La lista y la leyenda no se ven afectadas.",loadingBoundaries:"Cargando límites…",fetchingUupgs:"Obteniendo {n} UUPG…",mapStatusCounts:"Áreas: {polys} · zonas: {zones}/{total} · marcadores: {pins}",tapTerritoriesHint:"Toque territorios en el mapa o filas de la leyenda para añadirlos · toque de nuevo para quitarlos",territoriesSelected:"Territorios: {count}",bandInRange:"✓ franja 50–100",bandOutOfRange:"franja 50–100",mapContextLost:"Este mapa se descargó para liberar memoria gráfica.",nOfTotal:"{n} de {total}",mapInitFailed:"No se pudo iniciar el mapa: revisa el token y el contenedor",countryWallIntroA:"Un cartel por país, listo para orar, imprimir y colgar en una pared — orando por ellos ",countryWallIntroB:". Las regiones y los países se ordenan según cuántos pueblos no comprometidos contienen, para que la mayor necesidad vaya primero.",countryWallSoon:"Próximamente: se generará una lista de oración para cada país, con el nombre de cada pueblo no alcanzado que hay en él.",countryWallHeading:"Carteles por país — Listas de oración y carteles",largerScreenNotice:"Este mapa experimental está pensado para pantallas grandes. Se abre aquí, pero algunas partes pueden no caber o no funcionar bien en un teléfono.",desktopOnlyNotice:"{label} solo funciona en escritorio: abra esta página en un ordenador para usarlo.",noticeDismiss:"Cerrar",countryPosterTooMany:"Demasiados pueblos para que quepan legiblemente en un solo cartel; estamos trabajando en una solución."},"./locales/fr/buttons.json":{prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer",posterMap:"Carte de l'affiche",prayerList:"Liste de prière",cardDeck:"Jeu de cartes",printOptions:"Options d'impression",showOnMap:"Voir sur la carte",close:"Fermer",showOnMapAria:"Voir {label} sur la carte",cardStockAria:"Taille de la carte de prière",previewPrintPoster:"Aperçu et impression de l’affiche {label}",share:"Partager",shareSteps:["Intégrez cette carte à votre site","Dressez la liste des sites web de votre ville","Apprenez-leur à l’intégrer aussi","Apprenez-leur à former d’autres personnes à l’intégrer","Multiplions les cartes partout pour Jésus !"],clearSelection:"Effacer la sélection",noOptions:"Aucune option trouvée",renderingLocal:"Une image de qualité impression est générée dans votre navigateur — rien n’est envoyé.",postersPerRow:"Affiches par ligne",packetVariantAria:"Niveau de détail du dossier de prière",packetFull:"Détail complet",packetLightweight:"Allégé",working:"Traitement…",postersPerRowAuto:"Auto"},"./locales/fr/grid.json":{search:"Rechercher des peuples…",hide_filters:"Masquer les filtres",show_filters:"Afficher les filtres",total:"Total",showing:"Affichage",load_more:"Charger plus",full_profile:"Profil complet",wagf_region:"Région",wagf_block:"Bloc d'affinité",rop1:"Peuple",religion:"Religion",exact_filter:"Exact",clear_all:"Tout effacer",loading:"Chargement…",no_results:"Aucun peuple ne correspond à ce filtre.",type_to_search:"Tapez pour rechercher...",load_failed:"Les données n’ont pas pu être chargées. C’est un problème de connexion, pas votre filtre.",search_people_or_countries:"Rechercher des peuples ou des pays…",cards_per_row:"Cartes par ligne",cards_per_row_auto:"Automatique"},"./locales/fr/messages.json":{menuComingSoon:"Menu bientôt disponible",pinHint:{tapDot:"Touchez un point coloré — quelqu’un a encore besoin de prière"},upg100WallHeading:"Ma liste UPG100 — Listes de prière et affiches",upg100WallTag:"Mobilisation pour la prière",upg100WallIntroA:"Comment nourririez-vous une foule de cinq mille personnes ? Jésus les a fait asseoir par groupes de cinquante et de cent, et l’impossible est devenu partageable (Luc 9.14). Nous avons fait de même avec les 2 106 peuples non atteints : 27 listes d’environ cinquante à cent. Chaque liste s’imprime en dossier de prière et en affiche, pour que 27 disciples, Églises ou responsables locaux en portent chacun une — en priant pour eux ",upg100WallIntroEmph:"par le nom de leur peuple",upg100WallIntroB:".",loadingNamed:"Chargement de {name}…",couldNotLoadNamed:"Impossible de charger {name}.",engineMissing:"Le moteur de carte {engine} ne s’est pas chargé.",packetFailed:"Échec du livret : {reason}",selectionPacketFailed:"Échec du livret de la sélection : {reason}",posterOneTerritory:"L’affiche imprime un territoire à la fois — {count} sélectionnés.",selectionPosterFailed:"Échec de l’affiche de la sélection : {reason}",mapUnavailable:"Carte indisponible",copied:"Copié !",copyFailed:"Échec de la copie — appuyez sur Ctrl/Cmd-C",engineNotLoaded:"moteur cartographique non chargé",engineNotLoadedDetail:"Le moteur cartographique {engine} ne s’est pas chargé. La liste et la légende ne sont pas affectées.",viewLoadFailed:"Impossible de charger cette vue.",retry:"Réessayer",noMapboxToken:"Aucun jeton Mapbox",noMapboxTokenDetail:"Aucun jeton Mapbox n’est configuré. La liste et la légende ne sont pas affectées.",loadingBoundaries:"Chargement des limites…",fetchingUupgs:"Récupération de {n} UUPG…",mapStatusCounts:"Surfaces : {polys} · zones : {zones}/{total} · repères : {pins}",tapTerritoriesHint:"Touchez des territoires sur la carte ou des lignes de la légende pour les ajouter · touchez à nouveau pour les retirer",territoriesSelected:"Territoires : {count}",bandInRange:"✓ tranche 50–100",bandOutOfRange:"tranche 50–100",mapContextLost:"Cette carte a été déchargée pour libérer de la mémoire graphique.",nOfTotal:"{n} sur {total}",mapInitFailed:"Échec de l’initialisation de la carte — vérifiez le jeton et le conteneur",countryWallIntroA:"Une affiche par pays, prête à prier, à imprimer et à accrocher au mur — en priant pour eux ",countryWallIntroB:". Les régions et les pays sont classés selon le nombre de peuples non engagés qu’ils comptent, pour que le plus grand besoin vienne en premier.",countryWallSoon:"Bientôt : une liste de prière sera générée pour chaque pays, nommant chaque peuple non atteint qui s’y trouve.",countryWallHeading:"Affiches par pays — Listes de prière et affiches",largerScreenNotice:"Cette carte expérimentale est conçue pour les grands écrans. Elle s’ouvre ici, mais certaines parties peuvent mal s’afficher ou mal fonctionner sur un téléphone.",desktopOnlyNotice:"{label} ne fonctionne que sur ordinateur : ouvrez cette page sur un ordinateur pour l’utiliser.",noticeDismiss:"Fermer",countryPosterTooMany:"Trop de peuples pour tenir lisiblement sur une seule affiche — une solution est en préparation."},"./locales/hi/buttons.json":{prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें",posterMap:"पोस्टर मानचित्र",prayerList:"प्रार्थना सूची",cardDeck:"कार्ड सेट",printOptions:"छपाई विकल्प",showOnMap:"मानचित्र पर देखें",close:"बंद करें",showOnMapAria:"{label} को मानचित्र पर देखें",cardStockAria:"प्रार्थना कार्ड का आकार",previewPrintPoster:"{label} पोस्टर देखें और प्रिंट करें",share:"साझा करें",shareSteps:["इस मानचित्र को अपनी वेबसाइट पर लगाएँ","अपने शहर की वेबसाइटों की सूची बनाएँ","उन्हें भी इसे लगाना सिखाएँ","उन्हें सिखाएँ कि वे औरों को लगाना सिखाएँ","यीशु के लिए हर जगह मानचित्र बढ़ाएँ!"],clearSelection:"चयन हटाएँ",noOptions:"कोई विकल्प नहीं मिला",renderingLocal:"आपके ब्राउज़र में प्रिंट-गुणवत्ता वाली छवि बन रही है — कुछ भी अपलोड नहीं किया जाता।",postersPerRow:"प्रति पंक्ति पोस्टर",packetVariantAria:"प्रार्थना पैकेट विवरण",packetFull:"पूर्ण विवरण",packetLightweight:"संक्षिप्त",working:"कार्य जारी…",postersPerRowAuto:"स्वतः"},"./locales/hi/grid.json":{search:"जनसमूह खोजें…",hide_filters:"फ़िल्टर छिपाएँ",show_filters:"फ़िल्टर दिखाएँ",total:"कुल",showing:"दिखा रहे हैं",load_more:"और देखें",full_profile:"पूरी प्रोफ़ाइल",wagf_region:"क्षेत्र",wagf_block:"समानता समूह",rop1:"जनसमूह",religion:"धर्म",exact_filter:"सटीक",clear_all:"सब हटाएँ",loading:"लोड हो रहा है…",no_results:"इस फ़िल्टर से कोई जनसमूह मेल नहीं खाता।",type_to_search:"खोजने के लिए लिखें...",load_failed:"जनसमूह डेटा लोड नहीं हो सका। यह कनेक्शन की समस्या है, आपके फ़िल्टर की नहीं।",search_people_or_countries:"जनसमूह या देश खोजें…",cards_per_row:"प्रति पंक्ति कार्ड",cards_per_row_auto:"स्वचालित"},"./locales/hi/messages.json":{menuComingSoon:"मेनू शीघ्र आ रहा है",pinHint:{tapDot:"किसी रंगीन बिंदु पर टैप करें — किसी को अभी भी प्रार्थना की आवश्यकता है"},upg100WallHeading:"मेरी UPG100 सूची — प्रार्थना सूचियाँ और पोस्टर",upg100WallTag:"प्रार्थना संग्रहण",upg100WallIntroA:"पाँच हज़ार की भीड़ को आप कैसे खिलाते? यीशु ने उन्हें पचास-पचास और सौ-सौ के समूहों में बिठाया, और असंभव बाँटने योग्य हो गया (लूका 9:14). हमने 2,106 अनपहुँचे जनसमूहों के साथ वही किया: लगभग पचास से सौ तक की 27 सूचियाँ. हर सूची प्रार्थना पैकेट और पोस्टर के रूप में छपती है, ताकि 27 शिष्य, कलीसियाएँ या स्थानीय अगुवे एक-एक ले सकें — उनके लिए प्रार्थना करते हुए ",upg100WallIntroEmph:"उनके जन के नाम से",upg100WallIntroB:".",loadingNamed:"{name} लोड हो रहा है…",couldNotLoadNamed:"{name} लोड नहीं हो सका।",engineMissing:"{engine} नक्शा इंजन लोड नहीं हुआ।",packetFailed:"पुस्तिका विफल: {reason}",selectionPacketFailed:"चयन की पुस्तिका विफल: {reason}",posterOneTerritory:"पोस्टर एक समय में एक क्षेत्र छापता है — {count} चयनित।",selectionPosterFailed:"चयन का पोस्टर विफल: {reason}",mapUnavailable:"मानचित्र अनुपलब्ध",copied:"कॉपी हो गया!",copyFailed:"कॉपी विफल — Ctrl/Cmd-C दबाएँ",engineNotLoaded:"मानचित्र इंजन लोड नहीं हुआ",engineNotLoadedDetail:"{engine} मानचित्र इंजन लोड नहीं हुआ। सूची और लेजेंड अप्रभावित हैं।",viewLoadFailed:"यह दृश्य लोड नहीं हो सका।",retry:"फिर से कोशिश करें",noMapboxToken:"कोई Mapbox टोकन नहीं",noMapboxTokenDetail:"कोई Mapbox टोकन कॉन्फ़िगर नहीं है। सूची और लेजेंड पर कोई असर नहीं है।",loadingBoundaries:"सीमाएँ लोड हो रही हैं…",fetchingUupgs:"{n} UUPG लाए जा रहे हैं…",mapStatusCounts:"क्षेत्र: {polys} · ज़ोन: {zones}/{total} · पिन: {pins}",tapTerritoriesHint:"जोड़ने के लिए मानचित्र पर क्षेत्रों या लेजेंड की पंक्तियों पर टैप करें · हटाने के लिए फिर से टैप करें",territoriesSelected:"क्षेत्र: {count}",bandInRange:"✓ 50–100 दायरा",bandOutOfRange:"50–100 दायरा",mapContextLost:"ग्राफ़िक्स मेमोरी खाली करने के लिए यह मानचित्र अनलोड कर दिया गया।",nOfTotal:"{total} में से {n}",mapInitFailed:"मानचित्र आरंभ नहीं हो सका — टोकन और कंटेनर जाँचें",countryWallIntroA:"हर देश के लिए एक पोस्टर — प्रार्थना करने, छापने और दीवार पर लगाने के लिए तैयार, और उनके लिए प्रार्थना करते हुए ",countryWallIntroB:". क्षेत्र और देश इस क्रम में हैं कि उनमें कितने अनपहुँचे जनसमूह हैं, ताकि सबसे बड़ी ज़रूरत पहले आए।",countryWallSoon:"जल्द ही: हर देश के लिए एक प्रार्थना सूची बनाई जाएगी, जिसमें उसके हर अनपहुँचे जनसमूह का नाम होगा।",countryWallHeading:"देश पोस्टर — प्रार्थना सूचियाँ और पोस्टर",largerScreenNotice:"यह प्रायोगिक नक्शा बड़ी स्क्रीन के लिए बना है। यह यहाँ खुलता है, पर फ़ोन पर इसके कुछ हिस्से ठीक से न दिखें या न चलें।",desktopOnlyNotice:"{label} केवल डेस्कटॉप पर चलता है — इसे इस्तेमाल करने के लिए यह पेज कंप्यूटर पर खोलें।",noticeDismiss:"बंद करें",countryPosterTooMany:"एक पोस्टर पर साफ़-साफ़ आने के लिए जनसमूह बहुत अधिक हैं — समाधान पर काम चल रहा है।"},"./locales/it/buttons.json":{prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora",posterMap:"Mappa del poster",prayerList:"Lista di preghiera",cardDeck:"Mazzo di carte",printOptions:"Opzioni di stampa",showOnMap:"Mostra sulla mappa",close:"Chiudi",showOnMapAria:"Mostra {label} sulla mappa",cardStockAria:"Formato della scheda di preghiera",previewPrintPoster:"Anteprima e stampa del poster {label}",share:"Condividi",shareSteps:["Incorpora questa mappa nel tuo sito","Fai un elenco dei siti web della tua città","Insegna loro a incorporarla a loro volta","Insegna loro a formare altri a incorporarla","Moltiplichiamo le mappe ovunque per Gesù!"],clearSelection:"Cancella la selezione",noOptions:"Nessuna opzione trovata",renderingLocal:"Un’immagine con qualità di stampa viene generata nel tuo browser: nulla viene caricato.",postersPerRow:"Poster per riga",packetVariantAria:"Dettaglio del pacchetto di preghiera",packetFull:"Dettaglio completo",packetLightweight:"Leggero",working:"Elaborazione…",postersPerRowAuto:"Automatico"},"./locales/it/grid.json":{search:"Cerca popoli…",hide_filters:"Nascondi filtri",show_filters:"Mostra filtri",total:"Totale",showing:"Mostrati",load_more:"Carica altro",full_profile:"Profilo completo",wagf_region:"Regione",wagf_block:"Blocco di affinità",rop1:"Popolo",religion:"Religione",exact_filter:"Esatto",clear_all:"Cancella tutto",loading:"Caricamento…",no_results:"Nessun popolo corrisponde a questo filtro.",type_to_search:"Digita per cercare...",load_failed:"Impossibile caricare i dati dei popoli. È un problema di connessione, non del filtro.",search_people_or_countries:"Cerca popoli o paesi…",cards_per_row:"Schede per riga",cards_per_row_auto:"Automatico"},"./locales/it/messages.json":{menuComingSoon:"Menu in arrivo",pinHint:{tapDot:"Tocca un punto colorato — qualcuno ha ancora bisogno di preghiera"},upg100WallHeading:"La mia lista UPG100 — Liste di preghiera e manifesti",upg100WallTag:"Mobilitazione alla preghiera",upg100WallIntroA:"Come sfameresti una folla di cinquemila? Gesù li fece sedere a gruppi di cinquanta e di cento, e l’impossibile divenne condivisibile (Luca 9:14). Abbiamo fatto lo stesso con i 2.106 popoli non raggiunti: 27 liste di circa cinquanta-cento. Ogni lista si stampa come pacchetto di preghiera e manifesto, così 27 discepoli, chiese o responsabili locali ne portano una ciascuno — pregando per loro ",upg100WallIntroEmph:"con il nome del loro popolo",upg100WallIntroB:".",loadingNamed:"Caricamento di {name}…",couldNotLoadNamed:"Impossibile caricare {name}.",engineMissing:"Il motore di mappa {engine} non è stato caricato.",packetFailed:"Libretto non riuscito: {reason}",selectionPacketFailed:"Libretto della selezione non riuscito: {reason}",posterOneTerritory:"Il manifesto stampa un territorio alla volta — {count} selezionati.",selectionPosterFailed:"Manifesto della selezione non riuscito: {reason}",mapUnavailable:"Mappa non disponibile",copied:"Copiato!",copyFailed:"Copia non riuscita — premi Ctrl/Cmd-C",engineNotLoaded:"motore di mappe non caricato",engineNotLoadedDetail:"Il motore di mappe {engine} non si è caricato. L’elenco e la legenda non sono interessati.",viewLoadFailed:"Impossibile caricare questa vista.",retry:"Riprova",noMapboxToken:"Nessun token Mapbox",noMapboxTokenDetail:"Nessun token Mapbox configurato. L’elenco e la legenda non sono interessati.",loadingBoundaries:"Caricamento dei confini…",fetchingUupgs:"Recupero di {n} UUPG…",mapStatusCounts:"Aree: {polys} · zone: {zones}/{total} · segnaposto: {pins}",tapTerritoriesHint:"Tocca i territori sulla mappa o le righe della legenda per aggiungerli · tocca di nuovo per rimuoverli",territoriesSelected:"Territori: {count}",bandInRange:"✓ fascia 50–100",bandOutOfRange:"fascia 50–100",mapContextLost:"Questa mappa è stata scaricata per liberare memoria grafica.",nOfTotal:"{n} su {total}",mapInitFailed:"Impossibile inizializzare la mappa — controlla il token e il contenitore",countryWallIntroA:"Un poster per paese, pronto da pregare, stampare e appendere al muro — pregando per loro ",countryWallIntroB:". Regioni e paesi sono ordinati in base a quanti popoli non raggiunti contengono, perché il bisogno più grande venga per primo.",countryWallSoon:"Prossimamente: per ogni paese verrà generata una lista di preghiera con il nome di ogni popolo non raggiunto che vi abita.",countryWallHeading:"Poster per paese — Liste di preghiera e manifesti",largerScreenNotice:"Questa mappa sperimentale è pensata per schermi grandi. Si apre qui, ma alcune parti potrebbero non entrare o non funzionare bene su un telefono.",desktopOnlyNotice:"{label} funziona solo su desktop: apri questa pagina da un computer per usarlo.",noticeDismiss:"Chiudi",countryPosterTooMany:"Troppi popoli per stare in modo leggibile su un solo manifesto: una soluzione è in arrivo."},"./locales/pt/buttons.json":{prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar",posterMap:"Mapa do cartaz",prayerList:"Lista de oração",cardDeck:"Baralho de cartões",printOptions:"Opções de impressão",showOnMap:"Ver no mapa",close:"Fechar",showOnMapAria:"Ver {label} no mapa",cardStockAria:"Tamanho do cartão de oração",previewPrintPoster:"Pré-visualizar e imprimir o cartaz de {label}",share:"Partilhar",shareSteps:["Incorpore este mapa no seu site","Faça uma lista dos sites da sua cidade","Ensine-os a incorporá-lo também","Ensine-os a ensinar outros a incorporá-lo","Multipliquemos mapas por toda a parte para Jesus!"],clearSelection:"Limpar a seleção",noOptions:"Nenhuma opção encontrada",renderingLocal:"Uma imagem com qualidade de impressão está a ser gerada no seu navegador — nada é enviado.",postersPerRow:"Cartazes por linha",packetVariantAria:"Detalhe do pacote de oração",packetFull:"Detalhe completo",packetLightweight:"Leve",working:"Processando…",postersPerRowAuto:"Automático"},"./locales/pt/grid.json":{search:"Pesquisar povos…",hide_filters:"Ocultar filtros",show_filters:"Mostrar filtros",total:"Total",showing:"Mostrando",load_more:"Carregar mais",full_profile:"Perfil completo",wagf_region:"Região",wagf_block:"Bloco de afinidade",rop1:"Povo",religion:"Religião",exact_filter:"Exato",clear_all:"Limpar tudo",loading:"A carregar…",no_results:"Nenhum povo corresponde a este filtro.",type_to_search:"Escreva para pesquisar...",load_failed:"Não foi possível carregar os dados dos povos. É um problema de ligação, não do seu filtro.",search_people_or_countries:"Pesquisar povos ou países…",cards_per_row:"Cartões por linha",cards_per_row_auto:"Automático"},"./locales/pt/messages.json":{menuComingSoon:"Menu em breve",pinHint:{tapDot:"Toque num ponto colorido — alguém ainda precisa de oração"},upg100WallHeading:"Minha lista UPG100 — Listas de oração e cartazes",upg100WallTag:"Mobilização de oração",upg100WallIntroA:"Como você alimentaria uma multidão de cinco mil? Jesus os sentou em grupos de cinquenta e de cem, e o impossível tornou-se compartilhável (Lucas 9.14). Fizemos o mesmo com os 2.106 povos não alcançados: 27 listas de cerca de cinquenta a cem. Cada lista imprime como pacote de oração e cartaz, para que 27 discípulos, igrejas ou líderes locais levem uma cada um — orando por eles ",upg100WallIntroEmph:"pelo nome do seu povo",upg100WallIntroB:".",loadingNamed:"Carregando {name}…",couldNotLoadNamed:"Não foi possível carregar {name}.",engineMissing:"O motor de mapa {engine} não foi carregado.",packetFailed:"Falha ao gerar o caderno: {reason}",selectionPacketFailed:"Falha ao gerar o caderno da seleção: {reason}",posterOneTerritory:"O cartaz imprime um território de cada vez — {count} selecionados.",selectionPosterFailed:"Falha ao gerar o cartaz da seleção: {reason}",mapUnavailable:"Mapa indisponível",copied:"Copiado!",copyFailed:"Falha ao copiar — pressione Ctrl/Cmd-C",engineNotLoaded:"motor de mapas não carregado",engineNotLoadedDetail:"O motor de mapas {engine} não carregou. A lista e a legenda não são afetadas.",viewLoadFailed:"Não foi possível carregar esta visualização.",retry:"Tentar novamente",noMapboxToken:"Nenhum token do Mapbox",noMapboxTokenDetail:"Nenhum token do Mapbox configurado. A lista e a legenda não são afetadas.",loadingBoundaries:"Carregando limites…",fetchingUupgs:"Buscando {n} UUPGs…",mapStatusCounts:"Áreas: {polys} · zonas: {zones}/{total} · marcadores: {pins}",tapTerritoriesHint:"Toque em territórios no mapa ou em linhas da legenda para adicionar · toque de novo para remover",territoriesSelected:"Territórios: {count}",bandInRange:"✓ faixa 50–100",bandOutOfRange:"faixa 50–100",mapContextLost:"Este mapa foi descarregado para libertar memória gráfica.",nOfTotal:"{n} de {total}",mapInitFailed:"Falha ao iniciar o mapa — verifique o token e o contêiner",countryWallIntroA:"Um cartaz por país, pronto para orar, imprimir e pendurar na parede — orando por eles ",countryWallIntroB:". As regiões e os países são ordenados pelo número de povos não engajados que abrigam, para que a maior necessidade venha primeiro.",countryWallSoon:"Em breve: será gerada uma lista de oração para cada país, com o nome de cada povo não alcançado nele.",countryWallHeading:"Cartazes por país — Listas de oração e cartazes",largerScreenNotice:"Este mapa experimental foi feito para telas maiores. Ele abre aqui, mas algumas partes podem não caber ou não funcionar bem no celular.",desktopOnlyNotice:"{label} só funciona no computador — abra esta página num computador para usá-lo.",noticeDismiss:"Fechar",countryPosterTooMany:"Povos demais para caber de forma legível em um só cartaz — uma solução está a caminho."},"./locales/ro/buttons.json":{prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează",posterMap:"Harta afișului",prayerList:"Listă de rugăciune",cardDeck:"Pachet de cartonașe",printOptions:"Opțiuni de tipărire",showOnMap:"Arată pe hartă",close:"Închide",showOnMapAria:"Arată {label} pe hartă",cardStockAria:"Dimensiunea cardului de rugăciune",previewPrintPoster:"Previzualizează și tipărește posterul {label}",share:"Distribuie",shareSteps:["Încorporează această hartă pe site-ul tău","Fă o listă cu site-urile din orașul tău","Învață-i să o încorporeze și ei","Învață-i să îi formeze pe alții să o încorporeze","Să multiplicăm hărți pretutindeni pentru Isus!"],clearSelection:"Șterge selecția",noOptions:"Nicio opțiune găsită",renderingLocal:"O imagine de calitate pentru tipar este generată în browserul tău — nimic nu este încărcat.",postersPerRow:"Postere pe rând",packetVariantAria:"Nivelul de detaliu al pachetului de rugăciune",packetFull:"Detaliu complet",packetLightweight:"Redus",working:"Se procesează…",postersPerRowAuto:"Automat"},"./locales/ro/grid.json":{search:"Caută popoare…",hide_filters:"Ascunde filtrele",show_filters:"Arată filtrele",total:"Total",showing:"Se afișează",load_more:"Încarcă mai mult",full_profile:"Profil complet",wagf_region:"Regiune",wagf_block:"Bloc de afinitate",rop1:"Popor",religion:"Religie",exact_filter:"Exact",clear_all:"Șterge tot",loading:"Se încarcă…",no_results:"Niciun popor nu corespunde acestui filtru.",type_to_search:"Scrie pentru a căuta...",load_failed:"Datele despre popoare nu au putut fi încărcate. Este o problemă de conexiune, nu a filtrului.",search_people_or_countries:"Caută popoare sau țări…",cards_per_row:"Carduri pe rând",cards_per_row_auto:"Automat"},"./locales/ro/messages.json":{menuComingSoon:"Meniu în curând",pinHint:{tapDot:"Atinge un punct colorat — cineva are încă nevoie de rugăciune"},upg100WallHeading:"Lista mea UPG100 — Liste de rugăciune și afișe",upg100WallTag:"Mobilizare pentru rugăciune",upg100WallIntroA:"Cum ai hrăni o mulțime de cinci mii? Isus i-a așezat în grupuri de cincizeci și de o sută, iar imposibilul a devenit împărțibil (Luca 9:14). Am făcut la fel cu cele 2.106 popoare neatinse: 27 de liste de aproximativ cincizeci până la o sută. Fiecare listă se tipărește ca pachet de rugăciune și afiș, ca 27 de ucenici, biserici sau lideri locali să poarte fiecare câte una — rugându-se pentru ei ",upg100WallIntroEmph:"pe numele poporului lor",upg100WallIntroB:".",loadingNamed:"Se încarcă {name}…",couldNotLoadNamed:"Nu s-a putut încărca {name}.",engineMissing:"Motorul de hartă {engine} nu s-a încărcat.",packetFailed:"Broșura a eșuat: {reason}",selectionPacketFailed:"Broșura selecției a eșuat: {reason}",posterOneTerritory:"Afișul tipărește un teritoriu pe rând — {count} selectate.",selectionPosterFailed:"Afișul selecției a eșuat: {reason}",mapUnavailable:"Harta indisponibilă",copied:"Copiat!",copyFailed:"Copierea a eșuat — apasă Ctrl/Cmd-C",engineNotLoaded:"motorul de hărți nu s-a încărcat",engineNotLoadedDetail:"Motorul de hărți {engine} nu s-a încărcat. Lista și legenda nu sunt afectate.",viewLoadFailed:"Această vizualizare nu s-a putut încărca.",retry:"Reîncearcă",noMapboxToken:"Niciun token Mapbox",noMapboxTokenDetail:"Nu este configurat niciun token Mapbox. Lista și legenda nu sunt afectate.",loadingBoundaries:"Se încarcă granițele…",fetchingUupgs:"Se preiau {n} UUPG…",mapStatusCounts:"Suprafețe: {polys} · zone: {zones}/{total} · repere: {pins}",tapTerritoriesHint:"Atingeți teritorii pe hartă sau rânduri din legendă pentru a le adăuga · atingeți din nou pentru a le elimina",territoriesSelected:"Teritorii: {count}",bandInRange:"✓ interval 50–100",bandOutOfRange:"interval 50–100",mapContextLost:"Această hartă a fost descărcată pentru a elibera memoria grafică.",nOfTotal:"{n} din {total}",mapInitFailed:"Harta nu a putut fi inițializată — verificați tokenul și containerul",countryWallIntroA:"Câte un afiș pentru fiecare țară, gata de rugăciune, de tipărit și de pus pe perete — rugându-ne pentru ei ",countryWallIntroB:". Regiunile și țările sunt ordonate după câte popoare neatinse cuprind, pentru ca nevoia cea mai mare să fie prima.",countryWallSoon:"În curând: pentru fiecare țară va fi generată o listă de rugăciune care numește fiecare popor neatins din ea.",countryWallHeading:"Afișe pe țări — Liste de rugăciune și afișe",largerScreenNotice:"Această hartă experimentală este făcută pentru ecrane mari. Se deschide aici, dar unele părți s-ar putea să nu încapă sau să nu funcționeze bine pe telefon.",desktopOnlyNotice:"{label} funcționează doar pe desktop — deschideți pagina pe un computer pentru a-l folosi.",noticeDismiss:"Închide",countryPosterTooMany:"Prea multe popoare pentru a încăpea lizibil pe un singur afiș — lucrăm la o soluție."},"./locales/ru/buttons.json":{prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить",posterMap:"Карта плаката",prayerList:"Молитвенный список",cardDeck:"Набор карточек",printOptions:"Параметры печати",showOnMap:"Показать на карте",close:"Закрыть",showOnMapAria:"Показать {label} на карте",cardStockAria:"Размер молитвенной карточки",previewPrintPoster:"Просмотр и печать плаката {label}",share:"Поделиться",shareSteps:["Разместите эту карту на своём сайте","Составьте список сайтов вашего города","Научите их тоже размещать её","Научите их учить других размещать её","Умножим карты повсюду для Иисуса!"],clearSelection:"Снять выделение",noOptions:"Ничего не найдено",renderingLocal:"Изображение типографского качества создаётся в вашем браузере — ничего не загружается на сервер.",postersPerRow:"Плакатов в ряду",packetVariantAria:"Детализация молитвенного пакета",packetFull:"Полная версия",packetLightweight:"Краткая версия",working:"Выполняется…",postersPerRowAuto:"Авто"},"./locales/ru/grid.json":{search:"Поиск народов…",hide_filters:"Скрыть фильтры",show_filters:"Показать фильтры",total:"Всего",showing:"Показано",load_more:"Показать ещё",full_profile:"Полный профиль",wagf_region:"Регион",wagf_block:"Блок родства",rop1:"Народ",religion:"Религия",exact_filter:"Точное совпадение",clear_all:"Очистить всё",loading:"Загрузка…",no_results:"Нет народов, соответствующих этому фильтру.",type_to_search:"Введите для поиска...",load_failed:"Не удалось загрузить данные о народах. Это проблема соединения, а не фильтра.",search_people_or_countries:"Поиск народов или стран…",cards_per_row:"Карточек в ряду",cards_per_row_auto:"Авто"},"./locales/ru/messages.json":{menuComingSoon:"Меню скоро появится",pinHint:{tapDot:"Нажмите на цветную точку — кому-то всё ещё нужна молитва"},upg100WallHeading:"Мой список UPG100 — молитвенные списки и плакаты",upg100WallTag:"Молитвенная мобилизация",upg100WallIntroA:"Как накормить толпу в пять тысяч человек? Иисус рассадил их группами по пятьдесят и по сто, и невозможное стало посильным (Лк. 9:14). Мы поступили так же с 2 106 неохваченными народами: 27 списков примерно по пятьдесят-сто. Каждый список печатается как молитвенный пакет и плакат, чтобы 27 учеников, церквей или местных служителей взяли по одному — молясь о них ",upg100WallIntroEmph:"по имени их народа",upg100WallIntroB:".",loadingNamed:"Загрузка {name}…",couldNotLoadNamed:"Не удалось загрузить {name}.",engineMissing:"Картографический движок {engine} не загрузился.",packetFailed:"Не удалось создать буклет: {reason}",selectionPacketFailed:"Не удалось создать буклет выбора: {reason}",posterOneTerritory:"Плакат печатает по одной территории — выбрано {count}.",selectionPosterFailed:"Не удалось создать плакат выбора: {reason}",mapUnavailable:"Карта недоступна",copied:"Скопировано!",copyFailed:"Не удалось скопировать — нажмите Ctrl/Cmd-C",engineNotLoaded:"движок карты не загружен",engineNotLoadedDetail:"Движок карты {engine} не загрузился. Список и легенда не затронуты.",viewLoadFailed:"Не удалось загрузить этот раздел.",retry:"Повторить",noMapboxToken:"Нет токена Mapbox",noMapboxTokenDetail:"Токен Mapbox не настроен. Список и легенда не затронуты.",loadingBoundaries:"Загрузка границ…",fetchingUupgs:"Загрузка UUPG: {n}…",mapStatusCounts:"Области: {polys} · зоны: {zones}/{total} · метки: {pins}",tapTerritoriesHint:"Нажимайте на территории на карте или строки легенды, чтобы добавить · нажмите ещё раз, чтобы убрать",territoriesSelected:"Территории: {count}",bandInRange:"✓ диапазон 50–100",bandOutOfRange:"диапазон 50–100",mapContextLost:"Эта карта выгружена, чтобы освободить графическую память.",nOfTotal:"{n} из {total}",mapInitFailed:"Не удалось инициализировать карту — проверьте токен и контейнер",countryWallIntroA:"Один плакат на страну — чтобы молиться, распечатать и повесить на стену, молясь за них ",countryWallIntroB:". Регионы и страны упорядочены по числу неохваченных народов, чтобы самая большая нужда стояла первой.",countryWallSoon:"Скоро: для каждой страны будет создан молитвенный список с названием каждого неохваченного народа в ней.",countryWallHeading:"Плакаты по странам — молитвенные списки и плакаты",largerScreenNotice:"Эта экспериментальная карта рассчитана на большие экраны. Она откроется, но на телефоне часть элементов может не поместиться или работать плохо.",desktopOnlyNotice:"{label} работает только на компьютере — откройте эту страницу на компьютере.",noticeDismiss:"Закрыть",countryPosterTooMany:"Слишком много народов, чтобы разборчиво уместить их на одном плакате, — решение готовится."},"./locales/zh/buttons.json":{prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入",posterMap:"海报地图",prayerList:"祷告名单",cardDeck:"祷告卡组",printOptions:"打印选项",showOnMap:"在地图上显示",close:"关闭",showOnMapAria:"在地图上显示 {label}",cardStockAria:"祷告卡片尺寸",previewPrintPoster:"预览并打印 {label} 海报",share:"分享",shareSteps:["把这张地图嵌入你的网站","列出你城市里的网站","教他们也嵌入这张地图","教他们去教别人嵌入","为耶稣让地图遍地繁增!"],clearSelection:"清除选择",noOptions:"未找到选项",renderingLocal:"正在您的浏览器中生成可打印质量的图片——不会上传任何内容。",postersPerRow:"每行海报数",packetVariantAria:"祷告手册详细程度",packetFull:"完整版",packetLightweight:"精简版",working:"处理中…",postersPerRowAuto:"自动"},"./locales/zh/grid.json":{search:"搜索民族…",hide_filters:"隐藏筛选",show_filters:"显示筛选",total:"总计",showing:"显示",load_more:"加载更多",full_profile:"完整档案",wagf_region:"区域",wagf_block:"亲缘板块",rop1:"民族",religion:"宗教",exact_filter:"精确",clear_all:"全部清除",loading:"加载中…",no_results:"没有符合此筛选条件的民族。",type_to_search:"输入以搜索...",load_failed:"无法加载民族数据。这是连接问题,而不是筛选问题。",search_people_or_countries:"搜索民族或国家…",cards_per_row:"每行卡片数",cards_per_row_auto:"自动"},"./locales/zh/messages.json":{menuComingSoon:"菜单即将推出",pinHint:{tapDot:"点按一个彩色圆点——仍有人需要祷告"},upg100WallHeading:"我的 UPG100 名单 — 祷告名单与海报",upg100WallTag:"祷告动员",upg100WallIntroA:"你会怎样喂饱五千人的群众?耶稣让他们一排五十、一排一百地坐下,不可能的事就变得可以分担了(路加福音 9:14)。我们对 2,106 个未得之民做了同样的事:27 份名单,每份约五十到一百。每份名单都能印成祷告手册和海报,让 27 位门徒、教会或当地领袖各领一份 — 为他们祷告 ",upg100WallIntroEmph:"称呼他们族群的名字",upg100WallIntroB:"。",loadingNamed:"正在加载{name}…",couldNotLoadNamed:"无法加载{name}。",engineMissing:"{engine} 地图引擎未能加载。",packetFailed:"祷告册生成失败:{reason}",selectionPacketFailed:"所选内容的祷告册生成失败:{reason}",posterOneTerritory:"海报一次只能打印一个区域——已选 {count} 个。",selectionPosterFailed:"所选内容的海报生成失败:{reason}",mapUnavailable:"地图不可用",copied:"已复制!",copyFailed:"复制失败——请按 Ctrl/Cmd-C",engineNotLoaded:"地图引擎未加载",engineNotLoadedDetail:"{engine} 地图引擎未能加载。列表和图例不受影响。",viewLoadFailed:"此视图无法加载。",retry:"重试",noMapboxToken:"没有 Mapbox 令牌",noMapboxTokenDetail:"未配置 Mapbox 令牌。列表和图例不受影响。",loadingBoundaries:"正在加载边界…",fetchingUupgs:"正在获取 {n} 个 UUPG…",mapStatusCounts:"区域:{polys} · 分区:{zones}/{total} · 标记:{pins}",tapTerritoriesHint:"点按地图上的区域或图例行即可添加 · 再次点按即可移除",territoriesSelected:"区域:{count}",bandInRange:"✓ 50–100 区间",bandOutOfRange:"50–100 区间",mapContextLost:"已卸载此地图以释放显存。",nOfTotal:"{total} 个中的 {n} 个",mapInitFailed:"地图初始化失败——请检查令牌和容器",countryWallIntroA:"每个国家一张海报,可用来祷告、打印、贴在墙上——为他们祷告,",countryWallIntroB:"。各区域和国家按其中未得之民族群的数量排序,让最大的需要排在最前。",countryWallSoon:"即将推出:将为每个国家生成一份祷告名单,列出其中每一个未得之民族群的名字。",countryWallHeading:"国家海报 — 祷告名单与海报",largerScreenNotice:"这张实验性地图为大屏幕设计。它可以在这里打开,但部分内容在手机上可能显示不全或无法正常使用。",desktopOnlyNotice:"{label} 仅支持桌面端——请在电脑上打开此页面使用。",noticeDismiss:"关闭",countryPosterTooMany:"族群数量过多,无法清晰地放在一张海报上——我们正在制定解决方案。"}}),Xe={};for(const[e,t]of Object.entries(ac)){const o=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!o)continue;const[,n,s]=o;Xe[n]??(Xe[n]={}),Xe[n][s]=t}const Bi=(()=>{try{const e=typeof document<"u"&&document.currentScript&&document.currentScript.src||"";return e?e.split(/[?#]/)[0].replace(/[^/]+$/,""):""}catch{return""}})(),ji=typeof __DX_LOCALE_SRI__<"u"?__DX_LOCALE_SRI__:{},Rn=new Map;let Vi=null;function rc(e,t){const o=String(t||"").split("-")[0].toLowerCase();if(!o||o==="en"||!Dn.includes(o))return Promise.resolve(o==="en");if(Xe[o])return Promise.resolve(!0);if(Rn.has(o))return Rn.get(o).then(s=>s);if(!ji[o])return Promise.resolve(!!Xe[o]);const n=(async()=>{var s,i;try{if(!Bi)return!1;const a=new URL(`locales/${o}.json`,Bi).href,r=await fetch(a,{integrity:ji[o]});if(!r.ok)return!1;const l=await r.json();return!l||typeof l!="object"?!1:(Xe[o]=l,(i=(s=e==null?void 0:e.global)==null?void 0:s.setLocaleMessage)==null||i.call(s,o,l),!0)}catch{return!1}})();return Rn.set(o,n),n}const Dn=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function lc(){try{const e=new URLSearchParams(window.location.search);return(e.get("lang")||e.get("locale")||"").split("-")[0].toLowerCase()}catch{return""}}function Ki(){var n;const e=lc();if(Dn.includes(e))return e;const o=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return Dn.includes(o)?o:"en"}try{Vi=rc(null,Ki())}catch{Vi=null}const cc="__DOXA_PAGE_LOCALE",dc=["zero","one","two","few","many","other"];function pc(e,t,o){let n;try{n=new Intl.PluralRules(o)}catch{return e===1?0:1}const s=n.select(e),i=n.resolvedOptions().pluralCategories,a=dc.filter(l=>i.includes(l));let r=a.indexOf(s);if(r<0&&(r=a.indexOf("other")),r>=t){const l=a.indexOf("other");r=l>=0&&l<t?l:t-1}return Math.max(0,Math.min(r,t-1))}Object.fromEntries(["ar","de","es","fr","hi","it","pt","ro","ru","zh"].map(e=>[e,(t,o)=>pc(t,o,e)]));function uc(){try{return typeof window<"u"&&window[cc]||""}catch{return""}}function fc(e,t){const o=s=>{let i=Xe[s];for(const a of String(e).split(".")){if(!i||typeof i!="object")return;i=i[a]}return typeof i=="string"?i:void 0},n=uc()||Ki();return o(n)??o("en")}const qi={menu:'<line x1="3" y1="6" x2="21" y2="6"/><line x1="3" y1="12" x2="21" y2="12"/><line x1="3" y1="18" x2="21" y2="18"/>',map:'<polygon points="3 6 9 3 15 6 21 3 21 18 15 21 9 18 3 21"/><line x1="9" y1="3" x2="9" y2="18"/><line x1="15" y1="6" x2="15" y2="21"/>',globe:'<circle cx="12" cy="12" r="9"/><path d="M3 12h18"/><path d="M12 3a15 15 0 0 1 0 18a15 15 0 0 1 0-18"/>',heart:'<path d="M19 14c1.5-1.5 3-3.5 3-5.5A4.5 4.5 0 0 0 12 6a4.5 4.5 0 0 0-10 2.5C2 10.5 3.5 12.5 5 14l7 7Z"/>',prayer:'<path d="M12 4.2c-.9 1.4-1.9 2.6-2.9 3.8-1 1.2-1.6 2.6-1.6 4.2v3.3c0 1.3.7 2.4 1.8 3 .5.3 1.1-.1 1.1-.7"/><path d="M12 4.2c.9 1.4 1.9 2.6 2.9 3.8 1 1.2 1.6 2.6 1.6 4.2v3.3c0 1.3-.7 2.4-1.8 3-.5.3-1.1-.1-1.1-.7"/><path d="M12 4.2V17"/>',list:'<line x1="8" y1="6" x2="21" y2="6"/><line x1="8" y1="12" x2="21" y2="12"/><line x1="8" y1="18" x2="21" y2="18"/><circle cx="4" cy="6" r="1"/><circle cx="4" cy="12" r="1"/><circle cx="4" cy="18" r="1"/>',users:'<path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.9"/><path d="M16 3.1a4 4 0 0 1 0 7.8"/>',flag:'<path d="M4 15s1-1 4-1 5 2 8 2 4-1 4-1V4s-1 1-4 1-5-2-8-2-4 1-4 1z"/><line x1="4" y1="22" x2="4" y2="15"/>',target:'<circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5"/><circle cx="12" cy="12" r="1"/>',pin:'<path d="M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z"/><circle cx="12" cy="10" r="3"/>',monitor:'<rect x="2" y="3" width="20" height="14" rx="2"/><line x1="8" y1="21" x2="16" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/>',chart:'<line x1="18" y1="20" x2="18" y2="10"/><line x1="12" y1="20" x2="12" y2="4"/><line x1="6" y1="20" x2="6" y2="14"/>',folder:'<path d="M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>',layers:'<polygon points="12 2 2 7 12 12 22 7 12 2"/><polyline points="2 17 12 22 22 17"/><polyline points="2 12 12 17 22 12"/>',flask:'<path d="M9 3h6v5l5 11a2 2 0 0 1-2 3H6a2 2 0 0 1-2-3l5-11z"/><line x1="9" y1="3" x2="15" y2="3"/><line x1="6" y1="15" x2="18" y2="15"/>',share:'<circle cx="18" cy="5" r="3"/><circle cx="6" cy="12" r="3"/><circle cx="18" cy="19" r="3"/><line x1="8.6" y1="13.5" x2="15.4" y2="17.5"/><line x1="15.4" y1="6.5" x2="8.6" y2="10.5"/>',beaker:'<path d="M6 3h12"/><path d="M8 3v7l-3 8a2 2 0 0 0 2 3h10a2 2 0 0 0 2-3l-3-8V3"/>',chevron:'<polyline points="9 18 15 12 9 6"/>',grid:'<rect x="3" y="3" width="7" height="7"/><rect x="14" y="3" width="7" height="7"/><rect x="14" y="14" width="7" height="7"/><rect x="3" y="14" width="7" height="7"/>',tree:'<rect x="9" y="3" width="6" height="5" rx="1"/><rect x="2" y="16" width="6" height="5" rx="1"/><rect x="16" y="16" width="6" height="5" rx="1"/><path d="M12 8v4M5 16v-2h14v2"/>',dots:'<circle cx="12" cy="5" r="1.5"/><circle cx="12" cy="12" r="1.5"/><circle cx="12" cy="19" r="1.5"/>',embed:'<polyline points="9 7 4 12 9 17"/><polyline points="15 7 20 12 15 17"/>',send:'<path d="M21 3 L3 10.5 L9.5 13.5 L12.5 20 Z"/><line x1="21" y1="3" x2="9.5" y2="13.5"/>',poster:'<rect x="4" y="3" width="16" height="18" rx="2"/><circle cx="12" cy="10" r="2.5"/><path d="M8 17h8"/>',search:'<circle cx="10.5" cy="10.5" r="7.5"/><line x1="15.8" y1="15.8" x2="20.5" y2="20.5"/>',book:'<path d="M12 6.5C12 6.5 9.5 4.5 4 4.5v13C9.5 17.5 12 19.5 12 19.5"/><path d="M12 6.5C12 6.5 14.5 4.5 20 4.5v13C14.5 17.5 12 19.5 12 19.5"/>',home:'<path d="M3 11 12 3l9 8"/><path d="M5 9.5V20a1 1 0 0 0 1 1h4v-6h4v6h4a1 1 0 0 0 1-1V9.5"/>',wifi:'<path d="M3.5 9a13 13 0 0 1 17 0"/><path d="M6.8 12.4a8.5 8.5 0 0 1 10.4 0"/><path d="M10 15.7a4 4 0 0 1 4 0"/><circle cx="12" cy="19" r="1"/>'};function Gi(e,t=""){const o=qi[e]||qi.map;return`<svg class="ic ${t}" viewBox="0 0 24 24" fill="none" stroke="currentColor"
stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">${o}</svg>`}const Yi="__dxMapsScriptRegistry1";function Ji(){const e=typeof globalThis<"u"?globalThis:self;return e[Yi]||(e[Yi]={loaded:Object.create(null),owners:Object.create(null)})}function Xi(e){try{if(typeof document<"u"&&document.baseURI)return new URL(e,document.baseURI).href;if(typeof location<"u"&&location.href)return new URL(e,location.href).href}catch{}return e}function hc(e){if(typeof document>"u"||!document.querySelectorAll)return null;const t=document.querySelectorAll("script[src]");for(let o=0;o<t.length;o++)if(t[o].src===e)return t[o];return null}function Hn(e,t){if(!e)return Promise.resolve();const o=Ji(),n=Xi(e);return o.loaded[n]?o.loaded[n]:hc(n)?o.loaded[n]=Promise.resolve():(o.loaded[n]=new Promise((s,i)=>{const a=document.createElement("script");a.src=e,(/^\/plugin-designs\//.test(e)||/\/index\.js(\?|$)/.test(e))&&(a.type="module"),a.onload=()=>s(),a.onerror=()=>{delete o.loaded[n],i(new Error("failed to load "+e))},document.head.appendChild(a)}),o.loaded[n])}function gc(e,t){if(!e)return;const o=Ji(),n=t?Xi(t):"";if(!n)return;const s=o.owners[e];if(!s){o.owners[e]=n;return}s!==n&&typeof console<"u"&&console.warn&&console.warn("[dx-maps] <"+e+"> is shipped by two bundles on this page: "+s+" defined it, "+n+" executed and was discarded. The page is running the first one.")}function Zi(e,t){return typeof customElements>"u"||customElements.get(e)?Promise.resolve():Promise.race([customElements.whenDefined(e),new Promise((o,n)=>setTimeout(()=>{customElements.get(e)||n(new Error("<"+e+"> never registered (bundle loaded but defined no element)"))},15e3))])}function $c(){try{const e=typeof document<"u"&&document.currentScript&&document.currentScript.src||"";return e?e.replace(/[^/]+\/[^/]+$/,"").replace(/\/+$/,"")+"/":""}catch{return""}}const mc=".vtl{position:absolute;top:0;right:0;bottom:0;left:0;display:grid!important;grid-template-rows:auto 1fr;height:100%;width:100%;min-height:420px;background:#f3f3f1;color:#3b463d;font-family:Public Sans,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased;--vtl-accent:#92b195;--vtl-border:#d1d4cd;--vtl-elevated:#ffffff;--vtl-accented:#d1d4cd;--vtl-muted:#6d766e;--vtl-rail:256px}.vtl.no-header{grid-template-rows:1fr}.vtl.no-header.has-phone-bar{grid-template-rows:auto 1fr}.vtl-top{flex:0 0 auto;display:flex;align-items:center;gap:10px;box-sizing:border-box;min-height:64px;padding:8px 16px;border-bottom:1px solid var(--vtl-border);background:#fff}.vtl-menu{display:none;font:16px/1 system-ui;color:#3b463d;background:#d1d4cd;border:1px solid #d1d4cd;border-radius:8px;padding:5px 10px;cursor:pointer}.vtl-pbar{display:flex;align-items:center;gap:8px;box-sizing:border-box;height:calc(44px + env(safe-area-inset-top));padding:env(safe-area-inset-top) calc(4px + env(safe-area-inset-right)) 0 calc(4px + env(safe-area-inset-left));background:#fff;box-shadow:inset 0 -1px 0 var(--vtl-border)}.vtl-phone-menu{flex:0 0 auto;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;font:20px/1 system-ui;color:#3b463d;background:transparent;border:0;border-radius:8px;cursor:pointer}.vtl-phone-menu:hover{background:var(--vtl-accented)}.vtl-phone-menu:focus-visible{outline:2px solid var(--vtl-accent);outline-offset:-2px}.vtl-pbar.is-web{height:44px;padding-top:0}.vtl-pbar-end{margin-inline-start:auto;display:inline-flex;align-items:center;min-width:0}.vtl-menu:hover{background:#d1d4cd}.vtl-brand{display:inline-flex;align-items:center}.vtl-brand:empty{display:none}.vtl-title{font-size:15px;font-weight:600;letter-spacing:-.01em;color:#3b463d}.vtl-meta{color:var(--vtl-muted);font-size:12px;margin-left:auto;display:inline-flex;align-items:center;gap:8px}.vtl-body{min-height:0;position:relative;display:flex}.vtl-nav{position:absolute;top:0;bottom:0;left:0;z-index:5;width:256px;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;border-right:1px solid var(--vtl-border);padding:12px 12px 20px;background:#fff;scrollbar-width:thin;scrollbar-color:#c4c8c0 transparent;contain:layout paint;transform:translate(0);transition:transform .2s cubic-bezier(.4,0,.2,1);will-change:transform}.vtl-nav::-webkit-scrollbar{width:8px;height:8px}.vtl-nav::-webkit-scrollbar-track{background:transparent}.vtl-nav::-webkit-scrollbar-thumb{background:#c4c8c0;border-radius:8px}.vtl-nav::-webkit-scrollbar-thumb:hover{background:#9aa197}.vtl-collapse,.vtl-home{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;margin:0 0 8px;padding:7px 10px;border:1px solid var(--vtl-border);border-radius:8px;background:#d1d4cd;color:var(--vtl-muted);font:inherit;font-size:12px;cursor:pointer}.vtl-collapse:hover,.vtl-home:hover{background:var(--vtl-accented);color:#3b463d}.vtl-collapse:focus-visible,.vtl-home:focus-visible{outline:2px solid var(--vtl-accent);outline-offset:-2px}.vtl-collapse-ic{flex:0 0 auto;display:inline-flex;transition:transform .16s ease;transform:rotate(180deg)}.vtl-collapse-ic svg{width:16px;height:16px}.vtl-collapse-tx{white-space:nowrap}.vtl-home{text-decoration:none}.vtl-home-ic{flex:0 0 auto;display:inline-flex}.vtl-home-ic svg{width:16px;height:16px}.vtl-home-tx{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vtl-nav.has-rail-end{display:flex;flex-direction:column;padding-bottom:0}.vtl-nav.has-rail-end>*{flex-shrink:0}.vtl-rail-end{margin-top:auto;position:sticky;bottom:0;padding:8px 0 12px;background:#fff;border-top:1px solid var(--vtl-border)}.vtl-grp{margin-bottom:2px}.vtl-grp+.vtl-grp{margin-top:8px;padding-top:8px;border-top:1px solid var(--vtl-border)}.vtl-tier{width:100%;padding:8px 8px 6px;display:flex;align-items:center;gap:8px;box-sizing:border-box}.vtl-tier-btn{border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-align:left;border-radius:8px}.vtl-tier-btn:hover{background:var(--vtl-accented)}.vtl-tier-btn:focus-visible{outline:2px solid var(--vtl-accent);outline-offset:-2px}.vtl-tier-ic{flex:0 0 auto;display:inline-flex;color:var(--vtl-muted)}.vtl-tier-ic svg{width:15px;height:15px}.vtl-cap{font:700 10px/1 system-ui;letter-spacing:.4px;color:#052e16;background:var(--vtl-accent);border-radius:999px;padding:3px 7px}.vtl-tl{font-weight:600;font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:var(--vtl-muted)}.vtl-td{color:#6b6b6b;font-size:11px;margin-left:auto}.vtl-chev{margin-left:auto;display:inline-flex;color:var(--vtl-muted);transition:transform .16s ease}.vtl-chev svg{width:15px;height:15px}.vtl-chev.open{transform:rotate(90deg)}.vtl-rows{display:flex;flex-direction:column;gap:1px}.vtl-tab{display:flex;align-items:center;gap:11px;width:100%;min-height:48px;text-align:left;border:0;background:none;color:var(--vtl-muted);padding:8px 12px;cursor:pointer;border-radius:var(--vtl-radius,8px);font:inherit;margin:0;transition:background .13s ease,color .13s ease}.vtl-tab:hover{background:var(--vtl-accented);color:#3b463d}.vtl-tab:focus-visible{outline:2px solid var(--vtl-accent);outline-offset:-2px}.vtl-tab.active{background:var(--vtl-accented);color:#3b463d;font-weight:500}.vtl-tab.disabled,.vtl-tab.disabled:hover{background:none;color:#a3a8a4;cursor:not-allowed}.vtl-tab.disabled .vtl-tab-ic,.vtl-tab.disabled .vtl-tab-emoji,.vtl-tab.disabled .vtl-tab-fallback{opacity:.45}.vtl-tab.active .vtl-tab-ic{color:var(--vtl-accent)}.vtl-tab-ic{flex:0 0 auto;display:inline-flex;color:var(--vtl-muted)}.vtl-tab-ic svg{width:20px;height:20px}.vtl-tab-emoji{font-size:17px;line-height:1;flex:0 0 auto}.vtl-tab-fallback{display:none;flex:0 0 auto;width:20px;height:20px;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--vtl-muted);background:var(--vtl-accented);border-radius:6px}.vtl-tab.active .vtl-tab-fallback{color:var(--vtl-accent)}.vtl-tab-text{display:flex;flex-direction:column;min-width:0}.vtl-tab-label{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.vtl-tab-badge{font:600 9px/1 system-ui;letter-spacing:.3px;text-transform:uppercase;color:var(--vtl-accent);border:1px solid var(--vtl-accent);border-radius:var(--vtl-radius,8px);padding:2px 5px}.vtl-tab-sub{font-size:11px;color:#6b6b6b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vtl-tab-sub code{font-family:ui-monospace,Menlo,monospace}.vtl-tab.active .vtl-tab-sub{color:var(--vtl-muted)}.vtl-main{position:absolute;top:0;bottom:0;right:0;left:256px;min-width:0;display:flex;flex-direction:column}.vtl-content{flex:1 1 auto;position:relative;min-height:0}.vtl-host{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;--profile-min-h:0}.vtl-host-slot{position:relative;min-height:100%}.vtl-host-slot>*{min-height:0;max-height:none}.vtl-host-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;color:var(--dx-muted, #6d766e);font-size:13px;padding:20px}.vtl-host-hint.err{color:#f87171}.vtl-host-reload{margin-block-start:10px;font:inherit;padding:4px 12px;border-radius:6px;cursor:pointer;background:var(--vtl-accent, #3b463d);color:#fff;border:none}.vtl-host-hint small{color:var(--dx-muted, #6d766e)}.vtl.rail-collapsed .vtl-nav{transform:translate(-184px)}.vtl.rail-collapsed .vtl-main{left:72px}.vtl.rail-collapsed .vtl-collapse,.vtl.rail-collapsed .vtl-home{padding-left:184px;justify-content:flex-start}.vtl.rail-collapsed .vtl-collapse-ic{transform:rotate(0)}.vtl.rail-collapsed .vtl-rail-end{padding-left:184px}.vtl.rail-collapsed .vtl-collapse-tx,.vtl.rail-collapsed .vtl-home-tx{display:none}.vtl.rail-collapsed .vtl-tab{padding-left:188px;gap:0}.vtl.rail-collapsed .vtl-tab-text{display:none}.vtl.rail-collapsed .vtl-tab-emoji{font-size:19px}.vtl.rail-collapsed .vtl-tab-fallback{display:inline-flex}.vtl.rail-collapsed .vtl-tier{padding-left:196px}.vtl.rail-collapsed .vtl-tl,.vtl.rail-collapsed .vtl-td,.vtl.rail-collapsed .vtl-cap,.vtl.rail-collapsed .vtl-chev{display:none}.vtl.rail-collapsed .vtl-grp+.vtl-grp{margin-top:6px;padding-top:6px}@media (max-width: 760px){.vtl-top{min-height:56px}.vtl-menu{display:inline-block}.vtl-meta{display:none}.vtl-nav{z-index:20;width:256px;box-shadow:none;transform:translate(-100%)}.vtl.nav-open .vtl-nav{transform:translate(0);z-index:100000;box-shadow:0 0 28px #0000008c}.vtl-main{left:0}.vtl.rail-collapsed .vtl-nav{transform:translate(-100%)}.vtl.rail-collapsed.nav-open .vtl-nav{transform:translate(0)}.vtl.rail-collapsed .vtl-main{left:0}.vtl.rail-collapsed .vtl-collapse,.vtl.rail-collapsed .vtl-home{padding-left:10px;justify-content:flex-start}.vtl.rail-collapsed .vtl-collapse-ic{transform:rotate(180deg)}.vtl.rail-collapsed .vtl-collapse-tx,.vtl.rail-collapsed .vtl-home-tx{display:inline}.vtl.rail-collapsed .vtl-tab{padding-left:10px;gap:11px}.vtl.rail-collapsed .vtl-tab-text{display:flex}.vtl.rail-collapsed .vtl-tab-fallback{display:none}.vtl.rail-collapsed .vtl-tier{padding-left:8px}.vtl.rail-collapsed .vtl-tl,.vtl.rail-collapsed .vtl-td,.vtl.rail-collapsed .vtl-cap,.vtl.rail-collapsed .vtl-chev{display:inline}}.vtl:dir(rtl) .vtl-nav{left:auto;right:0;border-right:0;border-left:1px solid var(--vtl-border)}.vtl:dir(rtl) .vtl-main{left:0;right:256px}.vtl:dir(rtl) .vtl-tab,.vtl:dir(rtl) .vtl-tier-btn{text-align:right}.vtl:dir(rtl) .vtl-meta,.vtl:dir(rtl) .vtl-td,.vtl:dir(rtl) .vtl-chev{margin-left:0;margin-right:auto}.vtl:dir(rtl) .vtl-chev:not(.open){transform:scaleX(-1)}.vtl:dir(rtl) .vtl-collapse-ic svg{transform:scaleX(-1)}.vtl.rail-collapsed:dir(rtl) .vtl-nav{transform:translate(184px)}.vtl.rail-collapsed:dir(rtl) .vtl-main{left:0;right:72px}.vtl.rail-collapsed:dir(rtl) .vtl-collapse,.vtl.rail-collapsed:dir(rtl) .vtl-home{padding-left:10px;padding-right:184px}.vtl.rail-collapsed:dir(rtl) .vtl-tab{padding-left:12px;padding-right:188px}.vtl.rail-collapsed:dir(rtl) .vtl-tier{padding-left:8px;padding-right:196px}.vtl.rail-collapsed:dir(rtl) .vtl-rail-end{padding-left:0;padding-right:184px}@media (max-width: 760px){.vtl:dir(rtl) .vtl-nav{transform:translate(100%)}.vtl.nav-open:dir(rtl) .vtl-nav{transform:translate(0)}.vtl:dir(rtl) .vtl-main,.vtl.rail-collapsed:dir(rtl) .vtl-main{left:0;right:0}.vtl.rail-collapsed:dir(rtl) .vtl-nav{transform:translate(100%)}.vtl.rail-collapsed.nav-open:dir(rtl) .vtl-nav{transform:translate(0)}.vtl.rail-collapsed:dir(rtl) .vtl-collapse,.vtl.rail-collapsed:dir(rtl) .vtl-home{padding-left:10px;padding-right:10px}.vtl.rail-collapsed:dir(rtl) .vtl-tab{padding-left:12px;padding-right:10px}.vtl.rail-collapsed:dir(rtl) .vtl-tier{padding-left:8px;padding-right:8px}}@media (prefers-reduced-motion: reduce){.vtl-nav,.vtl-collapse-ic,.vtl-tab,.vtl-tier,.vtl-pbar,.vtl-phone-menu,.vtl-rail-end,.vtl-scrim{transition:none!important;animation:none!important}}",bc=(e,t)=>fc(e)||t,vc=e=>Hn(e);function kc(e,t=5e3){return typeof customElements>"u"||customElements.get(e)?Promise.resolve():customElements.whenDefined?Promise.race([customElements.whenDefined(e),new Promise((o,n)=>setTimeout(()=>n(new Error("timeout waiting for <"+e+">")),t))]):Promise.resolve()}const yc=`
.vtl { position:absolute; inset:0; display:grid !important; grid-template-rows:auto 1fr; height:100%; width:100%; min-height:420px; background:#f3f3f1; color:#3b463d; font-family:'Public Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif; -webkit-font-smoothing:antialiased; --vtl-accent:#92b195; --vtl-border:#d1d4cd; --vtl-elevated:#ffffff; --vtl-accented:#d1d4cd; --vtl-muted:#6d766e; --vtl-rail:256px; }
.vtl.no-header { grid-template-rows:1fr; }
.vtl.no-header.has-phone-bar { grid-template-rows:auto 1fr; }
.vtl-top { flex:0 0 auto; display:flex; align-items:center; gap:10px; box-sizing:border-box; min-height:64px; padding:8px 16px; border-bottom:1px solid var(--vtl-border); background:#ffffff; }
.vtl-menu { display:none; font:16px/1 system-ui; color:#3b463d; background:#d1d4cd; border:1px solid #d1d4cd; border-radius:8px; padding:5px 10px; cursor:pointer; }
.vtl-pbar { display:flex; align-items:center; gap:8px; box-sizing:border-box; height:calc(44px + env(safe-area-inset-top)); padding:env(safe-area-inset-top) calc(4px + env(safe-area-inset-right)) 0 calc(4px + env(safe-area-inset-left)); background:#ffffff; box-shadow:inset 0 -1px 0 var(--vtl-border); }
.vtl-phone-menu { flex:0 0 auto; width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; padding:0; margin:0; font:20px/1 system-ui; color:#3b463d; background:transparent; border:0; border-radius:8px; cursor:pointer; }
.vtl-phone-menu:hover { background:var(--vtl-accented); }
.vtl-phone-menu:focus-visible { outline:2px solid var(--vtl-accent); outline-offset:-2px; }
.vtl-pbar.is-web { height:44px; padding-top:0; }
.vtl-pbar-end { margin-inline-start:auto; display:inline-flex; align-items:center; min-width:0; }
.vtl-menu:hover { background:#d1d4cd; }
.vtl-brand { display:inline-flex; align-items:center; }
.vtl-brand:empty { display:none; }
.vtl-title { font-size:15px; font-weight:600; letter-spacing:-0.01em; color:#3b463d; }
.vtl-meta { color:var(--vtl-muted); font-size:12px; margin-left:auto; display:inline-flex; align-items:center; gap:8px; }
.vtl-body { min-height:0; position:relative; display:flex; }
.vtl-nav { position:absolute; top:0; bottom:0; left:0; z-index:5; width:256px; box-sizing:border-box; overflow-y:auto; overflow-x:hidden; border-right:1px solid var(--vtl-border); padding:12px 12px 20px; background:#ffffff; scrollbar-width:thin; scrollbar-color:#c4c8c0 transparent; contain:layout paint; transform:translateX(0); transition:transform .2s cubic-bezier(.4,0,.2,1); will-change:transform; }
.vtl-nav::-webkit-scrollbar { width:8px; height:8px; }
.vtl-nav::-webkit-scrollbar-track { background:transparent; }
.vtl-nav::-webkit-scrollbar-thumb { background:#c4c8c0; border-radius:8px; }
.vtl-nav::-webkit-scrollbar-thumb:hover { background:#9aa197; }
.vtl-collapse, .vtl-home { display:flex; align-items:center; gap:8px; width:100%; box-sizing:border-box; margin:0 0 8px; padding:7px 10px; border:1px solid var(--vtl-border); border-radius:8px; background:#d1d4cd; color:var(--vtl-muted); font:inherit; font-size:12px; cursor:pointer; }
.vtl-collapse:hover, .vtl-home:hover { background:var(--vtl-accented); color:#3b463d; }
.vtl-collapse:focus-visible, .vtl-home:focus-visible { outline:2px solid var(--vtl-accent); outline-offset:-2px; }
.vtl-collapse-ic { flex:0 0 auto; display:inline-flex; transition:transform .16s ease; transform:rotate(180deg); }
.vtl-collapse-ic svg { width:16px; height:16px; }
.vtl-collapse-tx { white-space:nowrap; }
.vtl-home { text-decoration:none; }
.vtl-home-ic { flex:0 0 auto; display:inline-flex; }
.vtl-home-ic svg { width:16px; height:16px; }
.vtl-home-tx { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.vtl-nav.has-rail-end { display:flex; flex-direction:column; padding-bottom:0; }
.vtl-nav.has-rail-end > * { flex-shrink:0; }
.vtl-rail-end { margin-top:auto; position:sticky; bottom:0; padding:8px 0 12px; background:#ffffff; border-top:1px solid var(--vtl-border); }
.vtl-grp { margin-bottom:2px; }
.vtl-grp + .vtl-grp { margin-top:8px; padding-top:8px; border-top:1px solid var(--vtl-border); }
.vtl-tier { width:100%; padding:8px 8px 6px; display:flex; align-items:center; gap:8px; box-sizing:border-box; }
.vtl-tier-btn { border:0; background:none; color:inherit; font:inherit; cursor:pointer; text-align:left; border-radius:8px; }
.vtl-tier-btn:hover { background:var(--vtl-accented); }
.vtl-tier-btn:focus-visible { outline:2px solid var(--vtl-accent); outline-offset:-2px; }
.vtl-tier-ic { flex:0 0 auto; display:inline-flex; color:var(--vtl-muted); }
.vtl-tier-ic svg { width:15px; height:15px; }
.vtl-cap { font:700 10px/1 system-ui; letter-spacing:.4px; color:#052e16; background:var(--vtl-accent); border-radius:999px; padding:3px 7px; }
.vtl-tl { font-weight:600; font-size:11px; letter-spacing:.03em; text-transform:uppercase; color:var(--vtl-muted); }
.vtl-td { color:#6b6b6b; font-size:11px; margin-left:auto; }
.vtl-chev { margin-left:auto; display:inline-flex; color:var(--vtl-muted); transition:transform .16s ease; }
.vtl-chev svg { width:15px; height:15px; }
.vtl-chev.open { transform:rotate(90deg); }
.vtl-rows { display:flex; flex-direction:column; gap:1px; }
.vtl-tab { display:flex; align-items:center; gap:11px; width:100%; min-height:48px; text-align:left; border:0; background:none; color:var(--vtl-muted); padding:8px 12px; cursor:pointer; border-radius:var(--vtl-radius,8px); font:inherit; margin:0; transition:background .13s ease,color .13s ease; }
.vtl-tab:hover { background:var(--vtl-accented); color:#3b463d; }
.vtl-tab:focus-visible { outline:2px solid var(--vtl-accent); outline-offset:-2px; }
.vtl-tab.active { background:var(--vtl-accented); color:#3b463d; font-weight:500; }
.vtl-tab.disabled, .vtl-tab.disabled:hover { background:none; color:#a3a8a4; cursor:not-allowed; }
.vtl-tab.disabled .vtl-tab-ic, .vtl-tab.disabled .vtl-tab-emoji, .vtl-tab.disabled .vtl-tab-fallback { opacity:.45; }
.vtl-tab.active .vtl-tab-ic { color:var(--vtl-accent); }
.vtl-tab-ic { flex:0 0 auto; display:inline-flex; color:var(--vtl-muted); }
.vtl-tab-ic svg { width:20px; height:20px; }
.vtl-tab-emoji { font-size:17px; line-height:1; flex:0 0 auto; }
.vtl-tab-fallback { display:none; flex:0 0 auto; width:20px; height:20px; align-items:center; justify-content:center; font-size:12px; font-weight:600; color:var(--vtl-muted); background:var(--vtl-accented); border-radius:6px; }
.vtl-tab.active .vtl-tab-fallback { color:var(--vtl-accent); }
.vtl-tab-text { display:flex; flex-direction:column; min-width:0; }
.vtl-tab-label { font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:flex; align-items:center; gap:6px; }
.vtl-tab-badge { font:600 9px/1 system-ui; letter-spacing:.3px; text-transform:uppercase; color:var(--vtl-accent); border:1px solid var(--vtl-accent); border-radius:var(--vtl-radius,8px); padding:2px 5px; }
.vtl-tab-sub { font-size:11px; color:#6b6b6b; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.vtl-tab-sub code { font-family:ui-monospace,Menlo,monospace; }
.vtl-tab.active .vtl-tab-sub { color:var(--vtl-muted); }
.vtl-main { position:absolute; top:0; bottom:0; right:0; left:256px; min-width:0; display:flex; flex-direction:column; }
.vtl-content { flex:1 1 auto; position:relative; min-height:0; }
.vtl-host { position:absolute; inset:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; --profile-min-h:0; }
.vtl-host-slot { position:relative; min-height:100%; }
.vtl-host-slot > * { min-height:0; max-height:none; }
.vtl-host-hint { position:absolute; inset:0; display:grid; place-items:center; text-align:center; color:var(--dx-muted, #6d766e); font-size:13px; padding:20px; }
.vtl-host-hint.err { color:#f87171; }
.vtl-host-reload { margin-block-start:10px; font:inherit; padding:4px 12px; border-radius:6px; cursor:pointer; background:var(--vtl-accent, #3b463d); color:#fff; border:none; }
.vtl-host-hint small { color:var(--dx-muted, #6d766e); }
.vtl.rail-collapsed .vtl-nav { transform:translateX(-184px); }
.vtl.rail-collapsed .vtl-main { left:72px; }
.vtl.rail-collapsed .vtl-collapse, .vtl.rail-collapsed .vtl-home { padding-left:184px; justify-content:flex-start; }
.vtl.rail-collapsed .vtl-collapse-ic { transform:rotate(0deg); }
.vtl.rail-collapsed .vtl-rail-end { padding-left:184px; }
.vtl.rail-collapsed .vtl-collapse-tx, .vtl.rail-collapsed .vtl-home-tx { display:none; }
.vtl.rail-collapsed .vtl-tab { padding-left:188px; gap:0; }
.vtl.rail-collapsed .vtl-tab-text { display:none; }
.vtl.rail-collapsed .vtl-tab-emoji { font-size:19px; }
.vtl.rail-collapsed .vtl-tab-fallback { display:inline-flex; }
.vtl.rail-collapsed .vtl-tier { padding-left:196px; }
.vtl.rail-collapsed .vtl-tl, .vtl.rail-collapsed .vtl-td, .vtl.rail-collapsed .vtl-cap, .vtl.rail-collapsed .vtl-chev { display:none; }
.vtl.rail-collapsed .vtl-grp + .vtl-grp { margin-top:6px; padding-top:6px; }
@media (max-width: 760px) {
.vtl-top { min-height:56px; }
.vtl-menu { display:inline-block; }
.vtl-meta { display:none; }
.vtl-nav { z-index:20; width:256px; box-shadow:none; transform:translateX(-100%); }
.vtl.nav-open .vtl-nav { transform:translateX(0); z-index:100000; box-shadow:0 0 28px rgba(0,0,0,.55); }
.vtl-main { left:0; }
.vtl.rail-collapsed .vtl-nav { transform:translateX(-100%); }
.vtl.rail-collapsed.nav-open .vtl-nav { transform:translateX(0); }
.vtl.rail-collapsed .vtl-main { left:0; }
.vtl.rail-collapsed .vtl-collapse, .vtl.rail-collapsed .vtl-home { padding-left:10px; justify-content:flex-start; }
.vtl.rail-collapsed .vtl-collapse-ic { transform:rotate(180deg); }
.vtl.rail-collapsed .vtl-collapse-tx, .vtl.rail-collapsed .vtl-home-tx { display:inline; }
.vtl.rail-collapsed .vtl-tab { padding-left:10px; gap:11px; }
.vtl.rail-collapsed .vtl-tab-text { display:flex; }
.vtl.rail-collapsed .vtl-tab-fallback { display:none; }
.vtl.rail-collapsed .vtl-tier { padding-left:8px; }
.vtl.rail-collapsed .vtl-tl, .vtl.rail-collapsed .vtl-td, .vtl.rail-collapsed .vtl-cap, .vtl.rail-collapsed .vtl-chev { display:inline; }
}
.vtl:dir(rtl) .vtl-nav { left:auto; right:0; border-right:0; border-left:1px solid var(--vtl-border); }
.vtl:dir(rtl) .vtl-main { left:0; right:256px; }
.vtl:dir(rtl) .vtl-tab, .vtl:dir(rtl) .vtl-tier-btn { text-align:right; }
.vtl:dir(rtl) .vtl-meta, .vtl:dir(rtl) .vtl-td, .vtl:dir(rtl) .vtl-chev { margin-left:0; margin-right:auto; }
.vtl:dir(rtl) .vtl-chev:not(.open) { transform:scaleX(-1); }
.vtl:dir(rtl) .vtl-collapse-ic svg { transform:scaleX(-1); }
.vtl.rail-collapsed:dir(rtl) .vtl-nav { transform:translateX(184px); }
.vtl.rail-collapsed:dir(rtl) .vtl-main { left:0; right:72px; }
.vtl.rail-collapsed:dir(rtl) .vtl-collapse, .vtl.rail-collapsed:dir(rtl) .vtl-home { padding-left:10px; padding-right:184px; }
.vtl.rail-collapsed:dir(rtl) .vtl-tab { padding-left:12px; padding-right:188px; }
.vtl.rail-collapsed:dir(rtl) .vtl-tier { padding-left:8px; padding-right:196px; }
.vtl.rail-collapsed:dir(rtl) .vtl-rail-end { padding-left:0; padding-right:184px; }
@media (max-width: 760px) {
.vtl:dir(rtl) .vtl-nav { transform:translateX(100%); }
.vtl.nav-open:dir(rtl) .vtl-nav { transform:translateX(0); }
.vtl:dir(rtl) .vtl-main, .vtl.rail-collapsed:dir(rtl) .vtl-main { left:0; right:0; }
.vtl.rail-collapsed:dir(rtl) .vtl-nav { transform:translateX(100%); }
.vtl.rail-collapsed.nav-open:dir(rtl) .vtl-nav { transform:translateX(0); }
.vtl.rail-collapsed:dir(rtl) .vtl-collapse, .vtl.rail-collapsed:dir(rtl) .vtl-home { padding-left:10px; padding-right:10px; }
.vtl.rail-collapsed:dir(rtl) .vtl-tab { padding-left:12px; padding-right:10px; }
.vtl.rail-collapsed:dir(rtl) .vtl-tier { padding-left:8px; padding-right:8px; }
}
@media (prefers-reduced-motion: reduce) {
.vtl-nav, .vtl-collapse-ic, .vtl-tab, .vtl-tier, .vtl-pbar, .vtl-phone-menu, .vtl-rail-end, .vtl-scrim { transition: none !important; animation: none !important; }
}
`,_c=bo({name:"VerticalTabsLayout",components:{BackToTopButton:ic},props:{active:{type:String,default:""},title:{type:String,default:""},items:{type:Array,default:()=>[]},groups:{type:Array,default:()=>[]},navLabel:{type:String,default:"Sections"},labels:{type:Object,default:()=>({})},initialNavOpen:{type:Boolean,default:!0},header:{type:Boolean,default:!0},initialRailCollapsed:{type:Boolean,default:!1},homeHref:{type:String,default:""},homeLabel:{type:String,default:""},shellMode:{type:String,default:"auto"}},emits:["update:active"],setup(){return In(yc,"vertical-tabs-layout"),{T:bc}},data(){const e=(()=>{try{return typeof window<"u"&&!!window.matchMedia&&window.matchMedia("(max-width: 760px)").matches}catch{return!1}})();return{navOpen:this.initialNavOpen&&!e,railCollapsed:e?!1:this.initialRailCollapsed,_tabEls:{},folderOverride:{},narrow:e,_mql:null,_onMedia:null,activatedKeys:{},hostState:{},hostError:{},_hostSlots:{},_hostMounted:{},hostEls:{},mode:"app"}},computed:{phoneBarShown(){return this.narrow&&!this.header},railEndShown(){return!this.narrow&&!this.header},activeHostEl(){return this.hostEls[this.active]||null},railShown(){return this.narrow?this.navOpen:!0},homeLink(){const e=String(this.homeHref||"").trim();return!e||/^(javascript|data|vbscript):/i.test(e.replace(/[\u0000- ]/g,""))?"":e},homeText(){return this.homeLabel||this.label("home")},allRows(){if(this.groups&&this.groups.length){const e=[];for(const t of this.groups)for(const o of t.rows||[])e.push(o);return e}return this.items},orderedKeys(){return this.allRows.map(e=>e.key)},elementRows(){return this.allRows.filter(e=>e&&e.element)},mountedElementRows(){return this.elementRows.filter(e=>this.activatedKeys[e.key])}},watch:{shellMode(){this.resolveShellMode()},active:{immediate:!0,handler(e){this.activateElement(e)}}},mounted(){this.resolveShellMode();try{window.matchMedia&&(this._mql=window.matchMedia("(max-width: 760px)"),this.narrow=this._mql.matches,this.reconcileForWidth(),this._onMedia=e=>{this.narrow=e.matches,this.reconcileForWidth()},this._mql.addEventListener?this._mql.addEventListener("change",this._onMedia):this._mql.addListener&&this._mql.addListener(this._onMedia))}catch{}this.$nextTick(()=>this.activateElement(this.active))},beforeUnmount(){try{this._mql&&this._onMedia&&(this._mql.removeEventListener?this._mql.removeEventListener("change",this._onMedia):this._mql.removeListener&&this._mql.removeListener(this._onMedia))}catch{}this._mql=null,this._onMedia=null},methods:{resolveShellMode(){const e=o=>o==="web"||o==="app"?o:null;let t=e(this.shellMode);if(!t)try{const o=this.$el&&this.$el.getRootNode?this.$el.getRootNode():null,n=o&&o.host;t=e(n&&n.getAttribute?n.getAttribute("shell-mode"):null)}catch{}if(!t)try{const o=window.matchMedia&&window.matchMedia("(display-mode: standalone)").matches||navigator.standalone===!0;t=window.Capacitor||o||window.MAP_OWNS_PAGE===!0?"app":"web"}catch{t="app"}this.mode=t},registerTab(e,t){t&&(this._tabEls[e]=t)},isNarrow(){return this.narrow},reconcileForWidth(){this.narrow?(this.navOpen=!1,this.railCollapsed=!1):this.navOpen=!0},label(e){const t={toggleList:"Toggle list",openViews:"Open the list of views",expandList:"Expand list",collapseList:"Collapse list",collapse:"Collapse",home:"Back to homepage"};return this.labels&&this.labels[e]||t[e]},expandRail(){!this.narrow&&this.railCollapsed&&(this.railCollapsed=!1)},toggleRail(){this.narrow?this.navOpen=!this.navOpen:this.railCollapsed=!this.railCollapsed},setHostSlot(e,t){t&&(this._hostSlots[e]=t,this.$nextTick(()=>this.mountHostElement(e)))},activateElement(e){!e||!this.elementRows.find(o=>o.key===e)||(this.activatedKeys[e]||(this.activatedKeys={...this.activatedKeys,[e]:!0},this.$nextTick(()=>this.watchContextLoss(e)),this.hostState={...this.hostState,[e]:"loading"}),this.$nextTick(()=>this.mountHostElement(e)))},deepCanvases(e,t=[]){if(!e)return t;for(const o of e.querySelectorAll("*"))o.tagName==="CANVAS"&&t.push(o),o.shadowRoot&&this.deepCanvases(o.shadowRoot,t);return t},watchContextLoss(e){const t=this._hostSlots[e];if(t)for(const o of this.deepCanvases(t))o.__vtlLossBound||(o.__vtlLossBound=!0,o.addEventListener("webglcontextlost",()=>{this.hostState={...this.hostState,[e]:"lost"}},{once:!0}))},reloadHostElement(e){const t=this._hostSlots[e];t&&(t.innerHTML=""),this._hostMounted[e]=!1,this.hostState={...this.hostState,[e]:"loading"},this.$nextTick(()=>this.mountHostElement(e))},mountHostElement(e){if(this._hostMounted[e])return;const t=this.elementRows.find(n=>n.key===e),o=this._hostSlots[e];!t||!o||(this._hostMounted[e]=!0,this.hostState={...this.hostState,[e]:"loading"},vc(t.src).then(()=>kc(t.element)).then(()=>{gc(t.element,t.src),o.innerHTML="";const n=document.createElement(t.element),s=t.attrs||{};for(const i in s){const a=s[i],r=a!=null&&typeof a=="object"?JSON.stringify(a):String(a);try{n[i]=a}catch{}try{n.setAttribute(i,r)}catch{}}n.style.cssText="display:block;position:absolute;inset:0;width:100%;height:100%;",o.appendChild(n);for(const i of[0,250,1500])setTimeout(()=>this.watchContextLoss(e),i);this.hostState={...this.hostState,[e]:"ready"}}).catch(n=>{this._hostMounted[e]=!1,this.hostState={...this.hostState,[e]:"error"},this.hostError={...this.hostError,[e]:n&&n.message||String(n)}}))},iconSvg(e){return e?Gi(e):""},initial(e){const t=(e||"").trim();return t?t.charAt(0).toUpperCase():"•"},isFolderClosed(e){const t=this.folderOverride[e.key];return t!=null?!t:e.open!==!0},toggleFolder(e){const t=this.folderOverride[e],o=(this.groups||[]).find(s=>s.key===e),n=t??(o&&o.open===!0);this.folderOverride={...this.folderOverride,[e]:!n}},pick(e){this.$emit("update:active",e),this.narrow&&(this.navOpen=!1)},onKey(e){const t=this.orderedKeys;if(!t.length)return;const o=t.indexOf(this.active);let n=-1;if(e.key==="ArrowDown"||e.key==="ArrowRight")n=(o+1)%t.length;else if(e.key==="ArrowUp"||e.key==="ArrowLeft")n=(o-1+t.length)%t.length;else if(e.key==="Home")n=0;else if(e.key==="End")n=t.length-1;else return;e.preventDefault();const s=t[n];this.pick(s),this.$nextTick(()=>{const i=this._tabEls[s];i&&i.focus&&i.focus()})}}}),wc={key:0,class:"vtl-top"},xc=["aria-expanded","aria-label"],Sc={class:"vtl-brand"},Mc={class:"vtl-title"},Lc={class:"vtl-meta"},Tc=["aria-expanded","aria-label"],Oc={class:"vtl-pbar-end"},Cc={class:"vtl-body"},Pc=["aria-label","aria-hidden","role","aria-orientation"],Ac=["href","aria-label","title"],Nc=["innerHTML"],Ec={class:"vtl-home-tx"},Fc=["aria-expanded","aria-label"],Ic=["innerHTML"],Rc={class:"vtl-collapse-tx"},Dc=["aria-expanded","onClick"],Hc={key:0,class:"vtl-cap"},Wc={class:"vtl-tl"},Uc={key:1,class:"vtl-td"},zc=["innerHTML"],Bc={key:1,class:"vtl-tier"},jc={key:0,class:"vtl-cap"},Vc={class:"vtl-tl"},Kc={key:1,class:"vtl-td"},qc={class:"vtl-rows"},Gc=["aria-selected","aria-disabled","tabindex","onClick"],Yc=["innerHTML"],Jc={key:1,class:"vtl-tab-emoji","aria-hidden":"true"},Xc={key:2,class:"vtl-tab-fallback","aria-hidden":"true"},Zc={class:"vtl-tab-text"},Qc={class:"vtl-tab-label"},ed={key:0,class:"vtl-tab-badge"},td={key:0,class:"vtl-tab-sub"},od=["innerHTML"],nd=["aria-selected","aria-disabled","tabindex","onClick"],sd=["innerHTML"],id={key:1,class:"vtl-tab-emoji","aria-hidden":"true"},ad={key:2,class:"vtl-tab-fallback","aria-hidden":"true"},rd={class:"vtl-tab-text"},ld={class:"vtl-tab-label"},cd={key:0,class:"vtl-tab-sub"},dd={key:4,class:"vtl-rail-end"},pd={class:"vtl-main"},ud={class:"vtl-content"},fd=["hidden"],hd={key:0,class:"vtl-host-hint"},gd={key:1,class:"vtl-host-hint"},$d=["onClick"],md={key:2,class:"vtl-host-hint err"};function bd(e,t,o,n,s,i){const a=mn("BackToTopButton");return S(),L("div",{class:de(["vtl",{"nav-open":e.navOpen,"rail-collapsed":e.railCollapsed,"no-header":!e.header,"has-phone-bar":e.phoneBarShown}])},[e.header?(S(),L("header",wc,[b("button",{class:"vtl-menu",type:"button","aria-expanded":String(e.navOpen),onClick:t[0]||(t[0]=r=>e.navOpen=!e.navOpen),"aria-label":e.label("toggleList")},"☰",8,xc),b("span",Sc,[nt(e.$slots,"brand")]),b("b",Mc,T(e.title),1),b("span",Lc,[nt(e.$slots,"meta")])])):U("",!0),e.phoneBarShown?(S(),L("div",{key:1,class:de(["vtl-pbar",{"is-web":e.mode==="web"}])},[b("button",{class:"vtl-phone-menu",type:"button","aria-expanded":String(e.navOpen),onClick:t[1]||(t[1]=r=>e.navOpen=!e.navOpen),"aria-label":e.label("toggleList")},"☰",8,Tc),b("span",Oc,[nt(e.$slots,"phone-end")])],2)):U("",!0),e.narrow?(S(),Rt(a,{key:2,target:e.activeHostEl,labels:{backToTop:e.T("actions.backToTop","Back to top")}},null,8,["target","labels"])):U("",!0),b("div",Cc,[b("nav",{class:de(["vtl-nav",{"has-rail-end":e.railEndShown&&!!e.$slots["rail-end"]}]),"aria-label":e.navLabel,"aria-hidden":String(!e.railShown),role:e.$slots.rail?null:"tablist","aria-orientation":e.$slots.rail?null:"vertical"},[e.homeLink?(S(),L("a",{key:0,class:"vtl-home",href:e.homeLink,target:"_top","aria-label":e.homeText,title:e.railCollapsed&&!e.narrow?e.homeText:null},[b("span",{class:"vtl-home-ic","aria-hidden":"true",innerHTML:e.iconSvg("home")},null,8,Nc),b("span",Ec,T(e.homeText),1)],8,Ac)):U("",!0),b("button",{type:"button",class:"vtl-collapse","aria-expanded":String(!e.railCollapsed),"aria-label":e.railCollapsed?e.label("expandList"):e.label("collapseList"),onClick:t[2]||(t[2]=(...r)=>e.toggleRail&&e.toggleRail(...r))},[b("span",{class:"vtl-collapse-ic","aria-hidden":"true",innerHTML:e.iconSvg("chevron")},null,8,Ic),b("span",Rc,T(e.label("collapse")),1)],8,Fc),e.$slots.rail?nt(e.$slots,"rail",{collapsed:e.railCollapsed&&!e.narrow,expand:e.expandRail,pick:e.pick},void 0,void 0,1):e.groups&&e.groups.length?(S(!0),L(Y,{key:2},Ce(e.groups,r=>(S(),L("div",{class:"vtl-grp",key:r.key},[r.folder?(S(),L("button",{key:0,type:"button",class:"vtl-tier vtl-tier-btn","aria-expanded":String(!e.isFolderClosed(r)),onClick:l=>e.toggleFolder(r.key)},[r.badge?(S(),L("span",Hc,T(r.badge),1)):U("",!0),b("span",Wc,T(r.label),1),r.count!=null?(S(),L("span",Uc,T(r.count),1)):U("",!0),b("span",{class:de(["vtl-chev",{open:!e.isFolderClosed(r)}]),"aria-hidden":"true",innerHTML:e.iconSvg("chevron")},null,10,zc)],8,Dc)):(S(),L("div",Bc,[r.badge?(S(),L("span",jc,T(r.badge),1)):U("",!0),b("span",Vc,T(r.label),1),r.count!=null?(S(),L("span",Kc,T(r.count),1)):U("",!0)])),gt(b("div",qc,[(S(!0),L(Y,null,Ce(r.rows,l=>(S(),L("button",{key:l.key,type:"button",role:"tab",class:de(["vtl-tab",{active:l.key===e.active,disabled:l.disabled}]),"aria-selected":String(l.key===e.active),"aria-disabled":l.disabled?"true":null,tabindex:l.key===e.active?0:-1,ref_for:!0,ref:d=>e.registerTab(l.key,d),onClick:d=>e.pick(l.key),onKeydown:t[3]||(t[3]=d=>e.onKey(d))},[l.icon?(S(),L("span",{key:0,class:"vtl-tab-ic","aria-hidden":"true",innerHTML:e.iconSvg(l.icon)},null,8,Yc)):l.emoji?(S(),L("span",Jc,T(l.emoji),1)):(S(),L("span",Xc,T(e.initial(l.label)),1)),b("span",Zc,[b("span",Qc,[Ae(T(l.label),1),l.badge?(S(),L("span",ed,T(l.badge),1)):U("",!0)]),l.sub?(S(),L("span",td,[b("span",{innerHTML:l.sub},null,8,od)])):U("",!0)])],42,Gc))),128))],512),[[Cn,!r.folder||!e.isFolderClosed(r)]])]))),128)):(S(!0),L(Y,{key:3},Ce(e.items,r=>(S(),L("button",{key:r.key,type:"button",role:"tab",class:de(["vtl-tab",{active:r.key===e.active,disabled:r.disabled}]),"aria-selected":String(r.key===e.active),"aria-disabled":r.disabled?"true":null,tabindex:r.key===e.active?0:-1,ref_for:!0,ref:l=>e.registerTab(r.key,l),onClick:l=>e.pick(r.key),onKeydown:t[4]||(t[4]=l=>e.onKey(l))},[r.icon?(S(),L("span",{key:0,class:"vtl-tab-ic","aria-hidden":"true",innerHTML:e.iconSvg(r.icon)},null,8,sd)):r.emoji?(S(),L("span",id,T(r.emoji),1)):(S(),L("span",ad,T(e.initial(r.label)),1)),b("span",rd,[b("span",ld,T(r.label),1),r.sub?(S(),L("span",cd,T(r.sub),1)):U("",!0)])],42,nd))),128)),e.railEndShown&&e.$slots["rail-end"]?(S(),L("div",dd,[nt(e.$slots,"rail-end",{collapsed:e.railCollapsed})])):U("",!0)],10,Pc),b("main",pd,[e.header?nt(e.$slots,"toolbar",{},void 0,void 0,0):U("",!0),b("div",ud,[(S(!0),L(Y,null,Ce(e.mountedElementRows,r=>gt((S(),L("section",{key:r.key,class:"vtl-host",hidden:r.key!==e.active,ref_for:!0,ref:l=>{l?e.hostEls[r.key]=l:delete e.hostEls[r.key]}},[b("div",{class:"vtl-host-slot",ref_for:!0,ref:l=>e.setHostSlot(r.key,l)},null,512),e.hostState[r.key]==="loading"?(S(),L("div",hd,T(e.T("messages.loadingNamed","Loading {name}…").replace("{name}",r.label)),1)):e.hostState[r.key]==="lost"?(S(),L("div",gd,[Ae(T(e.T("messages.mapContextLost","This map was unloaded to free graphics memory."))+" ",1),b("button",{type:"button",class:"vtl-host-reload",onClick:l=>e.reloadHostElement(r.key)},T(e.T("buttons.reloadMap","Reload Map")),9,$d)])):e.hostState[r.key]==="error"?(S(),L("div",md,[Ae(T(e.T("messages.couldNotLoadNamed","Could not load {name}.").replace("{name}",r.label)),1),t[5]||(t[5]=b("br",null,null,-1)),b("small",null,T(e.hostError[r.key]),1)])):U("",!0)],8,fd)),[[Cn,r.key===e.active]])),128)),nt(e.$slots,"default")])])])],2)}const vd=Ao(_c,[["render",bd],["styles",[mc]]]),kd='.st{display:flex;flex-direction:column;margin:0 -12px}.st-bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fff}.st-find{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:6px;height:30px;padding:0 8px;border:1px solid #d1d4cd;border-radius:8px;background:#f3f3f1;color:#6d766e}.st-find:focus-within{border-color:#92b195;background:#fff}.st-find-ic{display:inline-flex}.st-find-ic svg{width:14px;height:14px}.st-find-in{flex:1 1 auto;min-width:0;border:0;outline:0;background:none;font:inherit;font-size:13px;color:#3b463d}.st-tool{flex:0 0 auto;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:8px;background:none;color:#6d766e;cursor:pointer}.st-tool:hover{background:#f3f3f1;color:#3b463d}.st-tool:focus-visible{outline:2px solid #92b195;outline-offset:-2px}.st-tool svg{width:16px;height:16px}.st-tree{display:flex;flex-direction:column;padding:0 0 8px;outline:0}.st-row{position:relative;display:flex;align-items:center;gap:6px;height:28px;box-sizing:border-box;padding-block:0;padding-inline:calc(8px + var(--st-depth) * 14px) 10px;font-size:13px;color:#3b463d;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;outline:0}.st-row:hover{background:#f3f3f1}.st-row:focus-visible{box-shadow:inset 0 0 0 1px #92b195}.st-row.active{background:#92b1953d}.st-row.active:after{content:"";position:absolute;inset-inline-start:0;top:4px;bottom:4px;width:3px;border-start-end-radius:3px;border-end-end-radius:3px;background:#92b195}.st-row.alias.active{background:#92b1951f}.st-sec{position:sticky;top:46px;z-index:2;height:30px;margin-top:6px;background:#fff;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#6d766e;border-top:1px solid #eceee9}.st-sec:first-child{margin-top:0;border-top:0}.st-sec:hover{background:#fff;color:#3b463d}.st-cap{flex:0 0 auto;font:700 10px/1 system-ui,sans-serif;letter-spacing:.3px;padding:3px 6px;border-radius:999px;background:#92b195;color:#1d2a1f}.st-sec-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.st-twisty,.st-twisty-sp{flex:0 0 16px;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:#6d766e}.st-twisty svg{width:14px;height:14px;transition:transform .12s ease}.st-row[aria-expanded=true]>.st-twisty svg{transform:rotate(90deg)}.st:dir(rtl) .st-twisty svg{transform:scaleX(-1)}.st:dir(rtl) .st-row[aria-expanded=true]>.st-twisty svg{transform:rotate(90deg)}.st-ic{flex:0 0 16px;display:inline-flex;color:#6d766e}.st-ic svg{width:16px;height:16px}.st-row.active .st-ic{color:#5f8a63}.st-label{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.st-desc{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;font:11px/1 ui-monospace,Menlo,monospace;color:#8a928b}.st-part{flex:0 0 auto;font:600 9px/1 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.3px;padding:2px 4px;border:1px solid #92b195;border-radius:4px;color:#5f8a63}.st-count{flex:0 0 auto;margin-inline-start:auto;min-width:18px;text-align:right;font-size:11px;font-weight:500;letter-spacing:0;color:#6d766e}.st-guide{position:absolute;top:0;bottom:0;inset-inline-start:calc(15px + var(--st-g) * 14px);border-inline-start:1px solid #dfe2db;pointer-events:none}.st-row:hover>.st-guide{border-inline-start-color:#c4c8c0}.st-empty{margin:12px;font-size:13px;color:#6d766e}.st-activity{display:flex;flex-direction:column;gap:4px}.st-act{position:relative;display:flex;align-items:center;justify-content:center;width:48px;height:44px;margin-inline-start:172px;padding:0;border:0;border-radius:10px;background:none;color:#6d766e;cursor:pointer}.st-act:hover,.st-act.active{background:#f3f3f1;color:#3b463d}.st-act:focus-visible{outline:2px solid #92b195;outline-offset:-2px}.st-act-ic{display:inline-flex}.st-act-ic svg{width:20px;height:20px}.st-act-n{position:absolute;right:6px;bottom:5px;font:700 9px/1 system-ui,sans-serif;color:#5f8a63}',yd='.st { display:flex; flex-direction:column; margin:0 -12px; }.st-bar { position:sticky; top:0; z-index:3; display:flex; align-items:center; gap:6px; padding:8px 12px 8px; background:#ffffff; }.st-find { flex:1 1 auto; min-width:0; display:flex; align-items:center; gap:6px; height:30px; padding:0 8px; border:1px solid #d1d4cd; border-radius:8px; background:#f3f3f1; color:#6d766e; }.st-find:focus-within { border-color:#92b195; background:#ffffff; }.st-find-ic { display:inline-flex; } .st-find-ic svg { width:14px; height:14px; }.st-find-in { flex:1 1 auto; min-width:0; border:0; outline:0; background:none; font:inherit; font-size:13px; color:#3b463d; }.st-tool { flex:0 0 auto; width:30px; height:30px; display:inline-flex; align-items:center; justify-content:center; padding:0; border:0; border-radius:8px; background:none; color:#6d766e; cursor:pointer; }.st-tool:hover { background:#f3f3f1; color:#3b463d; } .st-tool:focus-visible { outline:2px solid #92b195; outline-offset:-2px; }.st-tool svg { width:16px; height:16px; }.st-tree { display:flex; flex-direction:column; padding:0 0 8px; outline:0; }.st-row { position:relative; display:flex; align-items:center; gap:6px; height:28px; box-sizing:border-box; padding-block:0; padding-inline:calc(8px + var(--st-depth) * 14px) 10px; font-size:13px; color:#3b463d; cursor:pointer; white-space:nowrap; user-select:none; outline:0; }.st-row:hover { background:#f3f3f1; }.st-row:focus-visible { box-shadow:inset 0 0 0 1px #92b195; }.st-row.active { background:rgba(146,177,149,.24); }.st-row.active::after { content:""; position:absolute; inset-inline-start:0; top:4px; bottom:4px; width:3px; border-start-end-radius:3px; border-end-end-radius:3px; background:#92b195; }.st-row.alias.active { background:rgba(146,177,149,.12); }.st-sec { position:sticky; top:46px; z-index:2; height:30px; margin-top:6px; background:#ffffff; font-size:11px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:#6d766e; border-top:1px solid #eceee9; }.st-sec:first-child { margin-top:0; border-top:0; }.st-sec:hover { background:#ffffff; color:#3b463d; }.st-cap { flex:0 0 auto; font:700 10px/1 system-ui,sans-serif; letter-spacing:.3px; padding:3px 6px; border-radius:999px; background:#92b195; color:#1d2a1f; }.st-sec-label { flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; }.st-twisty, .st-twisty-sp { flex:0 0 16px; width:16px; height:16px; display:inline-flex; align-items:center; justify-content:center; color:#6d766e; }.st-twisty svg { width:14px; height:14px; transition:transform .12s ease; }.st-row[aria-expanded="true"] > .st-twisty svg { transform:rotate(90deg); }.st:dir(rtl) .st-twisty svg { transform:scaleX(-1); } .st:dir(rtl) .st-row[aria-expanded="true"] > .st-twisty svg { transform:rotate(90deg); }.st-ic { flex:0 0 16px; display:inline-flex; color:#6d766e; } .st-ic svg { width:16px; height:16px; }.st-row.active .st-ic { color:#5f8a63; }.st-label { flex:0 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; }.st-desc { flex:1 1 0; min-width:0; overflow:hidden; text-overflow:ellipsis; font:11px/1 ui-monospace,Menlo,monospace; color:#8a928b; }.st-part { flex:0 0 auto; font:600 9px/1 system-ui,sans-serif; text-transform:uppercase; letter-spacing:.3px; padding:2px 4px; border:1px solid #92b195; border-radius:4px; color:#5f8a63; }.st-count { flex:0 0 auto; margin-inline-start:auto; min-width:18px; text-align:right; font-size:11px; font-weight:500; letter-spacing:0; color:#6d766e; }.st-guide { position:absolute; top:0; bottom:0; inset-inline-start:calc(15px + var(--st-g) * 14px); border-inline-start:1px solid #dfe2db; pointer-events:none; }.st-row:hover > .st-guide { border-inline-start-color:#c4c8c0; }.st-empty { margin:12px; font-size:13px; color:#6d766e; }.st-activity { display:flex; flex-direction:column; gap:4px; }.st-act { position:relative; display:flex; align-items:center; justify-content:center; width:48px; height:44px; margin-inline-start:172px; padding:0; border:0; border-radius:10px; background:none; color:#6d766e; cursor:pointer; }.st-act:hover, .st-act.active { background:#f3f3f1; color:#3b463d; }.st-act:focus-visible { outline:2px solid #92b195; outline-offset:-2px; }.st-act-ic { display:inline-flex; } .st-act-ic svg { width:20px; height:20px; }.st-act-n { position:absolute; right:6px; bottom:5px; font:700 9px/1 system-ui,sans-serif; color:#5f8a63; }',_d='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="16" height="16" rx="3"/><line x1="8.5" y1="12" x2="15.5" y2="12"/></svg>',wd={filterPlaceholder:"Filter plugins",collapseAll:"Collapse all",noMatch:"No plugin matches “{query}”.",treeLabel:"Plugins by capability",openSection:"Open {cap}, {label}",part:"part"},xd='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 6 15 12 9 18"/></svg>',Wn=e=>e.canonical!==void 0?!!e.canonical:e.depth===0,Sd=e=>e.canonical!==void 0?!e.canonical&&!e.folder:e.depth>0,Md=bo({name:"StudioTree",props:{sections:{type:Array,default:()=>[]},active:{type:String,default:""},collapsed:{type:Boolean,default:!1},pick:{type:Function,default:null},expand:{type:Function,default:null},strings:{type:Object,default:()=>({})}},emits:["select"],setup(){In(yd,"studio-tree")},data(){const e=this.readState();return{query:"",focusId:"",secClosed:e.sec||{},nodeOpen:e.node||{},chev:xd,collapseAllSvg:_d}},computed:{byId(){const e=new Map;for(const t of this.sections)for(const o of t.nodes)e.set(o.id,o);return e},q(){return this.query.trim().toLowerCase()},kept(){if(!this.q)return null;const e=new Set;for(const t of this.sections)for(const o of t.nodes){if(!(o.label.toLowerCase().includes(this.q)||String(o.desc||"").toLowerCase().includes(this.q)))continue;e.add(o.id);let s=o.parent;for(;s;)e.add(s),s=this.byId.get(s)&&this.byId.get(s).parent}return e},visible(){const e=[];for(const t of this.sections){const o=this.kept?t.nodes.filter(n=>this.kept.has(n.id)):t.nodes;if(!(this.kept&&!o.length)&&(e.push({id:"sec:"+t.id,section:!0,sectionId:t.id,level:1,depth:0,expandable:!0,cap:t.cap,badge:t.badge||"CAP "+t.cap,label:t.label,title:t.title||"",count:t.nodes.filter(n=>n.depth===0).length}),!(!this.kept&&this.secClosed[t.id])))for(const n of o)!this.kept&&!this.ancestorsOpen(n)||e.push({...n,sectionId:t.id,level:n.depth+2,expandable:!!n.kids,alias:Sd(n)})}return e},activeSectionId(){for(const e of this.sections)if(e.nodes.some(t=>Wn(t)&&t.target===this.active))return e.id;return""}},watch:{active:{handler(){this.reveal()},immediate:!0},sections(){this.reveal()},query(e){e&&this.visible.length&&(this.focusId=this.visible[0].id)}},methods:{svg(e){return e?Gi(e):""},str(e,t){let o=this.strings[e]||wd[e]||e;if(t)for(const n in t)o=o.split("{"+n+"}").join(String(t[n]));return o},storageKey(){return"dx-studio-tree:"+(typeof location<"u"&&location.pathname||"")},readState(){try{return JSON.parse(window.localStorage.getItem(this.storageKey())||"{}")||{}}catch{return{}}},saveState(){try{window.localStorage.setItem(this.storageKey(),JSON.stringify({sec:this.secClosed,node:this.nodeOpen}))}catch{}},ancestorsOpen(e){let t=e.parent;for(;t;){if(!this.nodeOpen[t])return!1;t=this.byId.get(t)&&this.byId.get(t).parent}return!0},isOpen(e){return this.kept?!0:e.section?!this.secClosed[e.sectionId]:!!this.nodeOpen[e.id]},setOpen(e,t){e.section?this.secClosed={...this.secClosed,[e.sectionId]:!t}:this.nodeOpen={...this.nodeOpen,[e.id]:t},this.saveState()},toggle(e){e.expandable&&this.setOpen(e,!this.isOpen(e))},collapseAll(){this.nodeOpen={},this.saveState();const e=this.visible.find(t=>!t.section&&t.target===this.active&&Wn(t));e&&(this.focusId=e.id)},rowClass(e){return{"st-row":!0,"st-sec":!!e.section,active:!e.section&&e.target===this.active,alias:!!e.alias}},setRow(e,t){this._rows||(this._rows={}),t?this._rows[e]=t:delete this._rows[e]},activate(e){if(e.section){this.toggle(e);return}e.target&&(this.pick?this.pick(e.target):this.$emit("select",e.target))},onRowClick(e){this.focusId=e.id,this.activate(e)},focusRow(e){e&&(this.focusId=e,this.$nextTick(()=>{const t=this._rows&&this._rows[e];t&&(t.focus({preventScroll:!0}),t.scrollIntoView({block:"nearest"}))}))},onTreeKey(e){const t=this.visible;if(!t.length)return;const o=Math.max(0,t.findIndex(i=>i.id===this.focusId)),n=t[o],s=i=>i.section?"":i.parent||"sec:"+i.sectionId;switch(e.key){case"ArrowDown":this.focusRow((t[o+1]||n).id);break;case"ArrowUp":this.focusRow((t[o-1]||n).id);break;case"Home":this.focusRow(t[0].id);break;case"End":this.focusRow(t[t.length-1].id);break;case"ArrowRight":if(!n.expandable)break;this.isOpen(n)?t[o+1]&&t[o+1].level>n.level&&this.focusRow(t[o+1].id):this.setOpen(n,!0);break;case"ArrowLeft":n.expandable&&this.isOpen(n)&&!this.kept?this.setOpen(n,!1):this.focusRow(s(n));break;case"Enter":case" ":this.activate(n);break;default:if(e.key.length===1&&/\S/.test(e.key)&&!e.ctrlKey&&!e.metaKey&&!e.altKey){const i=e.key.toLowerCase(),r=t.slice(o+1).concat(t.slice(0,o+1)).find(l=>String(l.label).toLowerCase().startsWith(i));r&&this.focusRow(r.id);break}return}e.preventDefault()},onFindKey(e){e.key==="Escape"?(this.query="",e.preventDefault()):e.key==="ArrowDown"&&this.visible.length&&(this.focusRow(this.visible[0].id),e.preventDefault())},reveal(){if(!this.active||!this.sections.length)return;let e=null;for(const t of this.sections)if(e=t.nodes.find(o=>Wn(o)&&o.target===this.active),e){this.secClosed[t.id]&&(this.secClosed={...this.secClosed,[t.id]:!1},this.saveState());break}if(e)for(let t=e.parent;t;){const o=this.byId.get(t);if(!o)break;if(o.target===this.active&&!this.nodeOpen[t]){e=o;break}t=o.parent}if(e){let t=e.parent,o=!1;for(;t;)this.nodeOpen[t]||(this.nodeOpen={...this.nodeOpen,[t]:!0},o=!0),t=this.byId.get(t)&&this.byId.get(t).parent;o&&this.saveState()}e&&((!this.focusId||!this.byId.has(this.focusId)||this.byId.get(this.focusId).target!==this.active)&&(this.focusId=e.id),this.$nextTick(()=>{const t=this._rows&&this._rows[e.id];t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest"})}))},openSectionFromActivity(e){this.secClosed[e]&&(this.secClosed={...this.secClosed,[e]:!1},this.saveState()),this.expand&&this.expand(),this.$nextTick(()=>this.focusRow("sec:"+e))}}}),Ld={key:0,class:"st-activity"},Td=["aria-label","onClick"],Od=["innerHTML"],Cd={class:"st-act-n","aria-hidden":"true"},Pd={key:1,class:"st"},Ad={class:"st-bar"},Nd={class:"st-find"},Ed=["innerHTML"],Fd=["placeholder","aria-label"],Id=["aria-label","title"],Rd=["innerHTML"],Dd=["aria-label"],Hd=["aria-level","aria-expanded","aria-selected","tabindex","title","onClick","onFocus"],Wd=["innerHTML"],Ud={class:"st-cap"},zd={class:"st-sec-label"},Bd={class:"st-count"},jd=["innerHTML","onClick"],Vd={key:1,class:"st-twisty-sp","aria-hidden":"true"},Kd=["innerHTML"],qd={class:"st-label"},Gd={key:2,class:"st-part"},Yd={class:"st-desc"},Jd={key:3,class:"st-count"},Xd={key:0,class:"st-empty"};function Zd(e,t,o,n,s,i){return e.collapsed?(S(),L("div",Ld,[(S(!0),L(Y,null,Ce(e.sections,a=>(S(),L("button",{key:a.id,type:"button",class:de(["st-act",{active:a.id===e.activeSectionId}]),"aria-label":e.str("openSection",{cap:a.badge||"CAP "+a.cap,label:a.label}),onClick:r=>e.openSectionFromActivity(a.id)},[b("span",{class:"st-act-ic","aria-hidden":"true",innerHTML:e.svg(a.icon)},null,8,Od),b("span",Cd,T(a.short||a.cap),1)],10,Td))),128))])):(S(),L("div",Pd,[b("div",Ad,[b("label",Nd,[b("span",{class:"st-find-ic","aria-hidden":"true",innerHTML:e.svg("search")},null,8,Ed),gt(b("input",{ref:"find",type:"search",class:"st-find-in","onUpdate:modelValue":t[0]||(t[0]=a=>e.query=a),placeholder:e.str("filterPlaceholder"),"aria-label":e.str("filterPlaceholder"),onKeydown:t[1]||(t[1]=(...a)=>e.onFindKey&&e.onFindKey(...a))},null,40,Fd),[[Fn,e.query]])]),b("button",{type:"button",class:"st-tool","aria-label":e.str("collapseAll"),title:e.str("collapseAll"),onClick:t[2]||(t[2]=(...a)=>e.collapseAll&&e.collapseAll(...a))},[b("span",{"aria-hidden":"true",innerHTML:e.collapseAllSvg},null,8,Rd)],8,Id)]),b("div",{class:"st-tree",role:"tree","aria-label":e.str("treeLabel"),onKeydown:t[3]||(t[3]=(...a)=>e.onTreeKey&&e.onTreeKey(...a))},[(S(!0),L(Y,null,Ce(e.visible,a=>(S(),L("div",{key:a.id,ref_for:!0,ref:r=>e.setRow(a.id,r),role:"treeitem","aria-level":a.level,"aria-expanded":a.expandable?String(e.isOpen(a)):null,"aria-selected":a.section?null:String(a.target===e.active),tabindex:a.id===e.focusId?0:-1,class:de(e.rowClass(a)),style:xt({"--st-depth":a.depth}),title:a.title||null,onClick:r=>e.onRowClick(a),onFocus:r=>e.focusId=a.id},[a.section?(S(),L(Y,{key:0},[b("span",{class:"st-twisty","aria-hidden":"true",innerHTML:e.chev},null,8,Wd),b("span",Ud,T(a.badge),1),b("span",zd,T(a.label),1),b("span",Bd,T(a.count),1)],64)):(S(),L(Y,{key:1},[(S(!0),L(Y,null,Ce(a.depth,r=>(S(),L("span",{key:r,class:"st-guide",style:xt({"--st-g":r-1}),"aria-hidden":"true"},null,4))),128)),a.expandable?(S(),L("span",{key:0,class:"st-twisty","aria-hidden":"true",innerHTML:e.chev,onClick:Hi(r=>e.toggle(a),["stop"])},null,8,jd)):(S(),L("span",Vd)),b("span",{class:"st-ic","aria-hidden":"true",innerHTML:e.svg(a.icon)},null,8,Kd),b("span",qd,T(a.label),1),a.part?(S(),L("span",Gd,T(e.str("part")),1)):U("",!0),b("span",Yd,T(a.desc),1),a.expandable?(S(),L("span",Jd,T(a.kids),1)):U("",!0)],64))],46,Hd))),128)),e.query&&!e.visible.length?(S(),L("p",Xd,T(e.str("noMatch",{query:e.query})),1)):U("",!0)],40,Dd)]))}const Qd=Ao(Md,[["render",Zd],["styles",[kd]]]),No=[{code:"en",name:"English",nativeName:"English",flag:"🇺🇸"},{code:"es",name:"Spanish",nativeName:"Español",flag:"🇪🇸"},{code:"fr",name:"French",nativeName:"Français",flag:"🇫🇷"},{code:"pt",name:"Portuguese",nativeName:"Português",flag:"🇵🇹"},{code:"ar",name:"Arabic",nativeName:"العربية",flag:"🇸🇦",dir:"rtl"},{code:"ru",name:"Russian",nativeName:"Русский",flag:"🇷🇺"},{code:"de",name:"German",nativeName:"Deutsch",flag:"🇩🇪",hideFromSwitcher:!0},{code:"hi",name:"Hindi",nativeName:"हिन्दी",flag:"🇮🇳",hideFromSwitcher:!0},{code:"it",name:"Italian",nativeName:"Italiano",flag:"🇮🇹",hideFromSwitcher:!0},{code:"ro",name:"Romanian",nativeName:"Română",flag:"🇷🇴",hideFromSwitcher:!0},{code:"zh",name:"Chinese",nativeName:"中文",flag:"🇨🇳",hideFromSwitcher:!0}];No.filter(e=>!e.hideFromSwitcher);function ep(e){return No.find(t=>t.code===e)}function Un(e){const t=String(e||"").split("-")[0].toLowerCase();return No.some(o=>o.code===t)?t:"en"}const Qi="doxa-maps:locale";function tp(){try{const e=localStorage.getItem(Qi);if(e)return Un(e)}catch{}return Un(navigator==null?void 0:navigator.language)}function op(e){try{localStorage.setItem(Qi,e)}catch{}}const Eo="__doxaMapToken",ea="doxa:map-token",ta="__doxaMapTokenBridge",jt=()=>{if(typeof window>"u")return"";const e=window[Eo];return typeof e=="string"?e:""};function oa(e){if(typeof window>"u")return"";na();const t=typeof e=="string"?e.trim():"";if(!t||t===jt())return jt();window[Eo]=t;try{window.dispatchEvent(new CustomEvent(ea,{detail:t}))}catch{}return t}function np(){var t;if(typeof window>"u")return;const e=jt()||typeof window.MAP_TOKEN=="string"&&window.MAP_TOKEN;if(na(),window[Eo]="",!((t=Object.getOwnPropertyDescriptor(window,"MAP_TOKEN"))!=null&&t.get))try{window.MAP_TOKEN=""}catch{}if(e)try{window.dispatchEvent(new CustomEvent(ea,{detail:""}))}catch{}}function na(){var t;if(typeof window>"u"||window[ta]&&((t=Object.getOwnPropertyDescriptor(window,"MAP_TOKEN"))!=null&&t.get))return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!jt()&&(window[Eo]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return jt()},set(o){oa(o)}}),window[ta]=!0}catch{}}const Vt=["tab","pane","place"],sp="dxm-address",zn=e=>{const t=String(e??"").trim();return/^[A-Za-z0-9][\w-]{0,63}$/.test(t)?t:""};function Fo(e){const t=new URLSearchParams(e||"");return Object.fromEntries(Vt.map(o=>[o,zn(t.get(o))]))}const ip=(e,t,o)=>!!(e!=null&&e.dispatchEvent)&&(e.dispatchEvent(new CustomEvent(t,{bubbles:!0,composed:!0,detail:o})),!0);function ap(e,t={}){const o=Fo(e);Vt.forEach((s,i)=>{!(s in t)||zn(t[s])===o[s]||(o[s]=zn(t[s]),Vt.slice(i+1).forEach(a=>{a in t||(o[a]="")}))});const n=Vt.filter(s=>o[s]).map(s=>s+"="+o[s]).concat((e||"").replace(/^\?/,"").split("&").filter(s=>s&&!Vt.includes(s.split("=")[0])));return n.length?"?"+n.join("&"):""}function sa({search:e,hash:t}={},{push:o=!1}={}){try{const n=location.pathname,s=n+(e??location.search)+(t??location.hash);return s===n+location.search+location.hash?!1:(history[o?"pushState":"replaceState"]({...history.state||{},current:s},"",s),!0)}catch{return!1}}const ia=e=>e&&(e.urlOwner==="app"||e.urlOwner==="host")?e.urlOwner:"";function rp(e,{owner:t="",push:o=!0,el:n=null}={}){if(t!=="app"&&t!=="host"||!globalThis.location)return"none";const s=ap(location.search,e);return s===location.search?"unchanged":t==="app"?sa({search:s},{push:o})?"written":"unchanged":ip(n,sp,{keys:Fo(s),href:location.pathname+s+location.hash,push:o})?"announced":"none"}function lp(e){var o;const t=()=>e(Fo(location.search));return(o=globalThis.addEventListener)==null||o.call(globalThis,"popstate",t),()=>{var n;return(n=globalThis.removeEventListener)==null?void 0:n.call(globalThis,"popstate",t)}}const cp=":host{display:block;position:relative;height:var(--plugin-studio-height, 85vh);min-height:480px}:host([hidden]){display:none}.ps-logo{display:inline-flex;align-items:center}.ps-logo svg{display:block}.ps-count{color:#6d766e}.vtl-top{position:relative;z-index:3}.vtl-body{isolation:isolate}.ps-token{position:relative;display:inline-flex}.ps-show-header{position:fixed;top:8px;inset-inline-end:8px;z-index:2147483000;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #d1d4cd;border-radius:999px;background:#fffffff0;color:#3b463d;font:600 12px system-ui,sans-serif;cursor:pointer;box-shadow:0 4px 14px #0000002e}.ps-show-header:hover,.ps-show-header:focus-visible{background:#fff;outline:2px solid #92b195}.ps-hide-header-phone{display:none}@media (max-width:760px){.ps-hide-header-phone{display:inline-flex;position:fixed;top:6px;inset-inline-end:8px;z-index:4;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #d1d4cd;border-radius:var(--vtl-radius,8px);background:#d1d4cd;color:#3b463d;font:18px/1 system-ui,sans-serif;cursor:pointer}}.ps-token-dot{width:8px;height:8px;border-radius:50%;background:#b8bdb4}.ps-token-dot.is-yours,.ps-token-dot.is-url{background:#92b195}.ps-token-dot.is-built{background:#c9b36a}.ps-token-dot.is-none{background:#d27a6a}.ps-token-panel{position:absolute;top:100%;inset-inline-end:0;margin-top:4px;z-index:30;width:min(340px,90vw);display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid #d1d4cd;border-radius:10px;background:#fff;box-shadow:0 12px 32px #00000040;color:#3b463d;font-size:12px}.ps-token-label{display:flex;flex-direction:column;gap:4px}.ps-token-input{font:inherit;font-size:12px;padding:6px 8px;border:1px solid #d1d4cd;border-radius:7px;background:#f8f8f6;color:#3b463d;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.ps-token-row{display:flex;gap:8px}.ps-token-apply,.ps-token-clear{font:inherit;font-size:12px;padding:5px 12px;border-radius:7px;border:1px solid #d1d4cd;background:#d1d4cd;color:#3b463d;cursor:pointer}.ps-token-apply{background:#92b195;border-color:#92b195;color:#fff}.ps-token-apply:disabled{opacity:.6;cursor:progress}.ps-token-status{margin:0}.ps-token-head{margin:0;font-weight:600;font-size:12px}.ps-token-status.err{color:#b3412f}.ps-token-note{margin:0;color:#6d766e}.ps-locale{position:relative;display:inline-flex}.ps-locale-btn{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12px;padding:4px 9px;border:1px solid #d1d4cd;border-radius:8px;background:#d1d4cd;color:#3b463d;cursor:pointer}.ps-locale-btn:hover{background:#d1d4cd}.ps-flag{font-size:13px;line-height:1}.ps-locale-name{max-width:11ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ps-token-btn .ps-locale-name{max-width:none}.ps-dots{color:#6d766e}.ps-locale-menu{position:absolute;top:100%;right:0;margin-top:4px;z-index:30;min-width:180px;list-style:none;padding:6px;border:1px solid #d1d4cd;border-radius:10px;background:#fff;box-shadow:0 12px 32px #00000080;max-height:320px;overflow:auto}.ps-locale-opt{display:flex;align-items:center;gap:8px;width:100%;text-align:left;font:inherit;font-size:13px;padding:7px 9px;border:0;border-radius:7px;background:none;color:#3b463d;cursor:pointer}.ps-locale-opt:hover,.ps-locale-opt.active{background:#d1d4cd;color:#3b463d}.ps-locale-opt.active .ps-locale-name{color:#92b195}.ps-locale-en{margin-left:auto;font-size:11px;color:#6d766e}.ps-toolbar{display:flex;flex-direction:column;gap:8px;padding:10px 12px 0}.ps-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ps-bar-t{flex:1 1 auto;min-width:0}.ps-bar-t b{font-size:15px;color:#3b463d}.ps-bar-sub{display:block;font-size:12px;color:#6d766e}.ps-btn{font:inherit;font-size:12px;padding:5px 10px;border:1px solid #d1d4cd;border-radius:8px;background:#d1d4cd;color:#3b463d;cursor:pointer;white-space:nowrap}.ps-btn:hover{background:#d1d4cd}.ps-embed{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid #d1d4cd;border-radius:8px;background:#f3f3f1}.ps-embed label{font-size:12px;color:#6d766e;display:flex;justify-content:space-between;align-items:center}.ps-embed textarea{width:100%;height:58px;font:11px/1.35 ui-monospace,Menlo,monospace;border:1px solid #d1d4cd;border-radius:6px;background:#fff;color:#3b463d;padding:6px;resize:vertical}.ps-stage{position:absolute;top:10px;right:12px;bottom:12px;left:12px;border:1px solid #d1d4cd;border-radius:10px;overflow:hidden;background:#f3f3f1}.ps-pane{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;--profile-min-h: 0}.ps-slot{position:relative;min-height:100%}.ps-slot>*{min-height:0;max-height:none}.ps-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;color:#6d766e;font-size:13px;padding:20px}.ps-hint.err{color:#f87171}.ps-hint small{color:#6d766e}",Io="plugin-studio:mapbox-token",Ro="plugin-studio:mapbox-token-url",aa="plugin-studio:header-hidden",ra="plugin-studio:map-provider";function kt(e){try{return typeof window<"u"&&window.localStorage.getItem(e)||""}catch{return""}}function yt(e,t){try{t?window.localStorage.setItem(e,t):window.localStorage.removeItem(e)}catch{}}const dp=`
:host { display:block; position:relative; height:var(--plugin-studio-height, 85vh); min-height:480px; }
:host([hidden]) { display:none; }
.ps-logo { display:inline-flex; align-items:center; }
.ps-logo svg { display:block; }
.ps-count { color:#6d766e; }
.vtl-top { position:relative; z-index:3; }
.vtl-body { isolation:isolate; }
.ps-token { position:relative; display:inline-flex; }
.ps-show-header { position:fixed; top:8px; inset-inline-end:8px; z-index:2147483000; display:inline-flex; align-items:center; gap:6px; padding:6px 12px; border:1px solid #d1d4cd; border-radius:999px; background:rgba(255,255,255,.94); color:#3b463d; font:600 12px system-ui, sans-serif; cursor:pointer; box-shadow:0 4px 14px rgba(0,0,0,.18); }
.ps-show-header:hover, .ps-show-header:focus-visible { background:#ffffff; outline:2px solid #92b195; }
.ps-hide-header-phone { display:none; }
@media (max-width:760px) { .ps-hide-header-phone { display:inline-flex; position:fixed; top:6px; inset-inline-end:8px; z-index:4; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:1px solid #d1d4cd; border-radius:var(--vtl-radius,8px); background:#d1d4cd; color:#3b463d; font:18px/1 system-ui, sans-serif; cursor:pointer; } }
.ps-token-dot { width:8px; height:8px; border-radius:50%; background:#b8bdb4; }
.ps-token-dot.is-yours, .ps-token-dot.is-url { background:#92b195; }
.ps-token-dot.is-built { background:#c9b36a; }
.ps-token-dot.is-none { background:#d27a6a; }
.ps-token-panel { position:absolute; top:100%; inset-inline-end:0; margin-top:4px; z-index:30; width:min(340px, 90vw); display:flex; flex-direction:column; gap:8px; padding:12px; border:1px solid #d1d4cd; border-radius:10px; background:#ffffff; box-shadow:0 12px 32px rgba(0,0,0,.25); color:#3b463d; font-size:12px; }
.ps-token-label { display:flex; flex-direction:column; gap:4px; }
.ps-token-input { font:inherit; font-size:12px; padding:6px 8px; border:1px solid #d1d4cd; border-radius:7px; background:#f8f8f6; color:#3b463d; font-family:ui-monospace, SFMono-Regular, Menlo, monospace; }
.ps-token-row { display:flex; gap:8px; }
.ps-token-apply, .ps-token-clear { font:inherit; font-size:12px; padding:5px 12px; border-radius:7px; border:1px solid #d1d4cd; background:#d1d4cd; color:#3b463d; cursor:pointer; }
.ps-token-apply { background:#92b195; border-color:#92b195; color:#fff; }
.ps-token-apply:disabled { opacity:.6; cursor:progress; }
.ps-token-status { margin:0; }
.ps-token-head { margin:0; font-weight:600; font-size:12px; }
.ps-token-status.err { color:#b3412f; }
.ps-token-note { margin:0; color:#6d766e; }
.ps-locale { position:relative; display:inline-flex; }
.ps-locale-btn { display:inline-flex; align-items:center; gap:6px; font:inherit; font-size:12px; padding:4px 9px; border:1px solid #d1d4cd; border-radius:8px; background:#d1d4cd; color:#3b463d; cursor:pointer; }
.ps-locale-btn:hover { background:#d1d4cd; }
.ps-flag { font-size:13px; line-height:1; }
.ps-locale-name { max-width:11ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ps-token-btn .ps-locale-name { max-width:none; }
.ps-dots { color:#6d766e; }
.ps-locale-menu { position:absolute; top:100%; right:0; margin-top:4px; z-index:30; min-width:180px; list-style:none; padding:6px; border:1px solid #d1d4cd; border-radius:10px; background:#ffffff; box-shadow:0 12px 32px rgba(0,0,0,.5); max-height:320px; overflow:auto; }
.ps-locale-opt { display:flex; align-items:center; gap:8px; width:100%; text-align:left; font:inherit; font-size:13px; padding:7px 9px; border:0; border-radius:7px; background:none; color:#3b463d; cursor:pointer; }
.ps-locale-opt:hover { background:#d1d4cd; color:#3b463d; }
.ps-locale-opt.active { background:#d1d4cd; color:#3b463d; }
.ps-locale-opt.active .ps-locale-name { color:#92b195; }
.ps-locale-en { margin-left:auto; font-size:11px; color:#6d766e; }
.ps-toolbar { display:flex; flex-direction:column; gap:8px; padding:10px 12px 0; }
.ps-bar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.ps-bar-t { flex:1 1 auto; min-width:0; }
.ps-bar-t b { font-size:15px; color:#3b463d; }
.ps-bar-sub { display:block; font-size:12px; color:#6d766e; }
.ps-btn { font:inherit; font-size:12px; padding:5px 10px; border:1px solid #d1d4cd; border-radius:8px; background:#d1d4cd; color:#3b463d; cursor:pointer; white-space:nowrap; }
.ps-btn:hover { background:#d1d4cd; }
.ps-embed { display:flex; flex-direction:column; gap:6px; padding:8px; border:1px solid #d1d4cd; border-radius:8px; background:#f3f3f1; }
.ps-embed label { font-size:12px; color:#6d766e; display:flex; justify-content:space-between; align-items:center; }
.ps-embed textarea { width:100%; height:58px; font:11px/1.35 ui-monospace,Menlo,monospace; border:1px solid #d1d4cd; border-radius:6px; background:#ffffff; color:#3b463d; padding:6px; resize:vertical; }
.ps-stage { position:absolute; inset:10px 12px 12px; border:1px solid #d1d4cd; border-radius:10px; overflow:hidden; background:#f3f3f1; }
.ps-pane { position:absolute; inset:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; --profile-min-h:0; }
.ps-slot { position:relative; min-height:100%; }
.ps-slot > * { min-height:0; max-height:none; }
.ps-hint { position:absolute; inset:0; display:grid; place-items:center; text-align:center; color:#6d766e; font-size:13px; padding:20px; }
.ps-hint.err { color:#f87171; }
.ps-hint small { color:#6d766e; }
`,pp={5:"App shell · nested-mfe-spa",4:"Composite element",3:"Multi-view element",2:"Preset element",1:"Single element"},la={"nested-mfe-spa":0,"nested-elements-mfe":1,monolithic:2,parameterized:3,single:4},up=e=>la[e]!=null?5-la[e]:1,fp={5:"nested-mfe-spa",4:"nested-elements-mfe",3:"monolithic",2:"parameterized",1:"single"},Bn={5:"monitor",4:"tree",3:"layers",2:"grid",1:"embed"},ca=new Set(["doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map","doxa-map","doxa-maps-spa","dashboard-plus-grid","research-dashboard-map","demo-map","all-people-groups","country-posters-map","key-cities-map","research-map-plus-grid","gospel-internet-board"]),da=new Set(["big-picture"]),Do={};for(const[e,t]of Object.entries(Object.assign({"../../library/i18n/locales/ar/studio.json":jl,"../../library/i18n/locales/de/studio.json":Vl,"../../library/i18n/locales/en/studio.json":Kl,"../../library/i18n/locales/es/studio.json":ql,"../../library/i18n/locales/fr/studio.json":Gl,"../../library/i18n/locales/hi/studio.json":Yl,"../../library/i18n/locales/it/studio.json":Jl,"../../library/i18n/locales/pt/studio.json":Xl,"../../library/i18n/locales/ro/studio.json":Zl,"../../library/i18n/locales/ru/studio.json":Ql,"../../library/i18n/locales/zh/studio.json":ec}))){const o=e.match(/locales\/([^/]+)\/studio\.json$/);o&&(Do[o[1]]=t)}const pa={},jn=e=>String(e).split(/[-_]+/).filter(Boolean).map(t=>t[0].toUpperCase()+t.slice(1)).join(" ");function hp(e,t){const o=e+"/"+t.profile;if(pa[o])return pa[o];const n=typeof t.label=="string"?t.label.replace(/\s*\([^()]*\)\s*$/,"").trim():"";return n||(t.profile===e?jn(e):jn(e)+" · "+jn(t.profile))}const gp=`
[data-studio-widgets]{position:fixed;z-index:2147483647;display:flex;flex-direction:column;gap:10px;pointer-events:none}
[data-studio-widgets] > *{pointer-events:auto}
[data-studio-widgets="bottom-right"]{bottom:max(16px,env(safe-area-inset-bottom));right:max(16px,env(safe-area-inset-right));align-items:flex-end}
[data-studio-widgets="bottom-left"]{bottom:max(16px,env(safe-area-inset-bottom));left:max(16px,env(safe-area-inset-left));align-items:flex-start}
[data-studio-widgets="top-right"]{top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));align-items:flex-end}
[data-studio-widgets="top-left"]{top:max(16px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));align-items:flex-start}
[data-widget]{display:flex;flex-direction:column;align-items:inherit;gap:10px}
[data-studio-widgets^="top"] [data-widget]{flex-direction:column-reverse}
[data-widget-panel]{display:none;position:relative;width:360px;max-width:calc(100vw - 32px);height:min(480px,calc(100vh - 110px));height:min(480px,calc(100dvh - 110px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));border-radius:16px;overflow:hidden;background:#0b0f14;box-shadow:0 12px 40px rgba(0,0,0,.35)}
[data-widget-panel][data-open]{display:block}
[data-widget-bubble]{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #334155;border-radius:999px;background:#0f172a;color:#e5e7eb;font:600 14px/1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.3)}
[data-widget-bubble]:focus-visible{outline:3px solid #7dd3fc;outline-offset:3px}
[data-wb-icon]{display:grid;place-items:center;flex:none;color:#38bdf8}
[data-wb-icon] svg,[data-wb-chev] svg{width:20px;height:20px;display:block}
[data-wb-dot],[data-wb-chev]{display:none;flex:none}
[data-wb-dot]{position:absolute;top:1px;right:1px;width:10px;height:10px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 2px #0f172a}
[data-widget-bubble][aria-expanded="true"] [data-wb-chev]{display:block}
[data-widget-bubble][aria-expanded="true"] [data-wb-icon]{display:none}
[data-widget-bubble][data-listening="true"]{border-color:#ef4444;background:#1f0f12;animation:studio-widget-pulse 1.4s ease-out infinite}
[data-widget-bubble][data-listening="true"] [data-wb-dot]{display:block}
[data-widget-bubble][data-listening="true"] [data-wb-icon]{color:#6b7280}
[data-widget-bubble][data-speaking="true"] [data-wb-icon]{color:#4ade80;animation:studio-widget-speak .5s ease-in-out infinite alternate}
@keyframes studio-widget-pulse{0%{box-shadow:0 0 0 0 rgba(239,68,68,.55)}70%{box-shadow:0 0 0 12px rgba(239,68,68,0)}100%{box-shadow:0 0 0 0 rgba(239,68,68,0)}}
@keyframes studio-widget-speak{from{transform:scale(1)}to{transform:scale(1.18)}}
@media (prefers-reduced-motion:reduce){[data-widget-bubble][data-listening="true"],[data-widget-bubble][data-speaking="true"] [data-wb-icon]{animation:none}}
@media (max-width:480px){
[data-studio-widgets^="bottom"]{bottom:max(8px,env(safe-area-inset-bottom))}
[data-studio-widgets$="right"]{right:max(8px,env(safe-area-inset-right))}
[data-studio-widgets$="left"]{left:max(8px,env(safe-area-inset-left))}
[data-widget-panel]{width:calc(100vw - 16px);max-width:none;height:60vh;height:60dvh}
}`,$p='<span data-wb-dot aria-hidden="true"></span><span data-wb-icon>'+'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="9" y="2" width="6" height="12" rx="3"/><path d="M5 10v1a7 7 0 0 0 14 0v-1"/><path d="M12 18v4"/></svg>'+"</span><span data-wb-chev>"+'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" aria-hidden="true"><path d="M6 9l6 6 6-6"/></svg>'+"</span>",mp=bo({name:"PluginStudio",inheritAttrs:!1,components:{VerticalTabsLayout:vd,StudioTree:Qd},props:{treeBase:{type:String,default:""},profileConfig:{type:[String,Object],default:""},provider:{type:String,default:""},heading:{type:String,default:""},tokenUrl:{type:String,default:""},tk:{type:String,default:""}},setup(){return In(dp,"plugin-studio"),{injectedBase:At("psTreeBase","")}},data(){return{activeKey:"",embedOpen:!1,locale:this.initialLocale(),localeOpen:!1,settingsOpen:!1,headerHidden:kt(aa)==="1",engineOpen:!1,userProvider:kt(ra),tokenBusy:!1,tokenErr:"",tokenDraft:kt(Io),urlDraft:kt(Ro),userTk:kt(Io),userTokenUrl:kt(Ro),fetchedTk:"",bakedTk:"",hostProvider:"",switcherLangs:No,rows:[],manifestBundles:[]}},computed:{cfg(){let e=this.profileConfig;if(typeof e=="string")try{e=e?JSON.parse(e):{}}catch{e={}}return e&&typeof e=="object"?e:{}},base(){const e=(this.treeBase||this.cfg.treeBase||this.injectedBase||"").trim();return e?e.replace(/\/+$/,"")+"/":""},flatRows(){return this.rows},groups(){const e={};for(const t of this.rows)(e[t.cap]=e[t.cap]||[]).push(t);return[5,4,3,2,1].filter(t=>e[t]&&e[t].length).map(t=>({cap:t,label:pp[t]||"capability "+t,rows:e[t]}))},treeSections(){const e=new Map(this.compositionTrees.map(s=>[s.nodes[0].selects,s])),t=new Map;for(const s of this.rows)t.has(s.bundle)||t.set(s.bundle,[]),t.get(s.bundle).push(s);const o=[...t.entries()].map(([s,i])=>({bundle:s,rows:i,cap:Math.max(...i.map(a=>a.cap))}));return[5,4,3,2,1].map(s=>({cap:s,group:o.filter(i=>i.cap===s).sort((i,a)=>i.bundle.localeCompare(a.bundle))})).map(({cap:s,group:i})=>{if(!i.length)return null;const a=[],r=(l,d,p)=>{const h=e.get(l.key);if(a.push({id:l.key,parent:p,depth:d,label:l.label,desc:(l.stage==="production"?"":this.tr("stageExperimental")+" · ")+"cap "+l.cap+" · "+l.tag,icon:l.icon,target:l.key,canonical:!0,kids:h?h.nodes[0].kids:0,title:l.label+" · <"+l.tag+"> · CAP "+l.cap+" "+this.tr("cap"+l.cap)}),!h)return;const y=k=>k===0?l.key:l.key+">"+k;for(const k of h.nodes.slice(1))a.push({id:y(k.id),parent:y(k.ancestors[k.ancestors.length-1]),depth:d+k.depth,label:k.label,part:!!k.part,target:k.selects||"",canonical:!1,icon:k.part?"dots":Bn[k.cap]||"embed",desc:k.part?this.tr("noStandalone"):"cap "+k.cap+" · "+k.tag,kids:k.kids||0,title:k.part?k.label+" · "+this.tr("partOf",{name:l.label}):k.label+" · <"+k.tag+"> · CAP "+k.cap+" "+this.tr("cap"+k.cap)})};for(const l of i){const d=[...l.rows].sort((h,y)=>y.cap-h.cap||h.label.localeCompare(y.label));if(d.length===1){r(d[0],0,"");continue}const p="bundle:"+l.bundle;a.push({id:p,parent:"",depth:0,label:l.bundle,desc:this.tr("elementsCount",{n:d.length}),icon:"folder",target:d[0].key,canonical:!1,folder:!0,kids:d.length,title:l.bundle+" · plugin-designs/"+l.bundle+"/ · "+d.length+" "+this.tr("elements")});for(const h of d)r(h,1,p)}return{id:"cap-"+s,cap:s,label:this.tr("cap"+s),title:this.tr("cap"+s)+" · "+(fp[s]||""),icon:Bn[s]||"embed",nodes:a}}).filter(Boolean)},compositionTrees(){const e=[],t=(o,n,s,i,a)=>{const r=this.manifestBundles.find(y=>y.bundle===o.bundle),l=o.cap>=4&&r&&r.composes||[],d=[],p=[],h=new Set;for(const y of l){const k=this.resolveRef(y,o.bundle);if(!k){p.push(y);continue}k.key===o.key||h.has(k.key)||(h.add(k.key),d.push(k))}d.sort((y,k)=>k.cap-y.cap||y.label.localeCompare(k.label));for(const y of d){const k={id:i.length,label:y.label,tag:y.tag,cap:y.cap,selects:y.key,depth:n+1,ancestors:a,kids:0};i.push(k);const W=i.length;s.has(y.key)||t(y,n+1,new Set([...s,y.key]),i,[...a,k.id]),k.kids=i.filter((F,ee)=>ee>=W&&F.depth===n+2).length}for(const y of p)i.push({id:i.length,label:y,part:!0,selects:o.key,depth:n+1,ancestors:a,kids:0})};for(const o of this.manifestBundles){if(!o.composes||!o.composes.length||da.has(o.bundle))continue;const n=this.rows.find(i=>i.bundle===o.bundle);if(!n)continue;const s=[{id:0,label:n.label,tag:n.tag,cap:n.cap,selects:n.key,depth:0,ancestors:[]}];t(n,0,new Set([n.key]),s,[0]),s[0].kids=s.filter(i=>i.depth===1).length,s.length>1&&e.push({bundle:o.bundle,nodes:s})}return e},active(){return this.rows.find(e=>e.key===this.activeKey)||null},effectiveTk(){return this.userTk||this.fetchedTk||this.tk||this.cfg.tk||this.bakedTk||""},effectiveProvider(){const e=String(this.userProvider||this.provider||this.cfg.provider||"").toLowerCase().trim();return e==="maplibre"||e==="mapbox"?e:""},engines(){return[{id:"",label:this.tr("engineDefault"),note:""},{id:"mapbox",label:"Mapbox",note:this.tr("engineMapboxNote")},{id:"maplibre",label:"MapLibre",note:this.tr("engineMaplibreNote")}]},engineLabel(){return this.userProvider==="mapbox"?"Mapbox":this.userProvider==="maplibre"?"MapLibre":this.tr("engineDefault")},tokenSource(){return this.userTk?"yours":this.fetchedTk?"url":this.tk||this.cfg.tk||this.bakedTk?"built":"none"},tokenStatus(){return this.effectiveProvider==="maplibre"?this.tr("tokenNotNeeded"):this.tokenSource==="yours"?this.tr("tokenSourceYours"):this.tokenSource==="url"?this.tr("tokenSourceUrl",{url:this.userTokenUrl}):this.tokenSource==="built"?this.tr("tokenSourceBuilt"):this.tr("tokenSourceNone")},countLabel(){const e=new Set(this.rows.map(t=>t.bundle)).size;return this.tr("countLabel",{bundles:e,elements:this.rows.length})},activeLang(){return ep(this.locale)||{code:this.locale,flag:"🌐",nativeName:this.locale}},uiDir(){return(this.activeLang&&this.activeLang.dir)==="rtl"?"rtl":"ltr"}},mounted(){this.bakedTk=typeof window<"u"&&window.MAP_TOKEN||"",this.hostProvider=typeof window<"u"&&typeof window.MAP_PROVIDER=="string"?window.MAP_PROVIDER:"",this.publishProvider(),this.userTk?this.publishToken():(this.userTokenUrl||this.tokenUrl||this.cfg.tokenUrl)&&this.fetchToken(this.userTokenUrl||this.tokenUrl||this.cfg.tokenUrl).then(e=>{e&&e!==this.fetchedTk&&(this.fetchedTk=e,this.publishToken(),this.remountPanes())}).catch(()=>{}),this.loadManifest(),this._offAddress=lp(({tab:e})=>{const t=this.keyOfTab(e);t?this.select(t,{fromHistory:!0}):this.rows.length&&this.select(this.rows[0].key,{fromHistory:!0})})},beforeUnmount(){this._offAddress&&(this._offAddress(),this._offAddress=null);const e=window.__doxaStudioWidgets;if(e&&e.hosts)for(const t of Object.values(e.hosts))try{t.remove()}catch{}delete window.__doxaStudioWidgets},methods:{async fetchToken(e){if(!/^https?:\/\//i.test(e))throw new Error("not an http(s) URL");let t;try{t=await fetch(e,{cache:"no-store",credentials:"same-origin"})}catch{throw new Error("the request was blocked or the server did not answer (cross-origin rules can do this)")}if(!t.ok)throw new Error("HTTP "+t.status);const o=(await t.text()).trim();let n=o;try{const s=JSON.parse(o);n=s&&(s.token||s.tk||s.accessToken)||(typeof s=="string"?s:"")}catch{}if(n=String(n||"").trim(),n.startsWith("sk."))throw new Error(this.tr("tokenSecret"));if(!n.startsWith("pk."))throw new Error(this.tr("tokenNotPk"));return n},async applyToken(){this.tokenErr="";const e=this.tokenDraft,t=this.urlDraft;if(e.startsWith("sk.")){this.tokenErr=this.tr("tokenSecret");return}if(e&&!e.startsWith("pk.")){this.tokenErr=this.tr("tokenNotPk");return}this.tokenBusy=!0;try{let o="";if(!e&&t)try{o=await this.fetchToken(t)}catch(n){this.tokenErr=this.tr("tokenUrlFailed",{why:n.message});return}this.userTk=e,this.userTokenUrl=e?"":t,this.fetchedTk=o,yt(Io,this.userTk),yt(Ro,this.userTokenUrl),this.publishToken(),this.remountPanes(),this.settingsOpen=!1}finally{this.tokenBusy=!1}},setHeaderHidden(e){this.headerHidden=!!e,this.settingsOpen=!1,this.engineOpen=!1,this.localeOpen=!1,yt(aa,e?"1":"")},setProvider(e){this.engineOpen=!1,e!==this.userProvider&&(this.userProvider=e,yt(ra,e),this.publishProvider(),this.remountPanes())},publishProvider(){typeof window>"u"||(this.effectiveProvider?window.MAP_PROVIDER=this.effectiveProvider:this.hostProvider?window.MAP_PROVIDER=this.hostProvider:"MAP_PROVIDER"in window&&delete window.MAP_PROVIDER)},clearToken(){this.tokenDraft="",this.urlDraft="",this.tokenErr="",this.userTk="",this.userTokenUrl="",this.fetchedTk="",yt(Io,""),yt(Ro,""),this.publishToken(),this.remountPanes()},publishToken(){typeof window>"u"||(this.effectiveTk?(oa(this.effectiveTk),window.MAP_TOKEN!==this.effectiveTk&&(window.MAP_TOKEN=this.effectiveTk)):np())},remountPanes(){for(const t of this.rows)t.mounted&&this.releaseRow(t);const e=this.active;e&&this.$nextTick(()=>{this.activeKey===e.key&&this.mountElement(e)})},tr(e,t){const o=(this.locale||"en").split("-")[0];let n=(Do[this.locale]||{})[e]||(Do[o]||{})[e]||(Do.en||{})[e]||e;if(t)for(const s in t)n=n.split("{"+s+"}").join(String(t[s]));return n},resolveRef(e,t){return t&&this.rows.find(o=>o.key===t+"/"+e)||this.rows.find(o=>o.key===e)||this.rows.find(o=>o.tag===e)||this.rows.find(o=>o.bundle===e)||null},setSlot(e,t){t&&(this._slots=Object.assign(this._slots||{},{[e]:t}))},initialLocale(){let e=this.profileConfig;if(typeof e=="string")try{e=e?JSON.parse(e):{}}catch{e={}}let t="";try{const n=new URLSearchParams(window.location.search);t=n.get("lang")||n.get("locale")||""}catch{}const o=e&&(e.locale||e.lang)||t;return o?Un(o):tp()},paneConfig(e,t){const o={profile:e.profile,instanceId:"ps-"+e.key.replace(/\//g,"-"),locale:t};this.effectiveTk&&(o.tk=this.effectiveTk);const n=this.userTokenUrl||this.tokenUrl||this.cfg.tokenUrl;return n&&(o.tokenUrl=n),this.effectiveProvider&&(o.provider=this.effectiveProvider),this.base&&(o.treeBase=this.base),o},setLocale(e){this.locale=e,this.localeOpen=!1,op(e);try{for(const t of this.rows){if(!t.mounted)continue;const o=this._slots&&this._slots[t.key],n=o&&o.firstElementChild;n&&n.setAttribute&&n.setAttribute("profile-config",JSON.stringify(this.paneConfig(t,e)))}}catch{}},resolve(e){const t=String(e);if(/^(https?:)?\/\//.test(t)||t.startsWith("/"))return t;const o=t.replace(/^\.\//,"");return this.base?this.base.replace(/\/+$/,"")+"/"+o:"../"+o},loadManifest(){const e=o=>{this.manifestBundles=o&&o.bundles||[],this.rows=this.rowsFromManifest(o),this.setupWidgets(),this.route()},t=typeof window<"u"&&window.__psBaked||null;if(typeof fetch=="function"&&typeof location<"u"&&location.protocol!=="file:"){const o=this.base?this.resolve("manifest.json"):"../manifest.json";fetch(o,{cache:"no-cache"}).then(n=>n.ok?n.json():null).then(n=>e(n||t||{bundles:[]})).catch(()=>e(t||{bundles:[]}))}else e(t||{bundles:[]})},rowsFromManifest(e){const t=[];for(const o of e.bundles||[])if(!(o.bundle==="plugin-studio"||da.has(o.bundle)))for(const n of o.profiles||[]){const s=o.elements&&o.elements.length?o.elements:null,i=(n.element&&(!s||s.includes(n.element))?n.element:null)||s&&s[0]||n.element||o.bundle,a=up(n.type||"single"),r=ca.has(i)||ca.has(o.bundle)||n.heavy===!0;t.push({key:o.bundle+"/"+n.profile,bundle:o.bundle,stage:o.stage==="production"?"production":"experimental",label:hp(o.bundle,n),profile:n.profile,tag:i,cap:a,icon:Bn[a]||"embed",description:n.description||"",widget:n.widget&&["bottom-right","bottom-left","top-right","top-left"].includes(n.widget.corner)?n.widget.corner:"",heavy:r,bundleJs:o.scriptUrl||o.bundle+"/"+o.bundle+".js",embed:n.embed&&n.embed.script||"",mounted:!1,state:"idle",error:""})}return t.sort((o,n)=>n.cap-o.cap||o.bundle.localeCompare(n.bundle)||o.label.localeCompare(n.label)),t},route(){const e={firstPaint:!0},t=this.keyOfTab(Fo(typeof location<"u"?location.search:"").tab);if(t){this.select(t,e);return}const o=(typeof location<"u"&&location.hash||"").replace(/^#\/?/,"");if(o&&this.rows.some(s=>s.key===o)){this.select(o,e),ia(this.cfg)==="app"&&sa({hash:""});return}const n=this.readLastTab();if(n&&this.rows.some(s=>s.key===n)){this.select(n,e);return}this.rows.length&&this.select(this.rows[0].key,e)},tabIdOf(e){return String(e||"").replace("/","__")},keyOfTab(e){if(!e)return"";const t=e.includes("__")?e.replace("__","/"):"";if(t&&this.rows.some(n=>n.key===t))return t;const o=this.rows.filter(n=>n.key.split("/")[1]===e);return o.length===1?o[0].key:""},storageKey(){return"dx-studio-tab:"+(typeof location<"u"&&location.pathname||"")},readLastTab(){try{return window.localStorage.getItem(this.storageKey())||""}catch{return""}},writeLastTab(e){try{window.localStorage.setItem(this.storageKey(),e)}catch{}},select(e,{fromHistory:t=!1,firstPaint:o=!1}={}){if(!this.rows.some(a=>a.key===e))return;const n=this.rows.find(a=>a.key===e);if(n&&n.widget){this.openWidget(n,!0);return}const s=this.activeKey;if(this.activeKey=e,this.embedOpen=!1,s&&s!==e){const a=this.rows.find(r=>r.key===s);a&&a.heavy&&a.mounted&&this.releaseRow(a)}const i=this.rows.find(a=>a.key===e);i&&(this.writeLastTab(e),t||rp({tab:this.tabIdOf(e)},{owner:ia(this.cfg),push:!o,el:this.$el}),i.mounted||this.$nextTick(()=>{this.activeKey===i.key&&this.mountElement(i)}))},releaseRow(e){try{const t=this._slots&&this._slots[e.key];t&&(t.innerHTML="")}catch{}this._slots&&delete this._slots[e.key],e.mounted=!1,e.state="idle",e.error=""},widgetStore(){return window.__doxaStudioWidgets||(window.__doxaStudioWidgets={hosts:{},els:{}}),window.__doxaStudioWidgets},widgetHost(e){const t=this.widgetStore();if(!document.getElementById("studio-widget-css")){const n=document.createElement("style");n.id="studio-widget-css",n.textContent=gp,document.head.appendChild(n)}if(t.hosts[e]&&t.hosts[e].isConnected)return t.hosts[e];const o=document.createElement("div");return o.setAttribute("data-studio-widgets",e),document.body.appendChild(o),t.hosts[e]=o,o},setupWidgets(){for(const e of this.rows.filter(t=>t.widget)){const t=this.widgetStore(),o=this.widgetHost(e.widget);let n=o.querySelector(`[data-widget="${e.key}"]`);if(!n){n=document.createElement("div"),n.setAttribute("data-widget",e.key);const i=document.createElement("div");i.setAttribute("data-widget-panel","");const a=document.createElement("button");a.type="button",a.setAttribute("data-widget-bubble","");const r="widget:"+e.key,l=this.tr(r);a.setAttribute("aria-label",l!==r?l:e.label),a.title=a.getAttribute("aria-label"),a.setAttribute("aria-expanded","false"),a.innerHTML=$p,a.addEventListener("click",()=>this.openWidget(e,!i.hasAttribute("data-open"))),n.appendChild(i),n.appendChild(a),o.appendChild(n)}t.els[e.key]&&!n.querySelector(e.tag)&&n.querySelector("[data-widget-panel]").appendChild(t.els[e.key]);let s=!1;try{s=localStorage.getItem("plugin-studio:widget-open:"+e.key)==="1"}catch{}s&&this.openWidget(e,!0)}},openWidget(e,t){const n=this.widgetHost(e.widget).querySelector(`[data-widget="${e.key}"]`);if(!n){this.setupWidgets();return}const s=n.querySelector("[data-widget-panel]"),i=n.querySelector("[data-widget-bubble]");t?s.setAttribute("data-open",""):s.removeAttribute("data-open"),i.setAttribute("aria-expanded",t?"true":"false");try{localStorage.setItem("plugin-studio:widget-open:"+e.key,t?"1":"0")}catch{}const a=this.widgetStore();!t||a.els[e.key]||Hn(this.resolve(e.bundleJs)).then(()=>Zi(e.tag)).then(()=>{if(a.els[e.key])return;const r=document.createElement(e.tag);r.setAttribute("profile-config",JSON.stringify(this.paneConfig(e,this.locale))),r.setAttribute("variant","widget"),this.base&&r.setAttribute("tree-base",this.base.replace(/\/+$/,"")),r.style.cssText="display:block;position:absolute;inset:0;width:100%;height:100%;overflow-y:auto;overscroll-behavior:contain;";const l=n.querySelector("[data-widget-bubble]");r.addEventListener("recording",d=>{const p=!!(Array.isArray(d.detail)?d.detail[0]:d.detail);l.setAttribute("data-listening",p?"true":"false"),p||l.setAttribute("data-speaking","false")}),r.addEventListener("activity",d=>{const p=(Array.isArray(d.detail)?d.detail[0]:d.detail)||{};l.getAttribute("data-listening")==="true"&&l.setAttribute("data-speaking",p.speaking?"true":"false")}),a.els[e.key]=r,s.appendChild(r)}).catch(r=>{s.textContent=r&&r.message||String(r)})},mountElement(e){e.mounted=!0,e.state="loading";const t=this.resolve(e.bundleJs);Hn(t).then(()=>Zi(e.tag)).then(()=>{try{if(e.heavy&&this.activeKey!==e.key){e.mounted=!1,e.state="idle";return}const o=this._slots&&this._slots[e.key];if(!o){e.state="error",e.error="no slot";return}o.innerHTML="";const n=document.createElement(e.tag);n.setAttribute("profile-config",JSON.stringify(this.paneConfig(e,this.locale))),this.base&&n.setAttribute("tree-base",this.base.replace(/\/+$/,"")),n.style.cssText="display:block;position:absolute;inset:0;width:100%;height:100%;",o.appendChild(n),e.state="ready"}catch(o){e.state="error",e.error="mount failed: "+(o&&o.message||String(o))}}).catch(o=>{e.state="error",e.error=o&&o.message||String(o)})},copyText(e,t){const o=()=>{const n=t.textContent;t.textContent=this.tr("copied"),setTimeout(()=>{t.textContent=n},1200)};if(navigator.clipboard&&navigator.clipboard.writeText)navigator.clipboard.writeText(e).then(o,()=>{});else try{const n=document.createElement("textarea");n.value=e,document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n),o()}catch{}}}}),bp=["title","aria-label"],vp={class:"ps-count"},kp={class:"ps-locale"},yp=["aria-expanded","aria-label"],_p={class:"ps-flag"},wp={class:"ps-locale-name"},xp={key:0,class:"ps-locale-menu",role:"listbox"},Sp=["aria-selected"],Mp=["onClick"],Lp={class:"ps-flag"},Tp={class:"ps-locale-name"},Op={class:"ps-locale-en"},Cp={class:"ps-locale ps-engine"},Pp=["aria-expanded","aria-label","title"],Ap={class:"ps-locale-name"},Np=["aria-label"],Ep=["aria-selected"],Fp=["onClick"],Ip={class:"ps-locale-name"},Rp={class:"ps-locale-en"},Dp={class:"ps-token"},Hp=["aria-expanded","title"],Wp={class:"ps-locale-name"},Up={class:"ps-token-head"},zp={class:"ps-token-label"},Bp={class:"ps-token-label"},jp={class:"ps-token-row"},Vp=["disabled"],Kp={class:"ps-token-note"},qp=["title","aria-label"],Gp={class:"ps-locale-name"},Yp={key:0,class:"ps-toolbar"},Jp={class:"ps-bar"},Xp={class:"ps-bar-t"},Zp={class:"ps-bar-sub"},Qp={key:0},eu=["aria-expanded"],tu={key:0,class:"ps-embed"},ou=["value"],nu=["title","aria-label"],su={class:"ps-stage"},iu=["hidden"],au={key:0,class:"ps-hint"},ru={key:1,class:"ps-hint err"},lu={key:0,class:"ps-hint"};function cu(e,t,o,n,s,i){const a=mn("StudioTree"),r=mn("VerticalTabsLayout");return S(),Rt(r,{title:e.heading||e.tr("title"),dir:e.uiDir,"nav-label":e.tr("navLabel"),labels:{toggleList:e.tr("toggleList"),openViews:e.tr("openViews"),expandList:e.tr("expandList"),collapseList:e.tr("collapseList"),collapse:e.tr("collapse")},header:!e.headerHidden,active:e.activeKey,"onUpdate:active":e.select},{rail:ht(({collapsed:l,expand:d,pick:p})=>[ve(a,{sections:e.treeSections,active:e.activeKey,collapsed:l,expand:d,pick:p,strings:{filterPlaceholder:e.tr("filterPlaceholder"),collapseAll:e.tr("collapseAll"),noMatch:e.tr("noMatch"),treeLabel:e.tr("navLabel"),openSection:e.tr("openSection"),part:e.tr("part")}},null,8,["sections","active","collapsed","expand","pick","strings"])]),brand:ht(()=>[t[13]||(t[13]=b("span",{class:"ps-logo","aria-hidden":"true"},[b("svg",{viewBox:"0 0 24 24",width:"22",height:"22",fill:"none",stroke:"#92b195","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[b("path",{d:"M10 3v3M14 3v3M7 6h10v5a5 5 0 0 1-10 0V6Z"}),b("path",{d:"M12 16v5"})])],-1)),b("button",{type:"button",class:"ps-hide-header-phone",title:e.tr("hideHeader"),"aria-label":e.tr("hideHeader"),onClick:t[0]||(t[0]=l=>e.setHeaderHidden(!0))},[...t[12]||(t[12]=[b("span",{"aria-hidden":"true"},"⌃",-1)])],8,bp)]),meta:ht(()=>[b("span",vp,T(e.countLabel),1),b("span",kp,[b("button",{type:"button",class:"ps-locale-btn","aria-expanded":String(e.localeOpen),"aria-label":e.tr("changeLanguage"),onClick:t[1]||(t[1]=l=>{e.localeOpen=!e.localeOpen,e.engineOpen=!1,e.settingsOpen=!1})},[b("span",_p,T(e.activeLang.flag),1),b("span",wp,T(e.activeLang.nativeName),1),t[14]||(t[14]=b("span",{class:"ps-dots","aria-hidden":"true"},"⋮",-1))],8,yp),e.localeOpen?(S(),L("ul",xp,[(S(!0),L(Y,null,Ce(e.switcherLangs,l=>(S(),L("li",{key:l.code,role:"option","aria-selected":String(l.code===e.locale)},[b("button",{type:"button",class:de(["ps-locale-opt",{active:l.code===e.locale}]),onClick:d=>e.setLocale(l.code)},[b("span",Lp,T(l.flag),1),b("span",Tp,T(l.nativeName),1),b("span",Op,T(l.name),1)],10,Mp)],8,Sp))),128))])):U("",!0)]),b("span",Cp,[b("button",{type:"button",class:"ps-locale-btn","aria-expanded":String(e.engineOpen),"aria-label":e.tr("mapEngine"),title:e.tr("mapEngine"),onClick:t[2]||(t[2]=l=>{e.engineOpen=!e.engineOpen,e.localeOpen=!1,e.settingsOpen=!1})},[t[15]||(t[15]=b("span",{"aria-hidden":"true"},"🗺",-1)),b("span",Ap,T(e.engineLabel),1),t[16]||(t[16]=b("span",{class:"ps-dots","aria-hidden":"true"},"⋮",-1))],8,Pp),e.engineOpen?(S(),L("ul",{key:0,class:"ps-locale-menu",role:"listbox","aria-label":e.tr("mapEngine")},[(S(!0),L(Y,null,Ce(e.engines,l=>(S(),L("li",{key:l.id||"default",role:"option","aria-selected":String(l.id===e.userProvider)},[b("button",{type:"button",class:de(["ps-locale-opt",{active:l.id===e.userProvider}]),onClick:d=>e.setProvider(l.id)},[b("span",Ip,T(l.label),1),b("span",Rp,T(l.note),1)],10,Fp)],8,Ep))),128))],8,Np)):U("",!0)]),b("span",Dp,[b("button",{type:"button",class:"ps-locale-btn ps-token-btn","aria-expanded":String(e.settingsOpen),title:e.tokenStatus,onClick:t[3]||(t[3]=l=>{e.settingsOpen=!e.settingsOpen,e.localeOpen=!1,e.engineOpen=!1})},[b("span",Wp,T(e.tr("mapboxToken")),1),b("span",{class:de(["ps-token-dot","is-"+e.tokenSource]),"aria-hidden":"true"},null,2)],8,Hp),e.settingsOpen?(S(),L("form",{key:0,class:"ps-token-panel",onSubmit:t[7]||(t[7]=Hi((...l)=>e.applyToken&&e.applyToken(...l),["prevent"]))},[b("p",Up,T(e.tr("mapToken")),1),b("label",zp,[Ae(T(e.tr("tokenPaste"))+" ",1),gt(b("input",{class:"ps-token-input","onUpdate:modelValue":t[4]||(t[4]=l=>e.tokenDraft=l),placeholder:"pk.eyJ…",autocomplete:"off",spellcheck:"false"},null,512),[[Fn,e.tokenDraft,void 0,{trim:!0}]])]),b("label",Bp,[Ae(T(e.tr("tokenUrlLabel"))+" ",1),gt(b("input",{class:"ps-token-input","onUpdate:modelValue":t[5]||(t[5]=l=>e.urlDraft=l),type:"url",placeholder:"https://doxa.life/api/maps/token",autocomplete:"off",spellcheck:"false"},null,512),[[Fn,e.urlDraft,void 0,{trim:!0}]])]),b("div",jp,[b("button",{type:"submit",class:"ps-token-apply",disabled:e.tokenBusy},T(e.tr("tokenApply")),9,Vp),b("button",{type:"button",class:"ps-token-clear",onClick:t[6]||(t[6]=(...l)=>e.clearToken&&e.clearToken(...l))},T(e.tr("tokenClear")),1)]),b("p",{class:de(["ps-token-status",{err:!!e.tokenErr}]),role:"status"},T(e.tokenErr||e.tokenStatus),3),b("p",Kp,T(e.tr("tokenStoredHere")),1)],32)):U("",!0)]),b("button",{type:"button",class:"ps-locale-btn ps-hide-header",title:e.tr("hideHeader"),"aria-label":e.tr("hideHeader"),onClick:t[8]||(t[8]=l=>e.setHeaderHidden(!0))},[t[17]||(t[17]=b("span",{"aria-hidden":"true"},"⌃",-1)),b("span",Gp,T(e.tr("hideHeader")),1)],8,qp)]),toolbar:ht(()=>[e.active?(S(),L("div",Yp,[b("div",Jp,[b("div",Xp,[b("b",null,T(e.active.label),1),b("span",Zp,[Ae(T(e.active.bundle)+" · <"+T(e.active.tag)+">",1),e.active.description?(S(),L("span",Qp," · "+T(e.active.description),1)):U("",!0)])]),e.active.embed?(S(),L("button",{key:0,type:"button",class:"ps-btn","aria-expanded":String(e.embedOpen),onClick:t[9]||(t[9]=l=>e.embedOpen=!e.embedOpen)},T(e.tr("copyEmbed")),9,eu)):U("",!0)]),e.embedOpen&&e.active.embed?(S(),L("div",tu,[b("label",null,[Ae(T(e.tr("scriptEmbed"))+" ",1),b("button",{type:"button",class:"ps-btn",onClick:t[10]||(t[10]=l=>e.copyText(e.active.embed,l.target))},T(e.tr("copy")),1)]),b("textarea",{readonly:"",value:e.active.embed},null,8,ou)])):U("",!0)])):U("",!0)]),default:ht(()=>[e.headerHidden?(S(),L("button",{key:0,type:"button",class:"ps-show-header",title:e.tr("showHeader"),"aria-label":e.tr("showHeader"),onClick:t[11]||(t[11]=l=>e.setHeaderHidden(!1))},[t[18]||(t[18]=b("span",{"aria-hidden":"true"},"⌄",-1)),Ae(" "+T(e.tr("showHeader")),1)],8,nu)):U("",!0),b("div",su,[(S(!0),L(Y,null,Ce(e.flatRows,l=>gt((S(),L("section",{key:l.key,class:"ps-pane",hidden:l.key!==e.activeKey},[!l.heavy||l.key===e.activeKey?(S(),L(Y,{key:0},[b("div",{class:"ps-slot",ref_for:!0,ref:d=>e.setSlot(l.key,d)},null,512),l.state==="loading"?(S(),L("div",au,T(e.tr("loading",{name:l.label})),1)):l.state==="error"?(S(),L("div",ru,[Ae(T(e.tr("couldNotLoad",{name:l.label})),1),t[19]||(t[19]=b("br",null,null,-1)),b("small",null,T(l.error),1)])):U("",!0)],64)):U("",!0)],8,iu)),[[Cn,l.key===e.activeKey]])),128)),e.activeKey?U("",!0):(S(),L("div",lu,T(e.tr("chooseElement")),1))])]),_:1},8,["title","dir","nav-label","labels","header","active","onUpdate:active"])}const du=Ao(mp,[["render",cu],["styles",[cp]]]),pu=$c(),uu=Fl(du,{configureApp(e){e.provide("psTreeBase",pu)}});typeof customElements<"u"&&!customElements.get("plugin-studio")&&customElements.define("plugin-studio",uu)})();