From 182611c94bea8b912c6fb972db5e5fb57073ac8d Mon Sep 17 00:00:00 2001 From: Doxa Maps Date: Mon, 28 Sep 2026 20:20:50 +0000 Subject: [PATCH] Regions batch: perRow boot, control inset, stats grid, print, two leaks, smaller watermark MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Seven changes to two plugins, re-applied onto current main as ONE source patch rather than rebased, because the rebase conflicted in the generated bundles — where a conflict is never resolvable by hand, since neither side matches what either source builds. Source re-applied clean, everything rebuilt from it. people-groups-grid · the saved column count is restored before first paint, not after, so a returning reader no longer watches the grid snap from auto to their choice. It re-reads if the profile-config key arrives late, and never over a choice the reader has since made by hand. · the cards-per-row control is inset from the card edge it was sitting level with (Driver round 2, #5). · the window vocabulary handle is released on unmount, identity-checked so the first of two grids on a page cannot strip the second's live handle. regions-dashboard · the four stat cards no longer let Population stretch across a tablet row. auto-fit collapsed the empty tracks; auto-fill with the track minimum capped at a quarter of the row gives at most four columns and never a stretched orphan. Measured at nine widths. · the dashboard is printable at all. It had no @media print rule, so the app shell's absolute root and inner scroller meant the browser printed one screenful; the legend stayed on top of the map; interactive chrome printed. · both window globals are released on unmount, not just the remembered one, each identity-checked and on its own line. shared asset · the worldmap watermark is 242 KB rather than 311 KB — same 394 paths, same drawing, coordinate precision trimmed to what the render resolves. --- data/images/worldmap.svg | 403 +----------------- .../people-groups-grid/people-groups-grid.vue | 59 ++- .../regions-dashboard/region-dashboards.vue | 32 +- .../src/RegionCountryMap.vue | 45 +- public/dx-maps/assets/images/worldmap.svg | 403 +----------------- public/dx-maps/big-picture/big-picture.js | 26 +- .../big-picture/big-picture/index.html | 2 +- .../big-picture/frontier/index.html | 2 +- .../big-picture/big-picture/index.html | 2 +- .../dashboard-plus-grid.js | 58 +-- .../dashboard-plus-grid/default/index.html | 2 +- .../dashboard-plus-grid/index.html | 2 +- public/dx-maps/doxa-maps-spa/manifest.json | 20 +- public/dx-maps/manifest.json | 20 +- .../people-groups-grid/people-groups-grid.js | 26 +- .../people-groups-grid/driven/index.html | 2 +- .../people-groups-grid/index.html | 2 +- .../people-groups-grid/index.html | 2 +- .../region-dashboards/index.html | 2 +- .../regions-dashboard/regions-dashboard.js | 2 +- .../regions-dashboard/regions-list/index.html | 2 +- .../regions-dashboard/regions-mfe/index.html | 2 +- 22 files changed, 216 insertions(+), 900 deletions(-) diff --git a/data/images/worldmap.svg b/data/images/worldmap.svg index 90ad740df..acb6af9a0 100644 --- a/data/images/worldmap.svg +++ b/data/images/worldmap.svg @@ -1,402 +1 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/plugin-designs/people-groups-grid/people-groups-grid.vue b/plugin-designs/people-groups-grid/people-groups-grid.vue index 505474fa3..3789793dd 100644 --- a/plugin-designs/people-groups-grid/people-groups-grid.vue +++ b/plugin-designs/people-groups-grid/people-groups-grid.vue @@ -39,7 +39,7 @@ * - researchUrl / selectUrl : String props — link bases for the cards. * - t (i18n labels): via the `t` / profile-config.t object prop (no useI18n). */ -import { ref, computed, watch, onMounted, getCurrentInstance } from 'vue' +import { ref, computed, watch, onMounted, onUnmounted, getCurrentInstance } from 'vue' // SHARED search primitives (one source of truth for BOTH cap-2 grid + cap-1 dashboard). import Fuse from '@map/components/search/fuzzy.js' import { highlightRanges } from '@map/composables/useTextHighlight.js' @@ -329,15 +329,37 @@ const selectUrl = computed(() => props.selectUrl || cfg.value.selectUrl || '' const PER_ROW_OPTIONS = ['auto', '1', '2', '3', '4', '5'] const perRowKey = computed(() => `pgg-cards-per-row:${cfg.value.profile || 'default'}`) const perRow = ref('auto') -onMounted(() => { - // Per PROFILE, not per bundle: two grids on one page are two different lists, and useDashboardLayout - // already paid for that lesson — a shared key made one caller inherit another's saved layout. +/** + * ★ RESTORED AT SETUP, NOT AT MOUNT, AND RE-READ IF THE KEY ARRIVES LATE. + * + * Restoring in onMounted runs AFTER first paint, so a returning reader who chose 2 columns saw the + * auto layout painted and then snap — a shift suffered only by the reader whose preference we were + * trying to honour. sr found that while deciding they could not read this value for lazy-loading, + * which is also why it matters to them: at first paint this was 'auto' for everyone. + * + * But a setup-only read is the opposite bug, and sr caught that too. perRowKey is derived from + * cfg.profile, which comes from the profile-config ATTRIBUTE, and a host can set that after the + * element upgrades — the generated pages do createElement, setAttribute, appendChild in that order. + * So at setup the key may still be 'default', and a setup-only read would restore the wrong + * profile's value and never correct itself. That is the shared-key failure useDashboardLayout + * already paid for once. + * + * So: read now for the first paint, and re-read if the key actually changes — but never over a + * choice the reader has since made by hand. ONE restore path, not two. + */ +let perRowTouched = false +function restorePerRow() { try { const saved = localStorage.getItem(perRowKey.value) if (saved && PER_ROW_OPTIONS.includes(saved)) perRow.value = saved - } catch (_) { /* private mode / blocked storage: the default is correct, not an error */ } + } catch (_) { /* private mode, blocked storage, or no window at all: the default is correct, not an error */ } +} +restorePerRow() +watch(perRowKey, (next, prev) => { if (next !== prev && !perRowTouched) restorePerRow() }) +watch(perRow, (v) => { + perRowTouched = true + try { localStorage.setItem(perRowKey.value, v) } catch (_) {} }) -watch(perRow, (v) => { try { localStorage.setItem(perRowKey.value, v) } catch (_) {} }) /** Auto contributes NOTHING, so the stylesheet keeps its own rule. */ const gridStyle = computed(() => (perRow.value === 'auto' ? null @@ -913,6 +935,24 @@ function vocabulary(field) { return [...seen].sort() } +/** + * ★ THE WINDOW HANDLE IS RELEASED ON UNMOUNT, AND ONLY IF IT IS STILL OURS. + * + * window.__peopleGroupsGridVocabulary was set on mount and never cleared, so it held a reference + * into this app for as long as the page lived — every unmounted grid stayed reachable. The element + * handle beside it (el.__vocabulary) needs no teardown: it dies with the element that carries it. + * + * The identity check is the part that matters. This grid can appear more than once on a page, and + * the last mount wins the global — so a plain delete on the FIRST grid's unmount would strip the + * SECOND, live, grid's handle and break whatever reads it, with no error. Clearing a shared global + * is only safe while you can prove you are still the one who set it. + */ +onUnmounted(() => { + if (typeof window !== 'undefined' && window.__peopleGroupsGridVocabulary === vocabulary) { + delete window.__peopleGroupsGridVocabulary + } +}) + onMounted(() => { const el = hostEl() if (el) el.__vocabulary = vocabulary @@ -1195,7 +1235,12 @@ onMounted(() => { letterbox to a 240x240 square: ~2x the visible area, and the face is no longer cropped to a band. */ .grid.uupgs-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; } /* Top-right, above the grid it controls. Logical inline-end so it mirrors under RTL. */ -.pgg-gridbar { display: flex; justify-content: flex-end; margin-bottom: 8px; } +/* ★ INSET FROM THE CONTENT EDGE, not just from the viewport. .pgg-root already pads 16px, so the + control was landing exactly level with the rightmost card's edge — technically inside the + padding and still reading as flush, because the eye compares it to the card grid below it + rather than to the plugin's border. The extra inline-end gives it room against that edge. + Logical property, so it is the correct side under RTL without a second rule. */ +.pgg-gridbar { display: flex; justify-content: flex-end; margin-bottom: 8px; padding-inline-end: 8px; } .pgg-perrow { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--mut); } .pgg-perrow select { font: inherit; color: var(--ink); background: var(--card); border: 1px solid var(--line); border-radius: 6px; padding: 2px 6px; } .card.uupg__card { diff --git a/plugin-designs/regions-dashboard/region-dashboards.vue b/plugin-designs/regions-dashboard/region-dashboards.vue index e7f12782c..7a1bec9de 100644 --- a/plugin-designs/regions-dashboard/region-dashboards.vue +++ b/plugin-designs/regions-dashboard/region-dashboards.vue @@ -794,6 +794,23 @@ useShadowStyles( '.rd-scroll > *{ width:calc(90% + 16px); max-width:1200px;' + ' margin-left:auto; margin-right:auto; }' + '.rd-status{ padding:var(--spacing-xl); text-align:center; color:var(--dx-muted); font-size:var(--font-size-md); }' + + + // ── ★ PRINT: LET THE DOCUMENT FLOW ONTO PAGES (Driver test round 2, #2) ────────────────────── + // "The header and footer don't show properly" has a structural cause, not a styling one. This + // page is an app shell: .rd-root is position:absolute inset:0 and .rd-scroll owns the scroll. + // On paper there is no viewport to be absolute INSIDE and no scrollbar to move, so the browser + // prints the one screenful that happens to be laid out and drops everything above and below it. + // Releasing both back into normal flow is what makes the whole dashboard printable at all. + '@media print{' + + ' .rd-root{ position:static; inset:auto; height:auto; overflow:visible; }' + + ' .rd-scroll{ overflow:visible; height:auto; max-height:none; padding:0; }' + + // Keep a heading with the block it introduces rather than orphaned at a page foot. + ' .rd-head, .rd-stats, .rd-mapblock, .rd-section{ break-inside:avoid; }' + + ' .rd-h2{ break-after:avoid; }' + + // Controls that only do something under a pointer. The back-to-top arrow is the clearest case: + // on paper it is a circle with an arrow in it and nothing to scroll. + ' .rd-chooser, .btt{ display:none !important; }' + + '}' + '.rd-status.rd-failed{ font-weight:600; }' + // ── head: RegionDetail.vue:47-51, a .stack--xs (7.5px) block, centred ── @@ -843,7 +860,20 @@ useShadowStyles( // ── .region-stats: RegionDetail.vue's scoped block. The GRID stays here and the CARD went to the // library, deliberately: how many stats there are and how they wrap is this page's decision, // while the look of one stat is the reusable part. See library/components/regions/StatCard.vue. - '.rd-stats{ display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));' + + // ★ auto-FILL WITH A CAPPED TRACK MINIMUM. Driver test round 2: the Population card — the LAST + // of four — was centred in a box four times too wide on a tablet. Cause: auto-FIT collapses the + // empty tracks, so at 3 columns the lone card in row 2 stretched across the whole row. Desktop + // fits all four, which is why only desktop looked right. + // auto-fill alone fixes that and breaks desktop: at 1200px it makes SIX tracks for four cards, + // leaving two empty on the right and squeezing the cards to their 180px floor (dx-shepherd). + // So the track minimum is also capped at a quarter of the row: at most four tracks ever, and the + // orphan is never stretched. Measured at 1200/1000/900/800/768/700/600/500/390 — four columns + // down to 800, three to 600, two below, no empty tracks at any of them. + // ⚠ THIS NOW DIFFERS FROM dx-life, deliberately. Theirs is the same auto-fit rule + // (RegionDetail.vue:176) and stretches the same card; the Driver reported it, and dx-shepherd is + // telling him it diverges. + '.rd-stats{ display:grid;' + + ' grid-template-columns:repeat(auto-fill, minmax(max(180px, calc((100% - 3 * var(--spacing-md)) / 4)), 1fr));' + ' gap:var(--spacing-md); }' + '.rd-chart{ padding:var(--spacing-lg) clamp(var(--spacing-md), 4cqw, var(--spacing-xl)); }' + // RegionDetail wraps the note and the map in a .stack--sm (13.3px). The note is their diff --git a/plugin-designs/regions-dashboard/src/RegionCountryMap.vue b/plugin-designs/regions-dashboard/src/RegionCountryMap.vue index c9e008b1e..f2e641672 100644 --- a/plugin-designs/regions-dashboard/src/RegionCountryMap.vue +++ b/plugin-designs/regions-dashboard/src/RegionCountryMap.vue @@ -715,7 +715,29 @@ function watchResize() { ro.observe(mapContainer.value) } -onBeforeUnmount(() => { if (ro) { try { ro.disconnect() } catch (_) {} } if (popup) popup.remove(); try { delete window.__rcmMap } catch (_) {} destroy() }) +/** + * ★ RELEASE EVERY GLOBAL THIS COMPONENT SETS, AS A SET — not just the one that came to mind. + * + * Two are published: __rcmMap (the live map instance, which pins the whole app — rega measured + * ~10 MB per mount) and __rcmBounds. Only the first was ever deleted, so every unmounted map left + * its bounds behind; the leak that gets fixed is the one you remember, and the set is what the + * check looks for. + * + * ★ AND BOTH DELETES ARE IDENTITY-CHECKED, for the reason the grid already needed: two of these + * maps can share a page — the regions chooser and a country map — and the second mount overwrites + * the global. An unconditional delete on the FIRST one's unmount would then strip the SECOND, + * still-live map's handle, with no error anywhere. Clearing a shared global is only safe while you + * can still prove you are the one who set it. + * + * One delete per line, deliberately: sr's check reads them as separate statements. + */ +onBeforeUnmount(() => { + if (ro) { try { ro.disconnect() } catch (_) {} } + if (popup) popup.remove() + try { if (typeof window !== 'undefined' && window.__rcmMap === map.value) delete window.__rcmMap } catch (_) {} + try { if (typeof window !== 'undefined' && window.__rcmBounds === props.bounds) delete window.__rcmBounds } catch (_) {} + destroy() +}) watch(() => [props.countryCodes, props.bounds, props.center, props.zoom, props.points, props.colorMode, props.highlightRegion], applySubject, { deep: true }) @@ -731,6 +753,27 @@ useShadowStyles( 'touch-action:pan-y;pointer-events:auto;background:transparent}' + '.map-scroll-edge--left{left:0}' + '.map-scroll-edge--right{right:0}' + + + // ── ★ PRINT: THE LEGEND GOES BESIDE THE MAP, NOT OVER IT (Driver test round 2, #2) ────────── + // This plugin shipped with NO @media print rule at all, which is the single cause behind all + // three of his symptoms: on paper the legend stayed absolutely positioned ON the map, the map + // kept a 780px min-height and a 16/9 ratio that no page can hold, and the interactive chrome + // printed along with it. A page that was never styled for print does not fail loudly; it just + // prints the screen. + // + // .rcm__legend is a SIBLING of .rcm__canvas inside .rcm, so putting it beside the map is a + // matter of letting it back into flow rather than restructuring anything: .rcm becomes a row, + // the canvas takes the remaining width, and the legend takes its natural width. + '@media print{' + + ' .rcm{ display:flex; align-items:flex-start; gap:12px; min-height:0; aspect-ratio:auto; height:auto; break-inside:avoid; }' + + ' .rcm__canvas{ flex:1 1 auto; height:12cm; }' + + // Static, so it sits in the row instead of floating over the canvas. Capped so a long legend + // cannot squeeze the map it is explaining down to a strip. + ' .rcm__legend{ position:static; inset:auto; flex:0 0 auto; max-width:38%; background:none; box-shadow:none; }' + + // Chrome that only means something to a pointer. The scroll strips are invisible on screen and + // would print as two empty 40px columns beside the map. + ' .map-scroll-edge, .mapboxgl-ctrl-group, .maplibregl-ctrl-group, .mapboxgl-ctrl-attrib-button, .maplibregl-ctrl-attrib-button{ display:none !important; }' + + '}' + // ★ THE SCROLL STRIPS WERE SWALLOWING THE MAP CONTROLS (Driver, on Mapbox): zoom in, zoom out // and fullscreen could not be clicked at all. The strips are 40px wide, full height, // pointer-events:auto and z-index:2 — and BOTH engines place their control groups in the very diff --git a/public/dx-maps/assets/images/worldmap.svg b/public/dx-maps/assets/images/worldmap.svg index 90ad740df..acb6af9a0 100644 --- a/public/dx-maps/assets/images/worldmap.svg +++ b/public/dx-maps/assets/images/worldmap.svg @@ -1,402 +1 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/public/dx-maps/big-picture/big-picture.js b/public/dx-maps/big-picture/big-picture.js index 30dd0e0a3..3e4550493 100644 --- a/public/dx-maps/big-picture/big-picture.js +++ b/public/dx-maps/big-picture/big-picture.js @@ -1,38 +1,38 @@ -(function(){"use strict";var Kn=typeof document<"u"?document.currentScript:null;/** +(function(){"use strict";var Jn=typeof document<"u"?document.currentScript:null;/** * @vue/shared v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function Xn(e){const t=Object.create(null);for(const o of e.split(","))t[o]=1;return o=>o in t}const fe={},co=[],_t=()=>{},sa=()=>!1,on=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),nn=e=>e.startsWith("onUpdate:"),Se=Object.assign,Yn=(e,t)=>{const o=e.indexOf(t);o>-1&&e.splice(o,1)},_l=Object.prototype.hasOwnProperty,de=(e,t)=>_l.call(e,t),Y=Array.isArray,Bt=e=>xo(e)==="[object Map]",Jt=e=>xo(e)==="[object Set]",aa=e=>xo(e)==="[object Date]",Q=e=>typeof e=="function",we=e=>typeof e=="string",ft=e=>typeof e=="symbol",ge=e=>e!==null&&typeof e=="object",ra=e=>(ge(e)||Q(e))&&Q(e.then)&&Q(e.catch),ia=Object.prototype.toString,xo=e=>ia.call(e),fl=e=>xo(e).slice(8,-1),sn=e=>xo(e)==="[object Object]",Jn=e=>we(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Ao=Xn(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),an=e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))},$l=/-\w/g,Xe=an(e=>e.replace($l,t=>t.slice(1).toUpperCase())),hl=/\B([A-Z])/g,tt=an(e=>e.replace(hl,"-$1").toLowerCase()),la=an(e=>e.charAt(0).toUpperCase()+e.slice(1)),Zn=an(e=>e?`on${la(e)}`:""),$t=(e,t)=>!Object.is(e,t),rn=(e,...t)=>{for(let o=0;o{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:o})},ua=e=>{const t=parseFloat(e);return isNaN(t)?e:t},pa=e=>{const t=we(e)?Number(e):NaN;return isNaN(t)?e:t};let da;const ln=()=>da||(da=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Tt(e){if(Y(e)){const t={};for(let o=0;o{if(o){const n=o.split(bl);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function cn(e){let t="";if(we(e))t=e;else if(Y(e))for(let o=0;oUt(o,t))}const fa=e=>!!(e&&e.__v_isRef===!0),$e=e=>we(e)?e:e==null?"":Y(e)||ge(e)&&(e.toString===ia||!Q(e.toString))?fa(e)?$e(e.value):JSON.stringify(e,$a,2):String(e),$a=(e,t)=>fa(t)?$a(e,t.value):Bt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[n,s],a)=>(o[Qn(n,a)+" =>"]=s,o),{})}:Jt(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>Qn(o))}:ft(t)?Qn(t):ge(t)&&!Y(t)&&!sn(t)?String(t):t,Qn=(e,t="")=>{var o;return ft(e)?`Symbol(${(o=e.description)!=null?o:t})`:e};/** +**/function Zn(e){const t=Object.create(null);for(const o of e.split(","))t[o]=1;return o=>o in t}const me={},uo=[],ft=()=>{},ra=()=>!1,sn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),an=e=>e.startsWith("onUpdate:"),Ee=Object.assign,Qn=(e,t)=>{const o=e.indexOf(t);o>-1&&e.splice(o,1)},$l=Object.prototype.hasOwnProperty,_e=(e,t)=>$l.call(e,t),Z=Array.isArray,Bt=e=>xo(e)==="[object Map]",Jt=e=>xo(e)==="[object Set]",ia=e=>xo(e)==="[object Date]",te=e=>typeof e=="function",Se=e=>typeof e=="string",$t=e=>typeof e=="symbol",$e=e=>e!==null&&typeof e=="object",la=e=>($e(e)||te(e))&&te(e.then)&&te(e.catch),ca=Object.prototype.toString,xo=e=>ca.call(e),hl=e=>xo(e).slice(8,-1),rn=e=>xo(e)==="[object Object]",es=e=>Se(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Ao=Zn(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),ln=e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))},ml=/-\w/g,Ve=ln(e=>e.replace(ml,t=>t.slice(1).toUpperCase())),bl=/\B([A-Z])/g,ot=ln(e=>e.replace(bl,"-$1").toLowerCase()),ua=ln(e=>e.charAt(0).toUpperCase()+e.slice(1)),ts=ln(e=>e?`on${ua(e)}`:""),ht=(e,t)=>!Object.is(e,t),cn=(e,...t)=>{for(let o=0;o{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:o})},da=e=>{const t=parseFloat(e);return isNaN(t)?e:t},ga=e=>{const t=Se(e)?Number(e):NaN;return isNaN(t)?e:t};let _a;const un=()=>_a||(_a=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Lt(e){if(Z(e)){const t={};for(let o=0;o{if(o){const n=o.split(vl);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function pn(e){let t="";if(Se(e))t=e;else if(Z(e))for(let o=0;oUt(o,t))}const ha=e=>!!(e&&e.__v_isRef===!0),be=e=>Se(e)?e:e==null?"":Z(e)||$e(e)&&(e.toString===ca||!te(e.toString))?ha(e)?be(e.value):JSON.stringify(e,ma,2):String(e),ma=(e,t)=>ha(t)?ma(e,t.value):Bt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[n,s],a)=>(o[os(n,a)+" =>"]=s,o),{})}:Jt(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>os(o))}:$t(t)?os(t):$e(t)&&!Z(t)&&!rn(t)?String(t):t,os=(e,t="")=>{var o;return $t(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 Oe;class Al{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&&Oe&&(Oe.active?(this.parent=Oe,this.index=(Oe.scopes||(Oe.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;t0&&--this._on===0){if(Oe===this)Oe=this.prevScope;else{let t=Oe;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;o0)return;if(Lo){let t=Lo;for(Lo=void 0;t;){const o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;So;){let t=So;for(So=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 ya(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function va(e){let t,o=e.depsTail,n=o;for(;n;){const s=n.prevDep;n.version===-1?(n===o&&(o=s),ss(n),Ll(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=s}e.deps=t,e.depsTail=o}function ns(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(wa(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function wa(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===To)||(e.globalVersion=To,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!ns(e))))return;e.flags|=2;const t=e.dep,o=me,n=it;me=e,it=!0;try{ya(e);const s=e.fn(e._value);(t.version===0||$t(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{me=o,it=n,va(e),e.flags&=-3}}function ss(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 a=o.computed.deps;a;a=a.nextDep)ss(a,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function Ll(e){const{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}let it=!0;const ka=[];function ht(){ka.push(it),it=!1}function mt(){const e=ka.pop();it=e===void 0?!0:e}function xa(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const o=me;me=void 0;try{t()}finally{me=o}}}let To=0;class Tl{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 as{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(!me||!it||me===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==me)o=this.activeLink=new Tl(me,this),me.deps?(o.prevDep=me.depsTail,me.depsTail.nextDep=o,me.depsTail=o):me.deps=me.depsTail=o,Aa(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=me.depsTail,o.nextDep=void 0,me.depsTail.nextDep=o,me.depsTail=o,me.deps===o&&(me.deps=n)}return o}trigger(t){this.version++,To++,this.notify(t)}notify(t){ts();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{os()}}}function Aa(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)Aa(n)}const o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}const rs=new WeakMap,Zt=Symbol(""),is=Symbol(""),Co=Symbol("");function ze(e,t,o){if(it&&me){let n=rs.get(e);n||rs.set(e,n=new Map);let s=n.get(o);s||(n.set(o,s=new as),s.map=n,s.key=o),s.track()}}function Ct(e,t,o,n,s,a){const r=rs.get(e);if(!r){To++;return}const i=l=>{l&&l.trigger()};if(ts(),t==="clear")r.forEach(i);else{const l=Y(e),p=l&&Jn(o);if(l&&o==="length"){const d=Number(n);r.forEach((f,b)=>{(b==="length"||b===Co||!ft(b)&&b>=d)&&i(f)})}else switch((o!==void 0||r.has(void 0))&&i(r.get(o)),p&&i(r.get(Co)),t){case"add":l?p&&i(r.get("length")):(i(r.get(Zt)),Bt(e)&&i(r.get(is)));break;case"delete":l||(i(r.get(Zt)),Bt(e)&&i(r.get(is)));break;case"set":Bt(e)&&i(r.get(Zt));break}}os()}function uo(e){const t=ue(e);return t===e?t:(ze(t,"iterate",Co),ot(e)?t:t.map(lt))}function un(e){return ze(e=ue(e),"iterate",Co),e}function bt(e,t){return Pt(e)?go(Qt(e)?lt(t):t):lt(t)}const Cl={__proto__:null,[Symbol.iterator](){return ls(this,Symbol.iterator,e=>bt(this,e))},concat(...e){return uo(this).concat(...e.map(t=>Y(t)?uo(t):t))},entries(){return ls(this,"entries",e=>(e[1]=bt(this,e[1]),e))},every(e,t){return Et(this,"every",e,t,void 0,arguments)},filter(e,t){return Et(this,"filter",e,t,o=>o.map(n=>bt(this,n)),arguments)},find(e,t){return Et(this,"find",e,t,o=>bt(this,o),arguments)},findIndex(e,t){return Et(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Et(this,"findLast",e,t,o=>bt(this,o),arguments)},findLastIndex(e,t){return Et(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Et(this,"forEach",e,t,void 0,arguments)},includes(...e){return cs(this,"includes",e)},indexOf(...e){return cs(this,"indexOf",e)},join(e){return uo(this).join(e)},lastIndexOf(...e){return cs(this,"lastIndexOf",e)},map(e,t){return Et(this,"map",e,t,void 0,arguments)},pop(){return Eo(this,"pop")},push(...e){return Eo(this,"push",e)},reduce(e,...t){return Sa(this,"reduce",e,t)},reduceRight(e,...t){return Sa(this,"reduceRight",e,t)},shift(){return Eo(this,"shift")},some(e,t){return Et(this,"some",e,t,void 0,arguments)},splice(...e){return Eo(this,"splice",e)},toReversed(){return uo(this).toReversed()},toSorted(e){return uo(this).toSorted(e)},toSpliced(...e){return uo(this).toSpliced(...e)},unshift(...e){return Eo(this,"unshift",e)},values(){return ls(this,"values",e=>bt(this,e))}};function ls(e,t,o){const n=un(e),s=n[t]();return n!==e&&!ot(e)&&(s._next=s.next,s.next=()=>{const a=s._next();return a.done||(a.value=o(a.value)),a}),s}const El=Array.prototype;function Et(e,t,o,n,s,a){const r=un(e),i=r!==e&&!ot(e),l=r[t];if(l!==El[t]){const f=l.apply(e,a);return i?lt(f):f}let p=o;r!==e&&(i?p=function(f,b){return o.call(this,bt(e,f),b,e)}:o.length>2&&(p=function(f,b){return o.call(this,f,b,e)}));const d=l.call(r,p,n);return i&&s?s(d):d}function Sa(e,t,o,n){const s=un(e),a=s!==e&&!ot(e);let r=o,i=!1;s!==e&&(a?(i=n.length===0,r=function(p,d,f){return i&&(i=!1,p=bt(e,p)),o.call(this,p,bt(e,d),f,e)}):o.length>3&&(r=function(p,d,f){return o.call(this,p,d,f,e)}));const l=s[t](r,...n);return i?bt(e,l):l}function cs(e,t,o){const n=ue(e);ze(n,"iterate",Co);const s=n[t](...o);return(s===-1||s===!1)&&ds(o[0])?(o[0]=ue(o[0]),n[t](...o)):s}function Eo(e,t,o=[]){ht(),ts();const n=ue(e)[t].apply(e,o);return os(),mt(),n}const Pl=Xn("__proto__,__v_isRef,__isVue"),La=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ft));function Ml(e){ft(e)||(e=String(e));const t=ue(this);return ze(t,"has",e),t.hasOwnProperty(e)}class Ta{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,a=this._isShallow;if(o==="__v_isReactive")return!s;if(o==="__v_isReadonly")return s;if(o==="__v_isShallow")return a;if(o==="__v_raw")return n===(s?a?Na:Ra:a?Ma:Pa).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const r=Y(t);if(!s){let l;if(r&&(l=Cl[o]))return l;if(o==="hasOwnProperty")return Ml}const i=Reflect.get(t,o,Ie(t)?t:n);if((ft(o)?La.has(o):Pl(o))||(s||ze(t,"get",o),a))return i;if(Ie(i)){const l=r&&Jn(o)?i:i.value;return s&&ge(l)?ps(l):l}return ge(i)?s?ps(i):po(i):i}}class Ca extends Ta{constructor(t=!1){super(!1,t)}set(t,o,n,s){let a=t[o];const r=Y(t)&&Jn(o);if(!this._isShallow){const p=Pt(a);if(!ot(n)&&!Pt(n)&&(a=ue(a),n=ue(n)),!r&&Ie(a)&&!Ie(n))return p||(a.value=n),!0}const i=r?Number(o)e,pn=e=>Reflect.getPrototypeOf(e);function Il(e,t,o){return function(...n){const s=this.__v_raw,a=ue(s),r=Bt(a),i=e==="entries"||e===Symbol.iterator&&r,l=e==="keys"&&r,p=s[e](...n),d=o?us:t?go:lt;return!t&&ze(a,"iterate",l?is:Zt),Se(Object.create(p),{next(){const{value:f,done:b}=p.next();return b?{value:f,done:b}:{value:i?[d(f[0]),d(f[1])]:d(f),done:b}}})}}function dn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Dl(e,t){const o={get(s){const a=this.__v_raw,r=ue(a),i=ue(s);e||($t(s,i)&&ze(r,"get",s),ze(r,"get",i));const{has:l}=pn(r),p=t?us:e?go:lt;if(l.call(r,s))return p(a.get(s));if(l.call(r,i))return p(a.get(i));a!==r&&a.get(s)},get size(){const s=this.__v_raw;return!e&&ze(ue(s),"iterate",Zt),s.size},has(s){const a=this.__v_raw,r=ue(a),i=ue(s);return e||($t(s,i)&&ze(r,"has",s),ze(r,"has",i)),s===i?a.has(s):a.has(s)||a.has(i)},forEach(s,a){const r=this,i=r.__v_raw,l=ue(i),p=t?us:e?go:lt;return!e&&ze(l,"iterate",Zt),i.forEach((d,f)=>s.call(a,p(d),p(f),r))}};return Se(o,e?{add:dn("add"),set:dn("set"),delete:dn("delete"),clear:dn("clear")}:{add(s){const a=ue(this),r=pn(a),i=ue(s),l=!t&&!ot(s)&&!Pt(s)?i:s;return r.has.call(a,l)||$t(s,l)&&r.has.call(a,s)||$t(i,l)&&r.has.call(a,i)||(a.add(l),Ct(a,"add",l,l)),this},set(s,a){!t&&!ot(a)&&!Pt(a)&&(a=ue(a));const r=ue(this),{has:i,get:l}=pn(r);let p=i.call(r,s);p||(s=ue(s),p=i.call(r,s));const d=l.call(r,s);return r.set(s,a),p?$t(a,d)&&Ct(r,"set",s,a):Ct(r,"add",s,a),this},delete(s){const a=ue(this),{has:r,get:i}=pn(a);let l=r.call(a,s);l||(s=ue(s),l=r.call(a,s)),i&&i.call(a,s);const p=a.delete(s);return l&&Ct(a,"delete",s,void 0),p},clear(){const s=ue(this),a=s.size!==0,r=s.clear();return a&&Ct(s,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(s=>{o[s]=Il(s,e,t)}),o}function gn(e,t){const o=Dl(e,t);return(n,s,a)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?n:Reflect.get(de(o,s)&&s in n?o:n,s,a)}const zl={get:gn(!1,!1)},Hl={get:gn(!1,!0)},jl={get:gn(!0,!1)},Bl={get:gn(!0,!0)},Pa=new WeakMap,Ma=new WeakMap,Ra=new WeakMap,Na=new WeakMap;function Ul(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function po(e){return Pt(e)?e:_n(e,!1,Rl,zl,Pa)}function ql(e){return _n(e,!1,Fl,Hl,Ma)}function ps(e){return _n(e,!0,Nl,jl,Ra)}function d$(e){return _n(e,!0,Ol,Bl,Na)}function _n(e,t,o,n,s){if(!ge(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const a=s.get(e);if(a)return a;const r=Ul(fl(e));if(r===0)return e;const i=new Proxy(e,r===2?n:o);return s.set(e,i),i}function Qt(e){return Pt(e)?Qt(e.__v_raw):!!(e&&e.__v_isReactive)}function Pt(e){return!!(e&&e.__v_isReadonly)}function ot(e){return!!(e&&e.__v_isShallow)}function ds(e){return e?!!e.__v_raw:!1}function ue(e){const t=e&&e.__v_raw;return t?ue(t):e}function Vl(e){return!de(e,"__v_skip")&&Object.isExtensible(e)&&ca(e,"__v_skip",!0),e}const lt=e=>ge(e)?po(e):e,go=e=>ge(e)?ps(e):e;function Ie(e){return e?e.__v_isRef===!0:!1}function be(e){return Oa(e,!1)}function Fa(e){return Oa(e,!0)}function Oa(e,t){return Ie(e)?e:new Wl(e,t)}class Wl{constructor(t,o){this.dep=new as,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=o?t:ue(t),this._value=o?t:lt(t),this.__v_isShallow=o}get value(){return this.dep.track(),this._value}set value(t){const o=this._rawValue,n=this.__v_isShallow||ot(t)||Pt(t);t=n?t:ue(t),$t(t,o)&&(this._rawValue=t,this._value=n?t:lt(t),this.dep.trigger())}}function nt(e){return Ie(e)?e.value:e}const Gl={get:(e,t,o)=>t==="__v_raw"?e:nt(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 Ia(e){return Qt(e)?e:new Proxy(e,Gl)}class Kl{constructor(t,o,n){this.fn=t,this.setter=o,this._value=void 0,this.dep=new as(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=To-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&me!==this)return ba(this,!0),!0}get value(){const t=this.dep.track();return wa(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Xl(e,t,o=!1){let n,s;return Q(e)?n=e:(n=e.get,s=e.set),new Kl(n,s,o)}const fn={},$n=new WeakMap;let eo;function Yl(e,t=!1,o=eo){if(o){let n=$n.get(o);n||$n.set(o,n=[]),n.push(e)}}function Jl(e,t,o=fe){const{immediate:n,deep:s,once:a,scheduler:r,augmentJob:i,call:l}=o,p=h=>s?h:ot(h)||s===!1||s===0?Mt(h,1):Mt(h);let d,f,b,A,O=!1,x=!1;if(Ie(e)?(f=()=>e.value,O=ot(e)):Qt(e)?(f=()=>p(e),O=!0):Y(e)?(x=!0,O=e.some(h=>Qt(h)||ot(h)),f=()=>e.map(h=>{if(Ie(h))return h.value;if(Qt(h))return p(h);if(Q(h))return l?l(h,2):h()})):Q(e)?t?f=l?()=>l(e,2):e:f=()=>{if(b){ht();try{b()}finally{mt()}}const h=eo;eo=d;try{return l?l(e,3,[A]):e(A)}finally{eo=h}}:f=_t,t&&s){const h=f,S=s===!0?1/0:s;f=()=>Mt(h(),S)}const M=Sl(),F=()=>{d.stop(),M&&M.active&&Yn(M.effects,d)};if(a&&t){const h=t;t=(...S)=>{const T=h(...S);return F(),T}}let I=x?new Array(e.length).fill(fn):fn;const v=h=>{if(!(!(d.flags&1)||!d.dirty&&!h))if(t){const S=d.run();if(h||s||O||(x?S.some((T,P)=>$t(T,I[P])):$t(S,I))){b&&b();const T=eo;eo=d;try{const P=[S,I===fn?void 0:x&&I[0]===fn?[]:I,A];I=S,l?l(t,3,P):t(...P)}finally{eo=T}}}else d.run()};return i&&i(v),d=new ha(f),d.scheduler=r?()=>r(v,!1):v,A=h=>Yl(h,!1,d),b=d.onStop=()=>{const h=$n.get(d);if(h){if(l)l(h,4);else for(const S of h)S();$n.delete(d)}},t?n?v(!0):I=d.run():r?r(v.bind(null,!0),!0):d.run(),F.pause=d.pause.bind(d),F.resume=d.resume.bind(d),F.stop=F,F}function Mt(e,t=1/0,o){if(t<=0||!ge(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,Ie(e))Mt(e.value,t,o);else if(Y(e))for(let n=0;n{Mt(n,t,o)});else if(sn(e)){for(const n in e)Mt(e[n],t,o);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&Mt(e[n],t,o)}return e}/** +**/let Oe;class Tl{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&&Oe&&(Oe.active?(this.parent=Oe,this.index=(Oe.scopes||(Oe.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;t0&&--this._on===0){if(Oe===this)Oe=this.prevScope;else{let t=Oe;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;o0)return;if(To){let t=To;for(To=void 0;t;){const o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;So;){let t=So;for(So=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 wa(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ka(e){let t,o=e.depsTail,n=o;for(;n;){const s=n.prevDep;n.version===-1?(n===o&&(o=s),is(n),Cl(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=s}e.deps=t,e.depsTail=o}function rs(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(xa(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function xa(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Lo)||(e.globalVersion=Lo,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!rs(e))))return;e.flags|=2;const t=e.dep,o=ke,n=ct;ke=e,ct=!0;try{wa(e);const s=e.fn(e._value);(t.version===0||ht(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{ke=o,ct=n,ka(e),e.flags&=-3}}function is(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 a=o.computed.deps;a;a=a.nextDep)is(a,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function Cl(e){const{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}let ct=!0;const Aa=[];function mt(){Aa.push(ct),ct=!1}function bt(){const e=Aa.pop();ct=e===void 0?!0:e}function Sa(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const o=ke;ke=void 0;try{t()}finally{ke=o}}}let Lo=0;class El{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 ls{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(!ke||!ct||ke===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==ke)o=this.activeLink=new El(ke,this),ke.deps?(o.prevDep=ke.depsTail,ke.depsTail.nextDep=o,ke.depsTail=o):ke.deps=ke.depsTail=o,Ta(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=ke.depsTail,o.nextDep=void 0,ke.depsTail.nextDep=o,ke.depsTail=o,ke.deps===o&&(ke.deps=n)}return o}trigger(t){this.version++,Lo++,this.notify(t)}notify(t){ss();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{as()}}}function Ta(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)Ta(n)}const o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}const cs=new WeakMap,Zt=Symbol(""),us=Symbol(""),Co=Symbol("");function De(e,t,o){if(ct&&ke){let n=cs.get(e);n||cs.set(e,n=new Map);let s=n.get(o);s||(n.set(o,s=new ls),s.map=n,s.key=o),s.track()}}function Ct(e,t,o,n,s,a){const r=cs.get(e);if(!r){Lo++;return}const i=l=>{l&&l.trigger()};if(ss(),t==="clear")r.forEach(i);else{const l=Z(e),p=l&&es(o);if(l&&o==="length"){const d=Number(n);r.forEach((_,m)=>{(m==="length"||m===Co||!$t(m)&&m>=d)&&i(_)})}else switch((o!==void 0||r.has(void 0))&&i(r.get(o)),p&&i(r.get(Co)),t){case"add":l?p&&i(r.get("length")):(i(r.get(Zt)),Bt(e)&&i(r.get(us)));break;case"delete":l||(i(r.get(Zt)),Bt(e)&&i(r.get(us)));break;case"set":Bt(e)&&i(r.get(Zt));break}}as()}function po(e){const t=de(e);return t===e?t:(De(t,"iterate",Co),nt(e)?t:t.map(ut))}function dn(e){return De(e=de(e),"iterate",Co),e}function yt(e,t){return Pt(e)?_o(Qt(e)?ut(t):t):ut(t)}const Pl={__proto__:null,[Symbol.iterator](){return ps(this,Symbol.iterator,e=>yt(this,e))},concat(...e){return po(this).concat(...e.map(t=>Z(t)?po(t):t))},entries(){return ps(this,"entries",e=>(e[1]=yt(this,e[1]),e))},every(e,t){return Et(this,"every",e,t,void 0,arguments)},filter(e,t){return Et(this,"filter",e,t,o=>o.map(n=>yt(this,n)),arguments)},find(e,t){return Et(this,"find",e,t,o=>yt(this,o),arguments)},findIndex(e,t){return Et(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Et(this,"findLast",e,t,o=>yt(this,o),arguments)},findLastIndex(e,t){return Et(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Et(this,"forEach",e,t,void 0,arguments)},includes(...e){return ds(this,"includes",e)},indexOf(...e){return ds(this,"indexOf",e)},join(e){return po(this).join(e)},lastIndexOf(...e){return ds(this,"lastIndexOf",e)},map(e,t){return Et(this,"map",e,t,void 0,arguments)},pop(){return Eo(this,"pop")},push(...e){return Eo(this,"push",e)},reduce(e,...t){return La(this,"reduce",e,t)},reduceRight(e,...t){return La(this,"reduceRight",e,t)},shift(){return Eo(this,"shift")},some(e,t){return Et(this,"some",e,t,void 0,arguments)},splice(...e){return Eo(this,"splice",e)},toReversed(){return po(this).toReversed()},toSorted(e){return po(this).toSorted(e)},toSpliced(...e){return po(this).toSpliced(...e)},unshift(...e){return Eo(this,"unshift",e)},values(){return ps(this,"values",e=>yt(this,e))}};function ps(e,t,o){const n=dn(e),s=n[t]();return n!==e&&!nt(e)&&(s._next=s.next,s.next=()=>{const a=s._next();return a.done||(a.value=o(a.value)),a}),s}const Ml=Array.prototype;function Et(e,t,o,n,s,a){const r=dn(e),i=r!==e&&!nt(e),l=r[t];if(l!==Ml[t]){const _=l.apply(e,a);return i?ut(_):_}let p=o;r!==e&&(i?p=function(_,m){return o.call(this,yt(e,_),m,e)}:o.length>2&&(p=function(_,m){return o.call(this,_,m,e)}));const d=l.call(r,p,n);return i&&s?s(d):d}function La(e,t,o,n){const s=dn(e),a=s!==e&&!nt(e);let r=o,i=!1;s!==e&&(a?(i=n.length===0,r=function(p,d,_){return i&&(i=!1,p=yt(e,p)),o.call(this,p,yt(e,d),_,e)}):o.length>3&&(r=function(p,d,_){return o.call(this,p,d,_,e)}));const l=s[t](r,...n);return i?yt(e,l):l}function ds(e,t,o){const n=de(e);De(n,"iterate",Co);const s=n[t](...o);return(s===-1||s===!1)&&fs(o[0])?(o[0]=de(o[0]),n[t](...o)):s}function Eo(e,t,o=[]){mt(),ss();const n=de(e)[t].apply(e,o);return as(),bt(),n}const Rl=Zn("__proto__,__v_isRef,__isVue"),Ca=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter($t));function Nl(e){$t(e)||(e=String(e));const t=de(this);return De(t,"has",e),t.hasOwnProperty(e)}class Ea{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,a=this._isShallow;if(o==="__v_isReactive")return!s;if(o==="__v_isReadonly")return s;if(o==="__v_isShallow")return a;if(o==="__v_raw")return n===(s?a?Oa:Fa:a?Na:Ra).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const r=Z(t);if(!s){let l;if(r&&(l=Pl[o]))return l;if(o==="hasOwnProperty")return Nl}const i=Reflect.get(t,o,Ie(t)?t:n);if(($t(o)?Ca.has(o):Rl(o))||(s||De(t,"get",o),a))return i;if(Ie(i)){const l=r&&es(o)?i:i.value;return s&&$e(l)?_s(l):l}return $e(i)?s?_s(i):go(i):i}}class Pa extends Ea{constructor(t=!1){super(!1,t)}set(t,o,n,s){let a=t[o];const r=Z(t)&&es(o);if(!this._isShallow){const p=Pt(a);if(!nt(n)&&!Pt(n)&&(a=de(a),n=de(n)),!r&&Ie(a)&&!Ie(n))return p||(a.value=n),!0}const i=r?Number(o)e,gn=e=>Reflect.getPrototypeOf(e);function zl(e,t,o){return function(...n){const s=this.__v_raw,a=de(s),r=Bt(a),i=e==="entries"||e===Symbol.iterator&&r,l=e==="keys"&&r,p=s[e](...n),d=o?gs:t?_o:ut;return!t&&De(a,"iterate",l?us:Zt),Ee(Object.create(p),{next(){const{value:_,done:m}=p.next();return m?{value:_,done:m}:{value:i?[d(_[0]),d(_[1])]:d(_),done:m}}})}}function _n(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Hl(e,t){const o={get(s){const a=this.__v_raw,r=de(a),i=de(s);e||(ht(s,i)&&De(r,"get",s),De(r,"get",i));const{has:l}=gn(r),p=t?gs:e?_o:ut;if(l.call(r,s))return p(a.get(s));if(l.call(r,i))return p(a.get(i));a!==r&&a.get(s)},get size(){const s=this.__v_raw;return!e&&De(de(s),"iterate",Zt),s.size},has(s){const a=this.__v_raw,r=de(a),i=de(s);return e||(ht(s,i)&&De(r,"has",s),De(r,"has",i)),s===i?a.has(s):a.has(s)||a.has(i)},forEach(s,a){const r=this,i=r.__v_raw,l=de(i),p=t?gs:e?_o:ut;return!e&&De(l,"iterate",Zt),i.forEach((d,_)=>s.call(a,p(d),p(_),r))}};return Ee(o,e?{add:_n("add"),set:_n("set"),delete:_n("delete"),clear:_n("clear")}:{add(s){const a=de(this),r=gn(a),i=de(s),l=!t&&!nt(s)&&!Pt(s)?i:s;return r.has.call(a,l)||ht(s,l)&&r.has.call(a,s)||ht(i,l)&&r.has.call(a,i)||(a.add(l),Ct(a,"add",l,l)),this},set(s,a){!t&&!nt(a)&&!Pt(a)&&(a=de(a));const r=de(this),{has:i,get:l}=gn(r);let p=i.call(r,s);p||(s=de(s),p=i.call(r,s));const d=l.call(r,s);return r.set(s,a),p?ht(a,d)&&Ct(r,"set",s,a):Ct(r,"add",s,a),this},delete(s){const a=de(this),{has:r,get:i}=gn(a);let l=r.call(a,s);l||(s=de(s),l=r.call(a,s)),i&&i.call(a,s);const p=a.delete(s);return l&&Ct(a,"delete",s,void 0),p},clear(){const s=de(this),a=s.size!==0,r=s.clear();return a&&Ct(s,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(s=>{o[s]=zl(s,e,t)}),o}function fn(e,t){const o=Hl(e,t);return(n,s,a)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?n:Reflect.get(_e(o,s)&&s in n?o:n,s,a)}const jl={get:fn(!1,!1)},Bl={get:fn(!1,!0)},Ul={get:fn(!0,!1)},ql={get:fn(!0,!0)},Ra=new WeakMap,Na=new WeakMap,Fa=new WeakMap,Oa=new WeakMap;function Vl(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function go(e){return Pt(e)?e:$n(e,!1,Fl,jl,Ra)}function Wl(e){return $n(e,!1,Il,Bl,Na)}function _s(e){return $n(e,!0,Ol,Ul,Fa)}function _$(e){return $n(e,!0,Dl,ql,Oa)}function $n(e,t,o,n,s){if(!$e(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const a=s.get(e);if(a)return a;const r=Vl(hl(e));if(r===0)return e;const i=new Proxy(e,r===2?n:o);return s.set(e,i),i}function Qt(e){return Pt(e)?Qt(e.__v_raw):!!(e&&e.__v_isReactive)}function Pt(e){return!!(e&&e.__v_isReadonly)}function nt(e){return!!(e&&e.__v_isShallow)}function fs(e){return e?!!e.__v_raw:!1}function de(e){const t=e&&e.__v_raw;return t?de(t):e}function Gl(e){return!_e(e,"__v_skip")&&Object.isExtensible(e)&&pa(e,"__v_skip",!0),e}const ut=e=>$e(e)?go(e):e,_o=e=>$e(e)?_s(e):e;function Ie(e){return e?e.__v_isRef===!0:!1}function xe(e){return Da(e,!1)}function Ia(e){return Da(e,!0)}function Da(e,t){return Ie(e)?e:new Kl(e,t)}class Kl{constructor(t,o){this.dep=new ls,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=o?t:de(t),this._value=o?t:ut(t),this.__v_isShallow=o}get value(){return this.dep.track(),this._value}set value(t){const o=this._rawValue,n=this.__v_isShallow||nt(t)||Pt(t);t=n?t:de(t),ht(t,o)&&(this._rawValue=t,this._value=n?t:ut(t),this.dep.trigger())}}function st(e){return Ie(e)?e.value:e}const Xl={get:(e,t,o)=>t==="__v_raw"?e:st(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 za(e){return Qt(e)?e:new Proxy(e,Xl)}class Yl{constructor(t,o,n){this.fn=t,this.setter=o,this._value=void 0,this.dep=new ls(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Lo-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&ke!==this)return va(this,!0),!0}get value(){const t=this.dep.track();return xa(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Jl(e,t,o=!1){let n,s;return te(e)?n=e:(n=e.get,s=e.set),new Yl(n,s,o)}const hn={},mn=new WeakMap;let eo;function Zl(e,t=!1,o=eo){if(o){let n=mn.get(o);n||mn.set(o,n=[]),n.push(e)}}function Ql(e,t,o=me){const{immediate:n,deep:s,once:a,scheduler:r,augmentJob:i,call:l}=o,p=$=>s?$:nt($)||s===!1||s===0?Mt($,1):Mt($);let d,_,m,k,O=!1,P=!1;if(Ie(e)?(_=()=>e.value,O=nt(e)):Qt(e)?(_=()=>p(e),O=!0):Z(e)?(P=!0,O=e.some($=>Qt($)||nt($)),_=()=>e.map($=>{if(Ie($))return $.value;if(Qt($))return p($);if(te($))return l?l($,2):$()})):te(e)?t?_=l?()=>l(e,2):e:_=()=>{if(m){mt();try{m()}finally{bt()}}const $=eo;eo=d;try{return l?l(e,3,[k]):e(k)}finally{eo=$}}:_=ft,t&&s){const $=_,T=s===!0?1/0:s;_=()=>Mt($(),T)}const F=Ll(),A=()=>{d.stop(),F&&F.active&&Qn(F.effects,d)};if(a&&t){const $=t;t=(...T)=>{const x=$(...T);return A(),x}}let j=P?new Array(e.length).fill(hn):hn;const y=$=>{if(!(!(d.flags&1)||!d.dirty&&!$))if(t){const T=d.run();if($||s||O||(P?T.some((x,M)=>ht(x,j[M])):ht(T,j))){m&&m();const x=eo;eo=d;try{const M=[T,j===hn?void 0:P&&j[0]===hn?[]:j,k];j=T,l?l(t,3,M):t(...M)}finally{eo=x}}}else d.run()};return i&&i(y),d=new ba(_),d.scheduler=r?()=>r(y,!1):y,k=$=>Zl($,!1,d),m=d.onStop=()=>{const $=mn.get(d);if($){if(l)l($,4);else for(const T of $)T();mn.delete(d)}},t?n?y(!0):j=d.run():r?r(y.bind(null,!0),!0):d.run(),A.pause=d.pause.bind(d),A.resume=d.resume.bind(d),A.stop=A,A}function Mt(e,t=1/0,o){if(t<=0||!$e(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,Ie(e))Mt(e.value,t,o);else if(Z(e))for(let n=0;n{Mt(n,t,o)});else if(rn(e)){for(const n in e)Mt(e[n],t,o);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&Mt(e[n],t,o)}return e}/** * @vue/runtime-core v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const Po=[];let gs=!1;function g$(e,...t){if(gs)return;gs=!0,ht();const o=Po.length?Po[Po.length-1].component:null,n=o&&o.appContext.config.warnHandler,s=Zl();if(n)_o(n,o,11,[e+t.map(a=>{var r,i;return(i=(r=a.toString)==null?void 0:r.call(a))!=null?i:JSON.stringify(a)}).join(""),o&&o.proxy,s.map(({vnode:a})=>`at <${Pr(o,a.type)}>`).join(` +**/const Po=[];let $s=!1;function f$(e,...t){if($s)return;$s=!0,mt();const o=Po.length?Po[Po.length-1].component:null,n=o&&o.appContext.config.warnHandler,s=ec();if(n)fo(n,o,11,[e+t.map(a=>{var r,i;return(i=(r=a.toString)==null?void 0:r.call(a))!=null?i:JSON.stringify(a)}).join(""),o&&o.proxy,s.map(({vnode:a})=>`at <${Rr(o,a.type)}>`).join(` `),s]);else{const a=[`[Vue warn]: ${e}`,...t];s.length&&a.push(` -`,...Ql(s)),console.warn(...a)}mt(),gs=!1}function Zl(){let e=Po[Po.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 Ql(e){const t=[];return e.forEach((o,n)=>{t.push(...n===0?[]:[` -`],...ec(o))}),t}function ec({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:"",n=e.component?e.component.parent==null:!1,s=` at <${Pr(e.component,e.type,n)}`,a=">"+o;return e.props?[s,...tc(e.props),a]:[s+a]}function tc(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach(n=>{t.push(...Da(n,e[n]))}),o.length>3&&t.push(" ..."),t}function Da(e,t,o){return we(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?o?t:[`${e}=${t}`]:Ie(t)?(t=Da(e,ue(t.value),!0),o?t:[`${e}=Ref<`,t,">"]):Q(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=ue(t),o?t:[`${e}=`,t])}function _o(e,t,o,n){try{return n?e(...n):e()}catch(s){hn(s,t,o)}}function ct(e,t,o,n){if(Q(e)){const s=_o(e,t,o,n);return s&&ra(s)&&s.catch(a=>{hn(a,t,o)}),s}if(Y(e)){const s=[];for(let a=0;a>>1,s=Be[n],a=Ro(s);a=Ro(o)?Be.push(e):Be.splice(nc(t),0,e),e.flags|=1,Ha()}}function Ha(){mn||(mn=za.then(Ua))}function sc(e){if(!Y(e))qt&&e.id===-1?qt.splice($o+1,0,e):e.flags&1||(fo.push(e),e.flags|=1);else for(let t=0;tRo(o)-Ro(n));if(fo.length=0,qt){for(let o=0;oe.id==null?e.flags&2?-1:1/0:e.id;function Ua(e){try{for(yt=0;yt{n._d&&Sn(-1);const a=bn(t),r=no.length;let i;try{i=e(...s)}finally{for(let l=no.length;l>r;l--)xr();bn(a),n._d&&Sn(1)}return i};return n._n=!0,n._c=!0,n._d=!0,n}function rc(e,t){if(st===null)return e;const o=Pn(st),n=e.dirs||(e.dirs=[]);for(let s=0;s1)return o&&Q(t)?t.call(n&&n.proxy):t}}const lc=Symbol.for("v-scx"),cc=()=>No(lc);function uc(e,t){return fs(e,null,t)}function Qe(e,t,o){return fs(e,t,o)}function fs(e,t,o=fe){const{immediate:n,deep:s,flush:a,once:r}=o,i=Se({},o),l=t&&n||!t&&a!=="post";let p;if(Vo){if(a==="sync"){const A=cc();p=A.__watcherHandles||(A.__watcherHandles=[])}else if(!l){const A=()=>{};return A.stop=_t,A.resume=_t,A.pause=_t,A}}const d=qe;i.call=(A,O,x)=>ct(A,d,O,x);let f=!1;a==="post"?i.scheduler=A=>{Ye(A,d&&d.suspense)}:a!=="sync"&&(f=!0,i.scheduler=(A,O)=>{O?A():_s(A)}),i.augmentJob=A=>{t&&(A.flags|=4),f&&(A.flags|=2,d&&(A.id=d.uid,A.i=d))};const b=Jl(e,t,i);return Vo&&(p?p.push(b):l&&b()),b}function pc(e,t,o){const n=this.proxy,s=we(e)?e.includes(".")?Va(n,e):()=>n[e]:e.bind(n,n);let a;Q(t)?a=t:(a=t.handler,o=t);const r=qo(this),i=fs(s,a.bind(n),o);return r(),i}function Va(e,t){const o=t.split(".");return()=>{let n=e;for(let s=0;se.__isTeleport,$s=Symbol("_leaveCb");function gc(e){let t=e[0];if(e.length>1){for(const o of e)if(o.type!==Nt){t=o;break}}return t}function Wa(e){if(!ms(e))return yn(e.type)&&e.children?gc(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&&Q(o.default))return o.default()}}function hs(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const o=e.component.subTree;hs(yn(o.type)&&Wa(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 vn(e,t){return Q(e)?Se({name:e.name},t,{setup:e}):e}function Ga(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Ka(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}const wn=new WeakMap;function Fo(e,t,o,n,s=!1){if(Y(e)){e.forEach((x,M)=>Fo(x,t&&(Y(t)?t[M]:t),o,n,s));return}if(Oo(n)&&!s){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&Fo(e,t,o,n.component.subTree);return}const a=n.shapeFlag&4?Pn(n.component):n.el,r=s?null:a,{i,r:l}=e,p=t&&t.r,d=i.refs===fe?i.refs={}:i.refs,f=i.setupState,b=ue(f),A=f===fe?sa:x=>Ka(d,x)?!1:de(b,x),O=(x,M)=>!(M&&Ka(d,M));if(p!=null&&p!==l){if(Xa(t),we(p))d[p]=null,A(p)&&(f[p]=null);else if(Ie(p)){const x=t;O(p,x.k)&&(p.value=null),x.k&&(d[x.k]=null)}}if(Q(l))_o(l,i,12,[r,d]);else{const x=we(l),M=Ie(l);if(x||M){const F=()=>{if(e.f){const I=x?A(l)?f[l]:d[l]:O()||!e.k?l.value:d[e.k];if(s)Y(I)&&Yn(I,a);else if(Y(I))I.includes(a)||I.push(a);else if(x)d[l]=[a],A(l)&&(f[l]=d[l]);else{const v=[a];O(l,e.k)&&(l.value=v),e.k&&(d[e.k]=v)}}else x?(d[l]=r,A(l)&&(f[l]=r)):M&&(O(l,e.k)&&(l.value=r),e.k&&(d[e.k]=r))};if(r){const I=()=>{F(),wn.delete(e)};I.id=-1,wn.set(e,I),Ye(I,o)}else Xa(e),F()}}}function Xa(e){const t=wn.get(e);t&&(t.flags|=8,wn.delete(e))}ln().requestIdleCallback,ln().cancelIdleCallback;const Oo=e=>!!e.type.__asyncLoader,ms=e=>e.type.__isKeepAlive;function _c(e,t){Ya(e,"a",t)}function fc(e,t){Ya(e,"da",t)}function Ya(e,t,o=qe){const n=e.__wdc||(e.__wdc=()=>{let s=o;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(kn(t,n,o),o){let s=o.parent;for(;s&&s.parent;)ms(s.parent.vnode)&&$c(n,t,o,s),s=s.parent}}function $c(e,t,o,n){const s=kn(t,e,n,!0);bs(()=>{Yn(n[t],s)},o)}function kn(e,t,o=qe,n=!1){if(o){const s=o[e]||(o[e]=[]),a=t.__weh||(t.__weh=(...r)=>{ht();const i=qo(o),l=ct(t,o,e,r);return i(),mt(),l});return n?s.unshift(a):s.push(a),a}}const Rt=e=>(t,o=qe)=>{(!Vo||e==="sp")&&kn(e,(...n)=>t(...n),o)},Ja=Rt("bm"),ho=Rt("m"),hc=Rt("bu"),mc=Rt("u"),Za=Rt("bum"),bs=Rt("um"),bc=Rt("sp"),yc=Rt("rtg"),vc=Rt("rtc");function wc(e,t=qe){kn("ec",e,t)}const kc=Symbol.for("v-ndc");function Io(e,t,o,n){let s;const a=o,r=Y(e);if(r||we(e)){const i=r&&Qt(e);let l=!1,p=!1;i&&(l=!ot(e),p=Pt(e),e=un(e)),s=new Array(e.length);for(let d=0,f=e.length;dt(i,l,void 0,a));else{const i=Object.keys(e);s=new Array(i.length);for(let l=0,p=i.length;le?Tr(e)?Pn(e):ys(e.parent):null,Do=Se(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=>ys(e.parent),$root:e=>ys(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>or(e),$forceUpdate:e=>e.f||(e.f=()=>{_s(e.update)}),$nextTick:e=>e.n||(e.n=Mo.bind(e.proxy)),$watch:e=>pc.bind(e)}),vs=(e,t)=>e!==fe&&!e.__isScriptSetup&&de(e,t),xc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:o,setupState:n,data:s,props:a,accessCache:r,type:i,appContext:l}=e;if(t[0]!=="$"){const b=r[t];if(b!==void 0)switch(b){case 1:return n[t];case 2:return s[t];case 4:return o[t];case 3:return a[t]}else{if(vs(n,t))return r[t]=1,n[t];if(s!==fe&&de(s,t))return r[t]=2,s[t];if(de(a,t))return r[t]=3,a[t];if(o!==fe&&de(o,t))return r[t]=4,o[t];ws&&(r[t]=0)}}const p=Do[t];let d,f;if(p)return t==="$attrs"&&ze(e.attrs,"get",""),p(e);if((d=i.__cssModules)&&(d=d[t]))return d;if(o!==fe&&de(o,t))return r[t]=4,o[t];if(f=l.config.globalProperties,de(f,t))return f[t]},set({_:e},t,o){const{data:n,setupState:s,ctx:a}=e;return vs(s,t)?(s[t]=o,!0):n!==fe&&de(n,t)?(n[t]=o,!0):de(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(a[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:n,appContext:s,props:a,type:r}},i){let l;return!!(o[i]||e!==fe&&i[0]!=="$"&&de(e,i)||vs(t,i)||de(a,i)||de(n,i)||de(Do,i)||de(s.config.globalProperties,i)||(l=r.__cssModules)&&l[i])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:de(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function Qa(e){return Y(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}let ws=!0;function Ac(e){const t=or(e),o=e.proxy,n=e.ctx;ws=!1,t.beforeCreate&&er(t.beforeCreate,e,"bc");const{data:s,computed:a,methods:r,watch:i,provide:l,inject:p,created:d,beforeMount:f,mounted:b,beforeUpdate:A,updated:O,activated:x,deactivated:M,beforeDestroy:F,beforeUnmount:I,destroyed:v,unmounted:h,render:S,renderTracked:T,renderTriggered:P,errorCaptured:z,serverPrefetch:B,expose:ce,inheritAttrs:G,components:V,directives:W,filters:Ce}=t;if(p&&Sc(p,n,null),r)for(const se in r){const le=r[se];Q(le)&&(n[se]=le.bind(o))}if(s){const se=s.call(o,o);ge(se)&&(e.data=po(se))}if(ws=!0,a)for(const se in a){const le=a[se],Ae=Q(le)?le.bind(o,o):Q(le.get)?le.get.bind(o,o):_t,Ze=!Q(le)&&Q(le.set)?le.set.bind(o):_t,ve=ee({get:Ae,set:Ze});Object.defineProperty(n,se,{enumerable:!0,configurable:!0,get:()=>ve.value,set:xe=>ve.value=xe})}if(i)for(const se in i)tr(i[se],n,o,se);if(l){const se=Q(l)?l.call(o):l;Reflect.ownKeys(se).forEach(le=>{ic(le,se[le])})}d&&er(d,e,"c");function te(se,le){Y(le)?le.forEach(Ae=>se(Ae.bind(o))):le&&se(le.bind(o))}if(te(Ja,f),te(ho,b),te(hc,A),te(mc,O),te(_c,x),te(fc,M),te(wc,z),te(vc,T),te(yc,P),te(Za,I),te(bs,h),te(bc,B),Y(ce))if(ce.length){const se=e.exposed||(e.exposed={});ce.forEach(le=>{Object.defineProperty(se,le,{get:()=>o[le],set:Ae=>o[le]=Ae,enumerable:!0})})}else e.exposed||(e.exposed={});S&&e.render===_t&&(e.render=S),G!=null&&(e.inheritAttrs=G),V&&(e.components=V),W&&(e.directives=W),B&&Ga(e)}function Sc(e,t,o=_t){Y(e)&&(e=ks(e));for(const n in e){const s=e[n];let a;ge(s)?"default"in s?a=No(s.from||n,s.default,!0):a=No(s.from||n):a=No(s),Ie(a)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>a.value,set:r=>a.value=r}):t[n]=a}}function er(e,t,o){ct(Y(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,o)}function tr(e,t,o,n){let s=n.includes(".")?Va(o,n):()=>o[n];if(we(e)){const a=t[e];Q(a)&&Qe(s,a)}else if(Q(e))Qe(s,e.bind(o));else if(ge(e))if(Y(e))e.forEach(a=>tr(a,t,o,n));else{const a=Q(e.handler)?e.handler.bind(o):t[e.handler];Q(a)&&Qe(s,a,e)}}function or(e){const t=e.type,{mixins:o,extends:n}=t,{mixins:s,optionsCache:a,config:{optionMergeStrategies:r}}=e.appContext,i=a.get(t);let l;return i?l=i:!s.length&&!o&&!n?l=t:(l={},s.length&&s.forEach(p=>xn(l,p,r,!0)),xn(l,t,r)),ge(t)&&a.set(t,l),l}function xn(e,t,o,n=!1){const{mixins:s,extends:a}=t;a&&xn(e,a,o,!0),s&&s.forEach(r=>xn(e,r,o,!0));for(const r in t)if(!(n&&r==="expose")){const i=Lc[r]||o&&o[r];e[r]=i?i(e[r],t[r]):t[r]}return e}const Lc={data:nr,props:sr,emits:sr,methods:zo,computed:zo,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:zo,directives:zo,watch:Cc,provide:nr,inject:Tc};function nr(e,t){return t?e?function(){return Se(Q(e)?e.call(this,this):e,Q(t)?t.call(this,this):t)}:t:e}function Tc(e,t){return zo(ks(e),ks(t))}function ks(e){if(Y(e)){const t={};for(let o=0;ot==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Xe(t)}Modifiers`]||e[`${tt(t)}Modifiers`];function Rc(e,t,...o){if(e.isUnmounted)return;const n=e.vnode.props||fe;let s=o;const a=t.startsWith("update:"),r=a&&Mc(n,t.slice(7));r&&(r.trim&&(s=o.map(d=>we(d)?d.trim():d)),r.number&&(s=s.map(ua)));let i,l=n[i=Zn(t)]||n[i=Zn(Xe(t))];!l&&a&&(l=n[i=Zn(tt(t))]),l&&ct(l,e,6,s);const p=n[i+"Once"];if(p){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,ct(p,e,6,s)}}const Nc=new WeakMap;function rr(e,t,o=!1){const n=o?Nc:t.emitsCache,s=n.get(e);if(s!==void 0)return s;const a=e.emits;let r={},i=!1;if(!Q(e)){const l=p=>{const d=rr(p,t,!0);d&&(i=!0,Se(r,d))};!o&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!a&&!i?(ge(e)&&n.set(e,null),null):(Y(a)?a.forEach(l=>r[l]=null):Se(r,a),ge(e)&&n.set(e,r),r)}function An(e,t){return!e||!on(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),de(e,t[0].toLowerCase()+t.slice(1))||de(e,tt(t))||de(e,t))}function _$(){}function ir(e){const{type:t,vnode:o,proxy:n,withProxy:s,propsOptions:[a],slots:r,attrs:i,emit:l,render:p,renderCache:d,props:f,data:b,setupState:A,ctx:O,inheritAttrs:x}=e,M=bn(e);let F,I;try{if(o.shapeFlag&4){const h=s||n,S=h;F=vt(p.call(S,h,d,f,A,b,O)),I=i}else{const h=t;F=vt(h.length>1?h(f,{attrs:i,slots:r,emit:l}):h(f,null)),I=t.props?i:Fc(i)}}catch(h){no.length=0,hn(h,e,1),F=he(Nt)}let v=F;if(I&&x!==!1){const h=Object.keys(I),{shapeFlag:S}=v;h.length&&S&7&&(a&&h.some(nn)&&(I=Oc(I,a)),v=bo(v,I,!1,!0))}if(o.dirs&&(v=bo(v,null,!1,!0),v.dirs=v.dirs?v.dirs.concat(o.dirs):o.dirs),o.transition){const h=yn(v.type)&&Wa(v)||v;hs(h,o.transition)}return F=v,bn(M),F}const Fc=e=>{let t;for(const o in e)(o==="class"||o==="style"||on(o))&&((t||(t={}))[o]=e[o]);return t},Oc=(e,t)=>{const o={};for(const n in e)(!nn(n)||!(n.slice(9)in t))&&(o[n]=e[n]);return o};function Ic(e,t,o){const{props:n,children:s,component:a}=e,{props:r,children:i,patchFlag:l}=t,p=a.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&l>=0){if(l&1024)return!0;if(l&16)return n?lr(n,r,p):!!r;if(l&8){const d=t.dynamicProps;for(let f=0;fObject.create(ur),dr=e=>Object.getPrototypeOf(e)===ur;function zc(e,t,o,n=!1){const s={},a=pr();e.propsDefaults=Object.create(null),gr(e,t,s,a);for(const r in e.propsOptions[0])r in s||(s[r]=void 0);o?e.props=n?s:ql(s):e.type.props?e.props=s:e.props=a,e.attrs=a}function Hc(e,t,o,n){const{props:s,attrs:a,vnode:{patchFlag:r}}=e,i=ue(s),[l]=e.propsOptions;let p=!1;if((n||r>0)&&!(r&16)){if(r&8){const d=e.vnode.dynamicProps;for(let f=0;f{l=!0;const[b,A]=_r(f,t,!0);Se(r,b),A&&i.push(...A)};!o&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!a&&!l)return ge(e)&&n.set(e,co),co;if(Y(a))for(let d=0;de==="_"||e==="_ctx"||e==="$stable",Ss=e=>Y(e)?e.map(vt):[vt(e)],Bc=(e,t,o)=>{if(t._n)return t;const n=ac((...s)=>Ss(t(...s)),o);return n._c=!1,n},$r=(e,t,o)=>{const n=e._ctx;for(const s in e){if(As(s))continue;const a=e[s];if(Q(a))t[s]=Bc(s,a,n);else if(a!=null){const r=Ss(a);t[s]=()=>r}}},hr=(e,t)=>{const o=Ss(t);e.slots.default=()=>o},mr=(e,t,o)=>{for(const n in t)(o||!As(n))&&(e[n]=t[n])},Uc=(e,t,o)=>{const n=e.slots=pr();if(e.vnode.shapeFlag&32){const s=t._;s?(mr(n,t,o),o&&ca(n,"_",s,!0)):$r(t,n)}else t&&hr(e,t)},qc=(e,t,o)=>{const{vnode:n,slots:s}=e;let a=!0,r=fe;if(n.shapeFlag&32){const i=t._;i?o&&i===1?a=!1:mr(s,t,o):(a=!t.$stable,$r(t,s)),r=t}else t&&(hr(e,t),r={default:1});if(a)for(const i in s)!As(i)&&r[i]==null&&delete s[i]},Ye=Xc;function Vc(e){return Wc(e)}function Wc(e,t){const o=ln();o.__VUE__=!0;const{insert:n,remove:s,patchProp:a,createElement:r,createText:i,createComment:l,setText:p,setElementText:d,parentNode:f,nextSibling:b,setScopeId:A=_t,insertStaticContent:O}=e,x=(_,m,$,L=null,R=null,E=null,H=void 0,j=null,c=!!m.dynamicChildren)=>{if(_===m)return;_&&!Bo(_,m)&&(L=dt(_),xe(_,R,E,!0),_=null),m.patchFlag===-2&&(c=!1,m.dynamicChildren=null);const{type:u,ref:w,shapeFlag:C}=m;switch(u){case Ho:M(_,m,$,L);break;case Nt:F(_,m,$,L);break;case Ts:_==null&&I(m,$,L,H);break;case Le:V(_,m,$,L,R,E,H,j,c);break;default:C&1?S(_,m,$,L,R,E,H,j,c):C&6?W(_,m,$,L,R,E,H,j,c):(C&64||C&128)&&u.process(_,m,$,L,R,E,H,j,c,Ke)}w!=null&&R?Fo(w,_&&_.ref,E,m||_,!m):w==null&&_&&_.ref!=null&&Fo(_.ref,null,E,_,!0)},M=(_,m,$,L)=>{if(_==null)n(m.el=i(m.children),$,L);else{const R=m.el=_.el;m.children!==_.children&&p(R,m.children)}},F=(_,m,$,L)=>{_==null?n(m.el=l(m.children||""),$,L):m.el=_.el},I=(_,m,$,L)=>{[_.el,_.anchor]=O(_.children,m,$,L,_.el,_.anchor)},v=({el:_,anchor:m},$,L)=>{let R;for(;_&&_!==m;)R=b(_),n(_,$,L),_=R;n(m,$,L)},h=({el:_,anchor:m})=>{let $;for(;_&&_!==m;)$=b(_),s(_),_=$;s(m)},S=(_,m,$,L,R,E,H,j,c)=>{if(m.type==="svg"?H="svg":m.type==="math"&&(H="mathml"),_==null)T(m,$,L,R,E,H,j,c);else{const u=_.el&&_.el._isVueCE?_.el:null;try{u&&u._beginPatch(),B(_,m,R,E,H,j,c)}finally{u&&u._endPatch()}}},T=(_,m,$,L,R,E,H,j)=>{let c,u;const{props:w,shapeFlag:C,transition:U,dirs:D}=_;if(c=_.el=r(_.type,E,w&&w.is,w),C&8?d(c,_.children):C&16&&z(_.children,c,null,L,R,Ls(_,E),H,j),D&&to(_,null,L,"created"),P(c,_,_.scopeId,H,L),w){for(const g in w)g!=="value"&&!Ao(g)&&a(c,g,null,w[g],E,L);"value"in w&&a(c,"value",null,w.value,E),(u=w.onVnodeBeforeMount)&&wt(u,L,_)}D&&to(_,null,L,"beforeMount");const y=Gc(R,U);y&&U.beforeEnter(c),n(c,m,$),((u=w&&w.onVnodeMounted)||y||D)&&Ye(()=>{try{u&&wt(u,L,_),y&&U.enter(c),D&&to(_,null,L,"mounted")}finally{}},R)},P=(_,m,$,L,R)=>{if($&&A(_,$),L)for(let E=0;E{for(let u=c;u<_.length;u++){const w=_[u]=j?Ot(_[u]):vt(_[u]);x(null,w,m,$,L,R,E,H,j)}},B=(_,m,$,L,R,E,H)=>{const j=m.el=_.el;let{patchFlag:c,dynamicChildren:u,dirs:w}=m;c|=_.patchFlag&16;const C=_.props||fe,U=m.props||fe;let D;if($&&oo($,!1),(D=U.onVnodeBeforeUpdate)&&wt(D,$,m,_),w&&to(m,_,$,"beforeUpdate"),$&&oo($,!0),u&&(!_.dynamicChildren||_.dynamicChildren.length!==u.length)&&(c=0,H=!1,u=null),(C.innerHTML&&U.innerHTML==null||C.textContent&&U.textContent==null)&&d(j,""),u?ce(_.dynamicChildren,u,j,$,L,Ls(m,R),E):H||le(_,m,j,null,$,L,Ls(m,R),E,!1),c>0){if(c&16)G(j,C,U,$,R);else if(c&2&&C.class!==U.class&&a(j,"class",null,U.class,R),c&4&&a(j,"style",C.style,U.style,R),c&8){const y=m.dynamicProps;for(let g=0;g{D&&wt(D,$,m,_),w&&to(m,_,$,"updated")},L)},ce=(_,m,$,L,R,E,H)=>{for(let j=0;j{if(m!==$){if(m!==fe)for(const E in m)!Ao(E)&&!(E in $)&&a(_,E,m[E],null,R,L);for(const E in $){if(Ao(E))continue;const H=$[E],j=m[E];H!==j&&E!=="value"&&a(_,E,j,H,R,L)}"value"in $&&a(_,"value",m.value,$.value,R)}},V=(_,m,$,L,R,E,H,j,c)=>{const u=m.el=_?_.el:i(""),w=m.anchor=_?_.anchor:i("");let{patchFlag:C,dynamicChildren:U,slotScopeIds:D}=m;D&&(j=j?j.concat(D):D),_==null?(n(u,$,L),n(w,$,L),z(m.children||[],$,w,R,E,H,j,c)):C>0&&C&64&&U&&_.dynamicChildren&&_.dynamicChildren.length===U.length?(ce(_.dynamicChildren,U,$,R,E,H,j),(m.key!=null||R&&m===R.subTree)&&br(_,m,!0)):le(_,m,$,w,R,E,H,j,c)},W=(_,m,$,L,R,E,H,j,c)=>{m.slotScopeIds=j,_==null?m.shapeFlag&512?R.ctx.activate(m,$,L,H,c):Ce(m,$,L,R,E,H,c):Me(_,m,c)},Ce=(_,m,$,L,R,E,H)=>{const j=_.component=ou(_,L,R);if(ms(_)&&(j.ctx.renderer=Ke),nu(j,!1,H),j.asyncDep){if(R&&R.registerDep(j,te,H),!_.el){const c=j.subTree=he(Nt);F(null,c,m,$),_.placeholder=c.el}}else te(j,_,m,$,R,E,H)},Me=(_,m,$)=>{const L=m.component=_.component;if(Ic(_,m,$))if(L.asyncDep&&!L.asyncResolved){se(L,m,$);return}else L.next=m,L.update();else m.el=_.el,L.vnode=m},te=(_,m,$,L,R,E,H)=>{const j=()=>{if(_.isMounted){let{next:C,bu:U,u:D,parent:y,vnode:g}=_;{const oe=yr(_);if(oe){C&&(C.el=g.el,se(_,C,H)),oe.asyncDep.then(()=>{Ye(()=>{_.isUnmounted||u()},R)});return}}let k=C,N;oo(_,!1),C?(C.el=g.el,se(_,C,H)):C=g,U&&rn(U),(N=C.props&&C.props.onVnodeBeforeUpdate)&&wt(N,y,C,g),oo(_,!0);const q=ir(_),J=_.subTree;_.subTree=q,x(J,q,f(J.el),dt(J),_,R,E),C.el=q.el,k===null&&Dc(_,q.el),D&&Ye(D,R),(N=C.props&&C.props.onVnodeUpdated)&&Ye(()=>wt(N,y,C,g),R)}else{let C;const{el:U,props:D}=m,{bm:y,m:g,parent:k,root:N,type:q}=_,J=Oo(m);oo(_,!1),y&&rn(y),!J&&(C=D&&D.onVnodeBeforeMount)&&wt(C,k,m),oo(_,!0);{N.ce&&N.ce._hasShadowRoot()&&N.ce._injectChildStyle(q,_.parent?_.parent.type:void 0);const oe=_.subTree=ir(_);x(null,oe,$,L,_,R,E),m.el=oe.el}if(g&&Ye(g,R),!J&&(C=D&&D.onVnodeMounted)){const oe=m;Ye(()=>wt(C,k,oe),R)}(m.shapeFlag&256||k&&Oo(k.vnode)&&k.vnode.shapeFlag&256)&&_.a&&Ye(_.a,R),_.isMounted=!0,m=$=L=null}};_.scope.on();const c=_.effect=new ha(j);_.scope.off();const u=_.update=c.run.bind(c),w=_.job=c.runIfDirty.bind(c);w.i=_,w.id=_.uid,c.scheduler=()=>_s(w),oo(_,!0),u()},se=(_,m,$)=>{m.component=_;const L=_.vnode.props;_.vnode=m,_.next=null,Hc(_,m.props,L,$),qc(_,m.children,$),ht(),ja(_),mt()},le=(_,m,$,L,R,E,H,j,c=!1)=>{const u=_&&_.children,w=_?_.shapeFlag:0,C=m.children,{patchFlag:U,shapeFlag:D}=m;if(U>0){if(U&128){Ze(u,C,$,L,R,E,H,j,c);return}else if(U&256){Ae(u,C,$,L,R,E,H,j,c);return}}D&8?(w&16&&Ge(u,R,E),C!==u&&d($,C)):w&16?D&16?Ze(u,C,$,L,R,E,H,j,c):Ge(u,R,E,!0):(w&8&&d($,""),D&16&&z(C,$,L,R,E,H,j,c))},Ae=(_,m,$,L,R,E,H,j,c)=>{_=_||co,m=m||co;const u=_.length,w=m.length,C=Math.min(u,w);let U;for(U=0;Uw?Ge(_,R,E,!0,!1,C):z(m,$,L,R,E,H,j,c,C)},Ze=(_,m,$,L,R,E,H,j,c)=>{let u=0;const w=m.length;let C=_.length-1,U=w-1;for(;u<=C&&u<=U;){const D=_[u],y=m[u]=c?Ot(m[u]):vt(m[u]);if(Bo(D,y))x(D,y,$,null,R,E,H,j,c);else break;u++}for(;u<=C&&u<=U;){const D=_[C],y=m[U]=c?Ot(m[U]):vt(m[U]);if(Bo(D,y))x(D,y,$,null,R,E,H,j,c);else break;C--,U--}if(u>C){if(u<=U){const D=U+1,y=DU)for(;u<=C;)xe(_[u],R,E,!0),u++;else{const D=u,y=u,g=new Map;for(u=y;u<=U;u++){const Re=m[u]=c?Ot(m[u]):vt(m[u]);Re.key!=null&&g.set(Re.key,u)}let k,N=0;const q=U-y+1;let J=!1,oe=0;const X=new Array(q);for(u=0;u=q){xe(Re,R,E,!0);continue}let Ne;if(Re.key!=null)Ne=g.get(Re.key);else for(k=y;k<=U;k++)if(X[k-y]===0&&Bo(Re,m[k])){Ne=k;break}Ne===void 0?xe(Re,R,E,!0):(X[Ne-y]=u+1,Ne>=oe?oe=Ne:J=!0,x(Re,m[Ne],$,null,R,E,H,j,c),N++)}const Ee=J?Kc(X):co;for(k=Ee.length-1,u=q-1;u>=0;u--){const Re=y+u,Ne=m[Re],Yt=m[Re+1],Lt=Re+1{const{el:E,type:H,transition:j,children:c,shapeFlag:u}=_;if(u&6){ve(_.component.subTree,m,$,L);return}if(u&128){_.suspense.move(m,$,L);return}if(u&64){H.move(_,m,$,Ke);return}if(H===Le){n(E,m,$);for(let C=0;Cj.enter(E),R));else{const{leave:C,delayLeave:U,afterLeave:D}=j,y=()=>{_.ctx.isUnmounted?s(E):n(E,m,$)},g=()=>{const k=E._isLeaving||!!E[$s];E._isLeaving&&E[$s](!0),j.persisted&&!k?y():C(E,()=>{y(),D&&D()})};U?U(E,y,g):g()}else n(E,m,$)},xe=(_,m,$,L=!1,R=!1)=>{const{type:E,props:H,ref:j,children:c,dynamicChildren:u,shapeFlag:w,patchFlag:C,dirs:U,cacheIndex:D,memo:y}=_;if(C===-2&&(R=!1),j!=null&&(ht(),Fo(j,null,$,_,!0),mt()),D!=null&&(m.renderCache[D]=void 0),w&256){m.ctx.deactivate(_);return}const g=w&1&&U,k=!Oo(_);let N;if(k&&(N=H&&H.onVnodeBeforeUnmount)&&wt(N,m,_),w&6)We(_.component,$,L);else{if(w&128){_.suspense.unmount($,L);return}g&&to(_,null,m,"beforeUnmount"),w&64?_.type.remove(_,m,$,Ke,L):u&&!u.hasOnce&&(E!==Le||C>0&&C&64)?Ge(u,m,$,!1,!0):(E===Le&&C&384||!R&&w&16)&&Ge(c,m,$),L&&rt(_)}const q=y!=null&&D==null;(k&&(N=H&&H.onVnodeUnmounted)||g||q)&&Ye(()=>{N&&wt(N,m,_),g&&to(_,null,m,"unmounted"),q&&(_.el=null)},$)},rt=_=>{const{type:m,el:$,anchor:L,transition:R}=_;if(m===Le){De($,L);return}if(m===Ts){h(_);return}const E=()=>{s($),R&&!R.persisted&&R.afterLeave&&R.afterLeave()};if(_.shapeFlag&1&&R&&!R.persisted){const{leave:H,delayLeave:j}=R,c=()=>H($,E);j?j(_.el,E,c):c()}else E()},De=(_,m)=>{let $;for(;_!==m;)$=b(_),s(_),_=$;s(m)},We=(_,m,$)=>{const{bum:L,scope:R,job:E,subTree:H,um:j,m:c,a:u}=_;vr(c),vr(u),L&&rn(L),R.stop(),E&&(E.flags|=8,xe(H,_,m,$)),j&&Ye(j,m),Ye(()=>{_.isUnmounted=!0},m)},Ge=(_,m,$,L=!1,R=!1,E=0)=>{for(let H=E;H<_.length;H++)xe(_[H],m,$,L,R)},dt=_=>{if(_.shapeFlag&6)return dt(_.component.subTree);if(_.shapeFlag&128)return _.suspense.next();const m=b(_.anchor||_.el),$=m&&m[dc];return $?b($):m};let gt=!1;const je=(_,m,$)=>{let L;_==null?m._vnode&&(xe(m._vnode,null,null,!0),L=m._vnode.component):x(m._vnode||null,_,m,null,null,null,$),m._vnode=_,gt||(gt=!0,ja(L),Ba(),gt=!1)},Ke={p:x,um:xe,m:ve,r:rt,mt:Ce,mc:z,pc:le,pbc:ce,n:dt,o:e};return{render:je,hydrate:void 0,createApp:Pc(je)}}function Ls({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 oo({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Gc(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function br(e,t,o=!1){const n=e.children,s=t.children;if(Y(n)&&Y(s))for(let a=0;a>1,e[o[i]]0&&(t[n]=o[a-1]),o[a]=n)}}for(a=o.length,r=o[a-1];a-- >0;)o[a]=r,r=t[r];return o}function yr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:yr(t)}function vr(e){if(e)for(let t=0;te.__isSuspense;function Xc(e,t){t&&t.pendingBranch?Y(e)?t.effects.push(...e):t.effects.push(e):sc(e)}const Le=Symbol.for("v-fgt"),Ho=Symbol.for("v-txt"),Nt=Symbol.for("v-cmt"),Ts=Symbol.for("v-stc"),no=[];let et=null;function ae(e=!1){no.push(et=e?null:[])}function xr(){no.pop(),et=no[no.length-1]||null}let jo=1;function Sn(e,t=!1){jo+=e,e<0&&et&&t&&(et.hasOnce=!0)}function Ar(e){return e.dynamicChildren=jo>0?et||co:null,xr(),jo>0&&et&&et.push(e),e}function re(e,t,o,n,s,a){return Ar(ne(e,t,o,n,s,a,!0))}function Yc(e,t,o,n,s){return Ar(he(e,t,o,n,s,!0))}function Ln(e){return e?e.__v_isVNode===!0:!1}function Bo(e,t){return e.type===t.type&&e.key===t.key}const Sr=({key:e})=>e??null,Tn=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?we(e)||Ie(e)||Q(e)?{i:st,r:e,k:t,f:!!o}:e:null);function ne(e,t=null,o=null,n=0,s=null,a=e===Le?0:1,r=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Sr(t),ref:t&&Tn(t),scopeId:qa,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:a,patchFlag:n,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:st};return i?(Cn(l,o),a&128&&e.normalize(l)):o&&(l.shapeFlag|=we(o)?8:16),jo>0&&!r&&et&&(l.patchFlag>0||a&6)&&l.patchFlag!==32&&et.push(l),l}const he=Jc;function Jc(e,t=null,o=null,n=0,s=null,a=!1){if((!e||e===kc)&&(e=Nt),Ln(e)){const i=bo(e,t,!0);return o&&Cn(i,o),jo>0&&!a&&et&&(i.shapeFlag&6?et[et.indexOf(e)]=i:et.push(i)),i.patchFlag=-2,i}if(uu(e)&&(e=e.__vccOpts),t){t=Zc(t);let{class:i,style:l}=t;i&&!we(i)&&(t.class=cn(i)),ge(l)&&(ds(l)&&!Y(l)&&(l=Se({},l)),t.style=Tt(l))}const r=we(e)?1:kr(e)?128:yn(e)?64:ge(e)?4:Q(e)?2:0;return ne(e,t,o,n,s,r,a,!0)}function Zc(e){return e?ds(e)||dr(e)?Se({},e):e:null}function bo(e,t,o=!1,n=!1){const{props:s,ref:a,patchFlag:r,children:i,transition:l}=e,p=t?Qc(s||{},t):s,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:p,key:p&&Sr(p),ref:t&&t.ref?o&&a?Y(a)?a.concat(Tn(t)):[a,Tn(t)]:Tn(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Le?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&bo(e.ssContent),ssFallback:e.ssFallback&&bo(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&hs(d,l.clone(d)),d}function Ft(e=" ",t=0){return he(Ho,null,e,t)}function Pe(e="",t=!1){return t?(ae(),Yc(Nt,null,e)):he(Nt,null,e)}function vt(e){return e==null||typeof e=="boolean"?he(Nt):Y(e)?he(Le,null,e.slice()):Ln(e)?Ot(e):he(Ho,null,String(e))}function Ot(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:bo(e)}function Cn(e,t){let o=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(Y(t))o=16;else if(typeof t=="object")if(n&65){const s=t.default;s&&(s._c&&(s._d=!1),Cn(e,s()),s._c&&(s._d=!0));return}else{o=32;const s=t._;!s&&!dr(t)?t._ctx=st:s===3&&st&&(st.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(Q(t)){if(n&65){Cn(e,{default:t});return}t={default:t,_ctx:st},o=32}else t=String(t),n&64?(o=16,t=[Ft(t)]):o=8;e.children=t,e.shapeFlag|=o}function Qc(...e){const t={};for(let o=0;oqe||st;let En,Uo;{const e=ln(),t=(o,n)=>{let s;return(s=e[o])||(s=e[o]=[]),s.push(n),a=>{s.length>1?s.forEach(r=>r(a)):s[0](a)}};En=t("__VUE_INSTANCE_SETTERS__",o=>qe=o),Uo=t("__VUE_SSR_SETTERS__",o=>Vo=o)}const qo=e=>{const t=qe;return En(e),e.scope.on(),()=>{e.scope.off(),En(t)}},Lr=()=>{qe&&qe.scope.off(),En(null)};function Tr(e){return e.vnode.shapeFlag&4}let Vo=!1;function nu(e,t=!1,o=!1){t&&Uo(t);const{props:n,children:s}=e.vnode,a=Tr(e);zc(e,n,a,t),Uc(e,s,o||t);const r=a?su(e,t):void 0;return t&&Uo(!1),r}function su(e,t){const o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,xc);const{setup:n}=o;if(n){ht();const s=e.setupContext=n.length>1?ru(e):null,a=qo(e),r=_o(n,e,0,[e.props,s]),i=ra(r);if(mt(),a(),(i||e.sp)&&!Oo(e)&&Ga(e),i){if(r.then(Lr,Lr),t)return r.then(l=>{Uo(!0);try{Cr(e,l,t)}finally{Uo(!1)}}).catch(l=>{hn(l,e,0)});e.asyncDep=r}else Cr(e,r)}else Er(e)}function Cr(e,t,o){Q(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ge(t)&&(e.setupState=Ia(t)),Er(e)}function Er(e,t,o){const n=e.type;e.render||(e.render=n.render||_t);{const s=qo(e);ht();try{Ac(e)}finally{mt(),s()}}}const au={get(e,t){return ze(e,"get",""),e[t]}};function ru(e){const t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,au),slots:e.slots,emit:e.emit,expose:t}}function Pn(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Ia(Vl(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in Do)return Do[o](e)},has(t,o){return o in t||o in Do}})):e.proxy}const iu=/(?:^|[-_])\w/g,lu=e=>e.replace(iu,t=>t.toUpperCase()).replace(/[-_]/g,"");function cu(e,t=!0){return Q(e)?e.displayName||e.name:e.name||t&&e.__name}function Pr(e,t,o=!1){let n=cu(t);if(!n&&t.__file){const s=t.__file.match(/([^/\\]+)\.\w+$/);s&&(n=s[1])}if(!n&&e){const s=a=>{for(const r in a)if(a[r]===t)return r};n=s(e.components)||e.parent&&s(e.parent.type.components)||s(e.appContext.components)}return n?lu(n):o?"App":"Anonymous"}function uu(e){return Q(e)&&"__vccOpts"in e}const ee=(e,t)=>Xl(e,t,Vo);function Mr(e,t,o){try{Sn(-1);const n=arguments.length;return n===2?ge(t)&&!Y(t)?Ln(t)?he(e,null,[t]):he(e,t):he(e,null,t):(n>3?o=Array.prototype.slice.call(arguments,2):n===3&&Ln(o)&&(o=[o]),he(e,t,o))}finally{Sn(1)}}const pu="3.5.42";/** +`,...tc(s)),console.warn(...a)}bt(),$s=!1}function ec(){let e=Po[Po.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 tc(e){const t=[];return e.forEach((o,n)=>{t.push(...n===0?[]:[` +`],...oc(o))}),t}function oc({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:"",n=e.component?e.component.parent==null:!1,s=` at <${Rr(e.component,e.type,n)}`,a=">"+o;return e.props?[s,...nc(e.props),a]:[s+a]}function nc(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach(n=>{t.push(...Ha(n,e[n]))}),o.length>3&&t.push(" ..."),t}function Ha(e,t,o){return Se(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?o?t:[`${e}=${t}`]:Ie(t)?(t=Ha(e,de(t.value),!0),o?t:[`${e}=Ref<`,t,">"]):te(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=de(t),o?t:[`${e}=`,t])}function fo(e,t,o,n){try{return n?e(...n):e()}catch(s){bn(s,t,o)}}function pt(e,t,o,n){if(te(e)){const s=fo(e,t,o,n);return s&&la(s)&&s.catch(a=>{bn(a,t,o)}),s}if(Z(e)){const s=[];for(let a=0;a>>1,s=je[n],a=Ro(s);a=Ro(o)?je.push(e):je.splice(ac(t),0,e),e.flags|=1,Ba()}}function Ba(){yn||(yn=ja.then(Va))}function rc(e){if(!Z(e))qt&&e.id===-1?qt.splice(ho+1,0,e):e.flags&1||($o.push(e),e.flags|=1);else for(let t=0;tRo(o)-Ro(n));if($o.length=0,qt){for(let o=0;oe.id==null?e.flags&2?-1:1/0:e.id;function Va(e){try{for(vt=0;vt{n._d&&Cn(-1);const a=vn(t),r=no.length;let i;try{i=e(...s)}finally{for(let l=no.length;l>r;l--)Sr();vn(a),n._d&&Cn(1)}return i};return n._n=!0,n._c=!0,n._d=!0,n}function lc(e,t){if(at===null)return e;const o=Nn(at),n=e.dirs||(e.dirs=[]);for(let s=0;s1)return o&&te(t)?t.call(n&&n.proxy):t}}const uc=Symbol.for("v-scx"),pc=()=>No(uc);function dc(e,t){return ms(e,null,t)}function We(e,t,o){return ms(e,t,o)}function ms(e,t,o=me){const{immediate:n,deep:s,flush:a,once:r}=o,i=Ee({},o),l=t&&n||!t&&a!=="post";let p;if(Wo){if(a==="sync"){const k=pc();p=k.__watcherHandles||(k.__watcherHandles=[])}else if(!l){const k=()=>{};return k.stop=ft,k.resume=ft,k.pause=ft,k}}const d=Ue;i.call=(k,O,P)=>pt(k,d,O,P);let _=!1;a==="post"?i.scheduler=k=>{Ge(k,d&&d.suspense)}:a!=="sync"&&(_=!0,i.scheduler=(k,O)=>{O?k():hs(k)}),i.augmentJob=k=>{t&&(k.flags|=4),_&&(k.flags|=2,d&&(k.id=d.uid,k.i=d))};const m=Ql(e,t,i);return Wo&&(p?p.push(m):l&&m()),m}function gc(e,t,o){const n=this.proxy,s=Se(e)?e.includes(".")?Ga(n,e):()=>n[e]:e.bind(n,n);let a;te(t)?a=t:(a=t.handler,o=t);const r=Vo(this),i=ms(s,a.bind(n),o);return r(),i}function Ga(e,t){const o=t.split(".");return()=>{let n=e;for(let s=0;se.__isTeleport,bs=Symbol("_leaveCb");function fc(e){let t=e[0];if(e.length>1){for(const o of e)if(o.type!==Nt){t=o;break}}return t}function Ka(e){if(!vs(e))return wn(e.type)&&e.children?fc(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&&te(o.default))return o.default()}}function ys(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const o=e.component.subTree;ys(wn(o.type)&&Ka(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 kn(e,t){return te(e)?Ee({name:e.name},t,{setup:e}):e}function Xa(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Ya(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}const xn=new WeakMap;function Fo(e,t,o,n,s=!1){if(Z(e)){e.forEach((P,F)=>Fo(P,t&&(Z(t)?t[F]:t),o,n,s));return}if(Oo(n)&&!s){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&Fo(e,t,o,n.component.subTree);return}const a=n.shapeFlag&4?Nn(n.component):n.el,r=s?null:a,{i,r:l}=e,p=t&&t.r,d=i.refs===me?i.refs={}:i.refs,_=i.setupState,m=de(_),k=_===me?ra:P=>Ya(d,P)?!1:_e(m,P),O=(P,F)=>!(F&&Ya(d,F));if(p!=null&&p!==l){if(Ja(t),Se(p))d[p]=null,k(p)&&(_[p]=null);else if(Ie(p)){const P=t;O(p,P.k)&&(p.value=null),P.k&&(d[P.k]=null)}}if(te(l))fo(l,i,12,[r,d]);else{const P=Se(l),F=Ie(l);if(P||F){const A=()=>{if(e.f){const j=P?k(l)?_[l]:d[l]:O()||!e.k?l.value:d[e.k];if(s)Z(j)&&Qn(j,a);else if(Z(j))j.includes(a)||j.push(a);else if(P)d[l]=[a],k(l)&&(_[l]=d[l]);else{const y=[a];O(l,e.k)&&(l.value=y),e.k&&(d[e.k]=y)}}else P?(d[l]=r,k(l)&&(_[l]=r)):F&&(O(l,e.k)&&(l.value=r),e.k&&(d[e.k]=r))};if(r){const j=()=>{A(),xn.delete(e)};j.id=-1,xn.set(e,j),Ge(j,o)}else Ja(e),A()}}}function Ja(e){const t=xn.get(e);t&&(t.flags|=8,xn.delete(e))}un().requestIdleCallback,un().cancelIdleCallback;const Oo=e=>!!e.type.__asyncLoader,vs=e=>e.type.__isKeepAlive;function $c(e,t){Za(e,"a",t)}function hc(e,t){Za(e,"da",t)}function Za(e,t,o=Ue){const n=e.__wdc||(e.__wdc=()=>{let s=o;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(An(t,n,o),o){let s=o.parent;for(;s&&s.parent;)vs(s.parent.vnode)&&mc(n,t,o,s),s=s.parent}}function mc(e,t,o,n){const s=An(t,e,n,!0);Sn(()=>{Qn(n[t],s)},o)}function An(e,t,o=Ue,n=!1){if(o){const s=o[e]||(o[e]=[]),a=t.__weh||(t.__weh=(...r)=>{mt();const i=Vo(o),l=pt(t,o,e,r);return i(),bt(),l});return n?s.unshift(a):s.push(a),a}}const Rt=e=>(t,o=Ue)=>{(!Wo||e==="sp")&&An(e,(...n)=>t(...n),o)},Qa=Rt("bm"),Io=Rt("m"),bc=Rt("bu"),yc=Rt("u"),er=Rt("bum"),Sn=Rt("um"),vc=Rt("sp"),wc=Rt("rtg"),kc=Rt("rtc");function xc(e,t=Ue){An("ec",e,t)}const Ac=Symbol.for("v-ndc");function Do(e,t,o,n){let s;const a=o,r=Z(e);if(r||Se(e)){const i=r&&Qt(e);let l=!1,p=!1;i&&(l=!nt(e),p=Pt(e),e=dn(e)),s=new Array(e.length);for(let d=0,_=e.length;d<_;d++)s[d]=t(l?p?_o(ut(e[d])):ut(e[d]):e[d],d,void 0,a)}else if(typeof e=="number"){s=new Array(e);for(let i=0;it(i,l,void 0,a));else{const i=Object.keys(e);s=new Array(i.length);for(let l=0,p=i.length;le?Er(e)?Nn(e):ws(e.parent):null,zo=Ee(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=>ws(e.parent),$root:e=>ws(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>sr(e),$forceUpdate:e=>e.f||(e.f=()=>{hs(e.update)}),$nextTick:e=>e.n||(e.n=Mo.bind(e.proxy)),$watch:e=>gc.bind(e)}),ks=(e,t)=>e!==me&&!e.__isScriptSetup&&_e(e,t),Sc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:o,setupState:n,data:s,props:a,accessCache:r,type:i,appContext:l}=e;if(t[0]!=="$"){const m=r[t];if(m!==void 0)switch(m){case 1:return n[t];case 2:return s[t];case 4:return o[t];case 3:return a[t]}else{if(ks(n,t))return r[t]=1,n[t];if(s!==me&&_e(s,t))return r[t]=2,s[t];if(_e(a,t))return r[t]=3,a[t];if(o!==me&&_e(o,t))return r[t]=4,o[t];xs&&(r[t]=0)}}const p=zo[t];let d,_;if(p)return t==="$attrs"&&De(e.attrs,"get",""),p(e);if((d=i.__cssModules)&&(d=d[t]))return d;if(o!==me&&_e(o,t))return r[t]=4,o[t];if(_=l.config.globalProperties,_e(_,t))return _[t]},set({_:e},t,o){const{data:n,setupState:s,ctx:a}=e;return ks(s,t)?(s[t]=o,!0):n!==me&&_e(n,t)?(n[t]=o,!0):_e(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(a[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:n,appContext:s,props:a,type:r}},i){let l;return!!(o[i]||e!==me&&i[0]!=="$"&&_e(e,i)||ks(t,i)||_e(a,i)||_e(n,i)||_e(zo,i)||_e(s.config.globalProperties,i)||(l=r.__cssModules)&&l[i])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:_e(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function tr(e){return Z(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}let xs=!0;function Tc(e){const t=sr(e),o=e.proxy,n=e.ctx;xs=!1,t.beforeCreate&&or(t.beforeCreate,e,"bc");const{data:s,computed:a,methods:r,watch:i,provide:l,inject:p,created:d,beforeMount:_,mounted:m,beforeUpdate:k,updated:O,activated:P,deactivated:F,beforeDestroy:A,beforeUnmount:j,destroyed:y,unmounted:$,render:T,renderTracked:x,renderTriggered:M,errorCaptured:H,serverPrefetch:D,expose:ce,inheritAttrs:X,components:V,directives:J,filters:Re}=t;if(p&&Lc(p,n,null),r)for(const se in r){const ee=r[se];te(ee)&&(n[se]=ee.bind(o))}if(s){const se=s.call(o,o);$e(se)&&(e.data=go(se))}if(xs=!0,a)for(const se in a){const ee=a[se],Ce=te(ee)?ee.bind(o,o):te(ee.get)?ee.get.bind(o,o):ft,Xe=!te(ee)&&te(ee.set)?ee.set.bind(o):ft,ve=oe({get:Ce,set:Xe});Object.defineProperty(n,se,{enumerable:!0,configurable:!0,get:()=>ve.value,set:Le=>ve.value=Le})}if(i)for(const se in i)nr(i[se],n,o,se);if(l){const se=te(l)?l.call(o):l;Reflect.ownKeys(se).forEach(ee=>{cc(ee,se[ee])})}d&&or(d,e,"c");function pe(se,ee){Z(ee)?ee.forEach(Ce=>se(Ce.bind(o))):ee&&se(ee.bind(o))}if(pe(Qa,_),pe(Io,m),pe(bc,k),pe(yc,O),pe($c,P),pe(hc,F),pe(xc,H),pe(kc,x),pe(wc,M),pe(er,j),pe(Sn,$),pe(vc,D),Z(ce))if(ce.length){const se=e.exposed||(e.exposed={});ce.forEach(ee=>{Object.defineProperty(se,ee,{get:()=>o[ee],set:Ce=>o[ee]=Ce,enumerable:!0})})}else e.exposed||(e.exposed={});T&&e.render===ft&&(e.render=T),X!=null&&(e.inheritAttrs=X),V&&(e.components=V),J&&(e.directives=J),D&&Xa(e)}function Lc(e,t,o=ft){Z(e)&&(e=As(e));for(const n in e){const s=e[n];let a;$e(s)?"default"in s?a=No(s.from||n,s.default,!0):a=No(s.from||n):a=No(s),Ie(a)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>a.value,set:r=>a.value=r}):t[n]=a}}function or(e,t,o){pt(Z(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,o)}function nr(e,t,o,n){let s=n.includes(".")?Ga(o,n):()=>o[n];if(Se(e)){const a=t[e];te(a)&&We(s,a)}else if(te(e))We(s,e.bind(o));else if($e(e))if(Z(e))e.forEach(a=>nr(a,t,o,n));else{const a=te(e.handler)?e.handler.bind(o):t[e.handler];te(a)&&We(s,a,e)}}function sr(e){const t=e.type,{mixins:o,extends:n}=t,{mixins:s,optionsCache:a,config:{optionMergeStrategies:r}}=e.appContext,i=a.get(t);let l;return i?l=i:!s.length&&!o&&!n?l=t:(l={},s.length&&s.forEach(p=>Tn(l,p,r,!0)),Tn(l,t,r)),$e(t)&&a.set(t,l),l}function Tn(e,t,o,n=!1){const{mixins:s,extends:a}=t;a&&Tn(e,a,o,!0),s&&s.forEach(r=>Tn(e,r,o,!0));for(const r in t)if(!(n&&r==="expose")){const i=Cc[r]||o&&o[r];e[r]=i?i(e[r],t[r]):t[r]}return e}const Cc={data:ar,props:rr,emits:rr,methods:Ho,computed:Ho,beforeCreate:Be,created:Be,beforeMount:Be,mounted:Be,beforeUpdate:Be,updated:Be,beforeDestroy:Be,beforeUnmount:Be,destroyed:Be,unmounted:Be,activated:Be,deactivated:Be,errorCaptured:Be,serverPrefetch:Be,components:Ho,directives:Ho,watch:Pc,provide:ar,inject:Ec};function ar(e,t){return t?e?function(){return Ee(te(e)?e.call(this,this):e,te(t)?t.call(this,this):t)}:t:e}function Ec(e,t){return Ho(As(e),As(t))}function As(e){if(Z(e)){const t={};for(let o=0;ot==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ve(t)}Modifiers`]||e[`${ot(t)}Modifiers`];function Fc(e,t,...o){if(e.isUnmounted)return;const n=e.vnode.props||me;let s=o;const a=t.startsWith("update:"),r=a&&Nc(n,t.slice(7));r&&(r.trim&&(s=o.map(d=>Se(d)?d.trim():d)),r.number&&(s=s.map(da)));let i,l=n[i=ts(t)]||n[i=ts(Ve(t))];!l&&a&&(l=n[i=ts(ot(t))]),l&&pt(l,e,6,s);const p=n[i+"Once"];if(p){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,pt(p,e,6,s)}}const Oc=new WeakMap;function lr(e,t,o=!1){const n=o?Oc:t.emitsCache,s=n.get(e);if(s!==void 0)return s;const a=e.emits;let r={},i=!1;if(!te(e)){const l=p=>{const d=lr(p,t,!0);d&&(i=!0,Ee(r,d))};!o&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!a&&!i?($e(e)&&n.set(e,null),null):(Z(a)?a.forEach(l=>r[l]=null):Ee(r,a),$e(e)&&n.set(e,r),r)}function Ln(e,t){return!e||!sn(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),_e(e,t[0].toLowerCase()+t.slice(1))||_e(e,ot(t))||_e(e,t))}function $$(){}function cr(e){const{type:t,vnode:o,proxy:n,withProxy:s,propsOptions:[a],slots:r,attrs:i,emit:l,render:p,renderCache:d,props:_,data:m,setupState:k,ctx:O,inheritAttrs:P}=e,F=vn(e);let A,j;try{if(o.shapeFlag&4){const $=s||n,T=$;A=wt(p.call(T,$,d,_,k,m,O)),j=i}else{const $=t;A=wt($.length>1?$(_,{attrs:i,slots:r,emit:l}):$(_,null)),j=t.props?i:Ic(i)}}catch($){no.length=0,bn($,e,1),A=ye(Nt)}let y=A;if(j&&P!==!1){const $=Object.keys(j),{shapeFlag:T}=y;$.length&&T&7&&(a&&$.some(an)&&(j=Dc(j,a)),y=bo(y,j,!1,!0))}if(o.dirs&&(y=bo(y,null,!1,!0),y.dirs=y.dirs?y.dirs.concat(o.dirs):o.dirs),o.transition){const $=wn(y.type)&&Ka(y)||y;ys($,o.transition)}return A=y,vn(F),A}const Ic=e=>{let t;for(const o in e)(o==="class"||o==="style"||sn(o))&&((t||(t={}))[o]=e[o]);return t},Dc=(e,t)=>{const o={};for(const n in e)(!an(n)||!(n.slice(9)in t))&&(o[n]=e[n]);return o};function zc(e,t,o){const{props:n,children:s,component:a}=e,{props:r,children:i,patchFlag:l}=t,p=a.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&l>=0){if(l&1024)return!0;if(l&16)return n?ur(n,r,p):!!r;if(l&8){const d=t.dynamicProps;for(let _=0;_Object.create(dr),_r=e=>Object.getPrototypeOf(e)===dr;function jc(e,t,o,n=!1){const s={},a=gr();e.propsDefaults=Object.create(null),fr(e,t,s,a);for(const r in e.propsOptions[0])r in s||(s[r]=void 0);o?e.props=n?s:Wl(s):e.type.props?e.props=s:e.props=a,e.attrs=a}function Bc(e,t,o,n){const{props:s,attrs:a,vnode:{patchFlag:r}}=e,i=de(s),[l]=e.propsOptions;let p=!1;if((n||r>0)&&!(r&16)){if(r&8){const d=e.vnode.dynamicProps;for(let _=0;_{l=!0;const[m,k]=$r(_,t,!0);Ee(r,m),k&&i.push(...k)};!o&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!a&&!l)return $e(e)&&n.set(e,uo),uo;if(Z(a))for(let d=0;de==="_"||e==="_ctx"||e==="$stable",Ls=e=>Z(e)?e.map(wt):[wt(e)],qc=(e,t,o)=>{if(t._n)return t;const n=ic((...s)=>Ls(t(...s)),o);return n._c=!1,n},mr=(e,t,o)=>{const n=e._ctx;for(const s in e){if(Ts(s))continue;const a=e[s];if(te(a))t[s]=qc(s,a,n);else if(a!=null){const r=Ls(a);t[s]=()=>r}}},br=(e,t)=>{const o=Ls(t);e.slots.default=()=>o},yr=(e,t,o)=>{for(const n in t)(o||!Ts(n))&&(e[n]=t[n])},Vc=(e,t,o)=>{const n=e.slots=gr();if(e.vnode.shapeFlag&32){const s=t._;s?(yr(n,t,o),o&&pa(n,"_",s,!0)):mr(t,n)}else t&&br(e,t)},Wc=(e,t,o)=>{const{vnode:n,slots:s}=e;let a=!0,r=me;if(n.shapeFlag&32){const i=t._;i?o&&i===1?a=!1:yr(s,t,o):(a=!t.$stable,mr(t,s)),r=t}else t&&(br(e,t),r={default:1});if(a)for(const i in s)!Ts(i)&&r[i]==null&&delete s[i]},Ge=Jc;function Gc(e){return Kc(e)}function Kc(e,t){const o=un();o.__VUE__=!0;const{insert:n,remove:s,patchProp:a,createElement:r,createText:i,createComment:l,setText:p,setElementText:d,parentNode:_,nextSibling:m,setScopeId:k=ft,insertStaticContent:O}=e,P=(g,h,f,S=null,N=null,R=null,B=void 0,z=null,c=!!h.dynamicChildren)=>{if(g===h)return;g&&!Uo(g,h)&&(S=Je(g),Le(g,N,R,!0),g=null),h.patchFlag===-2&&(c=!1,h.dynamicChildren=null);const{type:u,ref:w,shapeFlag:L}=h;switch(u){case jo:F(g,h,f,S);break;case Nt:A(g,h,f,S);break;case Es:g==null&&j(h,f,S,B);break;case Pe:V(g,h,f,S,N,R,B,z,c);break;default:L&1?T(g,h,f,S,N,R,B,z,c):L&6?J(g,h,f,S,N,R,B,z,c):(L&64||L&128)&&u.process(g,h,f,S,N,R,B,z,c,Ze)}w!=null&&N?Fo(w,g&&g.ref,R,h||g,!h):w==null&&g&&g.ref!=null&&Fo(g.ref,null,R,g,!0)},F=(g,h,f,S)=>{if(g==null)n(h.el=i(h.children),f,S);else{const N=h.el=g.el;h.children!==g.children&&p(N,h.children)}},A=(g,h,f,S)=>{g==null?n(h.el=l(h.children||""),f,S):h.el=g.el},j=(g,h,f,S)=>{[g.el,g.anchor]=O(g.children,h,f,S,g.el,g.anchor)},y=({el:g,anchor:h},f,S)=>{let N;for(;g&&g!==h;)N=m(g),n(g,f,S),g=N;n(h,f,S)},$=({el:g,anchor:h})=>{let f;for(;g&&g!==h;)f=m(g),s(g),g=f;s(h)},T=(g,h,f,S,N,R,B,z,c)=>{if(h.type==="svg"?B="svg":h.type==="math"&&(B="mathml"),g==null)x(h,f,S,N,R,B,z,c);else{const u=g.el&&g.el._isVueCE?g.el:null;try{u&&u._beginPatch(),D(g,h,N,R,B,z,c)}finally{u&&u._endPatch()}}},x=(g,h,f,S,N,R,B,z)=>{let c,u;const{props:w,shapeFlag:L,transition:q,dirs:I}=g;if(c=g.el=r(g.type,R,w&&w.is,w),L&8?d(c,g.children):L&16&&H(g.children,c,null,S,N,Cs(g,R),B,z),I&&to(g,null,S,"created"),M(c,g,g.scopeId,B,S),w){for(const C in w)C!=="value"&&!Ao(C)&&a(c,C,null,w[C],R,S);"value"in w&&a(c,"value",null,w.value,R),(u=w.onVnodeBeforeMount)&&kt(u,S,g)}I&&to(g,null,S,"beforeMount");const v=Xc(N,q);v&&q.beforeEnter(c),n(c,h,f),((u=w&&w.onVnodeMounted)||v||I)&&Ge(()=>{try{u&&kt(u,S,g),v&&q.enter(c),I&&to(g,null,S,"mounted")}finally{}},N)},M=(g,h,f,S,N)=>{if(f&&k(g,f),S)for(let R=0;R{for(let u=c;u{const z=h.el=g.el;let{patchFlag:c,dynamicChildren:u,dirs:w}=h;c|=g.patchFlag&16;const L=g.props||me,q=h.props||me;let I;if(f&&oo(f,!1),(I=q.onVnodeBeforeUpdate)&&kt(I,f,h,g),w&&to(h,g,f,"beforeUpdate"),f&&oo(f,!0),u&&(!g.dynamicChildren||g.dynamicChildren.length!==u.length)&&(c=0,B=!1,u=null),(L.innerHTML&&q.innerHTML==null||L.textContent&&q.textContent==null)&&d(z,""),u?ce(g.dynamicChildren,u,z,f,S,Cs(h,N),R):B||ee(g,h,z,null,f,S,Cs(h,N),R,!1),c>0){if(c&16)X(z,L,q,f,N);else if(c&2&&L.class!==q.class&&a(z,"class",null,q.class,N),c&4&&a(z,"style",L.style,q.style,N),c&8){const v=h.dynamicProps;for(let C=0;C{I&&kt(I,f,h,g),w&&to(h,g,f,"updated")},S)},ce=(g,h,f,S,N,R,B)=>{for(let z=0;z{if(h!==f){if(h!==me)for(const R in h)!Ao(R)&&!(R in f)&&a(g,R,h[R],null,N,S);for(const R in f){if(Ao(R))continue;const B=f[R],z=h[R];B!==z&&R!=="value"&&a(g,R,z,B,N,S)}"value"in f&&a(g,"value",h.value,f.value,N)}},V=(g,h,f,S,N,R,B,z,c)=>{const u=h.el=g?g.el:i(""),w=h.anchor=g?g.anchor:i("");let{patchFlag:L,dynamicChildren:q,slotScopeIds:I}=h;I&&(z=z?z.concat(I):I),g==null?(n(u,f,S),n(w,f,S),H(h.children||[],f,w,N,R,B,z,c)):L>0&&L&64&&q&&g.dynamicChildren&&g.dynamicChildren.length===q.length?(ce(g.dynamicChildren,q,f,N,R,B,z),(h.key!=null||N&&h===N.subTree)&&vr(g,h,!0)):ee(g,h,f,w,N,R,B,z,c)},J=(g,h,f,S,N,R,B,z,c)=>{h.slotScopeIds=z,g==null?h.shapeFlag&512?N.ctx.activate(h,f,S,B,c):Re(h,f,S,N,R,B,c):re(g,h,c)},Re=(g,h,f,S,N,R,B)=>{const z=g.component=su(g,S,N);if(vs(g)&&(z.ctx.renderer=Ze),au(z,!1,B),z.asyncDep){if(N&&N.registerDep(z,pe,B),!g.el){const c=z.subTree=ye(Nt);A(null,c,h,f),g.placeholder=c.el}}else pe(z,g,h,f,N,R,B)},re=(g,h,f)=>{const S=h.component=g.component;if(zc(g,h,f))if(S.asyncDep&&!S.asyncResolved){se(S,h,f);return}else S.next=h,S.update();else h.el=g.el,S.vnode=h},pe=(g,h,f,S,N,R,B)=>{const z=()=>{if(g.isMounted){let{next:L,bu:q,u:I,parent:v,vnode:C}=g;{const W=wr(g);if(W){L&&(L.el=C.el,se(g,L,B)),W.asyncDep.then(()=>{Ge(()=>{g.isUnmounted||u()},N)});return}}let Y=L,b;oo(g,!1),L?(L.el=C.el,se(g,L,B)):L=C,q&&cn(q),(b=L.props&&L.props.onVnodeBeforeUpdate)&&kt(b,v,L,C),oo(g,!0);const E=cr(g),U=g.subTree;g.subTree=E,P(U,E,_(U.el),Je(U),g,N,R),L.el=E.el,Y===null&&Hc(g,E.el),I&&Ge(I,N),(b=L.props&&L.props.onVnodeUpdated)&&Ge(()=>kt(b,v,L,C),N)}else{let L;const{el:q,props:I}=h,{bm:v,m:C,parent:Y,root:b,type:E}=g,U=Oo(h);oo(g,!1),v&&cn(v),!U&&(L=I&&I.onVnodeBeforeMount)&&kt(L,Y,h),oo(g,!0);{b.ce&&b.ce._hasShadowRoot()&&b.ce._injectChildStyle(E,g.parent?g.parent.type:void 0);const W=g.subTree=cr(g);P(null,W,f,S,g,N,R),h.el=W.el}if(C&&Ge(C,N),!U&&(L=I&&I.onVnodeMounted)){const W=h;Ge(()=>kt(L,Y,W),N)}(h.shapeFlag&256||Y&&Oo(Y.vnode)&&Y.vnode.shapeFlag&256)&&g.a&&Ge(g.a,N),g.isMounted=!0,h=f=S=null}};g.scope.on();const c=g.effect=new ba(z);g.scope.off();const u=g.update=c.run.bind(c),w=g.job=c.runIfDirty.bind(c);w.i=g,w.id=g.uid,c.scheduler=()=>hs(w),oo(g,!0),u()},se=(g,h,f)=>{h.component=g;const S=g.vnode.props;g.vnode=h,g.next=null,Bc(g,h.props,S,f),Wc(g,h.children,f),mt(),Ua(g),bt()},ee=(g,h,f,S,N,R,B,z,c=!1)=>{const u=g&&g.children,w=g?g.shapeFlag:0,L=h.children,{patchFlag:q,shapeFlag:I}=h;if(q>0){if(q&128){Xe(u,L,f,S,N,R,B,z,c);return}else if(q&256){Ce(u,L,f,S,N,R,B,z,c);return}}I&8?(w&16&&He(u,N,R),L!==u&&d(f,L)):w&16?I&16?Xe(u,L,f,S,N,R,B,z,c):He(u,N,R,!0):(w&8&&d(f,""),I&16&&H(L,f,S,N,R,B,z,c))},Ce=(g,h,f,S,N,R,B,z,c)=>{g=g||uo,h=h||uo;const u=g.length,w=h.length,L=Math.min(u,w);let q;for(q=0;qw?He(g,N,R,!0,!1,L):H(h,f,S,N,R,B,z,c,L)},Xe=(g,h,f,S,N,R,B,z,c)=>{let u=0;const w=h.length;let L=g.length-1,q=w-1;for(;u<=L&&u<=q;){const I=g[u],v=h[u]=c?Ot(h[u]):wt(h[u]);if(Uo(I,v))P(I,v,f,null,N,R,B,z,c);else break;u++}for(;u<=L&&u<=q;){const I=g[L],v=h[q]=c?Ot(h[q]):wt(h[q]);if(Uo(I,v))P(I,v,f,null,N,R,B,z,c);else break;L--,q--}if(u>L){if(u<=q){const I=q+1,v=Iq)for(;u<=L;)Le(g[u],N,R,!0),u++;else{const I=u,v=u,C=new Map;for(u=v;u<=q;u++){const G=h[u]=c?Ot(h[u]):wt(h[u]);G.key!=null&&C.set(G.key,u)}let Y,b=0;const E=q-v+1;let U=!1,W=0;const ae=new Array(E);for(u=0;u=E){Le(G,N,R,!0);continue}let we;if(G.key!=null)we=C.get(G.key);else for(Y=v;Y<=q;Y++)if(ae[Y-v]===0&&Uo(G,h[Y])){we=Y;break}we===void 0?Le(G,N,R,!0):(ae[we-v]=u+1,we>=W?W=we:U=!0,P(G,h[we],f,null,N,R,B,z,c),b++)}const fe=U?Yc(ae):uo;for(Y=fe.length-1,u=E-1;u>=0;u--){const G=v+u,we=h[G],Yt=h[G+1],_t=G+1{const{el:R,type:B,transition:z,children:c,shapeFlag:u}=g;if(u&6){ve(g.component.subTree,h,f,S);return}if(u&128){g.suspense.move(h,f,S);return}if(u&64){B.move(g,h,f,Ze);return}if(B===Pe){n(R,h,f);for(let L=0;Lz.enter(R),N));else{const{leave:L,delayLeave:q,afterLeave:I}=z,v=()=>{g.ctx.isUnmounted?s(R):n(R,h,f)},C=()=>{const Y=R._isLeaving||!!R[bs];R._isLeaving&&R[bs](!0),z.persisted&&!Y?v():L(R,()=>{v(),I&&I()})};q?q(R,v,C):C()}else n(R,h,f)},Le=(g,h,f,S=!1,N=!1)=>{const{type:R,props:B,ref:z,children:c,dynamicChildren:u,shapeFlag:w,patchFlag:L,dirs:q,cacheIndex:I,memo:v}=g;if(L===-2&&(N=!1),z!=null&&(mt(),Fo(z,null,f,g,!0),bt()),I!=null&&(h.renderCache[I]=void 0),w&256){h.ctx.deactivate(g);return}const C=w&1&&q,Y=!Oo(g);let b;if(Y&&(b=B&&B.onVnodeBeforeUnmount)&&kt(b,h,g),w&6)lt(g.component,f,S);else{if(w&128){g.suspense.unmount(f,S);return}C&&to(g,null,h,"beforeUnmount"),w&64?g.type.remove(g,h,f,Ze,S):u&&!u.hasOnce&&(R!==Pe||L>0&&L&64)?He(u,h,f,!1,!0):(R===Pe&&L&384||!N&&w&16)&&He(c,h,f),S&&it(g)}const E=v!=null&&I==null;(Y&&(b=B&&B.onVnodeUnmounted)||C||E)&&Ge(()=>{b&&kt(b,h,g),C&&to(g,null,h,"unmounted"),E&&(g.el=null)},f)},it=g=>{const{type:h,el:f,anchor:S,transition:N}=g;if(h===Pe){Ye(f,S);return}if(h===Es){$(g);return}const R=()=>{s(f),N&&!N.persisted&&N.afterLeave&&N.afterLeave()};if(g.shapeFlag&1&&N&&!N.persisted){const{leave:B,delayLeave:z}=N,c=()=>B(f,R);z?z(g.el,R,c):c()}else R()},Ye=(g,h)=>{let f;for(;g!==h;)f=m(g),s(g),g=f;s(h)},lt=(g,h,f)=>{const{bum:S,scope:N,job:R,subTree:B,um:z,m:c,a:u}=g;kr(c),kr(u),S&&cn(S),N.stop(),R&&(R.flags|=8,Le(B,g,h,f)),z&&Ge(z,h),Ge(()=>{g.isUnmounted=!0},h)},He=(g,h,f,S=!1,N=!1,R=0)=>{for(let B=R;B{if(g.shapeFlag&6)return Je(g.component.subTree);if(g.shapeFlag&128)return g.suspense.next();const h=m(g.anchor||g.el),f=h&&h[_c];return f?m(f):h};let tt=!1;const Tt=(g,h,f)=>{let S;g==null?h._vnode&&(Le(h._vnode,null,null,!0),S=h._vnode.component):P(h._vnode||null,g,h,null,null,null,f),h._vnode=g,tt||(tt=!0,Ua(S),qa(),tt=!1)},Ze={p:P,um:Le,m:ve,r:it,mt:Re,mc:H,pc:ee,pbc:ce,n:Je,o:e};return{render:Tt,hydrate:void 0,createApp:Rc(Tt)}}function Cs({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 oo({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Xc(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function vr(e,t,o=!1){const n=e.children,s=t.children;if(Z(n)&&Z(s))for(let a=0;a>1,e[o[i]]0&&(t[n]=o[a-1]),o[a]=n)}}for(a=o.length,r=o[a-1];a-- >0;)o[a]=r,r=t[r];return o}function wr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:wr(t)}function kr(e){if(e)for(let t=0;te.__isSuspense;function Jc(e,t){t&&t.pendingBranch?Z(e)?t.effects.push(...e):t.effects.push(e):rc(e)}const Pe=Symbol.for("v-fgt"),jo=Symbol.for("v-txt"),Nt=Symbol.for("v-cmt"),Es=Symbol.for("v-stc"),no=[];let et=null;function ie(e=!1){no.push(et=e?null:[])}function Sr(){no.pop(),et=no[no.length-1]||null}let Bo=1;function Cn(e,t=!1){Bo+=e,e<0&&et&&t&&(et.hasOnce=!0)}function Tr(e){return e.dynamicChildren=Bo>0?et||uo:null,Sr(),Bo>0&&et&&et.push(e),e}function le(e,t,o,n,s,a){return Tr(ne(e,t,o,n,s,a,!0))}function Zc(e,t,o,n,s){return Tr(ye(e,t,o,n,s,!0))}function En(e){return e?e.__v_isVNode===!0:!1}function Uo(e,t){return e.type===t.type&&e.key===t.key}const Lr=({key:e})=>e??null,Pn=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?Se(e)||Ie(e)||te(e)?{i:at,r:e,k:t,f:!!o}:e:null);function ne(e,t=null,o=null,n=0,s=null,a=e===Pe?0:1,r=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Lr(t),ref:t&&Pn(t),scopeId:Wa,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:a,patchFlag:n,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:at};return i?(Mn(l,o),a&128&&e.normalize(l)):o&&(l.shapeFlag|=Se(o)?8:16),Bo>0&&!r&&et&&(l.patchFlag>0||a&6)&&l.patchFlag!==32&&et.push(l),l}const ye=Qc;function Qc(e,t=null,o=null,n=0,s=null,a=!1){if((!e||e===Ac)&&(e=Nt),En(e)){const i=bo(e,t,!0);return o&&Mn(i,o),Bo>0&&!a&&et&&(i.shapeFlag&6?et[et.indexOf(e)]=i:et.push(i)),i.patchFlag=-2,i}if(du(e)&&(e=e.__vccOpts),t){t=eu(t);let{class:i,style:l}=t;i&&!Se(i)&&(t.class=pn(i)),$e(l)&&(fs(l)&&!Z(l)&&(l=Ee({},l)),t.style=Lt(l))}const r=Se(e)?1:Ar(e)?128:wn(e)?64:$e(e)?4:te(e)?2:0;return ne(e,t,o,n,s,r,a,!0)}function eu(e){return e?fs(e)||_r(e)?Ee({},e):e:null}function bo(e,t,o=!1,n=!1){const{props:s,ref:a,patchFlag:r,children:i,transition:l}=e,p=t?tu(s||{},t):s,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:p,key:p&&Lr(p),ref:t&&t.ref?o&&a?Z(a)?a.concat(Pn(t)):[a,Pn(t)]:Pn(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Pe?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&bo(e.ssContent),ssFallback:e.ssFallback&&bo(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&ys(d,l.clone(d)),d}function Ft(e=" ",t=0){return ye(jo,null,e,t)}function Ne(e="",t=!1){return t?(ie(),Zc(Nt,null,e)):ye(Nt,null,e)}function wt(e){return e==null||typeof e=="boolean"?ye(Nt):Z(e)?ye(Pe,null,e.slice()):En(e)?Ot(e):ye(jo,null,String(e))}function Ot(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:bo(e)}function Mn(e,t){let o=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(Z(t))o=16;else if(typeof t=="object")if(n&65){const s=t.default;s&&(s._c&&(s._d=!1),Mn(e,s()),s._c&&(s._d=!0));return}else{o=32;const s=t._;!s&&!_r(t)?t._ctx=at:s===3&&at&&(at.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(te(t)){if(n&65){Mn(e,{default:t});return}t={default:t,_ctx:at},o=32}else t=String(t),n&64?(o=16,t=[Ft(t)]):o=8;e.children=t,e.shapeFlag|=o}function tu(...e){const t={};for(let o=0;oUe||at;let Rn,qo;{const e=un(),t=(o,n)=>{let s;return(s=e[o])||(s=e[o]=[]),s.push(n),a=>{s.length>1?s.forEach(r=>r(a)):s[0](a)}};Rn=t("__VUE_INSTANCE_SETTERS__",o=>Ue=o),qo=t("__VUE_SSR_SETTERS__",o=>Wo=o)}const Vo=e=>{const t=Ue;return Rn(e),e.scope.on(),()=>{e.scope.off(),Rn(t)}},Cr=()=>{Ue&&Ue.scope.off(),Rn(null)};function Er(e){return e.vnode.shapeFlag&4}let Wo=!1;function au(e,t=!1,o=!1){t&&qo(t);const{props:n,children:s}=e.vnode,a=Er(e);jc(e,n,a,t),Vc(e,s,o||t);const r=a?ru(e,t):void 0;return t&&qo(!1),r}function ru(e,t){const o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Sc);const{setup:n}=o;if(n){mt();const s=e.setupContext=n.length>1?lu(e):null,a=Vo(e),r=fo(n,e,0,[e.props,s]),i=la(r);if(bt(),a(),(i||e.sp)&&!Oo(e)&&Xa(e),i){if(r.then(Cr,Cr),t)return r.then(l=>{qo(!0);try{Pr(e,l,t)}finally{qo(!1)}}).catch(l=>{bn(l,e,0)});e.asyncDep=r}else Pr(e,r)}else Mr(e)}function Pr(e,t,o){te(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:$e(t)&&(e.setupState=za(t)),Mr(e)}function Mr(e,t,o){const n=e.type;e.render||(e.render=n.render||ft);{const s=Vo(e);mt();try{Tc(e)}finally{bt(),s()}}}const iu={get(e,t){return De(e,"get",""),e[t]}};function lu(e){const t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,iu),slots:e.slots,emit:e.emit,expose:t}}function Nn(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(za(Gl(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in zo)return zo[o](e)},has(t,o){return o in t||o in zo}})):e.proxy}const cu=/(?:^|[-_])\w/g,uu=e=>e.replace(cu,t=>t.toUpperCase()).replace(/[-_]/g,"");function pu(e,t=!0){return te(e)?e.displayName||e.name:e.name||t&&e.__name}function Rr(e,t,o=!1){let n=pu(t);if(!n&&t.__file){const s=t.__file.match(/([^/\\]+)\.\w+$/);s&&(n=s[1])}if(!n&&e){const s=a=>{for(const r in a)if(a[r]===t)return r};n=s(e.components)||e.parent&&s(e.parent.type.components)||s(e.appContext.components)}return n?uu(n):o?"App":"Anonymous"}function du(e){return te(e)&&"__vccOpts"in e}const oe=(e,t)=>Jl(e,t,Wo);function Nr(e,t,o){try{Cn(-1);const n=arguments.length;return n===2?$e(t)&&!Z(t)?En(t)?ye(e,null,[t]):ye(e,t):ye(e,null,t):(n>3?o=Array.prototype.slice.call(arguments,2):n===3&&En(o)&&(o=[o]),ye(e,t,o))}finally{Cn(1)}}const gu="3.5.42";/** * @vue/runtime-dom v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Cs;const Rr=typeof window<"u"&&window.trustedTypes;if(Rr)try{Cs=Rr.createPolicy("vue",{createHTML:e=>e})}catch{}const Nr=Cs?e=>Cs.createHTML(e):e=>e,du="http://www.w3.org/2000/svg",gu="http://www.w3.org/1998/Math/MathML",It=typeof document<"u"?document:null,Fr=It&&It.createElement("template"),_u={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"?It.createElementNS(du,e):t==="mathml"?It.createElementNS(gu,e):o?It.createElement(e,{is:o}):It.createElement(e);return e==="select"&&n&&n.multiple!=null&&s.setAttribute("multiple",n.multiple),s},createText:e=>It.createTextNode(e),createComment:e=>It.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>It.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,n,s,a){const r=o?o.previousSibling:t.lastChild;if(s&&(s===a||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),o),!(s===a||!(s=s.nextSibling)););else{Fr.innerHTML=Nr(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const i=Fr.content;if(n==="svg"||n==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,o)}return[r?r.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}},fu=Symbol("_vtc");function $u(e,t,o){const n=e[fu];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}const Or=Symbol("_vod"),hu=Symbol("_vsh"),mu=Symbol(""),bu=/(?:^|;)\s*display\s*:/;function yu(e,t,o){const n=e.style,s=we(o);let a=!1;if(o&&!s){if(t)if(we(t))for(const r of t.split(";")){const i=r.slice(0,r.indexOf(":")).trim();o[i]==null&&Wo(n,i,"")}else for(const r in t)o[r]==null&&Wo(n,r,"");for(const r in o){r==="display"&&(a=!0);const i=o[r];i!=null?wu(e,r,!we(t)&&t?t[r]:void 0,i)||Wo(n,r,i):Wo(n,r,"")}}else if(s){if(t!==o){const r=n[mu];r&&(o+=";"+r),n.cssText=o,a=bu.test(o)}}else t&&e.removeAttribute("style");Or in e&&(e[Or]=a?n.display:"",e[hu]&&(n.display="none"))}const Mn=/\s*!important$/;function Wo(e,t,o){if(Y(o))o.forEach(n=>Wo(e,t,n));else if(o==null&&(o=""),t.startsWith("--"))Mn.test(o)?e.setProperty(t,o.replace(Mn,""),"important"):e.setProperty(t,o);else{const n=vu(e,t);Mn.test(o)?e.setProperty(tt(n),o.replace(Mn,""),"important"):e[n]=o}}const Ir=["Webkit","Moz","ms"],Es={};function vu(e,t){const o=Es[t];if(o)return o;let n=Xe(t);if(n!=="filter"&&n in e)return Es[t]=n;n=la(n);for(let s=0;sPs||(Tu.then(()=>Ps=0),Ps=Date.now());function Eu(e,t){const o=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=o.attached)return;const s=o.value;if(Y(s)){const a=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{a.call(n),n._stopped=!0};const r=s.slice(),i=[n];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Pu=(e,t,o,n,s,a)=>{const r=s==="svg";t==="class"?$u(e,n,r):t==="style"?yu(e,o,n):on(t)?nn(t)||xu(e,t,o,n,a):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Mu(e,t,n,r))?(Hr(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&zr(e,t,n,r,a,t!=="value")):e._isVueCE&&(Ru(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!we(n)))?Hr(e,Xe(t),n,a,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),zr(e,t,n,r))};function Mu(e,t,o,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&Ur(t)&&Q(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 Ur(t)&&we(o)?!1:t in e}function Ru(e,t){const o=e._def.props;if(!o)return!1;const n=Xe(t);return Array.isArray(o)?o.some(s=>Xe(s)===n):Object.keys(o).some(s=>Xe(s)===n)}const qr={};function Ms(e,t,o){let n=vn(e,t);sn(n)&&(n=Se({},n,t));class s extends Rs{constructor(r){super(n,r,o)}}return s.def=n,s}const Nu=typeof HTMLElement<"u"?HTMLElement:class{};class Rs extends Nu{constructor(t,o={},n=Xr){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!==Xr?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Se({},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 Rs){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,Mo(()=>{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._resolved=!0,this._pendingResolve=void 0;const{props:a,styles:r}=n;let i;if(a&&!Y(a))for(const l in a){const p=a[l];(p===Number||p&&p.type===Number)&&(l in this._props&&(this._props[l]=pa(this._props[l])),(i||(i=Object.create(null)))[Xe(l)]=!0)}this._numberProps=i,this._resolveProps(n),this.shadowRoot&&this._applyStyles(r),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)de(this,n)||Object.defineProperty(this,n,{get:()=>nt(o[n])})}_resolveProps(t){const{props:o}=t,n=Y(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(Xe))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(a){this._setProp(s,a,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const o=this.hasAttribute(t);let n=o?this.getAttribute(t):qr;const s=Xe(t);o&&this._numberProps&&this._numberProps[s]&&(n=pa(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===qr?delete this._props[t]:(this._props[t]=o,t==="key"&&this._app&&(this._app._ceVNode.key=o)),s&&this._instance&&this._update(),n)){const a=this._ob;a&&(this._processMutations(a.takeRecords()),a.disconnect()),o===!0?this.setAttribute(tt(t),""):typeof o=="string"||typeof o=="number"?this.setAttribute(tt(t),o+""):o||this.removeAttribute(tt(t)),a&&a.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Du(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const o=he(this._def,Se(t,this._props));return this._instance||(o.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const s=(a,r)=>{this.dispatchEvent(new CustomEvent(a,sn(r[0])?Se({detail:r},r[0]):{detail:r}))};n.emit=(a,...r)=>{s(a,r),tt(a)!==a&&s(tt(a),r)},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,a=this.shadowRoot,r=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(a);let i=null;for(let l=t.length-1;l>=0;l--){const p=document.createElement("style");s&&p.setAttribute("nonce",s),p.textContent=t[l],a.insertBefore(p,i||r),i=p,l===0&&(n||this._styleAnchors.set(this._def,p),o&&this._styleAnchors.set(o,p))}}_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{const t=e.props["onUpdate:modelValue"]||!1;return Y(t)?o=>rn(t,o):t},Ns=Symbol("_assign"),Fu={deep:!0,created(e,{value:t,modifiers:{number:o}},n){e._modelValue=t,jr(e,"change",()=>{const s=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>o?ua(Rn(l)):Rn(l)),a=e.multiple,r=a?Jt(e._modelValue)?new Set(s):s:s[0],i=e._pendingValue=[a,a?Y(r)?s.slice():s:r];try{e[Ns](r)}finally{Mo(()=>{e._pendingValue===i&&(e._pendingValue=void 0)})}}),e[Ns]=Vr(n)},mounted(e,{value:t}){Wr(e,t)},beforeUpdate(e,{value:t},o){e._modelValue=t,e[Ns]=Vr(o)},updated(e,{value:t}){const o=e._pendingValue;e._pendingValue=void 0,(!o||o[0]!==e.multiple||!Ou(t,o[1],o[0]))&&Wr(e,t)}};function Ou(e,t,o){if(!o||Y(e))return Ut(e,t);if(Jt(e)){if(e.size!==t.length)return!1;for(const n of t)if(!e.has(n))return!1;return!0}return!1}function Wr(e,t){const o=e.multiple,n=Y(t);if(!(o&&!n&&!Jt(t))){for(let s=0,a=e.options.length;sString(p)===String(i)):r.selected=xl(t,i)>-1}else r.selected=t.has(i);else if(Ut(Rn(r),t)){e.selectedIndex!==s&&(e.selectedIndex=s);return}}!o&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Rn(e){return"_value"in e?e._value:e.value}const Iu=Se({patchProp:Pu},_u);let Gr;function Kr(){return Gr||(Gr=Vc(Iu))}const Du=(...e)=>{Kr().render(...e)},Xr=(...e)=>{const t=Kr().createApp(...e),{mount:o}=t;return t.mount=n=>{const s=Hu(n);if(!s)return;const a=t._component;!Q(a)&&!a.render&&!a.template&&(a.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const r=o(s,!1,zu(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),r},t};function zu(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Hu(e){return we(e)?document.querySelector(e):e}const ju={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل",collapseLegend:"طيّ وسيلة الإيضاح",expandLegend:"توسيع وسيلة الإيضاح",toggleLegend:"إظهار وسيلة الإيضاح أو إخفاؤها",searchPeopleGroups:"ابحث عن الشعوب",resetAllFilters:"إعادة تعيين كل عوامل التصفية والبحث",selectAllRows:"تحديد كل الصفوف",deselectAllRows:"إلغاء تحديد كل الصفوف",rowDetail:"تفاصيل الصف",dismissHint:"إخفاء التلميح",resizeFiltersRail:"تغيير حجم شريط عوامل التصفية",resizeFiltersRailHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير حجم شريط عوامل التصفية",resizeChartsRail:"تغيير حجم شريط الرسوم البيانية",resizeChartsRailHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير حجم شريط الرسوم البيانية",resizeMapTableSplit:"تغيير نسبة التقسيم بين الخريطة والجدول",resizeMapTableSplitHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير نسبة التقسيم بين الخريطة والجدول",resizeTable:"تغيير ارتفاع الجدول",resizeTableHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير حجم الجدول",resizeDashboardHeight:"تغيير ارتفاع لوحة المعلومات",resizeDashboardHeightHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير ارتفاع لوحة المعلومات",removeFilter:"إزالة عامل التصفية {name}",closeDetail:"إغلاق التفاصيل",filterBreadcrumb:"مسار عوامل التصفية",railViews:"طرق عرض الشريط",upgCountLegend:"مفتاح عدد UPG",donutChart:"مخطط دائري مجوّف: {title}"},Bu={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:"جارٍ العمل…"},Uu={research_controls:"أدوات البحث",clustering:"التجميع",filters:"عوامل التصفية",pin_dim:"خفوت النقاط",export_poster:"تصدير ملصق…",reload_data:"إعادة تحميل البيانات",off:"إيقاف",native:"أصلي",mst:"الشجرة الممتدة",network:"شبكة",off_desc:"إظهار كل نقطة على حدة",native_desc:"تجميع دوائر Mapbox (الأسرع)",mst_desc:"شبكات تقارب بالشجرة الممتدة الصغرى",network_desc:"خطوط ربط بأقرب جار",search_languages:"ابحث عن اللغات…",search_religions:"ابحث عن الأديان…",reset_all:"إعادة تعيين الكل",no_languages:"لم تُحمَّل أي لغات بعد",no_religions:"لم تُحمَّل أي أديان بعد",unadopted:"غير متبنّى",min:"الأدنى",max:"الأعلى",adopted:"متبنَّاة",adoption:"التبني",engaged:"مُخْدُومَة",engagement:"المشاركة",unengaged:"يحتاج إلى انخراط",language:"اللغة",religion:"الدين",population:"السكان",any:"الكل",active_count:"{n} نشط",prayer_status:"حالة الصلاة",close:"إغلاق",clear:"مسح",map_controls:"أدوات التحكم بالخريطة",clusters:"التجمّعات",mst_full_name:"الشجرة الممتدة الصغرى",mst_hint:"اضغط على صف في مفتاح الخريطة لتجميع تلك المجموعة وحدها"},qu={bloc:"كتلة التقارب",gospel_access:"الوصول إلى الإنجيل",people:"الشعوب",people_name:"الشعب (الاسم)",praying:"يصلّون",religion_family:"عائلة الأديان",search_language:"ابحث عن لغة",search_people:"ابحث عن شعب",search_place:"ابحث عن مكان",search_religion:"ابحث عن دين",upgs_in_scope:"الشعوب ضمن النطاق",countries_touched:"الدول المشمولة",unreached:"غير موصولين",sum_population:"مجموع السكان",sum_praying:"مجموع المصلّين",charts:"الرسوم البيانية",table:"الجدول",cluster:"المجموعة",country:"الدولة",engagement:"المشاركة",language:"اللغة",language_family:"عائلة اللغة",people_group:"الشعب",population:"السكان",prayer:"الصلاة",region:"المنطقة",religion:"الدين",status:"الحالة",adopted:"متبنَّاة",filters:"عوامل التصفية",gospel_resources:"موارد الإنجيل",map:"الخريطة",search_placeholder:"ابحث عن الشعوب والأماكن واللغات والأديان…",any:"الكل",active_count:"{n} نشط",prayer_status:"حالة الصلاة",map_controls:"أدوات التحكم بالخريطة",close:"إغلاق",clear:"مسح",dashboard_title:"لوحة البحث الشاملة",align_dashboard:"محاذاة اللوحة",align_dashboard_tip:"إعادة تخطيط اللوحة إلى المحاذاة الافتراضية",selected:"المحدد",world:"العالم",vertical_legend:"مفتاح عمودي",groups_in_scope:"مجموعة ضمن النطاق",filter_by:"تصفية حسب",remove_filter:"إزالة التصفية",groups:"مجموعة",expand:"توسيع",collapse:"طيّ",place:"المكان",export_csv:"تصدير CSV",detail:"التفاصيل",detail_empty:"اختر شعبًا لعرض التفاصيل",heartbeat_zone:"منطقة نبض القلب",top_countries:"أبرز الدول",select_all:"تحديد الكل",expand_table:"توسيع الجدول",collapse_table:"طيّ الجدول — توسيع الخريطة",group:"مجموعة",deselect_all:"إلغاء تحديد الكل",results_live:"عرض {count} من أصل {total} {unit}",filters_live:"عوامل التصفية: {list}",search_live:"البحث: {term}",adopted_by_churches:"تم تبنّيها من قِبل الكنائس",bp_title:"الصورة الكاملة — لوحة البحث الموحّدة",bp_subtitle:"ابحث وصفِّ شعوب العالم · الأقل وصولاً إليها أولاً",export_selection:"تصدير هذا التحديد",map_loading:"جارٍ تحميل خريطة البحث…",no_match:"لا توجد شعوب تطابق ”{q}“.",no_photo:"لا توجد صورة",only_selected:"المحدَّدة فقط",only_selected_hint:"إظهار الشعوب المحدَّدة فقط",people_committed:"الأشخاص الملتزمون",people_praying:"الأشخاص المصلّون",selected_first:"المحدَّدة أولاً",selected_first_hint:"رفع الشعوب المحدَّدة إلى الأعلى مع الإبقاء على ترتيب الأعمدة",n_shown:"{n} معروض",other:"أخرى",wagfRegion:{africa:"أفريقيا",asia:"آسيا",europe:"أوروبا","latin_america_&_caribbean":"أمريكا اللاتينية",oceania:"أوقيانوسيا"},sort_by_column_hint:"رتّب هذا الجدول حسب {column} — النقر مع Shift يضيف عمودًا ثانيًا. الفرز يرتّب الجدول فقط؛ وتحتفظ البطاقات بترتيبها.",fs_exit_hint:"الخروج من ملء الشاشة (Esc) — العودة إلى سبعة صفوف",fs_open_hint:"فتح هذا الجدول بملء الشاشة",fs_exit:"الخروج من ملء الشاشة",fs_open:"فتح الجدول بملء الشاشة",export_selected_hint:"تصدير جميع الحقول — الشعوب المحددة: {n}",export_all_hint:"تصدير جميع الحقول — الشعوب: {n}"},Vu={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:"تلقائي"},Wu={doxa:{label:"المشروع 2000: الشعوب التي تخدمها DOXA",definition:"الشعوب التي تخدمها DOXA كما تقدّمها قائمتها الحيّة"},unreached:{label:"المشروع 7000: الشعوب غير المُبشَّرة",definition:"أولوية الضياع لدى IMB من 0 إلى 2 (حدودية أو رائدة أو متوسّعة غير مُبشَّرة: أقل من 2% إنجيليون)"},frontier:{label:"المشروع 4700: الشعوب الحدودية",definition:"أولوية الضياع لدى IMB بقيمة 0 (حدودية غير مُبشَّرة: 0.1% إنجيليون أو أقل)"},"frontier-500k":{label:"المشروع 700: الشعوب الحدودية التي يبلغ عددها 500,000 أو أكثر",definition:"أولوية الضياع لدى IMB بقيمة 0 وعدد سكان لا يقل عن 500,000"},unengaged:{label:"الشعوب غير المُبشَّرة التي لم يُعمَل بينها",definition:"أولوية الضياع لدى IMB من 0 إلى 2 وحالة العمل: لم يُعمَل بينها"}},Gu={menuComingSoon:"القائمة قادمة قريباً",pinHint:{tapDot:"اضغط على نقطة ملوّنة — لا يزال هناك من يحتاج إلى الصلاة"},upg100WallHeading:"قائمتي UPG 100 — قوائم صلاة وملصقات",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"},Ku={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},Xu={family:{Christianity:"المسيحية",Islam:"الإسلام",Hinduism:"الهندوسية",Buddhism:"البوذية",Ethnoreligion:"الديانات العرقية",Judaism:"اليهودية",Sikhism:"السيخية",Unaffiliated:"غير منتمين",Other:"أخرى",Unknown:"غير معروف"}},Yu={placeholder:"شعب، مكان، لغة، ديانة",placeholderNoPlaces:"شعب، لغة، ديانة (البحث عن الأماكن يتطلب رمز Mapbox)",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"},sections:{within:"ضمن {selection}",allData:"كل بيانات DOXA"},upg100Placeholder:"ابحث عن شعب أو قائمة UPG-100 أو منطقة…"},Ju={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen",collapseLegend:"Legende einklappen",expandLegend:"Legende ausklappen",toggleLegend:"Legende ein- oder ausblenden",searchPeopleGroups:"Volksgruppen suchen",resetAllFilters:"Alle Filter und die Suche zurücksetzen",selectAllRows:"Alle Zeilen auswählen",deselectAllRows:"Auswahl aller Zeilen aufheben",rowDetail:"Zeilendetails",dismissHint:"Hinweis schließen",resizeFiltersRail:"Filterleiste in der Größe ändern",resizeFiltersRailHint:"Ziehen oder Pfeiltasten verwenden, um die Filterleiste in der Größe zu ändern",resizeChartsRail:"Diagrammleiste in der Größe ändern",resizeChartsRailHint:"Ziehen oder Pfeiltasten verwenden, um die Diagrammleiste in der Größe zu ändern",resizeMapTableSplit:"Aufteilung zwischen Karte und Tabelle ändern",resizeMapTableSplitHint:"Ziehen oder Pfeiltasten verwenden, um die Aufteilung zwischen Karte und Tabelle zu ändern",resizeTable:"Tabellenhöhe ändern",resizeTableHint:"Ziehen oder Pfeiltasten verwenden, um die Tabelle in der Größe zu ändern",resizeDashboardHeight:"Höhe des Dashboards ändern",resizeDashboardHeightHint:"Ziehen oder Pfeiltasten verwenden, um die Höhe des Dashboards zu ändern",removeFilter:"Filter {name} entfernen",closeDetail:"Details schließen",filterBreadcrumb:"Filterpfad",railViews:"Ansichten der Leiste",upgCountLegend:"Legende der UPG-Anzahl",donutChart:"Ringdiagramm: {title}"},Zu={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…"},Qu={research_controls:"Forschungssteuerung",clustering:"Clustering",filters:"Filter",pin_dim:"Pin-Transparenz",export_poster:"Poster exportieren…",reload_data:"Daten neu laden",off:"Aus",native:"Nativ",mst:"MST",network:"Netzwerk",off_desc:"Jeden Pin einzeln anzeigen",native_desc:"Mapbox-Kreiscluster (am schnellsten)",mst_desc:"Affinitätsnetze über minimalen Spannbaum",network_desc:"Verbindungslinien zum nächsten Nachbarn",search_languages:"Sprachen suchen…",search_religions:"Religionen suchen…",reset_all:"Alles zurücksetzen",no_languages:"Noch keine Sprachen geladen",no_religions:"Noch keine Religionen geladen",unadopted:"Nicht adoptiert",min:"min",max:"max",adopted:"Adoptiert",adoption:"Adoption",engaged:"Engagiert",engagement:"Engagement",unengaged:"Braucht Engagement",language:"Sprache",religion:"Religion",population:"Bevölkerung",any:"Alle",active_count:"{n} aktiv",prayer_status:"Gebetsstatus",close:"Schließen",clear:"Zurücksetzen",map_controls:"Kartensteuerung",clusters:"Cluster",mst_full_name:"Minimaler Spannbaum",mst_hint:"Klicken Sie auf eine Legendenzeile, um nur diese Gruppe zu clustern"},ep={bloc:"Affinitätsblock",gospel_access:"Zugang zum Evangelium",people:"Völker",people_name:"Volk (Name)",praying:"Betend",religion_family:"Religionsfamilie",search_language:"Sprache suchen",search_people:"Volk suchen",search_place:"Ort suchen",search_religion:"Religion suchen",upgs_in_scope:"UPGs im Bereich",countries_touched:"berührte Länder",unreached:"unerreicht",sum_population:"Σ Bevölkerung",sum_praying:"Σ Betende",charts:"Diagramme",table:"Tabelle",cluster:"Cluster",country:"Land",engagement:"Engagement",language:"Sprache",language_family:"Sprachfamilie",people_group:"Volk",population:"Bevölkerung",prayer:"Gebet",region:"Region",religion:"Religion",status:"Status",adopted:"Adoptiert",filters:"Filter",gospel_resources:"Evangeliumsressourcen",map:"Karte",search_placeholder:"Volksgruppen, Orte, Sprachen, Religionen suchen…",any:"Alle",active_count:"{n} aktiv",prayer_status:"Gebetsstatus",map_controls:"Kartensteuerung",close:"Schließen",clear:"Zurücksetzen",dashboard_title:"Big-Picture-Forschungsdashboard",align_dashboard:"Layout ausrichten",align_dashboard_tip:"Das Dashboard-Layout auf die Standardausrichtung zurücksetzen",selected:"Ausgewählt",world:"Welt",vertical_legend:"Vertikale Legende",groups_in_scope:"Volksgruppen im Bereich",filter_by:"Filtern nach",remove_filter:"Filter entfernen",groups:"Volksgruppen",expand:"Aufklappen",collapse:"Zuklappen",place:"Ort",export_csv:"CSV exportieren",detail:"Details",detail_empty:"Wählen Sie eine Volksgruppe, um Details zu sehen",heartbeat_zone:"Herzschlag-Zone",top_countries:"Top-Länder",select_all:"Alle auswählen",expand_table:"Tabelle ausklappen",collapse_table:"Tabelle einklappen – Karte vergrößern",group:"Volksgruppe",deselect_all:"Auswahl aufheben",results_live:"{count} von {total} {unit} angezeigt",filters_live:"Filter: {list}",search_live:"Suche: {term}",adopted_by_churches:"Von Gemeinden übernommen",bp_title:"Big Picture — einheitliches Forschungs-Dashboard",bp_subtitle:"Die Volksgruppen der Welt suchen und filtern · am wenigsten erreichte zuerst",export_selection:"Diese Auswahl exportieren",map_loading:"Forschungskarte wird geladen…",no_match:"Keine Volksgruppen entsprechen „{q}“.",no_photo:"Kein Foto",only_selected:"Nur ausgewählte",only_selected_hint:"Nur die ausgewählten Volksgruppen anzeigen",people_committed:"Verbindlich zugesagte Personen",people_praying:"Betende Personen",selected_first:"Ausgewählte zuerst",selected_first_hint:"Die ausgewählten Volksgruppen nach oben holen, die Spaltensortierung bleibt erhalten",n_shown:"{n} angezeigt",other:"Andere",wagfRegion:{africa:"Afrika",asia:"Asien",europe:"Europa","latin_america_&_caribbean":"Lateinamerika",oceania:"Ozeanien"},sort_by_column_hint:"Tabelle nach {column} sortieren – Umschalt-Klick fügt eine zweite Spalte hinzu. Die Sortierung ordnet nur die Tabelle; die Karten behalten ihre eigene Reihenfolge.",fs_exit_hint:"Vollbild beenden (Esc) — zurück zu sieben Zeilen",fs_open_hint:"Diese Tabelle im Vollbild öffnen",fs_exit:"Vollbild beenden",fs_open:"Tabelle im Vollbild öffnen",export_selected_hint:"Alle Felder exportieren — ausgewählte Volksgruppen: {n}",export_all_hint:"Alle Felder exportieren — Volksgruppen: {n}"},tp={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"},op={doxa:{label:"Projekt 2000: die Volksgruppen von DOXA",definition:"Die Volksgruppen, denen DOXA dient, wie seine Live-Liste sie angibt"},unreached:{label:"Projekt 7000: unerreichte Volksgruppen",definition:"IMB Lostness Priority 0–2 (Frontier, Pioneer oder Expanding Unreached: unter 2 % Evangelikale)"},frontier:{label:"Projekt 4700: Frontier-Volksgruppen",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0,1 % Evangelikale oder weniger)"},"frontier-500k":{label:"Projekt 700: Frontier-Volksgruppen mit 500.000 oder mehr Menschen",definition:"IMB Lostness Priority 0 und eine Bevölkerung von mindestens 500.000"},unengaged:{label:"Unerreichte Volksgruppen ohne Engagement",definition:"IMB Lostness Priority 0–2 und Engagement-Status: ohne Engagement"}},np={menuComingSoon:"Menü folgt in Kürze",pinHint:{tapDot:"Tippe auf einen farbigen Punkt — jemand braucht noch Gebet"},upg100WallHeading:"Meine UPG-100-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"},sp={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},ap={family:{Christianity:"Christentum",Islam:"Islam",Hinduism:"Hinduismus",Buddhism:"Buddhismus",Ethnoreligion:"Ethnische Religionen",Judaism:"Judentum",Sikhism:"Sikhismus",Unaffiliated:"Konfessionslos",Other:"Andere",Unknown:"Unbekannt"}},rp={placeholder:"Volk, Ort, Sprache, Religion",placeholderNoPlaces:"Volk, Sprache, Religion (Ortssuche braucht ein Mapbox-Token)",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"},kinds:{people:"Volk + Land",peopleGroup:"Volk",bloc:"Affinitätsblock",cluster:"Völkercluster",country:"Land",region:"Region",family:"Sprachfamilie",languageKind:"Sprache",dialect:"Dialekt",religionKind:"Religion"},upg100Placeholder:"Volksgruppe, UPG-100-Liste oder Region suchen…"},ip={backToLegend:"Back to Legend",closeDetailView:"Close detail view",collapseLegend:"Collapse legend",expandLegend:"Expand legend",toggleLegend:"Show or hide the legend",searchPeopleGroups:"Search people groups",resetAllFilters:"Reset all filters and search",selectAllRows:"Select all rows",deselectAllRows:"Deselect all rows",rowDetail:"Row detail",dismissHint:"Dismiss hint",resizeFiltersRail:"Resize filters rail",resizeFiltersRailHint:"Drag or use arrow keys to resize the filters rail",resizeChartsRail:"Resize charts rail",resizeChartsRailHint:"Drag or use arrow keys to resize the charts rail",resizeMapTableSplit:"Resize map/table split",resizeMapTableSplitHint:"Drag or use arrow keys to resize the map/table split",resizeTable:"Resize table height",resizeTableHint:"Drag or use arrow keys to resize the table",resizeDashboardHeight:"Resize dashboard height",resizeDashboardHeightHint:"Drag or use arrow keys to resize the dashboard's height",removeFilter:"Remove filter {name}",closeDetail:"Close detail",filterBreadcrumb:"Filter breadcrumb",railViews:"Rail views",upgCountLegend:"UPG count legend",donutChart:"{title} donut chart"},lp={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"},cp={research_controls:"Research controls",clustering:"Clustering",filters:"Filters",pin_dim:"Pin dim",export_poster:"Export poster…",reload_data:"Reload data",off:"Off",native:"Native",mst:"MST",network:"Network",off_desc:"Show every pin individually",native_desc:"Mapbox circle clusters (fastest)",mst_desc:"Minimum-spanning-tree affinity webs",network_desc:"Nearest-neighbor connection lines",search_languages:"Search languages…",search_religions:"Search religions…",reset_all:"Reset all",no_languages:"No languages loaded yet",no_religions:"No religions loaded yet",unadopted:"Unadopted",min:"min",max:"max",adopted:"Adopted",adoption:"Adoption",engaged:"Engaged",engagement:"Engagement",unengaged:"Unengaged",language:"Language",religion:"Religion",population:"Population",any:"Any",active_count:"{n} active",prayer_status:"Prayer Status",close:"Close",clear:"Clear",map_controls:"Research map controls",clusters:"Clusters",mst_full_name:"Minimum Spanning Tree",mst_hint:"click a legend row to cluster only that group"},up={bloc:"Bloc",gospel_access:"Gospel Access",people:"People",people_name:"People (name)",praying:"Praying",religion_family:"Religion Family",search_language:"Search language",search_people:"Search people",search_place:"Search place",search_religion:"Search religion",upgs_in_scope:"UPGs in scope",countries_touched:"countries touched",unreached:"unreached",sum_population:"Σ population",sum_praying:"Σ praying",charts:"Charts",table:"Table",cluster:"Cluster",country:"Country",engagement:"Engagement",language:"Language",language_family:"Language Family",people_group:"People Group",population:"Population",prayer:"Prayer",region:"Region",religion:"Religion",status:"Status",adopted:"Adopted",filters:"Filters",gospel_resources:"Gospel Resources",map:"Map",search_placeholder:"Search people groups, place, language, religion…",any:"Any",active_count:"{n} active",prayer_status:"Prayer Status",map_controls:"Research map controls",close:"Close",clear:"Clear",dashboard_title:"Big Picture Research Dashboard",align_dashboard:"Align Dashboard",align_dashboard_tip:"Reset the dashboard layout to its default alignment",selected:"Selected",world:"World",vertical_legend:"Vertical Legend",groups_in_scope:"groups in scope",filter_by:"Filter by",remove_filter:"Remove filter",groups:"groups",expand:"Expand",collapse:"Collapse",place:"Place",export_csv:"Export CSV",detail:"Detail",detail_empty:"Select a people group to see detail",heartbeat_zone:"heartbeat zone",top_countries:"Top countries",select_all:"Select all",expand_table:"Expand table",collapse_table:"Collapse table — grow the map",group:"group",deselect_all:"Deselect all",results_live:"{count} of {total} {unit} shown",filters_live:"Filters: {list}",search_live:"Search: {term}",adopted_by_churches:"Adopted by churches",bp_title:"Big Picture — Unified Research Dashboard",bp_subtitle:"Search and filter the world's people groups · least-reached shown first",export_selection:"Export this selection",map_loading:"Research map loading…",no_match:"No people groups match “{q}”.",no_photo:"No photo",only_selected:"Only selected",only_selected_hint:"Show only the selected people groups",people_committed:"People committed",people_praying:"People praying",selected_first:"Selected first",selected_first_hint:"Float the selected people groups to the top, keeping your column sort",n_shown:"{n} shown",other:"Other",wagfRegion:{africa:"Africa",asia:"Asia",europe:"Europe","latin_america_&_caribbean":"Latin America & Caribbean",oceania:"Oceania"},sort_by_column_hint:"Sort this table by {column} — shift-click to add a second column. Sorting orders the table only; the cards keep their own order.",fs_exit_hint:"Exit full screen (Esc) — back to seven rows",fs_open_hint:"Open this table full screen",fs_exit:"Exit full screen",fs_open:"Open table full screen",export_selected_hint:"Export all fields — selected people groups: {n}",export_all_hint:"Export all fields — people groups: {n}"},pp={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"},dp={doxa:{label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them"},unreached:{label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)"},frontier:{label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)"},"frontier-500k":{label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000"},unengaged:{label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged"}},gp={menuComingSoon:"Menu coming soon",pinHint:{tapDot:"Tap a coloured dot — someone still needs prayer"},upg100WallHeading:"My UPG 100 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"},_p={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},fp={family:{Christianity:"Christianity",Islam:"Islam",Hinduism:"Hinduism",Buddhism:"Buddhism",Ethnoreligion:"Ethnoreligion",Judaism:"Judaism",Sikhism:"Sikhism",Unaffiliated:"Unaffiliated",Other:"Other",Unknown:"Unknown"}},$p={placeholder:"People, place, language, religion",placeholderNoPlaces:"People, language, religion (place search needs a Mapbox token)",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"},upg100Placeholder:"Search people group, UPG-100 list, or region…"},hp={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle",collapseLegend:"Contraer la leyenda",expandLegend:"Expandir la leyenda",toggleLegend:"Mostrar u ocultar la leyenda",searchPeopleGroups:"Buscar pueblos",resetAllFilters:"Restablecer todos los filtros y la búsqueda",selectAllRows:"Seleccionar todas las filas",deselectAllRows:"Deseleccionar todas las filas",rowDetail:"Detalle de la fila",dismissHint:"Descartar la sugerencia",resizeFiltersRail:"Cambiar el tamaño del panel de filtros",resizeFiltersRailHint:"Arrastra o usa las teclas de flecha para cambiar el tamaño del panel de filtros",resizeChartsRail:"Cambiar el tamaño del panel de gráficos",resizeChartsRailHint:"Arrastra o usa las teclas de flecha para cambiar el tamaño del panel de gráficos",resizeMapTableSplit:"Cambiar la división entre el mapa y la tabla",resizeMapTableSplitHint:"Arrastra o usa las teclas de flecha para cambiar la división entre el mapa y la tabla",resizeTable:"Cambiar la altura de la tabla",resizeTableHint:"Arrastra o usa las teclas de flecha para cambiar el tamaño de la tabla",resizeDashboardHeight:"Cambiar la altura del panel",resizeDashboardHeightHint:"Arrastra o usa las teclas de flecha para cambiar la altura del panel",removeFilter:"Quitar el filtro {name}",closeDetail:"Cerrar el detalle",filterBreadcrumb:"Ruta de filtros",railViews:"Vistas del panel",upgCountLegend:"Leyenda del recuento de UPG",donutChart:"Gráfico de anillo: {title}"},mp={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…"},bp={research_controls:"Controles de investigación",clustering:"Agrupación",filters:"Filtros",pin_dim:"Atenuar puntos",export_poster:"Exportar póster…",reload_data:"Recargar datos",off:"Desactivado",native:"Nativo",mst:"MST",network:"Red",off_desc:"Mostrar cada punto por separado",native_desc:"Grupos circulares de Mapbox (lo más rápido)",mst_desc:"Redes de afinidad por árbol de expansión mínima",network_desc:"Líneas de conexión al vecino más cercano",search_languages:"Buscar idiomas…",search_religions:"Buscar religiones…",reset_all:"Restablecer todo",no_languages:"Aún no se han cargado idiomas",no_religions:"Aún no se han cargado religiones",unadopted:"No adoptado",min:"mín",max:"máx",adopted:"Adoptado",adoption:"Adopción",engaged:"Comprometido",engagement:"Compromiso",unengaged:"Necesita implicación",language:"Idioma",religion:"Religión",population:"Población",any:"Cualquiera",active_count:"{n} activos",prayer_status:"Estado de oración",close:"Cerrar",clear:"Borrar",map_controls:"Controles del mapa",clusters:"Clústeres",mst_full_name:"Árbol de expansión mínima",mst_hint:"haz clic en una fila de la leyenda para agrupar solo ese grupo"},yp={bloc:"Bloque de afinidad",gospel_access:"Acceso al evangelio",people:"Pueblos",people_name:"Pueblo (nombre)",praying:"Orando",religion_family:"Familia religiosa",search_language:"Buscar idioma",search_people:"Buscar pueblo",search_place:"Buscar lugar",search_religion:"Buscar religión",upgs_in_scope:"UPG en el ámbito",countries_touched:"países alcanzados",unreached:"no alcanzados",sum_population:"Σ población",sum_praying:"Σ orando",charts:"Gráficos",table:"Tabla",cluster:"Clúster",country:"País",engagement:"Compromiso",language:"Idioma",language_family:"Familia lingüística",people_group:"Pueblo",population:"Población",prayer:"Oración",region:"Región",religion:"Religión",status:"Estado",adopted:"Adoptado",filters:"Filtros",gospel_resources:"Recursos del Evangelio",map:"Mapa",search_placeholder:"Buscar pueblos, lugares, idiomas, religiones…",any:"Cualquiera",active_count:"{n} activos",prayer_status:"Estado de oración",map_controls:"Controles del mapa",close:"Cerrar",clear:"Borrar",dashboard_title:"Panel de investigación general",align_dashboard:"Alinear panel",align_dashboard_tip:"Restablecer la disposición del panel a su alineación predeterminada",selected:"Seleccionado",world:"Mundo",vertical_legend:"Leyenda vertical",groups_in_scope:"pueblos en el ámbito",filter_by:"Filtrar por",remove_filter:"Quitar filtro",groups:"pueblos",expand:"Expandir",collapse:"Contraer",place:"Lugar",export_csv:"Exportar CSV",detail:"Detalle",detail_empty:"Selecciona un pueblo para ver el detalle",heartbeat_zone:"zona del latido",top_countries:"Países principales",select_all:"Seleccionar todo",expand_table:"Expandir tabla",collapse_table:"Contraer tabla — ampliar el mapa",group:"pueblo",deselect_all:"Deseleccionar todo",results_live:"Se muestran {count} de {total} {unit}",filters_live:"Filtros: {list}",search_live:"Búsqueda: {term}",adopted_by_churches:"Adoptados por iglesias",bp_title:"Panorama general — panel de investigación unificado",bp_subtitle:"Busca y filtra los grupos de personas del mundo · primero los menos alcanzados",export_selection:"Exportar esta selección",map_loading:"Cargando el mapa de investigación…",no_match:"Ningún grupo de personas coincide con «{q}».",no_photo:"Sin foto",only_selected:"Solo los seleccionados",only_selected_hint:"Mostrar solo los grupos de personas seleccionados",people_committed:"Personas comprometidas",people_praying:"Personas que oran",selected_first:"Los seleccionados primero",selected_first_hint:"Llevar arriba los grupos de personas seleccionados, manteniendo el orden de las columnas",n_shown:"{n} mostrados",other:"Otros",wagfRegion:{africa:"África",asia:"Asia",europe:"Europa","latin_america_&_caribbean":"Latinoamérica",oceania:"Oceanía"},sort_by_column_hint:"Ordenar esta tabla por {column}; Mayús+clic añade una segunda columna. La ordenación solo afecta a la tabla; las tarjetas conservan su propio orden.",fs_exit_hint:"Salir de pantalla completa (Esc): volver a siete filas",fs_open_hint:"Abrir esta tabla a pantalla completa",fs_exit:"Salir de pantalla completa",fs_open:"Abrir la tabla a pantalla completa",export_selected_hint:"Exportar todos los campos — pueblos seleccionados: {n}",export_all_hint:"Exportar todos los campos — pueblos: {n}"},vp={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"},wp={doxa:{label:"Proyecto 2000: los pueblos de DOXA",definition:"Los pueblos a los que sirve DOXA, tal como los da su lista en vivo"},unreached:{label:"Proyecto 7000: pueblos no alcanzados",definition:"Prioridad de perdición de IMB 0–2 (no alcanzados de frontera, pioneros o en expansión: menos del 2 % evangélicos)"},frontier:{label:"Proyecto 4700: pueblos de frontera",definition:"Prioridad de perdición de IMB 0 (no alcanzados de frontera: 0,1 % evangélicos o menos)"},"frontier-500k":{label:"Proyecto 700: pueblos de frontera de 500.000 o más",definition:"Prioridad de perdición de IMB 0 y una población de al menos 500.000"},unengaged:{label:"Pueblos no alcanzados y no atendidos",definition:"Prioridad de perdición de IMB 0–2 y estado de compromiso: no atendido"}},kp={menuComingSoon:"Menú próximamente",pinHint:{tapDot:"Toca un punto de color: alguien todavía necesita oración"},upg100WallHeading:"Mi lista UPG 100 — 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"},xp={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Ap={family:{Christianity:"Cristianismo",Islam:"Islam",Hinduism:"Hinduismo",Buddhism:"Budismo",Ethnoreligion:"Etnorreligión",Judaism:"Judaísmo",Sikhism:"Sijismo",Unaffiliated:"Sin afiliación",Other:"Otra",Unknown:"Desconocida"}},Sp={placeholder:"Pueblo, lugar, idioma, religión",placeholderNoPlaces:"Pueblo, idioma, religión (buscar lugares requiere un token de Mapbox)",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"},sections:{within:"Dentro de {selection}",allData:"Todos los datos DOXA"},upg100Placeholder:"Buscar pueblo, lista UPG-100 o región…"},Lp={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée",collapseLegend:"Réduire la légende",expandLegend:"Développer la légende",toggleLegend:"Afficher ou masquer la légende",searchPeopleGroups:"Rechercher des peuples",resetAllFilters:"Réinitialiser tous les filtres et la recherche",selectAllRows:"Sélectionner toutes les lignes",deselectAllRows:"Désélectionner toutes les lignes",rowDetail:"Détail de la ligne",dismissHint:"Masquer l'astuce",resizeFiltersRail:"Redimensionner le volet des filtres",resizeFiltersRailHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner le volet des filtres",resizeChartsRail:"Redimensionner le volet des graphiques",resizeChartsRailHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner le volet des graphiques",resizeMapTableSplit:"Redimensionner le partage carte/tableau",resizeMapTableSplitHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner le partage carte/tableau",resizeTable:"Redimensionner la hauteur du tableau",resizeTableHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner le tableau",resizeDashboardHeight:"Redimensionner la hauteur du tableau de bord",resizeDashboardHeightHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner la hauteur du tableau de bord",removeFilter:"Supprimer le filtre {name}",closeDetail:"Fermer le détail",filterBreadcrumb:"Fil d’Ariane des filtres",railViews:"Vues du volet",upgCountLegend:"Légende du nombre d’UPG",donutChart:"Graphique en anneau : {title}"},Tp={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…"},Cp={research_controls:"Commandes de recherche",clustering:"Regroupement",filters:"Filtres",pin_dim:"Atténuation des points",export_poster:"Exporter l’affiche…",reload_data:"Recharger les données",off:"Désactivé",native:"Natif",mst:"MST",network:"Réseau",off_desc:"Afficher chaque point séparément",native_desc:"Groupes circulaires Mapbox (le plus rapide)",mst_desc:"Réseaux d’affinité par arbre couvrant minimal",network_desc:"Lignes vers le plus proche voisin",search_languages:"Rechercher des langues…",search_religions:"Rechercher des religions…",reset_all:"Tout réinitialiser",no_languages:"Aucune langue chargée pour l’instant",no_religions:"Aucune religion chargée pour l’instant",unadopted:"Non adopté",min:"min",max:"max",adopted:"Adopté",adoption:"Adoption",engaged:"Engagé",engagement:"Engagement",unengaged:"Besoin d'engagement",language:"Langue",religion:"Religion",population:"Population",any:"Tous",active_count:"{n} actifs",prayer_status:"État de prière",close:"Fermer",clear:"Effacer",map_controls:"Commandes de la carte",clusters:"Groupes",mst_full_name:"Arbre couvrant minimal",mst_hint:"cliquez sur une ligne de la légende pour ne regrouper que ce groupe"},Ep={bloc:"Bloc d’affinité",gospel_access:"Accès à l’Évangile",people:"Peuples",people_name:"Peuple (nom)",praying:"En prière",religion_family:"Famille religieuse",search_language:"Rechercher une langue",search_people:"Rechercher un peuple",search_place:"Rechercher un lieu",search_religion:"Rechercher une religion",upgs_in_scope:"UPG dans le périmètre",countries_touched:"pays touchés",unreached:"non atteints",sum_population:"Σ population",sum_praying:"Σ en prière",charts:"Graphiques",table:"Tableau",cluster:"Grappe",country:"Pays",engagement:"Engagement",language:"Langue",language_family:"Famille linguistique",people_group:"Peuple",population:"Population",prayer:"Prière",region:"Région",religion:"Religion",status:"Statut",adopted:"Adopté",filters:"Filtres",gospel_resources:"Ressources de l'Évangile",map:"Carte",search_placeholder:"Rechercher peuples, lieux, langues, religions…",any:"Tous",active_count:"{n} actifs",prayer_status:"État de prière",map_controls:"Commandes de la carte",close:"Fermer",clear:"Effacer",dashboard_title:"Tableau de bord de recherche global",align_dashboard:"Aligner le tableau",align_dashboard_tip:"Rétablir la disposition par défaut du tableau de bord",selected:"Sélectionné",world:"Monde",vertical_legend:"Légende verticale",groups_in_scope:"peuples dans le périmètre",filter_by:"Filtrer par",remove_filter:"Retirer le filtre",groups:"peuples",expand:"Développer",collapse:"Replier",place:"Lieu",export_csv:"Exporter en CSV",detail:"Détail",detail_empty:"Sélectionnez un peuple pour voir le détail",heartbeat_zone:"zone du battement de cœur",top_countries:"Principaux pays",select_all:"Tout sélectionner",expand_table:"Développer le tableau",collapse_table:"Réduire le tableau — agrandir la carte",group:"peuple",deselect_all:"Tout désélectionner",results_live:"{count} sur {total} {unit} affichés",filters_live:"Filtres : {list}",search_live:"Recherche : {term}",adopted_by_churches:"Adoptés par des Églises",bp_title:"Vue d’ensemble — tableau de bord de recherche unifié",bp_subtitle:"Rechercher et filtrer les groupes de personnes du monde · les moins atteints en premier",export_selection:"Exporter cette sélection",map_loading:"Chargement de la carte de recherche…",no_match:"Aucun groupe de personnes ne correspond à « {q} ».",no_photo:"Aucune photo",only_selected:"Uniquement la sélection",only_selected_hint:"N’afficher que les groupes de personnes sélectionnés",people_committed:"Personnes engagées",people_praying:"Personnes qui prient",selected_first:"La sélection en premier",selected_first_hint:"Faire remonter les groupes de personnes sélectionnés, en conservant le tri des colonnes",n_shown:"{n} affichés",other:"Autres",wagfRegion:{africa:"Afrique",asia:"Asie",europe:"Europe","latin_america_&_caribbean":"Amérique latine",oceania:"Océanie"},sort_by_column_hint:"Trier ce tableau par {column} — Maj+clic ajoute une deuxième colonne. Le tri ne s’applique qu’au tableau ; les cartes gardent leur propre ordre.",fs_exit_hint:"Quitter le plein écran (Échap) — retour à sept lignes",fs_open_hint:"Ouvrir ce tableau en plein écran",fs_exit:"Quitter le plein écran",fs_open:"Ouvrir le tableau en plein écran",export_selected_hint:"Exporter tous les champs — peuples sélectionnés : {n}",export_all_hint:"Exporter tous les champs — peuples : {n}"},Pp={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"},Mp={doxa:{label:"Projet 2000 : les peuples de DOXA",definition:"Les peuples que DOXA sert, tels que sa liste en direct les donne"},unreached:{label:"Projet 7000 : peuples non atteints",definition:"Priorité de perdition IMB 0–2 (non atteints frontières, pionniers ou en expansion : moins de 2 % d’évangéliques)"},frontier:{label:"Projet 4700 : peuples frontières",definition:"Priorité de perdition IMB 0 (non atteints frontières : 0,1 % d’évangéliques ou moins)"},"frontier-500k":{label:"Projet 700 : peuples frontières de 500 000 personnes ou plus",definition:"Priorité de perdition IMB 0 et une population d’au moins 500 000"},unengaged:{label:"Peuples non atteints et non engagés",definition:"Priorité de perdition IMB 0–2 et statut d’engagement : non engagé"}},Rp={menuComingSoon:"Menu bientôt disponible",pinHint:{tapDot:"Touchez un point coloré — quelqu’un a encore besoin de prière"},upg100WallHeading:"Ma liste UPG 100 — 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"},Np={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},Fp={family:{Christianity:"Christianisme",Islam:"Islam",Hinduism:"Hindouisme",Buddhism:"Bouddhisme",Ethnoreligion:"Ethnoreligion",Judaism:"Judaïsme",Sikhism:"Sikhisme",Unaffiliated:"Sans appartenance",Other:"Autre",Unknown:"Inconnue"}},Op={placeholder:"Peuple, lieu, langue, religion",placeholderNoPlaces:"Peuple, langue, religion (la recherche de lieux requiert un jeton Mapbox)",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"},sections:{within:"Dans {selection}",allData:"Toutes les données DOXA"},upg100Placeholder:"Rechercher un peuple, une liste UPG-100 ou une région…"},Ip={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें",collapseLegend:"लेजेंड संक्षिप्त करें",expandLegend:"लेजेंड विस्तृत करें",toggleLegend:"लेजेंड दिखाएँ या छिपाएँ",searchPeopleGroups:"जनसमूह खोजें",resetAllFilters:"सभी फ़िल्टर और खोज रीसेट करें",selectAllRows:"सभी पंक्तियाँ चुनें",deselectAllRows:"सभी पंक्तियाँ अचयनित करें",rowDetail:"पंक्ति विवरण",dismissHint:"संकेत हटाएँ",resizeFiltersRail:"फ़िल्टर पट्टी का आकार बदलें",resizeFiltersRailHint:"फ़िल्टर पट्टी का आकार बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",resizeChartsRail:"चार्ट पट्टी का आकार बदलें",resizeChartsRailHint:"चार्ट पट्टी का आकार बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",resizeMapTableSplit:"मानचित्र/तालिका विभाजन का आकार बदलें",resizeMapTableSplitHint:"मानचित्र/तालिका विभाजन का आकार बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",resizeTable:"तालिका की ऊँचाई बदलें",resizeTableHint:"तालिका का आकार बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",resizeDashboardHeight:"डैशबोर्ड की ऊँचाई बदलें",resizeDashboardHeightHint:"डैशबोर्ड की ऊँचाई बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",removeFilter:"फ़िल्टर {name} हटाएँ",closeDetail:"विवरण बंद करें",filterBreadcrumb:"फ़िल्टर पथ",railViews:"पट्टी के दृश्य",upgCountLegend:"UPG गणना की कुंजी",donutChart:"डोनट चार्ट: {title}"},Dp={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:"कार्य जारी…"},zp={research_controls:"शोध नियंत्रण",clustering:"क्लस्टरिंग",filters:"फ़िल्टर",pin_dim:"पिन धुंधलापन",export_poster:"पोस्टर निर्यात करें…",reload_data:"डेटा फिर से लोड करें",off:"बंद",native:"नेटिव",mst:"MST",network:"नेटवर्क",off_desc:"हर पिन अलग-अलग दिखाएँ",native_desc:"Mapbox वृत्त क्लस्टर (सबसे तेज़)",mst_desc:"न्यूनतम स्पैनिंग ट्री आधारित जाल",network_desc:"निकटतम पड़ोसी को जोड़ने वाली रेखाएँ",search_languages:"भाषाएँ खोजें…",search_religions:"धर्म खोजें…",reset_all:"सब रीसेट करें",no_languages:"अभी कोई भाषा लोड नहीं हुई",no_religions:"अभी कोई धर्म लोड नहीं हुआ",unadopted:"अ-गोद लिया",min:"न्यून",max:"अधि",adopted:"गोद लिया गया",adoption:"गोद लेना",engaged:"संपर्कित",engagement:"सहभागिता",unengaged:"सहभागिता चाहिए",language:"भाषा",religion:"धर्म",population:"जनसंख्या",any:"कोई भी",active_count:"{n} सक्रिय",prayer_status:"प्रार्थना स्थिति",close:"बंद करें",clear:"साफ़ करें",map_controls:"मानचित्र नियंत्रण",clusters:"क्लस्टर",mst_full_name:"न्यूनतम विस्तारित वृक्ष",mst_hint:"केवल उस समूह को क्लस्टर करने के लिए लेजेंड की पंक्ति पर क्लिक करें"},Hp={bloc:"समानता समूह",gospel_access:"सुसमाचार पहुँच",people:"जनसमूह",people_name:"जनसमूह (नाम)",praying:"प्रार्थना कर रहे",religion_family:"धर्म परिवार",search_language:"भाषा खोजें",search_people:"जनसमूह खोजें",search_place:"स्थान खोजें",search_religion:"धर्म खोजें",upgs_in_scope:"दायरे में UPG",countries_touched:"छुए गए देश",unreached:"अनपहुँचे",sum_population:"Σ जनसंख्या",sum_praying:"Σ प्रार्थना",charts:"चार्ट",table:"तालिका",cluster:"क्लस्टर",country:"देश",engagement:"सहभागिता",language:"भाषा",language_family:"भाषा परिवार",people_group:"जनसमूह",population:"जनसंख्या",prayer:"प्रार्थना",region:"क्षेत्र",religion:"धर्म",status:"स्थिति",adopted:"गोद लिया गया",filters:"फ़िल्टर",gospel_resources:"सुसमाचार संसाधन",map:"नक्शा",search_placeholder:"जनसमूह, स्थान, भाषा, धर्म खोजें…",any:"कोई भी",active_count:"{n} सक्रिय",prayer_status:"प्रार्थना स्थिति",map_controls:"मानचित्र नियंत्रण",close:"बंद करें",clear:"साफ़ करें",dashboard_title:"बिग पिक्चर शोध डैशबोर्ड",align_dashboard:"डैशबोर्ड संरेखित करें",align_dashboard_tip:"डैशबोर्ड लेआउट को डिफ़ॉल्ट संरेखण पर लौटाएँ",selected:"चयनित",world:"विश्व",vertical_legend:"लंबवत लेजेंड",groups_in_scope:"दायरे में जनसमूह",filter_by:"इससे फ़िल्टर करें",remove_filter:"फ़िल्टर हटाएँ",groups:"जनसमूह",expand:"विस्तार करें",collapse:"संक्षिप्त करें",place:"स्थान",export_csv:"CSV निर्यात करें",detail:"विवरण",detail_empty:"विवरण देखने के लिए एक जनसमूह चुनें",heartbeat_zone:"हृदयगति क्षेत्र",top_countries:"शीर्ष देश",select_all:"सभी चुनें",expand_table:"तालिका विस्तृत करें",collapse_table:"तालिका संक्षिप्त करें — मानचित्र बड़ा करें",group:"जनसमूह",deselect_all:"सभी अचयनित करें",results_live:"{total} में से {count} {unit} दिखाए गए",filters_live:"फ़िल्टर: {list}",search_live:"खोज: {term}",adopted_by_churches:"कलीसियाओं द्वारा अपनाए गए",bp_title:"बड़ी तस्वीर — एकीकृत शोध डैशबोर्ड",bp_subtitle:"दुनिया के जनसमूहों को खोजें और छाँटें · सबसे कम पहुँच वाले पहले",export_selection:"यह चयन निर्यात करें",map_loading:"शोध मानचित्र लोड हो रहा है…",no_match:"“{q}” से मेल खाने वाला कोई जनसमूह नहीं है।",no_photo:"कोई फ़ोटो नहीं",only_selected:"केवल चयनित",only_selected_hint:"केवल चयनित जनसमूह दिखाएँ",people_committed:"प्रतिबद्ध लोग",people_praying:"प्रार्थना करने वाले लोग",selected_first:"चयनित पहले",selected_first_hint:"चयनित जनसमूहों को ऊपर लाएँ, आपका कॉलम क्रम बनाए रखते हुए",n_shown:"{n} दिखाए गए",other:"अन्य",wagfRegion:{africa:"अफ़्रीका",asia:"एशिया",europe:"यूरोप","latin_america_&_caribbean":"लैटिन अमेरिका",oceania:"ओशिआनिया"},sort_by_column_hint:"इस तालिका को {column} के अनुसार क्रमबद्ध करें — Shift-क्लिक से दूसरा कॉलम जुड़ता है। क्रमबद्ध करने से केवल तालिका का क्रम बदलता है; कार्ड अपना क्रम बनाए रखते हैं।",fs_exit_hint:"पूर्ण स्क्रीन से बाहर निकलें (Esc) — सात पंक्तियों पर वापस",fs_open_hint:"इस तालिका को पूर्ण स्क्रीन में खोलें",fs_exit:"पूर्ण स्क्रीन से बाहर निकलें",fs_open:"तालिका को पूर्ण स्क्रीन में खोलें",export_selected_hint:"सभी फ़ील्ड निर्यात करें — चयनित जनसमूह: {n}",export_all_hint:"सभी फ़ील्ड निर्यात करें — जनसमूह: {n}"},jp={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:"स्वचालित"},Bp={doxa:{label:"प्रोजेक्ट 2000: DOXA के जनसमूह",definition:"वे जनसमूह जिनकी DOXA सेवा करता है, जैसे उसकी लाइव सूची उन्हें देती है"},unreached:{label:"प्रोजेक्ट 7000: अपहुँचे जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 (फ़्रंटियर, पायनियर या एक्सपैंडिंग अपहुँचे: 2% से कम इवेंजेलिकल)"},frontier:{label:"प्रोजेक्ट 4700: फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 (फ़्रंटियर अपहुँचे: 0.1% या उससे कम इवेंजेलिकल)"},"frontier-500k":{label:"प्रोजेक्ट 700: 5,00,000 या उससे अधिक के फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 और कम से कम 5,00,000 की जनसंख्या"},unengaged:{label:"अपहुँचे और असंलग्न जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 और संलग्नता स्थिति: असंलग्न"}},Up={menuComingSoon:"मेनू शीघ्र आ रहा है",pinHint:{tapDot:"किसी रंगीन बिंदु पर टैप करें — किसी को अभी भी प्रार्थना की आवश्यकता है"},upg100WallHeading:"मेरी UPG 100 सूची — प्रार्थना सूचियाँ और पोस्टर",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 दायरा"},qp={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},Vp={family:{Christianity:"ईसाई धर्म",Islam:"इस्लाम",Hinduism:"हिंदू धर्म",Buddhism:"बौद्ध धर्म",Ethnoreligion:"जातीय धर्म",Judaism:"यहूदी धर्म",Sikhism:"सिख धर्म",Unaffiliated:"असंबद्ध",Other:"अन्य",Unknown:"अज्ञात"}},Wp={placeholder:"लोग, स्थान, भाषा, धर्म",placeholderNoPlaces:"लोग, भाषा, धर्म (स्थान खोज के लिए Mapbox टोकन चाहिए)",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"},sections:{within:"{selection} के भीतर",allData:"सभी DOXA डेटा"},kinds:{people:"जनसमूह + देश",peopleGroup:"जनसमूह",bloc:"समानता समूह",cluster:"जनसमूह क्लस्टर",country:"देश",region:"क्षेत्र",family:"भाषा परिवार",languageKind:"भाषा",dialect:"बोली",religionKind:"धर्म"},upg100Placeholder:"जनसमूह, UPG-100 सूची या क्षेत्र खोजें…"},Gp={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio",collapseLegend:"Comprimi la legenda",expandLegend:"Espandi la legenda",toggleLegend:"Mostra o nascondi la legenda",searchPeopleGroups:"Cerca popoli",resetAllFilters:"Reimposta tutti i filtri e la ricerca",selectAllRows:"Seleziona tutte le righe",deselectAllRows:"Deseleziona tutte le righe",rowDetail:"Dettaglio riga",dismissHint:"Ignora il suggerimento",resizeFiltersRail:"Ridimensiona la barra dei filtri",resizeFiltersRailHint:"Trascina o usa i tasti freccia per ridimensionare la barra dei filtri",resizeChartsRail:"Ridimensiona la barra dei grafici",resizeChartsRailHint:"Trascina o usa i tasti freccia per ridimensionare la barra dei grafici",resizeMapTableSplit:"Ridimensiona la divisione mappa/tabella",resizeMapTableSplitHint:"Trascina o usa i tasti freccia per ridimensionare la divisione mappa/tabella",resizeTable:"Ridimensiona l'altezza della tabella",resizeTableHint:"Trascina o usa i tasti freccia per ridimensionare la tabella",resizeDashboardHeight:"Ridimensiona l'altezza della dashboard",resizeDashboardHeightHint:"Trascina o usa i tasti freccia per ridimensionare l'altezza della dashboard",removeFilter:"Rimuovi il filtro {name}",closeDetail:"Chiudi il dettaglio",filterBreadcrumb:"Percorso dei filtri",railViews:"Viste della barra",upgCountLegend:"Legenda del conteggio UPG",donutChart:"Grafico ad anello: {title}"},Kp={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…"},Xp={research_controls:"Controlli di ricerca",clustering:"Raggruppamento",filters:"Filtri",pin_dim:"Opacità dei punti",export_poster:"Esporta poster…",reload_data:"Ricarica i dati",off:"Disattivato",native:"Nativo",mst:"MST",network:"Rete",off_desc:"Mostra ogni punto singolarmente",native_desc:"Cluster circolari Mapbox (il più veloce)",mst_desc:"Reti di affinità ad albero ricoprente minimo",network_desc:"Linee verso il vicino più prossimo",search_languages:"Cerca lingue…",search_religions:"Cerca religioni…",reset_all:"Reimposta tutto",no_languages:"Nessuna lingua ancora caricata",no_religions:"Nessuna religione ancora caricata",unadopted:"Non adottato",min:"min",max:"max",adopted:"Adottato",adoption:"Adozione",engaged:"Coinvolto",engagement:"Impegno",unengaged:"Necessita impegno",language:"Lingua",religion:"Religione",population:"Popolazione",any:"Tutti",active_count:"{n} attivi",prayer_status:"Stato di preghiera",close:"Chiudi",clear:"Cancella",map_controls:"Controlli della mappa",clusters:"Cluster",mst_full_name:"Albero ricoprente minimo",mst_hint:"fai clic su una riga della legenda per raggruppare solo quel gruppo"},Yp={bloc:"Blocco di affinità",gospel_access:"Accesso al vangelo",people:"Popoli",people_name:"Popolo (nome)",praying:"In preghiera",religion_family:"Famiglia religiosa",search_language:"Cerca lingua",search_people:"Cerca popolo",search_place:"Cerca luogo",search_religion:"Cerca religione",upgs_in_scope:"UPG nell’ambito",countries_touched:"paesi toccati",unreached:"non raggiunti",sum_population:"Σ popolazione",sum_praying:"Σ in preghiera",charts:"Grafici",table:"Tabella",cluster:"Cluster",country:"Paese",engagement:"Impegno",language:"Lingua",language_family:"Famiglia linguistica",people_group:"Popolo",population:"Popolazione",prayer:"Preghiera",region:"Regione",religion:"Religione",status:"Stato",adopted:"Adottato",filters:"Filtri",gospel_resources:"Risorse del Vangelo",map:"Mappa",search_placeholder:"Cerca popoli, luoghi, lingue, religioni…",any:"Tutti",active_count:"{n} attivi",prayer_status:"Stato di preghiera",map_controls:"Controlli della mappa",close:"Chiudi",clear:"Cancella",dashboard_title:"Cruscotto di ricerca generale",align_dashboard:"Allinea cruscotto",align_dashboard_tip:"Ripristina la disposizione predefinita del cruscotto",selected:"Selezionato",world:"Mondo",vertical_legend:"Legenda verticale",groups_in_scope:"popoli nell’ambito",filter_by:"Filtra per",remove_filter:"Rimuovi filtro",groups:"popoli",expand:"Espandi",collapse:"Comprimi",place:"Luogo",export_csv:"Esporta CSV",detail:"Dettaglio",detail_empty:"Seleziona un popolo per vedere il dettaglio",heartbeat_zone:"zona del battito",top_countries:"Paesi principali",select_all:"Seleziona tutto",expand_table:"Espandi tabella",collapse_table:"Comprimi tabella — ingrandisci la mappa",group:"popolo",deselect_all:"Deseleziona tutto",results_live:"{count} di {total} {unit} mostrati",filters_live:"Filtri: {list}",search_live:"Ricerca: {term}",adopted_by_churches:"Adottati dalle chiese",bp_title:"Quadro generale — dashboard di ricerca unificata",bp_subtitle:"Cerca e filtra i gruppi di persone del mondo · prima i meno raggiunti",export_selection:"Esporta questa selezione",map_loading:"Caricamento della mappa di ricerca…",no_match:"Nessun gruppo di persone corrisponde a “{q}”.",no_photo:"Nessuna foto",only_selected:"Solo i selezionati",only_selected_hint:"Mostra solo i gruppi di persone selezionati",people_committed:"Persone impegnate",people_praying:"Persone che pregano",selected_first:"Prima i selezionati",selected_first_hint:"Porta in alto i gruppi di persone selezionati, mantenendo l’ordinamento delle colonne",n_shown:"{n} mostrati",other:"Altri",wagfRegion:{africa:"Africa",asia:"Asia",europe:"Europa","latin_america_&_caribbean":"America Latina",oceania:"Oceania"},sort_by_column_hint:"Ordina questa tabella per {column}: Maiusc+clic aggiunge una seconda colonna. L’ordinamento riguarda solo la tabella; le schede mantengono il proprio ordine.",fs_exit_hint:"Esci da schermo intero (Esc) — torna a sette righe",fs_open_hint:"Apri questa tabella a schermo intero",fs_exit:"Esci da schermo intero",fs_open:"Apri la tabella a schermo intero",export_selected_hint:"Esporta tutti i campi — popoli selezionati: {n}",export_all_hint:"Esporta tutti i campi — popoli: {n}"},Jp={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"},Zp={doxa:{label:"Progetto 2000: i popoli di DOXA",definition:"I popoli che DOXA serve, come li fornisce la sua lista in tempo reale"},unreached:{label:"Progetto 7000: popoli non raggiunti",definition:"Priorità di perdizione IMB 0–2 (non raggiunti di frontiera, pionieri o in espansione: meno del 2% evangelici)"},frontier:{label:"Progetto 4700: popoli di frontiera",definition:"Priorità di perdizione IMB 0 (non raggiunti di frontiera: 0,1% evangelici o meno)"},"frontier-500k":{label:"Progetto 700: popoli di frontiera di 500.000 o più",definition:"Priorità di perdizione IMB 0 e una popolazione di almeno 500.000"},unengaged:{label:"Popoli non raggiunti e non coinvolti",definition:"Priorità di perdizione IMB 0–2 e stato di coinvolgimento: non coinvolto"}},Qp={menuComingSoon:"Menu in arrivo",pinHint:{tapDot:"Tocca un punto colorato — qualcuno ha ancora bisogno di preghiera"},upg100WallHeading:"La mia lista UPG 100 — 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"},ed={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},td={family:{Christianity:"Cristianesimo",Islam:"Islam",Hinduism:"Induismo",Buddhism:"Buddhismo",Ethnoreligion:"Etnoreligione",Judaism:"Ebraismo",Sikhism:"Sikhismo",Unaffiliated:"Senza affiliazione",Other:"Altro",Unknown:"Sconosciuta"}},od={placeholder:"Popolo, luogo, lingua, religione",placeholderNoPlaces:"Popolo, lingua, religione (la ricerca di luoghi richiede un token Mapbox)",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"},sections:{within:"In {selection}",allData:"Tutti i dati DOXA"},kinds:{people:"Popolo + paese",peopleGroup:"Popolo",bloc:"Blocco di affinità",cluster:"Cluster di popoli",country:"Paese",region:"Regione",family:"Famiglia linguistica",languageKind:"Lingua",dialect:"Dialetto",religionKind:"Religione"},upg100Placeholder:"Cerca popolo, elenco UPG-100 o regione…"},nd={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe",collapseLegend:"Recolher a legenda",expandLegend:"Expandir a legenda",toggleLegend:"Mostrar ou ocultar a legenda",searchPeopleGroups:"Pesquisar povos",resetAllFilters:"Redefinir todos os filtros e a pesquisa",selectAllRows:"Selecionar todas as linhas",deselectAllRows:"Desmarcar todas as linhas",rowDetail:"Detalhe da linha",dismissHint:"Dispensar a dica",resizeFiltersRail:"Redimensionar o painel de filtros",resizeFiltersRailHint:"Arraste ou use as teclas de seta para redimensionar o painel de filtros",resizeChartsRail:"Redimensionar o painel de gráficos",resizeChartsRailHint:"Arraste ou use as teclas de seta para redimensionar o painel de gráficos",resizeMapTableSplit:"Redimensionar a divisão entre o mapa e a tabela",resizeMapTableSplitHint:"Arraste ou use as teclas de seta para redimensionar a divisão entre o mapa e a tabela",resizeTable:"Redimensionar a altura da tabela",resizeTableHint:"Arraste ou use as teclas de seta para redimensionar a tabela",resizeDashboardHeight:"Redimensionar a altura do painel",resizeDashboardHeightHint:"Arraste ou use as teclas de seta para redimensionar a altura do painel",removeFilter:"Remover o filtro {name}",closeDetail:"Fechar o detalhe",filterBreadcrumb:"Trilho de filtros",railViews:"Vistas do painel",upgCountLegend:"Legenda da contagem de UPG",donutChart:"Gráfico de rosca: {title}"},sd={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…"},ad={research_controls:"Controlos de pesquisa",clustering:"Agrupamento",filters:"Filtros",pin_dim:"Esbater pontos",export_poster:"Exportar cartaz…",reload_data:"Recarregar dados",off:"Desligado",native:"Nativo",mst:"MST",network:"Rede",off_desc:"Mostrar cada ponto individualmente",native_desc:"Grupos circulares Mapbox (mais rápido)",mst_desc:"Redes de afinidade por árvore geradora mínima",network_desc:"Linhas para o vizinho mais próximo",search_languages:"Pesquisar idiomas…",search_religions:"Pesquisar religiões…",reset_all:"Repor tudo",no_languages:"Ainda não há idiomas carregados",no_religions:"Ainda não há religiões carregadas",unadopted:"Não adotado",min:"mín",max:"máx",adopted:"Adotado",adoption:"Adoção",engaged:"Engajado",engagement:"Engajamento",unengaged:"Precisa de envolvimento",language:"Idioma",religion:"Religião",population:"População",any:"Qualquer",active_count:"{n} ativos",prayer_status:"Estado de oração",close:"Fechar",clear:"Limpar",map_controls:"Controlos do mapa",clusters:"Agrupamentos",mst_full_name:"Árvore geradora mínima",mst_hint:"clique numa linha da legenda para agrupar apenas esse grupo"},rd={bloc:"Bloco de afinidade",gospel_access:"Acesso ao evangelho",people:"Povos",people_name:"Povo (nome)",praying:"A orar",religion_family:"Família religiosa",search_language:"Pesquisar idioma",search_people:"Pesquisar povo",search_place:"Pesquisar lugar",search_religion:"Pesquisar religião",upgs_in_scope:"UPG no âmbito",countries_touched:"países alcançados",unreached:"não alcançados",sum_population:"Σ população",sum_praying:"Σ a orar",charts:"Gráficos",table:"Tabela",cluster:"Agrupamento",country:"País",engagement:"Engajamento",language:"Idioma",language_family:"Família linguística",people_group:"Povo",population:"População",prayer:"Oração",region:"Região",religion:"Religião",status:"Status",adopted:"Adotado",filters:"Filtros",gospel_resources:"Recursos do Evangelho",map:"Mapa",search_placeholder:"Pesquisar povos, lugares, idiomas, religiões…",any:"Qualquer",active_count:"{n} ativos",prayer_status:"Estado de oração",map_controls:"Controlos do mapa",close:"Fechar",clear:"Limpar",dashboard_title:"Painel de pesquisa geral",align_dashboard:"Alinhar painel",align_dashboard_tip:"Repor a disposição do painel para o alinhamento predefinido",selected:"Selecionado",world:"Mundo",vertical_legend:"Legenda vertical",groups_in_scope:"povos no âmbito",filter_by:"Filtrar por",remove_filter:"Remover filtro",groups:"povos",expand:"Expandir",collapse:"Recolher",place:"Lugar",export_csv:"Exportar CSV",detail:"Detalhe",detail_empty:"Selecione um povo para ver o detalhe",heartbeat_zone:"zona do batimento",top_countries:"Principais países",select_all:"Selecionar tudo",expand_table:"Expandir tabela",collapse_table:"Recolher tabela — ampliar o mapa",group:"povo",deselect_all:"Desmarcar tudo",results_live:"A mostrar {count} de {total} {unit}",filters_live:"Filtros: {list}",search_live:"Pesquisa: {term}",adopted_by_churches:"Adotados por igrejas",bp_title:"Visão geral — painel de investigação unificado",bp_subtitle:"Pesquise e filtre os grupos de pessoas do mundo · primeiro os menos alcançados",export_selection:"Exportar esta seleção",map_loading:"A carregar o mapa de investigação…",no_match:"Nenhum grupo de pessoas corresponde a “{q}”.",no_photo:"Sem foto",only_selected:"Apenas os selecionados",only_selected_hint:"Mostrar apenas os grupos de pessoas selecionados",people_committed:"Pessoas comprometidas",people_praying:"Pessoas a orar",selected_first:"Os selecionados primeiro",selected_first_hint:"Trazer para cima os grupos de pessoas selecionados, mantendo a ordenação das colunas",n_shown:"{n} apresentados",other:"Outros",wagfRegion:{africa:"África",asia:"Ásia",europe:"Europa","latin_america_&_caribbean":"América Latina",oceania:"Oceania"},sort_by_column_hint:"Ordenar esta tabela por {column} — Shift+clique adiciona uma segunda coluna. A ordenação afeta apenas a tabela; os cartões mantêm a própria ordem.",fs_exit_hint:"Sair da tela cheia (Esc) — voltar a sete linhas",fs_open_hint:"Abrir esta tabela em tela cheia",fs_exit:"Sair da tela cheia",fs_open:"Abrir a tabela em tela cheia",export_selected_hint:"Exportar todos os campos — povos selecionados: {n}",export_all_hint:"Exportar todos os campos — povos: {n}"},id={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"},ld={doxa:{label:"Projeto 2000: os povos da DOXA",definition:"Os povos que a DOXA serve, como a sua lista ao vivo os apresenta"},unreached:{label:"Projeto 7000: povos não alcançados",definition:"Prioridade de perdição do IMB 0–2 (não alcançados de fronteira, pioneiros ou em expansão: menos de 2% evangélicos)"},frontier:{label:"Projeto 4700: povos de fronteira",definition:"Prioridade de perdição do IMB 0 (não alcançados de fronteira: 0,1% evangélicos ou menos)"},"frontier-500k":{label:"Projeto 700: povos de fronteira de 500.000 ou mais",definition:"Prioridade de perdição do IMB 0 e uma população de pelo menos 500.000"},unengaged:{label:"Povos não alcançados e não engajados",definition:"Prioridade de perdição do IMB 0–2 e estado de engajamento: não engajado"}},cd={menuComingSoon:"Menu em breve",pinHint:{tapDot:"Toque num ponto colorido — alguém ainda precisa de oração"},upg100WallHeading:"Minha lista UPG 100 — 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"},ud={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},pd={family:{Christianity:"Cristianismo",Islam:"Islão",Hinduism:"Hinduísmo",Buddhism:"Budismo",Ethnoreligion:"Etnorreligião",Judaism:"Judaísmo",Sikhism:"Siquismo",Unaffiliated:"Sem afiliação",Other:"Outra",Unknown:"Desconhecida"}},dd={placeholder:"Povo, local, língua, religião",placeholderNoPlaces:"Povo, língua, religião (a busca de locais requer um token do Mapbox)",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"},sections:{within:"Dentro de {selection}",allData:"Todos os dados DOXA"},upg100Placeholder:"Procurar povo, lista UPG-100 ou região…"},gd={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată",collapseLegend:"Restrânge legenda",expandLegend:"Extinde legenda",toggleLegend:"Afișează sau ascunde legenda",searchPeopleGroups:"Caută popoare",resetAllFilters:"Resetează toate filtrele și căutarea",selectAllRows:"Selectează toate rândurile",deselectAllRows:"Deselectează toate rândurile",rowDetail:"Detaliu rând",dismissHint:"Închide sugestia",resizeFiltersRail:"Redimensionează bara de filtre",resizeFiltersRailHint:"Trage sau folosește tastele săgeată pentru a redimensiona bara de filtre",resizeChartsRail:"Redimensionează bara de grafice",resizeChartsRailHint:"Trage sau folosește tastele săgeată pentru a redimensiona bara de grafice",resizeMapTableSplit:"Redimensionează împărțirea hartă/tabel",resizeMapTableSplitHint:"Trage sau folosește tastele săgeată pentru a redimensiona împărțirea hartă/tabel",resizeTable:"Redimensionează înălțimea tabelului",resizeTableHint:"Trage sau folosește tastele săgeată pentru a redimensiona tabelul",resizeDashboardHeight:"Redimensionează înălțimea tabloului de bord",resizeDashboardHeightHint:"Trage sau folosește tastele săgeată pentru a redimensiona înălțimea tabloului de bord",removeFilter:"Elimină filtrul {name}",closeDetail:"Închide detaliul",filterBreadcrumb:"Traseul filtrelor",railViews:"Vizualizările barei",upgCountLegend:"Legenda numărului de UPG",donutChart:"Diagramă inelară: {title}"},_d={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ă…"},fd={research_controls:"Comenzi de cercetare",clustering:"Grupare",filters:"Filtre",pin_dim:"Estompare puncte",export_poster:"Exportă posterul…",reload_data:"Reîncarcă datele",off:"Oprit",native:"Nativ",mst:"MST",network:"Rețea",off_desc:"Arată fiecare punct separat",native_desc:"Grupuri circulare Mapbox (cel mai rapid)",mst_desc:"Rețele de afinitate prin arbore minim de acoperire",network_desc:"Linii către cel mai apropiat vecin",search_languages:"Caută limbi…",search_religions:"Caută religii…",reset_all:"Resetează tot",no_languages:"Nicio limbă încărcată încă",no_religions:"Nicio religie încărcată încă",unadopted:"Neadoptat",min:"min",max:"max",adopted:"Adoptat",adoption:"Adopție",engaged:"Implicat",engagement:"Implicare",unengaged:"Necesită implicare",language:"Limbă",religion:"Religie",population:"Populație",any:"Oricare",active_count:"{n} active",prayer_status:"Stare de rugăciune",close:"Închide",clear:"Șterge",map_controls:"Comenzile hărții",clusters:"Grupuri",mst_full_name:"Arbore de acoperire minim",mst_hint:"dă clic pe un rând din legendă pentru a grupa doar acel grup"},$d={bloc:"Bloc de afinitate",gospel_access:"Acces la Evanghelie",people:"Popoare",people_name:"Popor (nume)",praying:"Se roagă",religion_family:"Familie religioasă",search_language:"Caută limbă",search_people:"Caută popor",search_place:"Caută loc",search_religion:"Caută religie",upgs_in_scope:"UPG în domeniu",countries_touched:"țări atinse",unreached:"neatinși",sum_population:"Σ populație",sum_praying:"Σ se roagă",charts:"Grafice",table:"Tabel",cluster:"Grup",country:"Țară",engagement:"Implicare",language:"Limbă",language_family:"Familie de limbi",people_group:"Popor",population:"Populație",prayer:"Rugăciune",region:"Regiune",religion:"Religie",status:"Stare",adopted:"Adoptat",filters:"Filtre",gospel_resources:"Resurse ale Evangheliei",map:"Hartă",search_placeholder:"Caută popoare, locuri, limbi, religii…",any:"Oricare",active_count:"{n} active",prayer_status:"Stare de rugăciune",map_controls:"Comenzile hărții",close:"Închide",clear:"Șterge",dashboard_title:"Tablou de bord de cercetare general",align_dashboard:"Aliniază tabloul",align_dashboard_tip:"Readu aranjarea tabloului la alinierea implicită",selected:"Selectat",world:"Lume",vertical_legend:"Legendă verticală",groups_in_scope:"popoare în domeniu",filter_by:"Filtrează după",remove_filter:"Elimină filtrul",groups:"popoare",expand:"Extinde",collapse:"Restrânge",place:"Loc",export_csv:"Exportă CSV",detail:"Detaliu",detail_empty:"Selectează un popor pentru a vedea detaliile",heartbeat_zone:"zona bătăilor inimii",top_countries:"Țări de top",select_all:"Selectează tot",expand_table:"Extinde tabelul",collapse_table:"Restrânge tabelul — mărește harta",group:"popor",deselect_all:"Deselectează tot",results_live:"{count} din {total} {unit} afișate",filters_live:"Filtre: {list}",search_live:"Căutare: {term}",adopted_by_churches:"Adoptate de biserici",bp_title:"Imaginea de ansamblu — tablou de bord unificat de cercetare",bp_subtitle:"Caută și filtrează grupurile de oameni din lume · cele mai puțin atinse primele",export_selection:"Exportă această selecție",map_loading:"Se încarcă harta de cercetare…",no_match:"Niciun grup de oameni nu se potrivește cu „{q}”.",no_photo:"Nicio fotografie",only_selected:"Doar cele selectate",only_selected_hint:"Arată doar grupurile de oameni selectate",people_committed:"Persoane angajate",people_praying:"Persoane care se roagă",selected_first:"Cele selectate primele",selected_first_hint:"Ridică grupurile de oameni selectate în partea de sus, păstrând sortarea coloanelor",n_shown:"{n} afișate",other:"Altele",wagfRegion:{africa:"Africa",asia:"Asia",europe:"Europa","latin_america_&_caribbean":"America Latină",oceania:"Oceania"},sort_by_column_hint:"Sortează acest tabel după {column} — Shift+clic adaugă o a doua coloană. Sortarea ordonează doar tabelul; cardurile își păstrează propria ordine.",fs_exit_hint:"Ieși din ecran complet (Esc) — înapoi la șapte rânduri",fs_open_hint:"Deschide acest tabel pe ecran complet",fs_exit:"Ieși din ecran complet",fs_open:"Deschide tabelul pe ecran complet",export_selected_hint:"Exportă toate câmpurile — popoare selectate: {n}",export_all_hint:"Exportă toate câmpurile — popoare: {n}"},hd={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"},md={doxa:{label:"Proiectul 2000: popoarele DOXA",definition:"Popoarele pe care DOXA le slujește, așa cum le dă lista sa live"},unreached:{label:"Proiectul 7000: popoare neatinse",definition:"Prioritatea de pierzare IMB 0–2 (neatinse de frontieră, pionier sau în expansiune: sub 2% evanghelici)"},frontier:{label:"Proiectul 4700: popoare de frontieră",definition:"Prioritatea de pierzare IMB 0 (neatinse de frontieră: 0,1% evanghelici sau mai puțin)"},"frontier-500k":{label:"Proiectul 700: popoare de frontieră de 500.000 sau mai mult",definition:"Prioritatea de pierzare IMB 0 și o populație de cel puțin 500.000"},unengaged:{label:"Popoare neatinse și neangajate",definition:"Prioritatea de pierzare IMB 0–2 și starea de angajare: neangajat"}},bd={menuComingSoon:"Meniu în curând",pinHint:{tapDot:"Atinge un punct colorat — cineva are încă nevoie de rugăciune"},upg100WallHeading:"Lista mea UPG 100 — 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"},yd={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},vd={family:{Christianity:"Creștinism",Islam:"Islam",Hinduism:"Hinduism",Buddhism:"Budism",Ethnoreligion:"Etnoreligie",Judaism:"Iudaism",Sikhism:"Sikhism",Unaffiliated:"Fără afiliere",Other:"Altele",Unknown:"Necunoscută"}},wd={placeholder:"Popor, loc, limbă, religie",placeholderNoPlaces:"Popor, limbă, religie (căutarea locurilor necesită un token Mapbox)",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"},sections:{within:"În {selection}",allData:"Toate datele DOXA"},kinds:{people:"Popor + țară",peopleGroup:"Popor",bloc:"Bloc de afinitate",cluster:"Grup de popoare",country:"Țară",region:"Regiune",family:"Familie de limbi",languageKind:"Limbă",dialect:"Dialect",religionKind:"Religie"},upg100Placeholder:"Caută popor, listă UPG-100 sau regiune…"},kd={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид",collapseLegend:"Свернуть легенду",expandLegend:"Развернуть легенду",toggleLegend:"Показать или скрыть легенду",searchPeopleGroups:"Поиск народов",resetAllFilters:"Сбросить все фильтры и поиск",selectAllRows:"Выбрать все строки",deselectAllRows:"Снять выделение со всех строк",rowDetail:"Подробности строки",dismissHint:"Скрыть подсказку",resizeFiltersRail:"Изменить размер панели фильтров",resizeFiltersRailHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить размер панели фильтров",resizeChartsRail:"Изменить размер панели диаграмм",resizeChartsRailHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить размер панели диаграмм",resizeMapTableSplit:"Изменить соотношение карты и таблицы",resizeMapTableSplitHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить соотношение карты и таблицы",resizeTable:"Изменить высоту таблицы",resizeTableHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить размер таблицы",resizeDashboardHeight:"Изменить высоту панели",resizeDashboardHeightHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить высоту панели",removeFilter:"Удалить фильтр {name}",closeDetail:"Закрыть подробности",filterBreadcrumb:"Цепочка фильтров",railViews:"Виды панели",upgCountLegend:"Легенда количества UPG",donutChart:"Кольцевая диаграмма: {title}"},xd={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:"Выполняется…"},Ad={research_controls:"Инструменты исследования",clustering:"Кластеризация",filters:"Фильтры",pin_dim:"Прозрачность точек",export_poster:"Экспорт постера…",reload_data:"Обновить данные",off:"Выкл.",native:"Встроенная",mst:"MST",network:"Сеть",off_desc:"Показывать каждую точку отдельно",native_desc:"Круговые кластеры Mapbox (быстрее всего)",mst_desc:"Сети родства по минимальному остовному дереву",network_desc:"Линии до ближайшего соседа",search_languages:"Поиск языков…",search_religions:"Поиск религий…",reset_all:"Сбросить всё",no_languages:"Языки ещё не загружены",no_religions:"Религии ещё не загружены",unadopted:"Не усыновлён",min:"мин",max:"макс",adopted:"Ответственность взята",adoption:"Усыновление",engaged:"Вовлечён",engagement:"Вовлечённость",unengaged:"Нуждается в вовлечённости",language:"Язык",religion:"Религия",population:"Население",any:"Любой",active_count:"{n} активно",prayer_status:"Статус молитвы",close:"Закрыть",clear:"Очистить",map_controls:"Элементы управления картой",clusters:"Кластеры",mst_full_name:"Минимальное остовное дерево",mst_hint:"нажмите строку легенды, чтобы сгруппировать только эту группу"},Sd={bloc:"Блок родства",gospel_access:"Доступ к Евангелию",people:"Народы",people_name:"Народ (название)",praying:"Молятся",religion_family:"Семья религий",search_language:"Поиск языка",search_people:"Поиск народа",search_place:"Поиск места",search_religion:"Поиск религии",upgs_in_scope:"UPG в выборке",countries_touched:"затронутых стран",unreached:"неохваченные",sum_population:"Σ население",sum_praying:"Σ молящихся",charts:"Графики",table:"Таблица",cluster:"Кластер",country:"Страна",engagement:"Вовлечённость",language:"Язык",language_family:"Языковая семья",people_group:"Народ",population:"Население",prayer:"Молитва",region:"Регион",religion:"Религия",status:"Статус",adopted:"Ответственность взята",filters:"Фильтры",gospel_resources:"Евангельские ресурсы",map:"Карта",search_placeholder:"Поиск народов, мест, языков, религий…",any:"Любой",active_count:"{n} активно",prayer_status:"Статус молитвы",map_controls:"Элементы управления картой",close:"Закрыть",clear:"Очистить",dashboard_title:"Обзорная исследовательская панель",align_dashboard:"Выровнять панель",align_dashboard_tip:"Вернуть расположение панели к виду по умолчанию",selected:"Выбрано",world:"Мир",vertical_legend:"Вертикальная легенда",groups_in_scope:"народов в выборке",filter_by:"Фильтровать по",remove_filter:"Убрать фильтр",groups:"народов",expand:"Развернуть",collapse:"Свернуть",place:"Место",export_csv:"Экспорт CSV",detail:"Подробности",detail_empty:"Выберите народ, чтобы увидеть подробности",heartbeat_zone:"зона сердцебиения",top_countries:"Основные страны",select_all:"Выбрать все",expand_table:"Развернуть таблицу",collapse_table:"Свернуть таблицу — увеличить карту",group:"народ",deselect_all:"Снять выделение",results_live:"Показано {count} из {total} {unit}",filters_live:"Фильтры: {list}",search_live:"Поиск: {term}",adopted_by_churches:"Взяты церквями",bp_title:"Общая картина — единая исследовательская панель",bp_subtitle:"Поиск и фильтрация народов мира · наименее охваченные первыми",export_selection:"Экспортировать этот выбор",map_loading:"Загрузка исследовательской карты…",no_match:"Нет народов, соответствующих «{q}».",no_photo:"Нет фото",only_selected:"Только выбранные",only_selected_hint:"Показывать только выбранные народы",people_committed:"Взявшие обязательство",people_praying:"Молящиеся",selected_first:"Выбранные сначала",selected_first_hint:"Поднять выбранные народы наверх, сохранив сортировку столбцов",n_shown:"{n} показано",other:"Другое",wagfRegion:{africa:"Африка",asia:"Азия",europe:"Европа","latin_america_&_caribbean":"Латинская Америка",oceania:"Океания"},sort_by_column_hint:"Сортировать таблицу по столбцу «{column}» — Shift+щелчок добавляет второй столбец. Сортировка меняет порядок только в таблице; карточки сохраняют свой порядок.",fs_exit_hint:"Выйти из полноэкранного режима (Esc) — вернуться к семи строкам",fs_open_hint:"Открыть эту таблицу на весь экран",fs_exit:"Выйти из полноэкранного режима",fs_open:"Открыть таблицу на весь экран",export_selected_hint:"Экспорт всех полей — выбрано народов: {n}",export_all_hint:"Экспорт всех полей — народов: {n}"},Ld={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:"Авто"},Td={doxa:{label:"Проект 2000: народы DOXA",definition:"Народы, которым служит DOXA, как их даёт её живой список"},unreached:{label:"Проект 7000: недостигнутые народы",definition:"Приоритет потерянности IMB 0–2 (пограничные, первопроходческие или расширяющиеся недостигнутые: менее 2% евангельских христиан)"},frontier:{label:"Проект 4700: пограничные народы",definition:"Приоритет потерянности IMB 0 (пограничные недостигнутые: 0,1% евангельских христиан или меньше)"},"frontier-500k":{label:"Проект 700: пограничные народы численностью от 500 000",definition:"Приоритет потерянности IMB 0 и численность не менее 500 000"},unengaged:{label:"Недостигнутые народы без служения",definition:"Приоритет потерянности IMB 0–2 и статус служения: без служения"}},Cd={menuComingSoon:"Меню скоро появится",pinHint:{tapDot:"Нажмите на цветную точку — кому-то всё ещё нужна молитва"},upg100WallHeading:"Мой список UPG 100 — молитвенные списки и плакаты",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"},Ed={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},Pd={family:{Christianity:"Христианство",Islam:"Ислам",Hinduism:"Индуизм",Buddhism:"Буддизм",Ethnoreligion:"Этнорелигия",Judaism:"Иудаизм",Sikhism:"Сикхизм",Unaffiliated:"Не принадлежат",Other:"Другое",Unknown:"Неизвестно"}},Md={placeholder:"Народ, место, язык, религия",placeholderNoPlaces:"Народ, язык, религия (для поиска мест нужен токен Mapbox)",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"},sections:{within:"В пределах {selection}",allData:"Все данные DOXA"},upg100Placeholder:"Поиск народа, списка UPG-100 или региона…"},Rd={backToLegend:"返回图例",closeDetailView:"关闭详情视图",collapseLegend:"收起图例",expandLegend:"展开图例",toggleLegend:"显示或隐藏图例",searchPeopleGroups:"搜索民族",resetAllFilters:"重置所有筛选和搜索",selectAllRows:"选择所有行",deselectAllRows:"取消选择所有行",rowDetail:"行详情",dismissHint:"关闭提示",resizeFiltersRail:"调整筛选器栏大小",resizeFiltersRailHint:"拖动或使用方向键调整筛选器栏大小",resizeChartsRail:"调整图表栏大小",resizeChartsRailHint:"拖动或使用方向键调整图表栏大小",resizeMapTableSplit:"调整地图与表格的分隔",resizeMapTableSplitHint:"拖动或使用方向键调整地图与表格的分隔",resizeTable:"调整表格高度",resizeTableHint:"拖动或使用方向键调整表格大小",resizeDashboardHeight:"调整仪表板高度",resizeDashboardHeightHint:"拖动或使用方向键调整仪表板高度",removeFilter:"移除筛选条件 {name}",closeDetail:"关闭详情",filterBreadcrumb:"筛选路径",railViews:"栏视图",upgCountLegend:"UPG 数量图例",donutChart:"环形图:{title}"},Nd={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:"处理中…"},Fd={research_controls:"研究控件",clustering:"聚类",filters:"筛选",pin_dim:"圆点淡化",export_poster:"导出海报…",reload_data:"重新加载数据",off:"关闭",native:"原生",mst:"MST",network:"网络",off_desc:"逐个显示每个圆点",native_desc:"Mapbox 圆形聚类(最快)",mst_desc:"最小生成树亲缘网络",network_desc:"最近邻连接线",search_languages:"搜索语言…",search_religions:"搜索宗教…",reset_all:"全部重置",no_languages:"尚未加载语言",no_religions:"尚未加载宗教",unadopted:"未认领",min:"最小",max:"最大",adopted:"已认领",adoption:"认领",engaged:"已参与",engagement:"参与",unengaged:"需要参与",language:"语言",religion:"宗教",population:"人口",any:"全部",active_count:"{n} 项启用",prayer_status:"代祷状态",close:"关闭",clear:"清除",map_controls:"地图控件",clusters:"聚类",mst_full_name:"最小生成树",mst_hint:"点击图例中的一行,仅对该组进行聚类"},Od={bloc:"亲缘板块",gospel_access:"福音可及性",people:"民族",people_name:"民族(名称)",praying:"正在代祷",religion_family:"宗教族系",search_language:"搜索语言",search_people:"搜索民族",search_place:"搜索地点",search_religion:"搜索宗教",upgs_in_scope:"范围内的 UPG",countries_touched:"涉及国家",unreached:"未得之民",sum_population:"Σ 人口",sum_praying:"Σ 代祷",charts:"图表",table:"表格",cluster:"民族群",country:"国家",engagement:"参与",language:"语言",language_family:"语系",people_group:"民族",population:"人口",prayer:"祷告",region:"区域",religion:"宗教",status:"状态",adopted:"已认领",filters:"筛选",gospel_resources:"福音资源",map:"地图",search_placeholder:"搜索民族、地点、语言、宗教…",any:"全部",active_count:"{n} 项启用",prayer_status:"代祷状态",map_controls:"地图控件",close:"关闭",clear:"清除",dashboard_title:"全局研究仪表板",align_dashboard:"对齐仪表板",align_dashboard_tip:"将仪表板布局恢复为默认对齐",selected:"已选择",world:"世界",vertical_legend:"垂直图例",groups_in_scope:"个民族在范围内",filter_by:"筛选",remove_filter:"移除筛选",groups:"个民族",expand:"展开",collapse:"收起",place:"地点",export_csv:"导出 CSV",detail:"详情",detail_empty:"选择一个民族以查看详情",heartbeat_zone:"心跳区",top_countries:"主要国家",select_all:"全选",expand_table:"展开表格",collapse_table:"收起表格 — 放大地图",group:"个民族",deselect_all:"取消全选",results_live:"已显示 {total} 个{unit}中的 {count} 个",filters_live:"筛选条件:{list}",search_live:"搜索:{term}",adopted_by_churches:"已被教会认领",bp_title:"全局视图 — 统一研究仪表板",bp_subtitle:"搜索并筛选世界各民族 · 最少被触及的优先显示",export_selection:"导出此选择",map_loading:"正在加载研究地图…",no_match:"没有与“{q}”匹配的民族。",no_photo:"无照片",only_selected:"仅所选",only_selected_hint:"仅显示所选民族",people_committed:"已承诺的人数",people_praying:"祷告的人数",selected_first:"所选优先",selected_first_hint:"将所选民族置顶,同时保留您的列排序",n_shown:"显示 {n} 个",other:"其他",wagfRegion:{africa:"非洲",asia:"亚洲",europe:"欧洲","latin_america_&_caribbean":"拉丁美洲",oceania:"大洋洲"},sort_by_column_hint:"按{column}排序此表 — Shift+单击可添加第二列。排序只影响表格;卡片保持各自的顺序。",fs_exit_hint:"退出全屏(Esc)— 返回七行视图",fs_open_hint:"全屏打开此表格",fs_exit:"退出全屏",fs_open:"全屏打开表格",export_selected_hint:"导出全部字段 — 已选民族:{n}",export_all_hint:"导出全部字段 — 民族:{n}"},Id={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:"自动"},Dd={doxa:{label:"2000 计划:DOXA 服侍的族群",definition:"DOXA 服侍的族群,以其实时名单为准"},unreached:{label:"7000 计划:未得之民族群",definition:"IMB 失丧优先级 0–2(前沿、先锋或扩展中的未得之民:福音派少于 2%)"},frontier:{label:"4700 计划:前沿族群",definition:"IMB 失丧优先级 0(前沿未得之民:福音派 0.1% 或更少)"},"frontier-500k":{label:"700 计划:人口 50 万或以上的前沿族群",definition:"IMB 失丧优先级 0,且人口至少 50 万"},unengaged:{label:"尚无人参与的未得之民族群",definition:"IMB 失丧优先级 0–2,且参与状态为:无人参与"}},zd={menuComingSoon:"菜单即将推出",pinHint:{tapDot:"点按一个彩色圆点——仍有人需要祷告"},upg100WallHeading:"我的 UPG 100 名单 — 祷告名单与海报",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 区间"},Hd={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},jd={family:{Christianity:"基督教",Islam:"伊斯兰教",Hinduism:"印度教",Buddhism:"佛教",Ethnoreligion:"民族宗教",Judaism:"犹太教",Sikhism:"锡克教",Unaffiliated:"无宗教归属",Other:"其他",Unknown:"未知"}},Bd={placeholder:"民族、地点、语言、宗教",placeholderNoPlaces:"民族、语言、宗教(地点搜索需要 Mapbox 令牌)",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"},sections:{within:"在 {selection} 之內",allData:"所有 DOXA 资料"},kinds:{people:"民族 + 国家",peopleGroup:"民族",bloc:"亲缘板块",cluster:"民族群",country:"国家",region:"区域",family:"语系",languageKind:"语言",dialect:"方言",religionKind:"宗教"},upg100Placeholder:"搜索民族、UPG-100 名单或区域…"};/*! +**/let Ps;const Fr=typeof window<"u"&&window.trustedTypes;if(Fr)try{Ps=Fr.createPolicy("vue",{createHTML:e=>e})}catch{}const Or=Ps?e=>Ps.createHTML(e):e=>e,_u="http://www.w3.org/2000/svg",fu="http://www.w3.org/1998/Math/MathML",It=typeof document<"u"?document:null,Ir=It&&It.createElement("template"),$u={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"?It.createElementNS(_u,e):t==="mathml"?It.createElementNS(fu,e):o?It.createElement(e,{is:o}):It.createElement(e);return e==="select"&&n&&n.multiple!=null&&s.setAttribute("multiple",n.multiple),s},createText:e=>It.createTextNode(e),createComment:e=>It.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>It.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,n,s,a){const r=o?o.previousSibling:t.lastChild;if(s&&(s===a||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),o),!(s===a||!(s=s.nextSibling)););else{Ir.innerHTML=Or(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const i=Ir.content;if(n==="svg"||n==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,o)}return[r?r.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}},hu=Symbol("_vtc");function mu(e,t,o){const n=e[hu];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}const Dr=Symbol("_vod"),bu=Symbol("_vsh"),yu=Symbol(""),vu=/(?:^|;)\s*display\s*:/;function wu(e,t,o){const n=e.style,s=Se(o);let a=!1;if(o&&!s){if(t)if(Se(t))for(const r of t.split(";")){const i=r.slice(0,r.indexOf(":")).trim();o[i]==null&&Go(n,i,"")}else for(const r in t)o[r]==null&&Go(n,r,"");for(const r in o){r==="display"&&(a=!0);const i=o[r];i!=null?xu(e,r,!Se(t)&&t?t[r]:void 0,i)||Go(n,r,i):Go(n,r,"")}}else if(s){if(t!==o){const r=n[yu];r&&(o+=";"+r),n.cssText=o,a=vu.test(o)}}else t&&e.removeAttribute("style");Dr in e&&(e[Dr]=a?n.display:"",e[bu]&&(n.display="none"))}const Fn=/\s*!important$/;function Go(e,t,o){if(Z(o))o.forEach(n=>Go(e,t,n));else if(o==null&&(o=""),t.startsWith("--"))Fn.test(o)?e.setProperty(t,o.replace(Fn,""),"important"):e.setProperty(t,o);else{const n=ku(e,t);Fn.test(o)?e.setProperty(ot(n),o.replace(Fn,""),"important"):e[n]=o}}const zr=["Webkit","Moz","ms"],Ms={};function ku(e,t){const o=Ms[t];if(o)return o;let n=Ve(t);if(n!=="filter"&&n in e)return Ms[t]=n;n=ua(n);for(let s=0;sRs||(Eu.then(()=>Rs=0),Rs=Date.now());function Mu(e,t){const o=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=o.attached)return;const s=o.value;if(Z(s)){const a=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{a.call(n),n._stopped=!0};const r=s.slice(),i=[n];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Ru=(e,t,o,n,s,a)=>{const r=s==="svg";t==="class"?mu(e,n,r):t==="style"?wu(e,o,n):sn(t)?an(t)||Su(e,t,o,n,a):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Nu(e,t,n,r))?(Br(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&jr(e,t,n,r,a,t!=="value")):e._isVueCE&&(Fu(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!Se(n)))?Br(e,Ve(t),n,a,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),jr(e,t,n,r))};function Nu(e,t,o,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&Vr(t)&&te(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 Vr(t)&&Se(o)?!1:t in e}function Fu(e,t){const o=e._def.props;if(!o)return!1;const n=Ve(t);return Array.isArray(o)?o.some(s=>Ve(s)===n):Object.keys(o).some(s=>Ve(s)===n)}const Wr={};function Ns(e,t,o){let n=kn(e,t);rn(n)&&(n=Ee({},n,t));class s extends Fs{constructor(r){super(n,r,o)}}return s.def=n,s}const Ou=typeof HTMLElement<"u"?HTMLElement:class{};class Fs extends Ou{constructor(t,o={},n=Jr){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!==Jr?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Ee({},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 Fs){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,Mo(()=>{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._resolved=!0,this._pendingResolve=void 0;const{props:a,styles:r}=n;let i;if(a&&!Z(a))for(const l in a){const p=a[l];(p===Number||p&&p.type===Number)&&(l in this._props&&(this._props[l]=ga(this._props[l])),(i||(i=Object.create(null)))[Ve(l)]=!0)}this._numberProps=i,this._resolveProps(n),this.shadowRoot&&this._applyStyles(r),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)_e(this,n)||Object.defineProperty(this,n,{get:()=>st(o[n])})}_resolveProps(t){const{props:o}=t,n=Z(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(Ve))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(a){this._setProp(s,a,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const o=this.hasAttribute(t);let n=o?this.getAttribute(t):Wr;const s=Ve(t);o&&this._numberProps&&this._numberProps[s]&&(n=ga(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===Wr?delete this._props[t]:(this._props[t]=o,t==="key"&&this._app&&(this._app._ceVNode.key=o)),s&&this._instance&&this._update(),n)){const a=this._ob;a&&(this._processMutations(a.takeRecords()),a.disconnect()),o===!0?this.setAttribute(ot(t),""):typeof o=="string"||typeof o=="number"?this.setAttribute(ot(t),o+""):o||this.removeAttribute(ot(t)),a&&a.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Hu(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const o=ye(this._def,Ee(t,this._props));return this._instance||(o.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const s=(a,r)=>{this.dispatchEvent(new CustomEvent(a,rn(r[0])?Ee({detail:r},r[0]):{detail:r}))};n.emit=(a,...r)=>{s(a,r),ot(a)!==a&&s(ot(a),r)},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,a=this.shadowRoot,r=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(a);let i=null;for(let l=t.length-1;l>=0;l--){const p=document.createElement("style");s&&p.setAttribute("nonce",s),p.textContent=t[l],a.insertBefore(p,i||r),i=p,l===0&&(n||this._styleAnchors.set(this._def,p),o&&this._styleAnchors.set(o,p))}}_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{const t=e.props["onUpdate:modelValue"]||!1;return Z(t)?o=>cn(t,o):t},Os=Symbol("_assign"),Iu={deep:!0,created(e,{value:t,modifiers:{number:o}},n){e._modelValue=t,Ur(e,"change",()=>{const s=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>o?da(On(l)):On(l)),a=e.multiple,r=a?Jt(e._modelValue)?new Set(s):s:s[0],i=e._pendingValue=[a,a?Z(r)?s.slice():s:r];try{e[Os](r)}finally{Mo(()=>{e._pendingValue===i&&(e._pendingValue=void 0)})}}),e[Os]=Gr(n)},mounted(e,{value:t}){Kr(e,t)},beforeUpdate(e,{value:t},o){e._modelValue=t,e[Os]=Gr(o)},updated(e,{value:t}){const o=e._pendingValue;e._pendingValue=void 0,(!o||o[0]!==e.multiple||!Du(t,o[1],o[0]))&&Kr(e,t)}};function Du(e,t,o){if(!o||Z(e))return Ut(e,t);if(Jt(e)){if(e.size!==t.length)return!1;for(const n of t)if(!e.has(n))return!1;return!0}return!1}function Kr(e,t){const o=e.multiple,n=Z(t);if(!(o&&!n&&!Jt(t))){for(let s=0,a=e.options.length;sString(p)===String(i)):r.selected=Sl(t,i)>-1}else r.selected=t.has(i);else if(Ut(On(r),t)){e.selectedIndex!==s&&(e.selectedIndex=s);return}}!o&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function On(e){return"_value"in e?e._value:e.value}const zu=Ee({patchProp:Ru},$u);let Xr;function Yr(){return Xr||(Xr=Gc(zu))}const Hu=(...e)=>{Yr().render(...e)},Jr=(...e)=>{const t=Yr().createApp(...e),{mount:o}=t;return t.mount=n=>{const s=Bu(n);if(!s)return;const a=t._component;!te(a)&&!a.render&&!a.template&&(a.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const r=o(s,!1,ju(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),r},t};function ju(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Bu(e){return Se(e)?document.querySelector(e):e}const Uu={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل",collapseLegend:"طيّ وسيلة الإيضاح",expandLegend:"توسيع وسيلة الإيضاح",toggleLegend:"إظهار وسيلة الإيضاح أو إخفاؤها",searchPeopleGroups:"ابحث عن الشعوب",resetAllFilters:"إعادة تعيين كل عوامل التصفية والبحث",selectAllRows:"تحديد كل الصفوف",deselectAllRows:"إلغاء تحديد كل الصفوف",rowDetail:"تفاصيل الصف",dismissHint:"إخفاء التلميح",resizeFiltersRail:"تغيير حجم شريط عوامل التصفية",resizeFiltersRailHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير حجم شريط عوامل التصفية",resizeChartsRail:"تغيير حجم شريط الرسوم البيانية",resizeChartsRailHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير حجم شريط الرسوم البيانية",resizeMapTableSplit:"تغيير نسبة التقسيم بين الخريطة والجدول",resizeMapTableSplitHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير نسبة التقسيم بين الخريطة والجدول",resizeTable:"تغيير ارتفاع الجدول",resizeTableHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير حجم الجدول",resizeDashboardHeight:"تغيير ارتفاع لوحة المعلومات",resizeDashboardHeightHint:"اسحب أو استخدم مفاتيح الأسهم لتغيير ارتفاع لوحة المعلومات",removeFilter:"إزالة عامل التصفية {name}",closeDetail:"إغلاق التفاصيل",filterBreadcrumb:"مسار عوامل التصفية",railViews:"طرق عرض الشريط",upgCountLegend:"مفتاح عدد UPG",donutChart:"مخطط دائري مجوّف: {title}"},qu={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:"جارٍ العمل…"},Vu={research_controls:"أدوات البحث",clustering:"التجميع",filters:"عوامل التصفية",pin_dim:"خفوت النقاط",export_poster:"تصدير ملصق…",reload_data:"إعادة تحميل البيانات",off:"إيقاف",native:"أصلي",mst:"الشجرة الممتدة",network:"شبكة",off_desc:"إظهار كل نقطة على حدة",native_desc:"تجميع دوائر Mapbox (الأسرع)",mst_desc:"شبكات تقارب بالشجرة الممتدة الصغرى",network_desc:"خطوط ربط بأقرب جار",search_languages:"ابحث عن اللغات…",search_religions:"ابحث عن الأديان…",reset_all:"إعادة تعيين الكل",no_languages:"لم تُحمَّل أي لغات بعد",no_religions:"لم تُحمَّل أي أديان بعد",unadopted:"غير متبنّى",min:"الأدنى",max:"الأعلى",adopted:"متبنَّاة",adoption:"التبني",engaged:"مُخْدُومَة",engagement:"المشاركة",unengaged:"يحتاج إلى انخراط",language:"اللغة",religion:"الدين",population:"السكان",any:"الكل",active_count:"{n} نشط",prayer_status:"حالة الصلاة",close:"إغلاق",clear:"مسح",map_controls:"أدوات التحكم بالخريطة",clusters:"التجمّعات",mst_full_name:"الشجرة الممتدة الصغرى",mst_hint:"اضغط على صف في مفتاح الخريطة لتجميع تلك المجموعة وحدها"},Wu={bloc:"كتلة التقارب",gospel_access:"الوصول إلى الإنجيل",people:"الشعوب",people_name:"الشعب (الاسم)",praying:"يصلّون",religion_family:"عائلة الأديان",search_language:"ابحث عن لغة",search_people:"ابحث عن شعب",search_place:"ابحث عن مكان",search_religion:"ابحث عن دين",upgs_in_scope:"الشعوب ضمن النطاق",countries_touched:"الدول المشمولة",unreached:"غير موصولين",sum_population:"مجموع السكان",sum_praying:"مجموع المصلّين",charts:"الرسوم البيانية",table:"الجدول",cluster:"المجموعة",country:"الدولة",engagement:"المشاركة",language:"اللغة",language_family:"عائلة اللغة",people_group:"الشعب",population:"السكان",prayer:"الصلاة",region:"المنطقة",religion:"الدين",status:"الحالة",adopted:"متبنَّاة",filters:"عوامل التصفية",gospel_resources:"موارد الإنجيل",map:"الخريطة",search_placeholder:"ابحث عن الشعوب والأماكن واللغات والأديان…",any:"الكل",active_count:"{n} نشط",prayer_status:"حالة الصلاة",map_controls:"أدوات التحكم بالخريطة",close:"إغلاق",clear:"مسح",dashboard_title:"لوحة البحث الشاملة",align_dashboard:"محاذاة اللوحة",align_dashboard_tip:"إعادة تخطيط اللوحة إلى المحاذاة الافتراضية",selected:"المحدد",world:"العالم",vertical_legend:"مفتاح عمودي",groups_in_scope:"مجموعة ضمن النطاق",filter_by:"تصفية حسب",remove_filter:"إزالة التصفية",groups:"مجموعة",expand:"توسيع",collapse:"طيّ",place:"المكان",export_csv:"تصدير CSV",detail:"التفاصيل",detail_empty:"اختر شعبًا لعرض التفاصيل",heartbeat_zone:"منطقة نبض القلب",top_countries:"أبرز الدول",select_all:"تحديد الكل",expand_table:"توسيع الجدول",collapse_table:"طيّ الجدول — توسيع الخريطة",group:"مجموعة",deselect_all:"إلغاء تحديد الكل",results_live:"عرض {count} من أصل {total} {unit}",filters_live:"عوامل التصفية: {list}",search_live:"البحث: {term}",adopted_by_churches:"تم تبنّيها من قِبل الكنائس",bp_title:"الصورة الكاملة — لوحة البحث الموحّدة",bp_subtitle:"ابحث وصفِّ شعوب العالم · الأقل وصولاً إليها أولاً",export_selection:"تصدير هذا التحديد",map_loading:"جارٍ تحميل خريطة البحث…",no_match:"لا توجد شعوب تطابق ”{q}“.",no_photo:"لا توجد صورة",only_selected:"المحدَّدة فقط",only_selected_hint:"إظهار الشعوب المحدَّدة فقط",people_committed:"الأشخاص الملتزمون",people_praying:"الأشخاص المصلّون",selected_first:"المحدَّدة أولاً",selected_first_hint:"رفع الشعوب المحدَّدة إلى الأعلى مع الإبقاء على ترتيب الأعمدة",n_shown:"{n} معروض",other:"أخرى",wagfRegion:{africa:"أفريقيا",asia:"آسيا",europe:"أوروبا","latin_america_&_caribbean":"أمريكا اللاتينية",oceania:"أوقيانوسيا"},sort_by_column_hint:"رتّب هذا الجدول حسب {column} — النقر مع Shift يضيف عمودًا ثانيًا. الفرز يرتّب الجدول فقط؛ وتحتفظ البطاقات بترتيبها.",fs_exit_hint:"الخروج من ملء الشاشة (Esc) — العودة إلى سبعة صفوف",fs_open_hint:"فتح هذا الجدول بملء الشاشة",fs_exit:"الخروج من ملء الشاشة",fs_open:"فتح الجدول بملء الشاشة",export_selected_hint:"تصدير جميع الحقول — الشعوب المحددة: {n}",export_all_hint:"تصدير جميع الحقول — الشعوب: {n}"},Gu={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:"تلقائي"},Ku={doxa:{label:"المشروع 2000: الشعوب التي تخدمها DOXA",definition:"الشعوب التي تخدمها DOXA كما تقدّمها قائمتها الحيّة"},unreached:{label:"المشروع 7000: الشعوب غير المُبشَّرة",definition:"أولوية الضياع لدى IMB من 0 إلى 2 (حدودية أو رائدة أو متوسّعة غير مُبشَّرة: أقل من 2% إنجيليون)"},frontier:{label:"المشروع 4700: الشعوب الحدودية",definition:"أولوية الضياع لدى IMB بقيمة 0 (حدودية غير مُبشَّرة: 0.1% إنجيليون أو أقل)"},"frontier-500k":{label:"المشروع 700: الشعوب الحدودية التي يبلغ عددها 500,000 أو أكثر",definition:"أولوية الضياع لدى IMB بقيمة 0 وعدد سكان لا يقل عن 500,000"},unengaged:{label:"الشعوب غير المُبشَّرة التي لم يُعمَل بينها",definition:"أولوية الضياع لدى IMB من 0 إلى 2 وحالة العمل: لم يُعمَل بينها"}},Xu={menuComingSoon:"القائمة قادمة قريباً",pinHint:{tapDot:"اضغط على نقطة ملوّنة — لا يزال هناك من يحتاج إلى الصلاة"},upg100WallHeading:"قائمتي UPG 100 — قوائم صلاة وملصقات",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"},Yu={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},Ju={family:{Christianity:"المسيحية",Islam:"الإسلام",Hinduism:"الهندوسية",Buddhism:"البوذية",Ethnoreligion:"الديانات العرقية",Judaism:"اليهودية",Sikhism:"السيخية",Unaffiliated:"غير منتمين",Other:"أخرى",Unknown:"غير معروف"}},Zu={placeholder:"شعب، مكان، لغة، ديانة",placeholderNoPlaces:"شعب، لغة، ديانة (البحث عن الأماكن يتطلب رمز Mapbox)",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"},sections:{within:"ضمن {selection}",allData:"كل بيانات DOXA"},upg100Placeholder:"ابحث عن شعب أو قائمة UPG-100 أو منطقة…"},Qu={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen",collapseLegend:"Legende einklappen",expandLegend:"Legende ausklappen",toggleLegend:"Legende ein- oder ausblenden",searchPeopleGroups:"Volksgruppen suchen",resetAllFilters:"Alle Filter und die Suche zurücksetzen",selectAllRows:"Alle Zeilen auswählen",deselectAllRows:"Auswahl aller Zeilen aufheben",rowDetail:"Zeilendetails",dismissHint:"Hinweis schließen",resizeFiltersRail:"Filterleiste in der Größe ändern",resizeFiltersRailHint:"Ziehen oder Pfeiltasten verwenden, um die Filterleiste in der Größe zu ändern",resizeChartsRail:"Diagrammleiste in der Größe ändern",resizeChartsRailHint:"Ziehen oder Pfeiltasten verwenden, um die Diagrammleiste in der Größe zu ändern",resizeMapTableSplit:"Aufteilung zwischen Karte und Tabelle ändern",resizeMapTableSplitHint:"Ziehen oder Pfeiltasten verwenden, um die Aufteilung zwischen Karte und Tabelle zu ändern",resizeTable:"Tabellenhöhe ändern",resizeTableHint:"Ziehen oder Pfeiltasten verwenden, um die Tabelle in der Größe zu ändern",resizeDashboardHeight:"Höhe des Dashboards ändern",resizeDashboardHeightHint:"Ziehen oder Pfeiltasten verwenden, um die Höhe des Dashboards zu ändern",removeFilter:"Filter {name} entfernen",closeDetail:"Details schließen",filterBreadcrumb:"Filterpfad",railViews:"Ansichten der Leiste",upgCountLegend:"Legende der UPG-Anzahl",donutChart:"Ringdiagramm: {title}"},ep={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…"},tp={research_controls:"Forschungssteuerung",clustering:"Clustering",filters:"Filter",pin_dim:"Pin-Transparenz",export_poster:"Poster exportieren…",reload_data:"Daten neu laden",off:"Aus",native:"Nativ",mst:"MST",network:"Netzwerk",off_desc:"Jeden Pin einzeln anzeigen",native_desc:"Mapbox-Kreiscluster (am schnellsten)",mst_desc:"Affinitätsnetze über minimalen Spannbaum",network_desc:"Verbindungslinien zum nächsten Nachbarn",search_languages:"Sprachen suchen…",search_religions:"Religionen suchen…",reset_all:"Alles zurücksetzen",no_languages:"Noch keine Sprachen geladen",no_religions:"Noch keine Religionen geladen",unadopted:"Nicht adoptiert",min:"min",max:"max",adopted:"Adoptiert",adoption:"Adoption",engaged:"Engagiert",engagement:"Engagement",unengaged:"Braucht Engagement",language:"Sprache",religion:"Religion",population:"Bevölkerung",any:"Alle",active_count:"{n} aktiv",prayer_status:"Gebetsstatus",close:"Schließen",clear:"Zurücksetzen",map_controls:"Kartensteuerung",clusters:"Cluster",mst_full_name:"Minimaler Spannbaum",mst_hint:"Klicken Sie auf eine Legendenzeile, um nur diese Gruppe zu clustern"},op={bloc:"Affinitätsblock",gospel_access:"Zugang zum Evangelium",people:"Völker",people_name:"Volk (Name)",praying:"Betend",religion_family:"Religionsfamilie",search_language:"Sprache suchen",search_people:"Volk suchen",search_place:"Ort suchen",search_religion:"Religion suchen",upgs_in_scope:"UPGs im Bereich",countries_touched:"berührte Länder",unreached:"unerreicht",sum_population:"Σ Bevölkerung",sum_praying:"Σ Betende",charts:"Diagramme",table:"Tabelle",cluster:"Cluster",country:"Land",engagement:"Engagement",language:"Sprache",language_family:"Sprachfamilie",people_group:"Volk",population:"Bevölkerung",prayer:"Gebet",region:"Region",religion:"Religion",status:"Status",adopted:"Adoptiert",filters:"Filter",gospel_resources:"Evangeliumsressourcen",map:"Karte",search_placeholder:"Volksgruppen, Orte, Sprachen, Religionen suchen…",any:"Alle",active_count:"{n} aktiv",prayer_status:"Gebetsstatus",map_controls:"Kartensteuerung",close:"Schließen",clear:"Zurücksetzen",dashboard_title:"Big-Picture-Forschungsdashboard",align_dashboard:"Layout ausrichten",align_dashboard_tip:"Das Dashboard-Layout auf die Standardausrichtung zurücksetzen",selected:"Ausgewählt",world:"Welt",vertical_legend:"Vertikale Legende",groups_in_scope:"Volksgruppen im Bereich",filter_by:"Filtern nach",remove_filter:"Filter entfernen",groups:"Volksgruppen",expand:"Aufklappen",collapse:"Zuklappen",place:"Ort",export_csv:"CSV exportieren",detail:"Details",detail_empty:"Wählen Sie eine Volksgruppe, um Details zu sehen",heartbeat_zone:"Herzschlag-Zone",top_countries:"Top-Länder",select_all:"Alle auswählen",expand_table:"Tabelle ausklappen",collapse_table:"Tabelle einklappen – Karte vergrößern",group:"Volksgruppe",deselect_all:"Auswahl aufheben",results_live:"{count} von {total} {unit} angezeigt",filters_live:"Filter: {list}",search_live:"Suche: {term}",adopted_by_churches:"Von Gemeinden übernommen",bp_title:"Big Picture — einheitliches Forschungs-Dashboard",bp_subtitle:"Die Volksgruppen der Welt suchen und filtern · am wenigsten erreichte zuerst",export_selection:"Diese Auswahl exportieren",map_loading:"Forschungskarte wird geladen…",no_match:"Keine Volksgruppen entsprechen „{q}“.",no_photo:"Kein Foto",only_selected:"Nur ausgewählte",only_selected_hint:"Nur die ausgewählten Volksgruppen anzeigen",people_committed:"Verbindlich zugesagte Personen",people_praying:"Betende Personen",selected_first:"Ausgewählte zuerst",selected_first_hint:"Die ausgewählten Volksgruppen nach oben holen, die Spaltensortierung bleibt erhalten",n_shown:"{n} angezeigt",other:"Andere",wagfRegion:{africa:"Afrika",asia:"Asien",europe:"Europa","latin_america_&_caribbean":"Lateinamerika",oceania:"Ozeanien"},sort_by_column_hint:"Tabelle nach {column} sortieren – Umschalt-Klick fügt eine zweite Spalte hinzu. Die Sortierung ordnet nur die Tabelle; die Karten behalten ihre eigene Reihenfolge.",fs_exit_hint:"Vollbild beenden (Esc) — zurück zu sieben Zeilen",fs_open_hint:"Diese Tabelle im Vollbild öffnen",fs_exit:"Vollbild beenden",fs_open:"Tabelle im Vollbild öffnen",export_selected_hint:"Alle Felder exportieren — ausgewählte Volksgruppen: {n}",export_all_hint:"Alle Felder exportieren — Volksgruppen: {n}"},np={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"},sp={doxa:{label:"Projekt 2000: die Volksgruppen von DOXA",definition:"Die Volksgruppen, denen DOXA dient, wie seine Live-Liste sie angibt"},unreached:{label:"Projekt 7000: unerreichte Volksgruppen",definition:"IMB Lostness Priority 0–2 (Frontier, Pioneer oder Expanding Unreached: unter 2 % Evangelikale)"},frontier:{label:"Projekt 4700: Frontier-Volksgruppen",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0,1 % Evangelikale oder weniger)"},"frontier-500k":{label:"Projekt 700: Frontier-Volksgruppen mit 500.000 oder mehr Menschen",definition:"IMB Lostness Priority 0 und eine Bevölkerung von mindestens 500.000"},unengaged:{label:"Unerreichte Volksgruppen ohne Engagement",definition:"IMB Lostness Priority 0–2 und Engagement-Status: ohne Engagement"}},ap={menuComingSoon:"Menü folgt in Kürze",pinHint:{tapDot:"Tippe auf einen farbigen Punkt — jemand braucht noch Gebet"},upg100WallHeading:"Meine UPG-100-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"},rp={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},ip={family:{Christianity:"Christentum",Islam:"Islam",Hinduism:"Hinduismus",Buddhism:"Buddhismus",Ethnoreligion:"Ethnische Religionen",Judaism:"Judentum",Sikhism:"Sikhismus",Unaffiliated:"Konfessionslos",Other:"Andere",Unknown:"Unbekannt"}},lp={placeholder:"Volk, Ort, Sprache, Religion",placeholderNoPlaces:"Volk, Sprache, Religion (Ortssuche braucht ein Mapbox-Token)",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"},kinds:{people:"Volk + Land",peopleGroup:"Volk",bloc:"Affinitätsblock",cluster:"Völkercluster",country:"Land",region:"Region",family:"Sprachfamilie",languageKind:"Sprache",dialect:"Dialekt",religionKind:"Religion"},upg100Placeholder:"Volksgruppe, UPG-100-Liste oder Region suchen…"},cp={backToLegend:"Back to Legend",closeDetailView:"Close detail view",collapseLegend:"Collapse legend",expandLegend:"Expand legend",toggleLegend:"Show or hide the legend",searchPeopleGroups:"Search people groups",resetAllFilters:"Reset all filters and search",selectAllRows:"Select all rows",deselectAllRows:"Deselect all rows",rowDetail:"Row detail",dismissHint:"Dismiss hint",resizeFiltersRail:"Resize filters rail",resizeFiltersRailHint:"Drag or use arrow keys to resize the filters rail",resizeChartsRail:"Resize charts rail",resizeChartsRailHint:"Drag or use arrow keys to resize the charts rail",resizeMapTableSplit:"Resize map/table split",resizeMapTableSplitHint:"Drag or use arrow keys to resize the map/table split",resizeTable:"Resize table height",resizeTableHint:"Drag or use arrow keys to resize the table",resizeDashboardHeight:"Resize dashboard height",resizeDashboardHeightHint:"Drag or use arrow keys to resize the dashboard's height",removeFilter:"Remove filter {name}",closeDetail:"Close detail",filterBreadcrumb:"Filter breadcrumb",railViews:"Rail views",upgCountLegend:"UPG count legend",donutChart:"{title} donut chart"},up={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"},pp={research_controls:"Research controls",clustering:"Clustering",filters:"Filters",pin_dim:"Pin dim",export_poster:"Export poster…",reload_data:"Reload data",off:"Off",native:"Native",mst:"MST",network:"Network",off_desc:"Show every pin individually",native_desc:"Mapbox circle clusters (fastest)",mst_desc:"Minimum-spanning-tree affinity webs",network_desc:"Nearest-neighbor connection lines",search_languages:"Search languages…",search_religions:"Search religions…",reset_all:"Reset all",no_languages:"No languages loaded yet",no_religions:"No religions loaded yet",unadopted:"Unadopted",min:"min",max:"max",adopted:"Adopted",adoption:"Adoption",engaged:"Engaged",engagement:"Engagement",unengaged:"Unengaged",language:"Language",religion:"Religion",population:"Population",any:"Any",active_count:"{n} active",prayer_status:"Prayer Status",close:"Close",clear:"Clear",map_controls:"Research map controls",clusters:"Clusters",mst_full_name:"Minimum Spanning Tree",mst_hint:"click a legend row to cluster only that group"},dp={bloc:"Bloc",gospel_access:"Gospel Access",people:"People",people_name:"People (name)",praying:"Praying",religion_family:"Religion Family",search_language:"Search language",search_people:"Search people",search_place:"Search place",search_religion:"Search religion",upgs_in_scope:"UPGs in scope",countries_touched:"countries touched",unreached:"unreached",sum_population:"Σ population",sum_praying:"Σ praying",charts:"Charts",table:"Table",cluster:"Cluster",country:"Country",engagement:"Engagement",language:"Language",language_family:"Language Family",people_group:"People Group",population:"Population",prayer:"Prayer",region:"Region",religion:"Religion",status:"Status",adopted:"Adopted",filters:"Filters",gospel_resources:"Gospel Resources",map:"Map",search_placeholder:"Search people groups, place, language, religion…",any:"Any",active_count:"{n} active",prayer_status:"Prayer Status",map_controls:"Research map controls",close:"Close",clear:"Clear",dashboard_title:"Big Picture Research Dashboard",align_dashboard:"Align Dashboard",align_dashboard_tip:"Reset the dashboard layout to its default alignment",selected:"Selected",world:"World",vertical_legend:"Vertical Legend",groups_in_scope:"groups in scope",filter_by:"Filter by",remove_filter:"Remove filter",groups:"groups",expand:"Expand",collapse:"Collapse",place:"Place",export_csv:"Export CSV",detail:"Detail",detail_empty:"Select a people group to see detail",heartbeat_zone:"heartbeat zone",top_countries:"Top countries",select_all:"Select all",expand_table:"Expand table",collapse_table:"Collapse table — grow the map",group:"group",deselect_all:"Deselect all",results_live:"{count} of {total} {unit} shown",filters_live:"Filters: {list}",search_live:"Search: {term}",adopted_by_churches:"Adopted by churches",bp_title:"Big Picture — Unified Research Dashboard",bp_subtitle:"Search and filter the world's people groups · least-reached shown first",export_selection:"Export this selection",map_loading:"Research map loading…",no_match:"No people groups match “{q}”.",no_photo:"No photo",only_selected:"Only selected",only_selected_hint:"Show only the selected people groups",people_committed:"People committed",people_praying:"People praying",selected_first:"Selected first",selected_first_hint:"Float the selected people groups to the top, keeping your column sort",n_shown:"{n} shown",other:"Other",wagfRegion:{africa:"Africa",asia:"Asia",europe:"Europe","latin_america_&_caribbean":"Latin America & Caribbean",oceania:"Oceania"},sort_by_column_hint:"Sort this table by {column} — shift-click to add a second column. Sorting orders the table only; the cards keep their own order.",fs_exit_hint:"Exit full screen (Esc) — back to seven rows",fs_open_hint:"Open this table full screen",fs_exit:"Exit full screen",fs_open:"Open table full screen",export_selected_hint:"Export all fields — selected people groups: {n}",export_all_hint:"Export all fields — people groups: {n}"},gp={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"},_p={doxa:{label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them"},unreached:{label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)"},frontier:{label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)"},"frontier-500k":{label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000"},unengaged:{label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged"}},fp={menuComingSoon:"Menu coming soon",pinHint:{tapDot:"Tap a coloured dot — someone still needs prayer"},upg100WallHeading:"My UPG 100 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"},$p={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},hp={family:{Christianity:"Christianity",Islam:"Islam",Hinduism:"Hinduism",Buddhism:"Buddhism",Ethnoreligion:"Ethnoreligion",Judaism:"Judaism",Sikhism:"Sikhism",Unaffiliated:"Unaffiliated",Other:"Other",Unknown:"Unknown"}},mp={placeholder:"People, place, language, religion",placeholderNoPlaces:"People, language, religion (place search needs a Mapbox token)",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"},upg100Placeholder:"Search people group, UPG-100 list, or region…"},bp={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle",collapseLegend:"Contraer la leyenda",expandLegend:"Expandir la leyenda",toggleLegend:"Mostrar u ocultar la leyenda",searchPeopleGroups:"Buscar pueblos",resetAllFilters:"Restablecer todos los filtros y la búsqueda",selectAllRows:"Seleccionar todas las filas",deselectAllRows:"Deseleccionar todas las filas",rowDetail:"Detalle de la fila",dismissHint:"Descartar la sugerencia",resizeFiltersRail:"Cambiar el tamaño del panel de filtros",resizeFiltersRailHint:"Arrastra o usa las teclas de flecha para cambiar el tamaño del panel de filtros",resizeChartsRail:"Cambiar el tamaño del panel de gráficos",resizeChartsRailHint:"Arrastra o usa las teclas de flecha para cambiar el tamaño del panel de gráficos",resizeMapTableSplit:"Cambiar la división entre el mapa y la tabla",resizeMapTableSplitHint:"Arrastra o usa las teclas de flecha para cambiar la división entre el mapa y la tabla",resizeTable:"Cambiar la altura de la tabla",resizeTableHint:"Arrastra o usa las teclas de flecha para cambiar el tamaño de la tabla",resizeDashboardHeight:"Cambiar la altura del panel",resizeDashboardHeightHint:"Arrastra o usa las teclas de flecha para cambiar la altura del panel",removeFilter:"Quitar el filtro {name}",closeDetail:"Cerrar el detalle",filterBreadcrumb:"Ruta de filtros",railViews:"Vistas del panel",upgCountLegend:"Leyenda del recuento de UPG",donutChart:"Gráfico de anillo: {title}"},yp={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…"},vp={research_controls:"Controles de investigación",clustering:"Agrupación",filters:"Filtros",pin_dim:"Atenuar puntos",export_poster:"Exportar póster…",reload_data:"Recargar datos",off:"Desactivado",native:"Nativo",mst:"MST",network:"Red",off_desc:"Mostrar cada punto por separado",native_desc:"Grupos circulares de Mapbox (lo más rápido)",mst_desc:"Redes de afinidad por árbol de expansión mínima",network_desc:"Líneas de conexión al vecino más cercano",search_languages:"Buscar idiomas…",search_religions:"Buscar religiones…",reset_all:"Restablecer todo",no_languages:"Aún no se han cargado idiomas",no_religions:"Aún no se han cargado religiones",unadopted:"No adoptado",min:"mín",max:"máx",adopted:"Adoptado",adoption:"Adopción",engaged:"Comprometido",engagement:"Compromiso",unengaged:"Necesita implicación",language:"Idioma",religion:"Religión",population:"Población",any:"Cualquiera",active_count:"{n} activos",prayer_status:"Estado de oración",close:"Cerrar",clear:"Borrar",map_controls:"Controles del mapa",clusters:"Clústeres",mst_full_name:"Árbol de expansión mínima",mst_hint:"haz clic en una fila de la leyenda para agrupar solo ese grupo"},wp={bloc:"Bloque de afinidad",gospel_access:"Acceso al evangelio",people:"Pueblos",people_name:"Pueblo (nombre)",praying:"Orando",religion_family:"Familia religiosa",search_language:"Buscar idioma",search_people:"Buscar pueblo",search_place:"Buscar lugar",search_religion:"Buscar religión",upgs_in_scope:"UPG en el ámbito",countries_touched:"países alcanzados",unreached:"no alcanzados",sum_population:"Σ población",sum_praying:"Σ orando",charts:"Gráficos",table:"Tabla",cluster:"Clúster",country:"País",engagement:"Compromiso",language:"Idioma",language_family:"Familia lingüística",people_group:"Pueblo",population:"Población",prayer:"Oración",region:"Región",religion:"Religión",status:"Estado",adopted:"Adoptado",filters:"Filtros",gospel_resources:"Recursos del Evangelio",map:"Mapa",search_placeholder:"Buscar pueblos, lugares, idiomas, religiones…",any:"Cualquiera",active_count:"{n} activos",prayer_status:"Estado de oración",map_controls:"Controles del mapa",close:"Cerrar",clear:"Borrar",dashboard_title:"Panel de investigación general",align_dashboard:"Alinear panel",align_dashboard_tip:"Restablecer la disposición del panel a su alineación predeterminada",selected:"Seleccionado",world:"Mundo",vertical_legend:"Leyenda vertical",groups_in_scope:"pueblos en el ámbito",filter_by:"Filtrar por",remove_filter:"Quitar filtro",groups:"pueblos",expand:"Expandir",collapse:"Contraer",place:"Lugar",export_csv:"Exportar CSV",detail:"Detalle",detail_empty:"Selecciona un pueblo para ver el detalle",heartbeat_zone:"zona del latido",top_countries:"Países principales",select_all:"Seleccionar todo",expand_table:"Expandir tabla",collapse_table:"Contraer tabla — ampliar el mapa",group:"pueblo",deselect_all:"Deseleccionar todo",results_live:"Se muestran {count} de {total} {unit}",filters_live:"Filtros: {list}",search_live:"Búsqueda: {term}",adopted_by_churches:"Adoptados por iglesias",bp_title:"Panorama general — panel de investigación unificado",bp_subtitle:"Busca y filtra los grupos de personas del mundo · primero los menos alcanzados",export_selection:"Exportar esta selección",map_loading:"Cargando el mapa de investigación…",no_match:"Ningún grupo de personas coincide con «{q}».",no_photo:"Sin foto",only_selected:"Solo los seleccionados",only_selected_hint:"Mostrar solo los grupos de personas seleccionados",people_committed:"Personas comprometidas",people_praying:"Personas que oran",selected_first:"Los seleccionados primero",selected_first_hint:"Llevar arriba los grupos de personas seleccionados, manteniendo el orden de las columnas",n_shown:"{n} mostrados",other:"Otros",wagfRegion:{africa:"África",asia:"Asia",europe:"Europa","latin_america_&_caribbean":"Latinoamérica",oceania:"Oceanía"},sort_by_column_hint:"Ordenar esta tabla por {column}; Mayús+clic añade una segunda columna. La ordenación solo afecta a la tabla; las tarjetas conservan su propio orden.",fs_exit_hint:"Salir de pantalla completa (Esc): volver a siete filas",fs_open_hint:"Abrir esta tabla a pantalla completa",fs_exit:"Salir de pantalla completa",fs_open:"Abrir la tabla a pantalla completa",export_selected_hint:"Exportar todos los campos — pueblos seleccionados: {n}",export_all_hint:"Exportar todos los campos — pueblos: {n}"},kp={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"},xp={doxa:{label:"Proyecto 2000: los pueblos de DOXA",definition:"Los pueblos a los que sirve DOXA, tal como los da su lista en vivo"},unreached:{label:"Proyecto 7000: pueblos no alcanzados",definition:"Prioridad de perdición de IMB 0–2 (no alcanzados de frontera, pioneros o en expansión: menos del 2 % evangélicos)"},frontier:{label:"Proyecto 4700: pueblos de frontera",definition:"Prioridad de perdición de IMB 0 (no alcanzados de frontera: 0,1 % evangélicos o menos)"},"frontier-500k":{label:"Proyecto 700: pueblos de frontera de 500.000 o más",definition:"Prioridad de perdición de IMB 0 y una población de al menos 500.000"},unengaged:{label:"Pueblos no alcanzados y no atendidos",definition:"Prioridad de perdición de IMB 0–2 y estado de compromiso: no atendido"}},Ap={menuComingSoon:"Menú próximamente",pinHint:{tapDot:"Toca un punto de color: alguien todavía necesita oración"},upg100WallHeading:"Mi lista UPG 100 — 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"},Sp={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Tp={family:{Christianity:"Cristianismo",Islam:"Islam",Hinduism:"Hinduismo",Buddhism:"Budismo",Ethnoreligion:"Etnorreligión",Judaism:"Judaísmo",Sikhism:"Sijismo",Unaffiliated:"Sin afiliación",Other:"Otra",Unknown:"Desconocida"}},Lp={placeholder:"Pueblo, lugar, idioma, religión",placeholderNoPlaces:"Pueblo, idioma, religión (buscar lugares requiere un token de Mapbox)",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"},sections:{within:"Dentro de {selection}",allData:"Todos los datos DOXA"},upg100Placeholder:"Buscar pueblo, lista UPG-100 o región…"},Cp={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée",collapseLegend:"Réduire la légende",expandLegend:"Développer la légende",toggleLegend:"Afficher ou masquer la légende",searchPeopleGroups:"Rechercher des peuples",resetAllFilters:"Réinitialiser tous les filtres et la recherche",selectAllRows:"Sélectionner toutes les lignes",deselectAllRows:"Désélectionner toutes les lignes",rowDetail:"Détail de la ligne",dismissHint:"Masquer l'astuce",resizeFiltersRail:"Redimensionner le volet des filtres",resizeFiltersRailHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner le volet des filtres",resizeChartsRail:"Redimensionner le volet des graphiques",resizeChartsRailHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner le volet des graphiques",resizeMapTableSplit:"Redimensionner le partage carte/tableau",resizeMapTableSplitHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner le partage carte/tableau",resizeTable:"Redimensionner la hauteur du tableau",resizeTableHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner le tableau",resizeDashboardHeight:"Redimensionner la hauteur du tableau de bord",resizeDashboardHeightHint:"Faites glisser ou utilisez les touches fléchées pour redimensionner la hauteur du tableau de bord",removeFilter:"Supprimer le filtre {name}",closeDetail:"Fermer le détail",filterBreadcrumb:"Fil d’Ariane des filtres",railViews:"Vues du volet",upgCountLegend:"Légende du nombre d’UPG",donutChart:"Graphique en anneau : {title}"},Ep={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…"},Pp={research_controls:"Commandes de recherche",clustering:"Regroupement",filters:"Filtres",pin_dim:"Atténuation des points",export_poster:"Exporter l’affiche…",reload_data:"Recharger les données",off:"Désactivé",native:"Natif",mst:"MST",network:"Réseau",off_desc:"Afficher chaque point séparément",native_desc:"Groupes circulaires Mapbox (le plus rapide)",mst_desc:"Réseaux d’affinité par arbre couvrant minimal",network_desc:"Lignes vers le plus proche voisin",search_languages:"Rechercher des langues…",search_religions:"Rechercher des religions…",reset_all:"Tout réinitialiser",no_languages:"Aucune langue chargée pour l’instant",no_religions:"Aucune religion chargée pour l’instant",unadopted:"Non adopté",min:"min",max:"max",adopted:"Adopté",adoption:"Adoption",engaged:"Engagé",engagement:"Engagement",unengaged:"Besoin d'engagement",language:"Langue",religion:"Religion",population:"Population",any:"Tous",active_count:"{n} actifs",prayer_status:"État de prière",close:"Fermer",clear:"Effacer",map_controls:"Commandes de la carte",clusters:"Groupes",mst_full_name:"Arbre couvrant minimal",mst_hint:"cliquez sur une ligne de la légende pour ne regrouper que ce groupe"},Mp={bloc:"Bloc d’affinité",gospel_access:"Accès à l’Évangile",people:"Peuples",people_name:"Peuple (nom)",praying:"En prière",religion_family:"Famille religieuse",search_language:"Rechercher une langue",search_people:"Rechercher un peuple",search_place:"Rechercher un lieu",search_religion:"Rechercher une religion",upgs_in_scope:"UPG dans le périmètre",countries_touched:"pays touchés",unreached:"non atteints",sum_population:"Σ population",sum_praying:"Σ en prière",charts:"Graphiques",table:"Tableau",cluster:"Grappe",country:"Pays",engagement:"Engagement",language:"Langue",language_family:"Famille linguistique",people_group:"Peuple",population:"Population",prayer:"Prière",region:"Région",religion:"Religion",status:"Statut",adopted:"Adopté",filters:"Filtres",gospel_resources:"Ressources de l'Évangile",map:"Carte",search_placeholder:"Rechercher peuples, lieux, langues, religions…",any:"Tous",active_count:"{n} actifs",prayer_status:"État de prière",map_controls:"Commandes de la carte",close:"Fermer",clear:"Effacer",dashboard_title:"Tableau de bord de recherche global",align_dashboard:"Aligner le tableau",align_dashboard_tip:"Rétablir la disposition par défaut du tableau de bord",selected:"Sélectionné",world:"Monde",vertical_legend:"Légende verticale",groups_in_scope:"peuples dans le périmètre",filter_by:"Filtrer par",remove_filter:"Retirer le filtre",groups:"peuples",expand:"Développer",collapse:"Replier",place:"Lieu",export_csv:"Exporter en CSV",detail:"Détail",detail_empty:"Sélectionnez un peuple pour voir le détail",heartbeat_zone:"zone du battement de cœur",top_countries:"Principaux pays",select_all:"Tout sélectionner",expand_table:"Développer le tableau",collapse_table:"Réduire le tableau — agrandir la carte",group:"peuple",deselect_all:"Tout désélectionner",results_live:"{count} sur {total} {unit} affichés",filters_live:"Filtres : {list}",search_live:"Recherche : {term}",adopted_by_churches:"Adoptés par des Églises",bp_title:"Vue d’ensemble — tableau de bord de recherche unifié",bp_subtitle:"Rechercher et filtrer les groupes de personnes du monde · les moins atteints en premier",export_selection:"Exporter cette sélection",map_loading:"Chargement de la carte de recherche…",no_match:"Aucun groupe de personnes ne correspond à « {q} ».",no_photo:"Aucune photo",only_selected:"Uniquement la sélection",only_selected_hint:"N’afficher que les groupes de personnes sélectionnés",people_committed:"Personnes engagées",people_praying:"Personnes qui prient",selected_first:"La sélection en premier",selected_first_hint:"Faire remonter les groupes de personnes sélectionnés, en conservant le tri des colonnes",n_shown:"{n} affichés",other:"Autres",wagfRegion:{africa:"Afrique",asia:"Asie",europe:"Europe","latin_america_&_caribbean":"Amérique latine",oceania:"Océanie"},sort_by_column_hint:"Trier ce tableau par {column} — Maj+clic ajoute une deuxième colonne. Le tri ne s’applique qu’au tableau ; les cartes gardent leur propre ordre.",fs_exit_hint:"Quitter le plein écran (Échap) — retour à sept lignes",fs_open_hint:"Ouvrir ce tableau en plein écran",fs_exit:"Quitter le plein écran",fs_open:"Ouvrir le tableau en plein écran",export_selected_hint:"Exporter tous les champs — peuples sélectionnés : {n}",export_all_hint:"Exporter tous les champs — peuples : {n}"},Rp={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"},Np={doxa:{label:"Projet 2000 : les peuples de DOXA",definition:"Les peuples que DOXA sert, tels que sa liste en direct les donne"},unreached:{label:"Projet 7000 : peuples non atteints",definition:"Priorité de perdition IMB 0–2 (non atteints frontières, pionniers ou en expansion : moins de 2 % d’évangéliques)"},frontier:{label:"Projet 4700 : peuples frontières",definition:"Priorité de perdition IMB 0 (non atteints frontières : 0,1 % d’évangéliques ou moins)"},"frontier-500k":{label:"Projet 700 : peuples frontières de 500 000 personnes ou plus",definition:"Priorité de perdition IMB 0 et une population d’au moins 500 000"},unengaged:{label:"Peuples non atteints et non engagés",definition:"Priorité de perdition IMB 0–2 et statut d’engagement : non engagé"}},Fp={menuComingSoon:"Menu bientôt disponible",pinHint:{tapDot:"Touchez un point coloré — quelqu’un a encore besoin de prière"},upg100WallHeading:"Ma liste UPG 100 — 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"},Op={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},Ip={family:{Christianity:"Christianisme",Islam:"Islam",Hinduism:"Hindouisme",Buddhism:"Bouddhisme",Ethnoreligion:"Ethnoreligion",Judaism:"Judaïsme",Sikhism:"Sikhisme",Unaffiliated:"Sans appartenance",Other:"Autre",Unknown:"Inconnue"}},Dp={placeholder:"Peuple, lieu, langue, religion",placeholderNoPlaces:"Peuple, langue, religion (la recherche de lieux requiert un jeton Mapbox)",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"},sections:{within:"Dans {selection}",allData:"Toutes les données DOXA"},upg100Placeholder:"Rechercher un peuple, une liste UPG-100 ou une région…"},zp={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें",collapseLegend:"लेजेंड संक्षिप्त करें",expandLegend:"लेजेंड विस्तृत करें",toggleLegend:"लेजेंड दिखाएँ या छिपाएँ",searchPeopleGroups:"जनसमूह खोजें",resetAllFilters:"सभी फ़िल्टर और खोज रीसेट करें",selectAllRows:"सभी पंक्तियाँ चुनें",deselectAllRows:"सभी पंक्तियाँ अचयनित करें",rowDetail:"पंक्ति विवरण",dismissHint:"संकेत हटाएँ",resizeFiltersRail:"फ़िल्टर पट्टी का आकार बदलें",resizeFiltersRailHint:"फ़िल्टर पट्टी का आकार बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",resizeChartsRail:"चार्ट पट्टी का आकार बदलें",resizeChartsRailHint:"चार्ट पट्टी का आकार बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",resizeMapTableSplit:"मानचित्र/तालिका विभाजन का आकार बदलें",resizeMapTableSplitHint:"मानचित्र/तालिका विभाजन का आकार बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",resizeTable:"तालिका की ऊँचाई बदलें",resizeTableHint:"तालिका का आकार बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",resizeDashboardHeight:"डैशबोर्ड की ऊँचाई बदलें",resizeDashboardHeightHint:"डैशबोर्ड की ऊँचाई बदलने के लिए खींचें या तीर कुंजियों का उपयोग करें",removeFilter:"फ़िल्टर {name} हटाएँ",closeDetail:"विवरण बंद करें",filterBreadcrumb:"फ़िल्टर पथ",railViews:"पट्टी के दृश्य",upgCountLegend:"UPG गणना की कुंजी",donutChart:"डोनट चार्ट: {title}"},Hp={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:"कार्य जारी…"},jp={research_controls:"शोध नियंत्रण",clustering:"क्लस्टरिंग",filters:"फ़िल्टर",pin_dim:"पिन धुंधलापन",export_poster:"पोस्टर निर्यात करें…",reload_data:"डेटा फिर से लोड करें",off:"बंद",native:"नेटिव",mst:"MST",network:"नेटवर्क",off_desc:"हर पिन अलग-अलग दिखाएँ",native_desc:"Mapbox वृत्त क्लस्टर (सबसे तेज़)",mst_desc:"न्यूनतम स्पैनिंग ट्री आधारित जाल",network_desc:"निकटतम पड़ोसी को जोड़ने वाली रेखाएँ",search_languages:"भाषाएँ खोजें…",search_religions:"धर्म खोजें…",reset_all:"सब रीसेट करें",no_languages:"अभी कोई भाषा लोड नहीं हुई",no_religions:"अभी कोई धर्म लोड नहीं हुआ",unadopted:"अ-गोद लिया",min:"न्यून",max:"अधि",adopted:"गोद लिया गया",adoption:"गोद लेना",engaged:"संपर्कित",engagement:"सहभागिता",unengaged:"सहभागिता चाहिए",language:"भाषा",religion:"धर्म",population:"जनसंख्या",any:"कोई भी",active_count:"{n} सक्रिय",prayer_status:"प्रार्थना स्थिति",close:"बंद करें",clear:"साफ़ करें",map_controls:"मानचित्र नियंत्रण",clusters:"क्लस्टर",mst_full_name:"न्यूनतम विस्तारित वृक्ष",mst_hint:"केवल उस समूह को क्लस्टर करने के लिए लेजेंड की पंक्ति पर क्लिक करें"},Bp={bloc:"समानता समूह",gospel_access:"सुसमाचार पहुँच",people:"जनसमूह",people_name:"जनसमूह (नाम)",praying:"प्रार्थना कर रहे",religion_family:"धर्म परिवार",search_language:"भाषा खोजें",search_people:"जनसमूह खोजें",search_place:"स्थान खोजें",search_religion:"धर्म खोजें",upgs_in_scope:"दायरे में UPG",countries_touched:"छुए गए देश",unreached:"अनपहुँचे",sum_population:"Σ जनसंख्या",sum_praying:"Σ प्रार्थना",charts:"चार्ट",table:"तालिका",cluster:"क्लस्टर",country:"देश",engagement:"सहभागिता",language:"भाषा",language_family:"भाषा परिवार",people_group:"जनसमूह",population:"जनसंख्या",prayer:"प्रार्थना",region:"क्षेत्र",religion:"धर्म",status:"स्थिति",adopted:"गोद लिया गया",filters:"फ़िल्टर",gospel_resources:"सुसमाचार संसाधन",map:"नक्शा",search_placeholder:"जनसमूह, स्थान, भाषा, धर्म खोजें…",any:"कोई भी",active_count:"{n} सक्रिय",prayer_status:"प्रार्थना स्थिति",map_controls:"मानचित्र नियंत्रण",close:"बंद करें",clear:"साफ़ करें",dashboard_title:"बिग पिक्चर शोध डैशबोर्ड",align_dashboard:"डैशबोर्ड संरेखित करें",align_dashboard_tip:"डैशबोर्ड लेआउट को डिफ़ॉल्ट संरेखण पर लौटाएँ",selected:"चयनित",world:"विश्व",vertical_legend:"लंबवत लेजेंड",groups_in_scope:"दायरे में जनसमूह",filter_by:"इससे फ़िल्टर करें",remove_filter:"फ़िल्टर हटाएँ",groups:"जनसमूह",expand:"विस्तार करें",collapse:"संक्षिप्त करें",place:"स्थान",export_csv:"CSV निर्यात करें",detail:"विवरण",detail_empty:"विवरण देखने के लिए एक जनसमूह चुनें",heartbeat_zone:"हृदयगति क्षेत्र",top_countries:"शीर्ष देश",select_all:"सभी चुनें",expand_table:"तालिका विस्तृत करें",collapse_table:"तालिका संक्षिप्त करें — मानचित्र बड़ा करें",group:"जनसमूह",deselect_all:"सभी अचयनित करें",results_live:"{total} में से {count} {unit} दिखाए गए",filters_live:"फ़िल्टर: {list}",search_live:"खोज: {term}",adopted_by_churches:"कलीसियाओं द्वारा अपनाए गए",bp_title:"बड़ी तस्वीर — एकीकृत शोध डैशबोर्ड",bp_subtitle:"दुनिया के जनसमूहों को खोजें और छाँटें · सबसे कम पहुँच वाले पहले",export_selection:"यह चयन निर्यात करें",map_loading:"शोध मानचित्र लोड हो रहा है…",no_match:"“{q}” से मेल खाने वाला कोई जनसमूह नहीं है।",no_photo:"कोई फ़ोटो नहीं",only_selected:"केवल चयनित",only_selected_hint:"केवल चयनित जनसमूह दिखाएँ",people_committed:"प्रतिबद्ध लोग",people_praying:"प्रार्थना करने वाले लोग",selected_first:"चयनित पहले",selected_first_hint:"चयनित जनसमूहों को ऊपर लाएँ, आपका कॉलम क्रम बनाए रखते हुए",n_shown:"{n} दिखाए गए",other:"अन्य",wagfRegion:{africa:"अफ़्रीका",asia:"एशिया",europe:"यूरोप","latin_america_&_caribbean":"लैटिन अमेरिका",oceania:"ओशिआनिया"},sort_by_column_hint:"इस तालिका को {column} के अनुसार क्रमबद्ध करें — Shift-क्लिक से दूसरा कॉलम जुड़ता है। क्रमबद्ध करने से केवल तालिका का क्रम बदलता है; कार्ड अपना क्रम बनाए रखते हैं।",fs_exit_hint:"पूर्ण स्क्रीन से बाहर निकलें (Esc) — सात पंक्तियों पर वापस",fs_open_hint:"इस तालिका को पूर्ण स्क्रीन में खोलें",fs_exit:"पूर्ण स्क्रीन से बाहर निकलें",fs_open:"तालिका को पूर्ण स्क्रीन में खोलें",export_selected_hint:"सभी फ़ील्ड निर्यात करें — चयनित जनसमूह: {n}",export_all_hint:"सभी फ़ील्ड निर्यात करें — जनसमूह: {n}"},Up={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:"स्वचालित"},qp={doxa:{label:"प्रोजेक्ट 2000: DOXA के जनसमूह",definition:"वे जनसमूह जिनकी DOXA सेवा करता है, जैसे उसकी लाइव सूची उन्हें देती है"},unreached:{label:"प्रोजेक्ट 7000: अपहुँचे जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 (फ़्रंटियर, पायनियर या एक्सपैंडिंग अपहुँचे: 2% से कम इवेंजेलिकल)"},frontier:{label:"प्रोजेक्ट 4700: फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 (फ़्रंटियर अपहुँचे: 0.1% या उससे कम इवेंजेलिकल)"},"frontier-500k":{label:"प्रोजेक्ट 700: 5,00,000 या उससे अधिक के फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 और कम से कम 5,00,000 की जनसंख्या"},unengaged:{label:"अपहुँचे और असंलग्न जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 और संलग्नता स्थिति: असंलग्न"}},Vp={menuComingSoon:"मेनू शीघ्र आ रहा है",pinHint:{tapDot:"किसी रंगीन बिंदु पर टैप करें — किसी को अभी भी प्रार्थना की आवश्यकता है"},upg100WallHeading:"मेरी UPG 100 सूची — प्रार्थना सूचियाँ और पोस्टर",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 दायरा"},Wp={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},Gp={family:{Christianity:"ईसाई धर्म",Islam:"इस्लाम",Hinduism:"हिंदू धर्म",Buddhism:"बौद्ध धर्म",Ethnoreligion:"जातीय धर्म",Judaism:"यहूदी धर्म",Sikhism:"सिख धर्म",Unaffiliated:"असंबद्ध",Other:"अन्य",Unknown:"अज्ञात"}},Kp={placeholder:"लोग, स्थान, भाषा, धर्म",placeholderNoPlaces:"लोग, भाषा, धर्म (स्थान खोज के लिए Mapbox टोकन चाहिए)",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"},sections:{within:"{selection} के भीतर",allData:"सभी DOXA डेटा"},kinds:{people:"जनसमूह + देश",peopleGroup:"जनसमूह",bloc:"समानता समूह",cluster:"जनसमूह क्लस्टर",country:"देश",region:"क्षेत्र",family:"भाषा परिवार",languageKind:"भाषा",dialect:"बोली",religionKind:"धर्म"},upg100Placeholder:"जनसमूह, UPG-100 सूची या क्षेत्र खोजें…"},Xp={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio",collapseLegend:"Comprimi la legenda",expandLegend:"Espandi la legenda",toggleLegend:"Mostra o nascondi la legenda",searchPeopleGroups:"Cerca popoli",resetAllFilters:"Reimposta tutti i filtri e la ricerca",selectAllRows:"Seleziona tutte le righe",deselectAllRows:"Deseleziona tutte le righe",rowDetail:"Dettaglio riga",dismissHint:"Ignora il suggerimento",resizeFiltersRail:"Ridimensiona la barra dei filtri",resizeFiltersRailHint:"Trascina o usa i tasti freccia per ridimensionare la barra dei filtri",resizeChartsRail:"Ridimensiona la barra dei grafici",resizeChartsRailHint:"Trascina o usa i tasti freccia per ridimensionare la barra dei grafici",resizeMapTableSplit:"Ridimensiona la divisione mappa/tabella",resizeMapTableSplitHint:"Trascina o usa i tasti freccia per ridimensionare la divisione mappa/tabella",resizeTable:"Ridimensiona l'altezza della tabella",resizeTableHint:"Trascina o usa i tasti freccia per ridimensionare la tabella",resizeDashboardHeight:"Ridimensiona l'altezza della dashboard",resizeDashboardHeightHint:"Trascina o usa i tasti freccia per ridimensionare l'altezza della dashboard",removeFilter:"Rimuovi il filtro {name}",closeDetail:"Chiudi il dettaglio",filterBreadcrumb:"Percorso dei filtri",railViews:"Viste della barra",upgCountLegend:"Legenda del conteggio UPG",donutChart:"Grafico ad anello: {title}"},Yp={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…"},Jp={research_controls:"Controlli di ricerca",clustering:"Raggruppamento",filters:"Filtri",pin_dim:"Opacità dei punti",export_poster:"Esporta poster…",reload_data:"Ricarica i dati",off:"Disattivato",native:"Nativo",mst:"MST",network:"Rete",off_desc:"Mostra ogni punto singolarmente",native_desc:"Cluster circolari Mapbox (il più veloce)",mst_desc:"Reti di affinità ad albero ricoprente minimo",network_desc:"Linee verso il vicino più prossimo",search_languages:"Cerca lingue…",search_religions:"Cerca religioni…",reset_all:"Reimposta tutto",no_languages:"Nessuna lingua ancora caricata",no_religions:"Nessuna religione ancora caricata",unadopted:"Non adottato",min:"min",max:"max",adopted:"Adottato",adoption:"Adozione",engaged:"Coinvolto",engagement:"Impegno",unengaged:"Necessita impegno",language:"Lingua",religion:"Religione",population:"Popolazione",any:"Tutti",active_count:"{n} attivi",prayer_status:"Stato di preghiera",close:"Chiudi",clear:"Cancella",map_controls:"Controlli della mappa",clusters:"Cluster",mst_full_name:"Albero ricoprente minimo",mst_hint:"fai clic su una riga della legenda per raggruppare solo quel gruppo"},Zp={bloc:"Blocco di affinità",gospel_access:"Accesso al vangelo",people:"Popoli",people_name:"Popolo (nome)",praying:"In preghiera",religion_family:"Famiglia religiosa",search_language:"Cerca lingua",search_people:"Cerca popolo",search_place:"Cerca luogo",search_religion:"Cerca religione",upgs_in_scope:"UPG nell’ambito",countries_touched:"paesi toccati",unreached:"non raggiunti",sum_population:"Σ popolazione",sum_praying:"Σ in preghiera",charts:"Grafici",table:"Tabella",cluster:"Cluster",country:"Paese",engagement:"Impegno",language:"Lingua",language_family:"Famiglia linguistica",people_group:"Popolo",population:"Popolazione",prayer:"Preghiera",region:"Regione",religion:"Religione",status:"Stato",adopted:"Adottato",filters:"Filtri",gospel_resources:"Risorse del Vangelo",map:"Mappa",search_placeholder:"Cerca popoli, luoghi, lingue, religioni…",any:"Tutti",active_count:"{n} attivi",prayer_status:"Stato di preghiera",map_controls:"Controlli della mappa",close:"Chiudi",clear:"Cancella",dashboard_title:"Cruscotto di ricerca generale",align_dashboard:"Allinea cruscotto",align_dashboard_tip:"Ripristina la disposizione predefinita del cruscotto",selected:"Selezionato",world:"Mondo",vertical_legend:"Legenda verticale",groups_in_scope:"popoli nell’ambito",filter_by:"Filtra per",remove_filter:"Rimuovi filtro",groups:"popoli",expand:"Espandi",collapse:"Comprimi",place:"Luogo",export_csv:"Esporta CSV",detail:"Dettaglio",detail_empty:"Seleziona un popolo per vedere il dettaglio",heartbeat_zone:"zona del battito",top_countries:"Paesi principali",select_all:"Seleziona tutto",expand_table:"Espandi tabella",collapse_table:"Comprimi tabella — ingrandisci la mappa",group:"popolo",deselect_all:"Deseleziona tutto",results_live:"{count} di {total} {unit} mostrati",filters_live:"Filtri: {list}",search_live:"Ricerca: {term}",adopted_by_churches:"Adottati dalle chiese",bp_title:"Quadro generale — dashboard di ricerca unificata",bp_subtitle:"Cerca e filtra i gruppi di persone del mondo · prima i meno raggiunti",export_selection:"Esporta questa selezione",map_loading:"Caricamento della mappa di ricerca…",no_match:"Nessun gruppo di persone corrisponde a “{q}”.",no_photo:"Nessuna foto",only_selected:"Solo i selezionati",only_selected_hint:"Mostra solo i gruppi di persone selezionati",people_committed:"Persone impegnate",people_praying:"Persone che pregano",selected_first:"Prima i selezionati",selected_first_hint:"Porta in alto i gruppi di persone selezionati, mantenendo l’ordinamento delle colonne",n_shown:"{n} mostrati",other:"Altri",wagfRegion:{africa:"Africa",asia:"Asia",europe:"Europa","latin_america_&_caribbean":"America Latina",oceania:"Oceania"},sort_by_column_hint:"Ordina questa tabella per {column}: Maiusc+clic aggiunge una seconda colonna. L’ordinamento riguarda solo la tabella; le schede mantengono il proprio ordine.",fs_exit_hint:"Esci da schermo intero (Esc) — torna a sette righe",fs_open_hint:"Apri questa tabella a schermo intero",fs_exit:"Esci da schermo intero",fs_open:"Apri la tabella a schermo intero",export_selected_hint:"Esporta tutti i campi — popoli selezionati: {n}",export_all_hint:"Esporta tutti i campi — popoli: {n}"},Qp={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"},ed={doxa:{label:"Progetto 2000: i popoli di DOXA",definition:"I popoli che DOXA serve, come li fornisce la sua lista in tempo reale"},unreached:{label:"Progetto 7000: popoli non raggiunti",definition:"Priorità di perdizione IMB 0–2 (non raggiunti di frontiera, pionieri o in espansione: meno del 2% evangelici)"},frontier:{label:"Progetto 4700: popoli di frontiera",definition:"Priorità di perdizione IMB 0 (non raggiunti di frontiera: 0,1% evangelici o meno)"},"frontier-500k":{label:"Progetto 700: popoli di frontiera di 500.000 o più",definition:"Priorità di perdizione IMB 0 e una popolazione di almeno 500.000"},unengaged:{label:"Popoli non raggiunti e non coinvolti",definition:"Priorità di perdizione IMB 0–2 e stato di coinvolgimento: non coinvolto"}},td={menuComingSoon:"Menu in arrivo",pinHint:{tapDot:"Tocca un punto colorato — qualcuno ha ancora bisogno di preghiera"},upg100WallHeading:"La mia lista UPG 100 — 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"},od={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},nd={family:{Christianity:"Cristianesimo",Islam:"Islam",Hinduism:"Induismo",Buddhism:"Buddhismo",Ethnoreligion:"Etnoreligione",Judaism:"Ebraismo",Sikhism:"Sikhismo",Unaffiliated:"Senza affiliazione",Other:"Altro",Unknown:"Sconosciuta"}},sd={placeholder:"Popolo, luogo, lingua, religione",placeholderNoPlaces:"Popolo, lingua, religione (la ricerca di luoghi richiede un token Mapbox)",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"},sections:{within:"In {selection}",allData:"Tutti i dati DOXA"},kinds:{people:"Popolo + paese",peopleGroup:"Popolo",bloc:"Blocco di affinità",cluster:"Cluster di popoli",country:"Paese",region:"Regione",family:"Famiglia linguistica",languageKind:"Lingua",dialect:"Dialetto",religionKind:"Religione"},upg100Placeholder:"Cerca popolo, elenco UPG-100 o regione…"},ad={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe",collapseLegend:"Recolher a legenda",expandLegend:"Expandir a legenda",toggleLegend:"Mostrar ou ocultar a legenda",searchPeopleGroups:"Pesquisar povos",resetAllFilters:"Redefinir todos os filtros e a pesquisa",selectAllRows:"Selecionar todas as linhas",deselectAllRows:"Desmarcar todas as linhas",rowDetail:"Detalhe da linha",dismissHint:"Dispensar a dica",resizeFiltersRail:"Redimensionar o painel de filtros",resizeFiltersRailHint:"Arraste ou use as teclas de seta para redimensionar o painel de filtros",resizeChartsRail:"Redimensionar o painel de gráficos",resizeChartsRailHint:"Arraste ou use as teclas de seta para redimensionar o painel de gráficos",resizeMapTableSplit:"Redimensionar a divisão entre o mapa e a tabela",resizeMapTableSplitHint:"Arraste ou use as teclas de seta para redimensionar a divisão entre o mapa e a tabela",resizeTable:"Redimensionar a altura da tabela",resizeTableHint:"Arraste ou use as teclas de seta para redimensionar a tabela",resizeDashboardHeight:"Redimensionar a altura do painel",resizeDashboardHeightHint:"Arraste ou use as teclas de seta para redimensionar a altura do painel",removeFilter:"Remover o filtro {name}",closeDetail:"Fechar o detalhe",filterBreadcrumb:"Trilho de filtros",railViews:"Vistas do painel",upgCountLegend:"Legenda da contagem de UPG",donutChart:"Gráfico de rosca: {title}"},rd={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…"},id={research_controls:"Controlos de pesquisa",clustering:"Agrupamento",filters:"Filtros",pin_dim:"Esbater pontos",export_poster:"Exportar cartaz…",reload_data:"Recarregar dados",off:"Desligado",native:"Nativo",mst:"MST",network:"Rede",off_desc:"Mostrar cada ponto individualmente",native_desc:"Grupos circulares Mapbox (mais rápido)",mst_desc:"Redes de afinidade por árvore geradora mínima",network_desc:"Linhas para o vizinho mais próximo",search_languages:"Pesquisar idiomas…",search_religions:"Pesquisar religiões…",reset_all:"Repor tudo",no_languages:"Ainda não há idiomas carregados",no_religions:"Ainda não há religiões carregadas",unadopted:"Não adotado",min:"mín",max:"máx",adopted:"Adotado",adoption:"Adoção",engaged:"Engajado",engagement:"Engajamento",unengaged:"Precisa de envolvimento",language:"Idioma",religion:"Religião",population:"População",any:"Qualquer",active_count:"{n} ativos",prayer_status:"Estado de oração",close:"Fechar",clear:"Limpar",map_controls:"Controlos do mapa",clusters:"Agrupamentos",mst_full_name:"Árvore geradora mínima",mst_hint:"clique numa linha da legenda para agrupar apenas esse grupo"},ld={bloc:"Bloco de afinidade",gospel_access:"Acesso ao evangelho",people:"Povos",people_name:"Povo (nome)",praying:"A orar",religion_family:"Família religiosa",search_language:"Pesquisar idioma",search_people:"Pesquisar povo",search_place:"Pesquisar lugar",search_religion:"Pesquisar religião",upgs_in_scope:"UPG no âmbito",countries_touched:"países alcançados",unreached:"não alcançados",sum_population:"Σ população",sum_praying:"Σ a orar",charts:"Gráficos",table:"Tabela",cluster:"Agrupamento",country:"País",engagement:"Engajamento",language:"Idioma",language_family:"Família linguística",people_group:"Povo",population:"População",prayer:"Oração",region:"Região",religion:"Religião",status:"Status",adopted:"Adotado",filters:"Filtros",gospel_resources:"Recursos do Evangelho",map:"Mapa",search_placeholder:"Pesquisar povos, lugares, idiomas, religiões…",any:"Qualquer",active_count:"{n} ativos",prayer_status:"Estado de oração",map_controls:"Controlos do mapa",close:"Fechar",clear:"Limpar",dashboard_title:"Painel de pesquisa geral",align_dashboard:"Alinhar painel",align_dashboard_tip:"Repor a disposição do painel para o alinhamento predefinido",selected:"Selecionado",world:"Mundo",vertical_legend:"Legenda vertical",groups_in_scope:"povos no âmbito",filter_by:"Filtrar por",remove_filter:"Remover filtro",groups:"povos",expand:"Expandir",collapse:"Recolher",place:"Lugar",export_csv:"Exportar CSV",detail:"Detalhe",detail_empty:"Selecione um povo para ver o detalhe",heartbeat_zone:"zona do batimento",top_countries:"Principais países",select_all:"Selecionar tudo",expand_table:"Expandir tabela",collapse_table:"Recolher tabela — ampliar o mapa",group:"povo",deselect_all:"Desmarcar tudo",results_live:"A mostrar {count} de {total} {unit}",filters_live:"Filtros: {list}",search_live:"Pesquisa: {term}",adopted_by_churches:"Adotados por igrejas",bp_title:"Visão geral — painel de investigação unificado",bp_subtitle:"Pesquise e filtre os grupos de pessoas do mundo · primeiro os menos alcançados",export_selection:"Exportar esta seleção",map_loading:"A carregar o mapa de investigação…",no_match:"Nenhum grupo de pessoas corresponde a “{q}”.",no_photo:"Sem foto",only_selected:"Apenas os selecionados",only_selected_hint:"Mostrar apenas os grupos de pessoas selecionados",people_committed:"Pessoas comprometidas",people_praying:"Pessoas a orar",selected_first:"Os selecionados primeiro",selected_first_hint:"Trazer para cima os grupos de pessoas selecionados, mantendo a ordenação das colunas",n_shown:"{n} apresentados",other:"Outros",wagfRegion:{africa:"África",asia:"Ásia",europe:"Europa","latin_america_&_caribbean":"América Latina",oceania:"Oceania"},sort_by_column_hint:"Ordenar esta tabela por {column} — Shift+clique adiciona uma segunda coluna. A ordenação afeta apenas a tabela; os cartões mantêm a própria ordem.",fs_exit_hint:"Sair da tela cheia (Esc) — voltar a sete linhas",fs_open_hint:"Abrir esta tabela em tela cheia",fs_exit:"Sair da tela cheia",fs_open:"Abrir a tabela em tela cheia",export_selected_hint:"Exportar todos os campos — povos selecionados: {n}",export_all_hint:"Exportar todos os campos — povos: {n}"},cd={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"},ud={doxa:{label:"Projeto 2000: os povos da DOXA",definition:"Os povos que a DOXA serve, como a sua lista ao vivo os apresenta"},unreached:{label:"Projeto 7000: povos não alcançados",definition:"Prioridade de perdição do IMB 0–2 (não alcançados de fronteira, pioneiros ou em expansão: menos de 2% evangélicos)"},frontier:{label:"Projeto 4700: povos de fronteira",definition:"Prioridade de perdição do IMB 0 (não alcançados de fronteira: 0,1% evangélicos ou menos)"},"frontier-500k":{label:"Projeto 700: povos de fronteira de 500.000 ou mais",definition:"Prioridade de perdição do IMB 0 e uma população de pelo menos 500.000"},unengaged:{label:"Povos não alcançados e não engajados",definition:"Prioridade de perdição do IMB 0–2 e estado de engajamento: não engajado"}},pd={menuComingSoon:"Menu em breve",pinHint:{tapDot:"Toque num ponto colorido — alguém ainda precisa de oração"},upg100WallHeading:"Minha lista UPG 100 — 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"},dd={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},gd={family:{Christianity:"Cristianismo",Islam:"Islão",Hinduism:"Hinduísmo",Buddhism:"Budismo",Ethnoreligion:"Etnorreligião",Judaism:"Judaísmo",Sikhism:"Siquismo",Unaffiliated:"Sem afiliação",Other:"Outra",Unknown:"Desconhecida"}},_d={placeholder:"Povo, local, língua, religião",placeholderNoPlaces:"Povo, língua, religião (a busca de locais requer um token do Mapbox)",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"},sections:{within:"Dentro de {selection}",allData:"Todos os dados DOXA"},upg100Placeholder:"Procurar povo, lista UPG-100 ou região…"},fd={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată",collapseLegend:"Restrânge legenda",expandLegend:"Extinde legenda",toggleLegend:"Afișează sau ascunde legenda",searchPeopleGroups:"Caută popoare",resetAllFilters:"Resetează toate filtrele și căutarea",selectAllRows:"Selectează toate rândurile",deselectAllRows:"Deselectează toate rândurile",rowDetail:"Detaliu rând",dismissHint:"Închide sugestia",resizeFiltersRail:"Redimensionează bara de filtre",resizeFiltersRailHint:"Trage sau folosește tastele săgeată pentru a redimensiona bara de filtre",resizeChartsRail:"Redimensionează bara de grafice",resizeChartsRailHint:"Trage sau folosește tastele săgeată pentru a redimensiona bara de grafice",resizeMapTableSplit:"Redimensionează împărțirea hartă/tabel",resizeMapTableSplitHint:"Trage sau folosește tastele săgeată pentru a redimensiona împărțirea hartă/tabel",resizeTable:"Redimensionează înălțimea tabelului",resizeTableHint:"Trage sau folosește tastele săgeată pentru a redimensiona tabelul",resizeDashboardHeight:"Redimensionează înălțimea tabloului de bord",resizeDashboardHeightHint:"Trage sau folosește tastele săgeată pentru a redimensiona înălțimea tabloului de bord",removeFilter:"Elimină filtrul {name}",closeDetail:"Închide detaliul",filterBreadcrumb:"Traseul filtrelor",railViews:"Vizualizările barei",upgCountLegend:"Legenda numărului de UPG",donutChart:"Diagramă inelară: {title}"},$d={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ă…"},hd={research_controls:"Comenzi de cercetare",clustering:"Grupare",filters:"Filtre",pin_dim:"Estompare puncte",export_poster:"Exportă posterul…",reload_data:"Reîncarcă datele",off:"Oprit",native:"Nativ",mst:"MST",network:"Rețea",off_desc:"Arată fiecare punct separat",native_desc:"Grupuri circulare Mapbox (cel mai rapid)",mst_desc:"Rețele de afinitate prin arbore minim de acoperire",network_desc:"Linii către cel mai apropiat vecin",search_languages:"Caută limbi…",search_religions:"Caută religii…",reset_all:"Resetează tot",no_languages:"Nicio limbă încărcată încă",no_religions:"Nicio religie încărcată încă",unadopted:"Neadoptat",min:"min",max:"max",adopted:"Adoptat",adoption:"Adopție",engaged:"Implicat",engagement:"Implicare",unengaged:"Necesită implicare",language:"Limbă",religion:"Religie",population:"Populație",any:"Oricare",active_count:"{n} active",prayer_status:"Stare de rugăciune",close:"Închide",clear:"Șterge",map_controls:"Comenzile hărții",clusters:"Grupuri",mst_full_name:"Arbore de acoperire minim",mst_hint:"dă clic pe un rând din legendă pentru a grupa doar acel grup"},md={bloc:"Bloc de afinitate",gospel_access:"Acces la Evanghelie",people:"Popoare",people_name:"Popor (nume)",praying:"Se roagă",religion_family:"Familie religioasă",search_language:"Caută limbă",search_people:"Caută popor",search_place:"Caută loc",search_religion:"Caută religie",upgs_in_scope:"UPG în domeniu",countries_touched:"țări atinse",unreached:"neatinși",sum_population:"Σ populație",sum_praying:"Σ se roagă",charts:"Grafice",table:"Tabel",cluster:"Grup",country:"Țară",engagement:"Implicare",language:"Limbă",language_family:"Familie de limbi",people_group:"Popor",population:"Populație",prayer:"Rugăciune",region:"Regiune",religion:"Religie",status:"Stare",adopted:"Adoptat",filters:"Filtre",gospel_resources:"Resurse ale Evangheliei",map:"Hartă",search_placeholder:"Caută popoare, locuri, limbi, religii…",any:"Oricare",active_count:"{n} active",prayer_status:"Stare de rugăciune",map_controls:"Comenzile hărții",close:"Închide",clear:"Șterge",dashboard_title:"Tablou de bord de cercetare general",align_dashboard:"Aliniază tabloul",align_dashboard_tip:"Readu aranjarea tabloului la alinierea implicită",selected:"Selectat",world:"Lume",vertical_legend:"Legendă verticală",groups_in_scope:"popoare în domeniu",filter_by:"Filtrează după",remove_filter:"Elimină filtrul",groups:"popoare",expand:"Extinde",collapse:"Restrânge",place:"Loc",export_csv:"Exportă CSV",detail:"Detaliu",detail_empty:"Selectează un popor pentru a vedea detaliile",heartbeat_zone:"zona bătăilor inimii",top_countries:"Țări de top",select_all:"Selectează tot",expand_table:"Extinde tabelul",collapse_table:"Restrânge tabelul — mărește harta",group:"popor",deselect_all:"Deselectează tot",results_live:"{count} din {total} {unit} afișate",filters_live:"Filtre: {list}",search_live:"Căutare: {term}",adopted_by_churches:"Adoptate de biserici",bp_title:"Imaginea de ansamblu — tablou de bord unificat de cercetare",bp_subtitle:"Caută și filtrează grupurile de oameni din lume · cele mai puțin atinse primele",export_selection:"Exportă această selecție",map_loading:"Se încarcă harta de cercetare…",no_match:"Niciun grup de oameni nu se potrivește cu „{q}”.",no_photo:"Nicio fotografie",only_selected:"Doar cele selectate",only_selected_hint:"Arată doar grupurile de oameni selectate",people_committed:"Persoane angajate",people_praying:"Persoane care se roagă",selected_first:"Cele selectate primele",selected_first_hint:"Ridică grupurile de oameni selectate în partea de sus, păstrând sortarea coloanelor",n_shown:"{n} afișate",other:"Altele",wagfRegion:{africa:"Africa",asia:"Asia",europe:"Europa","latin_america_&_caribbean":"America Latină",oceania:"Oceania"},sort_by_column_hint:"Sortează acest tabel după {column} — Shift+clic adaugă o a doua coloană. Sortarea ordonează doar tabelul; cardurile își păstrează propria ordine.",fs_exit_hint:"Ieși din ecran complet (Esc) — înapoi la șapte rânduri",fs_open_hint:"Deschide acest tabel pe ecran complet",fs_exit:"Ieși din ecran complet",fs_open:"Deschide tabelul pe ecran complet",export_selected_hint:"Exportă toate câmpurile — popoare selectate: {n}",export_all_hint:"Exportă toate câmpurile — popoare: {n}"},bd={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"},yd={doxa:{label:"Proiectul 2000: popoarele DOXA",definition:"Popoarele pe care DOXA le slujește, așa cum le dă lista sa live"},unreached:{label:"Proiectul 7000: popoare neatinse",definition:"Prioritatea de pierzare IMB 0–2 (neatinse de frontieră, pionier sau în expansiune: sub 2% evanghelici)"},frontier:{label:"Proiectul 4700: popoare de frontieră",definition:"Prioritatea de pierzare IMB 0 (neatinse de frontieră: 0,1% evanghelici sau mai puțin)"},"frontier-500k":{label:"Proiectul 700: popoare de frontieră de 500.000 sau mai mult",definition:"Prioritatea de pierzare IMB 0 și o populație de cel puțin 500.000"},unengaged:{label:"Popoare neatinse și neangajate",definition:"Prioritatea de pierzare IMB 0–2 și starea de angajare: neangajat"}},vd={menuComingSoon:"Meniu în curând",pinHint:{tapDot:"Atinge un punct colorat — cineva are încă nevoie de rugăciune"},upg100WallHeading:"Lista mea UPG 100 — 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"},wd={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},kd={family:{Christianity:"Creștinism",Islam:"Islam",Hinduism:"Hinduism",Buddhism:"Budism",Ethnoreligion:"Etnoreligie",Judaism:"Iudaism",Sikhism:"Sikhism",Unaffiliated:"Fără afiliere",Other:"Altele",Unknown:"Necunoscută"}},xd={placeholder:"Popor, loc, limbă, religie",placeholderNoPlaces:"Popor, limbă, religie (căutarea locurilor necesită un token Mapbox)",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"},sections:{within:"În {selection}",allData:"Toate datele DOXA"},kinds:{people:"Popor + țară",peopleGroup:"Popor",bloc:"Bloc de afinitate",cluster:"Grup de popoare",country:"Țară",region:"Regiune",family:"Familie de limbi",languageKind:"Limbă",dialect:"Dialect",religionKind:"Religie"},upg100Placeholder:"Caută popor, listă UPG-100 sau regiune…"},Ad={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид",collapseLegend:"Свернуть легенду",expandLegend:"Развернуть легенду",toggleLegend:"Показать или скрыть легенду",searchPeopleGroups:"Поиск народов",resetAllFilters:"Сбросить все фильтры и поиск",selectAllRows:"Выбрать все строки",deselectAllRows:"Снять выделение со всех строк",rowDetail:"Подробности строки",dismissHint:"Скрыть подсказку",resizeFiltersRail:"Изменить размер панели фильтров",resizeFiltersRailHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить размер панели фильтров",resizeChartsRail:"Изменить размер панели диаграмм",resizeChartsRailHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить размер панели диаграмм",resizeMapTableSplit:"Изменить соотношение карты и таблицы",resizeMapTableSplitHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить соотношение карты и таблицы",resizeTable:"Изменить высоту таблицы",resizeTableHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить размер таблицы",resizeDashboardHeight:"Изменить высоту панели",resizeDashboardHeightHint:"Перетащите или используйте клавиши со стрелками, чтобы изменить высоту панели",removeFilter:"Удалить фильтр {name}",closeDetail:"Закрыть подробности",filterBreadcrumb:"Цепочка фильтров",railViews:"Виды панели",upgCountLegend:"Легенда количества UPG",donutChart:"Кольцевая диаграмма: {title}"},Sd={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:"Выполняется…"},Td={research_controls:"Инструменты исследования",clustering:"Кластеризация",filters:"Фильтры",pin_dim:"Прозрачность точек",export_poster:"Экспорт постера…",reload_data:"Обновить данные",off:"Выкл.",native:"Встроенная",mst:"MST",network:"Сеть",off_desc:"Показывать каждую точку отдельно",native_desc:"Круговые кластеры Mapbox (быстрее всего)",mst_desc:"Сети родства по минимальному остовному дереву",network_desc:"Линии до ближайшего соседа",search_languages:"Поиск языков…",search_religions:"Поиск религий…",reset_all:"Сбросить всё",no_languages:"Языки ещё не загружены",no_religions:"Религии ещё не загружены",unadopted:"Не усыновлён",min:"мин",max:"макс",adopted:"Ответственность взята",adoption:"Усыновление",engaged:"Вовлечён",engagement:"Вовлечённость",unengaged:"Нуждается в вовлечённости",language:"Язык",religion:"Религия",population:"Население",any:"Любой",active_count:"{n} активно",prayer_status:"Статус молитвы",close:"Закрыть",clear:"Очистить",map_controls:"Элементы управления картой",clusters:"Кластеры",mst_full_name:"Минимальное остовное дерево",mst_hint:"нажмите строку легенды, чтобы сгруппировать только эту группу"},Ld={bloc:"Блок родства",gospel_access:"Доступ к Евангелию",people:"Народы",people_name:"Народ (название)",praying:"Молятся",religion_family:"Семья религий",search_language:"Поиск языка",search_people:"Поиск народа",search_place:"Поиск места",search_religion:"Поиск религии",upgs_in_scope:"UPG в выборке",countries_touched:"затронутых стран",unreached:"неохваченные",sum_population:"Σ население",sum_praying:"Σ молящихся",charts:"Графики",table:"Таблица",cluster:"Кластер",country:"Страна",engagement:"Вовлечённость",language:"Язык",language_family:"Языковая семья",people_group:"Народ",population:"Население",prayer:"Молитва",region:"Регион",religion:"Религия",status:"Статус",adopted:"Ответственность взята",filters:"Фильтры",gospel_resources:"Евангельские ресурсы",map:"Карта",search_placeholder:"Поиск народов, мест, языков, религий…",any:"Любой",active_count:"{n} активно",prayer_status:"Статус молитвы",map_controls:"Элементы управления картой",close:"Закрыть",clear:"Очистить",dashboard_title:"Обзорная исследовательская панель",align_dashboard:"Выровнять панель",align_dashboard_tip:"Вернуть расположение панели к виду по умолчанию",selected:"Выбрано",world:"Мир",vertical_legend:"Вертикальная легенда",groups_in_scope:"народов в выборке",filter_by:"Фильтровать по",remove_filter:"Убрать фильтр",groups:"народов",expand:"Развернуть",collapse:"Свернуть",place:"Место",export_csv:"Экспорт CSV",detail:"Подробности",detail_empty:"Выберите народ, чтобы увидеть подробности",heartbeat_zone:"зона сердцебиения",top_countries:"Основные страны",select_all:"Выбрать все",expand_table:"Развернуть таблицу",collapse_table:"Свернуть таблицу — увеличить карту",group:"народ",deselect_all:"Снять выделение",results_live:"Показано {count} из {total} {unit}",filters_live:"Фильтры: {list}",search_live:"Поиск: {term}",adopted_by_churches:"Взяты церквями",bp_title:"Общая картина — единая исследовательская панель",bp_subtitle:"Поиск и фильтрация народов мира · наименее охваченные первыми",export_selection:"Экспортировать этот выбор",map_loading:"Загрузка исследовательской карты…",no_match:"Нет народов, соответствующих «{q}».",no_photo:"Нет фото",only_selected:"Только выбранные",only_selected_hint:"Показывать только выбранные народы",people_committed:"Взявшие обязательство",people_praying:"Молящиеся",selected_first:"Выбранные сначала",selected_first_hint:"Поднять выбранные народы наверх, сохранив сортировку столбцов",n_shown:"{n} показано",other:"Другое",wagfRegion:{africa:"Африка",asia:"Азия",europe:"Европа","latin_america_&_caribbean":"Латинская Америка",oceania:"Океания"},sort_by_column_hint:"Сортировать таблицу по столбцу «{column}» — Shift+щелчок добавляет второй столбец. Сортировка меняет порядок только в таблице; карточки сохраняют свой порядок.",fs_exit_hint:"Выйти из полноэкранного режима (Esc) — вернуться к семи строкам",fs_open_hint:"Открыть эту таблицу на весь экран",fs_exit:"Выйти из полноэкранного режима",fs_open:"Открыть таблицу на весь экран",export_selected_hint:"Экспорт всех полей — выбрано народов: {n}",export_all_hint:"Экспорт всех полей — народов: {n}"},Cd={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:"Авто"},Ed={doxa:{label:"Проект 2000: народы DOXA",definition:"Народы, которым служит DOXA, как их даёт её живой список"},unreached:{label:"Проект 7000: недостигнутые народы",definition:"Приоритет потерянности IMB 0–2 (пограничные, первопроходческие или расширяющиеся недостигнутые: менее 2% евангельских христиан)"},frontier:{label:"Проект 4700: пограничные народы",definition:"Приоритет потерянности IMB 0 (пограничные недостигнутые: 0,1% евангельских христиан или меньше)"},"frontier-500k":{label:"Проект 700: пограничные народы численностью от 500 000",definition:"Приоритет потерянности IMB 0 и численность не менее 500 000"},unengaged:{label:"Недостигнутые народы без служения",definition:"Приоритет потерянности IMB 0–2 и статус служения: без служения"}},Pd={menuComingSoon:"Меню скоро появится",pinHint:{tapDot:"Нажмите на цветную точку — кому-то всё ещё нужна молитва"},upg100WallHeading:"Мой список UPG 100 — молитвенные списки и плакаты",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"},Md={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},Rd={family:{Christianity:"Христианство",Islam:"Ислам",Hinduism:"Индуизм",Buddhism:"Буддизм",Ethnoreligion:"Этнорелигия",Judaism:"Иудаизм",Sikhism:"Сикхизм",Unaffiliated:"Не принадлежат",Other:"Другое",Unknown:"Неизвестно"}},Nd={placeholder:"Народ, место, язык, религия",placeholderNoPlaces:"Народ, язык, религия (для поиска мест нужен токен Mapbox)",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"},sections:{within:"В пределах {selection}",allData:"Все данные DOXA"},upg100Placeholder:"Поиск народа, списка UPG-100 или региона…"},Fd={backToLegend:"返回图例",closeDetailView:"关闭详情视图",collapseLegend:"收起图例",expandLegend:"展开图例",toggleLegend:"显示或隐藏图例",searchPeopleGroups:"搜索民族",resetAllFilters:"重置所有筛选和搜索",selectAllRows:"选择所有行",deselectAllRows:"取消选择所有行",rowDetail:"行详情",dismissHint:"关闭提示",resizeFiltersRail:"调整筛选器栏大小",resizeFiltersRailHint:"拖动或使用方向键调整筛选器栏大小",resizeChartsRail:"调整图表栏大小",resizeChartsRailHint:"拖动或使用方向键调整图表栏大小",resizeMapTableSplit:"调整地图与表格的分隔",resizeMapTableSplitHint:"拖动或使用方向键调整地图与表格的分隔",resizeTable:"调整表格高度",resizeTableHint:"拖动或使用方向键调整表格大小",resizeDashboardHeight:"调整仪表板高度",resizeDashboardHeightHint:"拖动或使用方向键调整仪表板高度",removeFilter:"移除筛选条件 {name}",closeDetail:"关闭详情",filterBreadcrumb:"筛选路径",railViews:"栏视图",upgCountLegend:"UPG 数量图例",donutChart:"环形图:{title}"},Od={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:"处理中…"},Id={research_controls:"研究控件",clustering:"聚类",filters:"筛选",pin_dim:"圆点淡化",export_poster:"导出海报…",reload_data:"重新加载数据",off:"关闭",native:"原生",mst:"MST",network:"网络",off_desc:"逐个显示每个圆点",native_desc:"Mapbox 圆形聚类(最快)",mst_desc:"最小生成树亲缘网络",network_desc:"最近邻连接线",search_languages:"搜索语言…",search_religions:"搜索宗教…",reset_all:"全部重置",no_languages:"尚未加载语言",no_religions:"尚未加载宗教",unadopted:"未认领",min:"最小",max:"最大",adopted:"已认领",adoption:"认领",engaged:"已参与",engagement:"参与",unengaged:"需要参与",language:"语言",religion:"宗教",population:"人口",any:"全部",active_count:"{n} 项启用",prayer_status:"代祷状态",close:"关闭",clear:"清除",map_controls:"地图控件",clusters:"聚类",mst_full_name:"最小生成树",mst_hint:"点击图例中的一行,仅对该组进行聚类"},Dd={bloc:"亲缘板块",gospel_access:"福音可及性",people:"民族",people_name:"民族(名称)",praying:"正在代祷",religion_family:"宗教族系",search_language:"搜索语言",search_people:"搜索民族",search_place:"搜索地点",search_religion:"搜索宗教",upgs_in_scope:"范围内的 UPG",countries_touched:"涉及国家",unreached:"未得之民",sum_population:"Σ 人口",sum_praying:"Σ 代祷",charts:"图表",table:"表格",cluster:"民族群",country:"国家",engagement:"参与",language:"语言",language_family:"语系",people_group:"民族",population:"人口",prayer:"祷告",region:"区域",religion:"宗教",status:"状态",adopted:"已认领",filters:"筛选",gospel_resources:"福音资源",map:"地图",search_placeholder:"搜索民族、地点、语言、宗教…",any:"全部",active_count:"{n} 项启用",prayer_status:"代祷状态",map_controls:"地图控件",close:"关闭",clear:"清除",dashboard_title:"全局研究仪表板",align_dashboard:"对齐仪表板",align_dashboard_tip:"将仪表板布局恢复为默认对齐",selected:"已选择",world:"世界",vertical_legend:"垂直图例",groups_in_scope:"个民族在范围内",filter_by:"筛选",remove_filter:"移除筛选",groups:"个民族",expand:"展开",collapse:"收起",place:"地点",export_csv:"导出 CSV",detail:"详情",detail_empty:"选择一个民族以查看详情",heartbeat_zone:"心跳区",top_countries:"主要国家",select_all:"全选",expand_table:"展开表格",collapse_table:"收起表格 — 放大地图",group:"个民族",deselect_all:"取消全选",results_live:"已显示 {total} 个{unit}中的 {count} 个",filters_live:"筛选条件:{list}",search_live:"搜索:{term}",adopted_by_churches:"已被教会认领",bp_title:"全局视图 — 统一研究仪表板",bp_subtitle:"搜索并筛选世界各民族 · 最少被触及的优先显示",export_selection:"导出此选择",map_loading:"正在加载研究地图…",no_match:"没有与“{q}”匹配的民族。",no_photo:"无照片",only_selected:"仅所选",only_selected_hint:"仅显示所选民族",people_committed:"已承诺的人数",people_praying:"祷告的人数",selected_first:"所选优先",selected_first_hint:"将所选民族置顶,同时保留您的列排序",n_shown:"显示 {n} 个",other:"其他",wagfRegion:{africa:"非洲",asia:"亚洲",europe:"欧洲","latin_america_&_caribbean":"拉丁美洲",oceania:"大洋洲"},sort_by_column_hint:"按{column}排序此表 — Shift+单击可添加第二列。排序只影响表格;卡片保持各自的顺序。",fs_exit_hint:"退出全屏(Esc)— 返回七行视图",fs_open_hint:"全屏打开此表格",fs_exit:"退出全屏",fs_open:"全屏打开表格",export_selected_hint:"导出全部字段 — 已选民族:{n}",export_all_hint:"导出全部字段 — 民族:{n}"},zd={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:"自动"},Hd={doxa:{label:"2000 计划:DOXA 服侍的族群",definition:"DOXA 服侍的族群,以其实时名单为准"},unreached:{label:"7000 计划:未得之民族群",definition:"IMB 失丧优先级 0–2(前沿、先锋或扩展中的未得之民:福音派少于 2%)"},frontier:{label:"4700 计划:前沿族群",definition:"IMB 失丧优先级 0(前沿未得之民:福音派 0.1% 或更少)"},"frontier-500k":{label:"700 计划:人口 50 万或以上的前沿族群",definition:"IMB 失丧优先级 0,且人口至少 50 万"},unengaged:{label:"尚无人参与的未得之民族群",definition:"IMB 失丧优先级 0–2,且参与状态为:无人参与"}},jd={menuComingSoon:"菜单即将推出",pinHint:{tapDot:"点按一个彩色圆点——仍有人需要祷告"},upg100WallHeading:"我的 UPG 100 名单 — 祷告名单与海报",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 区间"},Bd={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},Ud={family:{Christianity:"基督教",Islam:"伊斯兰教",Hinduism:"印度教",Buddhism:"佛教",Ethnoreligion:"民族宗教",Judaism:"犹太教",Sikhism:"锡克教",Unaffiliated:"无宗教归属",Other:"其他",Unknown:"未知"}},qd={placeholder:"民族、地点、语言、宗教",placeholderNoPlaces:"民族、语言、宗教(地点搜索需要 Mapbox 令牌)",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"},sections:{within:"在 {selection} 之內",allData:"所有 DOXA 资料"},kinds:{people:"民族 + 国家",peopleGroup:"民族",bloc:"亲缘板块",cluster:"民族群",country:"国家",region:"区域",family:"语系",languageKind:"语言",dialect:"方言",religionKind:"宗教"},upg100Placeholder:"搜索民族、UPG-100 名单或区域…"};/*! * shared v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function Ud(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const Yr=typeof window<"u",ao=(e,t=!1)=>t?Symbol.for(e):Symbol(e),qd=(e,t,o)=>Vd({l:e,k:t,s:o}),Vd=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Fe=e=>typeof e=="number"&&isFinite(e),Wd=e=>ti(e)==="[object Date]",yo=e=>ti(e)==="[object RegExp]",Nn=e=>ie(e)&&Object.keys(e).length===0,He=Object.assign,Gd=Object.create,_e=(e=null)=>Gd(e);let Jr;const Go=()=>Jr||(Jr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:_e());function Zr(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Qr(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function Kd(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(n,s,a)=>`${s}="${Qr(a)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(n,s,a)=>`${s}='${Qr(a)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(n=>{e=e.replace(n,"$1javascript:")}),e}const Xd=Object.prototype.hasOwnProperty;function ut(e,t){return Xd.call(e,t)}const Te=Array.isArray,ke=e=>typeof e=="function",K=e=>typeof e=="string",ye=e=>typeof e=="boolean",pe=e=>e!==null&&typeof e=="object",Yd=e=>pe(e)&&ke(e.then)&&ke(e.catch),ei=Object.prototype.toString,ti=e=>ei.call(e),ie=e=>{if(!pe(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},Jd=e=>e==null?"":Te(e)||ie(e)&&e.toString===ei?JSON.stringify(e,null,2):String(e);function Zd(e,t=""){return e.reduce((o,n,s)=>s===0?o+n:o+t+n,"")}function Fn(e){let t=e;return()=>++t}const On=e=>!pe(e)||Te(e);function In(e,t){if(On(e)||On(t))throw new Error("Invalid value");const o=[{src:e,des:t}];for(;o.length;){const{src:n,des:s}=o.pop();Object.keys(n).forEach(a=>{a!=="__proto__"&&(pe(n[a])&&!pe(s[a])&&(s[a]=Array.isArray(n[a])?[]:_e()),On(s[a])||On(n[a])?s[a]=n[a]:o.push({src:n[a],des:s[a]}))})}}/*! + */function Vd(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const Zr=typeof window<"u",ao=(e,t=!1)=>t?Symbol.for(e):Symbol(e),Wd=(e,t,o)=>Gd({l:e,k:t,s:o}),Gd=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Fe=e=>typeof e=="number"&&isFinite(e),Kd=e=>ni(e)==="[object Date]",yo=e=>ni(e)==="[object RegExp]",In=e=>ue(e)&&Object.keys(e).length===0,ze=Object.assign,Xd=Object.create,he=(e=null)=>Xd(e);let Qr;const Ko=()=>Qr||(Qr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:he());function ei(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function ti(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function Yd(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(n,s,a)=>`${s}="${ti(a)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(n,s,a)=>`${s}='${ti(a)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(n=>{e=e.replace(n,"$1javascript:")}),e}const Jd=Object.prototype.hasOwnProperty;function dt(e,t){return Jd.call(e,t)}const Me=Array.isArray,Te=e=>typeof e=="function",K=e=>typeof e=="string",Ae=e=>typeof e=="boolean",ge=e=>e!==null&&typeof e=="object",Zd=e=>ge(e)&&Te(e.then)&&Te(e.catch),oi=Object.prototype.toString,ni=e=>oi.call(e),ue=e=>{if(!ge(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},Qd=e=>e==null?"":Me(e)||ue(e)&&e.toString===oi?JSON.stringify(e,null,2):String(e);function eg(e,t=""){return e.reduce((o,n,s)=>s===0?o+n:o+t+n,"")}function Dn(e){let t=e;return()=>++t}const zn=e=>!ge(e)||Me(e);function Hn(e,t){if(zn(e)||zn(t))throw new Error("Invalid value");const o=[{src:e,des:t}];for(;o.length;){const{src:n,des:s}=o.pop();Object.keys(n).forEach(a=>{a!=="__proto__"&&(ge(n[a])&&!ge(s[a])&&(s[a]=Array.isArray(n[a])?[]:he()),zn(s[a])||zn(n[a])?s[a]=n[a]:o.push({src:n[a],des:s[a]}))})}}/*! * message-compiler v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function Qd(e,t,o){return{line:e,column:t,offset:o}}function Dn(e,t,o){return{start:e,end:t}}const eg=/\{([0-9a-zA-Z]+)\}/g;function oi(e,...t){return t.length===1&&tg(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(eg,(o,n)=>t.hasOwnProperty(n)?t[n]:"")}const ni=Object.assign,si=e=>typeof e=="string",tg=e=>e!==null&&typeof e=="object";function ai(e,t=""){return e.reduce((o,n,s)=>s===0?o+n:o+t+n,"")}const Fs={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},og={[Fs.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function ng(e,t,...o){const n=oi(og[e],...o||[]),s={message:String(n),code:e};return t&&(s.location=t),s}const Z={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},sg={[Z.EXPECTED_TOKEN]:"Expected token: '{0}'",[Z.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Z.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Z.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Z.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Z.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Z.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Z.EMPTY_PLACEHOLDER]:"Empty placeholder",[Z.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Z.INVALID_LINKED_FORMAT]:"Invalid linked format",[Z.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Z.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Z.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Z.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Z.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Z.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function vo(e,t,o={}){const{domain:n,messages:s,args:a}=o,r=oi((s||sg)[e]||"",...a||[]),i=new SyntaxError(String(r));return i.code=e,t&&(i.location=t),i.domain=n,i}function ag(e){throw e}const Dt=" ",rg="\r",Ve=` -`,ig="\u2028",lg="\u2029";function cg(e){const t=e;let o=0,n=1,s=1,a=0;const r=P=>t[P]===rg&&t[P+1]===Ve,i=P=>t[P]===Ve,l=P=>t[P]===lg,p=P=>t[P]===ig,d=P=>r(P)||i(P)||l(P)||p(P),f=()=>o,b=()=>n,A=()=>s,O=()=>a,x=P=>r(P)||l(P)||p(P)?Ve:t[P],M=()=>x(o),F=()=>x(o+a);function I(){return a=0,d(o)&&(n++,s=0),r(o)&&o++,o++,s++,t[o]}function v(){return r(o+a)&&a++,a++,t[o+a]}function h(){o=0,n=1,s=1,a=0}function S(P=0){a=P}function T(){const P=o+a;for(;P!==o;)I();a=0}return{index:f,line:b,column:A,peekOffset:O,charAt:x,currentChar:M,currentPeek:F,next:I,peek:v,reset:h,resetPeek:S,skipToPeek:T}}const Vt=void 0,ug=".",ri="'",pg="tokenizer";function dg(e,t={}){const o=t.location!==!1,n=cg(e),s=()=>n.index(),a=()=>Qd(n.line(),n.column(),n.index()),r=a(),i=s(),l={currentType:14,offset:i,startLoc:r,endLoc:r,lastType:14,lastOffset:i,lastStartLoc:r,lastEndLoc:r,braceNest:0,inLinked:!1,text:""},p=()=>l,{onError:d}=t;function f(c,u,w,...C){const U=p();if(u.column+=w,u.offset+=w,d){const D=o?Dn(U.startLoc,u):null,y=vo(c,D,{domain:pg,args:C});d(y)}}function b(c,u,w){c.endLoc=a(),c.currentType=u;const C={type:u};return o&&(C.loc=Dn(c.startLoc,c.endLoc)),w!=null&&(C.value=w),C}const A=c=>b(c,14);function O(c,u){return c.currentChar()===u?(c.next(),u):(f(Z.EXPECTED_TOKEN,a(),0,u),"")}function x(c){let u="";for(;c.currentPeek()===Dt||c.currentPeek()===Ve;)u+=c.currentPeek(),c.peek();return u}function M(c){const u=x(c);return c.skipToPeek(),u}function F(c){if(c===Vt)return!1;const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u===95}function I(c){if(c===Vt)return!1;const u=c.charCodeAt(0);return u>=48&&u<=57}function v(c,u){const{currentType:w}=u;if(w!==2)return!1;x(c);const C=F(c.currentPeek());return c.resetPeek(),C}function h(c,u){const{currentType:w}=u;if(w!==2)return!1;x(c);const C=c.currentPeek()==="-"?c.peek():c.currentPeek(),U=I(C);return c.resetPeek(),U}function S(c,u){const{currentType:w}=u;if(w!==2)return!1;x(c);const C=c.currentPeek()===ri;return c.resetPeek(),C}function T(c,u){const{currentType:w}=u;if(w!==8)return!1;x(c);const C=c.currentPeek()===".";return c.resetPeek(),C}function P(c,u){const{currentType:w}=u;if(w!==9)return!1;x(c);const C=F(c.currentPeek());return c.resetPeek(),C}function z(c,u){const{currentType:w}=u;if(!(w===8||w===12))return!1;x(c);const C=c.currentPeek()===":";return c.resetPeek(),C}function B(c,u){const{currentType:w}=u;if(w!==10)return!1;const C=()=>{const D=c.currentPeek();return D==="{"?F(c.peek()):D==="@"||D==="%"||D==="|"||D===":"||D==="."||D===Dt||!D?!1:D===Ve?(c.peek(),C()):V(c,!1)},U=C();return c.resetPeek(),U}function ce(c){x(c);const u=c.currentPeek()==="|";return c.resetPeek(),u}function G(c){const u=x(c),w=c.currentPeek()==="%"&&c.peek()==="{";return c.resetPeek(),{isModulo:w,hasSpace:u.length>0}}function V(c,u=!0){const w=(U=!1,D="",y=!1)=>{const g=c.currentPeek();return g==="{"?D==="%"?!1:U:g==="@"||!g?D==="%"?!0:U:g==="%"?(c.peek(),w(U,"%",!0)):g==="|"?D==="%"||y?!0:!(D===Dt||D===Ve):g===Dt?(c.peek(),w(!0,Dt,y)):g===Ve?(c.peek(),w(!0,Ve,y)):!0},C=w();return u&&c.resetPeek(),C}function W(c,u){const w=c.currentChar();return w===Vt?Vt:u(w)?(c.next(),w):null}function Ce(c){const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u>=48&&u<=57||u===95||u===36}function Me(c){return W(c,Ce)}function te(c){const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u>=48&&u<=57||u===95||u===36||u===45}function se(c){return W(c,te)}function le(c){const u=c.charCodeAt(0);return u>=48&&u<=57}function Ae(c){return W(c,le)}function Ze(c){const u=c.charCodeAt(0);return u>=48&&u<=57||u>=65&&u<=70||u>=97&&u<=102}function ve(c){return W(c,Ze)}function xe(c){let u="",w="";for(;u=Ae(c);)w+=u;return w}function rt(c){M(c);const u=c.currentChar();return u!=="%"&&f(Z.EXPECTED_TOKEN,a(),0,u),c.next(),"%"}function De(c){let u="";for(;;){const w=c.currentChar();if(w==="{"||w==="}"||w==="@"||w==="|"||!w)break;if(w==="%")if(V(c))u+=w,c.next();else break;else if(w===Dt||w===Ve)if(V(c))u+=w,c.next();else{if(ce(c))break;u+=w,c.next()}else u+=w,c.next()}return u}function We(c){M(c);let u="",w="";for(;u=se(c);)w+=u;return c.currentChar()===Vt&&f(Z.UNTERMINATED_CLOSING_BRACE,a(),0),w}function Ge(c){M(c);let u="";return c.currentChar()==="-"?(c.next(),u+=`-${xe(c)}`):u+=xe(c),c.currentChar()===Vt&&f(Z.UNTERMINATED_CLOSING_BRACE,a(),0),u}function dt(c){return c!==ri&&c!==Ve}function gt(c){M(c),O(c,"'");let u="",w="";for(;u=W(c,dt);)u==="\\"?w+=je(c):w+=u;const C=c.currentChar();return C===Ve||C===Vt?(f(Z.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,a(),0),C===Ve&&(c.next(),O(c,"'")),w):(O(c,"'"),w)}function je(c){const u=c.currentChar();switch(u){case"\\":case"'":return c.next(),`\\${u}`;case"u":return Ke(c,u,4);case"U":return Ke(c,u,6);default:return f(Z.UNKNOWN_ESCAPE_SEQUENCE,a(),0,u),""}}function Ke(c,u,w){O(c,u);let C="";for(let U=0;U{const C=c.currentChar();return C==="{"||C==="%"||C==="@"||C==="|"||C==="("||C===")"||!C||C===Dt?w:(w+=C,c.next(),u(w))};return u("")}function L(c){M(c);const u=O(c,"|");return M(c),u}function R(c,u){let w=null;switch(c.currentChar()){case"{":return u.braceNest>=1&&f(Z.NOT_ALLOW_NEST_PLACEHOLDER,a(),0),c.next(),w=b(u,2,"{"),M(c),u.braceNest++,w;case"}":return u.braceNest>0&&u.currentType===2&&f(Z.EMPTY_PLACEHOLDER,a(),0),c.next(),w=b(u,3,"}"),u.braceNest--,u.braceNest>0&&M(c),u.inLinked&&u.braceNest===0&&(u.inLinked=!1),w;case"@":return u.braceNest>0&&f(Z.UNTERMINATED_CLOSING_BRACE,a(),0),w=E(c,u)||A(u),u.braceNest=0,w;default:{let U=!0,D=!0,y=!0;if(ce(c))return u.braceNest>0&&f(Z.UNTERMINATED_CLOSING_BRACE,a(),0),w=b(u,1,L(c)),u.braceNest=0,u.inLinked=!1,w;if(u.braceNest>0&&(u.currentType===5||u.currentType===6||u.currentType===7))return f(Z.UNTERMINATED_CLOSING_BRACE,a(),0),u.braceNest=0,H(c,u);if(U=v(c,u))return w=b(u,5,We(c)),M(c),w;if(D=h(c,u))return w=b(u,6,Ge(c)),M(c),w;if(y=S(c,u))return w=b(u,7,gt(c)),M(c),w;if(!U&&!D&&!y)return w=b(u,13,_(c)),f(Z.INVALID_TOKEN_IN_PLACEHOLDER,a(),0,w.value),M(c),w;break}}return w}function E(c,u){const{currentType:w}=u;let C=null;const U=c.currentChar();switch((w===8||w===9||w===12||w===10)&&(U===Ve||U===Dt)&&f(Z.INVALID_LINKED_FORMAT,a(),0),U){case"@":return c.next(),C=b(u,8,"@"),u.inLinked=!0,C;case".":return M(c),c.next(),b(u,9,".");case":":return M(c),c.next(),b(u,10,":");default:return ce(c)?(C=b(u,1,L(c)),u.braceNest=0,u.inLinked=!1,C):T(c,u)||z(c,u)?(M(c),E(c,u)):P(c,u)?(M(c),b(u,12,m(c))):B(c,u)?(M(c),U==="{"?R(c,u)||C:b(u,11,$(c))):(w===8&&f(Z.INVALID_LINKED_FORMAT,a(),0),u.braceNest=0,u.inLinked=!1,H(c,u))}}function H(c,u){let w={type:14};if(u.braceNest>0)return R(c,u)||A(u);if(u.inLinked)return E(c,u)||A(u);switch(c.currentChar()){case"{":return R(c,u)||A(u);case"}":return f(Z.UNBALANCED_CLOSING_BRACE,a(),0),c.next(),b(u,3,"}");case"@":return E(c,u)||A(u);default:{if(ce(c))return w=b(u,1,L(c)),u.braceNest=0,u.inLinked=!1,w;const{isModulo:U,hasSpace:D}=G(c);if(U)return D?b(u,0,De(c)):b(u,4,rt(c));if(V(c))return b(u,0,De(c));break}}return w}function j(){const{currentType:c,offset:u,startLoc:w,endLoc:C}=l;return l.lastType=c,l.lastOffset=u,l.lastStartLoc=w,l.lastEndLoc=C,l.offset=s(),l.startLoc=a(),n.currentChar()===Vt?b(l,14):H(n,l)}return{nextToken:j,currentOffset:s,currentPosition:a,context:p}}const gg="parser",_g=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function fg(e,t,o){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const n=parseInt(t||o,16);return n<=55295||n>=57344?String.fromCodePoint(n):"�"}}}function $g(e={}){const t=e.location!==!1,{onError:o,onWarn:n}=e;function s(v,h,S,T,...P){const z=v.currentPosition();if(z.offset+=T,z.column+=T,o){const B=t?Dn(S,z):null,ce=vo(h,B,{domain:gg,args:P});o(ce)}}function a(v,h,S,T,...P){const z=v.currentPosition();if(z.offset+=T,z.column+=T,n){const B=t?Dn(S,z):null;n(ng(h,B,P))}}function r(v,h,S){const T={type:v};return t&&(T.start=h,T.end=h,T.loc={start:S,end:S}),T}function i(v,h,S,T){t&&(v.end=h,v.loc&&(v.loc.end=S))}function l(v,h){const S=v.context(),T=r(3,S.offset,S.startLoc);return T.value=h,i(T,v.currentOffset(),v.currentPosition()),T}function p(v,h){const S=v.context(),{lastOffset:T,lastStartLoc:P}=S,z=r(5,T,P);return z.index=parseInt(h,10),v.nextToken(),i(z,v.currentOffset(),v.currentPosition()),z}function d(v,h,S){const T=v.context(),{lastOffset:P,lastStartLoc:z}=T,B=r(4,P,z);return B.key=h,S===!0&&(B.modulo=!0),v.nextToken(),i(B,v.currentOffset(),v.currentPosition()),B}function f(v,h){const S=v.context(),{lastOffset:T,lastStartLoc:P}=S,z=r(9,T,P);return z.value=h.replace(_g,fg),v.nextToken(),i(z,v.currentOffset(),v.currentPosition()),z}function b(v){const h=v.nextToken(),S=v.context(),{lastOffset:T,lastStartLoc:P}=S,z=r(8,T,P);return h.type!==12?(s(v,Z.UNEXPECTED_EMPTY_LINKED_MODIFIER,S.lastStartLoc,0),z.value="",i(z,T,P),{nextConsumeToken:h,node:z}):(h.value==null&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,pt(h)),z.value=h.value||"",i(z,v.currentOffset(),v.currentPosition()),{node:z})}function A(v,h){const S=v.context(),T=r(7,S.offset,S.startLoc);return T.value=h,i(T,v.currentOffset(),v.currentPosition()),T}function O(v){const h=v.context(),S=r(6,h.offset,h.startLoc);let T=v.nextToken();if(T.type===9){const P=b(v);S.modifier=P.node,T=P.nextConsumeToken||v.nextToken()}switch(T.type!==10&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,h.lastStartLoc,0,pt(T)),T=v.nextToken(),T.type===2&&(T=v.nextToken()),T.type){case 11:T.value==null&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,h.lastStartLoc,0,pt(T)),S.key=A(v,T.value||"");break;case 5:T.value==null&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,h.lastStartLoc,0,pt(T)),S.key=d(v,T.value||"");break;case 6:T.value==null&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,h.lastStartLoc,0,pt(T)),S.key=p(v,T.value||"");break;case 7:T.value==null&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,h.lastStartLoc,0,pt(T)),S.key=f(v,T.value||"");break;default:{s(v,Z.UNEXPECTED_EMPTY_LINKED_KEY,h.lastStartLoc,0);const P=v.context(),z=r(7,P.offset,P.startLoc);return z.value="",i(z,P.offset,P.startLoc),S.key=z,i(S,P.offset,P.startLoc),{nextConsumeToken:T,node:S}}}return i(S,v.currentOffset(),v.currentPosition()),{node:S}}function x(v){const h=v.context(),S=h.currentType===1?v.currentOffset():h.offset,T=h.currentType===1?h.endLoc:h.startLoc,P=r(2,S,T);P.items=[];let z=null,B=null;do{const V=z||v.nextToken();switch(z=null,V.type){case 0:V.value==null&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,h.lastStartLoc,0,pt(V)),P.items.push(l(v,V.value||""));break;case 6:V.value==null&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,h.lastStartLoc,0,pt(V)),P.items.push(p(v,V.value||""));break;case 4:B=!0;break;case 5:V.value==null&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,h.lastStartLoc,0,pt(V)),P.items.push(d(v,V.value||"",!!B)),B&&(a(v,Fs.USE_MODULO_SYNTAX,h.lastStartLoc,0,pt(V)),B=null);break;case 7:V.value==null&&s(v,Z.UNEXPECTED_LEXICAL_ANALYSIS,h.lastStartLoc,0,pt(V)),P.items.push(f(v,V.value||""));break;case 8:{const W=O(v);P.items.push(W.node),z=W.nextConsumeToken||null;break}}}while(h.currentType!==14&&h.currentType!==1);const ce=h.currentType===1?h.lastOffset:v.currentOffset(),G=h.currentType===1?h.lastEndLoc:v.currentPosition();return i(P,ce,G),P}function M(v,h,S,T){const P=v.context();let z=T.items.length===0;const B=r(1,h,S);B.cases=[],B.cases.push(T);do{const ce=x(v);z||(z=ce.items.length===0),B.cases.push(ce)}while(P.currentType!==14);return z&&s(v,Z.MUST_HAVE_MESSAGES_IN_PLURAL,S,0),i(B,v.currentOffset(),v.currentPosition()),B}function F(v){const h=v.context(),{offset:S,startLoc:T}=h,P=x(v);return h.currentType===14?P:M(v,S,T,P)}function I(v){const h=dg(v,ni({},e)),S=h.context(),T=r(0,S.offset,S.startLoc);return t&&T.loc&&(T.loc.source=v),T.body=F(h),e.onCacheKey&&(T.cacheKey=e.onCacheKey(v)),S.currentType!==14&&s(h,Z.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,v[S.offset]||""),i(T,h.currentOffset(),h.currentPosition()),T}return{parse:I}}function pt(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function hg(e,t={}){const o={ast:e,helpers:new Set};return{context:()=>o,helper:a=>(o.helpers.add(a),a)}}function ii(e,t){for(let o=0;oli(o)),e}function li(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let o=0;or;function l(x,M){r.code+=x}function p(x,M=!0){const F=M?n:"";l(s?F+" ".repeat(x):F)}function d(x=!0){const M=++r.indentLevel;x&&p(M)}function f(x=!0){const M=--r.indentLevel;x&&p(M)}function b(){p(r.indentLevel)}return{context:i,push:l,indent:d,deindent:f,newline:b,helper:x=>`_${x}`,needIndent:()=>r.needIndent}}function kg(e,t){const{helper:o}=e;e.push(`${o("linked")}(`),ko(e,t.key),t.modifier?(e.push(", "),ko(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function xg(e,t){const{helper:o,needIndent:n}=e;e.push(`${o("normalize")}([`),e.indent(n());const s=t.items.length;for(let a=0;a1){e.push(`${o("plural")}([`),e.indent(n());const s=t.cases.length;for(let a=0;a{const o=si(t.mode)?t.mode:"normal",n=si(t.filename)?t.filename:"message.intl";t.sourceMap;const s=t.breakLineCode!=null?t.breakLineCode:o==="arrow"?";":` -`,a=t.needIndent?t.needIndent:o!=="arrow",r=e.helpers||[],i=wg(e,{filename:n,breakLineCode:s,needIndent:a});i.push(o==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(a),r.length>0&&(i.push(`const { ${ai(r.map(d=>`${d}: _${d}`),", ")} } = ctx`),i.newline()),i.push("return "),ko(i,e),i.deindent(a),i.push("}"),delete e.helpers;const{code:l,map:p}=i.context();return{ast:e,code:l,map:p?p.toJSON():void 0}};function Tg(e,t={}){const o=ni({},t),n=!!o.jit,s=!!o.minify,a=o.optimize==null?!0:o.optimize,i=$g(o).parse(e);return n?(a&&bg(i),s&&wo(i),{ast:i,code:""}):(mg(i,o),Lg(i,o))}/*! + */function tg(e,t,o){return{line:e,column:t,offset:o}}function jn(e,t,o){return{start:e,end:t}}const og=/\{([0-9a-zA-Z]+)\}/g;function si(e,...t){return t.length===1&&ng(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(og,(o,n)=>t.hasOwnProperty(n)?t[n]:"")}const ai=Object.assign,ri=e=>typeof e=="string",ng=e=>e!==null&&typeof e=="object";function ii(e,t=""){return e.reduce((o,n,s)=>s===0?o+n:o+t+n,"")}const Is={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},sg={[Is.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function ag(e,t,...o){const n=si(sg[e],...o||[]),s={message:String(n),code:e};return t&&(s.location=t),s}const Q={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},rg={[Q.EXPECTED_TOKEN]:"Expected token: '{0}'",[Q.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Q.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Q.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Q.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Q.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Q.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Q.EMPTY_PLACEHOLDER]:"Empty placeholder",[Q.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Q.INVALID_LINKED_FORMAT]:"Invalid linked format",[Q.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Q.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Q.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Q.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Q.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Q.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function vo(e,t,o={}){const{domain:n,messages:s,args:a}=o,r=si((s||rg)[e]||"",...a||[]),i=new SyntaxError(String(r));return i.code=e,t&&(i.location=t),i.domain=n,i}function ig(e){throw e}const Dt=" ",lg="\r",qe=` +`,cg="\u2028",ug="\u2029";function pg(e){const t=e;let o=0,n=1,s=1,a=0;const r=M=>t[M]===lg&&t[M+1]===qe,i=M=>t[M]===qe,l=M=>t[M]===ug,p=M=>t[M]===cg,d=M=>r(M)||i(M)||l(M)||p(M),_=()=>o,m=()=>n,k=()=>s,O=()=>a,P=M=>r(M)||l(M)||p(M)?qe:t[M],F=()=>P(o),A=()=>P(o+a);function j(){return a=0,d(o)&&(n++,s=0),r(o)&&o++,o++,s++,t[o]}function y(){return r(o+a)&&a++,a++,t[o+a]}function $(){o=0,n=1,s=1,a=0}function T(M=0){a=M}function x(){const M=o+a;for(;M!==o;)j();a=0}return{index:_,line:m,column:k,peekOffset:O,charAt:P,currentChar:F,currentPeek:A,next:j,peek:y,reset:$,resetPeek:T,skipToPeek:x}}const Vt=void 0,dg=".",li="'",gg="tokenizer";function _g(e,t={}){const o=t.location!==!1,n=pg(e),s=()=>n.index(),a=()=>tg(n.line(),n.column(),n.index()),r=a(),i=s(),l={currentType:14,offset:i,startLoc:r,endLoc:r,lastType:14,lastOffset:i,lastStartLoc:r,lastEndLoc:r,braceNest:0,inLinked:!1,text:""},p=()=>l,{onError:d}=t;function _(c,u,w,...L){const q=p();if(u.column+=w,u.offset+=w,d){const I=o?jn(q.startLoc,u):null,v=vo(c,I,{domain:gg,args:L});d(v)}}function m(c,u,w){c.endLoc=a(),c.currentType=u;const L={type:u};return o&&(L.loc=jn(c.startLoc,c.endLoc)),w!=null&&(L.value=w),L}const k=c=>m(c,14);function O(c,u){return c.currentChar()===u?(c.next(),u):(_(Q.EXPECTED_TOKEN,a(),0,u),"")}function P(c){let u="";for(;c.currentPeek()===Dt||c.currentPeek()===qe;)u+=c.currentPeek(),c.peek();return u}function F(c){const u=P(c);return c.skipToPeek(),u}function A(c){if(c===Vt)return!1;const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u===95}function j(c){if(c===Vt)return!1;const u=c.charCodeAt(0);return u>=48&&u<=57}function y(c,u){const{currentType:w}=u;if(w!==2)return!1;P(c);const L=A(c.currentPeek());return c.resetPeek(),L}function $(c,u){const{currentType:w}=u;if(w!==2)return!1;P(c);const L=c.currentPeek()==="-"?c.peek():c.currentPeek(),q=j(L);return c.resetPeek(),q}function T(c,u){const{currentType:w}=u;if(w!==2)return!1;P(c);const L=c.currentPeek()===li;return c.resetPeek(),L}function x(c,u){const{currentType:w}=u;if(w!==8)return!1;P(c);const L=c.currentPeek()===".";return c.resetPeek(),L}function M(c,u){const{currentType:w}=u;if(w!==9)return!1;P(c);const L=A(c.currentPeek());return c.resetPeek(),L}function H(c,u){const{currentType:w}=u;if(!(w===8||w===12))return!1;P(c);const L=c.currentPeek()===":";return c.resetPeek(),L}function D(c,u){const{currentType:w}=u;if(w!==10)return!1;const L=()=>{const I=c.currentPeek();return I==="{"?A(c.peek()):I==="@"||I==="%"||I==="|"||I===":"||I==="."||I===Dt||!I?!1:I===qe?(c.peek(),L()):V(c,!1)},q=L();return c.resetPeek(),q}function ce(c){P(c);const u=c.currentPeek()==="|";return c.resetPeek(),u}function X(c){const u=P(c),w=c.currentPeek()==="%"&&c.peek()==="{";return c.resetPeek(),{isModulo:w,hasSpace:u.length>0}}function V(c,u=!0){const w=(q=!1,I="",v=!1)=>{const C=c.currentPeek();return C==="{"?I==="%"?!1:q:C==="@"||!C?I==="%"?!0:q:C==="%"?(c.peek(),w(q,"%",!0)):C==="|"?I==="%"||v?!0:!(I===Dt||I===qe):C===Dt?(c.peek(),w(!0,Dt,v)):C===qe?(c.peek(),w(!0,qe,v)):!0},L=w();return u&&c.resetPeek(),L}function J(c,u){const w=c.currentChar();return w===Vt?Vt:u(w)?(c.next(),w):null}function Re(c){const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u>=48&&u<=57||u===95||u===36}function re(c){return J(c,Re)}function pe(c){const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u>=48&&u<=57||u===95||u===36||u===45}function se(c){return J(c,pe)}function ee(c){const u=c.charCodeAt(0);return u>=48&&u<=57}function Ce(c){return J(c,ee)}function Xe(c){const u=c.charCodeAt(0);return u>=48&&u<=57||u>=65&&u<=70||u>=97&&u<=102}function ve(c){return J(c,Xe)}function Le(c){let u="",w="";for(;u=Ce(c);)w+=u;return w}function it(c){F(c);const u=c.currentChar();return u!=="%"&&_(Q.EXPECTED_TOKEN,a(),0,u),c.next(),"%"}function Ye(c){let u="";for(;;){const w=c.currentChar();if(w==="{"||w==="}"||w==="@"||w==="|"||!w)break;if(w==="%")if(V(c))u+=w,c.next();else break;else if(w===Dt||w===qe)if(V(c))u+=w,c.next();else{if(ce(c))break;u+=w,c.next()}else u+=w,c.next()}return u}function lt(c){F(c);let u="",w="";for(;u=se(c);)w+=u;return c.currentChar()===Vt&&_(Q.UNTERMINATED_CLOSING_BRACE,a(),0),w}function He(c){F(c);let u="";return c.currentChar()==="-"?(c.next(),u+=`-${Le(c)}`):u+=Le(c),c.currentChar()===Vt&&_(Q.UNTERMINATED_CLOSING_BRACE,a(),0),u}function Je(c){return c!==li&&c!==qe}function tt(c){F(c),O(c,"'");let u="",w="";for(;u=J(c,Je);)u==="\\"?w+=Tt(c):w+=u;const L=c.currentChar();return L===qe||L===Vt?(_(Q.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,a(),0),L===qe&&(c.next(),O(c,"'")),w):(O(c,"'"),w)}function Tt(c){const u=c.currentChar();switch(u){case"\\":case"'":return c.next(),`\\${u}`;case"u":return Ze(c,u,4);case"U":return Ze(c,u,6);default:return _(Q.UNKNOWN_ESCAPE_SEQUENCE,a(),0,u),""}}function Ze(c,u,w){O(c,u);let L="";for(let q=0;q{const L=c.currentChar();return L==="{"||L==="%"||L==="@"||L==="|"||L==="("||L===")"||!L||L===Dt?w:(w+=L,c.next(),u(w))};return u("")}function S(c){F(c);const u=O(c,"|");return F(c),u}function N(c,u){let w=null;switch(c.currentChar()){case"{":return u.braceNest>=1&&_(Q.NOT_ALLOW_NEST_PLACEHOLDER,a(),0),c.next(),w=m(u,2,"{"),F(c),u.braceNest++,w;case"}":return u.braceNest>0&&u.currentType===2&&_(Q.EMPTY_PLACEHOLDER,a(),0),c.next(),w=m(u,3,"}"),u.braceNest--,u.braceNest>0&&F(c),u.inLinked&&u.braceNest===0&&(u.inLinked=!1),w;case"@":return u.braceNest>0&&_(Q.UNTERMINATED_CLOSING_BRACE,a(),0),w=R(c,u)||k(u),u.braceNest=0,w;default:{let q=!0,I=!0,v=!0;if(ce(c))return u.braceNest>0&&_(Q.UNTERMINATED_CLOSING_BRACE,a(),0),w=m(u,1,S(c)),u.braceNest=0,u.inLinked=!1,w;if(u.braceNest>0&&(u.currentType===5||u.currentType===6||u.currentType===7))return _(Q.UNTERMINATED_CLOSING_BRACE,a(),0),u.braceNest=0,B(c,u);if(q=y(c,u))return w=m(u,5,lt(c)),F(c),w;if(I=$(c,u))return w=m(u,6,He(c)),F(c),w;if(v=T(c,u))return w=m(u,7,tt(c)),F(c),w;if(!q&&!I&&!v)return w=m(u,13,g(c)),_(Q.INVALID_TOKEN_IN_PLACEHOLDER,a(),0,w.value),F(c),w;break}}return w}function R(c,u){const{currentType:w}=u;let L=null;const q=c.currentChar();switch((w===8||w===9||w===12||w===10)&&(q===qe||q===Dt)&&_(Q.INVALID_LINKED_FORMAT,a(),0),q){case"@":return c.next(),L=m(u,8,"@"),u.inLinked=!0,L;case".":return F(c),c.next(),m(u,9,".");case":":return F(c),c.next(),m(u,10,":");default:return ce(c)?(L=m(u,1,S(c)),u.braceNest=0,u.inLinked=!1,L):x(c,u)||H(c,u)?(F(c),R(c,u)):M(c,u)?(F(c),m(u,12,h(c))):D(c,u)?(F(c),q==="{"?N(c,u)||L:m(u,11,f(c))):(w===8&&_(Q.INVALID_LINKED_FORMAT,a(),0),u.braceNest=0,u.inLinked=!1,B(c,u))}}function B(c,u){let w={type:14};if(u.braceNest>0)return N(c,u)||k(u);if(u.inLinked)return R(c,u)||k(u);switch(c.currentChar()){case"{":return N(c,u)||k(u);case"}":return _(Q.UNBALANCED_CLOSING_BRACE,a(),0),c.next(),m(u,3,"}");case"@":return R(c,u)||k(u);default:{if(ce(c))return w=m(u,1,S(c)),u.braceNest=0,u.inLinked=!1,w;const{isModulo:q,hasSpace:I}=X(c);if(q)return I?m(u,0,Ye(c)):m(u,4,it(c));if(V(c))return m(u,0,Ye(c));break}}return w}function z(){const{currentType:c,offset:u,startLoc:w,endLoc:L}=l;return l.lastType=c,l.lastOffset=u,l.lastStartLoc=w,l.lastEndLoc=L,l.offset=s(),l.startLoc=a(),n.currentChar()===Vt?m(l,14):B(n,l)}return{nextToken:z,currentOffset:s,currentPosition:a,context:p}}const fg="parser",$g=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function hg(e,t,o){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const n=parseInt(t||o,16);return n<=55295||n>=57344?String.fromCodePoint(n):"�"}}}function mg(e={}){const t=e.location!==!1,{onError:o,onWarn:n}=e;function s(y,$,T,x,...M){const H=y.currentPosition();if(H.offset+=x,H.column+=x,o){const D=t?jn(T,H):null,ce=vo($,D,{domain:fg,args:M});o(ce)}}function a(y,$,T,x,...M){const H=y.currentPosition();if(H.offset+=x,H.column+=x,n){const D=t?jn(T,H):null;n(ag($,D,M))}}function r(y,$,T){const x={type:y};return t&&(x.start=$,x.end=$,x.loc={start:T,end:T}),x}function i(y,$,T,x){t&&(y.end=$,y.loc&&(y.loc.end=T))}function l(y,$){const T=y.context(),x=r(3,T.offset,T.startLoc);return x.value=$,i(x,y.currentOffset(),y.currentPosition()),x}function p(y,$){const T=y.context(),{lastOffset:x,lastStartLoc:M}=T,H=r(5,x,M);return H.index=parseInt($,10),y.nextToken(),i(H,y.currentOffset(),y.currentPosition()),H}function d(y,$,T){const x=y.context(),{lastOffset:M,lastStartLoc:H}=x,D=r(4,M,H);return D.key=$,T===!0&&(D.modulo=!0),y.nextToken(),i(D,y.currentOffset(),y.currentPosition()),D}function _(y,$){const T=y.context(),{lastOffset:x,lastStartLoc:M}=T,H=r(9,x,M);return H.value=$.replace($g,hg),y.nextToken(),i(H,y.currentOffset(),y.currentPosition()),H}function m(y){const $=y.nextToken(),T=y.context(),{lastOffset:x,lastStartLoc:M}=T,H=r(8,x,M);return $.type!==12?(s(y,Q.UNEXPECTED_EMPTY_LINKED_MODIFIER,T.lastStartLoc,0),H.value="",i(H,x,M),{nextConsumeToken:$,node:H}):($.value==null&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,T.lastStartLoc,0,gt($)),H.value=$.value||"",i(H,y.currentOffset(),y.currentPosition()),{node:H})}function k(y,$){const T=y.context(),x=r(7,T.offset,T.startLoc);return x.value=$,i(x,y.currentOffset(),y.currentPosition()),x}function O(y){const $=y.context(),T=r(6,$.offset,$.startLoc);let x=y.nextToken();if(x.type===9){const M=m(y);T.modifier=M.node,x=M.nextConsumeToken||y.nextToken()}switch(x.type!==10&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,gt(x)),x=y.nextToken(),x.type===2&&(x=y.nextToken()),x.type){case 11:x.value==null&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,gt(x)),T.key=k(y,x.value||"");break;case 5:x.value==null&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,gt(x)),T.key=d(y,x.value||"");break;case 6:x.value==null&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,gt(x)),T.key=p(y,x.value||"");break;case 7:x.value==null&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,gt(x)),T.key=_(y,x.value||"");break;default:{s(y,Q.UNEXPECTED_EMPTY_LINKED_KEY,$.lastStartLoc,0);const M=y.context(),H=r(7,M.offset,M.startLoc);return H.value="",i(H,M.offset,M.startLoc),T.key=H,i(T,M.offset,M.startLoc),{nextConsumeToken:x,node:T}}}return i(T,y.currentOffset(),y.currentPosition()),{node:T}}function P(y){const $=y.context(),T=$.currentType===1?y.currentOffset():$.offset,x=$.currentType===1?$.endLoc:$.startLoc,M=r(2,T,x);M.items=[];let H=null,D=null;do{const V=H||y.nextToken();switch(H=null,V.type){case 0:V.value==null&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,gt(V)),M.items.push(l(y,V.value||""));break;case 6:V.value==null&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,gt(V)),M.items.push(p(y,V.value||""));break;case 4:D=!0;break;case 5:V.value==null&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,gt(V)),M.items.push(d(y,V.value||"",!!D)),D&&(a(y,Is.USE_MODULO_SYNTAX,$.lastStartLoc,0,gt(V)),D=null);break;case 7:V.value==null&&s(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,gt(V)),M.items.push(_(y,V.value||""));break;case 8:{const J=O(y);M.items.push(J.node),H=J.nextConsumeToken||null;break}}}while($.currentType!==14&&$.currentType!==1);const ce=$.currentType===1?$.lastOffset:y.currentOffset(),X=$.currentType===1?$.lastEndLoc:y.currentPosition();return i(M,ce,X),M}function F(y,$,T,x){const M=y.context();let H=x.items.length===0;const D=r(1,$,T);D.cases=[],D.cases.push(x);do{const ce=P(y);H||(H=ce.items.length===0),D.cases.push(ce)}while(M.currentType!==14);return H&&s(y,Q.MUST_HAVE_MESSAGES_IN_PLURAL,T,0),i(D,y.currentOffset(),y.currentPosition()),D}function A(y){const $=y.context(),{offset:T,startLoc:x}=$,M=P(y);return $.currentType===14?M:F(y,T,x,M)}function j(y){const $=_g(y,ai({},e)),T=$.context(),x=r(0,T.offset,T.startLoc);return t&&x.loc&&(x.loc.source=y),x.body=A($),e.onCacheKey&&(x.cacheKey=e.onCacheKey(y)),T.currentType!==14&&s($,Q.UNEXPECTED_LEXICAL_ANALYSIS,T.lastStartLoc,0,y[T.offset]||""),i(x,$.currentOffset(),$.currentPosition()),x}return{parse:j}}function gt(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function bg(e,t={}){const o={ast:e,helpers:new Set};return{context:()=>o,helper:a=>(o.helpers.add(a),a)}}function ci(e,t){for(let o=0;oui(o)),e}function ui(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let o=0;or;function l(P,F){r.code+=P}function p(P,F=!0){const A=F?n:"";l(s?A+" ".repeat(P):A)}function d(P=!0){const F=++r.indentLevel;P&&p(F)}function _(P=!0){const F=--r.indentLevel;P&&p(F)}function m(){p(r.indentLevel)}return{context:i,push:l,indent:d,deindent:_,newline:m,helper:P=>`_${P}`,needIndent:()=>r.needIndent}}function Ag(e,t){const{helper:o}=e;e.push(`${o("linked")}(`),ko(e,t.key),t.modifier?(e.push(", "),ko(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Sg(e,t){const{helper:o,needIndent:n}=e;e.push(`${o("normalize")}([`),e.indent(n());const s=t.items.length;for(let a=0;a1){e.push(`${o("plural")}([`),e.indent(n());const s=t.cases.length;for(let a=0;a{const o=ri(t.mode)?t.mode:"normal",n=ri(t.filename)?t.filename:"message.intl";t.sourceMap;const s=t.breakLineCode!=null?t.breakLineCode:o==="arrow"?";":` +`,a=t.needIndent?t.needIndent:o!=="arrow",r=e.helpers||[],i=xg(e,{filename:n,breakLineCode:s,needIndent:a});i.push(o==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(a),r.length>0&&(i.push(`const { ${ii(r.map(d=>`${d}: _${d}`),", ")} } = ctx`),i.newline()),i.push("return "),ko(i,e),i.deindent(a),i.push("}"),delete e.helpers;const{code:l,map:p}=i.context();return{ast:e,code:l,map:p?p.toJSON():void 0}};function Eg(e,t={}){const o=ai({},t),n=!!o.jit,s=!!o.minify,a=o.optimize==null?!0:o.optimize,i=mg(o).parse(e);return n?(a&&vg(i),s&&wo(i),{ast:i,code:""}):(yg(i,o),Cg(i,o))}/*! * core-base v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function Cg(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Go().__INTLIFY_PROD_DEVTOOLS__=!1)}function kt(e){return pe(e)&&Is(e)===0&&(ut(e,"b")||ut(e,"body"))}const ci=["b","body"];function Eg(e){return Wt(e,ci)}const ui=["c","cases"];function Pg(e){return Wt(e,ui,[])}const pi=["s","static"];function Mg(e){return Wt(e,pi)}const di=["i","items"];function Rg(e){return Wt(e,di,[])}const gi=["t","type"];function Is(e){return Wt(e,gi)}const _i=["v","value"];function zn(e,t){const o=Wt(e,_i);if(o!=null)return o;throw Ko(t)}const fi=["m","modifier"];function Ng(e){return Wt(e,fi)}const $i=["k","key"];function Fg(e){const t=Wt(e,$i);if(t)return t;throw Ko(6)}function Wt(e,t,o){for(let n=0;n{r===void 0?r=i:r+=i},b[1]=()=>{r!==void 0&&(t.push(r),r=void 0)},b[2]=()=>{b[0](),s++},b[3]=()=>{if(s>0)s--,n=4,b[0]();else{if(s=0,r===void 0||(r=Hg(r),r===!1))return!1;b[1]()}};function A(){const O=e[o+1];if(n===5&&O==="'"||n===6&&O==='"')return o++,i="\\"+O,b[0](),!0}for(;n!==null;)if(o++,a=e[o],!(a==="\\"&&A())){if(l=zg(a),f=Gt[n],p=f[l]||f.l||8,p===8||(n=p[0],p[1]!==void 0&&(d=b[p[1]],d&&(i=a,d()===!1))))return;if(n===7)return t}}const mi=new Map;function Bg(e,t){return pe(e)?e[t]:null}function Ug(e,t){if(!pe(e))return null;let o=mi.get(t);if(o||(o=jg(t),o&&mi.set(t,o)),!o)return null;const n=o.length;let s=e,a=0;for(;ae,Vg=e=>"",Wg="text",Gg=e=>e.length===0?"":Zd(e),Kg=Jd;function bi(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function Xg(e){const t=Fe(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Fe(e.named.count)||Fe(e.named.n))?Fe(e.named.count)?e.named.count:Fe(e.named.n)?e.named.n:t:t}function Yg(e,t){t.count||(t.count=e),t.n||(t.n=e)}function Jg(e={}){const t=e.locale,o=Xg(e),n=pe(e.pluralRules)&&K(t)&&ke(e.pluralRules[t])?e.pluralRules[t]:bi,s=pe(e.pluralRules)&&K(t)&&ke(e.pluralRules[t])?bi:void 0,a=F=>F[n(o,F.length,s)],r=e.list||[],i=F=>r[F],l=e.named||_e();Fe(e.pluralIndex)&&Yg(o,l);const p=F=>l[F];function d(F){const I=ke(e.messages)?e.messages(F):pe(e.messages)?e.messages[F]:!1;return I||(e.parent?e.parent.message(F):Vg)}const f=F=>e.modifiers?e.modifiers[F]:qg,b=ie(e.processor)&&ke(e.processor.normalize)?e.processor.normalize:Gg,A=ie(e.processor)&&ke(e.processor.interpolate)?e.processor.interpolate:Kg,O=ie(e.processor)&&K(e.processor.type)?e.processor.type:Wg,M={list:i,named:p,plural:a,linked:(F,...I)=>{const[v,h]=I;let S="text",T="";I.length===1?pe(v)?(T=v.modifier||T,S=v.type||S):K(v)&&(T=v||T):I.length===2&&(K(v)&&(T=v||T),K(h)&&(S=h||S));const P=d(F)(M),z=S==="vnode"&&Te(P)&&T?P[0]:P;return T?f(T)(z,S):z},message:d,type:O,interpolate:A,normalize:b,values:He(_e(),r,l)};return M}let Xo=null;function Zg(e){Xo=e}function Qg(e,t,o){Xo&&Xo.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:o})}const e_=t_("function:translate");function t_(e){return t=>Xo&&Xo.emit(e,t)}const o_=Fs.__EXTEND_POINT__,ro=Fn(o_),n_={FALLBACK_TO_TRANSLATE:ro(),CANNOT_FORMAT_NUMBER:ro(),FALLBACK_TO_NUMBER_FORMAT:ro(),CANNOT_FORMAT_DATE:ro(),FALLBACK_TO_DATE_FORMAT:ro(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:ro(),__EXTEND_POINT__:ro()},yi=Z.__EXTEND_POINT__,io=Fn(yi),xt={INVALID_ARGUMENT:yi,INVALID_DATE_ARGUMENT:io(),INVALID_ISO_DATE_ARGUMENT:io(),NOT_SUPPORT_NON_STRING_MESSAGE:io(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:io(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:io(),NOT_SUPPORT_LOCALE_TYPE:io(),__EXTEND_POINT__:io()};function zt(e){return vo(e,null,void 0)}function Ds(e,t){return t.locale!=null?vi(t.locale):vi(e.locale)}let zs;function vi(e){if(K(e))return e;if(ke(e)){if(e.resolvedOnce&&zs!=null)return zs;if(e.constructor.name==="Function"){const t=e();if(Yd(t))throw zt(xt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return zs=t}else throw zt(xt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw zt(xt.NOT_SUPPORT_LOCALE_TYPE)}function s_(e,t,o){return[...new Set([o,...Te(t)?t:pe(t)?Object.keys(t):K(t)?[t]:[o]])]}function wi(e,t,o){const n=K(o)?o:Yo,s=e;s.__localeChainCache||(s.__localeChainCache=new Map);let a=s.__localeChainCache.get(n);if(!a){a=[];let r=[o];for(;Te(r);)r=ki(a,r,t);const i=Te(t)||!ie(t)?t:t.default?t.default:null;r=K(i)?[i]:i,Te(r)&&ki(a,r,!1),s.__localeChainCache.set(n,a)}return a}function ki(e,t,o){let n=!0;for(let s=0;s`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function l_(){return{upper:(e,t)=>t==="text"&&K(e)?e.toUpperCase():t==="vnode"&&pe(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&K(e)?e.toLowerCase():t==="vnode"&&pe(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&K(e)?Ai(e):t==="vnode"&&pe(e)&&"__v_isVNode"in e?Ai(e.children):e}}let Si;function c_(e){Si=e}let Li;function u_(e){Li=e}let Ti;function p_(e){Ti=e}let Ci=null;const d_=e=>{Ci=e},g_=()=>Ci;let Ei=null;const Pi=e=>{Ei=e},__=()=>Ei;let Mi=0;function f_(e={}){const t=ke(e.onWarn)?e.onWarn:Ud,o=K(e.version)?e.version:i_,n=K(e.locale)||ke(e.locale)?e.locale:Yo,s=ke(n)?Yo:n,a=Te(e.fallbackLocale)||ie(e.fallbackLocale)||K(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:s,r=ie(e.messages)?e.messages:Hs(s),i=ie(e.datetimeFormats)?e.datetimeFormats:Hs(s),l=ie(e.numberFormats)?e.numberFormats:Hs(s),p=He(_e(),e.modifiers,l_()),d=e.pluralRules||_e(),f=ke(e.missing)?e.missing:null,b=ye(e.missingWarn)||yo(e.missingWarn)?e.missingWarn:!0,A=ye(e.fallbackWarn)||yo(e.fallbackWarn)?e.fallbackWarn:!0,O=!!e.fallbackFormat,x=!!e.unresolving,M=ke(e.postTranslation)?e.postTranslation:null,F=ie(e.processor)?e.processor:null,I=ye(e.warnHtmlMessage)?e.warnHtmlMessage:!0,v=!!e.escapeParameter,h=ke(e.messageCompiler)?e.messageCompiler:Si,S=ke(e.messageResolver)?e.messageResolver:Li||Bg,T=ke(e.localeFallbacker)?e.localeFallbacker:Ti||s_,P=pe(e.fallbackContext)?e.fallbackContext:void 0,z=e,B=pe(z.__datetimeFormatters)?z.__datetimeFormatters:new Map,ce=pe(z.__numberFormatters)?z.__numberFormatters:new Map,G=pe(z.__meta)?z.__meta:{};Mi++;const V={version:o,cid:Mi,locale:n,fallbackLocale:a,messages:r,modifiers:p,pluralRules:d,missing:f,missingWarn:b,fallbackWarn:A,fallbackFormat:O,unresolving:x,postTranslation:M,processor:F,warnHtmlMessage:I,escapeParameter:v,messageCompiler:h,messageResolver:S,localeFallbacker:T,fallbackContext:P,onWarn:t,__meta:G};return V.datetimeFormats=i,V.numberFormats=l,V.__datetimeFormatters=B,V.__numberFormatters=ce,__INTLIFY_PROD_DEVTOOLS__&&Qg(V,o,G),V}const Hs=e=>({[e]:_e()});function js(e,t,o,n,s){const{missing:a,onWarn:r}=e;if(a!==null){const i=a(e,o,t,s);return K(i)?i:t}else return t}function Jo(e,t,o){const n=e;n.__localeChainCache=new Map,e.localeFallbacker(e,o,t)}function $_(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function h_(e,t){const o=t.indexOf(e);if(o===-1)return!1;for(let n=o+1;nm_(o,e)}function m_(e,t){const o=Eg(t);if(o==null)throw Ko(0);if(Is(o)===1){const a=Pg(o);return e.plural(a.reduce((r,i)=>[...r,Ri(e,i)],[]))}else return Ri(e,o)}function Ri(e,t){const o=Mg(t);if(o!=null)return e.type==="text"?o:e.normalize([o]);{const n=Rg(t).reduce((s,a)=>[...s,Us(e,a)],[]);return e.normalize(n)}}function Us(e,t){const o=Is(t);switch(o){case 3:return zn(t,o);case 9:return zn(t,o);case 4:{const n=t;if(ut(n,"k")&&n.k)return e.interpolate(e.named(n.k));if(ut(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw Ko(o)}case 5:{const n=t;if(ut(n,"i")&&Fe(n.i))return e.interpolate(e.list(n.i));if(ut(n,"index")&&Fe(n.index))return e.interpolate(e.list(n.index));throw Ko(o)}case 6:{const n=t,s=Ng(n),a=Fg(n);return e.linked(Us(e,a),s?Us(e,s):void 0,e.type)}case 7:return zn(t,o);case 8:return zn(t,o);default:throw new Error(`unhandled node on format message part: ${o}`)}}const b_=e=>e;let jn=_e();function y_(e,t={}){let o=!1;const n=t.onError||ag;return t.onError=s=>{o=!0,n(s)},{...Tg(e,t),detectError:o}}function v_(e,t){if(K(e)){ye(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||b_)(e),s=jn[n];if(s)return s;const{ast:a,detectError:r}=y_(e,{...t,location:!1,jit:!0}),i=Bs(a);return r?i:jn[n]=i}else{const o=e.cacheKey;if(o){const n=jn[o];return n||(jn[o]=Bs(e))}else return Bs(e)}}const Ni=()=>"",at=e=>ke(e);function Fi(e,...t){const{fallbackFormat:o,postTranslation:n,unresolving:s,messageCompiler:a,fallbackLocale:r,messages:i}=e,[l,p]=qs(...t),d=ye(p.missingWarn)?p.missingWarn:e.missingWarn,f=ye(p.fallbackWarn)?p.fallbackWarn:e.fallbackWarn,b=ye(p.escapeParameter)?p.escapeParameter:e.escapeParameter,A=!!p.resolvedMessage,O=K(p.default)||ye(p.default)?ye(p.default)?a?l:()=>l:p.default:o?a?l:()=>l:"",x=o||O!=="",M=Ds(e,p);b&&w_(p);let[F,I,v]=A?[l,M,i[M]||_e()]:Oi(e,l,M,r,f,d),h=F,S=l;if(!A&&!(K(h)||kt(h)||at(h))&&x&&(h=O,S=h),!A&&(!(K(h)||kt(h)||at(h))||!K(I)))return s?Hn:l;let T=!1;const P=()=>{T=!0},z=at(h)?h:Ii(e,l,I,h,S,P);if(T)return h;const B=A_(e,I,v,p),ce=Jg(B),G=k_(e,z,ce);let V=n?n(G,l):G;if(b&&K(V)&&(V=Kd(V)),__INTLIFY_PROD_DEVTOOLS__){const W={timestamp:Date.now(),key:K(l)?l:at(h)?h.key:"",locale:I||(at(h)?h.locale:""),format:K(h)?h:at(h)?h.source:"",message:V};W.meta=He({},e.__meta,g_()||{}),e_(W)}return V}function w_(e){Te(e.list)?e.list=e.list.map(t=>K(t)?Zr(t):t):pe(e.named)&&Object.keys(e.named).forEach(t=>{K(e.named[t])&&(e.named[t]=Zr(e.named[t]))})}function Oi(e,t,o,n,s,a){const{messages:r,onWarn:i,messageResolver:l,localeFallbacker:p}=e,d=p(e,n,o);let f=_e(),b,A=null;const O="translate";for(let x=0;xn;return p.locale=o,p.key=t,p}const l=r(n,x_(e,o,s,n,i,a));return l.locale=o,l.key=t,l.source=n,l}function k_(e,t,o){return t(o)}function qs(...e){const[t,o,n]=e,s=_e();if(!K(t)&&!Fe(t)&&!at(t)&&!kt(t))throw zt(xt.INVALID_ARGUMENT);const a=Fe(t)?String(t):(at(t),t);return Fe(o)?s.plural=o:K(o)?s.default=o:ie(o)&&!Nn(o)?s.named=o:Te(o)&&(s.list=o),Fe(n)?s.plural=n:K(n)?s.default=n:ie(n)&&He(s,n),[a,s]}function x_(e,t,o,n,s,a){return{locale:t,key:o,warnHtmlMessage:s,onError:r=>{throw a&&a(r),r},onCacheKey:r=>qd(t,o,r)}}function A_(e,t,o,n){const{modifiers:s,pluralRules:a,messageResolver:r,fallbackLocale:i,fallbackWarn:l,missingWarn:p,fallbackContext:d}=e,b={locale:t,modifiers:s,pluralRules:a,messages:A=>{let O=r(o,A);if(O==null&&d){const[,,x]=Oi(d,A,t,i,l,p);O=r(x,A)}if(K(O)||kt(O)){let x=!1;const F=Ii(e,A,t,O,A,()=>{x=!0});return x?Ni:F}else return at(O)?O:Ni}};return e.processor&&(b.processor=e.processor),n.list&&(b.list=n.list),n.named&&(b.named=n.named),Fe(n.plural)&&(b.pluralIndex=n.plural),b}function Di(e,...t){const{datetimeFormats:o,unresolving:n,fallbackLocale:s,onWarn:a,localeFallbacker:r}=e,{__datetimeFormatters:i}=e,[l,p,d,f]=Vs(...t),b=ye(d.missingWarn)?d.missingWarn:e.missingWarn;ye(d.fallbackWarn)?d.fallbackWarn:e.fallbackWarn;const A=!!d.part,O=Ds(e,d),x=r(e,s,O);if(!K(l)||l==="")return new Intl.DateTimeFormat(O,f).format(p);let M={},F,I=null;const v="datetime format";for(let T=0;T{zi.includes(l)?r[l]=o[l]:a[l]=o[l]}),K(n)?a.locale=n:ie(n)&&(r=n),ie(s)&&(r=s),[a.key||"",i,a,r]}function Hi(e,t,o){const n=e;for(const s in o){const a=`${t}__${s}`;n.__datetimeFormatters.has(a)&&n.__datetimeFormatters.delete(a)}}function ji(e,...t){const{numberFormats:o,unresolving:n,fallbackLocale:s,onWarn:a,localeFallbacker:r}=e,{__numberFormatters:i}=e,[l,p,d,f]=Ws(...t),b=ye(d.missingWarn)?d.missingWarn:e.missingWarn;ye(d.fallbackWarn)?d.fallbackWarn:e.fallbackWarn;const A=!!d.part,O=Ds(e,d),x=r(e,s,O);if(!K(l)||l==="")return new Intl.NumberFormat(O,f).format(p);let M={},F,I=null;const v="number format";for(let T=0;T{Bi.includes(l)?r[l]=o[l]:a[l]=o[l]}),K(n)?a.locale=n:ie(n)&&(r=n),ie(s)&&(r=s),[a.key||"",i,a,r]}function Ui(e,t,o){const n=e;for(const s in o){const a=`${t}__${s}`;n.__numberFormatters.has(a)&&n.__numberFormatters.delete(a)}}Cg();/*! + */function Pg(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Ko().__INTLIFY_PROD_DEVTOOLS__=!1)}function xt(e){return ge(e)&&zs(e)===0&&(dt(e,"b")||dt(e,"body"))}const pi=["b","body"];function Mg(e){return Wt(e,pi)}const di=["c","cases"];function Rg(e){return Wt(e,di,[])}const gi=["s","static"];function Ng(e){return Wt(e,gi)}const _i=["i","items"];function Fg(e){return Wt(e,_i,[])}const fi=["t","type"];function zs(e){return Wt(e,fi)}const $i=["v","value"];function Bn(e,t){const o=Wt(e,$i);if(o!=null)return o;throw Xo(t)}const hi=["m","modifier"];function Og(e){return Wt(e,hi)}const mi=["k","key"];function Ig(e){const t=Wt(e,mi);if(t)return t;throw Xo(6)}function Wt(e,t,o){for(let n=0;n{r===void 0?r=i:r+=i},m[1]=()=>{r!==void 0&&(t.push(r),r=void 0)},m[2]=()=>{m[0](),s++},m[3]=()=>{if(s>0)s--,n=4,m[0]();else{if(s=0,r===void 0||(r=Bg(r),r===!1))return!1;m[1]()}};function k(){const O=e[o+1];if(n===5&&O==="'"||n===6&&O==='"')return o++,i="\\"+O,m[0](),!0}for(;n!==null;)if(o++,a=e[o],!(a==="\\"&&k())){if(l=jg(a),_=Gt[n],p=_[l]||_.l||8,p===8||(n=p[0],p[1]!==void 0&&(d=m[p[1]],d&&(i=a,d()===!1))))return;if(n===7)return t}}const yi=new Map;function qg(e,t){return ge(e)?e[t]:null}function Vg(e,t){if(!ge(e))return null;let o=yi.get(t);if(o||(o=Ug(t),o&&yi.set(t,o)),!o)return null;const n=o.length;let s=e,a=0;for(;ae,Gg=e=>"",Kg="text",Xg=e=>e.length===0?"":eg(e),Yg=Qd;function vi(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function Jg(e){const t=Fe(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Fe(e.named.count)||Fe(e.named.n))?Fe(e.named.count)?e.named.count:Fe(e.named.n)?e.named.n:t:t}function Zg(e,t){t.count||(t.count=e),t.n||(t.n=e)}function Qg(e={}){const t=e.locale,o=Jg(e),n=ge(e.pluralRules)&&K(t)&&Te(e.pluralRules[t])?e.pluralRules[t]:vi,s=ge(e.pluralRules)&&K(t)&&Te(e.pluralRules[t])?vi:void 0,a=A=>A[n(o,A.length,s)],r=e.list||[],i=A=>r[A],l=e.named||he();Fe(e.pluralIndex)&&Zg(o,l);const p=A=>l[A];function d(A){const j=Te(e.messages)?e.messages(A):ge(e.messages)?e.messages[A]:!1;return j||(e.parent?e.parent.message(A):Gg)}const _=A=>e.modifiers?e.modifiers[A]:Wg,m=ue(e.processor)&&Te(e.processor.normalize)?e.processor.normalize:Xg,k=ue(e.processor)&&Te(e.processor.interpolate)?e.processor.interpolate:Yg,O=ue(e.processor)&&K(e.processor.type)?e.processor.type:Kg,F={list:i,named:p,plural:a,linked:(A,...j)=>{const[y,$]=j;let T="text",x="";j.length===1?ge(y)?(x=y.modifier||x,T=y.type||T):K(y)&&(x=y||x):j.length===2&&(K(y)&&(x=y||x),K($)&&(T=$||T));const M=d(A)(F),H=T==="vnode"&&Me(M)&&x?M[0]:M;return x?_(x)(H,T):H},message:d,type:O,interpolate:k,normalize:m,values:ze(he(),r,l)};return F}let Yo=null;function e_(e){Yo=e}function t_(e,t,o){Yo&&Yo.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:o})}const o_=n_("function:translate");function n_(e){return t=>Yo&&Yo.emit(e,t)}const s_=Is.__EXTEND_POINT__,ro=Dn(s_),a_={FALLBACK_TO_TRANSLATE:ro(),CANNOT_FORMAT_NUMBER:ro(),FALLBACK_TO_NUMBER_FORMAT:ro(),CANNOT_FORMAT_DATE:ro(),FALLBACK_TO_DATE_FORMAT:ro(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:ro(),__EXTEND_POINT__:ro()},wi=Q.__EXTEND_POINT__,io=Dn(wi),At={INVALID_ARGUMENT:wi,INVALID_DATE_ARGUMENT:io(),INVALID_ISO_DATE_ARGUMENT:io(),NOT_SUPPORT_NON_STRING_MESSAGE:io(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:io(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:io(),NOT_SUPPORT_LOCALE_TYPE:io(),__EXTEND_POINT__:io()};function zt(e){return vo(e,null,void 0)}function Hs(e,t){return t.locale!=null?ki(t.locale):ki(e.locale)}let js;function ki(e){if(K(e))return e;if(Te(e)){if(e.resolvedOnce&&js!=null)return js;if(e.constructor.name==="Function"){const t=e();if(Zd(t))throw zt(At.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return js=t}else throw zt(At.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw zt(At.NOT_SUPPORT_LOCALE_TYPE)}function r_(e,t,o){return[...new Set([o,...Me(t)?t:ge(t)?Object.keys(t):K(t)?[t]:[o]])]}function xi(e,t,o){const n=K(o)?o:Jo,s=e;s.__localeChainCache||(s.__localeChainCache=new Map);let a=s.__localeChainCache.get(n);if(!a){a=[];let r=[o];for(;Me(r);)r=Ai(a,r,t);const i=Me(t)||!ue(t)?t:t.default?t.default:null;r=K(i)?[i]:i,Me(r)&&Ai(a,r,!1),s.__localeChainCache.set(n,a)}return a}function Ai(e,t,o){let n=!0;for(let s=0;s`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function u_(){return{upper:(e,t)=>t==="text"&&K(e)?e.toUpperCase():t==="vnode"&&ge(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&K(e)?e.toLowerCase():t==="vnode"&&ge(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&K(e)?Ti(e):t==="vnode"&&ge(e)&&"__v_isVNode"in e?Ti(e.children):e}}let Li;function p_(e){Li=e}let Ci;function d_(e){Ci=e}let Ei;function g_(e){Ei=e}let Pi=null;const __=e=>{Pi=e},f_=()=>Pi;let Mi=null;const Ri=e=>{Mi=e},$_=()=>Mi;let Ni=0;function h_(e={}){const t=Te(e.onWarn)?e.onWarn:Vd,o=K(e.version)?e.version:c_,n=K(e.locale)||Te(e.locale)?e.locale:Jo,s=Te(n)?Jo:n,a=Me(e.fallbackLocale)||ue(e.fallbackLocale)||K(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:s,r=ue(e.messages)?e.messages:Bs(s),i=ue(e.datetimeFormats)?e.datetimeFormats:Bs(s),l=ue(e.numberFormats)?e.numberFormats:Bs(s),p=ze(he(),e.modifiers,u_()),d=e.pluralRules||he(),_=Te(e.missing)?e.missing:null,m=Ae(e.missingWarn)||yo(e.missingWarn)?e.missingWarn:!0,k=Ae(e.fallbackWarn)||yo(e.fallbackWarn)?e.fallbackWarn:!0,O=!!e.fallbackFormat,P=!!e.unresolving,F=Te(e.postTranslation)?e.postTranslation:null,A=ue(e.processor)?e.processor:null,j=Ae(e.warnHtmlMessage)?e.warnHtmlMessage:!0,y=!!e.escapeParameter,$=Te(e.messageCompiler)?e.messageCompiler:Li,T=Te(e.messageResolver)?e.messageResolver:Ci||qg,x=Te(e.localeFallbacker)?e.localeFallbacker:Ei||r_,M=ge(e.fallbackContext)?e.fallbackContext:void 0,H=e,D=ge(H.__datetimeFormatters)?H.__datetimeFormatters:new Map,ce=ge(H.__numberFormatters)?H.__numberFormatters:new Map,X=ge(H.__meta)?H.__meta:{};Ni++;const V={version:o,cid:Ni,locale:n,fallbackLocale:a,messages:r,modifiers:p,pluralRules:d,missing:_,missingWarn:m,fallbackWarn:k,fallbackFormat:O,unresolving:P,postTranslation:F,processor:A,warnHtmlMessage:j,escapeParameter:y,messageCompiler:$,messageResolver:T,localeFallbacker:x,fallbackContext:M,onWarn:t,__meta:X};return V.datetimeFormats=i,V.numberFormats=l,V.__datetimeFormatters=D,V.__numberFormatters=ce,__INTLIFY_PROD_DEVTOOLS__&&t_(V,o,X),V}const Bs=e=>({[e]:he()});function Us(e,t,o,n,s){const{missing:a,onWarn:r}=e;if(a!==null){const i=a(e,o,t,s);return K(i)?i:t}else return t}function Zo(e,t,o){const n=e;n.__localeChainCache=new Map,e.localeFallbacker(e,o,t)}function m_(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function b_(e,t){const o=t.indexOf(e);if(o===-1)return!1;for(let n=o+1;ny_(o,e)}function y_(e,t){const o=Mg(t);if(o==null)throw Xo(0);if(zs(o)===1){const a=Rg(o);return e.plural(a.reduce((r,i)=>[...r,Fi(e,i)],[]))}else return Fi(e,o)}function Fi(e,t){const o=Ng(t);if(o!=null)return e.type==="text"?o:e.normalize([o]);{const n=Fg(t).reduce((s,a)=>[...s,Vs(e,a)],[]);return e.normalize(n)}}function Vs(e,t){const o=zs(t);switch(o){case 3:return Bn(t,o);case 9:return Bn(t,o);case 4:{const n=t;if(dt(n,"k")&&n.k)return e.interpolate(e.named(n.k));if(dt(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw Xo(o)}case 5:{const n=t;if(dt(n,"i")&&Fe(n.i))return e.interpolate(e.list(n.i));if(dt(n,"index")&&Fe(n.index))return e.interpolate(e.list(n.index));throw Xo(o)}case 6:{const n=t,s=Og(n),a=Ig(n);return e.linked(Vs(e,a),s?Vs(e,s):void 0,e.type)}case 7:return Bn(t,o);case 8:return Bn(t,o);default:throw new Error(`unhandled node on format message part: ${o}`)}}const v_=e=>e;let qn=he();function w_(e,t={}){let o=!1;const n=t.onError||ig;return t.onError=s=>{o=!0,n(s)},{...Eg(e,t),detectError:o}}function k_(e,t){if(K(e)){Ae(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||v_)(e),s=qn[n];if(s)return s;const{ast:a,detectError:r}=w_(e,{...t,location:!1,jit:!0}),i=qs(a);return r?i:qn[n]=i}else{const o=e.cacheKey;if(o){const n=qn[o];return n||(qn[o]=qs(e))}else return qs(e)}}const Oi=()=>"",rt=e=>Te(e);function Ii(e,...t){const{fallbackFormat:o,postTranslation:n,unresolving:s,messageCompiler:a,fallbackLocale:r,messages:i}=e,[l,p]=Ws(...t),d=Ae(p.missingWarn)?p.missingWarn:e.missingWarn,_=Ae(p.fallbackWarn)?p.fallbackWarn:e.fallbackWarn,m=Ae(p.escapeParameter)?p.escapeParameter:e.escapeParameter,k=!!p.resolvedMessage,O=K(p.default)||Ae(p.default)?Ae(p.default)?a?l:()=>l:p.default:o?a?l:()=>l:"",P=o||O!=="",F=Hs(e,p);m&&x_(p);let[A,j,y]=k?[l,F,i[F]||he()]:Di(e,l,F,r,_,d),$=A,T=l;if(!k&&!(K($)||xt($)||rt($))&&P&&($=O,T=$),!k&&(!(K($)||xt($)||rt($))||!K(j)))return s?Un:l;let x=!1;const M=()=>{x=!0},H=rt($)?$:zi(e,l,j,$,T,M);if(x)return $;const D=T_(e,j,y,p),ce=Qg(D),X=A_(e,H,ce);let V=n?n(X,l):X;if(m&&K(V)&&(V=Yd(V)),__INTLIFY_PROD_DEVTOOLS__){const J={timestamp:Date.now(),key:K(l)?l:rt($)?$.key:"",locale:j||(rt($)?$.locale:""),format:K($)?$:rt($)?$.source:"",message:V};J.meta=ze({},e.__meta,f_()||{}),o_(J)}return V}function x_(e){Me(e.list)?e.list=e.list.map(t=>K(t)?ei(t):t):ge(e.named)&&Object.keys(e.named).forEach(t=>{K(e.named[t])&&(e.named[t]=ei(e.named[t]))})}function Di(e,t,o,n,s,a){const{messages:r,onWarn:i,messageResolver:l,localeFallbacker:p}=e,d=p(e,n,o);let _=he(),m,k=null;const O="translate";for(let P=0;Pn;return p.locale=o,p.key=t,p}const l=r(n,S_(e,o,s,n,i,a));return l.locale=o,l.key=t,l.source=n,l}function A_(e,t,o){return t(o)}function Ws(...e){const[t,o,n]=e,s=he();if(!K(t)&&!Fe(t)&&!rt(t)&&!xt(t))throw zt(At.INVALID_ARGUMENT);const a=Fe(t)?String(t):(rt(t),t);return Fe(o)?s.plural=o:K(o)?s.default=o:ue(o)&&!In(o)?s.named=o:Me(o)&&(s.list=o),Fe(n)?s.plural=n:K(n)?s.default=n:ue(n)&&ze(s,n),[a,s]}function S_(e,t,o,n,s,a){return{locale:t,key:o,warnHtmlMessage:s,onError:r=>{throw a&&a(r),r},onCacheKey:r=>Wd(t,o,r)}}function T_(e,t,o,n){const{modifiers:s,pluralRules:a,messageResolver:r,fallbackLocale:i,fallbackWarn:l,missingWarn:p,fallbackContext:d}=e,m={locale:t,modifiers:s,pluralRules:a,messages:k=>{let O=r(o,k);if(O==null&&d){const[,,P]=Di(d,k,t,i,l,p);O=r(P,k)}if(K(O)||xt(O)){let P=!1;const A=zi(e,k,t,O,k,()=>{P=!0});return P?Oi:A}else return rt(O)?O:Oi}};return e.processor&&(m.processor=e.processor),n.list&&(m.list=n.list),n.named&&(m.named=n.named),Fe(n.plural)&&(m.pluralIndex=n.plural),m}function Hi(e,...t){const{datetimeFormats:o,unresolving:n,fallbackLocale:s,onWarn:a,localeFallbacker:r}=e,{__datetimeFormatters:i}=e,[l,p,d,_]=Gs(...t),m=Ae(d.missingWarn)?d.missingWarn:e.missingWarn;Ae(d.fallbackWarn)?d.fallbackWarn:e.fallbackWarn;const k=!!d.part,O=Hs(e,d),P=r(e,s,O);if(!K(l)||l==="")return new Intl.DateTimeFormat(O,_).format(p);let F={},A,j=null;const y="datetime format";for(let x=0;x{ji.includes(l)?r[l]=o[l]:a[l]=o[l]}),K(n)?a.locale=n:ue(n)&&(r=n),ue(s)&&(r=s),[a.key||"",i,a,r]}function Bi(e,t,o){const n=e;for(const s in o){const a=`${t}__${s}`;n.__datetimeFormatters.has(a)&&n.__datetimeFormatters.delete(a)}}function Ui(e,...t){const{numberFormats:o,unresolving:n,fallbackLocale:s,onWarn:a,localeFallbacker:r}=e,{__numberFormatters:i}=e,[l,p,d,_]=Ks(...t),m=Ae(d.missingWarn)?d.missingWarn:e.missingWarn;Ae(d.fallbackWarn)?d.fallbackWarn:e.fallbackWarn;const k=!!d.part,O=Hs(e,d),P=r(e,s,O);if(!K(l)||l==="")return new Intl.NumberFormat(O,_).format(p);let F={},A,j=null;const y="number format";for(let x=0;x{qi.includes(l)?r[l]=o[l]:a[l]=o[l]}),K(n)?a.locale=n:ue(n)&&(r=n),ue(s)&&(r=s),[a.key||"",i,a,r]}function Vi(e,t,o){const n=e;for(const s in o){const a=`${t}__${s}`;n.__numberFormatters.has(a)&&n.__numberFormatters.delete(a)}}Pg();/*! * vue-i18n v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */const S_="9.14.5";function L_(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Go().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Go().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Go().__INTLIFY_PROD_DEVTOOLS__=!1)}const T_=n_.__EXTEND_POINT__,Ht=Fn(T_);Ht(),Ht(),Ht(),Ht(),Ht(),Ht(),Ht(),Ht(),Ht();const qi=xt.__EXTEND_POINT__,Je=Fn(qi),jt={UNEXPECTED_RETURN_TYPE:qi,INVALID_ARGUMENT:Je(),MUST_BE_CALL_SETUP_TOP:Je(),NOT_INSTALLED:Je(),NOT_AVAILABLE_IN_LEGACY_MODE:Je(),REQUIRED_VALUE:Je(),INVALID_VALUE:Je(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:Je(),NOT_INSTALLED_WITH_PROVIDE:Je(),UNEXPECTED_ERROR:Je(),NOT_COMPATIBLE_LEGACY_VUE_I18N:Je(),BRIDGE_SUPPORT_VUE_2_ONLY:Je(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:Je(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:Je(),__EXTEND_POINT__:Je()};function Kt(e,...t){return vo(e,null,void 0)}const Gs=ao("__translateVNode"),Ks=ao("__datetimeParts"),Xs=ao("__numberParts"),C_=ao("__setPluralRules"),Vi=ao("__injectWithOption"),Ys=ao("__dispose");function Zo(e){if(!pe(e)||kt(e))return e;for(const t in e)if(ut(e,t))if(!t.includes("."))pe(e[t])&&Zo(e[t]);else{const o=t.split("."),n=o.length-1;let s=e,a=!1;for(let r=0;r{if("locale"in i&&"resource"in i){const{locale:l,resource:p}=i;l?(r[l]=r[l]||_e(),In(p,r[l])):In(p,r)}else K(i)&&In(JSON.parse(i),r)}),s==null&&a)for(const i in r)ut(r,i)&&Zo(r[i]);return r}function Wi(e){return e.type}function E_(e,t,o){let n=pe(t.messages)?t.messages:_e();"__i18nGlobal"in o&&(n=Js(e.locale.value,{messages:n,__i18n:o.__i18nGlobal}));const s=Object.keys(n);s.length&&s.forEach(a=>{e.mergeLocaleMessage(a,n[a])});{if(pe(t.datetimeFormats)){const a=Object.keys(t.datetimeFormats);a.length&&a.forEach(r=>{e.mergeDateTimeFormat(r,t.datetimeFormats[r])})}if(pe(t.numberFormats)){const a=Object.keys(t.numberFormats);a.length&&a.forEach(r=>{e.mergeNumberFormat(r,t.numberFormats[r])})}}}function Gi(e){return he(Ho,null,e,0)}const Ki="__INTLIFY_META__",Xi=()=>[],P_=()=>!1;let Yi=0;function Ji(e){return(t,o,n,s)=>e(o,n,so()||void 0,s)}const M_=()=>{const e=so();let t=null;return e&&(t=Wi(e)[Ki])?{[Ki]:t}:null};function R_(e={},t){const{__root:o,__injectWithOption:n}=e,s=o===void 0,a=e.flatJson,r=Yr?be:Fa,i=!!e.translateExistCompatible;let l=ye(e.inheritLocale)?e.inheritLocale:!0;const p=r(o&&l?o.locale.value:K(e.locale)?e.locale:Yo),d=r(o&&l?o.fallbackLocale.value:K(e.fallbackLocale)||Te(e.fallbackLocale)||ie(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:p.value),f=r(Js(p.value,e)),b=r(ie(e.datetimeFormats)?e.datetimeFormats:{[p.value]:{}}),A=r(ie(e.numberFormats)?e.numberFormats:{[p.value]:{}});let O=o?o.missingWarn:ye(e.missingWarn)||yo(e.missingWarn)?e.missingWarn:!0,x=o?o.fallbackWarn:ye(e.fallbackWarn)||yo(e.fallbackWarn)?e.fallbackWarn:!0,M=o?o.fallbackRoot:ye(e.fallbackRoot)?e.fallbackRoot:!0,F=!!e.fallbackFormat,I=ke(e.missing)?e.missing:null,v=ke(e.missing)?Ji(e.missing):null,h=ke(e.postTranslation)?e.postTranslation:null,S=o?o.warnHtmlMessage:ye(e.warnHtmlMessage)?e.warnHtmlMessage:!0,T=!!e.escapeParameter;const P=o?o.modifiers:ie(e.modifiers)?e.modifiers:{};let z=e.pluralRules||o&&o.pluralRules,B;B=(()=>{s&&Pi(null);const y={version:S_,locale:p.value,fallbackLocale:d.value,messages:f.value,modifiers:P,pluralRules:z,missing:v===null?void 0:v,missingWarn:O,fallbackWarn:x,fallbackFormat:F,unresolving:!0,postTranslation:h===null?void 0:h,warnHtmlMessage:S,escapeParameter:T,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};y.datetimeFormats=b.value,y.numberFormats=A.value,y.__datetimeFormatters=ie(B)?B.__datetimeFormatters:void 0,y.__numberFormatters=ie(B)?B.__numberFormatters:void 0;const g=f_(y);return s&&Pi(g),g})(),Jo(B,p.value,d.value);function G(){return[p.value,d.value,f.value,b.value,A.value]}const V=ee({get:()=>p.value,set:y=>{p.value=y,B.locale=p.value}}),W=ee({get:()=>d.value,set:y=>{d.value=y,B.fallbackLocale=d.value,Jo(B,p.value,y)}}),Ce=ee(()=>f.value),Me=ee(()=>b.value),te=ee(()=>A.value);function se(){return ke(h)?h:null}function le(y){h=y,B.postTranslation=y}function Ae(){return I}function Ze(y){y!==null&&(v=Ji(y)),I=y,B.missing=v}const ve=(y,g,k,N,q,J)=>{G();let oe;try{__INTLIFY_PROD_DEVTOOLS__,s||(B.fallbackContext=o?__():void 0),oe=y(B)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(B.fallbackContext=void 0)}if(k!=="translate exists"&&Fe(oe)&&oe===Hn||k==="translate exists"&&!oe){const[X,Ee]=g();return o&&M?N(o):q(X)}else{if(J(oe))return oe;throw Kt(jt.UNEXPECTED_RETURN_TYPE)}};function xe(...y){return ve(g=>Reflect.apply(Fi,null,[g,...y]),()=>qs(...y),"translate",g=>Reflect.apply(g.t,g,[...y]),g=>g,g=>K(g))}function rt(...y){const[g,k,N]=y;if(N&&!pe(N))throw Kt(jt.INVALID_ARGUMENT);return xe(g,k,He({resolvedMessage:!0},N||{}))}function De(...y){return ve(g=>Reflect.apply(Di,null,[g,...y]),()=>Vs(...y),"datetime format",g=>Reflect.apply(g.d,g,[...y]),()=>xi,g=>K(g))}function We(...y){return ve(g=>Reflect.apply(ji,null,[g,...y]),()=>Ws(...y),"number format",g=>Reflect.apply(g.n,g,[...y]),()=>xi,g=>K(g))}function Ge(y){return y.map(g=>K(g)||Fe(g)||ye(g)?Gi(String(g)):g)}const gt={normalize:Ge,interpolate:y=>y,type:"vnode"};function je(...y){return ve(g=>{let k;const N=g;try{N.processor=gt,k=Reflect.apply(Fi,null,[N,...y])}finally{N.processor=null}return k},()=>qs(...y),"translate",g=>g[Gs](...y),g=>[Gi(g)],g=>Te(g))}function Ke(...y){return ve(g=>Reflect.apply(ji,null,[g,...y]),()=>Ws(...y),"number format",g=>g[Xs](...y),Xi,g=>K(g)||Te(g))}function St(...y){return ve(g=>Reflect.apply(Di,null,[g,...y]),()=>Vs(...y),"datetime format",g=>g[Ks](...y),Xi,g=>K(g)||Te(g))}function _(y){z=y,B.pluralRules=z}function m(y,g){return ve(()=>{if(!y)return!1;const k=K(g)?g:p.value,N=R(k),q=B.messageResolver(N,y);return i?q!=null:kt(q)||at(q)||K(q)},()=>[y],"translate exists",k=>Reflect.apply(k.te,k,[y,g]),P_,k=>ye(k))}function $(y){let g=null;const k=wi(B,d.value,p.value);for(let N=0;N{l&&(p.value=y,B.locale=y,Jo(B,p.value,d.value))}),Qe(o.fallbackLocale,y=>{l&&(d.value=y,B.fallbackLocale=y,Jo(B,p.value,d.value))}));const D={id:Yi,locale:V,fallbackLocale:W,get inheritLocale(){return l},set inheritLocale(y){l=y,y&&o&&(p.value=o.locale.value,d.value=o.fallbackLocale.value,Jo(B,p.value,d.value))},get availableLocales(){return Object.keys(f.value).sort()},messages:Ce,get modifiers(){return P},get pluralRules(){return z||{}},get isGlobal(){return s},get missingWarn(){return O},set missingWarn(y){O=y,B.missingWarn=O},get fallbackWarn(){return x},set fallbackWarn(y){x=y,B.fallbackWarn=x},get fallbackRoot(){return M},set fallbackRoot(y){M=y},get fallbackFormat(){return F},set fallbackFormat(y){F=y,B.fallbackFormat=F},get warnHtmlMessage(){return S},set warnHtmlMessage(y){S=y,B.warnHtmlMessage=y},get escapeParameter(){return T},set escapeParameter(y){T=y,B.escapeParameter=y},t:xe,getLocaleMessage:R,setLocaleMessage:E,mergeLocaleMessage:H,getPostTranslationHandler:se,setPostTranslationHandler:le,getMissingHandler:Ae,setMissingHandler:Ze,[C_]:_};return D.datetimeFormats=Me,D.numberFormats=te,D.rt=rt,D.te=m,D.tm=L,D.d=De,D.n=We,D.getDateTimeFormat=j,D.setDateTimeFormat=c,D.mergeDateTimeFormat=u,D.getNumberFormat=w,D.setNumberFormat=C,D.mergeNumberFormat=U,D[Vi]=n,D[Gs]=je,D[Ks]=St,D[Xs]=Ke,D}const Zs={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function N_({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,s)=>[...n,...s.type===Le?s.children:[s]],[]):t.reduce((o,n)=>{const s=e[n];return s&&(o[n]=s()),o},_e())}function Zi(e){return Le}He({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Fe(e)||!isNaN(e)}},Zs);function F_(e){return Te(e)&&!K(e[0])}function Qi(e,t,o,n){const{slots:s,attrs:a}=t;return()=>{const r={part:!0};let i=_e();e.locale&&(r.locale=e.locale),K(e.format)?r.key=e.format:pe(e.format)&&(K(e.format.key)&&(r.key=e.format.key),i=Object.keys(e.format).reduce((b,A)=>o.includes(A)?He(_e(),b,{[A]:e.format[A]}):b,_e()));const l=n(e.value,r,i);let p=[r.key];Te(l)?p=l.map((b,A)=>{const O=s[b.type],x=O?O({[b.type]:b.value,index:A,parts:l}):[b.value];return F_(x)&&(x[0].key=`${b.type}-${A}`),x}):K(l)&&(p=[l]);const d=He(_e(),a),f=K(e.tag)||pe(e.tag)?e.tag:Zi();return Mr(f,d,p)}}He({value:{type:Number,required:!0},format:{type:[String,Object]}},Zs),He({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Zs);const O_=ao("global-vue-i18n");function Bn(e={}){const t=so();if(t==null)throw Kt(jt.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Kt(jt.NOT_INSTALLED);const o=I_(t),n=z_(o),s=Wi(t),a=D_(e,s);if(__VUE_I18N_LEGACY_API__&&o.mode==="legacy"&&!e.__useComponent){if(!o.allowComposition)throw Kt(jt.NOT_AVAILABLE_IN_LEGACY_MODE);return U_(t,a,n,e)}if(a==="global")return E_(n,e,s),n;if(a==="parent"){let l=H_(o,t,e.__useComponent);return l==null&&(l=n),l}const r=o;let i=r.__getInstance(t);if(i==null){const l=He({},e);"__i18n"in s&&(l.__i18n=s.__i18n),n&&(l.__root=n),i=R_(l),r.__composerExtend&&(i[Ys]=r.__composerExtend(i)),B_(r,t,i),r.__setInstance(t,i)}return i}function I_(e){{const t=No(e.isCE?O_:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Kt(e.isCE?jt.NOT_INSTALLED_WITH_PROVIDE:jt.UNEXPECTED_ERROR);return t}}function D_(e,t){return Nn(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function z_(e){return e.mode==="composition"?e.global:e.global.__composer}function H_(e,t,o=!1){let n=null;const s=t.root;let a=j_(t,o);for(;a!=null;){const r=e;if(e.mode==="composition")n=r.__getInstance(a);else if(__VUE_I18N_LEGACY_API__){const i=r.__getInstance(a);i!=null&&(n=i.__composer,o&&n&&!n[Vi]&&(n=null))}if(n!=null||s===a)break;a=a.parent}return n}function j_(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function B_(e,t,o){ho(()=>{},t),bs(()=>{const n=o;e.__deleteInstance(t);const s=n[Ys];s&&(s(),delete n[Ys])},t)}function U_(e,t,o,n={}){const s=t==="local",a=Fa(null);if(s&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Kt(jt.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const r=ye(n.inheritLocale)?n.inheritLocale:!K(n.locale),i=be(!s||r?o.locale.value:K(n.locale)?n.locale:Yo),l=be(!s||r?o.fallbackLocale.value:K(n.fallbackLocale)||Te(n.fallbackLocale)||ie(n.fallbackLocale)||n.fallbackLocale===!1?n.fallbackLocale:i.value),p=be(Js(i.value,n)),d=be(ie(n.datetimeFormats)?n.datetimeFormats:{[i.value]:{}}),f=be(ie(n.numberFormats)?n.numberFormats:{[i.value]:{}}),b=s?o.missingWarn:ye(n.missingWarn)||yo(n.missingWarn)?n.missingWarn:!0,A=s?o.fallbackWarn:ye(n.fallbackWarn)||yo(n.fallbackWarn)?n.fallbackWarn:!0,O=s?o.fallbackRoot:ye(n.fallbackRoot)?n.fallbackRoot:!0,x=!!n.fallbackFormat,M=ke(n.missing)?n.missing:null,F=ke(n.postTranslation)?n.postTranslation:null,I=s?o.warnHtmlMessage:ye(n.warnHtmlMessage)?n.warnHtmlMessage:!0,v=!!n.escapeParameter,h=s?o.modifiers:ie(n.modifiers)?n.modifiers:{},S=n.pluralRules||s&&o.pluralRules;function T(){return[i.value,l.value,p.value,d.value,f.value]}const P=ee({get:()=>a.value?a.value.locale.value:i.value,set:$=>{a.value&&(a.value.locale.value=$),i.value=$}}),z=ee({get:()=>a.value?a.value.fallbackLocale.value:l.value,set:$=>{a.value&&(a.value.fallbackLocale.value=$),l.value=$}}),B=ee(()=>a.value?a.value.messages.value:p.value),ce=ee(()=>d.value),G=ee(()=>f.value);function V(){return a.value?a.value.getPostTranslationHandler():F}function W($){a.value&&a.value.setPostTranslationHandler($)}function Ce(){return a.value?a.value.getMissingHandler():M}function Me($){a.value&&a.value.setMissingHandler($)}function te($){return T(),$()}function se(...$){return a.value?te(()=>Reflect.apply(a.value.t,null,[...$])):te(()=>"")}function le(...$){return a.value?Reflect.apply(a.value.rt,null,[...$]):""}function Ae(...$){return a.value?te(()=>Reflect.apply(a.value.d,null,[...$])):te(()=>"")}function Ze(...$){return a.value?te(()=>Reflect.apply(a.value.n,null,[...$])):te(()=>"")}function ve($){return a.value?a.value.tm($):{}}function xe($,L){return a.value?a.value.te($,L):!1}function rt($){return a.value?a.value.getLocaleMessage($):{}}function De($,L){a.value&&(a.value.setLocaleMessage($,L),p.value[$]=L)}function We($,L){a.value&&a.value.mergeLocaleMessage($,L)}function Ge($){return a.value?a.value.getDateTimeFormat($):{}}function dt($,L){a.value&&(a.value.setDateTimeFormat($,L),d.value[$]=L)}function gt($,L){a.value&&a.value.mergeDateTimeFormat($,L)}function je($){return a.value?a.value.getNumberFormat($):{}}function Ke($,L){a.value&&(a.value.setNumberFormat($,L),f.value[$]=L)}function St($,L){a.value&&a.value.mergeNumberFormat($,L)}const _={get id(){return a.value?a.value.id:-1},locale:P,fallbackLocale:z,messages:B,datetimeFormats:ce,numberFormats:G,get inheritLocale(){return a.value?a.value.inheritLocale:r},set inheritLocale($){a.value&&(a.value.inheritLocale=$)},get availableLocales(){return a.value?a.value.availableLocales:Object.keys(p.value)},get modifiers(){return a.value?a.value.modifiers:h},get pluralRules(){return a.value?a.value.pluralRules:S},get isGlobal(){return a.value?a.value.isGlobal:!1},get missingWarn(){return a.value?a.value.missingWarn:b},set missingWarn($){a.value&&(a.value.missingWarn=$)},get fallbackWarn(){return a.value?a.value.fallbackWarn:A},set fallbackWarn($){a.value&&(a.value.missingWarn=$)},get fallbackRoot(){return a.value?a.value.fallbackRoot:O},set fallbackRoot($){a.value&&(a.value.fallbackRoot=$)},get fallbackFormat(){return a.value?a.value.fallbackFormat:x},set fallbackFormat($){a.value&&(a.value.fallbackFormat=$)},get warnHtmlMessage(){return a.value?a.value.warnHtmlMessage:I},set warnHtmlMessage($){a.value&&(a.value.warnHtmlMessage=$)},get escapeParameter(){return a.value?a.value.escapeParameter:v},set escapeParameter($){a.value&&(a.value.escapeParameter=$)},t:se,getPostTranslationHandler:V,setPostTranslationHandler:W,getMissingHandler:Ce,setMissingHandler:Me,rt:le,d:Ae,n:Ze,tm:ve,te:xe,getLocaleMessage:rt,setLocaleMessage:De,mergeLocaleMessage:We,getDateTimeFormat:Ge,setDateTimeFormat:dt,mergeDateTimeFormat:gt,getNumberFormat:je,setNumberFormat:Ke,mergeNumberFormat:St};function m($){$.locale.value=i.value,$.fallbackLocale.value=l.value,Object.keys(p.value).forEach(L=>{$.mergeLocaleMessage(L,p.value[L])}),Object.keys(d.value).forEach(L=>{$.mergeDateTimeFormat(L,d.value[L])}),Object.keys(f.value).forEach(L=>{$.mergeNumberFormat(L,f.value[L])}),$.escapeParameter=v,$.fallbackFormat=x,$.fallbackRoot=O,$.fallbackWarn=A,$.missingWarn=b,$.warnHtmlMessage=I}return Ja(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Kt(jt.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const $=a.value=e.proxy.$i18n.__composer;t==="global"?(i.value=$.locale.value,l.value=$.fallbackLocale.value,p.value=$.messages.value,d.value=$.datetimeFormats.value,f.value=$.numberFormats.value):s&&m($)}),_}if(L_(),c_(v_),u_(Ug),p_(wi),__INTLIFY_PROD_DEVTOOLS__){const e=Go();e.__INTLIFY__=!0,Zg(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const q_=Object.assign({"./locales/ar/aria.json":ju,"./locales/ar/buttons.json":Bu,"./locales/ar/controls.json":Uu,"./locales/ar/dashboard.json":qu,"./locales/ar/grid.json":Vu,"./locales/ar/lists.json":Wu,"./locales/ar/messages.json":Gu,"./locales/ar/options.json":Ku,"./locales/ar/religion.json":Xu,"./locales/ar/search.json":Yu,"./locales/de/aria.json":Ju,"./locales/de/buttons.json":Zu,"./locales/de/controls.json":Qu,"./locales/de/dashboard.json":ep,"./locales/de/grid.json":tp,"./locales/de/lists.json":op,"./locales/de/messages.json":np,"./locales/de/options.json":sp,"./locales/de/religion.json":ap,"./locales/de/search.json":rp,"./locales/en/aria.json":ip,"./locales/en/buttons.json":lp,"./locales/en/controls.json":cp,"./locales/en/dashboard.json":up,"./locales/en/grid.json":pp,"./locales/en/lists.json":dp,"./locales/en/messages.json":gp,"./locales/en/options.json":_p,"./locales/en/religion.json":fp,"./locales/en/search.json":$p,"./locales/es/aria.json":hp,"./locales/es/buttons.json":mp,"./locales/es/controls.json":bp,"./locales/es/dashboard.json":yp,"./locales/es/grid.json":vp,"./locales/es/lists.json":wp,"./locales/es/messages.json":kp,"./locales/es/options.json":xp,"./locales/es/religion.json":Ap,"./locales/es/search.json":Sp,"./locales/fr/aria.json":Lp,"./locales/fr/buttons.json":Tp,"./locales/fr/controls.json":Cp,"./locales/fr/dashboard.json":Ep,"./locales/fr/grid.json":Pp,"./locales/fr/lists.json":Mp,"./locales/fr/messages.json":Rp,"./locales/fr/options.json":Np,"./locales/fr/religion.json":Fp,"./locales/fr/search.json":Op,"./locales/hi/aria.json":Ip,"./locales/hi/buttons.json":Dp,"./locales/hi/controls.json":zp,"./locales/hi/dashboard.json":Hp,"./locales/hi/grid.json":jp,"./locales/hi/lists.json":Bp,"./locales/hi/messages.json":Up,"./locales/hi/options.json":qp,"./locales/hi/religion.json":Vp,"./locales/hi/search.json":Wp,"./locales/it/aria.json":Gp,"./locales/it/buttons.json":Kp,"./locales/it/controls.json":Xp,"./locales/it/dashboard.json":Yp,"./locales/it/grid.json":Jp,"./locales/it/lists.json":Zp,"./locales/it/messages.json":Qp,"./locales/it/options.json":ed,"./locales/it/religion.json":td,"./locales/it/search.json":od,"./locales/pt/aria.json":nd,"./locales/pt/buttons.json":sd,"./locales/pt/controls.json":ad,"./locales/pt/dashboard.json":rd,"./locales/pt/grid.json":id,"./locales/pt/lists.json":ld,"./locales/pt/messages.json":cd,"./locales/pt/options.json":ud,"./locales/pt/religion.json":pd,"./locales/pt/search.json":dd,"./locales/ro/aria.json":gd,"./locales/ro/buttons.json":_d,"./locales/ro/controls.json":fd,"./locales/ro/dashboard.json":$d,"./locales/ro/grid.json":hd,"./locales/ro/lists.json":md,"./locales/ro/messages.json":bd,"./locales/ro/options.json":yd,"./locales/ro/religion.json":vd,"./locales/ro/search.json":wd,"./locales/ru/aria.json":kd,"./locales/ru/buttons.json":xd,"./locales/ru/controls.json":Ad,"./locales/ru/dashboard.json":Sd,"./locales/ru/grid.json":Ld,"./locales/ru/lists.json":Td,"./locales/ru/messages.json":Cd,"./locales/ru/options.json":Ed,"./locales/ru/religion.json":Pd,"./locales/ru/search.json":Md,"./locales/zh/aria.json":Rd,"./locales/zh/buttons.json":Nd,"./locales/zh/controls.json":Fd,"./locales/zh/dashboard.json":Od,"./locales/zh/grid.json":Id,"./locales/zh/lists.json":Dd,"./locales/zh/messages.json":zd,"./locales/zh/options.json":Hd,"./locales/zh/religion.json":jd,"./locales/zh/search.json":Bd}),Qo={};for(const[e,t]of Object.entries(q_)){const o=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!o)continue;const[,n,s]=o;Qo[n]??(Qo[n]={}),Qo[n][s]=t}const Un=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"],el=new Set(["ar"]);function tl(){try{const e=new URLSearchParams(window.location.search);return(e.get("lang")||e.get("locale")||"").split("-")[0].toLowerCase()}catch{return""}}function Qs(){var n;const e=tl();if(Un.includes(e))return e;const o=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return Un.includes(o)?o:"en"}const ol="__DOXA_PAGE_LOCALE";function V_(e){const t=String(e||"").split("-")[0].toLowerCase();if(Un.includes(t))try{typeof window<"u"&&(window[ol]=t)}catch{}}function ea(){try{return typeof window<"u"&&window[ol]||""}catch{return""}}function At(e,t){const o=s=>{let a=Qo[s];for(const r of String(e).split(".")){if(!a||typeof a!="object")return;a=a[r]}return typeof a=="string"?a:void 0},n=t||ea()||Qs();return o(n)??o("en")}const W_=".search-box{position:relative;display:flex;align-items:center;margin:0 auto;width:100%;color:var(--dx-muted, #6d766e)}.search-box .search-icon{position:absolute;left:12px;pointer-events:none}.search-box input{width:100%;padding:10px 12px 10px 38px;font-size:.95rem;color:var(--dx-text, #3b463d);background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:10px;outline:none;box-sizing:border-box}.search-box input:focus{border-color:var(--dx-accent, #92b195);box-shadow:0 0 0 2px var(--dx-accent-weak, rgba(146, 177, 149, .18))}",en=(e,t)=>{const o=e.__vccOpts||e;for(const[n,s]of t)o[n]=s;return o},G_=["value","placeholder","aria-label"],nl=en({__name:"SearchBar",props:{modelValue:{type:String,default:""},placeholder:{type:String,default:"Search…"},ariaLabel:{type:String,default:"Search"},maxWidth:{type:String,default:""}},emits:["update:modelValue","search"],setup(e,{emit:t}){const o=e,n=t,s=ee(()=>o.maxWidth?{maxWidth:o.maxWidth}:{});function a(r){const i=r.target.value??"";n("update:modelValue",i),n("search",{value:i})}return(r,i)=>(ae(),re("div",{class:"search-box",style:Tt(s.value)},[i[0]||(i[0]=ne("svg",{class:"search-icon",width:"18",height:"18",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[ne("circle",{cx:"11",cy:"11",r:"7",fill:"none",stroke:"currentColor","stroke-width":"2"}),ne("line",{x1:"16.5",y1:"16.5",x2:"21",y2:"21",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round"})],-1)),ne("input",{type:"search",value:e.modelValue,placeholder:e.placeholder,"aria-label":e.ariaLabel,onInput:a},null,40,G_)],4))}},[["styles",[W_]]]);function sl(e,t){return t?String(e).replace(/\{(\w+)\}/g,(o,n)=>t[n]!=null?String(t[n]):o):String(e)}function ta(e,t){const o=String(t);return e&&!o.startsWith(`${e}.`)?`${e}.${o}`:o}function K_(e,t={}){const o=typeof t.fallback=="function"?(n,s)=>sl(t.fallback(ta(e,n),s)??n,s):(n,s)=>sl(At(ta(e,n))??n,s);try{const n=Bn();return(s,a)=>{const r=ta(e,s),i=n.t(r,a||{});return i===r?o(s,a):i}}catch{return o}}const X_=".filter-dropdown{position:relative;flex:0 0 auto;width:var(--dx-filter-w, 128px);min-width:var(--dx-filter-w, 128px);max-width:var(--dx-filter-w, 128px)}@media (max-width: 576px){.filter-dropdown{width:var(--dx-filter-w-sm, 108px);min-width:var(--dx-filter-w-sm, 108px);max-width:var(--dx-filter-w-sm, 108px)}}.filter-dropdown__trigger{width:100%;padding:var(--dx-filter-pad-y, 4px) var(--dx-filter-pad-x, 8px);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:.875rem;color:var(--dx-text, #3b463d);text-align:start;background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;transition:border-color .15s ease}.filter-dropdown__trigger:hover{border-color:var(--dx-accent, #92b195)}.filter-dropdown__trigger[data-active]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));border-color:var(--dx-accent, #92b195)}.filter-dropdown__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-dropdown__chevron{flex-shrink:0;transition:transform .2s ease}.filter-dropdown.is-open .filter-dropdown__chevron{transform:rotate(180deg)}.filter-dropdown__menu{position:fixed;z-index:2147483000;background-color:var(--dx-elevated, #fff);color:var(--dx-text, #3b463d);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;box-shadow:0 4px 12px #0000001f;overflow:hidden;display:flex;flex-direction:column;min-width:160px}.filter-dropdown__search{border:none;border-bottom:1px solid var(--dx-line, #d1d4cd);border-radius:0;padding:6px 12px;width:100%;font-size:.875rem;color:var(--dx-text, #3b463d);background:var(--dx-elevated, #fff);outline:none;box-sizing:border-box}.filter-dropdown__search::placeholder{color:var(--dx-muted, #6d766e)}.filter-dropdown__clear{display:block;width:100%;background:none;border:none;border-bottom:1px solid var(--dx-line, #d1d4cd);padding:6px 12px;font-size:.875rem;color:var(--dx-text, #3b463d);cursor:pointer;text-align:start;text-decoration:underline;text-decoration-color:var(--dx-accent, #92b195);text-underline-offset:3px}.filter-dropdown__clear:hover{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18))}.filter-dropdown__options{flex:1 1 auto;min-height:0;max-height:250px;overflow-y:auto}.filter-dropdown__search,.filter-dropdown__clear{flex:0 0 auto}.filter-dropdown__option{padding:5px 12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.875rem;transition:background-color .1s ease}.filter-dropdown__option[data-selected]{font-weight:700;color:var(--dx-text, #3b463d);box-shadow:inset 3px 0 0 var(--dx-accent, #92b195)}.filter-dropdown__option:hover,.filter-dropdown__option[data-highlighted]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18))}.filter-dropdown__count{color:var(--dx-muted, #6d766e);font-size:.75rem;margin-inline-start:6px}.filter-dropdown__no-options{padding:12px;font-size:.875rem;color:var(--dx-muted, #6d766e);text-align:center}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}",Y_=["data-active","aria-expanded"],J_={class:"filter-dropdown__label"},Z_=["value","placeholder"],Q_={class:"filter-dropdown__options"},ef={key:0,class:"filter-dropdown__no-options"},tf=["data-highlighted","data-selected","aria-selected","onClick","onMouseenter"],of={class:"filter-dropdown__count"},Xt=en({__name:"FilterDropdown",props:{label:{type:String,required:!0},name:{type:String,required:!0},options:{type:Array,default:()=>[]},value:{type:String,default:""},placeholder:{type:String,default:"Type to search..."}},emits:["filter-change","filter-clear"],setup(e,{emit:t}){const o=e,n={"buttons.clearSelection":"Clear selection","buttons.noOptions":"No options found"},s=K_("",{fallback:G=>n[G]}),a=t,r=be(!1),i=be(""),l=be(-1),p=be(null),d=be(null),f=be(null),b=be({});function A(G){const V=G.ownerDocument,W=V.createElement("div");W.style.cssText="position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;opacity:0",(G.parentElement||G.getRootNode().body||V.body).appendChild(W);const Me=W.getBoundingClientRect();return W.remove(),{x:Me.left,y:Me.top}}function O(){const G=f.value;if(!G)return;const V=G.getBoundingClientRect(),W=window.innerWidth,Ce=window.innerHeight,Me=320,te=4,se=8,Ae=Math.round(Math.min(Math.max(V.width,240),W-se*2)),Ze=V.right>se&&V.leftW-se?ve=Math.round(Math.max(V.right-Ae,se)):ve=Math.round(Math.max(V.left,se)):ve=Math.round(Math.min(Math.max(V.left,se),W-Ae-se));const xe=Ce-V.bottom,rt=xe<180&&V.top>xe,De=A(G),We=Math.round(ve-De.x);b.value=rt?{top:"auto",bottom:`${Math.round(Ce-V.top+te+De.y)}px`,left:`${We}px`,width:`${Ae}px`,maxHeight:`${Math.round(Math.min(Me,V.top-te-se))}px`}:{top:`${Math.round(V.bottom+te-De.y)}px`,bottom:"auto",left:`${We}px`,width:`${Ae}px`,maxHeight:`${Math.round(Math.min(Me,xe-te-se))}px`}}function x(){r.value&&O()}const M=ee(()=>{if(!i.value)return o.options;const G=i.value.toLowerCase();return o.options.filter(V=>V.label.toLowerCase().includes(G))}),F=ee(()=>o.options.find(G=>G.value===o.value));function I(G){var W;const V=((W=G.composedPath)==null?void 0:W.call(G))??[];p.value&&!V.includes(p.value)&&S()}function v(){r.value?S():h()}function h(){r.value=!0,i.value="",l.value=-1,O(),document.addEventListener("click",I),window.addEventListener("scroll",x,!0),window.addEventListener("resize",x),Mo(()=>{var G;O(),(G=d.value)==null||G.focus()})}function S(){r.value=!1,i.value="",l.value=-1,document.removeEventListener("click",I),window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",x)}function T(G){i.value=G.target.value,l.value=-1}function P(G){const V=M.value;switch(G.key){case"ArrowDown":G.preventDefault(),l.value=Math.min(l.value+1,V.length-1),z();break;case"ArrowUp":G.preventDefault(),l.value=Math.max(l.value-1,0),z();break;case"Enter":{G.preventDefault();const W=V[l.value];W&&B(W);break}case"Escape":G.preventDefault(),S();break}}function z(){Mo(()=>{var V;const G=(V=p.value)==null?void 0:V.querySelector(".filter-dropdown__option[data-highlighted]");G==null||G.scrollIntoView({block:"nearest"})})}function B(G){a("filter-change",{name:o.name,value:G.value,label:G.label,type:G.type}),S()}function ce(){a("filter-clear",{name:o.name}),S()}return Za(()=>{document.removeEventListener("click",I),window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",x)}),(G,V)=>(ae(),re("div",{ref_key:"rootRef",ref:p,class:cn(["filter-dropdown",{"is-open":r.value}])},[ne("button",{ref_key:"triggerRef",ref:f,class:"filter-dropdown__trigger input","data-active":e.value?"":void 0,type:"button","aria-haspopup":"listbox","aria-expanded":r.value,onClick:v},[ne("span",J_,[F.value?(ae(),re(Le,{key:0},[Ft($e(e.label)+": ",1),ne("strong",null,$e(F.value.label),1)],64)):(ae(),re(Le,{key:1},[Ft($e(e.label),1)],64))]),V[0]||(V[0]=ne("svg",{class:"filter-dropdown__chevron",width:"12",height:"12",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg"},[ne("path",{d:"M2 4l4 4 4-4",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],8,Y_),r.value?(ae(),re("div",{key:0,class:"filter-dropdown__menu",role:"listbox",style:Tt(b.value)},[ne("input",{ref_key:"searchInputRef",ref:d,class:"filter-dropdown__search",type:"text",value:i.value,placeholder:e.placeholder,onInput:T,onKeydown:P},null,40,Z_),e.value?(ae(),re("button",{key:0,class:"filter-dropdown__clear",type:"button",onClick:ce},$e(nt(s)("buttons.clearSelection")),1)):Pe("",!0),ne("div",Q_,[M.value.length===0?(ae(),re("div",ef,$e(nt(s)("buttons.noOptions")),1)):(ae(!0),re(Le,{key:1},Io(M.value,(W,Ce)=>(ae(),re("div",{key:W.value,class:"filter-dropdown__option",role:"option","data-highlighted":Ce===l.value?"":void 0,"data-selected":W.value===e.value?"":void 0,"aria-selected":W.value===e.value,onClick:Me=>B(W),onMouseenter:Me=>l.value=Ce},[ne("span",null,$e(W.label),1),ne("span",of,$e(W.count),1)],40,tf))),128))])],4)):Pe("",!0)],2))}},[["styles",[X_]]]),oa={default:"doxa",lists:[{id:"doxa",aliases:["2000","project-2000"],label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them",source:"doxa",filter:null},{id:"unreached",aliases:["7000","project-7000"],label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)",source:"imb",filter:{lostness:[0,1,2]}},{id:"frontier",aliases:["4700","project-4700"],label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)",source:"imb",filter:{lostness:[0]}},{id:"frontier-500k",aliases:["700","project-700"],label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000",source:"imb",filter:{lostness:[0],minPopulation:5e5}},{id:"unengaged",aliases:[],label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged",source:"imb",filter:{lostness:[0,1,2],engagement:["Unengaged"]}}]},nf=Kn&&Kn.tagName.toUpperCase()==="SCRIPT"&&Kn.src||new URL("big-picture.js",document.baseURI).href,tn=e=>String(e||"").trim().replace(/\/+$/,"");function sf(){try{const t=String(nf||"").split(/[?#]/)[0].match(/^(.*)\/([^/]+)\/([^/]+)\.js$/);return!t||t[2]!==t[3]?null:t[1]||null}catch{return null}}function al(e){const t=e==null?void 0:e.assetsBase;if(typeof t=="string"&&t.trim()){const n=tn(t);if(/^https?:\/\//i.test(n)||n.startsWith("/"))return n}const o=tn((e==null?void 0:e.treeBase)||"")||tn(sf()||"");if(o)try{const n=typeof document<"u"?document.baseURI:void 0;return tn(new URL(o+"/assets",n).href)}catch{return tn(o+"/assets")}return"./assets"}const qn=oa.default,na=new Map;for(const e of oa.lists){na.set(e.id,e);for(const t of e.aliases||[])na.set(String(t).toLowerCase(),e)}function af(e){return na.get(String(e??"").toLowerCase().trim())||null}function rl(e){let t=e;if(t&&typeof t=="object"&&"value"in t&&!("list"in t)&&!("profile"in t)&&(t=t.value),typeof t=="string")try{t=JSON.parse(t)}catch{t=null}return t&&typeof t=="object"?t:null}const il=new Set;function rf(e){const t=rl(e),o=t==null?void 0:t.list,n=typeof location<"u"?new URLSearchParams(location.search).get("list"):null,s=typeof window<"u"?window.MAP_LIST:void 0,a=o||n||s||qn,r=af(a);return r?r.id:(il.has(a)||(il.add(a),console.warn(`[list] unknown people-group list "${a}", showing "${qn}". Known: ${oa.lists.map(i=>i.id).join(", ")}`)),qn)}const Vn=new Map;function lf(e,t){const o=`${al(rl(t))}/people-groups/lists/${e}.json`;return Vn.has(o)||Vn.set(o,fetch(o).then(n=>{if(!n.ok)throw new Error(`HTTP ${n.status}`);return n.json()}).then(n=>new Set(Array.isArray(n==null?void 0:n.slugs)?n.slugs:[])).catch(n=>{throw Vn.delete(o),new Error(`list "${e}" membership ${o}: ${n.message}`)})),Vn.get(o)}async function ll(e,t,{key:o=n=>n==null?void 0:n.slug}={}){const n=rf(t);if(n===qn||!Array.isArray(e))return e;try{const s=await lf(n,t);return e.filter(a=>s.has(o(a)))}catch(s){return console.error(`[list] ${s.message}. Showing no people groups rather than the wrong list.`),[]}}const cf=".rh-root{width:100%;box-sizing:border-box;padding:14px 16px;background:#111827;color:#e5e7eb;border-bottom:1px solid #1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;display:flex;flex-direction:column;gap:12px}.rh-title{display:flex;align-items:center;gap:10px}.rh-title h1{font-size:17px;font-weight:700;letter-spacing:-.01em}.rh-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.rh-count{margin-left:auto;font:700 12px/1 ui-monospace,monospace;color:var(--accent)}.rh-search{display:flex}.rh-controls{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px}.rh-reset{padding:8px 12px;background:transparent;border:1px solid #1f2937;border-radius:8px;color:#94a3b8;font-size:13px;cursor:pointer}.rh-reset:hover{border-color:var(--accent);color:#e5e7eb}",uf={class:"rh-title"},pf={key:0,class:"rh-count",role:"status","aria-live":"polite"},df={class:"rh-search"},gf={class:"rh-controls"},_f=["aria-label"],cl=en({__name:"BpResearchHeader",props:{count:{type:[Number,String],default:null},title:{type:String,default:"Unified Research Dashboard"},accent:{type:String,default:"#8b5cf6"},prayBaseUrl:{type:String,default:""},languageCode:{type:String,default:""},profileConfig:{type:String,default:""}},emits:["research-filter"],setup(e,{emit:t}){const o=(h,S)=>At("grid."+h)||At("dashboard."+h)||S,n=e,s=t,a=ee(()=>n.prayBaseUrl||"https://pray.doxa.life"),r=ee(()=>n.languageCode||""),i=be(""),l=po({wagf_region:"",wagf_block:"",rop1:"",religion:""}),p=po({wagf_region:[],wagf_block:[],rop1:[],religion:[]}),d=ee(()=>!!(i.value||l.wagf_region||l.wagf_block||l.rop1||l.religion)),f=so();function b(){var S,T;const h=((S=f==null?void 0:f.vnode)==null?void 0:S.el)||((T=f==null?void 0:f.proxy)==null?void 0:T.$el);try{const P=h&&h.getRootNode&&h.getRootNode();if(P&&P.host)return P.host}catch{}return h}function A(){const h={query:i.value,wagfRegion:l.wagf_region,wagfBlock:l.wagf_block,rop1:l.rop1,religion:l.religion};s("research-filter",h);const S=b();S&&typeof S.dispatchEvent=="function"&&S.dispatchEvent(new CustomEvent("research-filter",{detail:h,bubbles:!0,composed:!0}))}Qe([i,()=>l.wagf_region,()=>l.wagf_block,()=>l.rop1,()=>l.religion],A,{immediate:!0});function O(h){i.value=(h==null?void 0:h.value)??""}function x(h){(h==null?void 0:h.name)in l&&(l[h.name]=h.value)}function M(h){(h==null?void 0:h.name)in l&&(l[h.name]="")}function F(){i.value="",l.wagf_region="",l.wagf_block="",l.rop1="",l.religion=""}function I(h,S){const T=new Map;for(const P of h){const z=P[S];if(!(z!=null&&z.value))continue;const B=T.get(z.value);B?B.count++:T.set(z.value,{label:z.label,count:1})}return Array.from(T.entries()).map(([P,{label:z,count:B}])=>({value:P,label:z,count:B})).sort((P,z)=>P.label.localeCompare(z.label))}async function v(){const h=`${a.value}/api/people-groups/list?fields=name,slug,wagf_region,wagf_block,country_code,rop1,religion&lang=${r.value}`;try{const T=await(await fetch(h)).json(),P=await ll(Array.isArray(T.posts)?T.posts:[],n.profileConfig);p.wagf_region=I(P,"wagf_region"),p.wagf_block=I(P,"wagf_block"),p.rop1=I(P,"rop1"),p.religion=I(P,"religion")}catch(S){console.error("[bp-research-header] options fetch error:",S)}}return ho(v),(h,S)=>(ae(),re("div",{class:"rh-root",role:"banner",style:Tt({"--accent":e.accent})},[ne("div",uf,[S[0]||(S[0]=ne("span",{class:"rh-dot","aria-hidden":"true"},null,-1)),ne("h1",null,$e(e.title),1),e.count!==null&&e.count!==""?(ae(),re("span",pf,$e((o("n_shown","")||nt(At)("dashboard.n_shown")||"{n} shown").replace("{n}",e.count)),1)):Pe("",!0)]),ne("div",df,[he(nl,{"model-value":i.value,placeholder:o("search_people_or_countries","Search people groups or countries…"),"aria-label":nt(At)("aria.searchPeopleGroups")||"Search people groups",onSearch:O},null,8,["model-value","placeholder","aria-label"])]),ne("div",gf,[he(Xt,{label:o("wagf_region","Region"),name:"wagf_region",options:p.wagf_region,value:l.wagf_region,onFilterChange:x,onFilterClear:M},null,8,["label","options","value"]),he(Xt,{label:o("wagf_block","Bloc"),name:"wagf_block",options:p.wagf_block,value:l.wagf_block,onFilterChange:x,onFilterClear:M},null,8,["label","options","value"]),he(Xt,{label:o("rop1","People Group"),name:"rop1",options:p.rop1,value:l.rop1,onFilterChange:x,onFilterClear:M},null,8,["label","options","value"]),he(Xt,{label:o("religion","Religion"),name:"religion",options:p.religion,value:l.religion,onFilterChange:x,onFilterClear:M},null,8,["label","options","value"]),d.value?(ae(),re("button",{key:0,class:"rh-reset",type:"button","aria-label":nt(At)("aria.resetAllFilters")||"Reset all filters and search",onClick:F},$e(o("reset_all","")||nt(At)("controls.reset_all")||"Reset"),9,_f)):Pe("",!0)])],4))}},[["styles",[cf]]]);function Wn(e,t){if(!t.includes("."))return e==null?void 0:e[t];const[o,...n]=t.split(".");let s=e==null?void 0:e[o];for(const a of n)s=s==null?void 0:s[a];return s}function ff(e,t){const o=e.toLowerCase(),n=t.toLowerCase(),s=[];let a=0,r=o.indexOf(n,a);for(;r!==-1;)s.push([r,r+n.length-1]),a=r+n.length,r=o.indexOf(n,a);return s}function $f(e,t,o){const n=e.toLowerCase(),s=t.toLowerCase(),a=s.length;if(!a||!n.length)return null;const r=Math.min(2,Math.floor(o*a));if(r<=0)return null;let i=new Array(n.length+1).fill(0),l=new Array(n.length+1);for(let b=1;b<=a;b++){l[0]=b;for(let A=1;A<=n.length;A++){const O=i[A-1]+(s[b-1]===n[A-1]?0:1);l[A]=Math.min(O,i[A]+1,l[A-1]+1)}[i,l]=[l,i]}let p=1/0,d=-1;for(let b=1;b<=n.length;b++)i[b]r?null:[[Math.max(0,d-a),d-1]]}function hf(e,t,{threshold:o=.4}={}){const n=String(e??"").trim().toLowerCase();if(!n)return[];const s=Math.min(2,Math.floor(o*n.length)),a=[];for(const i of t){if(!i)continue;const l=String(i).toLowerCase();if(Math.abs(l.length-n.length)>s)continue;const p=mf(l,n,s);p<=s&&a.push({value:i,distance:p})}if(!a.length)return[];const r=Math.min(...a.map(i=>i.distance));return a.filter(i=>i.distance===r).map(i=>i.value)}function mf(e,t,o){if(e===t)return 0;let n=Array.from({length:t.length+1},(a,r)=>r);const s=new Array(t.length+1);for(let a=1;a<=e.length;a++){s[0]=a;let r=a;for(let i=1;i<=t.length;i++)s[i]=Math.min(n[i-1]+(e[a-1]===t[i-1]?0:1),n[i]+1,s[i-1]+1),s[i]o)return o+1;for(let i=0;i<=t.length;i++)n[i]=s[i]}return n[t.length]}class bf{constructor(t,o={}){this.list=Array.isArray(t)?t:[],this.keys=o.keys||[],this.threshold=typeof o.threshold=="number"?o.threshold:.4,this.minMatchCharLength=o.minMatchCharLength||1}search(t){const o=String(t||"").trim();if(!o)return this.list.map(p=>({item:p,matches:[]}));if(o.length":">",'"':""","'":"'","`":"`"};function Gn(e){return e==null?"":String(e).replace(/[&<>"'`]/g,t=>yf[t])}function vf(e,t){const o=String(e??"");if(!Array.isArray(t)||t.length===0)return Gn(o);let n=0,s="";return t.forEach((a,r)=>{const[i,l]=a,p=r===t.length-1;s+=Gn(o.slice(n,i))+''+Gn(o.slice(i,l+1))+""+(p?Gn(o.slice(l+1)):""),n=l+1}),s}const wf="en-US",ul=e=>Number(e).toLocaleString(wf);function kf(e,t){return String(t||e||"").trim().toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}const pl={C:"Christianity",M:"Islam",H:"Hinduism",B:"Buddhism",E:"Ethnoreligion",J:"Judaism",S:"Sikhism",N:"Unaffiliated",O:"Other",U:"Unknown"},xf={"Indo-European":"#e74c3c",Dravidian:"#ff9800","Afro-Asiatic":"#27ae60","Sino-Tibetan":"#3498db","Niger-Congo":"#9b59b6",Unclassified:"#95a5a6","Nilo-Saharan":"#e91e63","Khoe-Kwadi":"#00bcd4","Austro-Asiatic":"#00bcd4","Kra-Dai":"#8e44ad",Austronesian:"#ff69b4","Hmong-Mien":"#f44336",Turkic:"#ffc107","Nakh-Daghestanian":"#009688",Mongolic:"#795548",Uralic:"#607d8b",Tungusic:"#4caf50",Japonic:"#ff5722",Cariban:"#673ab7",Tupian:"#03a9f4",Tucanoan:"#8bc34a",Maipurean:"#ffc107",Panoan:"#cddc39",Guajiboan:"#9e9e9e",Chibchan:"#ff7043",Quechuan:"#ab47bc",Jean:"#26a69a",Harákmbut:"#7e57c2",Nambikwara:"#42a5f5",Muran:"#66bb6a",Karajá:"#ffa726",Bororoan:"#ef5350",Arauan:"#5c6bc0",Yanomaman:"#26c6da",Yaguan:"#d4e157",Witotoan:"#78909c",Zamucoan:"#8d6e63",Puinavean:"#aed581",Barbacoan:"#4db6ac","Eyak-Athabaskan":"#7986cb","Trans-New Guinea":"#ba68c8",Andamanese:"#4dd0e1","Atlantic-Congo":"#7D3C98",Mande:"#B9770E","Sign Language":"#212121",Creole:"#9575cd","Mixed language":"#a1887f","Language isolate":"#90a4ae",Unknown:"#000000"},Af=(()=>{const e=o=>String(o||"").toLowerCase().trim(),t={};for(const o of Object.keys(xf))t[e(o)]=o;return t})(),Sf={"tai-kadai":"Kra-Dai",none:"Unknown"};function dl(e){if(!e)return"Unknown";const t=String(e).trim(),o=t.toLowerCase();return Sf[o]||Af[o]||t}const Lf={aar:"Afro-Asiatic",abf:"Austronesian",abl:"Austronesian",abv:"Afro-Asiatic",acm:"Afro-Asiatic",acq:"Afro-Asiatic",acw:"Afro-Asiatic",acx:"Afro-Asiatic",adh:"Nilo-Saharan",adi:"Sino-Tibetan",adw:"Tupian",adx:"Sino-Tibetan",aen:"Sign Language",afb:"Afro-Asiatic",afg:"Sign Language",afr:"Indo-European",aft:"Nilo-Saharan",agx:"Nakh-Daghestanian",ahk:"Sino-Tibetan",aib:"Turkic",aih:"Kra-Dai",aio:"Kra-Dai",ajp:"Afro-Asiatic",aju:"Afro-Asiatic",aks:"Niger-Congo",akv:"Nakh-Daghestanian",alk:"Austro-Asiatic",alo:"Austronesian",alw:"Afro-Asiatic",amc:"Panoan",amh:"Afro-Asiatic",amr:"Harákmbut",amv:"Austronesian",ani:"Nakh-Daghestanian",anp:"Indo-European",anq:"Andamanese",aoc:"Cariban",apc:"Afro-Asiatic",apd:"Afro-Asiatic",arb:"Afro-Asiatic",arq:"Afro-Asiatic",arr:"Tupian",ars:"Afro-Asiatic",arv:"Afro-Asiatic",ary:"Afro-Asiatic",ase:"Sign Language",asl:"Austronesian",asm:"Indo-European",asn:"Tupian",asp:"Sign Language",atr:"Cariban",avd:"Indo-European",avl:"Afro-Asiatic",avv:"Tupian",awe:"Tupian",awt:"Tupian",ayh:"Afro-Asiatic",ayl:"Afro-Asiatic",ayn:"Afro-Asiatic",azb:"Turkic",bao:"Tucanoan",bbh:"Austro-Asiatic",bcc:"Indo-European",bcz:"Niger-Congo",bdg:"Austronesian",bdi:"Nilo-Saharan",bdj:"Niger-Congo",bdm:"Afro-Asiatic",bdo:"Nilo-Saharan",bee:"Sino-Tibetan",bej:"Afro-Asiatic",bem:"Niger-Congo",ben:"Indo-European",bfi:"Sign Language",bfu:"Sino-Tibetan",bfw:"Austro-Asiatic",bfy:"Indo-European",bgc:"Indo-European",bgg:"Sino-Tibetan",bgk:"Austro-Asiatic",bgl:"Austro-Asiatic",bgn:"Indo-European",bgp:"Indo-European",bgq:"Indo-European",bho:"Indo-European",bhu:"Indo-European",bid:"Afro-Asiatic",bjj:"Indo-European",bkk:"Indo-European",blf:"Austronesian",blm:"Nilo-Saharan",blo:"Niger-Congo",bls:"Austronesian",blt:"Kra-Dai",bly:"Niger-Congo",bma:"Niger-Congo",bmr:"Witotoan",bna:"Austronesian",bns:"Indo-European",bor:"Bororoan",bos:"Indo-European",bph:"Nakh-Daghestanian",bqg:"Niger-Congo",bqj:"Niger-Congo",bqk:"Niger-Congo",bqn:"Sign Language",bqx:"Niger-Congo",bra:"Indo-European",brb:"Austro-Asiatic",bro:"Sino-Tibetan",brx:"Sino-Tibetan",bsb:"Austronesian",bsg:"Indo-European",bsk:"Language isolate",bsy:"Austronesian",btd:"Austronesian",btf:"Afro-Asiatic",btv:"Indo-European",btx:"Austronesian",btz:"Austronesian",bub:"Niger-Congo",buh:"Hmong-Mien",bva:"Afro-Asiatic",bvf:"Afro-Asiatic",bvi:"Niger-Congo",bvo:"Niger-Congo",bwi:"Maipurean",bwn:"Hmong-Mien",bwx:"Hmong-Mien",bxr:"Mongolic",bxu:"Mongolic",bxw:"Niger-Congo",byn:"Afro-Asiatic",byo:"Sino-Tibetan",bze:"Niger-Congo",bzx:"Niger-Congo",cat:"Indo-European",cbb:"Maipurean",cbc:"Tucanoan",cbi:"Barbacoan",cbn:"Austro-Asiatic",cby:"Unclassified",cdh:"Indo-European",cdn:"Sino-Tibetan",cdz:"Austro-Asiatic",ceg:"Zamucoan",cgk:"Sino-Tibetan",che:"Nakh-Daghestanian",cib:"Niger-Congo",cji:"Nakh-Daghestanian",ckh:"Sino-Tibetan",ckq:"Afro-Asiatic",clk:"Sino-Tibetan",cmn:"Sino-Tibetan",cnq:"Niger-Congo",cnu:"Afro-Asiatic",coa:"Creole",cog:"Austro-Asiatic",cpu:"Maipurean",cqd:"Hmong-Mien",csf:"Sign Language",csx:"Sign language",cub:"Tucanoan",cui:"Guajiboan",cuu:"Kra-Dai",daa:"Afro-Asiatic",daj:"Nilo-Saharan",dar:"Nakh-Daghestanian",dau:"Nilo-Saharan",dba:"Language isolate",dbb:"Afro-Asiatic",dbp:"Afro-Asiatic",dbr:"Afro-Asiatic",ddn:"Nilo-Saharan",deg:"Niger-Congo",dek:"Niger-Congo",des:"Tucanoan",dgo:"Indo-European",dgs:"Niger-Congo",dhd:"Indo-European",dhi:"Sino-Tibetan",dhm:"Niger-Congo",dil:"Nilo-Saharan",diu:"Niger-Congo",div:"Indo-European",djc:"Nilo-Saharan",dkg:"Niger-Congo",dln:"Sino-Tibetan",dml:"Indo-European",dms:"Austronesian",dnu:"Austro-Asiatic",doc:"Kra-Dai",dok:"Austronesian",dox:"Afro-Asiatic",dru:"Austronesian",dse:"Sign Language",dsh:"Afro-Asiatic",dsl:"Sign Language",dsq:"Nilo-Saharan",dta:"Mongolic",dtp:"Austronesian",dyu:"Niger-Congo",dzg:"Nilo-Saharan",dzl:"Sino-Tibetan",eng:"Indo-European",enn:"Niger-Congo",epi:"Niger-Congo",ers:"Sino-Tibetan",esl:"Sign Language",evn:"Tungusic",fin:"Uralic",fni:"Niger-Congo",fod:"Niger-Congo",fra:"Indo-European",fsl:"Sign Language",fub:"Niger-Congo",fuc:"Niger-Congo",fuf:"Niger-Congo",fuj:"Niger-Congo",fvr:"Nilo-Saharan",fwe:"Niger-Congo",gax:"Afro-Asiatic",gaz:"Afro-Asiatic",gbk:"Indo-European",gbm:"Indo-European",gbn:"Nilo-Saharan",gdq:"Afro-Asiatic",gea:"Afro-Asiatic",ges:"Austronesian",gex:"Afro-Asiatic",ghl:"Nilo-Saharan",giq:"Kra-Dai",giw:"Kra-Dai",gju:"Indo-European",glc:"Niger-Congo",goe:"Sino-Tibetan",gow:"Afro-Asiatic",gqu:"Kra-Dai",grr:"Afro-Asiatic",gsg:"Sign Language",gss:"Sign Language",guj:"Indo-European",gus:"Sign Language",gvp:"Jean",gwb:"Niger-Congo",gwc:"Indo-European",gwd:"Afro-Asiatic",gwf:"Indo-European",gya:"Niger-Congo",gyo:"Sino-Tibetan",gzn:"Austronesian",hae:"Afro-Asiatic",hal:"Austro-Asiatic",hau:"Afro-Asiatic",hca:"Creole",hea:"Hmong-Mien",heb:"Afro-Asiatic",her:"Niger-Congo",hik:"Austronesian",hin:"Indo-European",hks:"Sign Language",hlb:"Indo-European",hld:"Austro-Asiatic",hmb:"Nilo-Saharan",hmh:"Hmong-Mien",hml:"Hmong-Mien",hmm:"Hmong-Mien",hne:"Indo-European",hni:"Sino-Tibetan",hnu:"Austro-Asiatic",hoh:"Afro-Asiatic",hoj:"Indo-European",hoz:"Afro-Asiatic",hsn:"Sino-Tibetan",hss:"Afro-Asiatic",htu:"Austronesian",hug:"Harákmbut",huo:"Austro-Asiatic",iba:"Austronesian",ibr:"Niger-Congo",icl:"Sign Language",iii:"Sino-Tibetan",ind:"Austronesian",irr:"Austro-Asiatic",ise:"Sign Language",isk:"Indo-European",isr:"Sign Language",ium:"Hmong-Mien",jbn:"Afro-Asiatic",jeu:"Afro-Asiatic",jia:"Afro-Asiatic",jii:"Afro-Asiatic",jio:"Kra-Dai",jit:"Niger-Congo",jiu:"Sino-Tibetan",jle:"Niger-Congo",jls:"Sign Language",jmi:"Afro-Asiatic",jnl:"Sino-Tibetan",jos:"Sign Language",jpn:"Japonic",jup:"Puinavean",kaf:"Sino-Tibetan",kan:"Dravidian",kas:"Indo-European",kay:"Tupian",kaz:"Turkic",kbg:"Sino-Tibetan",kbo:"Nilo-Saharan",kbp:"Niger-Congo",kby:"Nilo-Saharan",kcf:"Niger-Congo",kcn:"Creole",kcp:"Nilo-Saharan",kcu:"Niger-Congo",kcy:"Nilo-Saharan",kcz:"Niger-Congo",kdh:"Niger-Congo",kdn:"Niger-Congo",kdt:"Austro-Asiatic",kdu:"Nilo-Saharan",kec:"Nilo-Saharan",kfa:"Dravidian",kfd:"Dravidian",kfe:"Dravidian",kfg:"Dravidian",kfm:"Indo-European",kfr:"Indo-European",kfs:"Indo-European",kfy:"Indo-European",kgn:"Indo-European",khb:"Kra-Dai",khf:"Austro-Asiatic",khv:"Nakh-Daghestanian",kia:"Niger-Congo",kib:"Niger-Congo",kie:"Nilo-Saharan",kil:"Afro-Asiatic",kir:"Turkic",kjc:"Austronesian",kjg:"Austro-Asiatic",kjk:"Austronesian",kke:"Niger-Congo",kkh:"Kra-Dai",kkn:"Austro-Asiatic",kko:"Nilo-Saharan",kks:"Afro-Asiatic",klf:"Nilo-Saharan",kmc:"Kra-Dai",kmq:"Nilo-Saharan",kmr:"Indo-European",kmz:"Turkic",knc:"Nilo-Saharan",knf:"Niger-Congo",knk:"Niger-Congo",knm:"Maipurean",knn:"Indo-European",kns:"Austro-Asiatic",knz:"Niger-Congo",kou:"Niger-Congo",kpa:"Afro-Asiatic",kpc:"Maipurean",kpj:"Karajá",kpt:"Nakh-Daghestanian",kqg:"Niger-Congo",kqm:"Niger-Congo",krn:"Niger-Congo",krs:"Nilo-Saharan",kth:"Nilo-Saharan",kuf:"Austro-Asiatic",kui:"Cariban",kuj:"Niger-Congo",kva:"Nakh-Daghestanian",kvf:"Afro-Asiatic",kvh:"Austronesian",kvp:"Austronesian",kwn:"Niger-Congo",kwv:"Nilo-Saharan",kxd:"Austronesian",kxh:"Afro-Asiatic",kxj:"Nilo-Saharan",kyi:"Austronesian",kyp:"Kra-Dai",kyw:"Indo-European",kzq:"Sino-Tibetan",lae:"Sino-Tibetan",lan:"Niger-Congo",lao:"Kra-Dai",laq:"Kra-Dai",lbj:"Sino-Tibetan",lbn:"Austro-Asiatic",lbo:"Austro-Asiatic",lbs:"Sign Language",lbt:"Kra-Dai",lcd:"Austronesian",lcq:"Austronesian",lgn:"Nilo-Saharan",lgs:"Sign Language",lha:"Kra-Dai",lhn:"Austronesian",lhp:"Sino-Tibetan",lic:"Kra-Dai",liq:"Afro-Asiatic",liu:"Nilo-Saharan",lkc:"Sino-Tibetan",lkh:"Sino-Tibetan",lki:"Indo-European",lkr:"Nilo-Saharan",lma:"Niger-Congo",loh:"Nilo-Saharan",lop:"Niger-Congo",lsd:"Afro-Asiatic",lso:"Sign Language",lss:"Indo-European",lsy:"Sign Language",luk:"Sino-Tibetan",lul:"Nilo-Saharan",mag:"Indo-European",mai:"Indo-European",mal:"Dravidian",mar:"Indo-European",mbd:"Austronesian",mbn:"Guajiboan",mcd:"Panoan",mdl:"Sign Language",mdy:"Afro-Asiatic",mei:"Nilo-Saharan",men:"Niger-Congo",mes:"Afro-Asiatic",mew:"Afro-Asiatic",mey:"Afro-Asiatic",mgb:"Nilo-Saharan",mgd:"Nilo-Saharan",mge:"Nilo-Saharan",mgh:"Niger-Congo",mhr:"Uralic",mhu:"Sino-Tibetan",mhw:"Niger-Congo",mjp:"Dravidian",mkg:"Kra-Dai",mmh:"Maipurean",mml:"Austro-Asiatic",mmy:"Afro-Asiatic",mne:"Nilo-Saharan",mni:"Sino-Tibetan",mnj:"Indo-European",mnk:"Niger-Congo",mnq:"Austro-Asiatic",mns:"Uralic",mot:"Chibchan",mou:"Afro-Asiatic",moy:"Afro-Asiatic",moz:"Afro-Asiatic",mpe:"Nilo-Saharan",mpz:"Sino-Tibetan",mqi:"Austronesian",mqn:"Austronesian",mra:"Austro-Asiatic",mrj:"Uralic",msc:"Niger-Congo",msv:"Afro-Asiatic",msw:"Niger-Congo",mtr:"Indo-European",mub:"Afro-Asiatic",mup:"Indo-European",muq:"Hmong-Mien",muv:"Dravidian",mvf:"Mongolic",mvu:"Nilo-Saharan",mvy:"Indo-European",mwn:"Niger-Congo",mxj:"Sino-Tibetan",myp:"Muran",myy:"Tucanoan",mzb:"Afro-Asiatic",mzy:"Sign Language",naq:"Khoe-Kwadi",nbt:"Sino-Tibetan",nbw:"Niger-Congo",ndg:"Niger-Congo",ndp:"Nilo-Saharan",ndt:"Niger-Congo",neb:"Niger-Congo",neh:"Sino-Tibetan",nev:"Austro-Asiatic",ngt:"Austro-Asiatic",njl:"Nilo-Saharan",nkd:"Sino-Tibetan",nld:"Indo-European",nmd:"Niger-Congo",nmi:"Afro-Asiatic",nml:"Niger-Congo",nmy:"Sino-Tibetan",nnj:"Nilo-Saharan",nod:"Kra-Dai",noe:"Indo-European",nos:"Sino-Tibetan",npb:"Sino-Tibetan",npi:"Indo-European",nrb:"Nilo-Saharan",nru:"Sino-Tibetan",nsl:"Sign Language",nuo:"Austro-Asiatic",nus:"Nilo-Saharan",nwm:"Nilo-Saharan",nxq:"Sino-Tibetan",nye:"Niger-Congo",nyn:"Niger-Congo",nyr:"Niger-Congo",nyw:"Kra-Dai",nzs:"Sign Language",okn:"Japonic",ole:"Sino-Tibetan",oog:"Austro-Asiatic",oon:"Andamanese",opa:"Niger-Congo",ort:"Indo-European",ory:"Indo-European",ost:"Niger-Congo",oyb:"Austro-Asiatic",oym:"Tupian",pac:"Austro-Asiatic",pah:"Tupian",pbp:"Niger-Congo",peh:"Mongolic",pes:"Indo-European",pga:"Creole",pgg:"Indo-European",pgz:"Sign language",pha:"Hmong-Mien",phh:"Sino-Tibetan",phj:"Sino-Tibetan",phk:"Kra-Dai",phl:"Indo-European",pho:"Sino-Tibetan",phq:"Sino-Tibetan",phr:"Indo-European",pht:"Kra-Dai",pil:"Niger-Congo",pir:"Tucanoan",pkb:"Niger-Congo",pks:"Sign Language",pkt:"Austro-Asiatic",pll:"Austro-Asiatic",pnq:"Niger-Congo",pnx:"Austro-Asiatic",por:"Indo-European",prc:"Indo-European",prs:"Indo-European",prt:"Austro-Asiatic",psc:"Sign Language",pse:"Austronesian",pto:"Tupian",pum:"Sino-Tibetan",puo:"Austro-Asiatic",qae:"Sign Language",qao:"Sign Language",qbh:"Sign Language",qbj:"Sign Language",qbn:"Sign Language",qbt:"Sign Language",qcd:"Sign Language",qcm:"Sign Language",qcy:"Sign Language",qer:"Sign Language",qfa:"Sign Language",qfj:"Sign Language",qga:"Sign Language",qge:"Sign Language",qgm:"Sign Language",qiq:"Sign Language",qki:"Sign Language",qkm:"Sign Language",qkp:"Sign Language",qkw:"Sign Language",qmv:"Sign Language",qnh:"Sign Language",qns:"Sign Language",qom:"Sign Language",qqa:"Sign Language",qry:"Sign Language",qsm:"Sign Language",qso:"Sign Language",qsr:"Sign Language",qsz:"Sign Language",qtp:"Sign Language",qvz:"Quechuan",ras:"Niger-Congo",rbb:"Austro-Asiatic",ren:"Austro-Asiatic",rji:"Sino-Tibetan",rmt:"Indo-European",rmy:"Indo-European",rob:"Austronesian",rsl:"Sign Language",rui:"Niger-Congo",rus:"Indo-European",rwm:"Niger-Congo",rwr:"Indo-European",rys:"Japonic",saa:"Afro-Asiatic",sbf:"Unclassified",sbj:"Nilo-Saharan",sbs:"Niger-Congo",scb:"Austro-Asiatic",sck:"Indo-European",scl:"Indo-European",sdb:"Indo-European",sdg:"Indo-European",sdl:"Sign Language",sdp:"Sino-Tibetan",seq:"Niger-Congo",sgh:"Indo-European",sgy:"Indo-European",she:"Afro-Asiatic",shm:"Indo-European",shn:"Kra-Dai",sho:"Niger-Congo",shp:"Panoan",shu:"Afro-Asiatic",shv:"Afro-Asiatic",shz:"Niger-Congo",siy:"Indo-European",siz:"Afro-Asiatic",sjg:"Nilo-Saharan",sjo:"Tungusic",skq:"Niger-Congo",sle:"Dravidian",slt:"Sino-Tibetan",sml:"Austronesian",smy:"Indo-European",snd:"Indo-European",snn:"Tucanoan",soj:"Indo-European",sok:"Afro-Asiatic",soy:"Niger-Congo",spa:"Indo-European",spu:"Austro-Asiatic",sqk:"Sign Language",sqq:"Austro-Asiatic",sqs:"Sign Language",sqt:"Afro-Asiatic",srh:"Indo-European",sri:"Tucanoan",srp:"Indo-European",ssh:"Afro-Asiatic",ssn:"Afro-Asiatic",sss:"Austro-Asiatic",ssy:"Afro-Asiatic",std:"Andamanese",sts:"Indo-European",suq:"Nilo-Saharan",suv:"Sino-Tibetan",suy:"Jean",suz:"Sino-Tibetan",swh:"Niger-Congo",swi:"Kra-Dai",swl:"Sign Language",swv:"Indo-European",swx:"Arauan",sxg:"Sino-Tibetan",sze:"Afro-Asiatic",szn:"Austronesian",szs:"Sign Language",tag:"Niger-Congo",tam:"Dravidian",taz:"Niger-Congo",tbm:"Niger-Congo",tbn:"Chibchan",tbr:"Nilo-Saharan",tct:"Kra-Dai",tcy:"Dravidian",tda:"Mixed language",tdb:"Indo-European",tdd:"Kra-Dai",tdf:"Austro-Asiatic",tdj:"Austronesian",tel:"Dravidian",teq:"Nilo-Saharan",tgf:"Sino-Tibetan",tgk:"Indo-European",tgr:"Austro-Asiatic",thk:"Niger-Congo",thm:"Austro-Asiatic",thu:"Nilo-Saharan",thv:"Afro-Asiatic",tig:"Afro-Asiatic",tin:"Nakh-Daghestanian",tiz:"Kra-Dai",tkn:"Japonic",tlq:"Austro-Asiatic",tly:"Indo-European",tma:"Nilo-Saharan",tnb:"Chibchan",toi:"Niger-Congo",toq:"Nilo-Saharan",tou:"Austro-Asiatic",tqq:"Afro-Asiatic",tri:"Cariban",trj:"Afro-Asiatic",tsb:"Afro-Asiatic",tsc:"Niger-Congo",tsj:"Sino-Tibetan",tsk:"Sino-Tibetan",tsl:"Kra-Dai",tsm:"Sign Language",ttg:"Austronesian",tth:"Austro-Asiatic",ttl:"Niger-Congo",tts:"Kra-Dai",tue:"Tucanoan",tum:"Niger-Congo",tuo:"Tucanoan",tur:"Turkic",twm:"Sino-Tibetan",txi:"Cariban",txm:"Austronesian",tyh:"Austro-Asiatic",tyj:"Kra-Dai",tyr:"Kra-Dai",tyv:"Turkic",tyy:"Niger-Congo",tzm:"Afro-Asiatic",uan:"Kra-Dai",udj:"Austronesian",une:"Niger-Congo",unk:"Maipurean",urd:"Indo-European",urp:"Tupian",urz:"Tupian",ush:"Indo-European",usi:"Sino-Tibetan",uuu:"Austro-Asiatic",uzn:"Turkic",vai:"Niger-Congo",vgr:"Indo-European",vie:"Austro-Asiatic",vkj:"Unclassified",vkn:"Niger-Congo",vkz:"Niger-Congo",vmk:"Niger-Congo",vut:"Niger-Congo",wau:"Maipurean",waw:"Cariban",wbj:"Afro-Asiatic",wbl:"Indo-European",wbr:"Indo-European",wlc:"Niger-Congo",wll:"Nilo-Saharan",wmd:"Nambikwara",wmg:"Sino-Tibetan",wne:"Indo-European",wni:"Niger-Congo",wol:"Niger-Congo",wrn:"Niger-Congo",wti:"Nilo-Saharan",wuh:"Mixed language",wwa:"Niger-Congo",xal:"Mongolic",xan:"Afro-Asiatic",xdq:"Nakh-Daghestanian",xhv:"Austro-Asiatic",xka:"Indo-European",xkz:"Sino-Tibetan",xma:"Niger-Congo",xmj:"Afro-Asiatic",xmo:"Tupian",xms:"Sign Language",xnr:"Indo-European",xns:"Sino-Tibetan",xom:"Nilo-Saharan",xor:"Panoan",xsm:"Niger-Congo",xsr:"Sino-Tibetan",xwg:"Nilo-Saharan",yaa:"Panoan",yad:"Yaguan",yao:"Niger-Congo",yax:"Niger-Congo",ybh:"Sino-Tibetan",ycl:"Sino-Tibetan",ydd:"Indo-European",ydg:"Indo-European",yea:"Dravidian",yhd:"Afro-Asiatic",yig:"Sino-Tibetan",yix:"Sino-Tibetan",ymm:"Afro-Asiatic",ymx:"Sino-Tibetan",yne:"Sino-Tibetan",yno:"Kra-Dai",yom:"Niger-Congo",yox:"Japonic",yoy:"Kra-Dai",yrn:"Kra-Dai",ysl:"Sign Language",ysm:"Sign language",ysn:"Sino-Tibetan",yue:"Sino-Tibetan",yul:"Nilo-Saharan",yup:"Cariban",ywn:"Panoan",ywt:"Sino-Tibetan",zag:"Nilo-Saharan",zgn:"Kra-Dai",zhd:"Kra-Dai",ziw:"Niger-Congo",zkr:"Sino-Tibetan",zlm:"Austronesian",zna:"Niger-Congo",zne:"Niger-Congo",zng:"Austro-Asiatic",zqe:"Kra-Dai",zum:"Indo-European",zyg:"Kra-Dai"},Tf=":host{display:block;width:100%;--dx-surface: #f3f3f1;--dx-elevated: #ffffff;--dx-text: #3b463d;--dx-muted: #6d766e;--dx-line: #d1d4cd;--dx-accent: #92b195;--dx-accent-weak: rgba(146, 177, 149, .18);--dx-accent-soft: rgba(146, 177, 149, .1);--dx-accent-strong: #657967}.pgg-root{--brand: var(--dx-accent, #92b195);--ink: var(--dx-text, #3b463d);--mut: var(--dx-muted, #6d766e);--line: var(--dx-line, #d1d4cd);--card: var(--dx-elevated, #fff);--bg: var(--dx-surface, #f3f3f1);width:100%;box-sizing:border-box;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;padding:16px}.filters{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding-block:18px 8px;min-height:190px}.pgg-search{display:flex;justify-content:center}.pgg-search--repel{gap:10px;align-items:center;flex-wrap:wrap;justify-content:space-between;width:100%;max-width:600px;margin-inline:auto}.pgg-search--repel>:first-child{flex:1 1 320px;min-width:0}.pgg-exact{flex:none}.filters__toggle{background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--dx-text, #3b463d);padding:7px 12px;display:inline-flex;align-items:center;gap:7px;margin-inline:auto;transition:background-color .15s ease,border-color .15s ease}.filters__toggle:hover{background:var(--dx-accent-weak, rgba(146,177,149,.18));border-color:var(--dx-accent, #92b195)}.filters__toggle:focus-visible{outline:2px solid var(--dx-accent, #92b195);outline-offset:2px}.filters__toggle-icon{color:var(--dx-accent, #92b195);flex:none}.filters__toggle-count{background:var(--dx-accent, #92b195);color:#fff;border-radius:999px;min-width:18px;padding:0 5px;font-size:.75rem;line-height:18px;text-align:center}.filters__toggle[aria-expanded=true] svg{transform:rotate(180deg)}.filters__panel{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:flex-start}.filter-toggle{padding:6px 12px;cursor:pointer;font-size:.875rem;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:8px;transition:border-color .15s ease,background .15s ease}.filter-toggle:hover{border-color:var(--brand)}.filter-toggle[data-active]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));border-color:var(--brand);color:var(--ink)}.filters__active{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}.filter-chip{display:inline-flex;gap:6px;align-items:center;background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));color:var(--ink);border:1px solid var(--line);border-radius:100px;padding:4px 12px;font-size:.85rem}.filter-chip__remove{background:none;border:none;cursor:pointer;font-size:1.1em;line-height:1;color:inherit;padding:0;display:inline-flex;align-items:center}.filter-chip__remove:hover{opacity:.7}.filters__clear-all{background:none;border:none;cursor:pointer;font-size:.875rem;color:var(--ink);text-decoration:underline;text-decoration-color:var(--brand);text-underline-offset:4px}.repel{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.font-size-sm{font-size:.875rem;color:var(--mut)}.grid.uupgs-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.pgg-gridbar{display:flex;justify-content:flex-end;margin-bottom:8px}.pgg-perrow{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--mut)}.pgg-perrow select{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:6px;padding:2px 6px}.card.uupg__card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #0000000a}.uupg__image{width:100%;aspect-ratio:1 / 1;object-fit:cover;background:var(--line)}.uupg__header{padding:12px 14px 6px}.uupg__name{font-size:1rem;font-weight:700;line-height:1.2;margin:0 0 4px}.uupg__country{font-size:.85rem;color:var(--mut);margin:0}.uupg__country-link{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:1px;text-underline-offset:2px}.uupg__country-link:hover{text-decoration-thickness:2px}.uupg__match{font-size:.8rem;color:var(--mut);margin:4px 0 0}.uupg__content{padding:0 14px;font-size:.85rem;color:var(--mut)}.uupg__more-button{margin:12px 14px 14px;padding:8px 12px;text-align:center;font-size:.85rem;font-weight:700;color:var(--dx-elevated, #fff);background:var(--dx-accent-strong, #657967);border-radius:8px;text-decoration:none}.uupg__more-button:hover{background:var(--dx-text, #3b463d)}.search-highlight{background:#fde68a;border-radius:2px;padding:0 1px}.loading,.pgg-empty{grid-column:1 / -1;padding:28px;text-align:center;color:var(--mut);font-size:.9rem}.pgg-failed{font-weight:600;border-top:1px solid var(--bd, #d1d4cd)}.pgg-loadmore{display:block;margin:20px auto 0;padding:8px 18px;font-size:.9rem;cursor:pointer;color:var(--ink);background:var(--card);border:1px solid var(--brand);border-radius:8px}.pgg-loadmore:hover{background:var(--dx-accent-soft, rgba(146, 177, 149, .1))}",Cf={class:"pgg-root"},Ef={key:0,class:"pgg-search pgg-search--repel"},Pf=["data-active"],Mf=["aria-expanded"],Rf={key:0,class:"filters__toggle-count"},Nf={key:2,class:"filters__panel"},Ff={key:3,class:"filters__active"},Of=["onClick"],If={class:"pgg-body"},Df={key:0,class:"repel"},zf={class:"font-size-sm"},Hf={key:1},jf={class:"pgg-gridbar"},Bf={class:"pgg-perrow"},Uf=["aria-label"],qf=["value"],Vf=["src","alt"],Wf={class:"uupg__header"},Gf=["innerHTML"],Kf={key:0,class:"uupg__country"},Xf=["href"],Yf=["innerHTML"],Jf=["innerHTML"],Zf=["innerHTML"],Qf={key:1,class:"uupg__content"},e$=["href"],t$={key:0,class:"loading"},o$={key:1,class:"pgg-empty pgg-failed",role:"status"},n$={key:2,class:"pgg-empty"},gl=en(Object.assign({inheritAttrs:!1},{__name:"people-groups-grid",props:{profileConfig:{type:String,default:""},prayBaseUrl:{type:String,default:""},languageCode:{type:String,default:""},researchUrl:{type:String,default:""},selectUrl:{type:String,default:""},t:{type:Object,default:()=>({})},showSearch:{type:[Boolean,String],default:!0},showFilters:{type:[Boolean,String],default:!0},showTotal:{type:[Boolean,String],default:!0},query:{type:String,default:""},wagfRegion:{type:String,default:""},wagfBlock:{type:String,default:""},rop1:{type:String,default:""},religion:{type:String,default:""},countryCode:{type:String,default:""},primaryLanguage:{type:String,default:""},cluster:{type:String,default:""},peopleGroup:{type:String,default:""},engagementStatus:{type:String,default:""},gospelAccess:{type:String,default:""},religionFamily:{type:String,default:""},languageFamily:{type:String,default:""},perPage:{type:Number,default:24},morePerPage:{type:Number,default:0}},emits:["groups-filtered"],setup(e,{emit:t}){const o=e,n=t,s=ee(()=>{if(!o.profileConfig)return{};try{return JSON.parse(o.profileConfig)||{}}catch{return{}}}),a=ee(()=>!F.value&&!I.value?null:{backgroundImage:`url(${al(s.value)}/images/worldmap.svg)`,backgroundSize:"60%",backgroundPosition:"top center",backgroundRepeat:"no-repeat"}),r=ee(()=>o.prayBaseUrl||s.value.prayBaseUrl||"https://pray.doxa.life"),i=ee(()=>o.languageCode||s.value.languageCode||s.value.locale||s.value.lang||tl()||""),l=ee(()=>{const g=i.value||ea()||Qs();return el.has(String(g).split("-")[0].toLowerCase())?"rtl":"ltr"});function p(){try{const g=j();g&&g.setAttribute&&l.value==="rtl"&&g.setAttribute("dir","rtl")}catch{}}Qe(l,p);const d=ee(()=>o.researchUrl||s.value.researchUrl||(typeof window<"u"&&window.DOXA_SITE_URL||"https://doxa.life").replace(/\/+$/,"")+"/research/"),f=["auto","1","2","3","4","5"],b=ee(()=>`pgg-cards-per-row:${s.value.profile||"default"}`),A=be("auto");ho(()=>{try{const g=localStorage.getItem(b.value);g&&f.includes(g)&&(A.value=g)}catch{}}),Qe(A,g=>{try{localStorage.setItem(b.value,g)}catch{}});const O=ee(()=>A.value==="auto"?null:{gridTemplateColumns:`repeat(${A.value}, minmax(0, 1fr))`}),x=ee(()=>{const g={...s.value.t||{},...o.t||{}},k=s.value.locale||s.value.lang||void 0;return new Proxy(g,{get(N,q){if(q in N)return N[q];if(typeof q=="string")return At("grid."+q,k)}})}),M=g=>!(g===!1||g==="false"||g==="0"||g===0),F=ee(()=>M(o.showSearch)),I=ee(()=>M(o.showFilters)),v=ee(()=>M(o.showTotal)),h=be([]),S=be([]),T=be(0),P=be(1),z=be(!0),B=be(!1),ce=be(!0),G=be({}),V=be(""),W=be({}),Ce=ee(()=>F.value?V.value:o.query||""),Me=ee(()=>{const g={},k=N=>N;return o.wagfRegion&&(g.wagf_region={value:o.wagfRegion,label:k(o.wagfRegion)}),o.wagfBlock&&(g.wagf_block={value:o.wagfBlock,label:k(o.wagfBlock)}),o.rop1&&(g.rop1={value:o.rop1,label:k(o.rop1)}),o.religion&&(g.religion={value:o.religion,label:k(o.religion)}),o.countryCode&&(g.country_code={value:o.countryCode,label:k(o.countryCode)}),o.primaryLanguage&&(g.primary_language={value:o.primaryLanguage,label:k(o.primaryLanguage)}),o.engagementStatus&&(g.engagement_status={value:o.engagementStatus,label:k(o.engagementStatus)}),o.cluster&&(g.imb_reg_of_people_2={value:o.cluster,label:k(o.cluster)}),o.peopleGroup&&(g.imb_reg_of_people_25={value:o.peopleGroup,label:k(o.peopleGroup)}),o.gospelAccess&&(g.imb_gsec={value:o.gospelAccess,label:k(o.gospelAccess)}),o.religionFamily&&(g.__religion_family={value:o.religionFamily,label:k(o.religionFamily)}),o.languageFamily&&(g.__language_family={value:o.languageFamily,label:k(o.languageFamily)}),g}),te=ee(()=>I.value?W.value:Me.value);Qe(()=>o.wagfRegion,g=>{if(!I.value)return;const k=W.value.wagf_region;if(g){if(k&&k.value===g)return;const N=(G.value&&G.value.wagf_region||[]).find(q=>q.value===g);W.value={...W.value,wagf_region:{value:g,label:N&&N.label||g}}}else if(k){const N={...W.value};delete N.wagf_region,W.value=N}}),Qe(()=>o.religionFamily,g=>{if(!I.value)return;const k=W.value.__religion_family;if(g){if(k&&je(k.value)===je(g))return;W.value={...W.value,__religion_family:{value:g,label:g}}}else if(k){const N={...W.value};delete N.__religion_family,W.value=N}}),Qe(()=>o.primaryLanguage,g=>{if(!I.value)return;const k=W.value.primary_language;if(g){if(k&&je(k.value)===je(g))return;W.value={...W.value,primary_language:{value:g,label:g}}}else if(k){const N={...W.value};delete N.primary_language,W.value=N}});const se=ee(()=>Object.values(te.value||{}).filter(g=>g&&g.value!==""&&g.value!=null).length),le=ee(()=>Object.keys(te.value).length),Ae=ee(()=>se.value>0||!!(Ce.value||"").trim());function Ze(g,k=500){let N;return(...q)=>{clearTimeout(N),N=setTimeout(()=>g(...q),k)}}const ve=Ze(()=>{z.value=!0,P.value=1,E()},500);function xe(g){V.value=(g==null?void 0:g.value)??"",ve()}function rt(){ce.value=!ce.value}function De(g){W.value={...W.value,[g.name]:{value:g.value,label:g.label}},P.value=1,E()}function We(g){Ge(g.name)}function Ge(g){const k={...W.value};delete k[g],W.value=k,P.value=1,E()}function dt(){W.value={},P.value=1,E()}function gt(){if(W.value.exact)return Ge("exact");W.value={...W.value,exact:{value:"yes",label:x.value.exact_filter||"Exact"}},P.value=1,E()}const je=g=>String(g??"").toLowerCase().replace(/[\s_&-]+/g,""),Ke={__religion_family:g=>{const k=g.religion&&typeof g.religion=="object"?g.religion.value:g.religion,N=String(k||"").charAt(0).toUpperCase(),q=N&&pl[N]?pl[N]:"";return q?{value:q,label:q}:null},__language_family:g=>{const k=g.imb_language_family,N=k&&typeof k=="object"?k.label||k.value:k;let q="";if(N)q=dl(N);else{const J=g.primary_language&&typeof g.primary_language=="object"?g.primary_language.value:null,oe=J&&Lf[J];q=oe?dl(oe):""}return q?{value:q,label:q}:null}},St=(g,k)=>Ke[k]?Ke[k](g):g[k];function _(g,k){if(!g)return!1;const N=k==null?void 0:k.value;if(N==null||N==="")return!1;const q=(Array.isArray(N)?N:String(N).split("|")).map(X=>je(X)).filter(Boolean);if(!q.length)return!1;const J=je(g.value),oe=je(g.label);return q.some(X=>J===X||oe===X)}function m(g){let k=g;for(const[N,q]of Object.entries(te.value))N==="exact"?k=k:k=k.filter(J=>_(St(J,N),q));return k}function $(){const g=k=>{const N=new Map;for(const q of h.value){const J=q[k];if(!(J!=null&&J.value))continue;const oe=N.get(J.value);oe?oe.count++:N.set(J.value,{label:J.label,count:1})}return Array.from(N.entries()).map(([q,{label:J,count:oe}])=>({value:q,label:J,count:oe})).sort((q,J)=>q.label.localeCompare(J.label))};G.value={wagf_region:g("wagf_region"),wagf_block:g("wagf_block"),rop1:g("rop1"),religion:g("religion")}}function L(){const g=Object.keys(G.value),k={};for(const N of g){const q={};for(const[X,Ee]of Object.entries(te.value))X!==N&&(q[X]=Ee);const J=R(q,h.value),oe=new Map;for(const X of J){const Ee=X[N];Ee!=null&&Ee.value&&oe.set(Ee.value,(oe.get(Ee.value)??0)+1)}k[N]=(G.value[N]??[]).map(X=>({...X,count:oe.get(X.value)??0}))}G.value=k}function R(g,k){let N=k;for(const[q,J]of Object.entries(g))q!=="exact"&&(N=N.filter(oe=>_(St(oe,q),J)));return N}function E(){h.value=h.value.map(oe=>(oe.matches=[],oe.country_label="",oe.rop1_label="",oe));const k=Object.keys(te.value).length>0?m(h.value):h.value,N=Ce.value;if(!N){S.value=k,T.value=S.value.length,z.value=!1,L(),c();return}const J=new bf(k,{includeMatches:!0,ignoreLocation:!0,minMatchCharLength:3,threshold:te.value.exact?0:.4,keys:["name","imb_alternate_name","country_code.label","rop1.label","religion.label","wagf_region.label","wagf_block.label"]}).search(N);S.value=J.map(oe=>{var Ee;const X={...oe.item};if(!oe.matches)return X;X.matches=[];for(const Re of oe.matches){const Ne=Re.key;if(!Ne)continue;let Yt="";if(String(Ne).includes(".")){const[Lt,lo]=String(Ne).split(".");Yt=(Ee=X[Lt])==null?void 0:Ee[lo]}else Yt=X[String(Ne)];if(Yt&&typeof Yt=="string"){const Lt=vf(Yt,Re.indices);if(String(Ne).includes("imb_alternate_name"))X.matches.push({key:x.value.alternate_name??"Also known as",label:Lt});else if(String(Ne).includes(".")){const[lo]=String(Ne).split("."),u$={religion:x.value.religion,country_code:x.value.country,rop1:x.value.rop1,wagf_region:x.value.wagf_region,wagf_block:x.value.wagf_block};lo==="rop1"?X.rop1_label=Lt:lo==="country_code"?X.country_label=Lt:lo==="wagf_region"||X.matches.push({key:u$[lo]??lo,label:Lt})}else X[String(Ne)]=Lt}}return X}),T.value=S.value.length,z.value=!1,L(),c()}const H=so();function j(){var k,N;const g=((k=H==null?void 0:H.vnode)==null?void 0:k.el)||((N=H==null?void 0:H.proxy)==null?void 0:N.$el);try{const q=g&&g.getRootNode&&g.getRootNode();if(q&&q.host)return q.host}catch{}return g}function c(){const g={query:Ce.value,activeFilters:te.value,total:T.value,slugs:S.value.map(N=>N.slug)};n("groups-filtered",g);const k=j();k&&typeof k.dispatchEvent=="function"&&k.dispatchEvent(new CustomEvent("groups-filtered",{detail:g,bubbles:!0,composed:!0}))}function u(){return o.morePerPage>0?T.value>o.perPage+(P.value-1)*o.morePerPage&&!z.value&&S.value.length>0:T.value>P.value*o.perPage&&!z.value&&S.value.length>0}function w(){P.value=P.value+1}const C=ee(()=>o.morePerPage>0?S.value.slice(0,o.perPage+(P.value-1)*o.morePerPage):S.value.slice(0,P.value*o.perPage)),U=ee(()=>u());async function D(){const g=`${r.value}/api/people-groups/list?fields=name,slug,wagf_region,wagf_block,country_code,rop1,religion,has_photo,image_url,adopted_by_churches,imb_alternate_name,engagement_status,people_committed,primary_language,imb_reg_of_people_2,imb_reg_of_people_25,imb_gsec,imb_language_family&lang=${i.value}`;z.value=!0,B.value=!1;try{const k=await fetch(g);if(!k.ok)throw new Error(`HTTP ${k.status}`);const N=await k.json(),q=Array.isArray(N.posts)?N.posts:[],J=await ll(q,o.profileConfig);T.value=J===q?N.total:J.length,h.value=J,$(),E()}catch(k){console.error("[people-groups-grid] fetch error:",k),B.value=!0,h.value=[],z.value=!1}}Qe(()=>[o.query,Me.value,F.value,I.value],()=>{P.value=1,E()});function y(g){const k=new Set;for(const N of h.value||[]){const q=St(N,g),J=q&&typeof q=="object"?q.label:q;typeof J=="string"&&J&&k.add(J)}return[...k].sort()}return ho(()=>{const g=j();g&&(g.__vocabulary=y),typeof window<"u"&&(window.__peopleGroupsGridVocabulary=y),p(),D()}),(g,k)=>{var N,q,J,oe;return ae(),re("div",Cf,[F.value||I.value?(ae(),re("div",{key:0,id:"filters",class:"filters",style:Tt(a.value)},[F.value?(ae(),re("div",Ef,[he(nl,{"model-value":V.value,placeholder:x.value.search||"Search people groups…","aria-label":x.value.search||"Search people groups","max-width":"480px",onSearch:xe},null,8,["model-value","placeholder","aria-label"]),I.value?(ae(),re("button",{key:0,class:"filter-toggle pgg-exact",type:"button","data-active":te.value.exact?"":void 0,onClick:gt},$e(x.value.exact_filter||"Exact"),9,Pf)):Pe("",!0)])):Pe("",!0),I.value?(ae(),re("button",{key:1,class:"filters__toggle",type:"button","aria-expanded":ce.value,onClick:rt},[k[1]||(k[1]=ne("svg",{class:"filters__toggle-icon",width:"13",height:"13",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[ne("path",{d:"M1.5 2.5h9M3 6h6M4.5 9.5h3",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round"})],-1)),Ft(" "+$e(ce.value?x.value.hide_filters||"Hide Filters":x.value.show_filters||"Show Filters")+" ",1),se.value?(ae(),re("span",Rf,$e(se.value),1)):Pe("",!0),k[2]||(k[2]=ne("svg",{width:"12",height:"12",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg"},[ne("path",{d:"M2 4l4 4 4-4",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],8,Mf)):Pe("",!0),I.value&&ce.value?(ae(),re("div",Nf,[he(Xt,{label:x.value.wagf_region||"Region",name:"wagf_region",options:G.value.wagf_region||[],value:((N=te.value.wagf_region)==null?void 0:N.value)??"",placeholder:x.value.type_to_search||"Type to search...",onFilterChange:De,onFilterClear:We},null,8,["label","options","value","placeholder"]),he(Xt,{label:x.value.wagf_block||"Bloc",name:"wagf_block",options:G.value.wagf_block||[],value:((q=te.value.wagf_block)==null?void 0:q.value)??"",placeholder:x.value.type_to_search||"Type to search...",onFilterChange:De,onFilterClear:We},null,8,["label","options","value","placeholder"]),he(Xt,{label:x.value.rop1||"People Group",name:"rop1",options:G.value.rop1||[],value:((J=te.value.rop1)==null?void 0:J.value)??"",placeholder:x.value.type_to_search||"Type to search...",onFilterChange:De,onFilterClear:We},null,8,["label","options","value","placeholder"]),he(Xt,{label:x.value.religion||"Religion",name:"religion",options:G.value.religion||[],value:((oe=te.value.religion)==null?void 0:oe.value)??"",placeholder:x.value.type_to_search||"Type to search...",onFilterChange:De,onFilterClear:We},null,8,["label","options","value","placeholder"])])):Pe("",!0),I.value&&le.value>0?(ae(),re("div",Ff,[(ae(!0),re(Le,null,Io(te.value,(X,Ee)=>(ae(),re("span",{key:Ee,class:"filter-chip"},[Ft($e(X.label)+" ",1),ne("button",{class:"filter-chip__remove",type:"button",onClick:Re=>Ge(String(Ee))},"×",8,Of)]))),128)),ne("button",{class:"filters__clear-all",type:"button",onClick:dt},$e(x.value.clear_all||"Clear All"),1)])):Pe("",!0)],4)):Pe("",!0),ne("div",If,[v.value||Ae.value?(ae(),re("div",Df,[ne("div",zf,[z.value?(ae(),re("span",Hf," ")):(ae(),re(Le,{key:0},[Ft($e(Ae.value&&!v.value?(x.value.showing||"Showing")+" "+nt(ul)(T.value):(x.value.total||"Total")+": "+nt(ul)(T.value)),1)],64))])])):Pe("",!0),ne("div",jf,[ne("label",Bf,[ne("span",null,$e(x.value.cards_per_row),1),rc(ne("select",{"onUpdate:modelValue":k[0]||(k[0]=X=>A.value=X),"aria-label":x.value.cards_per_row},[(ae(),re(Le,null,Io(f,X=>ne("option",{key:X,value:X},$e(X==="auto"?x.value.cards_per_row_auto:X),9,qf)),64))],8,Uf),[[Fu,A.value]])])]),ne("div",{id:"results",class:"grid uupgs-list",style:Tt(O.value)},[(ae(!0),re(Le,null,Io(C.value,X=>(ae(),re("div",{key:X.slug,class:"card uupg__card"},[X.image_url?(ae(),re("img",{key:0,class:"uupg__image",src:X.image_url,alt:X.name},null,8,Vf)):Pe("",!0),ne("div",Wf,[ne("h3",{class:"uupg__name",innerHTML:X.name},null,8,Gf),X.country_code?(ae(),re("p",Kf,[ne("a",{class:"uupg__country-link",href:`${d.value}../countries/${nt(kf)(X.country_code.value,X.country_code.label)}`},[ne("span",{innerHTML:X.country_label?X.country_label:X.country_code.label},null,8,Yf)],8,Xf),X.rop1?(ae(),re(Le,{key:0},[k[3]||(k[3]=Ft(" (",-1)),ne("span",{innerHTML:X.rop1_label?X.rop1_label:X.rop1.label},null,8,Jf),k[4]||(k[4]=Ft(")",-1))],64)):Pe("",!0)])):Pe("",!0),X.matches?(ae(!0),re(Le,{key:1},Io(X.matches,(Ee,Re)=>(ae(),re("p",{key:Re,class:"uupg__match"},[ne("strong",null,$e(Ee.key),1),k[5]||(k[5]=Ft(": ",-1)),ne("span",{innerHTML:Ee.label},null,8,Zf)]))),128)):Pe("",!0)]),X.location_description?(ae(),re("p",Qf,$e(X.location_description),1)):Pe("",!0),ne("a",{class:"uupg__more-button",href:`${d.value}${X.slug}`},$e(x.value.full_profile||"Full Profile"),9,e$)]))),128)),z.value?(ae(),re("div",t$,$e(x.value.loading||"Loading…"),1)):B.value?(ae(),re("div",o$,$e(x.value.load_failed||"People-group data could not be loaded. This is a connection problem, not your filter."),1)):C.value.length?Pe("",!0):(ae(),re("div",n$,$e(x.value.no_results||"No people groups match this filter."),1))],4),U.value?(ae(),re("button",{key:1,class:"pgg-loadmore",type:"button",onClick:w},$e(x.value.load_more||"Load More"),1)):Pe("",!0)])])}}}),[["styles",[Tf]]]),s$=":host{display:block;width:100%;height:100%;min-height:480px}.bp-root{--bg: #f3f3f1;--line: #d1d4cd;--ink: #3b463d;--mut: #6d766e;display:flex;flex-direction:column;width:100%;height:100%;min-height:inherit;overflow:hidden;background:var(--bg);color:var(--ink);box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.bp-body{flex:1;min-height:0;position:relative;overflow:auto}.bp-foot{flex:none;padding:8px 12px;font-size:11px;color:var(--mut);text-align:center;border-top:1px solid var(--line)}",a$={class:"bp-body"},r$={class:"bp-foot"},i$=Ms(en({__name:"big-picture",props:{profileConfig:{type:String,default:""}},setup(e){const t=e,o=ee(()=>{if(!t.profileConfig)return{};try{return JSON.parse(t.profileConfig)||{}}catch{return{}}}),n=ee(()=>o.value.accent||"#8b5cf6"),s=ee(()=>{const M=String(o.value.locale||o.value.lang||"").split("-")[0].toLowerCase();return Un.includes(M)?M:""});uc(()=>{s.value&&V_(s.value)});const a=ee(()=>o.value.title||At("dashboard.bp_title",s.value||void 0)||"Big Picture — Unified Research Dashboard"),r=ee(()=>{const M=s.value||ea()||Qs();return el.has(M)?"rtl":"ltr"}),i=so();function l(){var M,F,I,v;try{const h=(v=(I=(F=(M=i==null?void 0:i.proxy)==null?void 0:M.$el)==null?void 0:F.getRootNode)==null?void 0:I.call(F))==null?void 0:v.host;h&&r.value==="rtl"&&h.setAttribute("dir","rtl")}catch{}}ho(l),Qe(r,l);const p=ee(()=>{const M={};return o.value.list&&(M.list=o.value.list),s.value&&(M.lang=s.value),Object.keys(M).length?JSON.stringify(M):""}),d=ee(()=>o.value.prayBaseUrl||""),f=ee(()=>o.value.languageCode||""),b=po({query:"",wagfRegion:"",wagfBlock:"",rop1:"",religion:""}),A=be(null);function O(M){const F=M&&typeof M=="object"?M:{};b.query=F.query||"",b.wagfRegion=F.wagfRegion||"",b.wagfBlock=F.wagfBlock||"",b.rop1=F.rop1||"",b.religion=F.religion||""}function x(M){const F=M&&typeof M=="object"?M:{};A.value=typeof F.total=="number"?F.total:null}return(M,F)=>(ae(),re("div",{class:"bp-root",style:Tt({"--accent":n.value})},[he(cl,{title:a.value,accent:n.value,count:A.value,"pray-base-url":d.value,"language-code":f.value,"profile-config":p.value,onResearchFilter:O},null,8,["title","accent","count","pray-base-url","language-code","profile-config"]),ne("div",a$,[he(gl,{query:b.query,"wagf-region":b.wagfRegion,"wagf-block":b.wagfBlock,rop1:b.rop1,religion:b.religion,"show-search":!1,"show-filters":!1,"show-total":!1,"pray-base-url":d.value,"language-code":f.value,"profile-config":p.value,onGroupsFiltered:x},null,8,["query","wagf-region","wagf-block","rop1","religion","pray-base-url","language-code","profile-config"])]),ne("footer",r$,$e(nt(At)("dashboard.bp_subtitle")||"Search and filter the world's people groups · least-reached shown first"),1)],4))}},[["styles",[s$]]])),l$=Ms(cl),c$=Ms(gl);typeof customElements<"u"&&(customElements.get("bp-big-picture")||customElements.define("bp-big-picture",i$),customElements.get("bp-research-header")||customElements.define("bp-research-header",l$),customElements.get("people-groups-grid")||customElements.define("people-groups-grid",c$))})(); + */const L_="9.14.5";function C_(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Ko().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Ko().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Ko().__INTLIFY_PROD_DEVTOOLS__=!1)}const E_=a_.__EXTEND_POINT__,Ht=Dn(E_);Ht(),Ht(),Ht(),Ht(),Ht(),Ht(),Ht(),Ht(),Ht();const Wi=At.__EXTEND_POINT__,Ke=Dn(Wi),jt={UNEXPECTED_RETURN_TYPE:Wi,INVALID_ARGUMENT:Ke(),MUST_BE_CALL_SETUP_TOP:Ke(),NOT_INSTALLED:Ke(),NOT_AVAILABLE_IN_LEGACY_MODE:Ke(),REQUIRED_VALUE:Ke(),INVALID_VALUE:Ke(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:Ke(),NOT_INSTALLED_WITH_PROVIDE:Ke(),UNEXPECTED_ERROR:Ke(),NOT_COMPATIBLE_LEGACY_VUE_I18N:Ke(),BRIDGE_SUPPORT_VUE_2_ONLY:Ke(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:Ke(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:Ke(),__EXTEND_POINT__:Ke()};function Kt(e,...t){return vo(e,null,void 0)}const Xs=ao("__translateVNode"),Ys=ao("__datetimeParts"),Js=ao("__numberParts"),P_=ao("__setPluralRules"),Gi=ao("__injectWithOption"),Zs=ao("__dispose");function Qo(e){if(!ge(e)||xt(e))return e;for(const t in e)if(dt(e,t))if(!t.includes("."))ge(e[t])&&Qo(e[t]);else{const o=t.split("."),n=o.length-1;let s=e,a=!1;for(let r=0;r{if("locale"in i&&"resource"in i){const{locale:l,resource:p}=i;l?(r[l]=r[l]||he(),Hn(p,r[l])):Hn(p,r)}else K(i)&&Hn(JSON.parse(i),r)}),s==null&&a)for(const i in r)dt(r,i)&&Qo(r[i]);return r}function Ki(e){return e.type}function M_(e,t,o){let n=ge(t.messages)?t.messages:he();"__i18nGlobal"in o&&(n=Qs(e.locale.value,{messages:n,__i18n:o.__i18nGlobal}));const s=Object.keys(n);s.length&&s.forEach(a=>{e.mergeLocaleMessage(a,n[a])});{if(ge(t.datetimeFormats)){const a=Object.keys(t.datetimeFormats);a.length&&a.forEach(r=>{e.mergeDateTimeFormat(r,t.datetimeFormats[r])})}if(ge(t.numberFormats)){const a=Object.keys(t.numberFormats);a.length&&a.forEach(r=>{e.mergeNumberFormat(r,t.numberFormats[r])})}}}function Xi(e){return ye(jo,null,e,0)}const Yi="__INTLIFY_META__",Ji=()=>[],R_=()=>!1;let Zi=0;function Qi(e){return(t,o,n,s)=>e(o,n,so()||void 0,s)}const N_=()=>{const e=so();let t=null;return e&&(t=Ki(e)[Yi])?{[Yi]:t}:null};function F_(e={},t){const{__root:o,__injectWithOption:n}=e,s=o===void 0,a=e.flatJson,r=Zr?xe:Ia,i=!!e.translateExistCompatible;let l=Ae(e.inheritLocale)?e.inheritLocale:!0;const p=r(o&&l?o.locale.value:K(e.locale)?e.locale:Jo),d=r(o&&l?o.fallbackLocale.value:K(e.fallbackLocale)||Me(e.fallbackLocale)||ue(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:p.value),_=r(Qs(p.value,e)),m=r(ue(e.datetimeFormats)?e.datetimeFormats:{[p.value]:{}}),k=r(ue(e.numberFormats)?e.numberFormats:{[p.value]:{}});let O=o?o.missingWarn:Ae(e.missingWarn)||yo(e.missingWarn)?e.missingWarn:!0,P=o?o.fallbackWarn:Ae(e.fallbackWarn)||yo(e.fallbackWarn)?e.fallbackWarn:!0,F=o?o.fallbackRoot:Ae(e.fallbackRoot)?e.fallbackRoot:!0,A=!!e.fallbackFormat,j=Te(e.missing)?e.missing:null,y=Te(e.missing)?Qi(e.missing):null,$=Te(e.postTranslation)?e.postTranslation:null,T=o?o.warnHtmlMessage:Ae(e.warnHtmlMessage)?e.warnHtmlMessage:!0,x=!!e.escapeParameter;const M=o?o.modifiers:ue(e.modifiers)?e.modifiers:{};let H=e.pluralRules||o&&o.pluralRules,D;D=(()=>{s&&Ri(null);const v={version:L_,locale:p.value,fallbackLocale:d.value,messages:_.value,modifiers:M,pluralRules:H,missing:y===null?void 0:y,missingWarn:O,fallbackWarn:P,fallbackFormat:A,unresolving:!0,postTranslation:$===null?void 0:$,warnHtmlMessage:T,escapeParameter:x,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};v.datetimeFormats=m.value,v.numberFormats=k.value,v.__datetimeFormatters=ue(D)?D.__datetimeFormatters:void 0,v.__numberFormatters=ue(D)?D.__numberFormatters:void 0;const C=h_(v);return s&&Ri(C),C})(),Zo(D,p.value,d.value);function X(){return[p.value,d.value,_.value,m.value,k.value]}const V=oe({get:()=>p.value,set:v=>{p.value=v,D.locale=p.value}}),J=oe({get:()=>d.value,set:v=>{d.value=v,D.fallbackLocale=d.value,Zo(D,p.value,v)}}),Re=oe(()=>_.value),re=oe(()=>m.value),pe=oe(()=>k.value);function se(){return Te($)?$:null}function ee(v){$=v,D.postTranslation=v}function Ce(){return j}function Xe(v){v!==null&&(y=Qi(v)),j=v,D.missing=y}const ve=(v,C,Y,b,E,U)=>{X();let W;try{__INTLIFY_PROD_DEVTOOLS__,s||(D.fallbackContext=o?$_():void 0),W=v(D)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(D.fallbackContext=void 0)}if(Y!=="translate exists"&&Fe(W)&&W===Un||Y==="translate exists"&&!W){const[ae,fe]=C();return o&&F?b(o):E(ae)}else{if(U(W))return W;throw Kt(jt.UNEXPECTED_RETURN_TYPE)}};function Le(...v){return ve(C=>Reflect.apply(Ii,null,[C,...v]),()=>Ws(...v),"translate",C=>Reflect.apply(C.t,C,[...v]),C=>C,C=>K(C))}function it(...v){const[C,Y,b]=v;if(b&&!ge(b))throw Kt(jt.INVALID_ARGUMENT);return Le(C,Y,ze({resolvedMessage:!0},b||{}))}function Ye(...v){return ve(C=>Reflect.apply(Hi,null,[C,...v]),()=>Gs(...v),"datetime format",C=>Reflect.apply(C.d,C,[...v]),()=>Si,C=>K(C))}function lt(...v){return ve(C=>Reflect.apply(Ui,null,[C,...v]),()=>Ks(...v),"number format",C=>Reflect.apply(C.n,C,[...v]),()=>Si,C=>K(C))}function He(v){return v.map(C=>K(C)||Fe(C)||Ae(C)?Xi(String(C)):C)}const tt={normalize:He,interpolate:v=>v,type:"vnode"};function Tt(...v){return ve(C=>{let Y;const b=C;try{b.processor=tt,Y=Reflect.apply(Ii,null,[b,...v])}finally{b.processor=null}return Y},()=>Ws(...v),"translate",C=>C[Xs](...v),C=>[Xi(C)],C=>Me(C))}function Ze(...v){return ve(C=>Reflect.apply(Ui,null,[C,...v]),()=>Ks(...v),"number format",C=>C[Js](...v),Ji,C=>K(C)||Me(C))}function Qe(...v){return ve(C=>Reflect.apply(Hi,null,[C,...v]),()=>Gs(...v),"datetime format",C=>C[Ys](...v),Ji,C=>K(C)||Me(C))}function g(v){H=v,D.pluralRules=H}function h(v,C){return ve(()=>{if(!v)return!1;const Y=K(C)?C:p.value,b=N(Y),E=D.messageResolver(b,v);return i?E!=null:xt(E)||rt(E)||K(E)},()=>[v],"translate exists",Y=>Reflect.apply(Y.te,Y,[v,C]),R_,Y=>Ae(Y))}function f(v){let C=null;const Y=xi(D,d.value,p.value);for(let b=0;b{l&&(p.value=v,D.locale=v,Zo(D,p.value,d.value))}),We(o.fallbackLocale,v=>{l&&(d.value=v,D.fallbackLocale=v,Zo(D,p.value,d.value))}));const I={id:Zi,locale:V,fallbackLocale:J,get inheritLocale(){return l},set inheritLocale(v){l=v,v&&o&&(p.value=o.locale.value,d.value=o.fallbackLocale.value,Zo(D,p.value,d.value))},get availableLocales(){return Object.keys(_.value).sort()},messages:Re,get modifiers(){return M},get pluralRules(){return H||{}},get isGlobal(){return s},get missingWarn(){return O},set missingWarn(v){O=v,D.missingWarn=O},get fallbackWarn(){return P},set fallbackWarn(v){P=v,D.fallbackWarn=P},get fallbackRoot(){return F},set fallbackRoot(v){F=v},get fallbackFormat(){return A},set fallbackFormat(v){A=v,D.fallbackFormat=A},get warnHtmlMessage(){return T},set warnHtmlMessage(v){T=v,D.warnHtmlMessage=v},get escapeParameter(){return x},set escapeParameter(v){x=v,D.escapeParameter=v},t:Le,getLocaleMessage:N,setLocaleMessage:R,mergeLocaleMessage:B,getPostTranslationHandler:se,setPostTranslationHandler:ee,getMissingHandler:Ce,setMissingHandler:Xe,[P_]:g};return I.datetimeFormats=re,I.numberFormats=pe,I.rt=it,I.te=h,I.tm=S,I.d=Ye,I.n=lt,I.getDateTimeFormat=z,I.setDateTimeFormat=c,I.mergeDateTimeFormat=u,I.getNumberFormat=w,I.setNumberFormat=L,I.mergeNumberFormat=q,I[Gi]=n,I[Xs]=Tt,I[Ys]=Qe,I[Js]=Ze,I}const ea={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function O_({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,s)=>[...n,...s.type===Pe?s.children:[s]],[]):t.reduce((o,n)=>{const s=e[n];return s&&(o[n]=s()),o},he())}function el(e){return Pe}ze({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Fe(e)||!isNaN(e)}},ea);function I_(e){return Me(e)&&!K(e[0])}function tl(e,t,o,n){const{slots:s,attrs:a}=t;return()=>{const r={part:!0};let i=he();e.locale&&(r.locale=e.locale),K(e.format)?r.key=e.format:ge(e.format)&&(K(e.format.key)&&(r.key=e.format.key),i=Object.keys(e.format).reduce((m,k)=>o.includes(k)?ze(he(),m,{[k]:e.format[k]}):m,he()));const l=n(e.value,r,i);let p=[r.key];Me(l)?p=l.map((m,k)=>{const O=s[m.type],P=O?O({[m.type]:m.value,index:k,parts:l}):[m.value];return I_(P)&&(P[0].key=`${m.type}-${k}`),P}):K(l)&&(p=[l]);const d=ze(he(),a),_=K(e.tag)||ge(e.tag)?e.tag:el();return Nr(_,d,p)}}ze({value:{type:Number,required:!0},format:{type:[String,Object]}},ea),ze({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},ea);const D_=ao("global-vue-i18n");function Vn(e={}){const t=so();if(t==null)throw Kt(jt.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Kt(jt.NOT_INSTALLED);const o=z_(t),n=j_(o),s=Ki(t),a=H_(e,s);if(__VUE_I18N_LEGACY_API__&&o.mode==="legacy"&&!e.__useComponent){if(!o.allowComposition)throw Kt(jt.NOT_AVAILABLE_IN_LEGACY_MODE);return V_(t,a,n,e)}if(a==="global")return M_(n,e,s),n;if(a==="parent"){let l=B_(o,t,e.__useComponent);return l==null&&(l=n),l}const r=o;let i=r.__getInstance(t);if(i==null){const l=ze({},e);"__i18n"in s&&(l.__i18n=s.__i18n),n&&(l.__root=n),i=F_(l),r.__composerExtend&&(i[Zs]=r.__composerExtend(i)),q_(r,t,i),r.__setInstance(t,i)}return i}function z_(e){{const t=No(e.isCE?D_:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Kt(e.isCE?jt.NOT_INSTALLED_WITH_PROVIDE:jt.UNEXPECTED_ERROR);return t}}function H_(e,t){return In(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function j_(e){return e.mode==="composition"?e.global:e.global.__composer}function B_(e,t,o=!1){let n=null;const s=t.root;let a=U_(t,o);for(;a!=null;){const r=e;if(e.mode==="composition")n=r.__getInstance(a);else if(__VUE_I18N_LEGACY_API__){const i=r.__getInstance(a);i!=null&&(n=i.__composer,o&&n&&!n[Gi]&&(n=null))}if(n!=null||s===a)break;a=a.parent}return n}function U_(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function q_(e,t,o){Io(()=>{},t),Sn(()=>{const n=o;e.__deleteInstance(t);const s=n[Zs];s&&(s(),delete n[Zs])},t)}function V_(e,t,o,n={}){const s=t==="local",a=Ia(null);if(s&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Kt(jt.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const r=Ae(n.inheritLocale)?n.inheritLocale:!K(n.locale),i=xe(!s||r?o.locale.value:K(n.locale)?n.locale:Jo),l=xe(!s||r?o.fallbackLocale.value:K(n.fallbackLocale)||Me(n.fallbackLocale)||ue(n.fallbackLocale)||n.fallbackLocale===!1?n.fallbackLocale:i.value),p=xe(Qs(i.value,n)),d=xe(ue(n.datetimeFormats)?n.datetimeFormats:{[i.value]:{}}),_=xe(ue(n.numberFormats)?n.numberFormats:{[i.value]:{}}),m=s?o.missingWarn:Ae(n.missingWarn)||yo(n.missingWarn)?n.missingWarn:!0,k=s?o.fallbackWarn:Ae(n.fallbackWarn)||yo(n.fallbackWarn)?n.fallbackWarn:!0,O=s?o.fallbackRoot:Ae(n.fallbackRoot)?n.fallbackRoot:!0,P=!!n.fallbackFormat,F=Te(n.missing)?n.missing:null,A=Te(n.postTranslation)?n.postTranslation:null,j=s?o.warnHtmlMessage:Ae(n.warnHtmlMessage)?n.warnHtmlMessage:!0,y=!!n.escapeParameter,$=s?o.modifiers:ue(n.modifiers)?n.modifiers:{},T=n.pluralRules||s&&o.pluralRules;function x(){return[i.value,l.value,p.value,d.value,_.value]}const M=oe({get:()=>a.value?a.value.locale.value:i.value,set:f=>{a.value&&(a.value.locale.value=f),i.value=f}}),H=oe({get:()=>a.value?a.value.fallbackLocale.value:l.value,set:f=>{a.value&&(a.value.fallbackLocale.value=f),l.value=f}}),D=oe(()=>a.value?a.value.messages.value:p.value),ce=oe(()=>d.value),X=oe(()=>_.value);function V(){return a.value?a.value.getPostTranslationHandler():A}function J(f){a.value&&a.value.setPostTranslationHandler(f)}function Re(){return a.value?a.value.getMissingHandler():F}function re(f){a.value&&a.value.setMissingHandler(f)}function pe(f){return x(),f()}function se(...f){return a.value?pe(()=>Reflect.apply(a.value.t,null,[...f])):pe(()=>"")}function ee(...f){return a.value?Reflect.apply(a.value.rt,null,[...f]):""}function Ce(...f){return a.value?pe(()=>Reflect.apply(a.value.d,null,[...f])):pe(()=>"")}function Xe(...f){return a.value?pe(()=>Reflect.apply(a.value.n,null,[...f])):pe(()=>"")}function ve(f){return a.value?a.value.tm(f):{}}function Le(f,S){return a.value?a.value.te(f,S):!1}function it(f){return a.value?a.value.getLocaleMessage(f):{}}function Ye(f,S){a.value&&(a.value.setLocaleMessage(f,S),p.value[f]=S)}function lt(f,S){a.value&&a.value.mergeLocaleMessage(f,S)}function He(f){return a.value?a.value.getDateTimeFormat(f):{}}function Je(f,S){a.value&&(a.value.setDateTimeFormat(f,S),d.value[f]=S)}function tt(f,S){a.value&&a.value.mergeDateTimeFormat(f,S)}function Tt(f){return a.value?a.value.getNumberFormat(f):{}}function Ze(f,S){a.value&&(a.value.setNumberFormat(f,S),_.value[f]=S)}function Qe(f,S){a.value&&a.value.mergeNumberFormat(f,S)}const g={get id(){return a.value?a.value.id:-1},locale:M,fallbackLocale:H,messages:D,datetimeFormats:ce,numberFormats:X,get inheritLocale(){return a.value?a.value.inheritLocale:r},set inheritLocale(f){a.value&&(a.value.inheritLocale=f)},get availableLocales(){return a.value?a.value.availableLocales:Object.keys(p.value)},get modifiers(){return a.value?a.value.modifiers:$},get pluralRules(){return a.value?a.value.pluralRules:T},get isGlobal(){return a.value?a.value.isGlobal:!1},get missingWarn(){return a.value?a.value.missingWarn:m},set missingWarn(f){a.value&&(a.value.missingWarn=f)},get fallbackWarn(){return a.value?a.value.fallbackWarn:k},set fallbackWarn(f){a.value&&(a.value.missingWarn=f)},get fallbackRoot(){return a.value?a.value.fallbackRoot:O},set fallbackRoot(f){a.value&&(a.value.fallbackRoot=f)},get fallbackFormat(){return a.value?a.value.fallbackFormat:P},set fallbackFormat(f){a.value&&(a.value.fallbackFormat=f)},get warnHtmlMessage(){return a.value?a.value.warnHtmlMessage:j},set warnHtmlMessage(f){a.value&&(a.value.warnHtmlMessage=f)},get escapeParameter(){return a.value?a.value.escapeParameter:y},set escapeParameter(f){a.value&&(a.value.escapeParameter=f)},t:se,getPostTranslationHandler:V,setPostTranslationHandler:J,getMissingHandler:Re,setMissingHandler:re,rt:ee,d:Ce,n:Xe,tm:ve,te:Le,getLocaleMessage:it,setLocaleMessage:Ye,mergeLocaleMessage:lt,getDateTimeFormat:He,setDateTimeFormat:Je,mergeDateTimeFormat:tt,getNumberFormat:Tt,setNumberFormat:Ze,mergeNumberFormat:Qe};function h(f){f.locale.value=i.value,f.fallbackLocale.value=l.value,Object.keys(p.value).forEach(S=>{f.mergeLocaleMessage(S,p.value[S])}),Object.keys(d.value).forEach(S=>{f.mergeDateTimeFormat(S,d.value[S])}),Object.keys(_.value).forEach(S=>{f.mergeNumberFormat(S,_.value[S])}),f.escapeParameter=y,f.fallbackFormat=P,f.fallbackRoot=O,f.fallbackWarn=k,f.missingWarn=m,f.warnHtmlMessage=j}return Qa(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Kt(jt.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const f=a.value=e.proxy.$i18n.__composer;t==="global"?(i.value=f.locale.value,l.value=f.fallbackLocale.value,p.value=f.messages.value,d.value=f.datetimeFormats.value,_.value=f.numberFormats.value):s&&h(f)}),g}if(C_(),p_(k_),d_(Vg),g_(xi),__INTLIFY_PROD_DEVTOOLS__){const e=Ko();e.__INTLIFY__=!0,e_(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const W_=Object.assign({"./locales/ar/aria.json":Uu,"./locales/ar/buttons.json":qu,"./locales/ar/controls.json":Vu,"./locales/ar/dashboard.json":Wu,"./locales/ar/grid.json":Gu,"./locales/ar/lists.json":Ku,"./locales/ar/messages.json":Xu,"./locales/ar/options.json":Yu,"./locales/ar/religion.json":Ju,"./locales/ar/search.json":Zu,"./locales/de/aria.json":Qu,"./locales/de/buttons.json":ep,"./locales/de/controls.json":tp,"./locales/de/dashboard.json":op,"./locales/de/grid.json":np,"./locales/de/lists.json":sp,"./locales/de/messages.json":ap,"./locales/de/options.json":rp,"./locales/de/religion.json":ip,"./locales/de/search.json":lp,"./locales/en/aria.json":cp,"./locales/en/buttons.json":up,"./locales/en/controls.json":pp,"./locales/en/dashboard.json":dp,"./locales/en/grid.json":gp,"./locales/en/lists.json":_p,"./locales/en/messages.json":fp,"./locales/en/options.json":$p,"./locales/en/religion.json":hp,"./locales/en/search.json":mp,"./locales/es/aria.json":bp,"./locales/es/buttons.json":yp,"./locales/es/controls.json":vp,"./locales/es/dashboard.json":wp,"./locales/es/grid.json":kp,"./locales/es/lists.json":xp,"./locales/es/messages.json":Ap,"./locales/es/options.json":Sp,"./locales/es/religion.json":Tp,"./locales/es/search.json":Lp,"./locales/fr/aria.json":Cp,"./locales/fr/buttons.json":Ep,"./locales/fr/controls.json":Pp,"./locales/fr/dashboard.json":Mp,"./locales/fr/grid.json":Rp,"./locales/fr/lists.json":Np,"./locales/fr/messages.json":Fp,"./locales/fr/options.json":Op,"./locales/fr/religion.json":Ip,"./locales/fr/search.json":Dp,"./locales/hi/aria.json":zp,"./locales/hi/buttons.json":Hp,"./locales/hi/controls.json":jp,"./locales/hi/dashboard.json":Bp,"./locales/hi/grid.json":Up,"./locales/hi/lists.json":qp,"./locales/hi/messages.json":Vp,"./locales/hi/options.json":Wp,"./locales/hi/religion.json":Gp,"./locales/hi/search.json":Kp,"./locales/it/aria.json":Xp,"./locales/it/buttons.json":Yp,"./locales/it/controls.json":Jp,"./locales/it/dashboard.json":Zp,"./locales/it/grid.json":Qp,"./locales/it/lists.json":ed,"./locales/it/messages.json":td,"./locales/it/options.json":od,"./locales/it/religion.json":nd,"./locales/it/search.json":sd,"./locales/pt/aria.json":ad,"./locales/pt/buttons.json":rd,"./locales/pt/controls.json":id,"./locales/pt/dashboard.json":ld,"./locales/pt/grid.json":cd,"./locales/pt/lists.json":ud,"./locales/pt/messages.json":pd,"./locales/pt/options.json":dd,"./locales/pt/religion.json":gd,"./locales/pt/search.json":_d,"./locales/ro/aria.json":fd,"./locales/ro/buttons.json":$d,"./locales/ro/controls.json":hd,"./locales/ro/dashboard.json":md,"./locales/ro/grid.json":bd,"./locales/ro/lists.json":yd,"./locales/ro/messages.json":vd,"./locales/ro/options.json":wd,"./locales/ro/religion.json":kd,"./locales/ro/search.json":xd,"./locales/ru/aria.json":Ad,"./locales/ru/buttons.json":Sd,"./locales/ru/controls.json":Td,"./locales/ru/dashboard.json":Ld,"./locales/ru/grid.json":Cd,"./locales/ru/lists.json":Ed,"./locales/ru/messages.json":Pd,"./locales/ru/options.json":Md,"./locales/ru/religion.json":Rd,"./locales/ru/search.json":Nd,"./locales/zh/aria.json":Fd,"./locales/zh/buttons.json":Od,"./locales/zh/controls.json":Id,"./locales/zh/dashboard.json":Dd,"./locales/zh/grid.json":zd,"./locales/zh/lists.json":Hd,"./locales/zh/messages.json":jd,"./locales/zh/options.json":Bd,"./locales/zh/religion.json":Ud,"./locales/zh/search.json":qd}),en={};for(const[e,t]of Object.entries(W_)){const o=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!o)continue;const[,n,s]=o;en[n]??(en[n]={}),en[n][s]=t}const Wn=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"],ol=new Set(["ar"]);function nl(){try{const e=new URLSearchParams(window.location.search);return(e.get("lang")||e.get("locale")||"").split("-")[0].toLowerCase()}catch{return""}}function ta(){var n;const e=nl();if(Wn.includes(e))return e;const o=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return Wn.includes(o)?o:"en"}const sl="__DOXA_PAGE_LOCALE";function G_(e){const t=String(e||"").split("-")[0].toLowerCase();if(Wn.includes(t))try{typeof window<"u"&&(window[sl]=t)}catch{}}function oa(){try{return typeof window<"u"&&window[sl]||""}catch{return""}}function St(e,t){const o=s=>{let a=en[s];for(const r of String(e).split(".")){if(!a||typeof a!="object")return;a=a[r]}return typeof a=="string"?a:void 0},n=t||oa()||ta();return o(n)??o("en")}const K_=".search-box{position:relative;display:flex;align-items:center;margin:0 auto;width:100%;color:var(--dx-muted, #6d766e)}.search-box .search-icon{position:absolute;left:12px;pointer-events:none}.search-box input{width:100%;padding:10px 12px 10px 38px;font-size:.95rem;color:var(--dx-text, #3b463d);background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:10px;outline:none;box-sizing:border-box}.search-box input:focus{border-color:var(--dx-accent, #92b195);box-shadow:0 0 0 2px var(--dx-accent-weak, rgba(146, 177, 149, .18))}",tn=(e,t)=>{const o=e.__vccOpts||e;for(const[n,s]of t)o[n]=s;return o},X_=["value","placeholder","aria-label"],al=tn({__name:"SearchBar",props:{modelValue:{type:String,default:""},placeholder:{type:String,default:"Search…"},ariaLabel:{type:String,default:"Search"},maxWidth:{type:String,default:""}},emits:["update:modelValue","search"],setup(e,{emit:t}){const o=e,n=t,s=oe(()=>o.maxWidth?{maxWidth:o.maxWidth}:{});function a(r){const i=r.target.value??"";n("update:modelValue",i),n("search",{value:i})}return(r,i)=>(ie(),le("div",{class:"search-box",style:Lt(s.value)},[i[0]||(i[0]=ne("svg",{class:"search-icon",width:"18",height:"18",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[ne("circle",{cx:"11",cy:"11",r:"7",fill:"none",stroke:"currentColor","stroke-width":"2"}),ne("line",{x1:"16.5",y1:"16.5",x2:"21",y2:"21",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round"})],-1)),ne("input",{type:"search",value:e.modelValue,placeholder:e.placeholder,"aria-label":e.ariaLabel,onInput:a},null,40,X_)],4))}},[["styles",[K_]]]);function rl(e,t){return t?String(e).replace(/\{(\w+)\}/g,(o,n)=>t[n]!=null?String(t[n]):o):String(e)}function na(e,t){const o=String(t);return e&&!o.startsWith(`${e}.`)?`${e}.${o}`:o}function Y_(e,t={}){const o=typeof t.fallback=="function"?(n,s)=>rl(t.fallback(na(e,n),s)??n,s):(n,s)=>rl(St(na(e,n))??n,s);try{const n=Vn();return(s,a)=>{const r=na(e,s),i=n.t(r,a||{});return i===r?o(s,a):i}}catch{return o}}const J_=".filter-dropdown{position:relative;flex:0 0 auto;width:var(--dx-filter-w, 128px);min-width:var(--dx-filter-w, 128px);max-width:var(--dx-filter-w, 128px)}@media (max-width: 576px){.filter-dropdown{width:var(--dx-filter-w-sm, 108px);min-width:var(--dx-filter-w-sm, 108px);max-width:var(--dx-filter-w-sm, 108px)}}.filter-dropdown__trigger{width:100%;padding:var(--dx-filter-pad-y, 4px) var(--dx-filter-pad-x, 8px);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:.875rem;color:var(--dx-text, #3b463d);text-align:start;background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;transition:border-color .15s ease}.filter-dropdown__trigger:hover{border-color:var(--dx-accent, #92b195)}.filter-dropdown__trigger[data-active]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));border-color:var(--dx-accent, #92b195)}.filter-dropdown__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-dropdown__chevron{flex-shrink:0;transition:transform .2s ease}.filter-dropdown.is-open .filter-dropdown__chevron{transform:rotate(180deg)}.filter-dropdown__menu{position:fixed;z-index:2147483000;background-color:var(--dx-elevated, #fff);color:var(--dx-text, #3b463d);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;box-shadow:0 4px 12px #0000001f;overflow:hidden;display:flex;flex-direction:column;min-width:160px}.filter-dropdown__search{border:none;border-bottom:1px solid var(--dx-line, #d1d4cd);border-radius:0;padding:6px 12px;width:100%;font-size:.875rem;color:var(--dx-text, #3b463d);background:var(--dx-elevated, #fff);outline:none;box-sizing:border-box}.filter-dropdown__search::placeholder{color:var(--dx-muted, #6d766e)}.filter-dropdown__clear{display:block;width:100%;background:none;border:none;border-bottom:1px solid var(--dx-line, #d1d4cd);padding:6px 12px;font-size:.875rem;color:var(--dx-text, #3b463d);cursor:pointer;text-align:start;text-decoration:underline;text-decoration-color:var(--dx-accent, #92b195);text-underline-offset:3px}.filter-dropdown__clear:hover{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18))}.filter-dropdown__options{flex:1 1 auto;min-height:0;max-height:250px;overflow-y:auto}.filter-dropdown__search,.filter-dropdown__clear{flex:0 0 auto}.filter-dropdown__option{padding:5px 12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.875rem;transition:background-color .1s ease}.filter-dropdown__option[data-selected]{font-weight:700;color:var(--dx-text, #3b463d);box-shadow:inset 3px 0 0 var(--dx-accent, #92b195)}.filter-dropdown__option:hover,.filter-dropdown__option[data-highlighted]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18))}.filter-dropdown__count{color:var(--dx-muted, #6d766e);font-size:.75rem;margin-inline-start:6px}.filter-dropdown__no-options{padding:12px;font-size:.875rem;color:var(--dx-muted, #6d766e);text-align:center}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}",Z_=["data-active","aria-expanded"],Q_={class:"filter-dropdown__label"},ef=["value","placeholder"],tf={class:"filter-dropdown__options"},of={key:0,class:"filter-dropdown__no-options"},nf=["data-highlighted","data-selected","aria-selected","onClick","onMouseenter"],sf={class:"filter-dropdown__count"},Xt=tn({__name:"FilterDropdown",props:{label:{type:String,required:!0},name:{type:String,required:!0},options:{type:Array,default:()=>[]},value:{type:String,default:""},placeholder:{type:String,default:"Type to search..."}},emits:["filter-change","filter-clear"],setup(e,{emit:t}){const o=e,n={"buttons.clearSelection":"Clear selection","buttons.noOptions":"No options found"},s=Y_("",{fallback:X=>n[X]}),a=t,r=xe(!1),i=xe(""),l=xe(-1),p=xe(null),d=xe(null),_=xe(null),m=xe({});function k(X){const V=X.ownerDocument,J=V.createElement("div");J.style.cssText="position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;opacity:0",(X.parentElement||X.getRootNode().body||V.body).appendChild(J);const re=J.getBoundingClientRect();return J.remove(),{x:re.left,y:re.top}}function O(){const X=_.value;if(!X)return;const V=X.getBoundingClientRect(),J=window.innerWidth,Re=window.innerHeight,re=320,pe=4,se=8,Ce=Math.round(Math.min(Math.max(V.width,240),J-se*2)),Xe=V.right>se&&V.leftJ-se?ve=Math.round(Math.max(V.right-Ce,se)):ve=Math.round(Math.max(V.left,se)):ve=Math.round(Math.min(Math.max(V.left,se),J-Ce-se));const Le=Re-V.bottom,it=Le<180&&V.top>Le,Ye=k(X),lt=Math.round(ve-Ye.x);m.value=it?{top:"auto",bottom:`${Math.round(Re-V.top+pe+Ye.y)}px`,left:`${lt}px`,width:`${Ce}px`,maxHeight:`${Math.round(Math.min(re,V.top-pe-se))}px`}:{top:`${Math.round(V.bottom+pe-Ye.y)}px`,bottom:"auto",left:`${lt}px`,width:`${Ce}px`,maxHeight:`${Math.round(Math.min(re,Le-pe-se))}px`}}function P(){r.value&&O()}const F=oe(()=>{if(!i.value)return o.options;const X=i.value.toLowerCase();return o.options.filter(V=>V.label.toLowerCase().includes(X))}),A=oe(()=>o.options.find(X=>X.value===o.value));function j(X){var J;const V=((J=X.composedPath)==null?void 0:J.call(X))??[];p.value&&!V.includes(p.value)&&T()}function y(){r.value?T():$()}function $(){r.value=!0,i.value="",l.value=-1,O(),document.addEventListener("click",j),window.addEventListener("scroll",P,!0),window.addEventListener("resize",P),Mo(()=>{var X;O(),(X=d.value)==null||X.focus()})}function T(){r.value=!1,i.value="",l.value=-1,document.removeEventListener("click",j),window.removeEventListener("scroll",P,!0),window.removeEventListener("resize",P)}function x(X){i.value=X.target.value,l.value=-1}function M(X){const V=F.value;switch(X.key){case"ArrowDown":X.preventDefault(),l.value=Math.min(l.value+1,V.length-1),H();break;case"ArrowUp":X.preventDefault(),l.value=Math.max(l.value-1,0),H();break;case"Enter":{X.preventDefault();const J=V[l.value];J&&D(J);break}case"Escape":X.preventDefault(),T();break}}function H(){Mo(()=>{var V;const X=(V=p.value)==null?void 0:V.querySelector(".filter-dropdown__option[data-highlighted]");X==null||X.scrollIntoView({block:"nearest"})})}function D(X){a("filter-change",{name:o.name,value:X.value,label:X.label,type:X.type}),T()}function ce(){a("filter-clear",{name:o.name}),T()}return er(()=>{document.removeEventListener("click",j),window.removeEventListener("scroll",P,!0),window.removeEventListener("resize",P)}),(X,V)=>(ie(),le("div",{ref_key:"rootRef",ref:p,class:pn(["filter-dropdown",{"is-open":r.value}])},[ne("button",{ref_key:"triggerRef",ref:_,class:"filter-dropdown__trigger input","data-active":e.value?"":void 0,type:"button","aria-haspopup":"listbox","aria-expanded":r.value,onClick:y},[ne("span",Q_,[A.value?(ie(),le(Pe,{key:0},[Ft(be(e.label)+": ",1),ne("strong",null,be(A.value.label),1)],64)):(ie(),le(Pe,{key:1},[Ft(be(e.label),1)],64))]),V[0]||(V[0]=ne("svg",{class:"filter-dropdown__chevron",width:"12",height:"12",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg"},[ne("path",{d:"M2 4l4 4 4-4",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],8,Z_),r.value?(ie(),le("div",{key:0,class:"filter-dropdown__menu",role:"listbox",style:Lt(m.value)},[ne("input",{ref_key:"searchInputRef",ref:d,class:"filter-dropdown__search",type:"text",value:i.value,placeholder:e.placeholder,onInput:x,onKeydown:M},null,40,ef),e.value?(ie(),le("button",{key:0,class:"filter-dropdown__clear",type:"button",onClick:ce},be(st(s)("buttons.clearSelection")),1)):Ne("",!0),ne("div",tf,[F.value.length===0?(ie(),le("div",of,be(st(s)("buttons.noOptions")),1)):(ie(!0),le(Pe,{key:1},Do(F.value,(J,Re)=>(ie(),le("div",{key:J.value,class:"filter-dropdown__option",role:"option","data-highlighted":Re===l.value?"":void 0,"data-selected":J.value===e.value?"":void 0,"aria-selected":J.value===e.value,onClick:re=>D(J),onMouseenter:re=>l.value=Re},[ne("span",null,be(J.label),1),ne("span",sf,be(J.count),1)],40,nf))),128))])],4)):Ne("",!0)],2))}},[["styles",[J_]]]),sa={default:"doxa",lists:[{id:"doxa",aliases:["2000","project-2000"],label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them",source:"doxa",filter:null},{id:"unreached",aliases:["7000","project-7000"],label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)",source:"imb",filter:{lostness:[0,1,2]}},{id:"frontier",aliases:["4700","project-4700"],label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)",source:"imb",filter:{lostness:[0]}},{id:"frontier-500k",aliases:["700","project-700"],label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000",source:"imb",filter:{lostness:[0],minPopulation:5e5}},{id:"unengaged",aliases:[],label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged",source:"imb",filter:{lostness:[0,1,2],engagement:["Unengaged"]}}]},af=Jn&&Jn.tagName.toUpperCase()==="SCRIPT"&&Jn.src||new URL("big-picture.js",document.baseURI).href,on=e=>String(e||"").trim().replace(/\/+$/,"");function rf(){try{const t=String(af||"").split(/[?#]/)[0].match(/^(.*)\/([^/]+)\/([^/]+)\.js$/);return!t||t[2]!==t[3]?null:t[1]||null}catch{return null}}function il(e){const t=e==null?void 0:e.assetsBase;if(typeof t=="string"&&t.trim()){const n=on(t);if(/^https?:\/\//i.test(n)||n.startsWith("/"))return n}const o=on((e==null?void 0:e.treeBase)||"")||on(rf()||"");if(o)try{const n=typeof document<"u"?document.baseURI:void 0;return on(new URL(o+"/assets",n).href)}catch{return on(o+"/assets")}return"./assets"}const Gn=sa.default,aa=new Map;for(const e of sa.lists){aa.set(e.id,e);for(const t of e.aliases||[])aa.set(String(t).toLowerCase(),e)}function lf(e){return aa.get(String(e??"").toLowerCase().trim())||null}function ll(e){let t=e;if(t&&typeof t=="object"&&"value"in t&&!("list"in t)&&!("profile"in t)&&(t=t.value),typeof t=="string")try{t=JSON.parse(t)}catch{t=null}return t&&typeof t=="object"?t:null}const cl=new Set;function cf(e){const t=ll(e),o=t==null?void 0:t.list,n=typeof location<"u"?new URLSearchParams(location.search).get("list"):null,s=typeof window<"u"?window.MAP_LIST:void 0,a=o||n||s||Gn,r=lf(a);return r?r.id:(cl.has(a)||(cl.add(a),console.warn(`[list] unknown people-group list "${a}", showing "${Gn}". Known: ${sa.lists.map(i=>i.id).join(", ")}`)),Gn)}const Kn=new Map;function uf(e,t){const o=`${il(ll(t))}/people-groups/lists/${e}.json`;return Kn.has(o)||Kn.set(o,fetch(o).then(n=>{if(!n.ok)throw new Error(`HTTP ${n.status}`);return n.json()}).then(n=>new Set(Array.isArray(n==null?void 0:n.slugs)?n.slugs:[])).catch(n=>{throw Kn.delete(o),new Error(`list "${e}" membership ${o}: ${n.message}`)})),Kn.get(o)}async function ul(e,t,{key:o=n=>n==null?void 0:n.slug}={}){const n=cf(t);if(n===Gn||!Array.isArray(e))return e;try{const s=await uf(n,t);return e.filter(a=>s.has(o(a)))}catch(s){return console.error(`[list] ${s.message}. Showing no people groups rather than the wrong list.`),[]}}const pf=".rh-root{width:100%;box-sizing:border-box;padding:14px 16px;background:#111827;color:#e5e7eb;border-bottom:1px solid #1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;display:flex;flex-direction:column;gap:12px}.rh-title{display:flex;align-items:center;gap:10px}.rh-title h1{font-size:17px;font-weight:700;letter-spacing:-.01em}.rh-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.rh-count{margin-left:auto;font:700 12px/1 ui-monospace,monospace;color:var(--accent)}.rh-search{display:flex}.rh-controls{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px}.rh-reset{padding:8px 12px;background:transparent;border:1px solid #1f2937;border-radius:8px;color:#94a3b8;font-size:13px;cursor:pointer}.rh-reset:hover{border-color:var(--accent);color:#e5e7eb}",df={class:"rh-title"},gf={key:0,class:"rh-count",role:"status","aria-live":"polite"},_f={class:"rh-search"},ff={class:"rh-controls"},$f=["aria-label"],pl=tn({__name:"BpResearchHeader",props:{count:{type:[Number,String],default:null},title:{type:String,default:"Unified Research Dashboard"},accent:{type:String,default:"#8b5cf6"},prayBaseUrl:{type:String,default:""},languageCode:{type:String,default:""},profileConfig:{type:String,default:""}},emits:["research-filter"],setup(e,{emit:t}){const o=($,T)=>St("grid."+$)||St("dashboard."+$)||T,n=e,s=t,a=oe(()=>n.prayBaseUrl||"https://pray.doxa.life"),r=oe(()=>n.languageCode||""),i=xe(""),l=go({wagf_region:"",wagf_block:"",rop1:"",religion:""}),p=go({wagf_region:[],wagf_block:[],rop1:[],religion:[]}),d=oe(()=>!!(i.value||l.wagf_region||l.wagf_block||l.rop1||l.religion)),_=so();function m(){var T,x;const $=((T=_==null?void 0:_.vnode)==null?void 0:T.el)||((x=_==null?void 0:_.proxy)==null?void 0:x.$el);try{const M=$&&$.getRootNode&&$.getRootNode();if(M&&M.host)return M.host}catch{}return $}function k(){const $={query:i.value,wagfRegion:l.wagf_region,wagfBlock:l.wagf_block,rop1:l.rop1,religion:l.religion};s("research-filter",$);const T=m();T&&typeof T.dispatchEvent=="function"&&T.dispatchEvent(new CustomEvent("research-filter",{detail:$,bubbles:!0,composed:!0}))}We([i,()=>l.wagf_region,()=>l.wagf_block,()=>l.rop1,()=>l.religion],k,{immediate:!0});function O($){i.value=($==null?void 0:$.value)??""}function P($){($==null?void 0:$.name)in l&&(l[$.name]=$.value)}function F($){($==null?void 0:$.name)in l&&(l[$.name]="")}function A(){i.value="",l.wagf_region="",l.wagf_block="",l.rop1="",l.religion=""}function j($,T){const x=new Map;for(const M of $){const H=M[T];if(!(H!=null&&H.value))continue;const D=x.get(H.value);D?D.count++:x.set(H.value,{label:H.label,count:1})}return Array.from(x.entries()).map(([M,{label:H,count:D}])=>({value:M,label:H,count:D})).sort((M,H)=>M.label.localeCompare(H.label))}async function y(){const $=`${a.value}/api/people-groups/list?fields=name,slug,wagf_region,wagf_block,country_code,rop1,religion&lang=${r.value}`;try{const x=await(await fetch($)).json(),M=await ul(Array.isArray(x.posts)?x.posts:[],n.profileConfig);p.wagf_region=j(M,"wagf_region"),p.wagf_block=j(M,"wagf_block"),p.rop1=j(M,"rop1"),p.religion=j(M,"religion")}catch(T){console.error("[bp-research-header] options fetch error:",T)}}return Io(y),($,T)=>(ie(),le("div",{class:"rh-root",role:"banner",style:Lt({"--accent":e.accent})},[ne("div",df,[T[0]||(T[0]=ne("span",{class:"rh-dot","aria-hidden":"true"},null,-1)),ne("h1",null,be(e.title),1),e.count!==null&&e.count!==""?(ie(),le("span",gf,be((o("n_shown","")||st(St)("dashboard.n_shown")||"{n} shown").replace("{n}",e.count)),1)):Ne("",!0)]),ne("div",_f,[ye(al,{"model-value":i.value,placeholder:o("search_people_or_countries","Search people groups or countries…"),"aria-label":st(St)("aria.searchPeopleGroups")||"Search people groups",onSearch:O},null,8,["model-value","placeholder","aria-label"])]),ne("div",ff,[ye(Xt,{label:o("wagf_region","Region"),name:"wagf_region",options:p.wagf_region,value:l.wagf_region,onFilterChange:P,onFilterClear:F},null,8,["label","options","value"]),ye(Xt,{label:o("wagf_block","Bloc"),name:"wagf_block",options:p.wagf_block,value:l.wagf_block,onFilterChange:P,onFilterClear:F},null,8,["label","options","value"]),ye(Xt,{label:o("rop1","People Group"),name:"rop1",options:p.rop1,value:l.rop1,onFilterChange:P,onFilterClear:F},null,8,["label","options","value"]),ye(Xt,{label:o("religion","Religion"),name:"religion",options:p.religion,value:l.religion,onFilterChange:P,onFilterClear:F},null,8,["label","options","value"]),d.value?(ie(),le("button",{key:0,class:"rh-reset",type:"button","aria-label":st(St)("aria.resetAllFilters")||"Reset all filters and search",onClick:A},be(o("reset_all","")||st(St)("controls.reset_all")||"Reset"),9,$f)):Ne("",!0)])],4))}},[["styles",[pf]]]);function Xn(e,t){if(!t.includes("."))return e==null?void 0:e[t];const[o,...n]=t.split(".");let s=e==null?void 0:e[o];for(const a of n)s=s==null?void 0:s[a];return s}function hf(e,t){const o=e.toLowerCase(),n=t.toLowerCase(),s=[];let a=0,r=o.indexOf(n,a);for(;r!==-1;)s.push([r,r+n.length-1]),a=r+n.length,r=o.indexOf(n,a);return s}function mf(e,t,o){const n=e.toLowerCase(),s=t.toLowerCase(),a=s.length;if(!a||!n.length)return null;const r=Math.min(2,Math.floor(o*a));if(r<=0)return null;let i=new Array(n.length+1).fill(0),l=new Array(n.length+1);for(let m=1;m<=a;m++){l[0]=m;for(let k=1;k<=n.length;k++){const O=i[k-1]+(s[m-1]===n[k-1]?0:1);l[k]=Math.min(O,i[k]+1,l[k-1]+1)}[i,l]=[l,i]}let p=1/0,d=-1;for(let m=1;m<=n.length;m++)i[m]r?null:[[Math.max(0,d-a),d-1]]}function bf(e,t,{threshold:o=.4}={}){const n=String(e??"").trim().toLowerCase();if(!n)return[];const s=Math.min(2,Math.floor(o*n.length)),a=[];for(const i of t){if(!i)continue;const l=String(i).toLowerCase();if(Math.abs(l.length-n.length)>s)continue;const p=yf(l,n,s);p<=s&&a.push({value:i,distance:p})}if(!a.length)return[];const r=Math.min(...a.map(i=>i.distance));return a.filter(i=>i.distance===r).map(i=>i.value)}function yf(e,t,o){if(e===t)return 0;let n=Array.from({length:t.length+1},(a,r)=>r);const s=new Array(t.length+1);for(let a=1;a<=e.length;a++){s[0]=a;let r=a;for(let i=1;i<=t.length;i++)s[i]=Math.min(n[i-1]+(e[a-1]===t[i-1]?0:1),n[i]+1,s[i-1]+1),s[i]o)return o+1;for(let i=0;i<=t.length;i++)n[i]=s[i]}return n[t.length]}class vf{constructor(t,o={}){this.list=Array.isArray(t)?t:[],this.keys=o.keys||[],this.threshold=typeof o.threshold=="number"?o.threshold:.4,this.minMatchCharLength=o.minMatchCharLength||1}search(t){const o=String(t||"").trim();if(!o)return this.list.map(p=>({item:p,matches:[]}));if(o.length":">",'"':""","'":"'","`":"`"};function Yn(e){return e==null?"":String(e).replace(/[&<>"'`]/g,t=>wf[t])}function kf(e,t){const o=String(e??"");if(!Array.isArray(t)||t.length===0)return Yn(o);let n=0,s="";return t.forEach((a,r)=>{const[i,l]=a,p=r===t.length-1;s+=Yn(o.slice(n,i))+''+Yn(o.slice(i,l+1))+""+(p?Yn(o.slice(l+1)):""),n=l+1}),s}const xf="en-US",dl=e=>Number(e).toLocaleString(xf);function Af(e,t){return String(t||e||"").trim().toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}const gl={C:"Christianity",M:"Islam",H:"Hinduism",B:"Buddhism",E:"Ethnoreligion",J:"Judaism",S:"Sikhism",N:"Unaffiliated",O:"Other",U:"Unknown"},Sf={"Indo-European":"#e74c3c",Dravidian:"#ff9800","Afro-Asiatic":"#27ae60","Sino-Tibetan":"#3498db","Niger-Congo":"#9b59b6",Unclassified:"#95a5a6","Nilo-Saharan":"#e91e63","Khoe-Kwadi":"#00bcd4","Austro-Asiatic":"#00bcd4","Kra-Dai":"#8e44ad",Austronesian:"#ff69b4","Hmong-Mien":"#f44336",Turkic:"#ffc107","Nakh-Daghestanian":"#009688",Mongolic:"#795548",Uralic:"#607d8b",Tungusic:"#4caf50",Japonic:"#ff5722",Cariban:"#673ab7",Tupian:"#03a9f4",Tucanoan:"#8bc34a",Maipurean:"#ffc107",Panoan:"#cddc39",Guajiboan:"#9e9e9e",Chibchan:"#ff7043",Quechuan:"#ab47bc",Jean:"#26a69a",Harákmbut:"#7e57c2",Nambikwara:"#42a5f5",Muran:"#66bb6a",Karajá:"#ffa726",Bororoan:"#ef5350",Arauan:"#5c6bc0",Yanomaman:"#26c6da",Yaguan:"#d4e157",Witotoan:"#78909c",Zamucoan:"#8d6e63",Puinavean:"#aed581",Barbacoan:"#4db6ac","Eyak-Athabaskan":"#7986cb","Trans-New Guinea":"#ba68c8",Andamanese:"#4dd0e1","Atlantic-Congo":"#7D3C98",Mande:"#B9770E","Sign Language":"#212121",Creole:"#9575cd","Mixed language":"#a1887f","Language isolate":"#90a4ae",Unknown:"#000000"},Tf=(()=>{const e=o=>String(o||"").toLowerCase().trim(),t={};for(const o of Object.keys(Sf))t[e(o)]=o;return t})(),Lf={"tai-kadai":"Kra-Dai",none:"Unknown"};function _l(e){if(!e)return"Unknown";const t=String(e).trim(),o=t.toLowerCase();return Lf[o]||Tf[o]||t}const Cf={aar:"Afro-Asiatic",abf:"Austronesian",abl:"Austronesian",abv:"Afro-Asiatic",acm:"Afro-Asiatic",acq:"Afro-Asiatic",acw:"Afro-Asiatic",acx:"Afro-Asiatic",adh:"Nilo-Saharan",adi:"Sino-Tibetan",adw:"Tupian",adx:"Sino-Tibetan",aen:"Sign Language",afb:"Afro-Asiatic",afg:"Sign Language",afr:"Indo-European",aft:"Nilo-Saharan",agx:"Nakh-Daghestanian",ahk:"Sino-Tibetan",aib:"Turkic",aih:"Kra-Dai",aio:"Kra-Dai",ajp:"Afro-Asiatic",aju:"Afro-Asiatic",aks:"Niger-Congo",akv:"Nakh-Daghestanian",alk:"Austro-Asiatic",alo:"Austronesian",alw:"Afro-Asiatic",amc:"Panoan",amh:"Afro-Asiatic",amr:"Harákmbut",amv:"Austronesian",ani:"Nakh-Daghestanian",anp:"Indo-European",anq:"Andamanese",aoc:"Cariban",apc:"Afro-Asiatic",apd:"Afro-Asiatic",arb:"Afro-Asiatic",arq:"Afro-Asiatic",arr:"Tupian",ars:"Afro-Asiatic",arv:"Afro-Asiatic",ary:"Afro-Asiatic",ase:"Sign Language",asl:"Austronesian",asm:"Indo-European",asn:"Tupian",asp:"Sign Language",atr:"Cariban",avd:"Indo-European",avl:"Afro-Asiatic",avv:"Tupian",awe:"Tupian",awt:"Tupian",ayh:"Afro-Asiatic",ayl:"Afro-Asiatic",ayn:"Afro-Asiatic",azb:"Turkic",bao:"Tucanoan",bbh:"Austro-Asiatic",bcc:"Indo-European",bcz:"Niger-Congo",bdg:"Austronesian",bdi:"Nilo-Saharan",bdj:"Niger-Congo",bdm:"Afro-Asiatic",bdo:"Nilo-Saharan",bee:"Sino-Tibetan",bej:"Afro-Asiatic",bem:"Niger-Congo",ben:"Indo-European",bfi:"Sign Language",bfu:"Sino-Tibetan",bfw:"Austro-Asiatic",bfy:"Indo-European",bgc:"Indo-European",bgg:"Sino-Tibetan",bgk:"Austro-Asiatic",bgl:"Austro-Asiatic",bgn:"Indo-European",bgp:"Indo-European",bgq:"Indo-European",bho:"Indo-European",bhu:"Indo-European",bid:"Afro-Asiatic",bjj:"Indo-European",bkk:"Indo-European",blf:"Austronesian",blm:"Nilo-Saharan",blo:"Niger-Congo",bls:"Austronesian",blt:"Kra-Dai",bly:"Niger-Congo",bma:"Niger-Congo",bmr:"Witotoan",bna:"Austronesian",bns:"Indo-European",bor:"Bororoan",bos:"Indo-European",bph:"Nakh-Daghestanian",bqg:"Niger-Congo",bqj:"Niger-Congo",bqk:"Niger-Congo",bqn:"Sign Language",bqx:"Niger-Congo",bra:"Indo-European",brb:"Austro-Asiatic",bro:"Sino-Tibetan",brx:"Sino-Tibetan",bsb:"Austronesian",bsg:"Indo-European",bsk:"Language isolate",bsy:"Austronesian",btd:"Austronesian",btf:"Afro-Asiatic",btv:"Indo-European",btx:"Austronesian",btz:"Austronesian",bub:"Niger-Congo",buh:"Hmong-Mien",bva:"Afro-Asiatic",bvf:"Afro-Asiatic",bvi:"Niger-Congo",bvo:"Niger-Congo",bwi:"Maipurean",bwn:"Hmong-Mien",bwx:"Hmong-Mien",bxr:"Mongolic",bxu:"Mongolic",bxw:"Niger-Congo",byn:"Afro-Asiatic",byo:"Sino-Tibetan",bze:"Niger-Congo",bzx:"Niger-Congo",cat:"Indo-European",cbb:"Maipurean",cbc:"Tucanoan",cbi:"Barbacoan",cbn:"Austro-Asiatic",cby:"Unclassified",cdh:"Indo-European",cdn:"Sino-Tibetan",cdz:"Austro-Asiatic",ceg:"Zamucoan",cgk:"Sino-Tibetan",che:"Nakh-Daghestanian",cib:"Niger-Congo",cji:"Nakh-Daghestanian",ckh:"Sino-Tibetan",ckq:"Afro-Asiatic",clk:"Sino-Tibetan",cmn:"Sino-Tibetan",cnq:"Niger-Congo",cnu:"Afro-Asiatic",coa:"Creole",cog:"Austro-Asiatic",cpu:"Maipurean",cqd:"Hmong-Mien",csf:"Sign Language",csx:"Sign language",cub:"Tucanoan",cui:"Guajiboan",cuu:"Kra-Dai",daa:"Afro-Asiatic",daj:"Nilo-Saharan",dar:"Nakh-Daghestanian",dau:"Nilo-Saharan",dba:"Language isolate",dbb:"Afro-Asiatic",dbp:"Afro-Asiatic",dbr:"Afro-Asiatic",ddn:"Nilo-Saharan",deg:"Niger-Congo",dek:"Niger-Congo",des:"Tucanoan",dgo:"Indo-European",dgs:"Niger-Congo",dhd:"Indo-European",dhi:"Sino-Tibetan",dhm:"Niger-Congo",dil:"Nilo-Saharan",diu:"Niger-Congo",div:"Indo-European",djc:"Nilo-Saharan",dkg:"Niger-Congo",dln:"Sino-Tibetan",dml:"Indo-European",dms:"Austronesian",dnu:"Austro-Asiatic",doc:"Kra-Dai",dok:"Austronesian",dox:"Afro-Asiatic",dru:"Austronesian",dse:"Sign Language",dsh:"Afro-Asiatic",dsl:"Sign Language",dsq:"Nilo-Saharan",dta:"Mongolic",dtp:"Austronesian",dyu:"Niger-Congo",dzg:"Nilo-Saharan",dzl:"Sino-Tibetan",eng:"Indo-European",enn:"Niger-Congo",epi:"Niger-Congo",ers:"Sino-Tibetan",esl:"Sign Language",evn:"Tungusic",fin:"Uralic",fni:"Niger-Congo",fod:"Niger-Congo",fra:"Indo-European",fsl:"Sign Language",fub:"Niger-Congo",fuc:"Niger-Congo",fuf:"Niger-Congo",fuj:"Niger-Congo",fvr:"Nilo-Saharan",fwe:"Niger-Congo",gax:"Afro-Asiatic",gaz:"Afro-Asiatic",gbk:"Indo-European",gbm:"Indo-European",gbn:"Nilo-Saharan",gdq:"Afro-Asiatic",gea:"Afro-Asiatic",ges:"Austronesian",gex:"Afro-Asiatic",ghl:"Nilo-Saharan",giq:"Kra-Dai",giw:"Kra-Dai",gju:"Indo-European",glc:"Niger-Congo",goe:"Sino-Tibetan",gow:"Afro-Asiatic",gqu:"Kra-Dai",grr:"Afro-Asiatic",gsg:"Sign Language",gss:"Sign Language",guj:"Indo-European",gus:"Sign Language",gvp:"Jean",gwb:"Niger-Congo",gwc:"Indo-European",gwd:"Afro-Asiatic",gwf:"Indo-European",gya:"Niger-Congo",gyo:"Sino-Tibetan",gzn:"Austronesian",hae:"Afro-Asiatic",hal:"Austro-Asiatic",hau:"Afro-Asiatic",hca:"Creole",hea:"Hmong-Mien",heb:"Afro-Asiatic",her:"Niger-Congo",hik:"Austronesian",hin:"Indo-European",hks:"Sign Language",hlb:"Indo-European",hld:"Austro-Asiatic",hmb:"Nilo-Saharan",hmh:"Hmong-Mien",hml:"Hmong-Mien",hmm:"Hmong-Mien",hne:"Indo-European",hni:"Sino-Tibetan",hnu:"Austro-Asiatic",hoh:"Afro-Asiatic",hoj:"Indo-European",hoz:"Afro-Asiatic",hsn:"Sino-Tibetan",hss:"Afro-Asiatic",htu:"Austronesian",hug:"Harákmbut",huo:"Austro-Asiatic",iba:"Austronesian",ibr:"Niger-Congo",icl:"Sign Language",iii:"Sino-Tibetan",ind:"Austronesian",irr:"Austro-Asiatic",ise:"Sign Language",isk:"Indo-European",isr:"Sign Language",ium:"Hmong-Mien",jbn:"Afro-Asiatic",jeu:"Afro-Asiatic",jia:"Afro-Asiatic",jii:"Afro-Asiatic",jio:"Kra-Dai",jit:"Niger-Congo",jiu:"Sino-Tibetan",jle:"Niger-Congo",jls:"Sign Language",jmi:"Afro-Asiatic",jnl:"Sino-Tibetan",jos:"Sign Language",jpn:"Japonic",jup:"Puinavean",kaf:"Sino-Tibetan",kan:"Dravidian",kas:"Indo-European",kay:"Tupian",kaz:"Turkic",kbg:"Sino-Tibetan",kbo:"Nilo-Saharan",kbp:"Niger-Congo",kby:"Nilo-Saharan",kcf:"Niger-Congo",kcn:"Creole",kcp:"Nilo-Saharan",kcu:"Niger-Congo",kcy:"Nilo-Saharan",kcz:"Niger-Congo",kdh:"Niger-Congo",kdn:"Niger-Congo",kdt:"Austro-Asiatic",kdu:"Nilo-Saharan",kec:"Nilo-Saharan",kfa:"Dravidian",kfd:"Dravidian",kfe:"Dravidian",kfg:"Dravidian",kfm:"Indo-European",kfr:"Indo-European",kfs:"Indo-European",kfy:"Indo-European",kgn:"Indo-European",khb:"Kra-Dai",khf:"Austro-Asiatic",khv:"Nakh-Daghestanian",kia:"Niger-Congo",kib:"Niger-Congo",kie:"Nilo-Saharan",kil:"Afro-Asiatic",kir:"Turkic",kjc:"Austronesian",kjg:"Austro-Asiatic",kjk:"Austronesian",kke:"Niger-Congo",kkh:"Kra-Dai",kkn:"Austro-Asiatic",kko:"Nilo-Saharan",kks:"Afro-Asiatic",klf:"Nilo-Saharan",kmc:"Kra-Dai",kmq:"Nilo-Saharan",kmr:"Indo-European",kmz:"Turkic",knc:"Nilo-Saharan",knf:"Niger-Congo",knk:"Niger-Congo",knm:"Maipurean",knn:"Indo-European",kns:"Austro-Asiatic",knz:"Niger-Congo",kou:"Niger-Congo",kpa:"Afro-Asiatic",kpc:"Maipurean",kpj:"Karajá",kpt:"Nakh-Daghestanian",kqg:"Niger-Congo",kqm:"Niger-Congo",krn:"Niger-Congo",krs:"Nilo-Saharan",kth:"Nilo-Saharan",kuf:"Austro-Asiatic",kui:"Cariban",kuj:"Niger-Congo",kva:"Nakh-Daghestanian",kvf:"Afro-Asiatic",kvh:"Austronesian",kvp:"Austronesian",kwn:"Niger-Congo",kwv:"Nilo-Saharan",kxd:"Austronesian",kxh:"Afro-Asiatic",kxj:"Nilo-Saharan",kyi:"Austronesian",kyp:"Kra-Dai",kyw:"Indo-European",kzq:"Sino-Tibetan",lae:"Sino-Tibetan",lan:"Niger-Congo",lao:"Kra-Dai",laq:"Kra-Dai",lbj:"Sino-Tibetan",lbn:"Austro-Asiatic",lbo:"Austro-Asiatic",lbs:"Sign Language",lbt:"Kra-Dai",lcd:"Austronesian",lcq:"Austronesian",lgn:"Nilo-Saharan",lgs:"Sign Language",lha:"Kra-Dai",lhn:"Austronesian",lhp:"Sino-Tibetan",lic:"Kra-Dai",liq:"Afro-Asiatic",liu:"Nilo-Saharan",lkc:"Sino-Tibetan",lkh:"Sino-Tibetan",lki:"Indo-European",lkr:"Nilo-Saharan",lma:"Niger-Congo",loh:"Nilo-Saharan",lop:"Niger-Congo",lsd:"Afro-Asiatic",lso:"Sign Language",lss:"Indo-European",lsy:"Sign Language",luk:"Sino-Tibetan",lul:"Nilo-Saharan",mag:"Indo-European",mai:"Indo-European",mal:"Dravidian",mar:"Indo-European",mbd:"Austronesian",mbn:"Guajiboan",mcd:"Panoan",mdl:"Sign Language",mdy:"Afro-Asiatic",mei:"Nilo-Saharan",men:"Niger-Congo",mes:"Afro-Asiatic",mew:"Afro-Asiatic",mey:"Afro-Asiatic",mgb:"Nilo-Saharan",mgd:"Nilo-Saharan",mge:"Nilo-Saharan",mgh:"Niger-Congo",mhr:"Uralic",mhu:"Sino-Tibetan",mhw:"Niger-Congo",mjp:"Dravidian",mkg:"Kra-Dai",mmh:"Maipurean",mml:"Austro-Asiatic",mmy:"Afro-Asiatic",mne:"Nilo-Saharan",mni:"Sino-Tibetan",mnj:"Indo-European",mnk:"Niger-Congo",mnq:"Austro-Asiatic",mns:"Uralic",mot:"Chibchan",mou:"Afro-Asiatic",moy:"Afro-Asiatic",moz:"Afro-Asiatic",mpe:"Nilo-Saharan",mpz:"Sino-Tibetan",mqi:"Austronesian",mqn:"Austronesian",mra:"Austro-Asiatic",mrj:"Uralic",msc:"Niger-Congo",msv:"Afro-Asiatic",msw:"Niger-Congo",mtr:"Indo-European",mub:"Afro-Asiatic",mup:"Indo-European",muq:"Hmong-Mien",muv:"Dravidian",mvf:"Mongolic",mvu:"Nilo-Saharan",mvy:"Indo-European",mwn:"Niger-Congo",mxj:"Sino-Tibetan",myp:"Muran",myy:"Tucanoan",mzb:"Afro-Asiatic",mzy:"Sign Language",naq:"Khoe-Kwadi",nbt:"Sino-Tibetan",nbw:"Niger-Congo",ndg:"Niger-Congo",ndp:"Nilo-Saharan",ndt:"Niger-Congo",neb:"Niger-Congo",neh:"Sino-Tibetan",nev:"Austro-Asiatic",ngt:"Austro-Asiatic",njl:"Nilo-Saharan",nkd:"Sino-Tibetan",nld:"Indo-European",nmd:"Niger-Congo",nmi:"Afro-Asiatic",nml:"Niger-Congo",nmy:"Sino-Tibetan",nnj:"Nilo-Saharan",nod:"Kra-Dai",noe:"Indo-European",nos:"Sino-Tibetan",npb:"Sino-Tibetan",npi:"Indo-European",nrb:"Nilo-Saharan",nru:"Sino-Tibetan",nsl:"Sign Language",nuo:"Austro-Asiatic",nus:"Nilo-Saharan",nwm:"Nilo-Saharan",nxq:"Sino-Tibetan",nye:"Niger-Congo",nyn:"Niger-Congo",nyr:"Niger-Congo",nyw:"Kra-Dai",nzs:"Sign Language",okn:"Japonic",ole:"Sino-Tibetan",oog:"Austro-Asiatic",oon:"Andamanese",opa:"Niger-Congo",ort:"Indo-European",ory:"Indo-European",ost:"Niger-Congo",oyb:"Austro-Asiatic",oym:"Tupian",pac:"Austro-Asiatic",pah:"Tupian",pbp:"Niger-Congo",peh:"Mongolic",pes:"Indo-European",pga:"Creole",pgg:"Indo-European",pgz:"Sign language",pha:"Hmong-Mien",phh:"Sino-Tibetan",phj:"Sino-Tibetan",phk:"Kra-Dai",phl:"Indo-European",pho:"Sino-Tibetan",phq:"Sino-Tibetan",phr:"Indo-European",pht:"Kra-Dai",pil:"Niger-Congo",pir:"Tucanoan",pkb:"Niger-Congo",pks:"Sign Language",pkt:"Austro-Asiatic",pll:"Austro-Asiatic",pnq:"Niger-Congo",pnx:"Austro-Asiatic",por:"Indo-European",prc:"Indo-European",prs:"Indo-European",prt:"Austro-Asiatic",psc:"Sign Language",pse:"Austronesian",pto:"Tupian",pum:"Sino-Tibetan",puo:"Austro-Asiatic",qae:"Sign Language",qao:"Sign Language",qbh:"Sign Language",qbj:"Sign Language",qbn:"Sign Language",qbt:"Sign Language",qcd:"Sign Language",qcm:"Sign Language",qcy:"Sign Language",qer:"Sign Language",qfa:"Sign Language",qfj:"Sign Language",qga:"Sign Language",qge:"Sign Language",qgm:"Sign Language",qiq:"Sign Language",qki:"Sign Language",qkm:"Sign Language",qkp:"Sign Language",qkw:"Sign Language",qmv:"Sign Language",qnh:"Sign Language",qns:"Sign Language",qom:"Sign Language",qqa:"Sign Language",qry:"Sign Language",qsm:"Sign Language",qso:"Sign Language",qsr:"Sign Language",qsz:"Sign Language",qtp:"Sign Language",qvz:"Quechuan",ras:"Niger-Congo",rbb:"Austro-Asiatic",ren:"Austro-Asiatic",rji:"Sino-Tibetan",rmt:"Indo-European",rmy:"Indo-European",rob:"Austronesian",rsl:"Sign Language",rui:"Niger-Congo",rus:"Indo-European",rwm:"Niger-Congo",rwr:"Indo-European",rys:"Japonic",saa:"Afro-Asiatic",sbf:"Unclassified",sbj:"Nilo-Saharan",sbs:"Niger-Congo",scb:"Austro-Asiatic",sck:"Indo-European",scl:"Indo-European",sdb:"Indo-European",sdg:"Indo-European",sdl:"Sign Language",sdp:"Sino-Tibetan",seq:"Niger-Congo",sgh:"Indo-European",sgy:"Indo-European",she:"Afro-Asiatic",shm:"Indo-European",shn:"Kra-Dai",sho:"Niger-Congo",shp:"Panoan",shu:"Afro-Asiatic",shv:"Afro-Asiatic",shz:"Niger-Congo",siy:"Indo-European",siz:"Afro-Asiatic",sjg:"Nilo-Saharan",sjo:"Tungusic",skq:"Niger-Congo",sle:"Dravidian",slt:"Sino-Tibetan",sml:"Austronesian",smy:"Indo-European",snd:"Indo-European",snn:"Tucanoan",soj:"Indo-European",sok:"Afro-Asiatic",soy:"Niger-Congo",spa:"Indo-European",spu:"Austro-Asiatic",sqk:"Sign Language",sqq:"Austro-Asiatic",sqs:"Sign Language",sqt:"Afro-Asiatic",srh:"Indo-European",sri:"Tucanoan",srp:"Indo-European",ssh:"Afro-Asiatic",ssn:"Afro-Asiatic",sss:"Austro-Asiatic",ssy:"Afro-Asiatic",std:"Andamanese",sts:"Indo-European",suq:"Nilo-Saharan",suv:"Sino-Tibetan",suy:"Jean",suz:"Sino-Tibetan",swh:"Niger-Congo",swi:"Kra-Dai",swl:"Sign Language",swv:"Indo-European",swx:"Arauan",sxg:"Sino-Tibetan",sze:"Afro-Asiatic",szn:"Austronesian",szs:"Sign Language",tag:"Niger-Congo",tam:"Dravidian",taz:"Niger-Congo",tbm:"Niger-Congo",tbn:"Chibchan",tbr:"Nilo-Saharan",tct:"Kra-Dai",tcy:"Dravidian",tda:"Mixed language",tdb:"Indo-European",tdd:"Kra-Dai",tdf:"Austro-Asiatic",tdj:"Austronesian",tel:"Dravidian",teq:"Nilo-Saharan",tgf:"Sino-Tibetan",tgk:"Indo-European",tgr:"Austro-Asiatic",thk:"Niger-Congo",thm:"Austro-Asiatic",thu:"Nilo-Saharan",thv:"Afro-Asiatic",tig:"Afro-Asiatic",tin:"Nakh-Daghestanian",tiz:"Kra-Dai",tkn:"Japonic",tlq:"Austro-Asiatic",tly:"Indo-European",tma:"Nilo-Saharan",tnb:"Chibchan",toi:"Niger-Congo",toq:"Nilo-Saharan",tou:"Austro-Asiatic",tqq:"Afro-Asiatic",tri:"Cariban",trj:"Afro-Asiatic",tsb:"Afro-Asiatic",tsc:"Niger-Congo",tsj:"Sino-Tibetan",tsk:"Sino-Tibetan",tsl:"Kra-Dai",tsm:"Sign Language",ttg:"Austronesian",tth:"Austro-Asiatic",ttl:"Niger-Congo",tts:"Kra-Dai",tue:"Tucanoan",tum:"Niger-Congo",tuo:"Tucanoan",tur:"Turkic",twm:"Sino-Tibetan",txi:"Cariban",txm:"Austronesian",tyh:"Austro-Asiatic",tyj:"Kra-Dai",tyr:"Kra-Dai",tyv:"Turkic",tyy:"Niger-Congo",tzm:"Afro-Asiatic",uan:"Kra-Dai",udj:"Austronesian",une:"Niger-Congo",unk:"Maipurean",urd:"Indo-European",urp:"Tupian",urz:"Tupian",ush:"Indo-European",usi:"Sino-Tibetan",uuu:"Austro-Asiatic",uzn:"Turkic",vai:"Niger-Congo",vgr:"Indo-European",vie:"Austro-Asiatic",vkj:"Unclassified",vkn:"Niger-Congo",vkz:"Niger-Congo",vmk:"Niger-Congo",vut:"Niger-Congo",wau:"Maipurean",waw:"Cariban",wbj:"Afro-Asiatic",wbl:"Indo-European",wbr:"Indo-European",wlc:"Niger-Congo",wll:"Nilo-Saharan",wmd:"Nambikwara",wmg:"Sino-Tibetan",wne:"Indo-European",wni:"Niger-Congo",wol:"Niger-Congo",wrn:"Niger-Congo",wti:"Nilo-Saharan",wuh:"Mixed language",wwa:"Niger-Congo",xal:"Mongolic",xan:"Afro-Asiatic",xdq:"Nakh-Daghestanian",xhv:"Austro-Asiatic",xka:"Indo-European",xkz:"Sino-Tibetan",xma:"Niger-Congo",xmj:"Afro-Asiatic",xmo:"Tupian",xms:"Sign Language",xnr:"Indo-European",xns:"Sino-Tibetan",xom:"Nilo-Saharan",xor:"Panoan",xsm:"Niger-Congo",xsr:"Sino-Tibetan",xwg:"Nilo-Saharan",yaa:"Panoan",yad:"Yaguan",yao:"Niger-Congo",yax:"Niger-Congo",ybh:"Sino-Tibetan",ycl:"Sino-Tibetan",ydd:"Indo-European",ydg:"Indo-European",yea:"Dravidian",yhd:"Afro-Asiatic",yig:"Sino-Tibetan",yix:"Sino-Tibetan",ymm:"Afro-Asiatic",ymx:"Sino-Tibetan",yne:"Sino-Tibetan",yno:"Kra-Dai",yom:"Niger-Congo",yox:"Japonic",yoy:"Kra-Dai",yrn:"Kra-Dai",ysl:"Sign Language",ysm:"Sign language",ysn:"Sino-Tibetan",yue:"Sino-Tibetan",yul:"Nilo-Saharan",yup:"Cariban",ywn:"Panoan",ywt:"Sino-Tibetan",zag:"Nilo-Saharan",zgn:"Kra-Dai",zhd:"Kra-Dai",ziw:"Niger-Congo",zkr:"Sino-Tibetan",zlm:"Austronesian",zna:"Niger-Congo",zne:"Niger-Congo",zng:"Austro-Asiatic",zqe:"Kra-Dai",zum:"Indo-European",zyg:"Kra-Dai"},Ef=":host{display:block;width:100%;--dx-surface: #f3f3f1;--dx-elevated: #ffffff;--dx-text: #3b463d;--dx-muted: #6d766e;--dx-line: #d1d4cd;--dx-accent: #92b195;--dx-accent-weak: rgba(146, 177, 149, .18);--dx-accent-soft: rgba(146, 177, 149, .1);--dx-accent-strong: #657967}.pgg-root{--brand: var(--dx-accent, #92b195);--ink: var(--dx-text, #3b463d);--mut: var(--dx-muted, #6d766e);--line: var(--dx-line, #d1d4cd);--card: var(--dx-elevated, #fff);--bg: var(--dx-surface, #f3f3f1);width:100%;box-sizing:border-box;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;padding:16px}.filters{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding-block:18px 8px;min-height:190px}.pgg-search{display:flex;justify-content:center}.pgg-search--repel{gap:10px;align-items:center;flex-wrap:wrap;justify-content:space-between;width:100%;max-width:600px;margin-inline:auto}.pgg-search--repel>:first-child{flex:1 1 320px;min-width:0}.pgg-exact{flex:none}.filters__toggle{background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--dx-text, #3b463d);padding:7px 12px;display:inline-flex;align-items:center;gap:7px;margin-inline:auto;transition:background-color .15s ease,border-color .15s ease}.filters__toggle:hover{background:var(--dx-accent-weak, rgba(146,177,149,.18));border-color:var(--dx-accent, #92b195)}.filters__toggle:focus-visible{outline:2px solid var(--dx-accent, #92b195);outline-offset:2px}.filters__toggle-icon{color:var(--dx-accent, #92b195);flex:none}.filters__toggle-count{background:var(--dx-accent, #92b195);color:#fff;border-radius:999px;min-width:18px;padding:0 5px;font-size:.75rem;line-height:18px;text-align:center}.filters__toggle[aria-expanded=true] svg{transform:rotate(180deg)}.filters__panel{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:flex-start}.filter-toggle{padding:6px 12px;cursor:pointer;font-size:.875rem;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:8px;transition:border-color .15s ease,background .15s ease}.filter-toggle:hover{border-color:var(--brand)}.filter-toggle[data-active]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));border-color:var(--brand);color:var(--ink)}.filters__active{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}.filter-chip{display:inline-flex;gap:6px;align-items:center;background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));color:var(--ink);border:1px solid var(--line);border-radius:100px;padding:4px 12px;font-size:.85rem}.filter-chip__remove{background:none;border:none;cursor:pointer;font-size:1.1em;line-height:1;color:inherit;padding:0;display:inline-flex;align-items:center}.filter-chip__remove:hover{opacity:.7}.filters__clear-all{background:none;border:none;cursor:pointer;font-size:.875rem;color:var(--ink);text-decoration:underline;text-decoration-color:var(--brand);text-underline-offset:4px}.repel{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.font-size-sm{font-size:.875rem;color:var(--mut)}.grid.uupgs-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.pgg-gridbar{display:flex;justify-content:flex-end;margin-bottom:8px;padding-inline-end:8px}.pgg-perrow{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--mut)}.pgg-perrow select{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:6px;padding:2px 6px}.card.uupg__card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #0000000a}.uupg__image{width:100%;aspect-ratio:1 / 1;object-fit:cover;background:var(--line)}.uupg__header{padding:12px 14px 6px}.uupg__name{font-size:1rem;font-weight:700;line-height:1.2;margin:0 0 4px}.uupg__country{font-size:.85rem;color:var(--mut);margin:0}.uupg__country-link{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:1px;text-underline-offset:2px}.uupg__country-link:hover{text-decoration-thickness:2px}.uupg__match{font-size:.8rem;color:var(--mut);margin:4px 0 0}.uupg__content{padding:0 14px;font-size:.85rem;color:var(--mut)}.uupg__more-button{margin:12px 14px 14px;padding:8px 12px;text-align:center;font-size:.85rem;font-weight:700;color:var(--dx-elevated, #fff);background:var(--dx-accent-strong, #657967);border-radius:8px;text-decoration:none}.uupg__more-button:hover{background:var(--dx-text, #3b463d)}.search-highlight{background:#fde68a;border-radius:2px;padding:0 1px}.loading,.pgg-empty{grid-column:1 / -1;padding:28px;text-align:center;color:var(--mut);font-size:.9rem}.pgg-failed{font-weight:600;border-top:1px solid var(--bd, #d1d4cd)}.pgg-loadmore{display:block;margin:20px auto 0;padding:8px 18px;font-size:.9rem;cursor:pointer;color:var(--ink);background:var(--card);border:1px solid var(--brand);border-radius:8px}.pgg-loadmore:hover{background:var(--dx-accent-soft, rgba(146, 177, 149, .1))}",Pf={class:"pgg-root"},Mf={key:0,class:"pgg-search pgg-search--repel"},Rf=["data-active"],Nf=["aria-expanded"],Ff={key:0,class:"filters__toggle-count"},Of={key:2,class:"filters__panel"},If={key:3,class:"filters__active"},Df=["onClick"],zf={class:"pgg-body"},Hf={key:0,class:"repel"},jf={class:"font-size-sm"},Bf={key:1},Uf={class:"pgg-gridbar"},qf={class:"pgg-perrow"},Vf=["aria-label"],Wf=["value"],Gf=["src","alt"],Kf={class:"uupg__header"},Xf=["innerHTML"],Yf={key:0,class:"uupg__country"},Jf=["href"],Zf=["innerHTML"],Qf=["innerHTML"],e$=["innerHTML"],t$={key:1,class:"uupg__content"},o$=["href"],n$={key:0,class:"loading"},s$={key:1,class:"pgg-empty pgg-failed",role:"status"},a$={key:2,class:"pgg-empty"},fl=tn(Object.assign({inheritAttrs:!1},{__name:"people-groups-grid",props:{profileConfig:{type:String,default:""},prayBaseUrl:{type:String,default:""},languageCode:{type:String,default:""},researchUrl:{type:String,default:""},selectUrl:{type:String,default:""},t:{type:Object,default:()=>({})},showSearch:{type:[Boolean,String],default:!0},showFilters:{type:[Boolean,String],default:!0},showTotal:{type:[Boolean,String],default:!0},query:{type:String,default:""},wagfRegion:{type:String,default:""},wagfBlock:{type:String,default:""},rop1:{type:String,default:""},religion:{type:String,default:""},countryCode:{type:String,default:""},primaryLanguage:{type:String,default:""},cluster:{type:String,default:""},peopleGroup:{type:String,default:""},engagementStatus:{type:String,default:""},gospelAccess:{type:String,default:""},religionFamily:{type:String,default:""},languageFamily:{type:String,default:""},perPage:{type:Number,default:24},morePerPage:{type:Number,default:0}},emits:["groups-filtered"],setup(e,{emit:t}){const o=e,n=t,s=oe(()=>{if(!o.profileConfig)return{};try{return JSON.parse(o.profileConfig)||{}}catch{return{}}}),a=oe(()=>!y.value&&!$.value?null:{backgroundImage:`url(${il(s.value)}/images/worldmap.svg)`,backgroundSize:"60%",backgroundPosition:"top center",backgroundRepeat:"no-repeat"}),r=oe(()=>o.prayBaseUrl||s.value.prayBaseUrl||"https://pray.doxa.life"),i=oe(()=>o.languageCode||s.value.languageCode||s.value.locale||s.value.lang||nl()||""),l=oe(()=>{const b=i.value||oa()||ta();return ol.has(String(b).split("-")[0].toLowerCase())?"rtl":"ltr"});function p(){try{const b=u();b&&b.setAttribute&&l.value==="rtl"&&b.setAttribute("dir","rtl")}catch{}}We(l,p);const d=oe(()=>o.researchUrl||s.value.researchUrl||(typeof window<"u"&&window.DOXA_SITE_URL||"https://doxa.life").replace(/\/+$/,"")+"/research/"),_=["auto","1","2","3","4","5"],m=oe(()=>`pgg-cards-per-row:${s.value.profile||"default"}`),k=xe("auto");let O=!1;function P(){try{const b=localStorage.getItem(m.value);b&&_.includes(b)&&(k.value=b)}catch{}}P(),We(m,(b,E)=>{b!==E&&!O&&P()}),We(k,b=>{O=!0;try{localStorage.setItem(m.value,b)}catch{}});const F=oe(()=>k.value==="auto"?null:{gridTemplateColumns:`repeat(${k.value}, minmax(0, 1fr))`}),A=oe(()=>{const b={...s.value.t||{},...o.t||{}},E=s.value.locale||s.value.lang||void 0;return new Proxy(b,{get(U,W){if(W in U)return U[W];if(typeof W=="string")return St("grid."+W,E)}})}),j=b=>!(b===!1||b==="false"||b==="0"||b===0),y=oe(()=>j(o.showSearch)),$=oe(()=>j(o.showFilters)),T=oe(()=>j(o.showTotal)),x=xe([]),M=xe([]),H=xe(0),D=xe(1),ce=xe(!0),X=xe(!1),V=xe(!0),J=xe({}),Re=xe(""),re=xe({}),pe=oe(()=>y.value?Re.value:o.query||""),se=oe(()=>{const b={},E=U=>U;return o.wagfRegion&&(b.wagf_region={value:o.wagfRegion,label:E(o.wagfRegion)}),o.wagfBlock&&(b.wagf_block={value:o.wagfBlock,label:E(o.wagfBlock)}),o.rop1&&(b.rop1={value:o.rop1,label:E(o.rop1)}),o.religion&&(b.religion={value:o.religion,label:E(o.religion)}),o.countryCode&&(b.country_code={value:o.countryCode,label:E(o.countryCode)}),o.primaryLanguage&&(b.primary_language={value:o.primaryLanguage,label:E(o.primaryLanguage)}),o.engagementStatus&&(b.engagement_status={value:o.engagementStatus,label:E(o.engagementStatus)}),o.cluster&&(b.imb_reg_of_people_2={value:o.cluster,label:E(o.cluster)}),o.peopleGroup&&(b.imb_reg_of_people_25={value:o.peopleGroup,label:E(o.peopleGroup)}),o.gospelAccess&&(b.imb_gsec={value:o.gospelAccess,label:E(o.gospelAccess)}),o.religionFamily&&(b.__religion_family={value:o.religionFamily,label:E(o.religionFamily)}),o.languageFamily&&(b.__language_family={value:o.languageFamily,label:E(o.languageFamily)}),b}),ee=oe(()=>$.value?re.value:se.value);We(()=>o.wagfRegion,b=>{if(!$.value)return;const E=re.value.wagf_region;if(b){if(E&&E.value===b)return;const U=(J.value&&J.value.wagf_region||[]).find(W=>W.value===b);re.value={...re.value,wagf_region:{value:b,label:U&&U.label||b}}}else if(E){const U={...re.value};delete U.wagf_region,re.value=U}}),We(()=>o.religionFamily,b=>{if(!$.value)return;const E=re.value.__religion_family;if(b){if(E&&Qe(E.value)===Qe(b))return;re.value={...re.value,__religion_family:{value:b,label:b}}}else if(E){const U={...re.value};delete U.__religion_family,re.value=U}}),We(()=>o.primaryLanguage,b=>{if(!$.value)return;const E=re.value.primary_language;if(b){if(E&&Qe(E.value)===Qe(b))return;re.value={...re.value,primary_language:{value:b,label:b}}}else if(E){const U={...re.value};delete U.primary_language,re.value=U}});const Ce=oe(()=>Object.values(ee.value||{}).filter(b=>b&&b.value!==""&&b.value!=null).length),Xe=oe(()=>Object.keys(ee.value).length),ve=oe(()=>Ce.value>0||!!(pe.value||"").trim());function Le(b,E=500){let U;return(...W)=>{clearTimeout(U),U=setTimeout(()=>b(...W),E)}}const it=Le(()=>{ce.value=!0,D.value=1,z()},500);function Ye(b){Re.value=(b==null?void 0:b.value)??"",it()}function lt(){V.value=!V.value}function He(b){re.value={...re.value,[b.name]:{value:b.value,label:b.label}},D.value=1,z()}function Je(b){tt(b.name)}function tt(b){const E={...re.value};delete E[b],re.value=E,D.value=1,z()}function Tt(){re.value={},D.value=1,z()}function Ze(){if(re.value.exact)return tt("exact");re.value={...re.value,exact:{value:"yes",label:A.value.exact_filter||"Exact"}},D.value=1,z()}const Qe=b=>String(b??"").toLowerCase().replace(/[\s_&-]+/g,""),g={__religion_family:b=>{const E=b.religion&&typeof b.religion=="object"?b.religion.value:b.religion,U=String(E||"").charAt(0).toUpperCase(),W=U&&gl[U]?gl[U]:"";return W?{value:W,label:W}:null},__language_family:b=>{const E=b.imb_language_family,U=E&&typeof E=="object"?E.label||E.value:E;let W="";if(U)W=_l(U);else{const ae=b.primary_language&&typeof b.primary_language=="object"?b.primary_language.value:null,fe=ae&&Cf[ae];W=fe?_l(fe):""}return W?{value:W,label:W}:null}},h=(b,E)=>g[E]?g[E](b):b[E];function f(b,E){if(!b)return!1;const U=E==null?void 0:E.value;if(U==null||U==="")return!1;const W=(Array.isArray(U)?U:String(U).split("|")).map(G=>Qe(G)).filter(Boolean);if(!W.length)return!1;const ae=Qe(b.value),fe=Qe(b.label);return W.some(G=>ae===G||fe===G)}function S(b){let E=b;for(const[U,W]of Object.entries(ee.value))U==="exact"?E=E:E=E.filter(ae=>f(h(ae,U),W));return E}function N(){const b=E=>{const U=new Map;for(const W of x.value){const ae=W[E];if(!(ae!=null&&ae.value))continue;const fe=U.get(ae.value);fe?fe.count++:U.set(ae.value,{label:ae.label,count:1})}return Array.from(U.entries()).map(([W,{label:ae,count:fe}])=>({value:W,label:ae,count:fe})).sort((W,ae)=>W.label.localeCompare(ae.label))};J.value={wagf_region:b("wagf_region"),wagf_block:b("wagf_block"),rop1:b("rop1"),religion:b("religion")}}function R(){const b=Object.keys(J.value),E={};for(const U of b){const W={};for(const[G,we]of Object.entries(ee.value))G!==U&&(W[G]=we);const ae=B(W,x.value),fe=new Map;for(const G of ae){const we=G[U];we!=null&&we.value&&fe.set(we.value,(fe.get(we.value)??0)+1)}E[U]=(J.value[U]??[]).map(G=>({...G,count:fe.get(G.value)??0}))}J.value=E}function B(b,E){let U=E;for(const[W,ae]of Object.entries(b))W!=="exact"&&(U=U.filter(fe=>f(h(fe,W),ae)));return U}function z(){x.value=x.value.map(fe=>(fe.matches=[],fe.country_label="",fe.rop1_label="",fe));const E=Object.keys(ee.value).length>0?S(x.value):x.value,U=pe.value;if(!U){M.value=E,H.value=M.value.length,ce.value=!1,R(),w();return}const ae=new vf(E,{includeMatches:!0,ignoreLocation:!0,minMatchCharLength:3,threshold:ee.value.exact?0:.4,keys:["name","imb_alternate_name","country_code.label","rop1.label","religion.label","wagf_region.label","wagf_block.label"]}).search(U);M.value=ae.map(fe=>{var we;const G={...fe.item};if(!fe.matches)return G;G.matches=[];for(const Yt of fe.matches){const _t=Yt.key;if(!_t)continue;let nn="";if(String(_t).includes(".")){const[lo,co]=String(_t).split(".");nn=(we=G[lo])==null?void 0:we[co]}else nn=G[String(_t)];if(nn&&typeof nn=="string"){const lo=kf(nn,Yt.indices);if(String(_t).includes("imb_alternate_name"))G.matches.push({key:A.value.alternate_name??"Also known as",label:lo});else if(String(_t).includes(".")){const[co]=String(_t).split("."),d$={religion:A.value.religion,country_code:A.value.country,rop1:A.value.rop1,wagf_region:A.value.wagf_region,wagf_block:A.value.wagf_block};co==="rop1"?G.rop1_label=lo:co==="country_code"?G.country_label=lo:co==="wagf_region"||G.matches.push({key:d$[co]??co,label:lo})}else G[String(_t)]=lo}}return G}),H.value=M.value.length,ce.value=!1,R(),w()}const c=so();function u(){var E,U;const b=((E=c==null?void 0:c.vnode)==null?void 0:E.el)||((U=c==null?void 0:c.proxy)==null?void 0:U.$el);try{const W=b&&b.getRootNode&&b.getRootNode();if(W&&W.host)return W.host}catch{}return b}function w(){const b={query:pe.value,activeFilters:ee.value,total:H.value,slugs:M.value.map(U=>U.slug)};n("groups-filtered",b);const E=u();E&&typeof E.dispatchEvent=="function"&&E.dispatchEvent(new CustomEvent("groups-filtered",{detail:b,bubbles:!0,composed:!0}))}function L(){return o.morePerPage>0?H.value>o.perPage+(D.value-1)*o.morePerPage&&!ce.value&&M.value.length>0:H.value>D.value*o.perPage&&!ce.value&&M.value.length>0}function q(){D.value=D.value+1}const I=oe(()=>o.morePerPage>0?M.value.slice(0,o.perPage+(D.value-1)*o.morePerPage):M.value.slice(0,D.value*o.perPage)),v=oe(()=>L());async function C(){const b=`${r.value}/api/people-groups/list?fields=name,slug,wagf_region,wagf_block,country_code,rop1,religion,has_photo,image_url,adopted_by_churches,imb_alternate_name,engagement_status,people_committed,primary_language,imb_reg_of_people_2,imb_reg_of_people_25,imb_gsec,imb_language_family&lang=${i.value}`;ce.value=!0,X.value=!1;try{const E=await fetch(b);if(!E.ok)throw new Error(`HTTP ${E.status}`);const U=await E.json(),W=Array.isArray(U.posts)?U.posts:[],ae=await ul(W,o.profileConfig);H.value=ae===W?U.total:ae.length,x.value=ae,N(),z()}catch(E){console.error("[people-groups-grid] fetch error:",E),X.value=!0,x.value=[],ce.value=!1}}We(()=>[o.query,se.value,y.value,$.value],()=>{D.value=1,z()});function Y(b){const E=new Set;for(const U of x.value||[]){const W=h(U,b),ae=W&&typeof W=="object"?W.label:W;typeof ae=="string"&&ae&&E.add(ae)}return[...E].sort()}return Sn(()=>{typeof window<"u"&&window.__peopleGroupsGridVocabulary===Y&&delete window.__peopleGroupsGridVocabulary}),Io(()=>{const b=u();b&&(b.__vocabulary=Y),typeof window<"u"&&(window.__peopleGroupsGridVocabulary=Y),p(),C()}),(b,E)=>{var U,W,ae,fe;return ie(),le("div",Pf,[y.value||$.value?(ie(),le("div",{key:0,id:"filters",class:"filters",style:Lt(a.value)},[y.value?(ie(),le("div",Mf,[ye(al,{"model-value":Re.value,placeholder:A.value.search||"Search people groups…","aria-label":A.value.search||"Search people groups","max-width":"480px",onSearch:Ye},null,8,["model-value","placeholder","aria-label"]),$.value?(ie(),le("button",{key:0,class:"filter-toggle pgg-exact",type:"button","data-active":ee.value.exact?"":void 0,onClick:Ze},be(A.value.exact_filter||"Exact"),9,Rf)):Ne("",!0)])):Ne("",!0),$.value?(ie(),le("button",{key:1,class:"filters__toggle",type:"button","aria-expanded":V.value,onClick:lt},[E[1]||(E[1]=ne("svg",{class:"filters__toggle-icon",width:"13",height:"13",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[ne("path",{d:"M1.5 2.5h9M3 6h6M4.5 9.5h3",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round"})],-1)),Ft(" "+be(V.value?A.value.hide_filters||"Hide Filters":A.value.show_filters||"Show Filters")+" ",1),Ce.value?(ie(),le("span",Ff,be(Ce.value),1)):Ne("",!0),E[2]||(E[2]=ne("svg",{width:"12",height:"12",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg"},[ne("path",{d:"M2 4l4 4 4-4",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],8,Nf)):Ne("",!0),$.value&&V.value?(ie(),le("div",Of,[ye(Xt,{label:A.value.wagf_region||"Region",name:"wagf_region",options:J.value.wagf_region||[],value:((U=ee.value.wagf_region)==null?void 0:U.value)??"",placeholder:A.value.type_to_search||"Type to search...",onFilterChange:He,onFilterClear:Je},null,8,["label","options","value","placeholder"]),ye(Xt,{label:A.value.wagf_block||"Bloc",name:"wagf_block",options:J.value.wagf_block||[],value:((W=ee.value.wagf_block)==null?void 0:W.value)??"",placeholder:A.value.type_to_search||"Type to search...",onFilterChange:He,onFilterClear:Je},null,8,["label","options","value","placeholder"]),ye(Xt,{label:A.value.rop1||"People Group",name:"rop1",options:J.value.rop1||[],value:((ae=ee.value.rop1)==null?void 0:ae.value)??"",placeholder:A.value.type_to_search||"Type to search...",onFilterChange:He,onFilterClear:Je},null,8,["label","options","value","placeholder"]),ye(Xt,{label:A.value.religion||"Religion",name:"religion",options:J.value.religion||[],value:((fe=ee.value.religion)==null?void 0:fe.value)??"",placeholder:A.value.type_to_search||"Type to search...",onFilterChange:He,onFilterClear:Je},null,8,["label","options","value","placeholder"])])):Ne("",!0),$.value&&Xe.value>0?(ie(),le("div",If,[(ie(!0),le(Pe,null,Do(ee.value,(G,we)=>(ie(),le("span",{key:we,class:"filter-chip"},[Ft(be(G.label)+" ",1),ne("button",{class:"filter-chip__remove",type:"button",onClick:Yt=>tt(String(we))},"×",8,Df)]))),128)),ne("button",{class:"filters__clear-all",type:"button",onClick:Tt},be(A.value.clear_all||"Clear All"),1)])):Ne("",!0)],4)):Ne("",!0),ne("div",zf,[T.value||ve.value?(ie(),le("div",Hf,[ne("div",jf,[ce.value?(ie(),le("span",Bf," ")):(ie(),le(Pe,{key:0},[Ft(be(ve.value&&!T.value?(A.value.showing||"Showing")+" "+st(dl)(H.value):(A.value.total||"Total")+": "+st(dl)(H.value)),1)],64))])])):Ne("",!0),ne("div",Uf,[ne("label",qf,[ne("span",null,be(A.value.cards_per_row),1),lc(ne("select",{"onUpdate:modelValue":E[0]||(E[0]=G=>k.value=G),"aria-label":A.value.cards_per_row},[(ie(),le(Pe,null,Do(_,G=>ne("option",{key:G,value:G},be(G==="auto"?A.value.cards_per_row_auto:G),9,Wf)),64))],8,Vf),[[Iu,k.value]])])]),ne("div",{id:"results",class:"grid uupgs-list",style:Lt(F.value)},[(ie(!0),le(Pe,null,Do(I.value,G=>(ie(),le("div",{key:G.slug,class:"card uupg__card"},[G.image_url?(ie(),le("img",{key:0,class:"uupg__image",src:G.image_url,alt:G.name},null,8,Gf)):Ne("",!0),ne("div",Kf,[ne("h3",{class:"uupg__name",innerHTML:G.name},null,8,Xf),G.country_code?(ie(),le("p",Yf,[ne("a",{class:"uupg__country-link",href:`${d.value}../countries/${st(Af)(G.country_code.value,G.country_code.label)}`},[ne("span",{innerHTML:G.country_label?G.country_label:G.country_code.label},null,8,Zf)],8,Jf),G.rop1?(ie(),le(Pe,{key:0},[E[3]||(E[3]=Ft(" (",-1)),ne("span",{innerHTML:G.rop1_label?G.rop1_label:G.rop1.label},null,8,Qf),E[4]||(E[4]=Ft(")",-1))],64)):Ne("",!0)])):Ne("",!0),G.matches?(ie(!0),le(Pe,{key:1},Do(G.matches,(we,Yt)=>(ie(),le("p",{key:Yt,class:"uupg__match"},[ne("strong",null,be(we.key),1),E[5]||(E[5]=Ft(": ",-1)),ne("span",{innerHTML:we.label},null,8,e$)]))),128)):Ne("",!0)]),G.location_description?(ie(),le("p",t$,be(G.location_description),1)):Ne("",!0),ne("a",{class:"uupg__more-button",href:`${d.value}${G.slug}`},be(A.value.full_profile||"Full Profile"),9,o$)]))),128)),ce.value?(ie(),le("div",n$,be(A.value.loading||"Loading…"),1)):X.value?(ie(),le("div",s$,be(A.value.load_failed||"People-group data could not be loaded. This is a connection problem, not your filter."),1)):I.value.length?Ne("",!0):(ie(),le("div",a$,be(A.value.no_results||"No people groups match this filter."),1))],4),v.value?(ie(),le("button",{key:1,class:"pgg-loadmore",type:"button",onClick:q},be(A.value.load_more||"Load More"),1)):Ne("",!0)])])}}}),[["styles",[Ef]]]),r$=":host{display:block;width:100%;height:100%;min-height:480px}.bp-root{--bg: #f3f3f1;--line: #d1d4cd;--ink: #3b463d;--mut: #6d766e;display:flex;flex-direction:column;width:100%;height:100%;min-height:inherit;overflow:hidden;background:var(--bg);color:var(--ink);box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.bp-body{flex:1;min-height:0;position:relative;overflow:auto}.bp-foot{flex:none;padding:8px 12px;font-size:11px;color:var(--mut);text-align:center;border-top:1px solid var(--line)}",i$={class:"bp-body"},l$={class:"bp-foot"},c$=Ns(tn({__name:"big-picture",props:{profileConfig:{type:String,default:""}},setup(e){const t=e,o=oe(()=>{if(!t.profileConfig)return{};try{return JSON.parse(t.profileConfig)||{}}catch{return{}}}),n=oe(()=>o.value.accent||"#8b5cf6"),s=oe(()=>{const F=String(o.value.locale||o.value.lang||"").split("-")[0].toLowerCase();return Wn.includes(F)?F:""});dc(()=>{s.value&&G_(s.value)});const a=oe(()=>o.value.title||St("dashboard.bp_title",s.value||void 0)||"Big Picture — Unified Research Dashboard"),r=oe(()=>{const F=s.value||oa()||ta();return ol.has(F)?"rtl":"ltr"}),i=so();function l(){var F,A,j,y;try{const $=(y=(j=(A=(F=i==null?void 0:i.proxy)==null?void 0:F.$el)==null?void 0:A.getRootNode)==null?void 0:j.call(A))==null?void 0:y.host;$&&r.value==="rtl"&&$.setAttribute("dir","rtl")}catch{}}Io(l),We(r,l);const p=oe(()=>{const F={};return o.value.list&&(F.list=o.value.list),s.value&&(F.lang=s.value),Object.keys(F).length?JSON.stringify(F):""}),d=oe(()=>o.value.prayBaseUrl||""),_=oe(()=>o.value.languageCode||""),m=go({query:"",wagfRegion:"",wagfBlock:"",rop1:"",religion:""}),k=xe(null);function O(F){const A=F&&typeof F=="object"?F:{};m.query=A.query||"",m.wagfRegion=A.wagfRegion||"",m.wagfBlock=A.wagfBlock||"",m.rop1=A.rop1||"",m.religion=A.religion||""}function P(F){const A=F&&typeof F=="object"?F:{};k.value=typeof A.total=="number"?A.total:null}return(F,A)=>(ie(),le("div",{class:"bp-root",style:Lt({"--accent":n.value})},[ye(pl,{title:a.value,accent:n.value,count:k.value,"pray-base-url":d.value,"language-code":_.value,"profile-config":p.value,onResearchFilter:O},null,8,["title","accent","count","pray-base-url","language-code","profile-config"]),ne("div",i$,[ye(fl,{query:m.query,"wagf-region":m.wagfRegion,"wagf-block":m.wagfBlock,rop1:m.rop1,religion:m.religion,"show-search":!1,"show-filters":!1,"show-total":!1,"pray-base-url":d.value,"language-code":_.value,"profile-config":p.value,onGroupsFiltered:P},null,8,["query","wagf-region","wagf-block","rop1","religion","pray-base-url","language-code","profile-config"])]),ne("footer",l$,be(st(St)("dashboard.bp_subtitle")||"Search and filter the world's people groups · least-reached shown first"),1)],4))}},[["styles",[r$]]])),u$=Ns(pl),p$=Ns(fl);typeof customElements<"u"&&(customElements.get("bp-big-picture")||customElements.define("bp-big-picture",c$),customElements.get("bp-research-header")||customElements.define("bp-research-header",u$),customElements.get("people-groups-grid")||customElements.define("people-groups-grid",p$))})(); diff --git a/public/dx-maps/big-picture/big-picture/big-picture/index.html b/public/dx-maps/big-picture/big-picture/big-picture/index.html index 49335b1c9..a0ad44352 100644 --- a/public/dx-maps/big-picture/big-picture/big-picture/index.html +++ b/public/dx-maps/big-picture/big-picture/big-picture/index.html @@ -43,7 +43,7 @@ - + - + - + - + - + \n\n\n" + "script": "\n\n\n" }, "instances": [ { @@ -233,7 +233,7 @@ "bundle": "dashboard-plus-grid", "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "output": "dx-maps/dashboard-plus-grid/dashboard-plus-grid.js", - "integrity": "sha384-nBYRma6gYPnn265qKwT1JTo4U3q5x5afciFKxS8y7hMGIVrgdJQJy3b6yGni+Lfw", + "integrity": "sha384-/YTLq7mqJhfkrsCcZs2MAEyxi1f9zSpgaOlN6hKJZfT+AD9WhByaVrJLEI0WQLr5", "elements": [ "dashboard-plus-grid" ], @@ -256,7 +256,7 @@ "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "embed": { "iframe": "", - "script": "\n\n\n\n\n" + "script": "\n\n\n\n\n" }, "instances": [ { @@ -902,7 +902,7 @@ "bundle": "people-groups-grid", "scriptUrl": "./people-groups-grid/people-groups-grid.js", "output": "dx-maps/people-groups-grid/people-groups-grid.js", - "integrity": "sha384-T5ROzZLd8Y7/fzG+28IjE8X2MntL0lG8j25FO1RtEGNxAx94Z0nRgglJziKIIOn+", + "integrity": "sha384-mAWxn1zO4eldnWFVFDdfgQ42rGRmqwtBZTaNPI2rjsHMgFeSOwpQjT7XZt473BZy", "elements": [ "people-groups-grid" ], @@ -921,7 +921,7 @@ "scriptUrl": "./people-groups-grid/people-groups-grid.js", "embed": { "iframe": "", - "script": "\n\n\n" + "script": "\n\n\n" }, "instances": [ { @@ -1080,7 +1080,7 @@ "bundle": "regions-dashboard", "scriptUrl": "./regions-dashboard/regions-dashboard.js", "output": "dx-maps/regions-dashboard/regions-dashboard.js", - "integrity": "sha384-uVOudl26tRNpGAtLu+3FeXljWQzvGmymxuj5Anx3gxsgrQ/AD/EtmsQtasaMOvHg", + "integrity": "sha384-ruxUgkhdb2OQPgfpdNgWuXmHE5UaMs6GzZt+URCPg7SjqSap+pCCsuCqOGNFfqJc", "elements": [ "regions-dashboard" ], @@ -1103,7 +1103,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n\n\n\n" + "script": "\n\n\n\n\n" } }, { @@ -1119,7 +1119,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n\n" + "script": "\n\n\n" } }, { @@ -1135,7 +1135,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n\n\n\n" + "script": "\n\n\n\n\n" } } ] diff --git a/public/dx-maps/manifest.json b/public/dx-maps/manifest.json index abf64d8d5..4d95a9262 100644 --- a/public/dx-maps/manifest.json +++ b/public/dx-maps/manifest.json @@ -40,7 +40,7 @@ "bundle": "big-picture", "scriptUrl": "./big-picture/big-picture.js", "output": "dx-maps/big-picture/big-picture.js", - "integrity": "sha384-cxgYiMoVcPRRXImJt2ufLHEBTSJzFGMdiThT+LURZI/WwNUVYaI2tVgcwTPo67oC", + "integrity": "sha384-RDL00UKQPC2kUEELx1OYgC3TleLPIwSZODMUEFd5n5vPSRnFNEI28fgdrNTM9sNA", "elements": [ "bp-big-picture", "bp-research-header", @@ -65,7 +65,7 @@ "scriptUrl": "./big-picture/big-picture.js", "embed": { "iframe": "", - "script": "\n\n\n" + "script": "\n\n\n" }, "instances": [ { @@ -233,7 +233,7 @@ "bundle": "dashboard-plus-grid", "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "output": "dx-maps/dashboard-plus-grid/dashboard-plus-grid.js", - "integrity": "sha384-nBYRma6gYPnn265qKwT1JTo4U3q5x5afciFKxS8y7hMGIVrgdJQJy3b6yGni+Lfw", + "integrity": "sha384-/YTLq7mqJhfkrsCcZs2MAEyxi1f9zSpgaOlN6hKJZfT+AD9WhByaVrJLEI0WQLr5", "elements": [ "dashboard-plus-grid" ], @@ -256,7 +256,7 @@ "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "embed": { "iframe": "", - "script": "\n\n\n\n\n" + "script": "\n\n\n\n\n" }, "instances": [ { @@ -902,7 +902,7 @@ "bundle": "people-groups-grid", "scriptUrl": "./people-groups-grid/people-groups-grid.js", "output": "dx-maps/people-groups-grid/people-groups-grid.js", - "integrity": "sha384-T5ROzZLd8Y7/fzG+28IjE8X2MntL0lG8j25FO1RtEGNxAx94Z0nRgglJziKIIOn+", + "integrity": "sha384-mAWxn1zO4eldnWFVFDdfgQ42rGRmqwtBZTaNPI2rjsHMgFeSOwpQjT7XZt473BZy", "elements": [ "people-groups-grid" ], @@ -921,7 +921,7 @@ "scriptUrl": "./people-groups-grid/people-groups-grid.js", "embed": { "iframe": "", - "script": "\n\n\n" + "script": "\n\n\n" }, "instances": [ { @@ -1080,7 +1080,7 @@ "bundle": "regions-dashboard", "scriptUrl": "./regions-dashboard/regions-dashboard.js", "output": "dx-maps/regions-dashboard/regions-dashboard.js", - "integrity": "sha384-uVOudl26tRNpGAtLu+3FeXljWQzvGmymxuj5Anx3gxsgrQ/AD/EtmsQtasaMOvHg", + "integrity": "sha384-ruxUgkhdb2OQPgfpdNgWuXmHE5UaMs6GzZt+URCPg7SjqSap+pCCsuCqOGNFfqJc", "elements": [ "regions-dashboard" ], @@ -1103,7 +1103,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n\n\n\n" + "script": "\n\n\n\n\n" } }, { @@ -1119,7 +1119,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n\n" + "script": "\n\n\n" } }, { @@ -1135,7 +1135,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n\n\n\n" + "script": "\n\n\n\n\n" } } ] diff --git a/public/dx-maps/people-groups-grid/people-groups-grid.js b/public/dx-maps/people-groups-grid/people-groups-grid.js index 33d3c9aa1..41417355f 100644 --- a/public/dx-maps/people-groups-grid/people-groups-grid.js +++ b/public/dx-maps/people-groups-grid/people-groups-grid.js @@ -1,38 +1,38 @@ -(function(){"use strict";var Ho=typeof document<"u"?document.currentScript:null;/** +(function(){"use strict";var Vo=typeof document<"u"?document.currentScript:null;/** * @vue/shared v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function Bo(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const he={},rn=[],ft=()=>{},Zs=()=>!1,Jn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Zn=e=>e.startsWith("onUpdate:"),Se=Object.assign,Vo=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},il=Object.prototype.hasOwnProperty,pe=(e,t)=>il.call(e,t),Y=Array.isArray,jt=e=>$n(e)==="[object Map]",Kt=e=>$n(e)==="[object Set]",Qs=e=>$n(e)==="[object Date]",Q=e=>typeof e=="function",$e=e=>typeof e=="string",gt=e=>typeof e=="symbol",fe=e=>e!==null&&typeof e=="object",ea=e=>(fe(e)||Q(e))&&Q(e.then)&&Q(e.catch),ta=Object.prototype.toString,$n=e=>ta.call(e),ll=e=>$n(e).slice(8,-1),Qn=e=>$n(e)==="[object Object]",Ko=e=>$e(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,vn=Bo(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),eo=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},cl=/-\w/g,Xe=eo(e=>e.replace(cl,t=>t.slice(1).toUpperCase())),ul=/\B([A-Z])/g,et=eo(e=>e.replace(ul,"-$1").toLowerCase()),na=eo(e=>e.charAt(0).toUpperCase()+e.slice(1)),Go=eo(e=>e?`on${na(e)}`:""),ht=(e,t)=>!Object.is(e,t),to=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},sa=e=>{const t=parseFloat(e);return isNaN(t)?e:t},aa=e=>{const t=$e(e)?Number(e):NaN;return isNaN(t)?e:t};let ra;const no=()=>ra||(ra=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Gt(e){if(Y(e)){const t={};for(let n=0;n{if(n){const o=n.split(pl);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function oo(e){let t="";if($e(e))t=e;else if(Y(e))for(let n=0;nUt(n,t))}const ca=e=>!!(e&&e.__v_isRef===!0),ke=e=>$e(e)?e:e==null?"":Y(e)||fe(e)&&(e.toString===ta||!Q(e.toString))?ca(e)?ke(e.value):JSON.stringify(e,ua,2):String(e),ua=(e,t)=>ca(t)?ua(e,t.value):jt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,s],a)=>(n[Xo(o,a)+" =>"]=s,n),{})}:Kt(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Xo(n))}:gt(t)?Xo(t):fe(t)&&!Y(t)&&!Qn(t)?String(t):t,Xo=(e,t="")=>{var n;return gt(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +**/function Ko(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const be={},ln=[],gt=()=>{},ea=()=>!1,Qn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),eo=e=>e.startsWith("onUpdate:"),Ee=Object.assign,Go=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},cl=Object.prototype.hasOwnProperty,ge=(e,t)=>cl.call(e,t),Z=Array.isArray,jt=e=>vn(e)==="[object Map]",Kt=e=>vn(e)==="[object Set]",ta=e=>vn(e)==="[object Date]",te=e=>typeof e=="function",ke=e=>typeof e=="string",ht=e=>typeof e=="symbol",_e=e=>e!==null&&typeof e=="object",na=e=>(_e(e)||te(e))&&te(e.then)&&te(e.catch),oa=Object.prototype.toString,vn=e=>oa.call(e),ul=e=>vn(e).slice(8,-1),to=e=>vn(e)==="[object Object]",Xo=e=>ke(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,yn=Ko(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),no=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},dl=/-\w/g,Be=no(e=>e.replace(dl,t=>t.slice(1).toUpperCase())),pl=/\B([A-Z])/g,tt=no(e=>e.replace(pl,"-$1").toLowerCase()),sa=no(e=>e.charAt(0).toUpperCase()+e.slice(1)),Yo=no(e=>e?`on${sa(e)}`:""),_t=(e,t)=>!Object.is(e,t),oo=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},ra=e=>{const t=parseFloat(e);return isNaN(t)?e:t},ia=e=>{const t=ke(e)?Number(e):NaN;return isNaN(t)?e:t};let la;const so=()=>la||(la=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Gt(e){if(Z(e)){const t={};for(let n=0;n{if(n){const o=n.split(gl);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function ao(e){let t="";if(ke(e))t=e;else if(Z(e))for(let n=0;nUt(n,t))}const da=e=>!!(e&&e.__v_isRef===!0),Le=e=>ke(e)?e:e==null?"":Z(e)||_e(e)&&(e.toString===oa||!te(e.toString))?da(e)?Le(e.value):JSON.stringify(e,pa,2):String(e),pa=(e,t)=>da(t)?pa(e,t.value):jt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,s],a)=>(n[Jo(o,a)+" =>"]=s,n),{})}:Kt(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Jo(n))}:ht(t)?Jo(t):_e(t)&&!Z(t)&&!to(t)?String(t):t,Jo=(e,t="")=>{var n;return ht(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** * @vue/reactivity v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Ie;class bl{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&&Ie&&(Ie.active?(this.parent=Ie,this.index=(Ie.scopes||(Ie.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const o=this.scopes.slice();for(t=0,n=o.length;t0&&--this._on===0){if(Ie===this)Ie=this.prevScope;else{let t=Ie;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 n,o;for(n=0,o=this.effects.length;n0)return;if(wn){let t=wn;for(wn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;yn;){let t=yn;for(yn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function ga(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ha(e){let t,n=e.depsTail,o=n;for(;o;){const s=o.prevDep;o.version===-1?(o===n&&(n=s),es(o),vl(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=s}e.deps=t,e.depsTail=n}function Qo(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(_a(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function _a(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===kn)||(e.globalVersion=kn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Qo(e))))return;e.flags|=2;const t=e.dep,n=_e,o=at;_e=e,at=!0;try{ga(e);const s=e.fn(e._value);(t.version===0||ht(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{_e=n,at=o,ha(e),e.flags&=-3}}function es(e,t=!1){const{dep:n,prevSub:o,nextSub:s}=e;if(o&&(o.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let a=n.computed.deps;a;a=a.nextDep)es(a,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function vl(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let at=!0;const ma=[];function _t(){ma.push(at),at=!1}function mt(){const e=ma.pop();at=e===void 0?!0:e}function ba(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=_e;_e=void 0;try{t()}finally{_e=n}}}let kn=0;class yl{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ts{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(!_e||!at||_e===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==_e)n=this.activeLink=new yl(_e,this),_e.deps?(n.prevDep=_e.depsTail,_e.depsTail.nextDep=n,_e.depsTail=n):_e.deps=_e.depsTail=n,$a(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=_e.depsTail,n.nextDep=void 0,_e.depsTail.nextDep=n,_e.depsTail=n,_e.deps===n&&(_e.deps=o)}return n}trigger(t){this.version++,kn++,this.notify(t)}notify(t){Jo();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Zo()}}}function $a(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let o=t.deps;o;o=o.nextDep)$a(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const ns=new WeakMap,Xt=Symbol(""),os=Symbol(""),An=Symbol("");function je(e,t,n){if(at&&_e){let o=ns.get(e);o||ns.set(e,o=new Map);let s=o.get(n);s||(o.set(n,s=new ts),s.map=o,s.key=n),s.track()}}function Tt(e,t,n,o,s,a){const r=ns.get(e);if(!r){kn++;return}const i=l=>{l&&l.trigger()};if(Jo(),t==="clear")r.forEach(i);else{const l=Y(e),d=l&&Ko(n);if(l&&n==="length"){const p=Number(o);r.forEach((_,b)=>{(b==="length"||b===An||!gt(b)&&b>=p)&&i(_)})}else switch((n!==void 0||r.has(void 0))&&i(r.get(n)),d&&i(r.get(An)),t){case"add":l?d&&i(r.get("length")):(i(r.get(Xt)),jt(e)&&i(r.get(os)));break;case"delete":l||(i(r.get(Xt)),jt(e)&&i(r.get(os)));break;case"set":jt(e)&&i(r.get(Xt));break}}Zo()}function ln(e){const t=ue(e);return t===e?t:(je(t,"iterate",An),tt(e)?t:t.map(rt))}function so(e){return je(e=ue(e),"iterate",An),e}function bt(e,t){return xt(e)?cn(Yt(e)?rt(t):t):rt(t)}const wl={__proto__:null,[Symbol.iterator](){return ss(this,Symbol.iterator,e=>bt(this,e))},concat(...e){return ln(this).concat(...e.map(t=>Y(t)?ln(t):t))},entries(){return ss(this,"entries",e=>(e[1]=bt(this,e[1]),e))},every(e,t){return Lt(this,"every",e,t,void 0,arguments)},filter(e,t){return Lt(this,"filter",e,t,n=>n.map(o=>bt(this,o)),arguments)},find(e,t){return Lt(this,"find",e,t,n=>bt(this,n),arguments)},findIndex(e,t){return Lt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Lt(this,"findLast",e,t,n=>bt(this,n),arguments)},findLastIndex(e,t){return Lt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Lt(this,"forEach",e,t,void 0,arguments)},includes(...e){return as(this,"includes",e)},indexOf(...e){return as(this,"indexOf",e)},join(e){return ln(this).join(e)},lastIndexOf(...e){return as(this,"lastIndexOf",e)},map(e,t){return Lt(this,"map",e,t,void 0,arguments)},pop(){return Sn(this,"pop")},push(...e){return Sn(this,"push",e)},reduce(e,...t){return va(this,"reduce",e,t)},reduceRight(e,...t){return va(this,"reduceRight",e,t)},shift(){return Sn(this,"shift")},some(e,t){return Lt(this,"some",e,t,void 0,arguments)},splice(...e){return Sn(this,"splice",e)},toReversed(){return ln(this).toReversed()},toSorted(e){return ln(this).toSorted(e)},toSpliced(...e){return ln(this).toSpliced(...e)},unshift(...e){return Sn(this,"unshift",e)},values(){return ss(this,"values",e=>bt(this,e))}};function ss(e,t,n){const o=so(e),s=o[t]();return o!==e&&!tt(e)&&(s._next=s.next,s.next=()=>{const a=s._next();return a.done||(a.value=n(a.value)),a}),s}const kl=Array.prototype;function Lt(e,t,n,o,s,a){const r=so(e),i=r!==e&&!tt(e),l=r[t];if(l!==kl[t]){const _=l.apply(e,a);return i?rt(_):_}let d=n;r!==e&&(i?d=function(_,b){return n.call(this,bt(e,_),b,e)}:n.length>2&&(d=function(_,b){return n.call(this,_,b,e)}));const p=l.call(r,d,o);return i&&s?s(p):p}function va(e,t,n,o){const s=so(e),a=s!==e&&!tt(e);let r=n,i=!1;s!==e&&(a?(i=o.length===0,r=function(d,p,_){return i&&(i=!1,d=bt(e,d)),n.call(this,d,bt(e,p),_,e)}):n.length>3&&(r=function(d,p,_){return n.call(this,d,p,_,e)}));const l=s[t](r,...o);return i?bt(e,l):l}function as(e,t,n){const o=ue(e);je(o,"iterate",An);const s=o[t](...n);return(s===-1||s===!1)&&cs(n[0])?(n[0]=ue(n[0]),o[t](...n)):s}function Sn(e,t,n=[]){_t(),Jo();const o=ue(e)[t].apply(e,n);return Zo(),mt(),o}const Al=Bo("__proto__,__v_isRef,__isVue"),ya=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(gt));function Sl(e){gt(e)||(e=String(e));const t=ue(this);return je(t,"has",e),t.hasOwnProperty(e)}class wa{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const s=this._isReadonly,a=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return a;if(n==="__v_raw")return o===(s?a?xa:La:a?Ta:Sa).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const r=Y(t);if(!s){let l;if(r&&(l=wl[n]))return l;if(n==="hasOwnProperty")return Sl}const i=Reflect.get(t,n,Fe(t)?t:o);if((gt(n)?ya.has(n):Al(n))||(s||je(t,"get",n),a))return i;if(Fe(i)){const l=r&&Ko(n)?i:i.value;return s&&fe(l)?ls(l):l}return fe(i)?s?ls(i):is(i):i}}class ka extends wa{constructor(t=!1){super(!1,t)}set(t,n,o,s){let a=t[n];const r=Y(t)&&Ko(n);if(!this._isShallow){const d=xt(a);if(!tt(o)&&!xt(o)&&(a=ue(a),o=ue(o)),!r&&Fe(a)&&!Fe(o))return d||(a.value=o),!0}const i=r?Number(n)e,ao=e=>Reflect.getPrototypeOf(e);function Nl(e,t,n){return function(...o){const s=this.__v_raw,a=ue(s),r=jt(a),i=e==="entries"||e===Symbol.iterator&&r,l=e==="keys"&&r,d=s[e](...o),p=n?rs:t?cn:rt;return!t&&je(a,"iterate",l?os:Xt),Se(Object.create(d),{next(){const{value:_,done:b}=d.next();return b?{value:_,done:b}:{value:i?[p(_[0]),p(_[1])]:p(_),done:b}}})}}function ro(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Ml(e,t){const n={get(s){const a=this.__v_raw,r=ue(a),i=ue(s);e||(ht(s,i)&&je(r,"get",s),je(r,"get",i));const{has:l}=ao(r),d=t?rs:e?cn:rt;if(l.call(r,s))return d(a.get(s));if(l.call(r,i))return d(a.get(i));a!==r&&a.get(s)},get size(){const s=this.__v_raw;return!e&&je(ue(s),"iterate",Xt),s.size},has(s){const a=this.__v_raw,r=ue(a),i=ue(s);return e||(ht(s,i)&&je(r,"has",s),je(r,"has",i)),s===i?a.has(s):a.has(s)||a.has(i)},forEach(s,a){const r=this,i=r.__v_raw,l=ue(i),d=t?rs:e?cn:rt;return!e&&je(l,"iterate",Xt),i.forEach((p,_)=>s.call(a,d(p),d(_),r))}};return Se(n,e?{add:ro("add"),set:ro("set"),delete:ro("delete"),clear:ro("clear")}:{add(s){const a=ue(this),r=ao(a),i=ue(s),l=!t&&!tt(s)&&!xt(s)?i:s;return r.has.call(a,l)||ht(s,l)&&r.has.call(a,s)||ht(i,l)&&r.has.call(a,i)||(a.add(l),Tt(a,"add",l,l)),this},set(s,a){!t&&!tt(a)&&!xt(a)&&(a=ue(a));const r=ue(this),{has:i,get:l}=ao(r);let d=i.call(r,s);d||(s=ue(s),d=i.call(r,s));const p=l.call(r,s);return r.set(s,a),d?ht(a,p)&&Tt(r,"set",s,a):Tt(r,"add",s,a),this},delete(s){const a=ue(this),{has:r,get:i}=ao(a);let l=r.call(a,s);l||(s=ue(s),l=r.call(a,s)),i&&i.call(a,s);const d=a.delete(s);return l&&Tt(a,"delete",s,void 0),d},clear(){const s=ue(this),a=s.size!==0,r=s.clear();return a&&Tt(s,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=Nl(s,e,t)}),n}function io(e,t){const n=Ml(e,t);return(o,s,a)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?o:Reflect.get(pe(n,s)&&s in o?n:o,s,a)}const Pl={get:io(!1,!1)},Cl={get:io(!1,!0)},Ol={get:io(!0,!1)},Il={get:io(!0,!0)},Sa=new WeakMap,Ta=new WeakMap,La=new WeakMap,xa=new WeakMap;function Fl(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function is(e){return xt(e)?e:lo(e,!1,Tl,Pl,Sa)}function Dl(e){return lo(e,!1,xl,Cl,Ta)}function ls(e){return lo(e,!0,Ll,Ol,La)}function Xf(e){return lo(e,!0,El,Il,xa)}function lo(e,t,n,o,s){if(!fe(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const a=s.get(e);if(a)return a;const r=Fl(ll(e));if(r===0)return e;const i=new Proxy(e,r===2?o:n);return s.set(e,i),i}function Yt(e){return xt(e)?Yt(e.__v_raw):!!(e&&e.__v_isReactive)}function xt(e){return!!(e&&e.__v_isReadonly)}function tt(e){return!!(e&&e.__v_isShallow)}function cs(e){return e?!!e.__v_raw:!1}function ue(e){const t=e&&e.__v_raw;return t?ue(t):e}function Rl(e){return!pe(e,"__v_skip")&&Object.isExtensible(e)&&oa(e,"__v_skip",!0),e}const rt=e=>fe(e)?is(e):e,cn=e=>fe(e)?ls(e):e;function Fe(e){return e?e.__v_isRef===!0:!1}function ve(e){return Na(e,!1)}function Ea(e){return Na(e,!0)}function Na(e,t){return Fe(e)?e:new jl(e,t)}class jl{constructor(t,n){this.dep=new ts,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:ue(t),this._value=n?t:rt(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||tt(t)||xt(t);t=o?t:ue(t),ht(t,n)&&(this._rawValue=t,this._value=o?t:rt(t),this.dep.trigger())}}function Jt(e){return Fe(e)?e.value:e}const Ul={get:(e,t,n)=>t==="__v_raw"?e:Jt(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const s=e[t];return Fe(s)&&!Fe(n)?(s.value=n,!0):Reflect.set(e,t,n,o)}};function Ma(e){return Yt(e)?e:new Proxy(e,Ul)}class zl{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new ts(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=kn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&_e!==this)return fa(this,!0),!0}get value(){const t=this.dep.track();return _a(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Wl(e,t,n=!1){let o,s;return Q(e)?o=e:(o=e.get,s=e.set),new zl(o,s,n)}const co={},uo=new WeakMap;let Zt;function ql(e,t=!1,n=Zt){if(n){let o=uo.get(n);o||uo.set(n,o=[]),o.push(e)}}function Hl(e,t,n=he){const{immediate:o,deep:s,once:a,scheduler:r,augmentJob:i,call:l}=n,d=$=>s?$:tt($)||s===!1||s===0?Et($,1):Et($);let p,_,b,S,I=!1,A=!1;if(Fe(e)?(_=()=>e.value,I=tt(e)):Yt(e)?(_=()=>d(e),I=!0):Y(e)?(A=!0,I=e.some($=>Yt($)||tt($)),_=()=>e.map($=>{if(Fe($))return $.value;if(Yt($))return d($);if(Q($))return l?l($,2):$()})):Q(e)?t?_=l?()=>l(e,2):e:_=()=>{if(b){_t();try{b()}finally{mt()}}const $=Zt;Zt=p;try{return l?l(e,3,[S]):e(S)}finally{Zt=$}}:_=ft,t&&s){const $=_,E=s===!0?1/0:s;_=()=>Et($(),E)}const U=$l(),R=()=>{p.stop(),U&&U.active&&Vo(U.effects,p)};if(a&&t){const $=t;t=(...E)=>{const x=$(...E);return R(),x}}let j=A?new Array(e.length).fill(co):co;const w=$=>{if(!(!(p.flags&1)||!p.dirty&&!$))if(t){const E=p.run();if($||s||I||(A?E.some((x,C)=>ht(x,j[C])):ht(E,j))){b&&b();const x=Zt;Zt=p;try{const C=[E,j===co?void 0:A&&j[0]===co?[]:j,S];j=E,l?l(t,3,C):t(...C)}finally{Zt=x}}}else p.run()};return i&&i(w),p=new da(_),p.scheduler=r?()=>r(w,!1):w,S=$=>ql($,!1,p),b=p.onStop=()=>{const $=uo.get(p);if($){if(l)l($,4);else for(const E of $)E();uo.delete(p)}},t?o?w(!0):j=p.run():r?r(w.bind(null,!0),!0):p.run(),R.pause=p.pause.bind(p),R.resume=p.resume.bind(p),R.stop=R,R}function Et(e,t=1/0,n){if(t<=0||!fe(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Fe(e))Et(e.value,t,n);else if(Y(e))for(let o=0;o{Et(o,t,n)});else if(Qn(e)){for(const o in e)Et(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&Et(e[o],t,n)}return e}/** +**/let Ie;class vl{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&&Ie&&(Ie.active?(this.parent=Ie,this.index=(Ie.scopes||(Ie.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const o=this.scopes.slice();for(t=0,n=o.length;t0&&--this._on===0){if(Ie===this)Ie=this.prevScope;else{let t=Ie;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 n,o;for(n=0,o=this.effects.length;n0)return;if(kn){let t=kn;for(kn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;wn;){let t=wn;for(wn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function _a(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ma(e){let t,n=e.depsTail,o=n;for(;o;){const s=o.prevDep;o.version===-1?(o===n&&(n=s),ns(o),wl(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=s}e.deps=t,e.depsTail=n}function ts(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ba(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ba(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===An)||(e.globalVersion=An,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!ts(e))))return;e.flags|=2;const t=e.dep,n=ye,o=lt;ye=e,lt=!0;try{_a(e);const s=e.fn(e._value);(t.version===0||_t(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{ye=n,lt=o,ma(e),e.flags&=-3}}function ns(e,t=!1){const{dep:n,prevSub:o,nextSub:s}=e;if(o&&(o.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let a=n.computed.deps;a;a=a.nextDep)ns(a,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function wl(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let lt=!0;const $a=[];function mt(){$a.push(lt),lt=!1}function bt(){const e=$a.pop();lt=e===void 0?!0:e}function va(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ye;ye=void 0;try{t()}finally{ye=n}}}let An=0;class kl{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class os{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(!ye||!lt||ye===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ye)n=this.activeLink=new kl(ye,this),ye.deps?(n.prevDep=ye.depsTail,ye.depsTail.nextDep=n,ye.depsTail=n):ye.deps=ye.depsTail=n,ya(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=ye.depsTail,n.nextDep=void 0,ye.depsTail.nextDep=n,ye.depsTail=n,ye.deps===n&&(ye.deps=o)}return n}trigger(t){this.version++,An++,this.notify(t)}notify(t){Qo();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{es()}}}function ya(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let o=t.deps;o;o=o.nextDep)ya(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const ss=new WeakMap,Xt=Symbol(""),as=Symbol(""),Sn=Symbol("");function Re(e,t,n){if(lt&&ye){let o=ss.get(e);o||ss.set(e,o=new Map);let s=o.get(n);s||(o.set(n,s=new os),s.map=o,s.key=n),s.track()}}function Tt(e,t,n,o,s,a){const r=ss.get(e);if(!r){An++;return}const i=l=>{l&&l.trigger()};if(Qo(),t==="clear")r.forEach(i);else{const l=Z(e),d=l&&Xo(n);if(l&&n==="length"){const p=Number(o);r.forEach((h,m)=>{(m==="length"||m===Sn||!ht(m)&&m>=p)&&i(h)})}else switch((n!==void 0||r.has(void 0))&&i(r.get(n)),d&&i(r.get(Sn)),t){case"add":l?d&&i(r.get("length")):(i(r.get(Xt)),jt(e)&&i(r.get(as)));break;case"delete":l||(i(r.get(Xt)),jt(e)&&i(r.get(as)));break;case"set":jt(e)&&i(r.get(Xt));break}}es()}function cn(e){const t=pe(e);return t===e?t:(Re(t,"iterate",Sn),nt(e)?t:t.map(ct))}function ro(e){return Re(e=pe(e),"iterate",Sn),e}function $t(e,t){return xt(e)?un(Yt(e)?ct(t):t):ct(t)}const Al={__proto__:null,[Symbol.iterator](){return rs(this,Symbol.iterator,e=>$t(this,e))},concat(...e){return cn(this).concat(...e.map(t=>Z(t)?cn(t):t))},entries(){return rs(this,"entries",e=>(e[1]=$t(this,e[1]),e))},every(e,t){return Lt(this,"every",e,t,void 0,arguments)},filter(e,t){return Lt(this,"filter",e,t,n=>n.map(o=>$t(this,o)),arguments)},find(e,t){return Lt(this,"find",e,t,n=>$t(this,n),arguments)},findIndex(e,t){return Lt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Lt(this,"findLast",e,t,n=>$t(this,n),arguments)},findLastIndex(e,t){return Lt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Lt(this,"forEach",e,t,void 0,arguments)},includes(...e){return is(this,"includes",e)},indexOf(...e){return is(this,"indexOf",e)},join(e){return cn(this).join(e)},lastIndexOf(...e){return is(this,"lastIndexOf",e)},map(e,t){return Lt(this,"map",e,t,void 0,arguments)},pop(){return Tn(this,"pop")},push(...e){return Tn(this,"push",e)},reduce(e,...t){return wa(this,"reduce",e,t)},reduceRight(e,...t){return wa(this,"reduceRight",e,t)},shift(){return Tn(this,"shift")},some(e,t){return Lt(this,"some",e,t,void 0,arguments)},splice(...e){return Tn(this,"splice",e)},toReversed(){return cn(this).toReversed()},toSorted(e){return cn(this).toSorted(e)},toSpliced(...e){return cn(this).toSpliced(...e)},unshift(...e){return Tn(this,"unshift",e)},values(){return rs(this,"values",e=>$t(this,e))}};function rs(e,t,n){const o=ro(e),s=o[t]();return o!==e&&!nt(e)&&(s._next=s.next,s.next=()=>{const a=s._next();return a.done||(a.value=n(a.value)),a}),s}const Sl=Array.prototype;function Lt(e,t,n,o,s,a){const r=ro(e),i=r!==e&&!nt(e),l=r[t];if(l!==Sl[t]){const h=l.apply(e,a);return i?ct(h):h}let d=n;r!==e&&(i?d=function(h,m){return n.call(this,$t(e,h),m,e)}:n.length>2&&(d=function(h,m){return n.call(this,h,m,e)}));const p=l.call(r,d,o);return i&&s?s(p):p}function wa(e,t,n,o){const s=ro(e),a=s!==e&&!nt(e);let r=n,i=!1;s!==e&&(a?(i=o.length===0,r=function(d,p,h){return i&&(i=!1,d=$t(e,d)),n.call(this,d,$t(e,p),h,e)}):n.length>3&&(r=function(d,p,h){return n.call(this,d,p,h,e)}));const l=s[t](r,...o);return i?$t(e,l):l}function is(e,t,n){const o=pe(e);Re(o,"iterate",Sn);const s=o[t](...n);return(s===-1||s===!1)&&ds(n[0])?(n[0]=pe(n[0]),o[t](...n)):s}function Tn(e,t,n=[]){mt(),Qo();const o=pe(e)[t].apply(e,n);return es(),bt(),o}const Tl=Ko("__proto__,__v_isRef,__isVue"),ka=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ht));function Ll(e){ht(e)||(e=String(e));const t=pe(this);return Re(t,"has",e),t.hasOwnProperty(e)}class Aa{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const s=this._isReadonly,a=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return a;if(n==="__v_raw")return o===(s?a?Na:Ea:a?xa:La).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const r=Z(t);if(!s){let l;if(r&&(l=Al[n]))return l;if(n==="hasOwnProperty")return Ll}const i=Reflect.get(t,n,Fe(t)?t:o);if((ht(n)?ka.has(n):Tl(n))||(s||Re(t,"get",n),a))return i;if(Fe(i)){const l=r&&Xo(n)?i:i.value;return s&&_e(l)?us(l):l}return _e(i)?s?us(i):cs(i):i}}class Sa extends Aa{constructor(t=!1){super(!1,t)}set(t,n,o,s){let a=t[n];const r=Z(t)&&Xo(n);if(!this._isShallow){const d=xt(a);if(!nt(o)&&!xt(o)&&(a=pe(a),o=pe(o)),!r&&Fe(a)&&!Fe(o))return d||(a.value=o),!0}const i=r?Number(n)e,io=e=>Reflect.getPrototypeOf(e);function Pl(e,t,n){return function(...o){const s=this.__v_raw,a=pe(s),r=jt(a),i=e==="entries"||e===Symbol.iterator&&r,l=e==="keys"&&r,d=s[e](...o),p=n?ls:t?un:ct;return!t&&Re(a,"iterate",l?as:Xt),Ee(Object.create(d),{next(){const{value:h,done:m}=d.next();return m?{value:h,done:m}:{value:i?[p(h[0]),p(h[1])]:p(h),done:m}}})}}function lo(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Cl(e,t){const n={get(s){const a=this.__v_raw,r=pe(a),i=pe(s);e||(_t(s,i)&&Re(r,"get",s),Re(r,"get",i));const{has:l}=io(r),d=t?ls:e?un:ct;if(l.call(r,s))return d(a.get(s));if(l.call(r,i))return d(a.get(i));a!==r&&a.get(s)},get size(){const s=this.__v_raw;return!e&&Re(pe(s),"iterate",Xt),s.size},has(s){const a=this.__v_raw,r=pe(a),i=pe(s);return e||(_t(s,i)&&Re(r,"has",s),Re(r,"has",i)),s===i?a.has(s):a.has(s)||a.has(i)},forEach(s,a){const r=this,i=r.__v_raw,l=pe(i),d=t?ls:e?un:ct;return!e&&Re(l,"iterate",Xt),i.forEach((p,h)=>s.call(a,d(p),d(h),r))}};return Ee(n,e?{add:lo("add"),set:lo("set"),delete:lo("delete"),clear:lo("clear")}:{add(s){const a=pe(this),r=io(a),i=pe(s),l=!t&&!nt(s)&&!xt(s)?i:s;return r.has.call(a,l)||_t(s,l)&&r.has.call(a,s)||_t(i,l)&&r.has.call(a,i)||(a.add(l),Tt(a,"add",l,l)),this},set(s,a){!t&&!nt(a)&&!xt(a)&&(a=pe(a));const r=pe(this),{has:i,get:l}=io(r);let d=i.call(r,s);d||(s=pe(s),d=i.call(r,s));const p=l.call(r,s);return r.set(s,a),d?_t(a,p)&&Tt(r,"set",s,a):Tt(r,"add",s,a),this},delete(s){const a=pe(this),{has:r,get:i}=io(a);let l=r.call(a,s);l||(s=pe(s),l=r.call(a,s)),i&&i.call(a,s);const d=a.delete(s);return l&&Tt(a,"delete",s,void 0),d},clear(){const s=pe(this),a=s.size!==0,r=s.clear();return a&&Tt(s,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=Pl(s,e,t)}),n}function co(e,t){const n=Cl(e,t);return(o,s,a)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?o:Reflect.get(ge(n,s)&&s in o?n:o,s,a)}const Ol={get:co(!1,!1)},Il={get:co(!1,!0)},Fl={get:co(!0,!1)},Dl={get:co(!0,!0)},La=new WeakMap,xa=new WeakMap,Ea=new WeakMap,Na=new WeakMap;function Rl(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function cs(e){return xt(e)?e:uo(e,!1,xl,Ol,La)}function jl(e){return uo(e,!1,Nl,Il,xa)}function us(e){return uo(e,!0,El,Fl,Ea)}function Jf(e){return uo(e,!0,Ml,Dl,Na)}function uo(e,t,n,o,s){if(!_e(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const a=s.get(e);if(a)return a;const r=Rl(ul(e));if(r===0)return e;const i=new Proxy(e,r===2?o:n);return s.set(e,i),i}function Yt(e){return xt(e)?Yt(e.__v_raw):!!(e&&e.__v_isReactive)}function xt(e){return!!(e&&e.__v_isReadonly)}function nt(e){return!!(e&&e.__v_isShallow)}function ds(e){return e?!!e.__v_raw:!1}function pe(e){const t=e&&e.__v_raw;return t?pe(t):e}function Ul(e){return!ge(e,"__v_skip")&&Object.isExtensible(e)&&aa(e,"__v_skip",!0),e}const ct=e=>_e(e)?cs(e):e,un=e=>_e(e)?us(e):e;function Fe(e){return e?e.__v_isRef===!0:!1}function Ae(e){return Pa(e,!1)}function Ma(e){return Pa(e,!0)}function Pa(e,t){return Fe(e)?e:new zl(e,t)}class zl{constructor(t,n){this.dep=new os,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:pe(t),this._value=n?t:ct(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||nt(t)||xt(t);t=o?t:pe(t),_t(t,n)&&(this._rawValue=t,this._value=o?t:ct(t),this.dep.trigger())}}function Jt(e){return Fe(e)?e.value:e}const Wl={get:(e,t,n)=>t==="__v_raw"?e:Jt(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const s=e[t];return Fe(s)&&!Fe(n)?(s.value=n,!0):Reflect.set(e,t,n,o)}};function Ca(e){return Yt(e)?e:new Proxy(e,Wl)}class ql{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new os(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=An-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&ye!==this)return ha(this,!0),!0}get value(){const t=this.dep.track();return ba(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Hl(e,t,n=!1){let o,s;return te(e)?o=e:(o=e.get,s=e.set),new ql(o,s,n)}const po={},fo=new WeakMap;let Zt;function Bl(e,t=!1,n=Zt){if(n){let o=fo.get(n);o||fo.set(n,o=[]),o.push(e)}}function Vl(e,t,n=be){const{immediate:o,deep:s,once:a,scheduler:r,augmentJob:i,call:l}=n,d=b=>s?b:nt(b)||s===!1||s===0?Et(b,1):Et(b);let p,h,m,k,D=!1,E=!1;if(Fe(e)?(h=()=>e.value,D=nt(e)):Yt(e)?(h=()=>d(e),D=!0):Z(e)?(E=!0,D=e.some(b=>Yt(b)||nt(b)),h=()=>e.map(b=>{if(Fe(b))return b.value;if(Yt(b))return d(b);if(te(b))return l?l(b,2):b()})):te(e)?t?h=l?()=>l(e,2):e:h=()=>{if(m){mt();try{m()}finally{bt()}}const b=Zt;Zt=p;try{return l?l(e,3,[k]):e(k)}finally{Zt=b}}:h=gt,t&&s){const b=h,P=s===!0?1/0:s;h=()=>Et(b(),P)}const z=yl(),N=()=>{p.stop(),z&&z.active&&Go(z.effects,p)};if(a&&t){const b=t;t=(...P)=>{const x=b(...P);return N(),x}}let H=E?new Array(e.length).fill(po):po;const w=b=>{if(!(!(p.flags&1)||!p.dirty&&!b))if(t){const P=p.run();if(b||s||D||(E?P.some((x,O)=>_t(x,H[O])):_t(P,H))){m&&m();const x=Zt;Zt=p;try{const O=[P,H===po?void 0:E&&H[0]===po?[]:H,k];H=P,l?l(t,3,O):t(...O)}finally{Zt=x}}}else p.run()};return i&&i(w),p=new fa(h),p.scheduler=r?()=>r(w,!1):w,k=b=>Bl(b,!1,p),m=p.onStop=()=>{const b=fo.get(p);if(b){if(l)l(b,4);else for(const P of b)P();fo.delete(p)}},t?o?w(!0):H=p.run():r?r(w.bind(null,!0),!0):p.run(),N.pause=p.pause.bind(p),N.resume=p.resume.bind(p),N.stop=N,N}function Et(e,t=1/0,n){if(t<=0||!_e(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Fe(e))Et(e.value,t,n);else if(Z(e))for(let o=0;o{Et(o,t,n)});else if(to(e)){for(const o in e)Et(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&Et(e[o],t,n)}return e}/** * @vue/runtime-core v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const Tn=[];let us=!1;function Yf(e,...t){if(us)return;us=!0,_t();const n=Tn.length?Tn[Tn.length-1].component:null,o=n&&n.appContext.config.warnHandler,s=Bl();if(o)un(o,n,11,[e+t.map(a=>{var r,i;return(i=(r=a.toString)==null?void 0:r.call(a))!=null?i:JSON.stringify(a)}).join(""),n&&n.proxy,s.map(({vnode:a})=>`at <${Tr(n,a.type)}>`).join(` +**/const Ln=[];let ps=!1;function Zf(e,...t){if(ps)return;ps=!0,mt();const n=Ln.length?Ln[Ln.length-1].component:null,o=n&&n.appContext.config.warnHandler,s=Kl();if(o)dn(o,n,11,[e+t.map(a=>{var r,i;return(i=(r=a.toString)==null?void 0:r.call(a))!=null?i:JSON.stringify(a)}).join(""),n&&n.proxy,s.map(({vnode:a})=>`at <${xr(n,a.type)}>`).join(` `),s]);else{const a=[`[Vue warn]: ${e}`,...t];s.length&&a.push(` -`,...Vl(s)),console.warn(...a)}mt(),us=!1}function Bl(){let e=Tn[Tn.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const o=e.component&&e.component.parent;e=o&&o.vnode}return t}function Vl(e){const t=[];return e.forEach((n,o)=>{t.push(...o===0?[]:[` -`],...Kl(n))}),t}function Kl({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",o=e.component?e.component.parent==null:!1,s=` at <${Tr(e.component,e.type,o)}`,a=">"+n;return e.props?[s,...Gl(e.props),a]:[s+a]}function Gl(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(o=>{t.push(...Pa(o,e[o]))}),n.length>3&&t.push(" ..."),t}function Pa(e,t,n){return $e(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Fe(t)?(t=Pa(e,ue(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):Q(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=ue(t),n?t:[`${e}=`,t])}function un(e,t,n,o){try{return o?e(...o):e()}catch(s){po(s,t,n)}}function it(e,t,n,o){if(Q(e)){const s=un(e,t,n,o);return s&&ea(s)&&s.catch(a=>{po(a,t,n)}),s}if(Y(e)){const s=[];for(let a=0;a>>1,s=We[o],a=xn(s);a=xn(n)?We.push(e):We.splice(Yl(t),0,e),e.flags|=1,Oa()}}function Oa(){fo||(fo=Ca.then(Da))}function Jl(e){if(!Y(e))zt&&e.id===-1?zt.splice(pn+1,0,e):e.flags&1||(dn.push(e),e.flags|=1);else for(let t=0;txn(n)-xn(o));if(dn.length=0,zt){for(let n=0;ne.id==null?e.flags&2?-1:1/0:e.id;function Da(e){try{for($t=0;$t{o._d&&wo(-1);const a=go(t),r=tn.length;let i;try{i=e(...s)}finally{for(let l=tn.length;l>r;l--)$r();go(a),o._d&&wo(1)}return i};return o._n=!0,o._c=!0,o._d=!0,o}function Ql(e,t){if(nt===null)return e;const n=Lo(nt),o=e.dirs||(e.dirs=[]);for(let s=0;s1)return n&&Q(t)?t.call(o&&o.proxy):t}}const tc=Symbol.for("v-scx"),nc=()=>En(tc);function lt(e,t,n){return ja(e,t,n)}function ja(e,t,n=he){const{immediate:o,deep:s,flush:a,once:r}=n,i=Se({},n),l=t&&o||!t&&a!=="post";let d;if(zn){if(a==="sync"){const S=nc();d=S.__watcherHandles||(S.__watcherHandles=[])}else if(!l){const S=()=>{};return S.stop=ft,S.resume=ft,S.pause=ft,S}}const p=He;i.call=(S,I,A)=>it(S,p,I,A);let _=!1;a==="post"?i.scheduler=S=>{Ye(S,p&&p.suspense)}:a!=="sync"&&(_=!0,i.scheduler=(S,I)=>{I?S():ds(S)}),i.augmentJob=S=>{t&&(S.flags|=4),_&&(S.flags|=2,p&&(S.id=p.uid,S.i=p))};const b=Hl(e,t,i);return zn&&(d?d.push(b):l&&b()),b}function oc(e,t,n){const o=this.proxy,s=$e(e)?e.includes(".")?Ua(o,e):()=>o[e]:e.bind(o,o);let a;Q(t)?a=t:(a=t.handler,n=t);const r=Un(this),i=ja(s,a.bind(o),n);return r(),i}function Ua(e,t){const n=t.split(".");return()=>{let o=e;for(let s=0;se.__isTeleport,ps=Symbol("_leaveCb");function ac(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Mt){t=n;break}}return t}function za(e){if(!gs(e))return ho(e.type)&&e.children?ac(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&Q(n.default))return n.default()}}function fs(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;fs(ho(n.type)&&za(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function _o(e,t){return Q(e)?Se({name:e.name},t,{setup:e}):e}function Wa(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function qa(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const mo=new WeakMap;function Nn(e,t,n,o,s=!1){if(Y(e)){e.forEach((A,U)=>Nn(A,t&&(Y(t)?t[U]:t),n,o,s));return}if(Mn(o)&&!s){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&Nn(e,t,n,o.component.subTree);return}const a=o.shapeFlag&4?Lo(o.component):o.el,r=s?null:a,{i,r:l}=e,d=t&&t.r,p=i.refs===he?i.refs={}:i.refs,_=i.setupState,b=ue(_),S=_===he?Zs:A=>qa(p,A)?!1:pe(b,A),I=(A,U)=>!(U&&qa(p,U));if(d!=null&&d!==l){if(Ha(t),$e(d))p[d]=null,S(d)&&(_[d]=null);else if(Fe(d)){const A=t;I(d,A.k)&&(d.value=null),A.k&&(p[A.k]=null)}}if(Q(l))un(l,i,12,[r,p]);else{const A=$e(l),U=Fe(l);if(A||U){const R=()=>{if(e.f){const j=A?S(l)?_[l]:p[l]:I()||!e.k?l.value:p[e.k];if(s)Y(j)&&Vo(j,a);else if(Y(j))j.includes(a)||j.push(a);else if(A)p[l]=[a],S(l)&&(_[l]=p[l]);else{const w=[a];I(l,e.k)&&(l.value=w),e.k&&(p[e.k]=w)}}else A?(p[l]=r,S(l)&&(_[l]=r)):U&&(I(l,e.k)&&(l.value=r),e.k&&(p[e.k]=r))};if(r){const j=()=>{R(),mo.delete(e)};j.id=-1,mo.set(e,j),Ye(j,n)}else Ha(e),R()}}}function Ha(e){const t=mo.get(e);t&&(t.flags|=8,mo.delete(e))}no().requestIdleCallback,no().cancelIdleCallback;const Mn=e=>!!e.type.__asyncLoader,gs=e=>e.type.__isKeepAlive;function rc(e,t){Ba(e,"a",t)}function ic(e,t){Ba(e,"da",t)}function Ba(e,t,n=He){const o=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(bo(t,o,n),n){let s=n.parent;for(;s&&s.parent;)gs(s.parent.vnode)&&lc(o,t,n,s),s=s.parent}}function lc(e,t,n,o){const s=bo(t,e,o,!0);hs(()=>{Vo(o[t],s)},n)}function bo(e,t,n=He,o=!1){if(n){const s=n[e]||(n[e]=[]),a=t.__weh||(t.__weh=(...r)=>{_t();const i=Un(n),l=it(t,n,e,r);return i(),mt(),l});return o?s.unshift(a):s.push(a),a}}const Nt=e=>(t,n=He)=>{(!zn||e==="sp")&&bo(e,(...o)=>t(...o),n)},Va=Nt("bm"),$o=Nt("m"),cc=Nt("bu"),uc=Nt("u"),Ka=Nt("bum"),hs=Nt("um"),dc=Nt("sp"),pc=Nt("rtg"),fc=Nt("rtc");function gc(e,t=He){bo("ec",e,t)}const hc=Symbol.for("v-ndc");function Pn(e,t,n,o){let s;const a=n,r=Y(e);if(r||$e(e)){const i=r&&Yt(e);let l=!1,d=!1;i&&(l=!tt(e),d=xt(e),e=so(e)),s=new Array(e.length);for(let p=0,_=e.length;p<_;p++)s[p]=t(l?d?cn(rt(e[p])):rt(e[p]):e[p],p,void 0,a)}else if(typeof e=="number"){s=new Array(e);for(let i=0;it(i,l,void 0,a));else{const i=Object.keys(e);s=new Array(i.length);for(let l=0,d=i.length;le?kr(e)?Lo(e):_s(e.parent):null,Cn=Se(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=>_s(e.parent),$root:e=>_s(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ja(e),$forceUpdate:e=>e.f||(e.f=()=>{ds(e.update)}),$nextTick:e=>e.n||(e.n=Ln.bind(e.proxy)),$watch:e=>oc.bind(e)}),ms=(e,t)=>e!==he&&!e.__isScriptSetup&&pe(e,t),_c={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:s,props:a,accessCache:r,type:i,appContext:l}=e;if(t[0]!=="$"){const b=r[t];if(b!==void 0)switch(b){case 1:return o[t];case 2:return s[t];case 4:return n[t];case 3:return a[t]}else{if(ms(o,t))return r[t]=1,o[t];if(s!==he&&pe(s,t))return r[t]=2,s[t];if(pe(a,t))return r[t]=3,a[t];if(n!==he&&pe(n,t))return r[t]=4,n[t];bs&&(r[t]=0)}}const d=Cn[t];let p,_;if(d)return t==="$attrs"&&je(e.attrs,"get",""),d(e);if((p=i.__cssModules)&&(p=p[t]))return p;if(n!==he&&pe(n,t))return r[t]=4,n[t];if(_=l.config.globalProperties,pe(_,t))return _[t]},set({_:e},t,n){const{data:o,setupState:s,ctx:a}=e;return ms(s,t)?(s[t]=n,!0):o!==he&&pe(o,t)?(o[t]=n,!0):pe(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(a[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:s,props:a,type:r}},i){let l;return!!(n[i]||e!==he&&i[0]!=="$"&&pe(e,i)||ms(t,i)||pe(a,i)||pe(o,i)||pe(Cn,i)||pe(s.config.globalProperties,i)||(l=r.__cssModules)&&l[i])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:pe(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Ga(e){return Y(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let bs=!0;function mc(e){const t=Ja(e),n=e.proxy,o=e.ctx;bs=!1,t.beforeCreate&&Xa(t.beforeCreate,e,"bc");const{data:s,computed:a,methods:r,watch:i,provide:l,inject:d,created:p,beforeMount:_,mounted:b,beforeUpdate:S,updated:I,activated:A,deactivated:U,beforeDestroy:R,beforeUnmount:j,destroyed:w,unmounted:$,render:E,renderTracked:x,renderTriggered:C,errorCaptured:W,serverPrefetch:H,expose:ce,inheritAttrs:K,components:B,directives:V,filters:Ee}=t;if(d&&bc(d,o,null),r)for(const ne in r){const ie=r[ne];Q(ie)&&(o[ne]=ie.bind(n))}if(s){const ne=s.call(n,n);fe(ne)&&(e.data=is(ne))}if(bs=!0,a)for(const ne in a){const ie=a[ne],Ae=Q(ie)?ie.bind(n,n):Q(ie.get)?ie.get.bind(n,n):ft,Ze=!Q(ie)&&Q(ie.set)?ie.set.bind(n):ft,be=le({get:Ae,set:Ze});Object.defineProperty(o,ne,{enumerable:!0,configurable:!0,get:()=>be.value,set:we=>be.value=we})}if(i)for(const ne in i)Ya(i[ne],o,n,ne);if(l){const ne=Q(l)?l.call(n):l;Reflect.ownKeys(ne).forEach(ie=>{ec(ie,ne[ie])})}p&&Xa(p,e,"c");function ee(ne,ie){Y(ie)?ie.forEach(Ae=>ne(Ae.bind(n))):ie&&ne(ie.bind(n))}if(ee(Va,_),ee($o,b),ee(cc,S),ee(uc,I),ee(rc,A),ee(ic,U),ee(gc,W),ee(fc,x),ee(pc,C),ee(Ka,j),ee(hs,$),ee(dc,H),Y(ce))if(ce.length){const ne=e.exposed||(e.exposed={});ce.forEach(ie=>{Object.defineProperty(ne,ie,{get:()=>n[ie],set:Ae=>n[ie]=Ae,enumerable:!0})})}else e.exposed||(e.exposed={});E&&e.render===ft&&(e.render=E),K!=null&&(e.inheritAttrs=K),B&&(e.components=B),V&&(e.directives=V),H&&Wa(e)}function bc(e,t,n=ft){Y(e)&&(e=$s(e));for(const o in e){const s=e[o];let a;fe(s)?"default"in s?a=En(s.from||o,s.default,!0):a=En(s.from||o):a=En(s),Fe(a)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>a.value,set:r=>a.value=r}):t[o]=a}}function Xa(e,t,n){it(Y(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function Ya(e,t,n,o){let s=o.includes(".")?Ua(n,o):()=>n[o];if($e(e)){const a=t[e];Q(a)&<(s,a)}else if(Q(e))lt(s,e.bind(n));else if(fe(e))if(Y(e))e.forEach(a=>Ya(a,t,n,o));else{const a=Q(e.handler)?e.handler.bind(n):t[e.handler];Q(a)&<(s,a,e)}}function Ja(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:s,optionsCache:a,config:{optionMergeStrategies:r}}=e.appContext,i=a.get(t);let l;return i?l=i:!s.length&&!n&&!o?l=t:(l={},s.length&&s.forEach(d=>vo(l,d,r,!0)),vo(l,t,r)),fe(t)&&a.set(t,l),l}function vo(e,t,n,o=!1){const{mixins:s,extends:a}=t;a&&vo(e,a,n,!0),s&&s.forEach(r=>vo(e,r,n,!0));for(const r in t)if(!(o&&r==="expose")){const i=$c[r]||n&&n[r];e[r]=i?i(e[r],t[r]):t[r]}return e}const $c={data:Za,props:Qa,emits:Qa,methods:On,computed:On,beforeCreate:qe,created:qe,beforeMount:qe,mounted:qe,beforeUpdate:qe,updated:qe,beforeDestroy:qe,beforeUnmount:qe,destroyed:qe,unmounted:qe,activated:qe,deactivated:qe,errorCaptured:qe,serverPrefetch:qe,components:On,directives:On,watch:yc,provide:Za,inject:vc};function Za(e,t){return t?e?function(){return Se(Q(e)?e.call(this,this):e,Q(t)?t.call(this,this):t)}:t:e}function vc(e,t){return On($s(e),$s(t))}function $s(e){if(Y(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Xe(t)}Modifiers`]||e[`${et(t)}Modifiers`];function Sc(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||he;let s=n;const a=t.startsWith("update:"),r=a&&Ac(o,t.slice(7));r&&(r.trim&&(s=n.map(p=>$e(p)?p.trim():p)),r.number&&(s=s.map(sa)));let i,l=o[i=Go(t)]||o[i=Go(Xe(t))];!l&&a&&(l=o[i=Go(et(t))]),l&&it(l,e,6,s);const d=o[i+"Once"];if(d){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,it(d,e,6,s)}}const Tc=new WeakMap;function tr(e,t,n=!1){const o=n?Tc:t.emitsCache,s=o.get(e);if(s!==void 0)return s;const a=e.emits;let r={},i=!1;if(!Q(e)){const l=d=>{const p=tr(d,t,!0);p&&(i=!0,Se(r,p))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!a&&!i?(fe(e)&&o.set(e,null),null):(Y(a)?a.forEach(l=>r[l]=null):Se(r,a),fe(e)&&o.set(e,r),r)}function yo(e,t){return!e||!Jn(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,et(t))||pe(e,t))}function Jf(){}function nr(e){const{type:t,vnode:n,proxy:o,withProxy:s,propsOptions:[a],slots:r,attrs:i,emit:l,render:d,renderCache:p,props:_,data:b,setupState:S,ctx:I,inheritAttrs:A}=e,U=go(e);let R,j;try{if(n.shapeFlag&4){const $=s||o,E=$;R=vt(d.call(E,$,p,_,S,b,I)),j=i}else{const $=t;R=vt($.length>1?$(_,{attrs:i,slots:r,emit:l}):$(_,null)),j=t.props?i:Lc(i)}}catch($){tn.length=0,po($,e,1),R=Le(Mt)}let w=R;if(j&&A!==!1){const $=Object.keys(j),{shapeFlag:E}=w;$.length&&E&7&&(a&&$.some(Zn)&&(j=xc(j,a)),w=gn(w,j,!1,!0))}if(n.dirs&&(w=gn(w,null,!1,!0),w.dirs=w.dirs?w.dirs.concat(n.dirs):n.dirs),n.transition){const $=ho(w.type)&&za(w)||w;fs($,n.transition)}return R=w,go(U),R}const Lc=e=>{let t;for(const n in e)(n==="class"||n==="style"||Jn(n))&&((t||(t={}))[n]=e[n]);return t},xc=(e,t)=>{const n={};for(const o in e)(!Zn(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function Ec(e,t,n){const{props:o,children:s,component:a}=e,{props:r,children:i,patchFlag:l}=t,d=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?or(o,r,d):!!r;if(l&8){const p=t.dynamicProps;for(let _=0;_Object.create(ar),ir=e=>Object.getPrototypeOf(e)===ar;function Mc(e,t,n,o=!1){const s={},a=rr();e.propsDefaults=Object.create(null),lr(e,t,s,a);for(const r in e.propsOptions[0])r in s||(s[r]=void 0);n?e.props=o?s:Dl(s):e.type.props?e.props=s:e.props=a,e.attrs=a}function Pc(e,t,n,o){const{props:s,attrs:a,vnode:{patchFlag:r}}=e,i=ue(s),[l]=e.propsOptions;let d=!1;if((o||r>0)&&!(r&16)){if(r&8){const p=e.vnode.dynamicProps;for(let _=0;_{l=!0;const[b,S]=cr(_,t,!0);Se(r,b),S&&i.push(...S)};!n&&t.mixins.length&&t.mixins.forEach(p),e.extends&&p(e.extends),e.mixins&&e.mixins.forEach(p)}if(!a&&!l)return fe(e)&&o.set(e,rn),rn;if(Y(a))for(let p=0;pe==="_"||e==="_ctx"||e==="$stable",ws=e=>Y(e)?e.map(vt):[vt(e)],Oc=(e,t,n)=>{if(t._n)return t;const o=Zl((...s)=>ws(t(...s)),n);return o._c=!1,o},dr=(e,t,n)=>{const o=e._ctx;for(const s in e){if(ys(s))continue;const a=e[s];if(Q(a))t[s]=Oc(s,a,o);else if(a!=null){const r=ws(a);t[s]=()=>r}}},pr=(e,t)=>{const n=ws(t);e.slots.default=()=>n},fr=(e,t,n)=>{for(const o in t)(n||!ys(o))&&(e[o]=t[o])},Ic=(e,t,n)=>{const o=e.slots=rr();if(e.vnode.shapeFlag&32){const s=t._;s?(fr(o,t,n),n&&oa(o,"_",s,!0)):dr(t,o)}else t&&pr(e,t)},Fc=(e,t,n)=>{const{vnode:o,slots:s}=e;let a=!0,r=he;if(o.shapeFlag&32){const i=t._;i?n&&i===1?a=!1:fr(s,t,n):(a=!t.$stable,dr(t,s)),r=t}else t&&(pr(e,t),r={default:1});if(a)for(const i in s)!ys(i)&&r[i]==null&&delete s[i]},Ye=zc;function Dc(e){return Rc(e)}function Rc(e,t){const n=no();n.__VUE__=!0;const{insert:o,remove:s,patchProp:a,createElement:r,createText:i,createComment:l,setText:d,setElementText:p,parentNode:_,nextSibling:b,setScopeId:S=ft,insertStaticContent:I}=e,A=(g,m,h,T=null,M=null,N=null,F=void 0,D=null,c=!!m.dynamicChildren)=>{if(g===m)return;g&&!Dn(g,m)&&(T=dt(g),we(g,M,N,!0),g=null),m.patchFlag===-2&&(c=!1,m.dynamicChildren=null);const{type:u,ref:y,shapeFlag:L}=m;switch(u){case In:U(g,m,h,T);break;case Mt:R(g,m,h,T);break;case As:g==null&&j(m,h,T,F);break;case Te:B(g,m,h,T,M,N,F,D,c);break;default:L&1?E(g,m,h,T,M,N,F,D,c):L&6?V(g,m,h,T,M,N,F,D,c):(L&64||L&128)&&u.process(g,m,h,T,M,N,F,D,c,Ge)}y!=null&&M?Nn(y,g&&g.ref,N,m||g,!m):y==null&&g&&g.ref!=null&&Nn(g.ref,null,N,g,!0)},U=(g,m,h,T)=>{if(g==null)o(m.el=i(m.children),h,T);else{const M=m.el=g.el;m.children!==g.children&&d(M,m.children)}},R=(g,m,h,T)=>{g==null?o(m.el=l(m.children||""),h,T):m.el=g.el},j=(g,m,h,T)=>{[g.el,g.anchor]=I(g.children,m,h,T,g.el,g.anchor)},w=({el:g,anchor:m},h,T)=>{let M;for(;g&&g!==m;)M=b(g),o(g,h,T),g=M;o(m,h,T)},$=({el:g,anchor:m})=>{let h;for(;g&&g!==m;)h=b(g),s(g),g=h;s(m)},E=(g,m,h,T,M,N,F,D,c)=>{if(m.type==="svg"?F="svg":m.type==="math"&&(F="mathml"),g==null)x(m,h,T,M,N,F,D,c);else{const u=g.el&&g.el._isVueCE?g.el:null;try{u&&u._beginPatch(),H(g,m,M,N,F,D,c)}finally{u&&u._endPatch()}}},x=(g,m,h,T,M,N,F,D)=>{let c,u;const{props:y,shapeFlag:L,transition:z,dirs:O}=g;if(c=g.el=r(g.type,N,y&&y.is,y),L&8?p(c,g.children):L&16&&W(g.children,c,null,T,M,ks(g,N),F,D),O&&Qt(g,null,T,"created"),C(c,g,g.scopeId,F,T),y){for(const f in y)f!=="value"&&!vn(f)&&a(c,f,null,y[f],N,T);"value"in y&&a(c,"value",null,y.value,N),(u=y.onVnodeBeforeMount)&&yt(u,T,g)}O&&Qt(g,null,T,"beforeMount");const v=jc(M,z);v&&z.beforeEnter(c),o(c,m,h),((u=y&&y.onVnodeMounted)||v||O)&&Ye(()=>{try{u&&yt(u,T,g),v&&z.enter(c),O&&Qt(g,null,T,"mounted")}finally{}},M)},C=(g,m,h,T,M)=>{if(h&&S(g,h),T)for(let N=0;N{for(let u=c;u{const D=m.el=g.el;let{patchFlag:c,dynamicChildren:u,dirs:y}=m;c|=g.patchFlag&16;const L=g.props||he,z=m.props||he;let O;if(h&&en(h,!1),(O=z.onVnodeBeforeUpdate)&&yt(O,h,m,g),y&&Qt(m,g,h,"beforeUpdate"),h&&en(h,!0),u&&(!g.dynamicChildren||g.dynamicChildren.length!==u.length)&&(c=0,F=!1,u=null),(L.innerHTML&&z.innerHTML==null||L.textContent&&z.textContent==null)&&p(D,""),u?ce(g.dynamicChildren,u,D,h,T,ks(m,M),N):F||ie(g,m,D,null,h,T,ks(m,M),N,!1),c>0){if(c&16)K(D,L,z,h,M);else if(c&2&&L.class!==z.class&&a(D,"class",null,z.class,M),c&4&&a(D,"style",L.style,z.style,M),c&8){const v=m.dynamicProps;for(let f=0;f{O&&yt(O,h,m,g),y&&Qt(m,g,h,"updated")},T)},ce=(g,m,h,T,M,N,F)=>{for(let D=0;D{if(m!==h){if(m!==he)for(const N in m)!vn(N)&&!(N in h)&&a(g,N,m[N],null,M,T);for(const N in h){if(vn(N))continue;const F=h[N],D=m[N];F!==D&&N!=="value"&&a(g,N,D,F,M,T)}"value"in h&&a(g,"value",m.value,h.value,M)}},B=(g,m,h,T,M,N,F,D,c)=>{const u=m.el=g?g.el:i(""),y=m.anchor=g?g.anchor:i("");let{patchFlag:L,dynamicChildren:z,slotScopeIds:O}=m;O&&(D=D?D.concat(O):O),g==null?(o(u,h,T),o(y,h,T),W(m.children||[],h,y,M,N,F,D,c)):L>0&&L&64&&z&&g.dynamicChildren&&g.dynamicChildren.length===z.length?(ce(g.dynamicChildren,z,h,M,N,F,D),(m.key!=null||M&&m===M.subTree)&&gr(g,m,!0)):ie(g,m,h,y,M,N,F,D,c)},V=(g,m,h,T,M,N,F,D,c)=>{m.slotScopeIds=D,g==null?m.shapeFlag&512?M.ctx.activate(m,h,T,F,c):Ee(m,h,T,M,N,F,c):Me(g,m,c)},Ee=(g,m,h,T,M,N,F)=>{const D=g.component=Gc(g,T,M);if(gs(g)&&(D.ctx.renderer=Ge),Xc(D,!1,F),D.asyncDep){if(M&&M.registerDep(D,ee,F),!g.el){const c=D.subTree=Le(Mt);R(null,c,m,h),g.placeholder=c.el}}else ee(D,g,m,h,M,N,F)},Me=(g,m,h)=>{const T=m.component=g.component;if(Ec(g,m,h))if(T.asyncDep&&!T.asyncResolved){ne(T,m,h);return}else T.next=m,T.update();else m.el=g.el,T.vnode=m},ee=(g,m,h,T,M,N,F)=>{const D=()=>{if(g.isMounted){let{next:L,bu:z,u:O,parent:v,vnode:f}=g;{const te=hr(g);if(te){L&&(L.el=f.el,ne(g,L,F)),te.asyncDep.then(()=>{Ye(()=>{g.isUnmounted||u()},M)});return}}let k=L,P;en(g,!1),L?(L.el=f.el,ne(g,L,F)):L=f,z&&to(z),(P=L.props&&L.props.onVnodeBeforeUpdate)&&yt(P,v,L,f),en(g,!0);const q=nr(g),J=g.subTree;g.subTree=q,A(J,q,_(J.el),dt(J),g,M,N),L.el=q.el,k===null&&Nc(g,q.el),O&&Ye(O,M),(P=L.props&&L.props.onVnodeUpdated)&&Ye(()=>yt(P,v,L,f),M)}else{let L;const{el:z,props:O}=m,{bm:v,m:f,parent:k,root:P,type:q}=g,J=Mn(m);en(g,!1),v&&to(v),!J&&(L=O&&O.onVnodeBeforeMount)&&yt(L,k,m),en(g,!0);{P.ce&&P.ce._hasShadowRoot()&&P.ce._injectChildStyle(q,g.parent?g.parent.type:void 0);const te=g.subTree=nr(g);A(null,te,h,T,g,M,N),m.el=te.el}if(f&&Ye(f,M),!J&&(L=O&&O.onVnodeMounted)){const te=m;Ye(()=>yt(L,k,te),M)}(m.shapeFlag&256||k&&Mn(k.vnode)&&k.vnode.shapeFlag&256)&&g.a&&Ye(g.a,M),g.isMounted=!0,m=h=T=null}};g.scope.on();const c=g.effect=new da(D);g.scope.off();const u=g.update=c.run.bind(c),y=g.job=c.runIfDirty.bind(c);y.i=g,y.id=g.uid,c.scheduler=()=>ds(y),en(g,!0),u()},ne=(g,m,h)=>{m.component=g;const T=g.vnode.props;g.vnode=m,g.next=null,Pc(g,m.props,T,h),Fc(g,m.children,h),_t(),Ia(g),mt()},ie=(g,m,h,T,M,N,F,D,c=!1)=>{const u=g&&g.children,y=g?g.shapeFlag:0,L=m.children,{patchFlag:z,shapeFlag:O}=m;if(z>0){if(z&128){Ze(u,L,h,T,M,N,F,D,c);return}else if(z&256){Ae(u,L,h,T,M,N,F,D,c);return}}O&8?(y&16&&Ke(u,M,N),L!==u&&p(h,L)):y&16?O&16?Ze(u,L,h,T,M,N,F,D,c):Ke(u,M,N,!0):(y&8&&p(h,""),O&16&&W(L,h,T,M,N,F,D,c))},Ae=(g,m,h,T,M,N,F,D,c)=>{g=g||rn,m=m||rn;const u=g.length,y=m.length,L=Math.min(u,y);let z;for(z=0;zy?Ke(g,M,N,!0,!1,L):W(m,h,T,M,N,F,D,c,L)},Ze=(g,m,h,T,M,N,F,D,c)=>{let u=0;const y=m.length;let L=g.length-1,z=y-1;for(;u<=L&&u<=z;){const O=g[u],v=m[u]=c?Ct(m[u]):vt(m[u]);if(Dn(O,v))A(O,v,h,null,M,N,F,D,c);else break;u++}for(;u<=L&&u<=z;){const O=g[L],v=m[z]=c?Ct(m[z]):vt(m[z]);if(Dn(O,v))A(O,v,h,null,M,N,F,D,c);else break;L--,z--}if(u>L){if(u<=z){const O=z+1,v=Oz)for(;u<=L;)we(g[u],M,N,!0),u++;else{const O=u,v=u,f=new Map;for(u=v;u<=z;u++){const Pe=m[u]=c?Ct(m[u]):vt(m[u]);Pe.key!=null&&f.set(Pe.key,u)}let k,P=0;const q=z-v+1;let J=!1,te=0;const X=new Array(q);for(u=0;u=q){we(Pe,M,N,!0);continue}let Ce;if(Pe.key!=null)Ce=f.get(Pe.key);else for(k=v;k<=z;k++)if(X[k-v]===0&&Dn(Pe,m[k])){Ce=k;break}Ce===void 0?we(Pe,M,N,!0):(X[Ce-v]=u+1,Ce>=te?te=Ce:J=!0,A(Pe,m[Ce],h,null,M,N,F,D,c),P++)}const Ne=J?Uc(X):rn;for(k=Ne.length-1,u=q-1;u>=0;u--){const Pe=v+u,Ce=m[Pe],Vt=m[Pe+1],St=Pe+1{const{el:N,type:F,transition:D,children:c,shapeFlag:u}=g;if(u&6){be(g.component.subTree,m,h,T);return}if(u&128){g.suspense.move(m,h,T);return}if(u&64){F.move(g,m,h,Ge);return}if(F===Te){o(N,m,h);for(let L=0;LD.enter(N),M));else{const{leave:L,delayLeave:z,afterLeave:O}=D,v=()=>{g.ctx.isUnmounted?s(N):o(N,m,h)},f=()=>{const k=N._isLeaving||!!N[ps];N._isLeaving&&N[ps](!0),D.persisted&&!k?v():L(N,()=>{v(),O&&O()})};z?z(N,v,f):f()}else o(N,m,h)},we=(g,m,h,T=!1,M=!1)=>{const{type:N,props:F,ref:D,children:c,dynamicChildren:u,shapeFlag:y,patchFlag:L,dirs:z,cacheIndex:O,memo:v}=g;if(L===-2&&(M=!1),D!=null&&(_t(),Nn(D,null,h,g,!0),mt()),O!=null&&(m.renderCache[O]=void 0),y&256){m.ctx.deactivate(g);return}const f=y&1&&z,k=!Mn(g);let P;if(k&&(P=F&&F.onVnodeBeforeUnmount)&&yt(P,m,g),y&6)Ve(g.component,h,T);else{if(y&128){g.suspense.unmount(h,T);return}f&&Qt(g,null,m,"beforeUnmount"),y&64?g.type.remove(g,m,h,Ge,T):u&&!u.hasOnce&&(N!==Te||L>0&&L&64)?Ke(u,m,h,!1,!0):(N===Te&&L&384||!M&&y&16)&&Ke(c,m,h),T&&st(g)}const q=v!=null&&O==null;(k&&(P=F&&F.onVnodeUnmounted)||f||q)&&Ye(()=>{P&&yt(P,m,g),f&&Qt(g,null,m,"unmounted"),q&&(g.el=null)},h)},st=g=>{const{type:m,el:h,anchor:T,transition:M}=g;if(m===Te){Re(h,T);return}if(m===As){$(g);return}const N=()=>{s(h),M&&!M.persisted&&M.afterLeave&&M.afterLeave()};if(g.shapeFlag&1&&M&&!M.persisted){const{leave:F,delayLeave:D}=M,c=()=>F(h,N);D?D(g.el,N,c):c()}else N()},Re=(g,m)=>{let h;for(;g!==m;)h=b(g),s(g),g=h;s(m)},Ve=(g,m,h)=>{const{bum:T,scope:M,job:N,subTree:F,um:D,m:c,a:u}=g;_r(c),_r(u),T&&to(T),M.stop(),N&&(N.flags|=8,we(F,g,m,h)),D&&Ye(D,m),Ye(()=>{g.isUnmounted=!0},m)},Ke=(g,m,h,T=!1,M=!1,N=0)=>{for(let F=N;F{if(g.shapeFlag&6)return dt(g.component.subTree);if(g.shapeFlag&128)return g.suspense.next();const m=b(g.anchor||g.el),h=m&&m[sc];return h?b(h):m};let pt=!1;const ze=(g,m,h)=>{let T;g==null?m._vnode&&(we(m._vnode,null,null,!0),T=m._vnode.component):A(m._vnode||null,g,m,null,null,null,h),m._vnode=g,pt||(pt=!0,Ia(T),Fa(),pt=!1)},Ge={p:A,um:we,m:be,r:st,mt:Ee,mc:W,pc:ie,pbc:ce,n:dt,o:e};return{render:ze,hydrate:void 0,createApp:kc(ze)}}function ks({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function en({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function jc(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function gr(e,t,n=!1){const o=e.children,s=t.children;if(Y(o)&&Y(s))for(let a=0;a>1,e[n[i]]0&&(t[o]=n[a-1]),n[a]=o)}}for(a=n.length,r=n[a-1];a-- >0;)n[a]=r,r=t[r];return n}function hr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:hr(t)}function _r(e){if(e)for(let t=0;te.__isSuspense;function zc(e,t){t&&t.pendingBranch?Y(e)?t.effects.push(...e):t.effects.push(e):Jl(e)}const Te=Symbol.for("v-fgt"),In=Symbol.for("v-txt"),Mt=Symbol.for("v-cmt"),As=Symbol.for("v-stc"),tn=[];let Qe=null;function se(e=!1){tn.push(Qe=e?null:[])}function $r(){tn.pop(),Qe=tn[tn.length-1]||null}let Fn=1;function wo(e,t=!1){Fn+=e,e<0&&Qe&&t&&(Qe.hasOnce=!0)}function vr(e){return e.dynamicChildren=Fn>0?Qe||rn:null,$r(),Fn>0&&Qe&&Qe.push(e),e}function ae(e,t,n,o,s,a){return vr(oe(e,t,n,o,s,a,!0))}function Wc(e,t,n,o,s){return vr(Le(e,t,n,o,s,!0))}function ko(e){return e?e.__v_isVNode===!0:!1}function Dn(e,t){return e.type===t.type&&e.key===t.key}const yr=({key:e})=>e??null,Ao=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?$e(e)||Fe(e)||Q(e)?{i:nt,r:e,k:t,f:!!n}:e:null);function oe(e,t=null,n=null,o=0,s=null,a=e===Te?0:1,r=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&yr(t),ref:t&&Ao(t),scopeId:Ra,slotScopeIds:null,children:n,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:a,patchFlag:o,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:nt};return i?(So(l,n),a&128&&e.normalize(l)):n&&(l.shapeFlag|=$e(n)?8:16),Fn>0&&!r&&Qe&&(l.patchFlag>0||a&6)&&l.patchFlag!==32&&Qe.push(l),l}const Le=qc;function qc(e,t=null,n=null,o=0,s=null,a=!1){if((!e||e===hc)&&(e=Mt),ko(e)){const i=gn(e,t,!0);return n&&So(i,n),Fn>0&&!a&&Qe&&(i.shapeFlag&6?Qe[Qe.indexOf(e)]=i:Qe.push(i)),i.patchFlag=-2,i}if(nu(e)&&(e=e.__vccOpts),t){t=Hc(t);let{class:i,style:l}=t;i&&!$e(i)&&(t.class=oo(i)),fe(l)&&(cs(l)&&!Y(l)&&(l=Se({},l)),t.style=Gt(l))}const r=$e(e)?1:br(e)?128:ho(e)?64:fe(e)?4:Q(e)?2:0;return oe(e,t,n,o,s,r,a,!0)}function Hc(e){return e?cs(e)||ir(e)?Se({},e):e:null}function gn(e,t,n=!1,o=!1){const{props:s,ref:a,patchFlag:r,children:i,transition:l}=e,d=t?Bc(s||{},t):s,p={__v_isVNode:!0,__v_skip:!0,type:e.type,props:d,key:d&&yr(d),ref:t&&t.ref?n&&a?Y(a)?a.concat(Ao(t)):[a,Ao(t)]:Ao(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Te?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&gn(e.ssContent),ssFallback:e.ssFallback&&gn(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&fs(p,l.clone(p)),p}function Pt(e=" ",t=0){return Le(In,null,e,t)}function De(e="",t=!1){return t?(se(),Wc(Mt,null,e)):Le(Mt,null,e)}function vt(e){return e==null||typeof e=="boolean"?Le(Mt):Y(e)?Le(Te,null,e.slice()):ko(e)?Ct(e):Le(In,null,String(e))}function Ct(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:gn(e)}function So(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(Y(t))n=16;else if(typeof t=="object")if(o&65){const s=t.default;s&&(s._c&&(s._d=!1),So(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!ir(t)?t._ctx=nt:s===3&&nt&&(nt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(Q(t)){if(o&65){So(e,{default:t});return}t={default:t,_ctx:nt},n=32}else t=String(t),o&64?(n=16,t=[Pt(t)]):n=8;e.children=t,e.shapeFlag|=n}function Bc(...e){const t={};for(let n=0;nHe||nt;let To,jn;{const e=no(),t=(n,o)=>{let s;return(s=e[n])||(s=e[n]=[]),s.push(o),a=>{s.length>1?s.forEach(r=>r(a)):s[0](a)}};To=t("__VUE_INSTANCE_SETTERS__",n=>He=n),jn=t("__VUE_SSR_SETTERS__",n=>zn=n)}const Un=e=>{const t=He;return To(e),e.scope.on(),()=>{e.scope.off(),To(t)}},wr=()=>{He&&He.scope.off(),To(null)};function kr(e){return e.vnode.shapeFlag&4}let zn=!1;function Xc(e,t=!1,n=!1){t&&jn(t);const{props:o,children:s}=e.vnode,a=kr(e);Mc(e,o,a,t),Ic(e,s,n||t);const r=a?Yc(e,t):void 0;return t&&jn(!1),r}function Yc(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,_c);const{setup:o}=n;if(o){_t();const s=e.setupContext=o.length>1?Zc(e):null,a=Un(e),r=un(o,e,0,[e.props,s]),i=ea(r);if(mt(),a(),(i||e.sp)&&!Mn(e)&&Wa(e),i){if(r.then(wr,wr),t)return r.then(l=>{jn(!0);try{Ar(e,l,t)}finally{jn(!1)}}).catch(l=>{po(l,e,0)});e.asyncDep=r}else Ar(e,r)}else Sr(e)}function Ar(e,t,n){Q(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:fe(t)&&(e.setupState=Ma(t)),Sr(e)}function Sr(e,t,n){const o=e.type;e.render||(e.render=o.render||ft);{const s=Un(e);_t();try{mc(e)}finally{mt(),s()}}}const Jc={get(e,t){return je(e,"get",""),e[t]}};function Zc(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Jc),slots:e.slots,emit:e.emit,expose:t}}function Lo(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Ma(Rl(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Cn)return Cn[n](e)},has(t,n){return n in t||n in Cn}})):e.proxy}const Qc=/(?:^|[-_])\w/g,eu=e=>e.replace(Qc,t=>t.toUpperCase()).replace(/[-_]/g,"");function tu(e,t=!0){return Q(e)?e.displayName||e.name:e.name||t&&e.__name}function Tr(e,t,n=!1){let o=tu(t);if(!o&&t.__file){const s=t.__file.match(/([^/\\]+)\.\w+$/);s&&(o=s[1])}if(!o&&e){const s=a=>{for(const r in a)if(a[r]===t)return r};o=s(e.components)||e.parent&&s(e.parent.type.components)||s(e.appContext.components)}return o?eu(o):n?"App":"Anonymous"}function nu(e){return Q(e)&&"__vccOpts"in e}const le=(e,t)=>Wl(e,t,zn);function Lr(e,t,n){try{wo(-1);const o=arguments.length;return o===2?fe(t)&&!Y(t)?ko(t)?Le(e,null,[t]):Le(e,t):Le(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&ko(n)&&(n=[n]),Le(e,t,n))}finally{wo(1)}}const ou="3.5.42";/** +`,...Gl(s)),console.warn(...a)}bt(),ps=!1}function Kl(){let e=Ln[Ln.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const o=e.component&&e.component.parent;e=o&&o.vnode}return t}function Gl(e){const t=[];return e.forEach((n,o)=>{t.push(...o===0?[]:[` +`],...Xl(n))}),t}function Xl({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",o=e.component?e.component.parent==null:!1,s=` at <${xr(e.component,e.type,o)}`,a=">"+n;return e.props?[s,...Yl(e.props),a]:[s+a]}function Yl(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(o=>{t.push(...Oa(o,e[o]))}),n.length>3&&t.push(" ..."),t}function Oa(e,t,n){return ke(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Fe(t)?(t=Oa(e,pe(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):te(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=pe(t),n?t:[`${e}=`,t])}function dn(e,t,n,o){try{return o?e(...o):e()}catch(s){go(s,t,n)}}function ut(e,t,n,o){if(te(e)){const s=dn(e,t,n,o);return s&&na(s)&&s.catch(a=>{go(a,t,n)}),s}if(Z(e)){const s=[];for(let a=0;a>>1,s=ze[o],a=En(s);a=En(n)?ze.push(e):ze.splice(Zl(t),0,e),e.flags|=1,Fa()}}function Fa(){ho||(ho=Ia.then(ja))}function Ql(e){if(!Z(e))zt&&e.id===-1?zt.splice(fn+1,0,e):e.flags&1||(pn.push(e),e.flags|=1);else for(let t=0;tEn(n)-En(o));if(pn.length=0,zt){for(let n=0;ne.id==null?e.flags&2?-1:1/0:e.id;function ja(e){try{for(vt=0;vt{o._d&&Ao(-1);const a=_o(t),r=tn.length;let i;try{i=e(...s)}finally{for(let l=tn.length;l>r;l--)yr();_o(a),o._d&&Ao(1)}return i};return o._n=!0,o._c=!0,o._d=!0,o}function tc(e,t){if(ot===null)return e;const n=Eo(ot),o=e.dirs||(e.dirs=[]);for(let s=0;s1)return n&&te(t)?t.call(o&&o.proxy):t}}const oc=Symbol.for("v-scx"),sc=()=>Nn(oc);function st(e,t,n){return za(e,t,n)}function za(e,t,n=be){const{immediate:o,deep:s,flush:a,once:r}=n,i=Ee({},n),l=t&&o||!t&&a!=="post";let d;if(Wn){if(a==="sync"){const k=sc();d=k.__watcherHandles||(k.__watcherHandles=[])}else if(!l){const k=()=>{};return k.stop=gt,k.resume=gt,k.pause=gt,k}}const p=qe;i.call=(k,D,E)=>ut(k,p,D,E);let h=!1;a==="post"?i.scheduler=k=>{Ve(k,p&&p.suspense)}:a!=="sync"&&(h=!0,i.scheduler=(k,D)=>{D?k():fs(k)}),i.augmentJob=k=>{t&&(k.flags|=4),h&&(k.flags|=2,p&&(k.id=p.uid,k.i=p))};const m=Vl(e,t,i);return Wn&&(d?d.push(m):l&&m()),m}function ac(e,t,n){const o=this.proxy,s=ke(e)?e.includes(".")?Wa(o,e):()=>o[e]:e.bind(o,o);let a;te(t)?a=t:(a=t.handler,n=t);const r=zn(this),i=za(s,a.bind(o),n);return r(),i}function Wa(e,t){const n=t.split(".");return()=>{let o=e;for(let s=0;se.__isTeleport,gs=Symbol("_leaveCb");function ic(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Mt){t=n;break}}return t}function qa(e){if(!_s(e))return mo(e.type)&&e.children?ic(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&te(n.default))return n.default()}}function hs(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;hs(mo(n.type)&&qa(n)||n,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 te(e)?Ee({name:e.name},t,{setup:e}):e}function Ha(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Ba(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const $o=new WeakMap;function Mn(e,t,n,o,s=!1){if(Z(e)){e.forEach((E,z)=>Mn(E,t&&(Z(t)?t[z]:t),n,o,s));return}if(Pn(o)&&!s){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&Mn(e,t,n,o.component.subTree);return}const a=o.shapeFlag&4?Eo(o.component):o.el,r=s?null:a,{i,r:l}=e,d=t&&t.r,p=i.refs===be?i.refs={}:i.refs,h=i.setupState,m=pe(h),k=h===be?ea:E=>Ba(p,E)?!1:ge(m,E),D=(E,z)=>!(z&&Ba(p,z));if(d!=null&&d!==l){if(Va(t),ke(d))p[d]=null,k(d)&&(h[d]=null);else if(Fe(d)){const E=t;D(d,E.k)&&(d.value=null),E.k&&(p[E.k]=null)}}if(te(l))dn(l,i,12,[r,p]);else{const E=ke(l),z=Fe(l);if(E||z){const N=()=>{if(e.f){const H=E?k(l)?h[l]:p[l]:D()||!e.k?l.value:p[e.k];if(s)Z(H)&&Go(H,a);else if(Z(H))H.includes(a)||H.push(a);else if(E)p[l]=[a],k(l)&&(h[l]=p[l]);else{const w=[a];D(l,e.k)&&(l.value=w),e.k&&(p[e.k]=w)}}else E?(p[l]=r,k(l)&&(h[l]=r)):z&&(D(l,e.k)&&(l.value=r),e.k&&(p[e.k]=r))};if(r){const H=()=>{N(),$o.delete(e)};H.id=-1,$o.set(e,H),Ve(H,n)}else Va(e),N()}}}function Va(e){const t=$o.get(e);t&&(t.flags|=8,$o.delete(e))}so().requestIdleCallback,so().cancelIdleCallback;const Pn=e=>!!e.type.__asyncLoader,_s=e=>e.type.__isKeepAlive;function lc(e,t){Ka(e,"a",t)}function cc(e,t){Ka(e,"da",t)}function Ka(e,t,n=qe){const o=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(vo(t,o,n),n){let s=n.parent;for(;s&&s.parent;)_s(s.parent.vnode)&&uc(o,t,n,s),s=s.parent}}function uc(e,t,n,o){const s=vo(t,e,o,!0);yo(()=>{Go(o[t],s)},n)}function vo(e,t,n=qe,o=!1){if(n){const s=n[e]||(n[e]=[]),a=t.__weh||(t.__weh=(...r)=>{mt();const i=zn(n),l=ut(t,n,e,r);return i(),bt(),l});return o?s.unshift(a):s.push(a),a}}const Nt=e=>(t,n=qe)=>{(!Wn||e==="sp")&&vo(e,(...o)=>t(...o),n)},Ga=Nt("bm"),ms=Nt("m"),dc=Nt("bu"),pc=Nt("u"),Xa=Nt("bum"),yo=Nt("um"),fc=Nt("sp"),gc=Nt("rtg"),hc=Nt("rtc");function _c(e,t=qe){vo("ec",e,t)}const mc=Symbol.for("v-ndc");function Cn(e,t,n,o){let s;const a=n,r=Z(e);if(r||ke(e)){const i=r&&Yt(e);let l=!1,d=!1;i&&(l=!nt(e),d=xt(e),e=ro(e)),s=new Array(e.length);for(let p=0,h=e.length;pt(i,l,void 0,a));else{const i=Object.keys(e);s=new Array(i.length);for(let l=0,d=i.length;le?Sr(e)?Eo(e):bs(e.parent):null,On=Ee(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=>bs(e.parent),$root:e=>bs(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Qa(e),$forceUpdate:e=>e.f||(e.f=()=>{fs(e.update)}),$nextTick:e=>e.n||(e.n=xn.bind(e.proxy)),$watch:e=>ac.bind(e)}),$s=(e,t)=>e!==be&&!e.__isScriptSetup&&ge(e,t),bc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:s,props:a,accessCache:r,type:i,appContext:l}=e;if(t[0]!=="$"){const m=r[t];if(m!==void 0)switch(m){case 1:return o[t];case 2:return s[t];case 4:return n[t];case 3:return a[t]}else{if($s(o,t))return r[t]=1,o[t];if(s!==be&&ge(s,t))return r[t]=2,s[t];if(ge(a,t))return r[t]=3,a[t];if(n!==be&&ge(n,t))return r[t]=4,n[t];vs&&(r[t]=0)}}const d=On[t];let p,h;if(d)return t==="$attrs"&&Re(e.attrs,"get",""),d(e);if((p=i.__cssModules)&&(p=p[t]))return p;if(n!==be&&ge(n,t))return r[t]=4,n[t];if(h=l.config.globalProperties,ge(h,t))return h[t]},set({_:e},t,n){const{data:o,setupState:s,ctx:a}=e;return $s(s,t)?(s[t]=n,!0):o!==be&&ge(o,t)?(o[t]=n,!0):ge(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(a[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:s,props:a,type:r}},i){let l;return!!(n[i]||e!==be&&i[0]!=="$"&&ge(e,i)||$s(t,i)||ge(a,i)||ge(o,i)||ge(On,i)||ge(s.config.globalProperties,i)||(l=r.__cssModules)&&l[i])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:ge(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Ya(e){return Z(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let vs=!0;function $c(e){const t=Qa(e),n=e.proxy,o=e.ctx;vs=!1,t.beforeCreate&&Ja(t.beforeCreate,e,"bc");const{data:s,computed:a,methods:r,watch:i,provide:l,inject:d,created:p,beforeMount:h,mounted:m,beforeUpdate:k,updated:D,activated:E,deactivated:z,beforeDestroy:N,beforeUnmount:H,destroyed:w,unmounted:b,render:P,renderTracked:x,renderTriggered:O,errorCaptured:q,serverPrefetch:R,expose:ae,inheritAttrs:X,components:B,directives:J,filters:Ce}=t;if(d&&vc(d,o,null),r)for(const ne in r){const ee=r[ne];te(ee)&&(o[ne]=ee.bind(n))}if(s){const ne=s.call(n,n);_e(ne)&&(e.data=cs(ne))}if(vs=!0,a)for(const ne in a){const ee=a[ne],xe=te(ee)?ee.bind(n,n):te(ee.get)?ee.get.bind(n,n):gt,Ge=!te(ee)&&te(ee.set)?ee.set.bind(n):gt,$e=de({get:xe,set:Ge});Object.defineProperty(o,ne,{enumerable:!0,configurable:!0,get:()=>$e.value,set:Te=>$e.value=Te})}if(i)for(const ne in i)Za(i[ne],o,n,ne);if(l){const ne=te(l)?l.call(n):l;Reflect.ownKeys(ne).forEach(ee=>{nc(ee,ne[ee])})}p&&Ja(p,e,"c");function ue(ne,ee){Z(ee)?ee.forEach(xe=>ne(xe.bind(n))):ee&&ne(ee.bind(n))}if(ue(Ga,h),ue(ms,m),ue(dc,k),ue(pc,D),ue(lc,E),ue(cc,z),ue(_c,q),ue(hc,x),ue(gc,O),ue(Xa,H),ue(yo,b),ue(fc,R),Z(ae))if(ae.length){const ne=e.exposed||(e.exposed={});ae.forEach(ee=>{Object.defineProperty(ne,ee,{get:()=>n[ee],set:xe=>n[ee]=xe,enumerable:!0})})}else e.exposed||(e.exposed={});P&&e.render===gt&&(e.render=P),X!=null&&(e.inheritAttrs=X),B&&(e.components=B),J&&(e.directives=J),R&&Ha(e)}function vc(e,t,n=gt){Z(e)&&(e=ys(e));for(const o in e){const s=e[o];let a;_e(s)?"default"in s?a=Nn(s.from||o,s.default,!0):a=Nn(s.from||o):a=Nn(s),Fe(a)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>a.value,set:r=>a.value=r}):t[o]=a}}function Ja(e,t,n){ut(Z(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function Za(e,t,n,o){let s=o.includes(".")?Wa(n,o):()=>n[o];if(ke(e)){const a=t[e];te(a)&&st(s,a)}else if(te(e))st(s,e.bind(n));else if(_e(e))if(Z(e))e.forEach(a=>Za(a,t,n,o));else{const a=te(e.handler)?e.handler.bind(n):t[e.handler];te(a)&&st(s,a,e)}}function Qa(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:s,optionsCache:a,config:{optionMergeStrategies:r}}=e.appContext,i=a.get(t);let l;return i?l=i:!s.length&&!n&&!o?l=t:(l={},s.length&&s.forEach(d=>wo(l,d,r,!0)),wo(l,t,r)),_e(t)&&a.set(t,l),l}function wo(e,t,n,o=!1){const{mixins:s,extends:a}=t;a&&wo(e,a,n,!0),s&&s.forEach(r=>wo(e,r,n,!0));for(const r in t)if(!(o&&r==="expose")){const i=yc[r]||n&&n[r];e[r]=i?i(e[r],t[r]):t[r]}return e}const yc={data:er,props:tr,emits:tr,methods:In,computed:In,beforeCreate:We,created:We,beforeMount:We,mounted:We,beforeUpdate:We,updated:We,beforeDestroy:We,beforeUnmount:We,destroyed:We,unmounted:We,activated:We,deactivated:We,errorCaptured:We,serverPrefetch:We,components:In,directives:In,watch:kc,provide:er,inject:wc};function er(e,t){return t?e?function(){return Ee(te(e)?e.call(this,this):e,te(t)?t.call(this,this):t)}:t:e}function wc(e,t){return In(ys(e),ys(t))}function ys(e){if(Z(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Be(t)}Modifiers`]||e[`${tt(t)}Modifiers`];function Lc(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||be;let s=n;const a=t.startsWith("update:"),r=a&&Tc(o,t.slice(7));r&&(r.trim&&(s=n.map(p=>ke(p)?p.trim():p)),r.number&&(s=s.map(ra)));let i,l=o[i=Yo(t)]||o[i=Yo(Be(t))];!l&&a&&(l=o[i=Yo(tt(t))]),l&&ut(l,e,6,s);const d=o[i+"Once"];if(d){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,ut(d,e,6,s)}}const xc=new WeakMap;function or(e,t,n=!1){const o=n?xc:t.emitsCache,s=o.get(e);if(s!==void 0)return s;const a=e.emits;let r={},i=!1;if(!te(e)){const l=d=>{const p=or(d,t,!0);p&&(i=!0,Ee(r,p))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!a&&!i?(_e(e)&&o.set(e,null),null):(Z(a)?a.forEach(l=>r[l]=null):Ee(r,a),_e(e)&&o.set(e,r),r)}function ko(e,t){return!e||!Qn(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),ge(e,t[0].toLowerCase()+t.slice(1))||ge(e,tt(t))||ge(e,t))}function Qf(){}function sr(e){const{type:t,vnode:n,proxy:o,withProxy:s,propsOptions:[a],slots:r,attrs:i,emit:l,render:d,renderCache:p,props:h,data:m,setupState:k,ctx:D,inheritAttrs:E}=e,z=_o(e);let N,H;try{if(n.shapeFlag&4){const b=s||o,P=b;N=yt(d.call(P,b,p,h,k,m,D)),H=i}else{const b=t;N=yt(b.length>1?b(h,{attrs:i,slots:r,emit:l}):b(h,null)),H=t.props?i:Ec(i)}}catch(b){tn.length=0,go(b,e,1),N=Me(Mt)}let w=N;if(H&&E!==!1){const b=Object.keys(H),{shapeFlag:P}=w;b.length&&P&7&&(a&&b.some(eo)&&(H=Nc(H,a)),w=hn(w,H,!1,!0))}if(n.dirs&&(w=hn(w,null,!1,!0),w.dirs=w.dirs?w.dirs.concat(n.dirs):n.dirs),n.transition){const b=mo(w.type)&&qa(w)||w;hs(b,n.transition)}return N=w,_o(z),N}const Ec=e=>{let t;for(const n in e)(n==="class"||n==="style"||Qn(n))&&((t||(t={}))[n]=e[n]);return t},Nc=(e,t)=>{const n={};for(const o in e)(!eo(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function Mc(e,t,n){const{props:o,children:s,component:a}=e,{props:r,children:i,patchFlag:l}=t,d=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?ar(o,r,d):!!r;if(l&8){const p=t.dynamicProps;for(let h=0;hObject.create(ir),cr=e=>Object.getPrototypeOf(e)===ir;function Cc(e,t,n,o=!1){const s={},a=lr();e.propsDefaults=Object.create(null),ur(e,t,s,a);for(const r in e.propsOptions[0])r in s||(s[r]=void 0);n?e.props=o?s:jl(s):e.type.props?e.props=s:e.props=a,e.attrs=a}function Oc(e,t,n,o){const{props:s,attrs:a,vnode:{patchFlag:r}}=e,i=pe(s),[l]=e.propsOptions;let d=!1;if((o||r>0)&&!(r&16)){if(r&8){const p=e.vnode.dynamicProps;for(let h=0;h{l=!0;const[m,k]=dr(h,t,!0);Ee(r,m),k&&i.push(...k)};!n&&t.mixins.length&&t.mixins.forEach(p),e.extends&&p(e.extends),e.mixins&&e.mixins.forEach(p)}if(!a&&!l)return _e(e)&&o.set(e,ln),ln;if(Z(a))for(let p=0;pe==="_"||e==="_ctx"||e==="$stable",As=e=>Z(e)?e.map(yt):[yt(e)],Fc=(e,t,n)=>{if(t._n)return t;const o=ec((...s)=>As(t(...s)),n);return o._c=!1,o},fr=(e,t,n)=>{const o=e._ctx;for(const s in e){if(ks(s))continue;const a=e[s];if(te(a))t[s]=Fc(s,a,o);else if(a!=null){const r=As(a);t[s]=()=>r}}},gr=(e,t)=>{const n=As(t);e.slots.default=()=>n},hr=(e,t,n)=>{for(const o in t)(n||!ks(o))&&(e[o]=t[o])},Dc=(e,t,n)=>{const o=e.slots=lr();if(e.vnode.shapeFlag&32){const s=t._;s?(hr(o,t,n),n&&aa(o,"_",s,!0)):fr(t,o)}else t&&gr(e,t)},Rc=(e,t,n)=>{const{vnode:o,slots:s}=e;let a=!0,r=be;if(o.shapeFlag&32){const i=t._;i?n&&i===1?a=!1:hr(s,t,n):(a=!t.$stable,fr(t,s)),r=t}else t&&(gr(e,t),r={default:1});if(a)for(const i in s)!ks(i)&&r[i]==null&&delete s[i]},Ve=qc;function jc(e){return Uc(e)}function Uc(e,t){const n=so();n.__VUE__=!0;const{insert:o,remove:s,patchProp:a,createElement:r,createText:i,createComment:l,setText:d,setElementText:p,parentNode:h,nextSibling:m,setScopeId:k=gt,insertStaticContent:D}=e,E=(f,_,g,A=null,C=null,M=null,j=void 0,F=null,c=!!_.dynamicChildren)=>{if(f===_)return;f&&!Rn(f,_)&&(A=Ye(f),Te(f,C,M,!0),f=null),_.patchFlag===-2&&(c=!1,_.dynamicChildren=null);const{type:u,ref:y,shapeFlag:S}=_;switch(u){case Fn:z(f,_,g,A);break;case Mt:N(f,_,g,A);break;case Ts:f==null&&H(_,g,A,j);break;case Ne:B(f,_,g,A,C,M,j,F,c);break;default:S&1?P(f,_,g,A,C,M,j,F,c):S&6?J(f,_,g,A,C,M,j,F,c):(S&64||S&128)&&u.process(f,_,g,A,C,M,j,F,c,Je)}y!=null&&C?Mn(y,f&&f.ref,M,_||f,!_):y==null&&f&&f.ref!=null&&Mn(f.ref,null,M,f,!0)},z=(f,_,g,A)=>{if(f==null)o(_.el=i(_.children),g,A);else{const C=_.el=f.el;_.children!==f.children&&d(C,_.children)}},N=(f,_,g,A)=>{f==null?o(_.el=l(_.children||""),g,A):_.el=f.el},H=(f,_,g,A)=>{[f.el,f.anchor]=D(f.children,_,g,A,f.el,f.anchor)},w=({el:f,anchor:_},g,A)=>{let C;for(;f&&f!==_;)C=m(f),o(f,g,A),f=C;o(_,g,A)},b=({el:f,anchor:_})=>{let g;for(;f&&f!==_;)g=m(f),s(f),f=g;s(_)},P=(f,_,g,A,C,M,j,F,c)=>{if(_.type==="svg"?j="svg":_.type==="math"&&(j="mathml"),f==null)x(_,g,A,C,M,j,F,c);else{const u=f.el&&f.el._isVueCE?f.el:null;try{u&&u._beginPatch(),R(f,_,C,M,j,F,c)}finally{u&&u._endPatch()}}},x=(f,_,g,A,C,M,j,F)=>{let c,u;const{props:y,shapeFlag:S,transition:W,dirs:I}=f;if(c=f.el=r(f.type,M,y&&y.is,y),S&8?p(c,f.children):S&16&&q(f.children,c,null,A,C,Ss(f,M),j,F),I&&Qt(f,null,A,"created"),O(c,f,f.scopeId,j,A),y){for(const T in y)T!=="value"&&!yn(T)&&a(c,T,null,y[T],M,A);"value"in y&&a(c,"value",null,y.value,M),(u=y.onVnodeBeforeMount)&&wt(u,A,f)}I&&Qt(f,null,A,"beforeMount");const v=zc(C,W);v&&W.beforeEnter(c),o(c,_,g),((u=y&&y.onVnodeMounted)||v||I)&&Ve(()=>{try{u&&wt(u,A,f),v&&W.enter(c),I&&Qt(f,null,A,"mounted")}finally{}},C)},O=(f,_,g,A,C)=>{if(g&&k(f,g),A)for(let M=0;M{for(let u=c;u{const F=_.el=f.el;let{patchFlag:c,dynamicChildren:u,dirs:y}=_;c|=f.patchFlag&16;const S=f.props||be,W=_.props||be;let I;if(g&&en(g,!1),(I=W.onVnodeBeforeUpdate)&&wt(I,g,_,f),y&&Qt(_,f,g,"beforeUpdate"),g&&en(g,!0),u&&(!f.dynamicChildren||f.dynamicChildren.length!==u.length)&&(c=0,j=!1,u=null),(S.innerHTML&&W.innerHTML==null||S.textContent&&W.textContent==null)&&p(F,""),u?ae(f.dynamicChildren,u,F,g,A,Ss(_,C),M):j||ee(f,_,F,null,g,A,Ss(_,C),M,!1),c>0){if(c&16)X(F,S,W,g,C);else if(c&2&&S.class!==W.class&&a(F,"class",null,W.class,C),c&4&&a(F,"style",S.style,W.style,C),c&8){const v=_.dynamicProps;for(let T=0;T{I&&wt(I,g,_,f),y&&Qt(_,f,g,"updated")},A)},ae=(f,_,g,A,C,M,j)=>{for(let F=0;F<_.length;F++){const c=f[F],u=_[F],y=c.el&&(c.type===Ne||!Rn(c,u)||c.shapeFlag&198)?h(c.el):g;E(c,u,y,null,A,C,M,j,!0)}},X=(f,_,g,A,C)=>{if(_!==g){if(_!==be)for(const M in _)!yn(M)&&!(M in g)&&a(f,M,_[M],null,C,A);for(const M in g){if(yn(M))continue;const j=g[M],F=_[M];j!==F&&M!=="value"&&a(f,M,F,j,C,A)}"value"in g&&a(f,"value",_.value,g.value,C)}},B=(f,_,g,A,C,M,j,F,c)=>{const u=_.el=f?f.el:i(""),y=_.anchor=f?f.anchor:i("");let{patchFlag:S,dynamicChildren:W,slotScopeIds:I}=_;I&&(F=F?F.concat(I):I),f==null?(o(u,g,A),o(y,g,A),q(_.children||[],g,y,C,M,j,F,c)):S>0&&S&64&&W&&f.dynamicChildren&&f.dynamicChildren.length===W.length?(ae(f.dynamicChildren,W,g,C,M,j,F),(_.key!=null||C&&_===C.subTree)&&_r(f,_,!0)):ee(f,_,g,y,C,M,j,F,c)},J=(f,_,g,A,C,M,j,F,c)=>{_.slotScopeIds=F,f==null?_.shapeFlag&512?C.ctx.activate(_,g,A,j,c):Ce(_,g,A,C,M,j,c):se(f,_,c)},Ce=(f,_,g,A,C,M,j)=>{const F=f.component=Yc(f,A,C);if(_s(f)&&(F.ctx.renderer=Je),Jc(F,!1,j),F.asyncDep){if(C&&C.registerDep(F,ue,j),!f.el){const c=F.subTree=Me(Mt);N(null,c,_,g),f.placeholder=c.el}}else ue(F,f,_,g,C,M,j)},se=(f,_,g)=>{const A=_.component=f.component;if(Mc(f,_,g))if(A.asyncDep&&!A.asyncResolved){ne(A,_,g);return}else A.next=_,A.update();else _.el=f.el,A.vnode=_},ue=(f,_,g,A,C,M,j)=>{const F=()=>{if(f.isMounted){let{next:S,bu:W,u:I,parent:v,vnode:T}=f;{const V=mr(f);if(V){S&&(S.el=T.el,ne(f,S,j)),V.asyncDep.then(()=>{Ve(()=>{f.isUnmounted||u()},C)});return}}let Y=S,$;en(f,!1),S?(S.el=T.el,ne(f,S,j)):S=T,W&&oo(W),($=S.props&&S.props.onVnodeBeforeUpdate)&&wt($,v,S,T),en(f,!0);const L=sr(f),U=f.subTree;f.subTree=L,E(U,L,h(U.el),Ye(U),f,C,M),S.el=L.el,Y===null&&Pc(f,L.el),I&&Ve(I,C),($=S.props&&S.props.onVnodeUpdated)&&Ve(()=>wt($,v,S,T),C)}else{let S;const{el:W,props:I}=_,{bm:v,m:T,parent:Y,root:$,type:L}=f,U=Pn(_);en(f,!1),v&&oo(v),!U&&(S=I&&I.onVnodeBeforeMount)&&wt(S,Y,_),en(f,!0);{$.ce&&$.ce._hasShadowRoot()&&$.ce._injectChildStyle(L,f.parent?f.parent.type:void 0);const V=f.subTree=sr(f);E(null,V,g,A,f,C,M),_.el=V.el}if(T&&Ve(T,C),!U&&(S=I&&I.onVnodeMounted)){const V=_;Ve(()=>wt(S,Y,V),C)}(_.shapeFlag&256||Y&&Pn(Y.vnode)&&Y.vnode.shapeFlag&256)&&f.a&&Ve(f.a,C),f.isMounted=!0,_=g=A=null}};f.scope.on();const c=f.effect=new fa(F);f.scope.off();const u=f.update=c.run.bind(c),y=f.job=c.runIfDirty.bind(c);y.i=f,y.id=f.uid,c.scheduler=()=>fs(y),en(f,!0),u()},ne=(f,_,g)=>{_.component=f;const A=f.vnode.props;f.vnode=_,f.next=null,Oc(f,_.props,A,g),Rc(f,_.children,g),mt(),Da(f),bt()},ee=(f,_,g,A,C,M,j,F,c=!1)=>{const u=f&&f.children,y=f?f.shapeFlag:0,S=_.children,{patchFlag:W,shapeFlag:I}=_;if(W>0){if(W&128){Ge(u,S,g,A,C,M,j,F,c);return}else if(W&256){xe(u,S,g,A,C,M,j,F,c);return}}I&8?(y&16&&Ue(u,C,M),S!==u&&p(g,S)):y&16?I&16?Ge(u,S,g,A,C,M,j,F,c):Ue(u,C,M,!0):(y&8&&p(g,""),I&16&&q(S,g,A,C,M,j,F,c))},xe=(f,_,g,A,C,M,j,F,c)=>{f=f||ln,_=_||ln;const u=f.length,y=_.length,S=Math.min(u,y);let W;for(W=0;Wy?Ue(f,C,M,!0,!1,S):q(_,g,A,C,M,j,F,c,S)},Ge=(f,_,g,A,C,M,j,F,c)=>{let u=0;const y=_.length;let S=f.length-1,W=y-1;for(;u<=S&&u<=W;){const I=f[u],v=_[u]=c?Ct(_[u]):yt(_[u]);if(Rn(I,v))E(I,v,g,null,C,M,j,F,c);else break;u++}for(;u<=S&&u<=W;){const I=f[S],v=_[W]=c?Ct(_[W]):yt(_[W]);if(Rn(I,v))E(I,v,g,null,C,M,j,F,c);else break;S--,W--}if(u>S){if(u<=W){const I=W+1,v=IW)for(;u<=S;)Te(f[u],C,M,!0),u++;else{const I=u,v=u,T=new Map;for(u=v;u<=W;u++){const K=_[u]=c?Ct(_[u]):yt(_[u]);K.key!=null&&T.set(K.key,u)}let Y,$=0;const L=W-v+1;let U=!1,V=0;const oe=new Array(L);for(u=0;u=L){Te(K,C,M,!0);continue}let ve;if(K.key!=null)ve=T.get(K.key);else for(Y=v;Y<=W;Y++)if(oe[Y-v]===0&&Rn(K,_[Y])){ve=Y;break}ve===void 0?Te(K,C,M,!0):(oe[ve-v]=u+1,ve>=V?V=ve:U=!0,E(K,_[ve],g,null,C,M,j,F,c),$++)}const he=U?Wc(oe):ln;for(Y=he.length-1,u=L-1;u>=0;u--){const K=v+u,ve=_[K],Vt=_[K+1],ft=K+1{const{el:M,type:j,transition:F,children:c,shapeFlag:u}=f;if(u&6){$e(f.component.subTree,_,g,A);return}if(u&128){f.suspense.move(_,g,A);return}if(u&64){j.move(f,_,g,Je);return}if(j===Ne){o(M,_,g);for(let S=0;SF.enter(M),C));else{const{leave:S,delayLeave:W,afterLeave:I}=F,v=()=>{f.ctx.isUnmounted?s(M):o(M,_,g)},T=()=>{const Y=M._isLeaving||!!M[gs];M._isLeaving&&M[gs](!0),F.persisted&&!Y?v():S(M,()=>{v(),I&&I()})};W?W(M,v,T):T()}else o(M,_,g)},Te=(f,_,g,A=!1,C=!1)=>{const{type:M,props:j,ref:F,children:c,dynamicChildren:u,shapeFlag:y,patchFlag:S,dirs:W,cacheIndex:I,memo:v}=f;if(S===-2&&(C=!1),F!=null&&(mt(),Mn(F,null,g,f,!0),bt()),I!=null&&(_.renderCache[I]=void 0),y&256){_.ctx.deactivate(f);return}const T=y&1&&W,Y=!Pn(f);let $;if(Y&&($=j&&j.onVnodeBeforeUnmount)&&wt($,_,f),y&6)it(f.component,g,A);else{if(y&128){f.suspense.unmount(g,A);return}T&&Qt(f,null,_,"beforeUnmount"),y&64?f.type.remove(f,_,g,Je,A):u&&!u.hasOnce&&(M!==Ne||S>0&&S&64)?Ue(u,_,g,!1,!0):(M===Ne&&S&384||!C&&y&16)&&Ue(c,_,g),A&&rt(f)}const L=v!=null&&I==null;(Y&&($=j&&j.onVnodeUnmounted)||T||L)&&Ve(()=>{$&&wt($,_,f),T&&Qt(f,null,_,"unmounted"),L&&(f.el=null)},g)},rt=f=>{const{type:_,el:g,anchor:A,transition:C}=f;if(_===Ne){Xe(g,A);return}if(_===Ts){b(f);return}const M=()=>{s(g),C&&!C.persisted&&C.afterLeave&&C.afterLeave()};if(f.shapeFlag&1&&C&&!C.persisted){const{leave:j,delayLeave:F}=C,c=()=>j(g,M);F?F(f.el,M,c):c()}else M()},Xe=(f,_)=>{let g;for(;f!==_;)g=m(f),s(f),f=g;s(_)},it=(f,_,g)=>{const{bum:A,scope:C,job:M,subTree:j,um:F,m:c,a:u}=f;br(c),br(u),A&&oo(A),C.stop(),M&&(M.flags|=8,Te(j,f,_,g)),F&&Ve(F,_),Ve(()=>{f.isUnmounted=!0},_)},Ue=(f,_,g,A=!1,C=!1,M=0)=>{for(let j=M;j{if(f.shapeFlag&6)return Ye(f.component.subTree);if(f.shapeFlag&128)return f.suspense.next();const _=m(f.anchor||f.el),g=_&&_[rc];return g?m(g):_};let et=!1;const St=(f,_,g)=>{let A;f==null?_._vnode&&(Te(_._vnode,null,null,!0),A=_._vnode.component):E(_._vnode||null,f,_,null,null,null,g),_._vnode=f,et||(et=!0,Da(A),Ra(),et=!1)},Je={p:E,um:Te,m:$e,r:rt,mt:Ce,mc:q,pc:ee,pbc:ae,n:Ye,o:e};return{render:St,hydrate:void 0,createApp:Sc(St)}}function Ss({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function en({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function zc(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function _r(e,t,n=!1){const o=e.children,s=t.children;if(Z(o)&&Z(s))for(let a=0;a>1,e[n[i]]0&&(t[o]=n[a-1]),n[a]=o)}}for(a=n.length,r=n[a-1];a-- >0;)n[a]=r,r=t[r];return n}function mr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:mr(t)}function br(e){if(e)for(let t=0;te.__isSuspense;function qc(e,t){t&&t.pendingBranch?Z(e)?t.effects.push(...e):t.effects.push(e):Ql(e)}const Ne=Symbol.for("v-fgt"),Fn=Symbol.for("v-txt"),Mt=Symbol.for("v-cmt"),Ts=Symbol.for("v-stc"),tn=[];let Qe=null;function ie(e=!1){tn.push(Qe=e?null:[])}function yr(){tn.pop(),Qe=tn[tn.length-1]||null}let Dn=1;function Ao(e,t=!1){Dn+=e,e<0&&Qe&&t&&(Qe.hasOnce=!0)}function wr(e){return e.dynamicChildren=Dn>0?Qe||ln:null,yr(),Dn>0&&Qe&&Qe.push(e),e}function le(e,t,n,o,s,a){return wr(re(e,t,n,o,s,a,!0))}function Hc(e,t,n,o,s){return wr(Me(e,t,n,o,s,!0))}function So(e){return e?e.__v_isVNode===!0:!1}function Rn(e,t){return e.type===t.type&&e.key===t.key}const kr=({key:e})=>e??null,To=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?ke(e)||Fe(e)||te(e)?{i:ot,r:e,k:t,f:!!n}:e:null);function re(e,t=null,n=null,o=0,s=null,a=e===Ne?0:1,r=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&kr(t),ref:t&&To(t),scopeId:Ua,slotScopeIds:null,children:n,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:a,patchFlag:o,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:ot};return i?(Lo(l,n),a&128&&e.normalize(l)):n&&(l.shapeFlag|=ke(n)?8:16),Dn>0&&!r&&Qe&&(l.patchFlag>0||a&6)&&l.patchFlag!==32&&Qe.push(l),l}const Me=Bc;function Bc(e,t=null,n=null,o=0,s=null,a=!1){if((!e||e===mc)&&(e=Mt),So(e)){const i=hn(e,t,!0);return n&&Lo(i,n),Dn>0&&!a&&Qe&&(i.shapeFlag&6?Qe[Qe.indexOf(e)]=i:Qe.push(i)),i.patchFlag=-2,i}if(su(e)&&(e=e.__vccOpts),t){t=Vc(t);let{class:i,style:l}=t;i&&!ke(i)&&(t.class=ao(i)),_e(l)&&(ds(l)&&!Z(l)&&(l=Ee({},l)),t.style=Gt(l))}const r=ke(e)?1:vr(e)?128:mo(e)?64:_e(e)?4:te(e)?2:0;return re(e,t,n,o,s,r,a,!0)}function Vc(e){return e?ds(e)||cr(e)?Ee({},e):e:null}function hn(e,t,n=!1,o=!1){const{props:s,ref:a,patchFlag:r,children:i,transition:l}=e,d=t?Kc(s||{},t):s,p={__v_isVNode:!0,__v_skip:!0,type:e.type,props:d,key:d&&kr(d),ref:t&&t.ref?n&&a?Z(a)?a.concat(To(t)):[a,To(t)]:To(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ne?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&hn(e.ssContent),ssFallback:e.ssFallback&&hn(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&hs(p,l.clone(p)),p}function Pt(e=" ",t=0){return Me(Fn,null,e,t)}function De(e="",t=!1){return t?(ie(),Hc(Mt,null,e)):Me(Mt,null,e)}function yt(e){return e==null||typeof e=="boolean"?Me(Mt):Z(e)?Me(Ne,null,e.slice()):So(e)?Ct(e):Me(Fn,null,String(e))}function Ct(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:hn(e)}function Lo(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(Z(t))n=16;else if(typeof t=="object")if(o&65){const s=t.default;s&&(s._c&&(s._d=!1),Lo(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!cr(t)?t._ctx=ot:s===3&&ot&&(ot.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(te(t)){if(o&65){Lo(e,{default:t});return}t={default:t,_ctx:ot},n=32}else t=String(t),o&64?(n=16,t=[Pt(t)]):n=8;e.children=t,e.shapeFlag|=n}function Kc(...e){const t={};for(let n=0;nqe||ot;let xo,Un;{const e=so(),t=(n,o)=>{let s;return(s=e[n])||(s=e[n]=[]),s.push(o),a=>{s.length>1?s.forEach(r=>r(a)):s[0](a)}};xo=t("__VUE_INSTANCE_SETTERS__",n=>qe=n),Un=t("__VUE_SSR_SETTERS__",n=>Wn=n)}const zn=e=>{const t=qe;return xo(e),e.scope.on(),()=>{e.scope.off(),xo(t)}},Ar=()=>{qe&&qe.scope.off(),xo(null)};function Sr(e){return e.vnode.shapeFlag&4}let Wn=!1;function Jc(e,t=!1,n=!1){t&&Un(t);const{props:o,children:s}=e.vnode,a=Sr(e);Cc(e,o,a,t),Dc(e,s,n||t);const r=a?Zc(e,t):void 0;return t&&Un(!1),r}function Zc(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,bc);const{setup:o}=n;if(o){mt();const s=e.setupContext=o.length>1?eu(e):null,a=zn(e),r=dn(o,e,0,[e.props,s]),i=na(r);if(bt(),a(),(i||e.sp)&&!Pn(e)&&Ha(e),i){if(r.then(Ar,Ar),t)return r.then(l=>{Un(!0);try{Tr(e,l,t)}finally{Un(!1)}}).catch(l=>{go(l,e,0)});e.asyncDep=r}else Tr(e,r)}else Lr(e)}function Tr(e,t,n){te(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:_e(t)&&(e.setupState=Ca(t)),Lr(e)}function Lr(e,t,n){const o=e.type;e.render||(e.render=o.render||gt);{const s=zn(e);mt();try{$c(e)}finally{bt(),s()}}}const Qc={get(e,t){return Re(e,"get",""),e[t]}};function eu(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Qc),slots:e.slots,emit:e.emit,expose:t}}function Eo(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Ca(Ul(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in On)return On[n](e)},has(t,n){return n in t||n in On}})):e.proxy}const tu=/(?:^|[-_])\w/g,nu=e=>e.replace(tu,t=>t.toUpperCase()).replace(/[-_]/g,"");function ou(e,t=!0){return te(e)?e.displayName||e.name:e.name||t&&e.__name}function xr(e,t,n=!1){let o=ou(t);if(!o&&t.__file){const s=t.__file.match(/([^/\\]+)\.\w+$/);s&&(o=s[1])}if(!o&&e){const s=a=>{for(const r in a)if(a[r]===t)return r};o=s(e.components)||e.parent&&s(e.parent.type.components)||s(e.appContext.components)}return o?nu(o):n?"App":"Anonymous"}function su(e){return te(e)&&"__vccOpts"in e}const de=(e,t)=>Hl(e,t,Wn);function Er(e,t,n){try{Ao(-1);const o=arguments.length;return o===2?_e(t)&&!Z(t)?So(t)?Me(e,null,[t]):Me(e,t):Me(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&So(n)&&(n=[n]),Me(e,t,n))}finally{Ao(1)}}const au="3.5.42";/** * @vue/runtime-dom v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Ss;const xr=typeof window<"u"&&window.trustedTypes;if(xr)try{Ss=xr.createPolicy("vue",{createHTML:e=>e})}catch{}const Er=Ss?e=>Ss.createHTML(e):e=>e,su="http://www.w3.org/2000/svg",au="http://www.w3.org/1998/Math/MathML",Ot=typeof document<"u"?document:null,Nr=Ot&&Ot.createElement("template"),ru={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const s=t==="svg"?Ot.createElementNS(su,e):t==="mathml"?Ot.createElementNS(au,e):n?Ot.createElement(e,{is:n}):Ot.createElement(e);return e==="select"&&o&&o.multiple!=null&&s.setAttribute("multiple",o.multiple),s},createText:e=>Ot.createTextNode(e),createComment:e=>Ot.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ot.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,s,a){const r=n?n.previousSibling:t.lastChild;if(s&&(s===a||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===a||!(s=s.nextSibling)););else{Nr.innerHTML=Er(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const i=Nr.content;if(o==="svg"||o==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,n)}return[r?r.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},iu=Symbol("_vtc");function lu(e,t,n){const o=e[iu];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Mr=Symbol("_vod"),cu=Symbol("_vsh"),uu=Symbol(""),du=/(?:^|;)\s*display\s*:/;function pu(e,t,n){const o=e.style,s=$e(n);let a=!1;if(n&&!s){if(t)if($e(t))for(const r of t.split(";")){const i=r.slice(0,r.indexOf(":")).trim();n[i]==null&&Wn(o,i,"")}else for(const r in t)n[r]==null&&Wn(o,r,"");for(const r in n){r==="display"&&(a=!0);const i=n[r];i!=null?gu(e,r,!$e(t)&&t?t[r]:void 0,i)||Wn(o,r,i):Wn(o,r,"")}}else if(s){if(t!==n){const r=o[uu];r&&(n+=";"+r),o.cssText=n,a=du.test(n)}}else t&&e.removeAttribute("style");Mr in e&&(e[Mr]=a?o.display:"",e[cu]&&(o.display="none"))}const xo=/\s*!important$/;function Wn(e,t,n){if(Y(n))n.forEach(o=>Wn(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))xo.test(n)?e.setProperty(t,n.replace(xo,""),"important"):e.setProperty(t,n);else{const o=fu(e,t);xo.test(n)?e.setProperty(et(o),n.replace(xo,""),"important"):e[o]=n}}const Pr=["Webkit","Moz","ms"],Ts={};function fu(e,t){const n=Ts[t];if(n)return n;let o=Xe(t);if(o!=="filter"&&o in e)return Ts[t]=o;o=na(o);for(let s=0;sLs||(vu.then(()=>Ls=0),Ls=Date.now());function wu(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;const s=n.value;if(Y(s)){const a=o.stopImmediatePropagation;o.stopImmediatePropagation=()=>{a.call(o),o._stopped=!0};const r=s.slice(),i=[o];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,ku=(e,t,n,o,s,a)=>{const r=s==="svg";t==="class"?lu(e,o,r):t==="style"?pu(e,n,o):Jn(t)?Zn(t)||_u(e,t,n,o,a):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Au(e,t,o,r))?(Ir(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Or(e,t,o,r,a,t!=="value")):e._isVueCE&&(Su(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!$e(o)))?Ir(e,Xe(t),o,a,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),Or(e,t,o,r))};function Au(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&Rr(t)&&Q(n));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 Rr(t)&&$e(n)?!1:t in e}function Su(e,t){const n=e._def.props;if(!n)return!1;const o=Xe(t);return Array.isArray(n)?n.some(s=>Xe(s)===o):Object.keys(n).some(s=>Xe(s)===o)}const jr={};function Tu(e,t,n){let o=_o(e,t);Qn(o)&&(o=Se({},o,t));class s extends xs{constructor(r){super(o,r,n)}}return s.def=o,s}const Lu=typeof HTMLElement<"u"?HTMLElement:class{};class xs extends Lu{constructor(t,n={},o=Hr){super(),this._def=t,this._props=n,this._createApp=o,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&&o!==Hr?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Se({},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 xs){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,Ln(()=>{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 n of t)this._setAttr(n.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let o=0;o{this._resolved=!0,this._pendingResolve=void 0;const{props:a,styles:r}=o;let i;if(a&&!Y(a))for(const l in a){const d=a[l];(d===Number||d&&d.type===Number)&&(l in this._props&&(this._props[l]=aa(this._props[l])),(i||(i=Object.create(null)))[Xe(l)]=!0)}this._numberProps=i,this._resolveProps(o),this.shadowRoot&&this._applyStyles(r),this._mount(o)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(o=>{o.configureApp=this._def.configureApp,t(this._def=o,!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 n=this._instance&&this._instance.exposed;if(n)for(const o in n)pe(this,o)||Object.defineProperty(this,o,{get:()=>Jt(n[o])})}_resolveProps(t){const{props:n}=t,o=Y(n)?n:Object.keys(n||{});for(const s of Object.keys(this))s[0]!=="_"&&o.includes(s)&&this._setProp(s,this[s]);for(const s of o.map(Xe))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(a){this._setProp(s,a,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const n=this.hasAttribute(t);let o=n?this.getAttribute(t):jr;const s=Xe(t);n&&this._numberProps&&this._numberProps[s]&&(o=aa(o)),this._setProp(s,o,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,o=!0,s=!1){if(n!==this._props[t]&&(this._dirty=!0,n===jr?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),s&&this._instance&&this._update(),o)){const a=this._ob;a&&(this._processMutations(a.takeRecords()),a.disconnect()),n===!0?this.setAttribute(et(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(et(t),n+""):n||this.removeAttribute(et(t)),a&&a.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Mu(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=Le(this._def,Se(t,this._props));return this._instance||(n.ce=o=>{this._instance=o,o.ce=this,o.isCE=!0;const s=(a,r)=>{this.dispatchEvent(new CustomEvent(a,Qn(r[0])?Se({detail:r},r[0]):{detail:r}))};o.emit=(a,...r)=>{s(a,r),et(a)!==a&&s(et(a),r)},this._setParent()}),n}_applyStyles(t,n,o){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const s=this._nonce,a=this.shadowRoot,r=o?this._getStyleAnchor(o)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(a);let i=null;for(let l=t.length-1;l>=0;l--){const d=document.createElement("style");s&&d.setAttribute("nonce",s),d.textContent=t[l],a.insertBefore(d,i||r),i=d,l===0&&(o||this._styleAnchors.set(this._def,d),n&&this._styleAnchors.set(n,d))}}_getStyleAnchor(t){if(!t)return null;const n=this._styleAnchors.get(t);return n&&n.parentNode===this.shadowRoot?n:(n&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let n=0;n{const t=e.props["onUpdate:modelValue"]||!1;return Y(t)?n=>to(t,n):t},Es=Symbol("_assign"),xu={deep:!0,created(e,{value:t,modifiers:{number:n}},o){e._modelValue=t,Fr(e,"change",()=>{const s=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>n?sa(Eo(l)):Eo(l)),a=e.multiple,r=a?Kt(e._modelValue)?new Set(s):s:s[0],i=e._pendingValue=[a,a?Y(r)?s.slice():s:r];try{e[Es](r)}finally{Ln(()=>{e._pendingValue===i&&(e._pendingValue=void 0)})}}),e[Es]=Ur(o)},mounted(e,{value:t}){zr(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[Es]=Ur(n)},updated(e,{value:t}){const n=e._pendingValue;e._pendingValue=void 0,(!n||n[0]!==e.multiple||!Eu(t,n[1],n[0]))&&zr(e,t)}};function Eu(e,t,n){if(!n||Y(e))return Ut(e,t);if(Kt(e)){if(e.size!==t.length)return!1;for(const o of t)if(!e.has(o))return!1;return!0}return!1}function zr(e,t){const n=e.multiple,o=Y(t);if(!(n&&!o&&!Kt(t))){for(let s=0,a=e.options.length;sString(d)===String(i)):r.selected=ml(t,i)>-1}else r.selected=t.has(i);else if(Ut(Eo(r),t)){e.selectedIndex!==s&&(e.selectedIndex=s);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Eo(e){return"_value"in e?e._value:e.value}const Nu=Se({patchProp:ku},ru);let Wr;function qr(){return Wr||(Wr=Dc(Nu))}const Mu=(...e)=>{qr().render(...e)},Hr=(...e)=>{const t=qr().createApp(...e),{mount:n}=t;return t.mount=o=>{const s=Cu(o);if(!s)return;const a=t._component;!Q(a)&&!a.render&&!a.template&&(a.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const r=n(s,!1,Pu(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),r},t};function Pu(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Cu(e){return $e(e)?document.querySelector(e):e}function No(e,t){if(!t.includes("."))return e==null?void 0:e[t];const[n,...o]=t.split(".");let s=e==null?void 0:e[n];for(const a of o)s=s==null?void 0:s[a];return s}function Ou(e,t){const n=e.toLowerCase(),o=t.toLowerCase(),s=[];let a=0,r=n.indexOf(o,a);for(;r!==-1;)s.push([r,r+o.length-1]),a=r+o.length,r=n.indexOf(o,a);return s}function Iu(e,t,n){const o=e.toLowerCase(),s=t.toLowerCase(),a=s.length;if(!a||!o.length)return null;const r=Math.min(2,Math.floor(n*a));if(r<=0)return null;let i=new Array(o.length+1).fill(0),l=new Array(o.length+1);for(let b=1;b<=a;b++){l[0]=b;for(let S=1;S<=o.length;S++){const I=i[S-1]+(s[b-1]===o[S-1]?0:1);l[S]=Math.min(I,i[S]+1,l[S-1]+1)}[i,l]=[l,i]}let d=1/0,p=-1;for(let b=1;b<=o.length;b++)i[b]r?null:[[Math.max(0,p-a),p-1]]}function Fu(e,t,{threshold:n=.4}={}){const o=String(e??"").trim().toLowerCase();if(!o)return[];const s=Math.min(2,Math.floor(n*o.length)),a=[];for(const i of t){if(!i)continue;const l=String(i).toLowerCase();if(Math.abs(l.length-o.length)>s)continue;const d=Du(l,o,s);d<=s&&a.push({value:i,distance:d})}if(!a.length)return[];const r=Math.min(...a.map(i=>i.distance));return a.filter(i=>i.distance===r).map(i=>i.value)}function Du(e,t,n){if(e===t)return 0;let o=Array.from({length:t.length+1},(a,r)=>r);const s=new Array(t.length+1);for(let a=1;a<=e.length;a++){s[0]=a;let r=a;for(let i=1;i<=t.length;i++)s[i]=Math.min(o[i-1]+(e[a-1]===t[i-1]?0:1),o[i]+1,s[i-1]+1),s[i]n)return n+1;for(let i=0;i<=t.length;i++)o[i]=s[i]}return o[t.length]}class Ru{constructor(t,n={}){this.list=Array.isArray(t)?t:[],this.keys=n.keys||[],this.threshold=typeof n.threshold=="number"?n.threshold:.4,this.minMatchCharLength=n.minMatchCharLength||1}search(t){const n=String(t||"").trim();if(!n)return this.list.map(d=>({item:d,matches:[]}));if(n.length":">",'"':""","'":"'","`":"`"};function Mo(e){return e==null?"":String(e).replace(/[&<>"'`]/g,t=>ju[t])}function Uu(e,t){const n=String(e??"");if(!Array.isArray(t)||t.length===0)return Mo(n);let o=0,s="";return t.forEach((a,r)=>{const[i,l]=a,d=r===t.length-1;s+=Mo(n.slice(o,i))+''+Mo(n.slice(i,l+1))+""+(d?Mo(n.slice(l+1)):""),o=l+1}),s}const zu=".search-box{position:relative;display:flex;align-items:center;margin:0 auto;width:100%;color:var(--dx-muted, #6d766e)}.search-box .search-icon{position:absolute;left:12px;pointer-events:none}.search-box input{width:100%;padding:10px 12px 10px 38px;font-size:.95rem;color:var(--dx-text, #3b463d);background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:10px;outline:none;box-sizing:border-box}.search-box input:focus{border-color:var(--dx-accent, #92b195);box-shadow:0 0 0 2px var(--dx-accent-weak, rgba(146, 177, 149, .18))}",Ns=(e,t)=>{const n=e.__vccOpts||e;for(const[o,s]of t)n[o]=s;return n},Wu=["value","placeholder","aria-label"],qu=Ns({__name:"SearchBar",props:{modelValue:{type:String,default:""},placeholder:{type:String,default:"Search…"},ariaLabel:{type:String,default:"Search"},maxWidth:{type:String,default:""}},emits:["update:modelValue","search"],setup(e,{emit:t}){const n=e,o=t,s=le(()=>n.maxWidth?{maxWidth:n.maxWidth}:{});function a(r){const i=r.target.value??"";o("update:modelValue",i),o("search",{value:i})}return(r,i)=>(se(),ae("div",{class:"search-box",style:Gt(s.value)},[i[0]||(i[0]=oe("svg",{class:"search-icon",width:"18",height:"18",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[oe("circle",{cx:"11",cy:"11",r:"7",fill:"none",stroke:"currentColor","stroke-width":"2"}),oe("line",{x1:"16.5",y1:"16.5",x2:"21",y2:"21",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round"})],-1)),oe("input",{type:"search",value:e.modelValue,placeholder:e.placeholder,"aria-label":e.ariaLabel,onInput:a},null,40,Wu)],4))}},[["styles",[zu]]]);/*! +**/let Ls;const Nr=typeof window<"u"&&window.trustedTypes;if(Nr)try{Ls=Nr.createPolicy("vue",{createHTML:e=>e})}catch{}const Mr=Ls?e=>Ls.createHTML(e):e=>e,ru="http://www.w3.org/2000/svg",iu="http://www.w3.org/1998/Math/MathML",Ot=typeof document<"u"?document:null,Pr=Ot&&Ot.createElement("template"),lu={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const s=t==="svg"?Ot.createElementNS(ru,e):t==="mathml"?Ot.createElementNS(iu,e):n?Ot.createElement(e,{is:n}):Ot.createElement(e);return e==="select"&&o&&o.multiple!=null&&s.setAttribute("multiple",o.multiple),s},createText:e=>Ot.createTextNode(e),createComment:e=>Ot.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ot.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,s,a){const r=n?n.previousSibling:t.lastChild;if(s&&(s===a||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===a||!(s=s.nextSibling)););else{Pr.innerHTML=Mr(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const i=Pr.content;if(o==="svg"||o==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,n)}return[r?r.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},cu=Symbol("_vtc");function uu(e,t,n){const o=e[cu];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Cr=Symbol("_vod"),du=Symbol("_vsh"),pu=Symbol(""),fu=/(?:^|;)\s*display\s*:/;function gu(e,t,n){const o=e.style,s=ke(n);let a=!1;if(n&&!s){if(t)if(ke(t))for(const r of t.split(";")){const i=r.slice(0,r.indexOf(":")).trim();n[i]==null&&qn(o,i,"")}else for(const r in t)n[r]==null&&qn(o,r,"");for(const r in n){r==="display"&&(a=!0);const i=n[r];i!=null?_u(e,r,!ke(t)&&t?t[r]:void 0,i)||qn(o,r,i):qn(o,r,"")}}else if(s){if(t!==n){const r=o[pu];r&&(n+=";"+r),o.cssText=n,a=fu.test(n)}}else t&&e.removeAttribute("style");Cr in e&&(e[Cr]=a?o.display:"",e[du]&&(o.display="none"))}const No=/\s*!important$/;function qn(e,t,n){if(Z(n))n.forEach(o=>qn(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))No.test(n)?e.setProperty(t,n.replace(No,""),"important"):e.setProperty(t,n);else{const o=hu(e,t);No.test(n)?e.setProperty(tt(o),n.replace(No,""),"important"):e[o]=n}}const Or=["Webkit","Moz","ms"],xs={};function hu(e,t){const n=xs[t];if(n)return n;let o=Be(t);if(o!=="filter"&&o in e)return xs[t]=o;o=sa(o);for(let s=0;sEs||(wu.then(()=>Es=0),Es=Date.now());function Au(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;const s=n.value;if(Z(s)){const a=o.stopImmediatePropagation;o.stopImmediatePropagation=()=>{a.call(o),o._stopped=!0};const r=s.slice(),i=[o];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Su=(e,t,n,o,s,a)=>{const r=s==="svg";t==="class"?uu(e,o,r):t==="style"?gu(e,n,o):Qn(t)?eo(t)||bu(e,t,n,o,a):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Tu(e,t,o,r))?(Dr(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Fr(e,t,o,r,a,t!=="value")):e._isVueCE&&(Lu(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!ke(o)))?Dr(e,Be(t),o,a,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),Fr(e,t,o,r))};function Tu(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&Ur(t)&&te(n));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 Ur(t)&&ke(n)?!1:t in e}function Lu(e,t){const n=e._def.props;if(!n)return!1;const o=Be(t);return Array.isArray(n)?n.some(s=>Be(s)===o):Object.keys(n).some(s=>Be(s)===o)}const zr={};function xu(e,t,n){let o=bo(e,t);to(o)&&(o=Ee({},o,t));class s extends Ns{constructor(r){super(o,r,n)}}return s.def=o,s}const Eu=typeof HTMLElement<"u"?HTMLElement:class{};class Ns extends Eu{constructor(t,n={},o=Vr){super(),this._def=t,this._props=n,this._createApp=o,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&&o!==Vr?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Ee({},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 Ns){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,xn(()=>{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 n of t)this._setAttr(n.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let o=0;o{this._resolved=!0,this._pendingResolve=void 0;const{props:a,styles:r}=o;let i;if(a&&!Z(a))for(const l in a){const d=a[l];(d===Number||d&&d.type===Number)&&(l in this._props&&(this._props[l]=ia(this._props[l])),(i||(i=Object.create(null)))[Be(l)]=!0)}this._numberProps=i,this._resolveProps(o),this.shadowRoot&&this._applyStyles(r),this._mount(o)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(o=>{o.configureApp=this._def.configureApp,t(this._def=o,!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 n=this._instance&&this._instance.exposed;if(n)for(const o in n)ge(this,o)||Object.defineProperty(this,o,{get:()=>Jt(n[o])})}_resolveProps(t){const{props:n}=t,o=Z(n)?n:Object.keys(n||{});for(const s of Object.keys(this))s[0]!=="_"&&o.includes(s)&&this._setProp(s,this[s]);for(const s of o.map(Be))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(a){this._setProp(s,a,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const n=this.hasAttribute(t);let o=n?this.getAttribute(t):zr;const s=Be(t);n&&this._numberProps&&this._numberProps[s]&&(o=ia(o)),this._setProp(s,o,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,o=!0,s=!1){if(n!==this._props[t]&&(this._dirty=!0,n===zr?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),s&&this._instance&&this._update(),o)){const a=this._ob;a&&(this._processMutations(a.takeRecords()),a.disconnect()),n===!0?this.setAttribute(tt(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(tt(t),n+""):n||this.removeAttribute(tt(t)),a&&a.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Cu(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=Me(this._def,Ee(t,this._props));return this._instance||(n.ce=o=>{this._instance=o,o.ce=this,o.isCE=!0;const s=(a,r)=>{this.dispatchEvent(new CustomEvent(a,to(r[0])?Ee({detail:r},r[0]):{detail:r}))};o.emit=(a,...r)=>{s(a,r),tt(a)!==a&&s(tt(a),r)},this._setParent()}),n}_applyStyles(t,n,o){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const s=this._nonce,a=this.shadowRoot,r=o?this._getStyleAnchor(o)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(a);let i=null;for(let l=t.length-1;l>=0;l--){const d=document.createElement("style");s&&d.setAttribute("nonce",s),d.textContent=t[l],a.insertBefore(d,i||r),i=d,l===0&&(o||this._styleAnchors.set(this._def,d),n&&this._styleAnchors.set(n,d))}}_getStyleAnchor(t){if(!t)return null;const n=this._styleAnchors.get(t);return n&&n.parentNode===this.shadowRoot?n:(n&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let n=0;n{const t=e.props["onUpdate:modelValue"]||!1;return Z(t)?n=>oo(t,n):t},Ms=Symbol("_assign"),Nu={deep:!0,created(e,{value:t,modifiers:{number:n}},o){e._modelValue=t,Rr(e,"change",()=>{const s=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>n?ra(Mo(l)):Mo(l)),a=e.multiple,r=a?Kt(e._modelValue)?new Set(s):s:s[0],i=e._pendingValue=[a,a?Z(r)?s.slice():s:r];try{e[Ms](r)}finally{xn(()=>{e._pendingValue===i&&(e._pendingValue=void 0)})}}),e[Ms]=Wr(o)},mounted(e,{value:t}){qr(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[Ms]=Wr(n)},updated(e,{value:t}){const n=e._pendingValue;e._pendingValue=void 0,(!n||n[0]!==e.multiple||!Mu(t,n[1],n[0]))&&qr(e,t)}};function Mu(e,t,n){if(!n||Z(e))return Ut(e,t);if(Kt(e)){if(e.size!==t.length)return!1;for(const o of t)if(!e.has(o))return!1;return!0}return!1}function qr(e,t){const n=e.multiple,o=Z(t);if(!(n&&!o&&!Kt(t))){for(let s=0,a=e.options.length;sString(d)===String(i)):r.selected=$l(t,i)>-1}else r.selected=t.has(i);else if(Ut(Mo(r),t)){e.selectedIndex!==s&&(e.selectedIndex=s);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Mo(e){return"_value"in e?e._value:e.value}const Pu=Ee({patchProp:Su},lu);let Hr;function Br(){return Hr||(Hr=jc(Pu))}const Cu=(...e)=>{Br().render(...e)},Vr=(...e)=>{const t=Br().createApp(...e),{mount:n}=t;return t.mount=o=>{const s=Iu(o);if(!s)return;const a=t._component;!te(a)&&!a.render&&!a.template&&(a.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const r=n(s,!1,Ou(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),r},t};function Ou(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Iu(e){return ke(e)?document.querySelector(e):e}function Po(e,t){if(!t.includes("."))return e==null?void 0:e[t];const[n,...o]=t.split(".");let s=e==null?void 0:e[n];for(const a of o)s=s==null?void 0:s[a];return s}function Fu(e,t){const n=e.toLowerCase(),o=t.toLowerCase(),s=[];let a=0,r=n.indexOf(o,a);for(;r!==-1;)s.push([r,r+o.length-1]),a=r+o.length,r=n.indexOf(o,a);return s}function Du(e,t,n){const o=e.toLowerCase(),s=t.toLowerCase(),a=s.length;if(!a||!o.length)return null;const r=Math.min(2,Math.floor(n*a));if(r<=0)return null;let i=new Array(o.length+1).fill(0),l=new Array(o.length+1);for(let m=1;m<=a;m++){l[0]=m;for(let k=1;k<=o.length;k++){const D=i[k-1]+(s[m-1]===o[k-1]?0:1);l[k]=Math.min(D,i[k]+1,l[k-1]+1)}[i,l]=[l,i]}let d=1/0,p=-1;for(let m=1;m<=o.length;m++)i[m]r?null:[[Math.max(0,p-a),p-1]]}function Ru(e,t,{threshold:n=.4}={}){const o=String(e??"").trim().toLowerCase();if(!o)return[];const s=Math.min(2,Math.floor(n*o.length)),a=[];for(const i of t){if(!i)continue;const l=String(i).toLowerCase();if(Math.abs(l.length-o.length)>s)continue;const d=ju(l,o,s);d<=s&&a.push({value:i,distance:d})}if(!a.length)return[];const r=Math.min(...a.map(i=>i.distance));return a.filter(i=>i.distance===r).map(i=>i.value)}function ju(e,t,n){if(e===t)return 0;let o=Array.from({length:t.length+1},(a,r)=>r);const s=new Array(t.length+1);for(let a=1;a<=e.length;a++){s[0]=a;let r=a;for(let i=1;i<=t.length;i++)s[i]=Math.min(o[i-1]+(e[a-1]===t[i-1]?0:1),o[i]+1,s[i-1]+1),s[i]n)return n+1;for(let i=0;i<=t.length;i++)o[i]=s[i]}return o[t.length]}class Uu{constructor(t,n={}){this.list=Array.isArray(t)?t:[],this.keys=n.keys||[],this.threshold=typeof n.threshold=="number"?n.threshold:.4,this.minMatchCharLength=n.minMatchCharLength||1}search(t){const n=String(t||"").trim();if(!n)return this.list.map(d=>({item:d,matches:[]}));if(n.length":">",'"':""","'":"'","`":"`"};function Co(e){return e==null?"":String(e).replace(/[&<>"'`]/g,t=>zu[t])}function Wu(e,t){const n=String(e??"");if(!Array.isArray(t)||t.length===0)return Co(n);let o=0,s="";return t.forEach((a,r)=>{const[i,l]=a,d=r===t.length-1;s+=Co(n.slice(o,i))+''+Co(n.slice(i,l+1))+""+(d?Co(n.slice(l+1)):""),o=l+1}),s}const qu=".search-box{position:relative;display:flex;align-items:center;margin:0 auto;width:100%;color:var(--dx-muted, #6d766e)}.search-box .search-icon{position:absolute;left:12px;pointer-events:none}.search-box input{width:100%;padding:10px 12px 10px 38px;font-size:.95rem;color:var(--dx-text, #3b463d);background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:10px;outline:none;box-sizing:border-box}.search-box input:focus{border-color:var(--dx-accent, #92b195);box-shadow:0 0 0 2px var(--dx-accent-weak, rgba(146, 177, 149, .18))}",Ps=(e,t)=>{const n=e.__vccOpts||e;for(const[o,s]of t)n[o]=s;return n},Hu=["value","placeholder","aria-label"],Bu=Ps({__name:"SearchBar",props:{modelValue:{type:String,default:""},placeholder:{type:String,default:"Search…"},ariaLabel:{type:String,default:"Search"},maxWidth:{type:String,default:""}},emits:["update:modelValue","search"],setup(e,{emit:t}){const n=e,o=t,s=de(()=>n.maxWidth?{maxWidth:n.maxWidth}:{});function a(r){const i=r.target.value??"";o("update:modelValue",i),o("search",{value:i})}return(r,i)=>(ie(),le("div",{class:"search-box",style:Gt(s.value)},[i[0]||(i[0]=re("svg",{class:"search-icon",width:"18",height:"18",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[re("circle",{cx:"11",cy:"11",r:"7",fill:"none",stroke:"currentColor","stroke-width":"2"}),re("line",{x1:"16.5",y1:"16.5",x2:"21",y2:"21",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round"})],-1)),re("input",{type:"search",value:e.modelValue,placeholder:e.placeholder,"aria-label":e.ariaLabel,onInput:a},null,40,Hu)],4))}},[["styles",[qu]]]);/*! * shared v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function Hu(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const Br=typeof window<"u",nn=(e,t=!1)=>t?Symbol.for(e):Symbol(e),Bu=(e,t,n)=>Vu({l:e,k:t,s:n}),Vu=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Oe=e=>typeof e=="number"&&isFinite(e),Ku=e=>Yr(e)==="[object Date]",hn=e=>Yr(e)==="[object RegExp]",Po=e=>re(e)&&Object.keys(e).length===0,Ue=Object.assign,Gu=Object.create,ge=(e=null)=>Gu(e);let Vr;const qn=()=>Vr||(Vr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:ge());function Kr(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Gr(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function Xu(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(o,s,a)=>`${s}="${Gr(a)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(o,s,a)=>`${s}='${Gr(a)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(o=>{e=e.replace(o,"$1javascript:")}),e}const Yu=Object.prototype.hasOwnProperty;function ct(e,t){return Yu.call(e,t)}const xe=Array.isArray,ye=e=>typeof e=="function",G=e=>typeof e=="string",me=e=>typeof e=="boolean",de=e=>e!==null&&typeof e=="object",Ju=e=>de(e)&&ye(e.then)&&ye(e.catch),Xr=Object.prototype.toString,Yr=e=>Xr.call(e),re=e=>{if(!de(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},Zu=e=>e==null?"":xe(e)||re(e)&&e.toString===Xr?JSON.stringify(e,null,2):String(e);function Qu(e,t=""){return e.reduce((n,o,s)=>s===0?n+o:n+t+o,"")}function Co(e){let t=e;return()=>++t}const Oo=e=>!de(e)||xe(e);function Io(e,t){if(Oo(e)||Oo(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:o,des:s}=n.pop();Object.keys(o).forEach(a=>{a!=="__proto__"&&(de(o[a])&&!de(s[a])&&(s[a]=Array.isArray(o[a])?[]:ge()),Oo(s[a])||Oo(o[a])?s[a]=o[a]:n.push({src:o[a],des:s[a]}))})}}/*! + */function Vu(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const Kr=typeof window<"u",nn=(e,t=!1)=>t?Symbol.for(e):Symbol(e),Ku=(e,t,n)=>Gu({l:e,k:t,s:n}),Gu=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Oe=e=>typeof e=="number"&&isFinite(e),Xu=e=>Zr(e)==="[object Date]",_n=e=>Zr(e)==="[object RegExp]",Oo=e=>ce(e)&&Object.keys(e).length===0,je=Object.assign,Yu=Object.create,me=(e=null)=>Yu(e);let Gr;const Hn=()=>Gr||(Gr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:me());function Xr(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Yr(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function Ju(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(o,s,a)=>`${s}="${Yr(a)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(o,s,a)=>`${s}='${Yr(a)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(o=>{e=e.replace(o,"$1javascript:")}),e}const Zu=Object.prototype.hasOwnProperty;function dt(e,t){return Zu.call(e,t)}const Pe=Array.isArray,Se=e=>typeof e=="function",G=e=>typeof e=="string",we=e=>typeof e=="boolean",fe=e=>e!==null&&typeof e=="object",Qu=e=>fe(e)&&Se(e.then)&&Se(e.catch),Jr=Object.prototype.toString,Zr=e=>Jr.call(e),ce=e=>{if(!fe(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},ed=e=>e==null?"":Pe(e)||ce(e)&&e.toString===Jr?JSON.stringify(e,null,2):String(e);function td(e,t=""){return e.reduce((n,o,s)=>s===0?n+o:n+t+o,"")}function Io(e){let t=e;return()=>++t}const Fo=e=>!fe(e)||Pe(e);function Do(e,t){if(Fo(e)||Fo(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:o,des:s}=n.pop();Object.keys(o).forEach(a=>{a!=="__proto__"&&(fe(o[a])&&!fe(s[a])&&(s[a]=Array.isArray(o[a])?[]:me()),Fo(s[a])||Fo(o[a])?s[a]=o[a]:n.push({src:o[a],des:s[a]}))})}}/*! * message-compiler v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function ed(e,t,n){return{line:e,column:t,offset:n}}function Fo(e,t,n){return{start:e,end:t}}const td=/\{([0-9a-zA-Z]+)\}/g;function Jr(e,...t){return t.length===1&&nd(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(td,(n,o)=>t.hasOwnProperty(o)?t[o]:"")}const Zr=Object.assign,Qr=e=>typeof e=="string",nd=e=>e!==null&&typeof e=="object";function ei(e,t=""){return e.reduce((n,o,s)=>s===0?n+o:n+t+o,"")}const Ms={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},od={[Ms.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function sd(e,t,...n){const o=Jr(od[e],...n||[]),s={message:String(o),code:e};return t&&(s.location=t),s}const Z={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},ad={[Z.EXPECTED_TOKEN]:"Expected token: '{0}'",[Z.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Z.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Z.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Z.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Z.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Z.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Z.EMPTY_PLACEHOLDER]:"Empty placeholder",[Z.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Z.INVALID_LINKED_FORMAT]:"Invalid linked format",[Z.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Z.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Z.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Z.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Z.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Z.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function _n(e,t,n={}){const{domain:o,messages:s,args:a}=n,r=Jr((s||ad)[e]||"",...a||[]),i=new SyntaxError(String(r));return i.code=e,t&&(i.location=t),i.domain=o,i}function rd(e){throw e}const It=" ",id="\r",Be=` -`,ld="\u2028",cd="\u2029";function ud(e){const t=e;let n=0,o=1,s=1,a=0;const r=C=>t[C]===id&&t[C+1]===Be,i=C=>t[C]===Be,l=C=>t[C]===cd,d=C=>t[C]===ld,p=C=>r(C)||i(C)||l(C)||d(C),_=()=>n,b=()=>o,S=()=>s,I=()=>a,A=C=>r(C)||l(C)||d(C)?Be:t[C],U=()=>A(n),R=()=>A(n+a);function j(){return a=0,p(n)&&(o++,s=0),r(n)&&n++,n++,s++,t[n]}function w(){return r(n+a)&&a++,a++,t[n+a]}function $(){n=0,o=1,s=1,a=0}function E(C=0){a=C}function x(){const C=n+a;for(;C!==n;)j();a=0}return{index:_,line:b,column:S,peekOffset:I,charAt:A,currentChar:U,currentPeek:R,next:j,peek:w,reset:$,resetPeek:E,skipToPeek:x}}const Wt=void 0,dd=".",ti="'",pd="tokenizer";function fd(e,t={}){const n=t.location!==!1,o=ud(e),s=()=>o.index(),a=()=>ed(o.line(),o.column(),o.index()),r=a(),i=s(),l={currentType:14,offset:i,startLoc:r,endLoc:r,lastType:14,lastOffset:i,lastStartLoc:r,lastEndLoc:r,braceNest:0,inLinked:!1,text:""},d=()=>l,{onError:p}=t;function _(c,u,y,...L){const z=d();if(u.column+=y,u.offset+=y,p){const O=n?Fo(z.startLoc,u):null,v=_n(c,O,{domain:pd,args:L});p(v)}}function b(c,u,y){c.endLoc=a(),c.currentType=u;const L={type:u};return n&&(L.loc=Fo(c.startLoc,c.endLoc)),y!=null&&(L.value=y),L}const S=c=>b(c,14);function I(c,u){return c.currentChar()===u?(c.next(),u):(_(Z.EXPECTED_TOKEN,a(),0,u),"")}function A(c){let u="";for(;c.currentPeek()===It||c.currentPeek()===Be;)u+=c.currentPeek(),c.peek();return u}function U(c){const u=A(c);return c.skipToPeek(),u}function R(c){if(c===Wt)return!1;const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u===95}function j(c){if(c===Wt)return!1;const u=c.charCodeAt(0);return u>=48&&u<=57}function w(c,u){const{currentType:y}=u;if(y!==2)return!1;A(c);const L=R(c.currentPeek());return c.resetPeek(),L}function $(c,u){const{currentType:y}=u;if(y!==2)return!1;A(c);const L=c.currentPeek()==="-"?c.peek():c.currentPeek(),z=j(L);return c.resetPeek(),z}function E(c,u){const{currentType:y}=u;if(y!==2)return!1;A(c);const L=c.currentPeek()===ti;return c.resetPeek(),L}function x(c,u){const{currentType:y}=u;if(y!==8)return!1;A(c);const L=c.currentPeek()===".";return c.resetPeek(),L}function C(c,u){const{currentType:y}=u;if(y!==9)return!1;A(c);const L=R(c.currentPeek());return c.resetPeek(),L}function W(c,u){const{currentType:y}=u;if(!(y===8||y===12))return!1;A(c);const L=c.currentPeek()===":";return c.resetPeek(),L}function H(c,u){const{currentType:y}=u;if(y!==10)return!1;const L=()=>{const O=c.currentPeek();return O==="{"?R(c.peek()):O==="@"||O==="%"||O==="|"||O===":"||O==="."||O===It||!O?!1:O===Be?(c.peek(),L()):B(c,!1)},z=L();return c.resetPeek(),z}function ce(c){A(c);const u=c.currentPeek()==="|";return c.resetPeek(),u}function K(c){const u=A(c),y=c.currentPeek()==="%"&&c.peek()==="{";return c.resetPeek(),{isModulo:y,hasSpace:u.length>0}}function B(c,u=!0){const y=(z=!1,O="",v=!1)=>{const f=c.currentPeek();return f==="{"?O==="%"?!1:z:f==="@"||!f?O==="%"?!0:z:f==="%"?(c.peek(),y(z,"%",!0)):f==="|"?O==="%"||v?!0:!(O===It||O===Be):f===It?(c.peek(),y(!0,It,v)):f===Be?(c.peek(),y(!0,Be,v)):!0},L=y();return u&&c.resetPeek(),L}function V(c,u){const y=c.currentChar();return y===Wt?Wt:u(y)?(c.next(),y):null}function Ee(c){const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u>=48&&u<=57||u===95||u===36}function Me(c){return V(c,Ee)}function ee(c){const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u>=48&&u<=57||u===95||u===36||u===45}function ne(c){return V(c,ee)}function ie(c){const u=c.charCodeAt(0);return u>=48&&u<=57}function Ae(c){return V(c,ie)}function Ze(c){const u=c.charCodeAt(0);return u>=48&&u<=57||u>=65&&u<=70||u>=97&&u<=102}function be(c){return V(c,Ze)}function we(c){let u="",y="";for(;u=Ae(c);)y+=u;return y}function st(c){U(c);const u=c.currentChar();return u!=="%"&&_(Z.EXPECTED_TOKEN,a(),0,u),c.next(),"%"}function Re(c){let u="";for(;;){const y=c.currentChar();if(y==="{"||y==="}"||y==="@"||y==="|"||!y)break;if(y==="%")if(B(c))u+=y,c.next();else break;else if(y===It||y===Be)if(B(c))u+=y,c.next();else{if(ce(c))break;u+=y,c.next()}else u+=y,c.next()}return u}function Ve(c){U(c);let u="",y="";for(;u=ne(c);)y+=u;return c.currentChar()===Wt&&_(Z.UNTERMINATED_CLOSING_BRACE,a(),0),y}function Ke(c){U(c);let u="";return c.currentChar()==="-"?(c.next(),u+=`-${we(c)}`):u+=we(c),c.currentChar()===Wt&&_(Z.UNTERMINATED_CLOSING_BRACE,a(),0),u}function dt(c){return c!==ti&&c!==Be}function pt(c){U(c),I(c,"'");let u="",y="";for(;u=V(c,dt);)u==="\\"?y+=ze(c):y+=u;const L=c.currentChar();return L===Be||L===Wt?(_(Z.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,a(),0),L===Be&&(c.next(),I(c,"'")),y):(I(c,"'"),y)}function ze(c){const u=c.currentChar();switch(u){case"\\":case"'":return c.next(),`\\${u}`;case"u":return Ge(c,u,4);case"U":return Ge(c,u,6);default:return _(Z.UNKNOWN_ESCAPE_SEQUENCE,a(),0,u),""}}function Ge(c,u,y){I(c,u);let L="";for(let z=0;z{const L=c.currentChar();return L==="{"||L==="%"||L==="@"||L==="|"||L==="("||L===")"||!L||L===It?y:(y+=L,c.next(),u(y))};return u("")}function T(c){U(c);const u=I(c,"|");return U(c),u}function M(c,u){let y=null;switch(c.currentChar()){case"{":return u.braceNest>=1&&_(Z.NOT_ALLOW_NEST_PLACEHOLDER,a(),0),c.next(),y=b(u,2,"{"),U(c),u.braceNest++,y;case"}":return u.braceNest>0&&u.currentType===2&&_(Z.EMPTY_PLACEHOLDER,a(),0),c.next(),y=b(u,3,"}"),u.braceNest--,u.braceNest>0&&U(c),u.inLinked&&u.braceNest===0&&(u.inLinked=!1),y;case"@":return u.braceNest>0&&_(Z.UNTERMINATED_CLOSING_BRACE,a(),0),y=N(c,u)||S(u),u.braceNest=0,y;default:{let z=!0,O=!0,v=!0;if(ce(c))return u.braceNest>0&&_(Z.UNTERMINATED_CLOSING_BRACE,a(),0),y=b(u,1,T(c)),u.braceNest=0,u.inLinked=!1,y;if(u.braceNest>0&&(u.currentType===5||u.currentType===6||u.currentType===7))return _(Z.UNTERMINATED_CLOSING_BRACE,a(),0),u.braceNest=0,F(c,u);if(z=w(c,u))return y=b(u,5,Ve(c)),U(c),y;if(O=$(c,u))return y=b(u,6,Ke(c)),U(c),y;if(v=E(c,u))return y=b(u,7,pt(c)),U(c),y;if(!z&&!O&&!v)return y=b(u,13,g(c)),_(Z.INVALID_TOKEN_IN_PLACEHOLDER,a(),0,y.value),U(c),y;break}}return y}function N(c,u){const{currentType:y}=u;let L=null;const z=c.currentChar();switch((y===8||y===9||y===12||y===10)&&(z===Be||z===It)&&_(Z.INVALID_LINKED_FORMAT,a(),0),z){case"@":return c.next(),L=b(u,8,"@"),u.inLinked=!0,L;case".":return U(c),c.next(),b(u,9,".");case":":return U(c),c.next(),b(u,10,":");default:return ce(c)?(L=b(u,1,T(c)),u.braceNest=0,u.inLinked=!1,L):x(c,u)||W(c,u)?(U(c),N(c,u)):C(c,u)?(U(c),b(u,12,m(c))):H(c,u)?(U(c),z==="{"?M(c,u)||L:b(u,11,h(c))):(y===8&&_(Z.INVALID_LINKED_FORMAT,a(),0),u.braceNest=0,u.inLinked=!1,F(c,u))}}function F(c,u){let y={type:14};if(u.braceNest>0)return M(c,u)||S(u);if(u.inLinked)return N(c,u)||S(u);switch(c.currentChar()){case"{":return M(c,u)||S(u);case"}":return _(Z.UNBALANCED_CLOSING_BRACE,a(),0),c.next(),b(u,3,"}");case"@":return N(c,u)||S(u);default:{if(ce(c))return y=b(u,1,T(c)),u.braceNest=0,u.inLinked=!1,y;const{isModulo:z,hasSpace:O}=K(c);if(z)return O?b(u,0,Re(c)):b(u,4,st(c));if(B(c))return b(u,0,Re(c));break}}return y}function D(){const{currentType:c,offset:u,startLoc:y,endLoc:L}=l;return l.lastType=c,l.lastOffset=u,l.lastStartLoc=y,l.lastEndLoc=L,l.offset=s(),l.startLoc=a(),o.currentChar()===Wt?b(l,14):F(o,l)}return{nextToken:D,currentOffset:s,currentPosition:a,context:d}}const gd="parser",hd=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function _d(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const o=parseInt(t||n,16);return o<=55295||o>=57344?String.fromCodePoint(o):"�"}}}function md(e={}){const t=e.location!==!1,{onError:n,onWarn:o}=e;function s(w,$,E,x,...C){const W=w.currentPosition();if(W.offset+=x,W.column+=x,n){const H=t?Fo(E,W):null,ce=_n($,H,{domain:gd,args:C});n(ce)}}function a(w,$,E,x,...C){const W=w.currentPosition();if(W.offset+=x,W.column+=x,o){const H=t?Fo(E,W):null;o(sd($,H,C))}}function r(w,$,E){const x={type:w};return t&&(x.start=$,x.end=$,x.loc={start:E,end:E}),x}function i(w,$,E,x){t&&(w.end=$,w.loc&&(w.loc.end=E))}function l(w,$){const E=w.context(),x=r(3,E.offset,E.startLoc);return x.value=$,i(x,w.currentOffset(),w.currentPosition()),x}function d(w,$){const E=w.context(),{lastOffset:x,lastStartLoc:C}=E,W=r(5,x,C);return W.index=parseInt($,10),w.nextToken(),i(W,w.currentOffset(),w.currentPosition()),W}function p(w,$,E){const x=w.context(),{lastOffset:C,lastStartLoc:W}=x,H=r(4,C,W);return H.key=$,E===!0&&(H.modulo=!0),w.nextToken(),i(H,w.currentOffset(),w.currentPosition()),H}function _(w,$){const E=w.context(),{lastOffset:x,lastStartLoc:C}=E,W=r(9,x,C);return W.value=$.replace(hd,_d),w.nextToken(),i(W,w.currentOffset(),w.currentPosition()),W}function b(w){const $=w.nextToken(),E=w.context(),{lastOffset:x,lastStartLoc:C}=E,W=r(8,x,C);return $.type!==12?(s(w,Z.UNEXPECTED_EMPTY_LINKED_MODIFIER,E.lastStartLoc,0),W.value="",i(W,x,C),{nextConsumeToken:$,node:W}):($.value==null&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,E.lastStartLoc,0,ut($)),W.value=$.value||"",i(W,w.currentOffset(),w.currentPosition()),{node:W})}function S(w,$){const E=w.context(),x=r(7,E.offset,E.startLoc);return x.value=$,i(x,w.currentOffset(),w.currentPosition()),x}function I(w){const $=w.context(),E=r(6,$.offset,$.startLoc);let x=w.nextToken();if(x.type===9){const C=b(w);E.modifier=C.node,x=C.nextConsumeToken||w.nextToken()}switch(x.type!==10&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,ut(x)),x=w.nextToken(),x.type===2&&(x=w.nextToken()),x.type){case 11:x.value==null&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,ut(x)),E.key=S(w,x.value||"");break;case 5:x.value==null&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,ut(x)),E.key=p(w,x.value||"");break;case 6:x.value==null&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,ut(x)),E.key=d(w,x.value||"");break;case 7:x.value==null&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,ut(x)),E.key=_(w,x.value||"");break;default:{s(w,Z.UNEXPECTED_EMPTY_LINKED_KEY,$.lastStartLoc,0);const C=w.context(),W=r(7,C.offset,C.startLoc);return W.value="",i(W,C.offset,C.startLoc),E.key=W,i(E,C.offset,C.startLoc),{nextConsumeToken:x,node:E}}}return i(E,w.currentOffset(),w.currentPosition()),{node:E}}function A(w){const $=w.context(),E=$.currentType===1?w.currentOffset():$.offset,x=$.currentType===1?$.endLoc:$.startLoc,C=r(2,E,x);C.items=[];let W=null,H=null;do{const B=W||w.nextToken();switch(W=null,B.type){case 0:B.value==null&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,ut(B)),C.items.push(l(w,B.value||""));break;case 6:B.value==null&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,ut(B)),C.items.push(d(w,B.value||""));break;case 4:H=!0;break;case 5:B.value==null&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,ut(B)),C.items.push(p(w,B.value||"",!!H)),H&&(a(w,Ms.USE_MODULO_SYNTAX,$.lastStartLoc,0,ut(B)),H=null);break;case 7:B.value==null&&s(w,Z.UNEXPECTED_LEXICAL_ANALYSIS,$.lastStartLoc,0,ut(B)),C.items.push(_(w,B.value||""));break;case 8:{const V=I(w);C.items.push(V.node),W=V.nextConsumeToken||null;break}}}while($.currentType!==14&&$.currentType!==1);const ce=$.currentType===1?$.lastOffset:w.currentOffset(),K=$.currentType===1?$.lastEndLoc:w.currentPosition();return i(C,ce,K),C}function U(w,$,E,x){const C=w.context();let W=x.items.length===0;const H=r(1,$,E);H.cases=[],H.cases.push(x);do{const ce=A(w);W||(W=ce.items.length===0),H.cases.push(ce)}while(C.currentType!==14);return W&&s(w,Z.MUST_HAVE_MESSAGES_IN_PLURAL,E,0),i(H,w.currentOffset(),w.currentPosition()),H}function R(w){const $=w.context(),{offset:E,startLoc:x}=$,C=A(w);return $.currentType===14?C:U(w,E,x,C)}function j(w){const $=fd(w,Zr({},e)),E=$.context(),x=r(0,E.offset,E.startLoc);return t&&x.loc&&(x.loc.source=w),x.body=R($),e.onCacheKey&&(x.cacheKey=e.onCacheKey(w)),E.currentType!==14&&s($,Z.UNEXPECTED_LEXICAL_ANALYSIS,E.lastStartLoc,0,w[E.offset]||""),i(x,$.currentOffset(),$.currentPosition()),x}return{parse:j}}function ut(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function bd(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:a=>(n.helpers.add(a),a)}}function ni(e,t){for(let n=0;noi(n)),e}function oi(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;nr;function l(A,U){r.code+=A}function d(A,U=!0){const R=U?o:"";l(s?R+" ".repeat(A):R)}function p(A=!0){const U=++r.indentLevel;A&&d(U)}function _(A=!0){const U=--r.indentLevel;A&&d(U)}function b(){d(r.indentLevel)}return{context:i,push:l,indent:p,deindent:_,newline:b,helper:A=>`_${A}`,needIndent:()=>r.needIndent}}function Ad(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),bn(e,t.key),t.modifier?(e.push(", "),bn(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Sd(e,t){const{helper:n,needIndent:o}=e;e.push(`${n("normalize")}([`),e.indent(o());const s=t.items.length;for(let a=0;a1){e.push(`${n("plural")}([`),e.indent(o());const s=t.cases.length;for(let a=0;a{const n=Qr(t.mode)?t.mode:"normal",o=Qr(t.filename)?t.filename:"message.intl";t.sourceMap;const s=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` -`,a=t.needIndent?t.needIndent:n!=="arrow",r=e.helpers||[],i=kd(e,{filename:o,breakLineCode:s,needIndent:a});i.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(a),r.length>0&&(i.push(`const { ${ei(r.map(p=>`${p}: _${p}`),", ")} } = ctx`),i.newline()),i.push("return "),bn(i,e),i.deindent(a),i.push("}"),delete e.helpers;const{code:l,map:d}=i.context();return{ast:e,code:l,map:d?d.toJSON():void 0}};function Ed(e,t={}){const n=Zr({},t),o=!!n.jit,s=!!n.minify,a=n.optimize==null?!0:n.optimize,i=md(n).parse(e);return o?(a&&vd(i),s&&mn(i),{ast:i,code:""}):($d(i,n),xd(i,n))}/*! + */function nd(e,t,n){return{line:e,column:t,offset:n}}function Ro(e,t,n){return{start:e,end:t}}const od=/\{([0-9a-zA-Z]+)\}/g;function Qr(e,...t){return t.length===1&&sd(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(od,(n,o)=>t.hasOwnProperty(o)?t[o]:"")}const ei=Object.assign,ti=e=>typeof e=="string",sd=e=>e!==null&&typeof e=="object";function ni(e,t=""){return e.reduce((n,o,s)=>s===0?n+o:n+t+o,"")}const Cs={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},ad={[Cs.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function rd(e,t,...n){const o=Qr(ad[e],...n||[]),s={message:String(o),code:e};return t&&(s.location=t),s}const Q={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},id={[Q.EXPECTED_TOKEN]:"Expected token: '{0}'",[Q.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Q.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Q.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Q.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Q.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Q.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Q.EMPTY_PLACEHOLDER]:"Empty placeholder",[Q.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Q.INVALID_LINKED_FORMAT]:"Invalid linked format",[Q.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Q.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Q.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Q.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Q.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Q.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function mn(e,t,n={}){const{domain:o,messages:s,args:a}=n,r=Qr((s||id)[e]||"",...a||[]),i=new SyntaxError(String(r));return i.code=e,t&&(i.location=t),i.domain=o,i}function ld(e){throw e}const It=" ",cd="\r",He=` +`,ud="\u2028",dd="\u2029";function pd(e){const t=e;let n=0,o=1,s=1,a=0;const r=O=>t[O]===cd&&t[O+1]===He,i=O=>t[O]===He,l=O=>t[O]===dd,d=O=>t[O]===ud,p=O=>r(O)||i(O)||l(O)||d(O),h=()=>n,m=()=>o,k=()=>s,D=()=>a,E=O=>r(O)||l(O)||d(O)?He:t[O],z=()=>E(n),N=()=>E(n+a);function H(){return a=0,p(n)&&(o++,s=0),r(n)&&n++,n++,s++,t[n]}function w(){return r(n+a)&&a++,a++,t[n+a]}function b(){n=0,o=1,s=1,a=0}function P(O=0){a=O}function x(){const O=n+a;for(;O!==n;)H();a=0}return{index:h,line:m,column:k,peekOffset:D,charAt:E,currentChar:z,currentPeek:N,next:H,peek:w,reset:b,resetPeek:P,skipToPeek:x}}const Wt=void 0,fd=".",oi="'",gd="tokenizer";function hd(e,t={}){const n=t.location!==!1,o=pd(e),s=()=>o.index(),a=()=>nd(o.line(),o.column(),o.index()),r=a(),i=s(),l={currentType:14,offset:i,startLoc:r,endLoc:r,lastType:14,lastOffset:i,lastStartLoc:r,lastEndLoc:r,braceNest:0,inLinked:!1,text:""},d=()=>l,{onError:p}=t;function h(c,u,y,...S){const W=d();if(u.column+=y,u.offset+=y,p){const I=n?Ro(W.startLoc,u):null,v=mn(c,I,{domain:gd,args:S});p(v)}}function m(c,u,y){c.endLoc=a(),c.currentType=u;const S={type:u};return n&&(S.loc=Ro(c.startLoc,c.endLoc)),y!=null&&(S.value=y),S}const k=c=>m(c,14);function D(c,u){return c.currentChar()===u?(c.next(),u):(h(Q.EXPECTED_TOKEN,a(),0,u),"")}function E(c){let u="";for(;c.currentPeek()===It||c.currentPeek()===He;)u+=c.currentPeek(),c.peek();return u}function z(c){const u=E(c);return c.skipToPeek(),u}function N(c){if(c===Wt)return!1;const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u===95}function H(c){if(c===Wt)return!1;const u=c.charCodeAt(0);return u>=48&&u<=57}function w(c,u){const{currentType:y}=u;if(y!==2)return!1;E(c);const S=N(c.currentPeek());return c.resetPeek(),S}function b(c,u){const{currentType:y}=u;if(y!==2)return!1;E(c);const S=c.currentPeek()==="-"?c.peek():c.currentPeek(),W=H(S);return c.resetPeek(),W}function P(c,u){const{currentType:y}=u;if(y!==2)return!1;E(c);const S=c.currentPeek()===oi;return c.resetPeek(),S}function x(c,u){const{currentType:y}=u;if(y!==8)return!1;E(c);const S=c.currentPeek()===".";return c.resetPeek(),S}function O(c,u){const{currentType:y}=u;if(y!==9)return!1;E(c);const S=N(c.currentPeek());return c.resetPeek(),S}function q(c,u){const{currentType:y}=u;if(!(y===8||y===12))return!1;E(c);const S=c.currentPeek()===":";return c.resetPeek(),S}function R(c,u){const{currentType:y}=u;if(y!==10)return!1;const S=()=>{const I=c.currentPeek();return I==="{"?N(c.peek()):I==="@"||I==="%"||I==="|"||I===":"||I==="."||I===It||!I?!1:I===He?(c.peek(),S()):B(c,!1)},W=S();return c.resetPeek(),W}function ae(c){E(c);const u=c.currentPeek()==="|";return c.resetPeek(),u}function X(c){const u=E(c),y=c.currentPeek()==="%"&&c.peek()==="{";return c.resetPeek(),{isModulo:y,hasSpace:u.length>0}}function B(c,u=!0){const y=(W=!1,I="",v=!1)=>{const T=c.currentPeek();return T==="{"?I==="%"?!1:W:T==="@"||!T?I==="%"?!0:W:T==="%"?(c.peek(),y(W,"%",!0)):T==="|"?I==="%"||v?!0:!(I===It||I===He):T===It?(c.peek(),y(!0,It,v)):T===He?(c.peek(),y(!0,He,v)):!0},S=y();return u&&c.resetPeek(),S}function J(c,u){const y=c.currentChar();return y===Wt?Wt:u(y)?(c.next(),y):null}function Ce(c){const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u>=48&&u<=57||u===95||u===36}function se(c){return J(c,Ce)}function ue(c){const u=c.charCodeAt(0);return u>=97&&u<=122||u>=65&&u<=90||u>=48&&u<=57||u===95||u===36||u===45}function ne(c){return J(c,ue)}function ee(c){const u=c.charCodeAt(0);return u>=48&&u<=57}function xe(c){return J(c,ee)}function Ge(c){const u=c.charCodeAt(0);return u>=48&&u<=57||u>=65&&u<=70||u>=97&&u<=102}function $e(c){return J(c,Ge)}function Te(c){let u="",y="";for(;u=xe(c);)y+=u;return y}function rt(c){z(c);const u=c.currentChar();return u!=="%"&&h(Q.EXPECTED_TOKEN,a(),0,u),c.next(),"%"}function Xe(c){let u="";for(;;){const y=c.currentChar();if(y==="{"||y==="}"||y==="@"||y==="|"||!y)break;if(y==="%")if(B(c))u+=y,c.next();else break;else if(y===It||y===He)if(B(c))u+=y,c.next();else{if(ae(c))break;u+=y,c.next()}else u+=y,c.next()}return u}function it(c){z(c);let u="",y="";for(;u=ne(c);)y+=u;return c.currentChar()===Wt&&h(Q.UNTERMINATED_CLOSING_BRACE,a(),0),y}function Ue(c){z(c);let u="";return c.currentChar()==="-"?(c.next(),u+=`-${Te(c)}`):u+=Te(c),c.currentChar()===Wt&&h(Q.UNTERMINATED_CLOSING_BRACE,a(),0),u}function Ye(c){return c!==oi&&c!==He}function et(c){z(c),D(c,"'");let u="",y="";for(;u=J(c,Ye);)u==="\\"?y+=St(c):y+=u;const S=c.currentChar();return S===He||S===Wt?(h(Q.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,a(),0),S===He&&(c.next(),D(c,"'")),y):(D(c,"'"),y)}function St(c){const u=c.currentChar();switch(u){case"\\":case"'":return c.next(),`\\${u}`;case"u":return Je(c,u,4);case"U":return Je(c,u,6);default:return h(Q.UNKNOWN_ESCAPE_SEQUENCE,a(),0,u),""}}function Je(c,u,y){D(c,u);let S="";for(let W=0;W{const S=c.currentChar();return S==="{"||S==="%"||S==="@"||S==="|"||S==="("||S===")"||!S||S===It?y:(y+=S,c.next(),u(y))};return u("")}function A(c){z(c);const u=D(c,"|");return z(c),u}function C(c,u){let y=null;switch(c.currentChar()){case"{":return u.braceNest>=1&&h(Q.NOT_ALLOW_NEST_PLACEHOLDER,a(),0),c.next(),y=m(u,2,"{"),z(c),u.braceNest++,y;case"}":return u.braceNest>0&&u.currentType===2&&h(Q.EMPTY_PLACEHOLDER,a(),0),c.next(),y=m(u,3,"}"),u.braceNest--,u.braceNest>0&&z(c),u.inLinked&&u.braceNest===0&&(u.inLinked=!1),y;case"@":return u.braceNest>0&&h(Q.UNTERMINATED_CLOSING_BRACE,a(),0),y=M(c,u)||k(u),u.braceNest=0,y;default:{let W=!0,I=!0,v=!0;if(ae(c))return u.braceNest>0&&h(Q.UNTERMINATED_CLOSING_BRACE,a(),0),y=m(u,1,A(c)),u.braceNest=0,u.inLinked=!1,y;if(u.braceNest>0&&(u.currentType===5||u.currentType===6||u.currentType===7))return h(Q.UNTERMINATED_CLOSING_BRACE,a(),0),u.braceNest=0,j(c,u);if(W=w(c,u))return y=m(u,5,it(c)),z(c),y;if(I=b(c,u))return y=m(u,6,Ue(c)),z(c),y;if(v=P(c,u))return y=m(u,7,et(c)),z(c),y;if(!W&&!I&&!v)return y=m(u,13,f(c)),h(Q.INVALID_TOKEN_IN_PLACEHOLDER,a(),0,y.value),z(c),y;break}}return y}function M(c,u){const{currentType:y}=u;let S=null;const W=c.currentChar();switch((y===8||y===9||y===12||y===10)&&(W===He||W===It)&&h(Q.INVALID_LINKED_FORMAT,a(),0),W){case"@":return c.next(),S=m(u,8,"@"),u.inLinked=!0,S;case".":return z(c),c.next(),m(u,9,".");case":":return z(c),c.next(),m(u,10,":");default:return ae(c)?(S=m(u,1,A(c)),u.braceNest=0,u.inLinked=!1,S):x(c,u)||q(c,u)?(z(c),M(c,u)):O(c,u)?(z(c),m(u,12,_(c))):R(c,u)?(z(c),W==="{"?C(c,u)||S:m(u,11,g(c))):(y===8&&h(Q.INVALID_LINKED_FORMAT,a(),0),u.braceNest=0,u.inLinked=!1,j(c,u))}}function j(c,u){let y={type:14};if(u.braceNest>0)return C(c,u)||k(u);if(u.inLinked)return M(c,u)||k(u);switch(c.currentChar()){case"{":return C(c,u)||k(u);case"}":return h(Q.UNBALANCED_CLOSING_BRACE,a(),0),c.next(),m(u,3,"}");case"@":return M(c,u)||k(u);default:{if(ae(c))return y=m(u,1,A(c)),u.braceNest=0,u.inLinked=!1,y;const{isModulo:W,hasSpace:I}=X(c);if(W)return I?m(u,0,Xe(c)):m(u,4,rt(c));if(B(c))return m(u,0,Xe(c));break}}return y}function F(){const{currentType:c,offset:u,startLoc:y,endLoc:S}=l;return l.lastType=c,l.lastOffset=u,l.lastStartLoc=y,l.lastEndLoc=S,l.offset=s(),l.startLoc=a(),o.currentChar()===Wt?m(l,14):j(o,l)}return{nextToken:F,currentOffset:s,currentPosition:a,context:d}}const _d="parser",md=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function bd(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const o=parseInt(t||n,16);return o<=55295||o>=57344?String.fromCodePoint(o):"�"}}}function $d(e={}){const t=e.location!==!1,{onError:n,onWarn:o}=e;function s(w,b,P,x,...O){const q=w.currentPosition();if(q.offset+=x,q.column+=x,n){const R=t?Ro(P,q):null,ae=mn(b,R,{domain:_d,args:O});n(ae)}}function a(w,b,P,x,...O){const q=w.currentPosition();if(q.offset+=x,q.column+=x,o){const R=t?Ro(P,q):null;o(rd(b,R,O))}}function r(w,b,P){const x={type:w};return t&&(x.start=b,x.end=b,x.loc={start:P,end:P}),x}function i(w,b,P,x){t&&(w.end=b,w.loc&&(w.loc.end=P))}function l(w,b){const P=w.context(),x=r(3,P.offset,P.startLoc);return x.value=b,i(x,w.currentOffset(),w.currentPosition()),x}function d(w,b){const P=w.context(),{lastOffset:x,lastStartLoc:O}=P,q=r(5,x,O);return q.index=parseInt(b,10),w.nextToken(),i(q,w.currentOffset(),w.currentPosition()),q}function p(w,b,P){const x=w.context(),{lastOffset:O,lastStartLoc:q}=x,R=r(4,O,q);return R.key=b,P===!0&&(R.modulo=!0),w.nextToken(),i(R,w.currentOffset(),w.currentPosition()),R}function h(w,b){const P=w.context(),{lastOffset:x,lastStartLoc:O}=P,q=r(9,x,O);return q.value=b.replace(md,bd),w.nextToken(),i(q,w.currentOffset(),w.currentPosition()),q}function m(w){const b=w.nextToken(),P=w.context(),{lastOffset:x,lastStartLoc:O}=P,q=r(8,x,O);return b.type!==12?(s(w,Q.UNEXPECTED_EMPTY_LINKED_MODIFIER,P.lastStartLoc,0),q.value="",i(q,x,O),{nextConsumeToken:b,node:q}):(b.value==null&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,P.lastStartLoc,0,pt(b)),q.value=b.value||"",i(q,w.currentOffset(),w.currentPosition()),{node:q})}function k(w,b){const P=w.context(),x=r(7,P.offset,P.startLoc);return x.value=b,i(x,w.currentOffset(),w.currentPosition()),x}function D(w){const b=w.context(),P=r(6,b.offset,b.startLoc);let x=w.nextToken();if(x.type===9){const O=m(w);P.modifier=O.node,x=O.nextConsumeToken||w.nextToken()}switch(x.type!==10&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,pt(x)),x=w.nextToken(),x.type===2&&(x=w.nextToken()),x.type){case 11:x.value==null&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,pt(x)),P.key=k(w,x.value||"");break;case 5:x.value==null&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,pt(x)),P.key=p(w,x.value||"");break;case 6:x.value==null&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,pt(x)),P.key=d(w,x.value||"");break;case 7:x.value==null&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,pt(x)),P.key=h(w,x.value||"");break;default:{s(w,Q.UNEXPECTED_EMPTY_LINKED_KEY,b.lastStartLoc,0);const O=w.context(),q=r(7,O.offset,O.startLoc);return q.value="",i(q,O.offset,O.startLoc),P.key=q,i(P,O.offset,O.startLoc),{nextConsumeToken:x,node:P}}}return i(P,w.currentOffset(),w.currentPosition()),{node:P}}function E(w){const b=w.context(),P=b.currentType===1?w.currentOffset():b.offset,x=b.currentType===1?b.endLoc:b.startLoc,O=r(2,P,x);O.items=[];let q=null,R=null;do{const B=q||w.nextToken();switch(q=null,B.type){case 0:B.value==null&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,pt(B)),O.items.push(l(w,B.value||""));break;case 6:B.value==null&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,pt(B)),O.items.push(d(w,B.value||""));break;case 4:R=!0;break;case 5:B.value==null&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,pt(B)),O.items.push(p(w,B.value||"",!!R)),R&&(a(w,Cs.USE_MODULO_SYNTAX,b.lastStartLoc,0,pt(B)),R=null);break;case 7:B.value==null&&s(w,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,pt(B)),O.items.push(h(w,B.value||""));break;case 8:{const J=D(w);O.items.push(J.node),q=J.nextConsumeToken||null;break}}}while(b.currentType!==14&&b.currentType!==1);const ae=b.currentType===1?b.lastOffset:w.currentOffset(),X=b.currentType===1?b.lastEndLoc:w.currentPosition();return i(O,ae,X),O}function z(w,b,P,x){const O=w.context();let q=x.items.length===0;const R=r(1,b,P);R.cases=[],R.cases.push(x);do{const ae=E(w);q||(q=ae.items.length===0),R.cases.push(ae)}while(O.currentType!==14);return q&&s(w,Q.MUST_HAVE_MESSAGES_IN_PLURAL,P,0),i(R,w.currentOffset(),w.currentPosition()),R}function N(w){const b=w.context(),{offset:P,startLoc:x}=b,O=E(w);return b.currentType===14?O:z(w,P,x,O)}function H(w){const b=hd(w,ei({},e)),P=b.context(),x=r(0,P.offset,P.startLoc);return t&&x.loc&&(x.loc.source=w),x.body=N(b),e.onCacheKey&&(x.cacheKey=e.onCacheKey(w)),P.currentType!==14&&s(b,Q.UNEXPECTED_LEXICAL_ANALYSIS,P.lastStartLoc,0,w[P.offset]||""),i(x,b.currentOffset(),b.currentPosition()),x}return{parse:H}}function pt(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function vd(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:a=>(n.helpers.add(a),a)}}function si(e,t){for(let n=0;nai(n)),e}function ai(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;nr;function l(E,z){r.code+=E}function d(E,z=!0){const N=z?o:"";l(s?N+" ".repeat(E):N)}function p(E=!0){const z=++r.indentLevel;E&&d(z)}function h(E=!0){const z=--r.indentLevel;E&&d(z)}function m(){d(r.indentLevel)}return{context:i,push:l,indent:p,deindent:h,newline:m,helper:E=>`_${E}`,needIndent:()=>r.needIndent}}function Td(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),$n(e,t.key),t.modifier?(e.push(", "),$n(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Ld(e,t){const{helper:n,needIndent:o}=e;e.push(`${n("normalize")}([`),e.indent(o());const s=t.items.length;for(let a=0;a1){e.push(`${n("plural")}([`),e.indent(o());const s=t.cases.length;for(let a=0;a{const n=ti(t.mode)?t.mode:"normal",o=ti(t.filename)?t.filename:"message.intl";t.sourceMap;const s=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` +`,a=t.needIndent?t.needIndent:n!=="arrow",r=e.helpers||[],i=Sd(e,{filename:o,breakLineCode:s,needIndent:a});i.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(a),r.length>0&&(i.push(`const { ${ni(r.map(p=>`${p}: _${p}`),", ")} } = ctx`),i.newline()),i.push("return "),$n(i,e),i.deindent(a),i.push("}"),delete e.helpers;const{code:l,map:d}=i.context();return{ast:e,code:l,map:d?d.toJSON():void 0}};function Md(e,t={}){const n=ei({},t),o=!!n.jit,s=!!n.minify,a=n.optimize==null?!0:n.optimize,i=$d(n).parse(e);return o?(a&&wd(i),s&&bn(i),{ast:i,code:""}):(yd(i,n),Nd(i,n))}/*! * core-base v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function Nd(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(qn().__INTLIFY_PROD_DEVTOOLS__=!1)}function wt(e){return de(e)&&Cs(e)===0&&(ct(e,"b")||ct(e,"body"))}const si=["b","body"];function Md(e){return qt(e,si)}const ai=["c","cases"];function Pd(e){return qt(e,ai,[])}const ri=["s","static"];function Cd(e){return qt(e,ri)}const ii=["i","items"];function Od(e){return qt(e,ii,[])}const li=["t","type"];function Cs(e){return qt(e,li)}const ci=["v","value"];function Do(e,t){const n=qt(e,ci);if(n!=null)return n;throw Hn(t)}const ui=["m","modifier"];function Id(e){return qt(e,ui)}const di=["k","key"];function Fd(e){const t=qt(e,di);if(t)return t;throw Hn(6)}function qt(e,t,n){for(let o=0;o{r===void 0?r=i:r+=i},b[1]=()=>{r!==void 0&&(t.push(r),r=void 0)},b[2]=()=>{b[0](),s++},b[3]=()=>{if(s>0)s--,o=4,b[0]();else{if(s=0,r===void 0||(r=zd(r),r===!1))return!1;b[1]()}};function S(){const I=e[n+1];if(o===5&&I==="'"||o===6&&I==='"')return n++,i="\\"+I,b[0](),!0}for(;o!==null;)if(n++,a=e[n],!(a==="\\"&&S())){if(l=Ud(a),_=Ht[o],d=_[l]||_.l||8,d===8||(o=d[0],d[1]!==void 0&&(p=b[d[1]],p&&(i=a,p()===!1))))return;if(o===7)return t}}const fi=new Map;function qd(e,t){return de(e)?e[t]:null}function Hd(e,t){if(!de(e))return null;let n=fi.get(t);if(n||(n=Wd(t),n&&fi.set(t,n)),!n)return null;const o=n.length;let s=e,a=0;for(;ae,Vd=e=>"",Kd="text",Gd=e=>e.length===0?"":Qu(e),Xd=Zu;function gi(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function Yd(e){const t=Oe(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Oe(e.named.count)||Oe(e.named.n))?Oe(e.named.count)?e.named.count:Oe(e.named.n)?e.named.n:t:t}function Jd(e,t){t.count||(t.count=e),t.n||(t.n=e)}function Zd(e={}){const t=e.locale,n=Yd(e),o=de(e.pluralRules)&&G(t)&&ye(e.pluralRules[t])?e.pluralRules[t]:gi,s=de(e.pluralRules)&&G(t)&&ye(e.pluralRules[t])?gi:void 0,a=R=>R[o(n,R.length,s)],r=e.list||[],i=R=>r[R],l=e.named||ge();Oe(e.pluralIndex)&&Jd(n,l);const d=R=>l[R];function p(R){const j=ye(e.messages)?e.messages(R):de(e.messages)?e.messages[R]:!1;return j||(e.parent?e.parent.message(R):Vd)}const _=R=>e.modifiers?e.modifiers[R]:Bd,b=re(e.processor)&&ye(e.processor.normalize)?e.processor.normalize:Gd,S=re(e.processor)&&ye(e.processor.interpolate)?e.processor.interpolate:Xd,I=re(e.processor)&&G(e.processor.type)?e.processor.type:Kd,U={list:i,named:d,plural:a,linked:(R,...j)=>{const[w,$]=j;let E="text",x="";j.length===1?de(w)?(x=w.modifier||x,E=w.type||E):G(w)&&(x=w||x):j.length===2&&(G(w)&&(x=w||x),G($)&&(E=$||E));const C=p(R)(U),W=E==="vnode"&&xe(C)&&x?C[0]:C;return x?_(x)(W,E):W},message:p,type:I,interpolate:S,normalize:b,values:Ue(ge(),r,l)};return U}let Bn=null;function Qd(e){Bn=e}function ep(e,t,n){Bn&&Bn.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const tp=np("function:translate");function np(e){return t=>Bn&&Bn.emit(e,t)}const op=Ms.__EXTEND_POINT__,on=Co(op),sp={FALLBACK_TO_TRANSLATE:on(),CANNOT_FORMAT_NUMBER:on(),FALLBACK_TO_NUMBER_FORMAT:on(),CANNOT_FORMAT_DATE:on(),FALLBACK_TO_DATE_FORMAT:on(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:on(),__EXTEND_POINT__:on()},hi=Z.__EXTEND_POINT__,sn=Co(hi),kt={INVALID_ARGUMENT:hi,INVALID_DATE_ARGUMENT:sn(),INVALID_ISO_DATE_ARGUMENT:sn(),NOT_SUPPORT_NON_STRING_MESSAGE:sn(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:sn(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:sn(),NOT_SUPPORT_LOCALE_TYPE:sn(),__EXTEND_POINT__:sn()};function Ft(e){return _n(e,null,void 0)}function Os(e,t){return t.locale!=null?_i(t.locale):_i(e.locale)}let Is;function _i(e){if(G(e))return e;if(ye(e)){if(e.resolvedOnce&&Is!=null)return Is;if(e.constructor.name==="Function"){const t=e();if(Ju(t))throw Ft(kt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Is=t}else throw Ft(kt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw Ft(kt.NOT_SUPPORT_LOCALE_TYPE)}function ap(e,t,n){return[...new Set([n,...xe(t)?t:de(t)?Object.keys(t):G(t)?[t]:[n]])]}function mi(e,t,n){const o=G(n)?n:Vn,s=e;s.__localeChainCache||(s.__localeChainCache=new Map);let a=s.__localeChainCache.get(o);if(!a){a=[];let r=[n];for(;xe(r);)r=bi(a,r,t);const i=xe(t)||!re(t)?t:t.default?t.default:null;r=G(i)?[i]:i,xe(r)&&bi(a,r,!1),s.__localeChainCache.set(o,a)}return a}function bi(e,t,n){let o=!0;for(let s=0;s`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function cp(){return{upper:(e,t)=>t==="text"&&G(e)?e.toUpperCase():t==="vnode"&&de(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&G(e)?e.toLowerCase():t==="vnode"&&de(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&G(e)?vi(e):t==="vnode"&&de(e)&&"__v_isVNode"in e?vi(e.children):e}}let yi;function up(e){yi=e}let wi;function dp(e){wi=e}let ki;function pp(e){ki=e}let Ai=null;const fp=e=>{Ai=e},gp=()=>Ai;let Si=null;const Ti=e=>{Si=e},hp=()=>Si;let Li=0;function _p(e={}){const t=ye(e.onWarn)?e.onWarn:Hu,n=G(e.version)?e.version:lp,o=G(e.locale)||ye(e.locale)?e.locale:Vn,s=ye(o)?Vn:o,a=xe(e.fallbackLocale)||re(e.fallbackLocale)||G(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:s,r=re(e.messages)?e.messages:Fs(s),i=re(e.datetimeFormats)?e.datetimeFormats:Fs(s),l=re(e.numberFormats)?e.numberFormats:Fs(s),d=Ue(ge(),e.modifiers,cp()),p=e.pluralRules||ge(),_=ye(e.missing)?e.missing:null,b=me(e.missingWarn)||hn(e.missingWarn)?e.missingWarn:!0,S=me(e.fallbackWarn)||hn(e.fallbackWarn)?e.fallbackWarn:!0,I=!!e.fallbackFormat,A=!!e.unresolving,U=ye(e.postTranslation)?e.postTranslation:null,R=re(e.processor)?e.processor:null,j=me(e.warnHtmlMessage)?e.warnHtmlMessage:!0,w=!!e.escapeParameter,$=ye(e.messageCompiler)?e.messageCompiler:yi,E=ye(e.messageResolver)?e.messageResolver:wi||qd,x=ye(e.localeFallbacker)?e.localeFallbacker:ki||ap,C=de(e.fallbackContext)?e.fallbackContext:void 0,W=e,H=de(W.__datetimeFormatters)?W.__datetimeFormatters:new Map,ce=de(W.__numberFormatters)?W.__numberFormatters:new Map,K=de(W.__meta)?W.__meta:{};Li++;const B={version:n,cid:Li,locale:o,fallbackLocale:a,messages:r,modifiers:d,pluralRules:p,missing:_,missingWarn:b,fallbackWarn:S,fallbackFormat:I,unresolving:A,postTranslation:U,processor:R,warnHtmlMessage:j,escapeParameter:w,messageCompiler:$,messageResolver:E,localeFallbacker:x,fallbackContext:C,onWarn:t,__meta:K};return B.datetimeFormats=i,B.numberFormats=l,B.__datetimeFormatters=H,B.__numberFormatters=ce,__INTLIFY_PROD_DEVTOOLS__&&ep(B,n,K),B}const Fs=e=>({[e]:ge()});function Ds(e,t,n,o,s){const{missing:a,onWarn:r}=e;if(a!==null){const i=a(e,n,t,s);return G(i)?i:t}else return t}function Kn(e,t,n){const o=e;o.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function mp(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function bp(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let o=n+1;o$p(n,e)}function $p(e,t){const n=Md(t);if(n==null)throw Hn(0);if(Cs(n)===1){const a=Pd(n);return e.plural(a.reduce((r,i)=>[...r,xi(e,i)],[]))}else return xi(e,n)}function xi(e,t){const n=Cd(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const o=Od(t).reduce((s,a)=>[...s,js(e,a)],[]);return e.normalize(o)}}function js(e,t){const n=Cs(t);switch(n){case 3:return Do(t,n);case 9:return Do(t,n);case 4:{const o=t;if(ct(o,"k")&&o.k)return e.interpolate(e.named(o.k));if(ct(o,"key")&&o.key)return e.interpolate(e.named(o.key));throw Hn(n)}case 5:{const o=t;if(ct(o,"i")&&Oe(o.i))return e.interpolate(e.list(o.i));if(ct(o,"index")&&Oe(o.index))return e.interpolate(e.list(o.index));throw Hn(n)}case 6:{const o=t,s=Id(o),a=Fd(o);return e.linked(js(e,a),s?js(e,s):void 0,e.type)}case 7:return Do(t,n);case 8:return Do(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const vp=e=>e;let jo=ge();function yp(e,t={}){let n=!1;const o=t.onError||rd;return t.onError=s=>{n=!0,o(s)},{...Ed(e,t),detectError:n}}function wp(e,t){if(G(e)){me(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||vp)(e),s=jo[o];if(s)return s;const{ast:a,detectError:r}=yp(e,{...t,location:!1,jit:!0}),i=Rs(a);return r?i:jo[o]=i}else{const n=e.cacheKey;if(n){const o=jo[n];return o||(jo[n]=Rs(e))}else return Rs(e)}}const Ei=()=>"",ot=e=>ye(e);function Ni(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:s,messageCompiler:a,fallbackLocale:r,messages:i}=e,[l,d]=Us(...t),p=me(d.missingWarn)?d.missingWarn:e.missingWarn,_=me(d.fallbackWarn)?d.fallbackWarn:e.fallbackWarn,b=me(d.escapeParameter)?d.escapeParameter:e.escapeParameter,S=!!d.resolvedMessage,I=G(d.default)||me(d.default)?me(d.default)?a?l:()=>l:d.default:n?a?l:()=>l:"",A=n||I!=="",U=Os(e,d);b&&kp(d);let[R,j,w]=S?[l,U,i[U]||ge()]:Mi(e,l,U,r,_,p),$=R,E=l;if(!S&&!(G($)||wt($)||ot($))&&A&&($=I,E=$),!S&&(!(G($)||wt($)||ot($))||!G(j)))return s?Ro:l;let x=!1;const C=()=>{x=!0},W=ot($)?$:Pi(e,l,j,$,E,C);if(x)return $;const H=Tp(e,j,w,d),ce=Zd(H),K=Ap(e,W,ce);let B=o?o(K,l):K;if(b&&G(B)&&(B=Xu(B)),__INTLIFY_PROD_DEVTOOLS__){const V={timestamp:Date.now(),key:G(l)?l:ot($)?$.key:"",locale:j||(ot($)?$.locale:""),format:G($)?$:ot($)?$.source:"",message:B};V.meta=Ue({},e.__meta,gp()||{}),tp(V)}return B}function kp(e){xe(e.list)?e.list=e.list.map(t=>G(t)?Kr(t):t):de(e.named)&&Object.keys(e.named).forEach(t=>{G(e.named[t])&&(e.named[t]=Kr(e.named[t]))})}function Mi(e,t,n,o,s,a){const{messages:r,onWarn:i,messageResolver:l,localeFallbacker:d}=e,p=d(e,o,n);let _=ge(),b,S=null;const I="translate";for(let A=0;Ao;return d.locale=n,d.key=t,d}const l=r(o,Sp(e,n,s,o,i,a));return l.locale=n,l.key=t,l.source=o,l}function Ap(e,t,n){return t(n)}function Us(...e){const[t,n,o]=e,s=ge();if(!G(t)&&!Oe(t)&&!ot(t)&&!wt(t))throw Ft(kt.INVALID_ARGUMENT);const a=Oe(t)?String(t):(ot(t),t);return Oe(n)?s.plural=n:G(n)?s.default=n:re(n)&&!Po(n)?s.named=n:xe(n)&&(s.list=n),Oe(o)?s.plural=o:G(o)?s.default=o:re(o)&&Ue(s,o),[a,s]}function Sp(e,t,n,o,s,a){return{locale:t,key:n,warnHtmlMessage:s,onError:r=>{throw a&&a(r),r},onCacheKey:r=>Bu(t,n,r)}}function Tp(e,t,n,o){const{modifiers:s,pluralRules:a,messageResolver:r,fallbackLocale:i,fallbackWarn:l,missingWarn:d,fallbackContext:p}=e,b={locale:t,modifiers:s,pluralRules:a,messages:S=>{let I=r(n,S);if(I==null&&p){const[,,A]=Mi(p,S,t,i,l,d);I=r(A,S)}if(G(I)||wt(I)){let A=!1;const R=Pi(e,S,t,I,S,()=>{A=!0});return A?Ei:R}else return ot(I)?I:Ei}};return e.processor&&(b.processor=e.processor),o.list&&(b.list=o.list),o.named&&(b.named=o.named),Oe(o.plural)&&(b.pluralIndex=o.plural),b}function Ci(e,...t){const{datetimeFormats:n,unresolving:o,fallbackLocale:s,onWarn:a,localeFallbacker:r}=e,{__datetimeFormatters:i}=e,[l,d,p,_]=zs(...t),b=me(p.missingWarn)?p.missingWarn:e.missingWarn;me(p.fallbackWarn)?p.fallbackWarn:e.fallbackWarn;const S=!!p.part,I=Os(e,p),A=r(e,s,I);if(!G(l)||l==="")return new Intl.DateTimeFormat(I,_).format(d);let U={},R,j=null;const w="datetime format";for(let x=0;x{Oi.includes(l)?r[l]=n[l]:a[l]=n[l]}),G(o)?a.locale=o:re(o)&&(r=o),re(s)&&(r=s),[a.key||"",i,a,r]}function Ii(e,t,n){const o=e;for(const s in n){const a=`${t}__${s}`;o.__datetimeFormatters.has(a)&&o.__datetimeFormatters.delete(a)}}function Fi(e,...t){const{numberFormats:n,unresolving:o,fallbackLocale:s,onWarn:a,localeFallbacker:r}=e,{__numberFormatters:i}=e,[l,d,p,_]=Ws(...t),b=me(p.missingWarn)?p.missingWarn:e.missingWarn;me(p.fallbackWarn)?p.fallbackWarn:e.fallbackWarn;const S=!!p.part,I=Os(e,p),A=r(e,s,I);if(!G(l)||l==="")return new Intl.NumberFormat(I,_).format(d);let U={},R,j=null;const w="number format";for(let x=0;x{Di.includes(l)?r[l]=n[l]:a[l]=n[l]}),G(o)?a.locale=o:re(o)&&(r=o),re(s)&&(r=s),[a.key||"",i,a,r]}function Ri(e,t,n){const o=e;for(const s in n){const a=`${t}__${s}`;o.__numberFormatters.has(a)&&o.__numberFormatters.delete(a)}}Nd();/*! + */function Pd(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Hn().__INTLIFY_PROD_DEVTOOLS__=!1)}function kt(e){return fe(e)&&Is(e)===0&&(dt(e,"b")||dt(e,"body"))}const ri=["b","body"];function Cd(e){return qt(e,ri)}const ii=["c","cases"];function Od(e){return qt(e,ii,[])}const li=["s","static"];function Id(e){return qt(e,li)}const ci=["i","items"];function Fd(e){return qt(e,ci,[])}const ui=["t","type"];function Is(e){return qt(e,ui)}const di=["v","value"];function jo(e,t){const n=qt(e,di);if(n!=null)return n;throw Bn(t)}const pi=["m","modifier"];function Dd(e){return qt(e,pi)}const fi=["k","key"];function Rd(e){const t=qt(e,fi);if(t)return t;throw Bn(6)}function qt(e,t,n){for(let o=0;o{r===void 0?r=i:r+=i},m[1]=()=>{r!==void 0&&(t.push(r),r=void 0)},m[2]=()=>{m[0](),s++},m[3]=()=>{if(s>0)s--,o=4,m[0]();else{if(s=0,r===void 0||(r=qd(r),r===!1))return!1;m[1]()}};function k(){const D=e[n+1];if(o===5&&D==="'"||o===6&&D==='"')return n++,i="\\"+D,m[0](),!0}for(;o!==null;)if(n++,a=e[n],!(a==="\\"&&k())){if(l=Wd(a),h=Ht[o],d=h[l]||h.l||8,d===8||(o=d[0],d[1]!==void 0&&(p=m[d[1]],p&&(i=a,p()===!1))))return;if(o===7)return t}}const hi=new Map;function Bd(e,t){return fe(e)?e[t]:null}function Vd(e,t){if(!fe(e))return null;let n=hi.get(t);if(n||(n=Hd(t),n&&hi.set(t,n)),!n)return null;const o=n.length;let s=e,a=0;for(;ae,Gd=e=>"",Xd="text",Yd=e=>e.length===0?"":td(e),Jd=ed;function _i(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function Zd(e){const t=Oe(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Oe(e.named.count)||Oe(e.named.n))?Oe(e.named.count)?e.named.count:Oe(e.named.n)?e.named.n:t:t}function Qd(e,t){t.count||(t.count=e),t.n||(t.n=e)}function ep(e={}){const t=e.locale,n=Zd(e),o=fe(e.pluralRules)&&G(t)&&Se(e.pluralRules[t])?e.pluralRules[t]:_i,s=fe(e.pluralRules)&&G(t)&&Se(e.pluralRules[t])?_i:void 0,a=N=>N[o(n,N.length,s)],r=e.list||[],i=N=>r[N],l=e.named||me();Oe(e.pluralIndex)&&Qd(n,l);const d=N=>l[N];function p(N){const H=Se(e.messages)?e.messages(N):fe(e.messages)?e.messages[N]:!1;return H||(e.parent?e.parent.message(N):Gd)}const h=N=>e.modifiers?e.modifiers[N]:Kd,m=ce(e.processor)&&Se(e.processor.normalize)?e.processor.normalize:Yd,k=ce(e.processor)&&Se(e.processor.interpolate)?e.processor.interpolate:Jd,D=ce(e.processor)&&G(e.processor.type)?e.processor.type:Xd,z={list:i,named:d,plural:a,linked:(N,...H)=>{const[w,b]=H;let P="text",x="";H.length===1?fe(w)?(x=w.modifier||x,P=w.type||P):G(w)&&(x=w||x):H.length===2&&(G(w)&&(x=w||x),G(b)&&(P=b||P));const O=p(N)(z),q=P==="vnode"&&Pe(O)&&x?O[0]:O;return x?h(x)(q,P):q},message:p,type:D,interpolate:k,normalize:m,values:je(me(),r,l)};return z}let Vn=null;function tp(e){Vn=e}function np(e,t,n){Vn&&Vn.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const op=sp("function:translate");function sp(e){return t=>Vn&&Vn.emit(e,t)}const ap=Cs.__EXTEND_POINT__,on=Io(ap),rp={FALLBACK_TO_TRANSLATE:on(),CANNOT_FORMAT_NUMBER:on(),FALLBACK_TO_NUMBER_FORMAT:on(),CANNOT_FORMAT_DATE:on(),FALLBACK_TO_DATE_FORMAT:on(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:on(),__EXTEND_POINT__:on()},mi=Q.__EXTEND_POINT__,sn=Io(mi),At={INVALID_ARGUMENT:mi,INVALID_DATE_ARGUMENT:sn(),INVALID_ISO_DATE_ARGUMENT:sn(),NOT_SUPPORT_NON_STRING_MESSAGE:sn(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:sn(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:sn(),NOT_SUPPORT_LOCALE_TYPE:sn(),__EXTEND_POINT__:sn()};function Ft(e){return mn(e,null,void 0)}function Fs(e,t){return t.locale!=null?bi(t.locale):bi(e.locale)}let Ds;function bi(e){if(G(e))return e;if(Se(e)){if(e.resolvedOnce&&Ds!=null)return Ds;if(e.constructor.name==="Function"){const t=e();if(Qu(t))throw Ft(At.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Ds=t}else throw Ft(At.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw Ft(At.NOT_SUPPORT_LOCALE_TYPE)}function ip(e,t,n){return[...new Set([n,...Pe(t)?t:fe(t)?Object.keys(t):G(t)?[t]:[n]])]}function $i(e,t,n){const o=G(n)?n:Kn,s=e;s.__localeChainCache||(s.__localeChainCache=new Map);let a=s.__localeChainCache.get(o);if(!a){a=[];let r=[n];for(;Pe(r);)r=vi(a,r,t);const i=Pe(t)||!ce(t)?t:t.default?t.default:null;r=G(i)?[i]:i,Pe(r)&&vi(a,r,!1),s.__localeChainCache.set(o,a)}return a}function vi(e,t,n){let o=!0;for(let s=0;s`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function dp(){return{upper:(e,t)=>t==="text"&&G(e)?e.toUpperCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&G(e)?e.toLowerCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&G(e)?wi(e):t==="vnode"&&fe(e)&&"__v_isVNode"in e?wi(e.children):e}}let ki;function pp(e){ki=e}let Ai;function fp(e){Ai=e}let Si;function gp(e){Si=e}let Ti=null;const hp=e=>{Ti=e},_p=()=>Ti;let Li=null;const xi=e=>{Li=e},mp=()=>Li;let Ei=0;function bp(e={}){const t=Se(e.onWarn)?e.onWarn:Vu,n=G(e.version)?e.version:up,o=G(e.locale)||Se(e.locale)?e.locale:Kn,s=Se(o)?Kn:o,a=Pe(e.fallbackLocale)||ce(e.fallbackLocale)||G(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:s,r=ce(e.messages)?e.messages:Rs(s),i=ce(e.datetimeFormats)?e.datetimeFormats:Rs(s),l=ce(e.numberFormats)?e.numberFormats:Rs(s),d=je(me(),e.modifiers,dp()),p=e.pluralRules||me(),h=Se(e.missing)?e.missing:null,m=we(e.missingWarn)||_n(e.missingWarn)?e.missingWarn:!0,k=we(e.fallbackWarn)||_n(e.fallbackWarn)?e.fallbackWarn:!0,D=!!e.fallbackFormat,E=!!e.unresolving,z=Se(e.postTranslation)?e.postTranslation:null,N=ce(e.processor)?e.processor:null,H=we(e.warnHtmlMessage)?e.warnHtmlMessage:!0,w=!!e.escapeParameter,b=Se(e.messageCompiler)?e.messageCompiler:ki,P=Se(e.messageResolver)?e.messageResolver:Ai||Bd,x=Se(e.localeFallbacker)?e.localeFallbacker:Si||ip,O=fe(e.fallbackContext)?e.fallbackContext:void 0,q=e,R=fe(q.__datetimeFormatters)?q.__datetimeFormatters:new Map,ae=fe(q.__numberFormatters)?q.__numberFormatters:new Map,X=fe(q.__meta)?q.__meta:{};Ei++;const B={version:n,cid:Ei,locale:o,fallbackLocale:a,messages:r,modifiers:d,pluralRules:p,missing:h,missingWarn:m,fallbackWarn:k,fallbackFormat:D,unresolving:E,postTranslation:z,processor:N,warnHtmlMessage:H,escapeParameter:w,messageCompiler:b,messageResolver:P,localeFallbacker:x,fallbackContext:O,onWarn:t,__meta:X};return B.datetimeFormats=i,B.numberFormats=l,B.__datetimeFormatters=R,B.__numberFormatters=ae,__INTLIFY_PROD_DEVTOOLS__&&np(B,n,X),B}const Rs=e=>({[e]:me()});function js(e,t,n,o,s){const{missing:a,onWarn:r}=e;if(a!==null){const i=a(e,n,t,s);return G(i)?i:t}else return t}function Gn(e,t,n){const o=e;o.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function $p(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function vp(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let o=n+1;oyp(n,e)}function yp(e,t){const n=Cd(t);if(n==null)throw Bn(0);if(Is(n)===1){const a=Od(n);return e.plural(a.reduce((r,i)=>[...r,Ni(e,i)],[]))}else return Ni(e,n)}function Ni(e,t){const n=Id(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const o=Fd(t).reduce((s,a)=>[...s,zs(e,a)],[]);return e.normalize(o)}}function zs(e,t){const n=Is(t);switch(n){case 3:return jo(t,n);case 9:return jo(t,n);case 4:{const o=t;if(dt(o,"k")&&o.k)return e.interpolate(e.named(o.k));if(dt(o,"key")&&o.key)return e.interpolate(e.named(o.key));throw Bn(n)}case 5:{const o=t;if(dt(o,"i")&&Oe(o.i))return e.interpolate(e.list(o.i));if(dt(o,"index")&&Oe(o.index))return e.interpolate(e.list(o.index));throw Bn(n)}case 6:{const o=t,s=Dd(o),a=Rd(o);return e.linked(zs(e,a),s?zs(e,s):void 0,e.type)}case 7:return jo(t,n);case 8:return jo(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const wp=e=>e;let zo=me();function kp(e,t={}){let n=!1;const o=t.onError||ld;return t.onError=s=>{n=!0,o(s)},{...Md(e,t),detectError:n}}function Ap(e,t){if(G(e)){we(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||wp)(e),s=zo[o];if(s)return s;const{ast:a,detectError:r}=kp(e,{...t,location:!1,jit:!0}),i=Us(a);return r?i:zo[o]=i}else{const n=e.cacheKey;if(n){const o=zo[n];return o||(zo[n]=Us(e))}else return Us(e)}}const Mi=()=>"",at=e=>Se(e);function Pi(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:s,messageCompiler:a,fallbackLocale:r,messages:i}=e,[l,d]=Ws(...t),p=we(d.missingWarn)?d.missingWarn:e.missingWarn,h=we(d.fallbackWarn)?d.fallbackWarn:e.fallbackWarn,m=we(d.escapeParameter)?d.escapeParameter:e.escapeParameter,k=!!d.resolvedMessage,D=G(d.default)||we(d.default)?we(d.default)?a?l:()=>l:d.default:n?a?l:()=>l:"",E=n||D!=="",z=Fs(e,d);m&&Sp(d);let[N,H,w]=k?[l,z,i[z]||me()]:Ci(e,l,z,r,h,p),b=N,P=l;if(!k&&!(G(b)||kt(b)||at(b))&&E&&(b=D,P=b),!k&&(!(G(b)||kt(b)||at(b))||!G(H)))return s?Uo:l;let x=!1;const O=()=>{x=!0},q=at(b)?b:Oi(e,l,H,b,P,O);if(x)return b;const R=xp(e,H,w,d),ae=ep(R),X=Tp(e,q,ae);let B=o?o(X,l):X;if(m&&G(B)&&(B=Ju(B)),__INTLIFY_PROD_DEVTOOLS__){const J={timestamp:Date.now(),key:G(l)?l:at(b)?b.key:"",locale:H||(at(b)?b.locale:""),format:G(b)?b:at(b)?b.source:"",message:B};J.meta=je({},e.__meta,_p()||{}),op(J)}return B}function Sp(e){Pe(e.list)?e.list=e.list.map(t=>G(t)?Xr(t):t):fe(e.named)&&Object.keys(e.named).forEach(t=>{G(e.named[t])&&(e.named[t]=Xr(e.named[t]))})}function Ci(e,t,n,o,s,a){const{messages:r,onWarn:i,messageResolver:l,localeFallbacker:d}=e,p=d(e,o,n);let h=me(),m,k=null;const D="translate";for(let E=0;Eo;return d.locale=n,d.key=t,d}const l=r(o,Lp(e,n,s,o,i,a));return l.locale=n,l.key=t,l.source=o,l}function Tp(e,t,n){return t(n)}function Ws(...e){const[t,n,o]=e,s=me();if(!G(t)&&!Oe(t)&&!at(t)&&!kt(t))throw Ft(At.INVALID_ARGUMENT);const a=Oe(t)?String(t):(at(t),t);return Oe(n)?s.plural=n:G(n)?s.default=n:ce(n)&&!Oo(n)?s.named=n:Pe(n)&&(s.list=n),Oe(o)?s.plural=o:G(o)?s.default=o:ce(o)&&je(s,o),[a,s]}function Lp(e,t,n,o,s,a){return{locale:t,key:n,warnHtmlMessage:s,onError:r=>{throw a&&a(r),r},onCacheKey:r=>Ku(t,n,r)}}function xp(e,t,n,o){const{modifiers:s,pluralRules:a,messageResolver:r,fallbackLocale:i,fallbackWarn:l,missingWarn:d,fallbackContext:p}=e,m={locale:t,modifiers:s,pluralRules:a,messages:k=>{let D=r(n,k);if(D==null&&p){const[,,E]=Ci(p,k,t,i,l,d);D=r(E,k)}if(G(D)||kt(D)){let E=!1;const N=Oi(e,k,t,D,k,()=>{E=!0});return E?Mi:N}else return at(D)?D:Mi}};return e.processor&&(m.processor=e.processor),o.list&&(m.list=o.list),o.named&&(m.named=o.named),Oe(o.plural)&&(m.pluralIndex=o.plural),m}function Ii(e,...t){const{datetimeFormats:n,unresolving:o,fallbackLocale:s,onWarn:a,localeFallbacker:r}=e,{__datetimeFormatters:i}=e,[l,d,p,h]=qs(...t),m=we(p.missingWarn)?p.missingWarn:e.missingWarn;we(p.fallbackWarn)?p.fallbackWarn:e.fallbackWarn;const k=!!p.part,D=Fs(e,p),E=r(e,s,D);if(!G(l)||l==="")return new Intl.DateTimeFormat(D,h).format(d);let z={},N,H=null;const w="datetime format";for(let x=0;x{Fi.includes(l)?r[l]=n[l]:a[l]=n[l]}),G(o)?a.locale=o:ce(o)&&(r=o),ce(s)&&(r=s),[a.key||"",i,a,r]}function Di(e,t,n){const o=e;for(const s in n){const a=`${t}__${s}`;o.__datetimeFormatters.has(a)&&o.__datetimeFormatters.delete(a)}}function Ri(e,...t){const{numberFormats:n,unresolving:o,fallbackLocale:s,onWarn:a,localeFallbacker:r}=e,{__numberFormatters:i}=e,[l,d,p,h]=Hs(...t),m=we(p.missingWarn)?p.missingWarn:e.missingWarn;we(p.fallbackWarn)?p.fallbackWarn:e.fallbackWarn;const k=!!p.part,D=Fs(e,p),E=r(e,s,D);if(!G(l)||l==="")return new Intl.NumberFormat(D,h).format(d);let z={},N,H=null;const w="number format";for(let x=0;x{ji.includes(l)?r[l]=n[l]:a[l]=n[l]}),G(o)?a.locale=o:ce(o)&&(r=o),ce(s)&&(r=s),[a.key||"",i,a,r]}function Ui(e,t,n){const o=e;for(const s in n){const a=`${t}__${s}`;o.__numberFormatters.has(a)&&o.__numberFormatters.delete(a)}}Pd();/*! * vue-i18n v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */const Lp="9.14.5";function xp(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(qn().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(qn().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(qn().__INTLIFY_PROD_DEVTOOLS__=!1)}const Ep=sp.__EXTEND_POINT__,Dt=Co(Ep);Dt(),Dt(),Dt(),Dt(),Dt(),Dt(),Dt(),Dt(),Dt();const ji=kt.__EXTEND_POINT__,Je=Co(ji),Rt={UNEXPECTED_RETURN_TYPE:ji,INVALID_ARGUMENT:Je(),MUST_BE_CALL_SETUP_TOP:Je(),NOT_INSTALLED:Je(),NOT_AVAILABLE_IN_LEGACY_MODE:Je(),REQUIRED_VALUE:Je(),INVALID_VALUE:Je(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:Je(),NOT_INSTALLED_WITH_PROVIDE:Je(),UNEXPECTED_ERROR:Je(),NOT_COMPATIBLE_LEGACY_VUE_I18N:Je(),BRIDGE_SUPPORT_VUE_2_ONLY:Je(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:Je(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:Je(),__EXTEND_POINT__:Je()};function Bt(e,...t){return _n(e,null,void 0)}const qs=nn("__translateVNode"),Hs=nn("__datetimeParts"),Bs=nn("__numberParts"),Np=nn("__setPluralRules"),Ui=nn("__injectWithOption"),Vs=nn("__dispose");function Gn(e){if(!de(e)||wt(e))return e;for(const t in e)if(ct(e,t))if(!t.includes("."))de(e[t])&&Gn(e[t]);else{const n=t.split("."),o=n.length-1;let s=e,a=!1;for(let r=0;r{if("locale"in i&&"resource"in i){const{locale:l,resource:d}=i;l?(r[l]=r[l]||ge(),Io(d,r[l])):Io(d,r)}else G(i)&&Io(JSON.parse(i),r)}),s==null&&a)for(const i in r)ct(r,i)&&Gn(r[i]);return r}function zi(e){return e.type}function Mp(e,t,n){let o=de(t.messages)?t.messages:ge();"__i18nGlobal"in n&&(o=Ks(e.locale.value,{messages:o,__i18n:n.__i18nGlobal}));const s=Object.keys(o);s.length&&s.forEach(a=>{e.mergeLocaleMessage(a,o[a])});{if(de(t.datetimeFormats)){const a=Object.keys(t.datetimeFormats);a.length&&a.forEach(r=>{e.mergeDateTimeFormat(r,t.datetimeFormats[r])})}if(de(t.numberFormats)){const a=Object.keys(t.numberFormats);a.length&&a.forEach(r=>{e.mergeNumberFormat(r,t.numberFormats[r])})}}}function Wi(e){return Le(In,null,e,0)}const qi="__INTLIFY_META__",Hi=()=>[],Pp=()=>!1;let Bi=0;function Vi(e){return(t,n,o,s)=>e(n,o,Rn()||void 0,s)}const Cp=()=>{const e=Rn();let t=null;return e&&(t=zi(e)[qi])?{[qi]:t}:null};function Op(e={},t){const{__root:n,__injectWithOption:o}=e,s=n===void 0,a=e.flatJson,r=Br?ve:Ea,i=!!e.translateExistCompatible;let l=me(e.inheritLocale)?e.inheritLocale:!0;const d=r(n&&l?n.locale.value:G(e.locale)?e.locale:Vn),p=r(n&&l?n.fallbackLocale.value:G(e.fallbackLocale)||xe(e.fallbackLocale)||re(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:d.value),_=r(Ks(d.value,e)),b=r(re(e.datetimeFormats)?e.datetimeFormats:{[d.value]:{}}),S=r(re(e.numberFormats)?e.numberFormats:{[d.value]:{}});let I=n?n.missingWarn:me(e.missingWarn)||hn(e.missingWarn)?e.missingWarn:!0,A=n?n.fallbackWarn:me(e.fallbackWarn)||hn(e.fallbackWarn)?e.fallbackWarn:!0,U=n?n.fallbackRoot:me(e.fallbackRoot)?e.fallbackRoot:!0,R=!!e.fallbackFormat,j=ye(e.missing)?e.missing:null,w=ye(e.missing)?Vi(e.missing):null,$=ye(e.postTranslation)?e.postTranslation:null,E=n?n.warnHtmlMessage:me(e.warnHtmlMessage)?e.warnHtmlMessage:!0,x=!!e.escapeParameter;const C=n?n.modifiers:re(e.modifiers)?e.modifiers:{};let W=e.pluralRules||n&&n.pluralRules,H;H=(()=>{s&&Ti(null);const v={version:Lp,locale:d.value,fallbackLocale:p.value,messages:_.value,modifiers:C,pluralRules:W,missing:w===null?void 0:w,missingWarn:I,fallbackWarn:A,fallbackFormat:R,unresolving:!0,postTranslation:$===null?void 0:$,warnHtmlMessage:E,escapeParameter:x,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};v.datetimeFormats=b.value,v.numberFormats=S.value,v.__datetimeFormatters=re(H)?H.__datetimeFormatters:void 0,v.__numberFormatters=re(H)?H.__numberFormatters:void 0;const f=_p(v);return s&&Ti(f),f})(),Kn(H,d.value,p.value);function K(){return[d.value,p.value,_.value,b.value,S.value]}const B=le({get:()=>d.value,set:v=>{d.value=v,H.locale=d.value}}),V=le({get:()=>p.value,set:v=>{p.value=v,H.fallbackLocale=p.value,Kn(H,d.value,v)}}),Ee=le(()=>_.value),Me=le(()=>b.value),ee=le(()=>S.value);function ne(){return ye($)?$:null}function ie(v){$=v,H.postTranslation=v}function Ae(){return j}function Ze(v){v!==null&&(w=Vi(v)),j=v,H.missing=w}const be=(v,f,k,P,q,J)=>{K();let te;try{__INTLIFY_PROD_DEVTOOLS__,s||(H.fallbackContext=n?hp():void 0),te=v(H)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(H.fallbackContext=void 0)}if(k!=="translate exists"&&Oe(te)&&te===Ro||k==="translate exists"&&!te){const[X,Ne]=f();return n&&U?P(n):q(X)}else{if(J(te))return te;throw Bt(Rt.UNEXPECTED_RETURN_TYPE)}};function we(...v){return be(f=>Reflect.apply(Ni,null,[f,...v]),()=>Us(...v),"translate",f=>Reflect.apply(f.t,f,[...v]),f=>f,f=>G(f))}function st(...v){const[f,k,P]=v;if(P&&!de(P))throw Bt(Rt.INVALID_ARGUMENT);return we(f,k,Ue({resolvedMessage:!0},P||{}))}function Re(...v){return be(f=>Reflect.apply(Ci,null,[f,...v]),()=>zs(...v),"datetime format",f=>Reflect.apply(f.d,f,[...v]),()=>$i,f=>G(f))}function Ve(...v){return be(f=>Reflect.apply(Fi,null,[f,...v]),()=>Ws(...v),"number format",f=>Reflect.apply(f.n,f,[...v]),()=>$i,f=>G(f))}function Ke(v){return v.map(f=>G(f)||Oe(f)||me(f)?Wi(String(f)):f)}const pt={normalize:Ke,interpolate:v=>v,type:"vnode"};function ze(...v){return be(f=>{let k;const P=f;try{P.processor=pt,k=Reflect.apply(Ni,null,[P,...v])}finally{P.processor=null}return k},()=>Us(...v),"translate",f=>f[qs](...v),f=>[Wi(f)],f=>xe(f))}function Ge(...v){return be(f=>Reflect.apply(Fi,null,[f,...v]),()=>Ws(...v),"number format",f=>f[Bs](...v),Hi,f=>G(f)||xe(f))}function At(...v){return be(f=>Reflect.apply(Ci,null,[f,...v]),()=>zs(...v),"datetime format",f=>f[Hs](...v),Hi,f=>G(f)||xe(f))}function g(v){W=v,H.pluralRules=W}function m(v,f){return be(()=>{if(!v)return!1;const k=G(f)?f:d.value,P=M(k),q=H.messageResolver(P,v);return i?q!=null:wt(q)||ot(q)||G(q)},()=>[v],"translate exists",k=>Reflect.apply(k.te,k,[v,f]),Pp,k=>me(k))}function h(v){let f=null;const k=mi(H,p.value,d.value);for(let P=0;P{l&&(d.value=v,H.locale=v,Kn(H,d.value,p.value))}),lt(n.fallbackLocale,v=>{l&&(p.value=v,H.fallbackLocale=v,Kn(H,d.value,p.value))}));const O={id:Bi,locale:B,fallbackLocale:V,get inheritLocale(){return l},set inheritLocale(v){l=v,v&&n&&(d.value=n.locale.value,p.value=n.fallbackLocale.value,Kn(H,d.value,p.value))},get availableLocales(){return Object.keys(_.value).sort()},messages:Ee,get modifiers(){return C},get pluralRules(){return W||{}},get isGlobal(){return s},get missingWarn(){return I},set missingWarn(v){I=v,H.missingWarn=I},get fallbackWarn(){return A},set fallbackWarn(v){A=v,H.fallbackWarn=A},get fallbackRoot(){return U},set fallbackRoot(v){U=v},get fallbackFormat(){return R},set fallbackFormat(v){R=v,H.fallbackFormat=R},get warnHtmlMessage(){return E},set warnHtmlMessage(v){E=v,H.warnHtmlMessage=v},get escapeParameter(){return x},set escapeParameter(v){x=v,H.escapeParameter=v},t:we,getLocaleMessage:M,setLocaleMessage:N,mergeLocaleMessage:F,getPostTranslationHandler:ne,setPostTranslationHandler:ie,getMissingHandler:Ae,setMissingHandler:Ze,[Np]:g};return O.datetimeFormats=Me,O.numberFormats=ee,O.rt=st,O.te=m,O.tm=T,O.d=Re,O.n=Ve,O.getDateTimeFormat=D,O.setDateTimeFormat=c,O.mergeDateTimeFormat=u,O.getNumberFormat=y,O.setNumberFormat=L,O.mergeNumberFormat=z,O[Ui]=o,O[qs]=ze,O[Hs]=At,O[Bs]=Ge,O}const Gs={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function Ip({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((o,s)=>[...o,...s.type===Te?s.children:[s]],[]):t.reduce((n,o)=>{const s=e[o];return s&&(n[o]=s()),n},ge())}function Ki(e){return Te}Ue({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Oe(e)||!isNaN(e)}},Gs);function Fp(e){return xe(e)&&!G(e[0])}function Gi(e,t,n,o){const{slots:s,attrs:a}=t;return()=>{const r={part:!0};let i=ge();e.locale&&(r.locale=e.locale),G(e.format)?r.key=e.format:de(e.format)&&(G(e.format.key)&&(r.key=e.format.key),i=Object.keys(e.format).reduce((b,S)=>n.includes(S)?Ue(ge(),b,{[S]:e.format[S]}):b,ge()));const l=o(e.value,r,i);let d=[r.key];xe(l)?d=l.map((b,S)=>{const I=s[b.type],A=I?I({[b.type]:b.value,index:S,parts:l}):[b.value];return Fp(A)&&(A[0].key=`${b.type}-${S}`),A}):G(l)&&(d=[l]);const p=Ue(ge(),a),_=G(e.tag)||de(e.tag)?e.tag:Ki();return Lr(_,p,d)}}Ue({value:{type:Number,required:!0},format:{type:[String,Object]}},Gs),Ue({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Gs);const Dp=nn("global-vue-i18n");function Uo(e={}){const t=Rn();if(t==null)throw Bt(Rt.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Bt(Rt.NOT_INSTALLED);const n=Rp(t),o=Up(n),s=zi(t),a=jp(e,s);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw Bt(Rt.NOT_AVAILABLE_IN_LEGACY_MODE);return Hp(t,a,o,e)}if(a==="global")return Mp(o,e,s),o;if(a==="parent"){let l=zp(n,t,e.__useComponent);return l==null&&(l=o),l}const r=n;let i=r.__getInstance(t);if(i==null){const l=Ue({},e);"__i18n"in s&&(l.__i18n=s.__i18n),o&&(l.__root=o),i=Op(l),r.__composerExtend&&(i[Vs]=r.__composerExtend(i)),qp(r,t,i),r.__setInstance(t,i)}return i}function Rp(e){{const t=En(e.isCE?Dp:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Bt(e.isCE?Rt.NOT_INSTALLED_WITH_PROVIDE:Rt.UNEXPECTED_ERROR);return t}}function jp(e,t){return Po(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function Up(e){return e.mode==="composition"?e.global:e.global.__composer}function zp(e,t,n=!1){let o=null;const s=t.root;let a=Wp(t,n);for(;a!=null;){const r=e;if(e.mode==="composition")o=r.__getInstance(a);else if(__VUE_I18N_LEGACY_API__){const i=r.__getInstance(a);i!=null&&(o=i.__composer,n&&o&&!o[Ui]&&(o=null))}if(o!=null||s===a)break;a=a.parent}return o}function Wp(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function qp(e,t,n){$o(()=>{},t),hs(()=>{const o=n;e.__deleteInstance(t);const s=o[Vs];s&&(s(),delete o[Vs])},t)}function Hp(e,t,n,o={}){const s=t==="local",a=Ea(null);if(s&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Bt(Rt.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const r=me(o.inheritLocale)?o.inheritLocale:!G(o.locale),i=ve(!s||r?n.locale.value:G(o.locale)?o.locale:Vn),l=ve(!s||r?n.fallbackLocale.value:G(o.fallbackLocale)||xe(o.fallbackLocale)||re(o.fallbackLocale)||o.fallbackLocale===!1?o.fallbackLocale:i.value),d=ve(Ks(i.value,o)),p=ve(re(o.datetimeFormats)?o.datetimeFormats:{[i.value]:{}}),_=ve(re(o.numberFormats)?o.numberFormats:{[i.value]:{}}),b=s?n.missingWarn:me(o.missingWarn)||hn(o.missingWarn)?o.missingWarn:!0,S=s?n.fallbackWarn:me(o.fallbackWarn)||hn(o.fallbackWarn)?o.fallbackWarn:!0,I=s?n.fallbackRoot:me(o.fallbackRoot)?o.fallbackRoot:!0,A=!!o.fallbackFormat,U=ye(o.missing)?o.missing:null,R=ye(o.postTranslation)?o.postTranslation:null,j=s?n.warnHtmlMessage:me(o.warnHtmlMessage)?o.warnHtmlMessage:!0,w=!!o.escapeParameter,$=s?n.modifiers:re(o.modifiers)?o.modifiers:{},E=o.pluralRules||s&&n.pluralRules;function x(){return[i.value,l.value,d.value,p.value,_.value]}const C=le({get:()=>a.value?a.value.locale.value:i.value,set:h=>{a.value&&(a.value.locale.value=h),i.value=h}}),W=le({get:()=>a.value?a.value.fallbackLocale.value:l.value,set:h=>{a.value&&(a.value.fallbackLocale.value=h),l.value=h}}),H=le(()=>a.value?a.value.messages.value:d.value),ce=le(()=>p.value),K=le(()=>_.value);function B(){return a.value?a.value.getPostTranslationHandler():R}function V(h){a.value&&a.value.setPostTranslationHandler(h)}function Ee(){return a.value?a.value.getMissingHandler():U}function Me(h){a.value&&a.value.setMissingHandler(h)}function ee(h){return x(),h()}function ne(...h){return a.value?ee(()=>Reflect.apply(a.value.t,null,[...h])):ee(()=>"")}function ie(...h){return a.value?Reflect.apply(a.value.rt,null,[...h]):""}function Ae(...h){return a.value?ee(()=>Reflect.apply(a.value.d,null,[...h])):ee(()=>"")}function Ze(...h){return a.value?ee(()=>Reflect.apply(a.value.n,null,[...h])):ee(()=>"")}function be(h){return a.value?a.value.tm(h):{}}function we(h,T){return a.value?a.value.te(h,T):!1}function st(h){return a.value?a.value.getLocaleMessage(h):{}}function Re(h,T){a.value&&(a.value.setLocaleMessage(h,T),d.value[h]=T)}function Ve(h,T){a.value&&a.value.mergeLocaleMessage(h,T)}function Ke(h){return a.value?a.value.getDateTimeFormat(h):{}}function dt(h,T){a.value&&(a.value.setDateTimeFormat(h,T),p.value[h]=T)}function pt(h,T){a.value&&a.value.mergeDateTimeFormat(h,T)}function ze(h){return a.value?a.value.getNumberFormat(h):{}}function Ge(h,T){a.value&&(a.value.setNumberFormat(h,T),_.value[h]=T)}function At(h,T){a.value&&a.value.mergeNumberFormat(h,T)}const g={get id(){return a.value?a.value.id:-1},locale:C,fallbackLocale:W,messages:H,datetimeFormats:ce,numberFormats:K,get inheritLocale(){return a.value?a.value.inheritLocale:r},set inheritLocale(h){a.value&&(a.value.inheritLocale=h)},get availableLocales(){return a.value?a.value.availableLocales:Object.keys(d.value)},get modifiers(){return a.value?a.value.modifiers:$},get pluralRules(){return a.value?a.value.pluralRules:E},get isGlobal(){return a.value?a.value.isGlobal:!1},get missingWarn(){return a.value?a.value.missingWarn:b},set missingWarn(h){a.value&&(a.value.missingWarn=h)},get fallbackWarn(){return a.value?a.value.fallbackWarn:S},set fallbackWarn(h){a.value&&(a.value.missingWarn=h)},get fallbackRoot(){return a.value?a.value.fallbackRoot:I},set fallbackRoot(h){a.value&&(a.value.fallbackRoot=h)},get fallbackFormat(){return a.value?a.value.fallbackFormat:A},set fallbackFormat(h){a.value&&(a.value.fallbackFormat=h)},get warnHtmlMessage(){return a.value?a.value.warnHtmlMessage:j},set warnHtmlMessage(h){a.value&&(a.value.warnHtmlMessage=h)},get escapeParameter(){return a.value?a.value.escapeParameter:w},set escapeParameter(h){a.value&&(a.value.escapeParameter=h)},t:ne,getPostTranslationHandler:B,setPostTranslationHandler:V,getMissingHandler:Ee,setMissingHandler:Me,rt:ie,d:Ae,n:Ze,tm:be,te:we,getLocaleMessage:st,setLocaleMessage:Re,mergeLocaleMessage:Ve,getDateTimeFormat:Ke,setDateTimeFormat:dt,mergeDateTimeFormat:pt,getNumberFormat:ze,setNumberFormat:Ge,mergeNumberFormat:At};function m(h){h.locale.value=i.value,h.fallbackLocale.value=l.value,Object.keys(d.value).forEach(T=>{h.mergeLocaleMessage(T,d.value[T])}),Object.keys(p.value).forEach(T=>{h.mergeDateTimeFormat(T,p.value[T])}),Object.keys(_.value).forEach(T=>{h.mergeNumberFormat(T,_.value[T])}),h.escapeParameter=w,h.fallbackFormat=A,h.fallbackRoot=I,h.fallbackWarn=S,h.missingWarn=b,h.warnHtmlMessage=j}return Va(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Bt(Rt.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const h=a.value=e.proxy.$i18n.__composer;t==="global"?(i.value=h.locale.value,l.value=h.fallbackLocale.value,d.value=h.messages.value,p.value=h.datetimeFormats.value,_.value=h.numberFormats.value):s&&m(h)}),g}if(xp(),up(wp),dp(Hd),pp(mi),__INTLIFY_PROD_DEVTOOLS__){const e=qn();e.__INTLIFY__=!0,Qd(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const Bp=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:"جارٍ العمل…"},"./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/lists.json":{doxa:{label:"المشروع 2000: الشعوب التي تخدمها DOXA",definition:"الشعوب التي تخدمها DOXA كما تقدّمها قائمتها الحيّة"},unreached:{label:"المشروع 7000: الشعوب غير المُبشَّرة",definition:"أولوية الضياع لدى IMB من 0 إلى 2 (حدودية أو رائدة أو متوسّعة غير مُبشَّرة: أقل من 2% إنجيليون)"},frontier:{label:"المشروع 4700: الشعوب الحدودية",definition:"أولوية الضياع لدى IMB بقيمة 0 (حدودية غير مُبشَّرة: 0.1% إنجيليون أو أقل)"},"frontier-500k":{label:"المشروع 700: الشعوب الحدودية التي يبلغ عددها 500,000 أو أكثر",definition:"أولوية الضياع لدى IMB بقيمة 0 وعدد سكان لا يقل عن 500,000"},unengaged:{label:"الشعوب غير المُبشَّرة التي لم يُعمَل بينها",definition:"أولوية الضياع لدى IMB من 0 إلى 2 وحالة العمل: لم يُعمَل بينها"}},"./locales/ar/messages.json":{menuComingSoon:"القائمة قادمة قريباً",pinHint:{tapDot:"اضغط على نقطة ملوّنة — لا يزال هناك من يحتاج إلى الصلاة"},upg100WallHeading:"قائمتي UPG 100 — قوائم صلاة وملصقات",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"},"./locales/ar/religion.json":{family:{Christianity:"المسيحية",Islam:"الإسلام",Hinduism:"الهندوسية",Buddhism:"البوذية",Ethnoreligion:"الديانات العرقية",Judaism:"اليهودية",Sikhism:"السيخية",Unaffiliated:"غير منتمين",Other:"أخرى",Unknown:"غير معروف"}},"./locales/ar/search.json":{placeholder:"شعب، مكان، لغة، ديانة",placeholderNoPlaces:"شعب، لغة، ديانة (البحث عن الأماكن يتطلب رمز Mapbox)",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"},sections:{within:"ضمن {selection}",allData:"كل بيانات DOXA"},upg100Placeholder:"ابحث عن شعب أو قائمة UPG-100 أو منطقة…"},"./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…"},"./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/lists.json":{doxa:{label:"Projekt 2000: die Volksgruppen von DOXA",definition:"Die Volksgruppen, denen DOXA dient, wie seine Live-Liste sie angibt"},unreached:{label:"Projekt 7000: unerreichte Volksgruppen",definition:"IMB Lostness Priority 0–2 (Frontier, Pioneer oder Expanding Unreached: unter 2 % Evangelikale)"},frontier:{label:"Projekt 4700: Frontier-Volksgruppen",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0,1 % Evangelikale oder weniger)"},"frontier-500k":{label:"Projekt 700: Frontier-Volksgruppen mit 500.000 oder mehr Menschen",definition:"IMB Lostness Priority 0 und eine Bevölkerung von mindestens 500.000"},unengaged:{label:"Unerreichte Volksgruppen ohne Engagement",definition:"IMB Lostness Priority 0–2 und Engagement-Status: ohne Engagement"}},"./locales/de/messages.json":{menuComingSoon:"Menü folgt in Kürze",pinHint:{tapDot:"Tippe auf einen farbigen Punkt — jemand braucht noch Gebet"},upg100WallHeading:"Meine UPG-100-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"},"./locales/de/religion.json":{family:{Christianity:"Christentum",Islam:"Islam",Hinduism:"Hinduismus",Buddhism:"Buddhismus",Ethnoreligion:"Ethnische Religionen",Judaism:"Judentum",Sikhism:"Sikhismus",Unaffiliated:"Konfessionslos",Other:"Andere",Unknown:"Unbekannt"}},"./locales/de/search.json":{placeholder:"Volk, Ort, Sprache, Religion",placeholderNoPlaces:"Volk, Sprache, Religion (Ortssuche braucht ein Mapbox-Token)",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"},kinds:{people:"Volk + Land",peopleGroup:"Volk",bloc:"Affinitätsblock",cluster:"Völkercluster",country:"Land",region:"Region",family:"Sprachfamilie",languageKind:"Sprache",dialect:"Dialekt",religionKind:"Religion"},upg100Placeholder:"Volksgruppe, UPG-100-Liste oder Region suchen…"},"./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"},"./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/lists.json":{doxa:{label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them"},unreached:{label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)"},frontier:{label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)"},"frontier-500k":{label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000"},unengaged:{label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged"}},"./locales/en/messages.json":{menuComingSoon:"Menu coming soon",pinHint:{tapDot:"Tap a coloured dot — someone still needs prayer"},upg100WallHeading:"My UPG 100 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"},"./locales/en/religion.json":{family:{Christianity:"Christianity",Islam:"Islam",Hinduism:"Hinduism",Buddhism:"Buddhism",Ethnoreligion:"Ethnoreligion",Judaism:"Judaism",Sikhism:"Sikhism",Unaffiliated:"Unaffiliated",Other:"Other",Unknown:"Unknown"}},"./locales/en/search.json":{placeholder:"People, place, language, religion",placeholderNoPlaces:"People, language, religion (place search needs a Mapbox token)",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"},upg100Placeholder:"Search people group, UPG-100 list, or region…"},"./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…"},"./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/lists.json":{doxa:{label:"Proyecto 2000: los pueblos de DOXA",definition:"Los pueblos a los que sirve DOXA, tal como los da su lista en vivo"},unreached:{label:"Proyecto 7000: pueblos no alcanzados",definition:"Prioridad de perdición de IMB 0–2 (no alcanzados de frontera, pioneros o en expansión: menos del 2 % evangélicos)"},frontier:{label:"Proyecto 4700: pueblos de frontera",definition:"Prioridad de perdición de IMB 0 (no alcanzados de frontera: 0,1 % evangélicos o menos)"},"frontier-500k":{label:"Proyecto 700: pueblos de frontera de 500.000 o más",definition:"Prioridad de perdición de IMB 0 y una población de al menos 500.000"},unengaged:{label:"Pueblos no alcanzados y no atendidos",definition:"Prioridad de perdición de IMB 0–2 y estado de compromiso: no atendido"}},"./locales/es/messages.json":{menuComingSoon:"Menú próximamente",pinHint:{tapDot:"Toca un punto de color: alguien todavía necesita oración"},upg100WallHeading:"Mi lista UPG 100 — 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"},"./locales/es/religion.json":{family:{Christianity:"Cristianismo",Islam:"Islam",Hinduism:"Hinduismo",Buddhism:"Budismo",Ethnoreligion:"Etnorreligión",Judaism:"Judaísmo",Sikhism:"Sijismo",Unaffiliated:"Sin afiliación",Other:"Otra",Unknown:"Desconocida"}},"./locales/es/search.json":{placeholder:"Pueblo, lugar, idioma, religión",placeholderNoPlaces:"Pueblo, idioma, religión (buscar lugares requiere un token de Mapbox)",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"},sections:{within:"Dentro de {selection}",allData:"Todos los datos DOXA"},upg100Placeholder:"Buscar pueblo, lista UPG-100 o regió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…"},"./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/lists.json":{doxa:{label:"Projet 2000 : les peuples de DOXA",definition:"Les peuples que DOXA sert, tels que sa liste en direct les donne"},unreached:{label:"Projet 7000 : peuples non atteints",definition:"Priorité de perdition IMB 0–2 (non atteints frontières, pionniers ou en expansion : moins de 2 % d’évangéliques)"},frontier:{label:"Projet 4700 : peuples frontières",definition:"Priorité de perdition IMB 0 (non atteints frontières : 0,1 % d’évangéliques ou moins)"},"frontier-500k":{label:"Projet 700 : peuples frontières de 500 000 personnes ou plus",definition:"Priorité de perdition IMB 0 et une population d’au moins 500 000"},unengaged:{label:"Peuples non atteints et non engagés",definition:"Priorité de perdition IMB 0–2 et statut d’engagement : non engagé"}},"./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 UPG 100 — 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"},"./locales/fr/religion.json":{family:{Christianity:"Christianisme",Islam:"Islam",Hinduism:"Hindouisme",Buddhism:"Bouddhisme",Ethnoreligion:"Ethnoreligion",Judaism:"Judaïsme",Sikhism:"Sikhisme",Unaffiliated:"Sans appartenance",Other:"Autre",Unknown:"Inconnue"}},"./locales/fr/search.json":{placeholder:"Peuple, lieu, langue, religion",placeholderNoPlaces:"Peuple, langue, religion (la recherche de lieux requiert un jeton Mapbox)",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"},sections:{within:"Dans {selection}",allData:"Toutes les données DOXA"},upg100Placeholder:"Rechercher un peuple, une liste UPG-100 ou une région…"},"./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:"कार्य जारी…"},"./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/lists.json":{doxa:{label:"प्रोजेक्ट 2000: DOXA के जनसमूह",definition:"वे जनसमूह जिनकी DOXA सेवा करता है, जैसे उसकी लाइव सूची उन्हें देती है"},unreached:{label:"प्रोजेक्ट 7000: अपहुँचे जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 (फ़्रंटियर, पायनियर या एक्सपैंडिंग अपहुँचे: 2% से कम इवेंजेलिकल)"},frontier:{label:"प्रोजेक्ट 4700: फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 (फ़्रंटियर अपहुँचे: 0.1% या उससे कम इवेंजेलिकल)"},"frontier-500k":{label:"प्रोजेक्ट 700: 5,00,000 या उससे अधिक के फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 और कम से कम 5,00,000 की जनसंख्या"},unengaged:{label:"अपहुँचे और असंलग्न जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 और संलग्नता स्थिति: असंलग्न"}},"./locales/hi/messages.json":{menuComingSoon:"मेनू शीघ्र आ रहा है",pinHint:{tapDot:"किसी रंगीन बिंदु पर टैप करें — किसी को अभी भी प्रार्थना की आवश्यकता है"},upg100WallHeading:"मेरी UPG 100 सूची — प्रार्थना सूचियाँ और पोस्टर",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 दायरा"},"./locales/hi/religion.json":{family:{Christianity:"ईसाई धर्म",Islam:"इस्लाम",Hinduism:"हिंदू धर्म",Buddhism:"बौद्ध धर्म",Ethnoreligion:"जातीय धर्म",Judaism:"यहूदी धर्म",Sikhism:"सिख धर्म",Unaffiliated:"असंबद्ध",Other:"अन्य",Unknown:"अज्ञात"}},"./locales/hi/search.json":{placeholder:"लोग, स्थान, भाषा, धर्म",placeholderNoPlaces:"लोग, भाषा, धर्म (स्थान खोज के लिए Mapbox टोकन चाहिए)",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"},sections:{within:"{selection} के भीतर",allData:"सभी DOXA डेटा"},kinds:{people:"जनसमूह + देश",peopleGroup:"जनसमूह",bloc:"समानता समूह",cluster:"जनसमूह क्लस्टर",country:"देश",region:"क्षेत्र",family:"भाषा परिवार",languageKind:"भाषा",dialect:"बोली",religionKind:"धर्म"},upg100Placeholder:"जनसमूह, UPG-100 सूची या क्षेत्र खोजें…"},"./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…"},"./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/lists.json":{doxa:{label:"Progetto 2000: i popoli di DOXA",definition:"I popoli che DOXA serve, come li fornisce la sua lista in tempo reale"},unreached:{label:"Progetto 7000: popoli non raggiunti",definition:"Priorità di perdizione IMB 0–2 (non raggiunti di frontiera, pionieri o in espansione: meno del 2% evangelici)"},frontier:{label:"Progetto 4700: popoli di frontiera",definition:"Priorità di perdizione IMB 0 (non raggiunti di frontiera: 0,1% evangelici o meno)"},"frontier-500k":{label:"Progetto 700: popoli di frontiera di 500.000 o più",definition:"Priorità di perdizione IMB 0 e una popolazione di almeno 500.000"},unengaged:{label:"Popoli non raggiunti e non coinvolti",definition:"Priorità di perdizione IMB 0–2 e stato di coinvolgimento: non coinvolto"}},"./locales/it/messages.json":{menuComingSoon:"Menu in arrivo",pinHint:{tapDot:"Tocca un punto colorato — qualcuno ha ancora bisogno di preghiera"},upg100WallHeading:"La mia lista UPG 100 — 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"},"./locales/it/religion.json":{family:{Christianity:"Cristianesimo",Islam:"Islam",Hinduism:"Induismo",Buddhism:"Buddhismo",Ethnoreligion:"Etnoreligione",Judaism:"Ebraismo",Sikhism:"Sikhismo",Unaffiliated:"Senza affiliazione",Other:"Altro",Unknown:"Sconosciuta"}},"./locales/it/search.json":{placeholder:"Popolo, luogo, lingua, religione",placeholderNoPlaces:"Popolo, lingua, religione (la ricerca di luoghi richiede un token Mapbox)",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"},sections:{within:"In {selection}",allData:"Tutti i dati DOXA"},kinds:{people:"Popolo + paese",peopleGroup:"Popolo",bloc:"Blocco di affinità",cluster:"Cluster di popoli",country:"Paese",region:"Regione",family:"Famiglia linguistica",languageKind:"Lingua",dialect:"Dialetto",religionKind:"Religione"},upg100Placeholder:"Cerca popolo, elenco UPG-100 o regione…"},"./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…"},"./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/lists.json":{doxa:{label:"Projeto 2000: os povos da DOXA",definition:"Os povos que a DOXA serve, como a sua lista ao vivo os apresenta"},unreached:{label:"Projeto 7000: povos não alcançados",definition:"Prioridade de perdição do IMB 0–2 (não alcançados de fronteira, pioneiros ou em expansão: menos de 2% evangélicos)"},frontier:{label:"Projeto 4700: povos de fronteira",definition:"Prioridade de perdição do IMB 0 (não alcançados de fronteira: 0,1% evangélicos ou menos)"},"frontier-500k":{label:"Projeto 700: povos de fronteira de 500.000 ou mais",definition:"Prioridade de perdição do IMB 0 e uma população de pelo menos 500.000"},unengaged:{label:"Povos não alcançados e não engajados",definition:"Prioridade de perdição do IMB 0–2 e estado de engajamento: não engajado"}},"./locales/pt/messages.json":{menuComingSoon:"Menu em breve",pinHint:{tapDot:"Toque num ponto colorido — alguém ainda precisa de oração"},upg100WallHeading:"Minha lista UPG 100 — 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"},"./locales/pt/religion.json":{family:{Christianity:"Cristianismo",Islam:"Islão",Hinduism:"Hinduísmo",Buddhism:"Budismo",Ethnoreligion:"Etnorreligião",Judaism:"Judaísmo",Sikhism:"Siquismo",Unaffiliated:"Sem afiliação",Other:"Outra",Unknown:"Desconhecida"}},"./locales/pt/search.json":{placeholder:"Povo, local, língua, religião",placeholderNoPlaces:"Povo, língua, religião (a busca de locais requer um token do Mapbox)",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"},sections:{within:"Dentro de {selection}",allData:"Todos os dados DOXA"},upg100Placeholder:"Procurar povo, lista UPG-100 ou região…"},"./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ă…"},"./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/lists.json":{doxa:{label:"Proiectul 2000: popoarele DOXA",definition:"Popoarele pe care DOXA le slujește, așa cum le dă lista sa live"},unreached:{label:"Proiectul 7000: popoare neatinse",definition:"Prioritatea de pierzare IMB 0–2 (neatinse de frontieră, pionier sau în expansiune: sub 2% evanghelici)"},frontier:{label:"Proiectul 4700: popoare de frontieră",definition:"Prioritatea de pierzare IMB 0 (neatinse de frontieră: 0,1% evanghelici sau mai puțin)"},"frontier-500k":{label:"Proiectul 700: popoare de frontieră de 500.000 sau mai mult",definition:"Prioritatea de pierzare IMB 0 și o populație de cel puțin 500.000"},unengaged:{label:"Popoare neatinse și neangajate",definition:"Prioritatea de pierzare IMB 0–2 și starea de angajare: neangajat"}},"./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 UPG 100 — 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"},"./locales/ro/religion.json":{family:{Christianity:"Creștinism",Islam:"Islam",Hinduism:"Hinduism",Buddhism:"Budism",Ethnoreligion:"Etnoreligie",Judaism:"Iudaism",Sikhism:"Sikhism",Unaffiliated:"Fără afiliere",Other:"Altele",Unknown:"Necunoscută"}},"./locales/ro/search.json":{placeholder:"Popor, loc, limbă, religie",placeholderNoPlaces:"Popor, limbă, religie (căutarea locurilor necesită un token Mapbox)",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"},sections:{within:"În {selection}",allData:"Toate datele DOXA"},kinds:{people:"Popor + țară",peopleGroup:"Popor",bloc:"Bloc de afinitate",cluster:"Grup de popoare",country:"Țară",region:"Regiune",family:"Familie de limbi",languageKind:"Limbă",dialect:"Dialect",religionKind:"Religie"},upg100Placeholder:"Caută popor, listă UPG-100 sau regiune…"},"./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:"Выполняется…"},"./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/lists.json":{doxa:{label:"Проект 2000: народы DOXA",definition:"Народы, которым служит DOXA, как их даёт её живой список"},unreached:{label:"Проект 7000: недостигнутые народы",definition:"Приоритет потерянности IMB 0–2 (пограничные, первопроходческие или расширяющиеся недостигнутые: менее 2% евангельских христиан)"},frontier:{label:"Проект 4700: пограничные народы",definition:"Приоритет потерянности IMB 0 (пограничные недостигнутые: 0,1% евангельских христиан или меньше)"},"frontier-500k":{label:"Проект 700: пограничные народы численностью от 500 000",definition:"Приоритет потерянности IMB 0 и численность не менее 500 000"},unengaged:{label:"Недостигнутые народы без служения",definition:"Приоритет потерянности IMB 0–2 и статус служения: без служения"}},"./locales/ru/messages.json":{menuComingSoon:"Меню скоро появится",pinHint:{tapDot:"Нажмите на цветную точку — кому-то всё ещё нужна молитва"},upg100WallHeading:"Мой список UPG 100 — молитвенные списки и плакаты",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"},"./locales/ru/religion.json":{family:{Christianity:"Христианство",Islam:"Ислам",Hinduism:"Индуизм",Buddhism:"Буддизм",Ethnoreligion:"Этнорелигия",Judaism:"Иудаизм",Sikhism:"Сикхизм",Unaffiliated:"Не принадлежат",Other:"Другое",Unknown:"Неизвестно"}},"./locales/ru/search.json":{placeholder:"Народ, место, язык, религия",placeholderNoPlaces:"Народ, язык, религия (для поиска мест нужен токен Mapbox)",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"},sections:{within:"В пределах {selection}",allData:"Все данные DOXA"},upg100Placeholder:"Поиск народа, списка UPG-100 или региона…"},"./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:"处理中…"},"./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/lists.json":{doxa:{label:"2000 计划:DOXA 服侍的族群",definition:"DOXA 服侍的族群,以其实时名单为准"},unreached:{label:"7000 计划:未得之民族群",definition:"IMB 失丧优先级 0–2(前沿、先锋或扩展中的未得之民:福音派少于 2%)"},frontier:{label:"4700 计划:前沿族群",definition:"IMB 失丧优先级 0(前沿未得之民:福音派 0.1% 或更少)"},"frontier-500k":{label:"700 计划:人口 50 万或以上的前沿族群",definition:"IMB 失丧优先级 0,且人口至少 50 万"},unengaged:{label:"尚无人参与的未得之民族群",definition:"IMB 失丧优先级 0–2,且参与状态为:无人参与"}},"./locales/zh/messages.json":{menuComingSoon:"菜单即将推出",pinHint:{tapDot:"点按一个彩色圆点——仍有人需要祷告"},upg100WallHeading:"我的 UPG 100 名单 — 祷告名单与海报",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 区间"},"./locales/zh/religion.json":{family:{Christianity:"基督教",Islam:"伊斯兰教",Hinduism:"印度教",Buddhism:"佛教",Ethnoreligion:"民族宗教",Judaism:"犹太教",Sikhism:"锡克教",Unaffiliated:"无宗教归属",Other:"其他",Unknown:"未知"}},"./locales/zh/search.json":{placeholder:"民族、地点、语言、宗教",placeholderNoPlaces:"民族、语言、宗教(地点搜索需要 Mapbox 令牌)",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"},sections:{within:"在 {selection} 之內",allData:"所有 DOXA 资料"},kinds:{people:"民族 + 国家",peopleGroup:"民族",bloc:"亲缘板块",cluster:"民族群",country:"国家",region:"区域",family:"语系",languageKind:"语言",dialect:"方言",religionKind:"宗教"},upg100Placeholder:"搜索民族、UPG-100 名单或区域…"}}),Xn={};for(const[e,t]of Object.entries(Bp)){const n=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!n)continue;const[,o,s]=n;Xn[o]??(Xn[o]={}),Xn[o][s]=t}const Xi=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"],Vp=new Set(["ar"]);function Yi(){try{const e=new URLSearchParams(window.location.search);return(e.get("lang")||e.get("locale")||"").split("-")[0].toLowerCase()}catch{return""}}function Ji(){var o;const e=Yi();if(Xi.includes(e))return e;const n=(((o=document==null?void 0:document.documentElement)==null?void 0:o.lang)||"").split("-")[0].toLowerCase();return Xi.includes(n)?n:"en"}const Kp="__DOXA_PAGE_LOCALE";function Zi(){try{return typeof window<"u"&&window[Kp]||""}catch{return""}}function Qi(e,t){const n=s=>{let a=Xn[s];for(const r of String(e).split(".")){if(!a||typeof a!="object")return;a=a[r]}return typeof a=="string"?a:void 0},o=t||Zi()||Ji();return n(o)??n("en")}function el(e,t){return t?String(e).replace(/\{(\w+)\}/g,(n,o)=>t[o]!=null?String(t[o]):n):String(e)}function Xs(e,t){const n=String(t);return e&&!n.startsWith(`${e}.`)?`${e}.${n}`:n}function Gp(e,t={}){const n=typeof t.fallback=="function"?(o,s)=>el(t.fallback(Xs(e,o),s)??o,s):(o,s)=>el(Qi(Xs(e,o))??o,s);try{const o=Uo();return(s,a)=>{const r=Xs(e,s),i=o.t(r,a||{});return i===r?n(s,a):i}}catch{return n}}const Xp=".filter-dropdown{position:relative;flex:0 0 auto;width:var(--dx-filter-w, 128px);min-width:var(--dx-filter-w, 128px);max-width:var(--dx-filter-w, 128px)}@media (max-width: 576px){.filter-dropdown{width:var(--dx-filter-w-sm, 108px);min-width:var(--dx-filter-w-sm, 108px);max-width:var(--dx-filter-w-sm, 108px)}}.filter-dropdown__trigger{width:100%;padding:var(--dx-filter-pad-y, 4px) var(--dx-filter-pad-x, 8px);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:.875rem;color:var(--dx-text, #3b463d);text-align:start;background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;transition:border-color .15s ease}.filter-dropdown__trigger:hover{border-color:var(--dx-accent, #92b195)}.filter-dropdown__trigger[data-active]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));border-color:var(--dx-accent, #92b195)}.filter-dropdown__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-dropdown__chevron{flex-shrink:0;transition:transform .2s ease}.filter-dropdown.is-open .filter-dropdown__chevron{transform:rotate(180deg)}.filter-dropdown__menu{position:fixed;z-index:2147483000;background-color:var(--dx-elevated, #fff);color:var(--dx-text, #3b463d);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;box-shadow:0 4px 12px #0000001f;overflow:hidden;display:flex;flex-direction:column;min-width:160px}.filter-dropdown__search{border:none;border-bottom:1px solid var(--dx-line, #d1d4cd);border-radius:0;padding:6px 12px;width:100%;font-size:.875rem;color:var(--dx-text, #3b463d);background:var(--dx-elevated, #fff);outline:none;box-sizing:border-box}.filter-dropdown__search::placeholder{color:var(--dx-muted, #6d766e)}.filter-dropdown__clear{display:block;width:100%;background:none;border:none;border-bottom:1px solid var(--dx-line, #d1d4cd);padding:6px 12px;font-size:.875rem;color:var(--dx-text, #3b463d);cursor:pointer;text-align:start;text-decoration:underline;text-decoration-color:var(--dx-accent, #92b195);text-underline-offset:3px}.filter-dropdown__clear:hover{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18))}.filter-dropdown__options{flex:1 1 auto;min-height:0;max-height:250px;overflow-y:auto}.filter-dropdown__search,.filter-dropdown__clear{flex:0 0 auto}.filter-dropdown__option{padding:5px 12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.875rem;transition:background-color .1s ease}.filter-dropdown__option[data-selected]{font-weight:700;color:var(--dx-text, #3b463d);box-shadow:inset 3px 0 0 var(--dx-accent, #92b195)}.filter-dropdown__option:hover,.filter-dropdown__option[data-highlighted]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18))}.filter-dropdown__count{color:var(--dx-muted, #6d766e);font-size:.75rem;margin-inline-start:6px}.filter-dropdown__no-options{padding:12px;font-size:.875rem;color:var(--dx-muted, #6d766e);text-align:center}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}",Yp=["data-active","aria-expanded"],Jp={class:"filter-dropdown__label"},Zp=["value","placeholder"],Qp={class:"filter-dropdown__options"},ef={key:0,class:"filter-dropdown__no-options"},tf=["data-highlighted","data-selected","aria-selected","onClick","onMouseenter"],nf={class:"filter-dropdown__count"},zo=Ns({__name:"FilterDropdown",props:{label:{type:String,required:!0},name:{type:String,required:!0},options:{type:Array,default:()=>[]},value:{type:String,default:""},placeholder:{type:String,default:"Type to search..."}},emits:["filter-change","filter-clear"],setup(e,{emit:t}){const n=e,o={"buttons.clearSelection":"Clear selection","buttons.noOptions":"No options found"},s=Gp("",{fallback:K=>o[K]}),a=t,r=ve(!1),i=ve(""),l=ve(-1),d=ve(null),p=ve(null),_=ve(null),b=ve({});function S(K){const B=K.ownerDocument,V=B.createElement("div");V.style.cssText="position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;opacity:0",(K.parentElement||K.getRootNode().body||B.body).appendChild(V);const Me=V.getBoundingClientRect();return V.remove(),{x:Me.left,y:Me.top}}function I(){const K=_.value;if(!K)return;const B=K.getBoundingClientRect(),V=window.innerWidth,Ee=window.innerHeight,Me=320,ee=4,ne=8,Ae=Math.round(Math.min(Math.max(B.width,240),V-ne*2)),Ze=B.right>ne&&B.leftV-ne?be=Math.round(Math.max(B.right-Ae,ne)):be=Math.round(Math.max(B.left,ne)):be=Math.round(Math.min(Math.max(B.left,ne),V-Ae-ne));const we=Ee-B.bottom,st=we<180&&B.top>we,Re=S(K),Ve=Math.round(be-Re.x);b.value=st?{top:"auto",bottom:`${Math.round(Ee-B.top+ee+Re.y)}px`,left:`${Ve}px`,width:`${Ae}px`,maxHeight:`${Math.round(Math.min(Me,B.top-ee-ne))}px`}:{top:`${Math.round(B.bottom+ee-Re.y)}px`,bottom:"auto",left:`${Ve}px`,width:`${Ae}px`,maxHeight:`${Math.round(Math.min(Me,we-ee-ne))}px`}}function A(){r.value&&I()}const U=le(()=>{if(!i.value)return n.options;const K=i.value.toLowerCase();return n.options.filter(B=>B.label.toLowerCase().includes(K))}),R=le(()=>n.options.find(K=>K.value===n.value));function j(K){var V;const B=((V=K.composedPath)==null?void 0:V.call(K))??[];d.value&&!B.includes(d.value)&&E()}function w(){r.value?E():$()}function $(){r.value=!0,i.value="",l.value=-1,I(),document.addEventListener("click",j),window.addEventListener("scroll",A,!0),window.addEventListener("resize",A),Ln(()=>{var K;I(),(K=p.value)==null||K.focus()})}function E(){r.value=!1,i.value="",l.value=-1,document.removeEventListener("click",j),window.removeEventListener("scroll",A,!0),window.removeEventListener("resize",A)}function x(K){i.value=K.target.value,l.value=-1}function C(K){const B=U.value;switch(K.key){case"ArrowDown":K.preventDefault(),l.value=Math.min(l.value+1,B.length-1),W();break;case"ArrowUp":K.preventDefault(),l.value=Math.max(l.value-1,0),W();break;case"Enter":{K.preventDefault();const V=B[l.value];V&&H(V);break}case"Escape":K.preventDefault(),E();break}}function W(){Ln(()=>{var B;const K=(B=d.value)==null?void 0:B.querySelector(".filter-dropdown__option[data-highlighted]");K==null||K.scrollIntoView({block:"nearest"})})}function H(K){a("filter-change",{name:n.name,value:K.value,label:K.label,type:K.type}),E()}function ce(){a("filter-clear",{name:n.name}),E()}return Ka(()=>{document.removeEventListener("click",j),window.removeEventListener("scroll",A,!0),window.removeEventListener("resize",A)}),(K,B)=>(se(),ae("div",{ref_key:"rootRef",ref:d,class:oo(["filter-dropdown",{"is-open":r.value}])},[oe("button",{ref_key:"triggerRef",ref:_,class:"filter-dropdown__trigger input","data-active":e.value?"":void 0,type:"button","aria-haspopup":"listbox","aria-expanded":r.value,onClick:w},[oe("span",Jp,[R.value?(se(),ae(Te,{key:0},[Pt(ke(e.label)+": ",1),oe("strong",null,ke(R.value.label),1)],64)):(se(),ae(Te,{key:1},[Pt(ke(e.label),1)],64))]),B[0]||(B[0]=oe("svg",{class:"filter-dropdown__chevron",width:"12",height:"12",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg"},[oe("path",{d:"M2 4l4 4 4-4",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],8,Yp),r.value?(se(),ae("div",{key:0,class:"filter-dropdown__menu",role:"listbox",style:Gt(b.value)},[oe("input",{ref_key:"searchInputRef",ref:p,class:"filter-dropdown__search",type:"text",value:i.value,placeholder:e.placeholder,onInput:x,onKeydown:C},null,40,Zp),e.value?(se(),ae("button",{key:0,class:"filter-dropdown__clear",type:"button",onClick:ce},ke(Jt(s)("buttons.clearSelection")),1)):De("",!0),oe("div",Qp,[U.value.length===0?(se(),ae("div",ef,ke(Jt(s)("buttons.noOptions")),1)):(se(!0),ae(Te,{key:1},Pn(U.value,(V,Ee)=>(se(),ae("div",{key:V.value,class:"filter-dropdown__option",role:"option","data-highlighted":Ee===l.value?"":void 0,"data-selected":V.value===e.value?"":void 0,"aria-selected":V.value===e.value,onClick:Me=>H(V),onMouseenter:Me=>l.value=Ee},[oe("span",null,ke(V.label),1),oe("span",nf,ke(V.count),1)],40,tf))),128))])],4)):De("",!0)],2))}},[["styles",[Xp]]]),of=Ho&&Ho.tagName.toUpperCase()==="SCRIPT"&&Ho.src||new URL("people-groups-grid.js",document.baseURI).href,Yn=e=>String(e||"").trim().replace(/\/+$/,"");function sf(){try{const t=String(of||"").split(/[?#]/)[0].match(/^(.*)\/([^/]+)\/([^/]+)\.js$/);return!t||t[2]!==t[3]?null:t[1]||null}catch{return null}}function tl(e){const t=e==null?void 0:e.assetsBase;if(typeof t=="string"&&t.trim()){const o=Yn(t);if(/^https?:\/\//i.test(o)||o.startsWith("/"))return o}const n=Yn((e==null?void 0:e.treeBase)||"")||Yn(sf()||"");if(n)try{const o=typeof document<"u"?document.baseURI:void 0;return Yn(new URL(n+"/assets",o).href)}catch{return Yn(n+"/assets")}return"./assets"}const af="en-US",nl=e=>Number(e).toLocaleString(af),Ys={default:"doxa",lists:[{id:"doxa",aliases:["2000","project-2000"],label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them",source:"doxa",filter:null},{id:"unreached",aliases:["7000","project-7000"],label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)",source:"imb",filter:{lostness:[0,1,2]}},{id:"frontier",aliases:["4700","project-4700"],label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)",source:"imb",filter:{lostness:[0]}},{id:"frontier-500k",aliases:["700","project-700"],label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000",source:"imb",filter:{lostness:[0],minPopulation:5e5}},{id:"unengaged",aliases:[],label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged",source:"imb",filter:{lostness:[0,1,2],engagement:["Unengaged"]}}]},Wo=Ys.default,Js=new Map;for(const e of Ys.lists){Js.set(e.id,e);for(const t of e.aliases||[])Js.set(String(t).toLowerCase(),e)}function rf(e){return Js.get(String(e??"").toLowerCase().trim())||null}function ol(e){let t=e;if(t&&typeof t=="object"&&"value"in t&&!("list"in t)&&!("profile"in t)&&(t=t.value),typeof t=="string")try{t=JSON.parse(t)}catch{t=null}return t&&typeof t=="object"?t:null}const sl=new Set;function lf(e){const t=ol(e),n=t==null?void 0:t.list,o=typeof location<"u"?new URLSearchParams(location.search).get("list"):null,s=typeof window<"u"?window.MAP_LIST:void 0,a=n||o||s||Wo,r=rf(a);return r?r.id:(sl.has(a)||(sl.add(a),console.warn(`[list] unknown people-group list "${a}", showing "${Wo}". Known: ${Ys.lists.map(i=>i.id).join(", ")}`)),Wo)}const qo=new Map;function cf(e,t){const n=`${tl(ol(t))}/people-groups/lists/${e}.json`;return qo.has(n)||qo.set(n,fetch(n).then(o=>{if(!o.ok)throw new Error(`HTTP ${o.status}`);return o.json()}).then(o=>new Set(Array.isArray(o==null?void 0:o.slugs)?o.slugs:[])).catch(o=>{throw qo.delete(n),new Error(`list "${e}" membership ${n}: ${o.message}`)})),qo.get(n)}async function uf(e,t,{key:n=o=>o==null?void 0:o.slug}={}){const o=lf(t);if(o===Wo||!Array.isArray(e))return e;try{const s=await cf(o,t);return e.filter(a=>s.has(n(a)))}catch(s){return console.error(`[list] ${s.message}. Showing no people groups rather than the wrong list.`),[]}}function df(e,t){return String(t||e||"").trim().toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}const al={C:"Christianity",M:"Islam",H:"Hinduism",B:"Buddhism",E:"Ethnoreligion",J:"Judaism",S:"Sikhism",N:"Unaffiliated",O:"Other",U:"Unknown"},pf={"Indo-European":"#e74c3c",Dravidian:"#ff9800","Afro-Asiatic":"#27ae60","Sino-Tibetan":"#3498db","Niger-Congo":"#9b59b6",Unclassified:"#95a5a6","Nilo-Saharan":"#e91e63","Khoe-Kwadi":"#00bcd4","Austro-Asiatic":"#00bcd4","Kra-Dai":"#8e44ad",Austronesian:"#ff69b4","Hmong-Mien":"#f44336",Turkic:"#ffc107","Nakh-Daghestanian":"#009688",Mongolic:"#795548",Uralic:"#607d8b",Tungusic:"#4caf50",Japonic:"#ff5722",Cariban:"#673ab7",Tupian:"#03a9f4",Tucanoan:"#8bc34a",Maipurean:"#ffc107",Panoan:"#cddc39",Guajiboan:"#9e9e9e",Chibchan:"#ff7043",Quechuan:"#ab47bc",Jean:"#26a69a",Harákmbut:"#7e57c2",Nambikwara:"#42a5f5",Muran:"#66bb6a",Karajá:"#ffa726",Bororoan:"#ef5350",Arauan:"#5c6bc0",Yanomaman:"#26c6da",Yaguan:"#d4e157",Witotoan:"#78909c",Zamucoan:"#8d6e63",Puinavean:"#aed581",Barbacoan:"#4db6ac","Eyak-Athabaskan":"#7986cb","Trans-New Guinea":"#ba68c8",Andamanese:"#4dd0e1","Atlantic-Congo":"#7D3C98",Mande:"#B9770E","Sign Language":"#212121",Creole:"#9575cd","Mixed language":"#a1887f","Language isolate":"#90a4ae",Unknown:"#000000"},ff=(()=>{const e=n=>String(n||"").toLowerCase().trim(),t={};for(const n of Object.keys(pf))t[e(n)]=n;return t})(),gf={"tai-kadai":"Kra-Dai",none:"Unknown"};function rl(e){if(!e)return"Unknown";const t=String(e).trim(),n=t.toLowerCase();return gf[n]||ff[n]||t}const hf={aar:"Afro-Asiatic",abf:"Austronesian",abl:"Austronesian",abv:"Afro-Asiatic",acm:"Afro-Asiatic",acq:"Afro-Asiatic",acw:"Afro-Asiatic",acx:"Afro-Asiatic",adh:"Nilo-Saharan",adi:"Sino-Tibetan",adw:"Tupian",adx:"Sino-Tibetan",aen:"Sign Language",afb:"Afro-Asiatic",afg:"Sign Language",afr:"Indo-European",aft:"Nilo-Saharan",agx:"Nakh-Daghestanian",ahk:"Sino-Tibetan",aib:"Turkic",aih:"Kra-Dai",aio:"Kra-Dai",ajp:"Afro-Asiatic",aju:"Afro-Asiatic",aks:"Niger-Congo",akv:"Nakh-Daghestanian",alk:"Austro-Asiatic",alo:"Austronesian",alw:"Afro-Asiatic",amc:"Panoan",amh:"Afro-Asiatic",amr:"Harákmbut",amv:"Austronesian",ani:"Nakh-Daghestanian",anp:"Indo-European",anq:"Andamanese",aoc:"Cariban",apc:"Afro-Asiatic",apd:"Afro-Asiatic",arb:"Afro-Asiatic",arq:"Afro-Asiatic",arr:"Tupian",ars:"Afro-Asiatic",arv:"Afro-Asiatic",ary:"Afro-Asiatic",ase:"Sign Language",asl:"Austronesian",asm:"Indo-European",asn:"Tupian",asp:"Sign Language",atr:"Cariban",avd:"Indo-European",avl:"Afro-Asiatic",avv:"Tupian",awe:"Tupian",awt:"Tupian",ayh:"Afro-Asiatic",ayl:"Afro-Asiatic",ayn:"Afro-Asiatic",azb:"Turkic",bao:"Tucanoan",bbh:"Austro-Asiatic",bcc:"Indo-European",bcz:"Niger-Congo",bdg:"Austronesian",bdi:"Nilo-Saharan",bdj:"Niger-Congo",bdm:"Afro-Asiatic",bdo:"Nilo-Saharan",bee:"Sino-Tibetan",bej:"Afro-Asiatic",bem:"Niger-Congo",ben:"Indo-European",bfi:"Sign Language",bfu:"Sino-Tibetan",bfw:"Austro-Asiatic",bfy:"Indo-European",bgc:"Indo-European",bgg:"Sino-Tibetan",bgk:"Austro-Asiatic",bgl:"Austro-Asiatic",bgn:"Indo-European",bgp:"Indo-European",bgq:"Indo-European",bho:"Indo-European",bhu:"Indo-European",bid:"Afro-Asiatic",bjj:"Indo-European",bkk:"Indo-European",blf:"Austronesian",blm:"Nilo-Saharan",blo:"Niger-Congo",bls:"Austronesian",blt:"Kra-Dai",bly:"Niger-Congo",bma:"Niger-Congo",bmr:"Witotoan",bna:"Austronesian",bns:"Indo-European",bor:"Bororoan",bos:"Indo-European",bph:"Nakh-Daghestanian",bqg:"Niger-Congo",bqj:"Niger-Congo",bqk:"Niger-Congo",bqn:"Sign Language",bqx:"Niger-Congo",bra:"Indo-European",brb:"Austro-Asiatic",bro:"Sino-Tibetan",brx:"Sino-Tibetan",bsb:"Austronesian",bsg:"Indo-European",bsk:"Language isolate",bsy:"Austronesian",btd:"Austronesian",btf:"Afro-Asiatic",btv:"Indo-European",btx:"Austronesian",btz:"Austronesian",bub:"Niger-Congo",buh:"Hmong-Mien",bva:"Afro-Asiatic",bvf:"Afro-Asiatic",bvi:"Niger-Congo",bvo:"Niger-Congo",bwi:"Maipurean",bwn:"Hmong-Mien",bwx:"Hmong-Mien",bxr:"Mongolic",bxu:"Mongolic",bxw:"Niger-Congo",byn:"Afro-Asiatic",byo:"Sino-Tibetan",bze:"Niger-Congo",bzx:"Niger-Congo",cat:"Indo-European",cbb:"Maipurean",cbc:"Tucanoan",cbi:"Barbacoan",cbn:"Austro-Asiatic",cby:"Unclassified",cdh:"Indo-European",cdn:"Sino-Tibetan",cdz:"Austro-Asiatic",ceg:"Zamucoan",cgk:"Sino-Tibetan",che:"Nakh-Daghestanian",cib:"Niger-Congo",cji:"Nakh-Daghestanian",ckh:"Sino-Tibetan",ckq:"Afro-Asiatic",clk:"Sino-Tibetan",cmn:"Sino-Tibetan",cnq:"Niger-Congo",cnu:"Afro-Asiatic",coa:"Creole",cog:"Austro-Asiatic",cpu:"Maipurean",cqd:"Hmong-Mien",csf:"Sign Language",csx:"Sign language",cub:"Tucanoan",cui:"Guajiboan",cuu:"Kra-Dai",daa:"Afro-Asiatic",daj:"Nilo-Saharan",dar:"Nakh-Daghestanian",dau:"Nilo-Saharan",dba:"Language isolate",dbb:"Afro-Asiatic",dbp:"Afro-Asiatic",dbr:"Afro-Asiatic",ddn:"Nilo-Saharan",deg:"Niger-Congo",dek:"Niger-Congo",des:"Tucanoan",dgo:"Indo-European",dgs:"Niger-Congo",dhd:"Indo-European",dhi:"Sino-Tibetan",dhm:"Niger-Congo",dil:"Nilo-Saharan",diu:"Niger-Congo",div:"Indo-European",djc:"Nilo-Saharan",dkg:"Niger-Congo",dln:"Sino-Tibetan",dml:"Indo-European",dms:"Austronesian",dnu:"Austro-Asiatic",doc:"Kra-Dai",dok:"Austronesian",dox:"Afro-Asiatic",dru:"Austronesian",dse:"Sign Language",dsh:"Afro-Asiatic",dsl:"Sign Language",dsq:"Nilo-Saharan",dta:"Mongolic",dtp:"Austronesian",dyu:"Niger-Congo",dzg:"Nilo-Saharan",dzl:"Sino-Tibetan",eng:"Indo-European",enn:"Niger-Congo",epi:"Niger-Congo",ers:"Sino-Tibetan",esl:"Sign Language",evn:"Tungusic",fin:"Uralic",fni:"Niger-Congo",fod:"Niger-Congo",fra:"Indo-European",fsl:"Sign Language",fub:"Niger-Congo",fuc:"Niger-Congo",fuf:"Niger-Congo",fuj:"Niger-Congo",fvr:"Nilo-Saharan",fwe:"Niger-Congo",gax:"Afro-Asiatic",gaz:"Afro-Asiatic",gbk:"Indo-European",gbm:"Indo-European",gbn:"Nilo-Saharan",gdq:"Afro-Asiatic",gea:"Afro-Asiatic",ges:"Austronesian",gex:"Afro-Asiatic",ghl:"Nilo-Saharan",giq:"Kra-Dai",giw:"Kra-Dai",gju:"Indo-European",glc:"Niger-Congo",goe:"Sino-Tibetan",gow:"Afro-Asiatic",gqu:"Kra-Dai",grr:"Afro-Asiatic",gsg:"Sign Language",gss:"Sign Language",guj:"Indo-European",gus:"Sign Language",gvp:"Jean",gwb:"Niger-Congo",gwc:"Indo-European",gwd:"Afro-Asiatic",gwf:"Indo-European",gya:"Niger-Congo",gyo:"Sino-Tibetan",gzn:"Austronesian",hae:"Afro-Asiatic",hal:"Austro-Asiatic",hau:"Afro-Asiatic",hca:"Creole",hea:"Hmong-Mien",heb:"Afro-Asiatic",her:"Niger-Congo",hik:"Austronesian",hin:"Indo-European",hks:"Sign Language",hlb:"Indo-European",hld:"Austro-Asiatic",hmb:"Nilo-Saharan",hmh:"Hmong-Mien",hml:"Hmong-Mien",hmm:"Hmong-Mien",hne:"Indo-European",hni:"Sino-Tibetan",hnu:"Austro-Asiatic",hoh:"Afro-Asiatic",hoj:"Indo-European",hoz:"Afro-Asiatic",hsn:"Sino-Tibetan",hss:"Afro-Asiatic",htu:"Austronesian",hug:"Harákmbut",huo:"Austro-Asiatic",iba:"Austronesian",ibr:"Niger-Congo",icl:"Sign Language",iii:"Sino-Tibetan",ind:"Austronesian",irr:"Austro-Asiatic",ise:"Sign Language",isk:"Indo-European",isr:"Sign Language",ium:"Hmong-Mien",jbn:"Afro-Asiatic",jeu:"Afro-Asiatic",jia:"Afro-Asiatic",jii:"Afro-Asiatic",jio:"Kra-Dai",jit:"Niger-Congo",jiu:"Sino-Tibetan",jle:"Niger-Congo",jls:"Sign Language",jmi:"Afro-Asiatic",jnl:"Sino-Tibetan",jos:"Sign Language",jpn:"Japonic",jup:"Puinavean",kaf:"Sino-Tibetan",kan:"Dravidian",kas:"Indo-European",kay:"Tupian",kaz:"Turkic",kbg:"Sino-Tibetan",kbo:"Nilo-Saharan",kbp:"Niger-Congo",kby:"Nilo-Saharan",kcf:"Niger-Congo",kcn:"Creole",kcp:"Nilo-Saharan",kcu:"Niger-Congo",kcy:"Nilo-Saharan",kcz:"Niger-Congo",kdh:"Niger-Congo",kdn:"Niger-Congo",kdt:"Austro-Asiatic",kdu:"Nilo-Saharan",kec:"Nilo-Saharan",kfa:"Dravidian",kfd:"Dravidian",kfe:"Dravidian",kfg:"Dravidian",kfm:"Indo-European",kfr:"Indo-European",kfs:"Indo-European",kfy:"Indo-European",kgn:"Indo-European",khb:"Kra-Dai",khf:"Austro-Asiatic",khv:"Nakh-Daghestanian",kia:"Niger-Congo",kib:"Niger-Congo",kie:"Nilo-Saharan",kil:"Afro-Asiatic",kir:"Turkic",kjc:"Austronesian",kjg:"Austro-Asiatic",kjk:"Austronesian",kke:"Niger-Congo",kkh:"Kra-Dai",kkn:"Austro-Asiatic",kko:"Nilo-Saharan",kks:"Afro-Asiatic",klf:"Nilo-Saharan",kmc:"Kra-Dai",kmq:"Nilo-Saharan",kmr:"Indo-European",kmz:"Turkic",knc:"Nilo-Saharan",knf:"Niger-Congo",knk:"Niger-Congo",knm:"Maipurean",knn:"Indo-European",kns:"Austro-Asiatic",knz:"Niger-Congo",kou:"Niger-Congo",kpa:"Afro-Asiatic",kpc:"Maipurean",kpj:"Karajá",kpt:"Nakh-Daghestanian",kqg:"Niger-Congo",kqm:"Niger-Congo",krn:"Niger-Congo",krs:"Nilo-Saharan",kth:"Nilo-Saharan",kuf:"Austro-Asiatic",kui:"Cariban",kuj:"Niger-Congo",kva:"Nakh-Daghestanian",kvf:"Afro-Asiatic",kvh:"Austronesian",kvp:"Austronesian",kwn:"Niger-Congo",kwv:"Nilo-Saharan",kxd:"Austronesian",kxh:"Afro-Asiatic",kxj:"Nilo-Saharan",kyi:"Austronesian",kyp:"Kra-Dai",kyw:"Indo-European",kzq:"Sino-Tibetan",lae:"Sino-Tibetan",lan:"Niger-Congo",lao:"Kra-Dai",laq:"Kra-Dai",lbj:"Sino-Tibetan",lbn:"Austro-Asiatic",lbo:"Austro-Asiatic",lbs:"Sign Language",lbt:"Kra-Dai",lcd:"Austronesian",lcq:"Austronesian",lgn:"Nilo-Saharan",lgs:"Sign Language",lha:"Kra-Dai",lhn:"Austronesian",lhp:"Sino-Tibetan",lic:"Kra-Dai",liq:"Afro-Asiatic",liu:"Nilo-Saharan",lkc:"Sino-Tibetan",lkh:"Sino-Tibetan",lki:"Indo-European",lkr:"Nilo-Saharan",lma:"Niger-Congo",loh:"Nilo-Saharan",lop:"Niger-Congo",lsd:"Afro-Asiatic",lso:"Sign Language",lss:"Indo-European",lsy:"Sign Language",luk:"Sino-Tibetan",lul:"Nilo-Saharan",mag:"Indo-European",mai:"Indo-European",mal:"Dravidian",mar:"Indo-European",mbd:"Austronesian",mbn:"Guajiboan",mcd:"Panoan",mdl:"Sign Language",mdy:"Afro-Asiatic",mei:"Nilo-Saharan",men:"Niger-Congo",mes:"Afro-Asiatic",mew:"Afro-Asiatic",mey:"Afro-Asiatic",mgb:"Nilo-Saharan",mgd:"Nilo-Saharan",mge:"Nilo-Saharan",mgh:"Niger-Congo",mhr:"Uralic",mhu:"Sino-Tibetan",mhw:"Niger-Congo",mjp:"Dravidian",mkg:"Kra-Dai",mmh:"Maipurean",mml:"Austro-Asiatic",mmy:"Afro-Asiatic",mne:"Nilo-Saharan",mni:"Sino-Tibetan",mnj:"Indo-European",mnk:"Niger-Congo",mnq:"Austro-Asiatic",mns:"Uralic",mot:"Chibchan",mou:"Afro-Asiatic",moy:"Afro-Asiatic",moz:"Afro-Asiatic",mpe:"Nilo-Saharan",mpz:"Sino-Tibetan",mqi:"Austronesian",mqn:"Austronesian",mra:"Austro-Asiatic",mrj:"Uralic",msc:"Niger-Congo",msv:"Afro-Asiatic",msw:"Niger-Congo",mtr:"Indo-European",mub:"Afro-Asiatic",mup:"Indo-European",muq:"Hmong-Mien",muv:"Dravidian",mvf:"Mongolic",mvu:"Nilo-Saharan",mvy:"Indo-European",mwn:"Niger-Congo",mxj:"Sino-Tibetan",myp:"Muran",myy:"Tucanoan",mzb:"Afro-Asiatic",mzy:"Sign Language",naq:"Khoe-Kwadi",nbt:"Sino-Tibetan",nbw:"Niger-Congo",ndg:"Niger-Congo",ndp:"Nilo-Saharan",ndt:"Niger-Congo",neb:"Niger-Congo",neh:"Sino-Tibetan",nev:"Austro-Asiatic",ngt:"Austro-Asiatic",njl:"Nilo-Saharan",nkd:"Sino-Tibetan",nld:"Indo-European",nmd:"Niger-Congo",nmi:"Afro-Asiatic",nml:"Niger-Congo",nmy:"Sino-Tibetan",nnj:"Nilo-Saharan",nod:"Kra-Dai",noe:"Indo-European",nos:"Sino-Tibetan",npb:"Sino-Tibetan",npi:"Indo-European",nrb:"Nilo-Saharan",nru:"Sino-Tibetan",nsl:"Sign Language",nuo:"Austro-Asiatic",nus:"Nilo-Saharan",nwm:"Nilo-Saharan",nxq:"Sino-Tibetan",nye:"Niger-Congo",nyn:"Niger-Congo",nyr:"Niger-Congo",nyw:"Kra-Dai",nzs:"Sign Language",okn:"Japonic",ole:"Sino-Tibetan",oog:"Austro-Asiatic",oon:"Andamanese",opa:"Niger-Congo",ort:"Indo-European",ory:"Indo-European",ost:"Niger-Congo",oyb:"Austro-Asiatic",oym:"Tupian",pac:"Austro-Asiatic",pah:"Tupian",pbp:"Niger-Congo",peh:"Mongolic",pes:"Indo-European",pga:"Creole",pgg:"Indo-European",pgz:"Sign language",pha:"Hmong-Mien",phh:"Sino-Tibetan",phj:"Sino-Tibetan",phk:"Kra-Dai",phl:"Indo-European",pho:"Sino-Tibetan",phq:"Sino-Tibetan",phr:"Indo-European",pht:"Kra-Dai",pil:"Niger-Congo",pir:"Tucanoan",pkb:"Niger-Congo",pks:"Sign Language",pkt:"Austro-Asiatic",pll:"Austro-Asiatic",pnq:"Niger-Congo",pnx:"Austro-Asiatic",por:"Indo-European",prc:"Indo-European",prs:"Indo-European",prt:"Austro-Asiatic",psc:"Sign Language",pse:"Austronesian",pto:"Tupian",pum:"Sino-Tibetan",puo:"Austro-Asiatic",qae:"Sign Language",qao:"Sign Language",qbh:"Sign Language",qbj:"Sign Language",qbn:"Sign Language",qbt:"Sign Language",qcd:"Sign Language",qcm:"Sign Language",qcy:"Sign Language",qer:"Sign Language",qfa:"Sign Language",qfj:"Sign Language",qga:"Sign Language",qge:"Sign Language",qgm:"Sign Language",qiq:"Sign Language",qki:"Sign Language",qkm:"Sign Language",qkp:"Sign Language",qkw:"Sign Language",qmv:"Sign Language",qnh:"Sign Language",qns:"Sign Language",qom:"Sign Language",qqa:"Sign Language",qry:"Sign Language",qsm:"Sign Language",qso:"Sign Language",qsr:"Sign Language",qsz:"Sign Language",qtp:"Sign Language",qvz:"Quechuan",ras:"Niger-Congo",rbb:"Austro-Asiatic",ren:"Austro-Asiatic",rji:"Sino-Tibetan",rmt:"Indo-European",rmy:"Indo-European",rob:"Austronesian",rsl:"Sign Language",rui:"Niger-Congo",rus:"Indo-European",rwm:"Niger-Congo",rwr:"Indo-European",rys:"Japonic",saa:"Afro-Asiatic",sbf:"Unclassified",sbj:"Nilo-Saharan",sbs:"Niger-Congo",scb:"Austro-Asiatic",sck:"Indo-European",scl:"Indo-European",sdb:"Indo-European",sdg:"Indo-European",sdl:"Sign Language",sdp:"Sino-Tibetan",seq:"Niger-Congo",sgh:"Indo-European",sgy:"Indo-European",she:"Afro-Asiatic",shm:"Indo-European",shn:"Kra-Dai",sho:"Niger-Congo",shp:"Panoan",shu:"Afro-Asiatic",shv:"Afro-Asiatic",shz:"Niger-Congo",siy:"Indo-European",siz:"Afro-Asiatic",sjg:"Nilo-Saharan",sjo:"Tungusic",skq:"Niger-Congo",sle:"Dravidian",slt:"Sino-Tibetan",sml:"Austronesian",smy:"Indo-European",snd:"Indo-European",snn:"Tucanoan",soj:"Indo-European",sok:"Afro-Asiatic",soy:"Niger-Congo",spa:"Indo-European",spu:"Austro-Asiatic",sqk:"Sign Language",sqq:"Austro-Asiatic",sqs:"Sign Language",sqt:"Afro-Asiatic",srh:"Indo-European",sri:"Tucanoan",srp:"Indo-European",ssh:"Afro-Asiatic",ssn:"Afro-Asiatic",sss:"Austro-Asiatic",ssy:"Afro-Asiatic",std:"Andamanese",sts:"Indo-European",suq:"Nilo-Saharan",suv:"Sino-Tibetan",suy:"Jean",suz:"Sino-Tibetan",swh:"Niger-Congo",swi:"Kra-Dai",swl:"Sign Language",swv:"Indo-European",swx:"Arauan",sxg:"Sino-Tibetan",sze:"Afro-Asiatic",szn:"Austronesian",szs:"Sign Language",tag:"Niger-Congo",tam:"Dravidian",taz:"Niger-Congo",tbm:"Niger-Congo",tbn:"Chibchan",tbr:"Nilo-Saharan",tct:"Kra-Dai",tcy:"Dravidian",tda:"Mixed language",tdb:"Indo-European",tdd:"Kra-Dai",tdf:"Austro-Asiatic",tdj:"Austronesian",tel:"Dravidian",teq:"Nilo-Saharan",tgf:"Sino-Tibetan",tgk:"Indo-European",tgr:"Austro-Asiatic",thk:"Niger-Congo",thm:"Austro-Asiatic",thu:"Nilo-Saharan",thv:"Afro-Asiatic",tig:"Afro-Asiatic",tin:"Nakh-Daghestanian",tiz:"Kra-Dai",tkn:"Japonic",tlq:"Austro-Asiatic",tly:"Indo-European",tma:"Nilo-Saharan",tnb:"Chibchan",toi:"Niger-Congo",toq:"Nilo-Saharan",tou:"Austro-Asiatic",tqq:"Afro-Asiatic",tri:"Cariban",trj:"Afro-Asiatic",tsb:"Afro-Asiatic",tsc:"Niger-Congo",tsj:"Sino-Tibetan",tsk:"Sino-Tibetan",tsl:"Kra-Dai",tsm:"Sign Language",ttg:"Austronesian",tth:"Austro-Asiatic",ttl:"Niger-Congo",tts:"Kra-Dai",tue:"Tucanoan",tum:"Niger-Congo",tuo:"Tucanoan",tur:"Turkic",twm:"Sino-Tibetan",txi:"Cariban",txm:"Austronesian",tyh:"Austro-Asiatic",tyj:"Kra-Dai",tyr:"Kra-Dai",tyv:"Turkic",tyy:"Niger-Congo",tzm:"Afro-Asiatic",uan:"Kra-Dai",udj:"Austronesian",une:"Niger-Congo",unk:"Maipurean",urd:"Indo-European",urp:"Tupian",urz:"Tupian",ush:"Indo-European",usi:"Sino-Tibetan",uuu:"Austro-Asiatic",uzn:"Turkic",vai:"Niger-Congo",vgr:"Indo-European",vie:"Austro-Asiatic",vkj:"Unclassified",vkn:"Niger-Congo",vkz:"Niger-Congo",vmk:"Niger-Congo",vut:"Niger-Congo",wau:"Maipurean",waw:"Cariban",wbj:"Afro-Asiatic",wbl:"Indo-European",wbr:"Indo-European",wlc:"Niger-Congo",wll:"Nilo-Saharan",wmd:"Nambikwara",wmg:"Sino-Tibetan",wne:"Indo-European",wni:"Niger-Congo",wol:"Niger-Congo",wrn:"Niger-Congo",wti:"Nilo-Saharan",wuh:"Mixed language",wwa:"Niger-Congo",xal:"Mongolic",xan:"Afro-Asiatic",xdq:"Nakh-Daghestanian",xhv:"Austro-Asiatic",xka:"Indo-European",xkz:"Sino-Tibetan",xma:"Niger-Congo",xmj:"Afro-Asiatic",xmo:"Tupian",xms:"Sign Language",xnr:"Indo-European",xns:"Sino-Tibetan",xom:"Nilo-Saharan",xor:"Panoan",xsm:"Niger-Congo",xsr:"Sino-Tibetan",xwg:"Nilo-Saharan",yaa:"Panoan",yad:"Yaguan",yao:"Niger-Congo",yax:"Niger-Congo",ybh:"Sino-Tibetan",ycl:"Sino-Tibetan",ydd:"Indo-European",ydg:"Indo-European",yea:"Dravidian",yhd:"Afro-Asiatic",yig:"Sino-Tibetan",yix:"Sino-Tibetan",ymm:"Afro-Asiatic",ymx:"Sino-Tibetan",yne:"Sino-Tibetan",yno:"Kra-Dai",yom:"Niger-Congo",yox:"Japonic",yoy:"Kra-Dai",yrn:"Kra-Dai",ysl:"Sign Language",ysm:"Sign language",ysn:"Sino-Tibetan",yue:"Sino-Tibetan",yul:"Nilo-Saharan",yup:"Cariban",ywn:"Panoan",ywt:"Sino-Tibetan",zag:"Nilo-Saharan",zgn:"Kra-Dai",zhd:"Kra-Dai",ziw:"Niger-Congo",zkr:"Sino-Tibetan",zlm:"Austronesian",zna:"Niger-Congo",zne:"Niger-Congo",zng:"Austro-Asiatic",zqe:"Kra-Dai",zum:"Indo-European",zyg:"Kra-Dai"},_f=":host{display:block;width:100%;--dx-surface: #f3f3f1;--dx-elevated: #ffffff;--dx-text: #3b463d;--dx-muted: #6d766e;--dx-line: #d1d4cd;--dx-accent: #92b195;--dx-accent-weak: rgba(146, 177, 149, .18);--dx-accent-soft: rgba(146, 177, 149, .1);--dx-accent-strong: #657967}.pgg-root{--brand: var(--dx-accent, #92b195);--ink: var(--dx-text, #3b463d);--mut: var(--dx-muted, #6d766e);--line: var(--dx-line, #d1d4cd);--card: var(--dx-elevated, #fff);--bg: var(--dx-surface, #f3f3f1);width:100%;box-sizing:border-box;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;padding:16px}.filters{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding-block:18px 8px;min-height:190px}.pgg-search{display:flex;justify-content:center}.pgg-search--repel{gap:10px;align-items:center;flex-wrap:wrap;justify-content:space-between;width:100%;max-width:600px;margin-inline:auto}.pgg-search--repel>:first-child{flex:1 1 320px;min-width:0}.pgg-exact{flex:none}.filters__toggle{background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--dx-text, #3b463d);padding:7px 12px;display:inline-flex;align-items:center;gap:7px;margin-inline:auto;transition:background-color .15s ease,border-color .15s ease}.filters__toggle:hover{background:var(--dx-accent-weak, rgba(146,177,149,.18));border-color:var(--dx-accent, #92b195)}.filters__toggle:focus-visible{outline:2px solid var(--dx-accent, #92b195);outline-offset:2px}.filters__toggle-icon{color:var(--dx-accent, #92b195);flex:none}.filters__toggle-count{background:var(--dx-accent, #92b195);color:#fff;border-radius:999px;min-width:18px;padding:0 5px;font-size:.75rem;line-height:18px;text-align:center}.filters__toggle[aria-expanded=true] svg{transform:rotate(180deg)}.filters__panel{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:flex-start}.filter-toggle{padding:6px 12px;cursor:pointer;font-size:.875rem;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:8px;transition:border-color .15s ease,background .15s ease}.filter-toggle:hover{border-color:var(--brand)}.filter-toggle[data-active]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));border-color:var(--brand);color:var(--ink)}.filters__active{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}.filter-chip{display:inline-flex;gap:6px;align-items:center;background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));color:var(--ink);border:1px solid var(--line);border-radius:100px;padding:4px 12px;font-size:.85rem}.filter-chip__remove{background:none;border:none;cursor:pointer;font-size:1.1em;line-height:1;color:inherit;padding:0;display:inline-flex;align-items:center}.filter-chip__remove:hover{opacity:.7}.filters__clear-all{background:none;border:none;cursor:pointer;font-size:.875rem;color:var(--ink);text-decoration:underline;text-decoration-color:var(--brand);text-underline-offset:4px}.repel{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.font-size-sm{font-size:.875rem;color:var(--mut)}.grid.uupgs-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.pgg-gridbar{display:flex;justify-content:flex-end;margin-bottom:8px}.pgg-perrow{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--mut)}.pgg-perrow select{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:6px;padding:2px 6px}.card.uupg__card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #0000000a}.uupg__image{width:100%;aspect-ratio:1 / 1;object-fit:cover;background:var(--line)}.uupg__header{padding:12px 14px 6px}.uupg__name{font-size:1rem;font-weight:700;line-height:1.2;margin:0 0 4px}.uupg__country{font-size:.85rem;color:var(--mut);margin:0}.uupg__country-link{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:1px;text-underline-offset:2px}.uupg__country-link:hover{text-decoration-thickness:2px}.uupg__match{font-size:.8rem;color:var(--mut);margin:4px 0 0}.uupg__content{padding:0 14px;font-size:.85rem;color:var(--mut)}.uupg__more-button{margin:12px 14px 14px;padding:8px 12px;text-align:center;font-size:.85rem;font-weight:700;color:var(--dx-elevated, #fff);background:var(--dx-accent-strong, #657967);border-radius:8px;text-decoration:none}.uupg__more-button:hover{background:var(--dx-text, #3b463d)}.search-highlight{background:#fde68a;border-radius:2px;padding:0 1px}.loading,.pgg-empty{grid-column:1 / -1;padding:28px;text-align:center;color:var(--mut);font-size:.9rem}.pgg-failed{font-weight:600;border-top:1px solid var(--bd, #d1d4cd)}.pgg-loadmore{display:block;margin:20px auto 0;padding:8px 18px;font-size:.9rem;cursor:pointer;color:var(--ink);background:var(--card);border:1px solid var(--brand);border-radius:8px}.pgg-loadmore:hover{background:var(--dx-accent-soft, rgba(146, 177, 149, .1))}",mf={class:"pgg-root"},bf={key:0,class:"pgg-search pgg-search--repel"},$f=["data-active"],vf=["aria-expanded"],yf={key:0,class:"filters__toggle-count"},wf={key:2,class:"filters__panel"},kf={key:3,class:"filters__active"},Af=["onClick"],Sf={class:"pgg-body"},Tf={key:0,class:"repel"},Lf={class:"font-size-sm"},xf={key:1},Ef={class:"pgg-gridbar"},Nf={class:"pgg-perrow"},Mf=["aria-label"],Pf=["value"],Cf=["src","alt"],Of={class:"uupg__header"},If=["innerHTML"],Ff={key:0,class:"uupg__country"},Df=["href"],Rf=["innerHTML"],jf=["innerHTML"],Uf=["innerHTML"],zf={key:1,class:"uupg__content"},Wf=["href"],qf={key:0,class:"loading"},Hf={key:1,class:"pgg-empty pgg-failed",role:"status"},Bf={key:2,class:"pgg-empty"},Vf=Tu(Ns(Object.assign({inheritAttrs:!1},{__name:"people-groups-grid",props:{profileConfig:{type:String,default:""},prayBaseUrl:{type:String,default:""},languageCode:{type:String,default:""},researchUrl:{type:String,default:""},selectUrl:{type:String,default:""},t:{type:Object,default:()=>({})},showSearch:{type:[Boolean,String],default:!0},showFilters:{type:[Boolean,String],default:!0},showTotal:{type:[Boolean,String],default:!0},query:{type:String,default:""},wagfRegion:{type:String,default:""},wagfBlock:{type:String,default:""},rop1:{type:String,default:""},religion:{type:String,default:""},countryCode:{type:String,default:""},primaryLanguage:{type:String,default:""},cluster:{type:String,default:""},peopleGroup:{type:String,default:""},engagementStatus:{type:String,default:""},gospelAccess:{type:String,default:""},religionFamily:{type:String,default:""},languageFamily:{type:String,default:""},perPage:{type:Number,default:24},morePerPage:{type:Number,default:0}},emits:["groups-filtered"],setup(e,{emit:t}){const n=e,o=t,s=le(()=>{if(!n.profileConfig)return{};try{return JSON.parse(n.profileConfig)||{}}catch{return{}}}),a=le(()=>!R.value&&!j.value?null:{backgroundImage:`url(${tl(s.value)}/images/worldmap.svg)`,backgroundSize:"60%",backgroundPosition:"top center",backgroundRepeat:"no-repeat"}),r=le(()=>n.prayBaseUrl||s.value.prayBaseUrl||"https://pray.doxa.life"),i=le(()=>n.languageCode||s.value.languageCode||s.value.locale||s.value.lang||Yi()||""),l=le(()=>{const f=i.value||Zi()||Ji();return Vp.has(String(f).split("-")[0].toLowerCase())?"rtl":"ltr"});function d(){try{const f=D();f&&f.setAttribute&&l.value==="rtl"&&f.setAttribute("dir","rtl")}catch{}}lt(l,d);const p=le(()=>n.researchUrl||s.value.researchUrl||(typeof window<"u"&&window.DOXA_SITE_URL||"https://doxa.life").replace(/\/+$/,"")+"/research/"),_=["auto","1","2","3","4","5"],b=le(()=>`pgg-cards-per-row:${s.value.profile||"default"}`),S=ve("auto");$o(()=>{try{const f=localStorage.getItem(b.value);f&&_.includes(f)&&(S.value=f)}catch{}}),lt(S,f=>{try{localStorage.setItem(b.value,f)}catch{}});const I=le(()=>S.value==="auto"?null:{gridTemplateColumns:`repeat(${S.value}, minmax(0, 1fr))`}),A=le(()=>{const f={...s.value.t||{},...n.t||{}},k=s.value.locale||s.value.lang||void 0;return new Proxy(f,{get(P,q){if(q in P)return P[q];if(typeof q=="string")return Qi("grid."+q,k)}})}),U=f=>!(f===!1||f==="false"||f==="0"||f===0),R=le(()=>U(n.showSearch)),j=le(()=>U(n.showFilters)),w=le(()=>U(n.showTotal)),$=ve([]),E=ve([]),x=ve(0),C=ve(1),W=ve(!0),H=ve(!1),ce=ve(!0),K=ve({}),B=ve(""),V=ve({}),Ee=le(()=>R.value?B.value:n.query||""),Me=le(()=>{const f={},k=P=>P;return n.wagfRegion&&(f.wagf_region={value:n.wagfRegion,label:k(n.wagfRegion)}),n.wagfBlock&&(f.wagf_block={value:n.wagfBlock,label:k(n.wagfBlock)}),n.rop1&&(f.rop1={value:n.rop1,label:k(n.rop1)}),n.religion&&(f.religion={value:n.religion,label:k(n.religion)}),n.countryCode&&(f.country_code={value:n.countryCode,label:k(n.countryCode)}),n.primaryLanguage&&(f.primary_language={value:n.primaryLanguage,label:k(n.primaryLanguage)}),n.engagementStatus&&(f.engagement_status={value:n.engagementStatus,label:k(n.engagementStatus)}),n.cluster&&(f.imb_reg_of_people_2={value:n.cluster,label:k(n.cluster)}),n.peopleGroup&&(f.imb_reg_of_people_25={value:n.peopleGroup,label:k(n.peopleGroup)}),n.gospelAccess&&(f.imb_gsec={value:n.gospelAccess,label:k(n.gospelAccess)}),n.religionFamily&&(f.__religion_family={value:n.religionFamily,label:k(n.religionFamily)}),n.languageFamily&&(f.__language_family={value:n.languageFamily,label:k(n.languageFamily)}),f}),ee=le(()=>j.value?V.value:Me.value);lt(()=>n.wagfRegion,f=>{if(!j.value)return;const k=V.value.wagf_region;if(f){if(k&&k.value===f)return;const P=(K.value&&K.value.wagf_region||[]).find(q=>q.value===f);V.value={...V.value,wagf_region:{value:f,label:P&&P.label||f}}}else if(k){const P={...V.value};delete P.wagf_region,V.value=P}}),lt(()=>n.religionFamily,f=>{if(!j.value)return;const k=V.value.__religion_family;if(f){if(k&&ze(k.value)===ze(f))return;V.value={...V.value,__religion_family:{value:f,label:f}}}else if(k){const P={...V.value};delete P.__religion_family,V.value=P}}),lt(()=>n.primaryLanguage,f=>{if(!j.value)return;const k=V.value.primary_language;if(f){if(k&&ze(k.value)===ze(f))return;V.value={...V.value,primary_language:{value:f,label:f}}}else if(k){const P={...V.value};delete P.primary_language,V.value=P}});const ne=le(()=>Object.values(ee.value||{}).filter(f=>f&&f.value!==""&&f.value!=null).length),ie=le(()=>Object.keys(ee.value).length),Ae=le(()=>ne.value>0||!!(Ee.value||"").trim());function Ze(f,k=500){let P;return(...q)=>{clearTimeout(P),P=setTimeout(()=>f(...q),k)}}const be=Ze(()=>{W.value=!0,C.value=1,N()},500);function we(f){B.value=(f==null?void 0:f.value)??"",be()}function st(){ce.value=!ce.value}function Re(f){V.value={...V.value,[f.name]:{value:f.value,label:f.label}},C.value=1,N()}function Ve(f){Ke(f.name)}function Ke(f){const k={...V.value};delete k[f],V.value=k,C.value=1,N()}function dt(){V.value={},C.value=1,N()}function pt(){if(V.value.exact)return Ke("exact");V.value={...V.value,exact:{value:"yes",label:A.value.exact_filter||"Exact"}},C.value=1,N()}const ze=f=>String(f??"").toLowerCase().replace(/[\s_&-]+/g,""),Ge={__religion_family:f=>{const k=f.religion&&typeof f.religion=="object"?f.religion.value:f.religion,P=String(k||"").charAt(0).toUpperCase(),q=P&&al[P]?al[P]:"";return q?{value:q,label:q}:null},__language_family:f=>{const k=f.imb_language_family,P=k&&typeof k=="object"?k.label||k.value:k;let q="";if(P)q=rl(P);else{const J=f.primary_language&&typeof f.primary_language=="object"?f.primary_language.value:null,te=J&&hf[J];q=te?rl(te):""}return q?{value:q,label:q}:null}},At=(f,k)=>Ge[k]?Ge[k](f):f[k];function g(f,k){if(!f)return!1;const P=k==null?void 0:k.value;if(P==null||P==="")return!1;const q=(Array.isArray(P)?P:String(P).split("|")).map(X=>ze(X)).filter(Boolean);if(!q.length)return!1;const J=ze(f.value),te=ze(f.label);return q.some(X=>J===X||te===X)}function m(f){let k=f;for(const[P,q]of Object.entries(ee.value))P==="exact"?k=k:k=k.filter(J=>g(At(J,P),q));return k}function h(){const f=k=>{const P=new Map;for(const q of $.value){const J=q[k];if(!(J!=null&&J.value))continue;const te=P.get(J.value);te?te.count++:P.set(J.value,{label:J.label,count:1})}return Array.from(P.entries()).map(([q,{label:J,count:te}])=>({value:q,label:J,count:te})).sort((q,J)=>q.label.localeCompare(J.label))};K.value={wagf_region:f("wagf_region"),wagf_block:f("wagf_block"),rop1:f("rop1"),religion:f("religion")}}function T(){const f=Object.keys(K.value),k={};for(const P of f){const q={};for(const[X,Ne]of Object.entries(ee.value))X!==P&&(q[X]=Ne);const J=M(q,$.value),te=new Map;for(const X of J){const Ne=X[P];Ne!=null&&Ne.value&&te.set(Ne.value,(te.get(Ne.value)??0)+1)}k[P]=(K.value[P]??[]).map(X=>({...X,count:te.get(X.value)??0}))}K.value=k}function M(f,k){let P=k;for(const[q,J]of Object.entries(f))q!=="exact"&&(P=P.filter(te=>g(At(te,q),J)));return P}function N(){$.value=$.value.map(te=>(te.matches=[],te.country_label="",te.rop1_label="",te));const k=Object.keys(ee.value).length>0?m($.value):$.value,P=Ee.value;if(!P){E.value=k,x.value=E.value.length,W.value=!1,T(),c();return}const J=new Ru(k,{includeMatches:!0,ignoreLocation:!0,minMatchCharLength:3,threshold:ee.value.exact?0:.4,keys:["name","imb_alternate_name","country_code.label","rop1.label","religion.label","wagf_region.label","wagf_block.label"]}).search(P);E.value=J.map(te=>{var Ne;const X={...te.item};if(!te.matches)return X;X.matches=[];for(const Pe of te.matches){const Ce=Pe.key;if(!Ce)continue;let Vt="";if(String(Ce).includes(".")){const[St,an]=String(Ce).split(".");Vt=(Ne=X[St])==null?void 0:Ne[an]}else Vt=X[String(Ce)];if(Vt&&typeof Vt=="string"){const St=Uu(Vt,Pe.indices);if(String(Ce).includes("imb_alternate_name"))X.matches.push({key:A.value.alternate_name??"Also known as",label:St});else if(String(Ce).includes(".")){const[an]=String(Ce).split("."),Kf={religion:A.value.religion,country_code:A.value.country,rop1:A.value.rop1,wagf_region:A.value.wagf_region,wagf_block:A.value.wagf_block};an==="rop1"?X.rop1_label=St:an==="country_code"?X.country_label=St:an==="wagf_region"||X.matches.push({key:Kf[an]??an,label:St})}else X[String(Ce)]=St}}return X}),x.value=E.value.length,W.value=!1,T(),c()}const F=Rn();function D(){var k,P;const f=((k=F==null?void 0:F.vnode)==null?void 0:k.el)||((P=F==null?void 0:F.proxy)==null?void 0:P.$el);try{const q=f&&f.getRootNode&&f.getRootNode();if(q&&q.host)return q.host}catch{}return f}function c(){const f={query:Ee.value,activeFilters:ee.value,total:x.value,slugs:E.value.map(P=>P.slug)};o("groups-filtered",f);const k=D();k&&typeof k.dispatchEvent=="function"&&k.dispatchEvent(new CustomEvent("groups-filtered",{detail:f,bubbles:!0,composed:!0}))}function u(){return n.morePerPage>0?x.value>n.perPage+(C.value-1)*n.morePerPage&&!W.value&&E.value.length>0:x.value>C.value*n.perPage&&!W.value&&E.value.length>0}function y(){C.value=C.value+1}const L=le(()=>n.morePerPage>0?E.value.slice(0,n.perPage+(C.value-1)*n.morePerPage):E.value.slice(0,C.value*n.perPage)),z=le(()=>u());async function O(){const f=`${r.value}/api/people-groups/list?fields=name,slug,wagf_region,wagf_block,country_code,rop1,religion,has_photo,image_url,adopted_by_churches,imb_alternate_name,engagement_status,people_committed,primary_language,imb_reg_of_people_2,imb_reg_of_people_25,imb_gsec,imb_language_family&lang=${i.value}`;W.value=!0,H.value=!1;try{const k=await fetch(f);if(!k.ok)throw new Error(`HTTP ${k.status}`);const P=await k.json(),q=Array.isArray(P.posts)?P.posts:[],J=await uf(q,n.profileConfig);x.value=J===q?P.total:J.length,$.value=J,h(),N()}catch(k){console.error("[people-groups-grid] fetch error:",k),H.value=!0,$.value=[],W.value=!1}}lt(()=>[n.query,Me.value,R.value,j.value],()=>{C.value=1,N()});function v(f){const k=new Set;for(const P of $.value||[]){const q=At(P,f),J=q&&typeof q=="object"?q.label:q;typeof J=="string"&&J&&k.add(J)}return[...k].sort()}return $o(()=>{const f=D();f&&(f.__vocabulary=v),typeof window<"u"&&(window.__peopleGroupsGridVocabulary=v),d(),O()}),(f,k)=>{var P,q,J,te;return se(),ae("div",mf,[R.value||j.value?(se(),ae("div",{key:0,id:"filters",class:"filters",style:Gt(a.value)},[R.value?(se(),ae("div",bf,[Le(qu,{"model-value":B.value,placeholder:A.value.search||"Search people groups…","aria-label":A.value.search||"Search people groups","max-width":"480px",onSearch:we},null,8,["model-value","placeholder","aria-label"]),j.value?(se(),ae("button",{key:0,class:"filter-toggle pgg-exact",type:"button","data-active":ee.value.exact?"":void 0,onClick:pt},ke(A.value.exact_filter||"Exact"),9,$f)):De("",!0)])):De("",!0),j.value?(se(),ae("button",{key:1,class:"filters__toggle",type:"button","aria-expanded":ce.value,onClick:st},[k[1]||(k[1]=oe("svg",{class:"filters__toggle-icon",width:"13",height:"13",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[oe("path",{d:"M1.5 2.5h9M3 6h6M4.5 9.5h3",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round"})],-1)),Pt(" "+ke(ce.value?A.value.hide_filters||"Hide Filters":A.value.show_filters||"Show Filters")+" ",1),ne.value?(se(),ae("span",yf,ke(ne.value),1)):De("",!0),k[2]||(k[2]=oe("svg",{width:"12",height:"12",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg"},[oe("path",{d:"M2 4l4 4 4-4",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],8,vf)):De("",!0),j.value&&ce.value?(se(),ae("div",wf,[Le(zo,{label:A.value.wagf_region||"Region",name:"wagf_region",options:K.value.wagf_region||[],value:((P=ee.value.wagf_region)==null?void 0:P.value)??"",placeholder:A.value.type_to_search||"Type to search...",onFilterChange:Re,onFilterClear:Ve},null,8,["label","options","value","placeholder"]),Le(zo,{label:A.value.wagf_block||"Bloc",name:"wagf_block",options:K.value.wagf_block||[],value:((q=ee.value.wagf_block)==null?void 0:q.value)??"",placeholder:A.value.type_to_search||"Type to search...",onFilterChange:Re,onFilterClear:Ve},null,8,["label","options","value","placeholder"]),Le(zo,{label:A.value.rop1||"People Group",name:"rop1",options:K.value.rop1||[],value:((J=ee.value.rop1)==null?void 0:J.value)??"",placeholder:A.value.type_to_search||"Type to search...",onFilterChange:Re,onFilterClear:Ve},null,8,["label","options","value","placeholder"]),Le(zo,{label:A.value.religion||"Religion",name:"religion",options:K.value.religion||[],value:((te=ee.value.religion)==null?void 0:te.value)??"",placeholder:A.value.type_to_search||"Type to search...",onFilterChange:Re,onFilterClear:Ve},null,8,["label","options","value","placeholder"])])):De("",!0),j.value&&ie.value>0?(se(),ae("div",kf,[(se(!0),ae(Te,null,Pn(ee.value,(X,Ne)=>(se(),ae("span",{key:Ne,class:"filter-chip"},[Pt(ke(X.label)+" ",1),oe("button",{class:"filter-chip__remove",type:"button",onClick:Pe=>Ke(String(Ne))},"×",8,Af)]))),128)),oe("button",{class:"filters__clear-all",type:"button",onClick:dt},ke(A.value.clear_all||"Clear All"),1)])):De("",!0)],4)):De("",!0),oe("div",Sf,[w.value||Ae.value?(se(),ae("div",Tf,[oe("div",Lf,[W.value?(se(),ae("span",xf," ")):(se(),ae(Te,{key:0},[Pt(ke(Ae.value&&!w.value?(A.value.showing||"Showing")+" "+Jt(nl)(x.value):(A.value.total||"Total")+": "+Jt(nl)(x.value)),1)],64))])])):De("",!0),oe("div",Ef,[oe("label",Nf,[oe("span",null,ke(A.value.cards_per_row),1),Ql(oe("select",{"onUpdate:modelValue":k[0]||(k[0]=X=>S.value=X),"aria-label":A.value.cards_per_row},[(se(),ae(Te,null,Pn(_,X=>oe("option",{key:X,value:X},ke(X==="auto"?A.value.cards_per_row_auto:X),9,Pf)),64))],8,Mf),[[xu,S.value]])])]),oe("div",{id:"results",class:"grid uupgs-list",style:Gt(I.value)},[(se(!0),ae(Te,null,Pn(L.value,X=>(se(),ae("div",{key:X.slug,class:"card uupg__card"},[X.image_url?(se(),ae("img",{key:0,class:"uupg__image",src:X.image_url,alt:X.name},null,8,Cf)):De("",!0),oe("div",Of,[oe("h3",{class:"uupg__name",innerHTML:X.name},null,8,If),X.country_code?(se(),ae("p",Ff,[oe("a",{class:"uupg__country-link",href:`${p.value}../countries/${Jt(df)(X.country_code.value,X.country_code.label)}`},[oe("span",{innerHTML:X.country_label?X.country_label:X.country_code.label},null,8,Rf)],8,Df),X.rop1?(se(),ae(Te,{key:0},[k[3]||(k[3]=Pt(" (",-1)),oe("span",{innerHTML:X.rop1_label?X.rop1_label:X.rop1.label},null,8,jf),k[4]||(k[4]=Pt(")",-1))],64)):De("",!0)])):De("",!0),X.matches?(se(!0),ae(Te,{key:1},Pn(X.matches,(Ne,Pe)=>(se(),ae("p",{key:Pe,class:"uupg__match"},[oe("strong",null,ke(Ne.key),1),k[5]||(k[5]=Pt(": ",-1)),oe("span",{innerHTML:Ne.label},null,8,Uf)]))),128)):De("",!0)]),X.location_description?(se(),ae("p",zf,ke(X.location_description),1)):De("",!0),oe("a",{class:"uupg__more-button",href:`${p.value}${X.slug}`},ke(A.value.full_profile||"Full Profile"),9,Wf)]))),128)),W.value?(se(),ae("div",qf,ke(A.value.loading||"Loading…"),1)):H.value?(se(),ae("div",Hf,ke(A.value.load_failed||"People-group data could not be loaded. This is a connection problem, not your filter."),1)):L.value.length?De("",!0):(se(),ae("div",Bf,ke(A.value.no_results||"No people groups match this filter."),1))],4),z.value?(se(),ae("button",{key:1,class:"pgg-loadmore",type:"button",onClick:y},ke(A.value.load_more||"Load More"),1)):De("",!0)])])}}}),[["styles",[_f]]]));typeof customElements<"u"&&(customElements.get("people-groups-grid")||customElements.define("people-groups-grid",Vf))})(); + */const Ep="9.14.5";function Np(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Hn().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Hn().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Hn().__INTLIFY_PROD_DEVTOOLS__=!1)}const Mp=rp.__EXTEND_POINT__,Dt=Io(Mp);Dt(),Dt(),Dt(),Dt(),Dt(),Dt(),Dt(),Dt(),Dt();const zi=At.__EXTEND_POINT__,Ke=Io(zi),Rt={UNEXPECTED_RETURN_TYPE:zi,INVALID_ARGUMENT:Ke(),MUST_BE_CALL_SETUP_TOP:Ke(),NOT_INSTALLED:Ke(),NOT_AVAILABLE_IN_LEGACY_MODE:Ke(),REQUIRED_VALUE:Ke(),INVALID_VALUE:Ke(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:Ke(),NOT_INSTALLED_WITH_PROVIDE:Ke(),UNEXPECTED_ERROR:Ke(),NOT_COMPATIBLE_LEGACY_VUE_I18N:Ke(),BRIDGE_SUPPORT_VUE_2_ONLY:Ke(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:Ke(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:Ke(),__EXTEND_POINT__:Ke()};function Bt(e,...t){return mn(e,null,void 0)}const Bs=nn("__translateVNode"),Vs=nn("__datetimeParts"),Ks=nn("__numberParts"),Pp=nn("__setPluralRules"),Wi=nn("__injectWithOption"),Gs=nn("__dispose");function Xn(e){if(!fe(e)||kt(e))return e;for(const t in e)if(dt(e,t))if(!t.includes("."))fe(e[t])&&Xn(e[t]);else{const n=t.split("."),o=n.length-1;let s=e,a=!1;for(let r=0;r{if("locale"in i&&"resource"in i){const{locale:l,resource:d}=i;l?(r[l]=r[l]||me(),Do(d,r[l])):Do(d,r)}else G(i)&&Do(JSON.parse(i),r)}),s==null&&a)for(const i in r)dt(r,i)&&Xn(r[i]);return r}function qi(e){return e.type}function Cp(e,t,n){let o=fe(t.messages)?t.messages:me();"__i18nGlobal"in n&&(o=Xs(e.locale.value,{messages:o,__i18n:n.__i18nGlobal}));const s=Object.keys(o);s.length&&s.forEach(a=>{e.mergeLocaleMessage(a,o[a])});{if(fe(t.datetimeFormats)){const a=Object.keys(t.datetimeFormats);a.length&&a.forEach(r=>{e.mergeDateTimeFormat(r,t.datetimeFormats[r])})}if(fe(t.numberFormats)){const a=Object.keys(t.numberFormats);a.length&&a.forEach(r=>{e.mergeNumberFormat(r,t.numberFormats[r])})}}}function Hi(e){return Me(Fn,null,e,0)}const Bi="__INTLIFY_META__",Vi=()=>[],Op=()=>!1;let Ki=0;function Gi(e){return(t,n,o,s)=>e(n,o,jn()||void 0,s)}const Ip=()=>{const e=jn();let t=null;return e&&(t=qi(e)[Bi])?{[Bi]:t}:null};function Fp(e={},t){const{__root:n,__injectWithOption:o}=e,s=n===void 0,a=e.flatJson,r=Kr?Ae:Ma,i=!!e.translateExistCompatible;let l=we(e.inheritLocale)?e.inheritLocale:!0;const d=r(n&&l?n.locale.value:G(e.locale)?e.locale:Kn),p=r(n&&l?n.fallbackLocale.value:G(e.fallbackLocale)||Pe(e.fallbackLocale)||ce(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:d.value),h=r(Xs(d.value,e)),m=r(ce(e.datetimeFormats)?e.datetimeFormats:{[d.value]:{}}),k=r(ce(e.numberFormats)?e.numberFormats:{[d.value]:{}});let D=n?n.missingWarn:we(e.missingWarn)||_n(e.missingWarn)?e.missingWarn:!0,E=n?n.fallbackWarn:we(e.fallbackWarn)||_n(e.fallbackWarn)?e.fallbackWarn:!0,z=n?n.fallbackRoot:we(e.fallbackRoot)?e.fallbackRoot:!0,N=!!e.fallbackFormat,H=Se(e.missing)?e.missing:null,w=Se(e.missing)?Gi(e.missing):null,b=Se(e.postTranslation)?e.postTranslation:null,P=n?n.warnHtmlMessage:we(e.warnHtmlMessage)?e.warnHtmlMessage:!0,x=!!e.escapeParameter;const O=n?n.modifiers:ce(e.modifiers)?e.modifiers:{};let q=e.pluralRules||n&&n.pluralRules,R;R=(()=>{s&&xi(null);const v={version:Ep,locale:d.value,fallbackLocale:p.value,messages:h.value,modifiers:O,pluralRules:q,missing:w===null?void 0:w,missingWarn:D,fallbackWarn:E,fallbackFormat:N,unresolving:!0,postTranslation:b===null?void 0:b,warnHtmlMessage:P,escapeParameter:x,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};v.datetimeFormats=m.value,v.numberFormats=k.value,v.__datetimeFormatters=ce(R)?R.__datetimeFormatters:void 0,v.__numberFormatters=ce(R)?R.__numberFormatters:void 0;const T=bp(v);return s&&xi(T),T})(),Gn(R,d.value,p.value);function X(){return[d.value,p.value,h.value,m.value,k.value]}const B=de({get:()=>d.value,set:v=>{d.value=v,R.locale=d.value}}),J=de({get:()=>p.value,set:v=>{p.value=v,R.fallbackLocale=p.value,Gn(R,d.value,v)}}),Ce=de(()=>h.value),se=de(()=>m.value),ue=de(()=>k.value);function ne(){return Se(b)?b:null}function ee(v){b=v,R.postTranslation=v}function xe(){return H}function Ge(v){v!==null&&(w=Gi(v)),H=v,R.missing=w}const $e=(v,T,Y,$,L,U)=>{X();let V;try{__INTLIFY_PROD_DEVTOOLS__,s||(R.fallbackContext=n?mp():void 0),V=v(R)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(R.fallbackContext=void 0)}if(Y!=="translate exists"&&Oe(V)&&V===Uo||Y==="translate exists"&&!V){const[oe,he]=T();return n&&z?$(n):L(oe)}else{if(U(V))return V;throw Bt(Rt.UNEXPECTED_RETURN_TYPE)}};function Te(...v){return $e(T=>Reflect.apply(Pi,null,[T,...v]),()=>Ws(...v),"translate",T=>Reflect.apply(T.t,T,[...v]),T=>T,T=>G(T))}function rt(...v){const[T,Y,$]=v;if($&&!fe($))throw Bt(Rt.INVALID_ARGUMENT);return Te(T,Y,je({resolvedMessage:!0},$||{}))}function Xe(...v){return $e(T=>Reflect.apply(Ii,null,[T,...v]),()=>qs(...v),"datetime format",T=>Reflect.apply(T.d,T,[...v]),()=>yi,T=>G(T))}function it(...v){return $e(T=>Reflect.apply(Ri,null,[T,...v]),()=>Hs(...v),"number format",T=>Reflect.apply(T.n,T,[...v]),()=>yi,T=>G(T))}function Ue(v){return v.map(T=>G(T)||Oe(T)||we(T)?Hi(String(T)):T)}const et={normalize:Ue,interpolate:v=>v,type:"vnode"};function St(...v){return $e(T=>{let Y;const $=T;try{$.processor=et,Y=Reflect.apply(Pi,null,[$,...v])}finally{$.processor=null}return Y},()=>Ws(...v),"translate",T=>T[Bs](...v),T=>[Hi(T)],T=>Pe(T))}function Je(...v){return $e(T=>Reflect.apply(Ri,null,[T,...v]),()=>Hs(...v),"number format",T=>T[Ks](...v),Vi,T=>G(T)||Pe(T))}function Ze(...v){return $e(T=>Reflect.apply(Ii,null,[T,...v]),()=>qs(...v),"datetime format",T=>T[Vs](...v),Vi,T=>G(T)||Pe(T))}function f(v){q=v,R.pluralRules=q}function _(v,T){return $e(()=>{if(!v)return!1;const Y=G(T)?T:d.value,$=C(Y),L=R.messageResolver($,v);return i?L!=null:kt(L)||at(L)||G(L)},()=>[v],"translate exists",Y=>Reflect.apply(Y.te,Y,[v,T]),Op,Y=>we(Y))}function g(v){let T=null;const Y=$i(R,p.value,d.value);for(let $=0;${l&&(d.value=v,R.locale=v,Gn(R,d.value,p.value))}),st(n.fallbackLocale,v=>{l&&(p.value=v,R.fallbackLocale=v,Gn(R,d.value,p.value))}));const I={id:Ki,locale:B,fallbackLocale:J,get inheritLocale(){return l},set inheritLocale(v){l=v,v&&n&&(d.value=n.locale.value,p.value=n.fallbackLocale.value,Gn(R,d.value,p.value))},get availableLocales(){return Object.keys(h.value).sort()},messages:Ce,get modifiers(){return O},get pluralRules(){return q||{}},get isGlobal(){return s},get missingWarn(){return D},set missingWarn(v){D=v,R.missingWarn=D},get fallbackWarn(){return E},set fallbackWarn(v){E=v,R.fallbackWarn=E},get fallbackRoot(){return z},set fallbackRoot(v){z=v},get fallbackFormat(){return N},set fallbackFormat(v){N=v,R.fallbackFormat=N},get warnHtmlMessage(){return P},set warnHtmlMessage(v){P=v,R.warnHtmlMessage=v},get escapeParameter(){return x},set escapeParameter(v){x=v,R.escapeParameter=v},t:Te,getLocaleMessage:C,setLocaleMessage:M,mergeLocaleMessage:j,getPostTranslationHandler:ne,setPostTranslationHandler:ee,getMissingHandler:xe,setMissingHandler:Ge,[Pp]:f};return I.datetimeFormats=se,I.numberFormats=ue,I.rt=rt,I.te=_,I.tm=A,I.d=Xe,I.n=it,I.getDateTimeFormat=F,I.setDateTimeFormat=c,I.mergeDateTimeFormat=u,I.getNumberFormat=y,I.setNumberFormat=S,I.mergeNumberFormat=W,I[Wi]=o,I[Bs]=St,I[Vs]=Ze,I[Ks]=Je,I}const Ys={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function Dp({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((o,s)=>[...o,...s.type===Ne?s.children:[s]],[]):t.reduce((n,o)=>{const s=e[o];return s&&(n[o]=s()),n},me())}function Xi(e){return Ne}je({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Oe(e)||!isNaN(e)}},Ys);function Rp(e){return Pe(e)&&!G(e[0])}function Yi(e,t,n,o){const{slots:s,attrs:a}=t;return()=>{const r={part:!0};let i=me();e.locale&&(r.locale=e.locale),G(e.format)?r.key=e.format:fe(e.format)&&(G(e.format.key)&&(r.key=e.format.key),i=Object.keys(e.format).reduce((m,k)=>n.includes(k)?je(me(),m,{[k]:e.format[k]}):m,me()));const l=o(e.value,r,i);let d=[r.key];Pe(l)?d=l.map((m,k)=>{const D=s[m.type],E=D?D({[m.type]:m.value,index:k,parts:l}):[m.value];return Rp(E)&&(E[0].key=`${m.type}-${k}`),E}):G(l)&&(d=[l]);const p=je(me(),a),h=G(e.tag)||fe(e.tag)?e.tag:Xi();return Er(h,p,d)}}je({value:{type:Number,required:!0},format:{type:[String,Object]}},Ys),je({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Ys);const jp=nn("global-vue-i18n");function Wo(e={}){const t=jn();if(t==null)throw Bt(Rt.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Bt(Rt.NOT_INSTALLED);const n=Up(t),o=Wp(n),s=qi(t),a=zp(e,s);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw Bt(Rt.NOT_AVAILABLE_IN_LEGACY_MODE);return Vp(t,a,o,e)}if(a==="global")return Cp(o,e,s),o;if(a==="parent"){let l=qp(n,t,e.__useComponent);return l==null&&(l=o),l}const r=n;let i=r.__getInstance(t);if(i==null){const l=je({},e);"__i18n"in s&&(l.__i18n=s.__i18n),o&&(l.__root=o),i=Fp(l),r.__composerExtend&&(i[Gs]=r.__composerExtend(i)),Bp(r,t,i),r.__setInstance(t,i)}return i}function Up(e){{const t=Nn(e.isCE?jp:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Bt(e.isCE?Rt.NOT_INSTALLED_WITH_PROVIDE:Rt.UNEXPECTED_ERROR);return t}}function zp(e,t){return Oo(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function Wp(e){return e.mode==="composition"?e.global:e.global.__composer}function qp(e,t,n=!1){let o=null;const s=t.root;let a=Hp(t,n);for(;a!=null;){const r=e;if(e.mode==="composition")o=r.__getInstance(a);else if(__VUE_I18N_LEGACY_API__){const i=r.__getInstance(a);i!=null&&(o=i.__composer,n&&o&&!o[Wi]&&(o=null))}if(o!=null||s===a)break;a=a.parent}return o}function Hp(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function Bp(e,t,n){ms(()=>{},t),yo(()=>{const o=n;e.__deleteInstance(t);const s=o[Gs];s&&(s(),delete o[Gs])},t)}function Vp(e,t,n,o={}){const s=t==="local",a=Ma(null);if(s&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Bt(Rt.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const r=we(o.inheritLocale)?o.inheritLocale:!G(o.locale),i=Ae(!s||r?n.locale.value:G(o.locale)?o.locale:Kn),l=Ae(!s||r?n.fallbackLocale.value:G(o.fallbackLocale)||Pe(o.fallbackLocale)||ce(o.fallbackLocale)||o.fallbackLocale===!1?o.fallbackLocale:i.value),d=Ae(Xs(i.value,o)),p=Ae(ce(o.datetimeFormats)?o.datetimeFormats:{[i.value]:{}}),h=Ae(ce(o.numberFormats)?o.numberFormats:{[i.value]:{}}),m=s?n.missingWarn:we(o.missingWarn)||_n(o.missingWarn)?o.missingWarn:!0,k=s?n.fallbackWarn:we(o.fallbackWarn)||_n(o.fallbackWarn)?o.fallbackWarn:!0,D=s?n.fallbackRoot:we(o.fallbackRoot)?o.fallbackRoot:!0,E=!!o.fallbackFormat,z=Se(o.missing)?o.missing:null,N=Se(o.postTranslation)?o.postTranslation:null,H=s?n.warnHtmlMessage:we(o.warnHtmlMessage)?o.warnHtmlMessage:!0,w=!!o.escapeParameter,b=s?n.modifiers:ce(o.modifiers)?o.modifiers:{},P=o.pluralRules||s&&n.pluralRules;function x(){return[i.value,l.value,d.value,p.value,h.value]}const O=de({get:()=>a.value?a.value.locale.value:i.value,set:g=>{a.value&&(a.value.locale.value=g),i.value=g}}),q=de({get:()=>a.value?a.value.fallbackLocale.value:l.value,set:g=>{a.value&&(a.value.fallbackLocale.value=g),l.value=g}}),R=de(()=>a.value?a.value.messages.value:d.value),ae=de(()=>p.value),X=de(()=>h.value);function B(){return a.value?a.value.getPostTranslationHandler():N}function J(g){a.value&&a.value.setPostTranslationHandler(g)}function Ce(){return a.value?a.value.getMissingHandler():z}function se(g){a.value&&a.value.setMissingHandler(g)}function ue(g){return x(),g()}function ne(...g){return a.value?ue(()=>Reflect.apply(a.value.t,null,[...g])):ue(()=>"")}function ee(...g){return a.value?Reflect.apply(a.value.rt,null,[...g]):""}function xe(...g){return a.value?ue(()=>Reflect.apply(a.value.d,null,[...g])):ue(()=>"")}function Ge(...g){return a.value?ue(()=>Reflect.apply(a.value.n,null,[...g])):ue(()=>"")}function $e(g){return a.value?a.value.tm(g):{}}function Te(g,A){return a.value?a.value.te(g,A):!1}function rt(g){return a.value?a.value.getLocaleMessage(g):{}}function Xe(g,A){a.value&&(a.value.setLocaleMessage(g,A),d.value[g]=A)}function it(g,A){a.value&&a.value.mergeLocaleMessage(g,A)}function Ue(g){return a.value?a.value.getDateTimeFormat(g):{}}function Ye(g,A){a.value&&(a.value.setDateTimeFormat(g,A),p.value[g]=A)}function et(g,A){a.value&&a.value.mergeDateTimeFormat(g,A)}function St(g){return a.value?a.value.getNumberFormat(g):{}}function Je(g,A){a.value&&(a.value.setNumberFormat(g,A),h.value[g]=A)}function Ze(g,A){a.value&&a.value.mergeNumberFormat(g,A)}const f={get id(){return a.value?a.value.id:-1},locale:O,fallbackLocale:q,messages:R,datetimeFormats:ae,numberFormats:X,get inheritLocale(){return a.value?a.value.inheritLocale:r},set inheritLocale(g){a.value&&(a.value.inheritLocale=g)},get availableLocales(){return a.value?a.value.availableLocales:Object.keys(d.value)},get modifiers(){return a.value?a.value.modifiers:b},get pluralRules(){return a.value?a.value.pluralRules:P},get isGlobal(){return a.value?a.value.isGlobal:!1},get missingWarn(){return a.value?a.value.missingWarn:m},set missingWarn(g){a.value&&(a.value.missingWarn=g)},get fallbackWarn(){return a.value?a.value.fallbackWarn:k},set fallbackWarn(g){a.value&&(a.value.missingWarn=g)},get fallbackRoot(){return a.value?a.value.fallbackRoot:D},set fallbackRoot(g){a.value&&(a.value.fallbackRoot=g)},get fallbackFormat(){return a.value?a.value.fallbackFormat:E},set fallbackFormat(g){a.value&&(a.value.fallbackFormat=g)},get warnHtmlMessage(){return a.value?a.value.warnHtmlMessage:H},set warnHtmlMessage(g){a.value&&(a.value.warnHtmlMessage=g)},get escapeParameter(){return a.value?a.value.escapeParameter:w},set escapeParameter(g){a.value&&(a.value.escapeParameter=g)},t:ne,getPostTranslationHandler:B,setPostTranslationHandler:J,getMissingHandler:Ce,setMissingHandler:se,rt:ee,d:xe,n:Ge,tm:$e,te:Te,getLocaleMessage:rt,setLocaleMessage:Xe,mergeLocaleMessage:it,getDateTimeFormat:Ue,setDateTimeFormat:Ye,mergeDateTimeFormat:et,getNumberFormat:St,setNumberFormat:Je,mergeNumberFormat:Ze};function _(g){g.locale.value=i.value,g.fallbackLocale.value=l.value,Object.keys(d.value).forEach(A=>{g.mergeLocaleMessage(A,d.value[A])}),Object.keys(p.value).forEach(A=>{g.mergeDateTimeFormat(A,p.value[A])}),Object.keys(h.value).forEach(A=>{g.mergeNumberFormat(A,h.value[A])}),g.escapeParameter=w,g.fallbackFormat=E,g.fallbackRoot=D,g.fallbackWarn=k,g.missingWarn=m,g.warnHtmlMessage=H}return Ga(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Bt(Rt.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const g=a.value=e.proxy.$i18n.__composer;t==="global"?(i.value=g.locale.value,l.value=g.fallbackLocale.value,d.value=g.messages.value,p.value=g.datetimeFormats.value,h.value=g.numberFormats.value):s&&_(g)}),f}if(Np(),pp(Ap),fp(Vd),gp($i),__INTLIFY_PROD_DEVTOOLS__){const e=Hn();e.__INTLIFY__=!0,tp(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const Kp=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:"جارٍ العمل…"},"./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/lists.json":{doxa:{label:"المشروع 2000: الشعوب التي تخدمها DOXA",definition:"الشعوب التي تخدمها DOXA كما تقدّمها قائمتها الحيّة"},unreached:{label:"المشروع 7000: الشعوب غير المُبشَّرة",definition:"أولوية الضياع لدى IMB من 0 إلى 2 (حدودية أو رائدة أو متوسّعة غير مُبشَّرة: أقل من 2% إنجيليون)"},frontier:{label:"المشروع 4700: الشعوب الحدودية",definition:"أولوية الضياع لدى IMB بقيمة 0 (حدودية غير مُبشَّرة: 0.1% إنجيليون أو أقل)"},"frontier-500k":{label:"المشروع 700: الشعوب الحدودية التي يبلغ عددها 500,000 أو أكثر",definition:"أولوية الضياع لدى IMB بقيمة 0 وعدد سكان لا يقل عن 500,000"},unengaged:{label:"الشعوب غير المُبشَّرة التي لم يُعمَل بينها",definition:"أولوية الضياع لدى IMB من 0 إلى 2 وحالة العمل: لم يُعمَل بينها"}},"./locales/ar/messages.json":{menuComingSoon:"القائمة قادمة قريباً",pinHint:{tapDot:"اضغط على نقطة ملوّنة — لا يزال هناك من يحتاج إلى الصلاة"},upg100WallHeading:"قائمتي UPG 100 — قوائم صلاة وملصقات",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"},"./locales/ar/religion.json":{family:{Christianity:"المسيحية",Islam:"الإسلام",Hinduism:"الهندوسية",Buddhism:"البوذية",Ethnoreligion:"الديانات العرقية",Judaism:"اليهودية",Sikhism:"السيخية",Unaffiliated:"غير منتمين",Other:"أخرى",Unknown:"غير معروف"}},"./locales/ar/search.json":{placeholder:"شعب، مكان، لغة، ديانة",placeholderNoPlaces:"شعب، لغة، ديانة (البحث عن الأماكن يتطلب رمز Mapbox)",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"},sections:{within:"ضمن {selection}",allData:"كل بيانات DOXA"},upg100Placeholder:"ابحث عن شعب أو قائمة UPG-100 أو منطقة…"},"./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…"},"./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/lists.json":{doxa:{label:"Projekt 2000: die Volksgruppen von DOXA",definition:"Die Volksgruppen, denen DOXA dient, wie seine Live-Liste sie angibt"},unreached:{label:"Projekt 7000: unerreichte Volksgruppen",definition:"IMB Lostness Priority 0–2 (Frontier, Pioneer oder Expanding Unreached: unter 2 % Evangelikale)"},frontier:{label:"Projekt 4700: Frontier-Volksgruppen",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0,1 % Evangelikale oder weniger)"},"frontier-500k":{label:"Projekt 700: Frontier-Volksgruppen mit 500.000 oder mehr Menschen",definition:"IMB Lostness Priority 0 und eine Bevölkerung von mindestens 500.000"},unengaged:{label:"Unerreichte Volksgruppen ohne Engagement",definition:"IMB Lostness Priority 0–2 und Engagement-Status: ohne Engagement"}},"./locales/de/messages.json":{menuComingSoon:"Menü folgt in Kürze",pinHint:{tapDot:"Tippe auf einen farbigen Punkt — jemand braucht noch Gebet"},upg100WallHeading:"Meine UPG-100-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"},"./locales/de/religion.json":{family:{Christianity:"Christentum",Islam:"Islam",Hinduism:"Hinduismus",Buddhism:"Buddhismus",Ethnoreligion:"Ethnische Religionen",Judaism:"Judentum",Sikhism:"Sikhismus",Unaffiliated:"Konfessionslos",Other:"Andere",Unknown:"Unbekannt"}},"./locales/de/search.json":{placeholder:"Volk, Ort, Sprache, Religion",placeholderNoPlaces:"Volk, Sprache, Religion (Ortssuche braucht ein Mapbox-Token)",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"},kinds:{people:"Volk + Land",peopleGroup:"Volk",bloc:"Affinitätsblock",cluster:"Völkercluster",country:"Land",region:"Region",family:"Sprachfamilie",languageKind:"Sprache",dialect:"Dialekt",religionKind:"Religion"},upg100Placeholder:"Volksgruppe, UPG-100-Liste oder Region suchen…"},"./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"},"./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/lists.json":{doxa:{label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them"},unreached:{label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)"},frontier:{label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)"},"frontier-500k":{label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000"},unengaged:{label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged"}},"./locales/en/messages.json":{menuComingSoon:"Menu coming soon",pinHint:{tapDot:"Tap a coloured dot — someone still needs prayer"},upg100WallHeading:"My UPG 100 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"},"./locales/en/religion.json":{family:{Christianity:"Christianity",Islam:"Islam",Hinduism:"Hinduism",Buddhism:"Buddhism",Ethnoreligion:"Ethnoreligion",Judaism:"Judaism",Sikhism:"Sikhism",Unaffiliated:"Unaffiliated",Other:"Other",Unknown:"Unknown"}},"./locales/en/search.json":{placeholder:"People, place, language, religion",placeholderNoPlaces:"People, language, religion (place search needs a Mapbox token)",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"},upg100Placeholder:"Search people group, UPG-100 list, or region…"},"./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…"},"./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/lists.json":{doxa:{label:"Proyecto 2000: los pueblos de DOXA",definition:"Los pueblos a los que sirve DOXA, tal como los da su lista en vivo"},unreached:{label:"Proyecto 7000: pueblos no alcanzados",definition:"Prioridad de perdición de IMB 0–2 (no alcanzados de frontera, pioneros o en expansión: menos del 2 % evangélicos)"},frontier:{label:"Proyecto 4700: pueblos de frontera",definition:"Prioridad de perdición de IMB 0 (no alcanzados de frontera: 0,1 % evangélicos o menos)"},"frontier-500k":{label:"Proyecto 700: pueblos de frontera de 500.000 o más",definition:"Prioridad de perdición de IMB 0 y una población de al menos 500.000"},unengaged:{label:"Pueblos no alcanzados y no atendidos",definition:"Prioridad de perdición de IMB 0–2 y estado de compromiso: no atendido"}},"./locales/es/messages.json":{menuComingSoon:"Menú próximamente",pinHint:{tapDot:"Toca un punto de color: alguien todavía necesita oración"},upg100WallHeading:"Mi lista UPG 100 — 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"},"./locales/es/religion.json":{family:{Christianity:"Cristianismo",Islam:"Islam",Hinduism:"Hinduismo",Buddhism:"Budismo",Ethnoreligion:"Etnorreligión",Judaism:"Judaísmo",Sikhism:"Sijismo",Unaffiliated:"Sin afiliación",Other:"Otra",Unknown:"Desconocida"}},"./locales/es/search.json":{placeholder:"Pueblo, lugar, idioma, religión",placeholderNoPlaces:"Pueblo, idioma, religión (buscar lugares requiere un token de Mapbox)",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"},sections:{within:"Dentro de {selection}",allData:"Todos los datos DOXA"},upg100Placeholder:"Buscar pueblo, lista UPG-100 o regió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…"},"./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/lists.json":{doxa:{label:"Projet 2000 : les peuples de DOXA",definition:"Les peuples que DOXA sert, tels que sa liste en direct les donne"},unreached:{label:"Projet 7000 : peuples non atteints",definition:"Priorité de perdition IMB 0–2 (non atteints frontières, pionniers ou en expansion : moins de 2 % d’évangéliques)"},frontier:{label:"Projet 4700 : peuples frontières",definition:"Priorité de perdition IMB 0 (non atteints frontières : 0,1 % d’évangéliques ou moins)"},"frontier-500k":{label:"Projet 700 : peuples frontières de 500 000 personnes ou plus",definition:"Priorité de perdition IMB 0 et une population d’au moins 500 000"},unengaged:{label:"Peuples non atteints et non engagés",definition:"Priorité de perdition IMB 0–2 et statut d’engagement : non engagé"}},"./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 UPG 100 — 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"},"./locales/fr/religion.json":{family:{Christianity:"Christianisme",Islam:"Islam",Hinduism:"Hindouisme",Buddhism:"Bouddhisme",Ethnoreligion:"Ethnoreligion",Judaism:"Judaïsme",Sikhism:"Sikhisme",Unaffiliated:"Sans appartenance",Other:"Autre",Unknown:"Inconnue"}},"./locales/fr/search.json":{placeholder:"Peuple, lieu, langue, religion",placeholderNoPlaces:"Peuple, langue, religion (la recherche de lieux requiert un jeton Mapbox)",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"},sections:{within:"Dans {selection}",allData:"Toutes les données DOXA"},upg100Placeholder:"Rechercher un peuple, une liste UPG-100 ou une région…"},"./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:"कार्य जारी…"},"./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/lists.json":{doxa:{label:"प्रोजेक्ट 2000: DOXA के जनसमूह",definition:"वे जनसमूह जिनकी DOXA सेवा करता है, जैसे उसकी लाइव सूची उन्हें देती है"},unreached:{label:"प्रोजेक्ट 7000: अपहुँचे जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 (फ़्रंटियर, पायनियर या एक्सपैंडिंग अपहुँचे: 2% से कम इवेंजेलिकल)"},frontier:{label:"प्रोजेक्ट 4700: फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 (फ़्रंटियर अपहुँचे: 0.1% या उससे कम इवेंजेलिकल)"},"frontier-500k":{label:"प्रोजेक्ट 700: 5,00,000 या उससे अधिक के फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 और कम से कम 5,00,000 की जनसंख्या"},unengaged:{label:"अपहुँचे और असंलग्न जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 और संलग्नता स्थिति: असंलग्न"}},"./locales/hi/messages.json":{menuComingSoon:"मेनू शीघ्र आ रहा है",pinHint:{tapDot:"किसी रंगीन बिंदु पर टैप करें — किसी को अभी भी प्रार्थना की आवश्यकता है"},upg100WallHeading:"मेरी UPG 100 सूची — प्रार्थना सूचियाँ और पोस्टर",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 दायरा"},"./locales/hi/religion.json":{family:{Christianity:"ईसाई धर्म",Islam:"इस्लाम",Hinduism:"हिंदू धर्म",Buddhism:"बौद्ध धर्म",Ethnoreligion:"जातीय धर्म",Judaism:"यहूदी धर्म",Sikhism:"सिख धर्म",Unaffiliated:"असंबद्ध",Other:"अन्य",Unknown:"अज्ञात"}},"./locales/hi/search.json":{placeholder:"लोग, स्थान, भाषा, धर्म",placeholderNoPlaces:"लोग, भाषा, धर्म (स्थान खोज के लिए Mapbox टोकन चाहिए)",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"},sections:{within:"{selection} के भीतर",allData:"सभी DOXA डेटा"},kinds:{people:"जनसमूह + देश",peopleGroup:"जनसमूह",bloc:"समानता समूह",cluster:"जनसमूह क्लस्टर",country:"देश",region:"क्षेत्र",family:"भाषा परिवार",languageKind:"भाषा",dialect:"बोली",religionKind:"धर्म"},upg100Placeholder:"जनसमूह, UPG-100 सूची या क्षेत्र खोजें…"},"./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…"},"./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/lists.json":{doxa:{label:"Progetto 2000: i popoli di DOXA",definition:"I popoli che DOXA serve, come li fornisce la sua lista in tempo reale"},unreached:{label:"Progetto 7000: popoli non raggiunti",definition:"Priorità di perdizione IMB 0–2 (non raggiunti di frontiera, pionieri o in espansione: meno del 2% evangelici)"},frontier:{label:"Progetto 4700: popoli di frontiera",definition:"Priorità di perdizione IMB 0 (non raggiunti di frontiera: 0,1% evangelici o meno)"},"frontier-500k":{label:"Progetto 700: popoli di frontiera di 500.000 o più",definition:"Priorità di perdizione IMB 0 e una popolazione di almeno 500.000"},unengaged:{label:"Popoli non raggiunti e non coinvolti",definition:"Priorità di perdizione IMB 0–2 e stato di coinvolgimento: non coinvolto"}},"./locales/it/messages.json":{menuComingSoon:"Menu in arrivo",pinHint:{tapDot:"Tocca un punto colorato — qualcuno ha ancora bisogno di preghiera"},upg100WallHeading:"La mia lista UPG 100 — 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"},"./locales/it/religion.json":{family:{Christianity:"Cristianesimo",Islam:"Islam",Hinduism:"Induismo",Buddhism:"Buddhismo",Ethnoreligion:"Etnoreligione",Judaism:"Ebraismo",Sikhism:"Sikhismo",Unaffiliated:"Senza affiliazione",Other:"Altro",Unknown:"Sconosciuta"}},"./locales/it/search.json":{placeholder:"Popolo, luogo, lingua, religione",placeholderNoPlaces:"Popolo, lingua, religione (la ricerca di luoghi richiede un token Mapbox)",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"},sections:{within:"In {selection}",allData:"Tutti i dati DOXA"},kinds:{people:"Popolo + paese",peopleGroup:"Popolo",bloc:"Blocco di affinità",cluster:"Cluster di popoli",country:"Paese",region:"Regione",family:"Famiglia linguistica",languageKind:"Lingua",dialect:"Dialetto",religionKind:"Religione"},upg100Placeholder:"Cerca popolo, elenco UPG-100 o regione…"},"./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…"},"./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/lists.json":{doxa:{label:"Projeto 2000: os povos da DOXA",definition:"Os povos que a DOXA serve, como a sua lista ao vivo os apresenta"},unreached:{label:"Projeto 7000: povos não alcançados",definition:"Prioridade de perdição do IMB 0–2 (não alcançados de fronteira, pioneiros ou em expansão: menos de 2% evangélicos)"},frontier:{label:"Projeto 4700: povos de fronteira",definition:"Prioridade de perdição do IMB 0 (não alcançados de fronteira: 0,1% evangélicos ou menos)"},"frontier-500k":{label:"Projeto 700: povos de fronteira de 500.000 ou mais",definition:"Prioridade de perdição do IMB 0 e uma população de pelo menos 500.000"},unengaged:{label:"Povos não alcançados e não engajados",definition:"Prioridade de perdição do IMB 0–2 e estado de engajamento: não engajado"}},"./locales/pt/messages.json":{menuComingSoon:"Menu em breve",pinHint:{tapDot:"Toque num ponto colorido — alguém ainda precisa de oração"},upg100WallHeading:"Minha lista UPG 100 — 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"},"./locales/pt/religion.json":{family:{Christianity:"Cristianismo",Islam:"Islão",Hinduism:"Hinduísmo",Buddhism:"Budismo",Ethnoreligion:"Etnorreligião",Judaism:"Judaísmo",Sikhism:"Siquismo",Unaffiliated:"Sem afiliação",Other:"Outra",Unknown:"Desconhecida"}},"./locales/pt/search.json":{placeholder:"Povo, local, língua, religião",placeholderNoPlaces:"Povo, língua, religião (a busca de locais requer um token do Mapbox)",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"},sections:{within:"Dentro de {selection}",allData:"Todos os dados DOXA"},upg100Placeholder:"Procurar povo, lista UPG-100 ou região…"},"./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ă…"},"./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/lists.json":{doxa:{label:"Proiectul 2000: popoarele DOXA",definition:"Popoarele pe care DOXA le slujește, așa cum le dă lista sa live"},unreached:{label:"Proiectul 7000: popoare neatinse",definition:"Prioritatea de pierzare IMB 0–2 (neatinse de frontieră, pionier sau în expansiune: sub 2% evanghelici)"},frontier:{label:"Proiectul 4700: popoare de frontieră",definition:"Prioritatea de pierzare IMB 0 (neatinse de frontieră: 0,1% evanghelici sau mai puțin)"},"frontier-500k":{label:"Proiectul 700: popoare de frontieră de 500.000 sau mai mult",definition:"Prioritatea de pierzare IMB 0 și o populație de cel puțin 500.000"},unengaged:{label:"Popoare neatinse și neangajate",definition:"Prioritatea de pierzare IMB 0–2 și starea de angajare: neangajat"}},"./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 UPG 100 — 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"},"./locales/ro/religion.json":{family:{Christianity:"Creștinism",Islam:"Islam",Hinduism:"Hinduism",Buddhism:"Budism",Ethnoreligion:"Etnoreligie",Judaism:"Iudaism",Sikhism:"Sikhism",Unaffiliated:"Fără afiliere",Other:"Altele",Unknown:"Necunoscută"}},"./locales/ro/search.json":{placeholder:"Popor, loc, limbă, religie",placeholderNoPlaces:"Popor, limbă, religie (căutarea locurilor necesită un token Mapbox)",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"},sections:{within:"În {selection}",allData:"Toate datele DOXA"},kinds:{people:"Popor + țară",peopleGroup:"Popor",bloc:"Bloc de afinitate",cluster:"Grup de popoare",country:"Țară",region:"Regiune",family:"Familie de limbi",languageKind:"Limbă",dialect:"Dialect",religionKind:"Religie"},upg100Placeholder:"Caută popor, listă UPG-100 sau regiune…"},"./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:"Выполняется…"},"./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/lists.json":{doxa:{label:"Проект 2000: народы DOXA",definition:"Народы, которым служит DOXA, как их даёт её живой список"},unreached:{label:"Проект 7000: недостигнутые народы",definition:"Приоритет потерянности IMB 0–2 (пограничные, первопроходческие или расширяющиеся недостигнутые: менее 2% евангельских христиан)"},frontier:{label:"Проект 4700: пограничные народы",definition:"Приоритет потерянности IMB 0 (пограничные недостигнутые: 0,1% евангельских христиан или меньше)"},"frontier-500k":{label:"Проект 700: пограничные народы численностью от 500 000",definition:"Приоритет потерянности IMB 0 и численность не менее 500 000"},unengaged:{label:"Недостигнутые народы без служения",definition:"Приоритет потерянности IMB 0–2 и статус служения: без служения"}},"./locales/ru/messages.json":{menuComingSoon:"Меню скоро появится",pinHint:{tapDot:"Нажмите на цветную точку — кому-то всё ещё нужна молитва"},upg100WallHeading:"Мой список UPG 100 — молитвенные списки и плакаты",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"},"./locales/ru/religion.json":{family:{Christianity:"Христианство",Islam:"Ислам",Hinduism:"Индуизм",Buddhism:"Буддизм",Ethnoreligion:"Этнорелигия",Judaism:"Иудаизм",Sikhism:"Сикхизм",Unaffiliated:"Не принадлежат",Other:"Другое",Unknown:"Неизвестно"}},"./locales/ru/search.json":{placeholder:"Народ, место, язык, религия",placeholderNoPlaces:"Народ, язык, религия (для поиска мест нужен токен Mapbox)",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"},sections:{within:"В пределах {selection}",allData:"Все данные DOXA"},upg100Placeholder:"Поиск народа, списка UPG-100 или региона…"},"./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:"处理中…"},"./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/lists.json":{doxa:{label:"2000 计划:DOXA 服侍的族群",definition:"DOXA 服侍的族群,以其实时名单为准"},unreached:{label:"7000 计划:未得之民族群",definition:"IMB 失丧优先级 0–2(前沿、先锋或扩展中的未得之民:福音派少于 2%)"},frontier:{label:"4700 计划:前沿族群",definition:"IMB 失丧优先级 0(前沿未得之民:福音派 0.1% 或更少)"},"frontier-500k":{label:"700 计划:人口 50 万或以上的前沿族群",definition:"IMB 失丧优先级 0,且人口至少 50 万"},unengaged:{label:"尚无人参与的未得之民族群",definition:"IMB 失丧优先级 0–2,且参与状态为:无人参与"}},"./locales/zh/messages.json":{menuComingSoon:"菜单即将推出",pinHint:{tapDot:"点按一个彩色圆点——仍有人需要祷告"},upg100WallHeading:"我的 UPG 100 名单 — 祷告名单与海报",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 区间"},"./locales/zh/religion.json":{family:{Christianity:"基督教",Islam:"伊斯兰教",Hinduism:"印度教",Buddhism:"佛教",Ethnoreligion:"民族宗教",Judaism:"犹太教",Sikhism:"锡克教",Unaffiliated:"无宗教归属",Other:"其他",Unknown:"未知"}},"./locales/zh/search.json":{placeholder:"民族、地点、语言、宗教",placeholderNoPlaces:"民族、语言、宗教(地点搜索需要 Mapbox 令牌)",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"},sections:{within:"在 {selection} 之內",allData:"所有 DOXA 资料"},kinds:{people:"民族 + 国家",peopleGroup:"民族",bloc:"亲缘板块",cluster:"民族群",country:"国家",region:"区域",family:"语系",languageKind:"语言",dialect:"方言",religionKind:"宗教"},upg100Placeholder:"搜索民族、UPG-100 名单或区域…"}}),Yn={};for(const[e,t]of Object.entries(Kp)){const n=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!n)continue;const[,o,s]=n;Yn[o]??(Yn[o]={}),Yn[o][s]=t}const Ji=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"],Gp=new Set(["ar"]);function Zi(){try{const e=new URLSearchParams(window.location.search);return(e.get("lang")||e.get("locale")||"").split("-")[0].toLowerCase()}catch{return""}}function Qi(){var o;const e=Zi();if(Ji.includes(e))return e;const n=(((o=document==null?void 0:document.documentElement)==null?void 0:o.lang)||"").split("-")[0].toLowerCase();return Ji.includes(n)?n:"en"}const Xp="__DOXA_PAGE_LOCALE";function el(){try{return typeof window<"u"&&window[Xp]||""}catch{return""}}function tl(e,t){const n=s=>{let a=Yn[s];for(const r of String(e).split(".")){if(!a||typeof a!="object")return;a=a[r]}return typeof a=="string"?a:void 0},o=t||el()||Qi();return n(o)??n("en")}function nl(e,t){return t?String(e).replace(/\{(\w+)\}/g,(n,o)=>t[o]!=null?String(t[o]):n):String(e)}function Js(e,t){const n=String(t);return e&&!n.startsWith(`${e}.`)?`${e}.${n}`:n}function Yp(e,t={}){const n=typeof t.fallback=="function"?(o,s)=>nl(t.fallback(Js(e,o),s)??o,s):(o,s)=>nl(tl(Js(e,o))??o,s);try{const o=Wo();return(s,a)=>{const r=Js(e,s),i=o.t(r,a||{});return i===r?n(s,a):i}}catch{return n}}const Jp=".filter-dropdown{position:relative;flex:0 0 auto;width:var(--dx-filter-w, 128px);min-width:var(--dx-filter-w, 128px);max-width:var(--dx-filter-w, 128px)}@media (max-width: 576px){.filter-dropdown{width:var(--dx-filter-w-sm, 108px);min-width:var(--dx-filter-w-sm, 108px);max-width:var(--dx-filter-w-sm, 108px)}}.filter-dropdown__trigger{width:100%;padding:var(--dx-filter-pad-y, 4px) var(--dx-filter-pad-x, 8px);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:.875rem;color:var(--dx-text, #3b463d);text-align:start;background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;transition:border-color .15s ease}.filter-dropdown__trigger:hover{border-color:var(--dx-accent, #92b195)}.filter-dropdown__trigger[data-active]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));border-color:var(--dx-accent, #92b195)}.filter-dropdown__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-dropdown__chevron{flex-shrink:0;transition:transform .2s ease}.filter-dropdown.is-open .filter-dropdown__chevron{transform:rotate(180deg)}.filter-dropdown__menu{position:fixed;z-index:2147483000;background-color:var(--dx-elevated, #fff);color:var(--dx-text, #3b463d);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;box-shadow:0 4px 12px #0000001f;overflow:hidden;display:flex;flex-direction:column;min-width:160px}.filter-dropdown__search{border:none;border-bottom:1px solid var(--dx-line, #d1d4cd);border-radius:0;padding:6px 12px;width:100%;font-size:.875rem;color:var(--dx-text, #3b463d);background:var(--dx-elevated, #fff);outline:none;box-sizing:border-box}.filter-dropdown__search::placeholder{color:var(--dx-muted, #6d766e)}.filter-dropdown__clear{display:block;width:100%;background:none;border:none;border-bottom:1px solid var(--dx-line, #d1d4cd);padding:6px 12px;font-size:.875rem;color:var(--dx-text, #3b463d);cursor:pointer;text-align:start;text-decoration:underline;text-decoration-color:var(--dx-accent, #92b195);text-underline-offset:3px}.filter-dropdown__clear:hover{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18))}.filter-dropdown__options{flex:1 1 auto;min-height:0;max-height:250px;overflow-y:auto}.filter-dropdown__search,.filter-dropdown__clear{flex:0 0 auto}.filter-dropdown__option{padding:5px 12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.875rem;transition:background-color .1s ease}.filter-dropdown__option[data-selected]{font-weight:700;color:var(--dx-text, #3b463d);box-shadow:inset 3px 0 0 var(--dx-accent, #92b195)}.filter-dropdown__option:hover,.filter-dropdown__option[data-highlighted]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18))}.filter-dropdown__count{color:var(--dx-muted, #6d766e);font-size:.75rem;margin-inline-start:6px}.filter-dropdown__no-options{padding:12px;font-size:.875rem;color:var(--dx-muted, #6d766e);text-align:center}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}",Zp=["data-active","aria-expanded"],Qp={class:"filter-dropdown__label"},ef=["value","placeholder"],tf={class:"filter-dropdown__options"},nf={key:0,class:"filter-dropdown__no-options"},of=["data-highlighted","data-selected","aria-selected","onClick","onMouseenter"],sf={class:"filter-dropdown__count"},qo=Ps({__name:"FilterDropdown",props:{label:{type:String,required:!0},name:{type:String,required:!0},options:{type:Array,default:()=>[]},value:{type:String,default:""},placeholder:{type:String,default:"Type to search..."}},emits:["filter-change","filter-clear"],setup(e,{emit:t}){const n=e,o={"buttons.clearSelection":"Clear selection","buttons.noOptions":"No options found"},s=Yp("",{fallback:X=>o[X]}),a=t,r=Ae(!1),i=Ae(""),l=Ae(-1),d=Ae(null),p=Ae(null),h=Ae(null),m=Ae({});function k(X){const B=X.ownerDocument,J=B.createElement("div");J.style.cssText="position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;opacity:0",(X.parentElement||X.getRootNode().body||B.body).appendChild(J);const se=J.getBoundingClientRect();return J.remove(),{x:se.left,y:se.top}}function D(){const X=h.value;if(!X)return;const B=X.getBoundingClientRect(),J=window.innerWidth,Ce=window.innerHeight,se=320,ue=4,ne=8,xe=Math.round(Math.min(Math.max(B.width,240),J-ne*2)),Ge=B.right>ne&&B.leftJ-ne?$e=Math.round(Math.max(B.right-xe,ne)):$e=Math.round(Math.max(B.left,ne)):$e=Math.round(Math.min(Math.max(B.left,ne),J-xe-ne));const Te=Ce-B.bottom,rt=Te<180&&B.top>Te,Xe=k(X),it=Math.round($e-Xe.x);m.value=rt?{top:"auto",bottom:`${Math.round(Ce-B.top+ue+Xe.y)}px`,left:`${it}px`,width:`${xe}px`,maxHeight:`${Math.round(Math.min(se,B.top-ue-ne))}px`}:{top:`${Math.round(B.bottom+ue-Xe.y)}px`,bottom:"auto",left:`${it}px`,width:`${xe}px`,maxHeight:`${Math.round(Math.min(se,Te-ue-ne))}px`}}function E(){r.value&&D()}const z=de(()=>{if(!i.value)return n.options;const X=i.value.toLowerCase();return n.options.filter(B=>B.label.toLowerCase().includes(X))}),N=de(()=>n.options.find(X=>X.value===n.value));function H(X){var J;const B=((J=X.composedPath)==null?void 0:J.call(X))??[];d.value&&!B.includes(d.value)&&P()}function w(){r.value?P():b()}function b(){r.value=!0,i.value="",l.value=-1,D(),document.addEventListener("click",H),window.addEventListener("scroll",E,!0),window.addEventListener("resize",E),xn(()=>{var X;D(),(X=p.value)==null||X.focus()})}function P(){r.value=!1,i.value="",l.value=-1,document.removeEventListener("click",H),window.removeEventListener("scroll",E,!0),window.removeEventListener("resize",E)}function x(X){i.value=X.target.value,l.value=-1}function O(X){const B=z.value;switch(X.key){case"ArrowDown":X.preventDefault(),l.value=Math.min(l.value+1,B.length-1),q();break;case"ArrowUp":X.preventDefault(),l.value=Math.max(l.value-1,0),q();break;case"Enter":{X.preventDefault();const J=B[l.value];J&&R(J);break}case"Escape":X.preventDefault(),P();break}}function q(){xn(()=>{var B;const X=(B=d.value)==null?void 0:B.querySelector(".filter-dropdown__option[data-highlighted]");X==null||X.scrollIntoView({block:"nearest"})})}function R(X){a("filter-change",{name:n.name,value:X.value,label:X.label,type:X.type}),P()}function ae(){a("filter-clear",{name:n.name}),P()}return Xa(()=>{document.removeEventListener("click",H),window.removeEventListener("scroll",E,!0),window.removeEventListener("resize",E)}),(X,B)=>(ie(),le("div",{ref_key:"rootRef",ref:d,class:ao(["filter-dropdown",{"is-open":r.value}])},[re("button",{ref_key:"triggerRef",ref:h,class:"filter-dropdown__trigger input","data-active":e.value?"":void 0,type:"button","aria-haspopup":"listbox","aria-expanded":r.value,onClick:w},[re("span",Qp,[N.value?(ie(),le(Ne,{key:0},[Pt(Le(e.label)+": ",1),re("strong",null,Le(N.value.label),1)],64)):(ie(),le(Ne,{key:1},[Pt(Le(e.label),1)],64))]),B[0]||(B[0]=re("svg",{class:"filter-dropdown__chevron",width:"12",height:"12",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg"},[re("path",{d:"M2 4l4 4 4-4",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],8,Zp),r.value?(ie(),le("div",{key:0,class:"filter-dropdown__menu",role:"listbox",style:Gt(m.value)},[re("input",{ref_key:"searchInputRef",ref:p,class:"filter-dropdown__search",type:"text",value:i.value,placeholder:e.placeholder,onInput:x,onKeydown:O},null,40,ef),e.value?(ie(),le("button",{key:0,class:"filter-dropdown__clear",type:"button",onClick:ae},Le(Jt(s)("buttons.clearSelection")),1)):De("",!0),re("div",tf,[z.value.length===0?(ie(),le("div",nf,Le(Jt(s)("buttons.noOptions")),1)):(ie(!0),le(Ne,{key:1},Cn(z.value,(J,Ce)=>(ie(),le("div",{key:J.value,class:"filter-dropdown__option",role:"option","data-highlighted":Ce===l.value?"":void 0,"data-selected":J.value===e.value?"":void 0,"aria-selected":J.value===e.value,onClick:se=>R(J),onMouseenter:se=>l.value=Ce},[re("span",null,Le(J.label),1),re("span",sf,Le(J.count),1)],40,of))),128))])],4)):De("",!0)],2))}},[["styles",[Jp]]]),af=Vo&&Vo.tagName.toUpperCase()==="SCRIPT"&&Vo.src||new URL("people-groups-grid.js",document.baseURI).href,Jn=e=>String(e||"").trim().replace(/\/+$/,"");function rf(){try{const t=String(af||"").split(/[?#]/)[0].match(/^(.*)\/([^/]+)\/([^/]+)\.js$/);return!t||t[2]!==t[3]?null:t[1]||null}catch{return null}}function ol(e){const t=e==null?void 0:e.assetsBase;if(typeof t=="string"&&t.trim()){const o=Jn(t);if(/^https?:\/\//i.test(o)||o.startsWith("/"))return o}const n=Jn((e==null?void 0:e.treeBase)||"")||Jn(rf()||"");if(n)try{const o=typeof document<"u"?document.baseURI:void 0;return Jn(new URL(n+"/assets",o).href)}catch{return Jn(n+"/assets")}return"./assets"}const lf="en-US",sl=e=>Number(e).toLocaleString(lf),Zs={default:"doxa",lists:[{id:"doxa",aliases:["2000","project-2000"],label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them",source:"doxa",filter:null},{id:"unreached",aliases:["7000","project-7000"],label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)",source:"imb",filter:{lostness:[0,1,2]}},{id:"frontier",aliases:["4700","project-4700"],label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)",source:"imb",filter:{lostness:[0]}},{id:"frontier-500k",aliases:["700","project-700"],label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000",source:"imb",filter:{lostness:[0],minPopulation:5e5}},{id:"unengaged",aliases:[],label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged",source:"imb",filter:{lostness:[0,1,2],engagement:["Unengaged"]}}]},Ho=Zs.default,Qs=new Map;for(const e of Zs.lists){Qs.set(e.id,e);for(const t of e.aliases||[])Qs.set(String(t).toLowerCase(),e)}function cf(e){return Qs.get(String(e??"").toLowerCase().trim())||null}function al(e){let t=e;if(t&&typeof t=="object"&&"value"in t&&!("list"in t)&&!("profile"in t)&&(t=t.value),typeof t=="string")try{t=JSON.parse(t)}catch{t=null}return t&&typeof t=="object"?t:null}const rl=new Set;function uf(e){const t=al(e),n=t==null?void 0:t.list,o=typeof location<"u"?new URLSearchParams(location.search).get("list"):null,s=typeof window<"u"?window.MAP_LIST:void 0,a=n||o||s||Ho,r=cf(a);return r?r.id:(rl.has(a)||(rl.add(a),console.warn(`[list] unknown people-group list "${a}", showing "${Ho}". Known: ${Zs.lists.map(i=>i.id).join(", ")}`)),Ho)}const Bo=new Map;function df(e,t){const n=`${ol(al(t))}/people-groups/lists/${e}.json`;return Bo.has(n)||Bo.set(n,fetch(n).then(o=>{if(!o.ok)throw new Error(`HTTP ${o.status}`);return o.json()}).then(o=>new Set(Array.isArray(o==null?void 0:o.slugs)?o.slugs:[])).catch(o=>{throw Bo.delete(n),new Error(`list "${e}" membership ${n}: ${o.message}`)})),Bo.get(n)}async function pf(e,t,{key:n=o=>o==null?void 0:o.slug}={}){const o=uf(t);if(o===Ho||!Array.isArray(e))return e;try{const s=await df(o,t);return e.filter(a=>s.has(n(a)))}catch(s){return console.error(`[list] ${s.message}. Showing no people groups rather than the wrong list.`),[]}}function ff(e,t){return String(t||e||"").trim().toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}const il={C:"Christianity",M:"Islam",H:"Hinduism",B:"Buddhism",E:"Ethnoreligion",J:"Judaism",S:"Sikhism",N:"Unaffiliated",O:"Other",U:"Unknown"},gf={"Indo-European":"#e74c3c",Dravidian:"#ff9800","Afro-Asiatic":"#27ae60","Sino-Tibetan":"#3498db","Niger-Congo":"#9b59b6",Unclassified:"#95a5a6","Nilo-Saharan":"#e91e63","Khoe-Kwadi":"#00bcd4","Austro-Asiatic":"#00bcd4","Kra-Dai":"#8e44ad",Austronesian:"#ff69b4","Hmong-Mien":"#f44336",Turkic:"#ffc107","Nakh-Daghestanian":"#009688",Mongolic:"#795548",Uralic:"#607d8b",Tungusic:"#4caf50",Japonic:"#ff5722",Cariban:"#673ab7",Tupian:"#03a9f4",Tucanoan:"#8bc34a",Maipurean:"#ffc107",Panoan:"#cddc39",Guajiboan:"#9e9e9e",Chibchan:"#ff7043",Quechuan:"#ab47bc",Jean:"#26a69a",Harákmbut:"#7e57c2",Nambikwara:"#42a5f5",Muran:"#66bb6a",Karajá:"#ffa726",Bororoan:"#ef5350",Arauan:"#5c6bc0",Yanomaman:"#26c6da",Yaguan:"#d4e157",Witotoan:"#78909c",Zamucoan:"#8d6e63",Puinavean:"#aed581",Barbacoan:"#4db6ac","Eyak-Athabaskan":"#7986cb","Trans-New Guinea":"#ba68c8",Andamanese:"#4dd0e1","Atlantic-Congo":"#7D3C98",Mande:"#B9770E","Sign Language":"#212121",Creole:"#9575cd","Mixed language":"#a1887f","Language isolate":"#90a4ae",Unknown:"#000000"},hf=(()=>{const e=n=>String(n||"").toLowerCase().trim(),t={};for(const n of Object.keys(gf))t[e(n)]=n;return t})(),_f={"tai-kadai":"Kra-Dai",none:"Unknown"};function ll(e){if(!e)return"Unknown";const t=String(e).trim(),n=t.toLowerCase();return _f[n]||hf[n]||t}const mf={aar:"Afro-Asiatic",abf:"Austronesian",abl:"Austronesian",abv:"Afro-Asiatic",acm:"Afro-Asiatic",acq:"Afro-Asiatic",acw:"Afro-Asiatic",acx:"Afro-Asiatic",adh:"Nilo-Saharan",adi:"Sino-Tibetan",adw:"Tupian",adx:"Sino-Tibetan",aen:"Sign Language",afb:"Afro-Asiatic",afg:"Sign Language",afr:"Indo-European",aft:"Nilo-Saharan",agx:"Nakh-Daghestanian",ahk:"Sino-Tibetan",aib:"Turkic",aih:"Kra-Dai",aio:"Kra-Dai",ajp:"Afro-Asiatic",aju:"Afro-Asiatic",aks:"Niger-Congo",akv:"Nakh-Daghestanian",alk:"Austro-Asiatic",alo:"Austronesian",alw:"Afro-Asiatic",amc:"Panoan",amh:"Afro-Asiatic",amr:"Harákmbut",amv:"Austronesian",ani:"Nakh-Daghestanian",anp:"Indo-European",anq:"Andamanese",aoc:"Cariban",apc:"Afro-Asiatic",apd:"Afro-Asiatic",arb:"Afro-Asiatic",arq:"Afro-Asiatic",arr:"Tupian",ars:"Afro-Asiatic",arv:"Afro-Asiatic",ary:"Afro-Asiatic",ase:"Sign Language",asl:"Austronesian",asm:"Indo-European",asn:"Tupian",asp:"Sign Language",atr:"Cariban",avd:"Indo-European",avl:"Afro-Asiatic",avv:"Tupian",awe:"Tupian",awt:"Tupian",ayh:"Afro-Asiatic",ayl:"Afro-Asiatic",ayn:"Afro-Asiatic",azb:"Turkic",bao:"Tucanoan",bbh:"Austro-Asiatic",bcc:"Indo-European",bcz:"Niger-Congo",bdg:"Austronesian",bdi:"Nilo-Saharan",bdj:"Niger-Congo",bdm:"Afro-Asiatic",bdo:"Nilo-Saharan",bee:"Sino-Tibetan",bej:"Afro-Asiatic",bem:"Niger-Congo",ben:"Indo-European",bfi:"Sign Language",bfu:"Sino-Tibetan",bfw:"Austro-Asiatic",bfy:"Indo-European",bgc:"Indo-European",bgg:"Sino-Tibetan",bgk:"Austro-Asiatic",bgl:"Austro-Asiatic",bgn:"Indo-European",bgp:"Indo-European",bgq:"Indo-European",bho:"Indo-European",bhu:"Indo-European",bid:"Afro-Asiatic",bjj:"Indo-European",bkk:"Indo-European",blf:"Austronesian",blm:"Nilo-Saharan",blo:"Niger-Congo",bls:"Austronesian",blt:"Kra-Dai",bly:"Niger-Congo",bma:"Niger-Congo",bmr:"Witotoan",bna:"Austronesian",bns:"Indo-European",bor:"Bororoan",bos:"Indo-European",bph:"Nakh-Daghestanian",bqg:"Niger-Congo",bqj:"Niger-Congo",bqk:"Niger-Congo",bqn:"Sign Language",bqx:"Niger-Congo",bra:"Indo-European",brb:"Austro-Asiatic",bro:"Sino-Tibetan",brx:"Sino-Tibetan",bsb:"Austronesian",bsg:"Indo-European",bsk:"Language isolate",bsy:"Austronesian",btd:"Austronesian",btf:"Afro-Asiatic",btv:"Indo-European",btx:"Austronesian",btz:"Austronesian",bub:"Niger-Congo",buh:"Hmong-Mien",bva:"Afro-Asiatic",bvf:"Afro-Asiatic",bvi:"Niger-Congo",bvo:"Niger-Congo",bwi:"Maipurean",bwn:"Hmong-Mien",bwx:"Hmong-Mien",bxr:"Mongolic",bxu:"Mongolic",bxw:"Niger-Congo",byn:"Afro-Asiatic",byo:"Sino-Tibetan",bze:"Niger-Congo",bzx:"Niger-Congo",cat:"Indo-European",cbb:"Maipurean",cbc:"Tucanoan",cbi:"Barbacoan",cbn:"Austro-Asiatic",cby:"Unclassified",cdh:"Indo-European",cdn:"Sino-Tibetan",cdz:"Austro-Asiatic",ceg:"Zamucoan",cgk:"Sino-Tibetan",che:"Nakh-Daghestanian",cib:"Niger-Congo",cji:"Nakh-Daghestanian",ckh:"Sino-Tibetan",ckq:"Afro-Asiatic",clk:"Sino-Tibetan",cmn:"Sino-Tibetan",cnq:"Niger-Congo",cnu:"Afro-Asiatic",coa:"Creole",cog:"Austro-Asiatic",cpu:"Maipurean",cqd:"Hmong-Mien",csf:"Sign Language",csx:"Sign language",cub:"Tucanoan",cui:"Guajiboan",cuu:"Kra-Dai",daa:"Afro-Asiatic",daj:"Nilo-Saharan",dar:"Nakh-Daghestanian",dau:"Nilo-Saharan",dba:"Language isolate",dbb:"Afro-Asiatic",dbp:"Afro-Asiatic",dbr:"Afro-Asiatic",ddn:"Nilo-Saharan",deg:"Niger-Congo",dek:"Niger-Congo",des:"Tucanoan",dgo:"Indo-European",dgs:"Niger-Congo",dhd:"Indo-European",dhi:"Sino-Tibetan",dhm:"Niger-Congo",dil:"Nilo-Saharan",diu:"Niger-Congo",div:"Indo-European",djc:"Nilo-Saharan",dkg:"Niger-Congo",dln:"Sino-Tibetan",dml:"Indo-European",dms:"Austronesian",dnu:"Austro-Asiatic",doc:"Kra-Dai",dok:"Austronesian",dox:"Afro-Asiatic",dru:"Austronesian",dse:"Sign Language",dsh:"Afro-Asiatic",dsl:"Sign Language",dsq:"Nilo-Saharan",dta:"Mongolic",dtp:"Austronesian",dyu:"Niger-Congo",dzg:"Nilo-Saharan",dzl:"Sino-Tibetan",eng:"Indo-European",enn:"Niger-Congo",epi:"Niger-Congo",ers:"Sino-Tibetan",esl:"Sign Language",evn:"Tungusic",fin:"Uralic",fni:"Niger-Congo",fod:"Niger-Congo",fra:"Indo-European",fsl:"Sign Language",fub:"Niger-Congo",fuc:"Niger-Congo",fuf:"Niger-Congo",fuj:"Niger-Congo",fvr:"Nilo-Saharan",fwe:"Niger-Congo",gax:"Afro-Asiatic",gaz:"Afro-Asiatic",gbk:"Indo-European",gbm:"Indo-European",gbn:"Nilo-Saharan",gdq:"Afro-Asiatic",gea:"Afro-Asiatic",ges:"Austronesian",gex:"Afro-Asiatic",ghl:"Nilo-Saharan",giq:"Kra-Dai",giw:"Kra-Dai",gju:"Indo-European",glc:"Niger-Congo",goe:"Sino-Tibetan",gow:"Afro-Asiatic",gqu:"Kra-Dai",grr:"Afro-Asiatic",gsg:"Sign Language",gss:"Sign Language",guj:"Indo-European",gus:"Sign Language",gvp:"Jean",gwb:"Niger-Congo",gwc:"Indo-European",gwd:"Afro-Asiatic",gwf:"Indo-European",gya:"Niger-Congo",gyo:"Sino-Tibetan",gzn:"Austronesian",hae:"Afro-Asiatic",hal:"Austro-Asiatic",hau:"Afro-Asiatic",hca:"Creole",hea:"Hmong-Mien",heb:"Afro-Asiatic",her:"Niger-Congo",hik:"Austronesian",hin:"Indo-European",hks:"Sign Language",hlb:"Indo-European",hld:"Austro-Asiatic",hmb:"Nilo-Saharan",hmh:"Hmong-Mien",hml:"Hmong-Mien",hmm:"Hmong-Mien",hne:"Indo-European",hni:"Sino-Tibetan",hnu:"Austro-Asiatic",hoh:"Afro-Asiatic",hoj:"Indo-European",hoz:"Afro-Asiatic",hsn:"Sino-Tibetan",hss:"Afro-Asiatic",htu:"Austronesian",hug:"Harákmbut",huo:"Austro-Asiatic",iba:"Austronesian",ibr:"Niger-Congo",icl:"Sign Language",iii:"Sino-Tibetan",ind:"Austronesian",irr:"Austro-Asiatic",ise:"Sign Language",isk:"Indo-European",isr:"Sign Language",ium:"Hmong-Mien",jbn:"Afro-Asiatic",jeu:"Afro-Asiatic",jia:"Afro-Asiatic",jii:"Afro-Asiatic",jio:"Kra-Dai",jit:"Niger-Congo",jiu:"Sino-Tibetan",jle:"Niger-Congo",jls:"Sign Language",jmi:"Afro-Asiatic",jnl:"Sino-Tibetan",jos:"Sign Language",jpn:"Japonic",jup:"Puinavean",kaf:"Sino-Tibetan",kan:"Dravidian",kas:"Indo-European",kay:"Tupian",kaz:"Turkic",kbg:"Sino-Tibetan",kbo:"Nilo-Saharan",kbp:"Niger-Congo",kby:"Nilo-Saharan",kcf:"Niger-Congo",kcn:"Creole",kcp:"Nilo-Saharan",kcu:"Niger-Congo",kcy:"Nilo-Saharan",kcz:"Niger-Congo",kdh:"Niger-Congo",kdn:"Niger-Congo",kdt:"Austro-Asiatic",kdu:"Nilo-Saharan",kec:"Nilo-Saharan",kfa:"Dravidian",kfd:"Dravidian",kfe:"Dravidian",kfg:"Dravidian",kfm:"Indo-European",kfr:"Indo-European",kfs:"Indo-European",kfy:"Indo-European",kgn:"Indo-European",khb:"Kra-Dai",khf:"Austro-Asiatic",khv:"Nakh-Daghestanian",kia:"Niger-Congo",kib:"Niger-Congo",kie:"Nilo-Saharan",kil:"Afro-Asiatic",kir:"Turkic",kjc:"Austronesian",kjg:"Austro-Asiatic",kjk:"Austronesian",kke:"Niger-Congo",kkh:"Kra-Dai",kkn:"Austro-Asiatic",kko:"Nilo-Saharan",kks:"Afro-Asiatic",klf:"Nilo-Saharan",kmc:"Kra-Dai",kmq:"Nilo-Saharan",kmr:"Indo-European",kmz:"Turkic",knc:"Nilo-Saharan",knf:"Niger-Congo",knk:"Niger-Congo",knm:"Maipurean",knn:"Indo-European",kns:"Austro-Asiatic",knz:"Niger-Congo",kou:"Niger-Congo",kpa:"Afro-Asiatic",kpc:"Maipurean",kpj:"Karajá",kpt:"Nakh-Daghestanian",kqg:"Niger-Congo",kqm:"Niger-Congo",krn:"Niger-Congo",krs:"Nilo-Saharan",kth:"Nilo-Saharan",kuf:"Austro-Asiatic",kui:"Cariban",kuj:"Niger-Congo",kva:"Nakh-Daghestanian",kvf:"Afro-Asiatic",kvh:"Austronesian",kvp:"Austronesian",kwn:"Niger-Congo",kwv:"Nilo-Saharan",kxd:"Austronesian",kxh:"Afro-Asiatic",kxj:"Nilo-Saharan",kyi:"Austronesian",kyp:"Kra-Dai",kyw:"Indo-European",kzq:"Sino-Tibetan",lae:"Sino-Tibetan",lan:"Niger-Congo",lao:"Kra-Dai",laq:"Kra-Dai",lbj:"Sino-Tibetan",lbn:"Austro-Asiatic",lbo:"Austro-Asiatic",lbs:"Sign Language",lbt:"Kra-Dai",lcd:"Austronesian",lcq:"Austronesian",lgn:"Nilo-Saharan",lgs:"Sign Language",lha:"Kra-Dai",lhn:"Austronesian",lhp:"Sino-Tibetan",lic:"Kra-Dai",liq:"Afro-Asiatic",liu:"Nilo-Saharan",lkc:"Sino-Tibetan",lkh:"Sino-Tibetan",lki:"Indo-European",lkr:"Nilo-Saharan",lma:"Niger-Congo",loh:"Nilo-Saharan",lop:"Niger-Congo",lsd:"Afro-Asiatic",lso:"Sign Language",lss:"Indo-European",lsy:"Sign Language",luk:"Sino-Tibetan",lul:"Nilo-Saharan",mag:"Indo-European",mai:"Indo-European",mal:"Dravidian",mar:"Indo-European",mbd:"Austronesian",mbn:"Guajiboan",mcd:"Panoan",mdl:"Sign Language",mdy:"Afro-Asiatic",mei:"Nilo-Saharan",men:"Niger-Congo",mes:"Afro-Asiatic",mew:"Afro-Asiatic",mey:"Afro-Asiatic",mgb:"Nilo-Saharan",mgd:"Nilo-Saharan",mge:"Nilo-Saharan",mgh:"Niger-Congo",mhr:"Uralic",mhu:"Sino-Tibetan",mhw:"Niger-Congo",mjp:"Dravidian",mkg:"Kra-Dai",mmh:"Maipurean",mml:"Austro-Asiatic",mmy:"Afro-Asiatic",mne:"Nilo-Saharan",mni:"Sino-Tibetan",mnj:"Indo-European",mnk:"Niger-Congo",mnq:"Austro-Asiatic",mns:"Uralic",mot:"Chibchan",mou:"Afro-Asiatic",moy:"Afro-Asiatic",moz:"Afro-Asiatic",mpe:"Nilo-Saharan",mpz:"Sino-Tibetan",mqi:"Austronesian",mqn:"Austronesian",mra:"Austro-Asiatic",mrj:"Uralic",msc:"Niger-Congo",msv:"Afro-Asiatic",msw:"Niger-Congo",mtr:"Indo-European",mub:"Afro-Asiatic",mup:"Indo-European",muq:"Hmong-Mien",muv:"Dravidian",mvf:"Mongolic",mvu:"Nilo-Saharan",mvy:"Indo-European",mwn:"Niger-Congo",mxj:"Sino-Tibetan",myp:"Muran",myy:"Tucanoan",mzb:"Afro-Asiatic",mzy:"Sign Language",naq:"Khoe-Kwadi",nbt:"Sino-Tibetan",nbw:"Niger-Congo",ndg:"Niger-Congo",ndp:"Nilo-Saharan",ndt:"Niger-Congo",neb:"Niger-Congo",neh:"Sino-Tibetan",nev:"Austro-Asiatic",ngt:"Austro-Asiatic",njl:"Nilo-Saharan",nkd:"Sino-Tibetan",nld:"Indo-European",nmd:"Niger-Congo",nmi:"Afro-Asiatic",nml:"Niger-Congo",nmy:"Sino-Tibetan",nnj:"Nilo-Saharan",nod:"Kra-Dai",noe:"Indo-European",nos:"Sino-Tibetan",npb:"Sino-Tibetan",npi:"Indo-European",nrb:"Nilo-Saharan",nru:"Sino-Tibetan",nsl:"Sign Language",nuo:"Austro-Asiatic",nus:"Nilo-Saharan",nwm:"Nilo-Saharan",nxq:"Sino-Tibetan",nye:"Niger-Congo",nyn:"Niger-Congo",nyr:"Niger-Congo",nyw:"Kra-Dai",nzs:"Sign Language",okn:"Japonic",ole:"Sino-Tibetan",oog:"Austro-Asiatic",oon:"Andamanese",opa:"Niger-Congo",ort:"Indo-European",ory:"Indo-European",ost:"Niger-Congo",oyb:"Austro-Asiatic",oym:"Tupian",pac:"Austro-Asiatic",pah:"Tupian",pbp:"Niger-Congo",peh:"Mongolic",pes:"Indo-European",pga:"Creole",pgg:"Indo-European",pgz:"Sign language",pha:"Hmong-Mien",phh:"Sino-Tibetan",phj:"Sino-Tibetan",phk:"Kra-Dai",phl:"Indo-European",pho:"Sino-Tibetan",phq:"Sino-Tibetan",phr:"Indo-European",pht:"Kra-Dai",pil:"Niger-Congo",pir:"Tucanoan",pkb:"Niger-Congo",pks:"Sign Language",pkt:"Austro-Asiatic",pll:"Austro-Asiatic",pnq:"Niger-Congo",pnx:"Austro-Asiatic",por:"Indo-European",prc:"Indo-European",prs:"Indo-European",prt:"Austro-Asiatic",psc:"Sign Language",pse:"Austronesian",pto:"Tupian",pum:"Sino-Tibetan",puo:"Austro-Asiatic",qae:"Sign Language",qao:"Sign Language",qbh:"Sign Language",qbj:"Sign Language",qbn:"Sign Language",qbt:"Sign Language",qcd:"Sign Language",qcm:"Sign Language",qcy:"Sign Language",qer:"Sign Language",qfa:"Sign Language",qfj:"Sign Language",qga:"Sign Language",qge:"Sign Language",qgm:"Sign Language",qiq:"Sign Language",qki:"Sign Language",qkm:"Sign Language",qkp:"Sign Language",qkw:"Sign Language",qmv:"Sign Language",qnh:"Sign Language",qns:"Sign Language",qom:"Sign Language",qqa:"Sign Language",qry:"Sign Language",qsm:"Sign Language",qso:"Sign Language",qsr:"Sign Language",qsz:"Sign Language",qtp:"Sign Language",qvz:"Quechuan",ras:"Niger-Congo",rbb:"Austro-Asiatic",ren:"Austro-Asiatic",rji:"Sino-Tibetan",rmt:"Indo-European",rmy:"Indo-European",rob:"Austronesian",rsl:"Sign Language",rui:"Niger-Congo",rus:"Indo-European",rwm:"Niger-Congo",rwr:"Indo-European",rys:"Japonic",saa:"Afro-Asiatic",sbf:"Unclassified",sbj:"Nilo-Saharan",sbs:"Niger-Congo",scb:"Austro-Asiatic",sck:"Indo-European",scl:"Indo-European",sdb:"Indo-European",sdg:"Indo-European",sdl:"Sign Language",sdp:"Sino-Tibetan",seq:"Niger-Congo",sgh:"Indo-European",sgy:"Indo-European",she:"Afro-Asiatic",shm:"Indo-European",shn:"Kra-Dai",sho:"Niger-Congo",shp:"Panoan",shu:"Afro-Asiatic",shv:"Afro-Asiatic",shz:"Niger-Congo",siy:"Indo-European",siz:"Afro-Asiatic",sjg:"Nilo-Saharan",sjo:"Tungusic",skq:"Niger-Congo",sle:"Dravidian",slt:"Sino-Tibetan",sml:"Austronesian",smy:"Indo-European",snd:"Indo-European",snn:"Tucanoan",soj:"Indo-European",sok:"Afro-Asiatic",soy:"Niger-Congo",spa:"Indo-European",spu:"Austro-Asiatic",sqk:"Sign Language",sqq:"Austro-Asiatic",sqs:"Sign Language",sqt:"Afro-Asiatic",srh:"Indo-European",sri:"Tucanoan",srp:"Indo-European",ssh:"Afro-Asiatic",ssn:"Afro-Asiatic",sss:"Austro-Asiatic",ssy:"Afro-Asiatic",std:"Andamanese",sts:"Indo-European",suq:"Nilo-Saharan",suv:"Sino-Tibetan",suy:"Jean",suz:"Sino-Tibetan",swh:"Niger-Congo",swi:"Kra-Dai",swl:"Sign Language",swv:"Indo-European",swx:"Arauan",sxg:"Sino-Tibetan",sze:"Afro-Asiatic",szn:"Austronesian",szs:"Sign Language",tag:"Niger-Congo",tam:"Dravidian",taz:"Niger-Congo",tbm:"Niger-Congo",tbn:"Chibchan",tbr:"Nilo-Saharan",tct:"Kra-Dai",tcy:"Dravidian",tda:"Mixed language",tdb:"Indo-European",tdd:"Kra-Dai",tdf:"Austro-Asiatic",tdj:"Austronesian",tel:"Dravidian",teq:"Nilo-Saharan",tgf:"Sino-Tibetan",tgk:"Indo-European",tgr:"Austro-Asiatic",thk:"Niger-Congo",thm:"Austro-Asiatic",thu:"Nilo-Saharan",thv:"Afro-Asiatic",tig:"Afro-Asiatic",tin:"Nakh-Daghestanian",tiz:"Kra-Dai",tkn:"Japonic",tlq:"Austro-Asiatic",tly:"Indo-European",tma:"Nilo-Saharan",tnb:"Chibchan",toi:"Niger-Congo",toq:"Nilo-Saharan",tou:"Austro-Asiatic",tqq:"Afro-Asiatic",tri:"Cariban",trj:"Afro-Asiatic",tsb:"Afro-Asiatic",tsc:"Niger-Congo",tsj:"Sino-Tibetan",tsk:"Sino-Tibetan",tsl:"Kra-Dai",tsm:"Sign Language",ttg:"Austronesian",tth:"Austro-Asiatic",ttl:"Niger-Congo",tts:"Kra-Dai",tue:"Tucanoan",tum:"Niger-Congo",tuo:"Tucanoan",tur:"Turkic",twm:"Sino-Tibetan",txi:"Cariban",txm:"Austronesian",tyh:"Austro-Asiatic",tyj:"Kra-Dai",tyr:"Kra-Dai",tyv:"Turkic",tyy:"Niger-Congo",tzm:"Afro-Asiatic",uan:"Kra-Dai",udj:"Austronesian",une:"Niger-Congo",unk:"Maipurean",urd:"Indo-European",urp:"Tupian",urz:"Tupian",ush:"Indo-European",usi:"Sino-Tibetan",uuu:"Austro-Asiatic",uzn:"Turkic",vai:"Niger-Congo",vgr:"Indo-European",vie:"Austro-Asiatic",vkj:"Unclassified",vkn:"Niger-Congo",vkz:"Niger-Congo",vmk:"Niger-Congo",vut:"Niger-Congo",wau:"Maipurean",waw:"Cariban",wbj:"Afro-Asiatic",wbl:"Indo-European",wbr:"Indo-European",wlc:"Niger-Congo",wll:"Nilo-Saharan",wmd:"Nambikwara",wmg:"Sino-Tibetan",wne:"Indo-European",wni:"Niger-Congo",wol:"Niger-Congo",wrn:"Niger-Congo",wti:"Nilo-Saharan",wuh:"Mixed language",wwa:"Niger-Congo",xal:"Mongolic",xan:"Afro-Asiatic",xdq:"Nakh-Daghestanian",xhv:"Austro-Asiatic",xka:"Indo-European",xkz:"Sino-Tibetan",xma:"Niger-Congo",xmj:"Afro-Asiatic",xmo:"Tupian",xms:"Sign Language",xnr:"Indo-European",xns:"Sino-Tibetan",xom:"Nilo-Saharan",xor:"Panoan",xsm:"Niger-Congo",xsr:"Sino-Tibetan",xwg:"Nilo-Saharan",yaa:"Panoan",yad:"Yaguan",yao:"Niger-Congo",yax:"Niger-Congo",ybh:"Sino-Tibetan",ycl:"Sino-Tibetan",ydd:"Indo-European",ydg:"Indo-European",yea:"Dravidian",yhd:"Afro-Asiatic",yig:"Sino-Tibetan",yix:"Sino-Tibetan",ymm:"Afro-Asiatic",ymx:"Sino-Tibetan",yne:"Sino-Tibetan",yno:"Kra-Dai",yom:"Niger-Congo",yox:"Japonic",yoy:"Kra-Dai",yrn:"Kra-Dai",ysl:"Sign Language",ysm:"Sign language",ysn:"Sino-Tibetan",yue:"Sino-Tibetan",yul:"Nilo-Saharan",yup:"Cariban",ywn:"Panoan",ywt:"Sino-Tibetan",zag:"Nilo-Saharan",zgn:"Kra-Dai",zhd:"Kra-Dai",ziw:"Niger-Congo",zkr:"Sino-Tibetan",zlm:"Austronesian",zna:"Niger-Congo",zne:"Niger-Congo",zng:"Austro-Asiatic",zqe:"Kra-Dai",zum:"Indo-European",zyg:"Kra-Dai"},bf=":host{display:block;width:100%;--dx-surface: #f3f3f1;--dx-elevated: #ffffff;--dx-text: #3b463d;--dx-muted: #6d766e;--dx-line: #d1d4cd;--dx-accent: #92b195;--dx-accent-weak: rgba(146, 177, 149, .18);--dx-accent-soft: rgba(146, 177, 149, .1);--dx-accent-strong: #657967}.pgg-root{--brand: var(--dx-accent, #92b195);--ink: var(--dx-text, #3b463d);--mut: var(--dx-muted, #6d766e);--line: var(--dx-line, #d1d4cd);--card: var(--dx-elevated, #fff);--bg: var(--dx-surface, #f3f3f1);width:100%;box-sizing:border-box;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;padding:16px}.filters{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding-block:18px 8px;min-height:190px}.pgg-search{display:flex;justify-content:center}.pgg-search--repel{gap:10px;align-items:center;flex-wrap:wrap;justify-content:space-between;width:100%;max-width:600px;margin-inline:auto}.pgg-search--repel>:first-child{flex:1 1 320px;min-width:0}.pgg-exact{flex:none}.filters__toggle{background:var(--dx-elevated, #fff);border:1px solid var(--dx-line, #d1d4cd);border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--dx-text, #3b463d);padding:7px 12px;display:inline-flex;align-items:center;gap:7px;margin-inline:auto;transition:background-color .15s ease,border-color .15s ease}.filters__toggle:hover{background:var(--dx-accent-weak, rgba(146,177,149,.18));border-color:var(--dx-accent, #92b195)}.filters__toggle:focus-visible{outline:2px solid var(--dx-accent, #92b195);outline-offset:2px}.filters__toggle-icon{color:var(--dx-accent, #92b195);flex:none}.filters__toggle-count{background:var(--dx-accent, #92b195);color:#fff;border-radius:999px;min-width:18px;padding:0 5px;font-size:.75rem;line-height:18px;text-align:center}.filters__toggle[aria-expanded=true] svg{transform:rotate(180deg)}.filters__panel{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:flex-start}.filter-toggle{padding:6px 12px;cursor:pointer;font-size:.875rem;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:8px;transition:border-color .15s ease,background .15s ease}.filter-toggle:hover{border-color:var(--brand)}.filter-toggle[data-active]{background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));border-color:var(--brand);color:var(--ink)}.filters__active{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}.filter-chip{display:inline-flex;gap:6px;align-items:center;background-color:var(--dx-accent-weak, rgba(146, 177, 149, .18));color:var(--ink);border:1px solid var(--line);border-radius:100px;padding:4px 12px;font-size:.85rem}.filter-chip__remove{background:none;border:none;cursor:pointer;font-size:1.1em;line-height:1;color:inherit;padding:0;display:inline-flex;align-items:center}.filter-chip__remove:hover{opacity:.7}.filters__clear-all{background:none;border:none;cursor:pointer;font-size:.875rem;color:var(--ink);text-decoration:underline;text-decoration-color:var(--brand);text-underline-offset:4px}.repel{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.font-size-sm{font-size:.875rem;color:var(--mut)}.grid.uupgs-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.pgg-gridbar{display:flex;justify-content:flex-end;margin-bottom:8px;padding-inline-end:8px}.pgg-perrow{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--mut)}.pgg-perrow select{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:6px;padding:2px 6px}.card.uupg__card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #0000000a}.uupg__image{width:100%;aspect-ratio:1 / 1;object-fit:cover;background:var(--line)}.uupg__header{padding:12px 14px 6px}.uupg__name{font-size:1rem;font-weight:700;line-height:1.2;margin:0 0 4px}.uupg__country{font-size:.85rem;color:var(--mut);margin:0}.uupg__country-link{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:1px;text-underline-offset:2px}.uupg__country-link:hover{text-decoration-thickness:2px}.uupg__match{font-size:.8rem;color:var(--mut);margin:4px 0 0}.uupg__content{padding:0 14px;font-size:.85rem;color:var(--mut)}.uupg__more-button{margin:12px 14px 14px;padding:8px 12px;text-align:center;font-size:.85rem;font-weight:700;color:var(--dx-elevated, #fff);background:var(--dx-accent-strong, #657967);border-radius:8px;text-decoration:none}.uupg__more-button:hover{background:var(--dx-text, #3b463d)}.search-highlight{background:#fde68a;border-radius:2px;padding:0 1px}.loading,.pgg-empty{grid-column:1 / -1;padding:28px;text-align:center;color:var(--mut);font-size:.9rem}.pgg-failed{font-weight:600;border-top:1px solid var(--bd, #d1d4cd)}.pgg-loadmore{display:block;margin:20px auto 0;padding:8px 18px;font-size:.9rem;cursor:pointer;color:var(--ink);background:var(--card);border:1px solid var(--brand);border-radius:8px}.pgg-loadmore:hover{background:var(--dx-accent-soft, rgba(146, 177, 149, .1))}",$f={class:"pgg-root"},vf={key:0,class:"pgg-search pgg-search--repel"},yf=["data-active"],wf=["aria-expanded"],kf={key:0,class:"filters__toggle-count"},Af={key:2,class:"filters__panel"},Sf={key:3,class:"filters__active"},Tf=["onClick"],Lf={class:"pgg-body"},xf={key:0,class:"repel"},Ef={class:"font-size-sm"},Nf={key:1},Mf={class:"pgg-gridbar"},Pf={class:"pgg-perrow"},Cf=["aria-label"],Of=["value"],If=["src","alt"],Ff={class:"uupg__header"},Df=["innerHTML"],Rf={key:0,class:"uupg__country"},jf=["href"],Uf=["innerHTML"],zf=["innerHTML"],Wf=["innerHTML"],qf={key:1,class:"uupg__content"},Hf=["href"],Bf={key:0,class:"loading"},Vf={key:1,class:"pgg-empty pgg-failed",role:"status"},Kf={key:2,class:"pgg-empty"},Gf=xu(Ps(Object.assign({inheritAttrs:!1},{__name:"people-groups-grid",props:{profileConfig:{type:String,default:""},prayBaseUrl:{type:String,default:""},languageCode:{type:String,default:""},researchUrl:{type:String,default:""},selectUrl:{type:String,default:""},t:{type:Object,default:()=>({})},showSearch:{type:[Boolean,String],default:!0},showFilters:{type:[Boolean,String],default:!0},showTotal:{type:[Boolean,String],default:!0},query:{type:String,default:""},wagfRegion:{type:String,default:""},wagfBlock:{type:String,default:""},rop1:{type:String,default:""},religion:{type:String,default:""},countryCode:{type:String,default:""},primaryLanguage:{type:String,default:""},cluster:{type:String,default:""},peopleGroup:{type:String,default:""},engagementStatus:{type:String,default:""},gospelAccess:{type:String,default:""},religionFamily:{type:String,default:""},languageFamily:{type:String,default:""},perPage:{type:Number,default:24},morePerPage:{type:Number,default:0}},emits:["groups-filtered"],setup(e,{emit:t}){const n=e,o=t,s=de(()=>{if(!n.profileConfig)return{};try{return JSON.parse(n.profileConfig)||{}}catch{return{}}}),a=de(()=>!w.value&&!b.value?null:{backgroundImage:`url(${ol(s.value)}/images/worldmap.svg)`,backgroundSize:"60%",backgroundPosition:"top center",backgroundRepeat:"no-repeat"}),r=de(()=>n.prayBaseUrl||s.value.prayBaseUrl||"https://pray.doxa.life"),i=de(()=>n.languageCode||s.value.languageCode||s.value.locale||s.value.lang||Zi()||""),l=de(()=>{const $=i.value||el()||Qi();return Gp.has(String($).split("-")[0].toLowerCase())?"rtl":"ltr"});function d(){try{const $=u();$&&$.setAttribute&&l.value==="rtl"&&$.setAttribute("dir","rtl")}catch{}}st(l,d);const p=de(()=>n.researchUrl||s.value.researchUrl||(typeof window<"u"&&window.DOXA_SITE_URL||"https://doxa.life").replace(/\/+$/,"")+"/research/"),h=["auto","1","2","3","4","5"],m=de(()=>`pgg-cards-per-row:${s.value.profile||"default"}`),k=Ae("auto");let D=!1;function E(){try{const $=localStorage.getItem(m.value);$&&h.includes($)&&(k.value=$)}catch{}}E(),st(m,($,L)=>{$!==L&&!D&&E()}),st(k,$=>{D=!0;try{localStorage.setItem(m.value,$)}catch{}});const z=de(()=>k.value==="auto"?null:{gridTemplateColumns:`repeat(${k.value}, minmax(0, 1fr))`}),N=de(()=>{const $={...s.value.t||{},...n.t||{}},L=s.value.locale||s.value.lang||void 0;return new Proxy($,{get(U,V){if(V in U)return U[V];if(typeof V=="string")return tl("grid."+V,L)}})}),H=$=>!($===!1||$==="false"||$==="0"||$===0),w=de(()=>H(n.showSearch)),b=de(()=>H(n.showFilters)),P=de(()=>H(n.showTotal)),x=Ae([]),O=Ae([]),q=Ae(0),R=Ae(1),ae=Ae(!0),X=Ae(!1),B=Ae(!0),J=Ae({}),Ce=Ae(""),se=Ae({}),ue=de(()=>w.value?Ce.value:n.query||""),ne=de(()=>{const $={},L=U=>U;return n.wagfRegion&&($.wagf_region={value:n.wagfRegion,label:L(n.wagfRegion)}),n.wagfBlock&&($.wagf_block={value:n.wagfBlock,label:L(n.wagfBlock)}),n.rop1&&($.rop1={value:n.rop1,label:L(n.rop1)}),n.religion&&($.religion={value:n.religion,label:L(n.religion)}),n.countryCode&&($.country_code={value:n.countryCode,label:L(n.countryCode)}),n.primaryLanguage&&($.primary_language={value:n.primaryLanguage,label:L(n.primaryLanguage)}),n.engagementStatus&&($.engagement_status={value:n.engagementStatus,label:L(n.engagementStatus)}),n.cluster&&($.imb_reg_of_people_2={value:n.cluster,label:L(n.cluster)}),n.peopleGroup&&($.imb_reg_of_people_25={value:n.peopleGroup,label:L(n.peopleGroup)}),n.gospelAccess&&($.imb_gsec={value:n.gospelAccess,label:L(n.gospelAccess)}),n.religionFamily&&($.__religion_family={value:n.religionFamily,label:L(n.religionFamily)}),n.languageFamily&&($.__language_family={value:n.languageFamily,label:L(n.languageFamily)}),$}),ee=de(()=>b.value?se.value:ne.value);st(()=>n.wagfRegion,$=>{if(!b.value)return;const L=se.value.wagf_region;if($){if(L&&L.value===$)return;const U=(J.value&&J.value.wagf_region||[]).find(V=>V.value===$);se.value={...se.value,wagf_region:{value:$,label:U&&U.label||$}}}else if(L){const U={...se.value};delete U.wagf_region,se.value=U}}),st(()=>n.religionFamily,$=>{if(!b.value)return;const L=se.value.__religion_family;if($){if(L&&Ze(L.value)===Ze($))return;se.value={...se.value,__religion_family:{value:$,label:$}}}else if(L){const U={...se.value};delete U.__religion_family,se.value=U}}),st(()=>n.primaryLanguage,$=>{if(!b.value)return;const L=se.value.primary_language;if($){if(L&&Ze(L.value)===Ze($))return;se.value={...se.value,primary_language:{value:$,label:$}}}else if(L){const U={...se.value};delete U.primary_language,se.value=U}});const xe=de(()=>Object.values(ee.value||{}).filter($=>$&&$.value!==""&&$.value!=null).length),Ge=de(()=>Object.keys(ee.value).length),$e=de(()=>xe.value>0||!!(ue.value||"").trim());function Te($,L=500){let U;return(...V)=>{clearTimeout(U),U=setTimeout(()=>$(...V),L)}}const rt=Te(()=>{ae.value=!0,R.value=1,F()},500);function Xe($){Ce.value=($==null?void 0:$.value)??"",rt()}function it(){B.value=!B.value}function Ue($){se.value={...se.value,[$.name]:{value:$.value,label:$.label}},R.value=1,F()}function Ye($){et($.name)}function et($){const L={...se.value};delete L[$],se.value=L,R.value=1,F()}function St(){se.value={},R.value=1,F()}function Je(){if(se.value.exact)return et("exact");se.value={...se.value,exact:{value:"yes",label:N.value.exact_filter||"Exact"}},R.value=1,F()}const Ze=$=>String($??"").toLowerCase().replace(/[\s_&-]+/g,""),f={__religion_family:$=>{const L=$.religion&&typeof $.religion=="object"?$.religion.value:$.religion,U=String(L||"").charAt(0).toUpperCase(),V=U&&il[U]?il[U]:"";return V?{value:V,label:V}:null},__language_family:$=>{const L=$.imb_language_family,U=L&&typeof L=="object"?L.label||L.value:L;let V="";if(U)V=ll(U);else{const oe=$.primary_language&&typeof $.primary_language=="object"?$.primary_language.value:null,he=oe&&mf[oe];V=he?ll(he):""}return V?{value:V,label:V}:null}},_=($,L)=>f[L]?f[L]($):$[L];function g($,L){if(!$)return!1;const U=L==null?void 0:L.value;if(U==null||U==="")return!1;const V=(Array.isArray(U)?U:String(U).split("|")).map(K=>Ze(K)).filter(Boolean);if(!V.length)return!1;const oe=Ze($.value),he=Ze($.label);return V.some(K=>oe===K||he===K)}function A($){let L=$;for(const[U,V]of Object.entries(ee.value))U==="exact"?L=L:L=L.filter(oe=>g(_(oe,U),V));return L}function C(){const $=L=>{const U=new Map;for(const V of x.value){const oe=V[L];if(!(oe!=null&&oe.value))continue;const he=U.get(oe.value);he?he.count++:U.set(oe.value,{label:oe.label,count:1})}return Array.from(U.entries()).map(([V,{label:oe,count:he}])=>({value:V,label:oe,count:he})).sort((V,oe)=>V.label.localeCompare(oe.label))};J.value={wagf_region:$("wagf_region"),wagf_block:$("wagf_block"),rop1:$("rop1"),religion:$("religion")}}function M(){const $=Object.keys(J.value),L={};for(const U of $){const V={};for(const[K,ve]of Object.entries(ee.value))K!==U&&(V[K]=ve);const oe=j(V,x.value),he=new Map;for(const K of oe){const ve=K[U];ve!=null&&ve.value&&he.set(ve.value,(he.get(ve.value)??0)+1)}L[U]=(J.value[U]??[]).map(K=>({...K,count:he.get(K.value)??0}))}J.value=L}function j($,L){let U=L;for(const[V,oe]of Object.entries($))V!=="exact"&&(U=U.filter(he=>g(_(he,V),oe)));return U}function F(){x.value=x.value.map(he=>(he.matches=[],he.country_label="",he.rop1_label="",he));const L=Object.keys(ee.value).length>0?A(x.value):x.value,U=ue.value;if(!U){O.value=L,q.value=O.value.length,ae.value=!1,M(),y();return}const oe=new Uu(L,{includeMatches:!0,ignoreLocation:!0,minMatchCharLength:3,threshold:ee.value.exact?0:.4,keys:["name","imb_alternate_name","country_code.label","rop1.label","religion.label","wagf_region.label","wagf_block.label"]}).search(U);O.value=oe.map(he=>{var ve;const K={...he.item};if(!he.matches)return K;K.matches=[];for(const Vt of he.matches){const ft=Vt.key;if(!ft)continue;let Zn="";if(String(ft).includes(".")){const[an,rn]=String(ft).split(".");Zn=(ve=K[an])==null?void 0:ve[rn]}else Zn=K[String(ft)];if(Zn&&typeof Zn=="string"){const an=Wu(Zn,Vt.indices);if(String(ft).includes("imb_alternate_name"))K.matches.push({key:N.value.alternate_name??"Also known as",label:an});else if(String(ft).includes(".")){const[rn]=String(ft).split("."),Xf={religion:N.value.religion,country_code:N.value.country,rop1:N.value.rop1,wagf_region:N.value.wagf_region,wagf_block:N.value.wagf_block};rn==="rop1"?K.rop1_label=an:rn==="country_code"?K.country_label=an:rn==="wagf_region"||K.matches.push({key:Xf[rn]??rn,label:an})}else K[String(ft)]=an}}return K}),q.value=O.value.length,ae.value=!1,M(),y()}const c=jn();function u(){var L,U;const $=((L=c==null?void 0:c.vnode)==null?void 0:L.el)||((U=c==null?void 0:c.proxy)==null?void 0:U.$el);try{const V=$&&$.getRootNode&&$.getRootNode();if(V&&V.host)return V.host}catch{}return $}function y(){const $={query:ue.value,activeFilters:ee.value,total:q.value,slugs:O.value.map(U=>U.slug)};o("groups-filtered",$);const L=u();L&&typeof L.dispatchEvent=="function"&&L.dispatchEvent(new CustomEvent("groups-filtered",{detail:$,bubbles:!0,composed:!0}))}function S(){return n.morePerPage>0?q.value>n.perPage+(R.value-1)*n.morePerPage&&!ae.value&&O.value.length>0:q.value>R.value*n.perPage&&!ae.value&&O.value.length>0}function W(){R.value=R.value+1}const I=de(()=>n.morePerPage>0?O.value.slice(0,n.perPage+(R.value-1)*n.morePerPage):O.value.slice(0,R.value*n.perPage)),v=de(()=>S());async function T(){const $=`${r.value}/api/people-groups/list?fields=name,slug,wagf_region,wagf_block,country_code,rop1,religion,has_photo,image_url,adopted_by_churches,imb_alternate_name,engagement_status,people_committed,primary_language,imb_reg_of_people_2,imb_reg_of_people_25,imb_gsec,imb_language_family&lang=${i.value}`;ae.value=!0,X.value=!1;try{const L=await fetch($);if(!L.ok)throw new Error(`HTTP ${L.status}`);const U=await L.json(),V=Array.isArray(U.posts)?U.posts:[],oe=await pf(V,n.profileConfig);q.value=oe===V?U.total:oe.length,x.value=oe,C(),F()}catch(L){console.error("[people-groups-grid] fetch error:",L),X.value=!0,x.value=[],ae.value=!1}}st(()=>[n.query,ne.value,w.value,b.value],()=>{R.value=1,F()});function Y($){const L=new Set;for(const U of x.value||[]){const V=_(U,$),oe=V&&typeof V=="object"?V.label:V;typeof oe=="string"&&oe&&L.add(oe)}return[...L].sort()}return yo(()=>{typeof window<"u"&&window.__peopleGroupsGridVocabulary===Y&&delete window.__peopleGroupsGridVocabulary}),ms(()=>{const $=u();$&&($.__vocabulary=Y),typeof window<"u"&&(window.__peopleGroupsGridVocabulary=Y),d(),T()}),($,L)=>{var U,V,oe,he;return ie(),le("div",$f,[w.value||b.value?(ie(),le("div",{key:0,id:"filters",class:"filters",style:Gt(a.value)},[w.value?(ie(),le("div",vf,[Me(Bu,{"model-value":Ce.value,placeholder:N.value.search||"Search people groups…","aria-label":N.value.search||"Search people groups","max-width":"480px",onSearch:Xe},null,8,["model-value","placeholder","aria-label"]),b.value?(ie(),le("button",{key:0,class:"filter-toggle pgg-exact",type:"button","data-active":ee.value.exact?"":void 0,onClick:Je},Le(N.value.exact_filter||"Exact"),9,yf)):De("",!0)])):De("",!0),b.value?(ie(),le("button",{key:1,class:"filters__toggle",type:"button","aria-expanded":B.value,onClick:it},[L[1]||(L[1]=re("svg",{class:"filters__toggle-icon",width:"13",height:"13",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[re("path",{d:"M1.5 2.5h9M3 6h6M4.5 9.5h3",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round"})],-1)),Pt(" "+Le(B.value?N.value.hide_filters||"Hide Filters":N.value.show_filters||"Show Filters")+" ",1),xe.value?(ie(),le("span",kf,Le(xe.value),1)):De("",!0),L[2]||(L[2]=re("svg",{width:"12",height:"12",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg"},[re("path",{d:"M2 4l4 4 4-4",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],8,wf)):De("",!0),b.value&&B.value?(ie(),le("div",Af,[Me(qo,{label:N.value.wagf_region||"Region",name:"wagf_region",options:J.value.wagf_region||[],value:((U=ee.value.wagf_region)==null?void 0:U.value)??"",placeholder:N.value.type_to_search||"Type to search...",onFilterChange:Ue,onFilterClear:Ye},null,8,["label","options","value","placeholder"]),Me(qo,{label:N.value.wagf_block||"Bloc",name:"wagf_block",options:J.value.wagf_block||[],value:((V=ee.value.wagf_block)==null?void 0:V.value)??"",placeholder:N.value.type_to_search||"Type to search...",onFilterChange:Ue,onFilterClear:Ye},null,8,["label","options","value","placeholder"]),Me(qo,{label:N.value.rop1||"People Group",name:"rop1",options:J.value.rop1||[],value:((oe=ee.value.rop1)==null?void 0:oe.value)??"",placeholder:N.value.type_to_search||"Type to search...",onFilterChange:Ue,onFilterClear:Ye},null,8,["label","options","value","placeholder"]),Me(qo,{label:N.value.religion||"Religion",name:"religion",options:J.value.religion||[],value:((he=ee.value.religion)==null?void 0:he.value)??"",placeholder:N.value.type_to_search||"Type to search...",onFilterChange:Ue,onFilterClear:Ye},null,8,["label","options","value","placeholder"])])):De("",!0),b.value&&Ge.value>0?(ie(),le("div",Sf,[(ie(!0),le(Ne,null,Cn(ee.value,(K,ve)=>(ie(),le("span",{key:ve,class:"filter-chip"},[Pt(Le(K.label)+" ",1),re("button",{class:"filter-chip__remove",type:"button",onClick:Vt=>et(String(ve))},"×",8,Tf)]))),128)),re("button",{class:"filters__clear-all",type:"button",onClick:St},Le(N.value.clear_all||"Clear All"),1)])):De("",!0)],4)):De("",!0),re("div",Lf,[P.value||$e.value?(ie(),le("div",xf,[re("div",Ef,[ae.value?(ie(),le("span",Nf," ")):(ie(),le(Ne,{key:0},[Pt(Le($e.value&&!P.value?(N.value.showing||"Showing")+" "+Jt(sl)(q.value):(N.value.total||"Total")+": "+Jt(sl)(q.value)),1)],64))])])):De("",!0),re("div",Mf,[re("label",Pf,[re("span",null,Le(N.value.cards_per_row),1),tc(re("select",{"onUpdate:modelValue":L[0]||(L[0]=K=>k.value=K),"aria-label":N.value.cards_per_row},[(ie(),le(Ne,null,Cn(h,K=>re("option",{key:K,value:K},Le(K==="auto"?N.value.cards_per_row_auto:K),9,Of)),64))],8,Cf),[[Nu,k.value]])])]),re("div",{id:"results",class:"grid uupgs-list",style:Gt(z.value)},[(ie(!0),le(Ne,null,Cn(I.value,K=>(ie(),le("div",{key:K.slug,class:"card uupg__card"},[K.image_url?(ie(),le("img",{key:0,class:"uupg__image",src:K.image_url,alt:K.name},null,8,If)):De("",!0),re("div",Ff,[re("h3",{class:"uupg__name",innerHTML:K.name},null,8,Df),K.country_code?(ie(),le("p",Rf,[re("a",{class:"uupg__country-link",href:`${p.value}../countries/${Jt(ff)(K.country_code.value,K.country_code.label)}`},[re("span",{innerHTML:K.country_label?K.country_label:K.country_code.label},null,8,Uf)],8,jf),K.rop1?(ie(),le(Ne,{key:0},[L[3]||(L[3]=Pt(" (",-1)),re("span",{innerHTML:K.rop1_label?K.rop1_label:K.rop1.label},null,8,zf),L[4]||(L[4]=Pt(")",-1))],64)):De("",!0)])):De("",!0),K.matches?(ie(!0),le(Ne,{key:1},Cn(K.matches,(ve,Vt)=>(ie(),le("p",{key:Vt,class:"uupg__match"},[re("strong",null,Le(ve.key),1),L[5]||(L[5]=Pt(": ",-1)),re("span",{innerHTML:ve.label},null,8,Wf)]))),128)):De("",!0)]),K.location_description?(ie(),le("p",qf,Le(K.location_description),1)):De("",!0),re("a",{class:"uupg__more-button",href:`${p.value}${K.slug}`},Le(N.value.full_profile||"Full Profile"),9,Hf)]))),128)),ae.value?(ie(),le("div",Bf,Le(N.value.loading||"Loading…"),1)):X.value?(ie(),le("div",Vf,Le(N.value.load_failed||"People-group data could not be loaded. This is a connection problem, not your filter."),1)):I.value.length?De("",!0):(ie(),le("div",Kf,Le(N.value.no_results||"No people groups match this filter."),1))],4),v.value?(ie(),le("button",{key:1,class:"pgg-loadmore",type:"button",onClick:W},Le(N.value.load_more||"Load More"),1)):De("",!0)])])}}}),[["styles",[bf]]]));typeof customElements<"u"&&(customElements.get("people-groups-grid")||customElements.define("people-groups-grid",Gf))})(); diff --git a/public/dx-maps/people-groups-grid/people-groups-grid/driven/index.html b/public/dx-maps/people-groups-grid/people-groups-grid/driven/index.html index 79b98ed98..cb7678a39 100644 --- a/public/dx-maps/people-groups-grid/people-groups-grid/driven/index.html +++ b/public/dx-maps/people-groups-grid/people-groups-grid/driven/index.html @@ -32,7 +32,7 @@ - + - + - + - + - + - +